嵌入式應用系統中,普遍存在功耗浪費現象。
1 零功耗系統設計的基本概念
1.1 系統中的理想功耗
一個電子系統要運行就會有功耗。如果系統運行時沒有任何功耗浪費,那么它的功耗就是系統的理想功耗。
在一個嵌入式應用系統中,由于普遍存在CPU高速運行功能和有限任務處理要求的巨大差異,會形成系統在時間與空間上巨大的無效操作。如果在系統運行中,所有時間、空間上的無效操作都沒有功耗,那么系統便處于理想功耗運行之下。
1.2 應用系統中的有效操作時空占空比
如果將系統運行中,所有時間、空間上的有效操作和無效操作采用時空占空比來量化描述,那么,有效操作占空比定義為:有效操作與系統全部運行操作之比。在一個具體應用系統中,有效操作的時空占空比有:宏觀時域占空比、宏觀區域占空比、微觀時域占空比和微觀區域占空比。以下以一個嵌入式應用系統--熱流量計為例來描述這4個占空比的概念。
1.2.1 有效操作的宏觀時域占空比Tdc
Tdc定義為系統運行時域上有效操作時間OPact與全部運行時間OPtot之比。由于嵌入式應用中CPU的高速運行與有限任務操作的差異,常常會形成有效操作高諧小量的時域占空比現象。例如,在熱流量計中,要采集、處理的物理參數有熱水的入口溫度、出口溫度和流量計數值。由于這些參數的大慣量特征,在滿足采集精度要求下,一次采集循環周期為10 min,然而系統完成一次采集、處理、存儲、送顯示的時間只需2 s,如圖1所示。那么,該系統的有效操作時間OPact為 2 s,全部操作循環時間OPtot為600 s,系統宏觀有效操作時域占空比為
1.2.2 有效操作的宏觀區域占空比Sdc
有效操作宏觀區域占空比定義為:系統運行時,有效操作區域Sact與系統全部區域Stot之比。由于系統運行時,并不是所有電路單元都處于有效操作狀態,特別是在單CPU系統中,所有功能單元都是在CPU的輪流控制下運行,致使系統的各部分電路輪流進入有效操作狀態。例如,在熱流量計中,在有效操作時域OPact中,除CPU外,采集、處理、存儲、送顯示的4個主體操作是輪流進行的,如圖2所示。如果按等區域原則最粗略地估算,可以算出該系統宏觀有效操作的區域占空比為在系統硬件設計中,如果有意識地按任務進程,對系統電路進行粗略的劃分,形成相對獨立任務運行空間,這樣便可較準確地計算出Sdc值。
1.2.3 有效操作的微觀時空占空比
在數字系統中,進入有效操作狀態的一個完整電路中,也不是每一時刻、每一電路單元都處于有效操作狀態,同樣可以估算出微觀有效操作的時域占空比和區域占空比。
(1)有效操作的微觀區域占空比μSdc
μSdc定義為:有效操作電路單元中,平均有效操作區域Aact與全部電路單元區域Atot之比。例如,熱流量計在執行數據存儲任務,對EEPROM進行存儲操作時,EEPROM的三個操作區域,即輸入緩沖電路、轉換控制電路和EEPROM陣列輪流進入有效操作狀態。設這三個區域有效操作功耗相等,那么,熱流量計在數據存儲時,存儲器EEPROM的微觀有效操作區域占空比為
(2)有效操作的微觀時域占空比μTdc
系統中,所有處于有效操作的電路,真正的有效操作只表現為"0"、"1"狀態的變化操作。因此,電路有效操作的微觀時域占空比μTdc定義為:電路的動態時間ATact與全部時間ATtot之比。例如,在熱流量計的數據采集任務中,頻率測量的邏輯控制電路要根據溫頻傳感器輸出的信號脈沖,實現頻率測量控制。這些操作控制都出現在脈沖的變化沿。設溫頻傳感器輸出的信號脈沖頻率為20 kHz,測控邏輯狀態變化時間小于100 ns,可以估算出,在數據采集任務中,頻率測量控制邏輯電路有效操作的微觀時域占空比為
1.3 高諧小量時空占空比與零功耗設計
1.3.1 實際系統中高諧小量的時空占空比
在嵌入式應用系統中,CPU高速處理能力與實際任務操作狀態以及系統中的微觀靜、動態的巨大差異,導致大量無謂等待狀態,形成有效操作的時、空占空比現象。上述4類占空比現象,在許多嵌入式應用系統中都會存在,而且這4類占空比形成乘積效應。按照上述估算,熱流量計總體有效操作的時空占空比OPdc為
從這里揭示了一個驚人的現狀,即在一個嵌入式應用系統中,有效操作只是全部運行操作的高諧小量。這一特點是嵌入式系統零功耗設計的基礎。零功耗系統按照有效操作時空占空比實行精細的功耗管理,非有效操作期間沒有功耗,從而使系統功耗與原來相比達到趨于零的效果。早期提出零功耗概念,并實現零功耗設計的器件有AMD公司的Flash存儲器Am29SL800B。早先Am28F800B的功耗量級為100時,改進工藝并降低電壓后的Am29SL800B為20,而實現零功耗管理的Am29SL800B的功耗則小于0.1。可見零功耗系統設計在降低系統功耗中的潛力。
1.3.2 零功耗系統設計基本要求
在不少實際的嵌入式應用系統中,雖然有效操作時空占空比不會是熱流量計那樣顯著的高諧小量,但一般都會有0.1 %的量級。如果能按照系統有效操作時空占空比實施精細的功耗管理,使無效操作期間沒有功耗,就可實現系統的零功耗。
零功耗是一個工程概念。零功耗系統是指該系統中沒有任何功耗浪費。因此,零功耗系統設計的基本要求如下:
(1)系統中所有的電路單元都具有功耗管理功能,即該電路單元在非有效操作期間都能被關斷(沒有功耗)。
(2)系統具有按有效操作時空占空比實施精細功耗管理的能力,能做到"多干多吃、少干少吃、不干不吃、誰干誰吃"的系統功耗分配。
(3)對于系統無法企及的微觀有效操作時空占空比的功耗管理,要求由電路靜、動特性來滿足功耗分配,即電路動態過程有功耗,電路靜態時沒有功耗。
2 零功耗系統設計的技術基礎
零功耗系統設計的核心技術,是按系統中有效操作時空占空比來實現按需分配的功耗管理。不僅實現宏觀有效操作時空占空比的功耗管理,還要實現微觀有效操作時空占空比的功耗管理。因此,實現零功耗管理必須有相應的技術基礎,這就是CMOS工藝的電路基礎、嵌入式系統實時的智能化控制以及具有功耗管理功能的外圍器件。這些技術基礎可以滿足零功耗系統設計的三個基本要求。
2.1 CMOS工藝的電路基礎
數字電路從TTL工藝轉向CMOS工藝,對電路功耗特性產生最大影響的是靜動態(靜態是"0"、"1"的恒定狀態,動態是"0"、"1"的跳變狀態)功耗特性的根本差異。正是這一差異誕生了電路系統功耗管理的概念與技術。圖3是TTL電路和CMOS電路靜動態功耗特性。圖3(a)為TTL功耗特性,圖3(b)為CMOS電路功耗特性。TTL電路為電流注入型電路,靜動態電流相近;而CMOS電路為壓控型電路,只在動態下才消耗電流,靜態電流為泄漏電流,理想情況下靜態電流為零。根據數字電路的有效操作態只表現為電路的動態情況,那么,只有CMOS電路才能提供按有效操作時空占空比實施功耗管理,而且指出了CMOS電路功耗管理的基本原則就是系統的最大靜態化設計。對于功耗管理無法企及的微觀時空占空比,CMOS電路靜、動態特性能自動保證非有效操作時的極微功耗(電路泄漏形成的功耗)狀態。
2.2 嵌入式系統的實時功耗管理能力
嵌入式系統實時功耗管理能力,表現在能保證按照系統有效操作時空占空比來實現系統時空的最大靜態化運行。其中核心的技術是系統中時鐘與信號流的控制與調度。在系統無效操作的時間和區域上,終止時鐘運行或進入,禁止開關、脈沖信號進入。
2.3 外圍器件功耗管理功能的保證
零功耗系統中所有的器件,包括處理器及外圍器件,都必須具備功耗管理功能。目前,CMOS的各類微處理器都具備有十分完善的低功耗模式。CMOS外圍器件中,有一部分具有自動的零功耗管理,不必微處理器的介入;許多CMOS外圍器件都具有外部引腳控制或編程控制的功耗管理功能。
2.4 電源管理的輔助技術
由于CMOS電路的靜動態功耗特性,CMOS電路的功耗管理遵循供電狀態下的最大靜態化原則。無論系統中的主器件還是外圍器件的功耗管理都與指令控制相匹配,不必顧慮功耗轉換的過渡過程。但當系統中不可避免地出現一些非CMOS功耗特性電路(如傳感器供電電路)或一些模擬電路時,這些電路的功耗管理則須依靠電源供電管理方式。即這些電路退出有效操作時,關閉電源;待進入有效操作前開啟供電線路。由于電路的時間常數,這些電路電源達到額定工作值或者進而啟動時鐘工作時,會有一個過渡期,不能即開即用,會給應用管理程序設計帶來問題。
當前,嵌入式應用系統已走向全面CMOS化,嵌入式處理器中提供了由指令管理的多種低功耗模式,外圍器件設置有許多低功耗控制功能,加上具有可局部關斷功能的分布式供電體系以及電源總線開關等,為零功耗系統設計提供了十分現實的基礎。
3 零功耗系統設計基本內容
按照最大靜態化設計的基本原則,零功耗系統設計必須有最小量有效操作時空占空比的任務規劃,設計出相應的硬件支持電路,并實現按有效操作時空占空比的功耗管理軟件支持。因此,零功耗系統設計貫穿了應用系統設計的全過程。
3.1 最小量有效操作時空占空比的任務規劃
理論上講,每個嵌入式系統都具有高諧小量的有效操作時空占空比;但若不認真將有效操作與無謂等待精細區分,而將有效操作與無效操作混在一起,就不可能實現系統的最大靜態化管理。
(1)斷續運行系統最小時空占空比的任務安排
對于可斷續運行的系統,無論任務集中還是分散,都要努力尋求有效操作最小量的時空占空比。例如,熱流量計中確定了采集、處理、存儲、送顯示4個任務時間TOP后,任務的循環周期Ttot將決定宏觀時域占空比的大小,即Tdc=TOP/Ttot。Ttot受溫度變化率及測量精度的限制。在確知熱水溫度變化率和溫度采集精度要求下,使Ttot最大來獲得最小的有效操作時域占空比。
(2)連續運行系統的非連續化
將連續運行系統中的某些連續運行任務分離出來,實行非連續化,這樣可以把連續系統的主體任務實現有效操作的占空比。例如,熱流量計實際上是一個連續運行系統,因為它要不停頓地采集流量傳感器的流量脈沖QP。如果把流量脈沖采用極微功耗,獨立的計數器不停地計數,熱流量計只在數據采集任務中順便讀取計數器的計數值即可實現熱流量計主體的最小量時域占空比。
(3)系統中各項操作任務相關區域的最小化與獨立化
為保證系統能獲取最小有效操作的宏觀區域占空比,并據此實現區域的功耗管理,必須將每個操作任務限定在一個獨立的最小區域內,使不同操作任務的電路相對獨立。例如,時鐘、信號通道可單獨關閉;采用電源管理的區域設置單獨的電源總線開關或采用I/O驅動供電等。
3.2 系統硬件設計中的功耗管理電路設計
(1)滿足宏觀時空占空比功耗管理的獨立電路設計。當按照最大限度宏觀時空占空比來管理電路時,必須將這些電路設計成能獨立實現靜態化或實時關閉的電路單元和相應的管控電路。
(2)選擇滿足零功耗管理的外圍器件。選擇能自動實現零功耗管理的器件或可功耗管理的外圍器件。
(3)最小值守電路設計。設計微功耗、高可靠性的開機值守、喚醒值守或運行值守電路。
(4)用電管理電路設計。在許多情況下,對于分時多區操作的獨立電路單元,采用分布式帶關斷功能的供電電路來實現功耗管理是十分有效的。例如,熱流量計在采集完溫度傳感器的輸出后立即將傳感器電源關閉。
3.3 功耗管理的應用軟件設計
零功耗系統完全是在CPU的控制下完成功耗管理的,因此,它是依據總體設計要求,在系統硬件支持下,通過功耗管理的應用軟件實現的。應用軟件要遵循系統有效操作的時空占空比來及時關閉或喚醒相應的電路單元。
(1)MCU、處理器、SOC本身的零功耗管理。它包括內核的零功耗管理和核外功能單元的零功耗管理。
(2) 外圍器件的零功耗管理。它包括外圍器件的功耗管理或電源供電管理。
4 零功耗系統與最小功耗系統設計
零功耗系統是基于功耗管理的低功耗系統,但只有零功耗系統設計并不能實現系統的最小功耗。因為在實際系統中,有效操作時系統的功耗過大以及非有效操作時系統的功耗遠不為零,都會影響實際系統的最小功耗水平;而降低系統有效操作和非有效操作時空中的功耗水平,屬于傳統的低功耗設計技術。它是根據電路功耗特性參數來實現滿足低功耗設計要求,在很多情況下并沒有功耗管理的參與。例如,根據CMOS電路動態功耗特性,其動態功耗與供電電壓、變換頻率、負載電容等參數有關。降低系統供電電壓,降低時鐘頻率,減少硬件電路設計制作時的分布電容等,這樣可以減少有效操作電路中的功耗水平;減少CMOS電路的靜態泄漏電流的措施,則可降低非有效操作時空電路上的功耗。只有充分實施了傳統的低功耗設計和零功耗設計,才能獲得系統的最小功耗。
結束語
(1)零功耗系統是一種工程概念。在這種系統中沒有功耗浪費,所必需的系統功耗為傳統電路功耗的高諧小量。
(2)零功耗系統設計是基于CMOS數字電路靜、動態功耗特性的最大靜態化的功耗管理設計。
(3)在嵌入式應用系統中,按系統有效操作的時空占空比,實現按需供給的功耗管理能最有效地、大幅度地降低系統功耗。
(4)對系統實現低功耗設計與零功耗設計可實現系統的最小功耗--微功耗。
(5)系統的微功耗以及便攜化,使系統供電變得十分靈活與多樣化,從而使傳統的系統電源設計轉向系統供電設計。
評論
查看更多