ARM芯片选择的通常原则:html
1. 功能 USB 网络 串口 液晶显示安全
2. 性能功耗速度 网络
3. 价格架构
4. 操做系统支持性能
5. 熟悉程度和开发资源spa
6. 供货稳定 大厂家 通用的芯片操作系统
ARM系列线程 |
MMU/MPUhtm |
结构ci |
功耗mW/MHz |
速度MIPS/MHz |
主频MHz |
应用领域 |
|
ARM7 |
不带 |
3级流水线 冯诺依曼结构 |
0.28 |
0.9 |
20-133 |
工业产品 |
|
ARM9 |
MMU |
5级流水线 哈佛结构 |
0.7 |
1.1 |
100-233 |
消费、医疗、工业 |
|
ARM10E |
MMU MPU |
6级流水线 V5架构 |
1000 |
1.25 |
300-700 |
无线设备、数字消费品 |
|
ARM11 |
MMU |
8级流水线 V6架构 |
0.4 |
|
350-500 |
消费类、网络,多媒体处理方面优点 |
|
Cortex |
Cortex-A |
MMU |
V7架构 |
<300 |
2.0 |
600-1000 |
应用,消费、无线产品 |
Cortex-R |
MMU |
V7架构 |
0.27 |
1.62 |
300 |
实时控制 汽车电子、网络和影像系统 |
|
Cortex-M |
MPU |
3级流水线 V7架构 |
0.19 |
1.25 |
100 |
微控制器、汽车车体系统、网络装置 |
|
SecurCore |
MPU |
5级流水线
|
- |
-- |
-- |
安全方面,电子商务,网络银行 |
MMU:存储管理单元
MPU:存储保护单元、
比较项目 | 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位操做技术,可直接访问外设寄存器的某个值 |
系统节拍定时 | 无 | 内置系统节拍定时器,有利于操做系统移植 |