《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 設(shè)計應(yīng)用 > 一種支持外部控制的動態(tài)電源管理方法
一種支持外部控制的動態(tài)電源管理方法
2017年電子技術(shù)應(yīng)用第3期
宋云雷1,劉興輝1,閻 斌2,金傳恩2
1.遼寧大學 物理學院,遼寧 沈陽110036;2.合肥科盛微電子科技有限公司,安徽 合肥230088
摘要: 為降低微控制器(MCU)應(yīng)用系統(tǒng)的功耗,節(jié)省硬件資源,提出了一種新型的動態(tài)電源管理方法。該動態(tài)電源管理方法在支持內(nèi)部軟件控制MCU系統(tǒng)內(nèi)部電源域的基礎(chǔ)上,擴展支持了外部設(shè)備對MCU系統(tǒng)內(nèi)部電源域的控制;外部設(shè)備能夠根據(jù)實際的應(yīng)用場景實時通過通信電路對MCU系統(tǒng)內(nèi)部電源域進行開啟或關(guān)斷控制;通信電路使用的通信端口與外部喚醒端口復(fù)用一個IO端口。仿真結(jié)果表明,對比傳統(tǒng)門控時鐘的低功耗方法,采用該動態(tài)電源管理方法在降低驅(qū)動電機的通用MCU系統(tǒng)的靜態(tài)功耗方面有顯著作用:在脈寬調(diào)制模塊(PWM)穩(wěn)定工作和待機狀態(tài)時,系統(tǒng)總靜態(tài)功耗分別降低了27.43%和98.18%。有效降低了MCU的系統(tǒng)功耗,節(jié)省了硬件資源,提高了對MCU內(nèi)部電源域控制的靈活性和高效性。
中圖分類號: TN43;TN47
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.03.034
中文引用格式: 宋云雷,劉興輝,閻斌,等. 一種支持外部控制的動態(tài)電源管理方法[J].電子技術(shù)應(yīng)用,2017,43(3):137-140,144.
英文引用格式: Song Yunlei,Liu Xinghui,Yan Bin,et al. A novel method of dynamic power management for supporting external device control[J].Application of Electronic Technique,2017,43(3):137-140,144.
A novel method of dynamic power management for supporting external device control
Song Yunlei1,Liu Xinghui1,Yan Bin2,Jin Chuan′en2
1.College of Physics,Liaoning University,Shenyang 110036,China;2.Silicon Ark Technology Co.Ltd,Hefei 230088,China
Abstract: In order to reduce the power consumption of a MCU system, and to save the hardware resources, a novel method of dynamic power management is proposed. The dynamic power management method supports not only the software but also the external device to manage the power domain of the MCU system; according to the actual application scenario, the external device can power on or off the power domain of the MCU system through the communication circuit in real time; the communication IO port of the communication circuit is reused with the external wake-up IO port. Experimental results show that, compared with the traditional method of clock gating, the method of dynamic power management has a significant effect on reducing the static power consumption of a general MCU driving motor: during the pulse width modulation(PWM) module in stable operation and standby state, the total static power consumption of the MCU system is reduced by 27.43% and 98.18% respectively. The dynamic power management effectively reduces the power consumption of MCU, saves the hardware resources, and improves the flexibility and efficiency of the control of power domain in MCU.
Key words : internal power domain control;IO port reused;dynamic power management;low power MCU

0 引言

    超大規(guī)模數(shù)字集成電路(Very Large Scale Integrated Circuit,VLSI)設(shè)計中,功耗已成為制約設(shè)計發(fā)展的一個重要因素,特別在集成電路工藝發(fā)展到深亞微米級甚至納米級后,芯片的靜態(tài)功耗占總功耗的比重越來越大[1-3]?,F(xiàn)在電池供電的產(chǎn)品越來越普遍,比如電動汽車、無人機、移動POS機等。由于電池技術(shù)的發(fā)展速度比電子產(chǎn)品慢,如有效降低功耗,能節(jié)省能量,提高系統(tǒng)待機時間,還能夠延長電池的使用壽命[4-6]。

    近年來,研究人員在降低功耗的技術(shù)方面取得了很大進展。門控時鐘技術(shù)就是目前最常用的低功耗設(shè)計技術(shù)之一。門控時鐘技術(shù)在降低VLSI的動態(tài)功耗方面有顯著作用,但對降低靜態(tài)功耗基本沒有作用[7,8]。動態(tài)電壓頻率調(diào)節(jié)技術(shù)根據(jù)系統(tǒng)不同的進程任務(wù),動態(tài)調(diào)節(jié)工作電壓和頻率,一定程度上降低了系統(tǒng)的動態(tài)功耗和靜態(tài)功耗,但對于不需要工作的模塊,其靜態(tài)功耗還有降低的空間[9,10]。傳統(tǒng)的電源門控技術(shù)能夠有效降低系統(tǒng)的靜態(tài)功耗,通過內(nèi)部操作系統(tǒng)或軟件執(zhí)行預(yù)測關(guān)閉或預(yù)測喚醒策略對可控電源域進行主動控制,但不能根據(jù)外部應(yīng)用場景,由外部設(shè)備實時對可控電源域進行控制[11,12]。文獻[13]提出一種基于串口控制器的外部喚醒方法,但該喚醒方法是喚醒系統(tǒng)的工作時鐘,而不能喚醒指定電源域。

    為降低微控制器(MCU)系統(tǒng)功耗,節(jié)省硬件資源,本文提出了一種支持外部控制的動態(tài)電源管理方法。該方法不僅支持內(nèi)部軟件通過執(zhí)行預(yù)測關(guān)閉和預(yù)測喚醒等策略對MCU系統(tǒng)內(nèi)部可控電源域進行控制,而且還擴展支持外部設(shè)備對MCU系統(tǒng)內(nèi)部可控電源域進行實時控制,及時降低MCU系統(tǒng)功耗。為實現(xiàn)外部設(shè)備對MCU系統(tǒng)內(nèi)部可控電源域的實時控制,設(shè)計集成了通信電路。該通信電路的通信端口與外部喚醒端口共用一個IO端口,節(jié)省了寶貴的硬件資源。

1 多電源域架構(gòu)

    圖1為采用動態(tài)電源管理方法的MCU系統(tǒng)的多電源域示意圖。根據(jù)模塊功能,將MCU系統(tǒng)劃分為若干個電源域。PMU模塊為動態(tài)電源管理模塊,是本文實現(xiàn)動態(tài)電源管理方法的功能模塊,處于常開電源域中。PMU模塊的時鐘來自時鐘產(chǎn)生單元,因此時鐘產(chǎn)生單元需要放在常開電源域中。虛線框內(nèi)為可控電源域,受PMU模塊控制。圖1中,其他外設(shè)放入一個虛線框內(nèi),不代表其他所有外設(shè)在同一個電源域,這要根據(jù)具體功能需求具體設(shè)計。

dy3-t1.gif

2 動態(tài)電源管理方法實現(xiàn)

    根據(jù)CMOS集成電路理論,CMOS電路的系統(tǒng)功耗模型:

    dy3-gs1.gif

式中,P是MCU系統(tǒng)的總功耗;Pdynamic是MCU系統(tǒng)的動態(tài)功耗;Pstatic是MCU系統(tǒng)的靜態(tài)功耗;Ceff是等效負載電容值;Vdd是工作電壓;fclock是系統(tǒng)工作頻率; Istatic是靜態(tài)電流的總和。

    由式(1)可知,通過減小或關(guān)閉工作電壓可以降低MCU系統(tǒng)的動態(tài)功耗和靜態(tài)功耗。PMU模塊就是根據(jù)MCU系統(tǒng)的實際工作情況對相應(yīng)模塊的電源域進行靈活開啟或關(guān)閉,以降低功耗。圖2為PMU模塊的功能結(jié)構(gòu)圖。PMU模塊主要包括軟件控制電路、通信控制電路和控制執(zhí)行電路。PMU模塊支持軟件配置產(chǎn)生控制指令,同時支持外部設(shè)備產(chǎn)生控制指令;控制執(zhí)行電路根據(jù)接收到的控制指令對指定電源域進行上電或掉電操作。

dy3-t2.gif

2.1 軟件配置產(chǎn)生控制指令

    外部端口功能配置為外部觸發(fā)源,指令源選擇單元選擇軟件產(chǎn)生的控制指令。此時,PMU模塊為軟件管理可控電源域的功能,軟件控制電路工作。軟件控制電路的功能主要包括軟件配置產(chǎn)生控制指令、預(yù)測計時、控制指令生效的觸發(fā)源選擇等。

    通過寫控制指令產(chǎn)生寄存器,產(chǎn)生控制指令;在合適的觸發(fā)源觸發(fā)時,控制指令被送入控制執(zhí)行電路。其中,觸發(fā)源包括內(nèi)部立即觸發(fā)源、計時單元觸發(fā)源和外部觸發(fā)源。

    以計時單元作為觸發(fā)源為例。首先配置控制指令產(chǎn)生寄存器,產(chǎn)生控制指令;接著,選擇計時單元作為觸發(fā)源;而后,配置計時單元的計時長度。當計時單元計滿時,產(chǎn)生觸發(fā)源,該觸發(fā)源使得上述產(chǎn)生的控制指令生效,同時控制指令經(jīng)過指令源選擇單元被送入控制執(zhí)行電路。

    此外,內(nèi)部立即觸發(fā)源是由寫立即觸發(fā)寄存器產(chǎn)生觸發(fā)信號;外部觸發(fā)源是由外部設(shè)備產(chǎn)生的觸發(fā)信號。對于三個觸發(fā)源,可以選擇其中一個或幾個作為觸發(fā)源,具體根據(jù)應(yīng)用需求進行配置。

2.2 外部設(shè)備產(chǎn)生控制指令

    外部端口功能配置為通信功能,指令源選擇單元選擇通信電路產(chǎn)生的控制指令。此時,PMU模塊為外部設(shè)備管理可控電源域的功能,通信控制電路工作。通信控制電路的主要功能是接收外部設(shè)備產(chǎn)生的控制指令,并對接收到的指令進行解析。

    該通信控制電路中的指令接收單元采用異步串行通信的方式,這樣只需要一個IO端口就能夠?qū)崿F(xiàn)外部設(shè)備對MCU系統(tǒng)中的可控電源域進行動態(tài)管理,節(jié)省了硬件IO資源。

    指令接收單元通過采用異步串行接收的方式實現(xiàn),接收外部設(shè)備產(chǎn)生的控制指令,并將接收到的控制指令送入指令解析單元。指令解析單元對接收的控制指令進行解析,產(chǎn)生控制執(zhí)行電路能夠識別的有效控制指令。

    當應(yīng)用場景不需要外部設(shè)備進行控制時,關(guān)閉通信控制電路的工作時鐘,以降低該部分電路的功耗。為保證外部設(shè)備對MCU系統(tǒng)內(nèi)部可控電源域控制的安全性,在指令解析階段屏蔽掉不允許受外部設(shè)備控制的可控電源域。

    假定MCU系統(tǒng)中可控電源域個數(shù)為n,外部設(shè)備能夠控制的可控電源域個數(shù)為m(m≤n),則外部設(shè)備與PMU模塊中的通信電路之間通信的幀格式如圖3所示。

dy3-t3.gif

2.3 控制執(zhí)行電路的實現(xiàn)

    控制執(zhí)行電路的主要功能是接收經(jīng)指令源選擇后的控制指令,并根據(jù)該控制指令對相應(yīng)的可控電源域進行動態(tài)管理。

    對電源域的電源網(wǎng)絡(luò)進行動態(tài)管理需要嚴格的時序控制順序,一般采用硬件有限狀態(tài)機(FSM)實現(xiàn)[14]。圖4給出可控電源域掉電和上電的時序圖,該圖中信號的時序由硬件FSM實現(xiàn)。為確??煽仉娫从虻綦姾蜕想姷陌踩裕黾恿耸鼓苄盘杄na_pg。只有該信號高有效時,才能夠?qū)煽仉娫从蜻M行管理。

dy3-t4.gif

    一幀控制指令數(shù)據(jù)中,1 bit對應(yīng)一個可控電源域,“1”表示喚醒,“0”表示關(guān)閉。當控制執(zhí)行電路接收到的控制指令中的某個bit為“0”,且對應(yīng)電源域為上電狀態(tài)時,F(xiàn)SM產(chǎn)生sleep信號,隨后進入掉電時序過程。掉電過程中,先對電源域之間的信號隔離;待確保隔離后,對該電源域的工作時鐘進行門控;隨后,保存必要寄存器的狀態(tài);最后關(guān)閉該電源域的供電??煽仉娫从虻墓╇婈P(guān)閉后,功耗隨之降低。控制指令中的某個bit為“1”,且對應(yīng)電源域?qū)Φ綦姞顟B(tài)時,F(xiàn)SM產(chǎn)生wakeup信號,隨后進入上電時序過程??煽仉娫从蛏想娺^程是掉電過程的逆過程。

    該控制執(zhí)行電路以獨立FSM的方式對各個可控電源域進行管理,即每個FSM專門管理一個指定的可控電源域。

3 仿真結(jié)果及分析

    本文用Synopsys公司的Prime Time PX工具對該動態(tài)管理方法對降低功耗的效果進行驗證,并與傳統(tǒng)的門控時鐘方法進行比較。采用驅(qū)動電機的通用MCU作為降低功耗的對象,該通用MCU以布局布線后的網(wǎng)表形式進行功耗仿真。仿真時,采用0.13 μm的TSMC工藝庫,工作電壓為1.5 V,MCU的工作時鐘頻率為10 MHz。

    仿真中,PMU模塊執(zhí)行外部設(shè)備管理可控電源域的功能。在驅(qū)動電機的工作過程中,MCU的脈寬調(diào)制模塊(PWM)產(chǎn)生脈寬可調(diào)制的波形,用于驅(qū)動電機;電機狀態(tài)檢測及反饋單元通過串口(UART)將需要對電機進行調(diào)整的命令發(fā)送給MCU,MCU根據(jù)接收到的調(diào)整命令對PWM模塊產(chǎn)生的波形進行修正,以達到對電機的完美驅(qū)動。當電機需要切開工作狀態(tài)時,電機狀態(tài)監(jiān)測及反饋單元產(chǎn)生控制指令,發(fā)送給PMU。基于MCU驅(qū)動電機的方案原理圖如圖5所示。在該方案中,PMU能夠控制的電源域包括UART、PWM、CPU和存儲單元所在的電源域。為排除其他單元的影響,以下分析只考慮該MCU系統(tǒng)中PMU、PWM、UART、CPU和存儲單元。

dy3-t5.gif

    外部設(shè)備通過PMU模塊中的通信控制電路實現(xiàn)對內(nèi)部指定電源域的控制。該通信過程影響著MCU系統(tǒng)的響應(yīng)時間。在上述方案中,外部可控制的電源域共4個,因此,通信的指令幀格式設(shè)定為7 bit。不同工作頻率下,系統(tǒng)響應(yīng)時間見圖6。PMU模塊的功耗與其工作時鐘頻率密切相關(guān),圖6中同時給出PMU模塊通信時的功耗與工作頻率的關(guān)系。

dy3-t6.gif

    根據(jù)降低功耗的原則,通常選擇降低工作頻率,以降低PMU模塊的功耗。但降低PMU模塊的工作頻率,會導(dǎo)致系統(tǒng)響應(yīng)時間增加。在上述方案中,PMU模塊的工作時鐘配置為500 kHz,響應(yīng)時間為216 μs,工作時的功耗為4.06 μW。

    考慮以下三種工作情況:PWM調(diào)節(jié)過程、PWM穩(wěn)定工作和待機。在PWM調(diào)節(jié)過程階段,外部設(shè)備通過UART與MCU系統(tǒng)通信,對PWM進行調(diào)節(jié),PWM、UART、CPU和存儲單元均在工作;在PWM穩(wěn)定工作階段,電機工作在穩(wěn)定狀態(tài),UART、CPU和存儲單元所在電源域被關(guān)閉,只有PWM模塊在工作;在待機狀態(tài)時,UART、CPU、存儲單元和PWM所在電源域均被關(guān)閉。

    表1給出采用傳統(tǒng)門控時鐘方法和動態(tài)電源管理方法的MCU系統(tǒng)在不同工作情況下的總功耗。傳統(tǒng)的門控時鐘方法在PWM調(diào)節(jié)過程中,開啟PWM、UART、CPU和存儲單元的工作時鐘;在PWM穩(wěn)定工作時,保持PWM工作時鐘開啟,關(guān)閉其他模塊的工作時鐘;在待機狀態(tài)時,關(guān)閉所有模塊的工作時鐘。其中,PMU模塊的工作時鐘始終開啟。

dy3-b1.gif

    由表1可知,在PWM調(diào)節(jié)過程中,兩種低功耗方法對系統(tǒng)總功耗的降低沒有貢獻。在PWM穩(wěn)定工作時,采用傳統(tǒng)門控時鐘方法,系統(tǒng)總功耗降低了6.22%;而采用動態(tài)功耗管理方法,系統(tǒng)總功耗降低了6.50%。在待機時,采用傳統(tǒng)門控時鐘方法,系統(tǒng)總功耗降低了97.72%;而采用動態(tài)功耗管理方法,系統(tǒng)總功耗降低了99.98%。

    表2給出采用傳統(tǒng)門控時鐘方法和動態(tài)電源管理方法的MCU系統(tǒng)在不同工作情況下的總靜態(tài)功耗。

dy3-b2.gif

    由表2可知,在PWM調(diào)節(jié)過程中,兩種低功耗方法在一定程度上增大了系統(tǒng)總靜態(tài)功耗,增加比例分別為:2.78%和5.96%。這是由于兩種方法均增加了邏輯門。在PWM穩(wěn)定工作時,采用傳統(tǒng)門控時鐘方法,系統(tǒng)總靜態(tài)功耗降低了0.06%;而采用動態(tài)功耗管理方法,系統(tǒng)總靜態(tài)功耗降低了27.43%。在待機時,采用傳統(tǒng)門控時鐘方法,系統(tǒng)總靜態(tài)功耗降低了2.24%;而采用動態(tài)功耗管理方法,系統(tǒng)總靜態(tài)功耗降低了98.18%。

    由以上分析可知,與傳統(tǒng)的門控時鐘方法相比,本文提出的動態(tài)電源管理方法在降低系統(tǒng)靜態(tài)功耗方面有顯著作用。

4 結(jié)論

    提出了一種支持外部控制的動態(tài)電源管理方法。該動態(tài)電源管理方法支持內(nèi)部軟件控制MCU系統(tǒng)內(nèi)部電源域,同時支持外部設(shè)備對MCU系統(tǒng)內(nèi)部電源域的控制。外部設(shè)備能夠根據(jù)實際應(yīng)用場景,實時對MCU系統(tǒng)內(nèi)部指定電源域進行動態(tài)管理,在降低靜態(tài)功耗方面具有靈活性和高效性。與外部進行通信的端口與外部觸發(fā)源端口共用一個IO端口,沒有增加硬件IO資源消耗,節(jié)省了寶貴的硬件IO資源。隨著MCU系統(tǒng)功能復(fù)雜度的增加,對MCU系統(tǒng)進行多電源域劃分,并能夠根據(jù)外部應(yīng)用場景實時對相應(yīng)電源域進行上電或斷電操作,在降低系統(tǒng)功耗方面將會發(fā)揮重大作用。

參考文獻

[1] MORGENSHTEIN A.Short-circuit power reduction by using high-threshold transistors[J].Journal of Power Electronics & Applications,2012,2(4):69-78.

[2] SATO T,SHIBATA Y.Optimizing power heterogeneous functional units for dynamic and static power reduction[J].Electronics,2014,3(4):661-674.

[3] MESSARIS I,KARAGIORGOS N,CHAOURANI P,et al.Static gate power consumption model based on power contributors[C]//Design of Circuits and Integrated Circuits(DCIS),2014,Conference on IEEE,2014:1-5.

[4] Adany R,Aurbach D,Kraus S.Switching algorithms for extending battery life in electric vehicles[J].Journal of Power Sources,2013,231(1):50-59.

[5] KIM M W,YUN D G,LEE J M,et al.Battery life time extension method using selective data reception on smart phone[J].Icoin,2012:468-471.

[6] Yuksel T,Michalek J.Development of a simulation model to analyze the effect of thermal management on battery life[C]//SAE 2012 World Congress & Exhibition,2012:8-18.

[7] SHINDE J,SALANKAR S S.Clock gating-a power optimizing technique for VLSI circuits[C]//India Conference(INDICON),2011 Annual IEEE,2011:1-4.

[8] SAINT-LAURENT M,MOHD B J,BASSETT P.Clock gating system and method:US,US7902878[P].2011.

[9] 孫大鷹,徐申,徐玉珉,等.應(yīng)用于低功耗嵌入式的功耗動態(tài)管理策略設(shè)計[J].東南大學學報:自然科學版,2013,43(4):695-700.

[10] SALEHI M E,SAMADI M,NAJIBI M,et al.Dynamic voltage and frequency scheduling for embedded processors considering power/performance tradeoffs[J].IEEE Trans on VLSI System,2011,19(10):1931-1935.

[11] SRIVASTAVA M B,CHANDRAKASAN A P,BRODERSEN R W.Predictive system shutdown and other architectural techniques for energy efficient programmable computation[J].IEEE Trans on VLSI System,1996,4(1):42-55.

[12] BENINI L,HODGSON R,SIEGEL R.System-level power estimation and optimization[J].Proc Low Power Electronic and Design IEEE.Monterey,1998:173-178.

[13] 王斌,李寶魁.一種串口控制器及基于其的微控制器系統(tǒng)的喚醒方法:CN,CN104597790[P].2015.

[14] KEATING M,F(xiàn)LYNN D,AITKEN R,et al.Low Power Methodology Manual.USA:Synopsys,Inc.& ARM Limited,2007.



作者信息:

宋云雷1,劉興輝1,閻  斌2,金傳恩2

(1.遼寧大學 物理學院,遼寧 沈陽110036;2.合肥科盛微電子科技有限公司,安徽 合肥230088)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。