嵌入式系統(tǒng)電源管理實現(xiàn)對比
引言
普適計算、智能空間等概念前所未有地擴展了嵌入式系統(tǒng)的應用范圍。同時也對嵌入式系統(tǒng)的功能、可靠性、成本、體積、功耗提出了更嚴格的要求。各種移動終端、可穿戴設(shè)備、消費類電子產(chǎn)品、傳感器網(wǎng)絡(luò)節(jié)點等典型嵌入式設(shè)備對能耗越來越敏感,電源管理技術(shù)正成為這些產(chǎn)品設(shè)計的關(guān)鍵所在。電源管理技術(shù)正由傳統(tǒng)的基于電源管理器件和外設(shè)控制為主的靜態(tài)控制方式,轉(zhuǎn)到以具備智能電源管理功能的嵌入式微處理器結(jié)合操作系統(tǒng)為核心的智能管理軟件的動靜態(tài)結(jié)合的綜合控制模式。
為了應對電源管理技術(shù)面臨的挑戰(zhàn),芯片廠商推出了效率越來越高的電源管理芯片以及對能耗管理功能更加強大、精細的微處理器。以此為基礎(chǔ),如何設(shè)計高效、智能的系統(tǒng)軟件對嵌入式設(shè)備進行能源管理,已成為研究熱點。本文將以典型硬件的電源管理功能為基礎(chǔ),分析幾種代表性嵌入式操作系統(tǒng)的電源管理實現(xiàn),探討電源管理系統(tǒng)軟件現(xiàn)狀及研究應用前景。
電源管理基本概念與方法
在電池供電的嵌入式系統(tǒng)中,一般采用高效率的電源管理芯片用于供電管理,或采用大容量的電池以解決能耗需求。但這兩種技術(shù)的發(fā)展還無法滿足快速增加的芯片動態(tài)功耗和靜態(tài)功耗。當電路工作或邏輯狀態(tài)翻轉(zhuǎn)時會產(chǎn)生動態(tài)功耗,未發(fā)生翻轉(zhuǎn)時漏電流會造成靜態(tài)功耗。在供電電壓Vdd下消耗的功率P如公式(1)所示:
P=C*V2dd*fC+VddIQ (1)
這里C為電容,fC為開關(guān)頻率,Vdd為電源電壓,IQ為漏電流。C*V2dd*fC為動態(tài)功耗;VddIQ為靜態(tài)功耗。隨著芯片運行速度的提高和工藝尺寸的不斷縮小、密度增加,其動態(tài)功耗和靜態(tài)功耗也在不斷增長,加劇了電源管理的復雜性。
有一種方法可以協(xié)調(diào)高性能與低功耗之間的矛盾,就是根據(jù)系統(tǒng)負載進行性能調(diào)節(jié)。從公式(1)中我們可以得知,對一個給定負載,動態(tài)功耗的量值與供電電壓的平方成正比,與運行頻率成正比。減少供電電壓并同時降低處理器的時鐘速度,功耗將會呈平方速度下降,代價是增加了運行時間。此外,還可以通過停止芯片模塊的時鐘和電源供應的辦法,將能耗降至最低,代價是重新啟動該模塊時需要額外能耗。因此,通過有效地利用上述能耗管理方法,得到性能和功耗間的最佳平衡,達到節(jié)能最大化。
嵌入式微處理器對電源管理的支持
從8位單片機到32位高性能處理器,都在一定程度上支持電源管理功能。例如處理器支持多種電源狀態(tài),如圖1所示。系統(tǒng)電源狀態(tài)轉(zhuǎn)化
系統(tǒng)在運行態(tài)(Run)時,設(shè)備全部正常工作。在空閑態(tài)時,處理器按照特定的模式,進行相應的節(jié)能。在掛起狀態(tài)下,處理器掛起,主存儲器運行在節(jié)能的自刷新模式,只有功耗管理電路、喚醒電路繼續(xù)工作?,F(xiàn)有的單片機、ARM等32位RISC處理器一般都支持以上模式,下面分別加以介紹。
單片機的電源管理支持
在傳感器網(wǎng)絡(luò)應用中,傳感器節(jié)點一般采用低廉的8/16位單片機,其電池壽命至關(guān)重要。節(jié)點工作時按功率消耗由小到大有睡眠(sleep)、空閑(idle)、接收(receive)及發(fā)送(transmit)等四種模式。大多時間內(nèi),節(jié)點都處于睡眠與空閑模式,只有少量能耗。
ATMEL采用picoPower技術(shù)的AVR微控制器顯著降低了功耗。這些技術(shù)包括一個超低功耗晶振、睡眠模式下自動終止和重激活欠壓檢測器、能完全停止對外圍設(shè)備電力供應的省電寄存器以及能夠關(guān)閉特定管腳輸入的數(shù)字輸入中斷寄存器。picoPower技術(shù)使工作電流大幅度降低,減少了斷電狀態(tài)下不必要的功耗,使電池使用壽命得到了延長。
ARM的電源管理技術(shù)
ARM以其優(yōu)秀的低功耗技術(shù)在消費類電子等領(lǐng)域得到廣泛應用。ARM實現(xiàn)了不同級別的低功耗管理技術(shù),如表1所示。表1 ARM不同級別的低功耗管理技術(shù)
電源功耗管理級別 | Architecture Level |
System Level | Block Level |
Logic Level | Process Level |
實現(xiàn)動態(tài)低功耗技術(shù) | Clock Gating | Clocking Domains |
voltage Domains |
Low Voltage Cells |
Low Power Library |
實現(xiàn)靜態(tài)低功耗技術(shù) | Sleep Mode | Power Gating | State Store/Restore | High Voltage Cells |
Artisan PMK |
據(jù)ARM估計,32位的Cortex-M3處理器內(nèi)核以0.19mW/MHz(0.18微米)極低的功耗在特殊應用中占據(jù)優(yōu)勢。32位Cortex-M3設(shè)備執(zhí)行任務的速度比8位設(shè)備快許多倍,所以活動模式中所用的時間更短,平均功率相應降低。其功耗如表2所示。表2 Cortex-M3能量消耗
能量消耗 | 1MHZ | 16MHZ | 32MHZ | |
Active | mW | 0.29mW | 4.5mW | 9mW |
Sleep | mW | 0.01mW | 0.16mW | 0.3mW |
Standby | µW | 1µW | 1µW | 1µW |
高端ARM處理器還支持功能更強大的電源管理功能,通過電壓調(diào)節(jié)與頻率調(diào)節(jié)相結(jié)合,極大地降低功耗,提高能量效率。動態(tài)電壓調(diào)節(jié)(DVS)是通過對系統(tǒng)的負載預測,在一個開環(huán)電壓控制系統(tǒng)中用多組能耗級別的頻率、電壓對來實現(xiàn)。自適應電壓調(diào)節(jié)(AVS)用一個閉環(huán)電壓控制系統(tǒng)來實現(xiàn),它無需配對的頻率、電壓,能提供更優(yōu)的節(jié)能效果。
例如以TI的 OMAP1610(ARM926E核)處理器為例,內(nèi)部可以調(diào)節(jié)參數(shù)包括:CPU電壓,DPLL頻率控制,CPU頻率控制,交通控制器(TC),外部設(shè)備控制器,DSP運行頻率,DSP MMU頻率,LCD刷新頻率。通過定義操作點(Operation Points,OP)數(shù)據(jù)結(jié)構(gòu)來抽象表示頻率、電壓等能耗級別,如表3所示。表3 OMAP1610操作點參數(shù)
參數(shù)操作點 | CPU電壓 (mV) |
DPLL頻率 乘法器 |
DPLL頻率 分頻器 |
CPU頻率 控制 |
TC 控制器 |
192MHz~1.5V | 1500 | 16 | 1 | 1 | 2 |
168MHz~1.5V | 1500 | 14 | 1 | 1 | 2 |
84MHz~1.5V | 1500 | 14 | 1 | 2 | 2 |
84MHz~1.5V | 1100 | 14 | 1 | 2 | 2 |
60MHz~1.5V | 1500 | 5 | 1 | 1 | 1 |
60MHz~1.5V | 1100 | 5 | 1 | 1 | 1 |
其中,192MHz-1.5V操作點參數(shù)1500表示OMAP3.2核心電壓1500mV;16表示DPLL頻率控制12MHz晶振輸入倍頻16倍;1表示分頻為1;1表示OMAP3.2核心分頻為1(所以它運行在192MHz);2表示TC(交通控制器)分頻為2(所以它運行在96MHz);如果使用TI的DSP代碼,則后四個參數(shù)為不可控,均使用默認值。
更先進電源管理功能的嵌入式微處理器還有90nm工藝的Marvel PAX300系列,提供更細顆粒的電源管理技術(shù)(稱為MSPM),API和驅(qū)動程序;飛思卡爾iMX31支持DVFS(動態(tài)的電壓和頻率調(diào)節(jié))和DPTC(動態(tài)的處理器溫度補償)等技術(shù),它配合飛思卡爾MC13783和MC34704 IC管理器件,Linux驅(qū)動和策略管理代碼,用戶可以方便地構(gòu)建一個具備優(yōu)秀電源管理能力的嵌入式系統(tǒng)。
ARM 與國家半導體(NS)開發(fā)出了先進的能量管理解決方案,智能能量管理器(IEM)預測軟件決定了處理器可以運行的最低性能級別,同時,通過智能能量控制器(IEC)的幫助、通過自適應功率控制器(APC)與外部能量管理單元(EMU)一起工作,使處理器運行在能保證應用軟件正確運行的最低電壓和頻率下。
典型嵌入式系統(tǒng)能耗組成
典型嵌入式系統(tǒng),例如移動終端,其能耗主要部件包括嵌入式微處理器(CPU)、內(nèi)存、LCD及背光,電源轉(zhuǎn)換部件,其他部件還可能包括基帶處理器、DSP、外設(shè)控制器等。據(jù)統(tǒng)計,CPU占20%~25%,LCD以及背光占用了20%,內(nèi)存占15%,電源轉(zhuǎn)換占5%~10%,其他的組成占用剩余的30%~40%。典型嵌入式系統(tǒng)的能耗組成如圖2所示。
在這些元件中,有些元件性能指標和能耗固定;有些元件可在不同時間工作,并有多種可控的耗能狀態(tài)。后者的有效使用成為系統(tǒng)節(jié)能的關(guān)鍵所在。