纵观计算系统的发展历史,有出现过很多的指令集,比如贝克的 Alpha 架构、后来的英特尔的 x86 架构,再到后来的 Sandy Bridge 架构、 MIPS 架构、 Power 架构等等。不过随着时代的演进,绝大多数的架构都逐步放到了历史的博物馆里。
当今我们接触比较多的是 x86 架构以及 ARM 架构。x86 架构是全封闭的指令架构,被英特尔和 AMD 公司所享有。
ARM 架构是一个半封闭的架构,它采取了跟英特尔不一样的商业模式。英特尔的商业模式是公司持有架构,基于架构开发芯片去卖芯片。而 ARM 架构是公司研发架构,基于架构来开发处理器核,然后把处理器核卖给芯片公司,芯片公司集成处理器核,再卖到客户手里。相比 x86 的商业模式,ARM 的商业模式更有利于帮助它聚集盟友。ARM 架构诞生于上世纪的 80 年代末到 90 年代初,当时的 ARM 架构相比 x86 架构来说,无论是指令集的能力还是性能都远不足 x86 架构,但这并不妨碍 ARM 架构逐步地完善,并完成算力占比的逆袭。现在在全球的算力输出中,ARM 架构已经占到了 80% 以上。
第二个,指令架构的竞争不是技术层面的竞争,更多的是商业模式的竞争。ARM 架构开始不如 x86 架构,它之所以一步一步实现了对 x86 架构的逆袭,根本原因是它在商业模式里采取了更开放的合作方式,它把利润的“小头”放在了自己身上,把更大的芯片的利润交给了芯片公司,这样使得芯片公司愿意去跟 ARM 公司合作。
x86 架构是伴随着互联网的时代发展的,而 ARM 架构是伴随着移动互联网的时代发展的,那RISC-V 架构它的下一个应用在哪里?它的下一个超级可能性在哪里? 个人的观点是智能物联网。在物联网概念被频繁提及的今天,大家仍然对智能物联网的认知很低,容易理解为它是一种算力比较低的设备。
互联网实现了信息的交互和互通,移动互联网实现了人与人之间的信息交互与互通,智能物联网实现的是物和物之间的信息化互联。车作为物的一种,车联网和智能机器人网也隶属于智能物联网的范畴。
再看根技术,每一个时代的根技术也是不一样的。互联网时代的根技术是 x86 架构,它是一个封闭的指令架构,同时搭载在硬件之上的 Windows 是一个封闭的操作系统。到了移动互联网时代,ARM 就演变成了半开放的指令架构,而它的主流操作系统 Android 就是纯开放的操作系统。如今的智能物联网时代,需要一种更为开放的指令架构以及操作系统。
首先,我们要对 RISC-V 的发展有包容心和战略耐心。x86 架构和 ARM 架构软件生态的完善度也不是一次生成的。x86 架构是上世纪 70 年代末 80 年代初开始发展的,到现在已经有 40 多年的历史。ARM 架构是上世纪的 80 年代末 90 年代初开始发展的,到现在也有 30 多年的历史。打个比喻,如果说 x86 和 ARM 宛如一个成熟的中年人以及青年人,那么 RISC-V 架构还是个小朋友,从它以基金会的形式运营到现在只有 7 年的时间,但是它成长的加速度远超 x86 和 ARM。
现在 ,RISC-V 除了不支持 Windows、安卓、 iOS 外, Linux 的软件组件基本上是完善的。因此,对于 RISC-V 的长期发展,我们也应该抱有乐观主义。回顾 ARM 的发展历程,它在上世纪 80 年代末推出时仅是一个三级流水线的 DPU,其能力是远远不如当时的 x86。但这并不乏妨碍 ARM 一点一点地发展起来。而 RISC-V 在经营模式上比 ARM 架构更先进、更开放,所以它在加速度上已经体现出了优势。
04 构建"端-边-云"原生的下一个计算时代
软件开发者基于不同指令架构做开发,会产生与不同指令架构紧耦合的软件代码,其中积累了大量冗余的重复工作。那么,这个世界是不是需要有这么多的 ISA(Instruction Set Architecture,指令集架构),实际上答案是否定的。
以苹果公司为例,苹果公司推出的 PC 机起初基于和摩托罗拉、IBM 一起开发的 Power 架构。后来苹果公司开始转向 x86 的架构。随着 M1、 M2 芯片的推出,苹果公司又转向 ARM 架构。对于苹果公司而言,其之前已经积累了大量的应用软件需要进行迁移,所以他们也开发了二进制转译的技术,包括从 Power 到 x86 转译的 Rosetta 1.0、从 x86 到 ARM 转译的 Rosetta 2.0。软件基于不同的指令架构进行迁移开发,对工程师来说是非常没有意义、没有必要的。
RISC-V 的架构的出现,让云边端原生一体的下一个计算时代成为可能。我对未来云边端时代共用共享 RISC-V 架构持有非常乐观的态度。RISC-V 架构一定会先从边开始发展,然后逐步的进入云计算的领域,最后再回到 PC 机和手机应用。
第三,全球能量。像 x86 架构、ARM 架构属于某个公司,生态的发展也与其背后的公司息息相关。这意味着它的能量只能以闭环形式局限于公司内部。以 x86 架构为例,架构迭代主要通过公司内部完成。以 ARM 为例,主要是依靠 ARM 公司以及它的合作伙伴比如苹果、Google 推进发展和演进。这种方式很容易让架构本身的发展跟公司的发展紧密联系在一起,一旦公司发展得不行,架构也就慢慢地消亡。
RISC-V 架构则不是,它是全球共建、全球共享,汇聚了世界上最优秀的工程师围绕着它做开发。以 RISC-V 的 vector 架构为例,当 ARM 在 V8 时代,它的计算采用的是 SIMD 的技术。到了 V9 架构时代,它推出了SVE 架构,即它的向量计算架构。RISC-V 一开始在设计计算技术时就采用了 SVE 的架构,所以 RISC-V 架构相比 ARM 架构很大的优势是它站在了前人的肩膀上,前人走过的路、做过的技术方案以及这些技术方案的优势和劣势,它都是可以看见的。
进迭时空看好 RISC-V 的发展,希望基于RISC-V 架构,通过 CPU 核的定制优化设计、芯片开发和基础软件开发,实现这三者深度地整合和优化,提供计算芯片和计算系统。