RISC-V:开放硬件运动的下一场革命

2021-10-18 13:08:37 来源:EETOP
RISC-V是一种用于计算机芯片的开放标准指令集架构。RISC 代表“精简指令集计算机”。近一两年,这个项目引起了很多关注。为什么 RISC-V 有如此大的动力?毕竟,它只是另一种 CPU 指令集架构 (ISA),对吗?嗯,事实上,它比那更大。真正的革命在于开放硬件运动,而 RISC-V 首当其冲。

出于显而易见的原因,软件世界比硬件世界要超前一些:不存在构建真实事物的物理需求或成本,也不存在用于处理软件创新的大量硬件投资。这也是为什么软件可能是硬件未来的先知,以及为什么记住自由和开放源码运动所发生的事情是至关重要的。

开放软件——第一次革命

现在已经不需要证明了:开源软件无处不在,并产生了大量的价值。云的存在是其直接产物:如果没有Xen项目,AWS就不可能像我们所知的那样存在,这对从大公司到小公司的许多不同的参与者来说都是如此。我们甚至应该谈一谈Linux内核及其引发的巨大贡献?或者IBM以340亿美元收购红帽?

但是,让我们回到一个还不明显的时代。自由和开放源码软件并不新鲜。事实上,在20世纪50年代和60年代,它是默认的选择。学术界和企业通常通过公共领域的软件进行合作。公平地说,学术界过去通常是这样处理科学数据的(共享和合作),因此在软件上也这样做是合乎逻辑的。当时,软件还不是一种商品。然而,在70年代出现了更多的限制,在80年代早期变得更糟。由于这种商品化,它成为了一个真正的、利润丰厚的行业。

这时自由软件才真正出现,最初是由小型在线共享社区组织起来的,然后在1983年通过自由软件运动正式成立了GNU项目。这场革命开始了。然而,要取得成功,你需要的不仅仅是编译器或用户空间工具。1991年,Linux带来了更多的东西。

这只是一个开始。在21世纪初,当微软以Windows和IE浏览器主宰用户/桌面空间时,开源可能已经脱轨了。相反,互联网的巨大推动力推动了创新,创造了新的商业案例、标准、更好的协作工具和共享库。甚至巨大的公司也依赖开源,并做出贡献,这有助于社区的发展。所有这些和更多的东西使开源成为许多部署的默认选择。

开放硬件——第二次革命

免费/开源硬件比开源软件更晚出现,开始于90年代末。显然,免费硬件意味着具有相同协作精神的免费/开放硬件设计。

与软件类似,它开始时规模很小,一些公司从事电子产品、小电路板(例如。Arduino和Adafruit)或3D打印。这感觉很像GNU没有内核的时候,不是吗?

这正是 RISC-V 的切入点:提供一个非常强大且开放的 CPU 指令集架构,通过开放的组件(软件和硬件)驱动整个堆栈。RISC-V最初来自学术界,更确切地说是来自加州大学伯克利分校,这一点也不奇怪。这是与开源软件根的另一个相似之处。

时机是关键

让我们现实一点:新的开放 ISA 并不是实现开放硬件革命所需的唯一条件。它是一个推动者和一个解决方案,但解决什么问题?成功或失败取决于该领域的实际需求,就像开源软件解决各种问题的方式一样,例如 IT 自动化、超可扩展性、公共或私有云基础设施等等。

那么 RISC-V 开源 ISA 在今天有意义吗?会不会是下一场革命?为什么 RISC-V 不只是一个新的 ISA?

事实上,IT架构的未来已经发生了巨大的转变。x86 是无可争议的王者的时代已经结束。数据处理单元 (DPU) 体现了这一点。由于 x86 CPU 对数据量和专用数据量的现有限制,我们需要更多具有并行能力的 CPU。一个很好的例子就是你现在用的网卡,把越来越多的功能从你的主处理器上移除出去。同样的事情已经发生在人工智能或通过GPU进行推理,甚至是通过专用加速器进行存储和类似的DPU的另一个工作上。

例如英伟达。它对 Mellanox 的收购显然与 DPU 相关,而 Nvidia 在数据中心的增长是其增长最快的部分。这也解释了为什么 Arm 是 Nvidia 未来收购的关键选择,因为目前大多数 DPU 都是基于 Arm SoC 的,例如 BlueField 2 DPU。

请注意,我们并不是在谈论从数据中心完全移除 x86。它主要是从中卸载一些 x86 无法真正发挥作用的操作,例如并行工作负载。但从长远来看,如果x86完全跟不上,这可能也会被列入去除选项。而数据中心只是大局的一部分。

RISC-V 的范围远不止于此:边缘计算、嵌入式市场等等。这些是 RISC-V 可以在技术上成熟和提升的其他地方,同时在您的数据中心中变得越来越重要。

最后,RISC-V 的时间安排与数据中心可见的大转变非常一致。你可能会争辩说 Arm 更适合实现这一切,事实上它已经部分做到了。但与 RISC-V 不同,Arm 的 ISA 并不开放。您确实可以与 Arm 合作构建自己的解决方案,就像 AWS 使用 Graviton 2 所做的那样。那么最大的区别是什么?

释放创新

你总是可以建立自己的专有软件,并比你的竞争对手更好,但世界已经改变。现在几乎所有人都站在巨人的肩膀上。当你为一个新项目需要一个操作系统内核时,你可以直接使用Linux。不需要从头开始重新创建一个内核,你也可以根据自己的目的修改它(或者编写你的驱动程序)。你肯定会依赖一个经过广泛测试的产品,因为你只是无数个做同样事情的用户中的一个。

这将正是依靠一个开源的CPU架构所能提供的。不需要从头开始设计;你可以在现有工作的基础上进行创新,并专注于对你真正重要的事情,也就是你所增加的价值。

说到底,这意味着降低了创新的障碍(没有许可证,而是分享设计)。显然,不是每个人都能从头开始设计整个CPU,这就是重点:你可以只带来你需要的东西,甚至只是享受社区提供的新功能,就像你做开源软件一样,从内核到语言。

硬件和软件的重新结合

过去几年出现的另一个趋势:人们在硬件和软件之间的接口上工作的可能性更大。这对多种原因来说是至关重要的,比如安全和性能。你需要对硬件进行一些控制,以便能够在这个接口上有效地工作。在x86世界中,这并非不可能,主要是因为你可以围绕它建立一切,如采用专用卡来替换主CPU,运行你自己的优化软件(如前所述,DPU,Nitro等)。

但对我来说,下一步是更大的,那就是在你的整个基础设施中只有开源的硬件和软件,从主CPU到所有协处理器,直到软件。所有这些都意味着你可以使软件适应你的硬件,反之亦然,以更快的速度提供与整个堆栈相关的解决方案,并具有更好的能源效率和更好的安全性。潜力只受限于你的想象力和你的执行能力,而不是许可证或黑盒设计。

大挑战=大机遇

很明显,在这条革命的道路上有一些挑战。至于自由软件,它不会从每个人立即在开放中做事开始。你可以用你自己的RISC-V设计来做任何你喜欢的事情,甚至可以拥有自己的IP。真正开放的硬件将成为标准,就像它在软件中所做的那样,但道路并不总是平坦的。

另外,碎片化可能是一个问题,必须认真对待。开放并不意味着无政府状态。依靠标准、共识和通过RISC-V国际组织(负责整个RISC-V项目的基金会)建立的东西来合作是正确的方式。不管我们对x86有什么看法,它的成功来自于拥有相同代码可以开箱即用的平台。Arm正在努力建立一些认证和标准,但真的很难避免碎片化。例如,作为一个虚拟化平台,得到一些可以运行的东西是相对容易的,并且可以在大部分的x86机器上运行。但在Arm上呢?这不仅仅是 "移植 "到Arm上,这完全取决于你的目标。并非所有的机器都是一样的,甚至让Xen在Raspberry Pi 4上运行也很困难。

  1. EETOP 官方微信

  2. 创芯大讲堂 在线教育

  3. 创芯老字号 半导体快讯

相关文章

全部评论

  • 最新资讯
  • 最热资讯
@2003-2021 EETOP

京ICP备10050787号   京公网安备:11010502037710

X