资源描述:
《dsp寻址方式作业.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Dsp寻址方式作业学号:班级:姓名:目录1、 立即数寻址32、 绝对地址寻址 32.1 数据存储器地址(dmad)寻址:32.2 程序存储器地址(pmad)寻址: 42.3 I/O端口地址(PA)寻址:4 3、累加器寻址54、直接寻址55、间接寻址65.1单操作数寻址65.2 循环寻址65.3位倒序寻址 75.4双操作数( Dual-Operand Memory )寻址 86、存储器映像寄存器寻址 97、堆栈寻址 10总结10TMS320C54x系列DSP的存储空间包括程序存储空间、数据存储空间和I
2、/O空间。每个空间都有64K字的大小。因此,如果采用直接的寻址方式则需16位的地址。为了节省程序存储空间和提高程序的运行速度,经常采用间接寻址等方法以便使指令字节数减少。 1、 立即数寻址概念:在指令中已经包含有执行指令所需要的操作数(主要用于寄存器或者存储器的初始化)在立即寻址方式中,指令里包含了立即操作数。 立即寻址方式中的立即数有两种数值形式,3、5、8、9位短立即数和16位的长立即数,它们在指令中分别编码为单字指令和双字指令。 举例: LD #0AH,AS
3、M ;5-bit (EDOA) RPT #99H ;8-bit (EC99) LD #020H,DP ;9-bit (EA20) LD #0FE00H,A ;16-bit (F020 FE00) 需要注意的是,立即数前面加需“#”以区别于地址表示方法,不得遗漏。 LD #0FE00H,A,表示将立即数FE00H送入累加器A,遗漏#,则变成把地址为0FE00H单元的内容送入累加器A(1000 FE00)。 2、 绝对地
4、址寻址 绝对寻址方式的指令中包含有所寻操作数的16位单元地址。 由于寻址16位绝对地址,故绝对寻址指令长度至少为2个字。有四种绝对寻址指令: 2.1 数据存储器地址(dmad)寻址:概念:是用一个符号或者一个数来确顶数据空间的一个地址。 格式:MVDK Smem, dmad MVDM dmad, MMR MVKD dmad, Smem MVMD MMR, dmad 举例:MVDK,DATA,*AR5
5、说明:DATA信号是一个符号常数,代表一个数据的存储单元的地址。2.2 程序存储器地址(pmad)寻址: 概念:程序存储器寻址由程序地址产生逻辑(PAGEN)完成。预取指阶段,PAGEN通过程序计数指针PC将指令代码、参数表等所在的程序存储器地址放在PAB上,进而从程序存储器相应的位置取出指令代码。 如果程序顺序执行,即程序地址连续,PC值将自动增加,指向下一条指令的地址; 如果程序执行过程中有跳转、返回、中断或循环操作,程序地址将不连续,这时PC值就要根据具体情况相应改变了。 程序计数指针P
6、C是一个16位的计数器,PC中所加载的16位程序地址与DSP执行的操作有关。格式: FIRS Xmem, Ymem, pmad MVDP Smem , pmad MACP Smem, pmad, src MVPD pmad, SmemMVPD,TABLE,*AR7-说明:将程序存储器编号为TABLE地址单元中的数据传送到有AR7寄存器所指向的数据存储器单元中,且AR7减一。这里的TABLE是一个地址标号,代表一个程序存储单元的地址。程序存储器
7、寻址基本上和数据存储器寻址一样,区别仅在于空间不同。2.3 I/O端口地址(PA)寻址:概念: 端口(PA)寻址使用一个符号或者一个16位数来确定I/O空间存储器中的一个地址,实现对I/O设备的读写。格式: PORTR PA, Smem PORTW Smem,举例:PORTR,FIFO,*AR5PORTW,*AR2,BOFO说明:第一条指令表示从FIFO端口读入一个数据,将其存放到有AR5据存期所指向的数据存储器单元中。这里的FIFO和BOFO是
8、I/O端口地址的标号。 PA 长立即数*(lk)寻址:概念:*(lk)寻址是用一个符号或者一个常数来确定数据存储器中的一个地址。适用于支持单数据操作数的的指令。Lk是一个16位数或者一个符号,它代表数据存储器中的一个的单元。 举例: LD *(BUFFER),AMVKD DATA, *AR1; 数据存储器寻址 MVPD TABLE, *AR2; 程序存储器寻址 PORTR 0F2F0H, *AR5; 端口寻址