版本差异

版本差异

术语
副处理器可以省电70%

A系列关键技术点

交叉编译工具

CPU组成

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

CPU基本结果

处理模式

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

处理器模式

寄存器

  • SP:堆栈寄存器
  • LR:链接寄存器
  • PC:程序寄存器
  • PSR:程序状态寄存器
  • APSR:应用程序状态寄存器
  • CPSR:当前程序状态寄存器
  • SPSR:已存储程序状态寄存器

只有在用户模式下才是ASPR,其它模式都是CSPR

  1. R0-R12通用寄存器,放通用数据,32bit
  2. 各个模式的R0-R12与USR模式是共享的(除了FIQ,R8-R12),PC,CPSR共享的
  3. USRR模式没有SPSR

寄存器模式

Thumb精简指令集只能访问0-7位寄存器

CSPR指令格式

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负数

指令流水线

三级指令流水线Pipeline
F->D->E:取码->译码->执行

  • 扩展到无极流水(分解指令过程):
    -指令预读取(决定从内存哪儿取指令)。PerFetch
    • 指令读取(从内存系统中读取指令)。Fetch
    • 指令译码(解读指令并且生成控制信号)
    • 寄存器牍取(提供寄存器的值给操作单元)
    • 分配(分配指令给执行单元)
    • 执行(实际的ALU单元处理)
    • 内存访问(数据的存取)
    • 寄存器回写(更新运行结果到寄存器)