欢迎来到天天文库
浏览记录
ID:28187246
大小:159.50 KB
页数:4页
时间:2018-12-09
《高通微软又有新合作?.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、高通微软又有新合作? 据悉,微软已经将Windows10与Linux双系统移植到了基于EDGE体系结构的E2芯片上。微软自2010年开始,便致力于进行EDGE架构处理器的研发。 除了双系统,这颗芯片还移植了Busybox与FreeRTOS,标准C/C++与.NETCore运行时库,Windows内核调试器,VisualC++2017命令行工具以及.NET即时编译器RyuJIT。 微软还将广泛使用的LLVMC/C++编译器、调试器以及相关的C/C++运行时库,移植到了E2上。微软研发团队希望证明一
2、件事情,即“改变”这颗芯片不需要重新为它编写软件,而是只通过重新编译程序即可。 据悉,E2处理器的原型是具有可编程能力的FPGA,这是芯片开发期间通常采用的形式。微软团队开发了一个能够启动Windows和Linux系统,并可以运行应用程序的周期精确模拟器。 显然,微软E2的设计思想与Arm、AMD等公司大相径庭,它采用EDGE(ExplicitDataGraphExecution)体系结构。据悉,高通研发人员正在评估两款基于EDGE架构的芯片设计:较小的R0内核,以及运行频率2GHz、10nm工艺
3、的R1。目前该项目仍在进行中。 如今市面上典型主流处理器的运行规则更像是一个“垃圾回收机”:垃圾通过一条仅有的传送带依次进入垃圾回收机,随后机器根据垃圾的类别进行分类,再送到不同的传送带进行独立传输,并最终由机器的不同部分进行处理。以ARMCortex-A76为例,其指令被分到八个传送带送进内核进行传输:四路用于整数运算,两路用于浮点运算,两路用于访问存储器中的数据。即使最前端接收到的是无序的执行指令,处理器也将有条不紊地进行指令的处理。 对于研发人员而言,他们想做的就是:避免资源浪费。举例而言,
4、尽管一个整数单元不进行任何运算,然而其他路指令的执行却要进行排队。如果一条通道的指令执行需要依赖于另外一条通道的指令执行输出,就需停下来等待,这样时间与资源就被浪费掉。处理器要每秒运行10亿次及以上,就为了保证工作的完成。 也许E2所采用的EDGE架构能有效解决以上问题。EDGE是一种分布式结构,指令映射到多个分片上同时执行。在不同的代码分片中,代码使用其专用寄存器,而非全局访问的执行模式。编译器还会对代码进行注释以描述数据在程序中的流向,从而允许CPU相应地调度指令块。 而且,EDGE可以让核心
5、处理器通过分片技术同时处理多个指令。这与Cortex-A76的运行方式是不同的。EDGE的目标就是比竞争对手的架构可以更快地运行软件。就像前面提到的高通R1设计一样。R1是32位指令宽的乱序处理器蓝图,R0是8位宽。 E2芯片的研发已进行多年,透过目前的消息来“窥见”E2的研发进展。 去年10月份,Linux系统在E2中启动,如今Windows10已经被移植到该架构中,同时微软正在与芯片巨头高通开展合作。不过微软官网上周删除了E2项目的相关页面及最新信息。 在今年美国加州举办的计算机体系结构国际
6、会议上,微软研究员DougBurger、AaronSmith、GregWright与高通处理器研究部门的高级工程主管,都发表了关于EDGE处理器的演讲,并演示了Windows在E2模拟器上的运行情况。 尽管E2的指令部署已经在几年前完成,但是现在大部分信息仍作为机密不对外公开。目前来看,外界可得知的消息就是每个代码块都会从全局寄存器读取数据,并在临时专用寄存器进行数据的处理,最终将结果写回全局寄存器。 微软在设计芯片方面已经有了一定的案例,例如HoloLens虚拟现实护目镜中的数学加速器。据推
7、测,这种E2架构设计可能最适合在FPGA中实现“软”处理器。
此文档下载收益归作者所有