ARM Cortex-M0內(nèi)核使LPC1100的功耗數(shù)據(jù)與當(dāng)前的低功耗微控制器保持一致,但這種內(nèi)核的處理效率遠(yuǎn)遠(yuǎn)高于目前的8位和16位處理器,。這可以降低電池供電應(yīng)用的平均電流,延長電池壽命,,也可減少其他應(yīng)用的功率要求,。基于M0的LPC1100將對低功耗應(yīng)用的功能造成重要影響,。本文旨在討論Cortex-M0 LPC1100微控制器系列的低功耗特性,,以及有利于降低電源能耗的系統(tǒng)設(shè)計(jì)技術(shù)。這里從七個(gè)方面揭示NXP1100低功耗設(shè)計(jì)的秘密,。
一,、微控制器低功耗設(shè)計(jì)考慮因素
定義:為了理解微控制器的功耗,必須首先了解CMOS器件功耗的基本構(gòu)成,。功耗主要有兩類:動(dòng)態(tài)功耗和靜態(tài)功耗,。
動(dòng)態(tài)功耗:
圖1所示為一種簡單的CMOS反相器。當(dāng)反相器切換時(shí),,必須加載或釋放負(fù)載電容,,結(jié)果會(huì)消耗功率。負(fù)載電容是互聯(lián)電容及其驅(qū)動(dòng)的所有器件的柵電容的結(jié)合體,。在反相器不切換狀態(tài)下,,消耗功率的是器件的泄露電流。因此,,在既定工藝幾何結(jié)構(gòu)下,,功耗隨電壓的平方而變化,隨頻率呈線性變化,。功耗隨頻率呈線性變化這一特性導(dǎo)致了一個(gè)經(jīng)常被引用的微控制器指標(biāo),,即每MHz的電流消耗值。
圖1 一種簡單的CMOS反相器
對于低功耗器件,,該值表示為uA/MH z,,范圍在200uA/MHz至300uA/MHz以上,。 此類數(shù)值具有一定誤導(dǎo)性,因?yàn)槠錅y量沒有一個(gè)統(tǒng)一的標(biāo)準(zhǔn),。關(guān)鍵在于既定電流消耗下完成了多少工作,,另一個(gè)更全面的指標(biāo)是既定計(jì)算消耗了多少能量。由于這類指標(biāo)尚未被廣泛采用,,因此,,本文將使用uA/MHz指標(biāo)。
數(shù)字CMOS結(jié)構(gòu)每MHz消耗的電流并不是器件所耗電流的全部,,還有支持?jǐn)?shù)字域必不可少的模擬電路,。
這些可分為計(jì)時(shí)組件、電源控制組件,、存儲(chǔ)器和外設(shè),。計(jì)時(shí)組件、電源控制組件和存儲(chǔ)器組件都是微控制器平臺(tái)的組成部分,,是必要組件,,而模擬外設(shè)則是功能套件的一部分,因微控制器系列而異,。
表1 LPC1100中采用的計(jì)時(shí)組件
表1所示為LPC1100中采用的計(jì)時(shí)組件,。表中功耗由低到高排列。就如所有模擬設(shè)計(jì)一樣,,精確度和所耗電流之間始終存在折衷,。對于這些組件,LPC1100有一個(gè)靈活的控制方案,,可以在功耗與精確度之間取得平衡,,以適應(yīng)具體應(yīng)用。
表2 LPC1100中的電源控制組件
表2描述的是LPC1100中的電源控制組件,。與計(jì)時(shí)組件一樣,,這些組件也可根據(jù)應(yīng)用要求進(jìn)行定制,。
內(nèi)核的電流消耗不只關(guān)乎頻率,,還涉及到必要內(nèi)核支持模擬組件的失調(diào)電流,。這種電流有時(shí)也稱為零赫茲電流。由于LPC1100擁有靈活的時(shí)鐘結(jié)構(gòu),,這種電流并不固定。隨著頻率的降低,,關(guān)閉產(chǎn)生所需工作頻率不必要的時(shí)鐘組件可能會(huì)降低失調(diào)電流,。
舉例來說,在0至1MHz頻率范圍內(nèi),,LPC1100可工作于精確度稍低的低功耗振蕩器之上,,然后啟動(dòng)精確度更高的內(nèi)部R C振蕩器,,以提供1到12 MHz的頻率。
二,、漏電功耗
漏電功耗指CMOS接口在數(shù)字邏輯未切換時(shí)加載的電流,。該電流高度依賴于工藝節(jié)點(diǎn)以及節(jié)點(diǎn)庫的優(yōu)化方式。對于L P C1100,,節(jié)點(diǎn)庫針對低漏電而優(yōu)化,。為用戶提供不同的斷電選擇可以進(jìn)一步優(yōu)化漏電。除CMOS接口處的漏電功耗以外,,還可對這些模式中的多種模擬功能進(jìn)行控制,。
表3:LPC1100的電源模式
三、休眠模式
休眠模式下,,內(nèi)核時(shí)鐘關(guān)閉,,但用戶可以選擇繼續(xù)開啟外設(shè)。這種模式下的功耗不但包括漏電功耗,,還包括處于開啟狀態(tài)的外設(shè)帶來的動(dòng)態(tài)功耗,。該模式下仍可接收數(shù)據(jù),但內(nèi)核會(huì)保留其狀態(tài),,并在需要時(shí)繼續(xù)運(yùn)行,。
四、電模式
數(shù)字邏輯的所有時(shí)鐘均關(guān)閉,,可以控制模擬子系統(tǒng),,設(shè)置靈活的喚醒時(shí)間,具體視應(yīng)用要求而定,。當(dāng)所有模擬時(shí)鐘元件均被關(guān)閉時(shí),,則為最低功耗模式。喚醒時(shí)間取決于喚醒時(shí)鐘源的選擇,。選擇低功耗振蕩器時(shí),,時(shí)間最快,選擇晶體振蕩器和PLL時(shí),,時(shí)間最慢,。
五、深度斷電模式
該模式下,,除一個(gè)始終開啟的小型域之外,,微控制器內(nèi)部的電源均被關(guān)閉。這個(gè)始終開啟的域有一組寄存器,,可以存儲(chǔ)微控制器進(jìn)入深度斷電模式之前的狀態(tài)信息,。從該模式喚醒既可使用喚醒引腳,也可使用復(fù)位,。
六,、代碼效率
LPC1100采用了ARM出品的新型Cortex-M0內(nèi)核,,對動(dòng)態(tài)電流和漏電流均有較大影響。以簡單的指令集為主可降低動(dòng)態(tài)電流,。M0多使用Thum b指令,。此類指令位寬16,內(nèi)核將其解釋為32位指令,。內(nèi)核還采用了一種經(jīng)簡化的總線接口,,可減少門數(shù)和時(shí)鐘。另外,,內(nèi)核所用架構(gòu)有利于利用時(shí)鐘門控和經(jīng)簡化的庫元素,。在滿足上述所有要求的情況下,內(nèi)核的額定功耗不到70u A/MHz,。如前所述,,這個(gè)數(shù)值意義不大,因?yàn)樗荒苷f明用這部分電流可以完成多少工作,。然而,,M0內(nèi)核的額定性能為0.9 DMIPS/MHz,高于ARM7內(nèi)核,。使用這種內(nèi)核可進(jìn)一步改善漏電流,,因?yàn)殚T數(shù)與8位和16位內(nèi)核相等。
由于漏電流與門數(shù)成正比,,因此內(nèi)核邏輯中的任何節(jié)省均可產(chǎn)生重大影響,。
七、低功耗系統(tǒng)考慮因素
微控制器電源模式的使用方式取決于具體應(yīng)用,。如果始終有電源,,只是容量有限,則可以始終使微控制器處于計(jì)時(shí)狀態(tài),。LPC1100可以快速更改頻率,,具體視處理需求而定。LPC1100在30MHz時(shí)的額定電流消耗為6m A,。當(dāng)以1MHz運(yùn)行于低功耗內(nèi)部振蕩器時(shí),,該數(shù)值還可降至略高于200uA的水平。
然而,,需要降低功耗的許多應(yīng)用都必須依賴斷電和深度斷電模式,。這些應(yīng)用在大部分時(shí)間都處于靜止?fàn)顟B(tài),等待處理數(shù)據(jù),。處理器必須能快速喚醒,,處理所需數(shù)據(jù),然后返回靜止?fàn)顟B(tài),。許多此類應(yīng)用均采用電池供電,,這種情況下,低平均電流對于延長電池壽命至關(guān)重要,。為了降低平均電流,,必須盡快處理數(shù)據(jù),以減少工作周期,。由于M0是一種32位處理器,,其計(jì)算執(zhí)行速度比小寬度處理器更快。
下頁的圖2展示了處理性能是如何影響平均電流的,。數(shù)據(jù)假定,,峰值電流和斷電電流在各類處理器上都是相同的。M0內(nèi)核的功耗可以達(dá)到低位寬處理器平均電流的一半到四分之一,。借助M0,,LPC1100可實(shí)現(xiàn)200uA/MHz的峰值電流。
低平均電流對延長電池壽命至關(guān)重要,。這就意味著低靜態(tài)電流和小工作周期,。LPC1100在深度斷電模式下的電流不到300n A,峰值電流僅為200uA/MHz,。圖4所示即為工作周期對電池壽命的影響,。用于此類計(jì)算的電池是一枚230mAh的鋰離子鈕扣電池。該坐標(biāo)圖顯示了靜態(tài)電流對電池壽命的影響,,以及要使
電池壽命超過3年所需要的工作周期,。平均電流假定峰值電流為2mA,即LPC1100的工作頻率為10MHz,。圖中還包括啟動(dòng)時(shí)間的影響,,因?yàn)榻档挽o態(tài)電流會(huì)延長啟動(dòng)時(shí)間。如果使用LPC1100深度斷電模式,,在200毫秒的周期中,,當(dāng)處理時(shí)間為1毫秒時(shí),實(shí)現(xiàn)3年的電池壽命是可能的,。
結(jié)論
M0內(nèi)核使LPC1100的功耗數(shù)據(jù)與當(dāng)前的低功耗微控制器保持一致,,但這種內(nèi)核的處理效率遠(yuǎn)遠(yuǎn)高于目前的8位和16位處理器。這可以降低電池供電應(yīng)用的平均電流,,延長電池壽命,,也可減少其他應(yīng)用的功率要求?;贛0的LPC1100將對低功耗應(yīng)用的功能造成重要影響,。
圖3:平均電流
圖4:工作周期對電池壽命的影響