- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM技术概述 技术介绍教材编辑.ppt
* 2.6 ARM寄存器组成 2.6.1ARM寄存器组成概述 2.6.2ARM状态下的寄存器组织 2.6.3Thumb状态下的寄存器组织 * 2.6.1 ARM寄存器组成概述 ARM处理器总共有37个寄存器,可以分为以下两类寄存器 : 1) 31个通用寄存器 : R0~R15; R13_svc、R14_svc; R13_abt、R14_abt; R13_und、R14_und; R13_irq、R14_irq; R8_frq-R14_frq。 2)6个状态寄存器 CPSR;SPSR_svc、SPSR_abt、SPSR_und、SPSR_irq和SPSR_fiq 。 * 2.6.2ARM状态下的寄存器组织 1)ARM状态的寄存器简介: ARM状态下的寄存器组织: * ARM状态下的寄存器组织 2) ARM状态的通用寄存器 不分组寄存器(The unbanked registers) R0~R7 分组寄存器(The banked registers): R8~R14 程序计数器:R15(PC) * ARM状态下的寄存器组织 不分组寄存器R0~R7 R0~R7是不分组寄存器。这意味着在所有处理器模式下,它们每一个都访问的是同一个物理寄存器。它们是真正并且在每种状态下都统一的通用寄存器。 未分组寄存器没有被系统用于特别的用途,任何可采用通用寄存器的应用场合都可以使用未分组寄存器,但必须注意对同一寄存器在不同模式下使用时的数据保护 。 * ARM状态下的寄存器组织 分组寄存器R8-R14 : 分组寄存器R8-R12: FIQ模式分组寄存器R8~R12 。 FIQ以外的分组寄存器R8~R12 。 分组寄存器R13、R14 寄存器R13通常用做堆栈指针SP 。 寄存器R14用作子程序链接寄存器(Link Register-LR),也称为LR。 * ARM状态下的寄存器组织 程序计数器R15 : 寄存器R15被用作程序计数器,也称为PC 。 R15值的改变将引起程序执行顺序的变化,这有可能引起程序执行中出现一些不可预料的结果 。 ARM处理器采用多级流水线技术,因此保存在R15的程序地址并不是当前指令的地址 。 一些指令对于R15的用法有一些特殊的要求 。 * ARM状态下的寄存器组织 3)ARM程序状态寄存器 所有处理器模式下都可以访问当前的程序状态寄存器CPSR。CPSR包含条件码标志、中断禁止位、当前处理器模式以及其它状态和控制信息。 在每种异常模式下都有一个对应的物理寄存器——程序状态保存寄存器SPSR。当异常出现时,SPSR用于保存CPSR的状态,以便异常返回后恢复异常发生时的工作状态。 * ARM状态下的寄存器组织 CPSR和SPSR的格式 * 2.6.3Thumb状态下的寄存器组织 Thumb状态下的寄存器集是ARM状态下寄存器集的子集。程序员可以直接访问8个通用的寄存器(R0~R7),程序计数器PC、堆栈指针SP、连接寄存器LR和当前状态寄存器CPSP。每一种特权模式都各有一组SP,LR和SPSR。 * 2.7 ARM的异常中断 在ARM体系结构中,异常中断用来处理软件中断、未定义指令陷阱(它不是真正的“意外”事件)及系统复位功能(它在逻辑上发生在程序执行前而不是在程序执行中,尽管处理器在运行中可能再次复位)和外部事件,这些“不正常”事件都被划归“异常”,因为在处理器的控制机制中,它们都使用同样的流程进行异常处理。 * ARM的异常中断 ARM的异常中断响应过程; 从异常中断处理程序中返回 ; 异常中断向量表; 异常中断的优先级 ; * ARM的异常中断响应过程 ARM处理器对异常中断的响应过程如下: 将CPSR的内容保存到将要执行的异常中断对应的SPSR中 。 设置当前状态寄存器CPSR中的相应位 将引起异常指令的下一条指令的地址保存到新的异常工作模式的R14 。 给程序计数器(PC)强制赋值 。 * ARM的异常中断响应过程 每个异常模式对应有两个寄存器R13_mode、R14_mode分别保存相应模式下的堆栈指针、返回地址;堆栈指针可用来定义一个存储区域保存其它用户寄存器,这样异常处理程序就可以使用这些寄存器。 FIQ模式还有额外的专用寄存器R8_fiq~R12_fiq,使用这些寄存器可以加快快速中断的处理速度。 * 从异常中断处理程序中返回 从异常中断处理程序中返回时,需要执行 以下四个基本操作 : 所有修改过的用户寄存器必须从处理程序的保护堆栈中恢复(即出栈)。 将SPSR_mode寄存器内容复制到CPSR中,使得CPSR从相应的SPSR中恢复,即恢复被中断的程序工作状态。 根据异常类型将PC变回到用户指令流中相应指令处。 最后
您可能关注的文档
- 8章神经网络基础学科知识.ppt
- 8第6章机床夹具科目讲解.ppt
- 8第七章 物流配送教学精品.ppt
- 8第七章中国传统文化的发展历程教学精品.ppt
- 8第九章机床夹具设计原理wz课程实例.ppt
- 8第八章 有机化合物的波谱分析(3学时)内容资料.ppt
- 8第八章 高等师范院校历史专业的教育实习课程设计.ppt
- 8第八章基因工程下游技术教学精品.ppt
- 8组合问题数学广角课件教材编辑.ppt
- 8菌种培养与鉴定二教材编辑.ppt
- 2026年山西药科职业学院单招(计算机)测试模拟题库最新.docx
- 2026年泉州幼儿师范高等专科学校单招(计算机)测试模拟题库最新.docx
- 行政法学视野中的“经济法”.doc
- 2026年大理护理职业学院单招(计算机)考试参考题库及答案1套.docx
- 苏州市湿地保护条例.doc
- 2026年云南工贸职业技术学院单招(计算机)测试模拟题库推荐.docx
- 2026年杭州科技职业技术学院单招(计算机)考试参考题库附答案.docx
- 2026年天津海运职业学院单招(计算机)测试备考题库推荐.docx
- 2026年兰考三农职业学院单招(计算机)测试模拟题库推荐.docx
- 2026年山东畜牧兽医职业学院单招(计算机)考试参考题库最新.docx
原创力文档


文档评论(0)