河北科技大学理工学院DSP复习试卷最终版V10_第1页
河北科技大学理工学院DSP复习试卷最终版V10_第2页
河北科技大学理工学院DSP复习试卷最终版V10_第3页
河北科技大学理工学院DSP复习试卷最终版V10_第4页
河北科技大学理工学院DSP复习试卷最终版V10_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、河北科技大学理工学院DSP考前复习资料整理人:participator-S修改时间:2015-11-18 01:00版本:V1.0说明:本试卷是基于安老师发的复习提纲课件整理,内容全部来自课件内容,由于是晚上整理,难免有误,发现有误请立即指正!每一年会有所不同,希望不断修正,变得更加实用!加粗体部分为复习重点!一 、填空题:1. DSP芯片的结构特点主要有:采用改进的哈佛总线结构、采用流水线机制、内部集成专用的乘累加单元、具有灵活的寻址方式和特殊的指令系统。2. C54x DSP具有两个 40位累加器。累加器A的AG 或 32-39位是保护位。3. 软件中断都是由 INTR K 、 TRAP

2、K 和 RESET 产生。4. TMS320C54X片内有8条16位主总线,它们是1条程序总线、 3条数据总线 、 4条地址总线 。5. MEMROY的作用是 用于描述系统实际的硬件资源,用来定义用户设计的系统中所包含的各种形式的存储器,以及它们占据的地址范围 ,SECTIONS的作用是 用于描述输入段怎样被组合到输出段内,在可执行程序内定义输出段,规定存储器内何处存放置输出段,允许重命名输出段 。6. 执行复位操作后,下列寄存器的初始值分别为:ASM 0 、DP 0 。 7. TMS320C54x有三种类型的串行口:标准同步串行口(SPI)、 缓冲串行口(BSP) 、和 时分多路复用串行接口

3、(TDM) 。8. 桶形移位器能把输入的数据进行 0-31 位的左移和 0-15 位的右移。9. 即寻址方式中的立即数有两种数值形式,数值的位数为 3、5、8、9位时为短立即数;数值的位数为 16 位时是长立即数。10. DSP片内寄存器在C语言中一般采用 指针 方式来访问,常常采用的方法是将DSP寄存器地址的列表定义在 头文件中(reg.h) 。11. 所有TMS320C54X芯片内部都包含 程序 存储器和 数据 存储器。12. 直接寻址就是在指令中包含有数据存储器地址的 低7位 用作偏移地址,并与 基地地址 组成16位的数据存储器地址。13. 定时器主要由3个寄存器所组成,包括 定时寄存器

4、TIM 、 定时周期寄存器PRD 、 定时控制寄存器TCR 。14. 链接器对段的处理主要通过 MEMORY 和 SECTIONS 两个命令完成。15. OVLY 0 ,则片内RAM只安排到数据存储空间。  DROM 1 ,则部分片内ROM安排到数据空间。16. C54X的工作方式状态寄存器PMST提供了三个控制位,包括 MP/非MC 、 OVLY 、 DROM 。17. 中断向量地址的生成方式:中断向量地址是由PMST寄存器中的IPTR和左移2位后的中断向量序号所组成。18. ST1的CPL 1 表示选用堆栈指针(SP)的直接寻址方式。19. TMS320C54X有3个1

5、6位寄存器作为状态和控制寄存器,它们是 状态寄存器ST0 、 状态寄存器ST1 、 处理器工作方式状态寄存器PMST 。20. ST1的C16 0 表示ALU工作在双精度算术运算方式。21. 时钟发生器包括一个内部振荡器和一个 锁相环(PLL)电路 。22. 所有的COFF文件都包含三种形式的段,分别是 .text 文本段 、 .data 数据段 、和 .bss 保留空间段 。23. 状态寄存器ST1中CPL=0表示 使用DP ,CPL=1表示选择的是 使用SP 。24. 累加器寻址的两条指令分别是 READA Smem 、 WRITA Smem 。25. DSP系统复位操作:复位输入引脚 R

6、S ,通过RS可对芯片进行复位,使程序从FF80H单元开始执行。26. 仿真器初始化命令文件(SIMINT.CMD)的主要作用:为仿真器配置存储器、连接I/O口及I/O文件、设置仿真命令。27. CCS各特色功能的使用方法:探针、硬软件断点、动画执行、图形显示、存储器窗口、文件输入输出。28. C54x有4种省电方式,分别为闲置方式1、闲置方式2、闲置方式3和保持方式。29. DSP芯片的硬件资源主要包括:片内RAM、ROM的数量、外部可扩展的程序和数据空间、总线接口、I/O接口等。30. C54x芯片具有的一种8位或16位的并行接口部件,主要用于DSP与其他总线或主处理机进行通信。.31.

7、软件可编程状态发生器可以通过编程来延长总线的等待周期,最多可达到714个周期,这样一来,C54x就能很方便地与外部慢速器件相接口。32.二、简答题1. 简述TMS320C54x的7种基本的数据寻址方式。答:1、立即寻址 2、绝对寻址 3、直接寻址 4、间接寻址 5、累加器寻址 6、存储器映射寄存器寻址 7、堆栈寻址2. 编译器、汇编器、链接器的功能。答:C编译器:用来将C/C+语言源程序自动编译为C54x的汇编语言源程序。 汇编器:用来将汇编语言源文件汇编成机器语言COFF目标文件。链接器:将汇编生成的、可重新定位的COFF目标模块组合成一个可执行的COFF目标模块。3. 段的作用是什么?CO

8、FF目标文件包含哪些段?答:所谓段,是指连续地占有存储空间的一个代码段或数据段,是COFF文件中最重要的概念。一个目标文件中的每一段都是分开的和各不相同的。COFF目标文件文件包含:(1)text段:可执行代码段 (2)data段:已初始化数据段(3)bss段:未初始化数据的保留空间段4. 简述链接命令文件主要包括内容。答:输入文件名,都是要链接的目标文件和文档库文件,或者是其他的命令文件。如果要调用另一个命令文件作为输入文件,此句一定要放在本命令文件的最后,因为连接器不能从新调用命令文件返回;链接器选项。这些选项既可以用在连接器命令行,也可以编在命令文件中;MEMORY和SECTIONS都是

9、链接器命令。MEMORY命令的功能:用来说明系统内可用的存储器资源及地址分配情况。SECTION命令的功能:用来控制各段的构成与地址分配。5. 用开发软件的开发流程。答:新建工程;新建各个源文件,并添加到工程中;编译;下载;调试。6. 简述解决沉余符号位的办法。答:在程序中设定状态寄存器ST1中的FRCT(小数方式)位为1,在乘法器将结果传送至累加器时就能自动地左移1位,累加器的结果为Szzzzzz0自动消去了两个带符号数相乘时产生的沉余符号位。7. 简述HPI接口有两种工作方式:答:共用寻址模式(SAM方式):在这种方式下,主机和C54x都能寻址HPI存储器。如果是异步工作的主机寻址,可在H

10、PI内部重新得到同步。当C54x与主机的周期发生冲突时,则主机具有寻址优先权,C54x将等待一个周期。 主机寻址模式(HOM方式) :在HOM方式下,HPI存储器只能让主机寻址,而C54x则处于复位状态或IDLE2空转状态。主机可以访问HPI RAM,而C54x则配置为最小功耗。8. HPI8接口有几个寄存器?他们的作用是什么?答:(1)HPI存储器:用于TMS320C54X与主机间传送数据。地址从1000H到17FFH,空间容量为2K字(2)HPI地址寄存器:由主机对其直接访问,存放当前寻址HPI存储单元的地址(3)HPI数据锁存器:由主机对其直接访问,存放当前进行读/写的数据(4)HPI控

11、制寄存器:TMS320C54X与主机都能对其直接访问,用于主处理与DSP相互握手,实现相互中断请求(5)HPI控制逻辑:用于处理HPI与主机之间的接口信号9. 一个典型的DSP系统通常由哪些部分组成?(画出原理框图)答:DSP 芯片及 DSP 基本系统、程序和数据存储器、数/模和模/数转换器、模拟控制与处理 电路、各种控制口和通信口、电源处理电路和同步电路等。原理图如下:x(t)抗混叠滤波器A/D转换器x(n)y(n)y(t)数字信号处理器D/A转换器低通滤波器10. 简述C54X芯片的主要特点。答:(1)CPU利用其专用的硬件逻辑和高度并行性提高芯片的处理性能。 (2)存储器具有192K字可

12、寻址存储空间(包括64K字程序存储空间、64K字数据存储空间、64K字I/O空间) (3)高度专业化的指令集能够快速地实现算法并用于高级语言编程优化 (4)片内外设和专用电路采用模块化的结构设计,可以快速地推出新的系列产品 (5)TMS320C54X执行单周期定点指令时间为25/20/15/12.5/10ns,每秒指令数为40/66/100MIPS。(6)TMS320C54XD电源由IDLE1、IDLE2、IDLE3功耗下降指令控制功能,以便DSP工作在节电模式下,使之更适合于手机。(7)在片仿真接口,片上的JTAG接口符合IEEE149.1边界扫描逻辑接口标准,可与主机连接,用于芯片的仿真和

13、测试。11. 定时器由哪些寄存器组成,并说明工作的过程? 答: 定时器主要由3个寄存器所组成,包括定时寄存器TIM 、定时周期寄存器 PRD 、定时控制寄存器TCR。1.  定时分频系数和周期数分别装入TCD和PRC寄存器中;2.  每来一个定时脉冲CLKOUT,计数器PSC减1;3.  当PSC减至0时,PSC产生借位信号;4. 在PSC的借位信号作用下,TIM减1计数,同时将分频系数装入PSC,重新计数;5.  当TIM减到0时,定时时间到,由借位产生定时中断TINT和定时输出TOUT, 并将PRD中的时间常数重新装入TIM。12. 简述流水冲突的解

14、决办法。答: 实际上,流水执行分支转移指令只需2个周期,但是在周期4和5时它还未被执行,不可能到B1地址去取指,只能无效的对I3和I4指令取指,这样一来总共花了4个周期。(这是流水线延迟的基本概念)当发生流水冲突时,CPU可通过写操作延迟一个周期,或通过插入一个空操作来解决流水线冲突。单寻址存储器的流水线冲突解决办法:将第二次寻址操作自动延迟到下一个周期。若采用C语言编写源程序,经编译后生成的代码不会产生流水线冲突; 若采用汇编语言编写源程序,使用算术运算操作不会产生流水线冲突; 若采用汇编语言编写源程序,初始化时对MMR寄存器进行设置,不会发生流水线冲突; 通常流水线冲突发生在对MMR寄存器

15、的写操作,可用等待周期表加以解决。13. 简述流水线操作的基本原理。答:流水线操作是各指令以机器周期为单位相差一个时钟周期,连续并行工作的情况。其本质是DSP多条总线彼此独立地同时工作,使得同一条指令在不同机器周期内占用不同总线资源。同时,不同指令在同一机器周期内占用不同总线资源。14. 简述六级流水线和各级的功能答: 预取指 P:在T1机器周期内,CPU将PC中的内容加载到程序地址总线PAB,找到指令代码的存储单元。 取 指 F:在T2机器周期内,CPU从选中的程序存储单元中,读取指令代码加载到程序总线PB 。译 码 D:用PB的内容加载IR;对IR的内容译码。寻 址 A:如果需要,用数据1

16、读地址加载DAB;如果需要用数据2,读地址加载CAB;修正辅助寄存器和堆栈指针。读 数 R:读数据1,加载DB;读数据2,加载CB;如果需要,将数据3写地址加载EAB。执 行 X:执行指令;用写数据加载EB。15. 简述C54程序地址的产生。答:CPU取指操作时:首先,由程序地址生成器(PAGEN)产生地址;然后,将地址加载到程序地址总线PAB;最后,PAB寻址存放程序存储器中的指令、系数表和立即数。16. CPU的基本组成。答:(1)40位算术逻辑运算单元(ALU):C54x使用40位的算术逻辑运算单元和2个40位累加器,可完成宽范围的算术逻辑运算。ALU的运算结果通常都被传送到目的累加器(

17、累加器A和B)(2)累加器A和B:C54x芯片有两个独立的40位累加器A和B,可以作为ALU或MAC的目标寄存器,存放运算结果,也可以作为ALU或MAC的一个输入。(3)桶形移位寄存器:主要用于格式化操作,为输入的数据定标 。 在进行ALU运算之前,对输入数据进行数据定标; 对累加器进行算术或逻辑移位; 对累加器进行归一化处理; 在累加器的内容存入数据存储器之前,对存储数据进行定标。 (4)乘法器|加法器单元;(5)16位暂存寄存器;(6)16位转移寄存器TRN;(7)比较、选择和存储单元(CSSU);(8)指数编码器;(9)CPU状态控制器17. DSP的分类答:1.这种分类是依据DSP芯片

18、的工作时钟和指令类型进行的。2.按照用途,可将DSP芯片分为通用型和专用型两大类。 3.根据芯片工作的数据格式,按其精度或动态范围,可将通用DSP划分为定点DSP和浮点DSP两类。18. DSP系统的设计过程答:设计步骤分几个阶段: 软件设计软件调试(1)明确设计任务,确定设计目标(2)算法模拟,确定性能指标 (3)选择DSP芯片和外围芯片 (4)设计实时的DSP应用系统 (5)硬件和软件调试 (6)系统集成和测试19. 解决沉余符号位的办法.答:在程序中设定状态寄存器ST1中的FRCT(小数方式)位为1,在乘法器将结果传送至累加器时就能自动地左移1位,累加器的结果为Szzzzzz0自动消去了

19、两个带符号数相乘时产生的沉余符号位。20. 使用条件算符时应注意三点:三、程序题:1. 分析下列程序判断是哪种寻址方式(注意观察每种的不同),并解释含义;LD #10,A 立即数10 赋给 ASTL A,*(y) 将AL内容存入y所在的存储单元READA x将A的内容作为地址读程序存储器,并存入x存储单元LD x,A(DP+x的低7位地址) 赋给 ALD *AR1,A(AR1) 赋给 ® ALDM ST1,B(ST1) 赋给 ® BPSHM AG(SP)-1 赋给 SP,(AG) 赋给 (SP)以上分别是立即、绝对、直接、间接、累加器、MMR、堆栈!2. 对堆栈进行初始化设

20、置 1. size .set 1202. stack .usect “STACK”,size;保留空间,共120个单元3. STM # stack + size,SP ;将保留空间的高地址赋给SP,作为栈底4. .bss x,10 ;给x保留10个空间5. .bss y,1 ;给y保留1个空间6. STM #x,AR1 ;设置数据段的首地址7. STM #9,AR2 ;设置循环计数值8. LD #0,A ;累加器清09. loop: ADD *AR1+,A ;累加运算,并修改地址10. BANZ loop,*AR2- ;若计数值不为0,则循环,并计数值减111. 若计数值为0,则结束循环12.

21、 STL A, y ;累加和存入y中13.3.计算y = a *x + b 1. LD a, T ;取a值,T=a2. MPY x, B ;完成ax乘积,B=ax3. ADD b, B ;完成ax+b运算,B=ax+b4. STL B, y ;计算结果存入y中4.计算y = xl *al + x2 *a2 1. LD x1, T 2. MPY a1, B3. LD x2, T4. MAC a2, B 乘法累加,B=x1a1+x2a25. STL B, y 计算结果的低字BL存入y中6. STH B, y+1 计算结果的高字BH存入y+1中8. 计算 y= 1. .title “example.

22、asm”2. .mmregs3. stack .usect “STACK”,10h ; 为堆栈指定空间4. .bss a,4 ; 为变量分配4个字的空间5. .bss x,46. .bss y,17. .def start8. .data 9. table: .word 1,2,3,4 变量初始化;10. .word 8,6,4,211. .text12. start: STM #0,SWWSR 插入0个等待状态13. STM #STACK+10h,SP 设置堆栈指针14. STM #a,AR1 AR1指向a15. RPT #7 移动8个数据16. MVPD table,*AR1+ 从程序存储

23、器到数据存储器17. CALL SUM 调用SUM子程序18. end: B end 19. SUM: STM #a, AR3 ; 子程序执行20. STM #x, AR421. RPTZ A, #322. MAC *AR3+,*AR4+,A23. STL A, y24. RET25. .end9. 求4项乘积aixi(i=1,2,3,4)中的最大值,并存放累加器A中。1. STM #a, AR1 ai首地址a给AR12. STM #x, AR2 ;xi首地址x给AR23. STM #2, AR3 ;设置计数器AR3=24. LD *AR1+,T ;取系数T=ai,并修改AR15. MPY *

24、AR2+,A ;乘法运算A=aixi,并修改AR2 6. loop1: LD *AR1+,T ;取系数T=ai,并修改AR17. MPY *AR2+,B ;乘法运算B=aixi,并修改AR2 8. MAX A ;求A和B中的最大值 9. BANZ loop1,*AR3- ;若AR30,则循环,并修改AR3;若AR3=0,则不循环 10. 条件分支转移1. RC TC ;若TC=1,则返回,否则往下执行2. CC sub,BNEQ ;若累加器B不等于0,则调用sub,否则往下执行3. BC new,AGT,AOV ;若累加器A>0且溢出,转至new,否则往下执行11. 传送类程序编写一段程序将数据存储器中的数组x20复制到数组y20中。1. .bss x, 202. .bss y, 203. ·4. ·5. STM #x, AR26. STM #x, AR37. RPT #198. MVDD *AR2+, *AR3+12. 计算y=1. .bss x,10 ;给x保留10个空间2. .bss y,1 ;给y保留1个空间3. STM #x,AR1 ;设置数据段的首地址4. S

温馨提示

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

评论

0/150

提交评论