15年了,龍芯拿什么與國外芯片巨頭對抗?
也許是龍芯名稱中的“龍”字,承載著太多國人的希望,自誕生之初就處于社會輿論的風(fēng)口浪尖。有人說龍芯是騙經(jīng)費的項目,也有人說龍芯的科研人員是為理想而奮斗的志士,還有人說龍芯的科研人員“太天真”,是土八路斗美械師,自尋死路。
1、龍芯的誕生
回溯歷史,中國也曾經(jīng)擁有過自己的CPU和全自主的半導(dǎo)體產(chǎn)業(yè)。但因在上世紀(jì)80年代奉行“造不如買、買不如租”、“市場換技術(shù)”等方針路線,不僅沒能拉近和國外的技術(shù)差距,反而把原本的家底敗得精光,國內(nèi)市場完全被外資占領(lǐng)。在中國失去獨立研制高性能計算機的能力之后,美國要求中國把高價進口的高性能計算機放在透明玻璃房中,并提出了非常苛刻的要求——玻璃房門的鑰匙在美國人手里,使用用途需要向美國人匯報,使用前都要經(jīng)過美國人許可。
銀河號事件、臺海危機、中國駐南聯(lián)盟大使館被炸事件給中國政府敲響警鐘,“落后就要挨打”。亡羊補牢,猶為未晚。中國于2000年前后重啟了一大批軍工科研項目,中科院計算機所也開始著手芯片設(shè)計研發(fā)。于是,龍芯開始了漫漫長征路。
龍芯課題組成立之初是著眼于解決國防和信息安全領(lǐng)域無芯可用的困境。課題組成立于2001年,成立的時候可以說用臺詞“七八號人,兩三條槍”來形容再合適不過了。只有一間50-60平米的實驗室,人員也是東拼西湊——有已經(jīng)年近70,曾在上世紀(jì)70年代參與國產(chǎn)芯片研發(fā)的老研究院員,聽說計算機所要設(shè)計龍芯,就主動帶著幾個學(xué)生過來,其中也有剛走出校門的青年學(xué)子。
課題組成立時,龍芯團隊總計也就10來個人。到2006年,龍芯團隊逐步發(fā)展為將近100人的研發(fā)設(shè)計團隊。到2014年,龍芯中科公司有研發(fā)設(shè)計人員將近400人。
2、龍芯是國家的“親兒子”?
龍芯的“龍”字會給國人一種錯覺,認(rèn)為龍芯是國家的“親兒子”,是用舉國體制輸送資金和人才打造的國產(chǎn)芯片。但實際上,龍芯成立之初僅僅是中科院計算機所里的一個芯片研發(fā)課題組,國家對龍芯的扶持也非常有限。
在人才方面,在課題組成立時候才10來個人, 2006年才發(fā)展到100余人,2014年才400人,可以說龍芯團隊的骨干人才都是自己培養(yǎng)的,不少設(shè)計師都是胡偉武親自帶出來的博士生。與之形成鮮明對比的是兆芯和宏芯的親兒子待遇——2013年4月成立的兆芯,到2015年已有員工已擴充至1000人;而在2014年成立的宏芯,國家則直接從計算機所抽調(diào)人才,停薪留職去支援宏芯。
在資金方面,自2001年成立以來,從國家863計劃、核高基專項中累計獲得項目經(jīng)費5億人民幣。龍芯中科公司成立后,獲得北京市政府2億人民幣的股權(quán)投資。也就是說龍芯成立至今共從國家獲得資金7億元。平均下來,每年獲得國家補助為幾千萬元。對比紫光、兆芯和宏芯獲得的補助可謂少得可憐——
2014年紫光獲得國家集成電路大基金400億元人民幣;宏芯成立時獲6億注冊資本,從2014年至今,獲得補助不少于20億元人民幣;兆芯成立時上海市政府出資12億元,從2013年成立至今,獲得補助不少于70億元人民幣。
另外,芯片研發(fā)對資金需求極大,國家對龍芯的補助無異于杯水車薪。舉個列子,俄羅斯貝爾加電子的Baikal-T1處理器研發(fā)成本折算為人民幣是1.85億元,該芯片是購買MIPS Warrior P5600微結(jié)構(gòu)集成雙核CPU,主頻1.2G,用于路由器、打印機、復(fù)印機等產(chǎn)品。如果貝爾加電子自主研發(fā)微結(jié)構(gòu)的話,成本會更高。
換言之,貝爾加電子研發(fā)一枚路由器芯片的研發(fā)成本(而且還不是自己研發(fā)微結(jié)構(gòu))相當(dāng)于國家對龍芯的總投入的四分之一。若以國外巨頭作參照,則差距更大,2014年Intel研發(fā)經(jīng)費超過100億美元,員工達10萬余人。
3、龍芯經(jīng)營現(xiàn)狀
自2010年龍芯市場化運營以后,龍芯選擇了走主動挖掘民用市場、提升造血能力的道路,將過去的向國家要經(jīng)費轉(zhuǎn)變?yōu)閺氖袌鲑嵤杖?,沒有再向國家要過一分錢。2014年,龍芯在純商業(yè)行為的收入占總收入的比重從0上升到1/3,國家安全市場的比重占2/3,實現(xiàn)了自主經(jīng)營、自負盈虧、收支平衡。
4、龍芯科研隊伍兩個特點
一是用毛澤東思想武裝科研隊伍
龍芯中科研發(fā)團隊繼承了老一代無產(chǎn)階級革命家的革命精神,在技術(shù)研發(fā)走獨立自主的發(fā)展道路,不依附于國外技術(shù)體系(例如Wintel、AA)。在工作中踐行艱苦奮斗,自強不息的拼搏精神,每周6天班,每天加班到深夜,不少研究員以實驗室為家。當(dāng)為解決客戶的問題之時,一周平均每天只睡3小時更是常態(tài)。雖然工資待遇很一般,工作強度非常大,但骨干研發(fā)隊伍異常穩(wěn)定。在龍芯公司化后,除少數(shù)研究員因計算機所科研需要外,龍芯團隊的大部分科研人員以破釜沉舟的勇氣和決心脫離體制下海,接受市場的檢驗。
二是骨干研發(fā)人員全部自己培養(yǎng)
龍芯科研骨干基本來自國內(nèi)頂級學(xué)府,有的是所在市、縣高考狀元,有的是是科大少年班的天才少年。比如龍芯總裁胡偉武,就曾是浙江永康高考狀元,師從著名計算機系統(tǒng)結(jié)構(gòu)專家夏培肅院士,博士論文曾獲“中科院院長獎學(xué)金特別獎”、首屆“全國百篇優(yōu)秀博士論文”,獲得了公費出國獎勵,受夏培肅院士教誨,胡偉武決定留在國內(nèi)做科研。再比如入選MIT2015年TR35杰出青年創(chuàng)新人物的陳云霽,也是胡偉武的學(xué)生,他就來自科大少年班。
5、指令集
指令集就是一個編碼集合。它是用一些代碼表達讀、寫等操作,命令計算機做各種運算的一套命令標(biāo)準(zhǔn)。指令集可分為復(fù)雜指令CISC、精簡指令RISC、超長指令集VLIW。CISC指令集的每個指令可執(zhí)行若干低階操作。諸如從內(nèi)存讀取、儲存、和計算操作,全部集于單一指令之中,指令數(shù)目多而復(fù)雜,指令編碼格式混亂,導(dǎo)致編碼器復(fù)雜,流水線設(shè)計較為困難,指令不定長也帶來指令對齊方面的額外挑戰(zhàn),因此付出了性能的代價。CISC指令集經(jīng)典代表:X86。
RISC指令集對指令數(shù)目和尋址方式都做了精簡,固定指令長度,統(tǒng)一指令編碼格式,加速常用指令,流水線設(shè)計更容易,因此效率也更高。有一段時間,因為RISC的高效率,Intel在發(fā)展CISC產(chǎn)品線的同時,也不得不研發(fā)了RISC處理器。RISC指令集典型代表:Alpha、Mips。
CISC和RISC與在競爭的過程中相互學(xué)習(xí)、取長補短,CISC指令集在解碼階段上實現(xiàn)向RISC類指令的轉(zhuǎn)化,將后端流水線轉(zhuǎn)換成類RISC的形式。而隨著技術(shù)發(fā)展,RISC指令集也達到數(shù)百條甚至上千條(loongISA有1907條),在指令集上殊途同歸了。
超長指令集(VLIW)使用非常長的指令組合,把許多條指令連在一起,以能并行執(zhí)行。因為和CISC和RISC軟件生態(tài)不兼容的原因已經(jīng)很罕見了,Intel的安騰,英偉達的丹佛都是其代表。
龍芯選擇兼容Mips,一方面是因為課題組當(dāng)時只有10余名成員,人力財力精力有限。另一方面,龍芯自己定義一套指令集技術(shù)上沒有難度,但是無法兼容現(xiàn)有的計算機體系。
舉例來說,你既可以用“+”、“-”、“*”、“/”來定義加、減、乘、除和也可以用 “-”、“+”、“/”、“*”來定義加、減、乘、除,既可以用大寫漢字來“壹”來表示1,也可以用“一”來表示1。
1+1=2,這種表述方式全世界都看得懂。但是壹+壹=貳,就只有中國人才看得懂了。而你若將“-”定義為加,那么壹-壹=貳,就只有你自己看得懂了——因為你無法讓全世界的人跟著你的指揮棒走,讓全世界人民在日常數(shù)學(xué)運算中用“-”來表示加,無法讓全世界學(xué)校的教科書中用“-”來表示加,無法讓已經(jīng)被證明的數(shù)學(xué)公式和定理中用“-”來表示加。
因此,重新定義指令集技術(shù)上難度近乎于零,美國也一度禁止將單獨的指令集申請為專利,只有當(dāng)指令集與實現(xiàn)方法相結(jié)合的時候才被允許申請專利。研發(fā)兼容Mips指令集的CPU,就如同我們在數(shù)學(xué)上放棄了傳統(tǒng)的漢字而使用阿拉伯?dāng)?shù)字去證明數(shù)學(xué)定理,Mips指令集和阿拉伯?dāng)?shù)字只是知識的載體而非知識本身,真正具有價值的是指令集的實現(xiàn)方法和被證明的數(shù)學(xué)定理。
ARM于2012年購買了498條Mips指令專利,但這并不會對ARM的自主知識產(chǎn)權(quán)造成影響。同理,龍芯使用兼容Mips指令并不會對自主知識產(chǎn)權(quán)構(gòu)成影響。而真正對龍芯自主可控路線產(chǎn)生影響的是指令集的發(fā)展權(quán)——是否有資格自主擴展指令,是否能讓軟件生態(tài)跟著你的指揮棒走。
評論