码迷,mamicode.com
首页 > 其他好文 > 详细

ARM7 与Cortex M3的区别

时间:2014-11-27 21:55:55      阅读:267      评论:0      收藏:0      [点我收藏+]

标签:style   ar   sp   strong   on   数据   div   代码   工作   

Cortex-M3和ARM7的比较

2005年3月,ARM公司公布了最新的ARMv7架构,并定义了三大系列:

”A“系列面向尖端的基于虚拟内存的操作系统和用户应用。主要针对日益增长的运行包括Linux、Windows CE和Symbian在内的消费电子和无线产品;

R“系列针对实时系统。主要针对需要运行实时操作系统来进行控制应用的系统,包括骑车电子、网络和影像系统。

”M“系列针对微控制器和低成本应用提供优化。针对开发费用非常敏感,同时对性能要求不断增加的嵌入式应用,如微控制器、骑车车身控制系统和各种大型家电。

比较项目

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位操作技术,可直接访问外设寄存器的某个值

系统节拍定时

内置系统节拍定时器,有利于操作系统移植

ARM7 与Cortex M3的区别

标签:style   ar   sp   strong   on   数据   div   代码   工作   

原文地址:http://www.cnblogs.com/guangmingwang/p/4127235.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!