2020.04.08
曾经被英特尔、Arm等垄断的芯片指令集,现在出现免费开源版本。将满十岁的RISC-V,在全球掀起一场芯片设计革命,它能成功吗?
全球芯片行业过去主要将精力放在研发少量"杀手级芯片"上,当面对物联网那样碎片化的市场时,往往不知所措。
今年3月,发起设立于美国的RISC-V基金会宣布,已完成在瑞士注册,总部正式迁到瑞士。这家芯片架构合作组织再次展示了它坚持开源、不受国际政治干扰的初心。在科技战盛行的今天,此举备受各国芯片业瞩目。
时间回到2017年5月8日,一场半导体行业会议在上海交通大学举行,超过200位中外嘉宾挤满了整个报告厅,会议主题是“芯片架构的未来是什么?”这是RISC-V架构诞生以来,在中国举办的首场研讨会。后来,参加那场会议的很多人,成了RISC-V阵营的领军人物。那一天,也被许多人视为“启蒙时刻”。
彼时,全球芯片架构似乎格局已定:美国公司英特尔的x86架构称霸个人电脑和服务器两大市场,在企业级市场把IBM等竞争对手逼到死角;英国公司Arm的架构通行于智能手机和物联网市场,2016年,在英特尔放弃为移动市场开发下一代处理器之后,几无敌手。
曾任教于美国加州大学伯克利分校的克尔斯泰·阿桑诺维奇(Krste Asanovic)却在那场会议上提出了一个大胆假设:行业能不能打破一两家公司的垄断,一起推一种开源的芯片架构RISC-V,让所有人免费取用?
这改变了很多人对中央处理器(CPU)的看法。“以前认为,处理器技术已经成熟,很难有新的突破。突然提出处理器指令可以开源,这给大家眼睛一亮的感觉。”这是徐滔第一次系统地了解RISC-V。2018年,他成为上海赛昉科技的CEO,专门向中国企业提供RISC-V产品和服务。
芯片架构即指令集(Instruction Set Architecture),是软件和硬件之间的接口,也是一套标准规范。所有软件指令需要根据这套规范,翻译成芯片能懂的语言,才能使CPU和各种硬件运作起来。因此,每套芯片指令集的背后,都有一个软件生态,与竞争对手的互不相容。过去几十年,英特尔与微软结盟,Arm与苹果、谷歌结盟,成为各自市场的事实标准。
诞生于2010年的RISC-V希望创造“新世界”。与开源软件Linux一样,RISC-V指令集由一家非营利基金会所有,所有企业都可以加入基金会,免费使用RISC-V架构,并在其基础上进行改动。徐滔把这比作“人民战争”,由于RISC-V没有单一源头,即便一家企业失败了,点燃的星星之火也将燎原。
很多企业对此感到兴奋。到2019年,RISC-V已经吸引了谷歌、阿里巴巴、三星、华为、英伟达、西部数据等全球500多家企业参与研发,每年芯片的出货量达百万颗。不少企业认为,RISC-V架构免费、精简、开放,尤其适合为智慧城市、工业互联网、智能家居等碎片化的物联网场景提供定制芯片。2019年12月,中国工程院院士倪光南预测,在CPU领域,未来将形成英特尔(x86)、Arm、RISC-V三分天下的格局。
RISC-V开源的特点,还使其更能抵御地缘政治的冲击。作为一种公开的芯片行业标准,RISC-V指令集不在美国出口管制的范围之内。2019年6月,在华为被美国封杀一个月后,RISC-V基金会决定将总部从美国搬到瑞士,以免基金会未来的运作受到美国出口管制政策的影响。这令RISC-V受多国政府重视。在印度,当地政府和科研机构担心被国外“卡脖子”,将大量资金投入RISC-V处理器的研究,使其成为事实上的“国家指令集”。
目前,相较于发展了几十年的x86、Arm架构,将满十岁的RISC-V生态成熟需要时间。事实上,从芯片业的历史来看,SPARC、IBM的POWER等一大批芯片架构都曾走上过开源之路,至今未结出硕果。
Arm曾经预测,2017年至2035年,全球将增加约1万亿台物联网设备。Arm不可能放弃万物互联的市场机会,势必不断回击,包括在2019年10月允许Arm客户免费定制部分指令,以防他们倒戈。夹缝之下,RISC-V在全球掀起的这场芯片设计革命将走向何方?
RISC-V走到台前
2010年5月17日,RISC-V诞生于崇尚创新的加州大学伯克利分校。当时,电气工程及计算机系教授阿桑诺维奇正准备启动一个新的科研项目,需要考虑采用什么芯片架构。
摆在他面前的,是业内的两种主流架构:诞生于1978年的英特尔x86架构属于复杂指令集(CISC),光指令集手册就超过2900页,且不允许外界修改;1983年开发的Arm架构,采用的是更先进的精简指令集(RISC),但由于价格高昂,指令集的权限只卖给几家大型科技企业,比如苹果公司。
不愿接受各种限制的阿桑诺维奇决定,带领两位博士生开始一个为期三个月的暑期项目。为此,他们还专门邀请了RISC的发明者、图灵奖得主大卫·帕特森(David Patterson)参与指导。为纪念1981年至1988年间在伯克利诞生的前四款RISC处理器,他们将这一指令集命名为第五代RISC,用罗马字母V来表示,即RISC-V(读作risk-five)。
因为是用于科研,这个指令集最大的特点是简单,基础指令集的指令不到50条,其他功能全部采用扩展指令集,由用户根据需要来添加。英特尔和Arm的架构为了兼容此前的软件,都已发展出超过1000条指令。
从2010年秋到2014年,RISC-V一直被用于伯克利的日常教学。有时候,教授们为了给学生布置作业,会去修改指令集,要求研究改动所造成的影响。令阿桑诺维奇意外的是,每次他们这么做,就会收到来自印度等地的外部投诉,指责他们随意修改指令集。
“我们最初的反应是:你是谁?为什么要来管伯克利校园里发生的事情?”阿桑诺维奇在2016年的一场公开演讲中表示。但随着时间的推移,他逐渐意识到,外界对一款开源芯片架构存在需求,于是在2014年冻结了RISC-V指令集。
2015年,RISC-V基金会正式成立,由阿桑诺维奇担任董事会主席。同年,阿桑诺维奇与两位博士生Andrew Waterman和Yunsup Lee一起离开学术界,成立SiFive公司,帮助企业定制RISC-V芯片,开启了RISC-V的商业化之旅。
“在RISC-V的整个发展过程中,2015年是一个很重要的里程碑,是真正开始大规模推广的一年。”中国科学院计算所研究员包云岗向财新记者表示。
彼时,RISC-V并不是市场上仅有的开源指令集。2013年,IBM 推出OpenPOWER项目,将自己小型机的POWER架构开源,并拉来谷歌、英伟达、三星、浪潮、中兴等全球130多家企业为其站台,曾经轰动一时。如今雷声大雨点小,不少成员转投RISC-V。
包云岗在2015年转向RISC-V研究之前,用的则是美国SUN公司开发的SPARC架构,有开源的版本OpenSPARC。SPARC架构最早是为几十年前的小型机而设计,开源版本的代码较为复杂,专业的工程师都需要至少半年才能把它搞懂,更不用说去改造它。这么高的入门门槛,使SPARC的开源社区几乎成为“一潭死水”。“2013年,我们在SPARC社区上提了一个问题,到今天还没有人回答。”包云岗说。
包云岗认为,RISC-V的幸运在于赶上了好时候:其指令比x86和Arm都少,对新人来说,门槛更低;由于指令集是开源免费,各家企业可以自己开发RISC-V核,用其替代Arm,可以省下百万甚至千万美元的知识产权(IP)授权费用,在商业上有吸引力;RISC-V在冻结的基础指令集之外,以模块化的方式,提供了不少扩展指令集,使定制芯片变得更加容易,可以应对物联网碎片化的需求。
在2018年的一场演讲中,SiFive CEO 纳文·施瓦尼(Naveed Sherwani)表示,过去的全球芯片行业,主要将精力放在研发少量“杀手级芯片”(Killer chips)上,以满足PC、手机等行业每年的更新换代需求。其商业模式是,通过大量出货几款芯片来均摊成本,以支持台积电等不断研发更昂贵的制造工艺。这个体系的目的是维持摩尔定律,让芯片性能每18至24个月翻一番。
“但如果你让这些公司现在去设计1000款芯片,因为市场变得像物联网那样碎片化,他们就不知所措了。”施瓦尼表示。
RISC-V崛起的背后,还有由伯克利的团队于2012年推出的一种新的硬件描述语言——Chisel。包云岗解释,在芯片设计行业,很多人仍在使用上世纪80年代初发明的Verilog语言,就好比软件业以前用的汇编语言,开发效率很低。过去几十年,软件行业逐渐用上了C、Java、Python等高级语言,可以将含有几百万行、甚至上千万行代码的复杂程序分解成一个个模块,交给几千人协作开发。而Chisel等新语言则将模块化设计等概念引入硬件设计,使芯片设计可以使用已有的模块,减少重复劳动。
“以前那种设计方法,做大型芯片时非常费劲,所以大家会觉得,做芯片好难,只有少数几家企业能做出来。”包云岗预测,随着新语言和方法论的普及,未来设计芯片有可能会像现在开发手机应用一样简单。
谁是革命推手?
RISC-V全球推广,目前已有不少拥趸:一类为SiFive、武汉芯来科技等初创企业,专注于RISC-V这一个赛道;一类为西部数据(Western Digital)、英伟达等巨头,希望借RISC-V架构来打造部分芯片,降低公司成本。
2017年11月,美国存储企业西部数据宣布,将逐渐把每年使用的超过10亿颗芯片内核切换成RISC-V架构。他们还给自己用的内核取名为SweRV,在2019年开源。有西部数据高管向财新记者表示,硬盘等存储设备的微控制器(MCU),不需要多少软件支持,尤其适合使用RISC-V架构。
地处硅谷的SiFive进展同样迅猛。2019年6月,SiFive获得6540万美元的D轮融资,由成为资本、高通风投等领投。在此之前,SiFive已经拿到西部数据、SK海力士、英特尔资本、华米等的投资。
通过这些投资,SiFive为自己锁定了一个稳定的客户群。2019年,华米科技在其智能手表中使用了RISC-V架构芯片黄山1号。华米CEO黄汪对外表示,这款芯片的成本小于1美元,比市面上的芯片要便宜一半左右。2019年12月,三星也成为SiFive客户,将在毫米波射频芯片和AI图像感知芯片中采用SiFive开发的RISC-V IP核。
SiFive对庞大的中国市场有野心。由徐滔担任CEO的上海赛昉科技,是一家由SiFive入股、中国投资者和管理层持股的企业。徐滔告诉财新记者,他们除了在中国提供SiFive的产品,还要自研新的IP核、软件、中间件、开发件等,与SiFive是两家独立的公司。“我们将形成一个自己的IP核系列,掌握核心技术,走自主可控服务国内客户的道路。”他说。
徐滔在2019年就接触了超过400家中国客户,赛昉的员工人数预计也将从今年的100多人增加至未来的500-700人。徐滔认为,目前国内企业对RISC-V兴趣浓厚。
在中国RISC-V阵营中,最受关注的是阿里巴巴集团旗下的平头哥,由阿里云智能事业群总裁张建锋亲自掌舵。2018年9月,阿里宣布,将内部的芯片业务与外部收购的中天微系统有限公司整合,成立一家全资控股的芯片公司,取名“平头哥半导体有限公司”。
阿里早就想布局芯片产业。有熟悉Arm中国的人士告诉财新记者,Arm准备在国内设立合资公司时,软银集团创始人孙正义曾考虑由阿里控股,最后因阿里竞争对手太多而Arm需要在行业中保持中立遂作罢。2018年4月,Arm在中国的合资公司正式成立,由厚朴等财务投资者持股51%,Arm持股49%。当月,阿里收购了杭州中天微,双方未对外披露交易价格。中天微成立于2001年,最早用的是美国摩托罗拉的芯片指令集,后进行了十多年的自主研发。
平头哥副总裁孟建熠向财新记者表示,平头哥重视RISC-V,是因为这符合整个社会走向开放的大趋势,“一些特别大的基础设施,基本上是越来越开放,比如5G,你要在全球移动,必然涉及到一个全球标准,而全球标准肯定是要开放的。”2015年伯克利团队举办第一场RISC-V研讨会时,孟建熠就注意到了这个架构。2017年上海交通大学那场布道大会,孟建熠也在现场。
2018年9月,中天微拿出首款RISC-V作品——CK902,定位为一款低功耗的物联网处理器;2019年7月,平头哥发布了高性能IP核玄铁910,在RISC-V架构的基础上,扩展了50余条指令,使其适用于5G基站、人工智能加速、自动驾驶等场景;2019年8月,平头哥又发布了SoC(System-on-a-Chip)芯片平台“无剑”,其中包括了处理器、各类IP、操作系统、软件驱动和开发工具等。
孟建熠解释,如果以软件作比,玄铁处理器可以看作Linux,而无剑像是在Linux基础上打造的安卓操作系统,可以与各个行业的企业合作,将其应用在不同场景中。他表示,目前有不少公司正在评估这些产品,预计2020年下半年将会有一些原型产品面世。
Gartner研究副总裁盛陵海向财新记者表示,RISC-V作为一种新的架构,全球所有企业几乎处在同一起跑线上,新进入芯片行业的阿里或许希望借此尝试一下,看是否会有成果。相较SiFive,中天微此前积累的客户主要在MCU(微控制器)领域,平头哥能否成功打入高性能计算等新领域,目前还不确定。“SiFive毕竟在硅谷,背后有高通等企业的支持,相对来说会好一些。”盛陵海表示。
平头哥的优势在于,背后有一艘“航空母舰”的支持,阿里内部就有很大的芯片需求。孟建熠表示,RISC-V是平头哥评估的一个方向,公司尚未完全押注这条赛道,此前中天微开发的产品,也会继续支持。
面对国内的RISC-V热潮,他希望整个行业能更加冷静地去看待,因为芯片的开源开放是一件全新的事情。“不要指望能快速在这里获得多少利益,应该是大家一起来把生态做得更好。”
Arm反击
在RISC-V崛起的过程中,同样以物联网为目标市场的Arm,始终面临着最大压力。
Arm此前已经公布,计划在2023年重新上市。这使其很难通过打价格战来排除RISC-V的威胁。双方交手之初,Arm试图淡化RISC-V的影响,将它比作是学术项目,没有多少实际应用。到了2018年,Arm上线了一个网站,列出Arm好于RISC-V的五个理由,包括Arm的设计更可靠、安全,生态更加完备。但很快,公司内外的质疑声迫使Arm下线了这个网站,并致歉称自己并非反对开源。
2019年下半年,面对RISC-V阵营的步步紧逼,Arm终于作出了迄今为止最有力的回应。7月,Arm宣布,推出Flexible Access计划,企业只需支付一笔较小的费用,就能对Arm的大部分IP进行评估和实验,大部分授权费可以等到最后生产时再支付。此前,华为、高通等企业要想获得Arm的IP,需要先签约付款。这一改变显然是为了迎合那些对Arm产品不熟悉的初创企业。10月,Arm又推出了定制化指令(Custom Instruction),在确保软件生态不碎片化的前提下,允许企业免费定制部分指令。在第一阶段,Arm先拿出最新的Cortex M33的CPU进行试验,恩智浦和意法半导体等成为首批受益者。
Cortex-M主要针对嵌入式设备,包括微控制器,可用于智能手环、智能灯、温度感应器等。Arm称,Cortex-M处理器累计出货超过500亿颗,是Arm最成功的CPU之一。“从出货量看,Cortex M33又是M系列中最受欢迎的CPU,未来Arm发布的所有M系列产品都将允许客户进行定制。”Arm市场营销副总裁伊恩·斯迈斯(Ian Smythe)向财新记者表示。
关于突然允许定制化指令的原因,斯迈斯解释,在原先的模式下,Arm设计指令时,仅能考虑客户最普遍的需求,对于那些个性化需求,需要用定制化指令来解决。他还表示,Arm走出这一步经过深思熟虑,他们在设计中专门留出一部分空间用于定制指令,以避免出现软件不兼容导致的碎片化问题。
“如果你看一下处理器的历史,就会发现,如果一个芯片架构允许定制和碎片化,而不去持续有效地进行管理,过一段时间,这些架构就会被边缘化,或者只能占领一些很小众的市场。”斯迈斯表示。
他介绍,下一步,Cortex-R系列的CPU也有可能允许添加一部分定制化指令,而Cortex-A系列则不太可能加入。Cortex-R系列主要针对实时性要求高的应用,比如硬盘控制器、汽车安全气囊等,而Cortex-A系列主要针对智能手机和虚拟现实头显等高性能设备。
Arm方面否认推出定制化指令与RISC-V的挑战直接相关,但Cortex-M处理器的目标用户却与RISC-V的高度重合。
盛陵海表示,微控制器(MCU)领域一直是一个百花齐放的市场,没有统一的软件生态,很多企业过去使用的是自己私有的芯片架构,随着他们产品的迭代,预计有些企业会选择Arm,另外一些则会选择RISC-V。
“RISC-V在MCU方面的出货量已经蛮大了,但相对于Arm的出货量,或者过去私有架构的出货量来说,它的比例还是比较小的。”盛陵海表示,Arm还没有输掉这块市场。
碎片化挑战
在MCU之外的市场,Arm用30年时间打造的软件生态,仍是最强的壁垒。有国内初创企业向财新记者表示,虽然用RISC-V替代Arm可以省下一笔授权费,但在开发周期等方面隐性成本太高,他们在评估后决定再等等,“RISC-V生态还需要点时间”。
“我个人认为,目前市场上已经没有多少空间,去留给一种新的芯片架构。”美国芯片设计软件企业Synopsys(新思科技)的全球AI领域负责人沙基卜·阿克鲁特(Chekib Akrout)向财新记者表示,大部分用户并不关心自己手机或电脑芯片用的是什么指令集,只要它能运行用户想要的软件。
阿克鲁特认为,如果一种新的指令集可以做到“与世隔绝”、只用来运行新的应用,不会出现问题。一旦涉及已有应用,让那些过去的软件去适配一个新的指令集,需要耗费大量时间和精力,恐怕得不偿失。
有Arm高管也向财新记者表示,他们内部评估,RISC-V或许能在一些细分市场取得成功,但物联网中最有价值的自动驾驶汽车、增强现实设备等,由于需要大量软件配合,将依然由Arm主导。
另一种声音则认为,万物互联时代,许多专有芯片配套的应用本身就需要重新开发,RISC-V正好踩在了这个时点上,或许将成为物联网主流芯片架构。
盛陵海认为,RISC-V要想与Arm、英特尔争夺市场份额,仍需要拿出几款性能好、成本低的明星级产品,而且得有华为、三星等大厂力推,才有可能逐步建立起生态。英特尔和Arm此前的成功,分别有赖于IBM个人电脑和苹果iPhone的大卖。如今,许多大厂的RICS-V芯片看起来仍是试水。
不过,在他看来,RISC-V当前最大的机遇,是中美科技战的大背景,许多企业担心未来无法使用英特尔和Arm的产品,会更愿意尝试开源架构。2019年5月16日,华为被美国列入“实体清单”,购买使用美国技术的产品或服务受到限制。这引发不少国内外科技企业担忧,国产化替代呼声渐浓。RISC-V作为开源的芯片行业标准,面向全球公开,且RISC-V基金会亦在竭力避免被政治化,风险相对要小很多。
RISC-V阵营内部亦有挑战。“RISC-V的基础指令集虽然简单,但并不能满足很多商业应用的需求,各家企业都要在此基础上添加新的指令,来进行优化。而各家为了保护自己的知识产权,会形成自己的开发工具,如将软件代码转换成指令的编译器(Compiler),很多RISC-V企业的就不统一。”盛陵海认为,企业之间可能不会有太大的动力去打通这些工具,因为那会让客户很容易迁移。这种情况如果长期持续下去,最终RISC-V阵营可能只会有一两家能够生存下来。
徐滔则称,不需要担心RISC-V生态的碎片化,如果IP供应商在IP中加上了不属于RISC-V的指令,在编译器等工具链中必须有所优化,就会和RISC-V主流生态不兼容。“许多大客户一定是反对这种现象的,因为不希望被一家IP供应商绑定,而且如果他们使用了几家公司的产品,各家软件生态不兼容,未来管理的成本会非常高。”他认为,这些大客户的意见最终会使各家都不敢将生态做得碎片化,因为谁离开了RISC-V统一的生态,就会对自己造成损伤。
从长远来看,包云岗认为,要解决碎片化的问题,关键是要推动RISC-V阵营发展出一条主线。他以Linux为例表示,Linux内核诞生之后,就在不断更新迭代,向前演进。他认为,RISC-V的处理器核也要像Linux内核一样,不断增加新的功能,才能使RISC-V阵营更好更快地向前发展。
但现状是,各家企业都在做自己的产品,在如何推动主线发展上缺乏共识。包云岗表示,中科院计算所作为科研机构对RISC-V的开源生态很重视,他们团队计划花大量时间和精力去发展这条主线。他相信,整个RISC-V阵营对于完善生态所需的时间是有心理预期的,将会以十年为尺度去衡量。
“我们不能说,得有个人来组织管理一下,让所有的开源都往这个方向走,这是不现实的。”孟建熠则表示,“开源的生命力,在于它是一种开放的全球协同模式。它一定会经历由乱到相对比较稳的过程,我觉得,现在就在这个过程中。” 他认为,芯片最终还是需要跟应用相结合,如果有人把一个应用方向走通了,就会成为标准。
转载至【《财新周刊》2020年04月06日第13期 文|财新记者 张而弛】