(一)低功耗设计目的与功耗的类型
一、低功耗設(shè)計(jì)的目的
1.便攜性設(shè)備等需求
電子產(chǎn)品在我們生活中扮演了極其重要的作用,便攜性的電子設(shè)備便是其中一種。便攜性設(shè)備需要電池供電、需要消耗電池的能量。在同等電能提供下,低功耗設(shè)計(jì)的產(chǎn)品就能夠工作更長的時(shí)間。時(shí)間的就是生命,因此低功耗設(shè)計(jì)是很重要的。便攜性的設(shè)備需要低功耗設(shè)備,比如說手機(jī),如果充電兩小時(shí),通話5分鐘,這誰還買你的手機(jī)...
?
2.可靠性與性能的影響
設(shè)備消耗電能,會產(chǎn)生熱量;消耗的能量越多,產(chǎn)生的熱量越多。發(fā)熱越嚴(yán)重,熱噪聲越大,就會影響器件的正常工作,導(dǎo)致電路不能正常工作。發(fā)熱量的增加,可能會使工作在1G下的電路,只能工作在500M,這就影響了速度,這最常見的就是手機(jī)的發(fā)熱了,手機(jī)發(fā)熱之后,便感覺卡卡的。
?
3.成本的影響
如果不注意進(jìn)行低功耗設(shè)計(jì),那就可能導(dǎo)致后期的成本增加,從而導(dǎo)致整個(gè)系統(tǒng)的成本增加。例如,不進(jìn)行低功耗設(shè)計(jì),發(fā)熱量就可能增加,在封裝的時(shí)候,就需要考慮怎么給你這個(gè)芯片進(jìn)行散熱,從而增加了封裝的散熱成本。再比如,在進(jìn)行系統(tǒng)組裝的時(shí)候,如果那你的芯片功耗過大,就需要考慮在系統(tǒng)外給你進(jìn)行散熱,比如說添加一個(gè)風(fēng)扇,發(fā)熱很嚴(yán)重的甚至可以給你進(jìn)行液體降溫。這樣子就在系統(tǒng)組裝上面增加了組裝成本。因此在設(shè)計(jì)初始進(jìn)行低功耗設(shè)計(jì)是很重要的。
?
······
當(dāng)然,除了上面那三點(diǎn)之外,還有許多要進(jìn)行低功耗設(shè)計(jì)原因,這里列出三點(diǎn),主要是為了說明低功耗設(shè)計(jì)是以后的數(shù)字IC發(fā)展趨勢之一,我們要注重低功耗設(shè)計(jì)。
?
?
二、功耗的構(gòu)成/類型
本小節(jié)主要一方面介紹一下功耗的構(gòu)成,一方面介紹一下工藝庫中的功耗模型。功耗的構(gòu)成可以從兩個(gè)角度來描述,一個(gè)是從功耗種類方面,另一個(gè)是從系統(tǒng)結(jié)構(gòu)方面。我們在設(shè)計(jì)過程中,討論比較多的往往是從功耗角度方面;工藝庫中的功耗模型主要是結(jié)合工藝庫來對功耗種類進(jìn)行一些具體的、補(bǔ)充式的講解。下面我們就來看看功耗的工程吧。
1.功耗的構(gòu)成——按類型分
低功耗按照類型分類呢,其構(gòu)成主要有動態(tài)功耗、靜態(tài)功耗、浪涌功耗這三種。在這第一小點(diǎn)我主要做一些簡要的介紹,在后面的第三小點(diǎn)我將結(jié)合工藝庫進(jìn)行介紹。
(1)動態(tài)功耗
動態(tài)功耗包括:開關(guān)功耗或者稱為翻轉(zhuǎn)功耗、短路功耗或者稱為內(nèi)部功耗。
①開關(guān)功耗
在數(shù)字CMOS電路中,對負(fù)載電容進(jìn)行充放電時(shí)消耗的功耗,比如對于下面的CMOS非門中:
?
當(dāng)Vin = 0時(shí),上面的PMOS導(dǎo)通,下面的NMOS截止;VDD對負(fù)載電容Cload進(jìn)行充電,充電完成后,Vout的電平為高電平。
當(dāng)Vin = 1時(shí),上面的PMOS截止,下面的NMOS導(dǎo)通,負(fù)載電容通過NMOS進(jìn)行放電,放電完成后,Vout的電平為低電平。
這樣一開一閉的變化,電源的充放電,就形成了開關(guān)功耗,開關(guān)功耗Psitch的計(jì)算公式如下所示:
?
在上式中,VDD為供電電壓,Cload為后級電路等效的電容負(fù)載大小,Tr為輸入信號的翻轉(zhuǎn)率(關(guān)于翻轉(zhuǎn)率,我們在后面第三小點(diǎn)會進(jìn)行介紹)。我們不必追究這個(gè)公式怎么得來,我知道這個(gè)功耗在這么計(jì)算就可以了,有興趣的話,也可以深入探討。
?
?
②短路功耗
短路功耗也稱為內(nèi)部功耗,短路功耗是因?yàn)樵谳斎胄盘栠M(jìn)行翻轉(zhuǎn)時(shí),信號的翻轉(zhuǎn)不可能瞬時(shí)完成,因此PMOS和NMOS不可能總是一個(gè)截止另外一個(gè)導(dǎo)通,總有那么一段時(shí)間是使PMOS和NMOS同時(shí)導(dǎo)通,那么從電源VDD到地VSS之間就有了通路,就形成了短路電流,如下面的反相器電路圖所示:
? ?
短路功耗Pshort的計(jì)算公式如下所示:
?
?
上式中,Vdd為供電電壓,Tr為翻轉(zhuǎn)率,Qx為一次翻轉(zhuǎn)過程中從電源流到地的電荷量。
?
由此我們可以找到,動態(tài)功耗主要有開關(guān)功耗和短路功耗;其中開關(guān)功耗在動態(tài)功耗中占大部分比例;從上面的兩個(gè)式子中我們可以看到,動態(tài)功耗主要跟電源的供電電壓、翻轉(zhuǎn)率、負(fù)載電容有關(guān)。
?
(2)靜態(tài)功耗
在CMOS電路中,靜態(tài)功耗主要是漏電流引起的功耗,如下圖所示:
?
漏電流有下面幾個(gè)部分組成:
·PN結(jié)反向電流I1(PN-junction Reverse Current)
·源極和漏極之間的亞閾值漏電流I2(Sub-threshold Current)
·柵極漏電流,包括柵極和漏極之間的感應(yīng)漏電流I3(Gate Induced Drain Leakage)
·柵極和襯底之間的隧道漏電流I4(Gate Tunneling)
一般情況下,漏電流主要是指柵極泄漏電流和亞閾值電流(進(jìn)入超深亞微米工藝之后,隧道漏電流成為主要電流之一),因此下面就簡單介紹一下這兩種電流。
柵極泄漏功耗:在柵極上加信號后(即柵壓),從柵到襯底之間存在電容,因此在柵襯之間就會存在有電流,由此就會存在功耗。
亞閾值電流:使柵極電壓低于導(dǎo)通閾值,仍會產(chǎn)生從FET漏極到源極的泄漏電流。此電流稱為亞閾值泄漏電流。在較狹窄的晶體管中,漏極和源極距離較近的情況下會產(chǎn)生亞閾值泄漏電流。晶體管越窄,泄漏電流越大。要降低亞閾值電流,可以使用高閾值的器件,還可以通過襯底偏置進(jìn)行增加閾值電壓,這些屬于低功耗設(shè)計(jì),我們在后面的低功耗設(shè)計(jì)中會進(jìn)行講解。
靜態(tài)功耗的計(jì)算公式如下所示,Ipeak為泄漏電流:
?
?
靜態(tài)功耗往往與工藝有關(guān),我們在第三小節(jié)中將進(jìn)一步進(jìn)行討論。
?
(3)浪涌功耗
浪涌功耗是浪涌電流引起的功耗。浪涌電流是指開機(jī)或者喚醒的時(shí)候,器件流過的最大電流,因此浪涌電流也稱為啟動電流。一般情況下,浪涌功耗不是我們關(guān)注的地方,因此這里只是說明有這個(gè)功耗存在。
?
?
2.功耗的構(gòu)成——按結(jié)構(gòu)分
前面按照類型進(jìn)行功耗分類,這里使用結(jié)構(gòu)進(jìn)行分類,也就是根據(jù)設(shè)備的結(jié)構(gòu)或者設(shè)備的構(gòu)成進(jìn)行分類。(以SoC為例)主要分為:時(shí)鐘樹功耗、處理器功耗、存儲器功耗、其他邏輯和IP核功耗、輸入輸出pad功耗。在不同的應(yīng)用、設(shè)備中,這些功耗的比例不一樣,但是時(shí)鐘樹、處理器、存儲器占了絕大部分功耗,這是需要說明的。
?
?
3.工藝庫中的功耗模型
前面介紹了功耗的構(gòu)成,在這一小點(diǎn)中,將結(jié)合工藝庫進(jìn)行闡述功耗(的構(gòu)成),同時(shí)結(jié)合工藝庫舉例說明功耗的計(jì)算。
(1)工藝庫中的功耗信息與計(jì)算
①開關(guān)功耗計(jì)算與相關(guān)庫信息
我們從前面知道,開關(guān)功耗主要就是對輸出電容的充放電引起的,工藝庫中有開關(guān)功耗有關(guān)的信息,如下所示:
開關(guān)功耗可以用開關(guān)能量和翻轉(zhuǎn)率來表示:P=E·Tr=C·v^2·T2,即開關(guān)能量E=CV^2。翻轉(zhuǎn)率我們后面會進(jìn)行說明,至于放在后面介紹翻轉(zhuǎn)率,一個(gè)是即介紹即用,另外一個(gè)就是幫大家功耗的組成。
②內(nèi)部功耗/短路功耗與相關(guān)庫信息
內(nèi)部功耗前面我們也介紹了一些,這里再啰嗦一下,短路功耗/內(nèi)部功耗是單元(比如說反相器單元)的輸入從0到1或者從1到0的轉(zhuǎn)換過程中,單元內(nèi)部P管和N管同時(shí)導(dǎo)通那個(gè)瞬間的功耗,這不是因?yàn)閱卧獡p壞而產(chǎn)生的短路功耗 。工藝庫中包含了單元的短路功耗,短路功耗由特性描述工具預(yù)先處理,存放在工藝庫的功耗查找表里。也就是說,我們可以通過工藝庫中內(nèi)部功耗的相關(guān)參數(shù),從而得到內(nèi)部功耗。工藝庫中內(nèi)部功耗信息如下所示:
單元的內(nèi)部功耗與其轉(zhuǎn)換時(shí)間和輸出電容負(fù)載有關(guān),根據(jù)輸入轉(zhuǎn)換時(shí)間和輸出電容的大小,在工藝庫中進(jìn)行查表,得到上升功耗和下降功耗,然后再根據(jù)下面的公式進(jìn)行計(jì)算得到總的內(nèi)部功耗:
Pi=(上升功耗+下降功耗)·0.5·Tr
需要補(bǔ)充一下,工藝庫中比較精確的功耗模型,功耗與狀態(tài)有關(guān),與路徑也有關(guān),即state dependent path dependent,SDPD。
?
③靜態(tài)功耗/漏電功耗與相關(guān)庫信息
靜態(tài)功耗/漏電功耗也是由特性工具預(yù)先處理,存放在工藝庫里面。工藝庫中的靜態(tài)功耗信息如下所示:
????
靜態(tài)功耗跟單元的狀態(tài)有關(guān),也就是輸入(或者說單元)在不同的狀態(tài)下,對于的功耗不一樣,通過狀態(tài)進(jìn)行查表,就可以得到相應(yīng)的靜態(tài)功耗了。
?
?
(2)計(jì)算舉例
①翻轉(zhuǎn)率
前面我們一直說翻轉(zhuǎn)率,那么翻轉(zhuǎn)率到底是什么呢?這里我們就來給大家介紹一下。
翻轉(zhuǎn)率(Toggle rate,Tr):單位時(shí)間內(nèi)信號(包括時(shí)鐘、數(shù)據(jù)等等信號)的翻轉(zhuǎn)次數(shù)。如下圖所示:
?
信號在40ns時(shí)間內(nèi)跳轉(zhuǎn)了4次,翻轉(zhuǎn)率為:Tr = 4/4ns = 0.1GHz
?
②動態(tài)功耗計(jì)算舉例
從前面中我們知道,在計(jì)算動態(tài)功耗的時(shí)候,我們才用到翻轉(zhuǎn)率。其中開關(guān)功耗的表達(dá)式為:
?
?
內(nèi)部功耗的表達(dá)式為:
Pi=(上升功耗+下降功耗)·0.5·Tr
?
現(xiàn)在我們使用翻轉(zhuǎn)率和工藝庫的功耗信息來計(jì)算一下電路的動態(tài)功耗,電路如下圖所示:
?
工藝庫信息如下所示:
·動態(tài)功耗中的開關(guān)功耗計(jì)算:
?
根據(jù)公式,我們可以直接計(jì)算出開關(guān)功耗為:29.403uw
?
·動態(tài)功耗中的短路功耗/內(nèi)部功耗:
Pi=(上升功耗+下降功耗)·0.5·Tr
根據(jù)公式,我們先要查找工藝庫得到上升(沿)功耗和下降(沿)功耗。輸入轉(zhuǎn)換時(shí)間為1.20000,輸出電容負(fù)載為0.270000,因此對于的上升功耗和下降功耗分別為:0.214947和0.094129。因此總的內(nèi)部功耗為:
?
?
·于是得到總的動態(tài)功耗為:
?
?
?
③其他事項(xiàng)
·單元的功耗可能與狀態(tài)和路徑有關(guān),下圖中:
?
左圖是RAM單元,在讀狀態(tài)和寫狀態(tài)時(shí),功率是不同的。此外,單元的功耗在不同的操作模式下也有不同的值。
右圖表示了輸入到輸出的不同路徑,路徑不一樣,功耗也是不一樣的。
·工藝庫有狀態(tài)和路徑不同時(shí)的功耗描述,即SDPD描述,如下圖所示:
我們也可以在EDA工具中使用report_lib ?slow ?-power?命令列出庫中的功耗信息:
?
第一講先整理到這里。
總結(jié)
以上是生活随笔為你收集整理的(一)低功耗设计目的与功耗的类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: lm算法c语言,lm算法(lm算法原理介
- 下一篇: Arduino学习笔记24