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