- 1、本文档共107页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
彭启琮DSP视频教程课件3重点
第三章DSP的软件结构 寻址方式:立即数寻址 短立即数寻址(单字指令) 寻址方式:立即数寻址 寻址方式:立即数寻址 长立即数寻址 寻址方式:立即数寻址 绝对地址寻址 数据存储器地址(dmad)寻址: 用一个符号或一个数来确定数据空间中的一个地址 例: MVKD sample,*AR5 sample所代表的就是一个dmad 绝对地址寻址 程序存储器地址(pmad)寻址: 用一个符号或一个数来确定程序地址空间中的一个地址 例: MVKD table,*AR5 table 所代表的就是一个pmad 绝对地址寻址 端口地址(PA)寻址 用一个符号或常数来确定I/O口地址 绝对地址寻址 *(lk)寻址 用一个符号或一个常数来确定数据存储器中的一个地址 例: LD *(BUFFER),A 把地址为BUFFER的数据单元中的数据装到AccA中 累加器寻址 用累加器中的数作为一个地址,可用来对存放数据的程序存储器寻址: 存储器映射寄存器(MMR)寻址 存储器映射寄存器寻址用来修改存储器映射寄存器而不影响当前数据页指针(DP)或堆栈指针(SP)的值。存储器映射寄存器寻址既可以在直接寻址中使用,又可以在间接寻址中使用。 堆栈寻址 系统堆栈用来在中断和子程序期间自动存放程序计数器。它也能用来存放额外的数据项或传递数据值。处理器使用一个16-bit的存储器映射寄存器—堆栈指针来对堆栈寻址,它总是指向存放在堆栈中的最后一个元素。 寻址方式:直接寻址 TMS320C54的数据存储器分为512页,每页128字。设置一个数据页指针DP(Data Pointer),用9-bit指向一个数据页,再加上一个7-bit的页内偏移地址,形成16-bit的数据地址 寻址方式:直接寻址 寻址方式:间接寻址 8个辅助寄存器(AR0--AR7),由一个辅助寄存器指针(ARP 3-bit)来指定 寻址方式:间接寻址 寻址方式:间接寻址 寻址方式:间接寻址 将该AR的内容加1或减1,再寻址(循环常用) 寻址方式:间接寻址 ADD *,8,A ;将当前辅助寄存器所指的地址里的数据,左移8-bit后加给AccA 寻址方式:间接寻址 ADD *0+,8,A ;执行加法后,将AR0的值加给当前辅助寄存器 正向进位与反向进位 1 0 0 1 0 0 + 1 0 0 + 1 0 0 ———— ———— 1 0 0 0 0 1 0 位倒序寻址 AR0 = 100 AR1 = 000 按AR1寻址后,将AR0加给AR1,反向进位 位倒序寻址 原序 原地址 位倒序后地址 位倒序 .mmregs .bss x, 4, 1 a0 .word 012h a1 .word 3211h a2 .word fe11h a3 .word ff03h .sect “program” LD #X, AR1 LD #0, A,AR1 LD #a0, T MAC *+,A LD #a1,T MAC *+,A LD #a2,T MAC *+,A LD #a3,T MAC *,A 循环寻址 许多算法,如卷积,相关和FIR滤波等,都需要在存储器中实现一个循环缓冲器。在这些算法中,一个循环缓冲器就是一个包含了最近的数据的滑动窗口。当新的数据来到时,缓冲器就会覆盖最早的数据。循环缓冲器实现的关键是循环寻址的实现。C54x间接寻址中提供了循环寻址的方式,以%表示。 循环寻址 定义循环缓冲器大小寄存器(BK)来确定循环缓冲器的大小。用循环缓冲器的有效基地址(EFB)和尾地址(EOB)来组成循环地址。step是加到辅助寄存器,或从辅助寄存器中减去的值。 汇编程序语法 TMS320的汇编程序包含汇编指令(伪指令,assembler directives)、汇编语言指令(assembly language instructions)、宏指令(macro directives)和注释(comments)。 C54的指令既可以是助记符方式,也可以是代数式方式 助记符方式汇编程序语法 [label][:] mnemonic [operand list] [;comment] [标号][
文档评论(0)