RISC-V 能否超越 x86、Arm,成為下一代計算系統(tǒng)根技術的關鍵?
【CSDN 編者按】根技術,近年來頻繁被提及的一個詞語,也是當前國產(chǎn)操作系統(tǒng)、數(shù)據(jù)庫等基礎軟件,以及芯片領域被寄予厚望的一個重點發(fā)力方向。構建技術樹,只有根深才能葉茂,本固方有枝榮。然而,說起來容易做起來難,基于頗為嚴峻的“缺芯”困境,我們究竟該如何破局?在主流的 x86 和 Arm 賽道上,RISC-V 能否走出屬于自己的第三條道路?
在 2022 長沙·中國 1024 程序員節(jié)大會的《算力和芯片的挑戰(zhàn)與突破》主題論壇上,我們邀請到了從學術圈走入產(chǎn)業(yè)界,在芯片領域耕耘多年,曾任職浙江大學、杭州中天微系統(tǒng)有限公司、阿里巴巴平頭哥半導體有限公司,前玄鐵處理器核的主要研發(fā)負責人,現(xiàn)為進迭時空創(chuàng)始人兼 CEO 的陳志堅博士,剖析當前國產(chǎn)芯片的現(xiàn)狀,分享其構建芯片根技術的心路歷程,探索以 RISC-V 為核心的中國 CPU 發(fā)展路徑。
直播回放:https://live.csdn.net/room/csdnlive2/Hed0PPek
根技術是什么?
所謂根技術,顧名思義,就是所有技術的根,其他的技術都是基于這些根技術而逐步生長出來的。以最常用的智能手機為例,我們?nèi)粘=佑|到的往往是智能手機的外機,包括界面和 App 軟件。在智能手機計算系統(tǒng)里,根技術包括計算芯片、操作系統(tǒng)等。
近幾年,根技術開始被眾人了解并熟知。以現(xiàn)代信息社會而言,根技術包括:
-
架構、芯片與計算系統(tǒng),這是信息技術的硬件之根;
-
操作系統(tǒng)和軟件,這是信息技術的軟件之根。
除了硬件和軟件之根之外,還有非常重要的芯片制造,它是硬件之根的根。放眼全球芯片制造領域,主流的市場主要被國外的公司所持有,包括三星、英特爾、GlobalFoundries ,而國內(nèi)主要是中芯國際(SMIC)為代表 。
另外,開源體系打造了牢固且非常重要的根基組織,它是未來主流的孕育技術、產(chǎn)生技術和產(chǎn)生產(chǎn)品的一種方式。過去很多人容易認為開源技術是會被全球所共享的,但如今看來,實際并不然。開源技術從產(chǎn)出途徑上來看,確實是全球開發(fā)者共建的技術成果。但是,以代碼為例,它存放的服務器以及運營這些開源技術的基金會是有地域限制的,而因為地域、政治等因素,開源也存在一定的局限性。
從類別上,智能手機、PC 機、平板電腦、云計算的底座和云服務器都屬于計算系統(tǒng)。進一步細分下來,計算系統(tǒng)的根技術主要包括:
-
指令集,計算芯片操作系統(tǒng)數(shù)據(jù)庫最底層的是指令集;
-
基于指令集之上的是計算芯片;
-
操作系統(tǒng),屏蔽了計算芯片的硬件差異化,留給軟件開發(fā)的一套接口或標準;
-
數(shù)據(jù)庫,用于云計算領域的大型軟件。
國內(nèi)市場中,無論是指令集、計算芯片、操作系統(tǒng),還是數(shù)據(jù)庫,主流的市場一定程度上依然被外企持有。從計算系統(tǒng)的角度來說,指令集是計算系統(tǒng)根技術里面的根。中國是世界上最大的算力消費國,但是卻不是世界上的算力生產(chǎn)國。究其原因是指令集目前被國外所把控。
指令系統(tǒng)的演變
縱觀計算系統(tǒng)的發(fā)展歷史,有出現(xiàn)過很多的指令集,比如貝克的 Alpha 架構、后來的英特爾的 x86 架構,再到后來的 Sandy Bridge 架構、 MIPS 架構、 Power 架構等等。不過隨著時代的演進,絕大多數(shù)的架構都逐步放到了歷史的博物館里。
當今我們接觸比較多的是 x86 架構以及 ARM 架構。x86 架構是全封閉的指令架構,被英特爾和 AMD 公司所享有。
ARM 架構是一個半封閉的架構,它采取了跟英特爾不一樣的商業(yè)模式。英特爾的商業(yè)模式是公司持有架構,基于架構開發(fā)芯片去賣芯片。而 ARM 架構是公司研發(fā)架構,基于架構來開發(fā)處理器核,然后把處理器核賣給芯片公司,芯片公司集成處理器核,再賣到客戶手里。相比 x86 的商業(yè)模式,ARM 的商業(yè)模式更有利于幫助它聚集盟友。ARM 架構誕生于上世紀的 80 年代末到 90 年代初,當時的 ARM 架構相比 x86 架構來說,無論是指令集的能力還是性能都遠不足 x86 架構,但這并不妨礙 ARM 架構逐步地完善,并完成算力占比的逆襲。現(xiàn)在在全球的算力輸出中,ARM 架構已經(jīng)占到了 80% 以上。
回顧整個指令架構的發(fā)展歷史,可以總結出兩個規(guī)律:
-
第一,指令架構是一個高度馬太效應的事物。當一個指令架構有越來越多人用的時候,就意味著其生態(tài)壁壘越來越高,能夠聚集越來越多的開發(fā)者。側面來看,開發(fā)者投入到其他架構上的時間和精力少了,導致其他架構的發(fā)展完善度逐漸減弱,直到放棄。
-
第二個,指令架構的競爭不是技術層面的競爭,更多的是商業(yè)模式的競爭。ARM 架構開始不如 x86 架構,它之所以一步一步實現(xiàn)了對 x86 架構的逆襲,根本原因是它在商業(yè)模式里采取了更開放的合作方式,它把利潤的“小頭”放在了自己身上,把更大的芯片的利潤交給了芯片公司,這樣使得芯片公司愿意去跟 ARM 公司合作。
RISC-V 架構是一個更加開放指令架構。它起源于伯克利 2010 年暑期的計劃,2015 年開始以基金會的方式去運營,到 2021 年以基金會運營 6 年的時間已經(jīng)完成了出貨量 100 億顆的成績,這是一個非常快的速度。
RISC-V 的崛起
x86 架構是伴隨著互聯(lián)網(wǎng)的時代發(fā)展的,而 ARM 架構是伴隨著移動互聯(lián)網(wǎng)的時代發(fā)展的,那 RISC-V 架構它的下一個應用在哪里?它的下一個超級可能性在哪里?
個人的觀點是智能物聯(lián)網(wǎng)。在物聯(lián)網(wǎng)概念被頻繁提及的今天,大家仍然對智能物聯(lián)網(wǎng)的認知很低,容易理解為它是一種算力比較低的設備。
互聯(lián)網(wǎng)實現(xiàn)了信息的交互和互通,移動互聯(lián)網(wǎng)實現(xiàn)了人與人之間的信息交互與互通,智能物聯(lián)網(wǎng)實現(xiàn)的是物和物之間的信息化互聯(lián)。車作為物的一種,車聯(lián)網(wǎng)和智能機器人網(wǎng)也隸屬于智能物聯(lián)網(wǎng)的范疇。
三個不同時期設備規(guī)模的變化如下圖所示。在 PC 機的互聯(lián)網(wǎng)時代,設備出貨量在 1 億到 2 億臺左右。在移動互聯(lián)網(wǎng)時代,設備出貨量大致提升 10 倍,規(guī)模在 10 億到 20 億臺。而到了智能物聯(lián)網(wǎng)的時代,設備的出貨量會遠超百億臺。
再看根技術,每一個時代的根技術也是不一樣的。互聯(lián)網(wǎng)時代的根技術是 x86 架構,它是一個封閉的指令架構,同時搭載在硬件之上的 Windows 是一個封閉的操作系統(tǒng)。到了移動互聯(lián)網(wǎng)時代,ARM 就演變成了半開放的指令架構,而它的主流操作系統(tǒng) Android 就是純開放的操作系統(tǒng)。如今的智能物聯(lián)網(wǎng)時代,需要一種更為開放的指令架構以及操作系統(tǒng)。
AIoT 時代應用的多樣化與 RISC-V 的優(yōu)點是高度吻合的。RISC-V 的開放性、設計的簡潔性以及功耗的優(yōu)勢,都非常符合 AIoT 時代的場景。得益于可定制、可擴展的特質,RISC-V 架構更容易面向 AIoT 細分領域應用去設計出具有針對性和競爭力的核,從而更適配特定場景的應用需求。這正是它跟 ARM 完全不一樣的地方。ARM 提供的是標準處理器,為了最大化商業(yè)價值,其在設計處理器核時主要面向各種通用領域,不限定具體的場景,而 RISC-V 的可定制化恰恰是它面向 AIoT 時代重要的優(yōu)勢。
目前為止,RISC-V 架構的軟件生態(tài)還不成熟,如何展望它的未來發(fā)展?
首先,我們要對 RISC-V 的發(fā)展有包容心和戰(zhàn)略耐心。x86 架構和 ARM 架構軟件生態(tài)的完善度也不是一次生成的。x86 架構是上世紀 70 年代末 80 年代初開始發(fā)展的,到現(xiàn)在已經(jīng)有 40 多年的歷史。ARM 架構是上世紀的 80 年代末 90 年代初開始發(fā)展的,到現(xiàn)在也有 30 多年的歷史。打個比喻,如果說 x86 和 ARM 宛如一個成熟的中年人以及青年人,那么 RISC-V 架構還是個小朋友,從它以基金會的形式運營到現(xiàn)在只有 7 年的時間,但是它成長的加速度遠超 x86 和 ARM。
現(xiàn)在 ,RISC-V 除了不支持 Windows、安卓、 iOS 外, Linux 的軟件組件基本上是完善的。因此,對于 RISC-V 的長期發(fā)展,我們也應該抱有樂觀主義。回顧 ARM 的發(fā)展歷程,它在上世紀 80 年代末推出時僅是一個三級流水線的 DPU,其能力是遠遠不如當時的 x86。但這并不乏妨礙 ARM 一點一點地發(fā)展起來。而 RISC-V 在經(jīng)營模式上比 ARM 架構更先進、更開放,所以它在加速度上已經(jīng)體現(xiàn)出了優(yōu)勢。
構建"端-邊-云"原生的下一個計算時代
軟件開發(fā)者基于不同指令架構做開發(fā),會產(chǎn)生與不同指令架構緊耦合的軟件代碼,其中積累了大量冗余的重復工作。那么,這個世界是不是需要有這么多的 ISA(Instruction Set Architecture,指令集架構),實際上答案是否定的。
以蘋果公司為例,蘋果公司推出的 PC 機起初基于和摩托羅拉、IBM 一起開發(fā)的 Power 架構。后來蘋果公司開始轉向 x86 的架構。隨著 M1、 M2 芯片的推出,蘋果公司又轉向 ARM 架構。對于蘋果公司而言,其之前已經(jīng)積累了大量的應用軟件需要進行遷移,所以他們也開發(fā)了二進制轉譯的技術,包括從 Power 到 x86 轉譯的 Rosetta 1.0、從 x86 到 ARM 轉譯的 Rosetta 2.0。軟件基于不同的指令架構進行遷移開發(fā),對工程師來說是非常沒有意義、沒有必要的。
RISC-V 的架構的出現(xiàn),讓云邊端原生一體的下一個計算時代成為可能。我對未來云邊端時代共用共享 RISC-V 架構持有非常樂觀的態(tài)度。RISC-V 架構一定會先從邊開始發(fā)展,然后逐步的進入云計算的領域,最后再回到 PC 機和手機應用。
我對未來的暢想是,所有工程師都是基于 RISC-V 架構去開發(fā)代碼,它開發(fā)的代碼可以在不同的芯片之間、不同的應用場景之間進行遷移。這樣就把軟件工程師的付出、心血、成果能夠凝聚在一起,而不是反復在不同的指令架構之間去做搬移、搬運。
中國現(xiàn)在對 CPU 計算的渴求度迫切度非常高,在探索中,中國做 CPU 也走出了三種路徑:
-
基于他人的指令架構做引進、消化、吸收和創(chuàng)新。典型的像海光的 x86 架構、兆芯的 x86 架構和飛騰的 ARM 架構。這種方式最大的優(yōu)勢是可以利用x86 架構和 ARM 架構上已經(jīng)成長的軟件生態(tài)。
-
獨立構建技術體系。典型的像國內(nèi)的龍芯以及申威。它的自主可控性的程度最高,但是軟件生態(tài)上存在不足。
-
融入開源架構體系。進迭時空就是采用這個路徑。進迭時空看好 RISC-V 并愿意基于 RISC-V 芯片開發(fā)未來的計算芯片和計算系統(tǒng)。
這三種模式?jīng)]有好壞優(yōu)劣之分,并且在當下的中國都是很需要的,因為它可以面向不同場景,為 CPU 的供給提供不同選擇。
從自身來說,進迭時空選擇 RISC-V 架構主要有三方面的考量:
-
第一,全球標準。中國一直是世界上最大的算力消費國,但是從來不是算力生產(chǎn)國。背后的原因之一就是我們沒有強大生態(tài)的指令架構。RISC-V 的出現(xiàn)讓中國開始有機會參與全球算力的競爭,就像通信時代的 5G 標準一樣。
-
第二,全球生態(tài)。因為 RISC-V 架構的基金會已經(jīng)遷移到了瑞士,它正在吸引全世界最優(yōu)秀的 AP、架構的制定者、愛好者和開發(fā)者,圍繞著 RISC-V 做架構標準的制定、軟件生態(tài)的開發(fā),它正在匯聚全球共建能力。
-
第三,全球能量。像 x86 架構、ARM 架構屬于某個公司,生態(tài)的發(fā)展也與其背后的公司息息相關。這意味著它的能量只能以閉環(huán)形式局限于公司內(nèi)部。以 x86 架構為例,架構迭代主要通過公司內(nèi)部完成。以 ARM 為例,主要是依靠 ARM 公司以及它的合作伙伴比如蘋果、Google 推進發(fā)展和演進。這種方式很容易讓架構本身的發(fā)展跟公司的發(fā)展緊密聯(lián)系在一起,一旦公司發(fā)展得不行,架構也就慢慢地消亡。RISC-V 架構則不是,它是全球共建、全球共享,匯聚了世界上最優(yōu)秀的工程師圍繞著它做開發(fā)。以 RISC-V 的 vector 架構為例,當 ARM 在 V8 時代,它的計算采用的是 SIMD 的技術。到了 V9 架構時代,它推出了SVE 架構,即它的向量計算架構。RISC-V 一開始在設計計算技術時就采用了 SVE 的架構,所以 RISC-V 架構相比 ARM 架構很大的優(yōu)勢是它站在了前人的肩膀上,前人走過的路、做過的技術方案以及這些技術方案的優(yōu)勢和劣勢,它都是可以看見的。
進迭時空看好 RISC-V 的發(fā)展,希望基于RISC-V 架構,通過 CPU 核的定制優(yōu)化設計、芯片開發(fā)和基礎軟件開發(fā),實現(xiàn)這三者深度地整合和優(yōu)化,提供計算芯片和計算系統(tǒng)。
面向未來的泛邊緣計算場景
可以暢想一下未來的計算世界,按照現(xiàn)在的算力進行分層,大致可分成云、邊、端三層。未來發(fā)展趨勢,如下圖所示:
-
第一,云計算的算力下沉。現(xiàn)在的云計算主要是基于中心,中心式的云存在不足,比如計算的成本、計算的延時。它就像物流,開始物流采用中心式的倉儲方式,后來物流開始做下沉,下沉到低一級、次一級,這帶來的比較大的優(yōu)勢是物流的速度加快了。對計算而言,就是計算的時延變少了、對帶寬的占用變少了。所以 2010 年到 2020 年是云計算中心云的 10 年。我推斷 2020 年到 2030 年,未來的十年是云計算邊緣云、邊緣計算的時代,這是一個云計算算力的發(fā)展趨勢。
-
第二,端設備的算力增長。未來的端設備會被智能化所廣泛地改造,對算力的需求會越來越高。以典型的掃地機器人為例,最初的掃地機器人是基于 MCU 的碰撞式機器人,機器人跑著碰到了障礙物就彈回來繼續(xù)往前走。但現(xiàn)在掃地機器人已經(jīng)演化到了基于攝像頭的有路徑規(guī)劃能力、有避障能力的計算系統(tǒng),對芯片的要求也從原來的 MCU 發(fā)展成現(xiàn)在的適合 4-6t 算力的計算系統(tǒng)。所以未來端側會越來越智能化,對算力的要求會越來越高。所以云計算的算力下沉,端設備對算力的要求上提,使得算力匯聚在邊緣計算。
我們堅定地看好邊緣計算未來的發(fā)展。RISC-V 的發(fā)展現(xiàn)狀是,看好這門技術的人多,但真正去做的比較少,這個世界缺少一顆好的基于 RISC-V 的計算芯片。現(xiàn)在大量的軟件都是基于 QEMU 模擬器進行開發(fā),我們希望進迭時空能夠真正地參與進來,給全球開發(fā)者和商業(yè)應用提供好的基于 RISC-V 的計算芯片。
有了計算芯片就相當于有了基礎,更多的應用、軟件、開發(fā)者、愛好者可以基于芯片硬件進行開發(fā),這也會更有助于 RISC-V 架構生態(tài)的發(fā)展。現(xiàn)在 RISC-V 在國內(nèi)乃至全球,是先從 LT 端做起來,應用在 MCU、藍牙、Wi-Fi 等領域,但是偏 AP 類的高端應用芯片比較少。所以我們希望為世界在未來提供一套好的基于 RISC-V 架構的計算芯片和計算系統(tǒng)。
本文整理于 2022 長沙·中國 1024 程序員節(jié)大會的《算力和芯片的挑戰(zhàn)與突破》主題論壇。
本文來自微信公眾號“CSDN”(ID:CSDNnews),作者:陳志堅,36氪經(jīng)授權發(fā)布。
