前幾天小棗君給大家介紹了開源基站O-RAN。

今天小棗君又要給大家介紹一個開源的東西,那就是現在半導體行業的網紅、被很多人稱之為「開源晶元」的RISC-V。

說到晶元,自從中興被美國禁運事件起,國人對晶元的關注度被提升到前所未有的高度。似乎一夜之間,所有人都知道了晶元的重要性,體會到「缺芯」會導致多麼嚴重的後果。

今年,華為又被美國政府盯上,列入了實體名單,再次引發全國範圍對晶元自主研發能力的關注和討論。

內外因的綜合作用下,國家重點加強了對晶元領域的投資,越來越多的企業開始重視對晶元研發的投入。

而RISC-V,在這個關鍵節點,將很可能發揮非常關鍵的作用。

究竟什麼是RISC-V?

RISC-V,一般被念做:risk five。V,就是羅馬數字5。

很多人提到RISC-V,都會說它是開源晶元。其實這種說法是不對的。準確來說,RISC-V是一個基於「精簡指令集(RISC)」原則的開源指令集架構。

別怕!我可以通俗地解釋一下!——

指令集,對於CPU來說,就是介於軟體和底層硬體之間的一套程序指令的合集。指令集存儲於CPU內部,引導CPU進行運算,並幫助CPU更高效地運行。

PC電腦裡面的CPU晶元(中央處理器)

我們現在常用的台式機電腦或伺服器,使用的主要是英特爾和AMD公司的CPU。這類CPU使用的指令集,屬於「CISC複雜指令集」。CISC,就是Complex Instruction Set Computer(複雜指令集計算機)。

一款CPU支持的指令集,可以有很多種。

早期計算機的CPU,都是基於CISC架構的。

當時編譯器的技術並不純熟,程序都會直接以機器碼或是組合語言寫成,為了減少程序的設計時間,逐漸開發出單一指令,複雜操作的程序代碼。設計師只需寫下簡單的指令,再交給CPU去執行。

但是後來有人發現,整個指令集中,只有約20%的指令常常會被使用到,大約佔了整個程序的80%;剩餘80%的指令,只佔了整個程序的20%。(典型的二八原則)

於是,1979年美國加州大學伯克利分校的David Patterson教授提出了RISC的想法,主張硬體應該專心加速常用的指令,較為複雜的指令則利用常用的指令去組合。

RISC,就是Reduced Instruction Set Computer,精簡指令集計算機。

簡單來說,CISC任務處理能力強, 適合桌面電腦和伺服器。但高性能也帶來高功耗的問題。

而RISC通過精簡CISC指令種類,格式,簡化定址方式,達到省電高效的效果,適合手機、平板、數碼相機等攜帶型電子產品或物聯網產品。

上個世紀80年代,ARM公司就是基於RISC架構開始做自己的晶元,最終一步一步崛起,戰勝了英特爾,成為現在的移動晶元之王。如今,包括華為麒麟、高通驍龍在內的大部分手機終端和物聯網設備晶元,都是基於ARM的架構設計。

注意,我說的是ARM的架構,而不是ARM的晶元產品。

ARM這家公司的商業模式很特別。它做的是晶元的架構設計,相當於畫工程圖紙,然後把圖紙賣給各大晶元製造公司,例如華為。這些公司基於這個原始圖紙,進行修改,最終設計自己想要的晶元,交付晶元工廠(例如台積電)去生產出來。

當然了,ARM的圖紙並不是免費的。不僅不免費,而且價格也非常昂貴。

根據網上的資料顯示,ARM的授權費從幾十萬美元到幾百上千萬美元不等。法國有一家晶元創業公司接受媒體採訪時曾說,他們如果使用ARM架構,要花掉1500萬美元的授權費。(這個回答後來遭到ARM的否認,不管怎麼說,反正不便宜。)

現如今,隨著5G、物聯網、人工智慧等技術的蓬勃發展,越來越多的企業開始生產和製造服務於各個垂直行業的終端和模組。

這也就意味著,越來越多的企業要被迫接受ARM或其它晶元巨頭的「盤剝」。

大企業還好說,交就交唄,但對於很多中小型企業甚至初創企業來說,這幾乎就是徹底關閉了前進的大門。

根據歷史經驗,每當這種時候,就會有人勇敢地站出來:

2010年,加州大學伯克利分校的一個研究團隊正在準備啟動一個新項目。在為新項目選擇指令集的時候,他們發現,x86指令集被Intel控制得死死的,ARM指令集的授權費又非常貴,MIPS、SPARC、PowerPC也存在知識產權問題。

在這種情況下,研究團隊毅然決定,從零開始,設計一套全新的指令集。

在外人看來,這是一件令人望而卻步的工作。但事實上,伯克利的研究團隊只召集了一個4人小組,用了3個月的時間,就完成了RISC-V的指令集開發。

雖然看似非常輕鬆,但其實是有前提的。RISC-V之所以是個V(Five),就是因為它之前已經有過I、II、III、IV。

負責帶隊研製這些RISC指令集的,不是別人,正是伯克利分校的David Patterson教授。往前翻翻這篇文章你就會發現,他就是RISC指令集的真正創始人。當年那篇正式提出精簡指令集設計思想的開創性論文——《精簡指令集計算機概述》,就是他和另一位名叫Ditzel的學者共同發表的。

David Patterson教授,後來獲得了圖靈獎

正是因為有相關的技術沉澱,伯克利分校的團隊才能在短期內做出了RISC-V。

第一代RISC-I處理器,早在1981年就已經做出來了。

RISC-V指令集非常精簡和靈活。它的第一個版本只包含了不到50條指令,可以用於實現一個具備定點運算和特權模式等基本功能的處理器。如果用戶需要的話,也可以根據自己的需求自定義新指令。

高校畢竟是高校,功利心沒有那麼重。再加上研究團隊本身確實也沒錢沒人去維護它。所以,在做出RISC-V指令集之後,研究團隊決定,將它徹底開放,使用BSD License開源協議。

BSD(Berkeley Software Distribution)開源協議是一個自由度非常大的協議,幾乎可以說是「為所欲為」。它允許使用者修改和重新發布開源代碼,也允許基於開源代碼開發商業軟體發布和銷售。

這就意味著,任何人都可以基於RISC-V指令集進行晶元設計和開發,然後拿去賣錢,而不需要支付授權費用。

這就很嗨了,大批公司開始加入對RISC-V的研究和二次開發之中。

短短几年的時間裡,包括谷歌、華為、IBM、鎂光、英偉達、高通、三星、西部數據等商業公司,以及加州大學伯克利分校、麻省理工學院、普林斯頓大學、ETH Zurich、印度理工學院、洛倫茲國家實驗室、新加坡南洋理工大學以及中科院計算所等學術機構,都紛紛加入RISC-V基金會。

目前,RISC-V基金會共有包括18家白金會員在內的235家會員單位(數據截止2019年7月10日)。這些會員單位中包含了半導體設計製造公司、系統集成商、設備製造商、軍工企業、科研機構、高校等各式各樣的組織,足以說明RISC-V的影響力在不斷擴大。

正如前文所說,RISC-V對於我們國家的晶元事業有著非常重要的意義。

長期以來,我們國家的晶元研發都受制於人。如果國內企業或科研機構能夠利用開源的RISC-V做出基本自主知識產權的晶元,或者培養出相應的生態環境,將大大有利於中國半導體行業進行彎道超車。

因此,包括中科院計算所、華為公司、阿里巴巴集團等在內的20多個國內企事業單位,選擇加入了RISC-V基金會。阿里還是其中的白金會員。

2018年7月,上海經信委出台了國內首個支持RISC-V的政策。10月,中國RISC-V產業聯盟成立。產品方面,中天微和華米科技先後發布了基於RISC-V指令集的處理器。

基於RISC-V開發的黃山1號(華米),全球可穿戴領域第一顆人工智慧晶元

我們的鄰居印度,對RISC-V的熱情更是高漲。在過去數年中,印度政府資助的處理器相關項目都開始向RISC-V靠攏。RISC-V已經成為了印度的國家指令集。

RISC-V的快速發展,給ARM這樣的企業帶來了很大的壓力。

ARM公司去年6月份就專門建了一個域名為riscv-basics.com的網站,裡面的內容主題為「設計系統晶元之前需要考慮的五件事」,從成本、生態系統、碎片化風險、安全性和設計保證上對RISC-V進行攻擊。

RISC-V這邊針鋒相對,建了一個域名為arm-basics.com的網站,以「設計系統晶元之前需要考慮的六件事」為題(在ARM列出的五項上,新增了社區支持),對 ARM 進行反擊。

幾天後,ARM的riscv-basics.com的網站悄然下線。

儘管RISC-V在這場短暫的「撕逼」中獲勝,但ARM提出的那五個方面的質疑,也不是完全沒有道理。尤其是碎片化問題,作為開源技術,RISC-V的確很難規避。

(碎片化:由於RISC-V允許用戶自己任意添加新的指令,但照此趨勢發展下去,可能以後很多晶元廠商開發出的RISC-V架構處理器儘管都歸屬於同一RISC-V體系,但在實際應用搭配時卻不能夠適配同樣版本的軟體。)

總而言之,RISC-V可以被看成是一個充滿生命力的年輕攪局者。寄希望於它能夠在短時間內和傳統巨頭抗衡,是不現實的。但是它舉起了打破壟斷的大旗,為沉悶的行業生態注入了新鮮的活力,值得我們為之叫好,也值得我們學習。

星星之火,可以燎原。或許這個攪局者,在將來真的能成為領導者,我們拭目以待吧。

更多精彩內容,歡迎掃碼關注我們公眾號:鮮棗課堂

【本文版權歸「鮮棗課堂」和小棗君所有,未經授權,請勿轉載】


推薦閱讀:
相关文章