1、第14章 数字信号处理的硬件实现一、概述二、DSP的特点三、DSP的发展四、DSP的开发五、DSP的应用一、概述 Digital Signal Processing (DSP): 一门新的学科:研究信号分析与处理的理论和各种算法 Digital Signal Processor (DSP): 数字信号处理器:将数字信号处理的理论用于实际。(教学, 科研, 开发的前期)DSP软件包MATLAB Signal Processing Tool BoxCPU, MCU, DSP将信号处理的理论用于实际,即是“实现”:软件实现:硬件实现:有可能“实时实现”: 所谓“实时(Real-Time)实现”,是指
2、一个实际的系统在人们听觉,视觉或按任务要求所允许的时间范围内能及时地完成对输入信号的处理并将其输出。 例如,我们每天使用的手机,将要普及的数字电视等,都是实时的数字信号处理系统。 要想在极短的时间内完成对信号的处理,一方面需要快速的算法、高效的编程,另一方面,则需要高性能的硬件支持。数字信号处理器(DSP)即是为实时实现数字信号处理任务而特殊设计的高性能的一类CPU。 严格地说,“实时实现”是指,一个系统在每一个抽样间隔内都能完成全部所需要的计算任务,即:如果 Waiting Time 0则认为该系统可以实时实现。例如,阶次 的FIR滤波器,其输入输出关系是100N 假定要处理的信号的抽样频率
3、为200KHz,那么,该系统要在50 内,至少要完成100次乘法,99次加法,才谈得上“实时实现”。990( )( ) ()ky nx k h nksCPU的类型:1. 通用型CPU(GPP);2. 单片机(MCU);3. DSP;4. 嵌入式系统;5. ASIC;6. FPGA通用处理器(GPP): 8-bit Apple(6502), NEC PC-8000(Z80) 8086/286/386/486/ Pentium/Pentium II/ Pentium III PowerPc 64-bit CPU(SUN Sparc,DEC Alpha, HP) 事务密集型处理机制 冯.诺依曼结构:
4、统一的程序和数据空间 采取各种方法提高计算速度:单片机(单片机(MCU): 控制密集型处理机制。4bit、 8bit单片机多应用于玩具、家电及工业控制; 16bit单片机除控制功能外,还有较强的信息处理的能力。但实时处理较困难。 INTEL MCS/48/51/96(98) MOTOROLA HCS05/011 数字信号处理器(DSP): 运算密集型处理机制。最有可能实时实 现复杂 运算的器件! 二、二、数字信号处理器的特点1. 哈佛结构,且是多总线结构;Harvard ArchitectureVon-NeumannArchitecture取指令和取数据分时进行;取指令和取数据同时进行;在DS
5、P中,广泛采取多总线制,以便同时读取几个数据,提高了运算的速度,如C54芯片:Using multiple busesC54 的多总线结构:3个数据总线(CB,DB,EB)1个程序总线(PB)4个地址总线(PAB,CAB,DAB,EAB)高级多总线结构2. “流水线(pipeline)式” 的指令执行实际上,DSP中采用多级流水线结构3. 具有硬件乘法器是DSP最突出的特点,从而 大大提高了运算速度。 数字信号处理中最常用的运算:1010( )( )( )( ) ()1( )( ) ()NnknkNxnX kx n Wy nx k h nkr mx n x nmN乘法累加 1011x 1110
6、 1011x 1110HardwareMicrocode1001101000001011.1011.1011.10011010Cycle 1Cycle 2Cycle 3Cycle 4Cycle 5例如,4bit无符号数相乘: 一步一步执行 一步执行例如:C54中的硬件乘法器4. 高性能的DSP提供了“并行(parallel)”工作 的能力。所谓并行,是指多个DSP,或DSP 内部的多个单元同时在完成一个共同的任务;5. 片上存储器:(On chip Memory ); 专用寻址单元:(Addressing Logic ) 它们与ALU并行工作;所有这些设置,都是 为了提高运行速度;6. 为方便
7、数据的读、写及与片外设备的 通信,DSP上一般都集成有DMA、串 行通信口、定时器及中断处理器等, 具有和不同速度存储器相连接的硬件 和软件的等待功能; 7. 高的时钟速度,极快的运算能力:MFLOPS:百万次浮点操作/秒MOPS: 百万次操作/秒MIPS: 百万条指令/秒Others: MAC、Instruction Cycle TimeTMS320C64系列的DSP 最大时钟速度可达600MHz,因此,时钟 周期仅为1.67ns,其运算能力可达4800MIPS; 该系列特别适用于图像处理、三维成像、多媒体及其它高速运算的场合。TMS320C6201 DSP 时钟:200MHz,运算能力:1
8、600MIPS。 1024点的FFT,仅需要70us;8. 部分DSP芯片上有片上的A/D及脉宽调制 通道(PWM),这一类DSP除了有强的 运算能力外,还有着很好的控制能力 ; 总之,先进周密的硬件设计、方便完整的指令系统、配套的开发工具以及高速、实时信号处理市场的巨大需要,从而使DSP微处理器在飞速发展的计算机领域中异军突起、大放光彩。目前,数字信号处理器的硬件、软件及第三方(Third Party)的相关产品,已形成一个巨大的产业。TMS320C25 DSP的内部结构DSP分定点处理器和浮点处理器两大类定点DSP: 采用定点数来实现数值运算时,其操作数大都采用整型数来表示。整型数的大小取
9、决于所用的字长,字的位数越多,所能表示的数的范围越大。例如,对16bit字长,其表示的数的最大范围是 3276832767 在运算过程中,如果两个数的和或积超过这一范围,就要产生数据的溢出,从而带来大的误差。当然,定点DSP也可以实现小数运算,不过小数点的位置是由编程人员指定的。 浮点DSP: s:符号位,bit31; s=0 表示正数,s=1 表示负数;e:指数位,bit23bit30,其取值范围为0255;m:尾数的分数部分,bit0bit22,共23位。 (1)0e255,若则s(e 127)x( 1)2(1 .m) 12622(0.m)s( )若e=0,m0, 则 x=(-1)(3)若
10、e=0,m=0, 则 x=0三、DSP的发展TYPICAL DEVICE CAPABILITIES503520256$150.0025050K350 0.840802K$15.0012.5500K6 500.15,0001,00032K$5.000.15M12Die size (mm)Technology (uM) MIPSMHzRAM (bytes)PricePower (mW/MIPS)TransistorsWafer size198019902000201050.0250,00010,0001M$0.150.00150M12TYPICAL DEVICE CAPABILITIESTexas
11、 Instruments(TI:德州仪器公司): TMS320C2000 TMS320C5000 TMS320C6000 TMS320C1x、C2x、C3x、C4x、C5x、C8xAnalog Devices(AD:模拟器件公司): ADSP-21xx TigerSharc DSP SHARC DSPLucent: DSP-16xx DSP-16xxx: Lucent+Motorola: StarCore140 Core Motorola: DSP560 xx DSP563xx DSP566xx DSP568xx5.2%10.3%11.4%25.1%48%TI朗讯MotoralaADI其他TI
12、 早期DSP产品:第1代: TMS320C1X 1982 定点第2代: TMS320C2X 定点第3代: TMS320C3X 浮点第4代: TMS320C4X 浮点第5代: TMS320C5X 定点第6代: TMS320C8X 1994 多 CPU 符号解释: TMS320*XY-Z, “*”:C,E,P,F, LC,BC,LBC,V,U等; X:X1:第一代,5第五代,8是第六代; Y:代内的序号,Z:时钟频率(MHz); XY:合起来表示处于那一个系列; “*”“C”,CMOS;“*”“E”,EPROM; “*” “P”,PROM; “*”F,FLASH; “*”“LC”、“VC”、“UC
13、”,低、甚低、超低功耗; “*”“BC”,(Boot Load); “*”“LBC”,低功耗、加载TMS320C2000系列TMS320C5000 系列:TMS320C6000 系列:专用DSP芯片:在制造时,其内部结构已符合相应算法的流程,只需按要求输入数据即可,无需再编程。这些产品有:INMOS公司的卷积/相关器A100;PLESSY公司的卷积/相关器PDSP16256;HARRIS公司的卷积/相关器HSP43168;AUSTEK公司的FFT专用芯片A41102;PLESSY公司的专用FFT芯片PDSP16515;AD公司的小波压缩芯片ADV601.四、DSP的开发开发步骤:1.算法研究与
14、仿真(MATLAB, C, 汇编);2.选择DSP芯片及其它元器件;3.系统原理设计,画原理图;4.系统硬件仿真;5.制印刷线路板(PCB);6.系统焊接、调试,加载软件。开发步骤:DSP系统的设计与调试(一)TI DSP软件开发工具1. TI早期的软件开发工具 (1) TMS320宏汇编编辑/编译连接器(macro assemblercompiler /linker) (2) TMS320系列最佳的ANSIC编译器(ANSIC compiler) (3)代码调试工具(debugger) (4)软件仿真器(simulator) 软件仿真器是一个软件程序,它运行在PC上,可模拟TM5320的整个
15、指令系统,从而达到程序检验和开发的目的。 TI eXpressDSP框架:是一个开放式的、集成的软件开发环境,它不但包含了上述的常用软件工具,并且在功能上大大扩展,而且为使用者提供了良好的人机交互界面。它包含如下4个部分: 集成开发环境 CCS(code composer studio) 实时基础软件 DSP/BIOS; 算法标准 XDAIS(eXpressDSP algorithm standard); 第3方公司提供的模块,包括插件和算法模块等。 eXpressDSP技术提供的简单易用而功能强大的工具可以大大缩短DSP产品的开发时间,从而使开发者将精力集中到更新应用的发展中。2. 集成开发
16、环境集成开发环境CCS CCS是一个为TMS320系列DSP设计的高度集成的软件开发和调试环境,它将DSP工程项目管理、源代码的编辑、目标代码的生成、调试和分析都打包在一个环境中提供给用户,如图所示:应用系统设计系统配置源代码编辑编译与连接软件模块集成软件调试软件分析CCS 的组成模块(一)TI DSP 硬件开发工具 在 DSP 系统开发的不同阶段需要不同的开发系统,如供初学者使用的学习系统,供对所选用的DSP及其他器件进行评估的评估系统,供最后调试的开发系统。 TI公司针对这些不同的应用推出了不同类型、不同价位的硬件开发系统,它们是DSP初学者工具包DSK(DSP starter kit),
17、评估模件EVM(evaluation module)板及系统仿真器XDS(eXtended developmet systems)。 DSK 是TI公司特地为初学者提供的一个低价、性能较为优良的DSP开发工具。对不同的系列,其DSK上面有一块对应的DSP芯片,板上集成有A/D, D/A,扩展RAM,时钟、电源、各种插接件。它通过串行或并行方式和PC机连接,因此,在PC机端可实现对DSK的加载、调试与运行。DSK可通过A/D实现对模拟信号的采集、处理并输出到PC机上。可见该开发工具对学习、研发 DSP 是非常方便的。DSP初学者工具包(DSP Starter Kit, DSK) TMS320C6
18、211 DSK评估模件 EVM EVM也是一种较为低价的开发板,但功能远比DSK强。它可用来评估所选用的DSP和其他芯片是否能满足实际任务的需要,可在上面连续或单步运行所编写的DSP汇编软件以检查程序的质量,它具有有限的系统调试功能。EVM板是一个PC插件,因此其工作主机也是PC机。 对不同系列的DSP,TI提供了不同型号的EVM板。 PCIbusExternal JTAGheaderPCI targetJTAG emulationPCI targetHPIExternal powerconnectorVoltageregulatorsVoltagesupervisorPCI masterEM
19、IF interfaceProgrammablelogicCPLDISP header(12)User-optionDIP switchesTMS320C6201or TMS320C6701DSP(133/160 MHz)CLKINJTAGHPIRSTVDDMcbsp1/TimersMcBSP0EMIFDual clocks(33.25 / 40 MHz)Stereo 16-bitaudio codecLED indicatorsMiscellaneous Control1M x 32SDRAM(bank 1)Expansionmemory interfaceExpansionperipher
20、al interface64k x 32SBSRAM1M x 32SDRAM(bank 0)MIC and LINE IN/OUTaudio jacksBAR1BAR3/BAR45/12VFIFOsBAR2CE1CE1CE1CE0CE2CE3CE1TMS320C6201 EVM系统仿真器 XDS 系统仿真器XDS(eXtended Developmet Systems)是一个功能强大的、全速的仿真器,可用以在系统水平的高度对所设计的DSP目标系统作集成和调试。 一个实际的 XDS510 开发系统如下图所示,它包含两个部件,一个是插入PC机的插件板,一个是控制盒。控制盒两边分别有带有JTAG插头
21、的电缆,一边和目标板相连,一边和插件板相连。 非插入式的基于扫描的仿真器; 可全速运行目标系统,可监视系统各器件状态; 系统可全速、断点、单步运行; 可分别用软件、硬件设置断点及程序跟踪; 具有高级语言的调试接口; 可对系统上DSP的寄存器、存储器进行读写操作; 可测量系统的执行时间; 可以调试C、汇编程序,或二者混编的程序; CCS支持XDS510,功能强大,友好的工作界面。 XDS510的特点XDS510DSP is Almost EVERYWHEREITCITEBTEVoIP Block DiagramDigital Camera Block DiagramNet Camera Bloc
22、k DiagramMedical Instrumentation Block Diagram耳道式数字助听器耳背式数字助听器汽汽 车车自 适 应 驾 驶 控 制防 滑 刹 车蜂 窝 电 话数 字 式 收 音 机发 动 机 控 制全 球 定 位导 航振 动 分 析语 音 控 制消消 费费 类类数 字 式 收 音 机 /电 视教 学 玩 具音 乐 合 成 器电 力 工 具雷 达 检 测答 问 机控控 制制磁 盘 驱 动 器 控 制发 动 机 控 制激 光 打 印 机 控 制电 动 机 控 制机 器 人 控 制侍 服 控 制通 讯邮 件1.2K到 56.6K的 M odem自 适 应 均 衡 器ADPCM 译 码基 站蜂 窝 电 话通 道 复 用数 据 加 密数 字 式 PBX数 字 式 语 音 插 值 (DSI)DTM F译 码 /解 码回 音 消 除传 真未 来 终 端通 讯 线 路 重 复 器个 人 通 讯 系 统 (PCS)个 人 数 字 式 助 理 (PDA)宽 带 通 讯XDSL视 像 会 议X.25数 据 包 交 换语 音语 音 确 认语 音 增 强语 音 识 别语 音 合 成语 音 译 码语 音 邮 件