ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:24.33KB ,
资源ID:8134297      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8134297.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(DSP指令大全.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

DSP指令大全.docx

1、DSP指令大全附录6 TMS320C54x 指令系统一览表(按指令功能排列)一、算术运算指令1. 加法指令 句 法表 达 式说 明字数周期ADD Smem,srcsrc=src+Smem操作数加至累加器11ADD Smem,TS,srcsrc=src+SmemTS操作数移位后加至累加器11ADD Smem,16,src,dstdst=src+Smem16操作数左移16位加至累加器11ADD Smem,SHIFT,src,dstdst=src+SmemSHIFT操作数移位后加到累加器22ADD Xmem,SHFT,srcsrc=src+XmemSHFT操作数移位后加到累加器11ADD Xmem,

2、Ymem,dstdst=Xmem16+Ymem16两个操作数分别左移16位后加到累加器11ADD #lk,SHFT,src,dstdst=src+#lkSHFT长立即数移位后加到累加器22ADD #lk,16,src,dstdst=src+#lk16长立即数左移16位后加到累加器22ADD src,SHIFT,dstdst=dst+srcSHIFT累加器移位后相加11ADD src,ASM,dstdst=dst+srcASM累加器按ASM移位后相加11ADDC Smem,srcsrc=src+Smem+C操作数带进位加至累加器11ADDM #lk,SmemSmem=Smem+#lk长立即数加至

3、存储器22ADDS Smem,srcsrc=src+uns(Smem)符号位不扩展的加法112. 减法指令 句 法表 达 式说 明字数周期SUB Smem,srcsrc=srcSmem从累加器中减去操作数11SUB Smem,TS,srcsrc=srcSmemTS从累加器中减去移位后的操作数11SUB Smem,16,src,dstdst=srcSmem16从累加器中减去左移16位后的操作数11SUB Smem,SHIFT,src,dstdst=srcSmemSHIFT操作数移位后与累加器相减22SUB Xmem,SHFT,srcsrc=srcXmemSHFT操作数移位后与累加器相减11SUB

4、 Xmem,Ymem,dstdst=Xmem16Ymem16两个操作数分别左移16位后相减11SUB #lk,SHFT,src,dstdst=src#1kSHFT长立即数移位后与累加器相减22SUB #lk,16,src,dstdst=src#1k16长立即数左移16位后与累加器相减22SUB src,SHIFT,dstdst=dstsrcSHIFT源累加器移位后与目的累加器相减11SUB src,ASM,dstdst=dstsrcASM源累加器按ASM移位后与目的累加器相减llSUBB Smem,srcsrc=srcSmemC从累加器中带借位减操作数11SUBC Smem,srcIf (sr

5、cSmem15)0src=(srcSmem15)1+1Elsesrc=srcl有条件减法11SUBS Smem,srcsrc=srcuns(Smem)符号位不扩展的减法113. 乘法指令 句 法表 达 式说 明字数周期MPY Smem,dstdst=T*SmemT寄存器值与操作数相乘11MPYR Smem,dstdst=rnd(T*Smem)T寄存器值与操作数相乘(带舍入)11MPY Xmem,Ymem,dstdst=Xmem*Ymem,T=Xmem两个操作数相乘11MPY Smem,#lk,dstdst=Smem*#lk,T=Smem长立即数与操作数相乘22MPY #lk,dstdst=T*

6、#lk长立即数与T寄存器值相乘22MPYA dstdst=T*A(32-16)T寄存值与累加器A高位相乘11MPYA SmemB=Smem*A(32-16),T=Smem操作数与累加器A高位相乘11MPYU Smem,dstdst=uns(T)*uns(Smem)无符号数乘法11SQUR Smem,dstdst=Smem*Smem,T=Smem操作数的平方11SQUR A,dstdst=A(3216)*A(3216)累加器A的高位平方114. 乘法累加/减指令 句 法表 达 式说 明字数周期MAC Smem,srcsrc=src+T*Smem操作数与T寄存器值相乘后加到累加器11MAC Xme

7、m,Ymem,src,dstdst=src+Xmern*Ymem,T=Xmem两个操作数相乘后加到累加器11MAC #lk,src,dstdst=src+T*#lk长立即数与T寄存器值相乘后加到累加器22MAC Smem,#lk,src,dstdst=src+Smem*#lk,T=Smem长立即数与操作数相乘后加到累加器22MACR Smem,srcdst=rnd(src+T*Smem)操作数与T寄存器值相乘后加到累加器(带舍入)11MACR Xmem,Ymem,src,dstdst=rnd(src+Xmem*Ymem),T=Xmem两个操作数相乘后加到累加器(带舍入)11MACA Smem,

8、BB=B+Smem*A(3216),T=Smem操作数与累加器A高位相乘后加到累加器B11MACA T,src,dstdst=src+T*A(3216)T寄存器值与累加器A高位相乘11MACAR Smem,BB=rnd(B+Smem*A(3216),T=SmemT寄存器值与累加器A高位相乘后加到累加B(带舍入)11MACAR T,src,dstdst=rnd(src+T*A(3216)累加器A高位与T寄存器值相乘后与源、累加器相加(带舍入)11MACD Smem,pmad,srcsrc=src+Smem*pmad,T=Smem,(Smem+1)=Smem操作数与程序存储器值相乘后累加并延迟23

9、MACP Smem,pmad,srcsrc=src+Smem*pmad,T=Smem操作数与程序存储器值相乘后加到累加器23MACSU Xmem,Ymem,srcsrc=src+uns(Xmem)*Ymem,T=Xmem元符号数与有符号数相乘后加到累加器11MAS Smem,srcsrc=srcT*Smem从累加器中减去T寄存器值与操作数的乘积11MASR Xmem,Ymem,src,dstdst=rnd(srcXmem*Ymem),T=Xmem从累加器中减去两操作数的乘积(带舍入)11MAS Xmem,Ymem,src,dstdst=srcXmem*Ymem,T=Xmem从源累加器中减去两操

10、作数的乘积11MASR Smem,srcsrc=rnd(srcT*Smem)从累加器中减去T寄存器值与操作数的乘积(带舍入)11MASA Smem,BB=BSmem*A(3216),T=Smem从累加器B中减去操作数与累加器A高位的乘积11MASA T,src,dstdst=srcT*A(3216)从源累加器中减去T寄存器值与累加器A高位的乘积11MASAR T,src,dstdst=rnd(srcT*A(3216)从源累加器中减去T寄存器值与累加器A高位的乘积(带舍入)11SQURA Smem,srcsrc=src+Smem*Smem,T=Smem操作数平方并累加11SQURS Smem,s

11、rcsrc=srcSmem*Smem,T=Smem从累加器中减去操作数的平方115. 双精度(32位操作数)指令 句 法表 达 式说 明字数周期DADD Lmem,src,dstIf C16=0dst=Lmem+srcIf C16=1dst(3916)=Lmem(3116)+src(3116)dst(150)=Lmem(150)+src(150)双精度/双16位数加到累加器11DADST Lmem,dstIf C16=0dst=Lmem+(T16+T)If C16=1dst(3916)=Lmem(3116)+Tdst(150)=Lmem(150)T双精度/双16位数与T寄存器值相加/减11DR

12、SUB Lmem,srcIf C16=0src=LmemsrcIf C16=1src(3916)=Lmem(3116)src(3116)src(150)=Lmem(150)src(150)双精度/双16位数中减去累加器值11DSADT Lmem,dstIf C16=0dst=Lmem(T16+T)If C16=1dst(3916)=Lmem(3116)Tdst(150)=Lmem(150)+T长操作数与T寄存器值相加/减11DSUB Lmem,srcIf C16=0src=srcLmemIf C16=1src(3916)=src(3116)Lmem(3116)src(150)=src(150)

13、Lmem(150)从累加器中减去双精度/双16位数11DSUBT Lmem,dstIf C16=0dst=Lmem(T16+T)If C16=1dst(3916)=Lmem(3116)Tdst(150)=Lmem(150)T从长操作数中减去T寄存器值116. 专用指令 句 法表 达 式说 明字数周期ABDST Xmem,YmemB=B+|A(3216)|,A=(XmemYmem)16绝对距离11ABS src,dstdst=|src|累加器取绝对值11CMPL src,dstdst=src累加器取反11DELAY Smem(Smem+1)=Smem存储器单元延迟11EXP srcT=numbe

14、r of sign bits(src)8求累加器的指数11FIRS Xmem,Ymem,pmadB=B+A*pmad,A=(Xmem+Ymem)16对称FIR滤波23LMS Xmem,YmemB=B+Xmem*Ymem,A=(A+Xmem16)+215求最小均方值11MAX dstdst=max(A,B)求累加器(A,B)最大值11MIN dstdst=min(A,B)求累加器(A,B)最小值11NEG src,dstdst=-src累加器变负11NORM src,dstdst=srcTS,dst=norm(src,TS)归一化11POLY SmemB=Smem16,A=rnd(A*T+B)求

15、多项式的值11RND src,dstdst=src+215累加器舍入运算11SAT srcsaturate(src)累加器饱和运算11SQDST Xmem,YmemB=B+A(3216)*A(3216),A=(XmemYmem)16求距离的平方11二、逻辑运算指令1. 与逻辑运算指令 句 法表 达 式说 明字数周期AND Smem,srcsrc=src&Smem操作数和累加器相与11AND #lk,SHFT,src,dstdst=src&#lkSHFT长立即数移位后和累加器相与22AND #lk,16,src,dstdst=src&#lk16长立即数左移16位后和累加器相与22AND src,

16、SHIFT,dstdst=dst&srcSHIFT源累加器移位后和目的累加器相与11ANDM #lk,SmemSmem=Smem&#lk操作数和长立即数相与222. 或逻辑运算指令 句 法表 达 式说 明字数周期OR Smemsrc=src|Smem操作数和累加器相或l1OR #lk,SHFT,src,dstdst=src|#lkSHFT长立即数移位后和累加器相或22OR #lk,16,src,dstdst=src|#lk16长立即数左移16位后和累加器相或22OR src,SHIFT,dstdst=dst|srcSHIFT源累加器移位后和目的累加器相或11ORM #lk,SmemSmem=S

17、mem|#lk操作数和长立即数相或223. 异或逻辑运算指令 句 法表 达 式说 明字数周期XOR Smem,srcsrc=srcSmem操作数和累加器相异或11XOR #lk,SHFT,src,dstdst=src#lkSHFT长立即数移位后和累加器相异或22XOR #lk,16,src,dstdst=src#lk16长立即数左移16位后和累加器相异或22XOR src,SHIFT,dstdst=dstsrcSHIFT源累加器移位后和目的累加器相异或11XORM #lk,SmemSmem=Smem#lk操作数和长立即数相异或224. 移位指令 句 法表 达 式说 明字数周期ROL srcRo

18、tate left with carry in累加器经进位位循环左移11ROLTC srcRotate left with TC in累加器经TC位循环左移11ROR srcRotate right with carry in累加器经进位位循环右移11SFTA src,SHIFT,dstdst=srcSHIFTarithmetic shift累加器算术移位11SFTC srcif src(31)=src(30)then src=src1累加器条件移位11SFTL src,SHIFT,dstdst=srcSHIFTlogical shift累加器逻辑移位115. 测试指令 句 法表 达 式说 明

19、字数周期BIT Xmem,BITCTC=Xmem(15BITC)测试指定位1lBITF Smem,#lkTC=(Smem&#lk)测试由立即数规定的位域22BITT SmemTC=Smem(15T(3O)测试由T寄存器指定的位11CMPM Smem,#lkTC=(Smem=#lk)存储单元与长立即数比较22CMPR CC,ARxCompare ARx with AR0辅助寄存器ARx与ARO比较11三、程序控制指令1. 分支转换指令 句 法表 达 式说 明字数周期BD pmadPC=pmad(150)无条件分支转移24/2BACCD srcPC=src(150)按累加器规定的地址转移16/4B

20、ANZD pmad,Sindif(Sind0) then PC=pmad(150)辅助寄存器不为O就转移24/2/2BCD pmad,cond,cond,condif(cond(s) then PC=pmad(150)条件分支转移25/3/3FBD extpmadPC=pmad(150),XPC=pmad(2216)无条件远程分支转移24/2FBACCD srcPC=src(150),XPC=src(2216)按累加器规定的地址远程分支转移16/42. 调用指令 句 法表 达 式说 明字数周期CALAD srcSP=PC,PC=src(150)按累加器规定的地址调用子程序16/4CALLD p

21、madSP=PC,PC=pmad(150)无条件调用子程序24/2CCD pmad,cond,cond,condif(cond(s)thenSP=PC,PC=pmad(150)有条件调用子程序25/3/3FCALAD srcSP=PC,SP=XPC,PC=src(150),XPC=src(2216)按累加器规定的地址远程调用子程序16/4FCALLD extpmadSP=PC,SP=XPC,PC=pmad(150),XPC=pmad(2216)无条件远程调用子程序2423. 中断指令 句 法表 达 式说 明字数周期INTR KSP=PC,PC=IPTR(157)+K2,INTM=1不可屏蔽的软

22、件中断,关闭其他可屏蔽中断13TRAP KSP=PC,PC=IPTR(157)+K2不可屏蔽的软件中断,不影响INTM位134. 返回指令 句 法表 达 式说 明字数周 期FRETDXPC=SP+,PC=SP+远程返回16/4FRETEDXPC=SP+,PC=SP+,INTM=O开中断,从远程中断返回16/4RCD cond,cond,condif(cond(s) then PC=SP+条件返回153/3RETDPC=SP+返回15/3RETEDPC=SP+,INTM=O开中断,从中断返回15/3RETFDPC=RTN,SP+,INTM=O开中断,从中断快速返回13/15. 重复指令 句 法表

23、 达 式说 明字数周 期RPT SmemRepeat single,RC=Smem重复执行下条指令(Smem)+1次11RPT #KRepeat single,RC=#K重复执行下条指令k十1次11RPT #lkRepeat single,RC=#lk重复执行下条指令#lk+1次22RPTBD pmadRepeat block,RSA=PC+24#,REA=pmad1块重复指令24/2RPTZ dst,#lkRepeat single,RC=#lk,dst=O重复执行下条指令,累加器清O226. 堆栈管理指令 句 法表 达 式说 明字数周期FRAME KSP=SP+K,-128k127堆栈指针

24、偏移一个立即数值11POPD SmemSmem=SP+将数据从栈顶弹出至数据存储器11POPM MMRMMR=SP+将数据从栈顶弹出至MMR11PSHD SmemSP=Smem将数据压人堆栈11PSHM MMRSP=MMR将MMR压人堆栈l17. 其他程序控制指令句 法表 达 式说 明字数周期IDLE Kidle(K),1k3保持空转状态,直到中断发生14MAR SmemIf CMPT=0,then modify ARx,ARP is unchangedIf CMPT=1 and ARxAR0,then modify ARx,ARP=xIf CMPT=1 and ARx=AR0,then mo

25、dify AR(ARP),ARP is unchanged修改辅助寄存器11NOPno operation空操作11RESETsoftware reset软件复位13RSBX N,SBITSTN(SBIT)=0状态寄存器位复位11SSBX N,SBITSTN(SBIT)=1状态寄存器位置位11XC n,cond,cond,condIf(cond(s)then execute the next n instructions;n=1or2有条件执行11注:条件“真”,条件“假”,延迟指令。四、加载和存储指令1. 加载指令 句 法表 达 式说 明字数周期DLD Lmem,dstdst=Lmem双精度/双16位长字加载累加器11LD Smem,dstdst=Smem将操作数加载到累加器11LD Smem,TS,dstdst=SmemTS操作数按TREG(50)移位后加

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1