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