收藏 分享(赏)

DSP复习题及答案.doc

上传人:eukav 文档编号:5888482 上传时间:2019-03-20 格式:DOC 页数:12 大小:97KB
下载 相关 举报
DSP复习题及答案.doc_第1页
第1页 / 共12页
DSP复习题及答案.doc_第2页
第2页 / 共12页
DSP复习题及答案.doc_第3页
第3页 / 共12页
DSP复习题及答案.doc_第4页
第4页 / 共12页
DSP复习题及答案.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、DSP 原理及应用复习题题型为以下七种:1、 填空题(每空 1 分,共 10 分)2、 单项选择题(每题 2 分,共 10 分)3、 判断题(每题 2 分,共 10 分)4、 简答题(每题 4 分,共 20 分)5、 程序阅读题(每题 4 分,共 20 分)6、 编程题(8 分)7、 作图题(10 分)8、 程序设计题(12 分)一、填空题1. 在 DSP 处理器中,数据地址的产生是由(数据地址发生器)来完成的。2. TMS320C54x 的累加器分别称为(累加器 A)和(累加器 B) ,它们的数据宽度是(40)位。3. TMS320C54x 的 DSP 采用先进的(哈佛) 结构,其独立的(程

2、序)总线和(数据)总线允许同时读取(指令)和(操作数) ,实现高度的并行操作。4. TMS320C54x 的通用 I/O 引脚有(跳转控制输入引脚 )和(外部标志输出引脚 XF) 。BIO5. 指令 MPY 0Dh, A 中乘数和被乘数分别在( 累加器 B 高 16 位 )和(累加器 A)中。6. TMS320C54x 有(3)个状态和控制寄存器。7. 在 DSP 处理器中,配有两个地址生成器,包括(数据地址发生器)和(程序地址发生器) 。 8. TMS320C54x 使用一个 40 位的(ALU)和两个 40 位的(累加器 ACCA 和 ACCB)来完成算数算术运算和逻辑运算。9. TMS3

3、20C54x 存储器由 3 个独立的可选择空间组成:( 程序空间) 、 (数据空间)和(I/O 空间 ) 。10. TMS320C54x 的指令系统包含(助记符指令)和(代数指令) 两种形式。 11. 编译器对于符号地址和变量的处理都是相对于本段的开始。连接器为每个段选择了合适的起始地址,就必须相应地修改这些符号地址和变量,同时修改所有对这些地址和变量的引用,这个过程称为(重定位) 。12. TMS320C54x 的总线由(1)组程序总线、 (3)组数据总线和( 4)组地址总线组成,可在一个指令周期内产生两个数据存储地址,实现流水线并行数据处理。一、单项选择题1. 1TMS320C54x 中累

4、加器分为三个部分,低位字,高位字和保护位,其中高位字是指( B )A. 150 位 B. 3116 位 C. 39 32 位 D. 3923 位2. 2TMS320C54x 中,暂存器 T 的数据宽度是( C )A. 40 位 B. 32 位 C. 16 位 D. 8 位3. 3TMS320C54x 的立即数寻址中,位数最长的短立即数的长度是( B )A. 16 位 B. 9 位 C. 8 位 D. 5 位4. TMS320C54x 汇编语言中,用于自定义段的是( A )A. .sect B. .bss C. .text D. .data5. 下列 TMS320C54x 的中断,不是可屏蔽中断

5、的是( D )A. RINT0 B. HPIINT C. DMAC4 D. reset6. 1TMS320C54x 中累加器分为三个部分,低位字,高位字和保护位,其中保护位字是指( C )A. 150 位 B. 3116 位 C. 39 32 位 D. 3923 位7. TMS320C54x 中,ALU 的数据宽度是( A )A. 40 位 B. 32 位 C. 16 位 D. 8 位8. TMS320C54x 的立即数寻址中,长立即数寻址的长度是( A )A. 16 位 B. 9 位 C. 8 位 D. 5 位9. 4TMS320C54x 汇编语言中,用于定义未初始化段的是( B )A. .

6、sect B. .bss C. .text D. .data10. 5下列哪个浮点数表示的是无效的数( C )A .99e9 B 9.9e9 C 99e9 D 99.e9三、判断题1TMS320C54x 汇编语言中,符号常量可以用.set 定义,不占用存储器。 ( X )2TMS320C54x 的中断处理分为 3 个阶段:一是请求中断,二是响应中断,三是执行中断服务程序。 ( )3TMS320C54x 在执行中断之前,要完成所有流水线中的指令。所以,最大的中断延时取决于进入流水线的指令。 ( )4TMS320C54x 在执行中断服务程序(ISR)时,在进入中断服务程序后, CPU 将首先把程序

7、计数器(PC)的值,也即返回地址,压入堆栈,然后把中断矢量的地址装入 PC。 ( )5TMS320C54x 有三个状态和控制寄存器,分别是:状态寄存器 ST0,状态寄存器 ST1,以及处理器方式状态寄存器 PMST。 ( )6如果在程序中未用任何段伪指令,则汇编器将把所有的程序块或数据块统一汇编至.text段中。 ( )7MEMORY 命令是告诉连接器如何将输入段组合成输出段。 ( )8TMS320C54x 在执行中断之前,要完成所有流水线中的指令。所以,最大的中断延时取决于进入流水线的指令。 ( )9局部标号可以用伪指令来定义。 ( )10TMS320C54x 只有两个状态和控制寄存器,分别

8、是:状态寄存器 ST0,状态寄存器ST1。 ( )四、简答题1简述哈佛结构的基本特征,并画出示意图。P3哈佛结构结构采用双存储空间,程序存储器和数据存储器分开,取指和读数可以同时进行,扩展了存储器带宽,增加了系统的吞吐量。2简述 TMS320C54x DSP 的 ALU 的可能的输入数据来源。 P44第一种答案:ALU 的 X 输入端的数据:移位器的输入 来自数据总线 DB 的数据存储器操作数ALU 的 Y 输入端的数据:累加器 A 中的数据 累加器 B 中的数据 来自数据总线 CB 的数据存储器操作数 T 寄存器中的数据第二种答案:可以使用的输入形式包括:16 位的立即数,从数据存储器读出的

9、 16 位字,暂存器 T 中的 16 位字,从数据存储器中读出的 2 个 16 位字,从数据存储器读出的 1 个 32 位字,从其中一个累加器输出的 40 位值3简述辅助寄存器(AR0AR7)的主要功能。辅助寄存器(AR0AR7)属于数据地址生成逻辑单元,产生 16 位数据空间,通用 R,为各种寻址服务。4简述 TMS320C54x 中硬件定时器的功能。TMS320C54x 有一个带有 4 位预定标器的 16 位定时电路。这个定时计数器每个时钟周期减 1,减至 0 时就产生一个定时中断。可以通过设置特定的状态位,来使定时器停止、恢复运行、复位或禁止。5列举四种绝对地址寻址。P142数据存储器地

10、址(dmad)寻址 程序存储器地址(pmad)寻址端口地址(PA)寻址 *(lk)寻址6简述 TMS320C54x DSP 的总线组成和功能。 P31C54x 的内部有 8 组 16 位总线:4 条程序/数据总线和 4 条地址总线。这些总线功能:(1) 1 组程序总线 PB 主要用来传送取自程序存储器的指令代码和立即操作数。(2) 3 组数据总线 CB、DB、EBCB 和 DB 用来传送从数据存储器读出的数据;EB 用来传送写入存储器的数据。(3) 4 组地址总线 PAB、CAB、DAB、EAB 用来提供执行指令所需的地址。7简述 TMS320C54x DSP 的乘法器的输入数据来源。 P51

11、输入端 XM 数据来自:T 寄存器累加器 A 的位 32-16DB 总线传送过来的数据存储器操作数输入端 YM 的数据来自:累加器 A 的位 32-16由 DB 总线和 CB 总线传送过来的数据存储器操作数由 PB 总线传送过来的程序存储器操作数9简述 TMS320C54x 指令系统的特点。10列举出 TMS320C54x 的 7 种基本的数据寻址方式。P141立即寻址、绝对寻址、累加器寻址 、直接寻址、间接寻址、存储器映像寄存器寻址、堆栈寻址五、程序阅读题1请说明下面语句执行后,A ,T,FRCT 、AR5、数据存储器中 0100h 的数据。MAC *AR5, A指令执行前 执行后A 00

12、0000 1000 00 0048 E000T 0400 0400FRCT 0 0AR5 0100 0100数据存储器0100h 1234 1234 2阅读下面的程序段,说明每一条语句的功能,以及整个程序段的功能。.bss x, 8 为数组 x 分配 8 个存储单元STM #x, AR1 将目的地首地址赋给 AR1RPTZ A, #7 执行一次下一条指令在循环执行 7 次并对 ACC 清 0STL A, *AR1+ 把累加器的低端存放到数据存储器中整个程序段的功能是对数组进行初始化,使 x8=0,0,0,0,0,0,0,03阅读下面的程序段,利用长字指令来完成下面程序段的功能,并说明整个程序段

13、完成什么功能。P241LD xhi,16,A ADDS xlo,AADD yhi,16,AADDS ylo,ASTH A,zhiSTL A,zlo答案:DLD xhi,ADADD yhi,ADST A,zhi整个程序段完成: Z(32)=X(32)+Y (32)4. 阅读下面的程序段,说明每一条语句的功能。STM #88H, AR0 ;将操作数 88H 装入 AR0LD #1000H,A ;将操作数 1000H 装入 ACCzhong: SUB AR0,A ;ACC 中的值减去 AR0 中的值,结果存入 ABC zhong,AGT,AOV;若累加器 A0 且溢出,则转至 zhong,否则往下执

14、行5. 阅读下面的程序段,说明每一条语句的功能。STM #123H,AR0 ;将操作数 123H 装入入 AR0LD #456H,AR1 ;将操作数 456H 装入 ACCCALL new ; 调子程序 newLD AR1,16,A ;将 AR1 的内容左移 16 位后装入 Anew:MPY AR0,AR1 ,A ;AR0 与 AR1 的内容相乘,结果存入 A 中RET ;子程序返回6请说明下面语句执行后,A ,C,AR1、SXM、数据存储器中 0100h 的数据。SUB *AR1+, 14, A指令执行前 指令执行后A 00 0000 1200 FF FAC0 1200C X 0AR1 01

15、00 0101SXM 1 1数据存储器0100h 1500 15007阅读下面的程序段,说明每一条语句的功能,以及整个程序段的功能。rsbx FRCT ;清楚 FRCT 标志,表明以下是做整数乘法。ld temp1, T ;将变量 temp1 装入 T 寄存器。mpy temp2, a ;完成 temp1*temp2,结果放入累加器 A。sth a, temp3 ;结果的高 16 位存入 temp3stl a, temp4 ;结果的低 16 位存入 temp4.整个程序段的功能是计算 temp1temp2,32 位的结果分别存入 temp3 和 temp4.8阅读下面的程序段,说明语句 1、2

16、 和 3 的功能,以及整个程序段的功能。.mmregs.global start.datadst .space 18*16len .word 18.textsrc .string “this is the source“.startstm #dst, ar1 ; 语句 1 将 dst 的地址存入 ar1stm #len, ar2rpt *(ar2) ; 语句 2 循环执行*(ar2) 次指令 mvpd src, *ar1+mvpd src, *ar1+b $ ; 语句 3 原地执行 .end整个程序的功能是将源数据存储区(src) 的字符串复制到目的的数据存储区(dst).9. 阅读下面的程序

17、段,说明每一条语句的功能,以及整个程序段的功能。SUM3: LD x1,T ; T=x1MPY a1, B ; B=x1a1LD x2, T ; T=x2MAC a2, B ; B=x2a2STL B,y ;计算结果的低字 BL 存入 y 中STH B, y+1 ;计算结果的高字 BH 存入 y+1 中整个程序段的功能是计算 y=x1a1+x2a210. 请说明下面语句执行后,累加器 A,寄存器 T,FRCT、DP、数据存储器中 040Dh 的数据。MPY 0Dh, A指令执行前 指令执行后A 00 0000 A039T 50 50FRCT 1 1DP 008 008数据存储器040Dh 40

18、00 4000六、编程题1、求 4 项乘积 aixi(i=1,2,3,4)中的最大值,并存放累加器 A 中。P224.mmregsSTACK .usect “STACK “,10h.bss a,4.bss x,4.bss y,1.def start.datatable: .word 1,2,3,4.word 8,6,4,2.textstart: STM #0,SWWSRSTM #STACK+10h,SPSTM #a,AR1RPT #7MVPD table,*AR1+CALL SUMend: B endSUM: STM #a,AR3STM #x,AR4RPTZ A,#3MAC *AR3+,*AR

19、4+,ASTL A,yRET.end2、编制求解 的程序。 P235iixay251.mmregsSTACK .usect “STACK “,30h.bss a,25.bss x,25.bss y,2.def start.datatable: .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.textstart: SSBX FRCTS

20、TM #a,AR1RPT #49MVPD table,*AR1+LD #0,BSTM #a,AR2STM #x,AR3RPTZ A,#24MAC *AR2+,*AR3+,ASTL A,ySTH A,y+1.end七、作图题1、扩展程序存储器 p1232、 C54x 与 A/D 转换器的接口 p1263、 C54x 与 D/A 转换器的接口 八、程序设计题对 , p273 例子)(inxbyi70)(1、利用线性缓冲区法和循环缓冲区法设计一个 FIR 滤波器,其中滤波系数为b0=0.1, b1=0.2,b 2=-0.4,b 3=0.3,b 4=-0.4, b5=0.2,b 6=0.1;(8 分)

21、线性缓冲区法:.title “FIR1.Asm.mmregs.def startx “x”,7PA0 .set 0PA1 .set 1.dataCOEF: .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.textStart: SSBX FRCT STM #x+7,AR2STM #6,AR0 LD #x+1

22、,DPPORTR PA1,x+1 FIR: RPTZ A,#6MACD *AR2-,COEF,ASTH 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 0PA1 .set 1.datatable: .word 1*32768/10 ;b0=0.1.word 2*32768/10 ;b1=0.2.word 3*327

23、68/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.textstart: SSBX FRCTSTM #b0,AR1RPT #6MVKD table,*AR1+STM #xn+6,AR2STM #b0+6,AR3 ;AR3 指向系数 a6STM #7,BK ;缓冲区长度为 7STM #-1,AR0 ;AR0 = -1LD #xn,DPPORTR PA1, xn ; 从端口 PA1 读入采样值FIR: RPTZ A, #6MAC *

24、AR2+0%,*AR3+0%STH A,yPORTW y,PA0BD FIR2 PORTR PA1,*AR2+0% .END 2、编写连接命令文件 FIR.CMD。(4 分)程序存储器:4K 字 ROM,起始地址为 C00h,取名为 EPROM。数据存储器:32 字 RAM,起始地址为 60h,取名为 SPRAM。4992 字 RAM,起始地址为 80h,取名为 DARAMMEMORY PAGE 0: EPROM: origin = c00H, length = 1000HPAGE 1: SPRAM : origin = 60H,length = 20HDARAM: origin = 80H, length = 1380HSECTIONS .text: EPROM PAGE 0.data: EPROM PAGE 0.bss: SPRAM PAGE 1STACK: DARAM PAGE 1

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 试题课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报