近年來,,隨著ARM的走紅,ARM獨(dú)特的授權(quán)模式也幫助越來越多的中國芯片產(chǎn)業(yè)成長起來,。尤其是華為海思的成長,,更是讓很多人感到鼓舞。但很多好事之徒卻說它毫無技術(shù)含量,。
看完之后痛心疾首,,覺得很多人說的很多方面都是不對的,這是對中國IC設(shè)計(jì)的不尊重,。所以獻(xiàn)上此文,,客觀介紹一下芯片的設(shè)計(jì)制造流程,說一下我眼里的芯片產(chǎn)業(yè),。
賣弄前先自我介紹順便聲明一下,,本人海思新員工,但不從事芯片設(shè)計(jì)類崗位,,只是最近聽過一個關(guān)于芯片的培訓(xùn),,再加上本人對芯片如何實(shí)現(xiàn)等問題也比較好奇,所以搜集過一些非官方,、不科學(xué)資料,,發(fā)表一下淺鄙之見。
一,、工藝制程并不是越小越好
OK,,廢話不多說,對于芯片,,先說一些自己感興趣的,。經(jīng)常能聽到有人爭論40nm工藝、28nm工藝,,14nm工藝,,甚至10nm,7nm,,那么這個多少nm指得是什么呢?
它指的是mos管在硅片上的大小,,mos管就是晶體管,它是組成芯片的最小單位,,一個與非門需要4個mos管組成,,一般一個ARM四核芯片上有5億個左右的mos管。世界上第一臺計(jì)算機(jī)用個是真空管,,效果和mos管一樣,,但是真空管的大小有兩個拇指大,,而現(xiàn)在最先進(jìn)工藝蝕刻的mos管只有7nm大。
說到這里,,大家一定和我一樣,,非常好奇如何在一個15mm*15mm的正方形硅片上制作出5億個大小僅為40nm的mos管。如果要用機(jī)械的方法完成這一過程,,世界上很難有這么精密的儀器,,可以雕刻出nm級的mos管,就算有,,要雕刻出5億個,,所需要的成本、時間也是難以估計(jì)的,。
借助光可以在硅片上蝕刻下痕跡,,掩膜就可以控制硅片上哪些部分會被蝕刻。掩膜覆蓋的地方,,光照不到,,硅片不會被蝕刻。硅片被蝕刻后,,再涂上氧化層和金屬層,再蝕刻,,反復(fù)多次,,硅片就制造好了。一般來說,,制作硅片需要蝕刻十幾次,,每次用的工藝、掩膜都不一樣,。幾次蝕刻之間,,蝕刻的位置可能會有偏差,如果偏差過大,,出來的芯片就不能用了,,偏差需要控制在幾個nm以內(nèi)才能保證良品率,所以說制作硅片用的技術(shù)是人類目前發(fā)明的最精密的技術(shù),。
芯片可以靠掩膜蝕刻,,批量生產(chǎn),但是掩膜必須用更高精度的機(jī)器慢慢加工制作,,成本非常高,,一塊掩膜造價十萬美元。制造一顆芯片需要十幾塊不同的掩膜,,所以芯片制造初期投入非常大,,動輒幾百萬美元,。芯片試生產(chǎn)過程,叫做流片,,流片也需要掩膜,,投入很大,流片之前,,誰都不知道芯片設(shè)計(jì)是否成功,,有可能流片多次不成功。所以國內(nèi)能做高端芯片的公司真沒幾家,,光是掩膜成本就沒幾個公司支付得起,。
芯片量產(chǎn)后,成本相對來說就比較低了,,好的掩膜非常大,,直徑30厘米,可以同時生產(chǎn)上百塊芯片,。芯片如果出貨量很大,,利潤還是非常高的,像英特爾的芯片,,賣1000多一塊,,可能平均制造成本100不到。但如果出貨量很少,,那芯片平均制造成本就高得嚇人,,幾百萬美元打水漂是很正常的。
海思芯片價格有沒有競爭力,,還得看華為手機(jī)出貨量大不大,。看到有人問20nm好還是40nm好,,從大小上來看顯而易見20nm好,。20nm意味著mos管大小只有40nm的1/4。mos管工作時是一個充電放電的過程,,mos管越小,,它充電需要的電量越小,所以功耗越小,。而且mos管小之后,,門電路密度就大,同樣大小芯片能放的mos管數(shù)就越多,,性能空間越大,。40nm工藝門電路密度是65nm的2.35倍。但以上都是在不考慮漏電和二級效應(yīng)的情況下的理論數(shù)據(jù),。
當(dāng)然,,IC尺寸縮小也有其物理限制,,當(dāng)我們將晶體管縮小到 20 納米左右時,就會遇到量子物理中的問題,,讓晶體管有漏電的現(xiàn)象,,抵銷縮小 L 時獲得的效益。作為改善方式,,就是導(dǎo)入 FinFET(Tri-Gate)這個概念,,如下圖。在 Intel 以前所做的解釋中,,可以知道藉由導(dǎo)入這個技術(shù),,能減少因物理現(xiàn)象所導(dǎo)致的漏電現(xiàn)象。
為什么會有人會說各大廠進(jìn)入 10 納米制程將面臨相當(dāng)嚴(yán)峻的挑戰(zhàn),,主因是 1 顆原子的大小大約為 0.1 納米,,在 10 納米的情況下,一條線只有不到 100 顆原子,,在制作上相當(dāng)困難,,而且只要有一個原子的缺陷,像是在制作過程中有原子掉出或是有雜質(zhì),,就會產(chǎn)生不知名的現(xiàn)象,,影響產(chǎn)品的良率。
如果無法想象這個難度,,可以做個小實(shí)驗(yàn),。在桌上用 100 個小珠子排成一個 10×10 的正方形,并且剪裁一張紙蓋在珠子上,,接著用小刷子把旁邊的的珠子刷掉,,最后使他形成一個 10×5 的長方形,。這樣就可以知道各大廠所面臨到的困境,,以及達(dá)成這個目標(biāo)究竟是多么艱巨。
再說說二級效應(yīng)吧,,學(xué)過初中物理的都知道一個最簡單電路的組成,,包括電源、導(dǎo)線,、電阻,。接通電源,電流就瞬間流過電阻,。如果把電阻換成電感,,則電感會有一個逐漸充電的過程,這種情況下,,電流就不是瞬間流過電感,。
其實(shí)電阻也有感抗,,只是非常微小,可以忽略不計(jì),。但如果接在電阻上的電壓非常微小,,電流量非常微小,那此時,,感抗就不能被忽略不計(jì)了,。二級效應(yīng)在芯片制程非常小時(28nm以下),非常明顯,,mos管由于電壓低,,電流小,充電受到感抗的影響比40nm大,,充電速度慢,。芯片想要達(dá)到高頻率,mos管要加載更高的電壓,,這樣就增加了功耗,。漏電也是低制程的一個副作用,也需要提供芯片的功耗才能克服,。所以低制程帶來的功耗優(yōu)勢就被漏電和二級效應(yīng)扳回去了很多,。
當(dāng)然,新的工藝,、好的工藝可以部分解決上面兩個問題,,不同工藝用的物理、化學(xué)材料不同,,工藝流程也不同,。高通四核用的是老28nm工藝,目前來看,,這個28nm工藝相比40nm工藝優(yōu)勢不大,。
然后制程方面,目前聽過的最先進(jìn)的制程是7nm,,但這個制程只存在于實(shí)驗(yàn)室里,,遠(yuǎn)遠(yuǎn)沒有達(dá)到大規(guī)模量產(chǎn)的需要。低制程有些困難是難以克服的,,學(xué)過物理的都知道光的衍射,,低制程意味著掩膜透孔會非常小,衍射會非常嚴(yán)重,,這樣肯定是無法蝕刻硅片的,。這個問題也許可以通過使用電子射線或者其他粒子射線來蝕刻硅片解決,但這是那幫孫子去想的問題了。
二,、芯片設(shè)計(jì)考驗(yàn)公司技術(shù)水平
說說設(shè)計(jì)吧,,芯片設(shè)計(jì)分為前端設(shè)計(jì)和后端設(shè)計(jì)。前端設(shè)計(jì)就像做建筑中的畫設(shè)計(jì)圖,,芯片的邏輯,、模塊、門電路關(guān)系都是前端設(shè)計(jì)完成的,。后端設(shè)計(jì)則是布局布線,,芯片做出來,最終是個實(shí)際的東西,,那每個mos管擺放什么位置,,每一條線怎么連,這個都是后端設(shè)計(jì)決定的,。前端設(shè)計(jì)沒啥好說的,,雖然技術(shù)含量非常高。
我就說說后端設(shè)計(jì)吧,,有趣一點(diǎn),。5億個mos管的布局布線,雖然很多用的是IP硬核,,別的廠商已經(jīng)幫忙做好了,,但這絕對不是一個輕松的活。拿導(dǎo)線來說,,兩條導(dǎo)線在一個硅平面上不能交叉,,它們可不像我們家里的導(dǎo)線,包了一層塑料,。如果把5億個mos管的導(dǎo)線放在一個平面上,,還要讓某些連接、某些不連接,,還不能交叉,,這絕對是不可能的。
事實(shí)上,,一個芯片布線,,從上到下可能有十幾層,。每一層都是蜘蛛網(wǎng)一樣的布線,,如果我們化身成一個1nm的小人,進(jìn)入芯片的世界走一圈,,那絕對會發(fā)現(xiàn)那是一個非常宏偉,,非常不可思議的世界。后端設(shè)計(jì)除了要保證線路正確連接,還要使模塊占用面積小,,功耗小,,規(guī)避二級效應(yīng),要求是很高的,。名牌大學(xué)畢業(yè)搞后端,,搞個兩年也才剛剛?cè)腴T。
再說說仿真,,芯片在流片之前,,誰都不知道它長什么樣子,更難以去揣測它設(shè)計(jì)是否成功,、合理,,流片成本又非常高,不可能為了驗(yàn)證設(shè)計(jì)是否成功去流片,。這個時候就需要用到仿真,,用計(jì)算機(jī)去模擬電路的運(yùn)行情況。仿真貫穿芯片設(shè)計(jì)的始末,,有前端仿真,、后端仿真、模擬仿真,、數(shù)字仿真…仿真脫離不了計(jì)算機(jī)仿真軟件,,像Sysnopys、Cadence它們是芯片設(shè)計(jì),、驗(yàn)證軟件領(lǐng)域的巨擘,,海思每年付給他們的費(fèi)用我不知道,但起碼千萬級別,。
仿真是一個需要超高性能計(jì)算機(jī)的任務(wù),,海思在IT中心有大量高性能計(jì)算機(jī)組成云計(jì)算資源,但在面對大型仿真時還是很吃力,,跑幾個小時只能模擬出芯片幾秒鐘的運(yùn)行情況,。因?yàn)橐芊抡妫@些計(jì)算機(jī)一天24小時都在跑,。順便說一下我們部門一個Linux服務(wù)器的配置,,英特爾4核4GCPU,內(nèi)存16G,。
這個只是一個打雜的服務(wù)器,,放個數(shù)據(jù)庫,編譯幾個軟件,。海思小網(wǎng)的Solaris接入服務(wù)器同時有上百人在上面辦公,。從這點(diǎn)也可以看出,,做芯片投入還是非常大的,就光這些軟件,、硬件成本,,每個人每年要花掉公司幾十萬。
我們要承認(rèn),,中國IC設(shè)計(jì)公司和美國那些公司比起來缺失有很大差距,。畢竟80年代,人家芯片設(shè)計(jì),、制作都已經(jīng)非常成熟的時候,,我們才有第一臺計(jì)算機(jī)。
我們知道,,在一款數(shù)字芯片商,,它上面很多模塊都是別人的,公司花了大筆錢買了版權(quán),,這個叫IP核,。
IP核分軟核和硬核,現(xiàn)在貌似也有軟硬結(jié)合的核…它是什么東西呢?比如ARM指令授權(quán),,它就是軟核,,它只規(guī)定了CPU的指令集,好比建橋,,它只告訴你橋應(yīng)該建多長,、多寬、大概長什么樣,,但是具體細(xì)節(jié)沒有,,不告訴你電路在芯片上怎么擺放,怎么連線,。軟核的好處是給了很大的發(fā)揮空間,,模仿、抄襲也簡單,,以后做類似東西可以參考,。硬核就是它只告訴你電路在芯片上具體長什么樣子,把它擺上去用就行了,。硬核的好處是它一般都是經(jīng)過其它芯片驗(yàn)證的,,很容易了解它的具體性能。但你幾乎不可能修改它,,也很難了解它的實(shí)現(xiàn)細(xì)節(jié),,畢竟有幾千萬個mos管,人怎么分析,。
中國的IC設(shè)計(jì)公司,,自主IP核不多,因此很多都是從類似ARM和Ceva這類公司購買,,但客觀地說,,現(xiàn)在芯片設(shè)計(jì)分工越來越細(xì),每個公司只是完成其中一小部分,,就算是高通,,也用了很多其他公司的IP核。
一個公司想把所有活都干了,,那絕對是不可能的,,就算做到了,它的芯片也不會有競爭力,。其實(shí)玩搭積木也是很有技術(shù)含量的,,海思肯定是國內(nèi)玩得最好的公司。目前公司的一個目標(biāo)也是把越來越多的模塊自主化,,但是需要時間,。
先從最底層芯片說起,開頭說了mos管,,現(xiàn)在說說與非門,。上面說了mos管是芯片的最小單位,但這是對于芯片制造廠而言的,。芯片設(shè)計(jì)時不會直接畫mos管,,在數(shù)字電路中,使用的最小單位是門電路,,與非門就是用得最廣泛的一種,。一個與非門大概要4個mos管組成,與非門大家應(yīng)該都非常熟悉,。如下圖:
大家都知道,,家里的開關(guān)有兩種狀態(tài)嘛,打開和關(guān)閉,。當(dāng)上圖中的開關(guān)1和開關(guān)2兩個開關(guān)中只有1個開關(guān)打開時,,經(jīng)過與非門處理,開關(guān)3就打開了,。如果開關(guān)1和開關(guān)2兩個開關(guān)都關(guān)閉或者兩個開關(guān)都打開,,經(jīng)過與非門處理,開關(guān)3就關(guān)閉了,。其實(shí)和與非門類似的東西生活中隨處可見,。比如說有的人家里有一個燈,這個燈在家門口設(shè)了一個開關(guān),,方便進(jìn)出家門時開關(guān)燈,。在床邊也設(shè)了個開關(guān),,方便晚上睡覺時關(guān)燈。這個其實(shí)就是一個與非門,,兩個開關(guān)控制同一個燈,。一個開關(guān)打開,燈就亮了,,兩個開關(guān)同時打開或者關(guān)閉,,燈就滅了。
這樣的話,,用一個與非門和一個與門就模擬了最簡單的一個加法器,,最大只能計(jì)算1+1。計(jì)算機(jī)中有幾億個這樣的門電路,,它們組合起來就能做非常復(fù)雜的運(yùn)算?,F(xiàn)在的大部分CPU都是64位的,這種CPU肯定會有64位加法器甚至128位加法器,。拿64位加法器來說,,它最大可以計(jì)算出18446744073709551616 + 18446744073709551616。
說到這里,,不得不說說芯片頻率,。
先說說1G頻率是什么概念,讓大家有個至關(guān)的認(rèn)識,,這個數(shù)字就是說每秒鐘10億(1,000,000,000)次,。為什么會有這個東西呢?剛才我說了與非門,開關(guān)3是隨著開關(guān)1和開關(guān)2的變化而變化的,,對人類來說,,開關(guān)3的變化速度很快,是瞬間的,,但這個變化總是需要一點(diǎn)時間的,。開關(guān)3可能是另外一個門電路的輸入開關(guān),如果變化到一半,,它的下一個門電路就接受開關(guān)3的輸入,,可能會產(chǎn)生很嚴(yán)重的問題。
一般來說,,一層門電路需要等它的上一層門電路完全變化完畢,,輸出穩(wěn)定之后,它才接收上一層的輸入,,開始變化,。這個時候就需要有一個指揮家來指揮這些門電路什么時候開始變化,這個指揮家就是芯片頻率,,指揮家會定時發(fā)出脈沖,,1G就是每秒1一次脈沖,。門電路等脈沖到來的時候就開始做這個變化。
從上面可以看出,,指揮家指揮得越快,,芯片運(yùn)算速度越快。但要說明一點(diǎn),,兩倍的頻率并不代表兩倍的性能,。因?yàn)镃PU和內(nèi)存,、外設(shè)頻率不同步,,它們之間的頻率相差越多,CPU空轉(zhuǎn)的次數(shù)越多,。另外再說一點(diǎn),,門電路變化的過程其實(shí)就是mos充電放電的過程,mos管充電放電越快,,芯片的頻率可以做到越高,,而二級效應(yīng)會減慢mos充電放電的速度。如果mos管想要充電放電快一點(diǎn),,要提高mos管電壓,,這樣就提高了芯片的功耗。
而關(guān)于芯片設(shè)計(jì)過程,,大家對IP核,、指令集和架構(gòu)這些東西都比較感興趣。
先說說ARM的IP核吧,,ARM授權(quán)包括指令集和CPU核心架構(gòu),。據(jù)我了解,除了高通外,,其它芯片廠商都使用了ARM的CPU核心架構(gòu),,也就是經(jīng)常可以聽到的A9 A15,。高通比較高端,,CPU核心架構(gòu)自己搞,如果搞得比A9 A15好的話確實(shí)可以提高CPU性能,,但由于ARM收取高昂的核心架構(gòu)修改費(fèi)用,,所以要付更多的錢給ARM。指令集是CPU與上層的編譯器,、操作系統(tǒng)和應(yīng)用程序的接口,,使用ARM指令集意味著你做的CPU可以兼容安卓系統(tǒng)、安裝應(yīng)用,、C編譯器,。
如果哪個公司自己整一套全新的指令集,,那它做出來的CPU一點(diǎn)用處沒有,既沒有操作系統(tǒng)也沒用應(yīng)用,。此前聯(lián)想出了個K800,,用的是英特爾Atom CPU,這款CPU非常特別,,使用X86指令集,,結(jié)果是一出悲劇,很多游戲兼容不了,。不過英特爾還得感謝谷歌,,否則這個CPU連安卓都兼容不了。目前來看,,CPU不用ARM指令集很難玩轉(zhuǎn),,而且隨著越來越多應(yīng)用只支持ARM,ARM的地位會越來越鞏固,,就像電腦CPU,,如果不用X86指令集,連Windows都很難安裝,這是一個壟斷的帝國,。
下面說說CPU核心架構(gòu),,說之前不得不先談?wù)凱DK。PDK是ProcessDesign Kit 工藝設(shè)計(jì)包,,它和晶圓廠的制作工藝緊密相關(guān),。PDK是什么呢,它描述了一個具體工藝基本元器件的電器特性,。比如臺積電28nm工藝和40nm工藝做出來的mos管電器特性肯定不一樣,。28nm工藝和40nm工藝做出來的mos管額定電流范圍、電壓范圍肯定不同,,在相同外界輸入下,,輸出曲線也肯定不一樣。芯片公司如果沒有PDK,,根本不知道設(shè)計(jì)出來的電路性能如何,,也沒辦法跑仿真。簡單一點(diǎn)說,,你拿40nm PDK設(shè)計(jì)電路,,用28nm工藝生產(chǎn),生產(chǎn)出來的芯片絕對一點(diǎn)用處沒有,。所以說芯片設(shè)計(jì)非??啾疲憔幊痰模a可以重用,,搞芯片設(shè)計(jì)的,,如果換了生產(chǎn)工藝,很多東西得要從頭再來,。
ARM給IC設(shè)計(jì)廠商的CPU核心架構(gòu)只是FPGA代碼,,它不是工藝相關(guān)的,數(shù)字前端設(shè)計(jì)的工作會少不少,,但后端設(shè)計(jì)有大量的工作要做,。但ARM提供的僅僅是一個計(jì)算核心,外圍一個都沒有,。外圍包括一些什么呢?比如USB IP核,,沒有這個,手機(jī)就沒有USB功能;比如GPU,,這個不用我多說吧;比如音頻IP核,,杜比音效就是這么來的;比如視頻解碼IP核,,沒有這個,,看視頻只能軟解;還有CPU功耗控制IP核等等。
對于很多IC設(shè)計(jì)公司來說,,這些外圍的IP核很多都是外購的,。因此看CPU真心不能只看頻率,外圍IP有好有壞,,有些比較高端的IP核授權(quán)費(fèi)用非常高,。即使買了很多IP核,但芯片也絕不是閉著眼睛就能整出來的,。
順便說一下,,高通芯片外圍的IP核很多也是外購的。
所以說芯片設(shè)計(jì)并不是簡單的事情,,很多人認(rèn)為國內(nèi)的IC設(shè)計(jì)公司毫無技術(shù)含量這種說法是無稽之談,。