|
1.內(nèi)存保護單元MPU 與Cortex - M3的相同,MPU是一個Cortex - M4中用于內(nèi)存保護的可選組件。處理器支持標(biāo)準ARMv7內(nèi)存保護系統(tǒng)結(jié)構(gòu)模型。您可以使用在MPU執(zhí)行 特權(quán)/訪問 規(guī)則,或者獨立的進程。這個MPU提供全面支持: ·保護區(qū) ·重疊保護區(qū)域,提升區(qū)域優(yōu)先級(7 =最高優(yōu)先級,0 =最低優(yōu)先級) ·訪問權(quán)限 ·將存儲器屬性輸出至系統(tǒng) 2 .DSP能力 圖表展示了處理器運行在相同的速度下Cortex - M3和Cortex - M4在數(shù)字信號處理能力方面的相對性能比較。 在下面的數(shù)字,Y軸代表執(zhí)行給出的計算用的相對的周期數(shù)。 因此,循環(huán)數(shù)越小,性能越好。以Cortex - M3作為參考,Cortex - M4的性能計算,性能比大概為其周期計數(shù)的倒數(shù)。舉例說明,PID功能,Cortex 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。 1. 32位乘法累加(MAC) 32位乘法累加(MAC)包括新的指令集和針對Cortex - M4硬件執(zhí)行單元的優(yōu)化它是能夠在單周期內(nèi)完成一個 32
2. SIMD Cortex - M4支持SIMD指令集,這在上一代的Cortex - M系列是不可用的。上述表中的指令,有的屬于SIMD指令。與硬件乘法器一起工作(MAC),使所有這些指令都能在單個周期內(nèi)執(zhí)行。受益于SIMD指令的支持,Cortex - M4處理器是能在單周期完成高達32 × 32 + 64 - >64的運算,為其他任務(wù)釋放處理器的帶寬, 而不是被乘法和加法消耗運算資源??紤]以下復(fù)雜的算術(shù)運算,其中兩個16 × 16乘法加上一個32位加法,被編譯成由一個單一指令執(zhí)行:SUM = SUM +(A* C)+(B
3.FPU FPU是Cortex - M4浮點運算的可選單元。因此它是一個專用于浮點任務(wù)的單元。這個單元通過硬件提升性能,能處理單精度浮點運算,并與IEEE 754標(biāo)準 兼容。這完成了ARMv7 - M架構(gòu)單精度變量的浮點擴展。FPU擴展了寄存器的程序模型與包含32個單精度寄存器的寄存器文件。這些可以被看作是: ·16個64位雙字寄存器,D0 - D15 ·32個32位單字寄存器,S0 - S31 該FPU提供了三種模式運作,以適應(yīng)各種應(yīng)用 ·全兼容模式(在全兼容模式,F(xiàn)PU處理所有的操作都遵循IEEE754的硬件標(biāo)準) ·Flush-to-zero 沖洗到零模式(設(shè)置FZ位浮點狀態(tài)和控制寄存器FPSCR [24]到flush-to-zero 模式。在此模式下,F(xiàn)PU 在運算中將所有不正常的輸入操作數(shù)的算術(shù)CDP操作當(dāng)做0.除了當(dāng)從零操作數(shù)的結(jié)果是合適的情況。VABS,VNEG,VMOV 不會被當(dāng)做算術(shù)CDP的運算,而且不受flush-to-zero 模式影響。結(jié)果是微小的,就像在IEEE 754 標(biāo)準的描述的那樣,在目標(biāo)精度增加的幅度小于四舍五入后最低正常值,被零取代。IDC的標(biāo)志位,F(xiàn)PSCR [7],表示當(dāng)輸入Flush時變化。UFC標(biāo)志位,F(xiàn)PSCR ·默認的NaN模式(DN位的設(shè)置,FPSCR [25],會進入NaN的默認模式。在這種模式下,如對任何算術(shù)數(shù)據(jù)處理操作的結(jié)果,涉及一個輸入NaN,或產(chǎn)生一個NaN結(jié)果,會返回默認的NaN。僅當(dāng)VABS,VNEG,VMOV運算時,分數(shù)位增加保持。所有其他的CDP運算會忽略所有輸入NaN的小數(shù)位的信息) 下表顯示的是FPU指令集。
3.debug調(diào)試 與Cortex - M3的相同, Cortex - M4的設(shè)備是通過標(biāo)準JTAG或串行線調(diào)試連接器調(diào)試。要連接到主機的接口,一個簡單,標(biāo)準化外部連接器是必要的。 4. 電源 1.電源管理
![]() ![]() 2.功耗比較 從圖所示,很明顯在功率效率方面Cortex - M4的性能大大優(yōu)于表Cortex - M3。 ![]() |
|
|
來自: 筱肆 > 《網(wǎng)文收藏》