RISC-V 处理器架构的诞生毫无疑问让很多人都为之兴奋不已。然而,尽管许多人都说 RISC-V 预示着我们将迎来更广泛的开源硬件运动,但这种架构究竟为什么取得成功的原因并不好判断,而且它是不是会推动更多开源芯片核心的出现也完全是个未知数。
“RISC-V 成为了许多芯片开发商的首选架构,在硬件开发界掀起了一股创新浪潮,“RISC-V 国际的技术项目总监 Stephano Cetola 说:“设计师们正在基于 RISC-V 设计各种架构,并在许多行业内开发实际的芯片实现。“
这并不是业界第一次将处理器的实现,或称指令集架构(ISA)在公共领域开放出来。业界有很多这样的例子,包括 OpenPOWER、OpenSPARC、OpenRISC,等等。虽然每一种架构都获得了一定程度的推动,但与 RISC-V 在很短时间内取得的成就相比,它们都相形见绌。
与 RISC-V 社区成员交流时,你会经常听到两个词—— 免费和自由。一些人希望处理器内核是免费的,而另一些人则希望能自由地使用内核,做他们想做的事。对这些人来说,是不是免费并不怎么重要,因为他们会花很多钱来获得他们想要的东西。
一个不断变化的市场
RISC-V 的兴起是与行业内其他一些事件同时发生的。
首先是摩尔定律放缓了脚步,这意味着每个新的芯片制造工艺节点不再意味着芯片算力能同步几何增长。其次是机器学习的飞速发展带来了对算力的巨大需求增长。
那么,这是不是说 RISC-V 仅仅是出现在了正确的时间、正确的位置上呢?
人们对处理器的看法已经改变了。Imperas 软件公司的创始人兼首席执行官 Simon Davidmann 说:“RISC-V 是被硬件设计社区对自由的需求所推动的。““电子产品是由其功能定义的,其中很多功能又是由软件定义的,而软件是在处理器上运行的。今天,一切软件都需要某种形式的机器学习能力。比如说你的手机为了拍摄更好的照片就需要机器学习支持,进而需要大量算力,诸如此类。而人们意识到的是,他们需要大量的处理器。他们需要属于自己的处理器架构。你需要以你需要的方式来配置它们。现成的技术是不够用的。因此,在电子产品市场上出现了一种变化,也就是说'我们需要自由设计芯片、自由设计处理器和这些芯片上的处理器架构'。”
很多人同意他的观点。Codasip 公司的高级营销总监 Roddy Urquhart 说:“由于芯片扩展通用算力的步伐逐渐停滞,提供更高性能的唯一方法就是专业化。““开放的 RISC-V ISA 是模块化的,支持自定义指令,因此成为了创建多种多样的专用处理器和加速器的理想 ISA。”
我们要看到,所有这些需求的背后是新一代系统公司正在进入市场,每一家公司都有独特的商业动力。但这些系统公司的一个共同点是,他们并不试图销售他们所开发的芯片。相反,他们正在销售以某种方式由这些产品推动的服务。他们没法从现有市场上购买合适的产品,所以他们准备自己开发芯片,同时也通过贡献和合作来推动一些必要的创新。在这种情况下,RISC-V 发挥了重要作用。
是什么让 RISC-V 与众不同?
RISC-V 正在多个领域创造突破,而每个领域成功的原因都有所不同。为了理解这一点,有必要分开看待 RISC-V 取得成功的各个因素。首先是架构本身。其次是大量正在研发中的开源架构实现。第三个方面是围绕处理器核心的支持核心。最后,还有必要的工具来帮助企业实现和验证 RISC-V 处理器。
它最初是为了满足一个特殊的需求而创建的。Imperas 公司的 Davidmann 说:“现在它背后有大量的资源支持。““一开始它是来自大学、学术界,大学里的一些聪明人做出了一个好东西。从伯克利出来后,它从硅谷和很多前伯克利毕业生那里获得了一些动力。它的势头比 OpenRISC 猛的多。很多大学需要它,是他们推动了它的发展。“
RISC-V 现在是一个开放的标准 ISA,由加州大学伯克利分校推动,还有一个行业非营利组织在照顾它——也就是 RISC-V 国际。许多大学创建了开放的处理器内核,如伯克利大学的 Rocket 内核、苏黎世联邦理工学院的 pulp 平台,等等。今天,有许多行业合作团体将工业界和学术界聚集在一起构建开源内核,并将其提供给整个社区。这方面的例子包括了 CHIPS 联盟和 OpenHW 小组。
许多国家已经提出了可以满足当地需求的项目。印度有 Shakti 项目,由 IITMadras 推动。在以色列,GenPro 联盟将工业界和学术界联合了起来。日本和中国也有类似的项目,他们正在开发开源的 RISC-V 内核,以使它们能够为他们的社区和具体利益服务。
RISC-V 是第一个开放和可定制的 ISA。“目前,与 RISC-V 相关的主要工业利益不是关于开源实现,而是关于开源指令集,“Fraunhofer IIS 自适应系统工程部的先进系统集成小组组长和高效电子部门主管 Andy Heinig 说:“有了它,环境就标准化了,但实际实现是为具体的公司需求设计的,也是公司拥有的。我们在芯片之间的接口领域看到了类似的活动,人们正在准备和讨论许多互联标准。在 RISC-V 这边,这些互联标准也可以支持不同供应商的芯片之间获得互操作性。而 RISC-V 则在软件方面提供了互操作性。“
能够修改的能力是很重要的。Valtrix 系统公司的首席执行官兼联合创始人 Shubhodeep Roy Choudhury 说:“像 RISC-V 这样的开源、支持自定义扩展的 ISA 给处理器设计者带来了难以置信的自由。““同时,它也带来了一个非常有趣的验证挑战。要确保所有的设计都符合要求,功能正确,就需要改变测试生成器的设计方式。它们需要高度的可配置性,才能对定制功能和传统/基准功能进行验证。“
从开放的 ISA 到开源的处理器是一个很大的跳跃。“开源 IP 的概念非常诱人,因为它让人联想到了免费 IP 的概念,“Flex Logix 公司 IP 销售和营销副总裁 Andy Jaros 说:“然而,开源并不等于免费。大多数公司,除非他们想在 IP 开发上投入巨大的资源,否则就会从无数的 IP 供应商(如 Open5、Andes 和其他许多供应商)那里获得预实现的 RISC-V 内核的许可。这节省了开发、验证、软件开发等工作的投入,还能有很多保障。”
有多家公司在开发内核竞品,这也促进了实现领域的创新进程。“RISC-V 的真正价值在于它成为了 Arm 的竞争对手,而不是因为它是开源的,“Jaros 补充说:“我们看到了很多 RISC-V 内核供应商,他们为市场提供了选择、促进了竞争。而在 Arm 这边,你只能从 Arm 获得 Arm 处理器内核。“
另一个驱动因素是快速增加的内核数量,这让基于实例的专利费用定价显得相当昂贵。“人们希望处理器遍布他们的设计,“Davidmann 说:“他们想要很多小型处理器,而现有的 Arm 许可条款要做到这一点相当困难。当然,它们也很昂贵,但更重要的是,人们不能随心所欲地修改 Arm 内核。我不相信 RISC-V 的成功是因为它便宜或成本低。如果你只是想做与 Arm 内核相同的事情,你绝对应该买一个 Arm 内核,因为它经过了充分验证,设计得非常好——这正是你想要的。使用 RISC-V 的唯一原因是你想自由地改变它,把你自己的东西添加到它里面。”
即使有了这一切有利因素,如果没有围绕它的生态系统的蓬勃发展,RISC-V 可能就不会取得成功。“开源社区开发的众多重要工具是帮助人们基于 RISC-V 开发出多种多样的处理器的关键因素,如芯片技术工艺设计套件、设计验证套件、实现工具等等,“RISC-V 国际的 Cetola 说:“这也推动了 VLSI 设计的民主化、推动了更高级别的设计描述语言的发展,复杂的开源自动化工具也加速了设计的进步,所有这些让 RISC-V 的能力得到了更大提升。有了设计工具和工具链,RISC-V 很快就会变得真正无处不在。“
OpenHW 小组是推动行业实现这一目标的合作项目之一。它正在开发多种处理器内核和支持这些内核的周边 IP。此外,它正在建立一套完整的工具,用于设计和验证这些内核。“他们做事的方式是不同的,”Davidmann 说:“一个是他们会给你源码,所以你可以自己修改。更重要的是,他们也给你一个验证环境,这样如果你做了变更也可以验证它能否正常工作。如果有人只是扔给一个核心,而你改变了其中一些代码,你就有可能破坏一些东西。你需要一个复杂的验证环境来知道你有没有破坏它。而这正是 OpenHW 在开源硬件领域的与众不同之处,因为他们提供了完整的验证环境。如果你增加了一条新指令,你可以知道自己有没有破坏其他指令。我不认为人们会只拿来一个 OpenHW 内核就开始用。这没什么意义。如果你想省钱,你可以这么做。但它的意义在于你可以拿来扩展内核,而且它是一个非常好的起点基础。这就是关键所在。你不是从头开始。”
扩大范围
这种开源的势头能否扩大到处理器核心之外的领域呢?
处理器只是一个完整的 SoC 的一小部分。SoC 还需要内存控制器和内存接口、USB、PCI 以及更多组件。这些组件对产品来说没什么特殊的,许多人希望它们也是开源的。
问题是,这些组件非常复杂,它们包含了模拟部分,而这些部分往往是为具体的代工厂和工艺技术定制设计和实现的。虽然控制器也能以开源的方式构建,但我们可以说,如果没有数字和模拟部分的紧密集成,可能造出来的就是次品。
LowRISC 是一个在英国成立的组织。它最初想建立一个类似树莓派的开源系统。今天,它在一个完全协作的框架内开发硬件和软件,包括 RISC-V 内核,以及支持它的软件编译基础设施。
最近,谷歌为 silicon root of trust 创建了一个规范和 IP。它将这项工作开源,并委托 lowRISC 管理。这里的部分重点是,开放和透明最终会提高安全性和可信度,而不是带来修改规范的能力。
结论
RISC-V 已经实现并促进了创新。虽然免费可能对行业的某些人来说是很重要的,但真正的关键是自由。这种自由带来了志同道合的人才、公司和组织,让他们能够共同开拓新的领域。它对创新的贡献不仅是广度,更多在于深度。虽然 RISC-V 可能会让更多硬件模块变成开源的,但最重要的收获也许是人们能够快速采用处理器的开放规范并实现它。
曾几何时,当工程师们停止开发他们自己的定制处理器时,针对处理器开发和验证的工具就消失了,因为在 20 世纪 80 年代,那些处理器几乎没有提供任何差异性。现在,处理器领域已经再次变得高度差异化,为此业界正在合作开发必要的工具。一个尚无答案的问题是,他们创建开源工具的速度能否比 EDA 行业提供的成品更新速度更快。
原文链接: