嵌入式系統電源管理實現對比
引言
普適計算、智能空間等概念前所未有地擴展了嵌入式系統的應用范圍。同時也對嵌入式系統的功能、可靠性、成本、體積、功耗提出了更嚴格的要求。各種移動終端、可穿戴設備、消費類電子產品、傳感器網絡節點等典型嵌入式設備對能耗越來越敏感,電源管理技術正成為這些產品設計的關鍵所在。電源管理技術正由傳統的基于電源管理器件和外設控制為主的靜態控制方式,轉到以具備智能電源管理功能的嵌入式微處理器結合操作系統為核心的智能管理軟件的動靜態結合的綜合控制模式。
為了應對電源管理技術面臨的挑戰,芯片廠商推出了效率越來越高的電源管理芯片以及對能耗管理功能更加強大、精細的微處理器。以此為基礎,如何設計高效、智能的系統軟件對嵌入式設備進行能源管理,已成為研究熱點。本文將以典型硬件的電源管理功能為基礎,分析幾種代表性嵌入式操作系統的電源管理實現,探討電源管理系統軟件現狀及研究應用前景。
電源管理基本概念與方法
在電池供電的嵌入式系統中,一般采用高效率的電源管理芯片用于供電管理,或采用大容量的電池以解決能耗需求。但這兩種技術的發展還無法滿足快速增加的芯片動態功耗和靜態功耗。當電路工作或邏輯狀態翻轉時會產生動態功耗,未發生翻轉時漏電流會造成靜態功耗。在供電電壓Vdd下消耗的功率P如公式(1)所示:
P=C*V2dd*fC+VddIQ (1)
這里C為電容,fC為開關頻率,Vdd為電源電壓,IQ為漏電流。C*V2dd*fC為動態功耗;VddIQ為靜態功耗。隨著芯片運行速度的提高和工藝尺寸的不斷縮小、密度增加,其動態功耗和靜態功耗也在不斷增長,加劇了電源管理的復雜性。
有一種方法可以協調高性能與低功耗之間的矛盾,就是根據系統負載進行性能調節。從公式(1)中我們可以得知,對一個給定負載,動態功耗的量值與供電電壓的平方成正比,與運行頻率成正比。減少供電電壓并同時降低處理器的時鐘速度,功耗將會呈平方速度下降,代價是增加了運行時間。此外,還可以通過停止芯片模塊的時鐘和電源供應的辦法,將能耗降至最低,代價是重新啟動該模塊時需要額外能耗。因此,通過有效地利用上述能耗管理方法,得到性能和功耗間的最佳平衡,達到節能最大化。
嵌入式微處理器對電源管理的支持
從8位單片機到32位高性能處理器,都在一定程度上支持電源管理功能。例如處理器支持多種電源狀態,如圖1所示。系統電源狀態轉化
系統在運行態(Run)時,設備全部正常工作。在空閑態時,處理器按照特定的模式,進行相應的節能。在掛起狀態下,處理器掛起,主存儲器運行在節能的自刷新模式,只有功耗管理電路、喚醒電路繼續工作。現有的單片機、ARM等32位RISC處理器一般都支持以上模式,下面分別加以介紹。
單片機的電源管理支持
在傳感器網絡應用中,傳感器節點一般采用低廉的8/16位單片機,其電池壽命至關重要。節點工作時按功率消耗由小到大有睡眠(sleep)、空閑(idle)、接收(receive)及發送(transmit)等四種模式。大多時間內,節點都處于睡眠與空閑模式,只有少量能耗。
ATMEL采用picoPower技術的AVR微控制器顯著降低了功耗。這些技術包括一個超低功耗晶振、睡眠模式下自動終止和重激活欠壓檢測器、能完全停止對外圍設備電力供應的省電寄存器以及能夠關閉特定管腳輸入的數字輸入中斷寄存器。picoPower技術使工作電流大幅度降低,減少了斷電狀態下不必要的功耗,使電池使用壽命得到了延長。
ARM的電源管理技術
ARM以其優秀的低功耗技術在消費類電子等領域得到廣泛應用。ARM實現了不同級別的低功耗管理技術,如表1所示。表1 ARM不同級別的低功耗管理技術
電源功耗管理級別 | Architecture Level | System Level | Block Level | Logic Level | Process Level |
實現動態低功耗技術 | Clock Gating | Clocking Domains | voltage Domains | Low Voltage Cells | Low Power Library |
實現靜態低功耗技術 | Sleep Mode | Power Gating | State Store/Restore | High Voltage Cells | Artisan PMK |
據ARM估計,32位的Cortex-M3處理器內核以0.19mW/MHz(0.18微米)極低的功耗在特殊應用中占據優勢。32位Cortex-M3設備執行任務的速度比8位設備快許多倍,所以活動模式中所用的時間更短,平均功率相應降低。其功耗如表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 |
評論