ARM 体系架构粗了解
版本差异


副处理器可以省电70%


CPU组成
基本组成:ALU(计算单元,累加器)、控制器(切换)、寄存器、总线(连接)

处理模式
ARM7、ARM9:7中
Cortex-A:9种。8种特权模式,一种非特权模式即用户模式

寄存器
- SP:堆栈寄存器
 - LR:链接寄存器
 - PC:程序寄存器
 - PSR:程序状态寄存器
 - APSR:应用程序状态寄存器
 - CPSR:当前程序状态寄存器
 - SPSR:已存储程序状态寄存器
 
只有在用户模式下才是ASPR,其它模式都是CSPR
- R0-R12通用寄存器,放通用数据,32bit
 - 各个模式的R0-R12与USR模式是共享的(除了FIQ,R8-R12),PC,CPSR共享的
 - USRR模式没有SPSR
 


CSPR指令格式

- M:九种模式,五位表示
 - T:是否使用Thumb指令
 - F:是否禁用FIQ
 - I:是否禁用IRQ
 - A:是否禁用ABT
 - E:存储字节的顺序(大段还是小段,因为存储时以字为单位,所以需要选择存储顺序)
 - IT:Thumb2指令的if…then…条件执行
 - GE:SIMD
 - J:Jazelle(Java)
 - Q:累计饱和instructions
 - V:ALU操作溢出
 - C:ALU进位操作
 - Z:ALU零位
 - N:ALU负数
 
指令流水线

F->D->E:取码->译码->执行
- 扩展到无极流水(分解指令过程):
-指令预读取(决定从内存哪儿取指令)。PerFetch- 指令读取(从内存系统中读取指令)。Fetch
 - 指令译码(解读指令并且生成控制信号)
 - 寄存器牍取(提供寄存器的值给操作单元)
 - 分配(分配指令给执行单元)
 - 执行(实际的ALU单元处理)
 - 内存访问(数据的存取)
 - 寄存器回写(更新运行结果到寄存器)
 
 
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 吾辈之人,自当自强不息!!
 评论





