3986.net
小网站 大容量 大智慧
相关标签
当前位置:首页 >> 信息与通信 >>

DSP指令一览表


DSP 指令一览表
附录 6 TMS320C54x 指令系统一览表(按指令功能排列) 一、算术运算指令 1. 加法指令 句 法 表 达 式 说 明 字数 周期 src=src+Smem 1 1 ADD Smem,src 操作数加至累加器 1 src=src+Smem<<TS 1 ADD Smem,TS,src 操作数移位后加至累加器 dst=src+Smem<<16 1 1 ADD Smem,16,src[,dst] 操作数左移 16 位加至累加器 2 2 ADD Smem[,SHIFT],src[,dst] dst=src+Smem<<SHIFT 操作数移位后加到累加器 src=src+Xmem<<SHFT 1 1 ADD Xmem,SHFT,src 操作数移位后加到累加器 1 dst=Xmem<<16+Ymem<<16 两个操作数分别左移 16 位后加到累加器 1 ADD Xmem,Ymem,dst dst=src+#lk<<SHFT 2 2 ADD #lk[,SHFT],src[,dst] 长立即数移位后加到累加器 dst=src+#lk<<16 2 2 ADD #lk,16,src[,dst] 长立即数左移 16 位后加到累加器 dst=dst+src<<SHIFT 1 1 ADD src,[,SHIFT][,dst] 累加器移位后相加 1 dst=dst+src<<ASM 1 ADD src,ASM[,dst] 累加器按 ASM 移位后相加 1 src=src+Smem+C 1 ADDC Smem,src 操作数带进位加至累加器 Smem=Smem+#lk 2 2 ADDM #lk,Smem 长立即数加至存储器 src=src+uns(Smem) 1 1 ADDS Smem,src 符号位不扩展的加法 2. 减法指令 句 法 表 达 式 说 明 字数 周期 src=src—Smem 1 1 SUB Smem,src 从累加器中减去操作数 src=src—Smem<<TS 1 1 SUB Smem,TS,src 从累加器中减去移位后的操作数 1 dst=src—Smem<<16 1 SUB Smem,16,src[,dst] 从累加器中减去左移 16 位后的操作数 2 2 SUB Smem[,SHIFT],src[,dst] dst=src—Smem<<SHIFT 操作数移位后与累加器相减 src=src—Xmem<<SHFT 1 1 SUB Xmem,SHFT,src 操作数移位后与累加器相减 dst=Xmem<<16—Ymem<<16 两个操作数分别左移 16 位后相减 1 1 SUB Xmem,Ymem,dst dst=src—#1k<<SHFT 2 2 SUB #lk[,SHFT],src[,dst] 长立即数移位后与累加器相减 dst=src—#1k<<16 2 2 SUB #lk,16,src[,dst] 长立即数左移 16 位后与累加器相减 dst=dst—src<<SHIFT 1 1 SUB src[,SHIFT][,dst] 源累加器移位后与目的累加器相减 dst=dst—src<<ASM l SUB src,ASM[,dst] 源累加器按 ASM 移位后与目的累加器相减 l SUBB Smem,src SUBC Smem,src SUBS Smem,src 3. 乘法指令 句 法 表 达 式 dst=T*Smem dst=rnd(T*Smem) dst=Smem*#lk,T=Smem dst=T*#lk dst=T*A(32-16) dst=uns(T)*uns(Smem) dst=A(32—16)*A(32—16)
1 — 从累加器中带借位减操作数 src=src—Smem—C If (src—Smem<<15)≥0 src=(src—Smem<<15)<<1+1 有条件减法 Else src=src<<l src=src—uns(Smem) 符号位不扩展的减法

1 1 1

1 1 1





字数 周期 1 1 2 2 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1

MPY Smem,dst MPYR Smem,dst MPY Smem,#lk,dst MPY #lk,dst MPYA dst MPYA Smem MPYU Smem,dst SQUR Smem,dst SQUR A,dst

T 寄存器值与操作数相乘

T 寄存器值与操作数相乘(带舍入) 1

MPY Xmem,Ymem,dst dst=Xmem*Ymem,T=Xmem 两个操作数相乘 长立即数与操作数相乘 长立即数与 T 寄存器值相乘 T 寄存值与累加器 A 高位相乘

B=Smem*A(32-16),T=Smem 操作数与累加器 A 高位相乘 无符号数乘法 dst=Smem*Smem,T=Smem 操作数的平方 累加器 A 的高位平方

4. 乘法累加/减指令 句 法 表 达 式 src=src+T*Smem dst=src+Xmern*Ymem T=Xmem dst=src+T*#lk dst=src+Smem*#lk,T=Smem dst=rnd(src+T*Smem) dst=rnd(src+Xmem*Ymem) T=Xmem B=B+Smem*A(32—16) T=Smem dst=src+T*A(32—16) , 两个操作数相乘后加到累加器(带舍入) , 操作数与累加器 A 高位相乘后加到累加器 B 1 T 寄存器值与累加器 A 高位相乘 1 1 1 1 1 3 3 1 1 1 1 1 1 1 1 1 1 1 1 , 两个操作数相乘后加到累加器 长立即数与 T 寄存器值相乘后加到累加器 长立即数与操作数相乘后加到累加器 1 2 2 1 2 2 1 说 明 字 周 数 期 1 1

MAC Smem,src MAC Xmem,Ymem,src[,dst] MAC #lk,src[,dst] MAC Smem,#lk,src[,dst] MACR Smem,src MACR Xmem, Ymem, src[, dst] MACA Smem[,B] MACA T,src[,dst] MACAR Smem[,B] MACAR T,src[,dst] MACD Smem,pmad,src MACP Smem,pmad,src MACSU Xmem,Ymem,src MAS Smem,src MASR Xmem,Ymem,src[,dst] MAS Xmem,Ymem,src[,dst] MASR Smem,src MASA Smem[,B] MASA T,src[,dst] MASAR T,src[,dst] SQURA Smem,src SQURS Smem,src

操作数与 T 寄存器值相乘后加到累加器

操作数与 T 寄存器值相乘后加到累加器(带 1 舍入)

B=rnd(B+Smem*A(32—16)) , T 寄存器值与累加器 A 高位相乘后加到累加 1 T=Smem B(带舍入) dst=rnd(src+T*A(32—16)) src=src+Smem*pmad, T=Smem,(Smem+1)=Smem src=src+uns(Xmem)*Ymem T=Xmem src=src—T*Smem 累加器 A 高位与 T 寄存器值相乘后与源、 累 1 加器相加(带舍入) 操作数与程序存储器值相乘后累加并延迟 2 2 1

src=src+Smem*pmad,T=Smem 操作数与程序存储器值相乘后加到累加器 , 元符号数与有符号数相乘后加到累加器

从累加器中减去 T 寄存器值与操作数的乘积 1 1 1

dst=rnd(src—Xmem*Ymem) , 从累加器中减去两操作数的乘积(带舍入) T=Xmem dst=src—Xmem*Ymem T=Xmem src=rnd(src—T*Smem) B=B—Smem*A(32—16) T=Smem dst=src—T*A(32—16) dst=rnd(src—T*A(32—16)) , 从源累加器中减去两操作数的乘积

从累加器中减去 T 寄存器值与操作数的乘积 1 (带舍入) , 从累加器 B 中减去操作数与累加器 A 高位的 1 乘积 从源累加器中减去 T 寄存器值与累加器 A 高 1 位的乘积 从源累加器中减去 T 寄存器值与累加器 A 高 1 位的乘积(带舍入) 1 1

src=src+Smem*Smem,T=Smem 操作数平方并累加 src=src—Smem*Smem, T=Smem 从累加器中减去操作数的平方

2

5. 双精度(32 位操作数)指令 句 表 达 式 说 明 字数 周期 If C16=0 dst=Lmem+src 1 1 双精度/双 16 位数加到累加器 DADD Lmem,src[,dst] If C16=1 dst(39—16)=Lmem(31—16)+src(31—16) dst(15—0)=Lmem(15—0)+src(15—0) If C16=0 dst=Lmem+(T<<16+T) If C16=1 1 DADST Lmem,dst 双精度/双 16 位数与 T 寄存器值相加/减 1 dst(39—16)=Lmem(31—16)+T dst(15—0)=Lmem(15—0)—T If C16=0 src=Lmem—src If C16=1 1 1 DRSUB Lmem,src 双精度/双 16 位数中减去累加器值 src(39—16)=Lmem(31—16)—src(31—16) src(15—0)=Lmem(15—0)—src(15—0) If C16=0 dst=Lmem—(T<<16+T) If C16=1 1 1 DSADT Lmem,dst 长操作数与 T 寄存器值相加/减 dst(39—16)=Lmem(31—16)—T dst(15—0)=Lmem(15—0)+T If C16=0 src=src—Lmem If C16=1 1 1 DSUB Lmem,src 从累加器中减去双精度/双 16 位数 src(39—16)=src(31—16)—Lmem(31—16) src(15—0)=src(15—0)—Lmem(15—0) If C16=0 dst=Lmem—(T<<16+T) If C16=1 1 1 DSUBT Lmem,dst 从长操作数中减去 T 寄存器值 dst(39—16)=Lmem(31—16)—T dst(15—0)=Lmem(15—0)—T 法

6. 专用指令 句 法 表 达 式 B=B+|A(32—16)|,A=(Xmem—Ymem)<<16 dst=|src| dst= s r c
———





字数 周期 1 1 1 1 1 2 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1

ABDST Xmem,Ymem ABS src[,dst] CMPL src[,dst] DELAY Smem EXP src LMS Xmem,Ymem MAX dst MIN dst NEG src[,dst] NORM src[,dst] POLY Smem RND src[,dst] SAT src SQDST Xmem,Ymem

绝对距离 累加器取绝对值 累加器取反 存储器单元延迟 求累加器的指数 对称 FIR 滤波 求最小均方值

(Smem+1)=Smem T=number of sign bits(src)—8 B=B+Xmem*Ymem,A=(A+Xmem<<16)+215 dst=max(A,B) dst=min(A,B) dst=-src dst=src<<TS,dst=norm(src,TS) B=Smem<<16,A=rnd(A*T+B) dst=src+215 saturate(src)

FIRS Xmem,Ymem,pmad B=B+A*pmad,A=(Xmem+Ymem)<<16

求累加器(A,B)最大值 1 求累加器(A,B)最小值 1 累加器变负 归一化 求多项式的值 累加器舍入运算 累加器饱和运算 1 1 1 1 1 1

B=B+A(32—16)*A(32—16),A=(Xmem—Ymem)<<16 求距离的平方

3

二、逻辑运算指令 1. 与逻辑运算指令 句 法 表 达 式 src=src&Smem dst=src&#lk<<16 Smem=Smem&#lk 说 明 字数 周期 1 2 1 2 1 2 2 1 2 AND Smem,src AND #lk,16,src[,dst] AND src[,SHIFT][,dst] ANDM #lk,Smem 2. 或逻辑运算指令 句 法 表 达 式 src=src|Smem dst=src|#lk<<16 Smem=Smem|#lk 说 明 字数 周期 l 2 1 2 1 2 2 1 2 OR Smem OR #lk,16,src[,dst] OR src[,SHIFT][,dst] ORM #lk,Smem 3. 异或逻辑运算指令 句 法 表 达 式 src=src∧Smem dst=src∧#lk<<16 Smem=Smem∧#lk 说 明 字数 周期 1 2 1 2 1 2 2 1 2 XOR Smem,src XOR #lk,16,src[,dst] XOR src[,SHIFT][,dst] XORM #lk,Smem 4. 移位指令 句 法 表 达 式 Rotate left with carry in Rotate left with TC in Rotate right with carry in 说 明 字数 周期 1 1 1 1 1 1 ROL src ROLTC src ROR src SFTC src 累加器经进位位循环左移 1 累加器经 TC 位循环左移 1 1 1 1 累加器经进位位循环右移 1

操作数和累加器相与

AND #lk[,SHFT],src[,dst] dst=src&#lk<<SHFT 长立即数移位后和累加器相与 dst=dst&src<<SHIFT 源累加器移位后和目的累加器相与 操作数和长立即数相与

长立即数左移 16 位后和累加器相与 2

操作数和累加器相或

OR #lk[,SHFT],src[,dst] dst=src|#lk<<SHFT 长立即数移位后和累加器相或 dst=dst|src<<SHIFT 源累加器移位后和目的累加器相或 操作数和长立即数相或

长立即数左移 16 位后和累加器相或 2

操作数和累加器相异或

XOR #lk,[,SHFT],src[,dst] dst=src∧#lk<<SHFT 长立即数移位后和累加器相异或 dst=dst∧src<<SHIFT 源累加器移位后和目的累加器相异或 操作数和长立即数相异或

长立即数左移 16 位后和累加器相异或 2

SFTA src,SHIFT[,dst] dst=src<<SHIFT{arithmetic shift} 累加器算术移位 if src(31)=src(30)then src=src<<1 累加器条件移位 累加器逻辑移位 SFTL src,SHIFT[,dst] dst=src<<SHIFT{logical shift} 5. 测试指令 句 法 表 达 式 说 明

字数 周期 1 2 1 2 l 2 1 2 1

BIT Xmem,BITC TC=Xmem(15—BITC) BITF Smem,#lk TC=(Smem&#lk) BITT Smem CMPM Smem,#lk TC=(Smem==#lk)

测试指定位 测试由立即数规定的位域

TC=Smem(15—T(3—O)) 测试由 T 寄存器指定的位 存储单元与长立即数比较

CMPR CC,ARx Compare ARx with AR0 辅助寄存器 ARx 与 ARO 比较 1

4

三、程序控制指令 1. 分支转换指令 句 法 表 达 式 PC=pmad(15—0) PC=src(15—0) if(Sind≠0) then PC=pmad(15—0) PC=pmad(15—0), XPC=pmad(22—16) PC=src(15—0),XPC=src(22—16) 说 明 字数 周期 2 1 2 2 2 1 4/[2※] 6/[4※] 4?/2§/[2※] 5?/3§/[3※] 4/[2※] 6/[4※] B[D] pmad BACC[D] src BANZ[D] pmad,Sind

无条件分支转移 按累加器规定的地址转移 辅助寄存器不为 O 就转移

BC[D] pmad,cond[,cond[,cond]] if(cond(s)) then PC=pmad(15—0) 条件分支转移 FB[D] extpmad FBACC[D] src 无条件远程分支转移 按累加器规定的地址远程 分支转移

2. 调用指令 句 法 表 达 式 --SP=PC,PC=src(15-0) --SP=PC,PC=pmad(15-0) if(cond(s))then--SP=PC, PC=pmad(15-0) --SP=PC,--SP=XPC, PC=src(15-0),XPC=src(22-16) --SP=PC,--SP=XPC, PC=pmad(15-0) XPC=pmad(22-16) 说 明 字数 1 2 2 1 周期 6/[4※] 4/[2§] 5?/3§/[3※] 6/[4※]

CALA[D] src CALL[D] pmad CC[D] pmad,cond[,cond[,cond]] FCALA[D] src

按累加器规定的地址调用 子程序 无条件调用子程序 有条件调用子程序 按累加器规定的地址远程 调用子程序

FCALL[D] extpmad

, 无条件远程调用子程序

2

4[2※]

注:?条件“真”,§条件“假”,※延迟指令。 3. 中断指令 句 法 表 达 式 说 明 字数 周期 3 3 INTR K --SP=PC,PC=IPTR(15—7)+K<<2,INTM=1 不可屏蔽的软件中断,关闭其他可屏蔽中断 1 TRAP K --SP=PC,PC=IPTR(15—7)+K<<2 4. 返回指令 句 法 表 达 式 XPC=SP++,PC=SP++ 说 明 字数 周 期 FRET[D] FRETE[D] RET[D] RETE[D] RETF[D] 1 6/[4※] 1 5?3§/[3※] 1 5/[3※] 1 5/[3※] 不可屏蔽的软件中断,不影响 INTM 位 1

远程返回

XPC=SP++,PC=SP++,INTM=O 开中断,从远程中断返回 1 6/[4※] 条件返回 返回 开中断,从中断返回 PC=SP++ PC=SP++,INTM=O PC=RTN,SP++,INTM=O

RC[D] cond[,cond[,cond]] if(cond(s)) then PC=SP++

开中断,从中断快速返回 1 3/[1※]

注:?条件“真”,§条件“假”,※延迟指令。 5. 重复指令 句 法 表 达 式 Repeat single,RC=Smem Repeat single,RC=#K Repeat single,RC=#lk Repeat block,RSA=PC+2[4#],REA=pmad—1 Repeat single,RC=#lk,dst=O
5





字数 周 期 1 1 2 2 2 1 1 2 4/[2※] 2

RPT Smem RPT #K RPT #lk RPTB[D] pmad RPTZ dst,#lk

重复执行下条指令(Smem)+1 次 重复执行下条指令 k 十 1 次 重复执行下条指令#lk+1 次 块重复指令 重复执行下条指令,累加器清 O

注:?条件“真”,§条件“假”,※延迟指令。

6. 堆栈管理指令 句 法 表 达 式 说 明 字数 周期 FRAME K SP=SP+K,-128≤k≤127 堆栈指针偏移一个立即数值 1 1 POPD Smem Smem=SP++ 1 将数据从栈顶弹出至数据存储器 1 POPM MMR MMR=SP++ 1 1 将数据从栈顶弹出至 MMR PSHD Smem --SP=Smem 1 1 将数据压人堆栈 PSHM MMR --SP=MMR l 1 将 MMR 压人堆栈 7. 其他程序控制指令





表 达 式 idle(K),1≤k≤3

IDLE K

说 明 字数 周期 保持空转状态,直到中断 1 4 发生

If CMPT=0,then modify ARx, ARP is unchanged If CMPT=1 and ARx≠AR0,then modify ARx, MAR Smem 修改辅助寄存器 ARP=x If CMPT=1 and ARx=AR0,then modify AR(ARP), ARP is unchanged NOP no operation 空操作 RESET software reset 软件复位 STN(SBIT)=0 RSBX N,SBIT 状态寄存器位复位 STN(SBIT)=1 SSBX N,SBIT 状态寄存器位置位 XC n,cond[,cond[,cond]] If(cond(s))then execute the next n instructions;n=1or2 有条件执行 注:?条件“真”,§条件“假”,※延迟指令。

1

1

1 1 1 1 1

1 3 1 1 1

四、加载和存储指令 1. 加载指令 句 法 表 达 式 说 明 字数 周期 dst=Lmem 1 1 DLD Lmem,dst 双精度/双 16 位长字加载累加器 dst=Smem 1 1 LD Smem,dst 将操作数加载到累加器 dst=Smem<<TS 1 LD Smem,TS,dst 操作数按 TREG(5~0)移位后加载到累加器 1 dst=Smem<<16 1 1 LD Smem,16,dst 操作数左移 16 位后加载累加器 2 2 LD Smem[,SHIFT],dst dst=Smem<<SHIFT 操作数移位后加载累加器 1 1 LD Xmem,SHFT,dst dst=Xmem<<SHFT 操作数移位后加载累加器 dst=#K 1 1 LD #K,dst 短立即数加载累加器 dst=#lk<<SHFT 2 2 LD #lk[,SHFT],dst 长立即数移位后加载累加器 dst=#lk<<16 2 2 LD #lk,16,dst 长立即数左移 16 位后加载累加器 dst=src<<ASM 1 1 LD src,ASM[,dst] 源累加器按 ASM 移位后加载目的累加器 1 1 LD src[,SHIFT][,dst] dst=src<<SHIFT 源累加器移位后加载目的累加器 T=Smem 1 1 LD Smem,T 操作数加载 T 寄存器 DP=Smem(8—0) 1 3 LD Smem,DP 9 位操作数加载 DP DP=#k9 1 1 LD #k9,DP 9 位立即数加载 ARP ASM=#k5 1 1 LD #k5,ASM 5 位立即数加载 ASM 1 ARP=#k3 1 LD #k3,ARP 3 位立即数加载 ARP ASM=Smem(4—O) 1 1 LD Smem,ASM 5 位操作数加载 ASM 1 dst=MMR 1 LDM MMR,dst 将 MMR 加载到累加器 dst(31—16)=rnd(Smem) 1 1 LDR Smem,dst 操作数舍入加载累加器高位 dst=uns(Smem) 1 1 LDU Smem,dst 无符号操作数加载累加器 LTD Smem 1 1 T=Smem,(Smem+1)=Smem 操作数加载 T 寄存器并延迟

6

2. 存储指令 句 法 表 达 式 Lmem=src Smem=T Smem=TRN Smem=#lk Smem=src(31—16) 说 明 字数 周期 1 1 1 2 1 1 2 1 1 2 1 2 2 1 1 2 1 1 1 2 1 1 1 2 1 2 DST src,Lmem ST T,Smem ST TRN,Smem ST #lk,Smem STH src,Smem STH src,ASM,Smem

累加器值存到长字单元中 存储 T 寄存器值 存储 TRN 寄存器值 存储长立即数 存储累加器高位

Smem=src(31—16)<<(ASM) 累加器高位按 ASM 移位后存储 1

STH src,SHFT,Xmem Xmem=src(31—16)<<(SHFT) 累加器高位移位后存储 STH src[,SHIFT],Smem Smem=src(31—16)<<(SHIFT) 累加器高位移位后存储 STL src,Smem STL src,ASM,Smem STL src,SHFT,Xmem STLM src,MMR STM #lk,MMR 3. 条件存储指令 句 法 表 达 式 If src(31—16)>src(15—0) then Smem=src(31—16) If src(31—16)≤src(15—0) then Smem=src(15—0) If(cond) Xmem=BRC If(cond) Xmem=T 说 明 Smem=src(15—0) Smem=src(15—0)<<ASM Xmem=src(15—0)<<SHFT MMR=src(15—0) MMR=#lk 存储累加器低位

累加器低位按 ASM 移位后存储 1 累加器低位移位后存储 累加器低位移位后存储 累加器低位存到 MMR 长立即数存到 MMR

STL src[,SHIFT],Smem Smem=src(15—0)<<SHIFT

字数 周期

CMPS src,Smem

比较选择并存储最大值

1

1

SACCD src,Xmem,cond If(cond) Xmem=src<<(ASM—16) 有条件存储累加器值 SRCCD Xmem,cond STRCD Xmem,cond 4. 并行加载和存储指令 句 法 表 达 式 说 明 有条件存储 T 寄存器值

1 1

1 1 1

有条件存储块重复计数器 1

字数 周期 1 1 1

ST src,Ymem Ymem=src<<(ASM—16) 存储累加器并行加载累加器 ||LD Xmem,dst ||dst=Xmem<<16 ST src,Ymem Ymem=src<<(ASM—16) ||LD Xmem,T ||T=Xmem 5. 并行加载和乘法指令 句 法 表 达 式 dst=Xmem<<16 加载累加器并行乘法累加运算 ||MAC Ymem,dst_ ||dst_=dst_+T*Ymem LD Xmem,dst LD Xmem,dst LD Xmem,dst dst=Xmem<<16 dst=Xmem<<16 加载累加器并行乘法减法运算 ||MAS Ymem,dst_ ||dst_=dst_—T*Ymem dst=Xmem<<16 ||MASR Ymem,dst_ ||dst_=rnd(dst_—T*Ymem) ||MACR Ymem,dst_ ||dst_=rnd(dst_+T*Ymem) 说 明

存储累加器并行加载 T 寄存器 1

字数 周期 1 1 1 1 1

LD Xmem,dst

加载累加器并行乘法累加运算(带舍入) 1 1

加载累加器并行乘法减法运算(带舍入) 1

7

6. 并行存储和加 / 减法指令 句 法 表 达 式 说 明 字数 周期 1 1 Ymem=src<<(ASM—16) ST src,Ymem 存储累加器值并行加法运算 1 ||ADD Xmem,dst ||dst=dst_+Xmem<<16 Ymem=src<<(ASM—16) ST src,Ymem 存储累加器值并行减法运算 1 ||SUB Xmem,dst ||dst=(Xmem<<16)—dst_ 7. 并行存储和乘法指令 句 法 表 达 式 Ymem=src<<(ASM—16) 存储累加器并行乘法累加运算 ||MAC Xmem,dst ||dst=dst+T*Xmem 说 明 字数 周期 1 1 1 1 1 1 ST src,Ymem

Ymem=src<<(ASM—16) ST src,Ymem 存储累加器并行乘法累加运算(带舍入) 1 ||MACR Xmem,dst ||dst=rnd(dst+T*Xmem) ST src,Ymem ST src,Ymem ST src,Ymem Ymem=src<<(ASM—16) 存储累加器并行乘法减法运算 ||MAS Xmem,dst ||dst=dst—T*Xmem Ymem=src<<(ASM—16) Ymem=src<<(ASM—16) 存储累加器并行乘法运算 ||MPY Xmem,dst ||dst=T*Xmem 8. 其他加载和存储指令 句 法 表 达 式 说 明 ||MASR Xmem,dst ||dst=rnd(dst—T*Xmem) 1

存储累加器并行乘法减法运算(带舍入) 1 1

字数 周期 1 2 2 2 2 2 1 2 2 2 1 1 2 2 4 2 2 1 3 2 2 5 5

MVDD Xmem,Ymem Ymem=Xmem MVDK Smem,dmad MVDM dmad,MMR MVDP Smem,pmad MVKD dmad,Smem MVMD MMR,dmad MVPD pmad,Smem PORTR PA,Smem PORTW Smem,PA READA Smem WRITA Smem dmad=Smem MMR=dmad pmad=Smem Smem=dmad dmad=MMR Smem=pmad Smem=PA PA=Smem

数据存储器内部传送数据 数据存储器内部指定地址传送数据 数据存储器向 MMR 传送数据 数据存储器向程序存储器传送数据 数据存储器内部指定地址传送数据 MMR 向指定地址传送数据

MVMM MMRx,MMRy MMRy=MMRx MMRx 向 MMRy 传送数据 程序存储器向数据存储器传送数据 从 PA 口读入数据 向 PA 口输出数据

Smem=Pmem(A) 按累加器 A 寻址读程序存储器并存入数据存储器 1 Pmem(A)=Smem 将数据按累加器 A 寻址写入程序存储器

8


推荐相关:

编号 西华大学实验报告 第 组 西华大学实验报告(理工类)电气信息学院学 生姓名 学生所在学院 课程名称 实验项目名称 指导教师 DSP 技术及应用 DSP 的常用指令实验...


RST BRD (BBP,BBI) 华为常用指令(RNC) 1. 查看小区状态; DSP CELL:NODEBNAME=XXXXX; 2. 查询传输: DSP E1T1:框号:槽号(根据基站资料查询到) 单板类型:...


DSP指令解释_计算机软件及应用_IT/计算机_专业资料。DSP指令解释1.STM #8765,*AR7+ 把立即数 8765 存放到 AR7 所指定的数据存储单元中去 2.MPY #-2,A 立...


/* TMS320C54X DSP 数据寻址方式的例子 */ ;/***/ ;定义符号常量 ...DSP指令一览表 8页 免费 DSP的指令系统 63页 1下载券 DSP指令 56页 免费 DSP 第...


2)逻辑运算指令 TMS320C5000具有丰富的逻辑运算指令,主要包括一下一些常用的:与...DSP指令一览表 8页 免费 DSP指令 56页 免费 dsp汇编指令系统介绍 14页 1下载...


第六章 DSP 的寻址方式和汇编指令当硬件执行指令时,寻找指令所指定的参与运算飞...DSP指令一览表 8页 免费 第四章 TMS320C20X系列的... 暂无评价 50页 免费 ...


DSP 汇编指令总结 一、寻址方式: 1、立即寻址: 短立即寻址(单指令字) D15 D14 D13 D12 D11 1 0 1 1 1 D10 0 D9 1 D8 1 D7 0 D6 1 D5 1 D4 ...


DSP 芯片的特点: 1.采用哈佛结构实现内部总线;2.采用流水线操作实现指令操作; 3.乘法采用专用的硬件乘法器实现;4.具有高效的 DSP 指令 哈佛结构的特点:将程序和...


dsp汇编指令_IT/计算机_专业资料。dsp中的汇编伪指令指令分类伪指令及其表示格式具体描述段定义伪指令 .asect “段名” , 地址汇编到一以绝对地址为起始的段中...


1. MACR *AR3-, *AR4-, A, B 指令执行前 00 0000 1000H 00 0000 2200H 0003H 0 0100H 0200H 0345H 0400H 指令执行后 00 0000 1000H 00 000D ...

网站首页 | 网站地图
3986 3986.net
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com