第三章 DSP技术

第三章 DSP技术

ID:65493824

大小:2.63 MB

页数:120页

时间:2022-01-09

第三章  DSP技术_第1页
第三章  DSP技术_第2页
第三章  DSP技术_第3页
第三章  DSP技术_第4页
第三章  DSP技术_第5页
第三章  DSP技术_第6页
第三章  DSP技术_第7页
第三章  DSP技术_第8页
第三章  DSP技术_第9页
第三章  DSP技术_第10页
资源描述:

《第三章 DSP技术》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第三章TMS320LF240x的软件结构TMS320LF240x的寻址方式TMS320LF240x的汇编指令DSP软件的文件结构定点DSP芯片的数据定标及运算非线性函数的处理方法3.1TMS320LF240x的寻址方式DSP系统也具有计算机的一般特性,其完成的任务是采样、运算和输出的功能,即从某个地址单元(片内或片外)取数据,然后按照一定的规则进行运算,最后将运算的结果存放到某个地址单元来输出。因此,在程序中如何寻址和表达数据的地址是软件系统的关键问题。TMS320LF240x的程序采用了三种基本的寻址方式:立即寻址、直接寻址和间接寻

2、址。3.1.1立即寻址方式指令操作所需要的数就在本指令中,这个数也称为立即数。立即寻址的操作数分为短立即数和长立即数,因此相应的寻址方式也有短立即数寻址和长立即数寻址。退出【例1】采用8位短立即数寻址的RPT指令,需要重复执行的次数包含在指令操作码后。RPT#k;8位短立即数寻址退出【例2】采用9位短立即数寻址的RPT指令,需要重复执行的次数包含在指令操作码后。RPT#k;9位短立即数寻址退出【例3】采用13位短立即数寻址的RPT指令,需要重复执行的次数包含在指令操作码后。RPT#k;13位短立即数寻址退出【例4】采用16位长立即数寻

3、址的ADD指令。ADD#1k,2;将立即数1k左移2位后与累加器中;的内容相加,结果存累加器中退出3.1.2直接寻址方式操作地址就在指令中,按照该地址可以直接访问寄存器,这个地址也称为直接地址。在DSP程序中,直接寻址通常是将指令中的数据页指针DP和操作数合并起来作为被访问的地址。每页的具体操作地址的高9位是由数据页指针DP决定;低7位(又称偏移地址量)是由指令操作数决定,它处于指令寄存器的最低7位有效位上。DP指针与偏移地址量共同构成16位的指令操作地址。第15~8位为指令的操作码;第7位为直接/间接寻址指示符,为0是直接寻址;第6

4、~0位为偏移地址量。退出因此,在使用直接寻址方式时,应按下述步骤进行:(1)设置数据页面。将页值加载到DP,加载时可使用LDP指令。LDP指令可直接加载DP而不影响ST0的其他位,该指令明确指出加载到DP的值,例如把当前数据页设置成32(地址1000h-107Fh),可使用如下指令。LDP#32;加载数据页指针(2)指定偏移量。提供7位偏移量作为指令的操作数。例如将当前数据页的第2个地址中的数据加到ACC时。ADD1h;将当前数据页中偏移量为1处的数据加到ACC如果在一段代码块中所有的指令都访问的是同一数据页,则只需在该块代码的前面加

5、载一次DP即可;如果代码块中需要访问不同的数据页,则每当访问新的数据页时需确保加载相应的DP。退出【例5】采用直接寻址的ADD指令。LDP#4;设置数据页为4(地址0200h-027Fh)ADD9h,5;将数据地址0209h单元的内容左移5位后加至ACC退出【例6】使用直接寻址的ADDC指令。LDP#500;设置数据页为500(地址FA00h-FA7Fh)ADDC6h;数据寄存器地址FA06h单元的内容和进位值(C);一起加至累加器中退出3.1.3间接寻址方式指令中给出的操作数既不是立即数也不是直接地址,而是将这个操作数做地址的内存单

6、元的内容作为访问地址,即指令中的操作数是一个间接地址。间接寻址为系统的编程带来了很大的灵活性和方便性。DSP芯片内有8个辅助寄存器AR0-AR7和辅助寄存器算术单元ARAU,这些寄存器专用于间接寻址操作,它可以访问64KB的寻址空间而不受数据页的限制。因此,DSP的间接寻址能力非常灵活和强大,而且寻址的速度非常快。在间接寻址时,当前AR的内容用作将被访问的数据存储器的地址。因此,当前辅助寄存器中的内容才是真正被访问的数据地址。在进行间接寻址操作的同时可以对当前辅助寄存器中的内容(即操作地址)进行修改,甚至可以改变ARP的值,为下一次的

7、间接寻址操作做准备,从而极大地提高了寻址速度。退出TMS320LF240x提供了对AR的内容进行四种运算的选择:操作数选项操作数选项*不增加也不减少*0-减少变址量*+增加1*BR0+按反方进位增加变址量*-减少1*BR0-按反向进位减少变址量*0+增加变址量退出【例7】当前AR不增不减ADD*,8;把当前AR指定的数据存储单元的内容左移8位;后加至累加器中【例8】当前AR增加1ADD*+,8,AR4;把当前AR指定的数据存储单元的内容左;移8位后加至累加器中,当前AR内容加1,;指定下条指令的当前辅助寄存器为AR4【例9】当前AR减

8、去1ADD*-,8;把当前AR指定的数据存储单元的内容左移8;位后加至累加器中,当前AR内容减1退出【例10】当前AR增加一个变址量ADD*0+,8;把当前AR指定的数据存储单元的内容左移8;位后加至累加器中,AR0的内

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。