比较项目
ARM7
Cortex-M3
架构
ARMv4T(冯诺依曼)
指令和数据总线共用,会出现瓶颈
ARMv7-M(哈佛)
指令和数据总线分开,无瓶颈
指令集
32位ARM指令+16位Thumb指令
两套指令之间需要进行状态切换
Thumb/Thumb-2指令集 16位和32位
指令可直接混写,无需状态切换
流水线
3级流水线 若出现转移则需要刷新流水线,损失惨重
3级流水线+分支预测 出现转移时流水线无需刷新,几乎无损失
性能
0.95DMIPS/MHz(ARM模式)
1.25DMIPS/MHz
功耗
0.28mW/MHz
0.19mW/MHz
低功耗模式
无
内置睡眠模式
面积
0.62mm2(仅内核)
0.86mm2(内核+外设)
中断
普通中断IRQ和快速中断FIQ太少,大量外设不得不复用中断
不可屏蔽中断NMI+1-240个物理中断
每个外设都可以独占一个中断,效率高
中断延迟
24-42个时钟周期,缓慢
12个时钟周期,最快只需6个
中断压栈
软件手工压栈,代码长且效率低
硬件自动压栈,无需代码且效率高
存储器保护
无
8段存储器保护单元(MPU)
内核寄存器
寄存器分为多组、结构复杂、占核面积多
寄存器不分组(SP除外),结构简单
工作模式
7种工作模式,比较复杂
只有线程模式和处理模式两种,简单
乘除法指令
多周期乘法指令,无除法指令
单周期乘法指令,2-12周期除法指令
位 *** 作
无 访问外设寄存器需分“读-改-写”3步走
先进的Bit-band位 *** 作技术,可直接访问外设寄存器的某个值
系统节拍定时
无
内置系统节拍定时器,有利于 *** 作系统移植
评论列表(0条)