DSP历年期末考试及答案.docx
《DSP历年期末考试及答案.docx》由会员分享,可在线阅读,更多相关《DSP历年期末考试及答案.docx(18页珍藏版)》请在冰点文库上搜索。
![DSP历年期末考试及答案.docx](https://file1.bingdoc.com/fileroot1/2023-7/5/a49e8f1e-1144-4e61-a107-c1d2960d6b7d/a49e8f1e-1144-4e61-a107-c1d2960d6b7d1.gif)
DSP历年期末考试及答案
DSP历年期末考试及答案
————————————————————————————————作者:
————————————————————————————————日期:
试卷1
一.填空题(本题总分12分,每空1分)
1.TMS320VC5402型DSP的内部采用条位的多总线结构。
2.TMS329VC5402型DSP有个辅助工作寄存器。
3.在链接器命令文件中,PAGE1通常指________存储空间。
4.TI公司DSP处理器的软件开发环境是__________________。
5.直接寻址中从页指针的位置可以偏移寻址个单元。
6.TMS320C54x系列DSP处理器上电复位后,程序从指定存储地址________单元开始工作。
7.MS320C54XDSP主机接口HPI是________位并行口。
8.TMS320VC5402型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.阅读下面的程序,回答问题。
.bssx,8
LD#0001H,16,B
STM#7,BRC
STM#x,AR4
RPTBnext-1
ADD*AR4,16,B,A
STHA,*AR4+
next:
LD#0,B
问题:
(1)寄存器“BRC”的功能是什么?
(2)汇编语句“ADD*AR4,16,B,A”执行了多少次?
(3)执行语句“LD#0001H,16,B”后,累加器B的内容是多少?
2.已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=111,外部晶振=10MHz,参数设置表:
CLKMD1
CLKMD2
CLKMD3
CLKMD复位值
时钟方式
0
0
0
E007H
PLL×15
0
0
1
9007H
PLL×10
0
1
0
4007H
PLL×5
1
0
0
1007H
PLL×2
1
1
0
F007H
PLL×1
1
1
1
0000H
2分频
1
0
1
F000H
4分频
STM#00H,CLKMD
Status:
LDMCLKMD,A
AND#01H,A
BCStatus,ANEQ
STM#9007H,CLKMD
问题
(1)DSP复位后,DSP的工作时钟是多少?
(2)执行上面的程序片段后,DSP的工作时钟是多少?
3.阅读下面的命令连接文件(简称CMD文件)和程序文件:
CMD文件:
MEMORY
{PAGE0:
PROG:
origin=0x1000,length=0x1000
PAGE1:
DATA:
origin=0x2000,length=0x1000
}
SECTIONS
{.text:
{}>PROGPAGE0
.data:
{}>DATAPAGE1
}
.data
table:
.word1,2,3,4 ;变量初始化
.text
start:
STM#0,SWWSR;插入0个等待状态
问:
(1)MEMORY和SECTIONS的作用各是什么?
(2)标号“table”和“start”的地址分别是什么,分别位于程序空间还是数据空间?
四.简答题(本题总分48分,每小题8分)
1.在C54x的汇编语言中,使用“#”、“*”、“@”符号作为操作数的前缀各表示什么意思?
2.简述COFF文件中“ 段”的概念,有哪些常用的段?
3.简述冯·诺依曼结构、哈佛结构和改进的哈佛结构之间的区别。
4.简述C54x系列DSP定时器的组成部分、各部分分别起什么作用?
5.简述DSP处理器TMS320VC5402在微计算机工作模式中上电启动的过程。
6.简述PMST寄存器中IPTR的作用。
答案1
一.填空题(本题总分12分,每空1分)
1.8,162.8个3.数据4.答:
CCS(CodeComposerStudio)
5.答:
1286.答:
FF80h7.答:
88.答:
1.8v
9.答:
CLKMD1、CLKMD2、CLKMD3
二.判断题(本题总分10分,每小题1分,正确打“√”,错误打“×”)
1.×2.×3.√4.×5.√6.√7.×8.×9.√10.√
三.程序阅读题(本题总分30分,每小题10分)
1.
(1)寄存器“BRC”的功能是暂存块循环的次数
(2)8次(3)B=0x0100H;
2.答:
(1)5MHz
(2)100MHz
3.答:
MEMORY和SECTIONS链接伪指令,用来指定目标存储器结构和地址分配。
标号table:
1000h(程序空间)标号start:
2000h(数据空间)
四.简答题(本题总分48分,每小题8分)
1.答:
使用“#”号作为前缀,汇编器将操作数作为立即数处理。
即使操作数是寄存器或地址,也将作为立即数。
使用“*”符号作为前缀,汇编器将操作数作为间接地址,即把操作数的内容作为地址。
使用“@”符号作为前缀,汇编器将操作数作为直接地址,即操作数由直接地址码赋值。
2.答:
段是COFF文件中最重要的概念。
每个目标文件都分成若干段。
段——是存储器中占据相邻空间的代码或数据块。
一个目标文件中的每个段都是分开的和各不相同的。
.text段(文本段),通常包含可执行代码;
.data段(数据段),通常包含初始化数据;
.sect段——已初始化段,由汇编器伪指令建立的自定义段。
.bss段——未初始化段;
.usect段——未初始化段,由汇编命令建立的命名段(自定义段)。
3.答:
冯·诺伊曼(VonNeuman)结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行。
当进行高速运算时,不但不能同时进行取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。
哈佛(Harvard)结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实时的数字信号处理。
改进型的哈佛结构是采用双存储空间和数条总线,即一条程序总线和多条数据总线。
允许在程序空间和数据空间之间相互传送数据,使这些数据可以由算术运算指令直接调用,增强芯片的灵活性;提供了存储指令的高速缓冲器(cache)和相应的指令,当重复执行这些指令时,只需读入一次就可连续使用,不需要再次从程序存储器中读出,从而减少了指令执行作需要的时间。
4.答:
定时器主要由定时寄存器TIM、定时周期寄存器PRD、定时控制寄存器TCR及相应的逻辑控制电路组成。
定时周期寄存器PRD用来存放定时时间,定时寄存器TIM为16位减1计数器,定时控制寄存器TCR存放定时器的控制位和状态位,逻辑控制电路用来控制定时器协调工作。
5.答:
DSP上电复位后,程序PC指针跳转到0xff80位置,在芯片的0xff80这个单元中存储着跳转指令、程序自动跳转到0xF800,开始执行自举装载程序,自举装载程序将片外存储器的程序搬运到DSP程序存储空间的某个地方,自举装载程序的最后一条指令是跳转指令,程序接着跳转到刚才搬运在程序存储空间的某个地址,从而开始程序的自动运行。
6.答:
C54x的中断向量地址是由PMST寄存器中的IPTR(9位中断向量指针)和左移2位后的中断向量序号所组成。
中断向量地址=IPTR+(左移2位的中断向量序号)
DSP试卷2
一.填空题(本题总分12分,每空1分)
1.累加器A分为三个部分,分别为;;。
2.TI公司的DSP处理器TMS320VC5402PGE100有___________个定时器。
3.TMS329VC5402型DSP的ST1寄存器中,INTM位的功能是。
4.在链接器命令文件中,PAGE0通常指________存储空间。
5.DSP处理器按数据格式分为两类,分别是_________;________。
6.DSP处理器TMS320VC5402的IO管脚供电电压________伏。
7.TMS320VC5402型DSP的累加器是位。
8.TMS320C54X具有两个通用I/O口,________用于输入外设的状态;________用于输出外设的控制信号。
二.判断题(本题总分10分,每小题1分)
1.DSP的工作频率只能是外部晶体振荡器的频率。
()
2.TMS320C54XDSP的汇编语言中有除法指令。
()
3.哈佛结构的特点是数据总线和程序总线分开。
( )
4.在C54x系列DSP中断向量表中,每个中断向量的入口地址间隔4个字。
()
5.在DSP处理器汇编程序中,标号区分大小写。
()
6.TMS320VC5402型DSP汇编语言的伪指令也是一种指令,同样占用存储空间。
()
7.DSP处理器TMS320VC5402的软件中断是不可屏蔽的中断。
()
8.DSP处理器TMS320VC5402有不止一种串行口。
()
9.DSP处理器TMS320VC5402在微型计算机工作模式时,上电复位后程序从片外存储器的FF80h单元开始执行。
()
10.TMS320VC5402型DSP汇编语言的寻址方式可以实现FFT算法中的位倒序寻址方式。
()
三.程序阅读题(本题总分30分,每小题10分)
1.阅读下面的程序:
.mmregs
DAT0.SET60H
DAT1.SET61H
DAT2.SET62H
DAT3.SET63H
add3.macroP1,P2,P3,ADDRP
LDP1,A
ADDP2,A
ADDP3,A
STLA,ADDRP
.endm
ST#0034h,DAT0
ST#0243h,DAT1
ST#1230h,DAT2
ADD3DAT0,DAT1,DAT2,DAT3
问题:
(1)语句“.mmregs”的含义。
(2)语句“ADD3DAT0,DAT1,DAT2,DAT3”是一条什么类型的语句?
作用是什么?
(3)执行此段程序后,存储单元(DAT3)的运行结果多少?
2.阅读下面的程序,回答问题。
MEMORY
{PAGE0:
PROG:
origin=0x2000,length=0x1000
PAGE1:
DATA:
origin=0x4000,length=0x1000
}
SECTIONS
{.text:
{}>PROGPAGE0
STACK:
{}>DATAPAGE1
}
汇编程序
size.set0x0120
stack.usect“STACK”,size
.text
STM#stack+size,SP
问题:
(1)指令“stack.usect“STACK”,size”的作用是什么?
(2)标号“stack”的存储器地址是多少?
(3)执行这段代码之后,SP寄存器的内容是多少?
3.阅读程序,回答后面的问题
STM#9,AR4
begin:
STM#7,BRC
RPTBnext-1
nop
next:
LD#0,B
banzbegin,*AR4-
问
(1)BRC寄存器是做什么用途?
(2)其中的“nop”语句被执行了多少次?
四.简答题(本题总分48分,每小题8分)
1.简述链接器命令文件中MEMORY和SECTIONS两条指令的作用。
2.简述DSP处理器中断系统分为几种中断,如何清除中断标志?
3.在C54x的程序中,“.text”和“.sect”段有什么区别?
4.简述C54x系列DSP的定时器工作过程。
5.宏指令与子程序有哪些区别?
6.简述TI公司C2000,C5000,C6000系列处理器的应用范围。
答案2
课程名称:
DSP原理及应用试卷编号:
一.填空题(本题总分12分,每空1分)
1.AG,AH,AL2.23.答:
开放/关闭所有可屏蔽中断4.答:
程序
5.答:
定点DSP浮点DSP6.BIO,XF7.408.答:
3.3v
二.判断题(本题总分10分,每小题1分,正确打“√”,错误打“×”)
1.×2.×3.√4.√5.√6.×7.√8.×9.×10.√
三.程序阅读题(本题总分30分,每小题10分)
1.
(1)定义存储器映像寄存器的符号名称。
(2)宏调用。
执行三个数相加。
(3)14a7H
2.答:
(1)定义一个未初始化段,段名为”STACK”,目的是为变量stack保留size个单元的存储空间。
(2)stack的存储空间为0x4000;(3)SP=0x4120;
3.答:
BRC保存着RPTB指令的循环次数
80次
四.简答题(本题总分48分,每小题8分)
1.答:
MEMORY伪指令——用来定义目标系统的存储器配置空间,包括对存储器各部分命名,以及规定它们的起始地址和长度。
SECTIONS伪指令——用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位置,也可用于指定子段。
2.答:
硬件中断:
由片外管脚和片内外设引起的中断,又分为可屏蔽中断和非屏蔽中断。
软件中断:
软件中断是由程序指令产生的中断请求,
有三种情况将清除中断标志:
(1)软件和硬件复位,即’C54x的复位引脚RS=0;
(2)相应的IFR标志位置1;
(3)使用相应的中断号响应该中断,即使用INTR#K指令。
3.答:
在程序中,所有的“.text”段在编译时合并为一个“.text”段,并将其定位在一个连续的存储空间中。
在“.sect”定义的段中,由于不同的段均有不同的段名,因此不同段名的“.sect”段不会合并为一个段,而且可以分别定位在程序存储空间的不同位置。
4.答:
① 定时分频系数和周期数分别装入TCD和PRC寄存器中;
② 每来一个定时脉冲CLKOUT,计数器PSC减1;
③ 当PSC减至0时,PSC产生借位信号;
④在PSC的借位信号作用下,TIM减1计数,同时将分频系数装入PSC,重新计数;
⑤ 当TIM减到0时,定时时间到,由借位产生定时中断TINT和定时输出TOUT,并将PRD中的时间常数重新装入TIM。
5.答:
⑴宏指令和子程序都可以被多次调用,但是把子程序汇编成目标代码的过程只进行一次,而在用到宏指令的每个地方都要对宏指令中的语句逐条地进行汇编。
⑵在调用前,由于子程序不使用参数,故子程序所需要的寄存器等都必须事先设置好;而对于宏指令来说,由于可以使用参数,调用时只要直接代入参数就行了。
6.答:
C2x、C24x称为C2000系列,主要用于数字控制系统;
C54x、C55x称为C5000系列,主要用于功耗低、便于携带的通信终端;
C62x、C64x和C67x称为C6000系列,主要用于高性能复杂的通信系统,如移动通信基站。
试卷3
一.填空题(本题总分12分,每空1分)
1.TMS320VC5402型DSP采用总线结构对程序存储器和数据存储器进行控制。
2.DSP处理器TMS320VC5402中DARAM的容量是字。
3.C54x的中断系统的中断源分为_______中断和________中断。
4.DSP处理器TMS320VC5402外部有___________根地址线。
5.C54x系列DSP处理器中,实现时钟频率倍频或分频的部件是_____________。
6.TMS320C54x系列DSP处理器有_____个通用I/O引脚,分别是_________。
7.在C54X系列中,按流水线工作方式,分支转移指令的分为哪两种类型:
_______;_______。
8.C54x的程序中,“.bss”段主要用于_______________。
9.从数据总线的宽度来说,TMS320VC5402PGE100是_______位的DSP处理器。
二.判断题(本题总分10分,每小题1分)
1.在C54x系列DSP中断向量表的最大长度只能128字。
()
2.TMS320C54XDSP是浮点型处理器。
()
3.DSP的流水线冲突产生的原因是由于DSP运行速度还不够快。
()
4.DSP处理器TMS320VC5402的堆栈是向低地址方向生长的。
()
5.TMS320C54X系列DSP外部程序存储器的分页扩展受DROM位控制。
()
6.在C54x系列DSP中断向量表中,每个中断向量的入口地址间隔4个字。
()
7.TMS320VC5402型DSP汇编指令READA的寻址范围为64K字。
()
8.DSP处理器TMS320VC5402的定时器可以构成20位的定时器。
()
9.TMS320C54X系列DSP的汇编语言中分支转移指令执行需要4个机器周期。
()
10.DSP处理器TMS320VC5402的中断向量表位置是固定的。
()
三.程序阅读题(本题总分30分,每小题10分)
1.阅读下面的程序片断,写出运行结果
.mmregs
DAT0.SET60H
LD#004h,DP
ST#0345h,DAT0
STM#0002h,T
MPYDAT0,A
NOP
问题:
(1)寄存器T的作用是什么?
(2)执行“MPYDAT0,A”后,累加器A的内容是什么?
2.阅读程序,回答后面的问题
STM#6,AR4
begin:
STM#9,BRC
RPTBnext-1
nop
next:
LD#0,B
banzbegin,*AR4-
问题:
(1)BRC寄存器是做什么用途?
(2)语句“banzbegin,*AR4-”的作用是什么?
(3)其中的“nop”语句被执行了多少次?
3.MEMORY
{PAGE0:
PROM:
org=0E000h,len=100h
VECS:
org=0FF80h,len=04h
PAGE1:
SPRAM:
org=0060h,len=20h
DARAM:
org=0080h,len=100h
}
SECTIONS
{.text :
>EPROMPAGE0
.data :
>EPROMPAGE0
.bss :
>SPRAMPAGE1
STACK :
>DARAMPAGE1
vectors :
>VECS PAGE0
}
问题:
(1)该文件是如何配置程序空间和数据空间的?
(2)该文件中出现了几个段?
哪些是初始化段?
哪些是未初始化段?
各段是如何分配的?
四.简答题(本题总分48分,每小题8分)
1.TMS320C54X指令系统的寻址方式各有哪些?
各寻址方式举一例说明。
2.一个典型的DSP系统通常由哪些部分组成?
画出框图.
3.简述链接命令文件(.cmd文件)的功能。
4.已知DSP的工作时钟为20MHZ,现需要用定时器定时10ms,请问PRD和TDDR寄存器的初始值如何确定?
5.简述PMST寄存器中IPTR的作用。
6.如何实现DSP由一种工作频率切换到另外一种工作频率?
答案3
一.填空题(本题总分12分,每空1分)
1.哈佛
2.16K字
3.硬件、软件
4.答:
20根
5.答:
锁相环PLL
6.答:
16位
7.答:
无延迟分支转移,延迟分支转移
8.答:
为变量保留存储空间
9.答:
2个,BIO和XF
二.判断题(本题总分10分,每小题1分,正确打“√”,错误打“×”)
1.√2.×3.×4.√5.×6.√7.×8.√9.√10.×
三.程序阅读题(本题总分30分,每小题10分)
1.答:
寄存器T的作用是暂存被乘数,累加器A的内容为0x68A或68Ah
2.答:
BRC保存着RPTB指令的循环次数
判断AR4的内容是否为零,若不为零,跳转到标号begin。
70次
3.答:
该文件使用MEMORY伪指令将程序空间划分为两个小区间:
名为PROM的区间其起始地址为0E000h,长度为100h字;名为VECS的区间其起始地址为0FF80h,长度为4字。
将数据空间也分为了两个小区间:
名为SPRAM的区间其起始地址为0060h,长度为20h字;名为DARAM的区间其起始地址为0080h,长度为100h字。
(2)出现了5个段,.text,.data和vectors是初始化段,.bss和STACK段是未初始化段。
.text和.data分配到程序空间的EPROM区间;.bss分配到数据空间SPRAM区间;STACK段分配到数据空间的DARAM区间;vectors段分配到程序空间的VECS区间
四.简答题(本题总分48分,每小题8分)
1.答:
寻址方式
用途
举例
指令含义
立即寻址
主要用于初始化
LD#10,A
立即数10->A
绝对寻址
利用16位地址寻址存储单元
STLA,*(y)
将AL内容存入y所在的存储单元
累加器寻址
将累加器中的内容作为地址
READAx
将A的内容作为地址读程序存储器,并存入x存