- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微处理器系统结构与嵌入式系统设计(李广军)-CH7.ppt
N Z C V — — I M0 M1 M2 M3 M4 T F — . . . 31 30 29 28 27 26 8 7 6 5 4 3 2 1 0 程序状态寄存器PSR 条件代码标志 保留 控制位 溢出oVerflow 进/借位扩展 Carry 零 Zero 负Negative 禁止IRQ 禁止 FIQ Thumb状态 模式 Mode N Z C V I M0 M1 M2 M3 M4 T F M[4:0] 模式 可见的Thumb状态寄存器 可见的ARM状态寄存器 10000 用户 R0~R7,SP,LR,PC,CPSR R0~R14,PC, CPSR 10001 快中断 R0~R7,SP_fiq,LR_fiq,PC,CPSR, SPSR_fiq R0~R7,R8_fiq~R14_fiq,PC, CPSR, SPSR_fiq 10010 中断 R0~R7,SP_irq,LR_irq,PC,CPSR, SPSR_fiq R0~R12,R13_irq,R14_irq,PC, CPSR, SPSR_irq 10011 管理 R0~R7,SP_svc,LR_svc,PC,CPSR, SPSR_svc R0~R12,R13_svc,R14_svc, PC,CPSR, SPSR_svc 10111 中止 R0~R7,SP_abt,LR_abt,PC,CPSR, SPSR_abt R0~R12,R13_abt,R14_abt,PC, CPSR, SPSR_abt 11011 未定义 R0~R7,SP_und,LR_und,PC,CPSR, SPSR_und R0~R12,R13_und,R14_und, PC,CPSR,SPSR_und 11111 系统 R0~R7,SP,LR,PC,CPSR R0~R14,PC, CPSR 程序状态寄存器CPSR模式位设置表 Thumb状态与ARM状态的寄存器映射关系 R8 R9 R10 R11 R12 堆栈指针 (R13) 连接寄存器 (R14) 程序计数器 (R15) 低 寄 存 器 高 寄 存 器 Thumb状态下高寄存器(R8~R15)不是标准寄存器集的一部分,但可以使用MOV、CMP和ADD指令对高寄存器操作。 异常exception 异常指正常执行的程序流因故被暂时中止; ARM支持7种异常类型、5种异常模式; 若同时发生多个异常,将按优先级顺序处理; 异常类型 对应异常模式 优先级 复位 Supervisor 1(最高优先级) 数据中止 Abort 2 FIQ FIQ 3 IRQ IRQ 4 指令预取中止 Abort 5 未定义指令 Undefined 6 SWI Supervisor 7(最低优先级) 优先级降低 复位异常Reset 当nRESET引脚信号变为低电平时,ARM立即停止执行当前指令,产生复位异常; 当nRESET再次变为高电平后,ARM处理器执行下列操作: 1.强制CPSR中的M[4:0]变为b10011,进入管理模式; 2.置位CPSR中的I和F位(禁止所有中断); 3.清零CPSR中的T位(程序运行于ARM状态下); 4.强制PC从地址0x00开始取第一条指令 中止异常Abort 中止异常包括指令预取中止和数据中止; 预取中止时,ARM将预取的指令标记为无效,但在指令到达流水线的执行阶段时才进入异常。如果指令在流水线中因为发生分支而没有被执行,中止将不会发生。 数据中止时,数据访问被记为无效,中止程序应根据中止原因作出处理。 中断异常(IRQ、FIQ) 1、 中断请求(IRQ)是一个由nIRQ引脚信号低电平所产生的正常中断(nIRQ是内核信号,对用户不可见)。IRQ的优先级低于FIQ,对于FIQ异常它是被屏蔽的。在一个特权模式中可通过置位CPSR中的I 位来禁止IRQ。 2、快速中断请求(FIQ)适用于对一个突发事件的快速响应。ARM状态中FIQ模式多设置了7个分组寄存器(R8_fiq~R14_fiq)可加速上下文切换的速度。在一个特权模式中可通过置位CPSR中的F位来禁止FIQ异常。 未定义指令异常 当ARM处理器遇到一条自己和系统内任何协处理器都无法处理的指令时,将产生未定义指令陷阱。 软件可使用这一机制通过模拟未定义的协处理器指令来扩展ARM指令集。 软件中断异常(SWI) 执行指令SWI可进入软件中断异常; 该异常使处理器从用户模式进入管理模式,通常用于请求一个特
您可能关注的文档
- 2012高考物理总复习 第3章第三节 牛顿运动定律的综合应用课件 大纲版.ppt
- 商业银行经营管理学【企业经营管理推荐】.ppt
- Construction Defects - Casualty Actuarial Society施工缺陷保险精算学会.ppt
- 专卖店经营管理手册【企业经营管理推荐】.ppt
- MBO 目标管理[打造商绩效管理].ppt
- 智慧农村礼品方案乡镇促销.ppt
- 地理:27讲 中国的自然地理.ppt
- CONTROL STRUCTURES SELECTION AND REPETITION控制结构的选择和重复.ppt
- 团队建设—沟通[打造高绩效团队].ppt
- 第四章 控制图形显示【质量精品】.ppt
文档评论(0)