Arm如何处理新旧Cortex-A混合的系统芯片?

电子说

1.2w人已加入

描述

Arm(Advanced RISC Machines)公司已经确定了其高端智能手机和笔记本电脑的Cortex-A处理器将只支持64位处理器的日期。

届时Arm将公布其CPU设计代码Makalu,我们猜测它是Cortex-A80。后续的高端Cortex-A内核也将只支持64位,这意味着不支持本地运行32位软件。而使用这些仅64位内核的设备预计将在2023年开始销售。

Arm副总裁保罗·威廉姆森(Paul Williamson)在周三的芯片设计师虚拟开发者大会(chip designer’s virtual developer conference)的主旨演讲中宣布了这一变化。他说:“我们正处在计算架构的发展过程中。我们不再从核心和cpu的角度来思考,而是从形成因素和用户体验的角度来思考,这是一种能够释放新功能的整体方法。”

这是相当大的一个问题,因为Arm的32位和64位指令集有很大不同,并且包括对32位代码的支持占用了每个CPU内核大量的裸片(die)空间。通过将ARM32从将来的产品中删除到Cortex-A系列中,可以将该区域重新用于加速处理。我们认为,将其删除还可以减轻设计的复杂性,并使仿真和验证更加容易。

做重要的是,ARM32是上世纪90年代的遗留物,并且很难使用诸如推测执行之类的现代技术在硬件上进行优化。而且很难使用现代技术(比如推测性执行)来优化硬件。那是因为它有类似LDMIA sp的指令,并且难以进行推测性执行以获取性能提升。ARM32的条件执行也是当今难题。

Arm的工程师们一直渴望摆脱Cortex-A系列核心的32位包袱,并简化他们的蓝图。A76是该系列中第一个在内核级别放弃32位支持的产品,尽管它在应用程序级别继续支持ARM32。

Arm的技术代表彼得·格林哈尔希(Peter Greenhalgh)在2018年A76发布时告诉我们:“很明显,下一步是彻底取消对解码和执行更笨重指令的支持。我们将会在某个时候做到这一点。”

好吧,这一点将在几年后随着只有ARM64的Makalu的到来而到来,这一点将在未来几年出现。这意味着智能手机,平板电脑和笔记本电脑中未来的仅64位高端Cortex-A CPU内核设计将无法运行任何旧版32位游戏和其他应用。这并不会太让人太担心:一方面,谷歌的Play商店去年停止接受32位应用程序,因此,到2022年,那些ARM32应用程序上基本将不存在。而且,我们几乎都在智能手机和其他基于Arm的手持设备和智能设备上的64位OS上使用64位应用程序,因此,取消ARM32支持是Arm移动生态系统的最后一步,也是合乎逻辑的一步。

威廉姆森表示,目前约有60%的应用程序提供64位版本,这似乎有点不准确。Arm上的Android,Windows,Linux和其他操作系统是都支持ARM64应用程序,内核和驱动程序的。自iOS11以来,苹果要求其设备上的应用程序只能是64位的,这些设备由库比蒂诺(Cupertino)自主研发的Arm兼容处理器驱动。

需要明确的是,Arm的转换日期仅适用于未来的A型Cortex内核设计,而不是在专业和嵌入式设备以及物联网设备中发现的Cortex-R和Cortex-M CPU,在这些设备中,许多固件、工具和程序代码仍然是32位的。在服务器端,Arm的Neoverse1 CPU内核至少已经是64位的。此外,Arm将如何处理新旧Cortex-A混合的系统芯片还有待观察。为了简化起见,系统可能只使用ARM64,尽管较旧的内核可能会运行所有“随处可见“的ARM32应用程序。

Arm还调侃了另一个将于2021年发布的代号为Matterhorn的Cortex-A核心,我们猜测将是Cortex-A79。Matterhorn和Makalu也将紧随今年的5nm Cortex-X1/Cortex-A78。威廉姆森还说,Makalu应该比X1 / A788有30%的性能提升。
       责任编辑:tzh

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分