Cortex - M3與Cortex - M4對比
本文主要從M3和M4的MPU、DSP能力、debug調(diào)試和電源管理4個方面說明兩者的區(qū)別。
1.內(nèi)存保護單元MPU
與Cortex-M3的相同,MPU是一個Cortex-M4中用于內(nèi)存保護的可選組件。處理器支持標(biāo)準(zhǔn)ARMv7內(nèi)存保護系統(tǒng)結(jié)構(gòu)模型。您可以使用在MPU執(zhí)行特權(quán)/訪問規(guī)則,或者獨立的進程。這個MPU提供全面支持:
l保護區(qū)
l重疊保護區(qū)域,提升區(qū)域優(yōu)先級(7=最高優(yōu)先級,0=最低優(yōu)先級)
l訪問權(quán)限
l將存儲器屬性輸出至系統(tǒng)
2.DSP能力
下圖展示了處理器運行在相同的速度下Cortex-M3和Cortex-M4在數(shù)字信號處理能力方面的相對性能比較。
在下面的數(shù)字,Y軸代表執(zhí)行給出的計算用的相對的周期數(shù)。因此,循環(huán)數(shù)越小,性能越好。以Cortex-M3作為參考,Cortex-M4的性能計算,性能比大概為其周期計數(shù)的倒數(shù)。舉例說明,PID功能,Cortex-M4的周期數(shù)是與Cortex-M3的約0.7倍,因此相對性能是1/0.7,即1.4倍。
Cortex-M系列16位循環(huán)計數(shù)功能
Cortex-M系列32位循環(huán)計數(shù)功能
這很清楚的表明,Cortex-M4在數(shù)字信號處理方面對比Cortex-M3的16位或32位操作有著很大的優(yōu)勢。
Cortex-M4執(zhí)行的所有的DSP指令集都可以在一個周期完成,Cortex-M3需要多個指令和多個周期才能完成的等效功能。即使是PID算法——通用DSP運算中最耗費資源的工作,Cortex-M4也能提供了一個1.4倍的性能得改善。另一個例子,MP3解碼在Cortex-M3需要20-25Mhz,而在Cortex-M4只需要10-12MHz。
pid控制相關(guān)文章:pid控制原理
評論