不久前,特斯拉加入RISC-V基金會,并考慮在新款芯片中使用免費的RISC-V設(shè)計。至此,已有IBM、NXP、西部數(shù)據(jù)、NVIDIA、高通、三星、Google、華為等100多家科技公司加入RISC-V陣營。
出現(xiàn)這種現(xiàn)象的原因一方面是ARM的授權(quán)費用實在太貴了,另一方面也是RISC-V提供指令集徹底開放,非常有希望成為CPU領(lǐng)域的Linux。
正是因為看好RISC-V的未來,不少科技巨頭在RISC-V還是潛力股的時候趁早下注。
RISC-V的誕生
在2010年,加州大學(xué)伯克利分校的一個研究團(tuán)隊正在準(zhǔn)備啟動一個新項目,而要設(shè)計CPU,必然要選擇一種指令集,然而,X86指令集被Intel控制的死死的,ARM的指令集授權(quán)費又非常貴,MIPS、SPARC、PowerPC也存在知識產(chǎn)權(quán)問題。
在這種情況下,伯克利的研究團(tuán)隊決定從零開始設(shè)計一套全新的指令集,且這款新指令集要能滿足從微控制器到超級計算機(jī)等各種尺寸的處理器。
正如行業(yè)內(nèi)常說的,設(shè)計一套指令集并非黑科技,用這套指令集去實現(xiàn)CPU才是真正具有含金量的工作。
伯克利的研究團(tuán)隊直用了3個月就完成了RISC-V的指令集開發(fā),并公開發(fā)布了第一版指令集。
該指令集的第一個版本只包含了不到50條指令,可以用于實現(xiàn)一個具備定點運算和特權(quán)模式等基本功能的處理器。如果用戶需要的話,也可以根據(jù)自己的需求自定義新指令。
這樣一來,這套指令集兼具精簡和靈活兩大特點。
隨后,伯克利的研究團(tuán)隊將這個新指令集命名為RISC-V:RISC指的是精簡指令集的意思,V是羅馬字母,代表第五代的意思,因為伯克利分校的David Patterson教授在此之前已經(jīng)研制了四代處理器芯片。
更關(guān)鍵的是,伯克利研究團(tuán)隊將RISC-V指令集徹底開放,使用BSD License開源協(xié)議,這就使RISC-V不像ARM、PowerPC等指令集那樣需要付費授權(quán)才能使用,而且BSD開源協(xié)議給予使用者很大自由,允許使用者修改和重新發(fā)布開源代碼,也允許基于開源代碼開發(fā)商業(yè)軟件發(fā)布和銷售。
怎么說呢,像Linux的GPL協(xié)議,就限制了商業(yè)公司的行為,BSD開源協(xié)議則不同,蘋果的iOS就基于BSD內(nèi)核,但使用開源軟件之后,因為BSD開源協(xié)議給了蘋果很大的自由度,蘋果依舊可以將iOS閉源并在商業(yè)市場賺錢。
對于大學(xué)和科研院所等學(xué)術(shù)機(jī)構(gòu)來說,RISC-V也是非常有價值的。中科院計算所包云崗研究員團(tuán)隊在做一個項目時,最初選擇了SUN的OpenSparc T1,然而這款處理器的社區(qū)活躍度和軟件支持都不行,而且獨立性比較差。然后又選擇了Micro Blaze,然而這款處理器卻不開源。
最后把目光轉(zhuǎn)向了RISC-V,并完成了科研項目,相關(guān)技術(shù)成果被華為用在海思的ARM服務(wù)器CPU上。
正是因為RISC-V選擇了對商業(yè)公司非常友好的BSD開源協(xié)議,以及RISC-V兼具精簡和靈活等優(yōu)點,眾多商業(yè)公司紛紛關(guān)注RISC-V。
RV12RISC-V處理器
RISC-V有望復(fù)制Linux的成功
目前,在CPU上,X86和ARM是兩大霸主。然而這兩位霸主都非常霸道,Intel根本不允許除AMD和VIA之外的任何一家公司使用X86指令集,而且一旦AMD被收購,X86指令集授權(quán)都要重新談判。即便是全美達(dá)想通過翻譯打插邊球,結(jié)果也被Intel用專利訴訟拖死了。
類似的,ARM雖然比Intel好一些,但也僅僅是好一些而已。在指令集授權(quán)上也非常吝嗇,獲得ARM32授權(quán)的公司一只手都能數(shù)的過來,ARM64授權(quán)雖然多一些,但授權(quán)費卻異常昂貴。
法國芯片創(chuàng)業(yè)公司Greenwave表示,他們?nèi)绻褂肁RM架構(gòu),要花掉1500萬美元的授權(quán)費,而且授權(quán)到期后,是否繼續(xù)授權(quán)和授權(quán)費用都要重新談判。
正是因為X86和ARM在授權(quán)上異??量蹋芏啻蠊径紝ntel和ARM非常不滿,而這恰恰給了RISC-V這樣的后起之秀機(jī)會。
包括Google、華為、IBM、鎂光、NVIDIA、高通、三星、西部數(shù)據(jù)等商業(yè)公司,以及加州大學(xué)伯克利分校、麻省理工學(xué)院、普林斯頓大學(xué)、ETHZurich、印度理工學(xué)院、洛倫茲國家實驗室、新加坡南洋理工大學(xué)以及中科院計算所等學(xué)術(shù)機(jī)構(gòu)紛紛加盟RISC-V。在2017年11月召開的第7屆RISC-VWorkshop上,全球共有138個公司、35所大學(xué)與研究機(jī)構(gòu)參會。
除了商業(yè)公司和學(xué)術(shù)機(jī)構(gòu)之外,印度政府更是對RISC-V情有獨鐘。在2011年,印度開始實施處理器戰(zhàn)略計劃,在全國范圍資助2-3個研制處理器的項目。
印度理工學(xué)院馬德拉斯分校的G.S.Madhusudan與V.Kamakoti教授在該計劃支持下啟動了SHAKTI處理器項目。SHAKTI項目就選擇了RISC-V,并獲得印度政府超過9000萬美元的經(jīng)費支持。
在2016年,印度先進(jìn)計算發(fā)展中心獲得印度電子信息技術(shù)部4500萬美元的資助,目標(biāo)研制一款基于RISC-V指令集的2GHz四核處理器。
在過去數(shù)年中,印度政府資助的處理器相關(guān)項目都開始向RISC-V靠攏,RISC-V成為了印度的事實國家指令集。
目前,伯克利研究團(tuán)隊已經(jīng)完成了基于RISC-V指令集的順序執(zhí)行的64位處理器核心(代號為Rocket),并前后基于45nm與28nm工藝進(jìn)行了12次流片。
Rocket芯片主頻大于1GHz,與ARM Cortex-A5相比,實測性能較之高10%,面積效率高49%,單位頻率動態(tài)功耗僅為Cortex-A5的43%。在嵌入式領(lǐng)域,Rocket已經(jīng)可以和ARM爭市場了。
正是因此,西部數(shù)據(jù)聲明,每年將使用10億個RISC-V核;NVIDIA也宣布,將把RISC-V用于GPU內(nèi)部的控制器。美國DARPA也資助一些公司基于RISC-V設(shè)計航天器的宇航芯片;還有眾多商業(yè)公司計劃基于RISC-V開發(fā)面向IoT的智能芯片,面向安全的芯片,以及服務(wù)器上的主板管理控制器等。
在軟件生態(tài)方面,也逐步在完善,比如調(diào)試工具鏈、中斷控制器、JVM、LLVM、Python等開發(fā)者常用的軟件工具都在完善之中。
正是依靠開源和免費,全世界的商業(yè)公司、學(xué)術(shù)機(jī)構(gòu)都可以開發(fā)兼容RISC-V指令集的處理器,而且不需要支付一分錢的費用。
這使RISC-V有望被全球的開發(fā)者廣泛應(yīng)用,并復(fù)制Linux的奇跡。何況RISC-V的BSD開源協(xié)議,比GPL協(xié)議對商業(yè)公司更加友好,使商業(yè)公司有很強(qiáng)的動力去推動這件事。
結(jié)語
誠然,依靠開源和免費,RISC-V非常受大學(xué)和科研院所青睞,并有望在教學(xué)領(lǐng)域大展拳腳,而這又會給RISC-V培養(yǎng)源源不斷的后備軍。
對于商業(yè)公司來說,由于ARM的授權(quán)費實在是太貴了,也有較強(qiáng)的動力去做RISC-V,給自己留一個備份,避免被綁死在ARM上。
不過,RISC-V也存在一個隱憂,那就是缺乏強(qiáng)有力的主導(dǎo)者,進(jìn)而導(dǎo)致破碎化的問題。
當(dāng)年的MIPS其實也非常學(xué)院派,MIPS陣營的商業(yè)公司可以自由添加指令,比如龍芯就以MIPS為基礎(chǔ)添加了1000多條新指令,進(jìn)而形成了自己的指令集Loong ISA。這又使開發(fā)軟件的時候,即便同樣屬于MIPS,也必須分為龍芯版和MIPS版……
由于RISC-V也允許用戶自己加新指令,這就有可能使RISC-V破碎化,也許未來華為、高通、Google開發(fā)出的RISC-V處理器雖然都屬于RISC-V,但卻不能跑同樣一套軟件。
畢竟完全開放與有力的領(lǐng)導(dǎo)是一對矛盾,如果無法解決這個問題,恐怕RISC-V很難成長到能與X86和ARM爭雄的水平。