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