版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1.7程序存储器地址生成方式第1页,共28页,2022年,5月20日,14点11分,星期五1.7 程序存储器地址生成方式程序存储器中存放着应用程序的代码、系数表以及立即操作数。各种程序控制操作的本质:把一个不是顺序增加的地址加载到PC。C54X由程序地址生成器(PAGEN)生成的地址加到PAB,再通过程序地址总线(PAB)寻址64K字的程序空间。第2页,共28页,2022年,5月20日,14点11分,星期五程序地址生成器(PAGEN)程序地址生成器(PAGEN)共有5个寄存器:程序计数器 ;重复计数器;块重复计数器;块重复起始地址寄存器;块重复结束地址寄存器;第3页,共28页,2022年,5
2、月20日,14点11分,星期五程序计数器 程序计数器(PC)是一个16位计数器;PC中保存的某个内部或外部程序存储器的地址,就是即将取指的某条指令、即将访问的某个立即操作数或系数表在程序存储器中的地址。 第4页,共28页,2022年,5月20日,14点11分,星期五加载地址到PC的几种途径操 作 加载到PC的地址复位 PC=FF80h顺序执行指令 PC=PC+1 分支转移 16位立即数加载到PC 由累加器分支转移 用累加器A或B的低16位加载到PC块重复循环 BRAF=1(块重复有效)当PC+1等于块重复循环 结束地址(REA+1)时将 块重复起始地址加载PC子程序调用 将PC+2压入堆栈,并
3、用指令后16位立即数加载PC, 返回将堆栈弹出到PC,回到原来程序处继续执行;从累加器调用子程序 将PC+1压入堆栈,用累加器A或B的低16位加载 到PC;返回时将堆栈弹出到PC,回到原来程序处继续执行;硬件中断或软件中断 将PC压入堆栈,用适当的中断向量地址加载PC;中断返回时将堆栈弹出到PC,继续执行被中断了的程序.第5页,共28页,2022年,5月20日,14点11分,星期五分支转移C54x的分支转移操作有两种形式:有条件分支转移;无条件分支转移;两者都可以带延迟操作(指令助记符带后缀D)和不带延迟操作。注意:紧跟在延迟指令后面的两个字,不能是造成PC不连续的指令(分支转移调用、返回或软
4、件中断指令)。第6页,共28页,2022年,5月20日,14点11分,星期五无条件分支转移指令指 令说 明B(D)用指令中所给出的地址加载PCBACC(D)用所指定的累加器的低16位作为地址加载PC第7页,共28页,2022年,5月20日,14点11分,星期五条件分支转移指令指 令说 明BC(D)如果指令中规定的条件得到满足就用指令中所给出的地址加载PCBANZ(D)当前辅助寄存器不等于0,就用指令中所给出的地址加载PC (用于循环 )第8页,共28页,2022年,5月20日,14点11分,星期五调用与返回与分支转移类似,当调用子程序或函数时,DSP就会中断原先的程序,转移到程序存储器的其它地
5、址继续运行。C54x的调用和返回都有两种形式无条件调用和返回;有条件调用与返回。两者都可能带延迟和不带延迟操作。第9页,共28页,2022年,5月20日,14点11分,星期五无条件调用与返回的指令指 令说 明CALL(D)将返回地址压入堆栈,用指令所规定的地址加载PCCALA(D)将返回地址压入堆栈,用 指定累加器的低16位地址加载PCRET(D)用堆栈顶的返回地址加载PCRETE(D)用堆栈顶的返回地址加载PC并开放中断RETF(D)用RTN寄存器中的返回地址加载PC,并开放中断第10页,共28页,2022年,5月20日,14点11分,星期五条件调用与返回的指令指 令说 明CC(D)如果条件
6、满足,则先将返回地址压入堆栈;再用所指定的地址加载PCRC(D)如果条件满足,将堆栈顶部的返回地址加载PC第11页,共28页,2022年,5月20日,14点11分,星期五 条件操作 C54x有一些指令只有当一个条件或多个条件得到满足列出的条件指令时才能执行。请看表1-21中的各种条件(23条)以及相应的操作数符号。 例如: BC pmad,cond,cond,cond当这条指令的所有条件得到满足时,程序才能转移到pmad。有时,条件指令中会出现多重条件,不是所有的条件都能构成多重条件的。第12页,共28页,2022年,5月20日,14点11分,星期五表1-21 条件指令中的各种条件第13页,共
7、28页,2022年,5月20日,14点11分,星期五多重条件指令中的条件组合 第 一 组 A类 B类EQ OVNEQ NOVLTLEQGTGEQ可以从A类中选择一个条件,同时从B类中选择一个条件;例如:BC L1 AGT,AOV不可以从同一类中选择两个条件;两种条件测试的累加器必须是同一个;例如:BC L1 AGT,BOV()第14页,共28页,2022年,5月20日,14点11分,星期五多重条件指令中的条件组合第 二 组A类 B类 C类TC C BIONTC NC NBIO可以从三类中各选择一个条件,但是不可以同时从同一类中选择两个条件;例如:BCTC,C,BIO BCNTC,C,NC ()
8、第15页,共28页,2022年,5月20日,14点11分,星期五条件存储指令条件存储指令 说 明SACCD arc,Xmem,cond 条件满足,(arc)(ASM-16) (Xmem), 否则(Xmem) (Xmem)STRCD Xmem,cond 条件满足,(T) (Xmem) 否则 (Xmem) (Xmem)SRCCD Xmem, cond 条件满足,(BRC) (Xmem) 否则 (Xmem) (Xmem)第16页,共28页,2022年,5月20日,14点11分,星期五条件执行指令XC语法:XCn,cond,cond,cond其中:n=1或者2n=1,在条件满足时,执行紧随其后的1个字
9、的指令;n=2,在条件满足时,执行紧随其后的1个双字指令或者2条单字指令;用途:在分支程序设计中,某个分支只有12字的代码,就可以用XC指令来代替分支转移指令(形式上减少一个分支)。第17页,共28页,2022年,5月20日,14点11分,星期五条件执行指令XC举例如果(A)=0,加法指令之前修改AR1。第18页,共28页,2022年,5月20日,14点11分,星期五 重复操作一、重复执行单条指令C54x有一个16位的重复计数器(RC)和两条能对其下条指令进行重复操作的指令RPT和RPTZ。 重复执行的次数等于(RC+1)。二、程序块重复操作C54x内部的块重复计数器(BRC)、块重复起始地址
10、寄存器(RSA)、块重复结束地址寄存器 (REA)与程序块重复指令RPTB、由若干条指令构成的程序块进行重复操作。第19页,共28页,2022年,5月20日,14点11分,星期五举例程 序 说 明STM #99,BRC ; 99 BRCRPTB NEXT-1 ;下一条指令至标NEXT * 前一条指令是需要重复 * 执行的程序块 *NEXT: ;重复程序块以外的指令第20页,共28页,2022年,5月20日,14点11分,星期五 复位操作复位(RS)是一个不可屏蔽的外部中断,它可以在任何时候使C54X进入一已知状态。复位后,处理器从FF80h处取指,并开始执行程序。注意:复位期间对其余的状态位以
11、及堆栈指针(SP)没有初始化。因此,用户在程序中必须对它们适当地进行初始化。第21页,共28页,2022年,5月20日,14点11分,星期五复位期间处理器进行的操作将IPTP置成1FFh;将PMST中的MP/MC置成与引脚MP/MC相同的数值;将PC置成FF80h;XPC寄存器清成零;(C548)不管MP/MC状态如何,将FF80h加到地址总线;数据总线变成高阻状态;控制线均处于无效状态;产生IACK信号;INTM置成1,关闭所有的可屏蔽中断;中断标志寄存器IFR清零;产生同步复位信号(SRESET),对外围电路初始化将下列状态位置成初始值: ARP=0 CLKOFF=0 HM=0 SXM=1
12、ASM=0 CMPT=0 INTM=1 TC=1 AVIS=0 CPL=0 OVA=0 XF=1BRAF=0 DP=0 OVB=0 C=1 DROM=0 OVLY=0C16=0 FRCT=0 OVM=0第22页,共28页,2022年,5月20日,14点11分,星期五中断中断是由硬件或者软件驱动的信号。C54X既支持软件中断,也支持硬件中断;软件中断:硬件中断:C54X的中断可分成两大类:第一类是可屏蔽中断;第二类是非屏蔽中断.第23页,共28页,2022年,5月20日,14点11分,星期五可屏蔽中断与非屏蔽中断可屏蔽中断;对C54X最多可支持16(SINT15-SINT0)个可屏蔽中断;例如:
13、C541只用了一部分-9个:INT3-0;RINT0,XINT0,RINT1,XINT1(串行口中断);TINT(定时器中断);非屏蔽中断:所有的软件中断和两个硬件中断(RS和NMI)中断有两个寄存器,它们是中断标志寄存器(IFR)和中断屏蔽寄存器(IMR)。第24页,共28页,2022年,5月20日,14点11分,星期五中断处理过程:C54x处理过程分三个阶段:第一阶段:接受中断请求;第二阶段:响应中断;第三阶段:执行中断服务程序.第25页,共28页,2022年,5月20日,14点11分,星期五第一阶段:接受中断请求 当发生硬件和软件指令请求中断时,CPU的IFR中的相应标志位置成1。硬件中断分类:外部内部产生软件中断的指令:INTRTRAPRESET第26页,共28页,2022年,5月20日,14点11分,星期五第二阶段:响应中断 软件中断和非屏蔽中断的响应条件:CPU立即响应。可屏蔽中断的响应条件: 优先级别最高。 ST1中的INTM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/Z 151-2026高压直流系统、静止无功补偿装置和柔性交流输电系统用换流器及其阀厅的防火措施
- 护理伦理困境与应对
- 湖南省常德市重点达标名校2026届初三下学期期末质量抽测数学试题试卷含解析
- 山东省新泰市西部联盟达标名校2025-2026学年初三下学期自测卷(一)数学试题含解析
- 2026年山东省商河县重点达标名校初三阶段性测试(二模)物理试题文试题含解析
- 福建省龙岩院附属中学2026届初三下质量检测试题(5月)物理试题含解析
- 2026年陕西省安康市汉滨初三教学质量检测试题(一模)物理试题试卷含解析
- 黑龙江省重点中学2026届初三周考数学试题四含解析
- 湖北省孝感市安陆市重点中学2026届初三第二次诊断性考试物理试题含解析
- 疼痛护理的持续质量改进:方法与案例
- 2026江苏南京市雨花台区征收拆迁安置办公室招聘编外人员3人笔试参考题库及答案解析
- 乐山市市中区2026年上半年公开招聘城市社区专职网格员(禁毒社工)(24人)笔试备考题库及答案解析
- 内部财务交叉检查制度
- 柔性传感器介绍
- 抖音直播营销案例分析
- 2025青岛国企社会招聘笔试题及答案解析
- 7s管理制度标准规范
- 2026年金融监管机构面试问题集含答案
- 血站安全教育培训课件
- 厂房拆除施工验收标准
- 农商行考试题及答案
评论
0/150
提交评论