第五章 ARM的体系结构
嵌入式系统 Embedded System 教师:白华 邮箱:baihua2000@ 电话办公室:4A-409 第五章 ARM的体系结构 主要内容 什么是ARM ARM的指令结构 ARM的寄存器结构 异常 ARM的存储器格式 5.1 什么是ARM? ARM Advanced RISC Machines Reduced Introduction Set Computer, RISC Complex Introduction Set Computer, CISC 与之相对的 ARM有三种含义,它是一个公司的名称,也是一类微处理器的通称,还是一种技术的名称。 5.1.1 ARM的由来 CISC 处理器 20% RISC 处理器 RISC可以使计算机结构更加简单合理,非常适合嵌入式处理器。 但绝不能认为RISC架构就可以取代CISC架构,事实上,RISC和CISC各有优势,而且界限并不那么明显。 采用RISC架构的ARM微处理器一般具有以下特点 5.1.2 ARM的特点 小体积、低功耗、低成本、高性能; 支持Thumb(16位)/ ARM(32位)双指令集,能很好地兼容8位/16位器件; 大量使用寄存器,指令执行速度更快; 大多数数据操作都在寄存器中完成; 寻址方式灵活简单,执行效率高; 指令长度固定。 5.1.3 ARM的应用选型 ARM7 ARM9 ARM9E ARM10 SecurCore Xscale ARM11 Cortex 项目 ARM7 ARM9 ARM10 ARM11 流水线深度 3级 5级 6级 8级 典型频率(MHz) 80 150 260 335 功耗(mW/MHz) 0.06 0.19(+cache) 0.5 (+cache) 0.4 (+cache) 性能MIPS/MHz 0.97 1.1 1.3 1.2 架构 冯?诺伊曼 哈佛 哈佛 哈佛 突出特点 物美价廉,应用广泛 速度更快,支持虚拟存储器 具有最高的MIPS/MHz,增强浮点运算 高性能,视频处理能力强 常用的ARM微处理器系列 选择ARM微处理器需要考虑的主要问题: ARM微处理器内核的选择 系统的工作频率 芯片内存储器的容量 片内外围电路的选择 5.2 ARM的指令结构 ARM指令集 Thumb指令集 (32位) (16位) ARM指令 结构 Thumb指令集是ARM指令集的功能子集,但与等价的ARM代码相比,可节省30%~40%以上的存储空间,同时具备32位代码的所有优点。 5.3 ARM的寄存器结构 ARM的寄存器结构依赖于ARM的工作状态和运行模式。 5.3.1 ARM的工作状态 ARM状态:此时处理器执行32位的字对齐的ARM指令。 Thumb状态:此时处理器执行16位的半字对齐的Thumb指令。 ARM指令集和Thumb指令集均有切换处理器状态的指令,可在两种工作状态之间切换。但ARM处理器在开始执行代码时,应该处于ARM状态。 5.3.2 ARM的运行模式 ARM微处理器支持7种运行模式: 用户模式(usr):ARM微处理器正常的程序执行状态。 快速中断模式(fiq):用于高速数据传输或通道处理。 外部中断模式(irq):用于通用的中断处理。 管理模式(svc):操作系统使用的保护模式。 数据访问终止模式(abt):当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。 系统模式(sys):运行具有特权的操作系统任务。 未定义指令终止模式(und):当执行未定义的指令时进入该模式,可用于支持硬件协处理器的软件仿真。 5.3.3 ARM的寄存器结构 寄存器 通用寄存器 状态寄存器 未分组寄存器 分组寄存器 程序计数器PC 当前程序状态寄存器 备份程序状态寄存器 5.3.4 ARM状态下的寄存器组织 1、通用寄存器 -- 未分组寄存器:R0~R7 usr R0 fiq R0 irq R0 svc R0 abt R0 sys R0 und R0 R0 物理寄存器 任何运行模式下的寄存器标识符R0都指向同一个物理寄存器R0,也就是说,微处理器中与R0对应的物理寄存器只有一个。 R1~R7的情况与R0相同。 2、通用寄存器 -- 分组寄存器:R8~R12 R8 R8_fiq R8_usr fiq模式 除fiq以外 的其他模式 R9 R9_fiq R9_usr R10 R10_fiq R10_usr R11 R11_fiq R11_usr R12 R12_fiq R12_usr 物理 寄存器 物理 寄存器 寄存器 标识符 微处理器中与R8对应的物理寄存器有两个,具体指向哪个依赖于处理器运行模式。 R9~R12的情况与R8相同。 2、通用寄存器 -- 分组寄存器:R13 R13 R13_usr R
原创力文档

文档评论(0)