RISC-V能否帮助中国芯实现真正的自主可控?
2018-09-13
作者:王伟
RISC-V,一种基于精简指令集计算(RISC)设计原则的开放指令集架构(ISA),由伯克利大学于2010发起。相对于大多数传统ISA封闭的生态以及高昂的授权费用而言,其最大特色就是开放和免费,它可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件。由于基于该ISA可以根据实际应用对指令集进行扩展和裁剪,并且在不用花费高额授权费用的情况下针对具体情况实现处理器内核,其表现出来模块化和灵活性,满足了互联世界日益增长需求,通过建立系统的SoC设计方法,可以从硅设计中获得新自由,从而鼓励跨生态系统的协作。2015年,RISC-V基金会成立,之后在全球范围内发展势头迅猛。RISC-V基金会吸引了大量业内领先的研究机构、硬件厂商、软件厂商,围绕着RISC-V的生态迅速成长。
RISC-V的开放性和免费性不仅使其受到产业界的关注,同样为一个国家发展国产自主可控芯片提供了一条出路。在这方面,印度已经走在了我们前面。2013年,在与IBM合作谈判失败之后,印度SHAKTI项目组毅然放弃PowerPC,全面拥抱RISC-V--将项目目标调整为研制6款基于RISC-V指令集的开源处理器核,涵盖了32位的单核微控制器、64核64位高性能处理器和安全处理器等多个应用领域。项目目标的临时调整不仅未受到指责,反而得到了政府更大力度的支持,调整后的SHAKTI项目获得了9000万美元的经费支持。2016年1月,曾长期开展超级计算机研究的先进计算发展中心(Centre for Development of Advanced Computing,C-DAC)获得印度电子信息技术部4500万美元的资助,目标研制一款基于RISC-V指令集的2GHz四核处理器。在印度政府支持的另一个关于神经形态加速器(neuromorphic accelerator)项目中,也将RISC-V作为计算主核心。过去几年,随着印度政府资助的处理器相关项目都开始向RISC-V靠拢,RISC-V成为了印度的事实国家指令集。
反观我国,处理器指令集还处在群雄割据的状态。虽说2012年也曾在工信部的推动下计划制定处理器指令集国家标准。然而,一方面由于国内几家选择了不同指令集的国产处理器各不相让,另一方面从零开始设计一套全新的指令集又让人望而却步,于是国家指令集便逐渐没有了下文。几年过去,如今国内正在研制的处理器所采用的指令集包罗万象,基于Alpha、ARM、MIPS、PowerPC、SPARC、RISC-V、X86等进行了扩展,应该是全世界最多的了。在这些国产处理器中,龙芯与申威一直在坚持创建自己的生态系统;有基于ARM的海思、飞腾、华芯通与基于X86的海光、兆芯,则希望借助现有的生态系统开拓市场。
目前国产处理器所采用的指令集架构现状
看似一片繁荣,但却严重分散了本已十分稀缺的基础软件开发力量,导致编译、操作系统等基础软件开发者与爱好者由于精力有限而无法兼顾所有指令集的优化,延缓自主生态的建设。这种现状还严重影响到计算机专业的本科教学,目前的课程体系并没有制定相关标准,于是很多学校开设的不同课程会让学生使用不同的指令集开展实验,导致学生忙于了解各种指令集汇编语言而疏于了解指令集本身的设计精髓、指令集与处理器/编译/OS之间的联系。这对我国国家指令集的发展非常不利。
而RISC-V有望解决这一问题,它可能真正能成为国产的自主的指令集架构。RISC-V的开源会大大降低指令集修改和定制的门槛,在实现芯片差异化设计的同时降低成本,对本土发展自主可控处理器、摆脱国外垄断有着十分重要的意义。
基于RISC-V指令集架构的处理器芯片发展离不开国家政策的扶持。就在今年的7月份,上海市经济信息委发布了《上海市经济信息化委关于开展2018年度第二批上海市软件和集成电路产业发展专项资金(集成电路和电子信息制造领域)项目申报工作的通知》,开始将从事RISC-V相关设计和开发的公司作为扶持对象,这也是国内第一个和 RISC-V 相关的扶持政策,说明上海市政府认可 RISC-V 的先进性、开放性以及逐渐完善的生态。
尤其是今年以来,RISC-V进行了不少开拓中国市场的动作,例如将SiFive及晶心科技引入中国市场,并落户上海,以提升RISC-V能见度与打造完善生态环境。晶心曾表示,SiFive和晶心携手合作,上海将作为推动RISC-V引领创新风潮的起点。由于RISC-V开放式、可扩展的架构,适用于AI、IoT、ADAS等新兴热门领域。RISC-V指令集架构有望成为中国国产芯片设计核心的明日之星。