三生三世 CPU,ISA 架構變遷

▎CPU 的全稱叫中央處理器單元,通常用來區(qū)分 CPU 的標準是指令集架構(Instruction Set Architecture,簡稱 ISA)。
開發(fā)人員基于指令集架構(ISA),使用不同的處理器硬件實現(xiàn)方案,來設計不同性能的處理器,因此 ISA 又被視作 CPU 的靈魂。我們可以將指令集架構理解為一個抽象層,它是處理器底層硬件與運行在硬件上的軟件之間橋梁和接口。

CISC 架構與 RISC 架構
指令集架構分為復雜指令集(Complex Instruction Set Computer,CISC)和精簡指令集(Reduced Instruction Set Computer,RISC)架構。
CISC 架構不僅包含了處理器常用的指令,還包含了許多不常用的特殊指令;在 CPU 發(fā)展早期,CISC 曾是主流,可以使用較少的指令完成操作;但隨著越來越多的特殊指令被添加到 CISC 架構中,常用的典型程序運算過程中用到的指令僅占指令集的20%,80%的指令則很少用到,而這些很少用到的指令讓 CPU 的設計變得極其復雜,大大增加了硬件設計的時間成本和面積開銷。
RISC 架構只包含處理器常用的指令,對于不常用的操作,通過執(zhí)行多條常用指令的方式來達到同樣的效果。因而在 RISC 架構誕生后,所有現(xiàn)代指令集都選擇使用 RISC 架構。
ISA 眾生相
自 CPU 于上世紀 60 年代問世,已發(fā)展幾十年,有幾十種不同的指令集架構相繼誕生或消亡。這里挑選 8 個主流架構,簡要概括如下表:

CPU 的主要應用領域
CPU主要有三大應用領域,即服務器領域、PC領域和嵌入式領域。
服務器領域早年群雄分立,后期 Intel 成功的商業(yè)策略將 x86 處理器芯片引向霸主地位;
PC領域由于 Windows/Intel 的軟硬件組合而發(fā)展壯大,Intel 或 AMD 公司的 x86 目前是壟斷者;
嵌入式領域是除服務器和 PC 領域之外的主要應用領域,近年分化為以下子領域:
1)?移動領域:如智能手機,市場規(guī)模有望超過 PC 領域,幾乎為 ARM Cortex-A 系列壟斷;
2)實時(Real Time)嵌入式領域:ARM 架構占較大市場份額;
3)泛嵌入式領域:強調(diào)低功耗、低成本和高能效比,芯片主要是微控制器或微處理器,市場應用極為分散,但基數(shù)龐大,尤其在進入物聯(lián)網(wǎng)時代。ARM Cortex-M 系列是市場主流

CPU 之三生三世
從 CPU 的應用場景,我們可以觀察到 CPU 應用場景的拓寬和激增,有三個主流時代,從 PC 時代跨越到移動時代,再延展到物聯(lián)網(wǎng)時代,恰好映射到 CPU 三大架構,權且看做 CPU 之三生三世。
一生一世:x86 架構是服務器領域/PC 領域的權貴。Intel 和 AMD 是 x86 處理器芯片的主要提供商,歷經(jīng)數(shù)代發(fā)展,從最初的 16 位發(fā)展至如今的 64 位。Intel 通過內(nèi)部“微碼化”克服了 CISC 架構的部分缺點,并憑借不斷提升的 CPU 設計水平和工藝制造水平,使其在性能上保持遙遙領先,加之 Wintel 的成功商業(yè)聯(lián)盟,不僅在 PC 領域占據(jù)統(tǒng)治性地位,還擊敗了 IBM 和 Sun 公司,擁有超 90% 的服務器市場份額。

Intel/AMD 作為芯片公司,x86 架構是其生命線,授權費用極高,還可對有威脅的競爭對手停止授權。故而,采用 x86 架構開發(fā)被戲稱為“權貴的游戲”。
二生二世:ARM 架構是移動王者。ARM 公司的商業(yè)模式以開放共贏為基本原則,通過基礎架構授權、內(nèi)核 IP 授權等方式盈利。ARM 積極推動生態(tài)建設,以 ARM 統(tǒng)一制定的標準規(guī)范將上下游軟硬件企業(yè)納入其生態(tài)系統(tǒng)。隨著近 10 多年移動應用的快速發(fā)展,尤其是智能手機的興起,ARM 迅速成為移動世界的王者。
進擊的 ARM 不僅憑借 Cortex-A 系列在手持設備領域無敵,還以 Cortex-R 系列和 Cortex-M 系列在實時嵌入式領域和泛嵌入式領域成功部署。ARM 三大細分產(chǎn)品:
Cortex-A:面向性能密集型系統(tǒng)的應用處理器核;
Cortex-R:面向實時應用的高性能核;
Cortex-M:面向各類嵌入式應用的微控制器核。

“移動王者” Cortex-A 系列是一組用于高性能低功耗微控制器領域的 32 位和 64 位 RISC 處理器系列,內(nèi)置存儲器管理單元(Memory Management Unit,MMU),可支持操作系統(tǒng)的運行。32位系列包括 Cortex-A5,Cortex-A7,Cortex-A8,Cortex-A9,Cortex-A12,Cortex-A15,Cortex-A17 和?Cortex-A32。64位系列包括 Cortex-A35,Cortex-A53,Cortex-A57,Cortex-A72,Cortex-A73。
值得一提的是,Cortex-A8 首批芯片量產(chǎn)時,3G 網(wǎng)絡問世,踩上了智能手機的潮點;之后,Cortex-A9 催生了智能手機的井噴期,成為智能手機內(nèi)核標配,自此,Cortex-A 系列進入年均一款的“下餃子”開掛模式。Cortex-A 系列的先機與成功,奠定了 ARM 在移動領域的王者地位,在移動領域構筑了城寬池深的軟件生態(tài)環(huán)境。目前,ARM 架構已應用到全球 85% 的移動設備中,其中超過 95% 的智能手機處理器是基于 ARM 架構。
ARM?Cortex-A 系列一統(tǒng)移動江山后,與高通、谷歌、微軟等合作伙伴逐步形成強強生態(tài)聯(lián)盟,將進軍傳統(tǒng) x86?架構 PC 與服務器市場定為下一步發(fā)展目標。
“小個子有大力量”的 Cortex-M?系列是一組用于低功耗微控制器領域的32位 RISC 處理器系列。包括 Cortex-M0,Cortex-M0+,Cortex-M1,Cortex-M4(F),Cortex-M7(F),Cortex-M423,Cortex-M33(F)。Cortex-M 系列的應用場景雖不像?Cortex-A 系列光芒四射,但在物聯(lián)網(wǎng)設備激增的萬物智聯(lián)時代,需求量巨大。
自2007年,諸如意法半導體、恩智浦等多家半導體公司持續(xù)推出基于?Cortex-M 內(nèi)核的微控制器;國內(nèi)廠商也紛紛入場,搶奪物聯(lián)網(wǎng)市場,特別是 2020 年Q4 至今的缺貨潮中,國產(chǎn)替代風起云涌。眾多微控制器廠家中,尤以意法半導體公司的 STM32 產(chǎn)品系列最全、生態(tài)建設最完善。
三生三世:粉墨登場的 RISC-V。RISC-V 架構是一種全新的指令集架構,2010年始于加州大學伯克利分校。“V”除了表示從 RISC-I 開始的第五代指令架構外,還有變化(Variation)和向量(Vector)的含義。
2015年,RISC-V 基金會成立并開始正式運作。作為非盈利性組織,RISC-V 基金會負責維護標準的 RISC-V 指令集手冊和架構文檔,并促進 RISC-V 架構的發(fā)展,將其推向開源,不僅成為一種完全開放的指令集,可以被任何學術機構或商業(yè)組織自由使用;還要成為一種真正適合硬件實現(xiàn)且穩(wěn)定的標準指令集。

源起名校、興于開源的 RISC-V 架構,相比 ARM 架構,具有靈活的擴展性,指令集的設計考慮了小型、快速、低功耗的實際應用場景,但并未對特定的微架構做過度設計,是第一個可根據(jù)具體場景選擇適合的指令集的指令集架構。RISC-V 指令集可滿足從微控制器到超級計算機等不同復雜程度的處理器設計需求,極大地拉低了 CPU 設計準入門檻,并顯著降低芯片開發(fā)成本。
RISC-V 架構利于我國工業(yè)體系中“少數(shù)短板”之一 —— 芯片的發(fā)展,商業(yè)公司可基于開源架構開發(fā)其自主可控的商業(yè) IP,如我國 RISC-V 系先行者平頭哥和芯來科技。同時,該架構能夠適應由 5G 和人工智能催生出的碎片化計算需求,有望成為物聯(lián)網(wǎng)時代的主要抓手。
指令集架構的生態(tài)建設,需要付出昂貴的教育成本和接受成本,教育成本取決于人們的普遍熟悉程度,接受成本取決于人們愿意投入的時間。RISC-V 生態(tài)初成,海外有?RISC-V 基金會的積極推動,國內(nèi)很多地區(qū)政府也將?RISC-V 指向為國產(chǎn)芯片架構發(fā)展的主要方向,并推出一系列鼓勵措施。隨著采用?RISC-V 架構的芯片越來越多,尤其是完全國產(chǎn)芯片的問世,產(chǎn)學研市場對?RISC-V 芯片應用有了越來越多的需求,中國??RISC-V 產(chǎn)業(yè)生態(tài)日漸成熟。
