- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ARM体系结构与编程(第2版)第9章课件
在ARM体系中,通常有以下3种方式来控制程序的执行流程: 在正常程序执行过程中,每执行一条ARM指令,程序计数器(PC)的值加4个字节;每执行一条Thumb指令,程序计数器(PC)的值加两个字节。整个过程是顺序执行的。 通过跳转指令,程序可以跳转到特定的地址标号处执行,或者跳转到特定的子程序处执行。 当异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理程序处执行。 * 9.1.1 ARM体系中的异常中断种类 ARM体系中的异常中断如表9.1所示。 * 9.1.1 ARM体系中的异常中断种类 * 9.1.2 异常中断向量表及异常中断优先级 中断向量表中指定了各异常中断及其处理程序的对应关系。它通常存放在存储地址的低端。在ARM体系中,异常中断向量表的大小为32字节。 每个异常中断对应的中断向量表中的4个字节的空间中存放了一个跳转指令或者一个向程序计数器(PC)中赋值的数据访问指令。通过这两种指令,程序将跳转到相应的异常中断处理程序处执行。 当几个异常中断同时发生时,就必须按照一定的次序来处理这些异常中断。 处理器执行某个特定的异常中断的过程中,称为处理器处于特定的中断模式。 * 9.1.2 异常中断向量表及异常中断优先级 各异常中断的中断向量地址以及中断的处理优先级如表9.2所示。 * 中断向量地址 异常中断类型 异常中断模式 优先级(6最低) 0x0 复位 特权模式(SVC) 1 0x4 未定义的指令 未定义指令中止模式(Undef) 6 0x8 软件中断(SWI) 特权模式(SVC) 6 0x0c 指令预取中止 中止模式 5 0x10 数据访问中止 中止模式 2 0x14 保留 未使用 未使用 0x18 外部中断请求(IRQ) 外部中断(IRQ)模式 4 0x1c 快速中断请求(FIQ) 快速(FIQ)中断模式 3 9.1.3 异常中断使用的寄存器 各异常中断对应着一定的处理器模式。应用程序通常运行在用户模式下。ARM中的处理器模式如表9.3所示。 * 处理器模式 描 述 用户模式(User, usr) 正常程序执行的模式 快速中断模式(FIQ, fiq) 用于高速数据传输和通道处理 外部中断模式(IRQ, irq) 用于通常的中断处理 特权模式(Supervisor, sve) 供操作系统使用的一种保护模式 中止模式(Abort, abt) 用于虚拟存储及存储保护 未定义指令模式(Undefined, und) 用于支持通过软件仿真硬件的协处理器 系统模式(System, sys) 用于运行特权级的操作系统任务 9.1.3 异常中断使用的寄存器 各种不同的处理器模式可能有对应于该处理器模式的物理寄存器组,如表9.4所示。 * 9.2 进入和退出异常中断的过程 本节主要介绍处理器对于各种异常中断的响应过程以及从异常中断处理程序中返回的方法。对于不同的异常中断处理程序,返回地址以及使用的指令是不同的。 * 9.2.1 ARM处理器对异常中断的响应过程 ARM处理器对异常中断的响应过程如下。 (1) 保存处理器当前状态、中断屏蔽位以及各条件标志位。 (2) 设置当前程序状态寄存器CPSR中相应的位。 (3) 将寄存器lr_mode设置成返回地址。 (4) 将程序计数器值(PC)设置成该异常中断的中断向量地址,从而跳转到相应的异常中断处理程序处执行。 * 9.2.1 ARM处理器对异常中断的响应过程 1. 响应复位异常中断 2. 响应未定义指令异常中断 3. 响应SWI异常中断 4. 响应指令预取中止异常中断 5. 响应数据访问中止异常中断 6. 响应IRQ异常中断 7. 响应FIQ异常中断 * 9.2.2 从异常中断处理程序中返回 从异常中断处理程序中返回包括下面两个基本操作: 恢复被中断的程序的处理器状态,即把SPSR_mode寄存器内容复制到当前程序状态寄存器CPSR中。 返回到发生异常中断的指令的下一条指令处执行,即把lr_mode寄存器的内容复制到程序计数器PC中。 复位异常中断处理程序不需要返回。整个应用系统是从复位异常中断处理程序开始执行的,因而它不需要返回。 * 9.2.2 从异常中断处理程序中返回 1.??SWI和未定义指令异常中断处理程序的返回 2.??IRQ和FIQ异常中断处理程序的返回 3. 指令预取中止异常中断处理程序的返回 4. 数据访问中止异常中断处理程序的返回 * 9.3 在应用程序中安排异常中断处理程序 通常有两种方法将异常中断处理程序注册到异常中断向量表中。一种是使用跳转指令,另一种是使用数据读取指令LDR。 使用跳转指令的方法比较简单,可以在异常中断对应的向量表中的特定位置放一条跳转指令,直接跳转到该异常中断的处理程序。这种方法有一个缺点,
您可能关注的文档
- AOD炉操作教程课件.doc
- ANSYS梁问题实例.ppt
- 巧移火柴棒.ppt
- ansys高级分析梁分析和横截面形状adv7.doc
- ANSYS高级非线性培训手册第07章.ppt
- AOPA无人机驾驶证模拟题.doc
- AnsoftDesigner中滤波器的设计.ppt
- AOPA必威体育精装版理论题库第4章气象题库.doc
- AO采集非税收入财务数据方法.doc
- 巷道围岩应力转移理论与技术.ppt
- 第12课 大一统王朝的巩固 课件(20张ppt).pptx
- 第17课 君主立宪制的英国 课件.pptx
- 第6课 戊戌变法 课件(22张ppt).pptx
- 第三章 物态变化 第2节_熔化和凝固_课件 (共46张ppt) 人教版(2024) 八年级上册.pptx
- 第三章 物态变化 第5节_跨学科实践:探索厨房中的物态变化问题_课件 (共28张ppt) 人教版(2024) 八年级上册.pptx
- 2025年山东省中考英语一轮复习外研版九年级上册.教材核心考点精讲精练(61页,含答案).docx
- 2025年山东省中考英语一轮复习(鲁教版)教材核心讲练六年级上册(24页,含答案).docx
- 第12课近代战争与西方文化的扩张 课件(共48张ppt)1.pptx
- 第11课 西汉建立和“文景之治” 课件(共17张ppt)1.pptx
- 唱歌 跳绳课件(共15张ppt内嵌音频)人音版(简谱)(2024)音乐一年级上册第三单元 快乐的一天1.pptx
最近下载
- 消化道早癌护理科普ppt.pptx
- 10kV及以下架空配电线路设计技术规程_DL/T_5220-2005.pdf
- 生涯发展展示 (修订版).pptx VIP
- 北京市第十二中学2024-2025学年高一上学期期中考试数学试卷(含答案).pdf
- 高中思想政治选择性必修第一册 第1单元 各具特色的国家 第1课国体与政体 第二框国家的政权组织形式.ppt VIP
- 音乐人吉他课.docx VIP
- 3健康体检与管理专业医疗质量控制指标(2024 年版).docx
- (pdf版)A6幼儿园一周带量食谱与营养分析报告.pdf VIP
- 5、隧道反坡排水读数照片 对门山进口.doc
- 大合唱朗诵诗歌《我们走在大路上》.docx
文档评论(0)