DSP技术复习答案

  • 格式:doc
  • 大小:300.00 KB
  • 文档页数:18

DSP技术复习题第一章习题1. 什么是DSP和DSP技术?答:数字信号处理和数字信号处理器二者的英文简写都为DSP。

数字信号处理是信号的数字化及数字运算和变换的处理。

数字信号处理器是一种适合完成数字信号处理运算的硬件芯片。

“DSP”一词常用来指数字信号处理器;DSP技术:和数字信号处理器相关的数字信号处理算法实现技术和理论,即采用通用的或专用的DSP处理器完成数字信号处理的方法与技术。

2. 可编程DSP芯片的结构特点有哪些?答:1)、改进的哈佛结构;2)、多总线结构;3)、流水线技术;4)、多处理单元;5)、特殊的DSP指令;6)、指令周期短;7)、运算精度高;8)、丰富的外设;9)、功耗低。

3. 什么是冯.诺依曼结构?什么是哈佛结构?什么是改进的哈佛结构?答:三者结构如图所示。

1)、冯.诺依曼结构:程序和数据空间组织在一起放在存储器中,一条总线完成了CPU和存储器之间的连接,程序和数据只能分时使用总线和CPU通信。

2)、哈佛结构该结构:采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输。

3)、哈佛结构该结构:改进哈佛体系结构分成三个存储区:程序、数据、程序和数据共用,即允许在程序空间和数据空间之间相互传送数据,一般采用双存储空间和数条总线。

4. CISC和RISC分别指什么?答:CISC是复杂指令系统计算机(Complex Instruction Set Computer)的简称,RISC是指精简指令系统计算机(Reduced Instruction Set Computer)的简称。

CISC和RISC是当前CPU的两种架构。

它们的区别在于不同的CPU设计理念和方法。

早期的CPU全部是CISC架构,RISC是针对CISC的一些缺点提出来的。

CISC具有大量的指令和寻址方式,但80%的程序只使用20%的指令,大多数程序只使用少量的指令就能够运行。

由于CISC的CPU 包含有丰富的单元电路,虽然功能强,但面积大,功耗大。

RISC在通道中只包含最有用的指令,只提供简单的操作。

而把较长的指令分拆成若干条长度相同的单一指令,一个时钟周期内可以执行一条或者多条指令;可使CPU的工作变得单纯、速度更快,设计和开发也更简单。

RISC的CPU包含较少的单元电路,因而面积小、功耗低。

对于存储器访问通常只使用加载和存储两个指令。

5. ARM是什么?答: ARM 是Advanced RISC Machines的简称,既可以认为是一个公司的名字,也可以认为是对微处理器的通称,还可以认为是一种技术的名字。

通常代表着以下三个方面的含义:1)一个设计ARM类型微处理器公司的名字——英国知识产权核(IP)设计公司;2)一类微处理器的通称;3)一种技术的名字(ARM微处理器核)。

ARM公司自身并不制造微处理器,而ARM类处理器的设计公司,而ARM的生产由合作伙伴来制造。

ARM处理器具有以下特点:1)、体积小、低功耗、低成本、高性能;2)、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;3)、大量使用寄存器,指令执行速度更快;4)、大多数数据操作都在寄存器中完成;5)、寻址方式灵活简单,执行效率高;6)、指令长度固定。

6. DSP芯片和通用计算机和单片机的区别是什么?答:DSP的设计目的是为了计算数字信号处理各种算法。

特点有:体积小、成本低、功耗小,容易开发,易于实现嵌入式和便携式应用。

通用计算机的设计目的是为了“通用”计算,方便使用。

它是具有大容量内存,且操作复杂的系统。

单片机则是为低成本控制领域而设计和开发的,所以单片机位控能力强,I/O接口种类繁多,但处理速度较慢。

7. 按弗林(Flynn)分类法可将计算系统结构分为哪四类?答:弗林(Flynn)分类法是根据数字处理中指令流和数据流的多少来对系统结构的并行性进行分类,通常分为以下4类:1)、单指令流单数据流(SISD)2)、单指令流多数据流(SIMD)3)、多指令流单数据流(MISD)4)、多指令流多数据流(MIMD)8. 什么叫流水线技术?答:流水线(pipeline)技术指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。

是将每条指令分解为多步,并通过增加硬件来使得各步可以重叠操作,从而实现几条指令并行处理的技术。

采用流水线技术后,并没有加快单条指令的执行速度,而是通过多条指令的并行操作从整体上加快了指令流速度,缩短了程序执行时间。

第二章习题1. 通用DSP的性能指标有哪些?答:通用DSP的性能指标主要有:字长,芯片运算速度和精度,功耗,片内硬件资源,芯片价格以及开发工具等。

2. 定点DSP和浮点DSP的特点是什么?答:1)定点DSP:内部数据格式采用整数或小数来表示。

内部结构相对简化,运算速度较同期出品的浮点DSP快。

功耗小、价格低。

但运算的动态范围有限,使用时要考虑溢出问题。

2)浮点DSP:内部数据格式采用尾数加指数形式表示。

数据动态范围宽,精度高,亦可完成定点运算。

与同期出品的定点DSP相比功耗大、成本高、体积也会大点。

3. 对于16位定点DSP,Q0表示什么数?Q15表示什么数?答:Q0表示整数。

Q15表示纯小数。

4. 简述TI公司C2000/C5000/C6000系列DSP的特点及主要用途。

答:C2000系列是一个控制器系列,除了有一个 DSP核以外,还有大量的外设资源,如A/D、定时器、各种串口(同步或异步)、WATCHDOG、CAN总线、PWM发生器、数字IO脚等等。

2000系列主要用于工业控制领域。

5000和6000系列主要偏重于视频图像处理。

C5000系列主要分为C54xx和C55xx两个系列。

两个系列在执行代码级是兼容的,但他们的汇编指令系统却不同。

C5000特别适用于手持通讯产品,如手机、PDA、GPS等。

TI的TMS320C6000是基于超长指令字(VLIW)结构的通用DSP系列。

该结构包括定点的C62x、浮点的C67x和新的C64x。

相对C5000性能更高、速度更快。

该平台的处理和低功耗功能非常适合于影像/视频、通信和宽带基础设施、工业、医疗、测试和测量、高端计算和高性能音频等应用。

5. 嵌入式系统ARM内核和DSP内核结合的意义何在?答:ARM处理器具有非常强的控制和接口能力,而DSP的数字处理能力很强,所以两者结合起来,非常适合于多媒体应用的需要。

6.DSP按照用途分类分为DSP和通用DSP。

答:DSP按照用途分类分为专用DSP和通用DSP。

7.什么是DSP的DAVINCI技术?答:DAVINCI技术是TI推出的新一代视频、图像、语音和音频解决方案的统称。

硬件上:采用SOC技术,集成TI的高性能DSP64X+内核和高端的ARM内核。

ARM:提供丰富的外设接口。

DSP:数字信号处理(视频、图像、语音和音频)能力。

软件上:提供了很多优化的多媒体编解码引擎(基于DSP/BIOS和XDAIS),API和应用程序框架(基于LINUX)便捷的集成开发环境。

TI的Davinci处理器:TMS320DM64x、DM643x、DM644x、DM646x、DM3xx。

第三章习题1、TSM320C54X芯片的总线有哪些?它们各自的作用和区别是什么?答:C54XDSP片内有8条16位总线,即4条程序/数据总线和4条地址总线。

程序总线(PB):传送取自程序存储器的指令代码和立即操作数。

数据总线(CB、DB和EB)。

将内部各单元(如CPU、数据地址生成电路、程序地址生成电路、在片外围电路及数据存储器)连接在一起。

其中,CB和DB传送读自数据存储器的操作数,EB传送写到存储器的数据。

4条地址总线PAB、CAB、DAB及EAB分别为PB、CB、DB及EB运送相应的地址信息。

除了以上8条主要的总线外,C54x系列DSP还有一条16位片上双向总线用来访问片上处设。

这组总线通过一个总线交换器与DB和EB连接。

也就是说在同一时刻要么进行读操作(与DB连通),要么进行写操作(与EB连通)。

2.TMS320C54x芯片的CPU主要由哪些部分构成?它们的功能是什么?答:1)算术逻辑单元(ALU):40位的算术逻辑单元(ALU)和两个40位的累加器ACCA和ACCB用来二进制补码算术运算和布尔运算。

2)累加器(ACCA和ACCB)累加器ACCA和ACCB可用于存放从ALU或乘/加单元输出的数据,也能输出数据到ALU或乘/加单元。

3)桶形移位寄存器桶形移位寄存器有一个40位输入与累加器或数据总CB、DB相连,有一个40位输出与ALU或数据总线EB相加。

桶形移位寄存器对输入数据进行0到31位的左移和0到16位的右移。

4)乘/加单元CPU有一个17×17位硬件乘法器,它与一个40位专用加法器相连。

乘/加单元可以在一个指令周期里完成17×17位的进制补码乘法运算,也可以在一个流水线状态周期内完成一个乘法累加(MAC)运算。

5)比较、选择和存储单元(CSSU):专门用于快速执行Viterbi算法的特殊硬件。

6)指数编码器(EXP encoder):用于支持单周期指令EXP的专用硬件。

它可以求出累加器中的指数值,并以2的补码形式存放到T寄存器中。

3. TMS320C54X芯片的流水线共有多少个操作阶段?每个阶段执行什么任务?答:6个操作阶段。

分别为:1)预取程序指令:将下一条指令的地址提供给程序地址总线PAB。

2)取程序指令:从程序总线PB上取得指令放入指令寄存器IR中。

3)指令译码:对IR内的指令译码,决定对存储器的访问类型(读或者写),以及对CPU和数据地址产生单元DAGEN进行怎样的控制。

4)存取准备:数据地址产生单元输出要读取的操作数地址到数据地址总线DAB上,如果需要第2个操作数,则将其地址放在CAB上。

5)读操作:从数据总DB(及CB)上读取操作数,同时如果需要的话,把将要写入存储器的数据地址提供给写地址总线EAB。

6)执行/写操作:指令被执行,同时通过数据写总线EB完成写操作。

4.流水线操作中哪些情况可能发生冲突?解决冲突的办法有哪些?答:由DSP内部的多总线并行、多逻辑并行(运算单元、地址产生单元等)、高速(一个周期内可以访问两次片内存储器)操作、存储存储器分块(单存取、双存储、及分块)、多级指令流水线和有限的内部寄存器等影响,使得DSP在高速运行时难免有时会发生资源冲突(总线冲突、存储器访问冲突、寄存器冲突、其他资源冲突),导致流水线冲突。

很多冲突DSP自己通过延时缓冲解决,但有些冲突必须由程序员自己解决。

否则程序运行就可能不正确。

具体方法是重新调整相关部分指令顺序,或插入NOP空操作指令,或改用其他指令和寻址方式,或在访问一个寄存器之前做必要的延时,或调整数据和程序的存储位置,以适应存储器分块和减少冲突的要求等。