資料介紹
大部分采用Cortex-M3/M4 MCU的目標(biāo)應(yīng)用是便攜式的,并且供電電源來(lái)自電池或能源收集系統(tǒng),因此我們所探討的大部分概念涉及如何減少系統(tǒng)整體能耗的技術(shù)。然而,在許多情況下,這些節(jié)能技術(shù)也是處理器應(yīng)用設(shè)計(jì)的有力工具,可提供:
●更符合成本效益的解決方案
●更大的升級(jí)和采用新特性的設(shè)計(jì)冗余
●有助于產(chǎn)品在激烈競(jìng)爭(zhēng)市場(chǎng)上脫穎而出的性能和特性
小知識(shí):Cortex-M3對(duì)比Cortex-M4
Cortex-M3架構(gòu)背后的指導(dǎo)思路是設(shè)計(jì)一種既要滿足應(yīng)用的成本效益又要提供高性能計(jì)算和控制1的處理器。類似的應(yīng)用包括汽車車身系統(tǒng)、工業(yè)控制系統(tǒng)和無(wú)線網(wǎng)絡(luò)/傳感器產(chǎn)品等。M3系列為32位的ARM處理器架構(gòu)引進(jìn)了多項(xiàng)重要特性,包括:
●不可屏蔽式中斷
●高度確定性、嵌套、向量式中斷
●原子位操作
●可選的存儲(chǔ)保護(hù)(MPU)
除了絕佳的計(jì)算性能,Cortex-M3處理器先進(jìn)的中斷結(jié)構(gòu)還能確保系統(tǒng)迅速響應(yīng)真實(shí)世界的事件,同時(shí)仍然提供極低的動(dòng)態(tài)與靜態(tài)功耗。
圖1 ARM Cortex M3和M4對(duì)比
SWO接口節(jié)省I/O引腳并加速調(diào)試
除了傳統(tǒng)的串行調(diào)試(Serial Wire Debug)功能之外,基于ARM Cortex-M的MCU還可以通過(guò)它的單引腳串行監(jiān)視器輸出(Serial Wire Viewer Output,SWO)3提供指令跟蹤接口,如圖2所示。這個(gè)接口可以直接把“printf格式的”調(diào)試信息傳遞給應(yīng)用代碼。SWO允許調(diào)試信息直接在任何標(biāo)準(zhǔn)的IDE中瀏覽。此外,這些信息也可以用獨(dú)立的SWO監(jiān)視器(例如,Segger的J-Link SWO Viewer軟件4,或是Silicon Labs的energyAware Commander 4)進(jìn)行瀏覽。由于SWO輸出內(nèi)建于內(nèi)核硬件本身,因此它是Cortex-M內(nèi)核與生俱來(lái)的優(yōu)點(diǎn)。SWO不占用MCU的任何UART接口,這些接口它們可能早已被分配給了應(yīng)用。
圖2 專用ARM Cortex SWO接口節(jié)省I/O引腳并加速調(diào)試
基于SWO的調(diào)試還有一個(gè)重要的優(yōu)勢(shì)在于,它讓微控制器在進(jìn)入最低的休眠模式時(shí),保持調(diào)試連接有效,而在大多數(shù)情況下,傳統(tǒng)的調(diào)試連接這時(shí)是不能正常工作的。SWO的指令追蹤還可以用于跟蹤程序計(jì)數(shù)器,以幫忙IDE統(tǒng)計(jì)出程序各項(xiàng)功能所占用的時(shí)間。這些統(tǒng)計(jì)數(shù)字能夠與電流測(cè)量結(jié)合起來(lái),幫助開(kāi)發(fā)人員對(duì)設(shè)計(jì)功耗進(jìn)行微調(diào)。
目前一些供應(yīng)商正在開(kāi)始重新認(rèn)識(shí)這項(xiàng)優(yōu)點(diǎn),而且有些廠商已經(jīng)為了這個(gè)目的而把功耗模式和電流測(cè)量硬件納入到本身的開(kāi)發(fā)平臺(tái)。例如,Silicon Labs的EFM32 Gecko MCU入門級(jí)和開(kāi)發(fā)級(jí)工具包都包含功耗測(cè)量輸出,并可搭配energyAware Profiler工具6中的程序代碼追蹤功能。圖3顯示了如何讓設(shè)計(jì)人員精確定位到哪個(gè)程序功能塊最耗費(fèi)能源,并且能夠快速調(diào)試其它與能源有關(guān)的問(wèn)題。
圖3 軟硬件工具精確定位耗能最大的功能,無(wú)需示波器和萬(wàn)用表,快速排除問(wèn)題
智能休眠節(jié)省每一微瓦
ARM Cortex-M處理器的Sleep-on-Exit(中斷完成時(shí)直接進(jìn)入休眠)是另一項(xiàng)“一箭雙雕”的功能,可同時(shí)節(jié)省CPU周期和能耗。這點(diǎn)在由中斷所驅(qū)動(dòng)的應(yīng)用中格外有用,因?yàn)樘幚砥鞯拇蟛糠謺r(shí)間不是在執(zhí)行中斷處理,就是在中斷事件之間休眠。在進(jìn)入中斷服務(wù)例程(ISR)時(shí),MCU必須花費(fèi)好幾個(gè)指令周期把當(dāng)前線程狀態(tài)入棧,然后在退出中斷處理返回時(shí)恢復(fù)原有線程狀態(tài),即“出棧”。當(dāng)應(yīng)用需要處理器在退出ISR后直接進(jìn)入休眠狀態(tài)時(shí),傳統(tǒng)MCU仍然必須恢復(fù)原先存儲(chǔ)的狀態(tài)信息,然后線程代碼才能讓MCU進(jìn)入休眠狀態(tài)。同樣地,當(dāng)下次的中斷喚醒MCU時(shí),它的狀態(tài)必須再次入棧。
而當(dāng)使能ARM Cortex-M微控制器上的Sleep-on-Exit功能后,MCU就會(huì)在中斷處理完成后直接進(jìn)入休眠狀態(tài),而不用先返回到原有線程上(見(jiàn)圖4)。這會(huì)使處理器仍然保持在中斷狀態(tài),因?yàn)橄藛拘言偃霔_^(guò)程,因而節(jié)省下許多寶貴的機(jī)器周期。消除入棧出棧過(guò)程既節(jié)省了時(shí)間也節(jié)省了能耗,否則電能就會(huì)被不必要的指令周期白白消耗,也包括哪些傳統(tǒng)MCU在休眠和喚醒之間管理堆棧的代碼。而且,當(dāng)處理器被中止調(diào)試請(qǐng)求(Halt Debug Request)喚醒時(shí),出棧過(guò)程將會(huì)自動(dòng)進(jìn)行。
流程圖
圖4:ARM Cortex-M的Sleep-on-Exit功能通過(guò)避免不必要的代碼執(zhí)行和減少出棧入棧操作降低功耗
ARM Cortex-M4運(yùn)行更快、休眠功耗更低
像許多MCU一樣,Cortex-M3/4處理器通常能夠采用高時(shí)鐘速率的方法在中斷驅(qū)動(dòng)的應(yīng)用中節(jié)省能耗。如果處理器大部分時(shí)間處于休眠狀態(tài),這種看似違背直覺(jué)但普遍采用的節(jié)能策略就會(huì)很好,因?yàn)檫\(yùn)行時(shí)間減少所節(jié)省的能耗遠(yuǎn)遠(yuǎn)大于稍高的操作電流。簡(jiǎn)單來(lái)說(shuō),多花10%的電可以省掉 20%的時(shí)間,總體來(lái)說(shuō)是節(jié)能了。
這種技術(shù)可以應(yīng)用在任何Cortex-M系列的處理器上,而涉及密集運(yùn)算任務(wù)的應(yīng)用也能從Cortex-M4處理器的額外能力中受益。它的單周期DSP指令和可選的浮點(diǎn)加速器能大大減少諸如數(shù)字信號(hào)處理、過(guò)濾、分析或波形合成等功能所需要的執(zhí)行周期數(shù)。
上面提及的節(jié)能特性也能帶來(lái)其它優(yōu)勢(shì)。例如,在超音波/聲學(xué)水表之類的應(yīng)用中,它們必須在小電池供電下運(yùn)行多年,需要MCU盡可能長(zhǎng)的保持在休眠狀態(tài)。除了有助于減少M(fèi)CU喚醒時(shí)間之外,Cortex-4 DSP和浮點(diǎn)算術(shù)指令也能使用成熟的濾波功能從廉價(jià)聲學(xué)傳感器輸出中獲得所需的信息,從而避免采用昂貴的超聲波流量傳感器。在這個(gè)應(yīng)用實(shí)例中,Wonder Gecko MCU的外設(shè)還能夠作為模擬狀態(tài)機(jī)提供額外的能量節(jié)省,它僅僅在需要時(shí)才喚醒Cortex-M4處理器。
雖然并不完備,但這些林林總總的秘訣與妙方應(yīng)該能讓各位產(chǎn)生好的思路,可以在下一次設(shè)計(jì)中充分利用Cortex-M系列中一些較不為人知的特性所帶來(lái)的好處。為了發(fā)揮ARM Cortex-M系列的這些和其它重要功能,可參考本文末段的參考資料,它們提供了所需的更多細(xì)節(jié)。
文章來(lái)源:
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- MM32L3xxo產(chǎn)品手冊(cè):32位基于ARM Cortex-M3核心的微控制器
- 基于Arm Cortex-M3內(nèi)核的32位微控制器APM32E103xCxE數(shù)據(jù)手冊(cè) 1次下載
- Cortex-M3與Cortex-M4對(duì)比資料下載
- ARM cortex-M3 異常處理分析資料下載
- Cortex-M3和Cortex-M4 Fault異常應(yīng)用之基礎(chǔ)知識(shí)資料下載
- 《ARM Cortex-M3權(quán)威指南》筆記資料下載
- ARM Cortex-M3內(nèi)核微控制器與ARM7的區(qū)別資料下載
- Cortex-M3 NVIC與中斷控制資料下載
- LPC18xx系列Cortex-M3內(nèi)核微控制器數(shù)據(jù)手冊(cè) 18次下載
- STM32系列ARM Cortex-M3處理器微控制器原理與實(shí)踐 24次下載
- STM32系列ARM Cortex-M3微控制器原理與實(shí)踐 176次下載
- ARM_Cortex-M0+微控制器原理與應(yīng)用 10次下載
- STM32F系列ARM_Cortex-M3核微控制器開(kāi)發(fā)與應(yīng)用_喻金錢/喻斌 0次下載
- 基于ARM Cortex-M3的MODBUS協(xié)議實(shí)現(xiàn)及其應(yīng)用 99次下載
- STM32系列ARM Cortex-M3微控制器原理與實(shí)踐
- 強(qiáng)大的Arm? Cortex?-M3內(nèi)核(下) 670次閱讀
- Arm Cortex-M52的主要特性和規(guī)格 1081次閱讀
- 基于FPGA搭建ARM Cortex-M3 SoC軟核 2335次閱讀
- 如何定制一顆ARM Cortex-M3 SoC軟核 1975次閱讀
- 新唐科技M031FB0AE控制器 2768次閱讀
- 新唐科技M031KG8AE控制器 1715次閱讀
- 新唐科技M031LE3AE控制器介紹 2997次閱讀
- 新唐科技M031SE3AE控制器介紹 1984次閱讀
- 米爾科技ARM Cortex-M3教程指南 2628次閱讀
- LPC540xx是基于ARM Cortex-M4的32位微控制器 2279次閱讀
- Cortex-M3處理器中斷和FreeRTOS中斷優(yōu)先級(jí)配置 6920次閱讀
- LM3S9B92微控制器特性參數(shù)與Stellaris機(jī)器人評(píng)估板介紹 2379次閱讀
- 《振南電子STM32視頻教程》第一講:ARM處理器和STM32微控制器 2187次閱讀
- ARM Cortex M3/M4微控制器最大效率設(shè)計(jì)三秘訣 3515次閱讀
- 采用ARM Cortex-M3的USB熱電偶溫度測(cè)量系統(tǒng)電路圖 3807次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多