日前,,龍芯在發(fā)布會上發(fā)布了3A3000和一系列產(chǎn)品,。而且發(fā)布會上還公布了龍芯開發(fā)者計劃,、龍芯高校計劃,、龍芯產(chǎn)業(yè)基金。不過,,筆者本文介紹的是龍芯正在研發(fā)的下一代CPU——3A4000,。
龍芯3A4000的設(shè)計指標(biāo)如何,要實現(xiàn)這個指標(biāo)有何難度?龍芯3A4000性能會有哪些可能性呢?
關(guān)于3A4000的進(jìn)度
關(guān)于龍芯3A4000,,龍芯對其寄予了厚望,,特別是吸取了3A2000和3A3000的不足后,做了修改,,而且改動比較大,。
龍芯方面最理想的目標(biāo)是實現(xiàn)GCC編譯器下SPEC06定點20分,不過這個是最理想狀態(tài)下的,,畢竟CPU公司跳票或者沒能達(dá)到計劃的情況很常見,,即便是Intel、AMD都有這種黑歷史,。
先介紹一下3A4000的進(jìn)度,。3A4000的研發(fā)會比較慢,主要是兩個目標(biāo)定的很高,,一個是GCC編譯器下,,SPEC2006測試能達(dá)到10/G,另一個是主頻到2G,。
10/G是什么概念呢?AMD的Zen大概也就這個水平——AMD自己公布的是3.4G,,31.5分,換算以下就是9.26/G,。不過由于一些優(yōu)化選項沒開,,而且編譯器是GCC4.6,換一下GCC編譯器版本,,多開一些優(yōu)化,,10+/G的成績Zen還是能達(dá)到的。
Intel的Haswell,,像賽揚(yáng)的話,,因為沒有AVX指令帶來的向量優(yōu)化,以及緩存被“閹割”等因素,,也就9.3/G,,而i5-4460因為不像賽揚(yáng)被“閹割”,可以到11/G,,網(wǎng)友測試Skylake,,大約也就11+/G(畢竟Intel這些年在擠牙膏)。
因此,,如果龍芯3A4000能到10/G,,那在微結(jié)構(gòu)上和Intel、AMD的差距就比較小了,。不過,,考慮到越往上走,微結(jié)構(gòu)優(yōu)化難度越大,像3A4000基本上是3A3000里一點一點的摳,,因而要實現(xiàn)這一目標(biāo)的難度很大,。
難度到底有多大呢?作為參照,以AMD的實力憋出Zen都用了九牛二虎之力,,而龍芯3A3000的微結(jié)構(gòu)GS464E除了帶寬是K10的兩倍之外,,總體上GS464E和K10相當(dāng),等于是龍芯要完成AMD從K10到Zen的跨越。
AMD憋出Zen都用了這么久,,龍芯要實現(xiàn)這一點,,難度可想而知。
第二是主頻,,龍芯3A3000主頻上不去,,固然有自身后端設(shè)計能力相對有限的因素,但也和人力,、財力,,以及和代工廠的能力息息相關(guān),而境內(nèi)的代工廠在同制程下只有臺積電的60%,,和龍芯長期合作的ST在同制程下也只有臺積電的80%,,而臺積電和Intel又有一定差距。
另外,,如果主頻要做上去,,IC設(shè)計公司和代工廠就必須建立非常密切的關(guān)系,要開放一些技術(shù)資料,,像Intel和曾經(jīng)的AMD,、IBM都是IDM廠商,因此可以開放技術(shù)資料設(shè)計和工藝制造不斷磨合,。
雖然IBM和AMD把晶圓廠賣了,,但依舊和GF保持了過去的密切聯(lián)系,很多技術(shù)儲備和資料也都保留了下來,,這樣就可以繼續(xù)做高主頻CPU,,但龍芯和ST不可能建立這種關(guān)系。
而境內(nèi)的一些代工廠,,在技術(shù)實力上還有待提高——境內(nèi)工藝的一致性比境外工藝有一定差距,,包括不同批次的一致性,仿真模型和實際晶體管參數(shù)的一致性都和國外工藝有一定差距,,設(shè)計時要多留些裕量,,蒙特卡羅仿真也要把參數(shù)波動范圍設(shè)大一些。
龍芯3A2000在研制中就因為和境內(nèi)代工廠磨合多耗費(fèi)了1年時間,,而在ST流片的3A3000則非常順利了,,從立項到流片也就用了1年時間左右。
換言之,,就是龍芯即便和境內(nèi)代工廠建立了密切的合作關(guān)系,,境內(nèi)代工廠也只能說:臣妾做不到啊!
此外,微結(jié)構(gòu)越復(fù)雜,,后端設(shè)計壓力就越大,,比如像把A53主頻做到2G和把Zen的主頻做到2G完全不是一個檔次的工作難度,。
像3A4000這種CPU的微結(jié)構(gòu),設(shè)計目標(biāo)接近Haswell的東西,,對于任何一家國內(nèi)團(tuán)隊來說,,后端設(shè)計難度都非常大,而且龍芯3A3000和龍芯3A4000,,還是使用同樣的制造工藝,這樣就不可能通過工藝的提升來提升主頻,,完全靠自身的設(shè)計能力把主頻提升30%,,難度可想而知。
最后,,雖然目前微結(jié)構(gòu)優(yōu)化的成果比較喜人,,而且已經(jīng)有仿真結(jié)果了。但由于要達(dá)到2G主頻,,最后可能會做一些權(quán)衡,。最后能拿出怎么樣的產(chǎn)品,只有等待時間檢驗了,。
筆者做一個預(yù)測,,龍芯3A4000可能會采用ST 28nm FD SOI工藝,如果搶時間的話,,保守估計主頻1.8-2.0,,SPEC06 GCC編譯器下定點16-18分。
如果多花費(fèi)一些時間進(jìn)行優(yōu)化,,而且龍芯團(tuán)隊發(fā)揮正常的話,,3A4000主頻為2G,SPEC06 GCC編譯器下定點18+分,。
如果龍芯團(tuán)隊超水平發(fā)揮,,ST也沒有掉鏈子,也許能實現(xiàn)GCC編譯器下SPEC06 定點20分,。
關(guān)于龍芯走自主道路和發(fā)展方向
必須強(qiáng)調(diào)的是,,雖然網(wǎng)絡(luò)上充斥著對龍芯各種不靠譜的報道,但龍芯對自己的能力,,與Intel,、AMD的差距認(rèn)識的非常清楚。
在2020年前,,龍芯主打方向是工控,、網(wǎng)安,以及石油,、電力,、交通,、金融等行業(yè)應(yīng)用,這些行業(yè)應(yīng)用一方面事關(guān)國家信息安全,,另一方面在替換上不像桌面和手機(jī)存在龐雜的軟件生態(tài)的問題,。
對于龍芯的PC,3A3000主要針對的是黨政軍辦公和龍芯愛好者,、開發(fā)者,。龍芯既沒有能力,也沒有心思進(jìn)軍民用市場與Wintel一爭高下,。
龍芯的思路是分步走,,第一步能自己養(yǎng)活自己,在特殊市場和一些行業(yè)嵌入式應(yīng)用賺錢,,能夠養(yǎng)隊伍,,賺來的錢能支持龍芯3號系列芯片的研發(fā)。這方面已經(jīng)取得了不菲的成績,,可以說龍芯是在幾家有官方背景的IC設(shè)計公司中獲得政府經(jīng)費(fèi)支持最少的,,也是極其罕見的可以實現(xiàn)政府?dāng)嗄蹋允兆灾?、自?fù)盈虧的,。
第二步是特定市場,比如黨政軍辦公PC,,并鼓勵開發(fā)者,、愛好者使用龍芯電腦。同時進(jìn)一步開拓行業(yè)市場,,讓更多的行業(yè)和嵌入式設(shè)備使用龍芯,,擴(kuò)大自己的根據(jù)地,增加市場份額和營業(yè)收入,,并逐步建立起產(chǎn)業(yè)聯(lián)盟和特定市場的軟件生態(tài)——比如軟件滿足黨政軍辦公使用,,或者滿足對保密要求比較高的科研單位,或十大軍工的科研院所使用,。
第三步才是進(jìn)軍民用市場,。到這一步還非常遙遠(yuǎn),有很長的路要走,。龍芯目前,,還處于第二步。
龍芯的路之所以會這么難,,因為萬事靠自己,,不可能像合資公司那樣,獲得國家巨額經(jīng)費(fèi)支持,,去境外弄一個內(nèi)核,,然后去用臺積電最好的工藝做一個CPU/SoC,,也不可能像一些公司買ARM的IP做集成,而且還有現(xiàn)成的AA體系來支撐商業(yè)化,。
龍芯必須自己擴(kuò)展指令集,,開發(fā)各種IP,自己根據(jù)開源軟件改寫操作系統(tǒng),,自己建產(chǎn)業(yè)聯(lián)盟和軟件生態(tài),。這種做法步子自然是比與境外廠商合作或者合資的來的慢,但勝在根基扎實,,不僅可以實現(xiàn)自主可控,,而且可以掌握設(shè)計高性能CPU的能力。
而合作/合資,,就意味著很多東西境外廠商已經(jīng)幫你做好了,,你就撿現(xiàn)成的就行了,,而且合資或者合作中,,肯定有很多限制條件,老外也不是活雷鋒,,會把技術(shù)傾囊相授,。
比如汽車廠在合資中,就有圖紙上一條線,,中國工程師都不能改,,要改的話,也必須經(jīng)老外層層上報由外國公司決定,。這種限制性條款就杜絕了中國工程師通過修改原始設(shè)計,,逐步吃透國外技術(shù)的可能性。
長遠(yuǎn)來看,,采用合資/合作模式,,不僅無法形成獨立于AA、Wintel的第三級,,而且自己的能力發(fā)展就受到了制約,。這也是為何幾大車廠與國外巨頭合資N多年,但在自主創(chuàng)新上,,依舊乏善可陳的原因,。