嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构

上传人:E**** 文档编号:89557201 上传时间:2019-05-27 格式:PPT 页数:138 大小:1.15MB
返回 下载 相关 举报
嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构_第1页
第1页 / 共138页
嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构_第2页
第2页 / 共138页
嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构_第3页
第3页 / 共138页
嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构_第4页
第4页 / 共138页
嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构_第5页
第5页 / 共138页
点击查看更多>>
资源描述

《嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构》由会员分享,可在线阅读,更多相关《嵌入式系统原理与设计 教学课件 ppt 作者 蒋建春 主编 第4章 ARM嵌入式微处理器体系结构(138页珍藏版)》请在金锄头文库上搜索。

1、嵌入式系统原理与设计 第四讲 ARM嵌入式处理器的体系结构,本节提要,1,3,2,6,4,ARM处理器体系结构,ARM处理器工作模式,S3C44B0X简介,ARM中断处理,ARM系统启动过程,5,ARM 微处理器的指令系统,4.1.1 ARM处理器概述,ARMAdvanced RISC Machines ARM32位RISC结构IP核提供商,ARM即Advanced RISC Machines的缩写。 1985年4月26日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生。 20世纪80年代后期,ARM很快开发成Acorn的台式机产品,形成英国的计算机教育基础。 1990年成立了Adv

2、anced RISC Machines Limited。 20世纪90年代,ARM32位嵌人式RISC(Reduced Instruction Set Computer)处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。,ARM的发展历程-1,32位RISC处理器受到青睐,领先的是ARM嵌入式微处理器系列. ARM公司虽然只成立20多年,但在1999年因移动电话火爆市场,其32位RISC处理器占市场份额超过了50%,2001年初,ARM公司的32位RISC处理器市场占有率超过了75%。ARM公司是知识产权供应商,是设计公司。由合作伙伴公司来生产各具特色的芯片。,

3、ARM的发展历程-2,1991 - ARM 推出第一款RISC嵌入式微处理器核 ARM6 1993 - ARM 推出 ARM7 核 1995 ARM的Thumb扩展指令集结构为16位系统增加了32位的性能,提供业界领先的代码密度,ARM的发展历程-3,ARM处理器的3大特点如下: 小体积、低功耗、成本低、高性能; 16位/32位双指令集; 全球众多的合作伙伴。 ARM处理器系列提供的解决方案包括: 在无线、消费电子和图像应用方面的开放平台; 存储、自动化、工业和网络应用的嵌入式实时系统 智能卡和SIM卡的安全应用。,ARM处理器的特点,ARM体系结构版本 - 1,Version 1 (obso

4、lete) 基本数据处理 字节,字以及多字 load/store 软件中断 26 bit 地址总线 Version 2 (obsolete) Multiply & Multiply-accumulate 支持协处理器 支持线程同步 26 bit 地址总线,ARM体系结构版本 - 2,V3版本推出32位寻址能力,结构扩展变化为 T16位压缩指令集 M增强型乘法器,产生全64位结果(32X3264or32X32+64 64) V4版本增加了半字load和store指令 V5版本改进了ARM和Thumb之间的交互,结构扩展变化为: E-增强型DSP指令集,包括全部算法操作和16位乘法操作 J-支持新

5、的JAVA,提供字节代码执行的硬件和优化软件加速功能,ARM 体系结构更新,ARM微处理器的应用领域,工业控制领域 无线通讯领域 网络应用 消费电子产品 成像和安全产品,在ARM处理器内核中有多个功能模块可供生产厂商根据不同用户的不同要求来配置生产。这些模块分别用T、D、M、I、E、J、S等来表示,这些模块一般从处理器的内核版本上可以区分出来。 T:表示支持Thumb指令,说明该内核可从16位Thumb指令集扩充到32位ARM指令集。 D:表示支持Debug,说明该内核中放置了用于调试的结构,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而方便地进行断点设置、单步调试。 M:表示M

6、ultiplier,说明处理器内部带有8位乘法器。 I:表示Embedded ICE Logic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP控制器可接入到边界扫描链。 除了以上一些特性外,ARM处理器内核中还有一些处理器内核带EJ-S模块。 E:表示DSP Enhancement,即增加了前导零处理和饱和运算等一些常用的DSP运算指令,极大地改善音、视频处理程序的性能。 J:表示Jazelle DBX(Direct Bytecode eXecution),这是ARM公司推出的Java加速解决方案。Jazelle不是一个简单的加速硬件,它是融入于处理器流水线之中的一项专门针对Java

7、指令执行的硬件功能,使得CPU可以直接接收一部分Java指令,并加以译码执行。,4.1.2 ARM内核种类分类,1.ARM7系列 ARM7处理器采用了ARMV4T(冯诺依曼)体系结构 分为三级流水,空间统一的指令与数据Cache,平均功耗为0.6mW/MHz,时钟速度为66MHz,每条指令平均执行1.9个时钟周期。其中的ARM710,ARM720和ARM740为内带Cache的ARM核。 ARM7体系结构是小型、快速、低能耗、集成式的RISC内核结构。 该产品的典型用途是数字蜂窝电话和硬盘驱动器 主流的ARM7内核是ARM7TDMI、ARM7TDMI-S、ARM7EJ-S、ARM720T 常用

8、的有Samsung公司的S3C44BOX与S3C4510处理器、Atmel公司的AT91FR40162系列处理器、Cirrus公司的EP73xx系列等,2.ARM9系列 ARM9处理器采用ARMV4T(哈佛)体系结构 ARM9采用五级流水处理及分离的Cache结构,平均功耗为0.7mW/MHz。时钟速度为120MHz200MHz,每条指令平均执行1.5个时钟周期 与ARM7处理器系列相似,其中的ARM920、ARM940和ARM9E处理器均为含有Cache的CPU核,性能为132MIPS(120MHz时钟,3.3V供电)或220MIPS(200MHz时钟) 常用于无线设备、仪器仪表、联网设备、

9、机顶盒设备、高端打印机及数码相机应用中 主流的ARM9内核是ARM920T、ARM922T、ARM940 Samsung公司的S3C2510、 S3C2410 ,Cirrus公司的EP93xx系列等,3.ARM10E系列 ARM10E处理器采用ARMVST体系结构 可以分为六级流水处理,采用指令与数据分离的Cache结构,平均功耗1000mW,时钟速度为300MHz,每条指令平均执行1.2个时钟周期 其系统时钟高达300MHz时钟,指令Cache和数据Cache分别为32KB,数据宽度为64位 能够支持多种商用操作系统,适用于下一代高性能手持式因特网设备及数字式消费类应用 主流的ARM10内核

10、是ARM1020E、ARM1022E、ARM1026EJ-S等,4SecurCore处理器 SecurCore系列处理器提供了基于高性能的32位RISC技术的安全解决方案,该系列处理器具有体积小、功耗低、代码密度大和性能高等特点。 采用软内核技术,以提供最大限度的灵活性,以及防止外部对其进行扫描探测,提供面向智能卡的和低成本的存储保护单元MPU,可以灵活地集成用户自己的安全特性和其他的协处理器 目前含有SC100、SC110、SC200、SC210 4种产品。,5.Intel的StrongARM 采用ARMV4T的五级流水体系结构。 目前有SA110、SA1100、SA1110等3个版本。 另

11、外Intel公司的基于ARMv5TE体系结构的XScale PXA27x系列处理器,与StrongARM相比增加了I/D Cache,并且加入了部分DSP功能,更适合于移动多媒体应用。 目前市场上的大部分智能手机的核心处理器就是XScale系列处理器。,6. ARM11系列 ARM11处理器系列可以在使用130nm代工厂技术、小至2.2mm2芯片面积和低至0.24mW/MHz的前提下达到高达500MHz的性能表现。 ARM11处理器系列以众多消费产品市场为目标 主要的ARM11处理器有ARM1136JF-S、ARM1156T2F-S、ARM1176JZF-S、ARM11 MCORE等多种。,这

12、里对各类处理器核的ARM流水线做一下对比,表4-1 ARM处理器分类,本节提要,1,3,2,6,4,ARM处理器体系结构,ARM处理器工作模式,S3C44B0X简介,ARM中断处理,ARM系统启动过程,5,ARM 微处理器的指令系统,4.2.1 ARM和Thumb状态,ARM体系结构在V4T及其以上版本定义了称为Thumb指令集的16位指令集。Thumb指令集的功能是32位ARM指令集的功能子集。 正在执行Thumb指令集的处理器是工作在Thumb状态下的。同样,正在执行ARM指令集的处理器是工作在ARM状态下。ARM状态下的处理器不能执行Thumb指令,在Thumb状态下的处理器也不能执行A

13、RM指令。必须确保处理器不接受对当前状态来说为错误指令集的指令。每个指令集都包括切换处理器状态的指令。ARM处理器总是在ARM状态下开始执行代码。,THUMB指令集 ( T) THUMB 指令集: 32位ARM指令集的子集,按16位指令重新编码 代码尺寸小 ( up to 40 % compression) 简化设计 THUMB指令的特点: 1、THUMB代码所需空间为ARM代码的70%; 2、THUMB代码所使用的指令数比ARM代码多40%; 3、用32位存储器,ARM代码比THUMB代码快40%; 4、用16位存储器,THUMB代码比ARM代码快45%; 5、使用THUMB代码,外部存储器

14、功耗比ARM代码少30%,4.2.2 ARM处理器模式,除了用户模式以外,其他6种处理器模式可以称为特权模式,在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式的切换。其中除了系统模式外的其他5种特权模式又称为异常模式。,ARM处理器运行模式,ARM寄存器介绍,通用寄存器通常又可以分为下面3类。 未备份寄存器:包括R0R7。 备份寄存器:包括R8R14。 程序计数器PC:即R15。 1. 未备份寄存器R0R7 对于每个未备份寄存器来说,在所有的处理器模式下指的都是同一个物理寄存器,在异常中断造成处理器模式切换时,由于不同的处理器模式使用相同的物理寄存器,可能造成寄存器中数据被

15、破坏。未备份寄存器没有被系统用于特别的用途,任何可采用通用寄存器的应用场合都可以使用未备份寄存器。,2. 备份寄存器R8R14 备份寄存器中的每个寄存器对应于两个不同的物理寄存器。 对于备份寄存器R13、R14来说,每个寄存器对应于6个不同的物理寄存器,其中的一个是用户模式和系统模式共用的,另外的5个则对应于其他5种处理器模式,采用下面的方法来标识。 寄存器R14又被称为连接寄存器(LR),在ARM中有下面两种特殊用途。 每一种处理器模式在自己的物理R14中存放当前子程序的返回地址。当通过BL或者BLX指令调用子程序时,R14被设置成该子程序的返回地址。在子程序中,当把R14的值复制到程序计数

16、器PC中时,就实现了子程序返回。具体的汇编调用方式是:MOV PC,LR或BX LR。 当发生异常中断的时候,该模式下的特定物理R14被设置成该异常模式将要返回的地址。,3. 程序计数器PCR15: 由于ARM处理器采用的是流水线机制,当正确地读取了PC值时,该值为当前指令地址值加8字节。也就是说对于ARM指令来说,PC指向当前指令的下两条指令的地址,由于ARM指令是字对齐的,PC值的第0位和第1位总是为0。 当成功地向PC写入一个地址数值时,程序将跳转到该地址执行。,4. 程序状态寄存器(PSR) CPSR(当前程序状态寄存器)可以在任何处理器模式下被访问。每一种模式下都有一个专用的物理状态寄存器,称为SPSR(备份程序状态寄存器)。当特定的异常中断发生时,这个寄存器用于存放当前程序状态寄存器的内容。在异常退出时,可以用SPSR中保存的值来恢复CPSR。,1)条件标志位 N(Negative)、Z(Zero)、C(Carry)及V(oVerflow)统称为条件标志位。,2)Q标志位 在ARM

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号