- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实时数字信号处理 第3章 运行模式与程序控制 概述 3种处理器模式 用户模式、监控模式、仿真模式 监控和仿真模式下无限制地使用内核资源 操作系统的内核代码一般工作于监控模式和仿真模式 用户模式下有限制地使用系统资源,提供了一个受保护的软件环境 应用程序工作于用户模式 内核程序控制器 每一个内核都有它自己的程序控制器 控制程序流,提供下条指令的地址 程序流 大部分是线性的,顺利执行 非顺序结构:循环、子程序、跳转、中断和异常 处理器操作模式与电源管理有关 动态电源管理模块 当前处理器模式识别 处理器的模式、状态及转换条件 用户模式 用户模式用于处理应用级代码 进入用户模式 复位后处于监控模式,从复位状态进入用户模式,必须执行 首先将返回地址放在RETI寄存器中 然后执行指令RTI 从复位状态进入用户模式的代码 P1.L = START; /* Point to start of user code */ P1.H = START; RETI = P1; RTI; /* Return from Reset Event */ START; /* Place user code here */ 激活用户模式的返回指令 执行返回指令前,返回地址必须先要被保存在相应的返回寄存器RETx中 如果ISR是可中断的,返回地址存放在堆栈中,从堆栈中弹出返回地址值到RETI,再执行RTI指令 处理器保持在用户模式下直到 中断、NMI或异常事件激活了监控模式,仿真事件激活了仿真模式,或复位事件激活了复位状态 监控模式 寄存器别名USP指向存储器中的用户堆栈指针 SP指向内核堆栈指针而不是用户堆栈指针 无操作系统环境 在无操作系统的环境里,应用程序代码保留在监控模式,复位信号撤销后,处理器通过执行复位事件实现初始化 保持处理器工作在监控模式而又允许低优先级事件得到处理的一种方法是建立和强制执行最低优先级中断(IVG15) 当使用RAISE 15强制触发了低优先级中断后,RETI就会被加载一个指向在IVG 15被执行之前的可执行的用户代码的地址 当RETI被加载后,就可执行RTI指令,从而从复位事件中返回 IVG 15的中断句柄可以设置成跳转到应用代码的开始处,且不附加RTI指令(与程序清单3-1比较),这样处理器将会保持在监控模式。 复位后维持在监控模式程序清单 P0.L = LO(EVT15) ; /* Point to IVG15 in Event Vector Table */ P0.H = HI(EVT15) ; P1.L = START ; /* Point to start of User code */ P1.H = START ; [P0] = P1 ; /* Place the address of start code in IVG15 of EVT*/ P0.L = LO(IMASK) ; R0 = [P0] ; R1.L = EVT_IVG15 0xFFFF ; R0 = R0 | R1 ; [P0] = R0 ; /* Set (enable) IVG15 bit in Interrupt Mask Register*/ RAISE 15 ; /* Invoke IVG15 interrupt */ P0.L = WAIT_HERE ; P0.H = WAIT_HERE ; RETI = P0 ; /* RETI loaded with return address */ RTI ; /* Return from Reset Event */ WAIT_HERE : /* Wait here till IVG15 interrupt is serviced */ JUMP WAIT_HERE ; START: /* IVG15 vectors here */ [--SP] = RETI ; /* Enables interrupts and saves return address to stack */ 空闲状态 空闲状态由一个有序的IDLE指令触发 作为IDLE指令的一部分,将自动执行一个SSYNC指令以清除内核和外部系统中所有的随机态以及暂态。 处理器将保持在空闲状态直到有一个外设或外部设备,例如SPORT,产生了一个中断服务请求。 要转换到空闲状态,可用程序清单3-3所示的代码。 程序清单3-3 转换到空闲状态 CLI R0 ; /* disable interrupts */ IDLE ; /* drain pipeline and send c
您可能关注的文档
- 诗歌鉴赏-评价作品思想和作者观点.ppt
- 诗歌鉴赏四:评价诗歌的思想内容和作者的观点态度讲稿.ppt
- 施工安全作业票填写标准与执行程序.ppt
- 施工动火安全检查报告.ppt
- 施耐德PLC讲座第07章 IEC语言:梯形图.ppt
- 十 Android Service.ppt
- 十、互连和IO-1.ppt
- 十二备份与恢复简介.ppt
- 十二烷基二甲基苄基氯化铵性能及.ppt
- 十二章和十三章物理总结.ppt
- 场地脚手架工程施工方案(3篇).docx
- 2024年浙江省丽水市松阳县玉岩镇招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省郑州市惠济区古荥镇招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市淳安县文昌镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省台州市三门县小雄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省宁波市余姚市河姆渡镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省丽水市景宁畲族自治县雁溪乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市临安市板桥乡招聘社区工作者真题及答案详解一套.docx
- 2024年湖北省宜昌市点军区土城乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省台州市路桥区桐屿街道招聘社区工作者真题附答案详解.docx
最近下载
- 鲁教版初中八年级的上册英语短语句型.docx VIP
- 新人教版高中数学选择性必修第一册全套PPT课件及配套讲义.pptx VIP
- 四川省拟任县处级试题 四川省拟任县处级党政领导干部任职资格考试题.doc VIP
- 鲁教版八年级上册英语短语句型.doc VIP
- 最新人教版(2023年新版)信息技术四年级上册(含课后反思).pdf VIP
- 2025年广东省广州市高二下学期期末考试物理(理)试卷Word版含答案 .pdf VIP
- 简单的个人简历模板.pdf VIP
- 上消化道穿孔教学查房.pptx VIP
- 科研方法论知到智慧树期末考试答案题库2025年南开大学.docx VIP
- 2023山西临汾市永和县招用公益性岗位人员50人笔试备考题库及答案解析.docx VIP
文档评论(0)