ARM七种运行模式电子教案.doc
《ARM七种运行模式电子教案.doc》由会员分享,可在线阅读,更多相关《ARM七种运行模式电子教案.doc(13页珍藏版)》请在咨信网上搜索。
1、ARM七种运行模式精品文档s3c2440中断体系结构:如何用中断? 1.中断发生:保存别人的状态 如何中断可以事先设置,对程序初始化,使能中断。 中断发生后,进入中断模式 2.中断处理 分辨中断源 进行不同的处理 清理工作 3.恢复别人的状态过程:外界信号上升沿、下降沿,高电平、低电平都可以设置成信号 引脚设置,再进入状态寄存器。 状态寄存器连接屏蔽寄存器 进入第二个状态寄存器,储存各种中断,可以储存多个中断 进入优先级寄存器,判断中断运行顺序 再进入屏蔽使能寄存器和模式寄存器 进入优先级寄存器 进入cpu处理 cpu的处理:进入入口地址 b handleIRQ 计算返回地址,被中断处地址 保
2、存现场,即各寄存器状态 调用处理函数 函数运行完后恢复现场 函数的处理:分辨终端 处理中断 清除数据,即清除中断1.中断寄存器 arm的七种模式 1.usr 用户模式 r0-r15 2.fiq 快中断模式 r0-r7 专用寄存器r8-r15, 3.svc 管理模式 专用寄存器r13-r14, 4.abt 数据访问终止模式 5.sys 系统模式 6.und 未定义指令终止模式 7.irq 中断模式 几种模式的区别:嵌入式的中断:a.不同的寄存器 b.不同的权限c.触发条件不一样 何时使用几种模式: usr 用户模式 :arm处理器正常的程序执行状态 fiq 快中断模式:高速数据传输和通道处理sv
3、c 管理模式 :操作系统使用的保护模式abt 数据访问终止模式:数据或者指令终止时进入,用于虚拟存储或者存储保护sys 系统模式:运行具有特权的操作系统任务und 未定义指令终止模式:未定义的指令执行时进入该模式,用于支持硬件处理器的软件仿真. irq 中断模式:用于通用的中断处理 后六种是特权模式,用于处理中断、异常和特殊权限处理 用户模式是最常见的模式2.中断中的异常 中断是一种异常。 当发生中断时,cpu进入中断模式 cpu进入异常入口,异常入口是硬件规定的一个地址运行模式ARM920T 支持 7 种运行模式: 用户 (usr) ):正常 ARM 程序执行状态 快中断 (fiq) ):为
4、支持数据传输或通道处理设计 中断 (irq) ):用于一般用途的中断处理 管理 (svc) ):操作系统保护模式 中止 (abt ): 数据或指令预取中止后进入 系统 (sys) ):操作系统的特权用户模式 未定义 (und) ):执行了一个未定义指令时进入模式的改变可由软件控制,或者由外部中断或进入异常引起。大部分应用程序都将在用户模式执行。 被称为特权模式的非用户模式,都将进入到中断服务或异常中去,或者访问受保护的资源。内部寄存器ARM920T 总共有 37 个寄存器,其中 31 通用 32 位寄存器和 6 个状态寄存器,但不能在同一时刻对所有的寄存器可见。处理器状态和运行模式决定了哪些寄
5、存器对程序员可见。ARM状态时内部寄存器集在 ARM 状态,16 个通用寄存器和一个状态寄存器在任意时刻都可见。在特权(非用户)模式下,将切换到指定模式的分组(banked)寄存器。图 2-3 显示了哪些寄存器在各模式下是可见的:分组寄存器被标记了阴影三角形。ARM 状态时寄存器被设为包含 16 个直接可以访问的寄存器:R0 到 R15。除了 R15,其他全部寄存器都为通用寄存器,如可能用于保存数据或地址值。除此之外,还有第 17 个寄存器用于存储状态信息。FIQ 模式包含 7 个分组寄存器,分别映射到 R8-14(R8_fiq-R14_fiq)。在 ARM 状态,有很多不需要保存寄存器的 F
6、IQ 处理程序。用户,IRQ,管理中止和未定义模式都包含两个分组寄存器映射到 R13 和 R14,允许这些模式都都包含私有堆栈指针和链接寄存器。Thumb 状态时内部 寄存器集Thumb 状态时的寄存器集为 ARM 状态时的寄存器的分配的一个子集。程序员能够直接访问 8 个通用寄存器R0 至 R7,还有程序计数器(PC),一个堆栈指针寄存器(SP),一个链接寄存器(LR)和 CPSR。各自特权模式还分别有分组堆栈指针,链接寄存器和进程保存状态寄存器(SPSR)。如图 2-4 所示。Thumb 状态访问高寄存器 (Hi-Registers )在 Thumb 状态,寄存器 R8-R15(“Hi r
7、egisters”)不是标准的寄存器集的一部分。然而,汇编语言程序员可以受限的对它们的进行访问,可以将它们用于快速暂存。使用 MOV 指令的特殊变量可以将一个值从 R0-R7(“Lo register”)范围内的寄存器传送到高寄存器或从高寄存器到第低寄存器。使用 CMP 和 ADD 指令也可以对高寄存器的值与寄存器的值进行比较以或相加。更多内容请参考表 3-34。程序状态寄存器ARM920T 包含了一个当前程序状态寄存器(Current Program Status Register-CPSR),还有5 个用于异常程序处理的程序状态保存寄存器(Saved Program Status Regi
8、sters-SPSR)。这些寄存器的功能为: 保存最近已处理的 ALU 操作的信息 控制中断的使能与禁止 设置处理器的运行模式图 2-6 显示了各位的编排状态代码标志位N,Z,C 和 V 位为状态代码标志位。算术或逻辑操作结果可能会改变这些位,并检验以决定是否应该执行某条指令。在 ARM 状态,所有指令都可能为条件执行:详情见表 3-2。在 Thumb 状态,只有分支指令才能条件执行:详情见表 3-46。控制位PSR (包含 I,F,T 和 M4:0)的末端 8 位,统称为控制位。当发生异常时将会改变这些位。如果处理器运行在特权模式,它们也可由软件控制。异常:程序暂时停止当正常程序流程被暂时停
9、止发生异常,例如响应一个来自外设的中断。在处理异常前,必须保护当前的处理器状态,以便在完成处理程序后能恢复到原来的程序。如果同时发生好几个异常,将会按照固定的顺序来分配,见 P2-13 的异常优先级。进入异常行为当处理一个异常时,ARM920T 将会进行以下活动:1. 相应链接寄存器保存下条指令的地址。如果在 ARM 状态进入异常,下条指令的地址将会复制到链接寄存器(当前 PC+4 或 PC+8,由异常决定。详情见表 2-2)中。如果在 Thumb 状态进入异常,写入链接寄存器的值则为当前 PC 偏移一个值,这样异常返回后程序能从正确的位置恢复。这意味着异常处理不需要确定异常是从什么状态进入的
10、。例如,在 SWI 的情况,无论是在 ARM 状态还是 Thumb 状态执行 SWI,MOVS PC,R14_svc 语句都将返回到下一条指令。2. 复制 CPSR 的内容到相应 SPSR 中。3. 根据异常类型强制将 CPSR 模式位设为某一个值。4. 强制 PC 从相关异常向量处取下条指令。通常也会置位中断禁止标志位,以防止不同的难处理的异常嵌套。如果一个异常发生时处理器处于 Thumb 状态,当装载异常向量地址到 PC 时会自动切换到 ARM 状态。离开异常行为:当异常结束,异常处理程序将会:1. 将链接寄存器适当减去一个偏移量并放入到 PC 中。(偏移量由异常类型决定)2. 复制 SP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ARM 运行 模式 电子 教案
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。