第2章 ARM体系结构
2.1 ARM体系结构简介
ARM(Advanced RISC Machines)公司1991年成立于英国剑桥,
是专门从事基于RISC技术芯片设计开发的公司,主要出售芯片设
计技术的授权,作为知识产权供应商,本身不直接从事芯片生产
,靠转让设计许可由合作公司生产各具特色的芯片,半导体生产
商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应
用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯
片进入市场。目前,全世界有几十家大的半导体公司都使用ARM
公司的授权,使得ARM技术获得了更多的第三方工具、制造、软
件的支持,又使整个系统成本降低,使产品更容易进入市场,更
具有竞争力。目前,ARM微处理器几乎已经深入到工业控制、无
线通讯、网络应用、消费类电子产品、成像和安全产品各个领域
采用RISC架构的ARM微处理器一般具有如下特点:
● 支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8
位/16位器件。Thumb指令集比通常的8位和16位CISC/RISC处理
器具有更好的代码密度;
● 指令执行采用3级流水线/5级流水线技术;
● 带有指令Cache和数据Cache,大量使用寄存器,指令执行速度更快。
大多数数据操作都在寄存器中完成。寻址方式灵活简单,执行效率高。
指令长度固定(在ARM状态下是32位,在Thumb状态下是16位);
● 支持大端格式和小端格式两种方法存储字数据;
● 支持Byte(字节,8位)、Halfword(半字,16位)和Word(字,32
位)三种数据类型。
● 支持用户、快中断、中断、管理、中止、系统和未定义等7种处理器
模式,除了用户模式外,其余的均为特权模式;
● 处理器芯片上都嵌入了在线仿真ICE-RT逻辑,便于通过JTAG来仿真调
试ARM体系结构芯片,可以避免使用昂贵的在线仿真器。另外,在处理
器核中还可以嵌入跟踪宏单元ETM,用于监控内部总线,实时跟踪指令
和数据的执行;
具有片上总线AMBA(Advanced Micro-controller Bus Architecture)。
AMBA定义了3组总线:先进高性能总线AHB(Advanced High
performance Bus);先进系统总线ASB(Advanced System Bus
);先进外围总线APB(Advanced Peripheral Bus)。通过AMBA
可以方便地扩充各种处理器及I/O,可以把DSP、其他处理器和
I/O(如UART、定时器和接口等)都集成在一块芯片中;
● 采用存储器映像I/O的方式,即把I/O端口地址作为特殊的存储
器地址;
● 具有协处理器接口。ARM允许接16个协处理器,如CP15用于
系统控制,CP14用于调试控制器;
● 采用了降低电源电压,可工作在3.0V以下;减少门的翻转次数
,当某个功能电路不需要时禁止门翻转;减少门的数目,即降低
芯片的集成度;降低时钟频率等一些措施降低功耗;
● 体积小、低成本、高性能。
ARM微处理器包括ARM7、ARM9、ARM9E、ARM10E、SecurCore
、以及Intel的StrongARM、XScale和其它厂商基于ARM体系结构
的
处理器,除了具有ARM体系结构的共同特点以外,每一个系列的
ARM微处理器都有各自的特点和应用领域。
一个典型的ARM体系结构方框图如图2.1.1所示,包含有32位ALU
、31个32位通用寄存器及6位状态寄存器、32×8位乘法器32×32
位桶形移位寄存器、指令译码及控制逻辑、指令流水线和数据/
地址寄存器等。