写点什么

RISC-V 何以成功?

  • 2022-05-07
  • 本文字数:3964 字

    阅读完需:约 13 分钟

RISC-V何以成功?

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 行业提供的成品更新速度更快。


原文链接:


https://semiengineering.com/why-risc-v-is-succeeding/

2022-05-07 09:003502
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 545.6 次阅读, 收获喜欢 1978 次。

关注

评论

发布
暂无评论
发现更多内容

如何设计一个自动化测试平台

老张

自动化测试 测试开发 测试平台

NFTScan | 05.22~05.28 NFT 市场热点汇总

NFT Research

NFT 热点

Flutter调优--深入探究MediaQuery引起界面Rebuild的原因及解决办法 | 京东云技术团队

京东科技开发者

flutter 企业号 5 月 PK 榜 MediaQuery rebuild

CISA零信任成熟度模型(译文)

权说安全

CST如何查看哪些 GPU 在线?

思茂信息

cst cst使用教程 cst操作 cst电磁仿真 cst仿真软件

敏捷项目管理中缺陷bug的跟踪和管理

顿顿顿

Scrum 敏捷开发 缺陷管理 敏捷项目管理 敏捷开发管理工具

堪称一绝!阿里技术人都用的Nginx笔记手册,应用到架构齐全

做梦都在改BUG

nginx

我翻遍整个牛客网,整理出了全网最全的Java面试八股文大合集,整整6000多页

采菊东篱下

Java 程序员 面试

盘点一款好用的运维团队协同软件,用过真香!

行云管家

运维 IT运维 协同合作

最佳实践:基于vite3的monorepo前端工程搭建 | 京东云技术团队

京东科技开发者

前端 vite Monorepo lodash vue3 vite 企业号 5 月 PK 榜

【实践篇】手把手教你落地DDD | 京东云技术团队

京东科技开发者

DDD Archetype 企业号 5 月 PK 榜 三层架构

英特尔黑科技加持,腾讯应用宝登陆电脑:安卓应用完美移植PC 更有神器辅助

E科讯

Java中synchronized锁的深入理解

做梦都在改BUG

Java synchronized

阿里技术大佬限产的Netty核心原理剖析手册,看完你不心动?

做梦都在改BUG

Netty

深度学习进阶篇-国内预训练模型[6]:ERNIE-Doc、THU-ERNIE、K-Encoder融合文本信息和KG知识;原理和模型结构详解。

汀丶人工智能

人工智能 自然语言处理 深度学习 预训练模型 Transformer

Tomcat处理http请求之源码分析 | 京东云技术团队

京东科技开发者

tomcat container HTTP 企业号 5 月 PK 榜

GitHub星标126K的京东「微服务进阶笔记」首次开源!好评如潮

Java你猿哥

Java 架构 微服务 微服务架构 架构师

ERP已死,秒杀系统称王!阿里巴巴内部「10亿级并发设计文档」

Java你猿哥

数据库 缓存 分布式 消息队列 秒杀系统

阿里逆天级调优方案,内部这套Java性能调优实战宝典,堪称教科书

做梦都在改BUG

Java 性能优化 性能调优

渲大师云主机按量付费功能上线!

Finovy Cloud

渲大师 按量付费

惊艳!京东T8纯手码的Redis核心原理手册,基础与源码齐下

做梦都在改BUG

Java 数据库 redis 缓存

5G和led显示屏有什么关系

Dylan

技术 5G LED显示屏

卧薪尝胆30天!啃透京东大牛的高并发设计进阶手册,终获P7意向书

做梦都在改BUG

Java 系统设计 高并发

听听飞桨框架硬核贡献者如何玩转开源!

飞桨PaddlePaddle

开源社区 百度飞桨 PaddlePaddle

从源码全面解析 dubbo 服务注册的来龙去脉

做梦都在改BUG

Java 源码 dubbo

首届百度商业AI技术创新大赛启动 点燃AIGC革新“星火”

百度Geek说

人工智能 百度 AIGC 企业号 5 月 PK 榜

2023年互联网大厂Java面试八股文整理(1200+面试题附答案解析)

架构师之道

Java 程序员 面试

校园共享电动车发展现状及未来趋势

共享电单车厂家

共享电动车厂家 校园共享电单车 校内共享电动车

2023年天津等级测评机构有哪些?具体位置在哪里?

行云管家

等保 等保测评 等级 天津

500代码行代码手写docker-设置网络命名空间

蓝胖子的编程梦

k8s 容器网络 ,docker 容器网络方案 容器网络平台

腾讯高工内产,Github都没的SpringBoot源码手册

做梦都在改BUG

Java spring Spring Boot 框架

RISC-V何以成功?_AI&大模型_BRIAN BAILEY_InfoQ精选文章