榨汁計(jì)策:榨出每一分電能
——
榨汁計(jì)策:榨出每一分電能
系統(tǒng)的功率效率取決于軟、硬件設(shè)計(jì)決策與應(yīng)用系統(tǒng)工作性能的匹配程度。
要點(diǎn)
● 總功耗包括靜態(tài)功耗與動(dòng)態(tài)功耗兩個(gè)部分。
● 硬件體系結(jié)構(gòu)內(nèi)的電源管理功能決定軟件降低功耗的方法。
● 你的軟件設(shè)計(jì)決策會(huì)對(duì)總功耗以及產(chǎn)品體積和成本產(chǎn)生重大影響。
低功耗機(jī)制并不只是針對(duì)電池供電設(shè)備的設(shè)計(jì)約束條件,它也是許多高性能有線系統(tǒng)的一個(gè)主要考慮因素。在嵌入式設(shè)計(jì)中使用的處理器的功耗可能只占系統(tǒng)總功耗預(yù)算的較小一部分,但你對(duì)系統(tǒng)和軟件體系結(jié)構(gòu)的抉擇可能會(huì)對(duì)總的處理性能、功率消耗和電磁干擾(EMI)性能產(chǎn)生重大影響。對(duì)電池供電的系統(tǒng)而言,較低的總功耗可能意味著你的設(shè)計(jì)得益于更長(zhǎng)的電池壽命,亦即能使你選用較小的電池來(lái)減少系統(tǒng)的體積、重量和成本。
對(duì)有線系統(tǒng)來(lái)說(shuō),較低的功耗可以減少系統(tǒng)對(duì)風(fēng)扇和空調(diào)裝置的要求,因?yàn)橄到y(tǒng)自身產(chǎn)生的熱量較少。用這種方法降低冷卻要求,還可以使系統(tǒng)工作時(shí)噪聲較低,因?yàn)槟憧梢允褂皿w積較小的電源和較少的或噪聲較低的風(fēng)扇來(lái)排除機(jī)架或機(jī)箱內(nèi)的熱量。有線系統(tǒng)峰值功耗較低,能提高受熱點(diǎn)極限制約的元件密度,以增強(qiáng)系統(tǒng)的通道處理能力。如果你將設(shè)計(jì)功耗降低,你就能減小系統(tǒng)的總體尺寸與總成本。
為使系統(tǒng)的功耗最佳,你必須使硬件的功耗特性和軟件體系結(jié)構(gòu)抉擇與預(yù)期的系統(tǒng)工作性能相匹配。不管你的系統(tǒng)是連續(xù)工作的還是以事件響應(yīng)方式工作的,都將迫使你設(shè)法使系統(tǒng)功率效率最大。連續(xù)工作方式的特點(diǎn)是處理時(shí)間長(zhǎng),空閑時(shí)間短,而事件響應(yīng)工作方式的特點(diǎn)是處理時(shí)間短暫,空閑時(shí)間長(zhǎng)。
CMOS 電路的總功耗包括兩個(gè)部分:靜態(tài)功耗和動(dòng)態(tài)功耗。包括晶體管漏電流在內(nèi)的靜態(tài)功耗,甚至在電路不工作時(shí)也會(huì)發(fā)生,并與任何開關(guān)活動(dòng)無(wú)關(guān)。漏電流在所有 CMOS 晶體管中都存在,它來(lái)源于反向偏置源極或漏極電流、漏極至源極弱反相電流以及隧道電流。采用好的工藝技術(shù)和設(shè)計(jì)單元庫(kù)可以有效地降低這些電流的強(qiáng)度。這些漏電流分量的總和便形成從電源通過(guò)晶體管流向接地的非理想電流,即使這些晶體管處于邏輯關(guān)斷狀態(tài)也不可避免(附文“處理漏電流問(wèn)題”)。對(duì)于空閑時(shí)間長(zhǎng)的事件響應(yīng)式工作狀態(tài),靜態(tài)功耗要占系統(tǒng)總體功耗的很大一部分。
動(dòng)態(tài)功耗出現(xiàn)在電路和信號(hào)的邏輯狀態(tài)發(fā)生轉(zhuǎn)換時(shí),功耗的大小與系統(tǒng)電壓、時(shí)鐘頻率以及開關(guān)活動(dòng)相關(guān)。對(duì)連續(xù)工作的系統(tǒng)而言,動(dòng)態(tài)功耗一般決定系統(tǒng)功率效率。你可以用以下公式粗略地估算系統(tǒng)的動(dòng)態(tài)功耗:P=CFV2,式中 C 為動(dòng)態(tài)電容,F(xiàn) 是開關(guān)頻率,V 是電源電壓。系統(tǒng)的動(dòng)態(tài)電容取決加工工藝和設(shè)計(jì)單元庫(kù),基本上是固定不變的。功率和電壓是二次方的關(guān)系,所以電源電壓的高低對(duì)功耗的影響最大。但是,最小可用電源電壓與電路的最高開關(guān)頻率相關(guān),在相同的加工工藝下,較高的時(shí)鐘頻率就需要更高的相對(duì)電源電壓。
功耗估算
選用專為提高功率效率而設(shè)計(jì)的部件是降低功耗的良好開端。常用來(lái)比較處理器功率效率的基準(zhǔn)是毫瓦/兆赫(mW/MHz)。使用這個(gè)基準(zhǔn)時(shí)有個(gè)問(wèn)題,就是它不能告訴你在每個(gè)時(shí)鐘周期內(nèi)處理器完成多少工作。較低的毫瓦/兆赫值未必能表明一個(gè)處理器可能需要將時(shí)鐘頻率加倍,并消耗更多的功率才能完成與另一個(gè)處理器相同的工作。
另一個(gè)替代功率效率基準(zhǔn)的是毫瓦/百萬(wàn)指令/秒。你使用這一基準(zhǔn)時(shí)仍要小心謹(jǐn)慎,因?yàn)槟憧赡懿磺宄鶞?zhǔn)得分是由哪些指令序列獲得的。例如,只執(zhí)行 NOP(空操作)指令時(shí)功耗可能最低,但這對(duì)實(shí)際應(yīng)用毫無(wú)意義。執(zhí)行完全來(lái)自緩存或本機(jī)內(nèi)存的算法所得到的基準(zhǔn)得分可以表示一種較好的指令混合,而完全在本機(jī)內(nèi)存以外工作則既是不可行的,也不適合于你的系統(tǒng)設(shè)計(jì)。
在比較處理器的體系結(jié)構(gòu)時(shí),處理器制造商提供的處理器功耗典型值和最大值只有有限的參考價(jià)值,因?yàn)楣目赡軙?huì)因執(zhí)行的指令、操作的數(shù)據(jù)、脫片工作數(shù)量以及動(dòng)態(tài)功率管理功能的不同而相差很大。一個(gè)更有用的比較功耗的基準(zhǔn)是毫瓦/任務(wù);但這種量度很難實(shí)現(xiàn),特別是很難用完全一致的方式去比較兩種處理器體系結(jié)構(gòu)。
有些處理器廠家提供一些電子表格和分析工具,以幫助你根據(jù)自己的系統(tǒng)的特性和所采用的電源管理功能來(lái)進(jìn)行更為有用的功耗估算。這些電子表格和分析工具盡管現(xiàn)在還比較簡(jiǎn)陋,但可以讓你用人工的方法表征系統(tǒng)的特性、你將要使用的指令混合、脫片工作的類型和數(shù)量,以及使用器件內(nèi)置電源管理功能的影響。電源管理功能包括:關(guān)斷不工作模塊的電源,限制時(shí)鐘信號(hào)向不工作模塊傳送,動(dòng)態(tài)調(diào)整時(shí)鐘頻率,以及調(diào)整作為時(shí)鐘頻率函數(shù)的電源電壓。
低功耗特性
許多處理器都設(shè)有睡眠模式、待機(jī)模式或低功耗模式,用以關(guān)掉特定的模塊(如外設(shè)、處理器芯核以及時(shí)鐘發(fā)生器的晶振)的電源。有選擇地關(guān)斷這些模塊的電源,可使你將這些模塊的功耗(包括靜態(tài)功耗)降低到零,因?yàn)椴魂P(guān)掉電源,它們做的是無(wú)用功。為了保存系統(tǒng)狀態(tài)數(shù)據(jù),并避免重新起動(dòng),低功耗模式通常要保留對(duì)存儲(chǔ)器結(jié)構(gòu)的供電。當(dāng)一個(gè)模塊恢復(fù)供電時(shí),在電源電壓和時(shí)鐘信號(hào)穩(wěn)定之前存在一個(gè)時(shí)間延遲。由于這一原因,在以下兩種情況下以這種方法關(guān)斷模塊電源是不切實(shí)際的:模塊的空閑時(shí)間小于穩(wěn)定時(shí)間,或模塊對(duì)事件的響應(yīng)時(shí)間比穩(wěn)定時(shí)間更快。關(guān)斷模塊電源是一種強(qiáng)制性技術(shù),無(wú)論 在BIOS、操作系統(tǒng)或應(yīng)用級(jí),它都要依靠軟件來(lái)根據(jù)通用或定制的運(yùn)行狀態(tài)模型來(lái)作出決定。
在一個(gè)器件的總功耗中,其時(shí)鐘樹的功耗可能占到一半,因?yàn)橐话闱闆r下,時(shí)鐘信號(hào)的頻率是任何其它信號(hào)的兩倍,而且它必須在器件內(nèi)的任何地方傳送。有些系統(tǒng)經(jīng)過(guò)分區(qū),將獨(dú)立的時(shí)鐘信號(hào)域供不同的模塊和元件使用,這樣的系統(tǒng)就不需要整體系統(tǒng)都以最高速度工作,因而可降低功耗。使用較低的時(shí)鐘頻率,不僅能減少功耗,而且還可以降低對(duì)高時(shí)鐘所需的邊沿快速率的要求,從而減小系統(tǒng)的EMI(電磁干擾)。
時(shí)鐘門控是一種動(dòng)態(tài)電源管理技術(shù),它是與軟件無(wú)關(guān),并對(duì)軟件是透明的;它可以防止時(shí)鐘信號(hào)傳輸?shù)较到y(tǒng)中當(dāng)前不工作的模塊,從而減少動(dòng)態(tài)功耗和 EMI。時(shí)鐘門控技術(shù)并不關(guān)斷某一功能塊的電源,因此它不會(huì)降低靜態(tài)功耗,但卻不受很長(zhǎng)起動(dòng)延遲時(shí)間的影響,而且它是按一個(gè)個(gè)時(shí)鐘周期起作用的。
在有設(shè)計(jì)良好的分級(jí)時(shí)鐘分配機(jī)制情況下,時(shí)鐘門控技術(shù)能以精確的粒度等級(jí),阻止時(shí)鐘傳送到不工作的部件,如總線、高速緩存、功能加速器和外設(shè)。時(shí)鐘門控實(shí)際能達(dá)到的粒度等級(jí)是有限的,因?yàn)樗揽靠刂七壿媮?lái)決定何時(shí)和是否沿某一時(shí)鐘分配分支路傳輸時(shí)鐘信號(hào)。因此,時(shí)鐘門控邏輯自身的功耗應(yīng)該小于它減少的功耗。異步電路,亦即無(wú)時(shí)鐘電路,是另一種使低功耗和高性能保持平衡的專用方法,類似于同步系統(tǒng)中理想時(shí)鐘門控技術(shù)(附文“異步電路”)。
要點(diǎn)
● 總功耗包括靜態(tài)功耗與動(dòng)態(tài)功耗兩個(gè)部分。
● 硬件體系結(jié)構(gòu)內(nèi)的電源管理功能決定軟件降低功耗的方法。
● 你的軟件設(shè)計(jì)決策會(huì)對(duì)總功耗以及產(chǎn)品體積和成本產(chǎn)生重大影響。
低功耗機(jī)制并不只是針對(duì)電池供電設(shè)備的設(shè)計(jì)約束條件,它也是許多高性能有線系統(tǒng)的一個(gè)主要考慮因素。在嵌入式設(shè)計(jì)中使用的處理器的功耗可能只占系統(tǒng)總功耗預(yù)算的較小一部分,但你對(duì)系統(tǒng)和軟件體系結(jié)構(gòu)的抉擇可能會(huì)對(duì)總的處理性能、功率消耗和電磁干擾(EMI)性能產(chǎn)生重大影響。對(duì)電池供電的系統(tǒng)而言,較低的總功耗可能意味著你的設(shè)計(jì)得益于更長(zhǎng)的電池壽命,亦即能使你選用較小的電池來(lái)減少系統(tǒng)的體積、重量和成本。
對(duì)有線系統(tǒng)來(lái)說(shuō),較低的功耗可以減少系統(tǒng)對(duì)風(fēng)扇和空調(diào)裝置的要求,因?yàn)橄到y(tǒng)自身產(chǎn)生的熱量較少。用這種方法降低冷卻要求,還可以使系統(tǒng)工作時(shí)噪聲較低,因?yàn)槟憧梢允褂皿w積較小的電源和較少的或噪聲較低的風(fēng)扇來(lái)排除機(jī)架或機(jī)箱內(nèi)的熱量。有線系統(tǒng)峰值功耗較低,能提高受熱點(diǎn)極限制約的元件密度,以增強(qiáng)系統(tǒng)的通道處理能力。如果你將設(shè)計(jì)功耗降低,你就能減小系統(tǒng)的總體尺寸與總成本。
為使系統(tǒng)的功耗最佳,你必須使硬件的功耗特性和軟件體系結(jié)構(gòu)抉擇與預(yù)期的系統(tǒng)工作性能相匹配。不管你的系統(tǒng)是連續(xù)工作的還是以事件響應(yīng)方式工作的,都將迫使你設(shè)法使系統(tǒng)功率效率最大。連續(xù)工作方式的特點(diǎn)是處理時(shí)間長(zhǎng),空閑時(shí)間短,而事件響應(yīng)工作方式的特點(diǎn)是處理時(shí)間短暫,空閑時(shí)間長(zhǎng)。
CMOS 電路的總功耗包括兩個(gè)部分:靜態(tài)功耗和動(dòng)態(tài)功耗。包括晶體管漏電流在內(nèi)的靜態(tài)功耗,甚至在電路不工作時(shí)也會(huì)發(fā)生,并與任何開關(guān)活動(dòng)無(wú)關(guān)。漏電流在所有 CMOS 晶體管中都存在,它來(lái)源于反向偏置源極或漏極電流、漏極至源極弱反相電流以及隧道電流。采用好的工藝技術(shù)和設(shè)計(jì)單元庫(kù)可以有效地降低這些電流的強(qiáng)度。這些漏電流分量的總和便形成從電源通過(guò)晶體管流向接地的非理想電流,即使這些晶體管處于邏輯關(guān)斷狀態(tài)也不可避免(附文“處理漏電流問(wèn)題”)。對(duì)于空閑時(shí)間長(zhǎng)的事件響應(yīng)式工作狀態(tài),靜態(tài)功耗要占系統(tǒng)總體功耗的很大一部分。
動(dòng)態(tài)功耗出現(xiàn)在電路和信號(hào)的邏輯狀態(tài)發(fā)生轉(zhuǎn)換時(shí),功耗的大小與系統(tǒng)電壓、時(shí)鐘頻率以及開關(guān)活動(dòng)相關(guān)。對(duì)連續(xù)工作的系統(tǒng)而言,動(dòng)態(tài)功耗一般決定系統(tǒng)功率效率。你可以用以下公式粗略地估算系統(tǒng)的動(dòng)態(tài)功耗:P=CFV2,式中 C 為動(dòng)態(tài)電容,F(xiàn) 是開關(guān)頻率,V 是電源電壓。系統(tǒng)的動(dòng)態(tài)電容取決加工工藝和設(shè)計(jì)單元庫(kù),基本上是固定不變的。功率和電壓是二次方的關(guān)系,所以電源電壓的高低對(duì)功耗的影響最大。但是,最小可用電源電壓與電路的最高開關(guān)頻率相關(guān),在相同的加工工藝下,較高的時(shí)鐘頻率就需要更高的相對(duì)電源電壓。
功耗估算
選用專為提高功率效率而設(shè)計(jì)的部件是降低功耗的良好開端。常用來(lái)比較處理器功率效率的基準(zhǔn)是毫瓦/兆赫(mW/MHz)。使用這個(gè)基準(zhǔn)時(shí)有個(gè)問(wèn)題,就是它不能告訴你在每個(gè)時(shí)鐘周期內(nèi)處理器完成多少工作。較低的毫瓦/兆赫值未必能表明一個(gè)處理器可能需要將時(shí)鐘頻率加倍,并消耗更多的功率才能完成與另一個(gè)處理器相同的工作。
另一個(gè)替代功率效率基準(zhǔn)的是毫瓦/百萬(wàn)指令/秒。你使用這一基準(zhǔn)時(shí)仍要小心謹(jǐn)慎,因?yàn)槟憧赡懿磺宄鶞?zhǔn)得分是由哪些指令序列獲得的。例如,只執(zhí)行 NOP(空操作)指令時(shí)功耗可能最低,但這對(duì)實(shí)際應(yīng)用毫無(wú)意義。執(zhí)行完全來(lái)自緩存或本機(jī)內(nèi)存的算法所得到的基準(zhǔn)得分可以表示一種較好的指令混合,而完全在本機(jī)內(nèi)存以外工作則既是不可行的,也不適合于你的系統(tǒng)設(shè)計(jì)。
在比較處理器的體系結(jié)構(gòu)時(shí),處理器制造商提供的處理器功耗典型值和最大值只有有限的參考價(jià)值,因?yàn)楣目赡軙?huì)因執(zhí)行的指令、操作的數(shù)據(jù)、脫片工作數(shù)量以及動(dòng)態(tài)功率管理功能的不同而相差很大。一個(gè)更有用的比較功耗的基準(zhǔn)是毫瓦/任務(wù);但這種量度很難實(shí)現(xiàn),特別是很難用完全一致的方式去比較兩種處理器體系結(jié)構(gòu)。
有些處理器廠家提供一些電子表格和分析工具,以幫助你根據(jù)自己的系統(tǒng)的特性和所采用的電源管理功能來(lái)進(jìn)行更為有用的功耗估算。這些電子表格和分析工具盡管現(xiàn)在還比較簡(jiǎn)陋,但可以讓你用人工的方法表征系統(tǒng)的特性、你將要使用的指令混合、脫片工作的類型和數(shù)量,以及使用器件內(nèi)置電源管理功能的影響。電源管理功能包括:關(guān)斷不工作模塊的電源,限制時(shí)鐘信號(hào)向不工作模塊傳送,動(dòng)態(tài)調(diào)整時(shí)鐘頻率,以及調(diào)整作為時(shí)鐘頻率函數(shù)的電源電壓。
低功耗特性
許多處理器都設(shè)有睡眠模式、待機(jī)模式或低功耗模式,用以關(guān)掉特定的模塊(如外設(shè)、處理器芯核以及時(shí)鐘發(fā)生器的晶振)的電源。有選擇地關(guān)斷這些模塊的電源,可使你將這些模塊的功耗(包括靜態(tài)功耗)降低到零,因?yàn)椴魂P(guān)掉電源,它們做的是無(wú)用功。為了保存系統(tǒng)狀態(tài)數(shù)據(jù),并避免重新起動(dòng),低功耗模式通常要保留對(duì)存儲(chǔ)器結(jié)構(gòu)的供電。當(dāng)一個(gè)模塊恢復(fù)供電時(shí),在電源電壓和時(shí)鐘信號(hào)穩(wěn)定之前存在一個(gè)時(shí)間延遲。由于這一原因,在以下兩種情況下以這種方法關(guān)斷模塊電源是不切實(shí)際的:模塊的空閑時(shí)間小于穩(wěn)定時(shí)間,或模塊對(duì)事件的響應(yīng)時(shí)間比穩(wěn)定時(shí)間更快。關(guān)斷模塊電源是一種強(qiáng)制性技術(shù),無(wú)論 在BIOS、操作系統(tǒng)或應(yīng)用級(jí),它都要依靠軟件來(lái)根據(jù)通用或定制的運(yùn)行狀態(tài)模型來(lái)作出決定。
在一個(gè)器件的總功耗中,其時(shí)鐘樹的功耗可能占到一半,因?yàn)橐话闱闆r下,時(shí)鐘信號(hào)的頻率是任何其它信號(hào)的兩倍,而且它必須在器件內(nèi)的任何地方傳送。有些系統(tǒng)經(jīng)過(guò)分區(qū),將獨(dú)立的時(shí)鐘信號(hào)域供不同的模塊和元件使用,這樣的系統(tǒng)就不需要整體系統(tǒng)都以最高速度工作,因而可降低功耗。使用較低的時(shí)鐘頻率,不僅能減少功耗,而且還可以降低對(duì)高時(shí)鐘所需的邊沿快速率的要求,從而減小系統(tǒng)的EMI(電磁干擾)。
時(shí)鐘門控是一種動(dòng)態(tài)電源管理技術(shù),它是與軟件無(wú)關(guān),并對(duì)軟件是透明的;它可以防止時(shí)鐘信號(hào)傳輸?shù)较到y(tǒng)中當(dāng)前不工作的模塊,從而減少動(dòng)態(tài)功耗和 EMI。時(shí)鐘門控技術(shù)并不關(guān)斷某一功能塊的電源,因此它不會(huì)降低靜態(tài)功耗,但卻不受很長(zhǎng)起動(dòng)延遲時(shí)間的影響,而且它是按一個(gè)個(gè)時(shí)鐘周期起作用的。
在有設(shè)計(jì)良好的分級(jí)時(shí)鐘分配機(jī)制情況下,時(shí)鐘門控技術(shù)能以精確的粒度等級(jí),阻止時(shí)鐘傳送到不工作的部件,如總線、高速緩存、功能加速器和外設(shè)。時(shí)鐘門控實(shí)際能達(dá)到的粒度等級(jí)是有限的,因?yàn)樗揽靠刂七壿媮?lái)決定何時(shí)和是否沿某一時(shí)鐘分配分支路傳輸時(shí)鐘信號(hào)。因此,時(shí)鐘門控邏輯自身的功耗應(yīng)該小于它減少的功耗。異步電路,亦即無(wú)時(shí)鐘電路,是另一種使低功耗和高性能保持平衡的專用方法,類似于同步系統(tǒng)中理想時(shí)鐘門控技術(shù)(附文“異步電路”)。
DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY
評(píng)論