【ARM和RISC-V公然開(kāi)撕,未來(lái)ARM和RISC-V的競(jìng)爭(zhēng)將會(huì)何去何從?】之前我們?cè)鴪?bào)道過(guò)“因ARM授權(quán)費(fèi)用太貴,科技巨頭欲轉(zhuǎn)向開(kāi)源架構(gòu)RISC-V”的消息,與ARM相比,開(kāi)源的RISC-V指令集可以自由地用于任何目的,允許任何人設(shè)計(jì)、制造和銷(xiāo)售RISC-V芯片和軟件,也因此RISC-V在嵌入式平臺(tái)正引起越來(lái)越多公司的關(guān)注,包括Google、特斯拉、三星、高通等科技公司已加入RISC-V陣營(yíng)。
或許是因?yàn)檫@種趨勢(shì)讓ARM感受到了壓力,ARM在6月底建立一個(gè)域名為riscv-basics.com的網(wǎng)站,里面的內(nèi)容主題為“設(shè)計(jì)系統(tǒng)芯片之前需要考慮的五件事”,從成本、生態(tài)系統(tǒng)、碎片化風(fēng)險(xiǎn)、安全性和設(shè)計(jì)保證上對(duì)RISC-V進(jìn)行攻擊。
此舉自然引起了RISC-V的強(qiáng)烈不滿(mǎn),7月9日RISC-V也建立一個(gè)域名為arm-basics.com的網(wǎng)站,并用“設(shè)計(jì)系統(tǒng)芯片之前需要考慮的六件事”為題(在A(yíng)RM列出的五項(xiàng)上新增了社區(qū)支持),對(duì)ARM進(jìn)行反擊,并呼吁廠(chǎng)商采用真正自由的架構(gòu)RISC-V。
對(duì)于此事,GNOME之父MigueldeIcaza在推特上表示,“ARM對(duì)RISC-V的這種負(fù)面宣傳只會(huì)適得其反,而且他們提出的觀(guān)點(diǎn)有點(diǎn)弱”。
7月10日,ARM的riscv-basics.com網(wǎng)站下線(xiàn)。Arm發(fā)言人在接受外媒采訪(fǎng)時(shí)表示,他們最初的目的是打算創(chuàng)建一個(gè)網(wǎng)頁(yè)以列出圍繞RISC-V的商業(yè)化產(chǎn)品需要考慮的關(guān)鍵因素,旨在為激烈的行業(yè)辯論提供信息。遺憾的是,結(jié)果有些出乎意料,該頁(yè)面也不符合Arm的合作文化,所以下線(xiàn)了。
該發(fā)言人還強(qiáng)調(diào):“我們絕對(duì)不希望給大家一種攻擊開(kāi)源的印象,因?yàn)槲覀儽旧砭褪窃S多不同領(lǐng)域的開(kāi)源社區(qū)的高度支持者。我們的目的是想做一些健康的行業(yè)討論,因?yàn)檫@對(duì)這個(gè)行業(yè)的未來(lái)至關(guān)重要?!?/p>
五點(diǎn)質(zhì)疑是否有效
雖然Arm的riscv-basics.com網(wǎng)站已經(jīng)下線(xiàn),但是圍繞該網(wǎng)站的討論并沒(méi)有結(jié)束。我們不禁要問(wèn),該網(wǎng)站上列舉的五大質(zhì)疑是否有道理呢?
首先,生態(tài)確實(shí)是目前RISC-V的短板。目前RISC-V社區(qū)還處于起步階段,在這一階段不太可能擁有完整的生態(tài),因?yàn)樯鷳B(tài)建設(shè)需要時(shí)間。目前RISC-V由RISC-V基金會(huì)牽頭的生態(tài)建設(shè)勢(shì)頭還不錯(cuò),如果這樣的勢(shì)頭保持下去未來(lái)我們可望看到非常完整的生態(tài),甚至因?yàn)镽ISC-V的開(kāi)源特性,每個(gè)感興趣的個(gè)人或者團(tuán)隊(duì)都可以做出自己的貢獻(xiàn)并且其靈活的特性和授權(quán),我們可能會(huì)看到RISC-V在未來(lái)會(huì)擁有比起ARM來(lái)說(shuō)更活躍的生態(tài)。
對(duì)于成本的質(zhì)疑則顯得缺乏根據(jù),RISC-V的開(kāi)源模式其實(shí)是其最大的優(yōu)勢(shì),類(lèi)似“指令集僅僅是處理器的一小部分因此指令集成本并沒(méi)有太大意義”這樣的說(shuō)法并不合適。指令集確實(shí)只是處理器的一小部分,但是卻是最核心的部分,ARM對(duì)其定價(jià)也非常高。這也是為什么ARM的授權(quán)中,如果客戶(hù)需要修改指令集,在A(yíng)RM的基礎(chǔ)上加以定制優(yōu)化以形成自己獨(dú)特的設(shè)計(jì),則需要花大價(jià)錢(qián)去獲取“架構(gòu)授權(quán)”(目前全球花大代價(jià)獲得ARM架構(gòu)授權(quán)的公司并不多,都是例如蘋(píng)果、高通等巨頭),而相反如果只是從ARM授權(quán)一個(gè)IP硬核,其授權(quán)費(fèi)用就要低得多。
換句話(huà)說(shuō),如果你真的從ARM處想要獲得指令集授權(quán),那么指令集授權(quán)費(fèi)很可能會(huì)構(gòu)成你SoC芯片設(shè)計(jì)成本的大頭!這樣看來(lái),RISC-V將指令集完全開(kāi)源,任何公司和個(gè)人都可以自由使用、修改與定制的模式將會(huì)帶來(lái)很大的成本優(yōu)勢(shì),另外這樣的開(kāi)源舉措會(huì)大大降低指令集修改和定制的進(jìn)入門(mén)檻,使更多人有機(jī)會(huì)探索并定制個(gè)性化指令集,從而使RISC-V生態(tài)更加生機(jī)勃勃,而不只是有錢(qián)人才能玩的游戲。
對(duì)于指令集碎片化的質(zhì)疑,則確實(shí)是不少設(shè)計(jì)者所關(guān)心的。為了引入更多設(shè)計(jì)靈活性,碎片化似乎是不得不面對(duì)的問(wèn)題。事實(shí)上,RISC-V基金會(huì)主席(同時(shí)也是RISC-V在加州大學(xué)伯克利分校的主要開(kāi)發(fā)者)KrsteAsanovic曾經(jīng)在專(zhuān)訪(fǎng)中回答過(guò)關(guān)于碎片化的問(wèn)題。Asanovic指出,RISC-V基金會(huì)制定了一系列規(guī)范來(lái)保證兼容性,RISC-V分為基礎(chǔ)指令集和拓展集兩部分,所有的RISC-V處理器都會(huì)支持40條基礎(chǔ)指令集,這是兼容性的首要保證。
此外,每個(gè)擴(kuò)展指令集處理器往往只是面對(duì)一個(gè)細(xì)分市場(chǎng)場(chǎng)景,而不會(huì)想做成通用場(chǎng)景處理器,因此碎片化并不是問(wèn)題;最后,如果某一細(xì)分場(chǎng)景逐漸變得流行,則RISC-V基金會(huì)會(huì)推動(dòng)針對(duì)該場(chǎng)景的拓展指令集進(jìn)行標(biāo)準(zhǔn)化。應(yīng)該說(shuō)碎片化問(wèn)題有可能是RISC-V未來(lái)面臨的一個(gè)挑戰(zhàn),這個(gè)問(wèn)題和前面的生態(tài)建設(shè)息息相關(guān),如果生態(tài)建設(shè)地好則指令集分散化反而會(huì)成為RISC-V的優(yōu)勢(shì)。
最后,對(duì)于安全和設(shè)計(jì)驗(yàn)證方面的指責(zé)則顯得有點(diǎn)牽強(qiáng)。就安全方面來(lái)說(shuō),之前的Spectre和Meltdown漏洞中,Intel、AMD和ARM的大多數(shù)處理器都出現(xiàn)了問(wèn)題,這是由于計(jì)算機(jī)架構(gòu)(如亂序執(zhí)行、TLB等)沿用已久的經(jīng)典設(shè)計(jì)在出現(xiàn)的時(shí)候壓根就沒(méi)有考慮到會(huì)有這類(lèi)問(wèn)題,相反使用較新架構(gòu)的RISC-V處理器(例如Rocket系列)卻在這次漏洞事件中表現(xiàn)出了更好的安全性,因此網(wǎng)站責(zé)難說(shuō)RISC-V處理器安全性存在問(wèn)題反倒顯得有一些諷刺意味。
對(duì)于設(shè)計(jì)驗(yàn)證,“改動(dòng)指令集會(huì)需要大量設(shè)計(jì)驗(yàn)證,所以如果設(shè)計(jì)驗(yàn)證完整度不夠的情況下自行修改指令集反而容易出錯(cuò)”這樣的觀(guān)點(diǎn)幾乎就等同于是因噎廢食,首先RISC-V基礎(chǔ)和主流擴(kuò)展指令集目前已經(jīng)有大量的芯片以及FPGA原型在跑,驗(yàn)證度已經(jīng)很高,其次每一家負(fù)責(zé)任的公司都會(huì)仔細(xì)掂量修改指令集的難度,如果超過(guò)自己的能力范圍自然會(huì)轉(zhuǎn)而選擇成熟的經(jīng)大量驗(yàn)證的指令集版本,但是以“指令集修改需要大量驗(yàn)證,我不讓你改還主要是為了你好”為理由剝奪大部分公司修改指令集的自由則無(wú)疑是荒唐的。
未來(lái)ARM和RISC-V的競(jìng)爭(zhēng)將會(huì)何去何從?
目前ARM占據(jù)了以移動(dòng)設(shè)備為代表的處理器IP的絕大部分市場(chǎng),而RISC-V則是后起之秀。那么,未來(lái)會(huì)何去何從呢?
目前的ARM和RISC-V讓我想起了上世紀(jì)末的Windows和Linux之爭(zhēng)。當(dāng)時(shí)的計(jì)算機(jī)主流設(shè)備是PC,而Windows則當(dāng)仁不讓是PC端的絕對(duì)主流操作系統(tǒng),Linux則主要是小眾極客的選擇。隨著時(shí)代的推移,計(jì)算設(shè)備的潮流逐漸轉(zhuǎn)向了移動(dòng)設(shè)備,到了今天又轉(zhuǎn)到了云端數(shù)據(jù)中心高性能計(jì)算。
我們看到之前的操作系統(tǒng)霸主Windows在移動(dòng)設(shè)備和高性能計(jì)算領(lǐng)域都沒(méi)有獲得很多份額,這一方面是因?yàn)閃indows本來(lái)就是為了PC設(shè)計(jì),其核心代碼比較復(fù)雜,不便于移植;另一方面其商業(yè)軟件非開(kāi)源的特性也讓W(xué)indows的開(kāi)發(fā)限定在了微軟公司內(nèi)部。
Linux則完全不同,其核心代碼很輕,而且沒(méi)有兼容性等歷史包袱,因此移植起來(lái)比較容易,此外其開(kāi)源的特性讓社區(qū)中的愛(ài)好者程序員可以參與Linux開(kāi)發(fā),他們針對(duì)Linux本身的移植、改良和開(kāi)發(fā)以及各種Linux平臺(tái)上的程序形成了Linux生態(tài)中的重要部分。對(duì)于愛(ài)好者來(lái)說(shuō),Linux開(kāi)源項(xiàng)目的開(kāi)發(fā)雖然沒(méi)有金錢(qián)回報(bào),但是這些開(kāi)發(fā)經(jīng)歷被業(yè)界認(rèn)可,可以成為簡(jiǎn)歷上的重要一部分。這樣,Linux開(kāi)源社區(qū)和愛(ài)好者互惠互利,形成了良性互動(dòng)。到了今天,Linux已經(jīng)成為了云端數(shù)據(jù)中心高性能計(jì)算的主流操作系統(tǒng)之一,在移動(dòng)端的主流操作系統(tǒng)Android也是基于Linux的內(nèi)核開(kāi)發(fā)。
ARM和RISC-V的未來(lái)競(jìng)爭(zhēng)格局也可能類(lèi)似。首先幾乎可以肯定的是,在A(yíng)RM的傳統(tǒng)優(yōu)勢(shì)領(lǐng)域,即手機(jī)領(lǐng)域,RISC-V基本沒(méi)有機(jī)會(huì),因?yàn)槭謾C(jī)經(jīng)過(guò)十年迭代后不太會(huì)徹底改變處理器內(nèi)核了,這也和目前Windows經(jīng)過(guò)二十多年風(fēng)雨仍然是PC市場(chǎng)操作系統(tǒng)龍頭老大一樣。
但是,在新興的領(lǐng)域,RISC-V和ARM都處于同一起跑線(xiàn)上,而RISC-V憑著指令集開(kāi)源等特性很有可能可以擊敗ARM,或者至少能夠占據(jù)可觀(guān)的市場(chǎng)份額。目前這樣的新興市場(chǎng)主要是物聯(lián)網(wǎng)市場(chǎng)。物聯(lián)網(wǎng)市場(chǎng)有長(zhǎng)尾化的特性,擁有眾多細(xì)分市場(chǎng),同時(shí)對(duì)于功耗有很高的要求,因此對(duì)于可以針對(duì)不同應(yīng)用靈活修改指令集和芯片架構(gòu)設(shè)計(jì)的RISC-V有優(yōu)勢(shì),相比之下使用ARM往往只能做一個(gè)標(biāo)準(zhǔn)化設(shè)計(jì),很難實(shí)現(xiàn)差異化。
此外,物聯(lián)網(wǎng)市場(chǎng)對(duì)于成本較敏感,RISC-V免費(fèi)授權(quán)的特點(diǎn)對(duì)于芯片廠(chǎng)商也很重要。在RISC-V基金會(huì)名單中,我們可以看到高通、聯(lián)發(fā)科這樣重點(diǎn)布局物聯(lián)網(wǎng)的企業(yè)。而在目前很火的AI芯片市場(chǎng),ARM和RISC-V則尚看不出明顯的優(yōu)劣。這是因?yàn)楦咝阅蹵I芯片中無(wú)論是使用ARM還是RISC-V的核,主要都是作為控制器來(lái)使用,最主要的也是最核心的計(jì)算單元往往是電路設(shè)計(jì)師自行設(shè)計(jì)而不會(huì)使用IP;另一方面AI芯片的利潤(rùn)空間往往較大,因此RISC-V的免費(fèi)的特點(diǎn)并沒(méi)有帶來(lái)特別大的優(yōu)勢(shì)。