《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 詳細(xì)闡述 一個(gè)技術(shù)員眼里的芯片設(shè)計(jì)

詳細(xì)闡述 一個(gè)技術(shù)員眼里的芯片設(shè)計(jì)

2016-10-18

       近年來,隨著ARM的走紅,ARM獨(dú)特的授權(quán)模式也幫助越來越多的中國芯片產(chǎn)業(yè)成長起來,。尤其是華為海思的成長,,更是讓很多人感到鼓舞。但很多好事之徒卻說它毫無技術(shù)含量,。

  看完之后痛心疾首,,覺得很多人說的很多方面都是不對的,這是對中國IC設(shè)計(jì)的不尊重,。所以獻(xiàn)上此文,,客觀介紹一下芯片的設(shè)計(jì)制造流程,說一下我眼里的芯片產(chǎn)業(yè),。

  賣弄前先自我介紹順便聲明一下,,本人海思新員工,但不從事芯片設(shè)計(jì)類崗位,,只是最近聽過一個(gè)關(guān)于芯片的培訓(xùn),,再加上本人對芯片如何實(shí)現(xiàn)等問題也比較好奇,所以搜集過一些非官方,、不科學(xué)資料,,發(fā)表一下淺鄙之見。

  一,、工藝制程并不是越小越好

  OK,,廢話不多說,對于芯片,,先說一些自己感興趣的,。經(jīng)常能聽到有人爭論40nm工藝、28nm工藝,,14nm工藝,,甚至10nm,7nm,,那么這個(gè)多少nm指得是什么呢?

  它指的是mos管在硅片上的大小,,mos管就是晶體管,,它是組成芯片的最小單位,一個(gè)與非門需要4個(gè)mos管組成,,一般一個(gè)ARM四核芯片上有5億個(gè)左右的mos管,。世界上第一臺計(jì)算機(jī)用個(gè)是真空管,效果和mos管一樣,,但是真空管的大小有兩個(gè)拇指大,,而現(xiàn)在最先進(jìn)工藝蝕刻的mos管只有7nm大。

  說到這里,,大家一定和我一樣,,非常好奇如何在一個(gè)15mm*15mm的正方形硅片上制作出5億個(gè)大小僅為40nm的mos管。如果要用機(jī)械的方法完成這一過程,,世界上很難有這么精密的儀器,,可以雕刻出nm級的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)后,成本相對來說就比較低了,,好的掩膜非常大,,直徑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倍,。但以上都是在不考慮漏電和二級效應(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)象。

8706efee155c549ba6d57b15c754065c.jpg

  為什么會(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)究竟是多么艱巨,。

  再說說二級效應(yīng)吧,學(xué)過初中物理的都知道一個(gè)最簡單電路的組成,,包括電源,、導(dǎo)線、電阻,。接通電源,,電流就瞬間流過電阻,。如果把電阻換成電感,則電感會(huì)有一個(gè)逐漸充電的過程,,這種情況下,,電流就不是瞬間流過電感。

  其實(shí)電阻也有感抗,,只是非常微小,,可以忽略不計(jì)。但如果接在電阻上的電壓非常微小,,電流量非常微小,,那此時(shí),感抗就不能被忽略不計(jì)了,。二級效應(yīng)在芯片制程非常小時(shí)(28nm以下),,非常明顯,mos管由于電壓低,,電流小,,充電受到感抗的影響比40nm大,充電速度慢,。芯片想要達(dá)到高頻率,,mos管要加載更高的電壓,這樣就增加了功耗,。漏電也是低制程的一個(gè)副作用,也需要提供芯片的功耗才能克服,。所以低制程帶來的功耗優(yōu)勢就被漏電和二級效應(yīng)扳回去了很多,。

  當(dāng)然,新的工藝,、好的工藝可以部分解決上面兩個(gè)問題,,不同工藝用的物理、化學(xué)材料不同,,工藝流程也不同,。高通四核用的是老28nm工藝,目前來看,,這個(gè)28nm工藝相比40nm工藝優(yōu)勢不大,。

  然后制程方面,目前聽過的最先進(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)幫忙做好了,,但這絕對不是一個(gè)輕松的活。拿導(dǎo)線來說,,兩條導(dǎo)線在一個(gè)硅平面上不能交叉,,它們可不像我們家里的導(dǎo)線,包了一層塑料,。如果把5億個(gè)mos管的導(dǎo)線放在一個(gè)平面上,,還要讓某些連接、某些不連接,,還不能交叉,,這絕對是不可能的。

  事實(shí)上,,一個(gè)芯片布線,,從上到下可能有十幾層。每一層都是蜘蛛網(wǎng)一樣的布線,如果我們化身成一個(gè)1nm的小人,,進(jìn)入芯片的世界走一圈,,那絕對會(huì)發(fā)現(xiàn)那是一個(gè)非常宏偉,非常不可思議的世界,。后端設(shè)計(jì)除了要保證線路正確連接,,還要使模塊占用面積小,功耗小,,規(guī)避二級效應(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)用我不知道,但起碼千萬級別,。

  仿真是一個(gè)需要超高性能計(jì)算機(jī)的任務(wù),,海思在IT中心有大量高性能計(jì)算機(jī)組成云計(jì)算資源,但在面對大型仿真時(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í)候,,我們才有第一臺計(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è)公司想把所有活都干了,那絕對是不可能的,,就算做到了,,它的芯片也不會(huì)有競爭力。其實(shí)玩搭積木也是很有技術(shù)含量的,,海思肯定是國內(nèi)玩得最好的公司,。目前公司的一個(gè)目標(biāo)也是把越來越多的模塊自主化,但是需要時(shí)間,。

  先從最底層芯片說起,,開頭說了mos管,現(xiàn)在說說與非門,。上面說了mos管是芯片的最小單位,,但這是對于芯片制造廠而言的。芯片設(shè)計(jì)時(shí)不會(huì)直接畫mos管,,在數(shù)字電路中,,使用的最小單位是門電路,與非門就是用得最廣泛的一種,。一個(gè)與非門大概要4個(gè)mos管組成,,與非門大家應(yīng)該都非常熟悉。如下圖:

0a6ee1295daf239c43e9efbfd51a09be.jpg

  大家都知道,,家里的開關(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)閉,,燈就滅了。

  這樣的話,,用一個(gè)與非門和一個(gè)與門就模擬了最簡單的一個(gè)加法器,,最大只能計(jì)算1+1。計(jì)算機(jī)中有幾億個(gè)這樣的門電路,,它們組合起來就能做非常復(fù)雜的運(yùn)算?,F(xiàn)在的大部分CPU都是64位的,這種CPU肯定會(huì)有64位加法器甚至128位加法器,。拿64位加法器來說,,它最大可以計(jì)算出18446744073709551616 + 18446744073709551616。

  說到這里,,不得不說說芯片頻率,。

  先說說1G頻率是什么概念,讓大家有個(gè)至關(guān)的認(rèn)識,,這個(gè)數(shù)字就是說每秒鐘10億(1,000,000,000)次,。為什么會(huì)有這個(gè)東西呢?剛才我說了與非門,開關(guān)3是隨著開關(guān)1和開關(guān)2的變化而變化的,,對人類來說,,開關(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管充電放電越快,芯片的頻率可以做到越高,,而二級效應(yīng)會(huì)減慢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)??梢月牭降腁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è)具體工藝基本元器件的電器特性,。比如臺積電28nm工藝和40nm工藝做出來的mos管電器特性肯定不一樣,。28nm工藝和40nm工藝做出來的mos管額定電流范圍、電壓范圍肯定不同,,在相同外界輸入下,,輸出曲線也肯定不一樣。芯片公司如果沒有PDK,,根本不知道設(shè)計(jì)出來的電路性能如何,,也沒辦法跑仿真。簡單一點(diǎn)說,,你拿40nm PDK設(shè)計(jì)電路,,用28nm工藝生產(chǎn),,生產(chǎn)出來的芯片絕對一點(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核等等,。

  對于很多IC設(shè)計(jì)公司來說,這些外圍的IP核很多都是外購的,。因此看CPU真心不能只看頻率,,外圍IP有好有壞,有些比較高端的IP核授權(quán)費(fèi)用非常高,。即使買了很多IP核,,但芯片也絕不是閉著眼睛就能整出來的。

  順便說一下,,高通芯片外圍的IP核很多也是外購的,。

  所以說芯片設(shè)計(jì)并不是簡單的事情,很多人認(rèn)為國內(nèi)的IC設(shè)計(jì)公司毫無技術(shù)含量這種說法是無稽之談,。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。