更简单、更快、更低功耗的硬件,且具有免费、开放、简单的指令集架构。这听起来是再好不过的,更高兴的是目前RISC-V正在推进这一工作。RISC-V是加州大学伯克利分校工程师开发的指令集架构(ISA),现在由一个基金会管理。

人们已经知道,随着摩尔定律不再像过去一样提供高效的回报,那就意味着独立的通用处理器也不再是创新的“热土”。

Microsemi的SoC业务部门的产品架构和规划高级技术总监,RISC-V基金会的董事会成员Ted Speers说:“我们不应该在处理器上花那么多钱,处理器的成本应该要下降。那就需要你从加速器和新架构等方面进行创新。”

Sonics首席技术官Drew Wingard指出:“从技术上讲,管理复杂性的能力已经扩张到了32位RISC微处理器,而这已经不再被视为复杂的处理对象。”

Drew Wingard说:“微处理器指令集架构的入行门槛是软件和生态系统。总的来说,微处理器的基础技术没有什么神奇的地方。RISC-V本质上把它带到了下一个逻辑层次上,让我们尝试捕获一个指令集架构以及足够的结构和自动化,这样我们就可以更容易地构建处理器家族。我们会选择将它作为一个开源的IP来分配,这样社区就可以添加进来。它具有开源运动的一面,也具有可配置处理器运动的一面,它有机会让我们重新看待微处理器IP的成本。”

这个市场的商业终端很可能与Linux相同,厂商增加了自己的IP和技术支持。 现在,RISC-V核心的供应商包括Nvidia,Andes Technology,Cortus和Codasip。

015ednc20170612 基于RISC-V的Rocket 核心映射到运行Linux的ZedBoard上。(来源:HotChips)

目前,社会上主流的ISA是x86、ARM、ARC,、MIPS 以及PowerPC,以及在GPU和DSP中使用的其他ISA。但横空出世的RISC-V已经开始取得一些进展。Nvidia宣布其SoC将包含RISC-V控制处理器。软核供应商Andes Technology同样采用RISC-V的64位架构。

NetSpeed Systems营销与业务发展副总裁Anush Mohandass表示,从架构的角度看,RISC-V既简单又优雅,但处理器的成功要比处理器本身更重要。

Mohandass说:“关键问题是软件生态系统。它们会如何发展?这是一个先有鸡还是先有蛋的问题。开发者比设计更多,有人必须启动这个过程,这就是Intel主宰数据中心领域,以及ARM主宰移动领域的原因。是的,当中一部分是架构。但有一部分是生态系统。一旦它获得了动力,就必须用新的架构来打破这种模式。RISC-V会在新兴的物联网领域进行对冲,因为那里没有一个大型的统一平台。RISC-V在那里会有机会。 ”

支持RISC-V平台的人同意这一观点。加州大学伯克利分校教授,RISC-V基金会的主席,SiFive的联合创始人Krste Asanovic 正在对其版本进行商业化。。他表示:“对于小型集团来说,RISC-V实施起来是相当简单的,这样就使得开启许多不同的RISC-V内核成为可能。所以市场上的多样性就更大了。处理器设计工程团队可以从多个供应商(甚至是开放源码)中找到一个符合他们需求的版本,或者他们可以自己做一个设计。自由是这里最大的特征。”

Asanovic认为,RISC-V可以平衡竞争环境,并允许供应商在质量或定制的实现方面进行竞争。

采用RISC-V的挑战

然而,任何新技术都面临着挑战。对于RISC-V而言,一个障碍是将其作为一个单一标准,保持ISA的一致性。

“如果将RISC-V分裂,会有许多不同的RISC-V ISA,它们完全不兼容,所以基金会的目标是确保有一个标准。大多数核心供应商都明白,RISC-V的最大优点是通用的软件堆栈。其开发成本远远超过了任何核心的开发成本。这对其他核心提供商来说具有巨大的吸引力。他们不需要维护编译器、连接器、操作系统,以及其他所有东西。这些全部是由社区完成的。”

然而,达到成熟和信赖的程度需要时间。

Sonics的Wingard说:“如果您今天使用的是主流的指令集架构之一,那么可选择的调试环境不会超过五种。你可以在这个支持社区里提出任何其他的东西,并且从供应商那里得到多种的选择,这些供应商都拥有悠久的历史和良好的商业模式。RISC-V世界将不得不重新创造所有这一切,或者弄清楚如何将其适用于现在面向ARM生态系统的芯片设计的最主要的生态系统。或者想办法让它适应目前最主流的芯片设计生态系统,即ARM生态系统。 RISC-V五核的商业供应商必须在这方面做出自己的决定,这对RISC-V项目而言是一个巨大的障碍。”

采用RISC-V的另一个障碍是对实现技术的优化。

Wingard说:“他们有了能工作的核心,他们已经证明了这一点,但是他们是否要进行基准测试,证明比第7代核心实现商业指令集架构更有效呢?可能暂时不会。在应用程序中,有时会有很多需要处理的问题。我们有一项重要的工作需要去做。我们可以提出一个观点,在大量的SoC中,CPU应该被称为控制处理单元,而不是中央处理单元,而这个控制处理器的实际吞吐量可能无关紧要。但对于那些设计这些芯片的人来说,他们永远都不会确定。 这就像是他们宁愿拥有的设计余量。对于给定的处理频率,他们宁愿得到一台性能更高的机器。”

而且,由于RISC-V指令集可以由用户进行扩展,其中一些改动将影响核心与芯片其余部分的交互。他解释说:“这里有几门课。一种是增加可以出现在NoC上的新交易类型,或者增加直接与某种紧密耦合的加速器直接对话的能力,比如ARM的DynamiQ技术,在这种技术中,他们有能力直接连接AI协处理器。”

Asanovic承认,处理这种分裂是一项挑战。但是这个基金会的成立是为了管理这个标准,并且让大家都认同。想要使用RISC-V商标的公司必须先通过兼容性测试。

他说:“另一个挑战是处理专利问题。我们在基础ISA的设计上非常小心。这很简单。我们喜欢把它叫做“无聊的RISC”,于是我们回到最初的RISC原则。Dave Patterson与(加州大学伯克利分校)的本科生一起进行家谱搜索,基本上展示出了所有指令的谱系。 对于基础ISA,他们将其追溯到RISC I,RISC II,RISC III,RISC IV。”

在会员协议中,会员同意不根据基础ISA规范互相起诉,如果他们执意这样做,就会失去他们的权利。Asanovic指出:“但是,如果你在专利挑战方面考察其他专有的ISA,那么你并没有太多的保护,你会看到公司A起诉公司B使用了公司C的IP。就像我们最近看到的图形引擎一样,所以即使你从X购买,一些公司也会支持它。对于RISC-V来说也是如此。公司正在提供核心,并在标准的商业环境下提供保护。”

虽不成熟,但在成长

RISC-V指令集架构还不成熟。“RISC-V还处在发展的早期阶段,”Asanovic如是说:“对于RISC-V而言,并不是所有一切都已经构建起来并切实存在的,但是该领域正在以令人难以置信的速度被填充。开源社区更乐于开源的RISC-V,因此最好最聪明的做法是志愿帮助我们推进相关事项。”

而大多数使用RISC-V的项目都属于微控制器类,对于Unix级应用处理器而言,该指令集走向应用将需要更长的时间。今年基金会的目标是确立标准的Unix平台,因此工程团队有必要了解标准Unix版本所需的内容。

Asanovic说:“对于开发人员而言,该领域发展的一个重大的里程碑发布第一块Unix开发板,这样他们就可以开始移植Unix。对于RISC-V指令集架构,可以考虑插入的应用实际处于低端和高端,诸如机器学习加速器,网络处理或存储控制器之类的新应用程序,甚至是超级计算机。在这些领域,人们可以尝试新的ISAs。”

如果你想构建自己的芯片,在现有领域内你的工作范围其实非常有限,所以在高端市场做自己的事,同时却拥有一个好的软件端口是人们对高端产品感兴趣的原因。如果你是大型云服务提供商之一,那你肯定想做自己的处理器芯片。 RISC-V指令集架构可能是你非常感兴趣的东西,在三到四年的时间里,它甚至可能会被大量使用。

对设计流程影响

实际上,从微架构的角度来看,RISC-V对设计流程的影响可能很大。

“如果因为正在使用不同接口而放弃使用现有的IP内核生态系统,可能会碰到一些重大的中断。但在综合、布线等方面,没有任何影响。”Wingard称。

“当我们开始着手构建芯片升级所需的基础设施,诸如调试基础架构等,RISC-V是有重大影响的。这也就是开源RISC-V社区必须投入大量精力的地方,唯有如此,才能使之成为与现有丰富技术相媲美的技术。在软件层面上,围绕数据库和设备驱动程序有大量相关的工作要做。对于设计流程的这些阶段,目前存在一大堆工作。”

关于对设计流程的影响,Mohandass在短期内只关注一个问题。“假设你有一个新的ISA、一个新的处理器,短期内必须彻底验证其性能,当它实时运行时,人们比较关注鲁棒性能,关注架构是否可靠?是否起作用?一旦它在硅片量产中得到证实时,这些问题就消失了。只有这样,您才会看到精致而简单的架构的真正好处。”

“尽管RISC-V并不是第一个开源ISA,但是在过去几年中一直处于整合的半导体行业,开源RISC-V的到来很有意思。”Mobivil的CEO Ravi Thummarukudy表示。

“随着行业发展成熟,企业主要是通过整合实现业务增长。规模较小的企业发现,在大多数细分市场中很难取代现有的巨头,那就别说发展成熟。随着半导体制造成本的增加,对小型初创企业的投资,尤其是在新CPU架构方面的投资减少了。那么在CPU架构上突破创新的唯一现实可能性在于,通过汇聚集体创造力和可用资金来打造开源环境。”

与此同时,云计算和物联网也在推动半导体的“消费”。

“在数据中心方面,英特尔的ISA主要占据了处理器市场,ARM和其他架构占有极小的市场份额,” Thummarukudy称,“我不期望这个情况有多大变化。然而,在终端或传感器方面,事情则完全不同。这就是今天市场上最大的创新。物联网设备的处理器架构需要低功耗、高性价比的CPU,这种需求给初创企业提供了一条创新途径,它们可以用较小的预算创新各种新的SoC。这也是RISC-V最大的优势。”

与此同时,Thummarukudy还补充说,在这样一个软件驱动的世界里,对RISC-V ISA的软件支持至关重要。ISA的成功与否将取决于一个稳定的软件生态系统创建和维护的时间有多快,以便短期内启用与RISC-V相关的许多新应用。

Uniquify营销副总裁Graham Bell认为,RISC-V指令集架构将推动物联网领域新一轮热潮,特别是当它需要在半导体设计IP中看到的可扩展功能(例内存编译器),并将其引入到没有专有路障的处理器开发中。

“RISC-V支持对解决问题的指令集定义,节省硅和相关成本,并允许对低功耗和处理性能要求进行适当均衡。它能够为一到二十万美元支出的项目创造功能性硅片,这意味着对于那些打算开始原型项目的人来说,门槛已经大幅度下降。我们甚至可以看到在传统设计领域之外的企业家众筹的项目资金。除了降低入门成本外,RISC-V可以免去专有CPU IP的特许权使用费(专利费),并使得生产成本持续降低,进而推动更多产品更快投入市场。

Microsemi的Speers表示,Linux支持受到里程碑式的“碰撞”,基于此,RISC-V基金会认为,Linux 4.1是时候应该为RISC-V提供支持了。

在软件前端的另一个考虑是使用硬件交换机来转换软件方法的可能性。

“如果我是高级工程经理,或者工程总监,又或工程副总裁,我将使用RISC-V指令集架构开始我的软件方法的过渡。你已经有了一个过渡过程,还有一个开关,由于人们将不得不用新的调试器或其他工具来调试RISC-V, 你有一个转换,你有一个开关,因为人们将不得不使用新的调试器或其他工具为RISC-V,因此方法也要有小小的改变。”Imperas销售副总裁Larry Lapides表示。

然而,从商业模式的角度来看,RISC-V是具有破坏性的,Mohandass说。“这是完全的开源方式,它试图削弱ARM的影响力,削弱CPU或其他核心如工作以及它们的受重视程度。

Wingard认为,如果RISC-V成功,它将更像是Linux模型,其次,它像是任一种其他开源商业模式,因为通常大多数开源项目背后都只有很少数公司。

如果您想在商业环境中使用开源代码,那么向开放源代码项目贡献最多代码的用户群组成一种服务型公司,这使得人们在商业环境中感到很舒服,这并不少见。但是在Linux世界中,围绕这个角色(服务型公司)的竞争很激烈。

首先,没有一家公司是Linux内核最大的贡献者。

第二,代码行的总量非常巨大。

第三,如果没有一些类数据库和应用程序,以及构建块和编码的东西,操作系统本身就不是很有趣,所以有很多很多的东西需要考虑。

已经有许多相关的组织,其中红帽是最大的,但它们绝不是唯一的。人们对Linux的不同变体感到非常兴奋,他们采取不同商业模式的支付方式,但实际上绝大多数非桌面计算现在都在Linux上运行,而且这些机器中的大多数被用于商业目的。我们可以从这里看到,软件服务公司需要支付费用,它们已经达到了一种无处不在的程度,证明这种基于服务的模式和企业授权的模式是有效的。

(原文发表于semiengineering)

20160630000123