作者:史中
(一)堤壩上的裂縫
人們總說(shuō)要“活在當(dāng)下”。
但好多煩惱恰恰來(lái)自人們太活在“當(dāng)下”了。
就拿芯片“卡脖子”這件事來(lái)說(shuō),很多人的第一反應(yīng)是——中國(guó)脖子已經(jīng)被卡了好久,都卡禿嚕皮了。
但看看以下時(shí)間點(diǎn):
2022 年 10 月,美國(guó)宣布對(duì)中國(guó)先進(jìn)計(jì)算芯片的出口管制。距今 1.5 年。
2020 年 3 月,美國(guó)宣布禁止臺(tái)積電為華為代工。距今 4 年。
2018 年 10 月,美國(guó)宣布對(duì)福建晉華實(shí)施制裁,這已是美國(guó)對(duì)華芯片壓制的起點(diǎn),距今 5.5 年。
這段時(shí)間,實(shí)際上比很多人的感覺(jué)更短。也許只是痛苦才讓它顯得漫長(zhǎng),這就是“相對(duì)論”吧。。。
有人可能會(huì)想:“雖說(shuō)開(kāi)始沒(méi)多久,但不知道什么時(shí)候才能擺脫制裁??!大的還沒(méi)來(lái),豈不是更讓人灼菊?”
要我說(shuō),擺脫在芯片上的困局,絕不會(huì)難到“家祭無(wú)忘告乃翁”的程度!
“理解當(dāng)下”的最好辦法是“活進(jìn)歷史”。
你看,1971 年現(xiàn)代 CPU 才誕生,創(chuàng)造 CPU 的那一代人也還世。而在 50 多年的歷史中,CPU 江湖已經(jīng)改朝換代不知幾何。
君不見(jiàn),每一代霸主都期待構(gòu)建起雄偉的大壩,把技術(shù)之水圍住,可誰(shuí)又成功了呢?
正如中國(guó)古話所說(shuō):“千里之堤毀于蟻穴”。
小小的蟻穴都能潰壩,何況。。。這次鷹醬用政策構(gòu)建的堤壩上可不只是蟻穴,甚至可以說(shuō)有不少裂縫,創(chuàng)可貼都貼不過(guò)來(lái)。
說(shuō)到這兒,可能有淺友要吐槽:“中哥你這不就是‘遙遙領(lǐng)先黨’嗎?”
非也。情感畢竟虛幻,事實(shí)才能通向答案。
所以,今天的節(jié)目我?guī)Т蠹襾?lái)參觀一下 CPU 歷史上的“潰壩事件”。大家看后,也許自有論斷。
我們就從大陸的另一端,煙雨蒙蒙的英國(guó)開(kāi)始吧。
(二)小小的橡果&傲慢的巨頭
1978 年,那是一個(gè)春天。
那一年,Intel 公司搞出了一個(gè)芯片,叫做“8086”。
那一年,美國(guó)的鐵子們開(kāi)始口耳相傳一個(gè)叫做“Apple II”的東西。一千多美元,就能擁有一個(gè)性能堪比“阿波羅登月計(jì)劃”、設(shè)計(jì)騷騷的、界面屌屌的電腦,感覺(jué)相當(dāng)膨脹。
那一年,原本做計(jì)算器出身的倆老哥庫(kù)里和豪瑟也看到了“微型計(jì)算機(jī)”的機(jī)會(huì),于是合伙在英國(guó)建立了一家芯片公司。
公司名字非常狠,叫:CPU,它的全稱(chēng)是“劍橋處理器公司”。
此時(shí),賭狗們開(kāi)始展現(xiàn)硬核實(shí)力了。
一家專(zhuān)門(mén)做賭博機(jī)(水果機(jī))的公司找到 CPU,問(wèn)問(wèn)他們能不能搞一個(gè)芯片,里面能跑程序的那種,幫助賭狗們更愉快地耍(shu)錢(qián)。
庫(kù)里他們?cè)野勺?,賭博機(jī)。。。四舍五入也是微型計(jì)算機(jī)的一個(gè)分支吧。有錢(qián)不賺王八蛋。
就這樣,他們賺到了創(chuàng)業(yè)的第一桶金。
搞定之后一抬頭,這玩意兒也不難嘛。蘋(píng)果能生產(chǎn)個(gè)人電腦整機(jī),我們?yōu)槊恍???/p>
于是 CPU 公司趕緊注冊(cè)了一個(gè)對(duì)標(biāo) Apple 的子公司,給新公司起名不靠風(fēng)水大師,就靠自己硬凹,標(biāo)準(zhǔn)就是:在通訊錄里一定要TMD排在蘋(píng)果公司前面。
所以這個(gè)公司必須以 A 開(kāi)頭,第二個(gè)字母還得在 p 之前。
想來(lái)想去,他們選定了“Acorn”,也就是橡果,看上去比蘋(píng)果命硬多了。
話說(shuō),蘋(píng)果當(dāng)時(shí)已經(jīng)很流行了,橡果怎么阻擊呢?
沒(méi)錯(cuò),靠的就是:不是蘋(píng)果買(mǎi)不起,而是橡果更有性?xún)r(jià)比!
1980 年,橡果搞出了一款個(gè)人電腦,叫做原子(Atom)。
它用的 CPU 是 MOS 公司生產(chǎn)的 6502。
看到這你可能快出戲了,我只聽(tīng)過(guò) 9527,沒(méi)聽(tīng)過(guò) 6502 啊!
嘿嘿,如果你沒(méi)聽(tīng)過(guò) 6502,那你絕對(duì)欠它一張票錢(qián)。因?yàn)榇竺ΧΦ娜翁焯谩凹t白機(jī)”(FC),用的正是這個(gè)芯片。
話說(shuō)這個(gè)芯片當(dāng)時(shí)很流行,Apple II 用的也是它。那原子電腦怎么競(jìng)爭(zhēng)呢?
好辦,顯卡簡(jiǎn)配,擴(kuò)展插槽減少,各種基礎(chǔ)功能都擠在一個(gè)電路板上。能省的地方全省了,再把價(jià)格直接定到蘋(píng)果的三分之一。你就說(shuō)香不香吧?
風(fēng)口來(lái)了,豬想不上天都難。
1980 年,英國(guó) BBC 推出了一套教育節(jié)目,給大家科普一下計(jì)算機(jī)時(shí)代的浪潮要來(lái)了。結(jié)果這個(gè)節(jié)目太火了,觀眾們紛紛來(lái)電,請(qǐng) BBC 推薦:我家娃想學(xué)電腦,該買(mǎi)啥?
BBC 一看,這么好的機(jī)會(huì),我自己攢一臺(tái)電腦賣(mài)不就行了?
這個(gè)活兒最終轉(zhuǎn)包到了橡果電腦身上,廉價(jià)夠用的原子電腦把一排鍵帽換成紅色,就成了 BBC Micro 電腦,賣(mài)得相當(dāng)火。
由此,橡果被英國(guó)人稱(chēng)為“英國(guó)版蘋(píng)果”。
要我說(shuō),這路線哪是英國(guó)版蘋(píng)果,分明是英國(guó)版小米。。。
這不,很快橡果就遇到了和小米一樣的問(wèn)題,界面過(guò)于樸實(shí),價(jià)格過(guò)于親民,沖不了高端。賣(mài) 10 臺(tái)的利潤(rùn)還趕不上蘋(píng)果、IBM 一臺(tái)的零頭。。。
傷害來(lái)自對(duì)比。當(dāng)時(shí)蘋(píng)果剛推出 Apple Lisa,那叫一個(gè)美輪美奐,相比之下橡果的超級(jí)瑪麗風(fēng)就不能看了。
于是他們下決心設(shè)計(jì)新機(jī)型。
搞來(lái)搞去,發(fā)現(xiàn)了問(wèn)題的根源——紅白機(jī)的那顆 6502 CPU 給不上力了。
橡果找了一圈,覺(jué)得 Lisa 使用的摩托羅拉 68000 CPU 是又貴又難用,只有 Intel 的 x86 系列還勉強(qiáng)能打。
不過(guò)橡果沒(méi)打算直接買(mǎi),而是想在 x86 CPU 的基礎(chǔ)架構(gòu)上自己做進(jìn)一步的定制開(kāi)發(fā)。
于是 1983 年,橡果找到了 intel,直接問(wèn):“你們能不能把 CPU 的架構(gòu)授權(quán)給我們用?”
Intel 說(shuō):“玩兒蛋去!”
其實(shí)。。。Intel 并沒(méi)說(shuō)這話,而是完全把橡果當(dāng)空氣。沉默是最大的蔑視。
話說(shuō)回來(lái),塞翁失馬焉知非福。如果 Intel 搭理了橡果,情況可能更糟。
因?yàn)楫?dāng)時(shí) Intel 答應(yīng)了很多日本公司,授權(quán)他們用自己的 x86 架構(gòu)生產(chǎn)芯片。
結(jié)果。。。
1984 年,美國(guó)通過(guò)了《半導(dǎo)體保護(hù)法》。然后 1986 年,Intel 80386 芯片上市前夜,他們直接翻臉,對(duì)日本公司“斷供”,導(dǎo)致日本公司集體啞火,無(wú)法研制新處理器,只能購(gòu)買(mǎi) Intel 的。
看吧,過(guò)河拆橋,筑大壩,卡脖子,那都是傳統(tǒng)藝能了。
總之,橡果和 Intel 的梁子算是結(jié)下了。但別急,未來(lái) Intel 有足夠的時(shí)間為當(dāng)初的傲慢買(mǎi)單。
(三)恐龍和老鼠
橡果只好自力更生了。
不過(guò)此時(shí),他們?cè)O(shè)計(jì)過(guò) CPU 的最高水平是——賭博機(jī)芯片。
參與設(shè)計(jì)那款芯片的兩位工程師 Roger Wilson 和 Steve Furber 心里沒(méi)底,特意跑去 6502 的娘家,美國(guó) MOS 公司參觀了一下,回來(lái)時(shí)他們臉上掛滿(mǎn)了自信的笑容。
MOS 公司的 CPU 部門(mén),唯有破爛辦公室一間,攻城獅幾只。。。啥高級(jí)設(shè)備也沒(méi)有。
這條件,我們也有啊!
橡果決定像素級(jí)對(duì)標(biāo) MOS:找了一間谷倉(cāng),塞進(jìn)去幾個(gè)工程師開(kāi)始了新 CPU 的研發(fā)。
老師傅們發(fā)現(xiàn),要想設(shè)計(jì) CPU,自己首先得搞清一個(gè)哲學(xué)問(wèn)題:恐龍和老鼠,誰(shuí)更有生命力?
Intel 芯片的設(shè)計(jì)理念就是“恐龍”,它的基因里刻著各種復(fù)雜指令,像恐龍一樣能打。但設(shè)計(jì)、制造成本更高,跑起來(lái)的能耗也高一些。
6502 芯片的設(shè)計(jì)理念就是“老鼠”,它的基因里刪掉了很多指令,只留下了比較簡(jiǎn)單的。正如老鼠,單位戰(zhàn)斗力比較低,但設(shè)計(jì)、生產(chǎn)成本也低啊!
要這么說(shuō)的話,結(jié)論不是明擺著么?小行星撞地球后,恐龍都變成石油了,“老鼠們”卻進(jìn)化成了各種高級(jí)動(dòng)物。
選老鼠!
老師傅們博覽當(dāng)時(shí)的論文,找到了心儀的“老鼠原型”:來(lái)自伯克利大學(xué)的一個(gè)叫帕特森的老師主導(dǎo)的論文——精簡(jiǎn)指令集,也叫 RISC(Reduced instruction set computer)。
于是,他們決定開(kāi)發(fā)一款橡果 RISC 電腦芯片:Acorn RISC Machine,簡(jiǎn)稱(chēng) ARM。
沒(méi)錯(cuò),剛才你看到的這段往事,正是如今大名鼎鼎的 ARM 的誕生歷史。
話說(shuō) ARM 芯片的研發(fā)非常成功。而你懂的,如果劇情一直這么順利,大事兒就要來(lái)了。
從 1983 到 1987,研發(fā)新的芯片用了四年時(shí)間。
這四年里,“氣候”發(fā)生了翻天覆地的變化——趁橡果埋頭自研的功夫,冒出了一堆“魅藍(lán)”之類(lèi)的競(jìng)爭(zhēng)對(duì)手,他們復(fù)制了低價(jià)路線,而且更加價(jià)格實(shí)惠、感動(dòng)人心。。。
禍不單行,橡果電腦不僅價(jià)格優(yōu)勢(shì)蕩然無(wú)存,還遭遇了供應(yīng)鏈問(wèn)題,有人買(mǎi)的時(shí)候供不上貨,等供上貨之后,人家早買(mǎi)了競(jìng)爭(zhēng)對(duì)手的產(chǎn)品了。
1985 年,橡果的倉(cāng)庫(kù)里積壓了 25 萬(wàn)臺(tái)電腦,股價(jià)狂跌到了23便士。
有趣的是,這一年,同樣走高端路線的蘋(píng)果也遭遇了滑鐵盧,差點(diǎn)兒破產(chǎn),喬布斯都給董事會(huì)開(kāi)除了。曾經(jīng)風(fēng)光無(wú)兩的哥倆,轉(zhuǎn)眼成了難兄難弟。
后來(lái),橡果一蹶不振,蘋(píng)果慢慢緩過(guò)來(lái)。
當(dāng)時(shí)蘋(píng)果覺(jué)得,既然電腦消費(fèi)者不喜歡了,那來(lái)個(gè)“商務(wù)通”你們愛(ài)不愛(ài)?
于是 1990 年,蘋(píng)果準(zhǔn)備攢個(gè) PDA,名叫牛頓(Newton)。這玩意個(gè)頭小,電池也小,帶不起來(lái)大功耗的 CPU。
蘋(píng)果找來(lái)找去,發(fā)現(xiàn)只有 ARM CPU 比較符合要求,于是找到奄奄一息的橡果公司組建了合資公司,也就是 ARM 公司。
當(dāng)然,“牛頓”最后沒(méi)賣(mài)出去多少,但 ARM 作為獨(dú)苗,好歹是活下來(lái)了。
從此,江湖再無(wú)橡果,只剩 ARM。
話說(shuō)那一撥 IT 行業(yè)大洗牌,微軟占了大便宜,它用 Windows 綁定了 Intel,也把后者送進(jìn)了鼎盛時(shí)期。
隨后,CPU 世界像極了侏羅紀(jì)時(shí)代:
Intel 這只恐龍制霸世界,而 ARM 只能躲在恐龍腳下抱頭鼠竄,靠支持一些小型或手持設(shè)備茍著。
ARM 的邊緣地位,決定了它搞不了 Intel 那種壟斷,只能選擇一種“開(kāi)放”的生存方式——向各個(gè) CPU 廠商出賣(mài)架構(gòu)的授權(quán)。
每一家都收一點(diǎn)兒錢(qián),爭(zhēng)取鋪得廣一些,東方不亮西方亮嘛!
比如,當(dāng)時(shí)德州儀器買(mǎi)了 ARM 授權(quán),生產(chǎn)出芯片賣(mài)給諾基亞做手機(jī);
還有三星,也買(mǎi)了 ARM 芯片放進(jìn)自家生產(chǎn)的 DVD 里。
隱忍終有出頭日。
2007 年,回歸蘋(píng)果的喬布斯從兜里掏出 iPhone,ARM 憑借智能手機(jī)時(shí)代重返大眾視野;
2008 年,谷歌第一臺(tái) Android 手機(jī) G1 發(fā)布,同樣使用了高通基于 ARM 的處理器;
2011 年, ARM 推出了服務(wù)器芯片架構(gòu),正式進(jìn)軍 Intel 的老巢——高性能計(jì)算;
2020 年,蘋(píng)果倒戈,把 Mac 電腦的芯片從 Intel 全部換成基于 ARM 的 M 芯片。
至此,Intel 在所有戰(zhàn)線上腹背受敵。
如今 Intel 架構(gòu)能干的活兒,ARM 架構(gòu)全能干,而且眼瞅著干得更好。昔日在恐龍腳下躲藏的老鼠如今已經(jīng)有制霸世界的王者氣息。
只是很多人不會(huì)記得,ARM 的第一個(gè)字母 A,仍舊背負(fù)著昔日橡果 Acorn 的舊夢(mèng)與榮光;
很多人也沒(méi)有嗅到,ARM 的第二個(gè)字母 R,藏著下一個(gè)時(shí)代的鋒利預(yù)言。
不過(guò)在這里,我們首先回答那個(gè)問(wèn)題:ARM 的王子復(fù)仇,Intel 的潰壩,這其中到底有多少運(yùn)氣,又有多少必然呢?
換句話說(shuō),如果把歷史倒轉(zhuǎn),ARM 還有多大勝算逼退 Intel 呢?
我們不如把 CPU 的蓋子撬開(kāi),讓里面的“葫蘆娃”告訴我們答案。
(四)“指令集”——葫蘆娃的巴別塔
打個(gè)比方。CPU 的蓋子里,密密麻麻排著好多邏輯電路,他們就像不知疲倦的葫蘆娃。
他們的性格比較軸:
1、每種葫蘆娃只會(huì)一種技能,不能變通。
2、但只要交給他任務(wù),他就使命必達(dá),一定能完成。
根據(jù)每一款 CPU 的用途不同,包含的葫蘆娃種類(lèi)也不同。
但是,總體上這些葫蘆娃可以分為“胖娃”和“瘦娃”兩種。
所謂胖娃,他們的技能是“組合拳”。
例如:A 胖娃每次接到命令,就炒一盤(pán)魚(yú)香肉絲;B 胖娃每次接到命令,就炒一盤(pán)宮保雞丁。
所謂瘦娃,他們的技能是“一拳超人”。
例如:A 瘦娃每次接到命令,就切一刀,B 瘦娃每次接到命令,就翻一下鏟子。
Intel CPU 里,既有瘦娃也有胖娃,所以叫做“復(fù)雜指令集”——CISC。
ARM CPU 里,只有瘦娃,沒(méi)有胖娃,所以叫做“精簡(jiǎn)指令集”——RISC。
有人可能會(huì)疑惑:剛不是說(shuō) Intel 能干的事兒 ARM 全能干嗎?ARM 沒(méi)有胖娃怎么炒“魚(yú)香肉絲”?
很簡(jiǎn)單,一個(gè)胖娃做的事情,總能拆成 N 個(gè)瘦娃來(lái)做。
這些瘦娃切墩,那些瘦娃顛勺,最后炒出來(lái)還是個(gè)“魚(yú)香肉絲”。(我覺(jué)得這一點(diǎn)和馮·諾依曼的“元胞自動(dòng)機(jī)”所暗示的生物學(xué)原理有一種隱秘聯(lián)系)
你可能看出來(lái)了,使用精簡(jiǎn)指令集,雖然葫蘆娃干起活來(lái)比較直白,但是寫(xiě)程序的人類(lèi)就費(fèi)勁多了,還得把組合拳拆解成左手右手慢動(dòng)作,工作量大大的。
那,要“精簡(jiǎn)指令集”何用?
在“葫蘆娃”的世界里,有一個(gè) BUG,那就是——“食材”沒(méi)地方放。
咱們假設(shè),切一下肉需要 1 秒,但是從案板上拿起一塊肉就需要 3 秒。
這還沒(méi)完,案板才有多大啊,只能擺得下幾樣菜。如果要切的菜案板上沒(méi)有,就得去冰箱里取,這一來(lái)一回就需要 15 秒;
這還沒(méi)完,有些菜冰箱里也沒(méi)存,得下樓去小賣(mài)部買(mǎi),這么跑來(lái)跑去,少說(shuō)也得 5 分鐘;
這還沒(méi)完,有些菜小賣(mài)部也沒(méi)有,得去遠(yuǎn)處的農(nóng)貿(mào)市場(chǎng)買(mǎi),一來(lái)一回就得 1 天。
最夸張的是,我真的沒(méi)有在夸張:其實(shí)這些“食材”,就是 CPU 執(zhí)行計(jì)算時(shí)所需要的數(shù)據(jù)。
案板就是 CPU 的 L1 緩存,從這里取一次數(shù)據(jù)是執(zhí)行一次計(jì)算耗時(shí)的 3 倍;
冰箱就是 L2 緩存,取數(shù)據(jù)是計(jì)算耗時(shí)的 15 倍;
小賣(mài)部就是計(jì)算機(jī)的內(nèi)存,存取時(shí)間是計(jì)算耗時(shí)的 300 倍;
而農(nóng)貿(mào)市場(chǎng),就是計(jì)算機(jī)的 SSD 硬盤(pán),存取是計(jì)算速度的上萬(wàn)倍。
哎,歸根結(jié)底還是人類(lèi)技術(shù)太糙,搞出的存儲(chǔ)架構(gòu)比計(jì)算架構(gòu)運(yùn)轉(zhuǎn)慢得多,而且?guī)资赀^(guò)去了,二者差距不僅沒(méi)有縮小,還越拉越大。
也就是說(shuō),CPU 在運(yùn)行的時(shí)候,大部分時(shí)間不是在“做菜”,而是在“等人買(mǎi)菜”。
有這個(gè) BUG 存在,CISC(復(fù)雜指令集)的麻煩就來(lái)了。
在 CISC 架構(gòu)下,胖葫蘆娃只能按部就班干活兒,先看到需要蘿卜就讓人去冰箱里拿蘿卜,切完一看下一步需要木耳而冰箱里沒(méi)有,才差人去超市買(mǎi)。
這么一來(lái),該耽誤的時(shí)間全耽誤了,不該耽誤的時(shí)間也全耽誤了↓↓↓
而 RISC(精簡(jiǎn)指令集)架構(gòu)下,因?yàn)槭莺J娃是分工的,每個(gè)葫蘆娃只做一個(gè)動(dòng)作,所以他們都知道自己需要什么原材料,這樣他們每個(gè)人都能配個(gè)案板+冰箱,提前備好食材。
就算臨時(shí)要去買(mǎi)食材,也能盡早差人去買(mǎi),“不該耽誤的時(shí)間”就能不耽誤了↓↓↓
CISC 的計(jì)算過(guò)程更像壽司之神:“老師傅一人手搓”;
RISC 的計(jì)算過(guò)程更像富士康:“流水線萬(wàn)人協(xié)作”!
結(jié)論來(lái)了:ARM 的勝利,本質(zhì)上是工業(yè)大生產(chǎn)的勝利,是技術(shù)的勝利。哪怕重來(lái)一百次,ARM 都大概率能戰(zhàn)勝 Intel。
指令集就像是 CPU 的語(yǔ)言。
語(yǔ)言是個(gè)雙刃劍,它讓同種同族之間的協(xié)作變得順暢,也在不同種族之間建起高墻。
如果一個(gè)程序是為 A 指令集的芯片開(kāi)發(fā)的,哪怕 B 芯片的指令集哪怕只有微小的差異,程序運(yùn)行過(guò)程中都可能遇到“缺娃”的狀態(tài),導(dǎo)致崩潰。
所以,操著不同語(yǔ)言的芯片,沒(méi)辦法相互理解。
這也是芯片界“巴別塔”的故事。
正因?yàn)橛小鞍蛣e塔”,芯片之間的大壩才能建立。
當(dāng)年 Intel 豎起高墻,不讓 ARM 使用自己的指令集;
而后來(lái) ARM 同樣豎起高墻,不讓別人“免費(fèi)”使用自己的指令集。
只不過(guò) ARM 比較地道。它的墻矮了很多:
為了在 Intel 這只恐龍的腳下生存, ARM 架構(gòu)“給錢(qián)就賣(mài)”,要價(jià)確實(shí)不貴。
當(dāng)然這也造就了 ARM 市場(chǎng)占有率接近壟斷,但利潤(rùn)常年不高,還被賣(mài)來(lái)賣(mài)去的可憐兮兮形象。。。
反過(guò)來(lái),對(duì)于全球芯片制造商來(lái)說(shuō),這就非常劃算了,畢竟自己研發(fā)芯片架構(gòu)比購(gòu)買(mǎi)授權(quán)要花費(fèi)更多的人力物力。
于是買(mǎi)賣(mài)雙方都滿(mǎn)意,一切相安無(wú)事。
直到歷史的大河來(lái)了個(gè)180度大拐彎。
美國(guó)開(kāi)始了騷操作,放出十八道金牌,不允許 ARM 向中國(guó)出售它的先進(jìn)架構(gòu)設(shè)計(jì)。昔日的勇士,也(被逼)變成了惡龍。
當(dāng)時(shí)已經(jīng)有很多中國(guó)芯片廠商正在基于 ARM 架構(gòu)研發(fā)芯片,最著名的當(dāng)然就是華為的海思半導(dǎo)體。
這么一來(lái),“指令集”從本來(lái)給點(diǎn)錢(qián)就解決的小事兒,成了用錢(qián)解決不了的大事兒。
那就只剩華山一條路了:讓歷史再輪回一遍,用 ARM 干掉 Intel 的姿勢(shì),再把 ARM 干掉。
這個(gè)戰(zhàn)術(shù)翻譯過(guò)來(lái)就是:用一種新的指令集來(lái)代替 ARM,而且,這種指令集的圍墻要比 ARM 還低,最好低到——沒(méi)有圍墻,免費(fèi)使用。
啊。。。這樣的指令集存在嗎?
太存在了。
(五)指令集想要自由
話分兩頭,咱們現(xiàn)在就撥轉(zhuǎn)地球,回到那個(gè)熱血奔流的黃金時(shí)代的美國(guó)。
大衛(wèi)·帕特森來(lái)自一個(gè)極為普通美國(guó)家庭,1960 年代,他成了全家第一個(gè)考上大學(xué)的人,可謂全村的希望。
所以他的理想樸實(shí)無(wú)華——財(cái)務(wù)自由。
為此,他報(bào)了加州大學(xué)洛杉磯分校的數(shù)學(xué)系,準(zhǔn)備將來(lái)成為精算師,賺他個(gè)小目標(biāo)先。
可是他在大學(xué)里湊學(xué)分的時(shí)候,偶然上了一學(xué)期計(jì)算機(jī)課,然后熱淚盈眶地頓悟:
財(cái)務(wù)自由算什么,搞機(jī)才是主要的!
他的人生走上了不歸路。
1979 年,帕特森已經(jīng)是加州大學(xué)伯克利分校的計(jì)算機(jī)教授。他被外派到 DEC 公司,改進(jìn)他們 VAX 電腦的 VAX 處理器。
又出現(xiàn)了新詞,啥是 VAX 電腦?
這么說(shuō)吧,當(dāng)時(shí)在個(gè)人電腦領(lǐng)域,不是蘋(píng)果電腦風(fēng)生水起嘛,在商用電腦領(lǐng)域,那 VAX 可謂呼風(fēng)喚雨。
我們?cè)诹硪黄恼隆稌r(shí)代裂隙中的刺客》里,有提到 VAX 電腦的背景,大家可以去那兒了解。
總之,帕特森到那兒一上手,直接驚呆。
VAX 復(fù)雜指令集的“療效”,實(shí)際上遠(yuǎn)沒(méi)有廣告里說(shuō)的那么好。
本來(lái)“胖娃”(復(fù)雜指令)的出現(xiàn)就是要降低芯片使用的復(fù)雜性,可是“胖娃”太多了,要想用好它們,還得搞個(gè)“爺爺”來(lái)管理他們,也就是額外編寫(xiě)一組調(diào)度程序,叫做“微代碼”。
帕特森吐槽:為了“省事兒”又做了好多“費(fèi)事兒”的事兒,你這不是鬧么?
這么說(shuō)的話,反正都要寫(xiě)一堆代碼調(diào)度,那我干脆用最簡(jiǎn)單的“瘦娃”來(lái)組成 CPU 的指令,會(huì)不會(huì)總體上更省事兒呢?
回去之后,他四處拉贊助,竟然搞來(lái)了美國(guó)國(guó)防部高級(jí)研究計(jì)劃局,也就是大名鼎鼎的 DARPA 的經(jīng)費(fèi),投入精簡(jiǎn)指令集的研究。
1981 年,第一個(gè)研究性質(zhì)的 RISC 芯片被做出來(lái)了。
RISC 芯片僅僅用了 44420 個(gè)晶體管,32條指令,理論運(yùn)行速度就超過(guò)了晶體管數(shù)量多一倍的 VAX。(當(dāng)然實(shí)際速度沒(méi)這么快,主要原因是制造工藝比較粗糙。)
雖說(shuō)這個(gè)芯片主要供研究,沒(méi)裝在任何商用計(jì)算機(jī)里,但它無(wú)疑做了一道證明題:
RISC 確實(shí)是可以比 CSIC 更快的。
這里故事就接上了,舞臺(tái)追光轉(zhuǎn)到了大西洋彼岸,橡果看到了 RISC 論文,迅速把它商業(yè)化,做出了 ARM。
但在追光之外的加州大學(xué),RISC 的故事可沒(méi)有結(jié)束。
我們把進(jìn)度條直接向后拖,人影如蟻進(jìn)退,漫長(zhǎng)的故事里,終于有第一個(gè)中國(guó)人出場(chǎng)了。
譚章熹是北京人,清華畢業(yè)后去加州大學(xué)做博士,成為了帕特森的關(guān)門(mén)弟子。
2009 年時(shí),他負(fù)責(zé)帶著同學(xué)們研究第五代 RISC,也就是 RISC-V。
之所以要搞 RISC-V,是因?yàn)楫?dāng)時(shí)他們要做一個(gè)并行計(jì)算的研究,需要一款特殊的 CPU,市面上實(shí)在沒(méi)有現(xiàn)成的,只好自己做。
這就好像我想做個(gè)煎餅果子,但是買(mǎi)不到油條,我只好自己炸一根。。。
你看,RISC-V 最開(kāi)始真沒(méi)啥野心,就是個(gè)“油條”。
譚章熹要畢業(yè)了,直接把做了一半的 RISC 項(xiàng)目倒給了實(shí)驗(yàn)室的師弟安德魯·沃特曼和李允燮(他是韓國(guó)人)。
這哥倆一看,搓起了小手手,既然市面上流行的 CPU 都在吃“壟斷飯”,那不如來(lái)點(diǎn)兒狠的,跟時(shí)任實(shí)驗(yàn)室的老師阿薩諾維奇一商量:
直接把 RISC-V 指令集免費(fèi)開(kāi)源出去,誰(shuí)愛(ài)用誰(shuí)用,腫么樣?
你看到了沒(méi),在那一時(shí)刻,RISC-V 有意無(wú)意地復(fù)刻了 ARM 對(duì) Intel 的方法,就是我們剛才提到的“把圍墻變矮戰(zhàn)術(shù)”。
他們把這招做絕了,直接拆了圍墻——都免費(fèi)了,你還要啥自行車(chē)?
說(shuō)到這兒,我突然想起了當(dāng)年周鴻祎用免費(fèi)殺毒干翻一票收費(fèi)殺毒軟件的故事?!懊赓M(fèi)”這兩個(gè)字的殺傷力有多大,有時(shí)連當(dāng)事人都無(wú)法預(yù)料。。。
在 2014 年,美國(guó)集成電路峰會(huì)上一個(gè)不起眼的角落,上演了科技史上經(jīng)典的一幕。
RISC-V 的主創(chuàng)班底列隊(duì)整齊,擺了幾張紙板,笑吟吟地給每個(gè)路人發(fā)他們的徽章,小小的徽章上卻寫(xiě)著狂妄的口號(hào):
指令集想要自由?。↖nstruction sets want to be free!)
是啊,從 1971 年“指令集”的概念伴隨著第一顆 CPU(Intel 4004)的出現(xiàn),到 2014 年,已經(jīng)過(guò)去了 43 年。
漫長(zhǎng)的浮沉,城頭雖然變幻大王旗,可指令集這個(gè)“天子”一直被關(guān)在監(jiān)牢里,以此要挾向每一個(gè)“諸侯”聽(tīng)任調(diào)遣。
指令集想要自由。
多說(shuō)一句,RISC-V 的自由,不是那種“既不要錢(qián)也不管你”的自由,而是那種“不要錢(qián)還給你服務(wù)”的自由。
比如,它的指令集是像“樂(lè)高”一樣的。
不同的指令被打包在不同的“子指令集”中:
有能計(jì)算加減乘除的“整數(shù)計(jì)算”;
有能計(jì)算小數(shù)的“浮點(diǎn)計(jì)算”;
也有能計(jì)算圖形的“向量計(jì)算”;
也有能保證即使出現(xiàn)錯(cuò)誤程序還能繼續(xù)執(zhí)行的“原子化計(jì)算”。
每個(gè)“子指令集”就像一塊積木。
你可以用幾塊積木,也可以用幾十塊積木,豐儉由人。
你想要的 CPU 如果用不到某些指令,直接從芯片設(shè)計(jì)階段就能“尅掉了”,保證芯片出爐后能以最佳的效率燃燒,一個(gè)葫蘆娃都不浪費(fèi)。
而且,這些積木還是不斷改進(jìn)樣式的。例如,某種 AI 算法發(fā)展迅速,它用到的新指令也會(huì)被社區(qū)給“添油加醋”進(jìn)去。
你看,這正是開(kāi)源的精神所在。
如此說(shuō)來(lái),如果把 ARM 比作“老鼠”,那么 RISC-V 就更像“昆蟲(chóng)”,它們細(xì)小,奇形怪狀,種類(lèi)繁多,行動(dòng)迅速,無(wú)孔不入。
本來(lái)的無(wú)心之舉,卻踩中了電門(mén),全世界的程序員蜂擁而至。RISC-V 團(tuán)隊(duì)這才開(kāi)始認(rèn)真起來(lái)。
2015 年,他們?cè)诿绹?guó)成立了“RISC-V 基金會(huì)”,正經(jīng)八百地推廣這個(gè)“自由指令集”。
從那一刻起,歷史陡然加速。
雖然此時(shí)譚章熹已經(jīng)離開(kāi) RISC-V 隊(duì)伍去創(chuàng)業(yè)了,但我之所以特別強(qiáng)調(diào)他的貢獻(xiàn),是想告訴淺友們:這個(gè)有可能解放全世界指令集的架構(gòu),在一開(kāi)始,就是有中國(guó)人的硬核智慧推動(dòng)的。
從各種角度看,我們?cè)谑褂盟倪^(guò)程中,不僅不用有“白吃白拿”的愧疚,反而可以”適度驕傲“。
說(shuō)到這兒,我們終于能把地球儀轉(zhuǎn)回來(lái),看看我們腳下的這片土地,中國(guó)人綿延幾十年的”CPU 焦慮“。
(六)“CPU 焦慮”和兩道裂縫
你看這張圖,右邊是帕特森,左邊這位老哥是約翰·軒尼詩(shī)。
1980 年他倆在一次學(xué)術(shù)會(huì)議上見(jiàn)面,馬上私定終身成了一輩子的好基友。
在當(dāng)時(shí)的學(xué)界,翻遍各位大佬,只有他倆力挺精簡(jiǎn)指令集理念,總在學(xué)術(shù)會(huì)議上舌戰(zhàn)群儒。
不過(guò)他倆不在一個(gè)學(xué)校,常年兩地分居,沒(méi)辦法合作同一個(gè)項(xiàng)目。
1981 年,軒尼詩(shī)在自己的斯坦福大學(xué)獨(dú)立創(chuàng)建了一個(gè)獨(dú)立的精簡(jiǎn)指令集 MIPS(Microprocessor without Interlocked Pipelined Stages)。
MIPS 可能有的淺友不熟悉,但我告訴你,1994 年索尼推出的 PlayStation 用的正是 MIPS 的芯片。
好多美好的童年記憶可都是 MIPS 一幀一幀給你算出來(lái)的呀。是不是又欠一張票錢(qián)?
而且 MIPS 和我們中國(guó)的緣分不止于此。
在 2001 年時(shí),有一群人把 MIPS 架構(gòu)作為“援軍”引入中國(guó),他們就是中科院背景的龍芯。
在當(dāng)時(shí),龍芯肩負(fù)的使命是四個(gè)字:自主可控。
CPU 架構(gòu)一旦確定,極難轉(zhuǎn)向,所以龍芯創(chuàng)業(yè)時(shí)也面臨當(dāng)年橡果一樣的煩惱,要非常謹(jǐn)慎地選擇指令集。
選誰(shuí)呢?
以 Intel 的尿性,肯定不會(huì)給中國(guó)人自主可控的架構(gòu)授權(quán)。它歷史上就沒(méi)給過(guò),而且還過(guò)河拆橋?qū)嵙舆^(guò)日本,不足與謀;
當(dāng)時(shí) ARM 還前途未卜,蝸居在恐龍腳下的“功能機(jī)世界”,沒(méi)有王者之氣;
只有 MIPS 最為優(yōu)美簡(jiǎn)潔,人氣躥升也很快,四舍五入最符合中科院的要求。
你問(wèn)為啥不用 RISC 指令集?因?yàn)槟菚r(shí)候 RISC 早期版本都在學(xué)校的實(shí)驗(yàn)室里呢,沒(méi)有開(kāi)放給人用。。。
這么說(shuō)的話,龍芯不是來(lái)晚了,而是來(lái)早了。
但命運(yùn)不是電影,誰(shuí)都沒(méi)有主角光環(huán),沒(méi)人關(guān)心你的早晚。
由于之前提到的“葫蘆娃的巴別塔問(wèn)題”,MIPS 和 x86 在操作系統(tǒng)和軟件生態(tài)上都無(wú)法適配,獨(dú)立發(fā)展生態(tài)困難重重。
他們做出的 CPU 并未廣泛商用,尤其沒(méi)有打入民用市場(chǎng),所以完全沒(méi)有撼動(dòng) Intel 的地位。
而且不久后,連 MIPS 自己也開(kāi)始式微。
“CPU 焦慮”仍在那里,不同的人開(kāi)始紛紛求索,幾乎試遍了所有道路。
正如大家所知道的,這些團(tuán)隊(duì)大多有高校、研究院等學(xué)術(shù)背景。例如海光和兆芯輾轉(zhuǎn)拿到了 x86 架構(gòu)的授權(quán),嘗試生產(chǎn)兼容 x86 的芯片;例如飛騰,后來(lái)拿到了 ARM 的授權(quán),生產(chǎn) ARM 芯片。
雖然這些 CPU 都存在缺點(diǎn)、妥協(xié)和短板,但“有”和“沒(méi)有”的區(qū)別是巨大的。
很大程度上,它們緩解了中國(guó)人的“CPU 焦慮”;而他們所培養(yǎng)出來(lái)的老師傅,也成為了日后中國(guó)高性能計(jì)算芯片設(shè)計(jì)的中堅(jiān)力量。
就在大家埋頭探索,淚眼婆娑苦悶至極時(shí),RISC-V 所代表的“自由指令集”思潮開(kāi)始在中國(guó)萌動(dòng)。
這種震撼,不亞于“十月革命的一聲炮響”。
2014 年,伴隨那次廣場(chǎng)上“指令集想要自由”的呼喊,RISC-V 研究團(tuán)隊(duì)還放出了同名論文,那就是如今被奉為經(jīng)典的《Instruction Sets Should Be Free: The Case For RISC-V》(《指令集應(yīng)該自由:以 RISC-V 為例》)
加州大學(xué)的留學(xué)生錢(qián)學(xué)海馬上決定把大洋彼岸的吶喊介紹給中國(guó)人。
帕特森很重視,特地讓譚章熹抽出時(shí)間來(lái)把關(guān),所以這篇文章的中文翻譯質(zhì)量極高。
錢(qián)學(xué)海把文章發(fā)給了中科院計(jì)算所的研究員包云崗。包云崗?fù)扑]到《中國(guó)計(jì)算機(jī)學(xué)會(huì)通訊》,在2015年2月發(fā)表。
當(dāng)時(shí),這個(gè)文章沒(méi)有引起什么轟動(dòng),但包云崗的內(nèi)心卻“轟動(dòng)”了。他決心把生命奉獻(xiàn)給這個(gè)自由指令集,成為了中國(guó) RISC-V 布道的先驅(qū)。
在他和很多中科院研究員的奔走呼號(hào)下,中國(guó) CPU 的核心玩家都關(guān)注到了 RISC-V 的機(jī)會(huì)。
現(xiàn)在回望,這些研究員們就是“堤壩上的一條裂縫”。
與其說(shuō)歷史選擇了他們,不如說(shuō)他們選擇了歷史。中國(guó)人的 CPU 焦慮和 RISC-V 的開(kāi)源優(yōu)勢(shì)客觀地?cái)[在這里,強(qiáng)大的壓強(qiáng)必然會(huì)讓它向中國(guó)滲透。
他們只是在正確的時(shí)間站在了正確的位置。
2019年,帕特森來(lái)到上海開(kāi)會(huì),給大家介紹 RISC-V。
可很多人一聽(tīng)他的基金會(huì)總部在美國(guó),馬上皺眉:“謝謝,不敢用,算了吧?!?/p>
帕特森說(shuō):“行,你們等著?!?/p>
他可不是要報(bào)復(fù)誰(shuí),而是回家之后馬上把 RISC-V 基金會(huì)的總部遷出美國(guó),移到瑞士。
而且,就在 ARM 被禁運(yùn)一個(gè)月后,他“逆勢(shì)”宣布和清華-伯克利深圳學(xué)院(TBSI)合作,建立了一個(gè) RISC-V 國(guó)際開(kāi)源實(shí)驗(yàn)室,也就是“RIOS 圖靈實(shí)驗(yàn)室”。
在刺骨寒風(fēng)中,中國(guó)對(duì)于 RISC-V 的技術(shù)使用和學(xué)術(shù)交流暢通無(wú)阻,如爝火不熄。
你看,帕特森雖然是美國(guó)人,但他沒(méi)有不加思考地就去“代表”美國(guó)的利益。作為一個(gè)科學(xué)家,他思考的是用什么方式可以推動(dòng)全人類(lèi)的進(jìn)步。
帕特森和 RISC-V 核心團(tuán)隊(duì),成為了堤壩上的“又一個(gè)裂縫”。
同樣,與其說(shuō)歷史選擇了帕特森,不如說(shuō)他選擇了歷史。
“自由指令集”的思潮從2010年誕生,如果它沒(méi)有順應(yīng)現(xiàn)實(shí)世界的利益博弈,又怎能頑強(qiáng)地長(zhǎng)大?怎會(huì)在無(wú)數(shù)“CPU Guy”的心里生根發(fā)芽?
正如和一位中國(guó)創(chuàng)業(yè)者交談時(shí),帕特森說(shuō)的那樣:
只要 RISC-V 生態(tài)能做起來(lái),我們不在乎是誰(shuí)做成這件事。
(七)舊時(shí)代的黃昏和“趕夜路的人”
當(dāng)一個(gè)時(shí)代的基本幻想枯竭后,這個(gè)時(shí)代就被視為結(jié)束了。
2018,我愿稱(chēng)之為“舊世界的最后一年”。
那一年是樂(lè)觀的。
有大批學(xué)者把“逆全球化”視為短期陣痛,忍忍就過(guò)去了,接著奏樂(lè)接著舞。
那一年是嘈雜的。
很多投資人像甩撲克一樣把鈔票甩在 AI、網(wǎng)絡(luò)安全、企業(yè)數(shù)字化等各個(gè)賽道;
互聯(lián)網(wǎng)大廠也判斷云計(jì)算、AI、大數(shù)據(jù)帶來(lái)的技術(shù)紅利會(huì)像一劑猛藥,把中國(guó)經(jīng)濟(jì)頂上新臺(tái)階。于是他們冒險(xiǎn)殺入傳統(tǒng)行業(yè),以至于選擇性地忽略成本控制。
歷史證明,沒(méi)有誰(shuí)的野心能超過(guò)時(shí)代的承載,大多努力并不會(huì)被命運(yùn)獎(jiǎng)賞。
然而,有少數(shù)例外。
2018 年,阿里巴巴宣布進(jìn)軍 IoT 賽道,同時(shí)收購(gòu)中天微,重組為“平頭哥半導(dǎo)體”,開(kāi)始 RISC-V 架構(gòu)芯片的研發(fā)。
第二年,他們拿出了一款性能非常高的,基于 RISC-V 的芯片設(shè)計(jì),玄鐵 C910。
現(xiàn)在回望,這是 RISC-V 在中國(guó)的第一聲驚雷。
之后不久,世界隱隱的疼痛突然變成了公開(kāi)的撕裂。
人們腦海中被陡然刻下鋼?。?/p>
中國(guó)人要想造自己的芯片,“自由指令集”哪怕不是唯一的出路,也是最有希望的一條出路。
你可以說(shuō)是“先見(jiàn)之明”,也可以說(shuō)是“歪打正著”。反正這時(shí),在 RISC-V 上先走一步的阿里手里已經(jīng)有東西了。
不過(guò)當(dāng)時(shí) RISC-V 的 CPU 主要用在 IoT 設(shè)備里,人們普遍不覺(jué)得它能放在“高性能計(jì)算”場(chǎng)景(也就是通常所說(shuō)的電腦或者服務(wù)器)里。
舉幾個(gè)栗子,玄鐵的用戶(hù)們,有人做工業(yè)控制芯片,有人做汽車(chē)控制器,有人做5G基帶,有人做存儲(chǔ)控制器,有人做網(wǎng)絡(luò)安全設(shè)備。
普通人基本不想花精力去了解這些芯片。它們沒(méi)有華麗的故事,甚至長(zhǎng)得灰頭土臉。
但這些芯片的總數(shù)極大,遍布賽博世界的每一個(gè)角落。日復(fù)一日,如昆蟲(chóng)般通過(guò)簡(jiǎn)單的工作換取簡(jiǎn)單的生存。
這些芯片本來(lái)用的指令集五花八門(mén),也沒(méi)人特別在意。
但美國(guó)禁令推出后,大家腦袋里的那根弦都被撥動(dòng)了。很多廠家主動(dòng)去詢(xún)問(wèn),能不能把下一代產(chǎn)品里的芯片替換為 RISC-V 架構(gòu),不僅降低成本,也及早規(guī)避風(fēng)險(xiǎn)。
給你看個(gè)數(shù)據(jù)感受下:
到 2021 年底時(shí),全球 RISC-V 指令集的芯片累積賣(mài)出了100億片。要知道,ARM 從 0 到 100 億用了 15 年,RISC-V 只用了 7 年。
而在 100 億片中,基于玄鐵的就有25億顆,占到了四分之一。
但是,如果蟲(chóng)子一直是蟲(chóng)子,即便數(shù)量再多,也一直會(huì)在生態(tài)的底部,和“性感”沒(méi)一毛錢(qián)關(guān)系。
要打破“CPU 焦慮”,RISC-V 終究要去承擔(dān)更重的“高性能計(jì)算”任務(wù)!
難度在哪呢??jī)蓚€(gè)字:生態(tài)。
大家普遍認(rèn)同,如果 RISC-V 芯片想進(jìn)入高端生態(tài),就得摸著 ARM 過(guò)河:先進(jìn)手機(jī),再進(jìn)服務(wù)器,再進(jìn)桌面電腦(PC)。
這條路想走通,必須得到這些平臺(tái)的主流操作系統(tǒng)適配。
所以,第一步要突破的就是:讓原本只跟 ARM 玩兒的 Android 也能支持 RISC-V。
之前我和平頭哥的同事聊天,他們提到一段“單戀”往事:
2020 年,為了推動(dòng) Android 兼容 RISC-V,團(tuán)隊(duì)追著谷歌屁股后面大獻(xiàn)殷勤,但對(duì)方表現(xiàn)冷淡。
谷歌高冷也是有原因的。畢竟,有姐妹受過(guò)“情傷”。
在 90 年代,微軟看 MIPS 勢(shì)頭正勁,于是主動(dòng)花很大力氣讓 Windows 適配了 MIPS,然后,就沒(méi)有然后了。
谷歌可不想再當(dāng)冤種。。。
有趣的是,時(shí)代不同了,Android 和 Windows 也不一樣——Android 的代碼本身就是開(kāi)源的。
也就是說(shuō),理論上平頭哥的老師傅不需要本家許可,就可以根據(jù)它的代碼寫(xiě)出”野生“的適配程序。
正所謂,我喜歡你,跟你有什么關(guān)系?
正所謂,山不過(guò)來(lái),我就過(guò)去!
那兩年,無(wú)數(shù)頂尖程序員用巨大的熱情和心力,寫(xiě)出累計(jì)十多萬(wàn)行的代碼補(bǔ)丁,就這樣源源不斷地發(fā)布出來(lái),不問(wèn)收獲,無(wú)問(wèn)西東。
在一個(gè)不被官方承認(rèn)的地方下這么大的功夫是一種賭博。像極了癡情男子每天都送女孩一車(chē)花,連吃瓜群眾都覺(jué)得他腦袋秀逗。
但這樣的”癡情“,也只是因?yàn)槿齻€(gè)字——不甘心!
大量的“野生補(bǔ)丁”持續(xù)放出來(lái),谷歌終于看到了社區(qū)的誠(chéng)意。
況且美國(guó)持續(xù)加碼芯片管控,RISC-V 熱度空前,谷歌心里也打鼓,要是再端著,后面別高攀不起,決定緊急投入重兵。
2022 年 12 月,在 Android 12 上開(kāi)始原生適配 RISC-V。
歷史再次踩下了加速踏板,系統(tǒng)之王“Linux”開(kāi)始跟進(jìn)。
Debian、 Fedora 這種老牌社區(qū)的 Linux 系統(tǒng)開(kāi)始支持 RISC-V,中國(guó)的開(kāi)源云上操作系統(tǒng) openEuler 和 OpenAnolis 也陸續(xù)支持了 RISC-V,Ubuntu 和 openKylin 這樣傾向于個(gè)人場(chǎng)景的 Linux 版本也支持了 RISC-V。
2021 年,達(dá)摩院宣布把“玄鐵架構(gòu)”主要的 CPU 家族開(kāi)源,所有人都可以做一個(gè)和玄鐵 C910 一樣的 CPU,而不用給阿里付費(fèi)。
同樣是 2021 年,RISC-V 最早的布道者包云崗也宣布,帶領(lǐng)中科院大學(xué)的團(tuán)隊(duì)推出開(kāi)源的 RISC-V 處理器架構(gòu)“香山”,同樣可以免費(fèi)使用。
與此同時(shí),華為、騰訊、小米、百度等等大廠也分別宣布支持 RISC-V 生態(tài),一眾創(chuàng)業(yè)公司也 All in 在 RISC-V 生態(tài)上。
2023 年 8 月,中國(guó)電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會(huì)牽頭組建了“RISC-V 工委會(huì)”,把大大小小各路玩家都集結(jié)起來(lái),開(kāi)始嚴(yán)肅地制定產(chǎn)業(yè)標(biāo)準(zhǔn)、保護(hù)知識(shí)產(chǎn)權(quán)保護(hù),培養(yǎng)人才。
雖然 RISC-V 在中國(guó)的生態(tài)結(jié)構(gòu)剛剛成型,但是“RISC-V 大有希望”的信念卻在人們心中越烙越深。
人們沒(méi)時(shí)間等待瓜熟蒂落,必須盡快嘗試向高性能計(jì)算的兩座高峰——服務(wù)器和桌面電腦——發(fā)起沖鋒。
(八)庶民的勝利
時(shí)間終于來(lái)到了 2024,給你介紹一個(gè)新朋友:如意 Book。
看上去,這是一個(gè)平平無(wú)奇的筆記本,但顯然不是,它是一個(gè)“透明筆記本”。
它的芯片是阿里的玄鐵 C910,操作系統(tǒng)是華為的 OpenEuler,最上面能跑 LibreOffice 這種開(kāi)源軟件。
也就是說(shuō),從下到上,關(guān)鍵部位的代碼都是可見(jiàn)的,這樣一臺(tái)完整開(kāi)源的電腦,在人類(lèi)科技史上是首次出現(xiàn)。
如意 BOOK 是中科院軟件所和達(dá)摩院合作造出來(lái)的,它可不僅僅是能點(diǎn)亮這么簡(jiǎn)單,它還配備了 GPU、VPU、TEE 可信計(jì)算模塊等等,也就是說(shuō),現(xiàn)在頂尖電腦的能力它都俱全。
這臺(tái)電腦當(dāng)然。。。不會(huì)有什么銷(xiāo)量,但它的意義并不在于銷(xiāo)量。
它標(biāo)志著開(kāi)源軟硬件的“全鏈路跑通”。
有了這個(gè)“鏈路”,七國(guó)八制的工具軟件、操作系統(tǒng),還有千萬(wàn)程序員就能附著在上面,尋找自己的位置,成為 RISC-V 指令集自由路上的一塊磚石。
2024 年,達(dá)摩院順勢(shì)推動(dòng)成立了一個(gè)“無(wú)劍聯(lián)盟”。
看看聯(lián)盟的首批參加者,會(huì)發(fā)現(xiàn)不少玄機(jī)。
Arteris 做的是 SoC 芯片里的數(shù)據(jù)互聯(lián)技術(shù);
Imagination 做的是 GPU 設(shè)計(jì);
新思科技是頂尖的芯片設(shè)計(jì)仿真(EDA)軟件開(kāi)發(fā)商;
芯昇科技是中國(guó)移動(dòng)旗下的物聯(lián)網(wǎng)芯片生產(chǎn)商;
電信研究院是做通訊技術(shù)和數(shù)據(jù)中心的。
注意,這里面 Arteris 和新思科技提供的都是芯片工業(yè)中有可能“卡脖子”的關(guān)鍵工具技術(shù)!
他們的全力支持,不僅意味著設(shè)計(jì)出一個(gè) RISC-V 的 CPU 的成本和時(shí)間將大幅下降,也暗示著 RISC-V 芯片設(shè)計(jì)全鏈路目前是完全通暢的。
(這條路會(huì)不會(huì)一直通暢,會(huì)以什么方式“不通暢”,有什么辦法應(yīng)對(duì),那是未來(lái)的問(wèn)題,但重要的是,現(xiàn)在是完全通暢的?。?/p>
所以,在這個(gè)時(shí)間點(diǎn)上,已經(jīng)有很多先行者決定趁著晨光熹微趕緊出發(fā)。
例如比特大陸詹克團(tuán)創(chuàng)辦的算能科技,字節(jié)跳動(dòng)前 RISC 負(fù)責(zé)人盧山創(chuàng)辦的藍(lán)芯算力。
甚至還有個(gè)有趣的騷操作,平頭哥把自己玄鐵芯片的負(fù)責(zé)人孟建熠也給“推”了出去,獨(dú)立創(chuàng)辦了知合計(jì)算。
這些大佬的目標(biāo)基本相同:把 RISC-V 架構(gòu)用在服務(wù)器里的高性能 CPU 上,嘗試有朝一日對(duì) Intel 和 ARM 進(jìn)行替代。
歷史再次快進(jìn),有些公司的芯片已經(jīng)開(kāi)始交付。
比如算能科技,它的 RISC-V 服務(wù)器 CPU SG2042 已經(jīng)獲得了第一批客戶(hù),這些客戶(hù)來(lái)自運(yùn)營(yíng)商和高校。
公開(kāi)信息顯示,山東大學(xué)已采購(gòu)了 1024 片算能 CPU 用于仿真計(jì)算。
雖然人們都知道 RISC-V 架構(gòu)的服務(wù)器 CPU早晚會(huì)出現(xiàn),但當(dāng)這枚芯片真實(shí)呈現(xiàn)在眼前時(shí),仍讓人心潮澎湃。
它就像烏云縫隙里灑下的一道光芒。
在無(wú)數(shù) RISC-V CPU 被制造出來(lái)的同時(shí),還有一個(gè)更閃耀的機(jī)會(huì)出現(xiàn),那就是——RISC-V 可以做出“AI 芯片”。
你可能會(huì)說(shuō):AI 芯片和 CPU 的架構(gòu)不同??!為啥 CPU 的指令集能做 AI 芯片?
不要忘了,RISC-V 指令集是“樂(lè)高積木”,它可以根據(jù)需要?jiǎng)h減指令集,如果要做 AI 芯片,只要把指令集限制在 AI 芯片所需的范圍內(nèi)就好了!
達(dá)摩院 RISC-V 團(tuán)隊(duì)的技術(shù)專(zhuān)家李春強(qiáng)說(shuō),他們這幫老師傅們都認(rèn)為 RISC-V 就是為 AI 而生的架構(gòu),正在編寫(xiě)一個(gè)名叫“Matrix”的指令集模塊,專(zhuān)門(mén)用來(lái)做 RISC-V 的 AI 計(jì)算。
你可能還不太能想象這是一種什么芯片,我給你舉兩個(gè)例子吧:
1、現(xiàn)在很多廠商都想把大模型裝進(jìn)手機(jī)里,可是運(yùn)轉(zhuǎn)一個(gè)大模型要耗費(fèi)很大的算力。
它們需要一個(gè)非常高效的專(zhuān)用 AI 芯片來(lái)跑這個(gè)模型——RISC-V 就是絕佳的候選人。
2、在汽車(chē)的自動(dòng)駕駛系統(tǒng)里,需要 AI 芯片來(lái)分析路況,做出駕駛決策。
現(xiàn)在這些芯片的主要玩家是英偉達(dá)和高通,但 RISC-V 同樣可以勝任,而且可能更適合。
這并非空談,已經(jīng)有先驅(qū)把這種 AI 芯片做出來(lái)了:
華米推出的“黃山 2S”芯片,就是放在手表里的 AI 芯片,可以加速 UI 動(dòng)效,也可以精準(zhǔn)識(shí)別“房顫”之類(lèi)的身體指標(biāo)異常;
嘉楠科技推出的“K230”芯片,可以放在機(jī)器人體內(nèi),作為它的“視神經(jīng)”。
這昭示了某種兇猛的未來(lái)。
2017 年,帕特森和軒尼詩(shī)因?yàn)閷?duì) RISC 和計(jì)算機(jī)體系架構(gòu)的貢獻(xiàn)而獲得圖靈獎(jiǎng),共同成為計(jì)算機(jī)歷史上不可磨滅的一座紀(jì)念碑。
在他們的獲獎(jiǎng)演講上,兩位年逾古稀的計(jì)算機(jī)老炮兒大聲疾呼:
未來(lái)的戰(zhàn)場(chǎng)根本不在“芯片”,而在“計(jì)算”。
他們的意思是:
1、現(xiàn)有的芯片、編譯器、編程語(yǔ)言和軟件組成的“計(jì)算框架”是在長(zhǎng)期發(fā)展中演化出來(lái)的結(jié)果,各層雖然能協(xié)作,但最多算“湊合過(guò)日子”,主要表現(xiàn)就是——計(jì)算效率極其低下。
2、摩爾定律已經(jīng)失效,在現(xiàn)有框架下,做出再好的 RISC-V 芯片也只能把最終計(jì)算效率提升一點(diǎn);
3、如果能做出從“芯片架構(gòu)”到“編譯器”到“編程語(yǔ)言”到“編程規(guī)范”的統(tǒng)一垂直架構(gòu),則可以把現(xiàn)有計(jì)算效率提升幾萬(wàn)倍。
而想象中的“新計(jì)算”,只有 RISC-V 這種“自由指令集”才能支持。
如此說(shuō)來(lái),你我正在見(jiàn)證的,也許不是指令集的“改朝換代+1”,而是人類(lèi)歷史中一場(chǎng)前所未見(jiàn)的“計(jì)算黎明”。
回到我們的主題。
如果僅僅聚焦歷史局部,你會(huì)發(fā)現(xiàn)諸多“反差”:
帕特森和軒尼詩(shī)兩位大佬身為美國(guó)科學(xué)院院士,卻在不同時(shí)期幫助中國(guó)走過(guò)芯片進(jìn)步的關(guān)鍵一跳;
RISC 架構(gòu)最初研究,靠的是美國(guó)國(guó)防部的預(yù)算,它如今卻成為了中國(guó)突破技術(shù)封鎖的有力武器。
為什么?
我再次提醒你:不要“活在當(dāng)下”。
順歷史長(zhǎng)河漂流下來(lái),結(jié)論再明顯不過(guò):技術(shù)的發(fā)展從來(lái)與國(guó)界無(wú)關(guān)。
如果有人非要在國(guó)境線上用精心建立起來(lái)的堤壩來(lái)阻擋技術(shù)的流動(dòng),那么可以想見(jiàn),它的崩潰可能在一瞬間。
恐龍轟然倒下,身體漸漸冷去;但整個(gè)地球的生命,正在蓬勃。
指令集的自由,正如庶民的勝利。