Cortex - M3与Cortex - M4对比
本文主要从M3和M4的MPU、DSP能力、debug调试和电源管理4个方面说明两者的区别。
1.内存保护单元MPU
与Cortex-M3的相同,MPU是一个Cortex-M4中用于内存保护的可选组件。处理器支持标准ARMv7内存保护系统结构模型。您可以使用在MPU执行特权/访问规则,或者独立的进程。这个MPU提供全面支持:
l保护区
l重叠保护区域,提升区域优先级(7=最高优先级,0=最低优先级)
l访问权限
l将存储器属性输出至系统
2.DSP能力
下图展示了处理器运行在相同的速度下Cortex-M3和Cortex-M4在数字信号处理能力方面的相对性能比较。
在下面的数字,Y轴代表执行给出的计算用的相对的周期数。因此,循环数越小,性能越好。以Cortex-M3作为参考,Cortex-M4的性能计算,性能比大概为其周期计数的倒数。举例说明,PID功能,Cortex-M4的周期数是与Cortex-M3的约0.7倍,因此相对性能是1/0.7,即1.4倍。
Cortex-M系列16位循环计数功能
Cortex-M系列32位循环计数功能
这很清楚的表明,Cortex-M4在数字信号处理方面对比Cortex-M3的16位或32位操作有着很大的优势。
Cortex-M4执行的所有的DSP指令集都可以在一个周期完成,Cortex-M3需要多个指令和多个周期才能完成的等效功能。即使是PID算法——通用DSP运算中最耗费资源的工作,Cortex-M4也能提供了一个1.4倍的性能得改善。另一个例子,MP3解码在Cortex-M3需要20-25Mhz,而在Cortex-M4只需要10-12MHz。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码