1、1DSPDSP技术技术及应用及应用igital ignal rocessor数字信号处理器数字信号处理器2主要内容主要内容第一章第一章 DSP技术概述技术概述第二章第二章 DSP芯片结构介绍(芯片结构介绍(TMS320C54X)第三章第三章 DSP硬件系统设计(硬件系统设计(TMS320C54X)第四章第四章 DSP指令系统及特点指令系统及特点第五章第五章 DSP软件开发过程软件开发过程第六章第六章 汇编语言编程举例汇编语言编程举例第七章第七章 DSPDSP集成开发环境集成开发环境CCSCCS及其使用及其使用3 4序论序论强调的是对以数字形式表现的信号进行强调的是对以数字形式表现的信号进行处理
2、和研究的方法。是一门涉及许多学科处理和研究的方法。是一门涉及许多学科且广泛应用于许多领域的新兴学科。且广泛应用于许多领域的新兴学科。什么是什么是DSPDSP?DSP包括两层概念包括两层概念:1.数字信号处理(数字信号处理(Digital Signal ProcessingDSP)5DSPDSP技术及应用技术及应用课程属于这一层概念,课程属于这一层概念,所涉及内容为如何利用所涉及内容为如何利用DSPDSP芯片进行数字信号芯片进行数字信号的处理。研究的内容为的处理。研究的内容为DSPDSP芯片的结构和特点,芯片的结构和特点,如何通过程序编写,实现对数字信号的处理。如何通过程序编写,实现对数字信号的
3、处理。2.数字信号处理器(数字信号处理器(Digital Signal ProcessorDSP)强调的是通过专用集成电路芯片,利用强调的是通过专用集成电路芯片,利用数字信号处理理论,在芯片上运行目标数字信号处理理论,在芯片上运行目标程序,实现对信号的某种处理。程序,实现对信号的某种处理。6数学工具:数学工具:微积分、复变函数、概率统计、随机过微积分、复变函数、概率统计、随机过程、数值分析、高等代数、线性代数、泛函程、数值分析、高等代数、线性代数、泛函数等。数等。基础理论:基础理论:网络理论、信号与系统、现代控制理论网络理论、信号与系统、现代控制理论(包括人工智能、模式识别、神经网络、模(包括
4、人工智能、模式识别、神经网络、模糊控制)、现代通信理论、故障理论和现代糊控制)、现代通信理论、故障理论和现代测量等。测量等。数字信号处理的理论基础:数字信号处理的理论基础:71.1.在通用的微型计算机(在通用的微型计算机(PCPC机)上用软件机)上用软件(如(如C C、FortranFortran语言)实现。语言)实现。 缺点是:速度慢缺点是:速度慢 2.2.用单片机(如用单片机(如MCS-51MCS-51、9696系列等)实现。系列等)实现。 缺点是:只用于简单数字信号处理。缺点是:只用于简单数字信号处理。3.3.用通用的可编程用通用的可编程DSPDSP芯片实现。芯片实现。DSPDSP芯片有
5、更适合于数字信号处理的软件和芯片有更适合于数字信号处理的软件和硬件资源,非常适合于通用数字信号处理的开发,硬件资源,非常适合于通用数字信号处理的开发,为数字信号处理的应用打开了新局面。为数字信号处理的应用打开了新局面。 数字信号处理的实现方法:数字信号处理的实现方法:84. 4. 用于极高速信号处理的专用用于极高速信号处理的专用DSPDSP芯片。芯片。 缺点:灵活性差,开发工具不完善。缺点:灵活性差,开发工具不完善。5. 5. 在通用的计算机系统中加上加速卡实在通用的计算机系统中加上加速卡实现。现。 缺点:需核心含缺点:需核心含DSPDSP的用户加速卡。的用户加速卡。6. 6. 用用FPGAF
6、PGA等产品实现数字信号处理算法。等产品实现数字信号处理算法。 缺点:专用性太强,而且这种方法的缺点:专用性太强,而且这种方法的研发工作也主要不是由一般的用户来完成的。研发工作也主要不是由一般的用户来完成的。 9第一节第一节 DSPDSP系统概述系统概述DSPDSP系统系统模拟系统模拟系统数字信号数字信号模拟信号模拟信号实时处理实时处理模拟器件FPGA/CPLDDSP芯片强调控制强调控制运算过程运算过程10一、一、DSPDSP系统的特点系统的特点 1. 1. 精度高精度高难难1717位字长位字长模拟网络元件模拟网络元件(R R、L L、C C等)等)模拟网络系统模拟网络系统数字系统数字系统DS
7、PDSP、D/AD/A精度精度1010-3-3精度精度1010-3-3112.2.可靠性强可靠性强放大器放大器A放大器放大器B计算机计算机A计算机计算机B只要误差不超过只要误差不超过0、1判决电平判决电平A、B结果结果可能不同可能不同A、B结果结果果相同果相同123.3.集成度高集成度高 表面贴装表面贴装ASICASIC芯片芯片DSPDSP系统系统DSPDSPCPLDCPLDFPGAFPGA开发开发压缩体积压缩体积降低成本降低成本134. 4. 接口方便接口方便 以现代数字技术为基础的系统或设备都是兼以现代数字技术为基础的系统或设备都是兼容的,系统接口方便。容的,系统接口方便。5.5.灵活性好
8、灵活性好 DSPDSP系统系统DSPDSPCPLDCPLDFPGAFPGA可编程可编程可编程可编程可编程可编程改变软件改变软件不同的功能不同的功能硬件更简单硬件更简单DSPDSP系统开发系统开发周期大大缩短周期大大缩短146.6.保密性好保密性好 DSPDSP系统系统DSPDSPCPLDCPLDFPGAFPGA保密保密性好性好保密保密性好性好保密保密性好性好隐蔽内部总线地址变化隐蔽内部总线地址变化做成做成ASICASIC保密保密性能性能几乎几乎无懈无懈可击可击157.7.时分复用时分复用 系统系统n n信道信道1 1信道信道2 2信道信道n n信号的采样信号的采样频率与频率与DSPDSP系统的
9、运算系统的运算速度相比较速度相比较低的场合。低的场合。实时性要求不实时性要求不高的场合。高的场合。 应应用用场场合合系统系统2 2系统系统1 1DSPDSP系统系统16二、二、DSPDSP系统的设计思路系统的设计思路抗混叠滤波器A/DD/ADSP芯片平滑滤波器输输入入输输出出典型的典型的DSPDSP系统系统1718DSPDSP系统设计前:系统设计前:明确设计任务明确设计任务 给出设计任务书给出设计任务书 功能描述准确功能描述准确 功能描述清楚功能描述清楚 描述的方式描述的方式 人工语言人工语言 流程图流程图 算法描述算法描述 将设计任务书转化为量化的技术指标。将设计任务书转化为量化的技术指标。
10、 1.1.总体方案设计总体方案设计 DSP应用应用定义系统性能指标定义系统性能指标选择选择DSP芯片芯片软件编程软件编程硬件设计硬件设计软件调试软件调试硬件调试硬件调试系统集成系统集成系统调试系统调试19技术指标的确定技术指标的确定 系统采样系统采样频率频率 信号信号频率频率 最复杂的算法最复杂的算法所需最大时间所需最大时间 对实时程对实时程度的要求度的要求 片内、外片内、外RAMRAM的容量的容量 数量及程序数量及程序的长短的长短1616、3232位位定点、浮点运算定点、浮点运算 系统所要求的精度系统所要求的精度输入输出输入输出端口要求端口要求计算、控制计算、控制选定选定DSPDSP芯片芯片
11、型号型号 20成本成本供货能力供货能力技术支持技术支持开发系统开发系统体积体积功耗功耗工作环境温度工作环境温度DSPDSPA/DA/DD/AD/ARAMRAM性能指标性能指标其它因素的考虑其它因素的考虑21总体设计总体设计 算法算法仿真仿真高级语言高级语言MatlabMatlab最佳算法最佳算法初步参数初步参数系统初步分工系统初步分工软件软件硬件硬件222. 2. 软件设计阶段软件设计阶段 源程序源程序汇编器汇编汇编器汇编目标文件目标文件链接器连接链接器连接 调试器调试调试器调试代码转换代码转换C C语言语言汇编语言汇编语言混合语言混合语言代码写入代码写入EEPROMEEPROM可执行文件可执
12、行文件软件仿真软件仿真反反复复 233. 3. 硬件设计阶段硬件设计阶段 确定最优硬件实现方案确定最优硬件实现方案画出硬件系统框图画出硬件系统框图性能指标性能指标工期工期成本等成本等硬件实现方案硬件实现方案器件的选型器件的选型DSPDSP芯片、芯片、A/DA/DD/AD/A、内存、电、内存、电源、逻辑控制、源、逻辑控制、通信、人机接口、通信、人机接口、总线等总线等24DSPDSP芯片芯片 根据是用于控制还是计根据是用于控制还是计算目的,选择:算目的,选择:不同的厂商不同的厂商不同系列不同系列不同工作频率不同工作频率不同工作电压不同工作电压不同工作温度不同工作温度采用定点或浮点型芯片采用定点或浮
13、点型芯片 器件的选型原则器件的选型原则25器件的选型原则器件的选型原则A/DA/D变换变换 D/AD/A变换变换根据采样频率、精度根据采样频率、精度:确定确定A/DA/D型号型号是否要求片上自带采样是否要求片上自带采样保持器保持器多路器多路器基准电源等。基准电源等。 根据信号频率、精度根据信号频率、精度: 是否要求基准电源是否要求基准电源多路器多路器输出运放等。输出运放等。 26存储器存储器RAMRAM、EPROMEPROM(或(或EEPROMEEPROM、Flash MemoryFlash Memory),主要考虑:),主要考虑:工作频率工作频率内存容量位长(内存容量位长(8 8位位/16/
14、16位位/32/32位)位)接口方式(串行接口方式(串行/ /并行)、并行)、工作电压(工作电压(5V/3.3V5V/3.3V或其他)。或其他)。器件的选型原则器件的选型原则27逻辑控制逻辑控制先确定所用器件,如先确定所用器件,如PLDPLD、EPLDEPLD或或FPGAFPGA;再根据自己的特长和公司芯片再根据自己的特长和公司芯片的特点决定采用哪家公司的哪一的特点决定采用哪家公司的哪一系列产品;系列产品;最后根据最后根据DSPDSP芯片的频率决定芯片的频率决定芯片的工作频率,并以此来确定芯片的工作频率,并以此来确定使用的芯片。使用的芯片。 器件的选型原则器件的选型原则28通信接口通信接口根据
15、与其他根据与其他系统通信的速系统通信的速率决定采用的率决定采用的通信方式:通信方式:串口串口并口并口总线总线器件的选型原则器件的选型原则29总线选择总线选择根据使用场合、数据根据使用场合、数据传输速率的高低(总线传输速率的高低(总线宽度、频率高低、同步宽度、频率高低、同步方式等)选择:方式等)选择:PCIPCIISAISA现场总线现场总线器件的选型原则器件的选型原则30器件的选型原则器件的选型原则人机接口人机接口电源选取电源选取可以通过单片机构成可以通过单片机构成通信,也可在通信,也可在DSPDSP的基的基础上直接构成。础上直接构成。键盘键盘显示器等显示器等 主要考虑电压的高低主要考虑电压的高
16、低和电压的大小。和电压的大小。电压高低要匹配电压高低要匹配电流容量要足够电流容量要足够31必须清楚了解器件的使用和系统的开发,必须清楚了解器件的使用和系统的开发,对于关键环节要做仿真。对于关键环节要做仿真。 原理图设计原理图设计 PCBPCB板设计板设计 要求要求DSPDSP系统设计人员既要熟悉系统工作系统设计人员既要熟悉系统工作原理,又要清楚布线工艺和系统结构设计。原理,又要清楚布线工艺和系统结构设计。 软、硬件调试软、硬件调试 借助仿真工具或开发工具进行软、硬件仿借助仿真工具或开发工具进行软、硬件仿真调试时,往往要反复多次调试。真调试时,往往要反复多次调试。324. 4. 系统集成系统集成
17、 系统集成:系统集成:是将软硬件结合起来,并是将软硬件结合起来,并组合成样机,在实际系统中运行,进行组合成样机,在实际系统中运行,进行系统测试。系统测试。如果系统测试结果符合设计指标,则如果系统测试结果符合设计指标,则样机设计完毕。样机设计完毕。但由于在软硬件调试阶段调试的环境但由于在软硬件调试阶段调试的环境是模拟的,因此在系统测试时往往会出是模拟的,因此在系统测试时往往会出现一些问题,应找出原因,不断改进。现一些问题,应找出原因,不断改进。 33第二节第二节 DSPDSP芯片的芯片的主要优点与应用领域主要优点与应用领域 一、一、 DSPDSP芯片的优点芯片的优点 1 1哈佛结构哈佛结构2 2
18、多总线结构和多处理单元多总线结构和多处理单元 3. 3. 流水线技术流水线技术4 4特殊的特殊的DSPDSP指令指令5 5指令周期短指令周期短 6. 6. 运算精度高运算精度高 7. 7. 硬件配置强硬件配置强8. 8. 耗电省耗电省 34二、二、DSPDSP芯片的主要应用领域芯片的主要应用领域 据预测,到据预测,到20072007年,年,DSPDSP的市场将达的市场将达到到500500亿美元。目前亿美元。目前DSPDSP的应用主要的应用主要包括如下方面:包括如下方面: (1 1)信号处理)信号处理 如数字滤波、自如数字滤波、自适应滤波、快速傅里叶变换、希尔适应滤波、快速傅里叶变换、希尔伯特变
19、换、小波变换、相关运算、伯特变换、小波变换、相关运算、谱分析、卷积、模式匹配、加窗、谱分析、卷积、模式匹配、加窗、波形产生等。波形产生等。35(2 2)通信)通信 如调制解调器、自适应均如调制解调器、自适应均衡、数据加密、数据压缩、回波抵消衡、数据加密、数据压缩、回波抵消、多路复用、传真、扩频通信、纠错、多路复用、传真、扩频通信、纠错编码、可视电话、个人通信系统、移编码、可视电话、个人通信系统、移动通信、个人数字助手(动通信、个人数字助手(PDAPDA)、)、X.25X.25分组交换开关等。分组交换开关等。(3 3)语音)语音 如语音编码、语音合成、如语音编码、语音合成、语音识别、语音增强、说
20、话人辨认、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音存储、说话人确认、语音邮件、语音存储、扬声器检验、文本转语音等。扬声器检验、文本转语音等。36(4 4)军事)军事 如保密通信、雷达处理、如保密通信、雷达处理、声纳处理、图像处理、射频调制解调声纳处理、图像处理、射频调制解调、导航、导弹制导等。、导航、导弹制导等。(5 5)图形与图像)图形与图像 如二维和三维图形如二维和三维图形处理、图像压缩与传输、图像增强、处理、图像压缩与传输、图像增强、动画与数字地图、机器人视觉、模式动画与数字地图、机器人视觉、模式识别、工作站等。识别、工作站等。(6 6)仪器仪表)仪器仪表 如频谱分析、
21、函数发如频谱分析、函数发生、锁相环、地震处理、数字滤波、生、锁相环、地震处理、数字滤波、模式匹配、暂态分析等。模式匹配、暂态分析等。37(7 7)自动控制)自动控制 如引擎控制、声控、机器人如引擎控制、声控、机器人控制、磁盘控制器、激光打印机控制、电动机控制、磁盘控制器、激光打印机控制、电动机控制等。控制等。(8 8)医疗)医疗 助听器、超声设备、诊断工具、病助听器、超声设备、诊断工具、病人监护、胎儿监控、修复手术等。人监护、胎儿监控、修复手术等。(9 9)家用电器)家用电器 如高保真音响、音乐合成、如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话与电视、电音调控制、玩具与游戏、数字电话
22、与电视、电动工具、固态应答机等。动工具、固态应答机等。(1010)汽车)汽车 如自适应驾驶控制、防滑制动器如自适应驾驶控制、防滑制动器、发动机控制、导航及全球定位、振动分析、发动机控制、导航及全球定位、振动分析、防撞雷达等。防撞雷达等。38DSP芯片的分类 按基础特性分(工作主频和指令类型): 静态DSP和一致性DSP 按数据格式分:定点DSP和浮点DSP 按用途分:通用型和专用型第三节第三节DSPDSP芯片的选择与分类芯片的选择与分类39设计设计DSPDSP应用系统,选择应用系统,选择DSPDSP芯片是非常芯片是非常重要的一个环节。重要的一个环节。只有选定了只有选定了DSPDSP芯片才能进一
23、步设计其外芯片才能进一步设计其外围电路及系统的其它电路。围电路及系统的其它电路。选择原则:选择原则:根据实际应用系统需要、应根据实际应用系统需要、应用场合、目的,用场合、目的,选择满足所需功能、成本低、选择满足所需功能、成本低、耗电小、使用方便、有技术支持、升级方便耗电小、使用方便、有技术支持、升级方便的芯片。的芯片。如何选择DSP芯片401 1TITI公司的公司的DSPDSP芯片芯片 TITI公司常用的公司常用的DSPDSP芯片可以归纳为三大系列:芯片可以归纳为三大系列:(1 1)TMS320C2000TMS320C2000系列系列,称为,称为DSPDSP控制器,集成了控制器,集成了flas
24、hflash存储器、高速存储器、高速A/DA/D转换器以及可靠的转换器以及可靠的CANCAN模块及数模块及数字马达控制的外围模块,适用于三相电动机、变频器字马达控制的外围模块,适用于三相电动机、变频器等高速实时工控产品等需要数字化的控制领域。等高速实时工控产品等需要数字化的控制领域。(2 2)TMS320C5000TMS320C5000系列系列,这是,这是1616位定点位定点DSPDSP。主要。主要用于通信领域,如用于通信领域,如IPIP电话机和电话机和IPIP电话网关、数字式助电话网关、数字式助听器、便携式声音听器、便携式声音/ /数据数据/ /视频产品、调制解调器、手视频产品、调制解调器、
25、手机和移动电话基站、语音服务器、数字无线电、小型机和移动电话基站、语音服务器、数字无线电、小型办公室和家庭办公室的语音和数据系统。办公室和家庭办公室的语音和数据系统。一、主要的一、主要的DSPDSP芯片种类芯片种类41(3 3)TMS320C6000TMS320C6000系列系列DSPDSP 采用新的超采用新的超长指令字结构设计芯片。其中长指令字结构设计芯片。其中20002000年以后推年以后推出的出的C64xC64x,在时钟频率为,在时钟频率为1.1GHz1.1GHz时,可达到时,可达到8800MIPS8800MIPS以上,即每秒执行以上,即每秒执行9090亿条指令。其亿条指令。其主要应用领
26、域为:主要应用领域为:1 1)数字通信)数字通信 完成完成FFTFFT、信道和噪声估、信道和噪声估计、信道纠错、干扰估计和检测等。计、信道纠错、干扰估计和检测等。2 2)图像处理)图像处理 完成图像压缩、图像传输、完成图像压缩、图像传输、模式及光学特性识别、加密模式及光学特性识别、加密/ /解密、图像增解密、图像增强等。强等。422 2ADAD公司的公司的DSPDSP芯片芯片 特点:系统时钟一般不经分频直接使用。特点:系统时钟一般不经分频直接使用。定点定点DSPDSP芯片的程序字长为芯片的程序字长为2424位,数据字位,数据字长为长为1616位。位。一般具有一般具有2 2个串行口、个串行口、1
27、 1个内部定个内部定时器和时器和3 3个以上的外部中断源,此外还提供个以上的外部中断源,此外还提供8 8位位EPROMEPROM程序引导方式。程序引导方式。浮点浮点DSPDSP芯片,程序存储器为芯片,程序存储器为4848位,数据位,数据存储器为存储器为4040位,位,支持支持3232位单精度和位单精度和4040位扩展位扩展精度的精度的IEEEIEEE浮点格式,内部具有浮点格式,内部具有32324848位的位的程序程序CacheCache,有,有3 3至至4 4个外部中断源。个外部中断源。43AD的的BLACKFIN ADSP-21535443 3AT&TAT&T公司的公司的DSPDSP芯片芯片
28、 定点定点DSPDSP芯片芯片的程序和数据字长均为的程序和数据字长均为1616位,位,有有2 2个精度为个精度为3636位的累加器,具有位的累加器,具有1 1个深度为个深度为1515字的指令字的指令CacheCache,片内具有,片内具有2K2K字的程序字的程序ROMROM和和512512字的数据字的数据RAMRAM。 浮点浮点DSPDSP芯片芯片,80/100ns80/100ns的指令周期,片的指令周期,片内具有内具有3 3个个512512字的字的RAMRAM块,或块,或2 2个个512512字的字的RAMRAM块加块加1 1个个4K4K字的字的ROMROM块。可以寻址块。可以寻址4M4M字
29、的外部字的外部存储器。具有存储器。具有4 4个个4040位精度的累加器和位精度的累加器和2222个个通用寄存器。通用寄存器。45LUCENT用用STARCORE开发的新开发的新DSP464 4MotorolaMotorola公司的公司的DSPDSP芯片芯片定点定点DSPDSP芯片芯片程序和数据字长为程序和数据字长为2424位,有位,有2 2个精度为个精度为3636位的累加器。位的累加器。 浮点浮点DSPDSP芯片芯片,累加器精度达,累加器精度达9696位,可位,可支持双精度浮点数,该芯片的指令周期为支持双精度浮点数,该芯片的指令周期为50/60/74ns50/60/74ns。内部具有。内部具有
30、1010个个9696位或位或3232位基于位基于寄存器的累加器。寄存器的累加器。适合于自适应滤波的专用定点适合于自适应滤波的专用定点DSPDSP芯片,芯片,程序字长和数据字长分别为程序字长和数据字长分别为2424位和位和1616位,累位,累加器精度为加器精度为4040位。位。47M MSemiconductor Products Sector1.55 of CORE + DSPCORE + DSPDSP56652 DSP56652 - - DUAL CORE INTEGRATEDDUAL CORE INTEGRATEDCELLULAR BASEBAND PROCESSORCELLULAR BA
31、SEBAND PROCESSORDSPDebugBasebandSerial PortAudioSerial PortSmartcardInterfaceExternalBusInterfaceDSP/MCUInterface1024 x 16PRAM512 x 24Clocks/PLLMCORERISCMCU coreMCORERISCMCU coreCDebugJTAGUARTMUXRAM512 x 32ROM4K x 32KeypadInterfaceGPTTDMATimerData RAM13k x 16Timer/PITWatchdogQSPISerial PortData ROM2
32、0k x 16PROM48K x 2456600DSP core56600DSP coreTarget Application (目目标标应应用用) Digital Communications(数数字字通通信信)Dual Cores (双双核核心心) M56600 16-bit DSP core M200 32-bit RISC coreVoltage (电电源源电电压压) 2.0V +/- 0.2VFrequency (工工作作频频率率) DC-60Mhz DSP DC-20Mhz MCOREPower Dissipation (功功耗耗) 0.9 mW/MHz DSP 0.28 mW/M
33、Hz MCORETemperature (温温度度范范围围) -40 to 85C (Industrial)Packaging (封封装装形形式式) 196-pin PBGATechnology (工工艺艺) 0.32 (1Q98)990407485 5其他公司其他公司NECNEC公司的公司的PD77C25PD77C25、PD77220PD77220定点定点DSPDSP芯片和芯片和PD77240PD77240浮点浮点DSPDSP芯片等。芯片等。LUCENTLUCENT的的DSP1600DSP1600等,等,INTELINTEL也有自己的也有自己的DSPDSP产品。产品。 INTEL&AD 的新
34、的新DSP CORE491 1DSPDSP芯片的运算速度芯片的运算速度 MACMAC时间:时间:一次乘法和一次加法的时间。大部分一次乘法和一次加法的时间。大部分DSPDSP芯片可在一个指令周期内完成一次乘法和一次加芯片可在一个指令周期内完成一次乘法和一次加法操作。法操作。FFTFFT执行时间:执行时间:运行一个运行一个N N点点FFTFFT程序所需时间。由程序所需时间。由于于FFTFFT运算在数字信号处理中很有代表性,因此运算在数字信号处理中很有代表性,因此FFTFFT运运算时间常作为衡量算时间常作为衡量DSPDSP芯片运算能力的一个指标。芯片运算能力的一个指标。MIPSMIPS:每秒执行百万
35、条指令。每秒执行百万条指令。MOPSMOPS:每秒执行百万次操作。每秒执行百万次操作。MFLOPSMFLOPS:每秒执行百万次浮点操作。每秒执行百万次浮点操作。BOPSBOPS:每秒执行十亿次操作。每秒执行十亿次操作。二、选择芯片考虑的因素二、选择芯片考虑的因素502 2DSPDSP芯片的价格芯片的价格 如果采用价格昂贵的如果采用价格昂贵的DSPDSP芯片,即使性能再芯片,即使性能再好,其应用范围也受到一定限制,尤其是民好,其应用范围也受到一定限制,尤其是民用产品。用产品。 3 3DSPDSP芯片的硬件资源芯片的硬件资源 不同不同DSPDSP芯片所提供的硬件资源不同,如片芯片所提供的硬件资源不
36、同,如片内内RAMRAM、ROMROM的数量,外部可扩展的程序和数的数量,外部可扩展的程序和数据空间,总线接口、据空间,总线接口、I/OI/O接口等。接口等。 4 4DSPDSP芯片的运算精度芯片的运算精度 一般的定点一般的定点DSPDSP芯片字长为芯片字长为1616位,少数位,少数2424位。浮点芯片的字长一般为位。浮点芯片的字长一般为3232位,累加器为位,累加器为4040位。位。515 5DSPDSP芯片的开发工具芯片的开发工具 在在DSPDSP系统的开发过程中,如果没有开发系统的开发过程中,如果没有开发工具的支持,要想开发一个复杂的工具的支持,要想开发一个复杂的DSPDSP系统几系统几
37、乎是不可能的。功能强大的开发工具,可使乎是不可能的。功能强大的开发工具,可使开发时间大大缩短。开发时间大大缩短。6 6DSPDSP芯片的功耗芯片的功耗 便携式的便携式的DSPDSP设备、手持设备、野外应用设备、手持设备、野外应用的的DSPDSP设备等对功耗有特殊的要求。设备等对功耗有特殊的要求。7 7其他因素其他因素 除了上述因素外,还要考虑到封装形式、除了上述因素外,还要考虑到封装形式、质量标准、供货情况、生命周期等。质量标准、供货情况、生命周期等。52一般地讲:一般地讲:定点定点DSPDSP芯片的价格较便宜,功耗较低,芯片的价格较便宜,功耗较低,但运算精度稍低。但运算精度稍低。浮点浮点DS
38、PDSP芯片的优点是运算精度高,用芯片的优点是运算精度高,用C C语言编程调试方便,但价格稍高,功耗较大。语言编程调试方便,但价格稍高,功耗较大。DSPDSP应用系统的运算量是确定选用应用系统的运算量是确定选用DSPDSP芯芯片处理能力的基础。运算量小,则可选用处片处理能力的基础。运算量小,则可选用处理能力不是很强的理能力不是很强的DSPDSP芯片,降低系统成本。芯片,降低系统成本。如果单片如果单片DSPDSP芯片达不到要求,则需选用芯片达不到要求,则需选用多个多个DSPDSP芯片并行处理。芯片并行处理。53第四节第四节 DSPDSP芯片技术的发展芯片技术的发展19781978年,年,AMIA
39、MI公司公司生产的生产的S2811S2811;19791979年美国年美国IntelIntel公司公司的商用可编程器件的商用可编程器件29202920;这两种是这两种是DSPDSP芯片的一个主要里程碑。芯片的一个主要里程碑。特点:没有现代特点:没有现代DSPDSP芯片所必须有的单周期乘芯片所必须有的单周期乘法器。法器。19801980年,日本年,日本NECNEC公司公司推出推出PD7720PD7720。特点:是第一片具有乘法器的商用特点:是第一片具有乘法器的商用DSPDSP芯片。芯片。5419821982年,美国年,美国德州仪器公司德州仪器公司(Texas Texas InstrumentsI
40、nstrumentsTITI)推出第一代)推出第一代DSP DSP TMS320010TMS320010及其系列产品,目前已发展到及其系列产品,目前已发展到第六代。第六代。TITI公司的系列公司的系列DSPDSP产品已经成为了当今产品已经成为了当今世界最有影响的世界最有影响的DSPDSP芯片,其芯片,其DSPDSP市场占有市场占有量占全世界份额的近量占全世界份额的近50%50%,成为世界上最,成为世界上最大的大的DSPDSP芯片供应商。芯片供应商。5519821982年,年,日本东芝公司日本东芝公司推出浮点推出浮点DSPDSP芯片。芯片。 19841984年,年,AT&TAT&T公司公司推出推
41、出DSP32DSP32,是较早的,是较早的具备较高性能的浮点具备较高性能的浮点DSPDSP芯片。芯片。19861986年,年,MotorolaMotorola公司公司推出了定点推出了定点DSP DSP MC56001MC56001。19901990年,推出了与年,推出了与IEEEIEEE浮点格式浮点格式兼容的浮点兼容的浮点DSPDSP芯片芯片MC96002MC96002。美国美国模拟器件公司模拟器件公司(Analog DevicesAnalog DevicesADAD)相继推出了定点相继推出了定点DSPDSP芯片芯片ADSP21xxADSP21xx系列,浮系列,浮点点DSPDSP芯片芯片ADS
42、P210 xxADSP210 xx系列。系列。562020多年来,多年来,DSPDSP芯片得到了迅猛芯片得到了迅猛发展,主要体现在如下方面:发展,主要体现在如下方面:1. 1. 在生产工艺上在生产工艺上 采用采用1 1m m以下的以下的CMOSCMOS制造工艺技制造工艺技术和砷化镓集成电路制造技术,使集成度更高,功术和砷化镓集成电路制造技术,使集成度更高,功耗更低,从而使高频、高速的耗更低,从而使高频、高速的DSPDSP处理器得到更大处理器得到更大的发展。的发展。2.2.基本结构上基本结构上 以以RISCRISC结构、单片并行计算机结构结构、单片并行计算机结构为主导,脉冲阵列和数据流阵列也将成
43、为并行处理为主导,脉冲阵列和数据流阵列也将成为并行处理器的主要体系结构。设计、测试简单,易模块化,器的主要体系结构。设计、测试简单,易模块化,易于实现流水线操作和多处理器结构。易于实现流水线操作和多处理器结构。 573. 3. 模拟模拟/ /数字混合上数字混合上 集滤波、集滤波、A/DA/D、D/AD/A及及DSPDSP处理于一体,将成为处理于一体,将成为DSPDSP发展的主要方向,发展的主要方向,是是DSPDSP厂商的主要增长点。厂商的主要增长点。4. DSP4. DSP技术与技术与ASICASIC技术融合上技术融合上 在在DSPDSP芯片中芯片中嵌入嵌入ASICASIC模块,进一步扩大模块
44、,进一步扩大DSPDSP逻辑控制功能。逻辑控制功能。5. 5. 代码兼容性上代码兼容性上 将推出更新的、更强大的将推出更新的、更强大的优化优化C C编译器来适应不同型号的编译器来适应不同型号的DSPDSP代码生成,代码生成,各种各种DSPDSP的开发、加速、并行处理插件板也将的开发、加速、并行处理插件板也将大量涌现。大量涌现。58第五节第五节 DSPDSP应用系统的开发工具应用系统的开发工具 开发工具的好坏对代码的长度、代码的执开发工具的好坏对代码的长度、代码的执行速度起着关键的作用,开发工具的功能行速度起着关键的作用,开发工具的功能是否齐全,使用是否方便,在很大程度上是否齐全,使用是否方便,
45、在很大程度上将影响将影响DSPDSP系统的开发周期以及产品上市系统的开发周期以及产品上市时间。时间。由于不同厂商、不同系列的由于不同厂商、不同系列的DSPDSP都有自己都有自己的开发工具,因此开发工具的选择也是重的开发工具,因此开发工具的选择也是重要的一环。要的一环。59代码产生工具代码产生工具 对用户开发的高级语言或汇对用户开发的高级语言或汇编语言源代码进行编译,生成可以在目标编语言源代码进行编译,生成可以在目标DSPDSP上运行的可执行代码。上运行的可执行代码。代码调试工具代码调试工具 根据调试者的命令观察根据调试者的命令观察DSPDSP的的状态,控制状态,控制DSPDSP代码的执行,进行
46、结果显示,代码的执行,进行结果显示,对用户的代码进行调试或性能测试。对用户的代码进行调试或性能测试。DSPDSP的开发工具的开发工具601. 1. 代码产生工具代码产生工具 (1 1)TMS320TMS320优化优化C C编译器编译器(Optimizing ANSI Optimizing ANSI C CompilersC Compilers) C C编译器的输入是编译器的输入是C C语言源代语言源代码,输出为码,输出为TMS320TMS320汇编代码,它用于把符合汇编代码,它用于把符合ANSIANSI标准的标准的C C代码转换为目标代码转换为目标DSPDSP汇编代码,汇编代码,使用户可以用使
47、用户可以用C C语言编写代码。并且,配套的语言编写代码。并且,配套的代码调试工具支持代码调试工具支持C C代码的源码调试。代码的源码调试。TITI公司公司的编译器支持除的编译器支持除TMS320C1xTMS320C1x外的所有外的所有DSPDSP产品。产品。TITI公司的开发工具公司的开发工具61(2 2)TMS320TMS320汇编器、连接器(汇编器、连接器(AssemblerAssembler、LinkerLinker) 汇编器和连接器用于把汇编代码转汇编器和连接器用于把汇编代码转换为可在目标换为可在目标DSPDSP上运行的可执行目标代码。上运行的可执行目标代码。支持宏汇编和目标库,产生的
48、目标代码可重新支持宏汇编和目标库,产生的目标代码可重新定位,在程序地址空间中的具体地址可变。定位,在程序地址空间中的具体地址可变。其中汇编器用于把汇编语言文件转换成机器语其中汇编器用于把汇编语言文件转换成机器语言的目标文件。连接器用于把多个目标文件连言的目标文件。连接器用于把多个目标文件连接成可执行的目标代码。在连接过程中,连接接成可执行的目标代码。在连接过程中,连接器完成目标代码的定位、解决符号的外部引用器完成目标代码的定位、解决符号的外部引用等。等。622 2代码调试工具代码调试工具(1 1)TMS320TMS320源码调试器(源码调试器(C Source C Source Debugge
49、rDebugger) 它在它在PCPC机或工作站上运行,是开机或工作站上运行,是开发环境中主机与软件仿真器、软件评价模块或发环境中主机与软件仿真器、软件评价模块或硬件仿真器之间的标准接口。它与这些调试器硬件仿真器之间的标准接口。它与这些调试器一起配合使用,完成对用户程序的调试。一起配合使用,完成对用户程序的调试。程序调试可以在程序调试可以在C C、汇编或、汇编或C/C/汇编混合模汇编混合模式下进行调试,调试器具有条件执行、单步执式下进行调试,调试器具有条件执行、单步执行、断点等基本功能,并支持多个行、断点等基本功能,并支持多个DSPDSP。63( 2 2 ) T M S 3 2 0T M S
50、3 2 0 软 件 仿 真 器 (软 件 仿 真 器 ( T M S 3 2 0 T M S 3 2 0 Software SimulatorsSoftware Simulators) TMS320TMS320软件仿真器是一个软件程序,它在软件仿真器是一个软件程序,它在PCPC机或工作站上运行,通过模拟机或工作站上运行,通过模拟DSPDSP的运行验的运行验证和调试证和调试TMS320TMS320程序。程序。采用软件仿真器,编程者可以在没有目标采用软件仿真器,编程者可以在没有目标硬件的情况下进行软件开发。硬件的情况下进行软件开发。在软件仿真器上调试用户软件时,可以用在软件仿真器上调试用户软件时,