ARM体系结构.ppt
1,ARM体系结构,广嵌教育,2,ARM体系结构,嵌入式微处理器介绍ARM处理器的特点ARM处理器工作模式ARM寄存器ARM的异常中断ARM的存储体系,3,嵌入式系统的硬件组成,电源模块,时钟模块,复位电路,外围电路,微处理器MPU,Flash,SDRAM,JTAG,外设,USB,LCD,键盘,其他,通信模块,4,嵌入式微处理器的种类-概述,嵌入式系统上的处理器单元称为嵌入式微处理器。嵌入式微处理器是嵌入式系统硬件的核心、运行嵌入式系统的系统软件和应用软件。嵌入式微处理器含有:处理器内核地址总线数据总线控制类总线处理器本身的辅助支持电路,如时钟、复位电路等片上I/O接口电路,5,嵌入式微处理器的种类,嵌入式微处理器内核:MIPS Core:只设计内核的一家美国公司ARM Core:只设计内核的一家英国公司PowerPC Core:IBM&Motorola&apple68K/ColdFire:MotorolaX86 Core:Intel公司,6,ARM处理器的特点,ARM的含义:英文缩写为Advanced RISC Machine。ARM是一种通用的32位RISC处理器。32位是指处理器的数据总线是32位的,相比16位的同频处理器性能更加强大。RISC是一种指令集,也指采用该指令集的处理器,英文缩写:Reduced Instruction Set Computer,代码效率高。ARM是一种功耗很低的高性能处理器。例如:ARM7TDMI具有每瓦产生690MIPS的能力,已被证明在工业界处于领先水平。,7,ARM处理器的特点,ARM公司并不生产芯片,而是将ARM的技术授权给其它公司生产芯片。ARM本质上并不是一种芯片,而是一种芯片结构技术,不涉及到芯片生产工艺。授权生产ARM芯片的公司采用不同的半导体技术,面对不同的应用进行扩展和集成,标有不同系列号。ARM是一种可扩展、可移植、可集成的处理器。,8,ARM处理器的特点,体积小、低功耗、低成本、高性能;支持 Thumb(16 位)和ARM(32 位)双指令集;大量使用寄存器,指令执行速度更快;大多数数据操作都在寄存器中完成;寻址方式灵活简单,执行效率高;指令长度固定;对操作系统的支持广泛。,9,ARM处理器的应用领域,嵌入式控制汽车、电子设备、保安设备、大容量存储器、调制解调器、打印机。数字消费产品数码相机、数字式电视机、游戏机、GPS、机顶盒、MP4。便携式产品手提式计算机、移动电话、PDA、灵巧电话网络设备VOIP、Wireless、xDSL注:2002年度,ARM占微处理器市场的78.5,200多家半导体厂商买了ARM内核,80以上的GSM手机采用ARM微处理器,99的CDMA手机采用ARM微处理器。,10,ARM处理器系列,ARM7 系列 ARM9 系列 ARM9E 系列 ARM10E 系列 SecurCore 系列 Intel 的 Xscale Intel 的 StrongARM,11,ARM处理器工作状态,ARM状态。32位,ARM状态下执行字对齐的32位ARM指令。Thumb状态。16位,Thumb状态下执行半字对齐的16位Thumb指令。在程序执行的过程中,处理器可在2中状态下切换。切换时不影响处理器的模式国寄存器的内容。两种指令集有相应的状态切换命令。ARM处理器开始执行代码的时候,只能处于ARM状态,12,ARM处理器工作模式,ARM微处理器支持7种工作模式 用户模式(usr):ARM的正常运行模式,通常用来执行一般的应用程序。快速中断模式(fiq):由外部触发,用于高速数据传输或通道处理。外部中断模式(irq):由外部触发,用于一般的外部中断处理。管理模式(svc):操作系统使用的保护模式。中止模式(abt):数据或者指令预取指出现错误或者异常时进入该模式,用于虚拟内存或存储保护。系统模式(sys):运行具有特权的操作系统任务。未定义模式(und):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。除了用户模式外,其他模式均可视为特权模式,13,ARM处理器工作模式,改变ARM处理器工作模式的方法:软件改变,改变CPSR4:0位外部中断响应异常处理,14,ARM寄存器,ARM总共有37个寄存器,31个通用寄存器,和6个状态寄存器,但并不是同时可见的。R0R7:未分组寄存器。R8R14:分组寄存器。R15:程序计数器PC。R13(SP):在ARM中常用作堆栈指针,应用程序初始化 R13,使其指向异常模式专用的堆栈。R14(LR):link register,放置当前子程序返回地址或异常模式返回地址。R15:Program Counter(PC)CPSR(Current Program Status Register)当前程序状态寄存器。SPSR(Saved Program Status Register)备份程序状态寄存器,SPSR用于在程序异常中断时保存被中断的程序状态,15,ARM寄存器,16,关于PSR寄存器,PSR分为CPSR和SPSR,它们的格式相同。NZVC:指令作运算时的标志位。IFT:I=1禁止IRQ,F=1禁止FIQ,T=1执行thumb指令。Mode bits User:10000 Abort:10111 FIQ:10001 Undefined:11011 IRQ:10010 System:11111 Supervisor:10011,17,运行模式位M4:0的具体含义,18,条件码标志的具体含义,19,ARM的异常中断,复位(reset):当处理器的复位引脚有效时,系统产生复位中断,程序跳到中断处理程序处执行。复位中断发生的情况:系统加电时系统复位时跳转到复位中断向量处(0 x00000000)未定义指令(undefined instruction):当ARM处理器或者是系统中的协处理器认为当前指令未定义时,产生未定义的指令异常处理。软件中断(software interrupt):有用户定义的中断指令,在实时操作系统中可以通过该机制实现系统功能的调用。,20,ARM的异常中断,指令预取中止(prefech abort):如果处理器预取的指令的地址不存在,或者该地址不允许当前指令访问,处理器产生指令预取中止异常处理。数据访问中止(data Abort):如果数据访问指令的目标地址不存在,或者该地址不允许当前指令访问,处理器产生数据访问中止异常处理。外部中断请求(IRQ):当处理器的外部中断请求引脚有效,而且CPSR寄存器的I控制位被清除时,处理器产生外部中断请求(IRQ)异常处理。快速中断请求(FIQ):当处理器的外部快速中断请求引脚有效,而且CPSR寄存器的F控制位被清除时,处理器产生快速中断请求(FIQ)异常处理。,21,ARM的异常中断,22,ARM的存储体系,存储器格式Little Endian format 低位字节存放在低地址 如:0 x12345678在 存储器中的存储顺序如 图所示。,23,ARM的存储体系,存储器格式 Big Endian format 高位字节存放在低地址 如:0 x12345678在 存储器中的存储顺序如 图所示,24,ARM片上总线,AMBAAdvanced Microcontroller Bus Architecture(先进的微控制器总线体系结构)AMBA总线定义3种规范AHBAdvanced High-performance Bus:用于连接高性能、高吞吐量的系统模块,如:CPU、DMA和DSP。它支持突发数据传输方式及单个数据传输方式,所有的时序都以单一时钟沿为基准。ASBAdvanced System Bus:是一种微处理器和系统外设的高性能互联总线。APBAdvanced Peripheral BUS:外围互联总线,其特点是易于使用和低功耗。适合于微处理器、存储器和具有复杂内建接口的外围宏单元。,25,The endThank you,