作者:何律衡,編輯:李墨天
2019年7月,阿里巴巴旗下半導(dǎo)體公司平頭哥正式發(fā)布玄鐵910,打出“業(yè)內(nèi)最強(qiáng)RISC-V處理器之一”的口號(hào),號(hào)稱(chēng)性能比肩Arm v8架構(gòu)Cortex A7X系列。
圍觀群眾一面沸騰叫好,一面互相打聽(tīng):RISC-V是啥?
CPU本質(zhì)是一塊集中了不同功能電路的芯片,要使用這些功能電路,CPU需要調(diào)用對(duì)應(yīng)的指令——也就是由0、1組成的二進(jìn)制數(shù)。而用來(lái)規(guī)定指令格式的東西就叫做指令集架構(gòu)(一般簡(jiǎn)稱(chēng)為架構(gòu)),不同的架構(gòu)反映了設(shè)計(jì)者對(duì)同一功能的不同實(shí)現(xiàn)思路,RISC-V就是全球前三大指令集架構(gòu)。
不過(guò)這個(gè)“全球前三大”可謂水分十足。另外兩大指令集中,由英特爾主導(dǎo)的x86架構(gòu)應(yīng)用于絕大部分PC和服務(wù)器;英國(guó)公司Arm的Arm架構(gòu)則用于全球99%以上的智能手機(jī)。
相比之下,RISC-V雖然排名上緊隨其后,但實(shí)際的份額還不到前兩者的零頭。
而這三種架構(gòu),又分別代表了三種經(jīng)營(yíng)模式:
x86架構(gòu)由英特爾和AMD牢牢掌握話語(yǔ)權(quán),其他芯片公司想用也用不了;
Arm架構(gòu)雖然由Arm公司所有,但授權(quán)開(kāi)放,需要花錢(qián)購(gòu)買(mǎi);
RISC-V最特殊,不屬于任何機(jī)構(gòu)或國(guó)家,開(kāi)源免費(fèi),想用就用,運(yùn)營(yíng)成本全靠基金會(huì)的兄弟們幫襯。
在這個(gè)語(yǔ)境下,RISC-V之于2019年的中國(guó)公司的意義就不難理解。
當(dāng)時(shí),國(guó)內(nèi)半導(dǎo)體產(chǎn)業(yè)初嘗制裁大棒,RISC-V基金會(huì)恰好又將總部從美國(guó)遷至中立國(guó)瑞士,原因是“擔(dān)心可能出現(xiàn)的地緣政治破壞”,其免費(fèi)開(kāi)源的特點(diǎn),意味著沒(méi)有人可以以“國(guó)家安全”為托詞,限制他人使用RISC-V。
RISC-V成立之初,基金會(huì)的中方成員只有阿里巴巴、華為和中科院計(jì)算所,到了2022年中,基金會(huì)19個(gè)高級(jí)會(huì)員里,中國(guó)大陸芯片企業(yè)占據(jù)12個(gè)席位。
春風(fēng)亦如邊鼓,催促著RISC-V備胎轉(zhuǎn)正。然而四年過(guò)去,RISC-V似乎依然沒(méi)走出備胎的困境。
合格的備胎
三大指令集中,x86為復(fù)雜指令集架構(gòu)(CISC),Arm和RISC-V為精簡(jiǎn)指令集架構(gòu)(RISC)。兩者的區(qū)別顧名思義:
CISC盡可能將任務(wù)一次性做完,高效但費(fèi)腦(性能高、功耗大),RISC則是將任務(wù)拆解,分次做完,雖然對(duì)個(gè)人能力要求不高(性能低、功耗小),代價(jià)是效率更低。
1985年,英國(guó)公司艾康電腦開(kāi)發(fā)出Arm架構(gòu),恰逢蘋(píng)果自研芯片,雙方一拍即合,Arm公司由此誕生。沒(méi)想到熬了快20年,直到憑借iPhone的A系列芯片橫空出世,Arm架構(gòu)才在移動(dòng)處理器市場(chǎng)熬出了頭。
RISC-V的發(fā)展更為曲折。RISC架構(gòu)最由圖靈獎(jiǎng)得主、當(dāng)前谷歌TPU團(tuán)隊(duì)負(fù)責(zé)人David Patterson在1971年發(fā)明,隨后經(jīng)歷了RISC-I到RISC-IV四代,卻始終未能得到重視。
2010年,加州大學(xué)伯克利分校Krste Asanovi?教授決定開(kāi)發(fā)一個(gè)開(kāi)放原始代碼的電腦系統(tǒng),x86不在考慮范圍內(nèi),Arm費(fèi)用太高,于是便找來(lái)David Patterson,RISC-V由此誕生。
“開(kāi)源”、“可修改”,幾乎可以概括RISC-V本質(zhì)上與Arm的區(qū)別:
如果以武俠小說(shuō)中的“功法”來(lái)比喻芯片架構(gòu),Arm是武林秘籍,外人可以花錢(qián)看,但不能隨便改;RISC-V可能只是某個(gè)武林高手的練功心得,可供各路好漢不斷修訂。
可修改的好處在過(guò)去一直很難體現(xiàn),但隨著軟件定義產(chǎn)品的時(shí)代到來(lái),根據(jù)軟件定制芯片的需求越發(fā)旺盛,尤其是物聯(lián)網(wǎng)和汽車(chē)領(lǐng)域,芯片架構(gòu)的靈活性,可以幫助終端廠商平衡性能和成本。
不過(guò)更現(xiàn)實(shí)的意義是,由于RISC-V開(kāi)源免費(fèi),也不掛靠在任何機(jī)構(gòu)下,從根本上杜絕了“卡脖子”的可能性。2015年,伯克利團(tuán)隊(duì)宣布成立RISC-V基金會(huì),把中立的宗旨擺在了臺(tái)面上。RISC-V由此成為了擔(dān)憂(yōu)“架構(gòu)霸權(quán)”的開(kāi)發(fā)者的隱藏備胎。
2019年前后,美國(guó)制裁大棒襲來(lái),RISC-V的“備胎”地位迅速凸顯。除了前文的平頭哥,小米供應(yīng)鏈的華米科技、華為海思等公司,都有基于RISC-V架構(gòu)的芯片產(chǎn)品,一時(shí)間,RISC-V在中國(guó)風(fēng)頭無(wú)兩。
而且,打著RISC-V“備胎”主意的,并不只是中國(guó)芯片公司。
Arm不是“活菩薩”
2022年8月,Arm一紙?jiān)V訟把大客戶(hù)高通告上法庭,導(dǎo)火索是高通剛剛收購(gòu)的Nuvia。后者由蘋(píng)果和谷歌的芯片工程師組建,獲得Arm授權(quán)后開(kāi)發(fā)了一系列高性能CPU內(nèi)核,被高通相中。
根據(jù)高通原本的計(jì)劃,這一年年末將推出基于Nuvia技術(shù)的定制CPU內(nèi)核“Oryon”,用于更高性能的驍龍SoC平臺(tái)中,在PC市場(chǎng)對(duì)抗蘋(píng)果M系列。
但Arm不干了,聲稱(chēng)高通采用Nuvia基于Arm授權(quán)(于2022年3月停止授權(quán))的技術(shù)侵犯自己的利益,要求高通要么銷(xiāo)毀芯片,要么給予經(jīng)濟(jì)補(bǔ)償。
Arm授權(quán)協(xié)議分為兩種:第一種是技術(shù)許可協(xié)議(TLA),客戶(hù)購(gòu)買(mǎi)Arm的IP,可做部分修改,典型代表就是高通的驍龍系列;
第二種是架構(gòu)許可協(xié)議(ALA),客戶(hù)購(gòu)買(mǎi)Arm指令集架構(gòu),在此基礎(chǔ)上開(kāi)發(fā)IP及處理器內(nèi)核,典型代表是蘋(píng)果,矛盾中心的Nuvia也屬此類(lèi)。
這場(chǎng)糾紛的核心矛盾在于:被收購(gòu)前的Nuvia已經(jīng)與Arm簽訂了ALA,并基于Arm架構(gòu)開(kāi)發(fā)了IP。高通認(rèn)為,自己與Arm已經(jīng)簽訂的TLA,有權(quán)力直接使用Nuvia的IP,Arm卻認(rèn)為高通需事先取得自己的同意(再交錢(qián)),或者直接再付一筆費(fèi)用。
這件事情在一定程度上暴露了Arm的脆弱性:雖然貴為移動(dòng)終端的基礎(chǔ)設(shè)施,卻沒(méi)有對(duì)應(yīng)的“征稅權(quán)”。
芯片架構(gòu)的地位更多來(lái)自“生態(tài)”:即有多少下游客戶(hù)愿意采用這種架構(gòu)設(shè)計(jì)芯片。
x86的成功就來(lái)自英特爾對(duì)兼容性的堅(jiān)持。上世紀(jì)80年代,東京大學(xué)教授坂村健以日本政府IT顧問(wèn)的身份,提出了一個(gè)雄心勃勃的TRON計(jì)劃,意在建立一個(gè)日本版的CPU+操作系統(tǒng)生態(tài)。但不同于英特爾的兼容路線,坂村健認(rèn)為英特爾為了兼容性犧牲了CPU的性能,應(yīng)該從零開(kāi)始開(kāi)發(fā)架構(gòu)、搭建生態(tài)。
顯然,英特爾的路線笑到了最后。和TRON一樣,IBM的Power架構(gòu)也選擇了犧牲兼容追求性能的思路,同樣敗給了英特爾。
“生態(tài)”的壁壘在于“雙邊規(guī)模效應(yīng)”:以Arm為例,采用Arm架構(gòu)的芯片越多,圍繞在Arm架構(gòu)的軟件開(kāi)發(fā)者和用戶(hù)也就越多,反過(guò)來(lái)新的芯片公司和開(kāi)發(fā)者也就更傾向于Arm架構(gòu)。
舉一個(gè)類(lèi)似的例子:如果美團(tuán)的用戶(hù)越多,那么商戶(hù)就更傾向于入駐美團(tuán);而商戶(hù)變多后,用戶(hù)也就越傾向于使用美團(tuán)。但有一個(gè)關(guān)鍵前提——美團(tuán)的配送費(fèi)和傭金維持在合理的區(qū)間。
而且,美團(tuán)的客戶(hù)大部分是中小型商家,而Arm的客戶(hù)都是有錢(qián)有勢(shì)的芯片巨頭。
歸根結(jié)底,Arm架構(gòu)更像是芯片公司投票選出來(lái)的代表,一旦Arm坐地起價(jià)或搶生意(他們已經(jīng)在這么做了),芯片公司就有動(dòng)力投票選個(gè)新代表。
與Arm同樣依賴(lài)“生態(tài)”的是android系統(tǒng)和英偉達(dá)的CUDA,前者是開(kāi)源的,后者理論上也是免費(fèi)的,只是與英偉達(dá)的GPU綁定。這個(gè)時(shí)候,RISC-V免費(fèi)開(kāi)源的好處就體現(xiàn)出來(lái)了。
RISC-V,再次獲選
如今的RISC-V基金會(huì)可謂群星云集,除了在社區(qū)時(shí)期就已入局的谷歌、IBM等,現(xiàn)在還有英偉達(dá)、鎂光、恩智浦、西部數(shù)據(jù),加上受Arm“迫害”最嚴(yán)重的高通,芯片設(shè)計(jì)公司轉(zhuǎn)投RISC-V的意愿肉眼可見(jiàn)。
最近,高通聯(lián)手恩智浦、英飛凌等多家汽車(chē)芯片巨頭在德國(guó)成立公司,目標(biāo)是推廣RISC-V架構(gòu)芯片,首個(gè)目標(biāo)是汽車(chē)芯片,然后業(yè)務(wù)范圍將逐漸擴(kuò)大到移動(dòng)和物聯(lián)網(wǎng)領(lǐng)域。
另一個(gè)被認(rèn)為很可能決定了RISC-V發(fā)展走向的入局者是傳奇人物Jim Keller。
作為硅谷一段活著的傳說(shuō),Jim Keller在90年代末主持了AMD Athlon系列處理器的研發(fā),憑借一己之力把讓AMD和英特爾平起平坐,一度使得英特爾放棄了4GHz奔騰4的開(kāi)發(fā)計(jì)劃。
跳槽到蘋(píng)果后(PA半導(dǎo)體,2008年被蘋(píng)果收購(gòu)),Jim Keller又打造了A系列處理器的開(kāi)山之作A4。后來(lái)Jim Keller重回AMD,領(lǐng)導(dǎo)開(kāi)發(fā)Zen架構(gòu)處理器成功逆襲英特爾。
2020年,跳槽積極分子Jim Keller從英特爾畢業(yè),可能是硅谷大公司能待的都待過(guò)了,Jim Keller轉(zhuǎn)頭加入了一家名不見(jiàn)經(jīng)傳的加拿大初創(chuàng)企業(yè)Tenstorrent。
這家公司主要生產(chǎn)采用RISC-V架構(gòu)的AI芯片,Jim Keller以CTO的身份入職,三年后轉(zhuǎn)為CEO——這是他職業(yè)生涯第一次擔(dān)任CEO。
Jim Keller的入局給RISC-V的備胎轉(zhuǎn)正之路增添了不少底氣,但另一家公司的前車(chē)之鑒告訴我們,備胎上位沒(méi)那么簡(jiǎn)單。
MIPS的教訓(xùn)
在RISC-V出現(xiàn)前,Arm的最大對(duì)手是MIPS。
MIPS與Arm、RISC-V溯本同源,均為上文提及的RISC架構(gòu),也都誕生在PC開(kāi)始普及的80年代。英國(guó)愛(ài)康公司著手研發(fā)Arm架構(gòu)同時(shí),斯坦福大學(xué)前校長(zhǎng)John LeRoy Hennessy與他的團(tuán)隊(duì)一起創(chuàng)立了MIPS,雙方均在1985年推出了各自的第一代架構(gòu)。
當(dāng)愛(ài)康依靠唯一的蘋(píng)果訂單惶惶度日時(shí),MIPS已初嘗商業(yè)化果實(shí),1988年推出的第三款產(chǎn)品R3000銷(xiāo)售過(guò)億,并借由索尼PlayStation打入游戲機(jī)市場(chǎng)。隨后又發(fā)布了首款64位處理器R4000,進(jìn)入服務(wù)器和超級(jí)計(jì)算機(jī)市場(chǎng),成為x86頭號(hào)威脅。
然而,MIPS此后卻一直走下坡路,控制權(quán)在二十多年間多次易手。2018年,從Imagenation手中收購(gòu)了MIPS的Wave Computing取消授權(quán)費(fèi)用,效仿RISC-V將MIPS架構(gòu)完全免費(fèi)開(kāi)源,也難挽頹勢(shì)。最后Wave Computing宣布終止開(kāi)發(fā),加入RISC-V基金會(huì)。
MIPS和Arm都有IP授權(quán)和架構(gòu)授權(quán)兩種授權(quán)模式,但雙方的思路差別很大:
Arm傾向于客戶(hù)在不改動(dòng)架構(gòu)的情況下、直接采用IP搭建芯片,MIPS則鼓勵(lì)客戶(hù)做架構(gòu)創(chuàng)新。
MIPS的理念看似給了開(kāi)發(fā)者最大程度的自由,卻無(wú)形中墊高了芯片設(shè)計(jì)的門(mén)檻。
如果把芯片設(shè)計(jì)比作搭積木,Arm的方案是做好各種各樣的零件讓消費(fèi)者自行拼裝;MIPS的方案則是直接給消費(fèi)者各種各樣的木頭,讓他們自己設(shè)計(jì)零件,難度可想而知。
此外,架構(gòu)的確定,相當(dāng)于給硬件、軟件確立了一個(gè)通用的規(guī)則,遵循這個(gè)規(guī)則設(shè)計(jì)出來(lái)的芯片、操作系統(tǒng)、軟件等,可以排列組合,最多做一些接口的改動(dòng),便可相互適配。
而MIPS鼓勵(lì)架構(gòu)授權(quán),支持客戶(hù)添加、修改指令,實(shí)際上便是對(duì)通用規(guī)則(標(biāo)準(zhǔn)化)一定程度的放棄,造成“碎片化”,也就是產(chǎn)業(yè)鏈各環(huán)節(jié)各自為政,無(wú)法“共同富?!?。一個(gè)架構(gòu)往往改來(lái)改去變成了忒修斯之船,生態(tài)就更難建設(shè)。
MIPS和RISC-V都屬于開(kāi)源架構(gòu),RISC-V還是免費(fèi)的。雖然開(kāi)發(fā)者準(zhǔn)入門(mén)檻降低了,但這反而可能導(dǎo)致更嚴(yán)重的指令集架構(gòu)碎片化。
因此,RISC-V陣營(yíng)的支持者們,也一直試圖在定制化和標(biāo)準(zhǔn)化之間做平衡:
一種思路,是將“無(wú)限的自由”轉(zhuǎn)變?yōu)椤坝邢薜淖杂伞保?/p>
比如提出指令集修改規(guī)范,這種規(guī)范需要最大程度地考慮軟件的兼容性,并鼓勵(lì)硬件開(kāi)發(fā)者對(duì)指令的修改按照這種規(guī)范進(jìn)行,以此解決架構(gòu)開(kāi)源帶來(lái)的軟、硬件不兼容問(wèn)題。
一個(gè)典型的例子是阿里平頭哥玄鐵C908,就通過(guò)了RISC-V根據(jù)其指令集修改規(guī)范設(shè)置的兼容性測(cè)試,這意味著大部分第三方軟件開(kāi)發(fā)者都不需要擔(dān)心軟件不適配的問(wèn)題。
另一種思路,是完善基礎(chǔ)指令集,使得開(kāi)發(fā)者無(wú)需再進(jìn)行增添修改:
比如RISC-V會(huì)在開(kāi)發(fā)者社區(qū)對(duì)實(shí)現(xiàn)某一種功能的指令熱情度很高,那么基金會(huì)就會(huì)考慮將在基礎(chǔ)的指令集架構(gòu)中增添這種指令的標(biāo)準(zhǔn)版,開(kāi)發(fā)者便不需要各自添補(bǔ)指令了。
目前,在RISC-V基金會(huì)以及巨頭成員們的有意引導(dǎo)下,兩種思路都已經(jīng)開(kāi)始實(shí)施,但道阻且長(zhǎng)。
參考資料
[1]?Why RISC-V Is Succeding,Semiengineering
[2]?RISC-V grows open source processor membership 130% in 2021,VentureBeat
[3]?指令集、架構(gòu)、處理器、內(nèi)核,芯片之間的關(guān)系,CSDN
[4]?都是精簡(jiǎn)指令集,RISC-V拿什么挑戰(zhàn)ARM?與非網(wǎng)
[5]?RISC-V vs. ARM vs. x86 – What’s the difference?Microcontrollertips
[6]?MIPS已死,轉(zhuǎn)身投靠RISC-V,CSDN
[7]?RISC-V詞條,維基百科
[8]?MIPS詞條,維基百科
編輯:李墨天,視覺(jué)設(shè)計(jì):疏睿,責(zé)任編輯:李墨天