為什么軍事領域也要用通用CPU?
在2020年建黨節(jié)前夕,隨著第55枚北斗衛(wèi)星升空,中國正式完成歷經(jīng)17年的自主導航系統(tǒng)的建設歷程。在這個有著歷史意義的時刻,很多人已經(jīng)記不起當年那個曾經(jīng)震撼過我們的新聞:北斗衛(wèi)星核心計算機采用了龍芯1號航天級CPU。
科技日報訊 (記者高博)2015年7月25日在西昌發(fā)射的兩顆新一代北斗導航衛(wèi)星,全部使用國產(chǎn)微處理器芯片(CPU)。這是國產(chǎn)宇航級CPU首次在實用衛(wèi)星上擔當主綱。另外,將2顆衛(wèi)星準確送入軌道的“遠征一號”上面級火箭,也使用了相同的國產(chǎn)CPU。

無大氣層保護,集成電路極易被宇宙射線干擾而出現(xiàn)功能故障,芯片要“抗輻射加固”后,才能在太空工作。集成電路抗輻射加固技術是航天的核心共性基礎技術。
于1994年成立的航天772所,專門研制宇航芯片。所長趙元富說,772所的技術路線是在芯片設計環(huán)節(jié)而非制造環(huán)節(jié)添加抗輻射特性,其宇航芯片可在普通芯片流水線上制造。他們迄今已研制成功200多種抗輻射加固集成電路。
宇航CPU是衛(wèi)星的核心芯片,任務是接收地面指令、處理載荷數(shù)據(jù)、管理控制姿態(tài)等,相當于衛(wèi)星的大腦。此次在北斗雙星和“遠征一號”上面級火箭上的CPU芯片,只有拇指甲蓋大小,是航天772所歷時10年研制的,圓了航天人的“中國芯”之夢。
除了CPU,北斗雙星和上面級上的數(shù)據(jù)總線電路、轉換器、存儲器等近40款產(chǎn)品均為航天772所研制和生產(chǎn),這是中國衛(wèi)星首次成體系、批量使用國產(chǎn)芯片,對航天工程的自主可控和創(chuàng)新發(fā)展是一里程碑。
隨著北斗三期衛(wèi)星的氫原子鐘等全部配套設備完成國產(chǎn)替代,中國航天正式實現(xiàn)了航天器的自主可控。
不過,也有很多不了解這行業(yè)的人會問:采用MIPS架構的龍芯有發(fā)展前景嗎?目前龍芯在性能上能夠打敗海外巨頭intel,AMD的軍用CPU嗎?那么,接下來我們就來講講,軍用和航天CPU到底是什么一類東西。

CPU全稱是“中央處理器單元”。換句話說,一切采用電子計算機控制的設備,都會有一個CPU控制。只不過,有的工業(yè)/軍用控制設備用的是一整個臺式機通過數(shù)據(jù)線控制,而更多的工控機/軍用機則是采用SOC,即系統(tǒng)級芯片,把計算,儲存,I/O等基本功能制作在一塊芯片上,降低整個計算機的體積。所以說,對于體積限制比較多的軍用計算機,一般都會設計成非常規(guī)整的形狀,只留出來I/O設備接口,以確??煽啃耘c安全性。

由于體積比較緊湊,而且很多軍用設備不太需要民用設備復雜的影音娛樂功能(比如飛控計算機只需要處理飛機飛行時的空速,飛行高度,攻角,各個舵面角度等純數(shù)字數(shù)據(jù)),更強調I/O響應速度,面對設備噪聲,外界干擾(敵對電子戰(zhàn)干擾或者太空射線輻射)的可靠性,所以很多軍用CPU并不采用很多人以為的7nm,5nm等領先加工技術,很多還在使用目前早已退出民用領域的老式芯片。

由于英特爾公司很早就和美軍密切來往,因此英特爾公司有很多CPU都廣泛使用在軍用和工控計算機之中。其中386,486和后來的奔騰1號CPU都是非常流行的工控CPU。這些CPU不僅廣泛與使用在美國的軍隊和飛行器之中,連國際空間站也使用了386CPU作為它的主控制計算機。更有甚者,在中國和俄羅斯,在那個時代由于國產(chǎn)CPU不足,廣泛的通過各種渠道獲得此類CPU作為自己的軍用設備的計算機CPU。
蘇-30這些4+戰(zhàn)機開啟了俄羅斯新式航電整合的序幕,如蘇-30MK采用了聯(lián)盟式航電整合(即每個次系統(tǒng)有專用計算機,各司其職,然后把這些連結在一起)。
其中值得注意的是,俄羅斯用80386、80486等進口CPU(中國引進的蘇-30MKK使用的應該是486DX2-50)做成了中央計算機如BTsVM-386與BTsVM-486等,這些計算機并不是真的單一的中央計算機,而是用來當次系統(tǒng)的中央計算機,然后再整合起來。例如某型雙座戰(zhàn)機用了6臺BTsVM-386,兩兩一組互為備份,用于3個大的次系統(tǒng),再加以整合。
以上的軍用計算機是上一代的,采用多個獨立計算機控制各個獨立設備,再由一個同樣CPU的計算機控制起來,這個結結構比較浪費空間,而且增減設備都不容易,現(xiàn)在大多數(shù)都不采用這個設計?,F(xiàn)在常見的軍用模塊化計算機通常采用IMA架構。這種架構類似于地面“刀片式服務器”,可以根據(jù)需求增減設備,固定在同一個機架內,大幅降低了不同配置的飛機系統(tǒng)復雜的。


看到這里,可能還有人會問,既然來講,高度依賴美國的CUP的話,會導致在戰(zhàn)爭時期非常難以獲取CPU,也就意味著難以生產(chǎn)軍事裝備。同時購買這種以民用CPU為基礎開發(fā)的軍用CPU,是不是也會存在被敵方黑客攻陷而導致整個系統(tǒng)崩潰的風險呢?那么為啥我們不會設計一款專用于軍用的CPU呢?答案就是成本。
根據(jù)知乎一篇文章:
https://zhuanlan.zhihu.com/p/21416517
芯片的成本包括芯片的硬件成本和芯片的設計成本。
芯片硬件成本包括晶片成本+掩膜成本+測試成本+封裝成本四部分(像ARM陣營的IC設計公司要支付給ARM設計研發(fā)費以及每一片芯片的版稅,但筆者這里主要描述自主CPU和Intel這樣的巨頭,將購買IP的成本省去),而且還要除去那些測試封裝廢片。
用公式表達為:芯片硬件成本=(晶片成本+測試成本+封裝成本+掩膜成本)/最終成品率
對上述名稱做一個簡單的解釋,方便普通群眾理解,懂行的可以跳過。
從 二氧化硅到市場上出售的芯片,要經(jīng)過制取工業(yè)硅、制取電子硅、再進行切割打磨制取晶圓。晶圓是制造芯片的原材料,晶片成本可以理解為每一片芯片所用的材料 (硅片)的成本。一般情況下,特別是產(chǎn)量足夠大,而且擁有自主知識產(chǎn)權,以億為單位量產(chǎn)來計算的話,晶片成本占比最高。不過也有例外,在接下來的封裝成本 中介紹奇葩的例子。
封裝是將基片、內核、散熱片堆疊在一起,就形成了大家日常見到的CPU,封裝成本就是這個過程所需要的資金。在產(chǎn)量巨大的一般情況下,封裝成本一般占硬件成本的5%-25%左右,不過IBM的有些芯片封裝成本占總成本一半左右,據(jù)說最高的曾達到過70%......
測 試可以鑒別出每一顆處理器的關鍵特性,比如最高頻率、功耗、發(fā)熱量等,并決定處理器的等級,比如將一堆芯片分門別類為:I5 4460、I5 4590、I5 4690、I5 4690K等,之后Intel就可以根據(jù)不同的等級,開出不同的售價。不過,如果芯片產(chǎn)量足夠大的話,測試成本可以忽略不計。
掩膜成本就是采用不同的制程工藝所需要的成本,像40/28nm的工藝已經(jīng)非常成熟,成本也低——40nm低功耗工藝的掩膜成本為200萬美元;28nm SOI工藝為400萬美元;28nm HKMG成本為600萬美元。
由于晶圓是圓形的,而晶片是矩形的,必然導致一些邊角料會被浪費掉,所以每個晶圓能夠切割出的晶片數(shù)就不能簡單的用晶圓的面積除以晶片的面積,而是要采用以下公式:
每個晶圓的晶片數(shù)=(晶圓的面積/晶片的面積)-(晶圓的周長/(2*晶片面積)的開方數(shù))
晶片的成品率和工藝復雜度、單位面積的缺陷數(shù)息息相關,晶片的成品率用公司表達為:
晶片的成品率=(1+B*晶片成本/A)的(-A次方)
A是工藝復雜度,比如某采用40nm低功耗工藝的自主CPU-X的復雜度為2~3之間;
B是單位面積的缺陷數(shù),采用40nm制程的自主CPU-X的單位面積的缺陷數(shù)值為0.4~0.6之間。
假 設自主CPU-X的長約為15.8mm,寬約為12.8mm,(長寬比為37:30,控制一個四核芯片的長寬比在這個比例可不容易)面積約為200平方毫 米(為方便計算把零頭去掉了)。一個12寸的晶圓有7萬平方毫米左右,于是一個晶圓可以放299個自主CPU-X,晶片成品率的公式中,將 a=3,b=0.5帶入進行計算,晶片成品率為49%,也就是說一個12寸晶圓可以搞出146個好芯片,而一片十二寸晶圓的價格為4000美元,分攤到每 一片晶片上,成本為28美元。
因40nm低功耗工藝掩膜成本為200萬美元,如果該自主CPU-X的銷量達到10萬片,則掩膜成本為20美元,將測試成本=2美元,封裝成本=6美元,晶片成本=28美元代入公式,則芯片硬件成本=(20+2+6)/0.49+28=85美元
自主CPU-X的硬件成本為85美元。
如 果自主CPU-Y采用28nm SOI工藝,芯片面積估算為140平方毫米,則可以切割出495個CPU,由于28nm和40nm工藝一樣,都屬于非常成熟的技術,切割成本的影響微乎其 微,因此晶圓價格可以依舊以4000萬美元計算,晶片成品率同樣以49%的來計算,一個12寸晶圓可以切割出242片晶片,每一片晶片的成本為16美元。
如果自主CPU-X產(chǎn)量為10萬,則掩膜成本為40美元,按照封裝測試約占芯片總成本的20%、晶片成品率為49%來計算,芯片的硬件成本為122美元。
如果該自主芯片產(chǎn)量為100萬,則掩膜成本為4美元,按照封裝測試約占芯片總成本的20%來,最終良品率為49%計算,芯片的硬件成本為30美元。
因40nm低功耗工藝掩膜成本為200萬美元,如果該自主CPU-X的銷量達到10萬片,則掩膜成本為20美元,將測試成本=2美元,封裝成本=6美元,晶片成本=28美元代入公式,則芯片硬件成本=(20+2+6)/0.49+28=85美元
自主CPU-X的硬件成本為85美元。
如 果自主CPU-Y采用28nm SOI工藝,芯片面積估算為140平方毫米,則可以切割出495個CPU,由于28nm和40nm工藝一樣,都屬于非常成熟的技術,切割成本的影響微乎其 微,因此晶圓價格可以依舊以4000萬美元計算,晶片成品率同樣以49%的來計算,一個12寸晶圓可以切割出242片晶片,每一片晶片的成本為16美元。
如果自主CPU-X產(chǎn)量為10萬,則掩膜成本為40美元,按照封裝測試約占芯片總成本的20%、晶片成品率為49%來計算,芯片的硬件成本為122美元。
如果該自主芯片產(chǎn)量為100萬,則掩膜成本為4美元,按照封裝測試約占芯片總成本的20%來,最終良品率為49%計算,芯片的硬件成本為30美元。
這里要稍微解釋一下為啥光刻后良品率不能達到很高的水平(相比于一般的工業(yè)產(chǎn)品良品率都不低于90%甚至95%)。光刻的原理和幻燈機差不多,它利用一個高精度鏡頭和一個紫外光光源(這兩個制造難度也非常大,尤其是EUV極紫外光源),將制作好的模板上的電路圖投射到涂好了光刻膠的晶圓片上,因為透鏡通常是圓形的,所以晶圓也一樣是圓的,但我們的芯片大部分是方的。同時,在光源跟不上制程時(如采用193nm的光源制造28nm的芯片),往往需要多次曝光技術,把多個紋路疊加在一起形成最后的光刻晶體管,這樣一來,肯定有的區(qū)域(通常位于邊緣)就無法得到充足的曝光,加之沖洗光刻膠、切割芯片造成的耗損,就有的芯片無法達到最高效果了,有的甚至“模糊”而無法使用(廢片),因此所謂的“測試”就是對上面每一塊切下的芯片進行單獨測試的過程。所以,越高的制程,芯片的良品率自然會不高。
所以通過這篇張競楊大佬的文章,大家就很容易看出來為啥軍用設備不宜采用高精尖制程的專用CPU了。第一,很多作戰(zhàn)任務的計算需求無需那么高的計算能力,而且很多芯片都是一次性的(如導彈的控制計算機),必須控制成本;第二,軍用計算機考慮到的是可靠性,芯片內集成的晶體管越多,發(fā)熱量越大,而且半導體之間的電子躍遷越復雜,越容易遭受外界的電子干擾和內部大量設備的噪聲干擾,為了解決這問題需要更多的封裝成本;第三,就算是美國AIM-120, 陶2這種導彈,其全球銷量也不足幾萬套,其消耗的CPU(而且是很低端的控制CPU)也不過十萬片的等級,如果為其單獨進行設計、制版、光刻、切割、封裝,其單位成本也勢必居高不下,無法分攤成本。同時,一款CPU從設計到流片生產(chǎn),再到最終封裝測試往往需要不止1-2年的時間,如果單獨為一款武器設計一款CPU,那么勢必將大幅延長武器的總體設計時間。所以,上述所有內容加在一起,就是軍用設備必然采用通用CPU的原因了。

那么,一塊光刻了幾百個通用CPU的大晶圓上什么樣的芯片才能成為軍用級芯片呢?
這里,我們舉一個反例??赡芪覀兒芏嗳硕荚诰W(wǎng)上買過特別便宜的U盤。我們知道,一塊16-32G的正品優(yōu)盤都不低于30元,而很多店鋪卻宣稱只需要2元即可買下32G的U盤。這些U盤很多插上計算機就會發(fā)現(xiàn),要不是所謂的“擴容U盤”(即修改了主控芯片),要不這些U盤空間根本無法全部利用。我有一次就是用冒牌的金士頓8G優(yōu)盤,現(xiàn)實中裝到6G就非常不錯了,而這種U盤理論上格式化應該不低于7G。而且這種U盤非常容易過熱,還容易讀取不良,業(yè)內的行家就會給你說:對不起,你買的U盤很可能是“黑片”的。所謂的黑片,就是上述提到的“良品率”中被劃為“不良”甚至“殘次”的芯片。這樣的芯片不是說完全就不能通電使用,只不過很多通道產(chǎn)生了模糊,造成這些區(qū)域被當做“壞扇區(qū)”而被隔離,無法讀取使用(很多固態(tài)硬盤讀取頻繁后,部分讀取頻繁的扇區(qū)也會受損,因此越久的固態(tài)硬盤剩余的可用空間越少)。因而你要是用了這種芯片的U盤,其性能自然不能得到保障。
那么,與之相對的,就是曝光結果最好,通常位于晶圓中央的芯片了。這種芯片的晶體管紋路清晰,基本上所有的晶體管都可以正常使用,甚至有些芯片還可以表現(xiàn)出高于均值的性能(超頻界里流傳的某些特別適合超頻的芯片有一部分就是該批次使用了最高等級的芯片),因此對可靠性極端重視的軍用電腦CPU就會選擇其中質量最好的,加以應對軍用的特別封裝技術,再裝載到軍用計算機的單元之中(就像前文提到的IMA架構的擴展計算板)。這樣的CPU,自然就能夠保證它在作戰(zhàn),航天等領域中順利工作了。

所以,軍用的CPU不單單是比拼性能,還會包括成本、可靠性、產(chǎn)能等多個因素。只有符合國家需要的CPU,同時又是我們能夠以合理價位生產(chǎn)制造的CPU,才會成為大規(guī)模軍用的CPU。