了解ARM处理器

1. 处理器概要和特征

ARM处理器以Berkeley RISC架构为基础。RISC(Reduced Instruction Set Computer, 精简指令系统计算机)比CISC(Complex Instruction Set Computer,复杂指令系统计算机)指令结构更简单,可在一小时间内快速处理指令。ARM采用RISC方式降低指令的复杂度,利用管道提高指令处理速度,由此提升性能。

指令:ARM使用的指令相对较少。这些指令将提供一个循环周期内能够执行的简单指令。通过具有一定长度的指令可实现管道。
管道:指令在管道中是并列执行的。通过管道执行时,一边解码当前指令,一边获取下一指令。
负载存储结构: ARM处理器会执行寄存器存储的指令。将内存中的数据读取到寄存器时使用load命令,将寄存器中的数据输入内存时使用store命令。

2. 处理器命名规则


3. 处理器内部结构

ARM处理器内部结构如图,箭头符号将块和块之间进行连接,块表示能执行特定操作的装置或存储装置,箭头符号为数据总线,表示数据流向。

寄存器组:bank是将寄存器根据使用目的进行区分之后的统称。ARM具有12个用户寄存器和25个系统寄存器,共37个。
柱式位移器:位移器负责移动进入ALU的一方的输入数据。ARM的柱式位移器移动时所需时间与位数无关,始终保持一致。
ALU:执行与指令相应的算数运算及逻辑运算。
地址寄存器:从内存读取或存入内存时存储数据地址。地址增加器每次增加4个地址值。
数据输入输出寄存器:用于存储内存中读取的数据或将写入内存的数据。
指令解码器/控制装置:负责解码指令并制作管理数据装置的控制信号。

4. 处理器模式和寄存器

ARM处理器具有6个特权模式(System, FIQ, IRQ, Supervisor, Abort, Undefined)和1个普通模式(User),处理器模式显示当前处理器带着何种权限运行。

User模式: 执行普通用户应用程序时处理器运行模式。
System模式:使用与User模式相同的寄存器,但可完全读写CPSR(Current Program Status Register, 当前程序状态寄存器)的特殊模式。
FIQ(Fast Interrupt Request, 快速中断请求)模式:为处理快速中断而执行的处理器运行模式。
IRQ(Interrupt Request,中断请求)模式:为处理通用中断而执行的处理器运行模式。
SVC(Supervisor)模式: 操作系统内核运行的通用处理器运行模式,发生Reset或软件中断时执行。
Abort模式: 内存访问失败时执行的处理器运行模式。
Undefine模式:处理器要执行未定义的指令时执行的处理器运行模式。

寄存器r13:作为栈指针(sp)使用,存储当前处理器模式的栈顶端地址值。
寄存器r14:作为链接寄存器(lr)使用,存储调用子程序时的返回地址。
寄存器r15:处理器读取指令后,通过程序计数器(pc)存储下一指令地址。
除了16个通用寄存器(r0~r15)之外,还有2个程序状态寄存器:CPSR和SPSR(Saved Program Status Register,程序状态保存寄存器)。

5. 处理器异常


6. 硬件扩展功能

缓存:缓存是位于核心和主存之间的高速内存,由核心使用时,能比外部存储器更快的读取指令,从而提高性能。
 混合缓存:将指令和数据存储在同一空间的冯.诺依曼体系结构。
 单一缓存:将存储指令的缓存和存储数据的缓存进行分离的哈佛体系结构。

内存管理装置:内存管理装置(MMU)负责管理内存,使各任务能够在各自独立内存空间执行。为此,它把虚拟地址变更为物理地址,向各个任务提供虚拟内存地址空间,控制相应物理内存空间的访问权限。

协处理器: 协处理器采用与ARM处理器相互作用的方式处理任务,负责扩展指令包或提供可设置值的寄存器,以扩展ARM核心的功能。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值