技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 一文教你讀懂芯片后端報告

一文教你讀懂芯片后端報告

時間:2019-02-19 11:35:21來源:電子發(fā)燒友

導(dǎo)語:?作為一個有理想的手機(jī)芯片公司,可以選擇的工廠并不多,臺積電(TSMC),聯(lián)電(UMC),三星,GlobalFoundries(GF),中芯(SMIC)也勉強(qiáng)算一個。還有,今年開始Intel工廠(ICF)也會開放給ARM處理器。

首先,我要強(qiáng)調(diào),我不是做后端的,但是工作中經(jīng)常遇到和做市場和芯片同事討論P(yáng)PA。這時,后端會拿出這樣一個表格:

芯片

上圖是一個A53的后端實(shí)現(xiàn)結(jié)果,節(jié)點(diǎn)是TSMC16FFLL+,我們就此來解讀下。

首先,我們需要知道,作為一個有理想的手機(jī)芯片公司,可以選擇的工廠并不多,臺積電(TSMC),聯(lián)電(UMC),三星,GlobalFoundries(GF),中芯(SMIC)也勉強(qiáng)算一個。還有,今年開始Intel工廠(ICF)也會開放給ARM處理器。事實(shí)上有人已經(jīng)開始做了,只不過用的不是第三方的物理庫。通常新工藝會選TSMC,然后要降成本的時候會去UMC。GF一直比較另類,保險起見不敢選,而三星不太理別人所以也沒人理他。至于SMIC,嘿嘿,那需要有很高的理想才能選。

16nm的含義我就不具體說了,網(wǎng)上很多解釋。而TSMC的16nm又分為很多小節(jié)點(diǎn),F(xiàn)FLL+,F(xiàn)FC等。他們之間的最高頻率,漏電,成本等會有一些區(qū)別,適合不同的芯片,比如手機(jī)芯片喜歡漏電低,成本低的,服務(wù)器喜歡頻率高的,不一而足。

接下來看表格第一排,Configuration。這個最容易理解,使用了四核A53,一級數(shù)據(jù)緩存32KB,二級1MB,打開了ECC和加解密引擎。這幾個選項會對面積產(chǎn)生較大影響,對頻率和功耗也有較小影響。

接下來是Performancetarget,目標(biāo)頻率。后端工程師把頻率稱作Performance,在做后端實(shí)現(xiàn)時,必須在頻率,功耗,面積(PPA)里選定一個主參數(shù)來作為主要優(yōu)化目標(biāo)。這個表格是專門為高性能A53做的,頻率越高,面積和漏電就會越大,這是沒法避免的。稍后我再貼個低功耗小面積的報告做對比。

下面是CurrentPerformance,也就是現(xiàn)在實(shí)現(xiàn)了的頻率。里面的TT/0.9V/85C是什么意思?我們知道,在一個晶圓(Wafer)上,不可能每點(diǎn)的電子漂移速度都是一樣的,而電壓,溫度不同,它們的特性也會不同,我們把它們分類,就有了PVT(Process,Voltage,Temperature),分別對應(yīng)于TT/0.9V/85C。而Process又有很多Conner,類似正態(tài)分布,TT只是其中之一,按照電子漂移速度還可以有SS,S,TT,F(xiàn),F(xiàn)F等等。通常后端結(jié)果需要一個Signoff條件(我們這通常是SSG),按照這個條件出去流片,作為篩選門檻,之下的芯片就會不合格,跑不到所需的頻率。所以條件設(shè)的越低,良率(Yield)就會越高。但是條件也不能設(shè)的太低,不然后端很難做,或者干脆方程無解,跑不出結(jié)果。X86上有個詞叫體質(zhì),就是這個PVT。

這一欄有四個頻率,上下兩組容易區(qū)分,就是不同的電壓。在頻率確定時,動態(tài)功耗是電壓的2次方,這個大家都知道。而左右兩組數(shù)字的區(qū)別就是Corner了,分別為TT和SSG。

下一行是OptimizationPVT。大家都知道后端EDA工具其實(shí)就是解方程,需要給他一個優(yōu)化目標(biāo),它會自動找出最優(yōu)局部解。而1.0V和0.9V中必須選一個值,作為最常用的頻率,功耗和面積的甜點(diǎn)(SweetSpot)。這里是選了1.0V,它的SSG和目標(biāo)要求更接近,那些達(dá)不到的Corner可以作為降頻賤賣。

再下一行是漏電Leakage,就是靜態(tài)功耗。CPU停在那啥都不跑也會有這個功耗,它包含了四個CPU中的邏輯和一級緩存的漏電。但是A53本身是不包含二級緩存的,其他的一些小邏輯,比如SCU(SnoopingControlUnit)也在CPU核之外,這些被稱作Non-CPU,包含在MP4中。我們待機(jī)的時候就是看的它,可以通過powergating關(guān)掉二三級緩存,但是通常來說,不會全關(guān),或者沒法關(guān)。

下面是DynamicPower,動態(tài)功耗?;旧衔乙娺^的CPU在測量動態(tài)功耗的時候,都是跑的Dhrystone。Dhrystone是個非常古老的跑分程序,基本上就是在做字符串拷貝,非常容易被軟件,編譯器和硬件優(yōu)化,作為性能指標(biāo)基本上只有MCU在看了。但是它有個好處,就是程序很小,數(shù)據(jù)量也少,可以只運(yùn)行在一級緩存(如果有的話),這樣二級緩存和它之后的電路全都只有漏電。雖然訪問二級三級緩存甚至DDR會比訪問一級緩存耗費(fèi)更多的能量,但是它們的延遲也大,此時CPU流水線很可能陷入停頓。這樣的后果就是Dhrystone能最大程度的消耗CPU核心邏輯的功耗,比訪問二級以上緩存的程序都要高。所以通常都拿Dhrystone來作為CPU最大功耗指標(biāo)。實(shí)際上,是可以寫出比Dhrystone更耗電的程序的,稱作MaxPowerVector,做SoC功耗估算的時候會用上。

動態(tài)功耗和電壓強(qiáng)相關(guān)。公式里面本身就是2次方,然后頻率變化也和電壓相關(guān),在跨電壓的時候就是三次方的關(guān)系了。所以別看1.0V只比0.72V高了39%,最終動態(tài)功耗可能是3倍。而頻率高的時候,動態(tài)功耗占了絕大部分,所以電壓不可小覷。

此外,動態(tài)功耗和溫度相關(guān),SoC運(yùn)行的時候不可能溫度維持在0度,所以功耗通常會拿85度或者更高來計算,這個就不多說了。

下一行是Area,面積。面積是芯片公司的立足之本,和毛利率直接相關(guān)。所以在性能符合的情況下,越小越好,甚至可以犧牲功耗,不惜推高電壓,所以有了OD(OverDrive)。有個數(shù)據(jù),當(dāng)前28nm上,每個平方毫米差不多是10美分的成本,一個超低端的手機(jī)芯片怎么也得30mm(200塊錢那種手機(jī)用的,可能你都沒見過,還是智能機(jī)),芯片面積成本就是3刀,這還不算封測,儲存和運(yùn)輸。低端的也得是40mm(300塊的手機(jī))。我們常見的600-700塊錢的手機(jī),其中六分之一成本是手機(jī)芯片。當(dāng)然,反過來,也有人不缺錢的,比如蘋果,據(jù)說A10在16nm上做到了125mm,換算成這里的A53MP4,單看面積不考慮功耗,足足可以放120個A53,極其奢侈,這可是跑在2.8G的A53,如果是1.5G的,150個都可能做到。

那蘋果這么大的面積到底是做什么了?首先,像GPU,Video,Display,基帶,ISP這些模塊,都是可以輕易的拿面積換性能的,因?yàn)榭梢圆⑿刑幚?。而且,功耗也可以拿面積換,一個最簡單的方法就是降頻,增加處理單元數(shù)。這樣漏電雖然增加,但是電壓下降,動態(tài)功耗可以減少很多。一個例外就是CPU的單核性能,為什么蘋果可以做到Kirin960的1.8倍,散熱還能接受?和物理庫,后端,前端,軟件都有關(guān)系。

首先,A10是6發(fā)射,同時代的A73只用了2發(fā)射。當(dāng)然,由于受到了數(shù)據(jù)和指令相關(guān)性限制,性能不是三倍提升,而6發(fā)射的后果是面積和功耗非線性增加。作為一個比較,我看過ARM的6發(fā)射CPU模型,同工藝下,單核每赫茲性能是A73的1.8倍,動態(tài)功耗估算超過2倍,面積也接近2倍。當(dāng)然,它的微結(jié)構(gòu)和A73是有挺大區(qū)別的。這個單核芯片跑在16nm,2.5Ghz,單核功耗差不多是1W。而手機(jī)芯片的功耗可以維持在2.5W不降頻,所以蘋果的2.3Ghz的A10算下來還是可行的。

為了控制功耗,在做RTL的時候就需要插入額外晶體管,做ClockGating,而且這還是分級的,RTL級,模塊級,系統(tǒng)級,信號時鐘上也有(我看到的SoC時鐘通常占了整個邏輯電路功耗的三分之一)。這樣一套搞下來,面積起碼大1/3.然后就是PowerGating,也是分級的。最簡單的是每塊緩存給一個開關(guān),模塊也有一個開關(guān)。復(fù)雜的根據(jù)不同指令,可以計算出哪些Cachebank短時間內(nèi)不用,直接給它關(guān)了。PowerGating需要的延時會比ClockGating大,有的時候如果操作很頻繁,PowerGating反而得不償失,這需要仔細(xì)的考量。而且,設(shè)計的越復(fù)雜,驗(yàn)證也就越難寫,這里面需要做一個均衡。除了時鐘域,電源域,還有電壓域,可以根據(jù)不同頻率調(diào)電壓。當(dāng)然了,域越多,布線越難,面積越大。

再往上,可以定義出不同的powerstate,讓上層軟件也參與經(jīng)來,形成電源管理和調(diào)度。我在這個回答里面寫的更詳細(xì)一些:如何評價ARM的big.LITTLE大小核切換技術(shù)?

再回到蘋果A10,它還使用了6MB的緩存。這個在手機(jī)里面也算大的驚世駭俗。通常高端的A73加2MB,A53加1MB,已經(jīng)很高大上了,低端的加起來也不超過1MB。我拿SPECINT2K在A53做過一些實(shí)驗(yàn),二級緩存從128KB增加到1MB只會增加15%不到的性能,到6MB那性能/面積收益更不是線性的,這是赤裸裸的面積換性能。而且蘋果宣揚(yáng)的不是SPECINT,而是GeekBench4.0,我懷疑是不是這個跑分對緩存大小更敏感,有空可以做做實(shí)驗(yàn)。順帶提一句,安兔兔5.0和緩存大小沒半毛錢關(guān)系,這讓廣大高端手機(jī)芯片公司情何以堪。到了6.0似乎改了,我還沒仔細(xì)研究過。至于使用了大面積緩存引起的漏電,倒是有辦法解決,那就是部分關(guān)閉緩存,用多少開多少,是個精細(xì)活,需要軟硬件同時配合。

影響面積的因素還沒完,上面只是前端,后端還有一堆考量呢。

首先就是表格下一排,MetalStack。芯片制造的時候是一層層蝕刻的,而蝕刻的時候需要一層層打碼,免得關(guān)鍵部分見光,簡稱Mask。這里的11m就表示有11層。晶體管本身是在最底層的,而走線就得從上面走,層數(shù)越多越容易,做板子布線的同學(xué)肯定一看就明白了。照理說這就該多放幾層,但是工廠跟你算錢也是按照層數(shù)來的,越多越貴。層數(shù)少了不光走線難,總體面積的利用率也低,像A53,11層做到80%的利用率就挺好了。所以芯片上不是把每個小模塊面積求和就是總體面積,還得考慮布局布線(PR,Placing&Routing),考慮面積利用率。

再看表格下兩排,LogicArchitecture和Memory。這個也容易理解,就是邏輯和內(nèi)存,數(shù)字電路的兩大模塊分類。這個內(nèi)存是片上靜態(tài)內(nèi)存,不是外面的DDR。uLVT是什么意思呢,UltraLowVoltageThreshold,指的是標(biāo)準(zhǔn)邏輯單元(StandardCell)用了超低電壓門限。電壓低對于動態(tài)功耗當(dāng)然是個好事,但是這個標(biāo)準(zhǔn)單元的漏電也很高,和頻率是對數(shù)關(guān)系,也就是說,漏電每增加10倍,最高頻率才增加log10%。后端可以給EDA工具設(shè)一個限制條件,比如只有不超過1%的需要沖頻率的關(guān)鍵路徑邏輯電路使用uLVT,其余都使用LVT,SVT或者HVT(電壓依次升高,漏電減?。?,來減小總體漏電。

對于動態(tài)功耗,后端還可以定制晶體管的源極和漏極的長度,越窄的電流越大,漏電越高,相應(yīng)的,最高頻率就可以沖的更高。所以我們有時候還能看到uLVTC16,LVTC24之類的參數(shù),這里的C就是指ChannelLength。

接下去就是Memory,又作MemoryInstance,也有人把它稱作FCI(FastCacheInstance)。訪問Memory有三個重要參數(shù),read,write和setup。這三個參數(shù)可以是同樣的時間,也可以不一樣。對于一級緩存來說基本用的是同樣的時間,并且是一個時鐘周期,而且這當(dāng)中沒法流水化。從A73開始,我看到后端的關(guān)鍵路徑都是卡在訪問一級緩存上。也就是說,這段路徑能做多快,CPU就能跑到多快的頻率,而一級緩存的大小也決定了索引的大小,越大就越慢,頻率越低,所以ARM的高端CPU一級緩存都沒超過64KB,這和后端緊密相關(guān)。當(dāng)然,一級緩存增大帶來的收益本身也會非線性減小。之后的二三級緩存,可以使用多周期訪問,也可以使用多bank交替訪問,大小也因此可以放到幾百KB/幾MB。

邏輯和內(nèi)存統(tǒng)稱為PhysicalLibrary,物理庫,它是根據(jù)工廠給的每個工藝節(jié)點(diǎn)的物理開發(fā)包(PDK)設(shè)計的,而Library是一個Fabless芯片公司能做到的最底層。能夠定制自己的成熟物理庫,是這家公司后端領(lǐng)先的標(biāo)志之一。

最后一行,Margin。這是指的工廠在生產(chǎn)過程中,肯定會產(chǎn)生偏差,而這行指標(biāo)定義了偏差的范圍。如下圖:

芯片

藍(lán)色表示我們剛才說的一些Corner的分布,紅色表示生產(chǎn)偏差Variation。必須做一些測試芯片來矯正這些偏差。SB-OCV表示stage-basedon-chipvariation,和其他的幾個偏差加在一起,總共+-7%,也就是說會有7%的芯片不在后端設(shè)計結(jié)束時確定的結(jié)果之內(nèi)。

后面還有一些setupUC之類的,表示信號建立時間,保持時間的不確定性(Uncertainty),以及PLL的抖動范圍。

至此,一張報告解讀完畢,我們再看看對應(yīng)的低功耗版實(shí)現(xiàn)版本:

芯片

這里頻率降到1.5G左右,每Ghz動態(tài)功耗少了10%,但是靜態(tài)降到了12.88mW,只有25%。我們可以看到,這里使用了LVT,沒有uLVT,這就是靜態(tài)能夠做低的原因之一。由于面積不是優(yōu)化目標(biāo),它基本沒變,這個也是可以理解的,因?yàn)镃hannel寬度沒變,邏輯的面積沒法變小。

聲明:本文為轉(zhuǎn)載類文章,如涉及版權(quán)問題,請及時聯(lián)系我們刪除(QQ:2737591964),不便之處,敬請諒解!

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:變頻器維修常用監(jiān)測方法匯總

下一篇:西門子強(qiáng)勢推出S71200主打優(yōu)...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號