1、定点DSP:数据以定点格式工作的DSP芯片称为定点DSP芯片,该芯片简单、成本较低。两种基本表示方法:整数表示方法:主要用于控制操作、地址计算和其他非信号处理的应用。小数表示方法:主要用于数字和各种信号处理算法的计算中。定点表示并不意味着一定是整数表示。
2、浮点DSP:数据以浮点格式工作的DSP芯片称为浮点DSP芯片,该芯片运算精度高、运行速度快。浮点数在运算中,表示数的范围由于其指数可自动调节,因此可避免数的规格化和溢出等问题。但浮点DSP一般比定点DSP复杂,成本较高。
3、TI公司常用的DSP芯片可以归纳为三大系列:
TMS320C2000系列:TMS320C2xx/C24x/C28x等;
TMS320C5000系列:TMS320C54x/C55x等;
TMS320C6000系列:TMS320C62x/C67x/C64x
4、在对I/O空间访问时,除了使用数据总线和地址总线外,还要用到IOSTRB、IS和I/W控制线。
5、C54x C语言
相同点:
1)结构化程序设计的思想,以函数为单位
2)大部分变量、常量、结构体、枚举、联合体、指针的定义
3)局部变量、全局变量、静态变量、动态变量
4)宏定义、宏展开、宏调用
5)算术、关系、逻辑、位操作运算符以及运算符之间的优先级和结合性
6)函数的组织:顺序结构、分支结构、循环结构
不同点:
1)所处理数据的性质不同;程序结构不同
PC :采集好的,数据量大;DSP:实时采集,量小
2)数据的输入输出设备不同
3)死循环”的对待上不同。
4)语法结构及细节上的不同
6、汇编器有5条伪指令可识别汇编语言程序的各个部分:
.bss 为未初始化的变量保留空间;
.data 通常包含了初始化的数据;
.sect 定义已初始化的命名段,其后的数据存入该段;
.text 该段包含了可执行的代码;
.usect 在一个未初始化的有命名的段中为变量保留空间。
7、段的处理
链接器在处理段的时候,有如下2个主要任务:
(1)将由汇编器产生的的一个或多个.obj文件链接成一个可执行的.out文件;
(2)重新定位,将输出的段分配到相应的存储器空间。
链接器有2条命令支持上述任务:
(1) MEMORY命令。定义目标系统的存储器配置图,包括对存储器各部分命名,以及规定它们的起始地址和长度;
(2) SECTIONS命令。告诉链接器如何将输入段组合成输出段,以及将输出段放在存储器中的什么位置。
1. MEMORY命令
作用:定义系统中所包含的各种形式的存储器,以及它们占据的地址范围。
句法:
MEMORY
{
PAGE0:name 1[(attr)]:orign=constant, length=constant;
PAGE1:name n[attr]:orign=constant, length=constant;
}
MEMORY
{
PAGE 0:ROM:origin=0c00h,length=1000h;
PAGE 1:SCRA TCH:origin=60h,length=20h;
ONCHIP:origin=80h,length=200h;
}
上述MEMORY命令所定义的系统的存储器配置如下:
PAGE 0为程序存储器,名ROM,起始地址0C00H,长度4K字。
PAGE 1为数据存储器,名SCRA TCH,起始地址60H,长32字。
PAGE 1为数据存储器,名ONCHIP,起始地址80H,长度512字。
2. SECTIONS命令
作用:说明如何将输入段组合成输出段;
规定输出段在存储器中的存放位置;
并允许重新命名输出段。
编写链接命令文件example.cmd (三个部分组成)
编写的命令文件用来链接两个目标文件(输入文件)
生成一个映像文件example.map 和一个可执行的输
出文件example.out 。标号start 是程序的入口。
假设目标存储器的配置如下:
程序存储器 EPROM E000h~FFFFh(片外)
数据存储器 SPRAM 0060h~007Fh(片内)
DARAM 0080h~017Fh(片内)
链接器命令文件example.cmd 。
vectors.obj /*输入输出文件*/
example.obj
-o example.out
-m example.map
-e start
MEMORY /*MEMORY*/
{
PAGE 0:
EPROM : org = 0E000H len = 0100H
VECS: org = 0FF80H len = 0004H
PAGE 1:
SPRAM : org = 0060H len = 0020H
DARAM : org = 0080H len = 0100H
}
SECTIONS /*SECTION*/
{
.text :>EPROM PAGE 0
.data :>EPROM PAGE 0
.bss :>SPRAM PAGE 1
STACK :>DARAM PAGE 1
.vectors:>VECS PAGE 0
}
8、MEMORY 和SECTIONS 命令的默认使用
如果没有利用MEMORY 和SECTIONS 命令,链接器就按默认算法来定位输出段。
将所有的.text 输入段链接成一个.text 输出段,并配置到PAGE 0上的存储器;
将所有的.data 输入段组合成.data 输出段,定位到PAGE 0上的存储器;
所有的.bss 输入段则组合成一个.bss 输出段,并由链接器定位到配置为PAGE 1上的存储器。
如果输入文件中包含有已初始化的命名段,则链接器将它们定位到程序存储器,紧随.data 段之后。
如果输入文件中包括有未初始化的命名段,则链接器将它们定位到数据存储器,并紧随.bss 段之后。
在默认的方式下,链接器将从存储器的0080h 开始,对组合后的各段进行存储器配置。
MEMORY
{
PAGE 0:PROG : origin=0x0080, length=0xFF00
PAGE 1:DA TA : origin=0x0080, length=0xFF80
}
SECTIONS
{
.text: >PROG PAGE 0
.data: >PROG PAGE 0
.bss: PAGE 1 } 9、例 编制计算 的程序段,其中数据均为小数:a1=0.1,a2=0.2,a3=-0.3,a4=0.4,x1=0.8,
x2=0.6,x3=-0.4,x4=-0.2。
title “cjy4.asm”
.mmregs STACK .usect “STACK”,10H
.bss a,4 ;为a 分配4个存储单元
.bss x,4 ;为x 分配4个存储单元
.bss y,1 ;为结果y 分配1个存储单元
.def start
.data ;定义数据代码段
table: .word 1*32768/10 ;在table 开始的8个
∑==41i i i x a y
.word 2*32768/10 ;地址放数据
.word -3*32768/10
.word 4*32768/10
.word 8*32768/10
.word 6*32768/10
.word -4*32768/10
.word -2*32768/10
.text ;定义可执行程序代码段
start:SSBX FRCT ;设置FRCT位,表示进行小数乘
STM #x,AR1 ;将x的首地址传给AR1
RPT #7 ;重复8次下条指令
MVPD table,*AR1+ ;将程序空间8个数传给数据存储器
STM #x,AR2 ;将数据存储器第一个数x1的地址传给AR2
STM #a,AR3 ;将数据存储器第五个数a1的地址传给AR3
RPTZ A,#3 ;将A清零,重复4次下条指令
MAC *AR2+,*AR3+,A;执行乘法累加和,结果放在A中
STH A,@y ;将A的高端字存入结果y,低端字省去
end: B end ;原处循环等待
.end
结果y=0x1EB7。转换为十进制数:y=(1×163+14×162+11×161+7×160)/32768=0.24
10、DSP仿真器是在程序开发和调试阶段连接开发板与CCS开发环境/visual DSP++环境的桥梁。仿真器的用途有:下载程序:把DSP的工程文件下载到DSP开发板上。调试程序:在CCS开发环境中查看DSP 的寄存器值、内存地址上的值或查看图形等等所有关于开发板上DSP的问题都是通过仿真器来交互数据的。
一、填空题
1.在DSP处理器中,数据地址的产生是由(数据地址发生器)来完成的。
2.TMS320C54x的累加器分别称为(累加器A)和(累加器B),它们的数据宽度是(40)位。
3.TMS320C54x 的DSP采用先进的(哈佛)结构,其独立的(程序)总线和(数据)总线允许同时读取
(指令)和(操作数),实现高度的并行操作。
4.TMS320C54x的通用I/O引脚有(跳转控制输入引脚BIO)和(外部标志输出引脚XF)。
5.指令MPY 0Dh, A中乘数和被乘数分别在(累加器B高16位)和(累加器A)中。
6.TMS320C54x有(3)个状态和控制寄存器。
7.在DSP处理器中,配有两个地址生成器,包括(数据地址发生器)和(程序地址发生器)。
8.TMS320C54x使用一个40位的(ALU)和两个40位的(累加器ACCA和ACCB)来完成算数算术运
算和逻辑运算。
9.TMS320C54x存储器由3个独立的可选择空间组成:(程序空间)、(数据空间)和(I/O空间)。
10.TMS320C54x的指令系统包含(助记符指令)和(代数指令)两种形式。
11.编译器对于符号地址和变量的处理都是相对于本段的开始。连接器为每个段选择了合适的起始地址,
就必须相应地修改这些符号地址和变量,同时修改所有对这些地址和变量的引用,这个过程称为(重定位)。
12.TMS320C54x的总线由(1)组程序总线、(3)组数据总线和(4)组地址总线组成,可在一个指令周
期内产生两个数据存储地址,实现流水线并行数据处理。
一、单项选择题
1.1.TMS320C54x中累加器分为三个部分,低位字,高位字和保护位,其中高位字是指( B )
A. 15~0位
B. 31~16位
C. 39~32位
D. 39~23位
2.2.TMS320C54x中,暂存器T的数据宽度是( C )
A. 40位
B. 32位
C. 16位
D. 8位
3.3.TMS320C54x的立即数寻址中,位数最长的短立即数的长度是(B )
A. 16位
B. 9位
C. 8位
D. 5位
4.TMS320C54x汇编语言中,用于自定义段的是(A)
A. .sect
B. .bss
C. .text
D. .data
5.下列TMS320C54x的中断,不是可屏蔽中断的是( D )
A. RINT0
B. HPIINT
C. DMAC4
D. reset
6.1.TMS320C54x中累加器分为三个部分,低位字,高位字和保护位,其中保护位字是指( C )
A. 15~0位
B. 31~16位
C. 39~32位
D. 39~23位
7.TMS320C54x中,ALU的数据宽度是(A)
A. 40位
B. 32位
C. 16位
D. 8位
8.TMS320C54x的立即数寻址中,长立即数寻址的长度是(A)
A. 16位
B. 9位
C. 8位
D. 5位
9.4.TMS320C54x汇编语言中,用于定义未初始化段的是( B )
A. .sect
B. .bss
C. .text
D. .data
10.5.下列哪个浮点数表示的是无效的数( C )
A.99e9 B 9.9e9 C 99e9 D 99.e9
三、判断题
1.TMS320C54x汇编语言中,符号常量可以用.set定义,不占用存储器。(X )
2.TMS320C54x的中断处理分为3个阶段:一是请求中断,二是响应中断,三是执行中断服务程序。(√)
3.TMS320C54x在执行中断之前,要完成所有流水线中的指令。所以,最大的中断延时取决于进入流水线的指令。(√)
4.TMS320C54x在执行中断服务程序(I SR)时,在进入中断服务程序后,CPU将首先把程序计数器(PC)的值,也即返回地址,压入堆栈,然后把中断矢量的地址装入PC。(×)
5.TMS320C54x有三个状态和控制寄存器,分别是:状态寄存器ST0,状态寄存器ST1,以及处理器方式状态寄存器PMST。(√)
6.如果在程序中未用任何段伪指令,则汇编器将把所有的程序块或数据块统一汇编至.text段中。
(×)
7.MEMORY命令是告诉连接器如何将输入段组合成输出段。(×)
8.TMS320C54x在执行中断之前,要完成所有流水线中的指令。所以,最大的中断延时取决于进入流水线的指令。(×)
9.局部标号可以用伪指令来定义。(√)
10.TMS320C54x只有两个状态和控制寄存器,分别是:状态寄存器ST0,状态寄存器ST1。(×)
四、简答题
1.简述哈佛结构的基本特征,并画出示意图。P3
哈佛结构结构采用双存储空间,程序存储器和数据存储器分开,取指和读数可以同时进行,扩展了存储器带宽,增加了系统的吞吐量。
2.简述TMS320C54x DSP的ALU的可能的输入数据来源。P44
第一种答案:
ALU的X输入端的数据:
①移位器的输入②来自数据总线DB的数据存储器操作数
ALU的Y输入端的数据:
①累加器A中的数据②累加器B中的数据
③来自数据总线CB的数据存储器操作数④T寄存器中的数据
第二种答案:
可以使用的输入形式包括:16位的立即数,从数据存储器读出的16位字,暂存器T中的16位字,从数据存储器中读出的2个16位字,从数据存储器读出的1个32位字,从其中一个累加器输出的40位值3.简述辅助寄存器(AR0~AR7)的主要功能。
辅助寄存器(AR0~AR7)属于数据地址生成逻辑单元,产生16位数据空间,通用R,为各种寻址服务。4.简述TMS320C54x中硬件定时器的功能。
TMS320C54x有一个带有4位预定标器的16位定时电路。这个定时计数器每个时钟周期减1,减至0时就产生一个定时中断。可以通过设置特定的状态位,来使定时器停止、恢复运行、复位或禁止。
5.列举四种绝对地址寻址。P142
数据存储器地址(dmad)寻址程序存储器地址(pmad)寻址
端口地址(PA)寻址*(lk)寻址
6.简述TMS320C54x DSP的总线组成和功能。P31
C54x的内部有8组16位总线:4条程序/数据总线和4条地址总线。这些总线功能:
(1)1组程序总线PB 主要用来传送取自程序存储器的指令代码和立即操作数。
(2)3组数据总线CB、DB、EB
CB和DB用来传送从数据存储器读出的数据;
EB用来传送写入存储器的数据。
(3) 4组地址总线PAB、CAB、DAB、EAB 用来提供执行指令所需的地址。
7.简述TMS320C54x DSP的乘法器的输入数据来源。P51
输入端XM数据来自:
①T寄存器
②累加器A的位32-16
③DB总线传送过来的数据存储器操作数
输入端YM的数据来自:
①累加器A的位32-16
②由DB总线和CB总线传送过来的数据存储器操作数
③由PB总线传送过来的程序存储器操作数
9.简述TMS320C54x指令系统的特点。
10.列举出TMS320C54x的7种基本的数据寻址方式。P141
立即寻址、绝对寻址、累加器寻址、直接寻址、间接寻址、存储器映像寄存器寻址、
堆栈寻址
五、程序阅读题
1.请说明下面语句执行后,A,T,FRCT、AR5、数据存储器中0100h的数据。
MAC *AR5, A
指令执行前执行后
A00 0000 1000 00 0048 E000
T 0400 0400
FRCT 0 0
AR5 0100 0100
数据存储器
0100h 1234 1234
2.阅读下面的程序段,说明每一条语句的功能,以及整个程序段的功能。
.bss x, 8 为数组x分配8个存储单元
STM #x, AR1 将目的地首地址赋给AR1
RPTZ A, #7 执行一次下一条指令在循环执行7次并对ACC清0
STL A, *AR1+ 把累加器的低端存放到数据存储器中
整个程序段的功能是对数组进行初始化,使x[8]={0,0,0,0,0,0,0,0}
3.阅读下面的程序段,利用长字指令来完成下面程序段的功能,并说明整个程序段完成什么功能。P241 LD @xhi,16,A
ADDS @xlo,A
ADD @yhi,16,A
ADDS @ylo,A
STH A,@zhi
STL A,@zlo
答案:DLD @xhi,A
DADD @yhi,A
DST A,@zhi
整个程序段完成: Z(32)=X(32)+Y(32)
4. 阅读下面的程序段,说明每一条语句的功能。
STM #88H,AR0 ;将操作数88H装入AR0
LD #1000H,A;将操作数1000H装入ACC
zhong:SUB AR0,A;ACC中的值减去AR0中的值,结果存入A
BC zhong,AGT,AOV;若累加器A>0且溢出,则转至zhong,否则往下执行
5. 阅读下面的程序段,说明每一条语句的功能。
STM #123H,AR0 ;将操作数123H装入入AR0
LD #456H,AR1 ;将操作数456H装入ACC
CALL new ;调子程序new
LD AR1,16,A;将AR1的内容左移16位后装入A
new:MPY AR0,AR1,A ;AR0 与AR1的内容相乘,结果存入A中
RET ;子程序返回
6.请说明下面语句执行后,A,C,AR1、SXM、数据存储器中0100h的数据。
SUB *AR1+, 14, A
指令执行前指令执行后
A00 0000 1200 FF FAC0 1200
C X 0
AR1 0100 0101
SXM 1 1
数据存储器
0100h 1500 1500
7.阅读下面的程序段,说明每一条语句的功能,以及整个程序段的功能。
rsbx FRCT ;清楚FRCT标志,表明以下是做整数乘法。
ld temp1, T ;将变量temp1装入T寄存器。
mpy temp2, a ;完成temp1*temp2,结果放入累加器A。
sth a, temp3 ;结果的高16位存入temp3
stl a, temp4 ;结果的低16位存入temp4.
整个程序段的功能是计算temp1×temp2,32位的结果分别存入temp3和temp4.
8.阅读下面的程序段,说明语句1、2和3的功能,以及整个程序段的功能。
.mmregs
.global start
.data
dst .space 18*16
len .word 18
.text
src .string "this is the source"
.start
stm #dst, ar1 ; 语句1 将dst的地址存入ar1
stm #len, ar2
rpt *(ar2) ; 语句2 循环执行*(ar2)次指令mvpd src, *ar1+
mvpd src, *ar1+
b $ ; 语句3 原地执行
.end
整个程序的功能是将源数据存储区(src)的字符串复制到目的的数据存储区(dst).
9. 阅读下面的程序段,说明每一条语句的功能,以及整个程序段的功能。
SUM3: LD @x1,T ; T=x1
MPY @a1, B ; B=x1×a1
LD @x2, T ; T=x2
MAC @a2, B ; B=x2×a2
STL B,@y ;计算结果的低字BL存入y中
STH B,@y+1 ;计算结果的高字BH存入y+1中
整个程序段的功能是计算y=x1×a1+x2×a2
10. 请说明下面语句执行后,累加器A,寄存器T,FRCT、DP、数据存储器中040Dh的数据。
MPY 0Dh, A
指令执行前指令执行后
A00 0000 A039
T 50 50
FRCT 1 1
DP 008 008
数据存储器
040Dh 4000 4000
六、编程题
1、求4项乘积a i x i(i=1,2,3,4)中的最大值,并存放累加器A中。P224
.mmregs
STACK .usect “STACK “,10h
.bss a,4
.bss x,4
.bss y,1
.def start
.data
table: .word 1,2,3,4
.word 8,6,4,2
.text
start: STM #0,SWWSR
STM #STACK+10h,SP
STM #a,AR1
RPT #7
MVPD table,*AR1+
CALL SUM
end: B end
SUM: STM #a,AR3
STM #x,AR4
RPTZ A,#3
MAC *AR3+,*AR4+,A
STL A,@y
RET
.end
2、编制求解i i i x a
y ∑==25
1的程序。 P235
.mmregs
STACK .usect “STACK “,30h
.bss a,25
.bss x,25
.bss y,2
.def start
.data
table: .word 1,2,3,4,5,6,7,8,9,10
.word 11,12,13,14,15,16,17,18,19,20
.word 21,22,23,24,25,26,27,8,29,30
.word 1,2,3,4,5,6,7,8,9,10
.word 11,12,13,14,15,16,17,18,19,20
.text
start: SSBX FRCT
STM #a,AR1
RPT #49
MVPD table,*AR1+
LD #0,B
STM #a,AR2
STM #x,AR3
RPTZ A,#24
MAC *AR2+,*AR3+,A
STL A,@y
STH A,@y+1
.end
七、 作图题
1、扩展程序存储器 p123
2、’C54x 与A/D 转换器的接口 p126
3、’C54x 与D/A 转换器的接口
八、 程序设计题
对)(i n x b n y i i -∑==7
0)(, p273例子
1、利用线性缓冲区法和循环缓冲区法设计一个FIR 滤波器,其中滤波系数为b 0=0.1,b 1=0.2,b 2=-0.4,b 3=0.3,b 4=-0.4,b5=0.2,b 6=0.1;(8分)
线性缓冲区法:
.title “FIR1.Asm
.mmregs
.def start
x “x ”,7
PA0 .set 0
PA1 .set 1
.data
COEF: .word 1*32768/10 ;b0=0.1
.word 2*32768/10 ;b1=0.2
.word -4*32768/10 ;b2=0.4
.word 3*32768/10 ;b3=0.3
.word -4*32768/10 ;b4=0.4
.word 2*32768/10 ;b5=0.2
.word 1*32768/10 ;b6=0.1
.text
Start: SSBX FRCT
STM #x+7,AR2
STM #6,AR0
LD #x+1,DP
PORTR PA1,@x+1
FIR: RPTZ A,#6
MACD *AR2-,COEF,A
STH A,*AR2 ; 保存滤波器输出结果
PORTW *AR2+,PA0 ;将滤波器的输出从端口送出去
BD FIR1
PORTR PA1,*AR2+0
循环缓冲区法:
.title “FIR2.ASM”
.mmregs
.def start
.bss y,1
xn .usect “xn”,7
b0 .usect “b0”,7
PA0 .set 0
PA1 .set 1
.data
table: .word 1*32768/10 ;b0=0.1
.word 2*32768/10 ;b1=0.2
.word 3*32768/10 ;b2=0.3
.word 4*32768/10 ;b3=0.4
.word 5*32768/10 ;b4=0.5
.word 6*32768/10 ;b5=0.6
.word 7*32768/10 ;b6=0.7
.text
start: SSBX FRCT
STM #b0,AR1
RPT #6
MVKD table,*AR1+
STM #xn+6,AR2
STM #b0+6,AR3 ;AR3指向系数a6
STM #7,BK ;缓冲区长度为7
STM #-1,AR0 ;AR0 = -1
LD #xn,DP
PORTR PA1, @xn ; 从端口PA1读入采样值
FIR: RPTZ A, #6
MAC *AR2+0%,*AR3+0%
STH A,@y
PORTW @y,PA0
BD FIR2
PORTR PA1,*AR2+0%
.END
2、编写连接命令文件FIR.CMD。(4分)
程序存储器:4K字ROM,起始地址为C00h,取名为EPROM。
数据存储器:32字RAM,起始地址为60h,取名为SPRAM。
4992字RAM,起始地址为80h,取名为DARAM
MEMORY
{ PAGE 0: EPROM: origin = c00H, length = 1000H
PAGE 1: SPRAM : origin = 60H, length = 20H
DARAM: origin = 80H, length = 1380H
}
SECTIONS
{ .text: > EPROM PAGE 0
.data: > EPROM PAGE 0
.bss: > SPRAM PAGE 1
STACK: > DARAM PAGE 1 }
TMS320C54x提供哪几种数据寻址方式?举例说明它们是如何寻址的?(1)立即数寻址LD #10,A (2)绝对地址寻址STL A,*(y) (3)累加器寻址READA x (4)直接寻址LD @x,A(5)间接寻址LD *AR1,A (6)存储器映射寄存器寻址LDM ST1,B (7)堆栈寻址PSHM A
定点DSP中如何表示小数?
用Q15格式表示小数。正数:乘以32768;负数:取绝对值,其绝对值部分乘以32768再取反加1.
DSP测试题及答案
————————————————————————————————作者:————————————————————————————————日期:
1、什么是哈佛结构和冯·诺伊曼(Von Neuman)结构?它们有什么区别? 答:(1) 冯·诺伊曼(V on Neuman)结构 该结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行。 (2)哈佛(Harvard)结构 该结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行。当进行高速运算时,不但不能同时进行取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。 两者区别: 哈佛(Harvard)结构:该结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实时的数字信号处理。 冯·诺伊曼(V on Neuman)结构:当进行高速运算时,不但不能同时进行取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。 2、TMS320VC5416-160的指令周期是多少毫秒?它的运算速度是多少MIPS? 答:TMS320VC5416-160的指令周期16ns,它的运算速度是160MIPS。 3、TMS320C54x芯片的流水线操作共有多少个操作阶段?每个阶段执行什么任务?完成 一条指令都需要哪些操作周期? 答:(1)六个操作阶段。 (2)各个阶段执行的任务: ①预取指P:将PC中的内容加载到PAB ②取指F:将读取到的指令字加载到PB ③译码D:将PB的内容加载IR,对IR的内容译码 ④寻址A:CPU将数据1或数据2的读地址或同时将两个读地址分别加 载到数据地址总线DAB和CAB中,并对辅助寄存器或堆栈指针进行 修正。 ⑤读数R:将读出的数据1和数据2分别加载到数据总线DB和CB中。 若是并行操作指令,可同时将数据3的写地址加载到数据地址总线 EAB中。 ⑥执行X:执行指令,写数据加载EB。 (3)完成一条指令需要的周期: 需要:预取指周期、取指周期、译码周期、寻址周期和读数周期。 4、TMS320VC5402 共有多少可屏蔽中断?它们分别是什么?NMI和RS属于哪一类中断 源? 答:(1)TMS320VC5402 有13 个可屏蔽中断。 (2)TMS320VC5402 有的13 个可屏蔽中断分别是:(课本56页最下面)
DSP试卷1 一.填空题(本题总分12分,每空1分) 1.TMS320VC5402型DSP的内部采用条位的多总线结构。2.TMS329VC5402型DSP有个辅助工作寄存器。 3.在链接器命令文件中,PAGE 1通常指________存储空间。 4.TI公司DSP处理器的软件开发环境是__________________。 5.直接寻址中从页指针的位置可以偏移寻址个单元。 6.TMS320C54x系列DSP处理器上电复位后,程序从指定存储地址________单元开始工作。7.MS320C54X DSP主机接口HPI是________位并行口。 型DSP处理器的内核供电电压________伏。 9. C54x系列DSP上电复位后的工作频率是由片外3个管脚;;来决定的。 二.判断题(本题总分10分,每小题1分,正确打“√”,错误打“×”) 1.DSP 处理器TMS320VC5402的供电电压为5V。()2.TMS320VC5402型DSP内部有8K字的ROM,用于存放自举引导程序、u律和A律扩展表、sin函数表以及中断向量表。()3.MEMORY伪指令用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位置。() 4. DSP的流水线冲突产生的原因是由于DSP运行速度还不够快。()5.DSP和MCU属于软件可编程微处理器,用软件实现数据处理;而不带CPU软核的FPGA 属于硬件可编程器件,用硬件实现数据处理。() 6. C54x系列DSP的CPU寄存器及片内外设寄存器映射在数据存储空间的0000h-0080h中。 ()7. TMS320C54X 系列DSP可以通过设置OVLY位实现数据存储空间和程序存储空间共享片内ROM。() 8. TMS320VC5402型DSP汇编指令READA的寻址范围为64K字。() 9. 在TMS320VC5402型DSP所有中断向量中,只有硬件复位向量不能被重定位,即硬件复位向量总是指向程序空间的0FF80H位置。() 10. C54x系列DSP只有两个通用的I/O引脚。()三.程序阅读题(本题总分30分,每小题10分) 1. 阅读下面的程序,回答问题。 .bss x, 8 LD #0001H,16,B STM #7,BRC STM #x,AR4 RPTB next-1 ADD *AR4,16,B,A STH A,*AR4+ next: LD #0,B 问题:(1)寄存器“BRC”的功能是什么? (2)汇编语句“ADD *AR4,16,B,A”执行了多少次? (3)执行语句“LD #0001H,16,B”后,累加器B的内容是多少?
1、什么是哈佛结构和冯·诺伊曼(V on Neuman)结构?它们有什么区别? 答:(1)冯·诺伊曼(V on Neuman)结构 该结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数 据总线,取指令和取操作数都是通过一条总线分时进行。 (2)哈佛(Harvard)结构 该结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数 据总线,取指令和取操作数都是通过一条总线分时进行。当进行高速运算时,不但不能同 时进行取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。 两者区别: 哈佛(Harvard)结构:该结构采用双存储空间,程序存储器和数据存储器分开,有各 自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输, 使取指令操作、指令执行操作、数据吞吐并行完成,大大地提高了数据处理能力和指令的 执行速度,非常适合于实时的数字信号处理。 冯·诺伊曼(V on Neuman)结构:当进行高速运算时,不但不能同时进行取指令和取 操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。 2、TMS320VC5416-160的指令周期是多少毫秒?它的运算速度是多少MIPS? 答:TMS320VC5416-160的指令周期16ns,它的运算速度是160MIPS。 3、TMS320C54x芯片的流水线操作共有多少个操作阶段?每个阶段执行什么任务?完成一条指令都需要哪些操作周期? 答:(1)六个操作阶段。 (2)各个阶段执行的任务: ①预取指P:将PC中的内容加载到PAB ②取指F:将读取到的指令字加载到PB ③译码D:将PB的内容加载IR,对IR的内容译码 ④寻址A:CPU将数据1或数据2的读地址或同时将两个读地址分别加载到数 据地址总线DAB和CAB中,并对辅助寄存器或堆栈指针进行修正。 ⑤读数R:将读出的数据1和数据2分别加载到数据总线DB和CB中。若是并 行操作指令,可同时将数据3的写地址加载到数据地址总线EAB中。 ⑥执行X:执行指令,写数据加载EB。 (3)完成一条指令需要的周期: 需要:预取指周期、取指周期、译码周期、寻址周期和读数周期。 4、TMS320VC5402共有多少可屏蔽中断?它们分别是什么?NMI和RS属于哪一类中断源? 答:(1)TMS320VC5402有13个可屏蔽中断。 (2)TMS320VC5402有的13个可屏蔽中断分别是:(课本56页最下面) 属于外部硬件中断。NMI和RS)3(.
一.填空题(本题总分12分,每空1分) 1.累加器A分为三个部分,分别为;;。 1.AG,AH,AL 2.TMS320VC5402型DSP的内部采用条位的多总线结构。 2.8,16 3.TMS320VC5402型DSP采用总线结构对程序存储器和数据存储器进行控制。3.哈佛 4.TMS329VC5402型DSP有个辅助工作寄存器。 4.8个 5.DSP处理器TMS320VC5402中DARAM的容量是字。 5.16K字 6.TI公司的DSP处理器TMS320VC5402PGE100有___________个定时器。 6.2 7.在链接器命令文件中,PAGE 1通常指________存储空间。 7.数据 8.C54x的中断系统的中断源分为____ ___中断和____ ____中断。 8.硬件、软件 1.TI公司DSP处理器的软件开发环境是__________________。 1.答:CCS(Code Composer Studio) 2.DSP处理器TMS320VC5402外部有___________根地址线。 2.答:20根 3.直接寻址中从页指针的位置可以偏移寻址个单元。 3.答:128 4.在链接器命令文件中,PAGE 0通常指________存储空间。 4.答:程序 5.C54x系列DSP处理器中,实现时钟频率倍频或分频的部件是_____________。 5.答:锁相环PLL 6.TMS320C54x系列DSP处理器上电复位后,程序从指定存储地址________单元开始工作。6.答:FF80h 7.TMS320C54x系列DSP处理器有_____个通用I/O引脚,分别是_________。 7.答:2个,BIO和XF 8.DSP处理器按数据格式分为两类,分别是_______ __;_____ ___。 8.答:定点DSP和浮点DSP 9.TMS329VC5402型DSP的ST1寄存器中,INTM位的功能是。 9.答:开放/关闭所有可屏蔽中断 10.MS320C54X DSP主机接口HPI是________位并行口。 10.答:8 1.在C54X系列中,按流水线工作方式,分支转移指令的分为哪两种类型:_______;_______。 1.答:无延迟分支转移,延迟分支转移 3.C54x的程序中,“.bss”段主要用于_______________。 3.答:为变量保留存储空间 4.从数据总线的宽度来说,TMS320VC5402PGE100是_______位的DSP处理器。 4.答:16位 7.TMS320VC5402型DSP处理器的内核供电电压________伏。 7.答:1.8v
通信系《 DSP 原理及应用》期末考试题(答案) 姓名:学号:班级:分数: 考试时间: 15:40~ 17:30考试方式:开卷;注意:所有答案必须写在答题纸上,试卷上的答案无效! 一、填空题(每空 2 分,共 20 分) 1、在 C 语言和 C55x 汇编语言的混合程序设计中, C 函数的参数和返回值传递到 C55x的寄存器中。在函数“ long func(int *p1, int i2, int i3, int i4) 中, *p1 传递到AR0寄存器,i2传递到T0寄存器,i4 到AR1寄存器,返回值由AC0寄存器传递。传递 ” 2、汇编语言“mov *AR0,AC0”使用的寻址方式是间接寻址模式,“mov#0x3, DPH”使用的寻址方式是直接寻址模式,“ mov*(#0x011234) ,T2”使用 的寻址方式是绝对寻址模式。 3、指令执行前 AC0的值是 0012345678,那么汇编语句“ AND #0x7f , AC0”, 执行之后,AC0的值是0000000078。 4、C55x 的链接器命令文件中, SECTIONS命令的主要作用是告诉链接器如何将输 入段组合成输出段,以及在存储器何处存放输出。MEMORY命令的主要作用是定义目标系统的存储器配置图,包括对存储器各部分的命名,以及规定它们的起始地址和长 度。 二、简述题(共40 分) 1、根据你的理解,试列举DSP 芯片的特点?( 5 分) 答:哈佛结构;多总线结构;指令系统的流水线操作;专用的硬件乘法器;特殊的 指令;快速的指令周期;丰富的外设 DSP 2、TMS320C55x芯片的总线结构有何特点,主要包括哪些总线?它们的功能是 什么?( 6 分)
河南理工大学DSP课程考试试卷 1、对于TMS320C54x系列DSP芯片,下列说法正确的是( C ) (A) 专用型DSP (B)32位DSP (C) 定点型DSP (D) 浮点型DSP 2、要使DSP能够响应某个可屏蔽中断,下面的说法正确的是(B ) A.需要把状态寄存器ST1的INTM位置1,且中断屏蔽寄存器IMR相应位置0 B.需要把状态寄存器ST1的INTM位置1,且中断屏蔽寄存器IMR相应位置1 C.需要把状态寄存器ST1的INTM位置0,且中断屏蔽寄存器IMR相应位置0 D.需要把状态寄存器ST1的INTM位置0,且中断屏蔽寄存器IMR相应位置1 3、若链接器命令文件的MEMORY部分如下所示: MEMORY { PAGE 0: PROG: origin=C00h, length=1000h PAGE 1: DATA: origin=80h, length=200h } 则下面说法不正确的是(A) A、程序存储器配置为4K字大小 B、程序存储器配置为8K字大小 C、数据存储器配置为512字大小 D、数据存储器取名为DATA 5、C54X DSP的流水线是由(B )级(也即是由多少个操作阶段)组成。 (A) 4 (B) 6 (C) 8 (D) 10 6、假定AR3中当前值为200h,AR0中的值为20h,下面说法正确的是() A、在执行指令*AR3+0B后,AR3的值是200h; B、在执行指令*AR3-0B后,AR3的值为23Fh; C、在执行指令*AR3-0B后,AR3的值是180h; 7、下面对一些常用的伪指令说法正确的是:(D ) A、.def所定义的符号,是在当前模块中使用,而在别的模块中定义的符号; B、.ref 所定义的符号,是当前模块中定义,并可在别的模块中使用的符号; C、.sect命令定义的段是未初始化的段; D、.usect命令定义的段是未初始化的段。 8、在采用双操作数的间接寻址方式时,要使用到一些辅助寄存器,在此种寻址方式下,下面的 那些辅助寄存器如果使用到了是非法的( D )
一、单项选择题:(每小题2分,共30分) 1、下面对一些常用的伪指令说法正确的是:( D ) A、.def所定义的符号,是在当前模块中使用,在别的模块中定义的符号; B、.ref 所定义的符号,是当前模块中定义,并可在别的模块中使用的符号; C、.sect命令定义的段是未初始化的段; D、.usect命令定义的段是未初始化的段。 2、要使DSP能够响应某个可屏蔽中断,下面的说法正确的是( B) A、需要把状态寄存器ST1的INTM位置1,且中断屏蔽寄存器IMR相应位置0 B、需要把状态寄存器ST1的INTM位置1,且中断屏蔽寄存器IMR相应位置1 C、需要把状态寄存器ST1的INTM位置0,且中断屏蔽寄存器IMR相应位置0 D、需要把状态寄存器ST1的INTM位置0,且中断屏蔽寄存器IMR相应位置1 3、对于TMS320C54x系列DSP芯片,下列说法正确的是………… ( C ) A、 8位DSP B、32位DSP C、定点型DSP D、浮点型DSP 4、若链接器命令文件的MEMORY部分如下所示: MEMORY { PAGE 0: PROG: origin=C00h, length=1000h PAGE 1: DATA: origin=80h, length=200h } 则下面说法不正确的是() A、程序存储器配置为4K字大小 B、程序存储器配置为8K字大小 C、数据存储器配置为512字大小 D、数据存储器取名为DATA 5、在串行口工作于移位寄存器方式时,其接收由()来启动。 A、REN B、RI C、REN和RI D、TR 6、执行指令PSHM AR5之前SP=03FEH,则指令执行后SP=( A ) A、03FDH B、03FFH C、03FCH D、0400H 7、TMS320C54X DSP采用改进的哈佛结构,围绕____A__组_______位总线建立。 A、 8,16 B、16,8 C、 8,8 D、16,16 8、 TMS320C54X DSP汇编指令的操作数域中, A 前缀表示的操作数为间接寻址的地址。 A、* B、# C、@ D、& 9、TMS320C54X DSP中有_____B___个辅助寄存器。 A、4 B、8 C、16 D、32 10、TMS320C54X DSP的中断标志寄存器是___ A _____。 A、IFR B、TCR C、PRD D、TIM 11、以下控制位中哪 A 位用来决定数据存储空间是否使用内部ROM。 A、MP/MC B、 OVLY C、 DROM D、SXM 12、下列说法中错误的是( C )。 A、每个DARAM块在单周期内能被访问2次。 B、每个SARAM块在单周期内只能被访问1次。 C、片内ROM主要存放固化程序和系数表,只能作为程序存储空间。 D、DARAM和SARAM既可以被映射到数据存储空间用来存储数据,也可以映射到程序 空间用来存储程序代码。 13、若程序中对堆栈设置如下,则下列说法错误的是( C )。 size .set 120 stack .usect “STACK”,size STM # stack + size,SP A、此堆栈段的段名为STACK B、此堆栈段共120个单元 C、此堆栈段第一个变量的名称为size D、堆栈设置好后,堆栈指针SP指向栈底 14、TMS320C54x中累加器A分为三个部分,低位字,高位字和保护位,其中A的高位字 是指(C ) A、AL B、AG C、AH D、AM 15、TMS320C54X DSP软硬件复位时,中断向量为________。( C ) A、0000H B、0080H C、FF80H D、FF00H 二、判断题(每小题1分,共10分) 1.TMS320C54X DSP缓冲串行接口是在同步串口基础上,增加了一个自动缓冲单元,主要提供灵活的数据串长度,并降低服务中断开销。(对)2.循环缓冲区是一个滑动窗,包含最近的数据,若有新的数据到来,它将覆盖旧的数据。(对) 3.浮点DSP与定点DSP相比,价格便宜、功耗较小、运算精度稍低。(错)4.TMS320C55X DSP的40位ALU和累加器,仅支持16位算术运算。( 错)
D S P历年期末试卷及答 案精选文档 TTMS system office room 【TTMS16H-TTMS2A-TTMS8Q8-
试卷1 一.填空题(本题总分12分,每空1分) 1.TMS320VC5402型DSP的内部采用条位的多总线结构。2.TMS329VC5402型DSP有个辅助工作寄存器。 3.在链接器命令文件中,PAGE 1通常指________存储空间。 4.TI公司DSP处理器的软件开发环境是__________________。 5.直接寻址中从页指针的位置可以偏移寻址个单元。 6.TMS320C54x系列DSP处理器上电复位后,程序从指定存储地址________单元开始工作。 7.MS320C54X DSP主机接口HPI是________位并行口。 型DSP处理器的内核供电电压________伏。 9. C54x系列DSP上电复位后的工作频率是由片外3个管脚;;来决定的。 二.判断题(本题总分10分,每小题1分,正确打“√”,错误打“×”)1.DSP 处理器TMS320VC5402的供电电压为5V。()
2.TMS320VC5402型DSP内部有8K字的ROM,用于存放自举引导程序、u 律和A律扩展表、sin函数表以及中断向量表。 ( ) 3.MEMORY伪指令用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位置。( ) 4. DSP的流水线冲突产生的原因是由于DSP运行速度还不够快。 () 5.DSP和MCU属于软件可编程微处理器,用软件实现数据处理;而不带CPU 软核的F P G A属于硬件可编程器件,用硬件实现数据处理。 ()6. C54x系列DSP的CPU寄存器及片内外设寄存器映射在数据存储空间的0000h-0080h中。 () 7. TMS320C54X 系列DSP可以通过设置OVLY位实现数据存储空间和程序存储空间共享片内ROM。 ( )
5.CMD文件的有两大功能,一是通过MEMORY伪指令来指示存储空间,二是????????通过S E C T I O N S伪指令来指明存储空间位置????。????????。填空: 1.TI公司的定点DSP 产品主要有TMS320C2000系列、TMS320C5000系列和 TMS320C6000系列。 2.TMS320X2812主频高达150mhz,采用哈佛总线结构模式。 3.TMS320X2812芯片的封装方式有?176?引脚的PGF低剖面四芯线扁平LQFP封装和179针的GHH球形网络阵列?BGA封装??。 4.TMS320X2812的事件管理器模块包括 2个通用定时器、 3个比较单元、 3个捕获单元、以及 1个正交编码电路。 5.CMD文件的有两大功能,一是通过MEMORY伪指令来指示存储空间,二是通过sections伪指令来分配到存储空间。 6.“# pragma DATA_SECTION”命令用来定义数据段,“# pragma DATA_SECTION”命令用来定义。 7.TMS320X2812三级中断分别是CPU级、 PIE中断和外设级。 8.F2812存储器被划分成程序空间和数据空间、保留区和 CPU中断向量。 9.SCI模块的信号有外部信号、控制信号和中断信号。 10.F2812 DSP中传送执行指令所需的地址需要用到PAB 、DRAB和EAB 这3条地址总线。 11.C语言程序经过编译后会生成两大类的段:?代码段???和??数据段??。 简答: 1.DSP芯片有哪些主要特点? DSP的主要特点有: 1.哈佛结构 2.多总线结构 3.流水线结构 4.多处理单元 5特殊的DSP指令 6.指令周期短 7.运算精度高 8.硬件配置强。 2.简述典型DSP应用系统的构成。 一个典型的DSP系统应包括抗混叠滤波器、数据采集A/D转换器、数字信号处理器DSP、D/A转换器和低通滤波器等组成。 输入信号首先进行带限滤波和抽样,然后进行数模变换将信号变换成数字比特流,根据奈奎斯特抽样定理,对低通模拟信号,为保持信号的不丢失,抽样频率至少必须是输入带限信号最高频率的2倍。
试卷1 一?填空题(本题总分12分,每空1分) 1 . TMS320VC540 2 型DSP的内部采用_________________ 条___________ 位的多总线结构。 2 . TMS329VC5402 型DSP有 ____________________ 个辅助工作寄存器。 3 ?在链接器命令文件中,PAGE 1通常指__________ 储空间。 4 . TI公司DSP处理器的软件开发环境是___________________ 。 5?直接寻址中从页指针的位置可以偏移寻址_______________ 个单元。 6 . TMS320C54X 系列DSP处理器上电复位后,程序从指定存储地址________________ 元开始工作。 7 . MS320C54X DSP 主机接口 HPI 是_____________ 并行口。 8. TMS320VC5402 型DSP处理器的内核供电电压______________ 。 9. C54x系列DSP上电复位后的工作频率是由片外3个管脚__________ ; ________ ; ____ 来决定的。 二.判断题(本题总分10分,每小题1分,正确打“V”,错误打“X”) 1 . DSP处理器TMS320VC540 2 的供电电压为 5V。() 2 . TMS320VC5402 型DSP内部有8K字的ROM,用于存放自举引导程序、u律和A律扩展表、sin函数表以及中断向量表。 () 3 . MEMORY伪指令用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中 的位置。() 4. DSP的流水线冲突产生的原因是由于DSP运行速度还不够快。()
DSP技术期末考试试题 __________班姓名___________ 学号_______________ (请考生注意:本试卷共 5 页,8道大题) TMS320C54X系列,所有答案均以54系列为主,特此声明) 一、单项选择题:(每小题2分,总计20分) 1、以下各项哪项不属于DSP芯片的主要特点答:(B ) (A)哈佛结构(B)事务型处理器(C)指令系统的流水线操作(D)多总线结构2、哈佛结构与冯.诺依曼结构的区别在于答:(A ) (A)不止一条数据总线(B)多个存储器 (C)允许流水线操作(D)专用的硬件乘法器 3、TMS320C54x的中央处理器由以下哪项组成答:(A )(A)运算部件和控制部件(B)算术逻辑单元和累加器 (C)累加器和乘法器(D)ST1和STO 4、以下各项哪项不属于选择DSP 芯片时考虑的因素答:(D ) (A)运算速度(B)精度和动态范围(C)价格(D)外观 5、C54x通过3个状态位,可以很方便地“使能”和“禁止”片内存储器在程序和数据空间中的映射。如果使片内ROM可以映射到数据空间,则应选择以下哪个作为设定 答:(D )(A)MP/MC=1 (B) OVLY=1 (C) DROM=0 (D) DROM=1 6、若使CPL=1,DP=1,SP=0100H,执行直接寻址语句:ADD 30H,A 后,则得到16位的数据存储器实际地址为:答:( B )(A)00B0H(B)0130H(C)0031H(D)0030H 7、双数据存储器操作数间接寻址所用辅助寄存器只能是以下哪项答:(C )(A)AR0 AR1 AR2 AR3 (B)AR1 AR2 AR3 AR4 (C)AR2 AR3 AR4 AR5 (D)AR0 AR1 AR6 AR7
简述DSP芯片的主要特点 哈佛结构----将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。 多总线结构---保证在一个机器周期内可以多次访问程序存储空间和数据存储空间。 指令系统的流水线操作--减少指令执行时间,增强处理器的处理能力。取址,译码,取操作和执行四个阶段。 专用的硬件乘法器--使乘法累加运算能在单个周期内完成。 特殊的DSP指令、快速的指令周期、硬件配置强。 详细描述冯诺依曼结构和哈佛结构,并比较不同? 冯诺依曼结构--数据和程序共用总线和存储空间,在某一时刻,只能读写程序或者读写数据。将指令、数据、地址存储在同一个存储器统一编址,依靠指令计数器提供的地址来区分是指令‘数据还是地址,取指令和取操作数都访问同一存储器,数据吞吐率低。 哈佛结构----将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。改进的还允许在程序存储空间和数据存储空间之间相互传送数据。 DSP系统的设计过程? 确定DSP系统设计的性能指标;进行算法优化与模拟;选择DSP芯片和外围芯片;进行硬件电路的设计;进行软件设计;进行软硬件综合调试。 请描述TMS320C54x的总线结构? C54X采用先进的哈佛结构并具有八组总线, 其独立的程序总线和数据总线允许同时读取指令和操作数,实现高度的并行操作。程序总线PB传送从程序存储器来的指令代码和立即数。 3组数据总线连接各种元器件。CB和D B总线传送从数据存储器读出的操作数,EB总线传送写入到存储器中的数据。(1分) 4组地址总线PAB\CAB\DAB\EA B传送执行指令所需的地址。 TMS320C54x片内存储器一般包括哪些种类?如何配置片内存储器? C54X片内存储器一般包括两种类型:ROM(只读存储器),RAM(随机访问存储器)。RAM又可分为双访问DARAM和单访问SARAM。 简述TMS320C54X芯片的CPU各组成部分及其功能。 CPU状态和控制寄存器:用于设置各种工作条件和工作方式的状态以及存储器配置状态和控制信息。 40位算术逻辑单元、40位累加器A和B:两者共同完成算术运算和逻辑运算。 桶形移位寄存器:使处理器能完成数字定标,位提取,对累加器进行归一化处理等操作。 乘法器/加法器单元:在单周期内完成一次乘法累加运算。 比较选择和存储单元:是专门为V iterbi算法设计的加法,比较,选择操作的硬件单元。 指数编码器:用于支持单周期指令EXP的专用硬件。 TMS320C54x存储器包括哪几个空间? 64k程序存储空间:程序指令和程序中所需的常数表格 64k数据存储空间:存储需要程序处理的数据或程序处理后的结果 64kI/O存储空间:存储与外部存储器映像的外设接口 TMS320C54x有几种状态和控制寄存器?它们的功能? 状态寄存器ST0 和状态寄存器ST1:0和1包括了各种工作条件和工作方式的状态 处理器方式状态寄存器PMST:包括了存储器配置状态和控制信息 TMS320C54x的片内外设有哪些?以及它们的功能? 通用I/O引脚:扩展外部存储器; 定时器:用于周期性的产生中断和周期输出; 时钟发生器:为C54X提供时钟信号; 主机接口:外部主机或主处理器可以通过HPI接口读写C54X的片内RAM,从而大大提高数据交换能力; 串行口:这些串口可提供全双工,双向的通信功能,可与编解码器,串行AD转换器和其他串行器件通信,也可以用于微
试卷1 一. 填空题(本题总分12分,每空1分) 1. ________________________________________ TMS320VC5402型DSP 的内部采用 条 位的多总线结构。 2. ____________________________________ TMS329VC5402型 DSP 有 个辅助工作寄存器。 3?在链接器命令文件中,PAGE 1通常指 ______________ 存储空间。 4. TI 公司DSP 处理器的软件开发环境是 ______________________ 。 5?直接寻址中从页指针的位置可以偏移寻址 _______________ 个单元。 6. TMS320C54X 系列DSP 处理器上电复位后,程序从指定存储地址 7. ____________________________________ MS320C54X DSPt 机接口 HPI 是 位并行口。 8. TMS320VC5402型DSP 处理器的内核供电电压4. DSP 的流水线冲突产生的原因是由于 DSP 运行速度还 不够快。 5. DSP 和 MCU1于软件可编程微处理器,用软件实现数据处理;而不带 于 硬件 可编 程 器件, 用 硬 件实 理。 ) 0000h-0080h 中。 () 7. TMS320C54X 系列DSP 可以通过设置OVLY 位实现数据存储空间和程序存储空间共享片 内 ROM ( 8. TMS320VC5402型DSP 汇编指令 READA 勺寻址范围为 64K 字。 9. 在TMS320VC5402型 DSP 所有中断向量中,只有硬件复位向量不能被重定位, 向量总是指向程序空间的 0FF80H 位置。 10. C54x 系列DSP 只有两个通用的I/O 引脚。 三.程序阅读题(本题总分30分,每小题10分) 1?阅读下面的程序,回答问题。 .bss x, 8 LD #0001H,16,B STM #7,BRC STM #x,AR4 RPTB n ext-1 ADD *AR4,16,B,A STH A,*AR4+ next: LD #0,B 问题:(1)寄存器“ BRC 的功能是什么? (2)汇编语句“ ADD *AR4,16,B,A ”执行了多少次? 9. C54x 系列DSP 上电复位后的工作频率是由片外 3个管脚 _____ 决定的。 二. 判断题(本题总分10分,每小题1分,正确打“V”,错误打“X”) DSP 处理器TMS320VC5402的供电电压为 5V 。 () TMS320VC5402型 DSP 内部有8K 字的ROM 用于存放自举引导程序、 u 律和A 律扩展表、 函数表以及中断向量表。 ( MEMOR Y 指令用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位 ( 1 . 2. sin 3. 置。 5V 。 单元开始工作。 伏。 CPU 软核的 现 数 ( FPGA 属 据处 ( 6. C54x 系列DSP 的CPU 寄存器及片内外设寄存器映射在数据存储空间的 ) () 即硬件复位 ( (
一、TI公司DSP分类及代表产品简介 TI的DSP经过完善的测试出厂时,都是以TMS320为前缀。在众多款型DSP中,TI把市场销量好和前景看好的DSP 归为三大系列而大力推广,TI也称之为三个平台。 TMS320C6000平台,包含定点C62x和C64x以及浮点C67x。其追求的是至高性能,最近新推出的芯片速度高达1GHZ,适合宽带网络、图像、影像、雷达等处理应用。 TMS320C5000 平台,包含代码兼容的定点C54x和C55x。其提供性能、外围设备、小型封装和电源效率的优化组合,适合便携式上网、语音处理及对功耗有严格要求的地方。DSP的传统设计往往是采取主从式结构:在一块电路板上,DSP做从机,负责数字信号处理运算;外加一块嵌入式微处理器做主机,来完成输入、控制、显示等其他功能。为此,TI专门推出了一款双核处理器OMAP,包含有一个ARM和一个C5000系列DSP,OMAP处理器把主从式设计在芯片级上合二为一,一个典型的应用实例为诺基亚手机。 TMS320C2000 平台,包含16位C24xx和32位C28xx的定点DSP。C24xx系列市场销量很好,而对C28xx系列,TI认为很有市场潜力而大力推广。C2000针对控制领域做了优化配置,集成了了众多的外设,适合逆变器、马达、机器人、数控机床、电力等应用领域。 另外,OMAP 系列:OMAP 处理器集成ARM 的命令及控制功能,另外还提供DSP 的低功耗,实时信号处理能力,最适合移动上网设备和多媒体家电。 其他系列的DSP 曾经有过风光,但现在都非TI 主推产品了,除了C3X 系列外,其他基本处于淘汰阶段,如:C3X 的浮点系列:C30,C31,C32 C2X 和C5X 系列:C20,C25,C50, 每个系列的DSP 都有其主要应用领域。 二、简述实时信号处理的含义。 要求在限定的时间内将采集的数据在现场处理完成并得到一定的结果,即信号处理的时间要小于或者等于下一批数据输入时间,有时甚至要求在特定的时间、地点来完成信号处理。 三、数字信号处理中最典型的运算有哪些? 离散傅里叶变换(DFT)和卷积是信号处理中两个最基本也是最常用的运算。 核心算法是构成多数数字信号处理系统的基本模块, 包括:FFT,向量加,向量点积,滤波器,控制(转移、压栈、出栈、位操作) 四、C6000系列DSP为什么适合与数字信号处理的需要?从DSP的cpu结构、总线结构、存储器结构、专用功能单元、指令系统等方面阐述。 TMS320C6000产品是美国TI公司于1997年推出的dsp芯片,该DSP芯片定点、浮点兼容,其中,定点系列是TMS320C62xx系列,浮点系列是TMS320C67xx系列。 CPU结构:1.定点/浮点系列兼容DSP 2.具有VelociTITM先进VLIW结构内核3.具有类似RISC的指令集4.片内集成大容量SRAM,最大可达8bit 6.内置高效率协处理器7.片内提供多重集成外设(不同芯片的资源不同)等多种功能结构,满足数字信号处理的精度及效率需要,另外其CPU用了哈佛结构,程序总线和数据总线分开,取指令与执行指令可并行,时效性提高。 总线:cpu内部程序总线和数据总线分开,取指令与执行指令可并行。但偏外的存储器和总线都不分开。C6000系列DSP才用了新的VILW结构,片内提供8个独立的运算单元,256位的程序总线,2套32位的数据总线和1套32位的DMA专用总线。灵活的总线结构大大缓解了数据瓶颈对系统性能的限制。 存储区:C6000系统dsp内部集成有1-8bit的程序RAM和数据RAM,对于有些片种,这些存储器还可以配置为程序Cache或者数据Cache来使用。 专用功能单元:C6000片内有8个并行的处理单元,分为相同的两组,包括2个乘法器和6个ALU。这8个功能单元最多可以在1个周期内同时执行8条32位指令,芯片最高时钟频率为300MHz(67xx系列),且内部8个处理单元并行运行时,其最大处理能力可达到1600MIPS。郭功能单元的并且操作使得DSO在相同时间内能够完成更多的操作,提高了程序的执行速度。
一、填空题(每空2分,共20分) 1、在C语言和C55x汇编语言的混合程序设计中,C函数的参数和返回值传递到 C55x的寄存器中。在函数“long func(int *p1, int i2, int i3, int i4)” 中,*p1传递到AR0寄存器,i2传递到T0寄存器,i4传递到AR1寄存器,返回值由AC0寄存器传递。 2、汇编语言“mov *AR0,AC0”使用的寻址方式是间接寻址模式,“mov #0x3, DPH”使用的寻址方式是直接寻址模式,“mov *(#0x011234),T2”使用的寻址方式是绝对寻址模式。 3、指令执行前AC0的值是0012345678,那么汇编语句“AND #0x7f, AC0”, 执行之后,AC0的值是0000000078。 4、C55x 的链接器命令文件中,SECTIONS命令的主要作用是告诉链接器如何将输 入段组合成输出段,以及在存储器何处存放输出。MEMORY命令的主要作用是定义目标系统的存储器配置图,包括对存储器各部分的命名,以及规定它们的起始地址和长度。 二、简述题(共40分) 1、根据你的理解,试列举 DSP 芯片的特点?(5分) 答:哈佛结构;多总线结构;指令系统的流水线操作;专用的硬件乘法器;特殊的DSP 指令;快速的指令周期;丰富的外设 2、TMS320C55x 芯片的总线结构有何特点,主要包括哪些总线?它们的功 能是什么?(6分) 答:TMS320C55x DSP采用先进的哈佛结构并具有十二组总线,其独立的程序总线和数据总线允许同时读取指令和操作数,实现高度的并行操作。 采用各自分开的数据总线分别用于读数据和写数据,允许CPU在同一个机器周期内 进行两次读操作数和一次写操作数。独立的程序总线和数据总线允许CPU同时访问 程序指令和数据。 包括12条总线,分别是:PAB和PB、BAB和BB、CAB和CB、DAB和DB、EAB和EB、FAB和FB。 3、DSP 为了降低功耗采取了哪些措施?(6分) 答:双电压供电;多种工作模式 4、TMS320C55x 的总存储空间为多少?可分为哪 3 类,它们的大小是多 少?存储器空间的各自作用是什么?(6分) 答:程序空间16M Byte;I/O空间64K Words;数据空间8M Words 5、TMS320C55x有哪些寻址方式,它们是如何寻址的?试为每种寻址方式列 举一条指令(6分) 答:直接寻址模式,mov #K16,DP; 间接寻址模式,mov *AR0,AC0; 绝对寻址模式,mov *(#0x011234),T2; MMR寻址模式,mov *abs16(#AR2), T2; 寄存器位寻址模式,btstp @30, AC1; 圆形寻址模式。 6、将C源程序转换成可执行文件需要经过哪些步骤?(6分) 答:创建C源文件;创建工程文件;创建连接器命令文件;编译整个工程文件;链接; 生成可执行文件
读书破万卷下笔如有神 一、TI公司DSP分类及代表产品简介 TI的DSP经过完善的测试出厂时,都是以TMS320为前缀。在众多款型DSP中,TI把市场销量好和前景看好的DSP归为三大系列而大力推广,TI也称之为三个平台。 TMS320C6000平台,包含定点C62x和C64x以及浮点C67x。其追求的是至高性能,最近新推出的芯片速度高达1GHZ,适合宽带网络、图像、影像、雷达等处理应用。 TMS320C5000 平台,包含代码兼容的定点C54x和C55x。其提供性能、外围设备、小型封装和电源效率的优化组合,适合便携式上网、语音处理及对功耗有严格要求的地方。DSP的传统设计往往是采取主从式结构:在一块电路板上,DSP做从机,负责数字信号处理运算;外加一块嵌入式微处理器做主机,来完成输入、控制、显示等其他功能。为此,TI专门推出了一款双核处理器OMAP,包含有一个ARM和一个C5000系列DSP,OMAP处理器把主从式设计在芯片级上合二为一,一个典型的应用实例为诺基亚手机。 TMS320C2000 平台,包含16位C24xx和32位C28xx的定点DSP。C24xx系列市场销量很好,而对C28xx系列, TI认为很有市场潜力而大力推广。C2000针对控制领域做了优化配置,集成了了众多的外设,适合逆变器、马达、机器人、数控机床、电力等应用领域。 另外,OMAP 系列:OMAP 处理器集成ARM 的命令及控制功能,另外还提供DSP 的低功耗,实时信号处理能力,最适合移动上网设备和多媒体家电。 其他系列的DSP 曾经有过风光,但现在都非TI 主推产品了,除了C3X 系列外,其他基本处于淘汰阶段,如:C3X 的浮点系列:C30,C31,C32 C2X 和C5X 系列:C20,C25,C50, 每个系列的DSP 都有其主要应用领域。 二、简述实时信号处理的含义。 要求在限定的时间内将采集的数据在现场处理完成并得到一定的结果,即信号处理的时间要小于或者等于下一批数据输入时间,有时甚至要求在特定的时间、地点来完成信号处理。 三、数字信号处理中最典型的运算有哪些? 离散傅里叶变换(DFT)和卷积是信号处理中两个最基本也是最常用的运算。 核心算法是构成多数数字信号处理系统的基本模块, 包括:FFT,向量加,向量点积,滤波器,控制(转移、压栈、出栈、位操作) 四、C6000系列DSP为什么适合与数字信号处理的需要?从DSP的cpu结构、总线结构、存储器结构、专用功能单元、指令系统等方面阐述。 TMS320C6000产品是美国TI公司于1997年推出的dsp芯片,该DSP芯片定点、浮点兼容,其中,定点系列是TMS320C62xx系列,浮点系列是TMS320C67xx系列。 CPU结构:1.定点/浮点系列兼容DSP 2.具有VelociTITM先进VLIW结构内核3.具有类似RISC 的指令集 4.片内集成大容量SRAM,最大可达8bit 6.内置高效率协处理器7.片内提供多重集成外设(不同芯片的资源不同)等多种功能结构,满足数字信号处理的精度及效率需要,另外其CPU用了哈佛结构,程序总线和数据总线分开,取指令与执行指令可并行,时效性提高。 总线:cpu内部程序总线和数据总线分开,取指令与执行指令可并行。但偏外的存储器和总线都不分开。C6000系列DSP才用了新的VILW结构,片内提供8个独立的运算单元,256位的程序总线,2套32位的数据总线和1套32位的DMA专用总线。灵活的总线结构大大缓解了数据瓶颈对系统性能的限制。