第9章ARM及其ARM技术.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章ARM及其ARM技术

第九章 ARM及其ARM技术 9.1 ARM嵌入式系统概述 1、嵌入式系统是指软硬件可裁剪,适用于系统对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。 2、ARM——32位的RISC处理器 9.2 ARM/Thumb微处理器结构 以ARM7系列为例 9.3 ARM处理器的编程模型 ARM7TDMI处理器采用冯·诺依曼(Von Neumann)结构,指令和数据共用一条32位数据总线。只有装载、保存和交换指令可访问存储器中的数据。 AMR7指令集简介 ARM指令集 Thumb指令集——4大类 9.6使用ADS1.2进行嵌入式软件开发 ASD1.2——集成开发环境 ,包括2部分 * * (1)体积小、功耗低、成本低、性能高 (2)具有大量的存储器,指令执行速度快 (3)寻址方式简单灵活 (4)采用固定长度的指令格式 (5)支持Thumb(16b)/ARM(32b)双指令集,能兼容8b/16b器件 (1)三级流水线结构,取指—译码—执行同时进行 (2)具有嵌入式ICE-RT逻辑,调试开发方便 (3)ARM/Thumb双指令集,可随时切换 上电后自动设置为ARM状态 流水线上各指令的地址 从寄存器组中读出寄存器,执行移位和ALU操作,寄存器被写回到寄存器组中 执行 PC-4 PC-8 对指令使用的寄存器进行译码 译码 PC-2 PC-4 指令从存储器中取出 取指 PC PC 描述 流水线工位 Thumb指令集 ARM指令集 三级流水线结构 使用BX指令将ARM7TDMI内核的操作状态在ARM状态和Thumb状态之间进行切换 ;从Arm状态切换到Thumb状态 LDR R0,=Lable+1 BX R0 ;从Thumb状态切换到ARM状态 LDR R0,=Lable BX R0 地址最低位为1,表示切换到Thumb状态 地址最低位为0,表示切换到ARM状态 跳转地址标号 (1)处理器模式:7种(用户、系统和5个异常模式) (2)内部寄存器:37个32位寄存器 (3)ARM的异常中断:7个异常类似与51的中断系统 (4)ARM存储器格式:232B=4GB 两种存储方式:大端方式和小端方式(缺省) ARM处理器支持下列数据类型: 字节 8位 半字 16位(必须分配为占用两个字节) 字 32位(必须分配为占用4各字节) 与用户模式类似,但具有可以直接切换到其它模式等特权 用于支持操作系统的特权任务等 系统 (sys) 未定义指令异常响应时进入此模式 支持硬件协处理器的软件仿真 未定义 (und) 在ARM7TDMI没有大用处 用于支持虚拟内存和/或存储器保护 中止 (abt) 系统复位和软件中断响应时进入此模式 操作系统保护代码 管理 (svc) IRQ异常响应时进入此模式 用于通用中断处理 中断 (irq) FIQ异常响应时进入此模式 支持高速数据传输及通道处理 快中断 (fiq) 不能直接切换到其它模式 正常程序工作模式 用户 (usr) 备注 说明 处理器模式 1 、处理器模式 2 、内部寄存器 共有37个32为寄存器 31个通用寄存器——未分组、分组、程序计数器 6个状态寄存器 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15(PC) R0 R1 R2 R3 R4 R5 R6 R7 R8_fiq R9_fiq R10_fiq R11_fiq R12_fiq R13_fiq R14_fiq R15 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_svc R14_svc R15 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_abt R14_abt R15 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_irq R14_iq R15 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13_und R14_und R15 CPSR CPSR SPSR_fiq CPSR SPSR_svc CPSR SPSR_abt CPSR SPSR_irq CPSR SPSR_und ARM状态下 R13____ARM指令中,习惯作为堆栈指针 THUMB指令,某些指令强制性要求用做堆栈指针 R14____子程序连接寄存器或连接寄存器LR 子程序调用

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档