分享

芯片也开源?网红RISC-V,到底是什么东东?

 小勋3z4x5gfoiq 2019-08-29

芯片是现代科技最高精尖的领域之一,其研发资金投入大、商用周期长等特点让不少企业望而却步,近年来由于IP的种类和复杂度越来越大以及通用接口的缺乏,导致从IP开始到系统集成验证再到软件调试的过程耗时更久、投入也越来越大。这推动了一场从芯片上游开始的变革。

在这场变革中,开源的RISC-V处理器更成为企业追捧的对象。

诞生于加州大学伯克利分校的RISC-V因为其开源、灵活和低成本等优势,从面世开始就受到了开发者的热烈支持和厂商的广泛关注。尤其是进入最近几年,在AIoT潮流和各国政府的支持下,RISC-V更是呈现出一种星火燎原之势。

与大多数指令集相比,RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件。

虽然这不是第一个开源指令集,但它展现的势能和拥戴,已有王霸之气。

一方面,因为其独特设计适用于更现代的计算设备,如仓库规模云计算机、高端移动电话和微小嵌入式系统。

另一方面,RISC设计之初就考虑到了用途中的性能与功率效率。于是该指令集还具有众多支持的软件,这解决了新指令集通常的弱点。

作为一种开源的处理器架构,全世界的处理器开发者都可以基于RISC-V架构做出理想的处理器产品,这种可扩展可定制化的特点对于场景驱动、性能功耗需求各不相同的AIoT芯片尤为关键。

7月25日,阿里巴巴旗下半导体公司平头哥正式发布玄铁910(XuanTie910),称玄铁910目前业界性能最强的一款RISC-V处理器。自半导体产业诞生以来,过去数十年经历了多次变革,每次变革都来自应用场景的推动:PC时代成就了Intel,移动互联网时代成就了Arm和高通,而如今进入AIoT时代,平头哥已经率先迈出了一大步 。

那么,究竟什么是RISC-V?

RISC-V,一般被念做:risk five。V,就是罗马数字5。 

很多人提到RISC-V,都会说它是开源芯片。其实这种说法是不对的。准确来说,RISC-V是一个基于“精简指令集(RISC)”原则的开源指令集架构。

别怕!我可以通俗地解释一下!——

指令集,对于CPU来说,就是介于软件和底层硬件之间的一套程序指令的合集。指令集存储于CPU内部,引导CPU进行运算,并帮助CPU更高效地运行。

PC电脑里面的CPU芯片(中央处理器)

我们现在常用的台式机电脑或服务器,使用的主要是英特尔和AMD公司的CPU。这类CPU使用的指令集,属于“CISC复杂指令集”。CISC,就是Complex Instruction Set Computer(复杂指令集计算机)。

一款CPU支持的指令集,可以有很多种。

早期计算机的CPU,都是基于CISC架构的。

当时编译器的技术并不纯熟,程序都会直接以机器码或是组合语言写成,为了减少程序的设计时间,逐渐开发出单一指令,复杂操作的程序代码。设计师只需写下简单的指令,再交给CPU去执行。

但是后来有人发现,整个指令集中,只有约20%的指令常常会被使用到,大约占了整个程序的80%;剩余80%的指令,只占了整个程序的20%。(典型的二八原则)

于是,1979年美国加州大学伯克利分校的David Patterson教授提出了RISC的想法,主张硬件应该专心加速常用的指令,较为复杂的指令则利用常用的指令去组合。

RISC,就是Reduced Instruction Set Computer,精简指令集计算机。

简单来说,CISC任务处理能力强, 适合桌面电脑和服务器。但高性能也带来高功耗的问题。

而RISC通过精简CISC指令种类,格式,简化寻址方式,达到省电高效的效果,适合手机、平板、数码相机等便携式电子产品或物联网产品。

上个世纪80年代,Arm公司就是基于RISC架构开始做自己的芯片,最终一步一步崛起,战胜了英特尔,成为现在的移动芯片之王。如今,包括华为麒麟、高通骁龙在内的大部分手机终端和物联网设备芯片,都是基于Arm的架构设计。

注意,我说的是Arm的架构,而不是Arm的芯片产品。

Arm这家公司的商业模式很特别。它做的是芯片的架构设计,相当于画工程图纸,然后把图纸卖给各大芯片制造公司,例如华为。这些公司基于这个原始图纸,进行修改,最终设计自己想要的芯片,交付芯片工厂(例如台积电)去生产出来。

当然了,Arm的图纸并不是免费的。不仅不免费,而且价格非常昂贵。

根据网上的资料显示,Arm的授权费从几十万美元到几百上千万美元不等。法国有一家芯片创业公司接受媒体采访时曾说,他们如果使用Arm架构,要花掉1500万美元的授权费。(这个回答后来遭到Arm的否认,不管怎么说,反正不便宜。)

现如今,随着5G、物联网、人工智能等技术的蓬勃发展,越来越多的企业开始生产和制造服务于各个垂直行业的终端和模组。

这也就意味着,越来越多的企业要被迫接受Arm或其它芯片巨头的“盘剥”。

大企业还好说,交就交呗,但对于很多中小型企业甚至初创企业来说,这几乎就是彻底关闭了前进的大门。

这时候,就有人勇敢地站出来了。

2010年,加州大学伯克利分校的一个研究团队正在准备启动一个新项目。在为新项目选择指令集的时候,他们发现,x86指令集被Intel控制得死死的,Arm指令集的授权费又非常贵,MIPS、SPARC、PowerPC也存在知识产权问题。

在这种情况下,研究团队毅然决定,从零开始,设计一套全新的指令集。

在外人看来,这是一件令人望而却步的工作。但事实上,伯克利的研究团队只召集了一个4人小组,用了3个月的时间,就完成了RISC-V的指令集开发。

虽然看似非常轻松,但其实是有前提的。RISC-V之所以是个V(Five),就是因为它之前已经有过I、II、III、IV。

负责带队研制这些RISC指令集的,不是别人,正是伯克利分校的David Patterson教授。往前翻翻这篇文章你就会发现,他就是RISC指令集的真正创始人。当年那篇正式提出精简指令集设计思想的开创性论文——《精简指令集计算机概述》,就是他和另一位名叫Ditzel的学者共同发表的。

David Patterson教授,后来获得了图灵奖

正是因为有相关的技术沉淀,伯克利分校的团队才能在短期内做出了RISC-V。

第一代RISC-I处理器,早在1981年就已经做出来了。

RISC-V指令集非常精简和灵活。它的第一个版本只包含了不到50条指令,可以用于实现一个具备定点运算和特权模式等基本功能的处理器。如果用户需要的话,也可以根据自己的需求自定义新指令。

高校毕竟是高校,功利心没有那么重。再加上研究团队本身确实也没钱没人去维护它。所以,在做出RISC-V指令集之后,研究团队决定,将它彻底开放,使用BSD License开源协议。

BSD(Berkeley Software Distribution)开源协议是一个自由度非常大的协议,几乎可以说是“为所欲为”。它允许使用者修改和重新发布开源代码,也允许基于开源代码开发商业软件发布和销售。

这就意味着,任何人都可以基于RISC-V指令集进行芯片设计和开发,然后拿去卖钱,而不需要支付授权费用。

这就很嗨了,大批公司开始加入对RISC-V的研究和二次开发之中。

短短几年的时间里,包括谷歌、华为、IBM、镁光、英伟达、高通、三星、西部数据等商业公司,以及加州大学伯克利分校、麻省理工学院、普林斯顿大学、ETH Zurich、印度理工学院、洛伦兹国家实验室、新加坡南洋理工大学以及中科院计算所等学术机构,都纷纷加入RISC-V基金会。

目前,RISC-V基金会共有包括18家白金会员在内的235家会员单位(数据截止2019年7月10日)。这些会员单位中包含了半导体设计制造公司、系统集成商、设备制造商、军工企业、科研机构、高校等各式各样的组织,足以说明RISC-V的影响力在不断扩大。

正如前文所说,RISC-V对于我们国家的芯片事业有着非常重要的意义。

长期以来,我们国家的芯片研发都受制于人。如果国内企业或科研机构能够利用开源的RISC-V做出基本自主知识产权的芯片,或者培养出相应的生态环境,将大大有利于中国半导体行业进行弯道超车。

因此,包括中科院计算所、华为公司、阿里巴巴集团等在内的20多个国内企事业单位,选择加入了RISC-V基金会。阿里还是其中的白金会员。

2018年7月,上海经信委出台了国内首个支持RISC-V的政策。10月,中国RISC-V产业联盟成立。产品方面,中天微和华米科技先后发布了基于RISC-V指令集的处理器。

基于RISC-V开发的黄山1号(华米),全球可穿戴领域第一颗人工智能芯片

我们的邻居印度,对RISC-V的热情更是高涨。在过去数年中,印度政府资助的处理器相关项目都开始向RISC-V靠拢。RISC-V已经成为了印度的国家指令集。

RISC-V的快速发展,给Arm这样的企业带来了很大的压力。

Arm公司去年6月份就专门建了一个域名为riscv-basics.com的网站,里面的内容主题为“设计系统芯片之前需要考虑的五件事”,从成本、生态系统、碎片化风险、安全性和设计保证上对RISC-V进行攻击。

RISC-V这边针锋相对,建了一个域名为arm-basics.com的网站,以“设计系统芯片之前需要考虑的六件事”为题(在Arm列出的五项上,新增了社区支持),对 Arm 进行反击。

几天后,Arm的riscv-basics.com的网站悄然下线。

尽管RISC-V在这场短暂的“撕逼”中获胜,但Arm提出的那五个方面的质疑,也不是完全没有道理。尤其是碎片化问题,作为开源技术,RISC-V的确很难规避。

(碎片化:由于RISC-V允许用户自己任意添加新的指令,但照此趋势发展下去,可能以后很多芯片厂商开发出的RISC-V架构处理器尽管都归属于同一RISC-V体系,但在实际应用搭配时却不能够适配同样版本的软件。)

总而言之,RISC-V可以被看成是一个充满生命力的年轻搅局者。寄希望于它能够在短时间内和传统巨头抗衡,是不现实的。但是它举起了打破垄断的大旗,为沉闷的行业生态注入了新鲜的活力,值得我们为之叫好,也值得我们学习。

星星之火可以燎原,或许这个搅局者将来真的能成为领导者,也不一定呢。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多