ARM体系架构
ARM 体系: ARMv4 ARMv5 ARMv6 ARMv7
ARM CPU: arm7 arm9 arm10 arm11 arm-cortex-a8
流水线: 3 5 6 8
频率(MHZ) 80 150 260 335 667
MMU 无/有 有 …
结构: 冯诺依曼 哈佛 …
注:
不同ARM体系采用不同指令集
哈佛结构是数据和指令分开存储并行
冯诺依曼(普林斯顿)结构是混合存储的
ARM系统硬件组成和运行原理
ARM 工作模式
•ARM主要有7个基本工作模式
User : 非特权模式,大部分任务执行在这种模式
FIQ : 当一个高优先级(fast) 中断产生时将会进入这种模式
IRQ : 当一个低优先级(normal) 中断产生时将会进入这种模式
Supervisor :当复位或软中断指令执行时将会进入这种模式
Abort : 当存取异常时将会进入这种模式
Undef : 当执行未定义指令时会进入这种模式
System : 使用和User模式相同寄存器集的特权模式
•ARM 有37个寄存器
1 个用作PC( Program Counter)
1 个用作CPSR(Current Program Status Register)
5 个用作SPSR(Saved Program Status Registers)
30个通用寄存器
CPSR 寄存器
条件位:
N = Negative result from ALU
Z = Zero result from ALU
C = ALU operation Carried out or borrow
V = ALU operation oVerflowed
T 位 J 位
T = 0;J=0 处理器处于 ARM 状态
T = 1;J=0 处理器处于 Thumb 状态
中断禁止位:
I = 1: 禁止 IRQ.
F = 1: 禁止 FIQ
Mode位:处理器模式位**
10000 User mode 10011 SVC mode;
10010 IRQ 10001 FIQ mode;
10111 Abort mode 11011 Undfined mode 11111 System mode;
CPSR / SPSR操作指令
mrs r0,CPSR
msr CPSR,r0