<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 發(fā)揮ARM Cortex-M3和M4微控制器最大作用的要訣

          發(fā)揮ARM Cortex-M3和M4微控制器最大作用的要訣

          作者: 時間:2014-01-21 來源:網(wǎng)絡 收藏

          運行更快、休眠功耗更低

          本文引用地址:http://www.ex-cimer.com/article/256977.htm


          像許多MCU一樣,/4處理器通常能夠采用高時鐘速率的方法在中斷驅動的應用中節(jié)省能耗。如果處理器大部分時間處于休眠狀態(tài),這種看似違背直覺但普遍采用的節(jié)能策略就會很好,因為運行時間減少所節(jié)省的能耗遠遠大于稍高的操作電流。簡單來說,多花10%的電可以省掉20%的時間,總體來說是節(jié)能了。


          這種技術可以應用在任何Cortex-M系列的處理器上,而涉及密集運算任務的應用也能從處理器的額外能力中受益。它的單周期DSP指令和可選的浮點加速器能大大減少諸如數(shù)字信號處理、過濾、分析或波形合成等功能所需要的執(zhí)行周期數(shù)。


          一些應用僅僅需要DSP處理能力。例如,有些安全系統(tǒng)采用一種以聲學分析來感測玻璃破損的裝置。玻璃破損時會發(fā)出一連串獨特的聲音和振動,并且在玻璃特有的固有頻率時達到最大,在這個例子中是13kHz。大多數(shù)采用傳感器接口的系統(tǒng)只有在所監(jiān)測的頻率被監(jiān)測到時,才喚醒處理器。但是當設計中使用帶DSP功能的時就能額外節(jié)能,因為它在執(zhí)行實際的玻璃破損分析時比軟件解決方案更快。


          甚至,這些使用基于M4的應用可以更加節(jié)能,因為MCU中所包含的高級休眠模式和自治外設可以在CPU休眠時執(zhí)行許多日程任務。例如,以Cortex-M4為內核的Wonder Gecko MCU7具有五種不同的低功耗模式,包括20nA的關機狀態(tài)和950nA的深度休眠模式(實時時鐘有效、RAM和寄存器內容保持、使能掉電檢測)。


          上面提及的節(jié)能特性也能帶來其它優(yōu)勢。例如,在超音波/聲學水表之類的應用中,它們必須在小電池供電下運行多年,需要MCU盡可能長的保持在休眠狀態(tài)。除了有助于減少MCU喚醒時間之外,Cortex-4 DSP和浮點算術指令也能使用成熟的濾波功能從廉價聲學傳感器輸出中獲得所需的信息,從而避免采用昂貴的超聲波流量傳感器。在這個應用實例中,Wonder Gecko MCU的外設還能夠作為模擬狀態(tài)機提供額外的能量節(jié)省,它僅僅在需要時才喚醒Cortex-M4處理器。

          結論


          雖然并不完備,但這些林林總總的秘訣與妙方應該能讓各位產生好的思路,可以在下一次設計中充分利用Cortex-M系列中一些較不為人知的特性所帶來的好處。為了發(fā)揮 Cortex-M系列的這些和其它重要功能,可參考本文末段的參考資料,它們提供了所需的更多細節(jié)。


          此外,如何通過選擇搭配有合適I/O、加速器和其它先進外設的 MCU來改善設計性能、功耗和解決方案成本,來自Silicon Labs的EFM32 Gecko和Wonder Gecko MCU系列產品提供了極佳范例。


          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();