嵌入式系统应用与开发第二章ARM架构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
小知识:RISC体系结构
传统的CISC(Complex Instruction Set Computer,复杂指令集计算机)结构越来越复 杂。在CISC指令集的各种指令中,其使用频率 却相差悬殊,大约有20%的指令会被反复使用 ,占整个程序代码的80%。而余下的80%的指 令却不经常使用,在程序设计中只占20%,显 然,这种结构是不太合理的。
ARM9系列微处理器主要应用于无 线设备、仪器仪表、安全系统、机顶盒 、高端打印机、数字照相机和数字摄像 机等。
ARM9系列微处理器包含ARM920T 、ARM922T和ARM940T三种类型,以适 用于不同的应用场合。
3. ARM9E微处理器系列
ARM9E系列微处理器为可综合处理器, 使用单一的处理器内核提供了微控制器、DSP 、Java应用系统的解决方案,极大的减少了芯 片的面积和系统的复杂程度。ARM9E系列微 处理器提供了增强的DSP处理能力,很适合于 那些需要同时使用DSP和微控制器的应用场合 。
1. V1版架构 该版架构只在原型机ARM1出现过,其基本性
能: ·基本的数据处理指令(无乘法) ·字节、半字和字的LOAD/STORE指令 ·转移指令,包括子程序调用及链接指令 ·软件中断指令 ·寻址空间:64M字节(226)
2. V2版架构 该版架构对V1版进行了扩展,如ARM2与
ARM3(V2a版)架构,增加了以下功能: ·乘法和乘加指令 ·支持协处理器操作指令 ·快速中断模式 ·SWP/SWPB的最基本存储器与寄存器交换指
• 对操作系统的支持广泛,包括Windows CE、 Linux、Palm OS等。
• 指令系统与ARM9系列、ARM9E系列和 ARM10E系列兼容,便于用户的产品升级换代 。
• 主频最高可达130MIPS,高速的运算处理能力 能胜任绝大多数的复杂应用。
ARM7系列微处理器的主要应用领域为: 工业控制、Internet设备、网络和调制解调器设 备、移动电话等多种多媒体和嵌入式应用。
- ARM7系列 - ARM9系列 - ARM9E系列 - ARM10E系列 - SecurCore系列 - Intel的Xscale - Intel的StrongARM
1. ARM7微处理器系列
ARM7系列微处理器为低功耗的32位RISC处 理器,最适合用于对价位和功耗要求较高的消 费类应用。ARM7微处理器系列特点: • 具有嵌入式ICE-RT逻辑,调试开发方便。 • 极低的功耗,适合对功耗要求较高的应用。 • 能够提供0.9MIPS/MHz的三级流水线结构。 • 代码密度高并兼容16位的Thumb指令集。
5.灵活和方便的接口
ARM架构具有协处理器接口,允许接16个 协处理器。
ARM处理器核还具有片上总线OCB的AMBA。 AMBA定义了三组总线:先进高性能总线AHB、 先进系统总线ASB和先进外围总线APB。通过 AMBA来方便扩充各种处理器及I/O,可以把DSP 、其他处理器和I/O(如VART、定时器和接口 等)都集成在一块芯片中。
ARM9系列微处理器主要应用于下一代无 线设备、数字消费品、成像设备、工业控制、 存储设备和网络设备等领域。ARM9E系列微 处理器包含ARM926EJ-S、ARM946E-S和
ARM9E系列微处理器的主要特点如下: •支持DSP指令集,适合于需要高速数字信号处理的场 合。
•5级整数流水线,指令执行效率更高。 •支持32位ARM指令集和16位Thumb指令集。 •支持32位的高速AMBA总线接口
3.多处理器状态模式
ARM可以支持用户、快中断、中断、 管理、中止、系统和未定义等七种处理 器模式,除了用户模式外,其余的均为 特权模式。这也是ARM的特色之一,可以 大大提高ARM处理器的效率。
表2.2 ARM version4 processor modes
4.嵌入式在线仿真调试
ARM架构的处理器芯片都嵌入了在线 仿真ICE—RT逻辑,便于通过了JTAG来仿 真调试ARM架构芯片。另外,在处理器核 中还可以嵌入跟踪宏单元ETM(Embedded Trace Macrocell),用于监控内部总线 ,实时跟踪指令和数据的执行。
•支持VFP9浮点处理协处理器。
•全性能的MMU,支持Windows CE、Linux、 Palm OS等多种主流嵌入式操作系统。
•MPU支持实时操作系统。
•支持数据Cache和指令Cache,具有更高的指令 和数据处理能力。
•主频最高可达300MIPS。
4. ARM10E微处理器系列
ARM10E系列具有高性能、低功耗的特点 ,由于采用了新的体系结构,与同等的ARM9 器件相比较,在同样的时钟频率下,性能提高 了近50%,同时,ARM10E系列微处理器采用 了两种先进的节能方式,使其功耗极低。
嵌入式系统应用与开发第二 章ARM架构
2.1 ARM架构的发展
ARM公司(Advanced RISC Machines Limited)正式成立于1990年。目前,ARM 架构处理器已在高性能、低功耗、低成 本的嵌入式wk.baidu.com用领域占据领先地位,已 占有75%左右的市场。
ARM架构自诞生至今,已经发生了很 大的演变,至今已定义5种不同的版本:
·带有链接和交换的转移BLX指令 ·计数前导零CLZ指令 ·BRK中断指令 ·增加了信号处理指令(V5TE版) ·为协处理器增加更多可选择的指令
2.2 ARM架构的特点
1. RISC(Reduced Instruction Set Computer) 型处 理器结构
• 尽量减少复杂功能指令 • 每条指令在单机器周期内执行 • 每条指令都是32bit,具有多种操作功能 • 访问存储空间指令采用LOAD/STORE结构 • 采用cache来提高存/取速度 • 多寄存器结构
图2.1 ARM架构图
1. ALU算术逻辑运算单元
ALU是处理器核心的中心处理部分, 实现对数据进行运算处理。由二个操作 数锁存器、加法器、逻辑功能、结果及 零检测逻辑构成。
图2.2 ALU逻辑框图
2. Barrel shifter 桶形移位寄存器
为了减少移位的延迟时间,ARM采用 了32×32位的桶形移位寄存器。这样,可 以使左移/右移n位、环移n位和算术右移 n位等都可以一次完成 。
·符号化和非符号化半字及符号化字节的存/取指令
·增加了16位Thumb指令集
·完善了软件中断SWI指令的功能
·处理器系统模式引进特权方式时使用用户寄存器操 作
·把一些未使用的指令空间捕获为未定义指令
5. V5版架构 这是最近推出ARM架构,在V4版基本上增加了
一些新的指令,ARM10和XScale都采用该版架构 ,这些新增指令有:
•支持数据Cache和指令Cache,具有更高的指令和数据处理 能力
•主频最高可达400MIPS。 •内嵌并行读/写操作部件。
2.4 ARM架构
ARM架构由32位ALU、31个32位通用 寄存器及6位状态寄存器、32×8位乘法 器、32×32位桶形移位寄存器、指令译 码及控制逻辑、指令流水线和数据/地址 寄存器组成。
ARM10E系列微处理器主要应用于下一代 无线设备、数字消费品、成像设备、工业控制 、通信和信息系统等领域。包含ARM1020E、 ARM1022E和ARM1026EJ-S三种类型。
ARM10E系列微处理器的主要特点如下: •支持DSP指令集,适合于需要高速数字信号处理的场合。 •6级整数流水线,指令执行效率更高。 •支持32位ARM指令集和16位Thumb指令集。 •支持32位的高速AMBA总线接口。 •支持VFP10浮点处理协处理器。 •全性能的MMU,支持Windows CE、Linux、Palm OS等多 种主流嵌入式操作系统。
ARM7系列微处理器包括如下几种类型的 核:ARM7TDMI、ARM7TDMI-S、ARM720T 、ARM7EJ。
其中ARM7TMDI是目前使用最广泛的32位 嵌入式RISC处理器,属低端ARM处理器核。
内核后缀TDMI的基本含义为: T: 支持16为压缩指令集Thumb; D: 支持片上Debug; M:内嵌硬件乘法器(Multiplier) I: 嵌入式ICE,支持片上断点和调
6.低电压低功耗的设计 ARM架构的设计采用了以下一些措施:
• 降低电源电压,可工作在3.0V以下。 • 减少门的翻转次数,当某个功能电路不
需要时禁止门翻转。 • 减少门的数目,即降低芯片的集成度。 • 降低时钟频率
2.3 ARM的分类
ARM微处理器目前包括下面几个系列,以 及其它厂商基于ARM体系结构的处理器,
图2.3 4×4位桶形移位寄存器示意图
试点;
处理器后缀的含义
S:可综合的软核Softcore
E:具有DSP的功能
J:Jazeller,允许直接执行Java字节码
2. ARM9微处理器系列
ARM9系列微处理器在高性能和低功耗特性方面提 供最佳的性能。具有以下特点: • 5级整数流水线,指令执行效率更高。 • 提供1.1MIPS/MHz的哈佛结构。 • 支持32位ARM指令集和16位Thumb指令集。 • 支持32位的高速AMBA总线接口。 • 全性能的MMU,支持Windows CE、Linux、Palm OS 等多种主流嵌入式操作系统。 • MPU支持实时操作系统。 • 支持数据Cache和指令Cache,具有更高的指令和数据 处理能力。
2. Thumb指令集
由于RISC型处理器的指令功能相对比较弱, ARM为了弥补此不足,在新型ARM架构(V4T版以 上)定义了16位的Thumb指令集。Thumb指令集比 通常的8位和16位CISC/RISC处理器具有更好的代 码密度,而芯片面积只增加6%。可以使程序存储 器更加小。
Thumb指令集为ARM指令集的功能子集,但与 等价的ARM代码相比较,可节省30%~40%以上 的存储空间,同时具备32位代码的所有优点。
令 ·寻址空间:64M字节
3. V3版架构
V3版架构对ARM体系结构作为较大的改动,把寻址空 间增至32位(4G字节),增加了当前程序状态寄存器 CPSR(Current Program Status Register)和程序状态 保存寄存器SPSR(Saved Program Status Register)以 便于异常(Exception)的处理。增加了中止(Abort)和 未定义二种处理器模式。ARM6就采用该版架构。指令 集变化如下:
·增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存 器
·增加了从异常处理返回的指令功能。
4. V4版架构
V4版架构是目前应用最广的ARM体系结构,对V3版架构 进行了进一步扩充,有的还引进了16位的Thumb指令集,使 ARM使用更加灵活。ARM7、ARM8、ARM9和StrongARM都采 用该版架构。指令集中增加了以下功能:
小知识:RISC体系结构(续二)
表2.1 典型指令使用频度
指令类型
使用指令使用频度
数据传送类
43%
转/跳控制类
23%
算术运算类
15%
比较类
13%
逻辑运算类
5%
其他
1%
小知识:RISC体系结构(续三)
1979年美国加州大学伯克利分校提出了 RISC(Reduced Instruction Set Computer,精简 指令集计算机)的概念,RISC并非只是简单地 去减少指令,而是把着眼点放在了如何使计算 机的结构更加简单合理地提高运算速度上。 RISC结构优先选取使用频最高的简单指令,避 免复杂指令;将指令长度固定,指令格式和寻 地方式种类减少;以控制逻辑为主,不用或少 用微码控制等措施来达到上述目的。
小知识:RISC体系结构(续四)
RISC体系结构应具有如下特点: • 采用固定长度的指令格式,指令归整、简单、
基本寻址方式有2~3种。 • 使用单周期指令,便于流水线操作执行。 • 大量使用寄存器,数据处理指令只对寄存器进
行操作,只有加载/ 存储指令可以访问存储器 ,以提高指令的执行效率。
现代的CPU往往采用CISC的外围,内部加 入了RISC的特性,如超长指令集CPU就是融合 了RISC和CISC的优势,成为未来的CPU发展 方向之一。