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