一、ARM微处理器系列介绍
1.1 ARM的版本号含义
不同的体系结构对应着不同的指令集,ARM公司给这些在不同阶段体系结构中使用的指令集定义了版本号,版本号的名称为ARMvx(符号x代表数字,即1,2,3,…)。
1.2 ARM系列中的一些符号含义
以“ARM”字符为前缀的微处理器核名称中,还经常会出现以下一些符号:
(1)T:支持高密度16位的压缩Thumb指令集。
(2)D:支持片上调试。
(3)M:支持64位除法。
(4)I:具有Embeded-ICE(即嵌入式的ICE),支持片上断点。
(5)E:增强性,具有Java,DSP等增强的处理功能。
(6)S:表示综合处理器。
(7)J:表示具有Jazelle技术,该技术支持。
1.3 Cortex系列中的一些符号含义
Cortex系列是ARM公司对新的微处理器核的命名前缀,它所对应的指令集版本号是ARMv7。
Cortex系列的微处理器核名称中,还经常会出现以下一些符号:
(1)M:针对微控制器和低成本应用提供优化的系列。
(2)R:针对实时系统应用的系列。
(3)A:针对面向高端的应用,支持基于虚拟内存的操作系统。
二、ARM9微处理器特征
ARM9系列微处理器是目前在我国用得最广泛的、拥有高性价比的一种嵌入式微处理器,其采用了低功耗的32位RISC结构,非常适合应用在要求低成本、低功耗的消费类产品中。
2.1 ARM9的指令流水
ARM920T微处理器的指令流水采用了典型的RISC 5级流水线结构,将指令的处理过程分为取指、译码、执行、访存和写回5个步骤。5级流水线结构采用分离指令缓存和数据缓存的结构,即哈佛结构,将每一条指令处理分配到3个或者5个时钟周期内完成,也就是说,在每一个时钟周期内同时可能有5条指令在处理,消除了指令处理的性能瓶颈,加快了指令处理速度。
2.2 ARM9指令集特点
ARM920T的指令集是基于精简指令集计算机(RISC)原理,RISC指令集计算机机与复杂指令集计算机(CISC)相比较而言,译码机制简单,从而使RISC指令集的微处理器具有以下一些优点:
(1)较高的指令吞吐率。
(2)实时中断响应性能好。
(3)具有体积小、性价比高的处理器宏单元。
2.3 ARM9的工作模式
ARM9微处理器核共支持7种工作模式,在不同的工作模式下,算术运算及逻辑运算等操作所使用的通用寄存器组不同。ARM9处理器核中每组通用寄存器有16个,整个ARM9核共有31个通用寄存器。
处理器模式 | 模式符号 | 意义 |
---|---|---|
用户模式 | Usr | 正常执行程序时的处理器模式 |
系统模式 | Sys | 运行特权操作系统任务时的模式 |
管理模式 | Svc | 操作系统的保护模式 |
中止模式 | Abt | 指令或数据预取操作中止时的模式,该模式下实现虚拟存储器或存储器保护 |
未定义模式 | Und | 当执行未定义的指令时进入该模式 |
IRQ模式 | Irq | 响应普通中断时的处理模式 |
FIQ模式 | Fiq | 响应快速中断时的处理模式 |
7种模式中,对于除用户模式外的其他6种工作模式统称为特权模式,其中,又把管理模式、中止模式、未定义模式、IRQ模式、FIQ模式5种工作模式统称为异常模式。
ARM9微处理器核的工作模式是可以通过软件控制来改变的,而且外部中断信号或系统异常处理也可以使工作模式发生改变。
通常情况下,系统的应用程序是在用户模式下执行。当工作在用户模式下,ARM9微处理器核所执行的程序不能访问呢那些被保护的系统资源,也不能改变为处理器核的工作模式。但是,当系统发生异常时,ARM9微处理器核的工作模式就会改变。
三、ARM9的存储组织结构
3.1 ARM9中的地址特征
ARM9微处理器核的每个地址是对应于一个存储字节而不是一个存储字,但ARM9微处理器核可以访问存储字。访问存储字时,其地址应该是字对准的,即字地址可以被4整除。
ARM9微处理器核中的PC寄存器是32位的,地址通常是无符号的整数形式,因此地址计算时会产生在地址空间中上溢或下溢的情况。若产生地址上溢或下溢,PC寄存器中的值又会从0x00000000开始。
目的地址的计算公式: