TMS320C54x的数据传送指令_第1页
TMS320C54x的数据传送指令_第2页
TMS320C54x的数据传送指令_第3页
TMS320C54x的数据传送指令_第4页
TMS320C54x的数据传送指令_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TMS320C54x的数据传送指令2026/7/517:02DSP原理及应用2

TMS320C54x的指令系统

’C54x的指令系统共有129条基本指令,由于操作数的寻址方式不同,由它们可以派生多至205条指令。按指令的功能可分成六大类:数据传送指令算术运算指令逻辑运算指令程序控制指令并行操作指令重复操作指令

2026/7/517:02DSP原理及应用31数据传送指令

是从存储器中将源操作数传送到目的操作数所指定的存储器中。

包括:装载指令存储指令条件存储指令混合装载和存储指令2026/7/517:02DSP原理及应用41.装载指令

即取数或赋值指令,用于将存储器内容或立即数赋给目的寄存器,共计21条。格式:

操作码源操作数

[,移位数]

,目的操作数

功能:源操作数按移位数进行移位,将移位结果送入目的操作数指定的寄存器。DLDLDLDMLDRLDULTDLmemSARAM中的32位数据SmemSARAM中的16位数据XmemDARAM中的16位数据#K小于9位的短立即数#lK16位长立即数#k99位立即数#k55位立即数#k33位立即数src源累加器A或BMMR存储器映像寄存器TS6位移位数-16

TS

311616位移位数SHIFT5位移位数-16

SHIFT

15SHFT4位移位数0

SHFT

15ASM5位移位数-16

ASM

15dst累加器A或BT暂存器DPRAM页指针ASM累加器移位方式位ARP辅助寄存器指针2026/7/517:02DSP原理及应用51.装载指令

(1)DLDLmem,dst

功能:

dst

=

Lmem

将Lmem所指定的单数据存

储器中的32位数据送入累加器A或B中。

(2)LDSmem,dst

dst

=

Smem

将Smem所指定的单数据存

储器中的16位数据送入累加器A或B中。

功能:

(3)LDSmem,TS,dst

dst

=

Smem<<TS

将Smem所指定的单数据存储器中的数据,按TS所给定的移位数

(-16

TS

31)移位,然后送入A或B。

功能:2026/7/517:02DSP原理及应用61.装载指令(4)LDSmem,16,dst

功能:

dst=Smem<<16将Smem所指定的单数据存

储器的数据左移16位后送入A或B。

(5)LDSmem[,SHIFT],dst

dst=Smem<<SHIFT

将Smem所指定的单数据

存储器的数据,按SHIFT所给定的移位数移

位,然后送入A或B。

功能:(6)LDXmem,SHFT,dst

dst=Xmem<<SHFT

将Xmem所指定的双数据

存储器的数据,按SHFT所给定的移位数移

位,然后送入A或B。

功能:2026/7/517:02DSP原理及应用71.装载指令

功能:

dst

=

#K

将短立即数K送入累加器A或B。(8)LD#lk[,SHFT],dst

dst

=

#lk<<SHFT

将长立即数lk移位后,

送入累加器A或B。

功能:(9)LD#lk,16,dst

dst

=

#lk<<16将长立即数lk左移16位

后,送入累加器A或B。

功能:(7)LD#K,dst

2026/7/517:02DSP原理及应用81.装载指令(10)LDsrc,ASM[,dst]

功能:

dst=src<<ASM

将源累加器src中的数

据,按ASM(-16

SAM

15)所给定的移位

数移位后,送入目的累加器dst。

(11)LDsrc[,SHIFT]

[,dst]

功能:

dst=src<<SHIFT

将源累加器src中的

数据,按SHIFT所给定的移位数移位后,

送入目的累加器dst。

(12)LDSmem,T

T=Smem

将Smem所指定的单数据器的

数据送入暂存器T。

功能:2026/7/517:02DSP原理及应用91.装载指令(13)LDSmem,DP

DP=Smem(8-0)将Smem所指定的单数

据存储器的低9位数据,送入数据存储

器页指针DP。

功能:(14)LD#k9,DP

功能:

DP=#k9

将9位立即数送入DP。

(15)LD#k5,ASM

ASM=#k5

将5位立即数送入累加器移

位方式位ASM。

功能:2026/7/517:02DSP原理及应用101.装载指令(16)LD#k3,ARP

ARP=#k3

将3位立即数送入ARP(3位辅

助寄存器指针位)。

功能:(17)LDSmem,ASM

功能:

ASM=Smem(4-0)将Smem所指定的单数

据存储器的低5位数据送入ASM。

(18)LDMMMR,dst

功能:

dst=MMR

将MMR寄存器中的数据,送

入累加器dst。

2026/7/517:02DSP原理及应用111.装载指令(19)LDRSmem,dst

功能:

dst(31-16)=rnd(Smem)将Smem所指定的单数据存储器的数据舍入后送入累加器。

(20)LDUSmem,dst

功能:

dst=uns(Smem)将Smem所指定的单数

据存储器的无符号数据,送入累加器。

(21)LTDSmem

功能:

T=Smem,(Smem+1)=Smem

将单数据存

储器Smem的数据,送入寄存器T,并延时。2026/7/517:02DSP原理及应用122.存储指令

是将源操作数或立即数存入指定存储器或寄存器,共计14条。格式:

操作码源操作数

[,移位数]

,目的操作数

功能:源操作数按移位数进行移位,将移位结果存入目的存储器或寄存器。DSTSTSTHSTLSTLMSTMsrc源累加器A或BT暂存器TRN状态寄存器#lK16位长立即数SHIFT5位移位数-16

SHIFT

15SHFT4位移位数0

SHFT

15ASM5位移位数-16

ASM

15Smem16位单数据存储器操作数Xmem16位双数据存储器操作数MMR存储器映像寄存器2026/7/517:02DSP原理及应用13存储指令序号指令功能说明1DSTsrc,LmemLmem

=src累加器值存入长字存储单元2STT,SmemSmem

=T暂存器值存入存储单元3STTRN,SmemSmem

=TRN状态寄存器值存入存储单元4ST#lk,SmemSmem

=#lk长立即数存入存储单元5STHsrc,SmemSmem

=src(31-16)累加器高阶位存入存储单元6STHsrc,ASM,SmemSmem

=src(31-16)<<ASM累加器高阶位移位后存入存储单元7STHsrc,SHFT,XmemXmem

=src(31-16)<<SHFT累加器高阶移位后存入存储单元8STHsrc[,SHIFT],SmemSmem

=src(31-16)<<SHIFT累加器高阶位移位后存入存储单元9STLsrc,SmemSmem

=src(15-0)累加器低阶位存入存储单元10STLsrc,ASM,SmemSmem

=src(15-0)<<ASM累加器低阶位移位后存入存储单元11STLsrc,SHFT,XmemXmem

=src(15-0)<<SHFT累加器低阶位移位后存入存储单元12STLsrc[,SHIFT],SmemSmem

=src(15-0)<<SHIFT累加器低阶位移位后存入存储单元13STLMsrc,MMRMMR

=src(15-0)累加器低阶位存入MMR14STM#lk,MMRMMR

=#lk长立即数存入MMR2026/7/517:02DSP原理及应用143.条件存储指令

根据条件将源操作数存入目的存储器,共计4条指令。(1)CMPSsrc,Smem

功能:

若src(31~16)>src(15~0),则Smem=src(31~16);若src(31~16)

src(15~0),则Smem=src(15~0)。

即比较累加器的高、低位,并存储最大值。(2)SACCD

src,Xmem,cond

若满足cond条件,则累加器值按ASM-16的差值移位,并存入Xmem中。

功能:2026/7/517:02DSP原理及应用153.条件存储指令(3)SRCCDXmem

,cond

功能:

若满足cond条件,则将块重复计数器BRC的内容存入Xmem中。(4)STRCD

Xmem,cond

若满足cond条件,则将T寄存器中的内容存入Xmem中。

功能:2026/7/517:02DSP原理及应用164.混合装载和存储指令

用于完成数据存储器、程序存储器以及I/O口之间的数据传输,共计12条。(1)MVDDXmem,Ymem

功能:Ymem=Xmem将数据存储器Xmem中的数据传送

到数据存储器Ymem中。

(2)MVDKSmem,dmad

dmad=Smem将数据存储器Smem中的数据传送

到以dmad为地址的数据存储器中。

功能:(3)MVDMdmad,MMR

功能:MMR=dmad将以dmad为地址的数据存储器中的

数据传送到MMR中。

2026/7/517:02DSP原理及应用174.混合装载和存储指令(4)MVDPSmem,pmad

功能:

pmad=Smem将数据存储器Smem中的数据传送

到以pmad为地址的程序存储器中。

(5)MVKDdmad,Smem

功能:

Smem=dmad将以dmad为地址的数据存储器中

的数据传送到数据存储器Smem中。

(6)MVMDMMR,dmad

功能:

dmad=MMR将MMR中的数据传送到以dmad为地

址的数据存储器中。

2026/7/517:02DSP原理及应用184.混合装载和存储指令(7)MVMMMMRx,MMRy

功能:

MMRy=MMRx将映像寄存器MMRx中的数据传送到MMRy中。

(8)MVPDpmad,Smem

功能:

Smem=pmad将以pmad为地址的程序存储器中的数据传送到数据存储器Smem中。

(9)PORTRPA,Smem

功能:

Smem=PA将以PA为地址的I/O口中的数据传送到数据存储器Smem中。

2026/7/517:02DSP原理及应用194.混合装载和存储指令(10)PORTWSmem,PA

功能:

PA=Smem将数据存储器Smem中的数据传送到以PA为地址的I/O口中。

(11)READASmem

功能:

Smem=Pmem(A)将以累加器A为地址的程序存储器中的数据传送到数据存储器Smem中。

(12)WRITASmem

功能:

Pmem(A)=Smem将数据存储器Smem中的数据传送到以累加器A为地址的程序存储器中。

2026/7/517:02DSP原理及应用202算术运算指令

算术运算指令是实现数学计算的重要指令集合。’C54x的算术指令具有运算功能强、指令丰富等特点。

包括:加法指令(ADD)减法指令(SUB)乘法指令(MPY)

乘法-累加/减指令(MAC/MAS)双字运算指令(DADD)

特殊用途指令2026/7/517:02DSP原理及应用212算术运算指令(1)加法指令

’C54x的加法指令共有13条,可完成两个操作数的加法运算、移位后的加法运算、带进位的加法运算和不带符号位扩展的加法运算。操作码:ADD、ADDC、ADDM、ADDS

指令格式:操作码源操作数

[,移位数]

,目的操作数

源操作数:Smem、Xmem、Ymem、#lk、src

移位数:TS、16、SHIFT、SHFT、ASM

目的操作数:src、dst、Smem

2026/7/517:02DSP原理及应用22(1)加法指令

ADD

SmemXmem#lksrcADDSmem,srcADDSmem,TS,srcADDSmem,16,src[,dst]ADDSmem,[,SHIFT],src[,dst]

操作码

源操作数指令格式ADDXmem,SHIFT,srcADDXmem,Ymem,dstADD#lk[,SHFT],src[,dst]ADD#lk,16,src[,dst]ADDsrc,[,SHIFT][,dst]ADDsrc,ASM[,dst]2026/7/517:02DSP原理及应用23(1)加法指令

ADDC

操作码

源操作数指令格式

Smem

ADDC

Smem,src

ADDM

#lk

ADDC

#lk,Smem

ADDS

Smem

ADDC

Smem,src

2026/7/517:02

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论