[计算机硬件及网络]arm体系结构.ppt_第1页
[计算机硬件及网络]arm体系结构.ppt_第2页
[计算机硬件及网络]arm体系结构.ppt_第3页
[计算机硬件及网络]arm体系结构.ppt_第4页
[计算机硬件及网络]arm体系结构.ppt_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2 ARM体系结构,ARM简介,ARM公司简介,ARM是Advanced RISC Machines的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC (精简指令集)处理器。 公司的特点是只设计芯片,而不生产。它将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供服务。,1 ARM简介,ARM公司简介,将技术授权给其它芯片厂商,形成各具特色的ARM芯片,ARM的发展历程,ARM即Advanced RISC Machines的缩写。 1985年4月26日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生,由美国加州San Jose VLSI技术公司制造。 20世纪80年代后期,ARM很快开发成Acorn的台式机产品,形成英国的计算机教育基础。 1990年成立了Advanced RISC Machines Limited。,ARM的发展历程,20世纪90年代,ARM32位嵌人式RISC(Reduced Instruction Set Computer)处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。 32位RISC处理器受到青睐,领先的是ARM嵌入式微处理器系列。 ARM公司虽然只成立10多年,但在1999年因移动电话火爆市场,其32位RISC处理器占市场份额超过了50%,2001年初,ARM公司的32位RISC处理器市场占有率超过了75%。ARM公司是知识产权供应商,是设计公司。由合作伙伴公司来生产各具特色的芯片。,ARM的发展历程,ARM公司商业模式的强大之处在于其价格合理,全世界范围有超过100个合作伙伴-包括半导体工业的著名公司。ARM公司专注于设计,其内核耗电少、成本低、功能强,特有16/32位双指令集。ARM已成为移动通信、手持计算、多媒体数字消费等嵌入式解决方案的RISC标准。 在所有ARM处理器系列中,ARM7处理器系列应用最广,采用ARM7处理器作为内核生产芯片的公司最多。,ARM处理器的特点,ARM处理器的3大特点如下: 小体积、低功耗、成本低、高性能; 16位/32位双指令集; 全球众多的合作伙伴。 当前ARM体系结构的扩充包括: Thumb:16位指令集,用以改善代码密度; DSP:用于DSP应用的算术运算指令集; Jazeller:允许直接执行Java代码的扩充。 ARM处理器系列提供的解决方案包括: 在无线、消费电子和图像应用方面的开放平台; 存储、自动化、工业和网络应用的嵌入式实时系统; 智能卡和SIM卡的安全应用。,ARM处理器的特点,ARM处理器本身是32位设计,但也配备16位指令集,以允许软件编码为更短的16位指令。与等价的32代码相比,占用的存储器空间节省高达35%,然而保留了32位系统所有的优势。 ARM还提供了两个前沿特性嵌入式ICERT逻辑和嵌入式跟踪宏核系列,用以辅助带深嵌入式处理器核的、高集成的SOC器件的调试。 ARM业界领先的跟踪解决方案嵌入式跟踪宏单元(ETM,Embeddeb Trace Macrocell),被设计成驻留在ARM处理器上,用以监控内部总线,并能以该速度无妨碍地跟踪指令和数据的访问。,ARM简介,ARM处理器的应用 当前主要应用于消费类电子领域; 到目前为止,基于ARM技术的微处理器应用约占据了32位嵌入式微处理器75以上的市场份额 全球80%的GSM/3G手机、99%的CDMA手机以及绝大多数PDA产品均采用ARM体系的嵌入式处理器, “掌上计算”相关的所有领域皆为其所主宰。 ARM技术正在逐步渗入到我们生活的各个方面。,ARM简介,ARM体系结构,ARM处理器为RISC芯片,其简单的结构使ARM内核非常小,这使得器件的功耗也非常低。它具有经典RISC的特点:,ARM简介,ARM体系结构,ARM体系结构的特点:,ARM简介,各ARM体系结构版本,ARM体系结构从最初开发到现在有了很大的改进,并仍在完善和发展。为了清楚的表达每个ARM应用实例所使用的指令集,ARM公司定义了6种主要的ARM指令集体系结构版本,以版本号V1V6表示。,ARM简介,各ARM体系结构版本V1,该版本的ARM体系结构,只有26位的寻址空间,没有商业化,其特点为: 基本的数据处理指令(不包括乘法); 字节、字和半字加载/存储指令; 具有分支指令,包括在子程序调用中使用的分支和链接指令; 在操作系统调用中使用的软件中断指令。,ARM简介,各ARM体系结构版本V2,同样为26位寻址空间,现在已经废弃不再使用,它相对V1版本有以下改进: 具有乘法和乘加指令; 支持协处理器; 快速中断模式中的两个以上的分组寄存器; 具有原子性加载/存储指令SWP和SWPB。,ARM简介,各ARM体系结构版本V3,寻址范围扩展到32位(目前已废弃),具有独立的程序: 具有乘法和乘加指令; 支持协处理器; 快速中断模式中具有的两个以上的分组寄存器; 具有原子性加载/存储指令SWP和SWPB。,ARM简介,各ARM体系结构版本V4,不在为了与以前的版本兼容而支持26位体系结构,并明确了哪些指令会引起未定义指令异常发生,它相对V3版本作了以下的改进: 半字加载/存储指令; 字节和半字的加载和符号扩展指令; 具有可以转换到Thumb状态的指令(BX); 增加了用户模式寄存器的新的特权处理器模式。,ARM简介,各ARM体系结构版本V5,在V4版本的基础上,对现在指令的定义进行了必要的修正,对V4版本的体系结构进行了扩展并并增加了指令,具体如下: 改进了ARM/Thumb状态之间的切换效率; E-增强型DSP指令集,包括全部算法操作和16位乘法操作; J-支持新的JAVA,提供字节代码执行的硬件和优化软件加速功能。,3.1 ARM简介,ARM处理器核简介,ARM公司开发了很多系列的ARM处理器核,目前最新的系列已经是ARM11了,而ARM6核以及更早的系列已经很罕见了。目前应用比较广泛的系列是:,ARM7,ARM9,ARM9E,ARM10,SecurCore,Xscale,ARM11,Cortex,ARM简介,ARM简介,ARM简介,ARM简介,ARM简介,ARM简介,典型的ARM处理器核产品,ARM7 SamSung 公司的: S3C4510、S3C44B0 Cirrus Logic 公司的:EP7211 、EP7212、EP7312 Atmel 公司的:At91M40800、 At91R40807 Piliph公司的:LPC2104/05/06 LinkUp Systems 公司的ARM 系列: L7200 、L7205 NetSilicon 公司的: NET+15/40/50 Triscend 公司的: TA7S12,典型的ARM处理器核产品,ARM9 SamSung 公司的: S3C2410 Cirrus Logic 公司的: EP9312 Atmel 公司的: AT91RM9200 ARM10 Intel的StrongARM 的系列: Xscale(PXA250255),ARM微处理器体系结构,数据类型 ARM微处理器的工作状态 ARM体系结构的存储器格式 处理器模式 寄存器组织 ARM状态下的寄存器组织 Thumb状态下的寄存器组织,数据类型,ARM处理器支持以下数据类型: 字节(Byte):各种处理器体系结构中,字节的长度均为8位。 半字(Half-Word):半字的长度为16位,与8位/16位处理器体系结构中字的长度一致。 字(Word):字的长度为32位,而在8位/16位处理器体系结构中,字的长度一般为16位,请注意区分。,ARM微处理器的工作状态,从编程的角度看,ARM微处理器的工作状态一般有两种,并可在两种状态之间切换: ARM状态,此时处理器执行32位的字对齐的ARM指令; Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令。,ARM微处理器的工作状态,ARM处理器在两种工作状态之间可以切换: 进入Thumb状态。 当操作数寄存器的状态位(位0)为1时,执行BX指令进入Thumb状态。如果处理器在Thumb状态进入异常,则当异常处理(IRQ、FIQ、Undef、Abort 和 SWI)返回时,自动转换到Thumb状态。 进入ARM状态。 当操作数寄存器的状态位(位0)为0时,执行BX指令进入ARM状态。处理器进行异常处理(IRQ、FIQ、Reset、Undef、Abort 和 SWI ARM状态执行)。在此情况下,把PC 放人异常模式链接寄存器中。从异常向量地址开始执行也可以进入ARM状态。,ARM体系结构的存储器格式,ARM体系结构将存储器看作是从零地址开始的字节的线性组合。 从零字节到三字节放置第一个存储的字数据,从第四个字节到第七个字节放置第二个存储的字数据,依次排列。 作为32位的微处理器,ARM体系结构所支持的最大寻址空间为4GB。 ARM体系结构可以用两种方法存储字数据,称为大端格式和小端格式,具体说明如下。,ARM体系结构的存储器格式,大端格式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。, 位,大端模式,字地址 8 4 0,ARM体系结构的存储器格式,小端格式:与大端存储格式相反,在小端存储格式中,低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。, 位,小端模式,字地址 8 4 0,处理器模式,ARM体系结构支持7种处理器模式,分别为:用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式。这样的好处是可以更好的支持操作系统并提高工作效率。,处理器模式,处理器模式,特权模式,除用户模式外,其它模式均为特权模式。ARM内部寄存器和一些片内外设在硬件设计上只允许(或者可选为只允许)特权模式下访问。此外,特权模式可以自由的切换处理器模式,而用户模式不能直接切换到别的模式。,处理器模式,异常模式,这五种模式称为异常模式。它们除了可以通过程序切换进入外,也可以由特定的异常进入。当特定的异常出现时,处理器进入相应的模式。每种异常模式都有一些独立的寄存器,以避免异常退出时用户模式的状态不可靠。,处理器模式,用户和系统模式,这两种模式都不能由异常进入,而且它们使用完全相同的寄存器组。 系统模式是特权模式,不受用户模式的限制。操作系统在该模式下访问用户模式的寄存器就比较方便,而且操作系统的一些特权任务可以使用这个模式访问一些受控的资源。,处理器启动时的模式转换图,管理模式SVC (Supervisor),多种特权模式变化,用户程序的运行模式,复位后 缺省模式,主要完成各模式的堆栈设置,注意不要进入用户模式,一般为用户模式User,寄存器组织,ARM处理器有37(31+6)个物理寄存器,有18个可编程访问的寄存器。 寄存器被安排成部分重叠的组。在不同的工作模式和处理器状态下,程序员可以访问的寄存器也不尽相同。 分组的寄存器在处理处理器异常和特权操作时可得到快速的上下文切换。,SPSR_fiq,SPSR_irq,SPSR_und,SPSR_abt,SPSR_svc,无,SPSR,CPSR,CPSR,状态寄存器,R15,R15(PC),R14_fiq,R14_irq,R14_und,R14_abt,R14_svc,R14,R14(LR),R13_fiq,R13_irq,R13_und,R13_abt,R13_svc,R13,R13(SP),R12_fiq,R12,R12(IP),R11_fiq,R11,R11(FP,v8),R10_fiq,R10,R10(SL,v7),R9_fiq,R9,R9(SB,v6),R8_fiq,R8,R8(v5),R7,R7(v4),R6,R6(v3),R5,R5(v2),R4,R4(v1),R3,R3(a4),R2,R2(a3),R1,R1(a2),R0,R0(a1),通用寄存器和程序计数器,快中断,中断,未定义,中止,管理,系统,用户,各模式下实际访问的寄存器,寄存器在汇编中的名称,寄存器类别,ARM状态各模式下的寄存器,ARM状态各模式下的寄存器,所有的37个寄存器,分成两大类: 31个通用32位寄存器; 6个状态寄存器。,ARM状态各模式下可以访问的寄存器,一般的通用寄存器,在汇编语言中寄存器R0R13为保存数据或地址值的通用寄存器。它们是完全通用的寄存器,不会被体系结构作为特殊用途,并且可用于任何使用通用寄存器的指令。,一般的通用寄存器,其中R0R7为未分组的寄存器,也就是说对于任何处理器模式,这些寄存器都对应于相同的32位物理寄存器。,一般的通用寄存器,寄存器R8R14为分组寄存器。它们所对应的物理寄存器取决于当前的处理器模式,几乎所有允许使用通用寄存器的指令都允许使用分组寄存器,一般的通用寄存器,寄存器R8R12有两个分组的物理寄存器。一个用于除FIQ模式之外的所有寄存器模式,另一个用于FIQ模式。这样在发生FIQ中断后,可以加速FIQ的处理速度。,一般的通用寄存器,寄存器R13、R14分别有6个分组的物理寄存器。一个用于用户和系统模式,其余5个分别用于5种异常模式。,堆栈指针寄存器R13(SP),寄存器R13常作为堆栈指针(SP)。在ARM指令集当中,没有以特殊方式使用R13的指令或其它功能,只是习惯上都这样使用。但是在Thumb指令集中存在使用R13的指令。,链接寄存器R14(LR),R14为链接寄存器(LR),在结构上有两个特殊功能: 在每种模式下,模式自身的R14版本用于保存子程序返回地址; 当发生异常时,将R14对应的异常模式版本设置为异常返回地址(有些异常有一个小的固定偏移量)。,程序计数器R15(PC),寄存器R15为程序计数器(PC),它指向正在取指的地址。可以认为它是一个通用寄存器,但是对于它的使用有许多与指令相关的限制或特殊情况。如果R15使用的方式超出了这些限制,那么结果将是不可预测的。,程序状态寄存器CPSR,寄存器CPSR为程序状态寄存器,在异常模式中,另外一个寄存器“程序状态保存寄存器(SPSR)”可以被访问。每种异常都有自己的SPSR,在因为异常事件而进入异常时它保存CPSR的当前值,异常退出时可通过它恢复CPSR。,Thumb状态各模式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论