过去半个世纪,曾经出现过x86、ARM、MIPS、ALPHA、SPARC、IA64等数十种指令集,但都属于公司私有。大部分私有指令集已经随着公司萧条或倒闭而消失,如今全世界仅剩下x86和ARM两种主流指令集,分别被Intel和ARM两家公司高度垄断。
当一个产业发展到高度垄断阶段后,市场上必然会产生打破垄断的强烈诉求,这是产业发展的内在规律。那么,用什么方式来打破垄断?一种是沿用垄断巨头的发展路径,但通过创造一些新优势来打破垄断。还有一种有效的方式就是创建一条新赛道,通过发展新技术和创新商业模式来形成一个新兴市场,逐渐淘汰旧市场,从而打破垄断。新能源汽车是一个典型的例子,在过去100多年的燃油车时代,中国汽车工业努力了半个多世纪,也始终无法打破传统汽车巨头的垄断格局。但在新能源汽车这个新赛道上,中国汽车工业仅用十几年时间便实现了“换道超车”,步入世界领先行列。
RISC-V及其掀起的开源芯片浪潮,便是处理器芯片领域的新赛道。很多人从指令集自身角度来看RISC-V,指出它不完备、碎片化等问题,但忽视了RISC-V所蕴藏的真正威力——作为开放标准,它将推动一个基于开源的芯片技术新体系的构建,进而创造出一个开源芯片新世界。就如今天的软件产业已经是两个世界,一个闭源软件世界,一个开源软件世界。根据Black Duck针对17个行业1700多个软件的统计数据表明,96%的商业软件中包含开源代码,而且开源代码的比例达到76%。未来的芯片设计产业,也将会变成闭源和开源两个世界。RISC-V用“指令集应该免费”这个理念,打开了开源芯片新世界的大门,从此这个新世界将进入不可逆转的、快速发展的进程。开源芯片新世界的诞生并不是要所有芯片设计都完全开源,而是未来会有越来越多的商业芯片中包含开源IP,开源IP的比例会不断提高。通过这种方式来降低整个芯片设计产业的成本,提升企业的竞争力。
在这个进程中,RISC-V是一种催化剂,它自身的演进固然重要,但已经不是决定性的了。如果未来RISC-V的演进跟不上这个新世界的发展速度,它也必须做出改变和调整,否则就会被另一种更适应新世界的开放指令集所替代或淘汰。事实上,RISC-V自身就在不断演进。例如,几年前很多人认为RISC-V指令集不完备,只能用于嵌入式场景,但很快RISC-V国际基金会便形成了近80个工作组开展各种指令扩展工作。如今,RISC-V的向量扩展指令已经发布,而各种安全扩展指令、加密指令、AI加速指令等都在推进中。又如,有人批评RISC-V会导致碎片化,但事实上根据千变万化的场景需要允许用户自定义扩展指令,这正是解决场景需求碎片化的有效方式。这些扩展指令只要没有反馈到RISC-V国际基金会,那就不会影响到主流软件生态。RISC-V真正的碎片化难题是近80种扩展指令模块的组合数量非常多,导致编译器、操作系统等系统软件无法应对这种爆炸式组合数量。对于这一点,RISC-V国际基金会已经提出了配置(Profile)机制,每个配置是约定好的指令集模块组合,这样便大大减少了基础软件适配工作。这些都表明RISC-V自身正在快速演进。
新一轮芯片设计技术与产业变革浪潮已经到来,这将带来很多新机遇,甚至在未来10~20年形成产业重新洗牌。因此,RISC-V被《麻省理工学院技术评论》选为2023年度十大突破性技术之一,理由是“芯片设计正在走向开放,灵活、开源的RISC-V有望成为改变一切的芯片设计”。
处理器芯片领域上一轮技术变革浪潮出现在20世纪七八十年代,那时也出现了一次指令集变革,从复杂指令集CISC向精简指令集RISC转变。超大规模集成电路(VLSI)的出现推动了芯片设计方法的变革——计算机辅助设计(CAD)和电子设计自动化(EDA)技术兴起。那个时代诞生了ARM、MIPS、Synopsys、Cadence等一批新兴企业,许多成为今天的国际领军企业。对于RISC-V掀起的这一轮变革浪潮,各界都在积极参与,做出重要的贡献,发挥重要的作用。相信中国芯片产业会像汽车产业那样实现“换道超车”,把握机遇,在这个新赛道上形成技术优势、产品优势和市场优势。
很多人仅将RISC-V视为替代ARM的“Another ISA”(另一个指令集),这其实并未充分发挥RISC-V允许灵活定制和扩展的优势——针对特定应用场景,任何单位与个人都可以基于RISC-V开发专用芯片,比如中科蓝讯基于RISC-V定制开发的蓝牙耳机芯片每年出货量超过8亿颗。通过与中科蓝讯的技术专家交流,得知他们针对蓝牙耳机这个特定应用场景对RISC-V处理器核进行了从流水线到缓存等一系列的定制与优化。这些优化技术当然是企业的商业秘密,不便于公开。幸运的是张志伟老师撰写的《RISC-V DSP处理器设计》一书详细讲解了如何基于RISC-V定制与优化一款数字信号处理器(DSP),异曲同工,相信读者能从这本书中找到充分发挥RISC-V优势的捷径。
包云岗
中国科学院计算技术研究所副所长、研究员
北京开源芯片研究院首席科学家
2024年9月17日