开源——不再仅仅是软件
作者:Kevin Krewell
更新时间:2021年2月2日
在硬件设计领域里,“开源”这个词具有多种含义:它既可以指开放的规范、开放/自由设计文件/RTL、超出保护期的专利/版权设计,也可以指代开发商决定终止支持的设计——或者被称为被放弃的设计。
因此,开源硬件的价值差异很大。很多原始的开源硬件项目规模很小,对芯片设计业务的影响非常有限。而RISC-V(英文发音为“risk five”)则可能是其中最著名,也是对这个行业影响最大的一个项目——尽管它并不是第一个开源的硬件项目。
RISC-V改变了游戏规则。
这个开源芯片项目始于加州大学伯克利分校的一个学术项目,该校还曾经创造了第一款精简指令集计算机(RISC)CPU:RISC-1。David Patterson是该架构的创始人之一,他撰写的关于RISC的研究论文可谓影响深远。RISC-1一跃成为Sun Micro SPARC处理器。在上个世纪八十年代,RISC证明了新的处理器架构足以支持建立有生存能力的公司。
RISC-V最初是作为教学和研究工具出现的。该指令集的设计非常干净、简单、现代,而且没有知识产权方面的麻烦。开放的模式允许研究人员构建芯片,扩展架构并探索新的指令。对于研究生来说,它也是一种非常容易上手的设计工具。
该校的团队对于RISC在公共领域的态度非常宽松。其他人开始使用它。结果是学者们和研究人员们围绕着RISC-V建立起了一个生态系统。然后,伯克利团队为正式开发和寻求社区意见奠定了基础。最早的行业推广活动出现在2014年的Hot Chips会议上,当时的展示是用一个台式显示器进行的。从那时候起,该项目便如同滚雪球一般迅速成为了一股席卷全球的力量。
该基金会更名为RISC-V International,并已经将总部迁往瑞士的日内瓦——此举象征着中立立场。RISC-V International基金会的首席执行官Calista Redmond将RISC-V描述为开放标准体系结构。该组织还宣称没有特定的CPU作为开源设计。相反,它是一个指令集和行为规范,一直发展到一定程度,然后冻结。
RISC-V就像是积木,企业可以在它上面添加扩展。实施者可以自行决定是否要将他们的CPU内核作为开源发布,他们也可以收取内核使用费,或者结合使用两种模式。
该标准是开放的,但是基于该标准构建的CPU设计则不一定要是开放的或免费的。在开放设计方面,西部数据(Western Digital)公司开发了SweRV内核,供内部的闪存阵列存储控制器使用。然后,该公司开源了该内核。
因此,RISC-V提供了一个崭新的、入门门槛低并且更加干净的架构,而且这个架构具备了很好的灵活性。
RISC-V的一个问题是指令集的碎片化,但是基本体系架构已经足以应对标准化软件开发。该指令集还可以通过广泛的社区参与受益——有五十名委员一直致力于设计和生态系统里方方面面的工作。
RISC-V开放式规范的另一个优点是消除了对架构授权的需求,而用户在设计自己的CPU内核时,如果使用的是Arm或者MIPS IP则有可能需要这类授权。尽管Arm确实提供了一些免费的开发内核,但是设计人员们仍然必须使用Arm设计的内核,并为已经出货的产品支付专利使用费。绝大多数商业芯片仍然在使用授权的内核。
即使开发人员愿意选择预制CPU授权,他们也有更多的知识产权选择。
例如,台湾的晶心科技股份有限公司(Andes Technology Corp.)已经开发了可授权的RISC-V内核。几位RISC的先驱创建了SiFive,它是开发授权的、开源可定制CPU,该公司的商业模型是建立在设计服务的基础之上,并提供具有商业功能(如跟踪,调试和安全选项)的知识产权。类似于Red Hat和SUSE之类通过Linux发行获利的公司,设计公司可以通过提供定制化和支持CPU知识产权的方式,通过RISC-V获利。
技术主权
随着技术冷战的兴起,技术主权是另一个新出现的知识产权问题。就RISC-V而言,没有一个国家控制了这项知识产权。因此,无法在贸易纠纷中单独阻止某人使用该指令集。
目前,RISC-V生态系统也已成为其他开源设计的重点。例如,一个名为libreSoC的小组正在开发基于RISC-V的开源GPU。他们的目标是混合CPU、VPU和GPU。
实际上,RISC-V并不是第一个开源硬件存储库。在它之前有Open Cores,该站点允许开发人员“查看、下载、重用和共享网关软件设计”。这些项目包括实际的电路设计,但大多数都是模糊的学术项目或者是已经不再延续的知识产权,这些知识产权被称为“废弃的设计”。这些内核缺乏强大的、可扩展的社区支持,只能供业余爱好者和学者们使用。
其他开放式CPU体系结构还包括IBM Power和Sun Microsystems / Oracle SPARC。
OpenSPARC项目开始于2005年。该站点根据GNU通用公共许可证提供了针对SPARC T1 / T2内核的RTL。它们是小型、多线程内核,非常适合大吞吐量的运算。
另一个项目是欧洲航天局开发的LEON CPU内核。这个32位的SPARC V8内核具有两种不同的授权。Oracle结束了SPARC的开发之后,对该架构的兴趣就减弱了。
IBM于2013年与谷歌、泰安电脑(Tyan)、英伟达(Nvidia)和Mellanox合作,共同创立了Open Power Foundation。该机构最初的目标是提供能够在服务器和HPC领域抗衡英特尔处理器的替代方案。但是该项目存在着很大的局限性:IBM最初是唯一的Power芯片提供商。后来,一家中国的公司——苏州中晟宏芯信息科技有限公司开发了Power处理器。在Arm服务器和AMD的Epyc处理器进入市场挑战了英特尔的统治地位之后,对该项目的兴趣也减弱了。该项目仍在发展,但是进展缓慢。
去年9月,IBM贡献了A2O Power处理器内核,这是对A2I内核的无序跟进。A2O是64位的CPU,具有强劲的单线程性能,能够达到4 GHz时钟速度,并使用了7纳米工艺。OpenPOWER项目还刺激了相关的接口标准项目,例如OpenCAPI和OMI(Open Memory Interface,开放内存接口)。
尽管如此,OpenSPARC和OpenPOWER的影响力仍然非常有限。即使该架构的使用是“开放的”,最初参与的几家公司仍然缓慢地将控制权交给了设计社区。OpenPOWER设计功能强大,但是缺乏包括浮点单元在内的完整平台。而且,它们仍然高度依赖IBM的支持。
最近,Linux基金会发起了一个名为CHIPS Alliance的项目,试图为开源硬件生态注入活力。在12月,该组织宣布将与RISC-V International合作,为重数据应用程序提供标准化的、开放的、统一存储一致性总线。
必需的多样性
为了取得成功,开源知识产权需要一个强大的、多元化的社区在背后支持。还需要一个开放的生态系统,能够重视对体系架构的贡献,同时为新的开发提供交流中心。这样,开源知识产权项目才能够最终与授权内核和专有架构竞争。
RISC-V项目满足了上述要求中的大部分,因此很有希望。OpenPOWER也有潜力,但需要更广泛的支持才能达到被市场接受的关键水平。
尽管如此,RISC-V是否能够取得长期的成功仍然不能确定,而世界领先的知识产权供应商——Arm也不会很快消失。如果能够通过被英伟达(Nvidia)收购的反垄断审查,Arm的商业模式可能会出现重大的调整。到目前为止,英伟达已经保证将保持Arm的商业模式不变。
Arm仍可能采用混合知识产权授权的模式,但扩展可能仅限于苹果公司等大型架构被授权人。
同时,RISC-V将继续吸引更多的投资和人才。开源体系结构最初的成功大部分来自微控制器。随着它进入应用程序和数据中心处理器的性能提升,开源体系架构将不得不同根深蒂固而又无处不在的Arm生态系统进行竞争。
本文章选自《数字化转型方略》杂志,阅读更多杂志内容,请扫描下方二维码