- 相關(guān)推薦
基于MSP430的極低功耗系統(tǒng)設(shè)計(jì)
1 影響系統(tǒng)功耗的主要因素
對(duì)于一個(gè)數(shù)字系統(tǒng)而言,其功耗大致滿足以下公式:P=CV2f,其中C為系統(tǒng)的負(fù)載電容,V為電源電壓,f為系統(tǒng)工作頻率。由此可見(jiàn),功耗與電源電壓的平方成正比,因此電源電壓對(duì)系統(tǒng)的功耗影響最大,其次是工作頻率,再就是負(fù)載電容。負(fù)載電容對(duì)設(shè)計(jì)人員而言,一般是不可控的,因此設(shè)計(jì)一個(gè)低功耗系統(tǒng),應(yīng)該考慮到不影響系統(tǒng)性能前提下,盡可能地降低電源的電壓和使用低頻率的時(shí)鐘。下面對(duì)TI公司新出MSP430來(lái)具體探討這個(gè)問(wèn)題。
2 基于MSP430極低功耗系統(tǒng)的設(shè)計(jì)
MSP430具有工業(yè)級(jí)16位RISC,其I/O和CPU可以運(yùn)行在不的時(shí)鐘下。CPU功耗可以通過(guò)開(kāi)關(guān)狀態(tài)寄存器的控制位來(lái)控制:正常運(yùn)行時(shí)電流160μA,備用時(shí)為0.1μA,功耗低, 為設(shè)計(jì)低功耗系統(tǒng)提供了有利的條件。
圖1是我們?cè)O(shè)計(jì)的以MSP430為CPU的“精密溫度測(cè)試儀”(下面簡(jiǎn)稱測(cè)試儀)。該產(chǎn)品使用電池供電,體積小巧,攜帶方便。
(1)電源電壓
在使用時(shí)應(yīng)該盡可能地選擇最低的電源電壓。對(duì)于MSP430而言,可用的最低電壓是很低的,最低可達(dá)1.8V。我們使用TI公司推薦使用的3V。通常的電源只提供5V電壓,因此,需要將5V電壓由一個(gè)3V的穩(wěn)壓管降壓后給CPU供電,也可以直接鋰電池供電。3V不是標(biāo)準(zhǔn)的TTL電平,因此,在使用時(shí)需要用接口電路使CPU的非TTL標(biāo)準(zhǔn)電平能與TTL標(biāo)準(zhǔn)電平的器件連接。這些接口電路應(yīng)該也是低功耗的,否則會(huì)造成一方面使用低電壓降低了功耗,另一個(gè)方面使用額外的接口電路又增加了系統(tǒng)的功耗;蛘咧苯邮褂弥С3V電壓的外圍芯片。
圖1
(2)時(shí)鐘頻率
從低功耗的角度看,需要較低的頻率,但是在實(shí)時(shí)應(yīng)用中為了快速響應(yīng)外部事件又需要有比較快的系統(tǒng)時(shí)鐘。這就需要系統(tǒng)具有兩個(gè)高低不同的頻率,在需要的時(shí)候可以在兩個(gè)頻率之間進(jìn)行切換。為了保證切換迅速/時(shí)間延遲少,又要求低Q值振蕩器,同時(shí)切換時(shí)往往造成時(shí)鐘頻率的不穩(wěn)定,這對(duì)于要求頻率穩(wěn)定的系統(tǒng),如實(shí)時(shí)時(shí)鐘RTC而言又是不適合的。設(shè)計(jì)一個(gè)完全達(dá)到以上要求的時(shí)鐘系統(tǒng)是很困難的,MSP430采用了一種折衷辦法,即在CPU外使用一個(gè)較低的頻率為32 768Hz的鐘表晶體振蕩器生成輔助時(shí)鐘ACLK,能夠保證一些低頻率應(yīng)用場(chǎng)合的要求,對(duì)于一些低頻工作的外設(shè)而言可以直接作為信號(hào)源或時(shí)鐘,而無(wú)需增加額外的分頻電路;同時(shí),在CPU內(nèi)部使用結(jié)合數(shù)字控制振蕩器DCO的FLL技術(shù),將ACLK倍頻升高,作為系統(tǒng)的主時(shí)鐘MCLK。它使得指令能夠在較低晶振下獲得高時(shí)鐘時(shí)的運(yùn)行速度,能夠滿足高速實(shí)時(shí)的要求。低、高頻之間的切換只需6μs。對(duì)于149型號(hào)的芯片而言,更具有第三個(gè)頻率SMCLK可供外設(shè)使用,它可外接二個(gè)晶振,當(dāng)設(shè)置DCOR=0時(shí)SMCLK使用DCOCLK,當(dāng)DCOR=1時(shí)SMCLK使用第二個(gè)外晶振X2。X2的頻率一般比X1要高,這樣便又可以滿足高速外設(shè)的要求。
(3)低功耗軟件控制
MSP430的工作模式通過(guò)模塊的智能化運(yùn)行管理和CPU的狀態(tài)組合以先進(jìn)的方式支持超低功耗的各種要求。CPU內(nèi)狀態(tài)寄存器SR中的SCG1、SCG2、OscOff與功耗有關(guān).可由軟件組合成6種工作模式.
①活動(dòng)模式——AM
正常的工作模式,這時(shí)CPU消耗的電能最大.
②低功耗模式0——LPM0
CPUOff置位,CPU停止活動(dòng),但外圍模塊繼續(xù)工作,ACLK和MCLK信號(hào)保持活動(dòng),MCLK的鎖頻壞控制正常工作.有關(guān)控制位設(shè)置為:SCG1=0,SCG0=0,SCG0=0,OscOff=0,CPUOff=1。
③低功耗模式1——LPM1
CPUOff置位,CPU停止活動(dòng),但外圍模塊繼續(xù)工作,MCLK的鎖頻環(huán)控制停止工作,ACLK與MCLK保持活動(dòng),有關(guān)控制位設(shè)置為:SCG1=0,SCG0=1,OscOff=0,CPUOff=1。
④低功耗模式2——LPM2
CPUOff置位,CPU停止活動(dòng),但外圍模塊繼續(xù)工作,MCLK的鎖頻環(huán)控制停止,ACLK活動(dòng),MCLK停止,有關(guān)控制位設(shè)置為:SCG1=1,SCG0=0,OscOff=0,CPUOff=1。
⑤低功耗模式3——LMP3
CPUOff置位,CPU停止活動(dòng),但外圍模塊繼續(xù)工作,MCLK的鎖頻環(huán)控制和MCLK停止工作,DCO的DC發(fā)生器關(guān)閉,但ACLK信號(hào)仍保持活動(dòng),有關(guān)控制位設(shè)置為:SCG1=1,SCG0=1,OscOff=0,CPUOff=1。
⑥低功耗模式4——LPM4
CPUOff置位,CPU停止活動(dòng),但外圍模塊繼續(xù)工作,MCLK的鎖頻環(huán)控制和MCLK停止工作,晶振停止,有關(guān)控制位設(shè)置為:SCG1=X,SCG0=X,OscOff=1,CPUOff=1。
不同工作模式對(duì)應(yīng)的典型電源消耗如圖2所示。
這些模式可以完成對(duì)晶振的關(guān)閉,FLL關(guān)閉,還能實(shí)現(xiàn)對(duì)外設(shè)功耗的控制,從而進(jìn)一步降低系統(tǒng)的功耗。
為了充分利用CPU的低功耗功能,可以讓CPU工作于突發(fā)狀態(tài)。在通常情況下,根據(jù)需要使用軟件將CPU設(shè)定到某一種低功耗工作模式下,在需要時(shí)使用中斷將CPU從休眠狀態(tài)中喚醒,完成工作之后又進(jìn)入休眠狀態(tài)。
MSP430的可編程中斷結(jié)構(gòu)可以組成靈活的片上和外部中斷體系,以適應(yīng)實(shí)時(shí)中斷驅(qū)動(dòng)系統(tǒng)的需要。中斷可由處理機(jī)的運(yùn)行狀態(tài)來(lái)啟動(dòng),如看門(mén)狗溢出、外部模塊發(fā)生的事件等。每個(gè)中斷源泉可以用中斷允許位單獨(dú)關(guān)閉,而狀態(tài)寄存器中的通用中斷允許位GIE可以禁止全部中斷。
當(dāng)中斷請(qǐng)求發(fā)生并且相應(yīng)的中斷允許位和通用中斷允許位(GIE)置位時(shí),中斷服務(wù)程序按下順序激活:
如果CPU處于活動(dòng)狀態(tài)則完成當(dāng)前執(zhí)行指令。如果處于省電狀態(tài),則終止低功耗模式→將指向下一條指令的PC值壓堆!鷮ⅲ樱覊喝攵褩!绻趫(zhí)行上條指令時(shí)已有多個(gè)中斷請(qǐng)求發(fā)生,則選擇最高優(yōu)先級(jí)者→在單一中斷源標(biāo)志中的中斷請(qǐng)求標(biāo)志位自動(dòng)復(fù)位,多中斷源標(biāo)志仍保持置位以等待軟件服務(wù)→通用中斷允許位GIE
【基于MSP430的極低功耗系統(tǒng)設(shè)計(jì)】相關(guān)文章:
SoC系統(tǒng)的低功耗設(shè)計(jì)03-18
水表集抄系統(tǒng)的低功耗設(shè)計(jì)03-27
基于MSP430單片機(jī)的地下微水檢測(cè)系統(tǒng)03-07
極低功耗無(wú)線收發(fā)集成芯片CC100003-19
基于AT91RM9200的手持設(shè)備的低功耗設(shè)計(jì)03-07
基于MSP430單片機(jī)的實(shí)時(shí)多任務(wù)操作系統(tǒng)03-18
基于DSP的智能座椅系統(tǒng)的設(shè)計(jì)03-07