功耗影響
便攜性
功耗越低,同等電量下電子產(chǎn)品工作時(shí)間越長(zhǎng),便攜性設(shè)備的電池容量和體積設(shè)計(jì)的困難度也會(huì)降低。例如,手機(jī)越做越薄,性能還不受影響,就是因?yàn)榈凸脑O(shè)計(jì)發(fā)揮了至關(guān)重要的作用。
性能
功耗越大,耗能越多,產(chǎn)生的熱量越多,各器件的工作性能就會(huì)受到影響。例如,手機(jī)使用時(shí)間較長(zhǎng)時(shí),會(huì)感覺(jué)手機(jī)發(fā)熱,而且各應(yīng)用軟件也會(huì)出現(xiàn)卡頓的現(xiàn)象。
成本
不考慮低功耗設(shè)計(jì)時(shí),一個(gè)功能的實(shí)現(xiàn)方法可能較為繁瑣,實(shí)現(xiàn)的器件增多,產(chǎn)品面積增大;同時(shí),功耗過(guò)大時(shí),就要考慮散熱裝置,這又增加了組裝成本。
總之,低功耗設(shè)計(jì)有很多的優(yōu)點(diǎn),也是以后數(shù)字設(shè)計(jì)的發(fā)展趨勢(shì)。
功耗類(lèi)型
功耗類(lèi)型一般可分為動(dòng)態(tài)功耗、靜態(tài)功耗和浪涌功耗。
動(dòng)態(tài)功耗
動(dòng)態(tài)功耗主要包括開(kāi)關(guān)功耗(又稱為翻轉(zhuǎn)功耗)和短路功耗(又稱為內(nèi)部功耗)。
1> 開(kāi)關(guān)功耗
在數(shù)字 CMOS 電路中,對(duì)負(fù)載電容進(jìn)行充放電時(shí)消耗的功耗為開(kāi)關(guān)功耗。如下 CMOS 非門(mén):
當(dāng) Vin = 0 時(shí),上面的 PMOS 導(dǎo)通,下面的 NMOS 截止;VDD 對(duì)負(fù)載電容 Cload 進(jìn)行充電。充電完成后,Vout 的電平為高。
當(dāng) Vin = 1 時(shí),上面的 PMOS 截止,下面的 NMOS 導(dǎo)通,負(fù)載電容通過(guò) NMOS 進(jìn)行放電。放電完成后,Vout 的電平為低。
這樣一開(kāi)一閉的變化,即電源的充放電,就形成了開(kāi)關(guān)功耗。開(kāi)關(guān)功耗的計(jì)算公式如下所示:
其中,VDD 為供電電壓,Cload 為后級(jí)電路等效的負(fù)載電容大小,Tr 為輸入信號(hào)的翻轉(zhuǎn)率。
2>短路功耗
信號(hào)的翻轉(zhuǎn)不是在瞬時(shí)完成的。因此,在輸入信號(hào)進(jìn)行翻轉(zhuǎn)時(shí),PMOS 和 NMOS 總有一段時(shí)間是同時(shí)導(dǎo)通的,那么從電源 VDD 到地 VSS 之間就有了通路,形成短路電流,產(chǎn)生短路功耗。如下反相器電路圖所示:
短路功耗的計(jì)算公式如下:
其中,Vdd 為供電電壓,Tr 為翻轉(zhuǎn)率,Q 為一次翻轉(zhuǎn)過(guò)程中從電源流到地的電荷量。
靜態(tài)功耗
在 CMOS 電路中,靜態(tài)功耗主要是漏電流引起的功耗,往往與工藝有關(guān)。
漏電流的組成主要為:PN 結(jié)反向電流 I1、源極和漏極之間的亞閾值漏電流 I2、柵極漏電流(包括及柵極和漏極之間的感應(yīng)漏電流 I3)、柵極和襯底之間的隧道漏電流 I4。
一般情況下,漏電流主要是指柵極泄漏電流和亞閾值電流。對(duì)于超深亞微米工藝的,隧道漏電流成為主要電流之一。
1>在 PN 結(jié)兩端加反向電壓時(shí),P 區(qū)空穴和 N 區(qū)電子的運(yùn)動(dòng)相反,沒(méi)有電流通過(guò),二極管處于截止?fàn)顟B(tài),部分能量較大的空穴和電子會(huì)掙脫反向電場(chǎng)的束縛而形成微弱的漂移電流。
2> 柵極泄漏功耗:在柵極上加信號(hào)后(即柵壓),從柵到襯底之間存在電容,因此在柵襯之間就會(huì)存在有電流,由此就會(huì)存在功耗。
3> 亞閾值電流:使柵極電壓低于導(dǎo)通閾值,仍會(huì)產(chǎn)生從漏極到源極的泄漏電流。此電流稱為亞閾值泄漏電流。在較狹窄的晶體管中,漏極和源極距離較近的情況下會(huì)產(chǎn)生亞閾值泄漏電流。晶體管越窄,泄漏電流越大。要降低亞閾值電流,可以使用高閾值的器件,還可以通過(guò)襯底偏置增加閾值電壓,這些也屬于低功耗設(shè)計(jì)的考慮范疇。
4>隧道漏電流:屬于量子力學(xué)范疇,感興趣的同學(xué)可自行查閱。
靜態(tài)功耗的計(jì)算公式如下:
浪涌功耗
浪涌功耗是浪涌電流引起的功耗。浪涌電流是指開(kāi)機(jī)或者喚醒時(shí),器件流過(guò)的最大電流,因此浪涌電流也稱為啟動(dòng)電流。一般情況下,浪涌功耗不是本次所討論的內(nèi)容。
功耗模型
library 信息
下面是一種 library 工藝的前幾行代碼描述,包含功耗有關(guān)的參數(shù),具體含義在注釋中說(shuō)明。
library (xxx) {
/* library head: xxx */
technology (cmos) ;
simulation : true ;
nom_process : 1 ;
nom_temperature : -40; //默認(rèn)溫度
nom_voltage : 0.81; //默認(rèn)電壓
voltage_map(VDD, 0.81); //定義lib中多個(gè)電壓,包括以下幾行
voltage_map(TVDD, 0.81);
voltage_map(VDDDST, 0.81);
voltage_map(VDDGR, 0.81);
voltage_map(VDDSRC, 0.81);
voltage_map(VSS, 0);
operating_conditions("ssg0p81vm40c"){ //一種corner定義
process : 1; /* SSGlobalCorner_LocalMC_MOS_MOSCAP-SSGlobalCorner_LocalMC_RES_BIP_DIO_DISRES */
temperature : -40;
voltage : 0.81;
tree_type : "balanced_tree";
}
default_operating_conditions : ssg0p81vm40c ;
capacitive_load_unit (1,pf) ; //定義電容單位
voltage_unit : "1V" ; //定義電壓?jiǎn)挝?/span>
current_unit : "1mA" ; //定義電流單位
time_unit : "1ns" ; //定義時(shí)間單位
pulling_resistance_unit : "1kohm";
define_cell_area (pad_drivers,pad_driver_sites) ;
……
cell 信息
一個(gè) library 中會(huì)有多個(gè)基本功能單元,用關(guān)鍵字 cell 聲明,也包含了多種的功耗信息。
cell (AN2D0BWP7T40P140) {
area : 0.392;
cell_footprint : "an2d1";
pg_pin (VDD) { //電源引腳
pg_type : primary_power;
voltage_name : VDD;
}
……
pin(A1) { //輸入信號(hào)引腳
driver_waveform_fall : "tcbn22ullbwp7t40p140ssg0p81vm40c:fall";
driver_waveform_rise : "tcbn22ullbwp7t40p140ssg0p81vm40c:rise";
direction : input;
related_ground_pin : VSS; //輸入引腳地端
related_power_pin : VDD; //輸入引腳電壓
capacitance : 0.000418924 ; //輸入引腳電容
……
}
pin(Z) {
direction : output;
power_down_function : "!VDD + VSS";
function : "(A1 A2)";
related_ground_pin : VSS; //輸出引腳地端
related_power_pin : VDD; //輸出引腳電壓
max_capacitance : 0.04182; //輸出引腳最大電容
min_capacitance : 0.00013; //輸出引腳最小電容
……
}
此時(shí),如果再知道翻轉(zhuǎn)率,就可以計(jì)算出動(dòng)態(tài)功耗。
翻轉(zhuǎn)率(Toggle rate,Tr),指單位時(shí)間內(nèi)信號(hào)(包括時(shí)鐘、數(shù)據(jù)等信號(hào))的翻轉(zhuǎn)次數(shù)。如下所示,信號(hào)在 40ns 時(shí)間內(nèi)跳轉(zhuǎn)了 4 次,則翻轉(zhuǎn)率為 Tr = 4/4ns = 0.1GHz。
內(nèi)部功耗信息
cell 定義中,內(nèi)部功耗會(huì)有如下定義。
internal_power() {
related_pin : "A1" ;
related_pg_pin : VDD ;
rise_power(power_template_8x8) { //內(nèi)部功耗查找表
index_1("0.0026, 0.0101, 0.0252, 0.0553, 0.1155, 0.236, 0.4769, 0.9587");
index_2("0.00013, 0.00046, 0.00112, 0.00243, 0.00506, 0.01031, 0.02081, 0.04182");
values ( "0.000249215, 0.000254481, 0.000262354, 0.000261007, 0.00026381, 0.000277799, 0.000304295, 0.000345046", "0.000239751, 0.000248667, 0.000255454, 0.0002551, 0.000268563, 0.000275995, 0.000294669, 0.000336529", ……
);
}
fall_power(power_template_8x8) { //內(nèi)部功耗查找表
index_1("0.0026, 0.0101, 0.0252, 0.0553, 0.1155, 0.236, 0.4769, 0.9587");
index_2("0.00013, 0.00046, 0.00112, 0.00243, 0.00506, 0.01031, 0.02081, 0.04182");
values ( "0.000577367, 0.000584652, 0.000589472, 0.000591623, 0.000592223, 0.000591943, 0.00059185, 0.000592132", "0.000563896, 0.000570743, 0.000576589, 0.000579818, 0.000580794, 0.00057962, 0.000579997, 0.000579136", "0.000550059, 0.000555794, 0.00056188, 0.000565568, 0.000567663, 0.000567231, 0.000567712, 0.00056745", ……
);
}
}
cell 的內(nèi)部功耗與其轉(zhuǎn)換時(shí)間和輸出電容負(fù)載有關(guān)。根據(jù)輸入轉(zhuǎn)換時(shí)間和輸出電容的大小,在工藝庫(kù)中進(jìn)行查表,得到上升功耗和下降功耗,再根據(jù)下面公式進(jìn)行計(jì)算,可得到總的內(nèi)部功耗:
靜態(tài)功耗信息
cell 定義中,靜態(tài)功耗(漏電功耗)會(huì)有如下定義。
leakage_power () {
value : 0.059561;
related_pg_pin : VDD;
}
leakage_power () {
value : 0.048082;
when : "!A1 !A2 !Z";
related_pg_pin : VDD;
}
leakage_power () {
value : 0.053318;
when : "!A1 A2 !Z";
related_pg_pin : VDD;
}
……
靜態(tài)功耗跟 cell 的狀態(tài)有關(guān),也就是輸入輸出信號(hào)在不同的狀態(tài)下,功耗也會(huì)有所差異。通過(guò)狀態(tài)進(jìn)行查表,就可以得到相應(yīng)的靜態(tài)功耗了。
實(shí)際分析功耗時(shí),不會(huì)手動(dòng)的去查找相關(guān)參數(shù)來(lái)計(jì)算功耗,因?yàn)楣ぷ髁繉⒋蟮诫y以估量。往往是借助一些功耗分析工具,提取這些標(biāo)準(zhǔn)單元庫(kù)的功耗信息進(jìn)行整合計(jì)算。
-
CMOS
+關(guān)注
關(guān)注
58文章
5718瀏覽量
235512 -
NMOS
+關(guān)注
關(guān)注
3文章
294瀏覽量
34385 -
低功耗
+關(guān)注
關(guān)注
10文章
2404瀏覽量
103708 -
PMOS
+關(guān)注
關(guān)注
4文章
245瀏覽量
29592 -
負(fù)載電容
+關(guān)注
關(guān)注
0文章
139瀏覽量
10441
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論