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