第2章 ARM7体系结构 删减版.ppt

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 ARM7体系结构 删减版

嵌入式系统及应用 ARM7体系结构 1、ARM简介 2、ARM7TDMI 3、ARM处理器状态 4、ARM处理器模式 5、ARM体系的存储系统 ARM简介 RISC结构特性 2.1 ARM简介 ARM7系列简介 简介 ARM7TDMI是基于ARM体系结构V4版本的低端ARM核。 其弥补了ARM6很难在低于5V电压下稳定工作的不足,还增加了后缀所对应的功能: 注意:“ARM核”并非芯片,ARM核与其它部件如RAM、ROM、片内外设组合在一起才能构成现实的芯片。 2.2 ARM7TDMI 2.2 ARM7TDMI 存储器的字与半字 从偶数地址开始的连续2个字节构成一个半字; 以能被4整除的地址开始的连续4个字节构成一个字; ARM指令的长度刚好是一个字,Thumb指令的长度 刚好是一个半字。 2.2 ARM7TDMI 存储器的存储方式 ARM处理器使用流水线来增加处理器指令流的速度,这样可使几个操作同时进行,并使处理和存储器系统连续操作,能提供0.9MIPS/MHz的指令执行速度。 2.2 ARM7TDMI 三级流水线 从ARM状态切换到Thumb状态的程序代码如下: 2.4 ARM处理器状态 状态切换的一个例子 这五种模式称为异常模式。它们除了可以通过程序切换进入外,也可以由特定的异常进入。当特定的异常出现时,处理器进入相应的模式。每种异常模式都有一些独立的寄存器,以避免异常退出时用户模式的状态不可靠。 除用户模式外,其它模式均为特权模式。ARM内部寄存器和一些片内外设在硬件设计上只允许(或者可选为只允许)特权模式下访问。此外,特权模式可以自由的切换处理器模式,而用户模式不能直接切换到别的模式。 这两种模式都不能由异常进入,想要进入必须修改CPSR,而且它们使用完全相同的寄存器组。系统模式是特权模式,不受用户模式的限制。操作系统在该模式下访问用户模式的寄存器就比较方便,而且操作系统的一些特权任务可以使用这个模式访问一些受控的资源。 2.9 ARM体系的存储系统 2.9 ARM体系的存储系统 2.9 ARM体系的存储系统 存储器系统有两种映射机制:小端存储器系统:在小端格式中,数据的高字节存放在高地址中。 大端存储器系统: 在大端格式中,数据的高字节存放在低地址中。 2.9 ARM体系的存储系统 * * ARM7体系结构 RISC是精简指令集计算机的缩写,其目标是设计出在高时钟频率下单周期执行,简单而有效的指令集。ARM内核采用RISC体系结构,因此具有RISC的结构特点: 具有大量的通用存储器; 独特的装载/保存(load-store)结构; 简单的寻址模式; 统一和固定长度的指令格式。 该系列包括ARM7TDMI、ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T和扩充了Jazelle的ARM7EJ-S。该系列处理器提供Thumb 16位压缩指令集和EmbededICE软件调试方式,适用于更大规模的SoC设计中。 ARM7系列广泛应用于多媒体和嵌入式设备,包括Internet设备、网络和调制解调器设备,以及移动电话、PDA等无线设备。 ARM7TDMI-S 支持高密度16位的Thumb指令集; 支持片上调试; 支持64位乘法; 支持EmbededICE观察硬件; ARM7TDMI 的可综合(synthesizable)版本(软核),对应用工程师来说其编程模型与ARM7TDMI 一致; 如果一个数据是从偶地址开始的连续存储,那么它就是半字对齐,否则就是非半字对齐; 如果一个数据是以能被4整除的地址开始的连续存储,那么它就是字对齐,否则就是非字对齐。 Bit1=0,Bit0=0 其他位为任意值 Bit0=0 其他位为任意值 特征 …… 0x4004 0x4008 …… …… 0x4002 0x4004 …… 地址 字对齐 半字对齐 方式 正常操作过程中,在执行一条指令的同时对下一条(第二条)指令进行译码,并将第三条指令从存储器中取出。 取指 译码 执行 处理指令并将结果写回寄存器 识别将要被执行的指令 从寄存器装载一条指令 在ARM状态下,流水线上各指令的地址为 ARM7TDMI的流水线分3级,分别为: PC PC-4 PC-8 ARM指令集 Thumb 指令集 CODE32 LDR R0, =Lable+1 BX R0 CODE16 Lable MOV R1, #12 地址最低位为1,表示切换到Thumb状态 跳

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档