文档详情

ARM体系结构概述.DOC

发布:2017-11-12约7.07千字共11页下载文档
文本预览下载声明
GPIO驱动ARM公司自1990年正式成立以来,在32位RISC(Reduced Instruction Set Computer)CPU开发领域不断取得突破,其结构已经从V3发展到V6。目前非常流行的ARM芯核有ARM7TDMIARM720T,ARM9TDMI,ARM920T,ARM940T,ARM926EJ-S,ARM1020EXScale等。从本章开始,将开始走进ARM的世界,领略其独特的魅力。 3.1 ARM体系结构概述 3.1.1 RISC结构 传统的CISC(Complex Instruction Set Computer,复杂指令集计算机)结构有其固有的缺点,即指令结构复杂,指令使用频率却相差悬殊。基于以上的不合理性,1979年美国加州大学伯克利分校提出了RISC(Reduced Instruction Set Computer,精简指令集计算机的概念,RISC并非只是简单地去减少指令,而是把点放在了如何使计算机的结构更加简单合理地提高运算速度上。RISC 结构优先选取使用最高的简单指令,避免复杂指令;将指令长度固定,指令格式和方式种类减少;以控制逻辑为主,不用或少用微码控制等措施来达到上述目的。ARM 体系结构RISC的基本特点: (1)采用固定长度的指令格式使用单周期指令,便于流水线操作执行。 大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/存储指令可以访问存储器,以提高指令的执行效率。 所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。 可用加载/存储指令批量传输数据,以提高数据的传输效率可在一条数据处理指令中同时完成逻辑处理和移位处理在循环处理中使用地址的自动增减来提高运行效率从编程的角度看,ARM微处理器的工作状态一般有两种,并可在两种状态之间切换:第一种为ARM状态,此时处理器执行32位的字对齐的ARM指令;第二种为Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令。ARM ARM 指令集和Thumb 指令集。其中,Thumb 指令集为ARM 指令集的功能子集,比ARM 指令集更节约存储空间。 ARM微处理器的存储器格式大端格式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中小端格式:与大端存储格式相反,在小端存储格式中,低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节存储器格式 int GetEndianness() { short s = 0x0110; char *p = (char *) s; if (p[0] == 0x10) return 0;// 小端格式 else return 1;// 大端格式 } 3.1.2 处理器模式 ARM微处理器支持7种运行模式,分别用户模式():ARM处理器正常的程序执行状态。 快速中断模式():用于高速数据传输或通道处理。 外部中断模式():用于通用的中断处理。 管理模式():操作系统使用的保护模式。 指令终止模式:当指令预取终止时进入该模式。 系统模式():运行具有特权的操作系统任务。 :。用户模式3.1.3 寄存器组织 ARM微处理器ARM状态寄存器组织ARM状态下通用寄存器通用寄存器包括R0~R15,可以分为三类:未分组Unbanked)寄存器R0~R7;分组Banked)寄存器R8~R14程序计数器PCR15)。未分组寄存器在各种模式下是同的分组寄存器在各种模式下是不同的。CPSR(Current Program Status Register,当前程序状态寄存器SPSR(Saved Program Status Register,备份的程序状态寄存器)CPSR可在任何运行模式下被访问SPSR用于保存CPSR的当前值,从异常退出时可由SPSR来恢复CPSR。图3.1和3.2是ARM模式下寄存器。其中带三角的是分组寄存器 图3.1 ARM模式下的通用寄存器 图3.2 ARM模式下的程序状态寄存器程序状态寄存器ALU中的当前操作信息、控制允许和禁止中断、设置处理器的运行模式。图3.3CPSR各位的作用。表3.1模式位M[4:0]的具体含义 图3.3程序状态寄存器CPSR表3.1模式位M[4:0]的具体含义M[4:0] 处理器模式 可访问的寄存器 10000 用户模式 PC,CPSRR0~R14 10001 FIQ 模式 PC,CPSRSPSR_fiq,R14_fiq-R8_fiqR7~R0 10010 IRQ 模式 PC,CPSRSPSR_irq,R14_irqR13_irq,R12~R0 M[4:0] 处理器模式 可访问的寄存器 10011 管理模式 PC,CPSRSPSR_svc,R14_svcR13_sv
显示全部
相似文档