贵州大学DSP试题及答案(2012级A卷)

更新时间:2023-03-15 03:19:02 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

贵州大学2012-2013学年第一学期考试试卷 A

DSP原理及应用试卷

(2011电子信息科学与技术)

注意事项:

1. 请考生按要求在试卷装订线内填写姓名、学号和年级专业。 2. 请仔细阅读各种题目的回答要求,在规定的位置填写答案。 3. 不要在试卷上乱写乱画,不要在装订线内填写无关的内容。 4. 满分100分,考试时间为120分钟。 题 号 得 分 得 分 评分人 一 二 三 四 五 六 七 总 分 统分人 一、选择题(本大题共 20分,每小题 2 分)下列各题的

选项中,只有一项是正确的,请将正确选项的编号填在括号

内。错填、不填均无分。

1. C54x系列DSP芯片由于其内部CPU采用了( B ),因此具有比传统处理器更快的指令执行速度。

(A) 冯.诺依曼结构和流水线操作 (B) 哈佛结构、流水线技术和多总线结构 (C) 并行操作和多总线结构 (D) 高时钟频率

2. OVM是状态寄存器ST1中的溢出方式控制位,当OVM=1时,则对ALU的运行结果进行调整,若数据发生正向溢出时,则ALU将采用下列( C )方式进行处理。

(A)将32位最小负数FF80000000装入累加器 (B) 由低32位向高8位进位

(C)将32位最大正数007FFFFFFF装入累加器 (D) 保持不变

3. 当C54X执行一个双数据读操作指令时,将会使用到下列的哪一组总线( D )。

(A)PB、CB、PAB、CAB (B)DB、EB、DAB、EAB

第 1 页 共 7 页

(C)CB、EB、CAB、EAB (D)CB、DB、CAB、DAB 4. 40位累加器A中的定点数为FF FFFF FFCBH,T=0000H,执行EXP A指令后,则T寄存器的值变为( A )。

(A) 0019H (B) FFFFH (C) 0025H (D) 保持不变

5.在C54X系列的DSP汇编语言程序中,定义一个小数如0.907,应当写成:( B )

(A) 0.907 (B) 32768*0.907 (C) 907/1000 (D) 32768*907/1000

6. 程序空间的配置可通过PMST的MP/MC和OVLY控制位来设置,对C5402如要将其0000H~3FFFH空间定义为内部DARAM,可按如下哪一种方式配置( A )。

(A) OVLY=1 (B) MP/MC=1 (C) OVLY=0 (D) MP/MC=0

7. 直接寻址指令中的低7位是一个数据页的偏移地址dmad,而所在的数据页由数据页指针DP或SP的值决定。如果用DP方式产生直接地址,并取DP=2和dmad=10H,则该直接地址为:( A )

(A) 0110H (B) 0210H (C) 0012H (D) 0201H

8. 有一条DSP汇编指令,其语法格式为:MAC Smen ,src ,该指令所完成的操作对应的表达式为:( D )

(A) src=src+Smen*src (B) src=src+T*src (C) src=T+src*Smen (D) src=src+T*Smen

9. 当某个可屏蔽中断被DSP响应后,中断系统将自动完成( D )操作。 (A) 清除IMR中的相应位,INTM置1 (B) 清除IFR中的相应位,INTM置0 (C) 清除IMR中的相应位,INTM置0

第 2 页 共 7 页

(D) 清除IFR中的相应位,INTM置1

10. C54X系列芯片中,在同一个周期内,CPU可以同时进行读和写操作的存储器是:( B )

(A) SARAM (B) 片内ROM

(C) DARAM (D) 存储器映射寄存器MMR

得 分 评分人

二、简答题(每小题6分,共12分)

1. 循环循址是实现循环缓冲区的关键,简要说明循环缓冲区中循环循址算法的

基本工作原理。

1、循环缓冲区的有效基地址(EFB)就是用户选定的辅助寄存器(ARx)的低N位置0后所

刚的值。循环缓冲区的尾基地址(EOB)是通过用BK的低N位代替ARx的低N位得到。循环缓冲区的index就是ARx的低N位,步长(step)就是加到辅助寄存器或从辅助寄存器中减去的值。 (3分)

循环寻址算法为: 0≤index+step

Else讧index+step≥BK; (3分) Index=index+step—BK

Else index+step<0; Index=index+step+BK

上述循环寻址算法,实际上是以BK寄存器中的值为模的取模运算。 2.

试分析小数乘法产生冗余符号位的原因,并说明如何解决冗余符号位问题。

出错原因:两带符号数相乘,其结果带有2个符号位。

S x x x (Q3格式) × S y y y (Q3格式)

S S z z z z z z (Q6格式) (3分)

解决办法:运算结果左移一位,消去多余符号位。可通过对FRCT位置1,乘法器自动将乘积结果左移一位。 (3分) 得 分 评分人 三、分析题(每小题6分,共12分)阅读下列程序,写出

程序的总体功能和运行结果。假定x1、x2、x3、x4、y、a、x、

y等变量单元已按顺序定义。

第 3 页 共 7 页

1、STACK .usect “STACK”,10H 2、 STACK .usect “STACK”,10H

Table: .word 3,5,4,5 .data

.text table: .word a1,a2,a3,a4 start: STM #0,SWWSR .word x1,x2,x3,x4 STM #STACK+10H,SP .text STM #x1,AR1 start: STM #0,SWWSR RPT #3 STM #STACK+10H,SP MVPD table,*AR1+ STM #a,AR1 CALL MODE RPT #7

End: B end MVPD table,*AR1+ MODE: LD @x1,T CALL MODE MPY @x3,B End: B end LD @x2,T MODE: STM #a,AR1 MAC @x4,B STM #x,AR2 STL B,@y STM #2,AR3 STH B,@y+1 LD *AR1+,T

RET MPY *AR2+,A .end loop: LD *AR1+,T MPY *AR2+,B MAX A

BANZ loop,*AR3- STL A,@y RET .end

1、y=x1*x3+x2*x4 2、求ai*xi(i=1,2,3,4)中的最大值

(6分) (6分)

得 分 分人 四、应用题(本大题共14分)假设目标存储器的配置为,程

序空间:EPROM E000H~FFFFH(片外),数据空间:SPRAM 0060H~

007FH(片内),DARAM 0080H~017FH(片内),试编写连接器命令文件,将example.obj和vectors.obj中的.text、.data、.bss、STACK、.vectors段映射到对应的存储器空间。

ectors.obj

example.obj

第 4 页 共 7 页

-o example.out (4分) -m example.map -e start MEMORY {

PAGE0:

EPROM: org=0E000h, len=100h VECS: org=0FF80h, len=04h PAGE1:

SPRAM: org=0060h, len=20h DARAM: org=0080h, len=100h

} (5分) SECTIONS {

.text :>EPROM PAGE0 .data :>EPROM PAGE0 .bss :>SPROM PAGE1 STACK:>DARAM PAGE1 .vectors :>VECS PAGE0

} 得 分 评分人 五、编程题(本大题共14分)

六、试编写|被除数|≥|除数|,且商为整数的除法运算程序,

完成12384÷512的运算。程序内容包括符号的处理。

.bss num, 1 .bss den, 1 .bss quot, 1 .data

table: .word 12384

.word 512 (4分) .text

start: STM #num, AR1

RPT #1

MVPD table , *AR1+ LD @den, 16, A

MPYA @num (5分) ABS A

STH A, @den LD @num, A ABS A RPT #15

第 5 页 共 7 页

本文来源:https://www.bwwdw.com/article/6fc5.html

Top