嵌入式系統(tǒng)動態(tài)電壓調(diào)節(jié)設(shè)計技術(shù)
嵌入式系統(tǒng)的重要特點之一就是工作負載的不均勻性以及動態(tài)變化性,可以通過動態(tài)關(guān)閉設(shè)備或者動態(tài)調(diào)節(jié)處理器的工作電壓來取得系統(tǒng)性能和功耗之間的平衡。目前已經(jīng)在系統(tǒng)的多個層次提出了動態(tài)電源管理和動態(tài)電壓調(diào)節(jié)技術(shù),而且這兩種技術(shù)已經(jīng)成為動態(tài)低功耗設(shè)計過程中的主流技術(shù)。本論文則重點闡述動態(tài)電壓調(diào)節(jié)設(shè)計技術(shù)的基本原理和策略模型。
關(guān)鍵詞? 嵌入式系統(tǒng)? 低功耗設(shè)計? 動態(tài)電源管理? 動態(tài)電壓調(diào)節(jié)
1? 低功耗設(shè)計研究的必要性和可能性
嵌入式系統(tǒng)是多個設(shè)備或?qū)ο蟮慕M合,其在一定限制條件下相互作用可產(chǎn)生特定的功能?,F(xiàn)在已經(jīng)出現(xiàn)了許多測試標準來對嵌入式系統(tǒng)的整體設(shè)計質(zhì)量進行評估,如系統(tǒng)性能、穩(wěn)定性、能耗、設(shè)計和生產(chǎn)費用等,其中系統(tǒng)的能耗問題在最近幾年已經(jīng)逐漸成為一個重要的設(shè)計考慮因素。能量的高效使用除了能夠降低系統(tǒng)操作代價(例如電能消耗)和減小環(huán)境影響(例如輻射干擾、噪聲)外,對延長手持設(shè)備的電池壽命來說也非常有必要。為了在系統(tǒng)性能得到維護的同時降低系統(tǒng)能耗,需要同時對硬件和軟件進行設(shè)計上的優(yōu)化,而嵌入式系統(tǒng)的組成特點和應(yīng)用特性也為能耗降低帶來了可能性。
1.1? 必要性
系統(tǒng)能耗已經(jīng)逐漸成為嵌入式系統(tǒng)設(shè)計過程中的一個重要研究點,其重要性隨著手持設(shè)備的普及而越來越突出。嵌入式系統(tǒng)設(shè)計者在以往設(shè)計過程中,將系統(tǒng)的穩(wěn)定性、實時性、安全性等作為設(shè)計和考慮的重點。但是對系統(tǒng)設(shè)計者來說,現(xiàn)在又產(chǎn)生了一個新的挑戰(zhàn)——降低系統(tǒng)的能量消耗,其必要性體現(xiàn)在以下6個方面:
?、?現(xiàn)在越來越多的手持設(shè)備系統(tǒng)利用電池供電,而電池容量相對有限,因此有必要通過降低功耗來延長系統(tǒng)的可持續(xù)使用時間。
② 半導(dǎo)體工業(yè)的迅速發(fā)展使得系統(tǒng)集成度和時鐘頻率得到了顯著提高,但IC器件運算能力爆發(fā)性增長的同時也導(dǎo)致系統(tǒng)的功耗急劇上升,這將帶來熱量釋放的問題,而且也給設(shè)備的封裝費用帶來影響。可以通過系統(tǒng)功耗的降低來減小整個系統(tǒng)的設(shè)計和生產(chǎn)成本。
?、?電池技術(shù)的發(fā)展速度嚴重滯后于系統(tǒng)能耗需求的增長速度:在最近30年里電池容量只增長了4~8倍,但在相同的時間范圍內(nèi)數(shù)字IC運算能力的增長卻超過了4個數(shù)量級。采用系統(tǒng)功耗降低技術(shù)可以彌補電池技術(shù)發(fā)展的不足。
④ 綠色電器理念越來越深入人心,低能耗高性能的嵌入式設(shè)備更容易得到用戶的認可。
?、?人們對環(huán)境問題的關(guān)心程度越來越高。顯然,系統(tǒng)功耗越大,外圍環(huán)境所受到的輻射或者電磁干擾越嚴重。
?、?能量價格上浮等因素也從另外一個方面體現(xiàn)了降低系統(tǒng)功耗的必要性。
綜合以上因素可以看出,嵌入式設(shè)備或者系統(tǒng)能耗的大小將會從多個方面影響系統(tǒng)的整體性能。因此,電子設(shè)計者在進行系統(tǒng)設(shè)計,尤其是針對手持設(shè)備類的嵌入式系統(tǒng)設(shè)計過程中,系統(tǒng)能耗將是一個越來越重要的設(shè)計因素。
1.2? 可能性
現(xiàn)在的嵌入式系統(tǒng)設(shè)計是軟硬件協(xié)同設(shè)計的過程,其系統(tǒng)組成和應(yīng)用特性為動態(tài)的低功耗策略設(shè)計與應(yīng)用提供了可能,這些可能性包括設(shè)備功耗模型、工作負載、系統(tǒng)嵌入三方面:
(1) 設(shè)備功耗模型
在嵌入式系統(tǒng)中,越來越多的設(shè)備除了正常功耗模式外,還支持一種或多種低功耗工作模式,這為動態(tài)的功耗管理提供了可能,即系統(tǒng)可以根據(jù)工作負載變化情況合理設(shè)置目標設(shè)備的工作模式。這就是動態(tài)電源管理(DPM)技術(shù)的應(yīng)用。另外,商用CMOS芯片電源供給技術(shù)的發(fā)展,使得處理器內(nèi)核的工作電壓在運行期間根據(jù)應(yīng)用任務(wù)的時間限制發(fā)生實時變化成為可能,即動態(tài)電壓調(diào)節(jié)(DVS)技術(shù)應(yīng)用;而高效DC—DC電壓轉(zhuǎn)換器的出現(xiàn)也為處理器工作電壓的動態(tài)調(diào)節(jié)提供了硬件設(shè)計條件。
(2) 工作負載
嵌入式系統(tǒng)是多種本質(zhì)上具有不同特征器件的集合。例如,某個便攜式系統(tǒng)具有處理器單元、模擬單元(無線卡)、機械部分(硬盤驅(qū)動)以及光學(xué)器件(顯示器)。顯然,這4個單元在系統(tǒng)運行過程中實現(xiàn)的功能各不相同。系統(tǒng)通常是在作最壞打算的工作負載情況下為達到峰值性能而進行設(shè)計,但是系統(tǒng)通常處于欠負載工作狀態(tài),而且工作負載具有不均勻性。工作負載的變化性(或者不均勻性)為能耗的自適應(yīng)降低提供了可能性。如果沒有任務(wù)對某個目標設(shè)備產(chǎn)生服務(wù)請求,則該設(shè)備處于空閑狀態(tài),從而可以將其關(guān)閉,使之進入低功耗、低性能的睡眠模式;當某個運行的任務(wù)需要使用該設(shè)備時,則將其喚醒,使之進入高功耗、高性能的工作狀態(tài)。
(3) 系統(tǒng)嵌入
當設(shè)計出節(jié)能效果顯著的動態(tài)低功耗策略后,還必須將其嵌入到系統(tǒng)程序中才能得到實際應(yīng)用。動態(tài)低功耗設(shè)計技術(shù)的重要性越來越突出,這除了從文獻中的研究成果可以看出之外,還可以通過系統(tǒng)動態(tài)功耗管理工業(yè)標準的建立明顯地看出?,F(xiàn)在主流的操作系統(tǒng),如Microsoft Windows、Linux都支持高級電源管理(Advanced Power Management,APM)、高級配置和電源接口(Advanced Configuration and Power Interface,ACPI)等模塊。其中ACPI于1997年提出,被Intel、Microsoft、Toshiba等公司推薦為系統(tǒng)功耗管理中的標準軟硬件接口。ACPI允許設(shè)備廠家、操作系統(tǒng)設(shè)計者、設(shè)備驅(qū)動編程人員使用同一個標準接口,而與ACPI兼容的設(shè)備也應(yīng)該能夠正確響應(yīng)ACPI的調(diào)用,如參數(shù)設(shè)置、工作狀態(tài)的查詢等。通過對APM、ACPI機制的引用或改進,可以很容易地將低功耗設(shè)計策略嵌入到系統(tǒng)內(nèi)核中,從而減輕了低功耗策略系統(tǒng)嵌入的工作量。
2? 靜態(tài)與動態(tài)低功耗設(shè)計
在系統(tǒng)級,有4種主要的能量消耗源: 處理單元、存儲單元、顯示單元、內(nèi)部連接和通信單元。能量高效的系統(tǒng)層設(shè)計在保證各個單元交互效應(yīng)達到平衡的同時,還必須使這4種類型單元的能耗最小化。
從總體上講,功耗降低技術(shù)在嵌入式系統(tǒng)范疇內(nèi)可以分為兩大類:靜態(tài)技術(shù)和動態(tài)技術(shù)。靜態(tài)技術(shù)主要在系統(tǒng)初始設(shè)計過程中使用,其假設(shè)系統(tǒng)的功能定義和工作模式已知,而且將來也不會改變。在嵌入式系統(tǒng)軟硬件設(shè)計的初期階段,已經(jīng)使用到了一些靜態(tài)低功耗降低技術(shù)。例如,通過軟件優(yōu)化編譯技術(shù)來優(yōu)化所使用的指令代碼,從而影響到運行程序的能耗;代碼存儲器和內(nèi)存中的數(shù)據(jù)存取方式將影響到處理器和存儲單元之間的能量平衡;數(shù)據(jù)表達方式也將影響到通信資源的功耗。另外,在參考文獻[13]中也已經(jīng)提出了一些靜態(tài)功耗管理策略。在參考文獻[1]中,針對采用EDF調(diào)度方法的實時系統(tǒng)提出了一種尋找最優(yōu)電壓調(diào)度的靜態(tài)方法;在參考文獻[2]中,作者研究了一個更為通用的處理器模型,該靜態(tài)方法使得在某些非常特殊的情況下能夠達到能耗的最優(yōu)化;在參考文獻[3]中,低能耗非搶占式調(diào)度問題被建模成一個整數(shù)線性問題,該系統(tǒng)包含一組具有相同到達時間和任務(wù)執(zhí)行期限,但是上下文切換代價不同的任務(wù)。
與靜態(tài)技術(shù)相對應(yīng),動態(tài)技術(shù)則是系統(tǒng)在運行階段充分利用工作負載的變化性來動態(tài)改變設(shè)備工作模式,從而達到降低系統(tǒng)功耗的目的。動態(tài)技術(shù)本質(zhì)上是一個系統(tǒng)級的設(shè)計方法,其最關(guān)鍵之處在于功耗管理(Power Management,PM)單元:PM單元監(jiān)控整個系統(tǒng)的工作狀態(tài),當發(fā)現(xiàn)系統(tǒng)處于欠負載或者無負載狀態(tài)時,就發(fā)送命令來控制目標設(shè)備的工作模式。而嵌入式系統(tǒng)的組成和應(yīng)用特性也為動態(tài)的低功耗策略設(shè)計與應(yīng)用提供了可能。
很明顯,靜態(tài)功耗降低技術(shù)只需在設(shè)計階段使用一次,在運行過程中不能根據(jù)工作負載的變化而靈活處理;動態(tài)低功耗技術(shù)在運行過程中則能夠很好地自適應(yīng)于工作負載變化情況,更易于執(zhí)行和應(yīng)用。另外,隨著系統(tǒng)功能增強和集成度的提高,靜態(tài)技術(shù)已經(jīng)不能完全滿足系統(tǒng)對功耗的要求。盡管靜態(tài)技術(shù)在一定程度上能夠帶來能量節(jié)省,但是最近的研究都著重于動態(tài)領(lǐng)域的低功耗設(shè)計技術(shù),后者通常利用底層的硬件特性來獲取有效的能量節(jié)省,現(xiàn)已成為嵌入式系統(tǒng)領(lǐng)域中降低功耗的重要手段。
3? DVS設(shè)計技術(shù)研究
3.1? DVS基本原理
隨著商用CMOS芯片電源供給技術(shù)的發(fā)展,處理器內(nèi)核的工作電壓在運行期間進行實時調(diào)節(jié)成為可能;而高效DC—DC電壓轉(zhuǎn)換器的出現(xiàn)也為處理器內(nèi)核工作電壓的動態(tài)調(diào)節(jié)提供了條件。另外在軟實時系統(tǒng)中,任務(wù)只需在規(guī)定的截止時間之前執(zhí)行完畢就能達到系統(tǒng)的性能要求,不要求立即得到系統(tǒng)的響應(yīng)。DVS技術(shù)就是根據(jù)任務(wù)的緊迫程度來動態(tài)調(diào)節(jié)處理器運行電壓,以達到任務(wù)響應(yīng)時間和系統(tǒng)低能耗之間的平衡。
DPM技術(shù)對非實時系統(tǒng)而言,能夠顯著節(jié)省能量。但是由于DPM內(nèi)在的概率特性以及非確定性,不適用于實時系統(tǒng)。DVS技術(shù)卻能夠很好地解決嵌入式實時系統(tǒng)中的性能與功耗要求,根據(jù)當前運行任務(wù)的性能需求來實時調(diào)節(jié)處理器工作電壓。DVS技術(shù)主要基于這樣一個事實,即處理器的能量消耗與工作電壓的平方成正比關(guān)系。如果只對處理器的頻率進行調(diào)節(jié),則所能節(jié)省的能量將很有限,這是因為功耗與周期時間成反比,而能耗又與執(zhí)行時間和功耗成正比。早期DVS原理基于處理器的利用率來設(shè)置其速度,并沒有考慮到運行任務(wù)的不同需求?,F(xiàn)在已經(jīng)針對實時系統(tǒng)提出了一些電壓調(diào)節(jié)策略。例如,參考文獻[4]針對電壓可連續(xù)變化以及離散變化的處理器進行了討論:為了降低電壓可連續(xù)變化處理器的功耗,需要為每個任務(wù)找到一個具體的電壓,從而將整個執(zhí)行時間延長到對應(yīng)的截止期限(deadline);對電壓離散變化的處理器來說,則至少需要為每個任務(wù)找到兩個執(zhí)行電壓。參考文獻[5]則考慮了將周期性和非周期性任務(wù)進行聯(lián)合在線調(diào)度的問題。該原理能夠保證滿足所有周期性任務(wù)的截止期限,并使得所接受的非周期性任務(wù)數(shù)目最大化。另外,在參考文獻[6]中還針對分布式系統(tǒng)進行了討論。
3.2? DVS策略模型
本文通過對一組任務(wù)的調(diào)度過程來闡述DVS策略模型。假設(shè)某個嵌入式處理器的工作電壓能夠在一定范圍內(nèi)連續(xù)調(diào)節(jié),且內(nèi)核程序需要處理5個相互獨立的任務(wù)Ta、Tb、Tc、Td、Te,其中Ta、Tb是周期性的任務(wù),另外3個任務(wù)則是間發(fā)性的,如表1所列,其中的時間均為相對時間。Ta、Tb的截止期限與它們的周期有關(guān)。每個任務(wù)在到達之后可以立即被執(zhí)行或者延遲執(zhí)行,但是都必須在各自的截止期限到來之前執(zhí)行完畢。
假設(shè)系統(tǒng)最大的可供電壓為3.3 V,在該電壓下的功耗被標準化為1 W。由CMOS器件特性可知,供給電壓的降低將會導(dǎo)致電路延遲的增加。電路延遲更精確的表達式為:
式中k是常數(shù),Vdd為工作電壓,Vt為門檻電壓。
假設(shè)Vt的典型值為0.8 V。顯然,當沒有應(yīng)用任何功耗降低技術(shù)時,系統(tǒng)的功耗為1 W。在對DVS調(diào)度技術(shù)進行說明的過程中,將其與DPM策略中的預(yù)測關(guān)閉技術(shù)進行了比較。當使用預(yù)測關(guān)閉技術(shù)時,假設(shè)系統(tǒng)完全預(yù)知工作負載的空閑時段,即處理器一旦進入空閑狀態(tài)就立即將其關(guān)閉,從而使得該技術(shù)能夠?qū)ο到y(tǒng)功耗達到最大程度的優(yōu)化。DVS策略應(yīng)用的最終目的在于滿足各個任務(wù)截止期限的同時使得系統(tǒng)功耗最小化。任務(wù)調(diào)度過程采用了EDF(Earliest Deadline First)調(diào)度機制。
圖1顯示了預(yù)測關(guān)閉技術(shù)和DVS方法的調(diào)度結(jié)果。
圖1? 預(yù)測關(guān)閉技術(shù)和DVS策略的應(yīng)用效果圖
如圖1(a)所示,在系統(tǒng)預(yù)測關(guān)閉技術(shù)下,系統(tǒng)的工作電壓一直為3.3 V。所有任務(wù)在[0,4]、[5,13]時間段內(nèi)執(zhí)行完畢,而處理器在[4,5]、[13,20]時間段內(nèi)將被關(guān)閉,然后再為下一個周期性任務(wù)提供服務(wù)。處理器占空比是60%,因此平均功耗為0.6 W。而在DVS應(yīng)用過程中,如圖1(b)所示,系統(tǒng)的平均功耗為0.38 W,該值比預(yù)測關(guān)閉技術(shù)又降低了(0.6-0.38)/0.6 =37%。
0.38 W只是在不知道間發(fā)性任務(wù)(即Tc、Td、Te)到達時間的情況下所能達到的最小功耗值。如果能夠完全知道間發(fā)性任務(wù)的到達時間,則DVS最優(yōu)策略就能夠使處理器在所有時間內(nèi)都維持在一個最低的電壓水平,同時保證所有任務(wù)都滿足截止期限的要求。在圖1(b)中,如果系統(tǒng)能夠預(yù)知Tc、Td、Te的到達時間,則[0,20]時間段內(nèi)的最優(yōu)電壓為2.48 V,該電壓值所對應(yīng)的處理器速度為最大速度的60%(即[3.3/(3.3-0.8)2]/[ 2.48/(2.48-0.8)2]),該運行速度也導(dǎo)致系統(tǒng)的平均功耗降為0.34? W。顯然,這個功耗平均值也對應(yīng)著在不知道間發(fā)性任務(wù)到達時間的情況下系統(tǒng)功耗所能達到的最小邊界值。
3.3? DVS與DPM的比較
通過對DVS、DPM的基本原理以及策略模型的闡述可以看出, DVS與DPM原理之間有著明顯的區(qū)別,但同時也存在著一致性。
DVS與DPM的區(qū)別在于:
① DVS在運行過程中根據(jù)工作負載的應(yīng)用需求(即任務(wù)完成時間)來動態(tài)調(diào)節(jié)設(shè)備(以處理器為主)的工作電壓,而DPM原理則是根據(jù)工作負載的有無來設(shè)置設(shè)備工作模式。
② 在DVS中,設(shè)備的工作電壓是可變的,因此需要穩(wěn)定的DCDC電壓轉(zhuǎn)換電路;而在DPM中,設(shè)備的工作電壓處于恒定狀態(tài)。
③ DVS一般應(yīng)用于對任務(wù)執(zhí)行時間要求比較嚴格的實時應(yīng)用系統(tǒng)中,它能夠很好地解決嵌入式實時系統(tǒng)中性能與功耗的要求。而DPM由于內(nèi)在的概率特性以及非確定性,不適用于實時系統(tǒng),一般應(yīng)用于非實時系統(tǒng)。
DVS與DPM之間的一致性體現(xiàn)在:如果將設(shè)備工作電壓的連續(xù)變化(或者離散變化)也看成是工作模式的變換,那么就可以將DVS包含在DPM的范疇之內(nèi)。從該意義上來說,DVS延伸了有效工作狀態(tài)的定義,即包括多個連續(xù)或者分散電壓值,這樣在運行期間就出現(xiàn)了若干個能夠在性能和功耗之間取得平衡的工作狀態(tài)。通過這種方法,PM在系統(tǒng)有負載時就可以使用DVS,而系統(tǒng)處于空閑時則將器件轉(zhuǎn)移到低功耗狀態(tài)(DPM應(yīng)用),這樣就能同時控制性能和功耗水平,從而得到更大的功耗節(jié)省。
通過上述比較分析可以看出,DPM與DVS兩者之間既存在著差異性,同時也保持著一致性,應(yīng)該根據(jù)系統(tǒng)特點來合理選擇應(yīng)用DPM與DVS。但是,當DPM和DVS對某個系統(tǒng)都適用時,應(yīng)優(yōu)先考慮DVS,因為其能夠帶來更多的能耗節(jié)省。
結(jié)語
以往的嵌入式系統(tǒng)設(shè)計主要涉及功能、穩(wěn)定性、設(shè)計和生產(chǎn)費用等,系統(tǒng)功耗相對來說是一個比較新的設(shè)計考慮因素。降低功耗主要是基于延長手持設(shè)備中電池的壽命、降低芯片封裝和冷卻費用、提高系統(tǒng)穩(wěn)定性和減小環(huán)境影響等方面的考慮,其重要性隨著手持設(shè)備的普及而越來越突出。
盡管DPM和DVS技術(shù)在過去十幾年里都取得了很大的進步,但在系統(tǒng)低功耗設(shè)計領(lǐng)域中有關(guān)最優(yōu)化設(shè)計和分析的研究空間仍然很大。例如,與電池相關(guān)的DVS策略還需要進一步的研究。眾所周知,在電池供電系統(tǒng)中如果降低系統(tǒng)的工作電流或者工作電壓,將會導(dǎo)致電池容量的增加,這種現(xiàn)象在電壓調(diào)節(jié)的過程中應(yīng)該加以利用。
評論
查看更多