當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]嵌入式系統(tǒng)降低功耗的方法研究

摘要 低功耗嵌入式系統(tǒng)設(shè)計(jì)的能量消耗問題是近幾年來在嵌入式系統(tǒng)設(shè)計(jì)中普遍關(guān)注的難點(diǎn)與熱點(diǎn),它嚴(yán)重制約著嵌入式系統(tǒng)的應(yīng)用及發(fā)展。本文以降低嵌入式系統(tǒng)所耗電能為目標(biāo),提出了嵌入式系統(tǒng)降低功耗的綜合措施,并對(duì)低功耗嵌入式系統(tǒng)各種經(jīng)典措施進(jìn)行優(yōu)化改進(jìn),使之充分發(fā)揮降低功耗的作用。最后闡述了該解決措施尚存在的一些關(guān)鍵問題,并對(duì)低功耗嵌入式系統(tǒng)的前景和發(fā)展進(jìn)行了評(píng)述。
關(guān)鍵詞 低功耗硬件設(shè)計(jì) 低功耗軟件設(shè)計(jì) DVS DPM


引 言
    隨著嵌入式系統(tǒng)應(yīng)用的迅速發(fā)展,PDA和移動(dòng)電話等便攜式裝置深入到生產(chǎn)生活的各個(gè)角落,嵌入式系統(tǒng)市場有迅速增長趨勢。嵌入式系統(tǒng)一般是由電池來供給電能的,而且大多數(shù)嵌入式設(shè)備都有體積和重量的約束。減少電能消耗不僅能延長電池的壽命,縮短用戶更換電池的周期,而且能提高系統(tǒng)性能與減小系統(tǒng)開銷,甚至能起到保護(hù)環(huán)境的作用。

1 嵌入式系統(tǒng)功耗分析
    研究微處理器的低功耗設(shè)計(jì)技術(shù),首先必須了解它的功耗來源。如圖1所示,從高層次仿真得出的結(jié)論可以看出,通過開關(guān)級(jí)功率模擬所獲得的高性能CPU的功率分布關(guān)系。其中,時(shí)鐘功耗所占比例最大,包括時(shí)鐘發(fā)生、驅(qū)動(dòng)器、時(shí)鐘樹、鎖存器和所有時(shí)鐘負(fù)擔(dān)的器件;數(shù)據(jù)通路的功耗僅次于時(shí)鐘,主要包括執(zhí)行單元、總線和寄存器文件;片上存儲(chǔ)器的功耗主要由存儲(chǔ)器的大小以及存儲(chǔ)陣列的電路和物理結(jié)構(gòu)所決定;控制單元和I/O的功耗通常占整個(gè)芯片功耗的一小部分。

2 嵌入式系統(tǒng)低功耗設(shè)計(jì)
    低功耗設(shè)計(jì)是一個(gè)復(fù)雜的綜合性課題。就流程而言,包括功耗建模、評(píng)估以及優(yōu)化等;就設(shè)計(jì)抽象層次而言,包括自硬件底層至應(yīng)用程序?qū)拥乃谐橄髮哟危壳暗凸脑O(shè)計(jì)大都在操作系統(tǒng)層實(shí)施,如圖2所示。同時(shí),功耗優(yōu)化與系統(tǒng)速度和面積等指標(biāo)的優(yōu)化密切相關(guān),需要折中考慮。下面根據(jù)各部分在嵌入式系統(tǒng)中的不同層次,討論常用的低功耗設(shè)計(jì)技術(shù)及具體應(yīng)用。

2.1 低功耗硬件設(shè)計(jì)
    低功耗硬件設(shè)計(jì)是嵌入式系統(tǒng)降低功耗的重要內(nèi)容。因此,需要從系統(tǒng)內(nèi)部結(jié)構(gòu)設(shè)計(jì)、系統(tǒng)時(shí)鐘設(shè)計(jì)和低功耗模式等幾方面采用特定的方法(例如,門控時(shí)鐘和可變頻率時(shí)鐘、并行結(jié)構(gòu)與流水線技術(shù)、低功耗單元庫、低功耗狀態(tài)機(jī)編碼、Cache低功耗設(shè)計(jì)等)來實(shí)現(xiàn)系統(tǒng)硬件節(jié)能設(shè)計(jì)。下面介紹門控時(shí)鐘和可變頻率時(shí)鐘的應(yīng)用。時(shí)鐘是惟一在所有時(shí)間都充放電的信號(hào),而且很多情況下引起不必要的門的翻轉(zhuǎn),因此降低時(shí)鐘的開關(guān)活動(dòng)性將對(duì)降低整個(gè)系統(tǒng)的功耗產(chǎn)生很大的影響。門控時(shí)鐘包括門控邏輯模塊時(shí)鐘和門控寄存器時(shí)鐘。門控邏輯模塊時(shí)鐘對(duì)時(shí)鐘網(wǎng)絡(luò)進(jìn)行劃分,如果在當(dāng)前的時(shí)鐘周期內(nèi),系統(tǒng)沒有用到某些邏輯模塊,則暫時(shí)切斷這些模塊的時(shí)鐘信號(hào),從而顯著降低開關(guān)功耗。圖3為采用“與”門實(shí)現(xiàn)的時(shí)鐘控制電路。門控寄存器時(shí)鐘的原理是當(dāng)寄存器保持?jǐn)?shù)據(jù)時(shí),關(guān)閉寄存器時(shí)鐘,以降低功耗。門控時(shí)鐘易引起毛刺,必須對(duì)信號(hào)的時(shí)序加以嚴(yán)格限制,并對(duì)其進(jìn)行仔細(xì)的時(shí)序驗(yàn)證。

[!--empirenews.page--]

    另一種常用的時(shí)鐘技術(shù)就是可變頻率時(shí)鐘。它可根據(jù)系統(tǒng)性能要求,配置適當(dāng)?shù)臅r(shí)鐘頻率以避免不必要的功耗。門控時(shí)鐘實(shí)際上是可變頻率時(shí)鐘的一種極限情況(即只有0和最高頻率兩種值),因此,可變頻率時(shí)鐘比門控時(shí)鐘技術(shù)更加有效,但需要系統(tǒng)內(nèi)嵌時(shí)鐘產(chǎn)生模塊PLL,增加了設(shè)計(jì)復(fù)雜度。圖4為在具有低功耗特性的嵌入式芯片上進(jìn)行的時(shí)鐘系統(tǒng)設(shè)計(jì)方案。片上時(shí)鐘系統(tǒng)通過2個(gè)數(shù)字鎖相環(huán)CPUPLL和SysPLL來穩(wěn)定16 MHz的輸入時(shí)鐘,分別送到不同的倍頻器和分頻器。經(jīng)CPU-PLL的時(shí)鐘信號(hào)作為處理器內(nèi)核時(shí)鐘,經(jīng)SysPLL的時(shí)鐘信號(hào)作為處理器內(nèi)核之外的系統(tǒng)時(shí)鐘、存儲(chǔ)器時(shí)鐘和外設(shè)時(shí)鐘。
    由于處理器芯片(如i.MX1)不支持電壓動(dòng)態(tài)調(diào)節(jié),可通過配置片內(nèi)數(shù)字鎖相環(huán)實(shí)現(xiàn)內(nèi)核頻率動(dòng)態(tài)調(diào)節(jié)。根據(jù)公式計(jì)算出系統(tǒng)頻率:


  
其中:fref是系統(tǒng)的低頻時(shí)鐘頻率,作為倍頻的參考頻率;MFI是倍頻因子的整數(shù)部分;MFN和MFD分別是倍頻因子的分子和分母;PD是預(yù)設(shè)分頻因子。
2.2 操作系統(tǒng)層
    系統(tǒng)級(jí)低功耗設(shè)計(jì)一般是在操作系統(tǒng)層實(shí)現(xiàn)。因?yàn)椴僮飨到y(tǒng)管理系統(tǒng)所有軟硬件資源,并獲取系統(tǒng)的各種狀態(tài)信息,控制硬件設(shè)備的狀態(tài)。因此,在操作系統(tǒng)中實(shí)現(xiàn)全局功耗控制是最佳選擇。操作系統(tǒng)層面分成功耗驅(qū)動(dòng)模塊和功耗調(diào)度模塊。
2.2.1 功耗驅(qū)動(dòng)模塊
    驅(qū)動(dòng)模塊實(shí)現(xiàn)相對(duì)簡單,主要是對(duì)硬件操作。功耗模式轉(zhuǎn)換和頻率調(diào)節(jié)都是通過片上時(shí)鐘系統(tǒng)控制寄存器進(jìn)行設(shè)置。因此,實(shí)質(zhì)上是對(duì)寄存器的設(shè)置。從睡眠模式或停止模式進(jìn)入運(yùn)行模式相對(duì)容易,只需向系統(tǒng)發(fā)出中斷信號(hào),喚醒系統(tǒng)進(jìn)入運(yùn)行模式。而從運(yùn)行模式到睡眠模式或停止模式相對(duì)復(fù)雜,其關(guān)鍵代碼如下:

2.2.2 功耗調(diào)度模塊
    功耗調(diào)度模塊實(shí)現(xiàn)的關(guān)鍵技術(shù)在嵌入式Linux操作系統(tǒng)中有具體體現(xiàn)。在Linux操作系統(tǒng)中,任務(wù)的調(diào)度主要由進(jìn)程調(diào)度(或任務(wù)調(diào)度)模塊 schedule()完成。schedule()掌握系統(tǒng)內(nèi)所有進(jìn)程的運(yùn)行狀態(tài),并對(duì)其執(zhí)行的優(yōu)先級(jí)進(jìn)行管理調(diào)度。因此,系統(tǒng)級(jí)實(shí)現(xiàn)功耗控制,需要對(duì)嵌入式Linux內(nèi)核的schedule()模塊全面改寫,將DPM和DVS策略加入其中。設(shè)計(jì)思路為:由于Linux內(nèi)核提供的 cpu_usage_stat結(jié)構(gòu)記錄了處理器運(yùn)行時(shí)間的分配情況,可以通過讀取這些參數(shù)計(jì)算出當(dāng)前系統(tǒng)的運(yùn)行比例,即通過cpu_scan函數(shù)來實(shí)現(xiàn)具體的操作。cpu_scan函數(shù)是處理器設(shè)備驅(qū)動(dòng)的主要部分,它在固定的時(shí)間片內(nèi)調(diào)用,時(shí)間片的大小可以根據(jù)需要在5~1D0 ms之間選取。該函數(shù)通過調(diào)用cpu_dvs函數(shù)和cpu_dmp函數(shù)來評(píng)估系統(tǒng)的狀態(tài),這兩個(gè)函數(shù)分別是可變電壓技術(shù)和動(dòng)態(tài)功耗管理的實(shí)現(xiàn)。
    (1)DPM策略
    DPM策略在低功耗嵌入式Linux系統(tǒng)的實(shí)現(xiàn)上分為觀測器和控制器兩部分,如圖5所示。我們在實(shí)現(xiàn)過程中采用了Timeout算法。該算法實(shí)現(xiàn)簡單,預(yù)測準(zhǔn)確性也較高。統(tǒng)計(jì)表明,只要合理地設(shè)計(jì)Timeout,這種假設(shè)的可信度為95%。采用了Timeout算法的cpu_dmp函數(shù)在此不再具體解釋。但在動(dòng)態(tài)電源管理實(shí)現(xiàn)過程中容易出現(xiàn)一個(gè)喚醒信號(hào)發(fā)送給一個(gè)等待隊(duì)列中的進(jìn)程后,該進(jìn)程不能夠立即被調(diào)度執(zhí)行,從而造成事件丟失的情況。為了避免這種情況的出現(xiàn),Llow被設(shè)置成比Lmax稍小的值。當(dāng)事件數(shù)量到達(dá)Llow時(shí),即使事件處理進(jìn)程被喚醒后不能馬上轉(zhuǎn)入執(zhí)行,由于Llow<Lmax,事件列表還沒有全滿,也不會(huì)造成新事件丟失。這樣,既降低了事件丟失的幾率,對(duì)系統(tǒng)的影響也降到了最小,因?yàn)橹挥挟?dāng)事件列表快滿時(shí)才會(huì)調(diào)用事件處理進(jìn)程。[!--empirenews.page--]

    更新事件列表算法代碼如下:

    顯式資源需要對(duì)驅(qū)動(dòng)程序作一些修改,即在驅(qū)動(dòng)程序發(fā)送執(zhí)行命令前和硬件完成服務(wù)并通過驅(qū)動(dòng)程序告訴內(nèi)核設(shè)備就緒后這兩個(gè)時(shí)間點(diǎn),插入一個(gè)NotifyEvent()函數(shù)調(diào)用。具體的代碼插入點(diǎn)根據(jù)不同類型的設(shè)備和對(duì)服務(wù)開始與結(jié)束的不同定義而不同。
    根據(jù)觀測器得到的系統(tǒng)資源訪問歷史記錄計(jì)算出優(yōu)化策略之后,控制模塊將在通過電源管理機(jī)發(fā)出控制命令給相應(yīng)的硬件完成服務(wù),并通過驅(qū)動(dòng)程序告訴內(nèi)核設(shè)備就緒后這兩個(gè)時(shí)間點(diǎn)插入一個(gè)NotifyEvent()函數(shù)調(diào)用。
    (2)DVS策略
    目前,嵌入式系統(tǒng)降低功耗多采用動(dòng)態(tài)電壓縮放技術(shù)Ⅲ,即系統(tǒng)運(yùn)行時(shí)可以通過設(shè)置可編頻率寄存器控制處理器的工作頻率。實(shí)驗(yàn)觀察發(fā)現(xiàn),系統(tǒng)的運(yùn)行負(fù)荷具有明顯的非平穩(wěn)特性,短時(shí)間內(nèi)可能具有很高的執(zhí)行負(fù)荷,但絕大部分時(shí)間維持輕負(fù)荷狀態(tài)。DVS技術(shù)根據(jù)嵌入式系統(tǒng)這一特點(diǎn),在系統(tǒng)負(fù)荷較重時(shí)將處理器設(shè)置為最高執(zhí)行速度,以保證系統(tǒng)的計(jì)算能力;而在系統(tǒng)負(fù)荷較輕時(shí)動(dòng)態(tài)降低處理器的工作頻率,以降低處理器的執(zhí)行功耗,從而實(shí)現(xiàn)系統(tǒng)計(jì)算性能與功耗的優(yōu)化控制,如圖 6所示。DVS的預(yù)測通過采用了基于時(shí)間間隔AVGn算法的cpu_dvs函數(shù)實(shí)現(xiàn)。該函數(shù)讀取CPU使用信息,按照AVGn算法來估算系統(tǒng)的運(yùn)行負(fù)荷,并根據(jù)返回給cpu_scan函數(shù)的結(jié)果實(shí)現(xiàn)具體的動(dòng)態(tài)電壓縮放。


    AVGn算法分析了多種簡單或復(fù)雜的估計(jì)算法和平滑技術(shù)。其基本思想是采用指數(shù)平滑平均值方法,即預(yù)測即將到來的間隔的n個(gè)運(yùn)行百分比的加權(quán)平均值。但AVGn算法存在一個(gè)問題就是,逐檔改變頻率導(dǎo)致系統(tǒng)不能及時(shí)地響應(yīng)負(fù)載變化,還需要大量深入細(xì)致的研究。
2.3 應(yīng)用程序?qū)?br />    在基于微處理器、微控制器的系統(tǒng)中,軟件起到了引導(dǎo)硬件活動(dòng)的主導(dǎo)作用。也就是說,軟件對(duì)系統(tǒng)的能量消耗有很大的影響。直到目前,還沒有有效且精確的方法可用來評(píng)估軟件設(shè)計(jì)對(duì)能量消耗所起的效應(yīng)。沒有能量評(píng)估,就無法對(duì)軟件進(jìn)行優(yōu)化進(jìn)而減少電能消耗。引起CPU電能消耗的眾多因素中,至少有2個(gè)受軟件的影響極大——存儲(chǔ)系統(tǒng)與系統(tǒng)總線。在嵌入式系統(tǒng)的低功耗軟件設(shè)計(jì)中,主要考慮這2個(gè)因素。

3 總 結(jié)
    功耗已經(jīng)成為嵌入式系統(tǒng)設(shè)計(jì)中優(yōu)先要考慮的問題,隨著處理器速度越來越快,如何降低功耗已經(jīng)成為衡量嵌入式系統(tǒng)性能優(yōu)良的一個(gè)重要方面。因此,在低功耗嵌入式系統(tǒng)設(shè)計(jì)過程中要考慮各部分具體的低功耗設(shè)計(jì)方法,同時(shí)也要充分發(fā)揮各抽象層的低功耗技術(shù)優(yōu)勢。
    本文介紹的低功耗嵌入式系統(tǒng)中仍有很多不足,有待進(jìn)一步探索:①DPM隨機(jī)決策模型和求解算法,并沒有解答最優(yōu)策略是否存在、若存在最優(yōu)策略具有什么特性等基本問題,也沒能從理論上解釋“實(shí)踐中超時(shí)策略可以取得優(yōu)良節(jié)能效果”的原因。②本文的DVS策略采用與AVGn算法類似的假設(shè)條件,在實(shí)際應(yīng)用中這些條件過于苛刻。如何將本文DVS策略的思想應(yīng)用到特定的非理想情況的嵌入式系統(tǒng)中,尚需進(jìn)一步研究。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉