王全振
(廣州海格通信集團(tuán)股份有限公司,廣東 廣州 510663)
隨著電子行業(yè)的進(jìn)步,手持設(shè)備發(fā)展越來越迅速,CPU頻率不斷提高,性能不斷增強(qiáng)。目前制約手持設(shè)備最大的瓶頸是供電問題,手持設(shè)備有體積要求,因此電池的體積也不能太大,體積小限制了電池的容量也不可能做大,即所謂的“電池鴻溝”[1]。在電池容量一定的前提下,手持設(shè)備的低功耗設(shè)計就顯得尤為重要。手持設(shè)備低功耗[2]設(shè)計首先在硬件方面要選擇具有低功耗特性的CPU,其次在軟件調(diào)節(jié)下才能實現(xiàn)最佳效果。在此背景下 DVFS[3]應(yīng)運(yùn)而生。DVFS[4]即動態(tài)電壓頻率調(diào)整[5],是根據(jù)芯片所運(yùn)行的應(yīng)用程序?qū)τ嬎隳芰Φ牟煌枰?,動態(tài)調(diào)節(jié)芯片的運(yùn)行頻率和電壓。
S3C6410[6]芯片是三星公司生產(chǎn)針對嵌入式低功耗系統(tǒng)的高性能CPU,廣泛應(yīng)用于工業(yè)及民用領(lǐng)域,該芯片高性能的ARM核及優(yōu)化的外圍模塊特別適合做手持設(shè)備。S3C6410[8]芯片支持DVFS,一般在非民用手機(jī)的手持設(shè)備上不會選用價格昂貴的集成電源管理芯片,本文選用的TPS62402[9]芯片是TI公司生產(chǎn)的一款具有雙路輸出的DC/DC的電源芯片,該芯片具有的EasyScaleTM接口,可以方便地實現(xiàn)電壓調(diào)節(jié)。
TPS62402含有兩路DC/DC轉(zhuǎn)換器,OUT1輸出電流為 400 mA,OUT2輸出電流為 600 mA,轉(zhuǎn)換效率最高可達(dá)95%,2.5 V~6 V的電壓輸入范圍非常適合手持設(shè)備采用電池來供電,OUT1(DEF_1為低時)輸出電壓范圍以 0.025 V為步進(jìn)從 0.8 V~1.575 V,OUT2固定為3.3 V輸出,其DEF_1管腳設(shè)定OUT1初始輸出電壓值,當(dāng)DEF_1為高電平時OUT1輸出1.8 V,當(dāng)DEF_1為低電平時輸出1.2 V。本文實際使用電路如圖1所示,其中Vin為電源輸入;EN1和EN2為OUT1和OUT2使能管腳,OUT2設(shè)置為系統(tǒng)上電即開始不間斷工作,OUT1連接至S3C6410的 PWRRGTON管腳,以便在低功耗模式時關(guān)閉OUT1電源輸出;DATA_SET為設(shè)置OUT1電壓值的通信控制管腳;SW1和FB1搭配2.2 μH 電感及 10 μF 電容組成 OUT1,DEF_1 連接至地設(shè)置上電 OUT1初始電壓為 1.2 V;SW2和 ADJ2搭配 2.2 μH電感及 10 μF電容組成 OUT2,固定輸出電壓3.3 V。
圖1 TPS62402電路設(shè)計
電路中使用的兩個電感應(yīng)該選擇屏蔽式的功率電感,并至少留出50%的電流余量,例如L3應(yīng)選擇最小可通過 900 mA的電感。布局時,C83、C84應(yīng)盡可能靠近TPS62402,電源的輸出端要增加線寬或采用覆銅方式。
TPS62402具有EasyScale接口,即一線式串行動態(tài)電壓調(diào)整接口,官方定義為:One-Pin Serial Interface for Dynamic Output Voltage Adjustment。
EasyScale接口以方波傳輸數(shù)據(jù),其1和0以高低電平占一個周期的時間來定義:當(dāng)高電平時間至少大于兩倍的低電平時間則為1;反之低電平時間至少大于兩倍的高電平時間則為0。每一次發(fā)送數(shù)據(jù)為16 bit,高8 bit為地址數(shù)據(jù),低8 bit為電壓數(shù)據(jù),數(shù)據(jù)格式如表1所示。
表1 接口數(shù)據(jù)格式
高 8 bit DA0~DA7固定為 0x4E;低 8 bit中的 RFA為請求答復(fù)設(shè)定,如果置1則TPS62402收到數(shù)據(jù)后會發(fā)出答復(fù)信號;當(dāng)DEF_1為低時,A1和A0設(shè)置為00;D4~D0為電壓值,對應(yīng)關(guān)系如表2所示。
表2 數(shù)據(jù)與電壓對應(yīng)關(guān)系
DVFS技術(shù)需要軟硬件共同配合才能完成,常規(guī)流程包括以下5步。
(1)采集與系統(tǒng)負(fù)載有關(guān)的信號,計算當(dāng)前的系統(tǒng)負(fù)載。
(2)根據(jù)系統(tǒng)的當(dāng)前負(fù)載,預(yù)測系統(tǒng)在下一時間段需要的性能。
(3)將預(yù)測的性能轉(zhuǎn)換成需要的頻率,從而調(diào)整芯片的時鐘設(shè)置。
(4)根據(jù)新的頻率計算相應(yīng)的電壓。
(5)通知電源管理模塊調(diào)整CPU的電壓。
在調(diào)整電壓和頻率時要特別注意順序,因為頻率越高需要的電壓也越高,所以當(dāng)頻率從高到低時要先調(diào)整頻率再降低電壓;頻率從低到高時先升高電壓再調(diào)整頻率。另外電壓及頻率調(diào)整的頻率不能過高,否則反而會增加系統(tǒng)能量消耗。S3C6410的核心頻率設(shè)置為9擋,電壓4擋,對應(yīng)關(guān)系如表3所示。
表3 頻率電壓對應(yīng)關(guān)系
本系統(tǒng)中使用S3C6410的GPK13管腳來發(fā)送數(shù)據(jù),Linux源碼中已經(jīng)包含DVFS,TPS62402驅(qū)動的相關(guān)函數(shù)及功能介紹如下。
setbit()函數(shù)中的 udelay()函數(shù)為微秒延時函數(shù),延時高低電平時間比為3,滿足至少大于兩倍關(guān)系。
實際電路首先測試TPS62402輸出電壓與設(shè)定值的偏差,使用萬用表測試PCB板上OUT1經(jīng)過電容以后的電壓,通過對表4的觀察可以發(fā)現(xiàn)TPS62402的輸出特別準(zhǔn)確。在實際使用中,對比使用DVFS前后的功率消耗,同一設(shè)備,同一塊電池,在同等條件下手持設(shè)備使用時間增加25%左右。
表4 電壓對比
[1]LAHIRI K, RAGHUNATHAN A, DEYS, et al.Batterydriven system design:a new frontier in low power design[C].Proceedings of 7th Asia and South Pacific and the 15th International Conference on VLSI Design, Bangalore, India,2002:261-267.
[2]馬天義.低功耗軟硬件劃分算法研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2009.
[3]YUN J,SINGH D K.Dynamic voltage and frequency scaling over delay-constrained mobile multimedia service using approximated relative complexity estimation[J].Doug Young Suh EURASIP Journal on Embedded Systems,2013.
[4]張立.基于DPM和DVFS的嵌入式系統(tǒng)低功耗優(yōu)化技術(shù)研究[D].北京:北京交通大學(xué),2012.
[5]黃建科,周云.基于自適應(yīng) DVFS的SoC低功耗技術(shù)研究[J].現(xiàn)代電子技術(shù),2009(7):120-122.
[6]鄧中亮,張紅星,延明,等.基于 S3C6410和無線傳感器網(wǎng)絡(luò)的手持終端設(shè)計[J].電子設(shè)計工程,2011(2):1-4.
[7]張堃.基于ARM9的嵌入式軍用手持終端系統(tǒng)的設(shè)計與開發(fā)[D].濟(jì)南:山東大學(xué),2011.
[8]Samsung.S3C6410 datasheet[EB/OL].www.samsung.com
[9]TI.TPS62402datasheet[EB/OL].http://www.ti.com.cn/cn/lit/ds/symlink/tps62402.pdf