DSP期末考试试卷.doc

上传人:土8路 文档编号:10282309 上传时间:2021-05-05 格式:DOC 页数:12 大小:119KB
返回 下载 相关 举报
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页
点击查看更多>>
资源描述

《DSP期末考试试卷.doc》由会员分享,可在线阅读,更多相关《DSP期末考试试卷.doc(12页珍藏版)》请在三一文库上搜索。

1、第一套一、 填空题(共30分,每空1分)1DSP的狭义理解为 数字信号处理器 ,广义理解为 数字信号处理方法 。2在直接寻址中,指令代码包含了数据存储器地址的低 7 位。当ST1中直接寻址编辑方式位CPL =0 时,与DP相结合形成16位数据存储器地址;当ST1中直接寻址编辑方式位CPL =1 时,加上SP基地址形成数据存储器地址。3TMS320C54有两个通用引脚,BIO和XF, BIO 输入引脚可用于监视外部接口器件的状态; XF 输出引脚可以用于与外部接口器件的握手信号。3932保护位3116高阶位150低阶位4累加器又叫做 目的寄存器 ,它的作用是存放从ALU或乘法器/加法器单元 输出

2、的数据。它的存放格式为5桶形移位器的移位数有三中表达方式: 立即数 ; ASM ; T低6位 6DSP可以处理双16位或双精度算术运算,当 C16=0 位双精度运算方式,当 C16=1 为双16位运算方式。7复位电路有三种方式,分别是 上电复位 ; 手动复位 ; 软件复位 。8立即数寻址指令中在数字或符号常数前面加一个 # 号,来表示立即数。9位倒序寻址方式中,AR0中存放的是 FFT点数的一半 。10一般,COFF目标文件中包含三个缺省的段: text 段; data 段和 bss 段。11汇编源程序中标号可选,若使用标号,则标号必须从 第一列 开始;程序中可以有注释,注释在第一列开始时前面

3、需标上 星号或分号 ,但在其它列开始的注释前面只能标 分号 。12C5402有23条外部程序地址线,其程序空间可扩展到 1M ,内程序区在 第0页 。13指令执行前有关寄存器及数据存储器单元情况如下图所示,请在下图分别填写指令执行后有关寄存器及数据存储器单元的内容。 ADD *AR3+,14,AA 00 0000 1200A 00 0000 2700 C 1C 1AR3 0101 AR3 01000100h 15000100h 1500数据存储器 二、 简答(共40分)1 TMS320C54x有多少条16位总线?这些总线各有什么作用?(6分)答:C54x共有4组8条16位总线 1条程序总线(P

4、B):传送取自程序存储器的指令代码和立即操作数。 3条数据总线(CB、DB、EB):CB和EB传送从数据存储器读出的操作数;EB传送写到存储器中的数据。 4条地址总线(PAB、CAB、DAB、EAB)传送相应指令所学要的代码。2 TMS320C54x片内存储器一般包括哪些种类?如何控制存储器片内或片外的分配?(6分)答:TMS320C54x的片内存储空间分为3个可选择的存储空间:64K的程序空间,64K的数据空间和64K的I/O空间,所有TMS320C54x芯片都包括RAM、SARAM、DARAM。 程序空间:MP/MC=1 4000HFFFFH 片外 MP/MC=0 4000HEFFFH 片

5、外 FF00HFFFFH 片内 OVLY=1 0000H007FH 保留 0080H007FH 片内 OVLY=0 0000H3FFFH 片外 数据空间:DROM=1 F000HFEFFH 只读空间 FF00HFFFH 保留 DROM=0 F000HFEFFH 片外3 当TMS320C54x CPU接收到可屏蔽的硬件中断时,满足哪些条件中断才能被响应?(6分)答:(1)出现多个中断时,此中断的优先级最高(2)INTM=0 允许全局中断 (3)IMR中的响应相应位为1,开放此中断。4 循环寻址中,如何确定循环缓冲的起始地址?如果循环缓冲大小为17,其起始地址必须从什么地址开始?BK初始化为多少?

6、(4分)5 TMS320C54x硬件复位地址为多少?如何确定中断向量地址?计算INT0(IPTR=001H)的中断向量地址。(6分)答:复位后,复位向量地址为:0080H 确定地址方式:IPTR+左移2位后的中断向量序列号 10H左移2位后成为40H,IPTR=001H,则中断向量地址为00C0H6 若辅助寄存器AR0的值为0x0005H,AR3的值为0x030FH,请分别给出下列寻址方式修改后的辅助寄存器的值。(6分)*AR3+ ; AR3=0310H*AR3+0 ; AR3=0314H*AR3(15) ; AR3=0324H7 分别解释以下指令的功能。(6分)LD #80h, A; 把立即

7、数80H装入累加器ALD 80h, A; 把80H为地址的数据装如累加器ALD #80h,16, A; 把立即数80H左移16位后装如累加器A三、 程序填空(共22分,每空2分)1实现计算z=x+y-w的程序。 title example1.asm mmregsSTACK usect STACK, 10h bss x,1 bss y, bss w,1 bss z,1 def start datatable: word 10,26,23 textstart: STM #0,SWWSR STM #STACK+10h,SP ;初始化堆栈指针SP STM #x,AR1 RPT #2 MVPD tabl

8、e,*AR1+ ;数据从程序存储器传送到数据存储器 CALL SUMBend: B endSUMB: LD x, A ADD y, A SUB w,A ;实现减法运算 STL A, z RET end2实现对数组X5=1,2,3,4,5的初始化,然后将数据存储器中的数组X5复制到数组Y5。最后实现数组X和数组Y中对应元素相乘并累加,即z=1*1+2*2+3*3+4*4+5*5 mmregs bss x, 5 bss y, 5 bss z, def starttable: word 1,2,3,4,5 text start: STM #x, AR1 RPT 4 MVPD table,*AR1+

9、;从程序存储器传送到数据存储器数组X5 STM # x, AR2STM # y, AR3 RPT 4 MVDD *AR1,*AR3 ;从数据存储器数组X5传送到Y5 SSBX FRCT ;准备整数乘法 STM # x, AR2 STM # y, AR3STM # z, AR4RPTZ 4 MAC *AR2+,*AR3+,A STL A,*AR4 End: B end end四、分析程序回答问题(共8分) def _c_int00 mmregsstack: usect stack,10h bss a,4 bss x,4 bss y,1 datatable: word 1,2,4,3 word 8

10、,6,4,2 text_c_int00: STM #stack+10h,sp STM #a,AR1 RPT #7 MVPD table,*AR1+ CALL sumend: B endsum: STM #a,AR3 STM #x,AR4 RPTZ A,#3 MAC *AR3+,*AR4+,A STL A,y ret end (1) 说明该程序的功能:(4分)答:a1*x1=a2*x2+a3*x3+a4*x4(2) 说明以下各量的理论值(4分)A: 2A a1的地址:81H 内容:1 AR1: 88H AR3: 84H第二套1. TI公司的定点DSP产品主要有 TMS320C2000 系列、TM

11、S320C5000系列和 TMS320C6000 系列。2. C54x DSP中传送执行指令所需的地址需要用到 PAB 、CAB、DAB和 EAB 4条地址总线。3. DSP的内部存储器类型可分为随机存取存储器(RAM)和只读存储器(ROM)。其中RAM又可以分为两种类型:单寻址RAM(SARAM)和双寻址RAM(DARAM)。4. C54x DSP的内部总存储空间为192K字,分成3个可选择的存储空间:64K字的程序存储空间 、64K字的数据存储空间和64K字的 I/O空间 。5. 从功能结构上,C54X DSP的CPU可以划分成 运算部件 和 控制部件 两大部分。6. C54x DSP的寻

12、址方式有七种,分别为立即寻址、绝对寻址、累加器寻址、直接寻址、 间接寻址 、存储器映象寄存器寻址、堆栈寻址。7. 在C54x DSP寻址和指令系统中,Xmem和Ymem表示 16位双寻址操作数 ,Dmad为16位立即数,表示 数据存储器地址 ,Pmad为16位立即数,表示 程序存储器地址 。8. 程序计数器的值可以通过 复位操作 、 顺序执行指令 、 分支转移 ,累加器转移,块重复,子程序调用,从累加器调用子程序,中断等操作改变。9. C54x DSP芯片采用了6级流水线的工作方式,即一条指令分为 预取指 、取指、译码、 寻址 、读数和执行6个阶段。10. 解决MMR写操作的流水线冲突时,一般

13、可用采用推荐指令和 插入空操作指令 的方法。11. C54x DSP定时器由3个16位存储器映射寄存器组成:定时器寄存器(TIM)、 定时器周期寄存器(PRD)和 定时器控制寄存器(TCR) 。12. 主机接口(HPI,Host Port Interface) 是TMS320C54x 系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。13. C54x DSP的指令系统有 助记符指令 和 代数指令 两种形式。14. COFF目标文件中.text段通常包含 可执行代码 ,.data段通常包含己初始化的数据,.bss段中通常为 未初始化的数据 保留空间。15. DSP芯片

14、的开发工具可以分为 代码生成工具 和 代码调试工具 两类。1BANZ 2000h, *AR3-2CMPR GT, AR33ADD *AR3+, 14, A4SUB A, -8, B5MPY *AR3+, A五、程序题(15分)写出计算的主要汇编程序,并给程序添加注释,画出程序的流程图。解:程序及注释:.bss x, 20;给变量x分配20个字单元.bss y, 1;给变量y分配1个字单元STM #x, AR1;取x地址STM #19, AR2;设置循环次数LD #0, A;累加器清零loop: ADD *AR1+, A;累加x分量 BANZ loop, *AR2-;循环是否结束,没有结束则继续

15、累加 STL A, y;把结果存入y流程图:第三套1、 用C55x汇编语言实现计算 的程序。(10分)答:mpym *AR0+, *AR1+, AC0mpym *AR0+, *AR1+, AC1add AC1, AC0mpym *AR0+, *AR1+, AC1add AC1, AC0mpym *AR0+, *AR1+, AC1add AC1, AC0或者:mpym *AR0+, *AR1+, AC0 |rpt #2 macm *AR0+, *AR1+, AC02、 用C55x汇编语言实现计算 的程序。(10分)答:mpym *AR0+, *AR1+, AC3 masm *AR0+, *AR1

16、+, AC33、 以8点的FFT为例,用C55x的汇编语言实现FFT的算法,并且解释该算法的实现方法。(20分)答: .sect fft_code _fft: aadd #(ARGS-Size+1),SP ; Adjust stack for local vars mov mmap(ST1_55),AR2 ; Save ST1,ST3 mov mmap(ST3_55),AR3 mov AR2,fft.d_ST1 mov AR3,fft.d_ST3 btst #0,T1,TC1 ; Check SCALE flag set mov #0x6340,mmap(ST1_55) ; Set CPL,X

17、F,SATD,SXAM,FRCT (SCALE=1) mov #0x1f22,mmap(ST3_55) ; Set: HINT,SATA,SMUL xcc do_scale,TC1 mov #0x6300,mmap(ST1_55) ; Set CPL,XF,SATD,SXAM (SCALE=2) do_scale mov T2,fft.d_T2 ; Save T2 | mov #1,AC0 mov AC0,fft.d_L ; Initialize L=1| sfts AC0,T0 ; T0=EXP mov AC0,fft.d_N ; N=1EXP mov XAR1,XCDP ; CDP = p

18、ointer to U mov XSP,XAR4 add #fft.d_temp,AR4 ; AR4 = pointer to temp mov XAR0,XAR1 ; AR1 points to sample buffer mov T0,T1 mov XAR0,XAR5 ; Copy externd bits to XAR5outer_loop ; for (L=1; L=EXP; L+) mov fft.d_L,T0 ; note: Since the buffer is| mov #2,AC0 ; arranged in re,im pairs sfts AC0,T0 ; the ind

19、ex to the buffer neg T0 ; is doubled| mov fft.d_N,AC1 ; But the repeat coutners sftl AC1,T0 ; are not doubled mov AC0,T0 ; LE=21 | sfts AC0,#-1 sub #1,AC0 ; Init mid_loop counter mov mmap(AC0L),BRC0 ; BRC0=LE1-1 sub #1,AC1 ; Init inner loop counter mov mmap(AC1L),BRC1 ; BRC1=(NL)-1 add AR1,AR0 mov #

20、0,T2 ; j=0 | rptblocal mid_loop-1 ; for (j=0; jLE1;j+) mov T2,AR5 ; AR5=id=i+LE1 mov T2,AR3 add AR0,AR5 ; AR5 = pointer to Xid.re add #1,AR5,AR2 ; AR2 = pointer to Xid.im add AR1,AR3 ; AR3 = pointer to Xi.re | rptblocal inner_loop-1 ; for(i=j; i#1,dual(*AR3) ; Scale Xi by 1/SCALE mov dbl(*AR3),AC2 s

21、cale add T0,AR2| sub dual(*AR4),AC2,AC1 ; Xid.re=Xi.re/SCALE-temp.re mov AC1,dbl(*(AR5+T0) ; Xid.im=Xi.im/SCALE-temp.im| add dual(*AR4),AC2 ; Xi.re=Xi.re/SCALE+temp.re mov AC2,dbl(*(AR3+T0) ; Xi.im=Xi.im/SCALE+temp.iminner_loop ; End of inner loop amar *CDP+ amar *CDP+ ; Update k for pointer to Uk|

22、add #2,T2 ; Update j mid_loop ; End of mid-loop sub #1,T1 add #1,fft.d_L ; Update L bcc outer_loop,T10 ; End of outer-loop mov fft.d_ST1,AR2 ; Restore ST1,ST3,T2 mov fft.d_ST3,AR3 mov AR2,mmap(ST1_55) mov AR3,mmap(ST3_55) mov fft.d_T2,T2 aadd #(Size-ARGS-1),SP ; Reset SP ret .end第四套1DSP的狭义理解为 数字信号处理

23、器 ,广义理解为 数字信号处理方法 。2在直接寻址中,指令代码包含了数据存储器地址的低 7 位。当ST1中直接寻址编辑方式位CPL =0 时,与DP相结合形成16位数据存储器地址;当ST1中直接寻址编辑方式位CPL =1 时,加上SP基地址形成数据存储器地址。3TMS320C54有两个通用引脚,BIO和XF, BIO 输入引脚可用于监视外部接口器件的状态; XF 输出引脚可以用于与外部接口器件的握手信号。3932保护位3116高阶位150低阶位4累加器又叫做 目的寄存器 ,它的作用是存放从ALU或乘法器/加法器单元 输出的数据。它的存放格式为5桶形移位器的移位数有三中表达方式: 立即数 ; A

24、SM ; T低6位 6DSP可以处理双16位或双精度算术运算,当 C16=0 位双精度运算方式,当 C16=1 为双16位运算方式。7复位电路有三种方式,分别是 上电复位 ; 手动复位 ; 软件复位 。8立即数寻址指令中在数字或符号常数前面加一个 # 号,来表示立即数。9位倒序寻址方式中,AR0中存放的是 FFT点数的一半 。10一般,COFF目标文件中包含三个缺省的段: text 段; data 段和 bss 段。11汇编源程序中标号可选,若使用标号,则标号必须从 第一列 开始;程序中可以有注释,注释在第一列开始时前面需标上 星号或分号 ,但在其它列开始的注释前面只能标 分号 。12C5402有23条外部程序地址线,其程序空间可扩展到 1M ,内程序区在 第0页 。13指令执行前有关寄存器及数据存储器单元情况如下图所示,请在下图分别填写指令执行后有关寄存器及数据存储器单元的内容。 ADD *AR3+,14,AA 00 0000 1200A 00 0000 2700 C 1C 1AR3 0101 AR3 01000100h 15000100h 1500数据存储器

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1