跑贏Intel/AMD?國內(nèi)處理器的指令集體系及技術(shù)來源解析
6月底公布的最新一期TOP500超算排行榜中,中國的神威·太湖之光低調(diào)地擠下了六連霸的同胞兄弟天河2號,成為首款理論性能達(dá)到10億億次的超算,將天河2號之前保持的性能往前推進(jìn)了一個量級,晉級新的世界第一超算。伴隨著太湖之光的其實不僅僅是第一名的榮譽,這次TOP500上中國上榜的超算數(shù)量首次超過了以往的霸主美國,超算應(yīng)用也實現(xiàn)了三十年來的突破,更重要的是太湖之光計算機使用的是國產(chǎn)處理器,不再是Intel的Xeon處理器。
本文引用地址:http://butianyuan.cn/article/201607/294224.htm國產(chǎn)處理器“取代”Intel、AMD等國際公司的處理器一直是國家的戰(zhàn)略和夢想,如今在太湖之光計算機上算是真正圓夢了,不過當(dāng)初的新聞報道中筆者也看到了評論中很多人對國產(chǎn)處理器的批評(雖然大部分否定太湖之光的人只是宣泄情緒、負(fù)能量而已),這個問題也是影響國產(chǎn)處理器發(fā)展的一個重要因素,因為生態(tài)體系的缺乏,中國發(fā)展自己的處理器也只能是“摸著石頭過河”,這個石頭就是國外已經(jīng)發(fā)展的處理器指令集,但這種路線又很容易被不明真相的圍觀者嘲諷——都用了別人的指令集了,怎么還敢叫自主產(chǎn)權(quán)?
對于這個問題,多年前龍芯處理器的架構(gòu)師胡偉武博士也解釋過:“我們CPU也是可以做世界第一的,而且有,關(guān)鍵就是沒法用,用戶不用你。”軟件生態(tài)的現(xiàn)實決定了國產(chǎn)處理器不可能從0開始研發(fā),在這方面日本80-90年代通過TRON計劃研制通用OS、CPU但最終失敗的例子可以說是前車之鑒,反而C919大飛機這種國際化分工合作的模式容易獲得成功。
在研發(fā)處理器方面,既然我們的目標(biāo)是“過河”,為了穩(wěn)妥、安全,摸著石頭小心探索也是可行的,而中國在處理器研發(fā)上可以說把河里的石頭都摸了個遍,從X86到ARM再到MIPS還有小眾的SPARC、Alpha甚至安騰架構(gòu),國內(nèi)幾乎都嘗試了。
今天,我們就來簡單了解下國內(nèi)處理器的指令集體系及技術(shù)來源。根據(jù)公開來源,筆者能找到的有代表性的國產(chǎn)處理器方案主要有龍芯、申威、兆芯、飛騰、宏芯以及智能手機/平板領(lǐng)域發(fā)展最好的海思、展訊、全志等,他們所用的架構(gòu)涉及X86、ARM、MIPS、Power及SPARC、Alpha等,如下圖所示:
常見國產(chǎn)處理器指令集體系及來源
龍芯:血統(tǒng)純正的中國芯,商業(yè)化不盡如人意
龍芯并非最早的國產(chǎn)處理器,也不是最成功的國產(chǎn)處理器,但提到國產(chǎn)處理器,大家第一個想到的恐怕就是龍芯了,它是曝光率最高的國產(chǎn)處理器,而且考慮到它是中科院計算機所研發(fā)的,其血統(tǒng)的純正性更容易成為國產(chǎn)處理器的代表。
龍芯課題組于2001年成立,不過龍芯處理器的正式誕生之日是2002年8月10日,在計算所長李國杰院士的領(lǐng)導(dǎo)下,龍芯之父胡偉武博士及其團(tuán)隊拿出了龍芯1號處理器,當(dāng)年他還寫過《我們的龍芯1號》一文介紹龍芯的研發(fā)歷程,小編當(dāng)年也看過這篇文章,記憶猶新的是龍芯的中文代號是“狗剩”,源于中國人“賴名好養(yǎng)活”的習(xí)俗,不過也可以看出團(tuán)隊對龍芯處理器的未來雖然有期待,但當(dāng)時應(yīng)該是挺擔(dān)心這個項目的未來發(fā)展的,只是龍芯的英文名就非常高大上了——Godson,上帝之子!
龍芯一出世就頂著自主研發(fā)的美名,但是沒多久就被爆出龍芯的指令集實際上是源于MIPS,也就是說是買來的,這讓龍芯瞬間被千夫所指,研發(fā)團(tuán)隊也背負(fù)了罵名和壓力,胡偉武博士也解釋過為何選擇MIPS指令集,前面說的“用戶不用你”就是根本原因,自建一套軟件生態(tài)系統(tǒng)對中科院這樣的學(xué)術(shù)單位來說是不可能的任務(wù)。
對龍芯的第二個質(zhì)疑在于他們選擇了MIPS指令集而非現(xiàn)在大紅大紫的ARM指令集,不過時間回溯到2000年代(龍芯立項研發(fā)的時代可能更早一些),當(dāng)時的ARM可沒有如今這般強勢,而MIPS在大學(xué)、科研單位有良好的基礎(chǔ),龍芯團(tuán)隊選擇MIPS也是情有可原。
不管怎樣,龍芯這個項目算是活下來了,從最初的龍芯1到目前的龍芯3已經(jīng)發(fā)展了三代了,每一代其實又衍生出了多個版本,從單核、雙核到四核、八核,從180nm工藝到28nm工藝,從雙發(fā)射到四發(fā)射,龍芯處理器的架構(gòu)、規(guī)格、頻率、性能都在不斷進(jìn)步,龍芯3B2000甚至號稱性能達(dá)到了Intel Ivy Bridge處理器的水平,其指令集其實已經(jīng)遠(yuǎn)遠(yuǎn)超出了MIPS范疇,加入了很多龍芯團(tuán)隊自己開發(fā)的指令,比之前的產(chǎn)品增加了500多條自定義龍芯擴(kuò)展指令,可用于實現(xiàn)對其他主流指令系統(tǒng)的二進(jìn)制翻譯兼容,另外存儲訪問和I/O效率也有大幅的提高,還有一點就是軟硬件將保持向前兼容。
但是龍芯也不是沒有槽點,大多數(shù)龍芯處理器其實活在了中科院給外界展示成果的展臺上,盡管多年來大家對龍芯抱以期待,中科院甚至讓旗下的江蘇夢蘭集團(tuán)參與成立中科龍夢公司加速商業(yè)化,也推出了靈瓏/福瓏/逸瓏臺式機、筆記本等產(chǎn)品,但這些產(chǎn)品大都曇花一現(xiàn),性能無法達(dá)到主流水平,很快就被人給忘記了。
·申威/飛騰:最成功的國產(chǎn)處理器,軍方的秘密武器
申威和飛騰盡管選擇的處理器路線不同,不過這兩家要放在一起說了,因為這兩家背后有軍方背景,申威處理器是無錫江南計算技術(shù)研究所研發(fā)的,后者也是總參謀部第五十六研究所,它有個名字是上海高性能集成電路設(shè)計中心,而天津飛騰是國防科大旗下的。此外,早前我們還報道過一家名為Phytium公司在去年的Hotchips 2015會議上推出了代號為Mars(火星)的多核處理器,這家公司是廣州飛騰,據(jù)說也是國防科大下屬的,但跟研發(fā)飛騰FT處理器的天津飛騰又不是一家單位。
回到正題,江南所在計算機技術(shù)研究上也是老資歷了,不過在處理器指令集上他們的選擇看起來有點非主流——DEC公司的Alpha 21264指令集,在技術(shù)上Alpha有獨特之處,DEC當(dāng)年在處理器市場也曾叱咤風(fēng)云,AMD的K7架構(gòu)就有部分技術(shù)源于Alpha架構(gòu),AMD上上上任CEO德克·梅爾(Dirk Meyer)就來自DEC公司,去年辭職走人的Zen架構(gòu)之父Jim Keller也曾在DEC公司研發(fā)Alpha架構(gòu)。
如今DEC公司早就煙消云散,公司幾經(jīng)轉(zhuǎn)賣,微軟在Win2000之后也放棄了對Alpha架構(gòu)的支持,Alpha架構(gòu)也早就不再更新了,專利也過期了,這可能是江南所選擇Alpha架構(gòu)的原因之一。2011年濟(jì)南的超算中心部署了神威藍(lán)光,它所用的處理器就是神威SW1600,16核心,現(xiàn)在的資料都認(rèn)為它是基于專利已經(jīng)過期的DEC ALPHA 21164A EV-56架構(gòu)。
申威SW26010處理器是260核心
這次的太湖之光的神威SW26010處理器也是江南所研發(fā)的,雖然大家猜測它還是Alpha指令集,但跟龍芯后續(xù)架構(gòu)類似,申威SW26010的架構(gòu)、指令集已經(jīng)遠(yuǎn)遠(yuǎn)超出了之前的范疇,加入了很多新指令。這次的SW26010就是260核心眾核架構(gòu),亂序執(zhí)行架構(gòu),頻率1.45GHz,整個處理器包括4個MPE(Management Processing Element)管理單元、4個CPE(Computing Processing Element)計算單元及4個MC內(nèi)存控制器單元組成,其中CPE單元又由8x8陣列的64核心組成,所以總計是260個核心(4x64+4=260)。
與其他國產(chǎn)處理器相比,申威系在性能上完全走在了前列,在世界范圍內(nèi)都是靠前的,SW26010的理論浮點性能高達(dá)3TFLOPS,其性能完全可與Inel最新的Xeon Phi加速卡一拼。不過申威處理器的不足之處在于內(nèi)存系統(tǒng),太湖之光性能達(dá)到天河2號三倍的同時總內(nèi)存反而從1.4PB降低到了1.31PB,每個節(jié)點使用了四路128bit DDR3-2133內(nèi)存,帶寬為136GB/s,這一點上不如Intel的Xeon Phi加速卡,后者自身集成了16GB eDRAM緩存,帶寬超過500GB/s,而且早就支持DDR4內(nèi)存了。
再來說下飛騰,天津飛騰研發(fā)的FT系列處理器也在HPC領(lǐng)域有過應(yīng)用,不過飛騰FT處理器用的架構(gòu)更雜亂,從公開資料來看第一代FT處理器兼容于Intel安騰2指令集,第二代FT-64處理器在銀河計算機中有過使用,第三代產(chǎn)品FT-1000則是基于開源的UltraSPARC架構(gòu),8核64線程,在天河1號計算機的節(jié)點網(wǎng)絡(luò)上有使用。
之后的FT-1500還是基于SPARC架構(gòu),制程工藝從65nm升級到了40nm,16核心128線程,在天河2號超算中使用了4096顆FT-1500處理器作為節(jié)點前端處理器。
最新的FT-1500A雖然名字跟上面的類似,但實際上沒什么關(guān)系了,因為它的架構(gòu)變成了ARM 64位,使用的是28nm工藝。據(jù)天津飛騰總經(jīng)理谷虹介紹,F(xiàn)T-1500A系列處理器是64位通用CPU,兼容ARM V8指令集,采用國際先進(jìn)的28nm工藝流片,具有高性能、低功耗等特點,關(guān)鍵技術(shù)國內(nèi)領(lǐng)先,可實現(xiàn)對Intel中高端“至強”服務(wù)器芯片的替代,并廣泛應(yīng)用于政府辦公和金融、稅務(wù)等各行業(yè)信息化系統(tǒng)之中。
不論是申威還是飛騰,這兩家軍方背景的國產(chǎn)處理器單位因為目標(biāo)明確,可以說是國產(chǎn)處理器中做的最成功的——不論性能還是架構(gòu)設(shè)計都有獨特之處,申威處理器不僅有硬件研發(fā),還在編譯器及Linux操作系統(tǒng)(神威睿思)上做了創(chuàng)新,太湖之光這次有三項應(yīng)用入圍戈登貝爾獎,這也得歸功于江南所在超算應(yīng)用上的努力。
·中晟宏芯:借力藍(lán)色巨人IBM,Power架構(gòu)能撐起一片天?
通用處理器架構(gòu)也曾百花齊放,Intel當(dāng)年面對的對手比現(xiàn)在多得多,但X86現(xiàn)在差不多一統(tǒng)天下了,能跟Intel競爭的公司就更少了,強大如IBM這樣擁有Power架構(gòu)的公司也不行了,他們索性于2013年聯(lián)合NVIDIA、泰安電腦等公司成立OpenPower開放聯(lián)盟,其他公司也可以獲得Power架構(gòu)授權(quán)。此后在2014年還推動成立中國POWER技術(shù)產(chǎn)業(yè)生態(tài)聯(lián)盟,IBM與多家中國公司簽署了授權(quán)協(xié)議,中晟宏芯就是其中的一家。
IBM的Power架構(gòu)一度成為國產(chǎn)處理器的希望
中晟宏芯成立于2013年,發(fā)起人是江蘇夢蘭集團(tuán)、江蘇中晟智源、蘇州高新創(chuàng)業(yè)投資集團(tuán),夢蘭集團(tuán)之前我們說過是中科院旗下的公司,而后兩者可以說是江蘇政府代表,因此中晟宏芯獲得Power架構(gòu)技術(shù)得到了工信部及江蘇政府、中科院計算所的支持,計算所甚至派了一個技術(shù)團(tuán)隊,如果一切都能按照預(yù)定的引進(jìn)、消化、吸收,中晟宏芯應(yīng)該在2019年推出國產(chǎn)化的Power處理器。
但是事與愿違,中晟宏芯雖然很快就推出了CP1處理器,但這只是IBM Power 8處理器的馬甲而已,還沒等這家公司消化Power技術(shù),他們就鬧出了欠薪風(fēng)波,中科院派出的技術(shù)人員發(fā)不出工資,此后公司也不斷動蕩,股東發(fā)生變化,人員也波動頻繁,指望中晟宏芯推動Power架構(gòu)國產(chǎn)化是沒希望了。
此外,IBM的Power架構(gòu)在國內(nèi)銀行等關(guān)鍵行業(yè)有重要應(yīng)用,而且Power處理器性能強勁,是個好東西,但真要引進(jìn)消化也沒這么容易,以Power 8架構(gòu)為例,它是12核心96線程,核心面積達(dá)到了650mm2,復(fù)雜度遠(yuǎn)高于普通處理器,再加上原本使用的是IBM自己的22nm SOI工藝,而SOI工藝已經(jīng)沒多少代工廠搞了(GlobalFoundries用過,28nm節(jié)點放棄,后來又繼承了IBM的衣缽),這無疑增加了Power處理器的國產(chǎn)化難度。
·兆芯/海光:中國能用X86技術(shù)打敗Intel、AMD?
前面提到的國產(chǎn)處理器中,除了軍方背景的申威、飛騰之外,基于MIPS、SPARC以及Power架構(gòu)的處理器發(fā)展過程都是一波三折,他們面臨的核心問題也是一樣的——軟件生態(tài)遠(yuǎn)不如X86。既然大家都能注意到這個問題,那中國為什么不直接選擇X86體系呢?這是個好問題,你還別說,國內(nèi)還真有搞X86架構(gòu)的。
國內(nèi)較早跟X86架構(gòu)授權(quán)有關(guān)的是北大微電子中心,2005年AMD跟中國政府達(dá)成了協(xié)議,科技部指定北大微電子中心接收AMD Geode-2處理器技術(shù)授權(quán),北大微電子中心還把這事作為重點宣傳,表示“這是美國歷史上,第一次向在美國境外授權(quán)開發(fā)X86兼容的微處理器及系統(tǒng)芯片。此次合作也是迄今為止中美半導(dǎo)體領(lǐng)域最具影響力的技術(shù)合作。”
AMD給的這個處理器是X86架構(gòu)的,中國因此獲得了X86技術(shù),不過Geode處理器大部分人是沒聽說過的吧,因為這是AMD嵌入式處理器,其最初起源于Cyrix公司的MeidaGX平臺,后來Cyrix這部分業(yè)務(wù)被國家半導(dǎo)體(NS)收購,2003年AMD又把國家半導(dǎo)體的Geode業(yè)務(wù)收了。
AMD授權(quán)給北大的X86技術(shù)顯然不可能是最頂級的,所以選了嵌入式架構(gòu)給中國,不過這點“施舍”已經(jīng)可以讓北大好好裝一下了,很多人恐怕不記得還有北大眾志處理器吧,原先也是做MIPS架構(gòu),得到AMD授權(quán)之后,他們的PKUnity86-3就是X86兼容處理器,但最后也是不了了之,也只活在了展臺上,現(xiàn)在都沒什么消息了。
說得有點遠(yuǎn)了,回到正題上來。由于X86架構(gòu)是AMD、Intel吃飯的家伙,他們通常是沒可能把技術(shù)授權(quán)給別人的,AMD之前那個例子更多地是拿買來的技術(shù)迎合中國市場而已,中國公司從這兩家獲得X86技術(shù)的可能性幾乎沒了。不過我們別忘了X86技術(shù)實際上并非只有AMD和Intel,VIA威盛公司也有X86授權(quán)的,他們的技術(shù)來源于Cyrix,后者又是Intel當(dāng)年對外授權(quán)X86技術(shù)的幾家公司之一。
在當(dāng)年的Intel反壟斷案和解之后,VIA的X86技術(shù)也算是正當(dāng)化了,但是VIA自己是個小公司,沒法玩轉(zhuǎn)高性能X86架構(gòu)的,他們出的Nano、Nehemiah(尼希米)、Esther(以斯帖)、Isaiah(以賽亞,VIA總經(jīng)理陳文琦、王雪紅夫婦是基督徒,產(chǎn)品代號也很有宗教特色)等處理器雖然不乏特色,但因為制造工藝不能跟Intel相比,架構(gòu)和性能也是不能相提并論的。既然沒有市場了,那VIA索性把X86技術(shù)賣給了大陸的上海兆芯公司。
兆芯這家公司也是很有背景的,2013年由上海國資委旗下的聯(lián)和投資與VIA成立的,注冊資本2億美元,上海出資80%,VIA占股20%。這次的合作顯然是大陸出錢,VIA出技術(shù),因為兆芯的業(yè)務(wù)范圍包括X86 CPU、ARM CPU、GPU及芯片組研發(fā)都是VIA現(xiàn)有的,上海國資委下面的投資公司可沒這技術(shù)。
憑借雄厚的背景,兆芯如愿拿下了國家的核高基項目,根據(jù)公開報道兆芯拿到的核高基補貼高達(dá)56億,后續(xù)還在申請,總額高達(dá)70億。至于回報,兆芯號稱自主研發(fā)的ZX-C處理器于2015年4月量產(chǎn),28nm工藝,四核處理器,主頻可達(dá)2.0GHz,TDP功耗僅為18W,并且支持國密算法加密,但兆芯的CPU基本上都是VIA處理器的馬甲,畢竟從成立到拿出產(chǎn)品只有2年左右的時間,這么快就生產(chǎn)出四核X86處理器并不容易。
除了上海兆芯,國內(nèi)另一家獲得X86技術(shù)授權(quán)的是天津海光,這事還得從AMD說起,今年Q2季度財報公布之后,AMD宣布他們跟中國天津海光投資公司達(dá)成了協(xié)議,將X86技術(shù)授權(quán)給海光公司,獲得2.93億美元的授權(quán)費,雙方還會成立合資公司。
目前有關(guān)AMD、海光的X86授權(quán)協(xié)議還不明確,但AMD這次授權(quán)給中國公司的X86很可能不再是低端的,因為AMD要打開中國高性能服務(wù)器市場,授權(quán)的架構(gòu)很可能是高性能的Zen技術(shù),換句話說AMD有可能給了中國公司最尖端的X86技術(shù),如果真是如此,AMD這一次可真的是拼了。
海思:商用市場的成功才是真成功
這里雖然選擇了華為的海思,不過筆者要說的其實是海思、展訊、全志、瑞芯微等一幫民營公司開發(fā)的處理器,選擇海思作為代表,是因為海思是其中的佼佼者。這些公司雖然沒多少背景(海思背后的華為算是大公司,是個例外),但他們恰恰是商業(yè)化最成功的國產(chǎn)處理器,這點跟前面介紹的其他處理器不同。
商業(yè)公司以市場為導(dǎo)向,不必背負(fù)什么國產(chǎn)、自主產(chǎn)權(quán)的壓力,他們無一例外選擇了最熱門的ARM體系,架構(gòu)也多是購買的ARM公司的Cortex-A系列授權(quán),GPU也是花錢授權(quán)的,海思還可以研發(fā)自己的基帶及ISP、DSP等芯片,目前的麒麟950處理器是首款Cortex-A72核心、Mali-T880 GPU及TSMC 16nm Plus工藝處理器,已經(jīng)具備國際先進(jìn)水平。
總結(jié):
以上介紹的國產(chǎn)處理器中,他們大體可以寫分為學(xué)院派、軍方派、國資派及民營派,其中商業(yè)化最好的顯然是民營派,國內(nèi)廠商在手機/平板SoC處理器上已經(jīng)闖出一片天,軍方派的飛騰、申威因為目標(biāo)明確,實際上發(fā)展的也相當(dāng)成功,申威SW26010在眾核架構(gòu)上也具備世界水準(zhǔn)了。
不能讓人滿意的要屬學(xué)院派及國資派了,龍芯被寄予厚望,但市場化舉步維艱,考慮到MIPS指令集的應(yīng)用場合,龍芯進(jìn)入主流市場是沒可能了。一些國有資本參與的國產(chǎn)處理器更讓人失望,其所推出的處理器經(jīng)常號稱國產(chǎn)自主產(chǎn)權(quán)或者自主研發(fā),但背后多是馬甲,很多項目都是為了爭取國家的核高基巨額補貼。
當(dāng)然,在套取國家補貼這點上,不僅是國資派,所有公司其實都對這個蛋糕垂涎三尺。華為海思雖然在商用市場發(fā)展的不錯了,這點值得表揚,但他們也沒忘記核高基補貼。我們曾報道過華為的泰山服務(wù)器,此前資料說它使用的是華為自主研發(fā)的CPU架構(gòu),但之后華為公關(guān)找我們澄清過——該處理器不是16核而是32核的,基于公版Cortex-A57架構(gòu),華為表示該項目是國家核高基計劃,不會量產(chǎn)。
筆者并不是反對國家補貼高科技發(fā)展,以當(dāng)前國內(nèi)相對弱勢的情況來看,國家的支持和補助對處理器研發(fā)以及存儲芯片研發(fā)、半導(dǎo)體工藝等重大技術(shù)都是非常必要的,問題是如何避免有些公司渾水摸魚、騙取納稅人資金。
盡管有這樣那樣的問題,國產(chǎn)處理器無論如何都是一個要大力發(fā)展的行業(yè),我們希望不久的將來能看到中國公司也能制造出世界級水準(zhǔn)的高性能處理器,與Intel、AMD、高通等公司同臺競爭,盡管不是每一個人都會選擇國產(chǎn)處理器。
評論