多样性与兼容性的统一
处理器供应商一直试图在其产品周围创建一个庞大的软件生态系统,因为这可以产生黏性,自然而然地 "锁定 "大量投资于创建专用软件的客户。随着时间的推移,这种效应会越来越大,因为每个产品的软件数量都在不断增加。比如:一辆汽车的代码行数可能超过1亿行!
硬件与软件之间的耦合来自于所选择的指令集架构(ISA),这也是为什么处理器设计者历来对其加以严格保护的原因。ISA可为处理器赋予价值,因此带来较高的售价。
尽管RISC-V ISA被多个处理器供应商自由使用和共享,但有一点是共通的:处理器被赋予的价值来自于RISC-V兼容代码的积累。然而随着定制能力的不断增强,一些竞争者将碎片化风险作为RISC-V架构的弱点提出来。然而这个锅RISC-V该背吗?
挣脱专有ISA的禁锢
为了保护自己的生态系统,传统的专有ISA将用户锁定在预定的标准中,不惜一切代价避免偏离标准,以确保软件的兼容性。这就解释了为什么一些现代处理器架构上仍然留有20世纪70年代决策的疤痕,当时的限制和系统完全不同,这导致了效率极其低下。而RISC-V架构通过提供开放和可定制的ISA,正在逐步改变这种格局。RISC-V最引人注目的一点是它能够实现指令集的定制:这也是许多客户在极力寻求的功能。这一功能的诸多优势可在下图中一目了然。
可定制RISC-V ISA的优势
如此明显的架构优势,这也是传统供应商试图通过提出兼容性问题来捍卫立场的原因。如果大家都开始修改架构,对于生态系统有可能会支离破碎,软件和硬件变得不兼容的担忧时有发生?
其实这种担忧是合理的,但是需要结合事实来判断。
首先我们必须承认碎片化的存在性。对于许多应用程序来说,真正依赖于ISA的软件即使有,也是少之又少。由于软件开发人员希望尽可能提高工作效率,因此他们使用高级语言编译生成依赖ISA的汇编代码。这些语言中包含大量现成的软件元素:移植它们只需将程序库与应用程序一起重新编译即可。而这又意味着什么呢?要将这些代码重新定位到带有自定义指令的处理器上,只需要一个优秀的专用编译器即可解决问题。但这同时又相当棘手,因为定制编译器可能需要一个技术精湛、成本高昂的团队来构建......幸运的是,目前市面上已经有处理器定制化软件工具可以协助达到这一目标。比如Codasip Studio,作为高度自动化的处理器设计工具,它可以在生成定制处理器的同时生成专用编译器!
尽管在少数情况下,我们仍然需要依赖ISA的代码,诸如:
对于经过严格优化的代码,每个周期都经过计算,以保证达到一定的性能水平。
在大型软件系统中,需要执行预先编译好的应用程序,例如数据中心应用中的容器技术(内核虚拟化技术),计算机或移动设备中的应用等。
操作系统也可能有ISA特定代码,如上下文或线程切换。
确实需要努力将其他ISA移植到RISC-V,但一旦完成移植,就不会妨碍定制,因为RISC-V在构建时就考虑到了定制和兼容性。那么RISC-V是如何做到这一点的?此时不得不提到定制指令。定制指令通常可以显著改善客户希望移植的经过严格优化的代码,因此可能需要权衡这一点与易移植性之间的关系。
以下例子充分说明了为确保兼容性,RISC-V所采用的措施:
1. 将基本ISA标准化
RISC-V定义了一组有保证的标准基本指令。这就确保了在不同的实现中保持一致的通用基线。这种基本兼容性甚至涵盖了从最微小的设备到最复杂的服务器级多核处理器。在这些标准的基础上可以进行定制,从而保证兼容性不被破坏。
2. 模块化设计
RISC-V的模块化设计方法将ISA分成不同的部分,明确定义扩展以确保其兼容性。例如如果一个软件需要浮点运算单元,它就可以在任何具有浮点运算单元的RISC-V 处理器上执行,而无需修改。
3. 配置文件
RISC-V定义了复杂的配置文件,这些配置文件又定义了各种扩展,简化了与各类设备兼容的条件。这对高端应用至关重要,因为在高端应用中,核心指令集提供的基本兼容性不足以管理软件工作负载的复杂性。
通过确保兼容性来避免RISC-V碎片化
由于具有自定义指令的处理器只是“普通”处理器的超集,这些机制确保其可以(并立即可用)与为其他RISC-V处理器开发的软件相兼容。因此,它受益于RISC-V开发社区在许多供应商的处理器上编写代码的倍增效应。这就是为什么Codasip的可定制并经过预先验证的RISC-V兼容处理器解决方案如此强大:设计人员在保持兼容性的同时获得定制效率的提升。
RISC-V打破了定制与兼容性相互排斥的观念。其开放、模块化和标准化的设计使开发人员能够在保持软件兼容性的同时,创建满足特定需求的定制解决方案。RISC-V架构能够使各个行业有能力摆脱专有限制,并以之前无法想象的方式推动创新。随着越来越多的行业对RISC-V接受程度的提高,以及生态的不断发展,并有诸如Codasip这样的供应商不遗余力地提供实现定制处理器的便捷途径,我们完全可以期待一个蓬勃发展的定制计算时代的到来。
审核编辑:彭菁
全部0条评论
快来发表一下你的评论吧 !