王艷君,莊云勝
(1.通信網(wǎng)信息傳輸與分發(fā)技術(shù)重點(diǎn)實(shí)驗(yàn)室,河北石家莊050081;2.中國(guó)電子科技集團(tuán)公司第五十四研究所,河北石家莊050081)
低功耗設(shè)計(jì)是指在產(chǎn)品的設(shè)計(jì)中,通過(guò)采用各種技術(shù)手段、降低產(chǎn)品功耗的技術(shù)[1]。低功耗的概念是由電子手表等工業(yè)首次提出的[2],進(jìn)而在小型化、高集成度的消費(fèi)類電子產(chǎn)品中得到了廣泛應(yīng)用。
為了降低電路成本,提高電路穩(wěn)定性、可靠性,需要進(jìn)行低功耗設(shè)計(jì),以保證在集成度提高時(shí),單位面積可以維持同樣甚至更低的功耗;同時(shí),因?yàn)樵谶^(guò)去的30年中,電池的容量?jī)H僅增加了2~4倍[3],遠(yuǎn)沒(méi)有VLSI技術(shù)的發(fā)展迅速,所以在電池供電的手持設(shè)備中,電路的低功耗設(shè)計(jì)是延長(zhǎng)待機(jī)時(shí)間的最有效手段;此外,在軍事應(yīng)用中,在滿足使用要求的前提下采用更小的電池以減小整機(jī)的尺寸和重量,即意味著減小作戰(zhàn)負(fù)荷提高戰(zhàn)斗力,因此軍用手持設(shè)備的低功耗設(shè)計(jì)顯得尤為重要。
低功耗設(shè)計(jì)是通信終端設(shè)計(jì)的一個(gè)關(guān)鍵環(huán)節(jié),是涉及到整機(jī)設(shè)計(jì)各環(huán)節(jié)的自上而下的設(shè)計(jì)技術(shù)。在IC設(shè)計(jì)領(lǐng)域,常采用如圖1所示的比例關(guān)系來(lái)表明在不同層面上采用低功耗設(shè)計(jì)技術(shù)對(duì)整體設(shè)計(jì)結(jié)果的影響,圖1可以同樣應(yīng)用于設(shè)備的低功耗設(shè)計(jì)中(與括號(hào)中的級(jí)別相對(duì)應(yīng)),即越是在高層采用相關(guān)設(shè)計(jì),其設(shè)計(jì)結(jié)果對(duì)整機(jī)性能改善的程度越大。這是因?yàn)閷哟卧礁弑砻髟谠O(shè)計(jì)中進(jìn)行低功耗考慮得越早越全面,因此在較高層采用的低功耗設(shè)計(jì)策略效果越明顯。
圖1 設(shè)計(jì)的不同層次對(duì)功耗的影響
按照自上而下的設(shè)計(jì)原則,通信產(chǎn)品的低功耗設(shè)計(jì)可以分為整機(jī)級(jí)、模塊級(jí)、電路級(jí)和代碼級(jí)。
衛(wèi)星通信終端通常由MCU模塊、信號(hào)處理模塊、射頻微波模塊和電壓轉(zhuǎn)換電路等電路模塊組成[4]。整機(jī)的功耗可以表示為:
式中,α為活躍因子,表示該模塊在整機(jī)工作過(guò)程中的活躍程度;pn為第n個(gè)模塊全工作狀態(tài)下功耗;N為整機(jī)可劃分開(kāi)的電路單元,整機(jī)集成度越高,則N的值越小。
整機(jī)的低功耗設(shè)計(jì)就是采用合理的技術(shù)方案,在滿足整機(jī)各項(xiàng)功能、性能指標(biāo)的前提下,通過(guò)提高設(shè)備集成度(減小N)、降低各模塊的活躍狀態(tài)(減小α)和減小模塊的工作功耗(pn)來(lái)降低整機(jī)的功耗[5]。
為了達(dá)到上述設(shè)計(jì)目的,整機(jī)級(jí)主要采用了如下的方法:
①以嵌入系統(tǒng)/處理器為核心,基于整機(jī)工作狀態(tài)感知的低功耗設(shè)計(jì)技術(shù)。工作狀態(tài)感知指的是處理器對(duì)操作人員使用狀態(tài)、用戶終端工作狀態(tài)和系統(tǒng)狀態(tài)等進(jìn)行識(shí)別,根據(jù)用戶、終端和系統(tǒng)所處的狀態(tài),啟用不同的節(jié)電策略,通過(guò)動(dòng)態(tài)地改變式(1)中的活躍因子,達(dá)到降低總功耗的目的。例如:10 s工作人員不進(jìn)行操作,則進(jìn)入一級(jí)節(jié)電方式,如果10 min不操作則進(jìn)入深度休眠;工作時(shí)間不到不進(jìn)行接收嘗試,收不到下行導(dǎo)頻,則上行數(shù)據(jù)不發(fā)送等。
②優(yōu)化整機(jī)方案,提高集成度電路。實(shí)體模塊是整機(jī)的直接組成單元,按照傳統(tǒng)終端設(shè)備的設(shè)計(jì)方法,功能復(fù)雜的手持機(jī)可能被劃分成十幾個(gè)電路模塊,這顯然不能滿足小體積低功耗的設(shè)計(jì)要求,因此本級(jí)進(jìn)行低功耗設(shè)計(jì)的目的之一就是優(yōu)化整機(jī)方案,對(duì)功能相同或類似的實(shí)體電路進(jìn)行合并,提高整機(jī)集成度。
③合理選擇整機(jī)供電方案。選擇低電壓工作芯片是降低設(shè)備功耗的直接手段。因此,芯片(模塊)的選取均遵循小體積、低電壓和低功耗的選擇原則,并且每種芯片都具有待機(jī)模式(Standby)或睡眠功能(Sleep),都可以執(zhí)行獨(dú)立的斷電操作。
選擇開(kāi)關(guān)電源芯片替代傳統(tǒng)的線性DC/DC。減少直流電源電壓種類從而減少電源轉(zhuǎn)換芯片,并且仔細(xì)分析每種電壓的平均功耗,使電池組輸出接近于功耗大的電壓。
現(xiàn)在的通信設(shè)備通常以數(shù)字電路為主,而當(dāng)前大部分?jǐn)?shù)字電路均采用CMOS電路,該類電路主要消耗4類功率:內(nèi)部短路功耗、漏電功耗、開(kāi)關(guān)電容功耗和啟動(dòng)功耗。內(nèi)部功耗是當(dāng)門電路瞬變時(shí),Vdd與地之間短路連接消耗的內(nèi)部功率;漏電功耗是CMOS工藝普遍存在的寄生效應(yīng)引起的;開(kāi)關(guān)功耗則是來(lái)自負(fù)載電容,是由其充放電造成的;啟動(dòng)功耗是電子設(shè)備或電子元件在上電時(shí),由于電容等器件充電而產(chǎn)生的功耗,此類功耗只發(fā)生在開(kāi)機(jī)瞬間。
開(kāi)關(guān)功耗與短路功耗合稱為動(dòng)態(tài)功耗。對(duì)CMOS電路而言,動(dòng)態(tài)功耗基本上確定了總功耗。動(dòng)態(tài)功耗為:
式中,f為開(kāi)關(guān)頻率;C為對(duì)應(yīng)的充放電電容;Vdd為電源電壓。從式(2)中可以看出,功耗與器件工作電壓的平方成正比,并且和工作頻率成正比。因此降低電路的動(dòng)態(tài)功耗一方面是選擇低電壓供電的電路芯片;另一方面在于降低工作時(shí)鐘的頻率。對(duì)于嵌入式系統(tǒng)等智能處理器,由于在不同的工作狀態(tài)下處理的工作量不同,所以根據(jù)工作量的不同,采用自主調(diào)整供電電壓和工作頻率的方法可以節(jié)省大量的動(dòng)態(tài)功耗。
漏電功耗通常稱為靜態(tài)功耗。產(chǎn)生靜態(tài)功耗的因素眾多,包括處于沒(méi)有完全關(guān)斷或接通的狀態(tài)下的IO以及內(nèi)部晶體管的工作電流、內(nèi)部連線的電阻、輸入與三態(tài)驅(qū)動(dòng)的上拉或下拉電阻等。靜態(tài)功耗和器件的制作工藝有較大的關(guān)系。
在模塊和電路的設(shè)計(jì)中,可以采用以下方法來(lái)降低靜態(tài)功耗:①盡量選擇低功耗的CMOS芯片進(jìn)行電路設(shè)計(jì);②盡量少用匹配和衰減電路;③ 由于IO線上的上拉或下拉電阻要消耗一定的電流,因此盡量避免使用這些電阻,在無(wú)法避免時(shí),盡量使用大阻值的電阻;④在成熟電路上去掉調(diào)試時(shí)使用的電源和工作狀態(tài)指示燈;⑤ 盡量不用雙極晶體管,這些器件需維持一個(gè)恒定電流,從而增加了靜態(tài)電流;⑥懸空的時(shí)鐘輸入會(huì)大大增加靜態(tài)電流,因此將不用的時(shí)鐘引腳連接至低電平;⑦ 提高集成度,減少器件間IO的使用。
FPGA是通信產(chǎn)品中最常用的信號(hào)處理與邏輯功能實(shí)現(xiàn)器件。如何降低FPGA的功耗已經(jīng)成為一個(gè)重要的問(wèn)題,許多學(xué)者從多個(gè)層面深入研究了FPGA的低功耗設(shè)計(jì)技術(shù),在速度和面積方面,許多學(xué)者從系統(tǒng)級(jí)、開(kāi)關(guān)級(jí)和門級(jí)等方面進(jìn)行了深入研究。文獻(xiàn)[3]和文獻(xiàn)[5]提出了幾種復(fù)雜的FPGA功耗模型,研究了FPGA的結(jié)構(gòu)參數(shù)并估計(jì)了不同的結(jié)構(gòu)對(duì)功耗的影響。目前,基于SRAM工藝的FPGA應(yīng)用最為廣泛,并且由于本文只涉及到應(yīng)用中的低功耗設(shè)計(jì),因此以ALTERA公司基于SRAM工藝FPGA為例,討論其低功耗設(shè)計(jì)技術(shù)。
FPGA的功耗可以由表示為:
式中,pINT為無(wú)負(fù)載情況下的內(nèi)部功耗,該值可以從相應(yīng)器件的用戶手冊(cè)中查詢得到;pdcout為FPGA的直流功耗:
式中,pdcn為第n個(gè)管腳上的直流功耗;d為配置管腳總數(shù)目;pacout為器件的動(dòng)態(tài)功耗,它決定于器件管腳的工作電壓、容性負(fù)載和開(kāi)關(guān)頻率等。
式中,a為交流輸出的管腳數(shù)目;Cn為該管腳的容性負(fù)載值;fn為輸出開(kāi)關(guān)頻率;Vn為該輸出管腳上開(kāi)關(guān)輸出電壓值。對(duì)于5 V的IO電壓,Vn的值取3.8 V,工作電壓等于或低于3.3 V時(shí),Vn取值與VIO相同。
由式(5)可見(jiàn),在芯片確定的條件下,系統(tǒng)時(shí)鐘頻率對(duì)FPGA的總功耗有顯著影響,因?yàn)闀r(shí)鐘信號(hào)的開(kāi)關(guān)活動(dòng)最多,容性負(fù)載最大。不過(guò),時(shí)鐘速度又與處理能力直接有關(guān)。下面介紹幾種在保持FPGA處理能力不變的前提下,通過(guò)改變軟件的設(shè)計(jì)降低電路中時(shí)鐘處理速度,來(lái)達(dá)到降低芯片功耗的方法。
4.2.1 并行技術(shù)
并行處理是在高速信號(hào)處理中經(jīng)常采用的一種方法,其目的是將一條數(shù)據(jù)通路的工作分解到N條通路上完成,這樣每條數(shù)據(jù)通路的工作頻率都為原來(lái)的1/N,以此達(dá)到可以處理高速信號(hào)的目的。并行處理技術(shù)用在低功耗設(shè)計(jì)中其本質(zhì)就在保持電路處理能力的基礎(chǔ)上通過(guò)增加電路的面積來(lái)達(dá)到降低式(5)中的fn,進(jìn)而達(dá)到降低功耗的目的。
當(dāng)然,增加的電路面積和連線資源會(huì)導(dǎo)致電容Cn的增加,并且輸出端口增加的二選一電路也會(huì)導(dǎo)致部分功耗,但這部分功耗的增加與并行處理所節(jié)省的功耗相比還是很小的,幾乎可以忽略不計(jì)的[6]。
4.2.2 流水線技術(shù)
流水線技術(shù)也是一種通過(guò)增加面積來(lái)提高速度的通用設(shè)計(jì)技術(shù)[7]。在電路中插入寄存器(流水線),既可以理解為提高了系統(tǒng)運(yùn)行速度,也可以理解為通過(guò)采用較低的時(shí)鐘速率,達(dá)到了相同的處理能力。這是因?yàn)榱魉€結(jié)構(gòu)實(shí)際上是把一個(gè)功能模塊分成n個(gè)階段進(jìn)行流水線作業(yè),每個(gè)階段由一個(gè)子模塊來(lái)完成,在子模塊之間插入寄存器,以驅(qū)動(dòng)這些小模塊,在低速情況下,每個(gè)模塊完成了整個(gè)處理工作的1/n。盡管增加的寄存器,增加了部分功耗,但與速度的降低帶來(lái)的功耗的降低相比,這部分功耗幾乎可以不計(jì)。
4.2.3 異步技術(shù)
同步電路是由同步時(shí)鐘統(tǒng)一驅(qū)動(dòng)的電路,由于同步電路中時(shí)鐘速率往往高于數(shù)據(jù)速率,且僅作為驅(qū)動(dòng)的時(shí)鐘貫穿整個(gè)程序,因此造成了很大的功耗浪費(fèi)。而異步邏輯電路不采用全局時(shí)鐘,而是用握手信號(hào)協(xié)調(diào)模塊間的運(yùn)作,因此異步電路本質(zhì)上是數(shù)據(jù)驅(qū)動(dòng)的電路。因?yàn)闆](méi)有時(shí)鐘驅(qū)動(dòng),在沒(méi)有數(shù)據(jù),或者數(shù)據(jù)不變化,電路不動(dòng)作,因此電路翻轉(zhuǎn)次數(shù)的降低節(jié)省了大量功耗[8]。
在實(shí)際設(shè)計(jì)中,異步電路實(shí)現(xiàn)起來(lái)有一定的難度,特別是在高速電路中,但對(duì)于一些低速或?qū)r(shí)序要求不嚴(yán)格的設(shè)計(jì),異步電路還是有很大優(yōu)勢(shì)。
4.2.4 門控時(shí)鐘設(shè)計(jì)技術(shù)
門控時(shí)鐘設(shè)計(jì)技術(shù)是指在FPGA設(shè)計(jì)中,為每一個(gè)最小的功能模塊設(shè)置時(shí)鐘控制信號(hào),在程序運(yùn)行過(guò)程中,根據(jù)需要將不參與運(yùn)算的模塊輸入時(shí)鐘關(guān)閉,以節(jié)省功耗的設(shè)計(jì)技術(shù)。該技術(shù)也是一種用于同步電路中的低功耗設(shè)計(jì)技術(shù)[9,10]。
在衛(wèi)星移動(dòng)通信終端的研制中,通過(guò)采用上述技術(shù)和設(shè)計(jì)方法,使得正樣產(chǎn)品的待機(jī)和單收狀態(tài)功耗分別比初樣產(chǎn)品降低了60%和38%以上,特別是實(shí)現(xiàn)了低于200 mW的待機(jī)功耗。測(cè)試結(jié)果表明,采用低功耗設(shè)計(jì)技術(shù)對(duì)終端的推廣應(yīng)用起到了極大的促進(jìn)作用。
本文結(jié)合衛(wèi)星移動(dòng)通信終端的特點(diǎn),從整機(jī)、單元電路、主要元器件及FPGA代碼設(shè)計(jì)等幾個(gè)方面對(duì)低功耗設(shè)計(jì)進(jìn)行詳細(xì)的討論,并在實(shí)際工程項(xiàng)目應(yīng)用中取得較好的效果。
[1] 羅義軍,姚彥通.通信系統(tǒng)中的低功耗設(shè)計(jì)[J].電信科學(xué),2005(6):13-15.
[2] 田 朋,尹 光.CMOS電路中系統(tǒng)級(jí)低功耗設(shè)計(jì)研究[J].遼寧大學(xué)學(xué)報(bào)自然科學(xué)版,2008,35(2):125-128.
[3] 蘇志雄,郭慧晶,吳一亮,等.無(wú)線傳感器網(wǎng)絡(luò)SOC芯片的低功耗設(shè)計(jì)[J].微計(jì)算機(jī)信息,2007,23(2):133-135.
[4] 李 廣,班亞明,趙燕飛.新型便攜式衛(wèi)星通信終端設(shè)計(jì)[J].無(wú)線電通信技術(shù),2012,38(3):23-25.
[5] 張 杰.一種低功耗手持終端的基帶單元硬件平臺(tái)的設(shè)計(jì)[J].數(shù)字技術(shù)與應(yīng)用,2012(5):166-167.
[6] 朱卓婭.鋰離子電池管理芯片的研究及其低功耗設(shè)計(jì)[D].南京:東南大學(xué)博士學(xué)位論文,2005(1):11-32.
[7] 何艷霞,何永泰.FPGA低功耗的設(shè)計(jì)研究[J].楚雄師范學(xué)院學(xué)報(bào),2012,27(6):22-25.
[8] 郭宏泓.超低功率異步電路設(shè)計(jì)研究[D].鎮(zhèn)江:江蘇大學(xué),2009:2-3.
[9] 胡 靖.集成電路低功耗設(shè)計(jì)可逆邏輯綜合及性能分析[D].哈爾濱:哈爾濱工程大學(xué)博士論文,2008(9):18-26.
[10]謝 亮.嵌入式系統(tǒng)低功耗設(shè)計(jì)[D].上海:上海交通大學(xué)碩士論文,2011(9):30-38.