DSP原理及应用B卷答案(精)_第1页
DSP原理及应用B卷答案(精)_第2页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学院.专业班级.姓名学号.密封线广东白云学院20132014学年第二学期期末考试DSP原理及应用(B卷)参考答案及评分标准命题人签名陈立旺适用专业及方向:电子信息工程、通信工程层次:本科年级:11级限时:120分钟考试形式:闭卷考场要求:笔试系(教研室)主任签名院长(部)主任签名题号得分一、填空题(请将正确答案填写在括号内。每空1分,共20分)得分评卷人1、DSP定点数值为OxEOOO,若它是Q15(或S0.15定标的有符号小数,它的数值是-0.25);若是Q0(或S15.0格式有符号整数,则它的数值是(-8192)。2、C54x芯片在一个机器周期最多可以同时(1)次取指、读(2)个操作数和写

2、(1)个操作数。3、在C54xDSP寻址和指令系统中,操作数Smem表示(数据存储器数据),Pmad表示(程序存储器地址)。4、一般COFF目标文件中包含(.text)、(.data)和.bss三个缺省的段。5、在堆栈操作中,PC当前地址为4020h,SP当前地址为0033h,则运行单字指令PSHMAR2后,PC内容为(4021h),SP内容为(0032h)。6、CCS中*.gel和boot.asm文件用于对C54x系统及DSP进行初始化,而(*.cmd)文件用于段分配和存储器地址配置。7、AR1=1000H时,执行DLD*AR1,A指令后,AH二地址(1000H)的内容,AL二地址(1001

3、H)的内容。8、指令ADD*AR3+,8,A执行前ACC的值为00003400H,AR3=0100H,(0100H)=1568H,执行后AR3和ACC的值分别为(0101H)和(00159C00H)。9、DSP通过(READY)线和插入等待周期,可以满足外部慢速器件的总线接口要求。10. MMR称为存储器映像寄存器,包含(CPU)寄存器和(接口功能)寄存器,它的物理位置在RAM区的最低端。11. C54xDSP响应中断后默认(关闭)可屏蔽中断,惟除TRAP指令二、判断题(正确的在括号内画V,错误的在括号内画X。每空1分,共10分)(71、C5416芯片的时钟工作频率最高可以是外接时钟信号频率的

4、15倍(x2、TMS320C54x系列DSP芯片只能完成定点数的运算(73、软件可编程等待状态产生器可以将外部总线周期扩展到7个机器周期。(74、C54x内部有2组16位读数据总线,每组都有数据总线和地址总线。(x5、若引脚MP/MC=1则C54x复位后从片内PM区开始执行指令。(76、C54x在OVLY=1表示RAM可以映射到PM区。(77、WRITA指令可以实现DM区的数据写入PM区(X8、C54XDSP主机接口HPI是16位并行口。(x9、RPTZ#99则下一条指令将执行99次。(710、C54x的CPU供电电压为1.8伏三、编程题(10分)得分评卷人、尸乞代兀编写程序,计算。其中a1=

5、8,a2=1,a3=-4,a4=3,a5=3,a6=-4,x1=0,x2=5,x3=-5,x4=-1,x5=-16,x6=-10评分标准:伪指令无误得5分,代码段无误得5分答案:.titlemac.asm.mmregs.bssa,5;.bssx,5;.bssy,2;.globalstart;可省去此句.data;table:.word8,1,-4,3,3,-4.word0,5,-5,-2,-16,-10.text;start:RSBXFRCT;RSBXCPL;STM#a,AR1;RPT#9;MVPDtable,*AR1+;STM#x,AR2STM#a,AR3RPTZA,#4;MAC*AR2+,

6、*AR3+,A;LD#y,DPSTHA,ySTHA,y+1;end:Bend;.end三、回答问题(每题4分,共24分)得分评卷人1、DSP芯片的主要应用领域有哪些?答:(1)信号处理,(2)仪器(3)控制,(4)电信2、从性能和内部结构上看DSP与微机相比有何特点?答:DSP比微机,是性价比高,DSP是集成度高、可嵌入式、功耗低和价格低的专用芯片3、举例循环寻址的表达方式及其关键符号的意义?答:循环寻址如*AR2+%,其中+代表AR2二AR2+1,%代表AR2地址修正时要进行模运算,模值在BK寄存器中。4、说明FIR滤波器使用循环缓冲区时编程的方法及步骤答:循环缓冲区利用.usect伪指令开

7、辟未初始化自定义数据段,再于*.cmd文件中设置自定义段地址从2k边界开始,程序中须设置缓冲区长度BK,循环缓冲区的须采用间接(循环)寻址的方法。其算法是:利用MAC指令计算输出,更新法是利用循环指令(如*AR1+%),进行最老数据的更新。5、中断向量的地址如何构成?软件复位后程序分别从什么地址开始执行?答:中断向量的地址=IPTR(高9位+KX4(低7位,k位中断序号。软件复位(RESET后程序从地址IPTR(高9位+0(低7位全0处开始执行。6、标准串口SP和缓冲串口BSP的主要区别是什么(功能上的区别)?答:前者每收发一个字都要在串口与存储器之间用指令传递一次。后者则可以在串口与存储器之

8、间自动传送一批字无需人工指令参与。四、问答题(26分)得分评卷人1、阅读程序,回答问题(10分):.titleabc.asm.mmrege.bssa1,10.bssb1,1.def_c_int00:.datatable.word11,22,33,44,55,66,77,88,99,110.text_c_int00:STM#a1,AR1RPT#9MVPDtable,*AR1+CALLSUMdead_loop:NOPBdead_loopSUM:RSBXcplSTM#a1,AR1STM#9,AR4LD#0,ALoop:ADD*AR1+,ABANZloop,*AR4-STLA,b1ret.end填空回

9、答问题(每空1分):1).def所定义的符号是在(当前模块)中定义,并可在(别的模块)中使用的符号;2)b1的寻址方式为(直接寻址),3)*AR1的寻址方式为(间接寻址4)RSBXCPL表示b1的物理地址由(DP的9)位加bl的(低7)位偏移地址构成。5)bl内容结果:(605)6)RPT#9表示后一条语句会执行(10)次7)DM区(al+1)地址的内容是(22)8)语句ADD*AR1+,A总共执行了(10)次2、阅读程序填写结果。(12分).title“IIR2.ASM”;.mmregs;.defstart;x2.usect“x”,1;X1.usect“x”,1;X0.usect“x”,1;

10、COEF.usect“COEF”,5;PA0.set0;PA1.set1;.datatable:.word0,0;x1,x2.word676*32768/10000,1352*32768/10000;B2,B1.word676*32768/10000;B0.word-4142*32768/10000,707*32768/10000;A2,A1/2.textstart:SSBXFRCT;STM#x2,AR1;RPT#1;MVPD#table,*AR1+STM#COEF,AR1;RPT#4;MVPD#table+2,*AR1+;STM#x2,AR3;STM#COEF+4,AR4;MVMMAR4,A

11、R1;STM#3,BK;STM#-1,AR0;IIR2:PORTRPA1,*AR3;LD*AR3+0%,16,A;计算反馈通道,MAC*AR3,*AR4,A;MAC*AR3+0%,*AR4-,A;MAC*AR3+0%,*AR4-,A;A=x0STHA,*AR3;保存x0MPY*AR3+0%,*AR4-,A;计算前向通道MAC*AR3+0%,*AR4-,A;MAC*AR3,*AR4-,A;A=y(n)STHA,*AR3;保存y(n)MVMMAR1,AR4;BDIIR2;PORTW*AR3,PA0;.end填空及回答(每空2分)1、语句PORTRPA1,*AR3的基本意思是:(从PA1口读入数据)

12、2、此程中计算反馈通道的算法表达式是(y中内容等于与)x0=(x(n)+2*A1*x1+A2*x2)3、此程中计算前向通道的算法表达式是(y中内容等于与):y(n)=(B0*x0+B1*x1+B2*x2)4):指出以下指令各个操作数的寻址方式PORTRPA1,*AR3(PA1是绝对寻址,*AR3是间接寻址)MVPDtable,*AR1+(table绝对寻址(PM区,*AR1+是间接寻址(DM区)MAC*AR3+0%,*AR4-,A(*AR2+%和AR4-都是间接寻址,A是MMR寻址)4、已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=110,外部晶振=10MHz,参数设置表:CLKMD

13、1CLKMD2CLKMD3CLKMD复位值时钟方式000E007HPLLX150019007HPLLxlO0104007HPLLx51001007HPLLx2110F007HPLLx11110000H2分频101F000H4分频STM#00H,CLKMDStatus:LDMCLKMD,AAND#01H,ABCStatus,ANEQSTM#4087H,CLKMD问题:(1)DSP复位后,DSP的工作时钟是多少?(2分)(2)执行上面的程序片段后,DSP的工作时钟是多少?(2分)答:(110MHz(250MHz五、应用题(10分)得分评卷人设CLKOUT=4MHz,试阅读下列程序。试回答,引脚XF

14、产生什么波形的信号?若定时器TO改成了T1时,同时定时时间加倍,写出程序的修改方法。程序:.titletime.asm.mmregsK_TCR0.set111001101001BSTM#0010H,TCRSTM#799,TIMSTM#799,PRDSTM#K_TCR0,TCRSTM#0008H,IFRSTM#0008H,IMRRSBXINTMLop:blopt0_flag.usect“vars”,1time0_rev:PSHMST0PSHMST1BITFt0_flag,#1BCxf_out,NTCSSBXXF;XF输出高电平ST#0,t0_flagBnextxf_out:RSBXXF;XF输出

15、低电平ST#1,t0_flagnext:POPMST1POPMST0RETE.end另外:在中断向量表vector文件中,在TO中断向量入口处加上如下三条指令:IV_TINT0:Btime0_revrNOPNOP答案:XF产生占空比为50%,周期为4ms的方波的程序原题2ms=(TDDR+1)(PRD+1)ms/4000,(TDDR+1)(PRD+1)=8000;所以:可以使TDDR=9,PRD=799。现在使PRD=1599即可定时器T0改成了T1,同时定时时间加倍时程序的修改方法:1,STM#799,PRD改为STM#1599,PRD2,程序中符号TCR/TIM/PRD分别改为TCR1/T

16、IM1/PRD13,程序中指令STM#0008H,IFR改为STM#0080H,IFR4,程序中指令STM#0008H,IMR改为STM#0080H,IMR表一:常用指令表:指令类型格式举例(简例)注释(略说)修正指针MAR*AR3+0BAR3+AR0AR3,并反向进位测试指令BITFx1,#1xl与1的结果一TC位条件转移BCL1,NTCTC位为零则转移到L1条件转移BANZL2,*AR2-AR2减1不为0则转移到L2条件转移XC1,ALT若A小于0,跳过1条指令执行传送指令MVPDtable,*AR1程序区到数据区的传送传送指令LTD*AR1数据一T,同时移位(AR1+1=*AR1堆栈指令

17、PSHM/POPM,PSHD/POPD对MMR,对数据区累加指令ADD*AR2+,A数据加上A存于A减法指令SUB*AR2+,AA减去数据存于A条件减法SUBCden,A用于除法运算乘法指令MPYAnum数据与AH相乘存于B,数据存于T乘加指令MAC*AR2+,A数据与T相乘,后加A的内容乘加指令MAC*AR2+,*AR3+,A两个数据相乘,后加A的内容位操作指令RSBX/SSBX清0/置1重复指令RPTZA,#4RPT#4加上A清0ST1第14位CPL直接寻址基址方式位ST1第11位INTM可屏蔽中断总开关ST1第6位FRCT乘法小数方式控制位表二:定时器和中断控制定时内容描述器参数定时=CLK0UTx

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论