ARM技术与ARM体系结构.ppt

上传人:max****ui 文档编号:3388330 上传时间:2019-12-13 格式:PPT 页数:44 大小:645.50KB
返回 下载 相关 举报
ARM技术与ARM体系结构.ppt_第1页
第1页 / 共44页
ARM技术与ARM体系结构.ppt_第2页
第2页 / 共44页
ARM技术与ARM体系结构.ppt_第3页
第3页 / 共44页
点击查看更多>>
资源描述
大连理工大学软件学院邱铁办公楼413Tel:87571521E_mail:qiutie参考教材:ARM嵌入式系统结构与编程清华大学出版社2009年3月出版,ARM嵌入式系统结构与编程,第2章ARM技术与ARM体系结构,本章主要介绍ARM处理器的产生及版本发展历史,以及各个版本的典型处理器及应用情况和性能分析;ARM处理器的内核调试结构,重点分析了ARM7TDMI-S、ARM9TDMI两种结构;ARM处理器的工作模式及寄存器组织结构,分析了在什么情况下进入到相应的工作模式;ARM处理器支持的内存数据存储格式,分为大端格式和小端格式;最后介绍了ARM7的三级流水线运行机制和ARM9的五级流水线运行机制。,内容提要,21ARM体系结构版本与内核22ARM内核模块23ARM处理器的工作模式24ARM内部寄存器25ARM异常处理26存储方式与存储器映射机制27ARM流水线技术分析,21ARM体系结构版本与内核,第一片ARM处理器是1983年10月到1985年4月间在位于英国剑桥的AcornComputer公司开发1990年,ARM公司成立20世纪90年代,ARM快速进入世界市场1995年StrongARM问世XScale是下一代StrongARM芯片的发展基础ARM10TDMI是ARM处理器核中的高端产品ARM11是ARM家族中性能最强的一个系列,211ARM体系结构版本,ARM7TDMI,4T,1,支持Halfword和signedhalfword/byte和Systemmode,支持Thumb指令集,2,4,ARM9TDMI,ARM720T,ARM940T,改良的ARM/Thumb交互作用以及CLZ指令,5TE,SaturatedmathsDSPmultiply-accumulateinstructions,XScale,ARM1020E,ARM9E-S,ARM966E-S,3,早期的ARMs,ARM9EJ-S,5TEJ,ARM7EJ-S,ARM926EJ-S,Jazelle支持Java字节码,6,ARM11,SIMD,SISIMDMD,S,SIMD,7,ARMCotex,第一阶段:版本V1、V2、V3这3个早期ARM版本功能单一,没有大范围占领市场,主要是处于开发和实验阶段第二阶段:从ARM4开始,ARM体系结构处于完善和提高阶段,版本4与以前版本相比增加了下列指令:有符号、无符号的半字和有符号字节的load和store指令。增加了T变种,处理器可以工作于Thumb状态,在该状态下的指令集是16位的Thumb指令集。增加了处理器的特权模式。在该模式下,使用的是用户模式下的寄存器。,版本5主要由两个变型版本5T、5TE组成相比与版本4,版本5的指令集有了如下的变化:提高了T变种中ARM/Thumb混合使用的效率。增加前导零记数(CLZ)指令,该指令可使整数除法和中断优先级排队操作更为有效;增加了BKPT(软件断点)指令;为协处理器设计提供了更多的可供选择的指令;更加严格地定义了乘法指令对条件码标志位的影响。,ARM体系版本6是2001年发布的。新架构v6在降低耗电量的同时还强化了图形处理性能。通过追加有效进行多媒体处理的SIMD功能,将语音及图像的处理功能提高到了原机型的4倍。ARM体系版本6首先在2002年春季发布的ARM11处理器中使用。,2.1.2ARM体系结构的基本版本命名规则,ARMxyzTDMIEJF-S大括号内的字母是可选的,各个字母的含义如下:x系列号,例如ARM7中的“7”、ARM9中的“9”;y内部存储管理/保护单元,例如ARM72中的“2”、ARM94中的“4”;z内含有高速缓存Cache;T技持16位的Thumb指令集;D支持JTAG片上调试;M支持用于长乘法操作(64位结果)的ARM指令,包含快速乘法器;I带有嵌入式追踪宏单元ETM(EmbeddedTraceMacro),用来设置断点和观察点的调试硬件;,续,E增强型DSP指令(基于TDMI);J含有Java加速器Jazelle,与Java虚拟机相比,Java加速器Jazelle使Java代码运行速度提高了8倍,功耗降低到原来的80%;F向量浮点单元;S可综合版本,意味着处理器内核是以源代码形式提供的。这种源代码形式又可以被编译成一种易于EDA工具使用的形式。,ARM体系结构的基本版本,2.2ARM内核模块,ARM处理器一般都带有嵌入式追踪宏单元ETM(EmbeddedTraceMacro),它是ARM公司自己推出的调试工具,ARM调试结构,221ARM7TDMI-S内核结构,ARM7TDMI-S是一款32位嵌入式RISC处理器。它作为优化的硬核是性能、功耗和面积特性的最佳组合。使用ARM7TDMI核使得系统设计师能够设计出小尺寸、低功耗以及高性能的嵌入式设备。,ARM7TDMI,ARM7TDMI是基于ARM7内核3级流水线-0.9MIPS/MHz冯.诺依曼架构CPI(CyclePerInstruction)约为1.9T-Thumb架构扩展,提供两个独立的指令集:ARM指令,均为32位Thumb指令,均为16位两种运行状态,用来选择哪个指令集被执行D-内核具有Debug扩展结构M-增强乘法器支持64位结果.I-EmbeddedICE-RT逻辑-提供片上断点和调试点支持,ARM7TDMI内核信号,ARM7TDMI方框图,ARM7TDMI内核,TAP控制器,JTAG接口,数据总线,控制信号,D31:0,地址总线,A31:0,DIN31:0,DOUT31:0,BUSSplitter,EmbeddedICE逻辑,乘法器,ARM7TDMI内核,指令解码,地址自增器,nRESET,nMREQ,SEQ,ABORT,nIRQ,nFIQ,nRW,MAS1:0,LOCK,nCPI,CPA,CPB,nWAIT,MCLK,nOPC,BIGEND,ISYNC,nTRANS,nM4:0,D31:0,桶形移位器,32位ALU,DBE,写数据寄存器,读数据寄存器,地址寄存器,寄存器,A31:0,ABE,及,控制逻辑,PCUpdate,解码站,指令解码,Incrementer,PC,ABus,BBus,ALUBus,外部地址产生,PC31:2ARMStatePC31:1ThumbState,ALU31:0,INC,自增器,A31:0,向量,0 x1C,0 x00,地址寄存器,特点:32/16位RISC架构(ARMv4T)。具有最高性能和灵活性的32位ARM指令集。代码紧凑的16位Thumb指令集。统一的总线接口,指令与数据都在32位总线上传输。3级流水线。32位算术逻辑单元(ALU)。极小的核心尺寸以及低功耗。完全的静态操作。协处理器接口。扩展的调试设备:,T标志位的作用,16,16,32-bitdata,16,A1,Mux,Thumb指令解码,Mux,Mux,T标志,ARM指令解码,阶段1,阶段2,D31:0,0,1,1,0,Fetch,Decode,Execute,带Cache的ARM7TDMI,ARM710T8K统一的cache完整的内存管理单元(mmu),支持虚拟地址和存储器保护写缓冲,ARM720T同ARM710T,但支持WinCEARM740T8K统一的cache内存管理单元写缓冲,ARM7TDMI内核,地址,地址,数据读,AMBA接口,写缓冲,MMU,数据写,数据,ARM7xxT,控制逻辑,Cache,AMBA总线接口,JTAG和非AMBA信号,CP15,ARM7系列内核采用了三条流水线的内核结构,三级流水线分别为取指(Fetch)、译码(Decode)、执行(Execute),取指:将指令从存储器中取出,放入指令Cache中。译码:由译码逻辑单元完成,是将在上一步指令Cache中的指令进行解释,告诉CPU将如何操作。执行:这阶段包括移位操作、读通用寄存器内容、输出结果、写通用寄存器等。,需要注意的是,PC指向正被取指的指令而不是正在执行的指令:,详细信息见教材ARM嵌入式系统结构与编程第16页,222ARM9内核结构,ARM920是一款32位嵌入式RISC处理器内核。在指令操作上采用5级流水线.取指:从指令Cache中读取指令。译码:对指令进行译码,识别出是对哪个寄存器进行操作并从通用寄存器中读取操作数。执行:进行ALU运算和移位操作,如果是对存储器操作的指令,则在ALU中计算出要访问的存储器地址。存储器访问:如果是对存储器访问的指令,用来实现数据缓冲功能(通过数据Cache)。寄存器回写:将指令运算或操作结果写回到目标寄存器中。,ARM920的5级流水线操作,2.3ARM处理器的工作模式,ARM技术的设计者将ARM处理器在应用中可能产生的状态进行了分类,并针对同一类型的异常状态设定了一个固定的入口点,当异常产生时,程序会自动跳转到对应异常入口处进行异常服务。,ARM处理器共有7种工作模式,1用户模式:非特权模式,也就是正常程序执行的模式,大部分任务在这种模式下执行。在用户模式下,如果没异常发生,不允许应用程序自行改变处理器的工作模式,如果有异常发生,处理器会自动切换工作模式2FIQ模式:也称为快速中断模式,支持高速数据传输和通道处理,当一个高优先级(fast)中断产生时将会进入这种模式。,3IRQ模式:也称为普通中断模式,:当一个低优先级(normal)中断产生时将会进入这种模式。在这模式下按中断的处理器方式又分为向量中断和非向量中断两种。通常的中断处理都在IRQ模式下进行。4SVC模式:称之为管理模式,它是一种操作系统保护模式。当复位或软中断指令执行时处理器将进入这种模式。,5中止模式:当存取异常时将会进入这种模式,用来处理存储器故障、实现虚拟存储或存储保护。6未定义指令异常模式:当执行未定义指令时会进入这种模式,主要是用来处理未定义的指令陷阱,支持硬件协处理器的软件仿真,因为未定义指令多发生在对协处理器的操作上。7系统模式:使用和User模式相同寄存器组的特权模式,用来运行特权级的操作系统任务。,在这7种工作模式中,除了用户模式以外,其他6种处理器模式可以称为特权模式,在这些模式下,程序可以访问所有的系统资源,也可以任意地进行处理器模式的切换。在这6种特权模式中,除了系统模式外的其他5种特权模式又称为异常模式,每种异常都对应有自己的异常处理入口点。,2.4内部寄存器,ARM处理器共有37个寄存器,这些寄存器包括以下两类寄存器。(1)31个通用寄存器:包括程序计数器PC等,这些寄存器都是32位寄存器。(2)6个状态寄存器:状态寄存器也是32位的寄存器,但是目前只使用了其中的14位。,ARM寄存器,寄存器组织概要,Usermoder0-r7,r15,andcpsr,r8,r9,r10,r11,r12,r13(sp),r14(lr),spsr,FIQ,User,r13(sp),r14(lr),spsr,IRQ,Usermoder0-r12,r15,andcpsr,r13(sp),r14(lr),spsr,Undef,Usermoder0-r12,r15,andcpsr,r13(sp),r14(lr),spsr,SVC,Usermoder0-r12,r15,andcpsr,r13(sp),r14(lr),spsr,Abort,Usermoder0-r12,r15,andcpsr,ThumbstateLowregisters,ThumbstateHighregisters,Note:System模式使用user模式寄存器集,ARM寄存器,ARM有37个32-Bits长的寄存器.1个用作PC(programcounter)1个用作CPSR(currentprogramstatusregister)5个用作SPSR(savedprogramstatusregisters)30个通用寄存器,当前处理器的模式决定着哪组寄存器可操作.任何模式都可以存取:相应的r0-r12子集相应的r13(thestackpointer,sp)andr14(thelinkregister,lr)相应的r15(theprogramcounter,pc)相应的CPSR(currentprogramstatusregister,cpsr)特权模式(除system模式)还可以存取;相应的spsr(savedprogramstatusregister),程序状态寄存器,条件位:N=1-结果为负,0-结果为正或0Z=1-结果为0,0-结果不为0C=1-进位,0-借位V=1-结果溢出,0结果没溢出Q位:仅ARM5TE/J架构支持指示增强型DSP指令是否溢出J位仅ARM5TE/J架构支持J=1:处理器处于Jazelle状态,中断禁止位:I=1:禁止IRQ.F=1:禁止FIQ.TBit仅ARMxT架构支持T=0:处理器处于ARM状态T=1:处理器处于Thumb状态Mode位(处理器模式位):0b10000User0b10001FIQ0b10010IRQ0b10011Supervisor0b10111Abort0b11011Undefined0b11111System,当处理器执行在ARM状态:所有指令32bits宽所有指令必须word对齐所以pc值由bits31:2决定,bits1:0未定义(所以指令不能halfword/byte对齐).,程序指针PC(r15),当处理器执行在Thumb状态:所有指令16bits宽所有指令必须halfword对齐所以pc值由bits31:1决定,bits0未定义(所以指令不能byte对齐).,第2章ARM技术与ARM体系结构,上半部完,下半部内容提要,25ARM异常处理26存储方式与存储器映射机制27ARM流水线技术分析,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!