第3章 'C54x的指令系统xin

合集下载

DSP应用技术教程部分习题答案

DSP应用技术教程部分习题答案

《TMS320C54x DSP应用技术教程》部分习题答案注意:未提供的参考答案习题(因考试为开卷形式.部分在课堂讲过.部分需要自行思考归纳总结或编程).请参考PPT和书上示例.自行解答。

第1章绪论1.简述Digital Signal Processing 和Digital Signal Processor 之间的区别与联系。

答:前者指数字信号处理的理论和方法.后者则指用于数字信号处理的可编程微处理器.简称数字信号处理器。

数字信号处理器不仅具有可编程性.而且其数字运算的速度远远超过通用微处理器.是一种适合于数字信号处理的高性能微处理器。

数字信号处理器已成为数字信号处理技术和实际应用之间的桥梁.并进一步促进了数字信号处理技术的发展.也极大地拓展了数字信号处理技术的应用领域。

2.什么是DSP技术?答:DSP技术是指使用通用DSP处理器或基于DSP核的专用器件.来实现数字信号处理的方法和技术.完成有关的任务。

5.数字信号处理的实现方法有哪些?答:参见P3-4 1.1.3节。

6.DSP的结构特点有哪些?答:哈佛结构和改进的哈佛结构、多总线结构、流水线技术、多处理单元、特殊的DSP指令、指令周期短、运算精度高、硬件配置强。

7.什么是哈佛结构和冯洛伊曼结构?它们有什么区别?答:参见P5-6 1.2.2节。

8.什么是哈佛结构和冯.诺依曼结构?它们有什么区别?答:DSP处理器将程序代码和数据的存储空间分开.各空间有自己独立的地址总线和数据总线.可独立编址和独立访问.可对程序和数据进行独立传输.这就是哈佛结构。

以奔腾为代表的通用微处理器.其程序代码和数据共用一个公共的存储空间和单一的地址和数据总线.取指令和取操作数都是通过一条总线分时进行的.这样的结构称为冯·诺伊曼结构。

采用哈佛结构.可同时取指令和取操作数.并行地进行指令和数据的处理.从而可以大大地提高运算的速度.非常适合于实时的数字信号处理。

而冯·诺伊曼结构当进行高速运算时.取指令和取操作数是分时操作的.这样很容易造成数据传输通道的瓶颈现象.其工作速度较慢。

DSP

DSP

一、填空1. DSP的基本结构是采用____________结构,即程序和数据是分开的。

2.直流电机的控制主要采用的控制方式是____________。

3. DSP芯片的前缀“LF”说明片内有___________存储器;而以“LC”为前缀的芯片,片内有____________工艺的程序存储器。

4.寄存器ST1的CNF位决定B0的作用,当CNF=________时,映射到程序存储空间,CNF=__________时映射到数据存储空间。

5.当工作于______________计数模式时,通用定时器会产生一个非对称波形。

6.若系统时钟频率为40MHz,SCI的BRR值设置为4,则SCI的异步波特率为_________。

7.WD复位关键字寄存器(WDKEY),向WDKEY写入55h后紧接着写入_________则清楚WDCNTR寄存器。

8.自动排序器的两种工作模式分别是____ ____和_____ ____。

9.同传统的单片机中断处理方式类似,DSP中断的处理也有两种方法,分别是__________和____________。

10. DSP对外部存储器和外部功能器件的片选方法有两种:___________和____________。

答案:1、哈佛 2、电枢控制法 3、Flash、CMOS4、1、05、连续递增6、1067、AAh8、不中断的排序模式、启动/停止模式 9. 查询法、回调法10、片选法、译码选通法1.DSP与单片机、嵌入式微处理器的最大区别是能够________、_________地进行数字信号处理运算。

2. DSP的基本结构是采用____________结构,即程序和数据是分开的。

3. DSP的应用非常广泛,试举一个应用的例子_____ ___。

4. 数模转换过程可分为两个时段_____ ___和_____ ____5.如果m是一个特定的读写操作的所要求的时钟周期(CLKOUT)的数目,w是附件的等待状态的数目,那么操作将会花费___________个周期。

程序控制指令

程序控制指令

功能说明: 长返回指令。先将栈顶低7位赋给XPC。再
2023年10月17日7时30分
把下一个单元的16位值赋给PC,SP加1修正。
DSP原理及应用
17
4.返回指令 ② FRETE[D]
指令格式: FRETE[D]
指令功能: (TOS)→XPC (SP)+1→SP (TOS)→PC (SP)+1→SP 0→INTM
程序控制指令
程序控制指令
’C54x的程序控制指令共有31条,可分为6类:
包括: 分支转移指令
子程序调用指令
中断指令
返回指令
堆栈操作指令
其他程序控制指令
2023年10月17日7时30分
DSP原理及应用
2
程序控制指令
1.分支转移指令
分支转移指令共有6条,可实现无条件转移、有 条件转移和远程转移等。
① B[D]
DSP原理及应用
24
④ PSHD
指令格式: PSHD Smem
指令功能: (SP)-1→SP Smem →TOS
功能说明: SP减1操作后,将存储单元Smem的内容 压入SP指向的数据存储单元。
⑤ PSHM
指令格式: PSHM MMR
指令功能: (SP)-1→SP MMR →TOS
功能说明: SP减1操作后,将MMR的内容压入SP指向
12
2.子程序调用指令
④ FCALA[D]
指令格式: FCALA[D] src
指令功能: 若非延时,(SP)-1→SP (PC)+1→TOS (SP)-1→SP (XPC)→TOS
(src(15~0))→PC (src(22~16))→XPC
若延时,(SP)-1→SP (PC)+3→TOS (SP)-1→SP (XPC)→TOS

第3章 'C54x的硬件结构 - -本

第3章 'C54x的硬件结构 - -本

2014年1月14日
DSP原理及应用
11
3.两个定点数的除法
在通用DSP芯片中,一般不提供单周期的除法指令,为此必 须采用除法子程序来实现。二进制除法是乘法的逆运算。 乘法包括一系列的移位和加法,而除法可分解为一系列的 减法和移位。 除的过程就是除数逐步移位并与被除数比较的过程。在这 过程中,每一步都进行减法运算,如果够减,则将1插入商 中,否则补0。可以使被除数不动,除数右移。
Barrel Shifter
S
Adder (40)
COMP TRN TC
MSW/LSW Select
Zero
Sat
Round
E

2014年1月14日
TMS320C54x的组成框图
DSP原理及应用
18
第3章 TMS320C54x的硬件结构
3.2 ’C54x的主要特性和外部引脚
3.2.1 ’C54x的主要特性 1.CPU:利用其专用的硬件逻辑和高度并行 性提高芯片的处理性能。
② 若要将-0.125表示成Q12格式,则将-0.125乘以212得到-512,再将其表 示成2的补码数为FE00H,这也就是-0.125 的Q12格式表示。
2014年1月14日
DSP原理及应用
6
(2) 将某种动态范围较小的Qn格式转换为 动态范围较大的Qn格式。
对于不同动态范围的数据运算,在某些情况下会损失动态 范围较小的格式的数据精度。通常必须将动态范围较小的格 式的数转换为动态范围较大的格式的数。
2014年1月14日
I/O功能扩展接口 串行口 主机通信接口HPI 定时系统 中断系统
17
DSP原理及应用
System ControlProgram Address Generation Data Address Generation interface Logic(PAGEN) Logic (PAGEN) PC.IPTR.RC. BRC.RSA.REA ARAU0.ARAU1 AR0 ~AR7 ARP.BK.DP.SP

在DSP应用中,虽然可以使用CC++高级语言编程,降低了

在DSP应用中,虽然可以使用CC++高级语言编程,降低了

第3章汇编语言指令系统在DSP应用中,虽然可以使用C/C++高级语言编程,降低了对编程者的要求,但在一些实时性要求高的场合仍然需要采用汇编编程,以充分利用DSP丰富的硬件资源,发挥它的实时运算能力。

用汇编语言编程,要求编程者对DSP的低层有充分的了解,包括硬件结构、存储器空间模型和I/O口的组织等。

同时又要求编程者对指令系统有深刻的了解。

第3章汇编语言指令系统目录:3.1 C54x 汇编语言指令集介绍3.2 寻址方式3.3 C54x 系列DSP的指令系统参考:TMS320C54x DSP Reference Set Volume 2:Mnemonic Instruction Set.pdf, spru172c, 2001, TI官网3.1 C54x汇编语言指令集介绍C54x汇编语言源程序指令包括:➢汇编语言指令Assembly Language Instructions ➢汇编伪指令Assembler Directives➢宏指令Macro Directives本章介绍C54x DSP的汇编语言指令系统。

与其它CPU的指令集相同,汇编语言指令又称为硬指令,它们在汇编和连接后形成可执行的机器码,供DSP进行运算和其它操作。

TMS320C54x assembly language source programs consist of source statements that can contain assembler directives, assembly language instructions, macro directives, and comments.3.1.1 指令系统中的符号、缩写及操作符➢指令系统中采用的符号和缩写如下列表中所示序号符号含义1A累加器A2ALU算术逻辑运算单元3AR泛指通用辅助寄存器4ARx指定某一辅助寄存器AR0~AR75ARP ST0中的3位辅助寄存器指针6ASM ST1中的5位累加器移位方式位-16~15 7B累加器B8BRAF ST1中的块重复操作标志位9BRC块重复操作计数器10BITC或bit_code用于测试指令,指定数据存储器单元中的哪一位被测试,取指范围:0~15BIT Xmem, BITC3.1 C54x汇编语言指令集介绍3.1.1 指令系统中的符号、缩写及操作符(续)序号符号含义11C16ST1中的双16位/双精度算术运算方式位12C ST0中的进位位13CC2位条件码(0≤CC≤3)14CMPT ST1中的ARP修正方式位15CPL ST1中的直接寻址编辑标志位16cond表示一种条件的操作数,用于条件执行指令17[d],[D]延时选项18DAB D地址总线19DAR DAB地址寄存器20dmad16位立即数数据存储器地址(0~65535)序号符号含义21Dmem数据存储器操作数22DPST0中的数据存储器页指针(0≤DP≤511)23Dst目的累加器(A和B)24dst_与dst相反的目的累加器25EAB E地址总线26EAR EAB地址寄存器27extpmad23位立即数程序存储器地址28FRCT ST1中的小数方式位29hi(A)累加器的高阶位(AH或BH)30HM ST1中的保持方式位3.1.1 指令系统中的符号、缩写及操作符(续)序号符号含义31IFR中断标志寄存器32INTM ST1中的中断屏蔽位33K少于9位的短立即数34k33位立即数(0≤k3≤7)35k55位立即数(-16≤k5≤15)36k99位立即数(0≤k9≤511)37lk16位长立即数38Lmem利用长字寻址的32位单数据存储器操作数39mmr,MMR存储器映像寄存器40MMRx,MMRy存储器映像寄存器,AR0~AR7或SP3.1.1 指令系统中的符号、缩写及操作符(续)第3章汇编语言指令系统序号符号含义41n XC 指令后面的字数,取1或242N 指定状态寄存器,N=0为ST0,N=1为ST143OVA ST0中的累加器A 溢出标志44OVB ST0中的累加器B 溢出标志45OVdst 指定目的累加器(A 或B)的溢出标志46OVdst_另一个目的累加器(A 或B)的溢出标志47OVsrc 指定源累加器(A 或B)的溢出标志48OVM ST1中的溢出方式位49PA 16位立即数端口地址(0≤PA ≤65535)50PAR 程序存储器地址寄存器3.1.1 指令系统中的符号、缩写及操作符(续)XC n, cond [, cond [, cond]RSBX N, SBIT第3章汇编语言指令系统序号符号含义51PC程序计数器52pmad16位立即数程序存储器地址(0≤pmad≤65535)53pmem程序存储器操作数54PMST处理器工作方式状态寄存器55prog程序存储器操作数56[R]舍入选项57rnd舍入Round58RC重复计数器59RTN快速返回寄存器60REA块重复结束地址寄存器3.1.1 指令系统中的符号、缩写及操作符(续)第3章汇编语言指令系统序号符号含义61RSA 块重复起始地址寄存器62SBIT 用于指定状态寄存器位的4位地址(0~15)63SHFT 4位移位值(0~15)64SHIFT 5位移位值(-16~15)65Sind 间接寻址的单数据存储器操作数66Smem 16位单数据存储器操作数67SP 堆栈指针寄存器68src 源累加器(A 或B)69ST0,ST1状态寄存器0,状态寄存器170SXM ST1中的符号扩展方式位3.1.1 指令系统中的符号、缩写及操作符(续)RSBX N, SBIT序号符号含义71T暂存器72TC ST0中的测试/控制标志73TOS堆栈顶部74TRN状态转移寄存器(比较选择存储CSST单元内) 75TS由T寄存器的5~0位所规定的移位数(-16~31) 76uns无符号数77XF ST1中的外部标志状态位78XPC程序计数器扩展寄存器79Xmem16位双数据存储器操作数, 用于双数据操作数指令和单数据操作指令80Ymem16位双数据存储器操作数,用于双数据操作数指令3.1.1 指令系统中的符号、缩写及操作符(续)CMPS指令3.1.1 指令系统中的符号、缩写及操作符➢指令系统中的运算符号及优先级如下列表中所示序号符号运算功能求值顺序1+ -~ !取正、取负、按位求补、逻辑非从右至左2* / %乘法、除法、求模从左至右3+ -加法、减法从左至右4^指数从左到右5<< >>左移、右移从左至右6< ≤小于、小于等于从左至右7> ≥大于、大于等于从左至右8≠!=不等于从左至右序号符号运算功能求值顺序8=等于从左至右9&按位与运算(AND )从左至右10∧按位异或运算(exclusive OR )从左至右11|按位或运算(OR )从左至右3.1.1 指令系统中的符号、缩写及操作符➢指令系统中的运算符号及优先级如下列表中所示本节以LD 装载指令为例,说明指令的格式和其它一些有用信息。

TI公司三大系列DSP芯片指令系统比较

TI公司三大系列DSP芯片指令系统比较

TI公司三大系列DSP芯片指令系统比较摘要:DSP技术已成为目前电子工业领域发展最迅速的技术,在各行各业的应用越来越广泛。

DSP微处理器是以数字信号来处理大量信息的器件,已成为电子工业领域增长最迅速的产品之一。

TI公司作为最早从事DSP微处理器研究的厂商之一,已经形成了三大系列的DSP芯片,在电子行业各个领域占有很大的市场份额。

本文通过对TI公司三大系列DSP芯片的简要介绍,对这三大系列芯片的指令系统进行了比较。

关键词:TI DSP芯片指令系统比较一、前言在经历整整二十年的市场拓展之后,DSP所树立的高速处理器地位不仅不可动摇,而且业已成为数字信息时代的核心引擎。

与此同时,DSP的市场正在蓬勃发展。

从TI推出业界第一颗商用DSP开始,陆续有公司设计出适合于DSP处理技术的处理器,于是DSP开始成为一种高性能处理器的名称。

TI在1982年发表一款DSP处理器名为TMS32010,其出色的性能和特性倍受业界的关注,当努力使DSP处理器每MIPS成本也降到了适合于商用的低于$10美元范围时,DSP不仅在在军事,而且在工业和商业应用中不断获得成功。

1991年TI推出的DSP批量单价首次低于$5美元而可与16 位的微处理器相媲美,但所能提供的性能却是其5至10倍。

多家公司跻身于DSP领域与TI进行市场竞争。

TI首家提供可定制DSP,称作cDSP。

cDSP 基于内核DSP的设计可使DSP具有更高的系统集成度,大加速了产品的上市时间。

同时TI瞄准DSP 电子市场上成长速度最快的领域,适时地提供各种面向未来发展的解决方案。

到九十年代中期,这种可编程的DSP器件已广泛应用于数据通信、海量存储、语音处理、汽车电子、消费类音频和视频产品等等,其中最为辉煌的成就是在数字蜂窝电话中的成功,逐渐形成了现今TI三大系列主流DSP芯片。

TI通过不断革新,推陈出新,DSP业务也一跃成为TI的最大的业务,并始终处于全球DSP市场的领导地位。

DSP(知识点+思考题)

DSP(知识点+思考题)

DSP复习要点第一章绪论1、数的定标:Qn表示。

例如:16进制数2000H=8192,用Q0表示16进制数2000H=0.25,用Q15表示2、‟C54x小数的表示方法:采用2的补码小数;.word 32768 *707/10003、定点算术运算:乘法:解决冗余符号位的办法是在程序中设定状态寄存器STl中的FRCT位为1,让相乘的结果自动左移1位。

第二章CPU结构和存储器设置一、思考题:1、C54x DSP的总线结构有哪些特点?答:TMS320C54x的结构是围绕8组16bit总线建立的。

(1)、一组程序总线(PB):传送从程序存储器的指令代码和立即数。

(2)、三组数据总线(CB,DB和EB):连接各种元器件,(3)、四组地址总线(PAB,CAB,DAB和EAB)传送执行指令所需要的地址。

2、C54x DSP的CPU包括哪些单元?答:'C54X 芯片的CPU包括:(1)、40bit的算术逻辑单元(2)、累加器A和B(3)、桶形移位寄存器(4)、乘法器/加法器单元(5)、比较选择和存储单元(6)、指数编码器(7)、CPU状态和控制寄存器(8)、寻址单元。

1)、累加器A和B分为三部分:保护位、高位字、地位字。

保护位保存多余高位,防止溢出。

2)、桶形移位寄存器:将输入数据进行0~31bits的左移(正值)和0~15bits的右移(负值)3)、乘法器/加法器单元:能够在一个周期内完成一次17*17bit的乘法和一次40位的加法4)、比较选择和存储单元:用维比特算法设计的进行加法/比较/选择运算。

5)、CPU状态和控制寄存器:状态寄存器ST0和ST1,由置位指令SSBX和复位指令RSBX控制、处理器模式状态寄存器PMST2-3、简述’C54x DSP的ST1,ST0,PMST的主要功能。

答:’C54x DSP的ST1,ST0,PMST的主要功能是用于设置和查看CPU的工作状态。

•ST0主要反映处理器的寻址要求和计算机的运行状态。

1-TMS320C54x的硬件结构

1-TMS320C54x的硬件结构
20
TMS320C54x的硬件结构
中央处理单元(CPU)
桶形移位器
桶形移位器能把输入的数据进行0到31位的左移和0到16位的右移。
桶形移位器的功能框图
21
TMS320C54x的硬件结构
中央处理单元(CPU)
桶形移位器
桶形移位寄存器的输入可以为: ①DB,取得16位输入数据; ②DB和CB ,取得32位输入数据; ③40位累加器A或B。 桶形移位寄存器的输出连到: ① ALU的一个输入端, ②经过MSW/LSW(最高有效字/最低有效字)写选择单元至EB 总线。
TMS320C54x的硬件结构
TMS320C54x的内部结构和主要特性
TMS320C54x的主要特性
1.CPU 部分 先进的多总线结构(1条程序总线、3条数据总线和4条对应的 地址总线)。 40位算术逻辑运算单元(ALU),包括1个40位桶形移位寄存 器和2个独立的40位累加器。 17位×17位并行乘法器与40位专用加法器相连,用于非流水线 式单周期乘法/累加(MAC)运算。 比较、选择、存储单元(CSSU),用于加法、比较、选择运 算。 指数编码器,是一个支持单周期指令EXP的专用硬件,可以在 单个周期内计算40位累加器中数值的指数。 双地址生成器,包括8个辅助寄存器和2个辅助寄存器算术运算 6 单元(ARAU)。
23
乘法器/加法器单元
乘法器输入: X:T,A, DB0~15 Y:A, DB0~15, CB0~15, PB0~15 乘法器输出:加法器 加法器输入: X:乘法器 Y:A,B, 加法器输出:A,B,0零 乘法器/加法器单元功能框图
12
TMS320C54x的硬件结构
总线结构
(3) 4条地址总线(PAB、CAB、DAB和EAB) 4条地址总线(PAB、CAB、DAB和EAB)用于传送执行指 令所需要的地址。 TMS320C54x可以利用两个辅助寄存器算术运算单元 (ARAU0 和 ARAU1),在每个周期产生两个数据存储器 的地址。 TMS320C54x还有一条访问片内外设的片内双向总线。这条 双向总线通过CPU接口内的总线交换器与DB和EB相连。利 用这条双向总线的访问过程需要2个或更多个周期来读/写, 具体时间取决于外围电路的结构。由此可见,DSP处理系统 中应当尽量避免器件内外大量数据交换,以保证系统高速特 13 性。

(完整版)第三章指令系统

(完整版)第三章指令系统

第三章指令系统习题参考答案(三)1、80C51系列单片机的指令系统有何特点?答:80c51的指令系统的特点有:(1)执行时间短。

一个机器周期指令有64条,2个时间周期指令有45条,而4个机器周期指令仅有2条(即乘法和除法指令);(2)指令编码字节少。

单字节的指令有49条,双字节的指令有45条,三字节的指令仅有17条;(3)位操作指令丰富。

这是80c51单片机面向控制特点的重要保证。

2、80C51单片机有哪几种寻址方式?各寻址方式所对应的寄存器或存储器空间如何?答:(1)寄存器寻址。

对应的寄存器有:·工作寄存器R0~R7·累加器A·寄存器B·数据指针DPTR(2)直接寻址。

对应的存储空间有:·片内RAM低128字节(以地址形式表示)·SFR(以地址形式或SFR符号形式表示,但符号将转换为相应的SFR地址)(3)寄存器间接寻址。

对应的空间有:·片内RAM(采用@R0,@R1或SP);·片外RAM(采用@R0,@R1或@DPTR)(4)变址寻址。

对应的空间有:·ROM空间(采用@A+DPTR,@A+PC)(5)相对寻址。

·ROM空间(采用JC rel)(6)位寻址。

·片内RAM的20H~2FH单元的128可寻址位·SFR的可寻址位3、访问特殊功寄存器SFR可以采用哪些寻址方式?答:直接寻址、位寻址4、访问内部RAM单元可以采用哪些寻址方式?答:寄存器寻址、直接寻址、寄存器间接寻址5、访问外部RAM单元可以采用哪些寻址方式?答:寄存器间接寻址6、访问外部程序存储器可以采用哪些寻址方式?答:立即寻址、变址寻址、相对寻址7、为什么说布尔处理功能是80C51单片机的重要特点?答:布尔处理功能是MCS-51系列单片机的一个重要特征,在物理结构上,MCS-51单片机有一个布尔(位)处理器,对位地址空间具有丰富的位操作指令。

第三章DSP汇编指令

第三章DSP汇编指令
循环寻址图示
if 0≤ index+step < BK: index = index + step
else if index + step ≥ BK: index = index + step - BK
else if index + step< 0 index = index + step + BK
只有8条指令能使用存储器映射寄存器寻址:
LDM MMR, dst MVDM dmad, MMR MVMD MMR, dmad MVMM MMRx, MMRy POPM MMR PSHM MMR STLM src, MMR STM #lk, MMR
7. 堆栈寻址
系统堆栈用来在中断和子程序期间自动存放程序计数器。 它也能用来存放额外的数据项或传递数据值。处理器使用一 个16-bit的存储器映射寄存器—堆栈指针来对堆栈寻址,它 总是指向存放在堆栈中的最后一个元素。
2、调用与中断指令
3、返回指令
4、重复指令和堆栈操作指令
四、装入和存储指令
装入和存储指令包括:
一般的装入和存储指令 条件存储指令 并行装入和存储指令 并行装入和乘法指令 并行存储和加件乘指令 混合装入和存储指令
1、一般的装入指令
2、存贮指令
3 并行装入和存储指令 4、条件存储指令
共有四条使用堆栈寻址方பைடு நூலகம்访问堆栈的指令:
PSHD 把一个数据存储器的值压入堆栈。 PSHM 把 一 个 存 储 器 映 射 寄 存 器 的 值 压 入 堆 栈 。 POPD 把一个数据存储器的值弹出堆栈。 POPM 把一个存储器映射寄存器的值弹出堆栈。
§3-2 特殊寻址方式说明

第三章习题答案

第三章习题答案

第三章习题答案第三章习题一、填空题1. 直接寻址在偏移地址前加前缀,立即寻址在操作数前加前缀。

2. READA x 的作用是将累加器A所确定的存储器中的一个字,传送到操作数x所确定的存储器中。

3. 执行以下两条指令:SSBX CPLLD @x,A执行后,CPL= ,并将指针加x所形成的地址中的内容送给累加器A。

4. 执行以下两条指令:RSBX CPLADD @y,A执行后,CPL= ,并将指针加y所形成的地址中的内容与累加器A 中的值相加。

5. TMS320C54x的指令系统包含指令和指令两种形式。

6. 助记符指令源语句的每一行通常包含4个部分:标号区、、操作数区和。

7. 在进行汇编以前,操作码和操作数都是用表示。

8. 直接寻址时,数据存储器的位地址由基地址和地址构成。

9. 间接寻址方式按照中的地址访问存储器。

10. TMS320C54x有位的辅助寄存器ARx。

11. 堆栈寻址方式把数据压入和弹出堆栈,按照的原则进行寻址。

12. TMS320C54x中提供了多条用于加减法的指令,其中用于带进位的加法运算,用于带借位的减法运算。

13. TMS320C54x中提供了多条用于算术运算的指令,其中用于无符号数的乘法运算,用于乘法累加运算。

14. 在卷积、相关和FIR滤波等许多算法中,都需要在存储器中实现一个循环缓冲器,其实现的关键是的实现。

15. TMS320C54x DSP的寻址方式有和。

16. 在六级流水线操作中,存储器存取操作可分为两个阶段:先用存储单元的地址加载,然后对存储单元进行操作。

17.已知累加器A的内容为FF01234567H,执行“AND #1FH,A”之后,累加器A的值为。

18. 已知累加器A的内容为FF00004589H,执行“OR #FFFFH,A”之后,累加器A的值为。

19.TMS320C54X DSP共有129条指令,分为______大类。

20. 如果CPU同时访问DARAM的同一块存储器块,就会发生时序上的冲突,此时CPU 通过操作延迟一个周期,或者通过插入一个的办法,自动解决时序冲突。

附录 TMS320C54X汇编语言指令系统

附录 TMS320C54X汇编语言指令系统

指令系统TMS320C54x指令系统共有指令130条,由于操作数的寻址方式不同,派生至205条。

按指令的功能,可以将C54x指令系统分成4类:算术运算指令、逻辑运算指令、程序控制指令、加载和存储指令。

下面分别对各类指令进行介绍。

Ⅰ、算术运算指令算术运算指令分为加法指令(ADD),减法指令(SUB),乘法指令(MPY),乘加指令(MAC),乘减指令(MAS),双数/双精度指令(DADD,DSUB)和特殊操作指令(ABDST,SQDST)。

1.加法指令加法指令共有13条,如表1.1.1所示。

表1.1.1 加法指令整数分有符号数和无符号数两种格式,表示有符号数时,其最高位表示符号,最高位为0表示其为正数,1表示为负数;无符号数其最高位仍做为数值位计算。

例如,有符号数能够表示的最大的正数为07FFFh,等于32767,而0FFFFH表示最大的负数–1;无符号数不能表示负数,它能够表示的最大的数为0FFFFh,等于十进制数的65535。

小数符号和上面整数的表示一样,但必须注意如何安排小数点的位置。

2.减法指令减法指令共有13条,见表1.1.2所示。

表1.1.2 减法指令3.乘法指令乘法指令共有10条,见表1.1.3。

表1.1.3乘法指令续表4.乘加和乘减指令乘加和乘减指令共有22条,见表1.1.4所示。

表1.1.4 乘加和乘减指令续表5.双操作数指令双操作数指令共有6条,见表1.1.5所示。

表1.1.5双操作数指令续表6.特殊应用指令特殊应用指令共有15条,见表1.1.6所示。

表1.1.6 特殊应用指令续表Ⅱ、逻辑运算指令逻辑运算指令包括与指令(AND),或指令(OR),异或指令(XOR),移位指令(ROL)和测试指令(BITF)。

1.与指令与指令共5条,见表2.2.1。

表2.2.1与指令2.或指令或指令共5条,见表2.2.2。

表2.2.2 或指令3.异或指令异或指令共5条,见表2.2.3。

表2.2.3 异或指令4.移位指令移位指令共6条,见表2.2.4。

C54X的习题与思考题

C54X的习题与思考题

第一章习题与思考题1. 什么是DSP技术?2. DSP芯片的结构特点有哪些?3. 简述DSP系统设计的一般步骤。

4. 简述TI公司C2000/C5000/C6000系列DSP的特点及主要用途。

5. 简述TMS320C55x的设计目标和应用目标。

6. 试述TMS320C54x的主要优点及基本特征。

7. 设计DSP应用系统时,如何选择合适的DSP芯片?8. 开发DSP应用系统,一般需要哪些软件、硬件开发工具?9. 什么是哈弗结构和冯.诺依曼结构?它们各有什么优缺点?10. 什么是定点DSP芯片和浮点DSP芯片?它们各个什么优缺点?11.TMS320VC5416-160的指令周期是多少毫秒?它的运算速度是多少MIPS?第二章习题与思考题1. 简答题(1) TMS320C54x芯片的CPU主要由哪些部分构成?(2) 简述TMS320C54x芯片的存储器分配方法。

(3) 简述TMS320C54x芯片的程序空间。

(4) 简述TMS320C54x芯片的数据空间。

(5) 简述TMS320C54x芯片的中断系统。

2. ST0、ST1、PMST的作用是什么?它们是如何影响DSP工作过程的?3. 数据页0(0H-7FH)能否被映象到程序空间?4. TSM320C54x的总存储空间为多少?可分为哪3类,它们的大小是多少?5. TSM320C54x片内随机存储器有哪两种,片内与片外RAM的区别是多少?6. 试述三种存储器空间的各自作用是什么?7. 试述RAM、ROM的分配和使用方法。

8. 片内DARAM可否用作为程序空间?对哪些情况要用两个机器周期才能访问到存储器?2. 填空题(1) OVLY=( ),则片内RAM只安排到数据存储空间。

(2) DROM=( ),则部分片内ROM安排到数据空间。

(3) C54x DSP 具有两个( )位累加器。

(4) 累加器A的( )位是保护位。

(5) ST1的CPL=( )表示选用堆栈指针(SP)的直接寻址方式。

CH03 - TMS320C54x指令系统

CH03 - TMS320C54x指令系统

第3章 TMS320C54x指令系统教学提示:TMS320C54x是TMS320系列中的一种定点数字信号处理器。

由于C54x 系列DSP的CPU内核结构均相同,所以其汇编语言程序向下兼容。

因此,本章介绍的C54x 指令系统适用于所有具有相同CPU内核的C54x DSP,尽管这些DSP的型号可能不同。

C54x DSP汇编语言和单片机、微型计算机等一般汇编语言的组成和结构类似,但又有其特殊性,学习时要注意它们的不同点。

C54x DSP的指令系统包括汇编语言指令、汇编伪指令、宏指令,本章主要介绍汇编语言指令,其他指令在第4章介绍。

教学要求:了解汇编源程序的书写格式。

掌握指令的7种寻址方式,尤其是间接寻址方式。

掌握算术运算、逻辑运算、程序控制、存储和装入4种基本类型的汇编语言指令。

3.1 汇编源程序格式汇编语言指令的书写形式有两种:助记符形式和代数式形式,本章以助记符指令系统为主介绍。

汇编语言是DSP应用软件的基础,编写汇编语言必须要符合相应的格式,这样汇编器才能将源文件转换为机器语言的目标文件。

TMS320C54x汇编语言源程序由源说明语句组成,包括汇编语言指令、汇编伪指令(汇编命令)、宏指令(宏命令)和注释等,一般一句程序占据编辑器的一行。

由于汇编器每行最多只能读200个字符,所以源语句的字符数不能超过200个。

一旦长度超过200个字符,汇编器将自行截去行尾的多余字符并给出警告信息。

汇编语言语句格式可以包含4个部分:标号域、指令域、操作数域和注释域。

格式如下:[标号] [:] 指令[操作数列表] [;注释]其中[ ]内的部分是可选项。

每个域必须由1个或多个空格分开,制表符等效于空格。

例如:begin: LD #40, AR1 ;将立即数40传送给辅助寄存器ARl1. 标号域标号供本程序的其他部分或其他程序调用。

对于所有C54x汇编指令和大多数汇编伪指令,标号都是可选项,但伪指令.set和.equ除外,二者需要标号。

第3章C54x的寻址方式

第3章C54x的寻址方式
3.1.4 直接寻址
DP地址的范围是从0~511(29-1),将存储器分成 512页。
7位dmad范围是从0~127,每页有128个可以访 问的单元。
以DP为基准的直接寻址是由DP值确定是512页中 的哪一页,由dmad确定是该页中的哪一个单元。
SP可以指向存储器中的任意一个地址。dmad可
以指向当前页中具体的单元,从而允许访问存储器
A 立即数的数值形式:
程序存储
① 短立即数。3、5、8、9位,单字指器令;
② 长立即数。16位,双字指令。 操作码 特点:指令中含有一个固定的立即数立,即运数行速度 较快,但需占用程序存储空间,并且数值不F1能80改变。
用途:用于表示常数或对寄存器初始化。
2021/4/22
DSP技术及应用
立即数寻址
❖ AR0-AR7的内容相当灵活,可以装入立即数, 加上立即数,减去立即数,也可以从数据存 储器中装入地址,还可以作以下的变址寻址
2021/4/22
DSP技术及应用
2021/4/22
DSP技术及应用
2021/4/22
DSP技术及应用
❖ 将该AR的内容加1或减1,然后再寻址(循环 常用)。
❖ 将该AR的内容加或减AR0的内容,然后再寻 址
❖ 将该AR的内容逆向进位加或减AR0的内容, 然后再寻址
2021/4/22
DSP技术及应用
寻址方式:间接寻址
ADD *,8,A ;将当前辅助寄存 器所指的地址里的数据,左移8-bit 后加给AccA
存储器映像 :用来改变映像寄存器,但不影响DP或SP的值 寄存器寻址 堆栈寻址 :用来管理系统堆栈中的操作
2021/4/22
DSP技术及应用
第3章 TMS320C54x的指令系 统

DSP技术及应用习题答案

DSP技术及应用习题答案

《DSP技术及应用》习题答案第1章绪论1.1 DSP的概念是什么?本书说指的DSP是什么?答:DSP有两个概念。

一是数字信号处理(Digital Signal Processing),指以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理;二是数字信号处理器(Digital Signal Processor),指是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。

本书中的DSP主要指后者,讲述数字信号处理器的应用。

1.2 什么是哈佛结构和冯•诺伊曼结构?它们有什么区别?答:(1)冯·诺伊曼(Von Neuman)结构该结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行。

当进行高速运算时,不但不能同时进行取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。

(2)哈佛(Harvard)结构该结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实时的数字信号处理。

1.3 已知一个16进制数3000H,若该数分别用Q0、Q5、Q15表示,试计算该数的大小。

答:3000H=12288。

若用Q0表示,则该数就是12288;若用Q5表示,则该数就是12288*2-5=384;若用Q15表示,则该数就是12288*2-15=0.3751.4 若某一个变量用Q10表示,试计算该变量所能表示的数值范围和精度。

答:Q10能表示的数值范围是-32~31.9990234,其精度为2-101.5 若x=0.4567,试分别用Q15、Q14、Q5将该数转换为定点数。

答:Q15:x*215=int(0.4567*32768)=14965;Q14:x*214=int(0.4567*16384)=7482;Q5:x*25=int(0.4567*32)=14。

第8讲-第3章TMS320C55x的指令系统-指令系统3.2(3)

第8讲-第3章TMS320C55x的指令系统-指令系统3.2(3)

助记符指令
BTST Baddr, src, TCx BNOT Baddr, src BCLR Baddr, src BSET Baddr, src BTSTP Baddr, src
说明
以Baddr为位地址,测试src的对应位,并复制到 TCx中
以Baddr为位地址,取反src的对应位 以Baddr为位地址,清零src的对应位 以Baddr为位地址,置位src的对应位 以Baddr和Baddr+1为位地址,测试src的两个位,
第3章 TMS320C55x 的指令系统
(第8讲)
•3.2 指令系统 –3.2.5 移动指令 –3.2.3 扩展辅助寄存器操作指令 –3.2.4 逻辑运算指令 –3.2.1 算术运算指令 –3.2.2 位操作指令 –3.2.6 程序控制指令
1
3.2.2 位操作指令
1. 位域比较指令 2. 位域扩展和抽取指令 3. 存储器位操作指令 4. 寄存器位操作指令 5. 状态位设置指令
• (1) BTST AC0, *AR0, TC1
• (2) BTST AC0, *AR0, TC2
11
The instruction tests a single bit, as defined by a 4-bit immediate value, k4, of a memory (Smem) location and the tested bit is copied into status bit TCx and is complemented in Smem.
• (1) BTSTNOT #12, *AR0, TC1
• (2) BTSTNOT #12, *AR3, TC2
12
4. 寄存器位操作指令

《DSP技术及应用(第2版)》陈金鹰(补充习题参考答案)

《DSP技术及应用(第2版)》陈金鹰(补充习题参考答案)

答案:习题一一、判断下列各题是否正确。

⑴DSP仅是Digital Signal Processing的缩写形式。

( X ) 答:DSP是Digital Signal Processing和Digital Signal Processor的缩写形式。

⑵数字系统除开电路引入的延时外,处理信号是实时的。

( X ) 答:模拟系统除开电路引入的延时外,处理是实时的。

⑶由于存储器仅16位,C54x芯片最多只能进行两个16位算术逻辑运算。

( X ) 答:C54x芯片可进行40位算术逻辑运算。

⑷C54x芯片有两个程序地址产生逻辑,以便为流水线提供多个地址。

( X ) 答:C54x芯片只有一个程序地址产生逻辑。

⑸由于是多总线结构,C54x芯片可同时从外部存储器取多个操作数。

( X ) 答:C54x芯片对外只有一组总线,故在同一时刻只能从外部存储器取1个操作数。

⑹C54x芯片从EXP指数编码器获得的指数直接存放到A累加器。

( X ) 答:C54x芯片从EXP指数编码器获得的指数直接存放到T寄存器。

⑺将数据存储器中的数据装入SWWSR中时应使用ST存储指令。

( X ) 答:将数据存储器中的数据装入SWWSR中时应使用STM存储指令。

⑻C54x芯片进行乘法运算时,第16位根据第15位是0或1来确定。

( X ) 答:C54x芯片进行乘法运算时,第16位根据是无符号数还是有符号数来确定。

⑼进行Viterbi算法运算时,(M1+D1)>(M2+D2)时,则TC =0。

( V ) ⑽一个周期内取3操作数时要用到 C、D、P总线。

( V )二、填空:⑴C54x片内存储器类型分为 DARAM 、SARAM、ROM。

⑵程序存储器中 FF00h 处存放的是机内自检程序。

⑶用户可以在同一个周期内从同一块 DARAM 取出两个操作数。

⑷利用C54x的单根 XF 输出引脚可方便地获得方波信号输出。

⑸CLKOUT等于CLKIN的条件是PLLNDIV、PLLDIV、 PLLMUL 分别为1、0、15。

DSP复习题答案

DSP复习题答案

DSP复习题一、填空1.’C54x DSP中传送执行指令所需的地址需要用到 PAB 、CAB、DAB和EAB 4条地址总线。

2.DSP的内部存储器类型可分为随机存取存储器(RAM)和只读存储器(ROM)。

其中RAM又可以分为两种类型:单寻址RAM(SARAM)和双寻址RAM(DARAM)。

3.’C54x DSP的内部总存储空间为192K字,分成3个可选择的存储空间:64K字的程序存储空间、64K字的数据存储空间和64K字的 I/O空间。

4.从功能结构上,’C54X DSP的CPU可以划分成运算部件和控制部件两大部分。

5.’C54x DSP的寻址方式有七种,分别为立即寻址、绝对寻址、累加器寻址、直接寻址、间接寻址、存储器映象寄存器寻址、堆栈寻址。

6.在’C54x DSP寻址和指令系统中,Xmem和Ymem表示 16位双寻址操作数,Dmad为16位立即数,表示数据存储器地址,Pmad为16位立即数,表示程序存储器地址。

7.’C54x DSP芯片采用了6级流水线的工作方式,即一条指令分为预取指、取指、译码、寻址、读数和执行6个阶段。

8.C54x DSP定时器由3个16位存储器映射寄存器组成:定时器寄存器(TIM)、定时器周期寄存器(PRD)和定时器控制寄存器(TCR)。

9.主机接口(HPI,Host Port Interface)是TMS320C54x 系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。

10.’ C54x DSP的指令系统有助记符指令和代数指令两种形式。

11.COFF目标文件中.text段通常包含可执行代码,.data段通常包含己初始化的数据,.bss段中通常为未初始化的数据保留空间。

12.DSP芯片的开发工具可以分为代码生成工具和代码调试工具两类。

13.’C54x DSP的基本结构分为 CPU 、存储器系统以及片内外设与专用硬件电路三大类。

14.DARAM称为双寻址RAM,在单机器周期内能被访问 2 次,而SARAM(单15.寻址RAM),在单机器周期内个机器周期内只能被访问 1 次。

C54x第三章 DSP开发工具

C54x第三章 DSP开发工具

第三章DSP开发工具T提供了软件集成开发调试及软件仿真平台CCS。

通过使用CCS,用户可以避免复杂的编译连接命令,方便的进行硬件仿真和软件仿真。

一、软件开发过程※二、汇编语言程序编写方法三、COFF的概念四、编译器链接命令文件软件开发过程大体要经过化等几个主要过程。

1)编辑:编辑源程序(.ASM或.C)和链接器命令文件(.CMD)。

源程序可以用汇编或C语言来设计,当然也可以进行混合编程。

2)编译: 将原程序编译成为公共目标格式文件(COFF 格式的.OBJ)、存储器映像文件(.MAP)和列表文件(.LST),对于C程序首先要由C编译器编译成为汇编程序,然后再生成OBJ文件。

3)链接成可执行代码:将用户的多个COFF文件连同所引用的库文件一起组合成为可执行代码。

4)调试:通过软仿真或硬件仿真方式对程序进行调试5)固化:将执行代码烧写进ROM中,实现脱机运行。

第三章DSP开发工具一、软件开发过程二、汇编语言程序编写方法※三、COFF的概念四、编译器链接命令文件1)文件扩展名为.ASM2)汇编语言源程序的句法:如START: STM #0,SWWSR ;SWWSR=0不插入等待时间[标号][:] 助记符[操作数] [;注释]标号:标号和冒号都是可选项,代表段程序计数器(SPC)的值。

所有标号必须从第一列开始写,最多可达32字符(A~Z,a~z,0~9 …_‟,…$‟),第一字母不能数字。

如果不用标号,则第一字母必须为空格、分号或星号。

助记符:可以是助记符指令、汇编指令、宏指令和宏调用。

助记符指令一般大写。

汇编命令和宏命令均以“.”开始,并且小写。

汇编命令可以定义常量和变量,用于控制汇编和链接过程,可以不占存储空间。

注意:汇编命令不能写在第一列。

操作数:指令中的操作数或汇编命令中定义的内容,操作数之间必须以逗号隔开,也有一些指令没有操作数。

如NOP。

注释:注释前必须加分号,一般用于标注指令的执行信息,使程序增加可读性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

据相加
2016年4月5日 DSP原理及应用
23
第3章 TMS320C54x的指令系统
4. 直接寻址
直接寻址特点:
① 所寻址数据存储器的16位地址是由DP或SP 与7位偏移地址dmad构成; ② 可在单周期寻址128个单元; ③ 寻址速度快,能进行流水线并行操作。 用途:主要用于要求运算速度较快的场合。 注意:① 上述两种直接寻址方式是相互排斥的; ② 采用DP寻址时,要注意数据所在的页面 指针。
部分寻址缩略语
缩略语
Smem Xmem Ymem dmad

16位单寻址操作数

16 位双寻址操作数,用于双操作数或部分单操作数指 令,从DB数据总线上读取 16位双寻址操作数,用于双操作数指令,从CB数据总 线上读取 16位立即数:数据存储器地址(0~65 535)
pmad
PA src
16位立即数:程序存储器地址(0~65 535)
操作码 源操作数 目的操作数
2016年4月5日 DSP原理及应用
注释
2
第3章 TMS320C54x的指令系统
3.1.1 指令的表示方法
1、 指令的基本形式
标号

操作符
操作数1,操作数2,操作数3
标号是可选项; 源操作数放在操作数1的位置;


目的操作数放在操作数3的位置;
举例1:LD #0FFH,A
2016年4月5日 DSP原理及应用 9
第3章 TMS320C54x的指令系统
3.1.2 绝对寻址
绝对寻址有四种类型 :
① 数据存储器地址(dmad)寻址;
② 程序存储器地址(pmad)寻址;
③ 端口(PA)寻址;
④ *(1k)寻址。 注意:在绝对寻址的指令中,应在数值或符号前面加 一个*(),表示是一个地址。
第3章 指令系统
3.1 数据寻址方式 3.2 TMS320C54x的指令系统
2016年4月5日
DSP原理及应用
1
第3章 TMS320C54x的指令系统
3.1 数据寻址方式
3.1.1 指令的表示方法 ’C54x的助记符指令是由操作码和操作数两 部分组成。 例如: LD #0FFh, A ;将立即数0FF传送至A
结果 DP dma ;CPL 复位 0000 1500 dma A 00 DP 0 0000 0011 111 1111 0 0000 0011 DP000 111 0000 1111 ;立即数 A 3赋给 @x
;x 单元的数据送入 A 机器码 0 0000 0011 111 1111 操作码 0 111 1111 @x 00 00 0000 0000 1000 1001 01 FF
高有效字 低有效字
2016年4月5日
DSP原理及应用
4
第3章 TMS320C54x的指令系统
3.1.2
数据寻址方式
’C54x有7种基本的数据寻址方式: 立即寻址 ★ 绝寻址
★ ★
存储器映像 ★ 寄存器寻址 堆栈寻址
2016年4月5日 DSP原理及应用 5
第3章 TMS320C54x的指令系统
16位立即数:I/O口地址(0~65 535) 源累加器(A或B)
dst
1k
2016年4月5日
目的累加器(A或B)
16位长立即数
DSP原理及应用 6
第3章 TMS320C54x的指令系统
1. 立即寻址
指令中含有执行指令所需的操作数。操作数紧随 操作码存放在程序存储器中。
例如: LD #F180H,A
2016年4月5日 DSP原理及应用 17
第3章 TMS320C54x的指令系统
地址形成过程:
当CPL=0时,
直接寻址 指 令
页指针DP (位于ST0中)
15~8 7 6~0
操作码
I=0
dmad
9位数据页指针DP
16位数据 存储器地址
9位数据页指针DP
dmad
高 9位
2016年4月5日 DSP原理及应用
2016年4月5日 DSP原理及应用 16
第3章 TMS320C54x的指令系统
4. 直接寻址
所要寻址的数据存储器16位地址是由基地址和 偏移地址构成。
基地址: ① 数据页指针DP(9位); ② 堆栈指针SP。 当 CPL=0 时,数据存储器 16 位地址由 DP 和偏 移地址dmad构成; 当CPL=1时,数据存储器16位地址由SP加偏移 地址dmad构成。
2016年4月5日
DSP原理及应用
22
第3章 TMS320C54x的指令系统
4. 直接寻址
例2:数据存储器存储数据如图所示,利用堆栈指针SP直 接寻址,求堆栈中距栈顶两个数x,y的和。
数据存储器
SP→ x: y:
0020
0100 0050 A000
. . .
SSBX LD
1 2
执行结果 SP 0000 0010 0000 CPL ;CPL 置位
0000H~001FH 存储器映像的 CPU寄存器 0200H~005FH 存储器映像的外设寄存器 0060H~007FH 暂存器 SPRAM(DP=0) DARAM(DP=1) 0080H~00FFH DARAM(DP=2) 0100H~017FH DARAM(DP=3) 0180H~01FFH DARAM(DP=4) 0200H~027FH DARAM(DP=5) 0280H~02FFH DARAM(DP=6) 0300H~037FH 0380H~03FFH DARAM(DP=7)
2016年4月5日
DSP原理及应用
14
第3章 TMS320C54x的指令系统
3. 累加器寻址
将累加器A的内容作为地址去访问程序存储单元。
用途:用于完成程序存储空间与数据存储空间 之间的数据传输。
例如: READA
Smem
;将A中的数据作为地址寻址程序 存储器中的数据,并将数据送 入Smem指定的数据存储单元。 ;将Smem指定的数据存储单元中的 数据,写入A所指定的程序存储 单元。
13
第3章 TMS320C54x的指令系统
(4) *(1k)寻址 使用一个指定数据空间的地址来确定数据存 储器中的一个地址。 例如,把地址为SAMPLE的数据单元中的数据装 到累加器A中。 LD *(SAMPLE), A 这种寻址可用于支持单数据存储器操作数的指令。
注意:*(1k)寻址的指令不能与循环指令(RPT,RPTZ)一起使用。
4. 直接寻址
直接寻址标识:
① 变量前加@,如@x; ② 在偏移量前加@,如@5。 利用直接寻址可以在不改变DP或SP的情况下, 随机寻址128个存储单元中的任何一个单元。 直接寻址的优点:每条指令只需要一个字。
2016年4月5日
DSP原理及应用
21
第3章 TMS320C54x的指令系统
4. 直接寻址
第3章 TMS320C54x的指令系统
1. 立即寻址
支持立即数的指令
3位 立即数 5位 立即数 8位 立即数 9位 立即数 16位 立即数
LD
LD
FRAME LD RPT
LD
ADD ANDM LD ORM ST XOR
ADDM BITF MAC RPT STM XORM
AND CMPM OR RPTZ SUB
例 1 :数据存储器存储数据如图所示,采用数据页指针 DP直接寻址,完成x,y单元的两个数据求和。
数据存储器 地址 第 3 页 数据
0180 0001 . . . . . .
X: 01FF 1000 y: 0200 0500 第 . . . . 4 . . 页
RSBX CPL RSBX CPL LD #3,DP LD #3,DP LD @x,A LD @x,A ADD #4,DP LD @y,A ADD @y,A ADD @y,A
DP 0011 0 000 0000 操作码 @y 0 0000 0180H 0001 1 800 @y 据相加
00 0000 1500 0200H 0500
0200
A 1000 00 0000 1500
0 1@x FF
dma 结果 LD #4,DP + 000 @y1001 0200H 0500 0 0000 0100 0000 + ;机器码 完成 x 和 y 单元的数 00 0000 1001 A
DSP原理及应用 15
WRITA
Smem
2016年4月5日
第3章 TMS320C54x的指令系统
4. 直接寻址
利用数据指针DP和堆栈指针SP寻址。 指令格式:
15 ~ 8 7 6~0
操 作 码
I=0
数据存储器地址(dmad)
特点:① 指令中只含有数据存储器的低7位地 指令的标识符 数据存储器地址 址(偏移地址 dmad); 指令的8位操作码 包含了数据存储器偏移地址 表示指令为直接寻址 ② 16位数据存储器地址由基地址(数据 页指针DP或堆栈指针SP)和偏移地址 (dmad)共同构成。
特点:指令中包含一个固定的16位地址,能寻 例如: 址所有数据存储空间,但运行速度慢, MVKD TABLE,*AR1;将 ;将数据存储器 TABLE为地址 LD *(DATA),A DATA指定的数据存储单元 是双字指令。 中的数据送入累加器 的单元数据送入AR1 A中 寄存器
指定的数据存储单元中 用途:用于对速度要求较低的场合。
DSP原理及应用
12
第3章 TMS320C54x的指令系统
(3)端口(PA)寻址
用一个符号或一个数字来确定外部I/O端口的
地址。 例如,把一个数从端口为FIFO的I/O口复制到 AR5寄存器所指向的数据存储单元中。 PORTR FIFO, * AR5
相关文档
最新文档