3_TMS320C54x的数据寻址方式.pptVIP

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3_TMS320C54x的数据寻址方式

第3章 TMS320C54x的数据寻址方式 3.1 立即寻址 3.2 绝对寻址 3.3 累加器寻址 3.4 直接寻址 3.5 间接寻址 3.6 存储器映象寄存器寻址 3.7 堆栈寻址 寻址方式小结 TMS320C54x DSP提供以下7种基本数据寻址方式。 (1)立即数寻址 (2)绝对地址寻址 (3)累加器寻址 (4)直接寻址 (5)间接寻址 (6)存储器映射寄存器寻址 (7)堆栈寻址 3.1 立即寻址 操作数(常数)含在指令中。 一条指令中可对两种立即数编码,一种是短立即数(3、5、8或9位),另一种是16位的长立即数。短立即数指令编码为一个字长,16位立即数的指令编码为两个字长。 立即数寻址指令中在数字或符号常数前面加一个“#”号,来表示立即数。 3.2 绝对寻址( 指令中含有操作数的16位地址) 3.2.1 数据存储器(dmad)绝对寻址 3.2.2 程序存储器(pmad)绝对寻址 3.2.3 端口(PA)绝对寻址 3.2.4 *(lk)绝对寻址 3.2.1 数据存储器(dmad)绝对寻址 使用数据存储器寻址的指令有: MVDK Smem, dmad MVDM dmad, MMR MVKD dmad, Smem MVMD MMR, dmad 数据存储器绝对寻址可以使用符号(符号地址)或一个表示16位地址的立即数来指明寻址的数据存储单元的绝对地址。例如: MVKD SMAPLE,*AR5; 3.2.2 程序存储器(pmad)绝对寻址 使用程序存储器寻址的指令有: FIRS Xmem, Ymem, pmad MACD Smem, pmad, src MACP Smem, pmad, src MVDP Smem, pmad MVPD pmad, Smem 程序存储器绝对寻址可以使用符号(符号地址)或一个表示16位地址的立即数来给出程序空间的地址。例如,把程序存储器中标号为TABLE单元中的值复制到AR7所指定的数据存储器中去,指令可写为: MVPD TABLE,*AR7; 3.2.3 端口(PA)绝对寻址 使用端口地址的指令有: PORTR PA, Smem PORTW Smem , PA 端口(PA)绝对寻址使用一个符号(符号地址)或一个表示16位地址的立即数来给出外部I/O口地址。例如: PORTR FIFO ,*AR5; 3.2.4 *(lk)绝对寻址 长立即数*(lk)绝对寻址使用一个符号(符号地址)或一个表示16位地址的立即数来指定数据存储空间的一个地址。例如,把数据空间中地址为BUFFER单元中的数据传送到累加器A,指令可写为: LD *(BUFFER),A 长立即数*(lk)绝对寻址用于所有支持单数据存储器操作数(Smem)的指令。 3.3 累加器寻址 累加器寻址是操作数地址在累加器 中。放在累加器中的地址是程序存储器地址。共有两条指令可以采用累加器寻址: READA Smem WRITA Smem 3.4 直接寻址 在直接寻址方式中,指令中含有操作数地址的低7位 ,作为地址偏移量,结合基地址共同形成16位的数据存储器地址。基地由数据页指针DP或堆栈指针SP给出。 使用这种寻址方式,可在不改变DP或SP的情况下,对一页内的128个存储单元随机寻址。采用这种寻址方式的好处是指令为单字指令,数据存储器地址(dma)的低7位放在指令字中(如图3-1、3-2所示)。 3.5 间接寻址 间接寻址:操作数的地址在辅助寄存器中,支持倒位序寻址、循环寻址等功能 。 3.5.1 单操作数寻址 3.5.2 双操作数寻址 3.5.1 单操作数寻址 表3-2列出了单数据存储器(Smem)操作数间接寻址类型。 特殊的间接寻址方式有: 1.循环寻址 2.倒序寻址(如表3-3所示) 循环缓冲区 循环寻址的算法: If 0=index+stepBK index=index+step Else if index+step=BK index=index+step-BK Else if index+step0 index=index+step+BK 如果循环缓冲区的长度为N,则缓冲区的起始地址的最低( LSB)的nb位必须为0。 nb的确定要满足 N2nb。 例如: 若 N=32, 起始地址的最低6位=000000, 26=64 若 N=30,起始地址的最低5位 =00000, 25=32 访问循环缓冲区: 用N (nb bits) 初始化BK 选择1个 ARi 作为指针 在ARi中的有效起始地址低nb位为0。 循环寻址 间接寻址中

文档评论(0)

ligennv1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档