發(fā)揮ARM Cortex-M3和M4微控制器最大作用的要訣
引言
許多嵌入式開發(fā)人員對ARM Cortex處理器架構(gòu)頗為熟悉,但很少有人能夠?qū)@種流行架構(gòu)了如指掌,從而可以充分發(fā)揮它獨特的特性和性能。新型ARM Cortex-M4處理器尤為如此,它擁有引以為豪的增強架構(gòu)、天生的數(shù)字信號處理(DSP)能力和可選的浮點加速器,使精于此道的程序設(shè)計人員或硬件工程師可以充分發(fā)揮它的優(yōu)勢。本文接下來將就Cortex-M3/M4微控制器(MCU)的一些更有趣的(但經(jīng)常遭到忽視的)特性展開詳細的論述。
大部分采用Cortex-M3/M4 MCU的目標應(yīng)用是便攜式的,并且供電電源來自電池或能源收集系統(tǒng),因此我們所探討的大部分概念涉及如何減少系統(tǒng)整體能耗的技術(shù)。然而,在許多情況下,這些節(jié)能技術(shù)也是處理器應(yīng)用設(shè)計的有力工具,可提供:
●更符合成本效益的解決方案
●更大的升級和采用新特性的設(shè)計冗余
●有助于產(chǎn)品在激烈競爭市場上脫穎而出的性能和特性
ARM Cortex基本介紹
就像Advanced RISC Machines(ARM)公司在20世紀80年代所推出的第一代16位處理器內(nèi)核一樣,ARM Cortex系列以哈佛式RISC架構(gòu)為基礎(chǔ),采用適度的硅封裝工藝獲得更高性能,以及代碼和內(nèi)存效率。該架構(gòu)在過去十年間大有進展,擴展出了三種不同的子系列,以滿足特定應(yīng)用的需求:
●A型系列處理器針對高效能開放應(yīng)用平臺而優(yōu)化設(shè)計。
●R型系列處理器注重提升實時應(yīng)用的性能和可靠度。
●M型系列處理器特別為采用嵌入式MCU的應(yīng)用而設(shè)計,其性能必須在能源效率和降低解決方案成本之間加以平衡。適用于Cortex M系列的常見應(yīng)用包括智能電表、人機接口設(shè)備、汽車與工業(yè)控制系統(tǒng)、白色家電、消費電子產(chǎn)品和醫(yī)療器材等。
Cortex-M3對比Cortex-M4
Cortex-M3架構(gòu)背后的指導(dǎo)思路是設(shè)計一種既要滿足應(yīng)用的成本效益又要提供高性能計算和控制1的處理器。類似的應(yīng)用包括汽車車身系統(tǒng)、工業(yè)控制系統(tǒng)和無線網(wǎng)絡(luò)/傳感器產(chǎn)品等。M3系列為32位的ARM處理器架構(gòu)引進了多項重要特性,包括:
●不可屏蔽式中斷
●高度確定性、嵌套、向量式中斷
●原子位操作
●可選的存儲保護(MPU)
除了絕佳的計算性能,Cortex-M3處理器先進的中斷結(jié)構(gòu)還能確保系統(tǒng)迅速響應(yīng)真實世界的事件,同時仍然提供極低的動態(tài)與靜態(tài)功耗2.
圖1:Cortex-M3與M4處理器內(nèi)核的比較。
Cortex-M3和M4處理器共享許多相同的設(shè)計要素,包括先進的片內(nèi)調(diào)試特性,以及執(zhí)行完整ARM指令集或ARM指令子集(用于THUMB2處理器)的能力。Cortex-M4處理器的指令集具有增強的高效DSP特性庫,包括擴展的單周期16/32位乘法累加器(MAC)、雙16位MAC指令、優(yōu)化的8/16位SIMD運算及飽和運算指令??傮w來說,M3與M4最顯著的差別在于,M4具有可選的單精度(IEEE-754)浮點單元(FPU)。
評論