設(shè)計必備:設(shè)計低功耗MCU系統(tǒng)需考慮的因素
發(fā)布時間:2014-08-30 責(zé)任編輯:sherryyu
【導(dǎo)讀】電子產(chǎn)品的低功耗問題經(jīng)常讓產(chǎn)品設(shè)計者頭痛而又不得不面對。就拿單片機(MCU)為核心的系統(tǒng)來說,其功耗主要由單片機功耗和單片機外圍電路功耗組成。要想降低MCU系統(tǒng)能耗,必須要全方位的考慮,那么要怎么入手考慮設(shè)計因素呢?有哪些因素很重要呢?
電子產(chǎn)品的低功耗問題經(jīng)常讓產(chǎn)品設(shè)計者頭痛而又不得不面對。以單片機(MCU)為核心的系統(tǒng),其功耗主要由單片機功耗和單片機外圍電路功耗組成。要降低單片機系統(tǒng)的功耗,需要從硬件和軟件兩方面入手。
硬件設(shè)計考慮因素
要滿足單片機系統(tǒng)的低功耗要求,選用具有低功耗特性的單片機可以很容易實現(xiàn)(例如,Siliconlaboratories設(shè)計的高速C8051F系列單片機)。因為具有低功耗特性的單片機可以大大降低系統(tǒng)功耗,這可以從單片機的供電電壓、內(nèi)部結(jié)構(gòu)、系統(tǒng)時鐘和低功耗模式等幾方面來考察一款單片機的低功耗特性。一般來講,用戶在選擇技術(shù)供應(yīng)商和產(chǎn)品過程中,需要對下面的一些重要硬件參數(shù)進(jìn)行更加深入的考量:
選擇簡單的CPU內(nèi)核
選擇CPU內(nèi)核時切忌一味追求性能,以“夠用就好”為原則。8位機夠用,就沒有必要選用16位機、32位機;單片機的運行速度越快,往往其功耗也越大。一個CPU越復(fù)雜、集成度越高、功能越強,片內(nèi)晶體管越多,總漏電流也越大,即使進(jìn)入STOP狀態(tài),漏電流也會變得不可忽視;而簡單的CPU內(nèi)核不僅功耗低,成本也低。
選擇低電壓供電的單片機系統(tǒng)
單片機系統(tǒng)的供電電壓低,可以有效地降低其系統(tǒng)功耗。由于半導(dǎo)體制造工藝的發(fā)展,現(xiàn)在單片機的供電電壓從5V供電降低到3.3V、3V、2V乃至1.8V。供電電壓低,不緊可以降低單片機的功耗,還可以降低單片機外圍電路的功耗。
選擇帶有低功耗模式的單片機系統(tǒng)
低功耗模式指的是系統(tǒng)的Idle、Stop和Suspend等模式。處于這些模式下的功耗將遠(yuǎn)遠(yuǎn)小于正常運行下的功耗。Idle模式下,CPU停止工作,但內(nèi)部系統(tǒng)時鐘并不停止,單片機的外圍I/O模塊也不停止工作;系統(tǒng)功耗一般降低有限,相當(dāng)于工作模式功耗的50%左右。
如果在CPU進(jìn)入Stop模式時,將各個模擬外設(shè)關(guān)掉,這時的功耗可以降低到nA級。但是在Stop模式下,CPU被喚醒后要重新對系統(tǒng)作初始化,所有特殊功能寄存器的內(nèi)容將被重新初始化。這在某些低功耗應(yīng)用場合需要注意。
Suspend模式下,CPU、內(nèi)部系統(tǒng)時鐘停止工作,I/O模塊等被懸掛起來,片內(nèi)RAM中存儲的數(shù)據(jù)將被保持,CPU的功耗可以降低到nA級,由喚醒事件喚醒。當(dāng)CPU被喚醒后,系統(tǒng)不會被CPU復(fù)位,繼續(xù)從進(jìn)入Suspend模式的地方開始執(zhí)行程序。這是一種非常理想的低功耗模式。
在硬件層面來說,對上面的這些參數(shù)進(jìn)行仔細(xì)衡量是十分必要的,除此之外,選擇合適的時鐘方案和使用每MIPS功耗來衡量MCU的低功耗性能也是非常關(guān)鍵的。
應(yīng)用軟件考慮因素
應(yīng)用軟件設(shè)計對于一個低功耗系統(tǒng)的重要性常常被人們忽略。一個重要的原因是,軟件設(shè)計上的缺陷并不像硬件那樣容易發(fā)現(xiàn),同時也沒有一個嚴(yán)格的標(biāo)準(zhǔn)來判斷一個軟件的低功耗特性。但是設(shè)計者如果能盡量將應(yīng)用的低功耗特性反映在軟件中,就可以避免那些“看不見”的功耗損失:
用“中斷”代替“查詢”
在沒有要求低功耗的場合,程序使用中斷方式還是查詢方式并不重要。但在要求低功耗場合,這兩種方式相差甚遠(yuǎn)。使用中斷方式,CPU可以什么都不做,甚至可以進(jìn)入等待模式或停止模式;而查詢方式下,CPU必須不停地訪問I/O寄存器,這會帶來很多額外的功耗。
用“宏”代替“子程序”
子程序調(diào)用的入棧出棧操作,要對RAM進(jìn)行兩次操作,會帶來更大的功耗。宏在編譯時展開,CPU按順序執(zhí)行指令。使用宏,會增加程序的代碼量,但對不在乎程序代碼量大的應(yīng)用,使用宏無疑會降低系統(tǒng)的功耗。
盡量減少CPU的運算量
減少CPU的運算工作量,可以有效地降低CPU的功耗。減少CPU運算的工作可以從很多方面入手:用查表的方法替代實時的計算;不可避免的實時計算,算到精度夠了就結(jié)束,避免“過度”的計算;盡量使用短的數(shù)據(jù)類型,例如,盡量使用字符型的8位數(shù)據(jù)替代16位的整型數(shù)據(jù),盡量使用分?jǐn)?shù)運算而避免浮點數(shù)運算等。
讓I/O模塊間歇運行
在系統(tǒng)運行過程中,不用的I/O模塊要關(guān)掉,間歇使用的I/O模塊要及時關(guān)掉,以節(jié)省電能。同時,不用的I/O引腳要設(shè)置成輸出或設(shè)置成輸入,用上拉電阻拉高。
總之,在單片機系統(tǒng)設(shè)計過程中,需要深入理解單片機低功耗的特性,并在硬件和應(yīng)用軟件的設(shè)計過程中充分利用單片機的低功耗特性,從而設(shè)計出符合低功耗要求的產(chǎn)品。
特別推薦
- 復(fù)雜的RF PCB焊接該如何確保恰到好處?
- 電源效率測試
- 科技的洪荒之力:可穿戴設(shè)備中的MEMS傳感器 助運動員爭金奪銀
- 輕松滿足檢測距離,勞易測新型電感式傳感器IS 200系列
- Aigtek推出ATA-400系列高壓功率放大器
- TDK推出使用壽命更長和熱點溫度更高的全新氮氣填充三相交流濾波電容器
- 博瑞集信推出低噪聲、高增益平坦度、低功耗 | 低噪聲放大器系列
技術(shù)文章更多>>
- 如何選擇和應(yīng)用機電繼電器實現(xiàn)多功能且可靠的信號切換
- 基于APM32F411的移動電源控制板應(yīng)用方案
- 數(shù)字儀表與模擬儀表:它們有何區(qū)別?
- 聚焦制造業(yè)企業(yè)貨量旺季“急難愁盼”,跨越速運打出紓困“連招”
- 選擇LDO時的主要考慮因素和挑戰(zhàn)
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索