論國產CPU指令集“江湖”:“門派”那么多,卻只有一家純自研
別一說起CPU,大家就只想起intel、AMD。其實國內目前已經(jīng)有N種CPU了,除了最典型的6家廠商(兆芯、海光、鯤鵬、飛騰、龍芯、申威)之外,還有阿里、中興,以及眾多的創(chuàng)業(yè)企業(yè)。
不過,雖然有N多家企業(yè),但研發(fā)的所有國產CPU,其采用的都是6種指令集,今天給大家說一說,這6種指令集的情況,看看誰才能真正的自主可控。
什么是指令集?
首先要給大家普及一點知識,何為指令集、何為架構,何為IP。
CPU運行的指令是0、1這種二進制數(shù),而所謂的指令集則是規(guī)定指令格式的東西,是軟件和硬件之間的接口“語言“,是交互的一種標準規(guī)范。我們用寫英文來形容的話,指令集是26個字母,芯片架構則是由這些字母組成的單詞,而IP則是由單詞組成的文章提綱。
如果獲得了永久的指令集授權,那么自己可以根據(jù)這26個字母,隨便組成單詞,再隨便寫成文章,自由度非常高。
如果只獲得架構授權,那么只能用固定好的單詞,來寫文章,不能自己組裝出新的單詞。
如果獲得了架構和IP,那么就只能按照對方給的提綱,在提綱的規(guī)定范圍內,用對方提供的單詞寫文章。
接下來我們說說國內CPU情況,看看哪些CPU是獲得的指令集授權,哪些是架構授權,哪里是IP授權,基本上就明白了。
國內CPU開發(fā)常用的指令集
如上圖所示,復雜指令集下有兆芯和海光,Z芯收購了VIA(威盛),而威盛曾獲得X86指令集授權,屬于繼承。而AMD將X86指令集,以及Zen1架構授權給了海光,海光可以基于X86自由研發(fā)芯片,就像拿到了26個字母一樣,隨便組單詞,寫文章。
再看簡單指令集中,則有4種,分別是ARM、MIPS、alpha、RISC-V。
ARM對國內沒有指令集授權,均是架構授權,比如V8架構授權給了華為鯤鵬、飛騰,鯤鵬、飛騰只能基于V8架構開發(fā)芯片,另外這兩家也擁有一些CPU、GPU核的IP授權。
V9架構,以及一些IP,則授權給了阿里、中興以及一些其它芯片創(chuàng)業(yè)企業(yè),大家可以基于V9架構研發(fā)芯片,但自由發(fā)揮空間不是特別大,畢竟只能使用規(guī)定的單詞。
龍芯早期用的是MIPS指令集,后來自己拓展了LoongISA指令集,去年龍芯干脆干了一票大的,拋棄掉MIPS,100%自研出了一個LoongArch指令集,相當于自己創(chuàng)造了一套26個字母出來,以后組單詞,寫文章,隨便自己玩。
申威早期用alpha指令集,后面自己拓展了SW64,但還是離不開alpha指令集,不過alpha很早就沒“媽”了(無實體公司運營),其實也是自由的。
最后說說RISC-V指令集,這是完全免費開源的,相當于26個字母對外公開,大家都可以拿這26個字母去組單詞,寫文章。
可見,真要說自主可控,龍芯應該是排第一的,另外RISC-V、申威、海光自由度都是非常高的。相對而言,自由度不那么高的,還是在ARM芯片這一塊,畢竟ARM只授權架構,還分V8、V9版本等,會不斷的升級,芯片廠商要持續(xù)使用ARM,得不斷的購買,隨時面臨斷供風險,且授權價格昂貴。
從MIPS到完全自主可控LoongArch
作為芯片產業(yè)最重要的芯片之一,CPU實現(xiàn)國產自主可控對支撐國家信息產業(yè)發(fā)展和保證信息安全都至關重要。2021年4月15日,堅持了20年自主研發(fā)的龍芯中科技術股份有限公司正式推出龍芯自主指令系統(tǒng)架構LoongArch,實現(xiàn)了歷史性的突破,讓中國的芯片從必然王國走到自由王國。
龍芯中科2010年脫胎于中科院計算所,很長一段時間,龍芯都是國內為數(shù)不多堅持CPU自研,走芯片自主可控路線的少數(shù)派。
公司創(chuàng)立的前五年,龍芯主攻工控市場,2015年龍芯CPU出貨幾萬顆,從無到萬顆用了五年。這并沒有動搖龍芯堅持自主可控的決心?!笆濉逼陂g,龍芯一方面繼續(xù)深耕工控市場,一方面開始進軍電子政務市場,出貨量不斷增加,2019年出貨幾十萬顆,從幾萬顆到幾十萬顆的出貨量用了四年。
2020年,龍芯自主CPU的出貨量又提升了一個數(shù)量級,達到了百萬級。龍芯中科董事長兼龍芯CPU首席科學家胡偉武告訴雷鋒網(wǎng):“龍芯經(jīng)過過去20年完成了技術補課,CPU不斷迭代,我覺得2022年我們的CPU能夠穩(wěn)定在每年幾百萬片的出貨量,我們也將逐步走向開放市場?!?/span>
完成技術補課準備走向開放市場的龍芯在2018年左右發(fā)現(xiàn),MIPS已經(jīng)不是他們最好的選擇?!褒埿具^去基于MIPS指令系統(tǒng)研制CPU并發(fā)展軟件生態(tài),經(jīng)過20年的努力,不管是軟件生態(tài)還是CPU核,龍芯的設計都超過MIPS公司。MIPS社區(qū)大概三分之二的維護工作都是龍芯在做,像瀏覽器、Java、媒體播放器等,MIPS公司主要是維護CPU內核和基礎編譯器。另外,MIPS有些技術特征很老了,MIPS頂層的64個指令槽基本上用完了,要加指令也比較難加了,像延遲槽也成為一個設計負擔。”胡偉武說。
這是龍芯放棄MIPS的內因,外因是MIPS的所有權一直在變化。
“那時候我想明白了一個道理,采用授權指令系統(tǒng)可以研制產品,但不可能形成自主產業(yè)生態(tài),就像中國人可以用英文寫文章,但不可能基于英文形成民族文化。。于是在內因和外因的共同作用下,我們決定自主開發(fā)一套指令集架構?!焙鷤ノ浔硎?。
國產CPU突破的另一條出路
中科院計算所等機構用AI技術設計出了世界上首個無人工干預、全自動生成的CPU芯片——啟蒙1號。相關論文已于6月27日發(fā)布。論文名稱:“Pushing the Limits of Machine Design: Automated CPU Design with AI”《突破機器設計的極限:利用人工智能進行自動化 CPU 設計》
該論文詳細介紹了研究人員在 5 小時內設計出新型工業(yè)級 RISC-V CPU 的工作。據(jù)稱,這一人工智能自動化的壯舉比人類團隊完成類似 CPU 設計的速度快約 1000 倍。這顆完全由AI設計的32位RISC-V CPU比目前GPT-4所能設計的電路規(guī)模大了4000倍,性能堪比Intel 80486SX CPU。
中國研究團隊的目標是回答機器是否可以像人類一樣設計芯片的問題。該團隊認為,早期的人工智能設計相對較小或范圍有限。因此,為了測試人工智能設計的邊界,研究人員認為他們會嘗試讓人工智能自動設計 RISC-V CPU。
此類項目通常從一段時間的機器學習開始。訓練包括觀察一系列 CPU 輸入和輸出。CPU的設計僅來自于外部輸入輸出的觀察,而不是正式的程序代碼??茖W家們從這些I/O中生成了一個二進制推測圖(BSD),并利用基于蒙特卡羅的擴展和布爾函數(shù)的原理來提高基于人工智能的CPU設計的準確性和效率。因此,科學家們解釋說,CPU 設計是“僅根據(jù)外部輸入輸出觀察而不是正式的程序代碼”形成的。它還擁有令人印象深刻的 99.99999999999% 準確率。
使用上述流程,創(chuàng)建了 CPU 的自動化 AI 設計。流片的 RISC-V32IA 指令集的 CPU 采用 65nm 制造,運行頻率高達 300 MHz。在 AI 生成的 CPU 上運行 Linux(內核 5.15)操作系統(tǒng)和 SPEC CINT 2000 驗證了其功能。在 Drystone 基準測試中,AI 生成的 CPU 的性能與 i486 相當。有趣的是,在同一測試中,它似乎比 Acorn Archimedes A3010 快一點。
盡管有些人可能對人工智能生成的CPU的性能不以為然,但科學家們似乎也相當自豪,他們生成的BSD 從零開始發(fā)現(xiàn)了馮·諾伊曼架構”。
使用人工智能從頭開始構建一個新的RISC-V CPU并不只是學術上的興趣,也具有從頭開始制造新 CPU 的潛在用途。根據(jù)研究人員的說法,人工智能可以被用來大大減少現(xiàn)有半導體行業(yè)的設計和優(yōu)化周期。此外,在他們的結論中,科學家們甚至在思考這項研究是否可能進一步形成一個自我進化機器的基礎。
