1. 首页
  2. 文档大全

第15章 实时处理

上传者:8**** 2022-05-27 22:36:40上传 PPT文件 910.50KB
第15章 实时处理_第1页 第15章 实时处理_第2页 第15章 实时处理_第3页

《第15章 实时处理》由会员分享,可在线阅读,更多相关《第15章 实时处理(68页珍藏版)》请在文档大全上搜索。

1、第第1515章章 语音处理的实时实现语音处理的实时实现15.1 概述概述115.2 可编程可编程DSP芯片应用基础芯片应用基础15.3 基于基于DSP的语音处理系统的语音处理系统315.4 DSP CCS集成开发环境集成开发环境415.5 基于基于TMS320C5409的实时的实时 语音识别系统语音识别系统5215.1 概述概述 在实际的语音处理应用中,语音处理系在实际的语音处理应用中,语音处理系统需要按照实时方式进行工作。统需要按照实时方式进行工作。 语音信号处理的实时实现方式一般有语音信号处理的实时实现方式一般有以下几种:以下几种: (1)在通用计算机(微型机、小型机)在通用计算机(微型机

2、、小型机或工作站)中插上专用的数字信号处理板或工作站)中插上专用的数字信号处理板,称为主从系统方式,适用于实验室环境,称为主从系统方式,适用于实验室环境下进行语音信号处理技术的研究;下进行语音信号处理技术的研究; (2)用通用的单片机实现,这种方法可用于)用通用的单片机实现,这种方法可用于一些不太复杂的语音信号处理;一些不太复杂的语音信号处理; (3)由通用或专用)由通用或专用DSP芯片以及其他辅助芯芯片以及其他辅助芯片构成一个独立的工作系统,也就是脱机式系统片构成一个独立的工作系统,也就是脱机式系统方式;方式; (4)用嵌入式系统构成独立的语音信号处理)用嵌入式系统构成独立的语音信号处理系统

3、,可用于便携式语音处理实时系统,近年来系统,可用于便携式语音处理实时系统,近年来嵌入式系统和嵌入式系统和DSP相结合的复合系统已经进入实相结合的复合系统已经进入实用阶段。用阶段。 本章简要介绍可编程本章简要介绍可编程DSP芯片的基本概念、芯片的基本概念、基本结构和开发工具,对基于基本结构和开发工具,对基于DSP芯片的实时语芯片的实时语音处理系统的构成作了介绍,最后介绍了一个基音处理系统的构成作了介绍,最后介绍了一个基于通用于通用DSP芯片的实时语音处理系统的开发。芯片的实时语音处理系统的开发。15.2可编程可编程DSP芯片应用基础芯片应用基础15.2.1 DSP的发展历程的发展历程 DSP包含

4、两个相关的概念:包含两个相关的概念: 数字信号处理(数字信号处理(Digital Signal Processing) 数字信号处理器(数字信号处理器(Digital Signal Processor) 后者是在模拟信号变换成数字信号以后进行后者是在模拟信号变换成数字信号以后进行高速实时处理的专用信号处理器,在本章内容中,高速实时处理的专用信号处理器,在本章内容中,DSP代表后者。代表后者。 1982年世界上诞生了首枚年世界上诞生了首枚DSP芯片(芯片(1978年年AMI公司发布的公司发布的S2811)。这种)。这种DSP器件采用微米器件采用微米工艺工艺NMOS技术制作,虽功耗和尺寸稍大,但运

5、技术制作,虽功耗和尺寸稍大,但运算速度却比算速度却比MPU(微处理器)快了几十倍,在语(微处理器)快了几十倍,在语音合成和编码解码器中得到了广泛应用。随着音合成和编码解码器中得到了广泛应用。随着CMOS技术的进步与发展,第二代基于技术的进步与发展,第二代基于CMOS工工艺的艺的DSP芯片应运而生,其存储容量和运算速度芯片应运而生,其存储容量和运算速度成倍提高,成为语音处理、图像硬件处理技术的成倍提高,成为语音处理、图像硬件处理技术的基础。基础。80年代后期,第三代年代后期,第三代DSP芯片问世,运算芯片问世,运算速度进一步提高,其应用范围逐步扩大到通信、速度进一步提高,其应用范围逐步扩大到通信

6、、计算机领域。计算机领域。 90年代年代DSP发展最快,相继出现了第四代和第发展最快,相继出现了第四代和第五代五代DSP器件。第五代产品与第四代相比,系统集器件。第五代产品与第四代相比,系统集成度更高。这种集成度极高的成度更高。这种集成度极高的DSP芯片不仅在通信、芯片不仅在通信、计算机领域大显身手,而且逐渐渗透到与信号处理、计算机领域大显身手,而且逐渐渗透到与信号处理、自动控制等相关的应用领域。近些年,随着集成电自动控制等相关的应用领域。近些年,随着集成电路技术的进一步发展,嵌入式微处理器的应用也越路技术的进一步发展,嵌入式微处理器的应用也越来越广泛。来越广泛。15.2.2 DSP芯片的特点

7、芯片的特点 DSP芯片主要特点:芯片主要特点: 1. DSP具有多总线结构,程序空间与数据存具有多总线结构,程序空间与数据存储空间分开,各有独立的地址总线和数据总线,储空间分开,各有独立的地址总线和数据总线,取指令和读数据可以同时进行;取指令和读数据可以同时进行; 2. DSP具有独立的硬件乘法器,乘法指令可具有独立的硬件乘法器,乘法指令可在单周期内完成,使卷积、数字滤波、在单周期内完成,使卷积、数字滤波、FFT、相、相关运算、矩阵运算等算法中的大量乘法运算速度关运算、矩阵运算等算法中的大量乘法运算速度加快;加快; 3. 采用流水作业,每条指令的执行划分为取采用流水作业,每条指令的执行划分为取

8、指令、译码、取数、执行等若干步骤,由片内多指令、译码、取数、执行等若干步骤,由片内多个功能单元分别完成,相当于多条指令并行执行,个功能单元分别完成,相当于多条指令并行执行,大大提高了运算速度;大大提高了运算速度; 4. DSP具有零消耗循环控制的专门硬件,零具有零消耗循环控制的专门硬件,零消耗循环是指处理器不用花时间测试循环计数器消耗循环是指处理器不用花时间测试循环计数器的值就能执行一组指令的循环,硬件完成循环跳的值就能执行一组指令的循环,硬件完成循环跳转和循环计数器的衰减;转和循环计数器的衰减; 5. DSP经常包含有专门的地址产生器,它能经常包含有专门的地址产生器,它能产生信号处理算法需要

9、的特殊寻址,如循环寻址产生信号处理算法需要的特殊寻址,如循环寻址和位翻转寻址,循环寻址对应于流水和位翻转寻址,循环寻址对应于流水FIR滤波算滤波算法,位翻转寻址对应于法,位翻转寻址对应于FFT算法;算法; 6. DSP片内具有快速片内具有快速RAM,通常可通过独,通常可通过独立的数据总线在两块中同时访问;立的数据总线在两块中同时访问; 7. 快速的中断处理和硬件快速的中断处理和硬件I/O支持。支持。15.2.3 DSP芯片的分类芯片的分类 1. 按基础特性分按基础特性分 2. 按数据格式分按数据格式分 3. 按用途分按用途分 15.2.4 DSP芯片的基本结构芯片的基本结构 在数字信号处理的运

10、算中,常见的相关函数计在数字信号处理的运算中,常见的相关函数计算、卷积运算、信号滤波和各种变换算法大多可以算、卷积运算、信号滤波和各种变换算法大多可以归结为归结为 的乘加运算,因此的乘加运算,因此 的形的形式出现最为频繁。为了快速地实现数字信号处理运式出现最为频繁。为了快速地实现数字信号处理运算,算,DSP芯片一般都采用特殊的软硬件结构。芯片一般都采用特殊的软硬件结构。 DSP芯片的基本硬件结构包括:哈佛结构、流芯片的基本硬件结构包括:哈佛结构、流水线操作、专用的硬件乘法器、特殊的水线操作、专用的硬件乘法器、特殊的DSP指令以指令以及快速的指令周期。及快速的指令周期。 1. 哈佛结构哈佛结构

11、2. 流水线操作流水线操作 3. 专用的硬件乘法器专用的硬件乘法器 4. 特殊的特殊的DSP指令指令 5. 快速的指令周期快速的指令周期 在种类繁多的在种类繁多的DSP芯片中,最成功的是美国芯片中,最成功的是美国德克萨斯仪器公司(德克萨斯仪器公司(TI)推出的一系列)推出的一系列DSPDSP产品。产品。 1.TMS320C2000系列系列 TMS320C2000系列包括系列包括TMS320C20 x、TMS320C24x、TMS320C28x。 TMS320C20 x系列系列DSP芯片具有如下特点:芯片具有如下特点: (1) 处理能力强。最高运算能力处理能力强。最高运算能力40MIPS。 (2

12、) 片内具有较大的闪存。不仅降低成本,减片内具有较大的闪存。不仅降低成本,减小体积,同时系统升级方便。小体积,同时系统升级方便。15.2.5 常用常用DSP芯片简介芯片简介 (3) 功耗低。如使用功耗低。如使用DSP核的省电模式可进一核的省电模式可进一步降低功耗。步降低功耗。 (4) 资源配置灵活。资源配置灵活。 TMS320C24x系列针对数字控制系统应用作系列针对数字控制系统应用作了优化设计。了优化设计。 2.TMS320C3x系列系列 TMS320C3x是是TITI的第三代产品,也是第一代的第三代产品,也是第一代浮点浮点DSP芯片。该系列产品有芯片。该系列产品有TMS320C30、TMS

13、320C31、TMS320C32、TMS320C33四种。四种。 TMS320C31是是TMS320C30的简化和改进型,的简化和改进型,它在它在TMS320C30的基础上减去了一般用户不常用的基础上减去了一般用户不常用的一些资源,降低了成本,是一个性价比较高的的一些资源,降低了成本,是一个性价比较高的浮点处理器,在国内已得到了较广泛的应用。浮点处理器,在国内已得到了较广泛的应用。TMS320C33是是TMS320C3x系列中性能最高,功系列中性能最高,功耗最低的一种芯片,采用耗最低的一种芯片,采用3.3V电压(核心电压电压(核心电压1.8V),峰值功耗小于),峰值功耗小于200mW。 3.T

14、MS320C5000系列系列 TMS320C5000系列系列DSP包括包括TMS320C54x和和TMS320C55x两大类。这两类芯片软件完全兼容,两大类。这两类芯片软件完全兼容,所不同的是所不同的是TMS320C55x具有更低的功耗和更高具有更低的功耗和更高的性能。的性能。 TMS320C54系列是为实现低功耗、高性能而系列是为实现低功耗、高性能而专门设计的定点专门设计的定点DSP芯片,主要特点:芯片,主要特点: (1) 运算速度快。运算速度为运算速度快。运算速度为30532MIPS。 (2) 优化的优化的CPU结构。可高效的实现无线通信系结构。可高效的实现无线通信系 统的各种功能。统的各

15、种功能。 (3) 低功耗方式。可以节省低功耗方式。可以节省DSP的功耗,特别适的功耗,特别适 用于无线通信设备。用于无线通信设备。 (4) 智能外围设备。智能外围设备。 TMS320C55x是目前功耗最低的,与是目前功耗最低的,与TMS320C54x兼容且性能比之提高了兼容且性能比之提高了5倍,功耗仅倍,功耗仅为其为其1/6。TMS320C55x采用变指令长度提高代码采用变指令长度提高代码效 率 , 增 强 并 行 机 制 提 高 循 环 效 率 。效 率 , 增 强 并 行 机 制 提 高 循 环 效 率 。TMS320C55x以极低的功耗和优越的性能可以在以极低的功耗和优越的性能可以在通信

16、、消费电子等很多领域得到广泛应用。通信、消费电子等很多领域得到广泛应用。 4. TMS320C6000系列系列 TMS320C62x系列是系列是1997年开发的定点年开发的定点DSP芯片,特点是:芯片,特点是:(1) 运行速度快。指令周期最小为运行速度快。指令周期最小为3.3ns,运算能力,运算能力 2400MIPS。(2) 内部集成了高度正交的内部集成了高度正交的2个乘法器和个乘法器和6个算术逻个算术逻 辑单元,单指令周期最大支持辑单元,单指令周期最大支持8条条32位的指令。位的指令。(3) 指令集不同。一个时钟周期内可并行执行多条指令集不同。一个时钟周期内可并行执行多条指令。指令。 (4)

17、 大容量的片内存储器和大范围的寻址能力。大容量的片内存储器和大范围的寻址能力。 (5) 智能外围设备。智能外围设备。 (6) 低廉的使用成本。低廉的使用成本。 TMS320C55x是 目 前 功 耗 最 低 的 , 与是 目 前 功 耗 最 低 的 , 与TMS320C54x兼容且性能比之提高了兼容且性能比之提高了5倍,功耗仅倍,功耗仅为其为其1/6。TMS320C55x采用变指令长度提高代码采用变指令长度提高代码效 率 , 增 强 并 行 机 制 提 高 循 环 效 率 。效 率 , 增 强 并 行 机 制 提 高 循 环 效 率 。TMS320C55x以极低的功耗和优越的性能可以在以极低的

18、功耗和优越的性能可以在通信、消费电子等很多领域得到广泛应用。通信、消费电子等很多领域得到广泛应用。 TMS320C64x是是TMS320C6000系列系列DSP中的中的最新的高性能定点芯片,其软件与最新的高性能定点芯片,其软件与TMS320C62x完全兼容。完全兼容。TMS320C64x采用采用VelociTI.2结构的结构的DSP核,增强的并行机制可以在单周期内完成核,增强的并行机制可以在单周期内完成4个个16xl6位或位或8个个8x8位乘累加操作。与位乘累加操作。与TMS320C62x相比,相比,TMS320C64x的总体性能提高了的总体性能提高了10倍。倍。 TMS320C67x是继定点

19、是继定点DSP芯片芯片TMS320C62x系列后开发的一种新型浮点系列后开发的一种新型浮点DSP芯片,特点是:芯片,特点是: (1) 运行速度快。指令周期运行速度快。指令周期6ns,峰值运算能力,峰值运算能力 1336MIPS,单精度运算可达,单精度运算可达1G FLOPS, 双精度运算可达双精度运算可达250M FLOPS。 (2) 硬件支持硬件支持IEEE格式的格式的32bit单精度和单精度和64bit 双精度浮点操作。双精度浮点操作。 (3) 集成了集成了32x32比特的乘法器,其结果可为比特的乘法器,其结果可为 32bit或或64bit。 (4) TMS320C67x的指令集在的指令集

20、在TMS320C62x的指的指 令集基础上增加了浮点执行能力,可以看作令集基础上增加了浮点执行能力,可以看作 是是TMS320C62x指令集的超集。指令集的超集。 TMS320C62x指令可在指令可在TMS320C67x上运上运行,而无需任何改变。行,而无需任何改变。 TMS320C67x系列适用于对运算能力和存系列适用于对运算能力和存储量有高要求的应用场合。储量有高要求的应用场合。TMS320C64x是是TMS320C6000系列中最新的高性能定点芯片,系列中最新的高性能定点芯片,软件与软件与TMS320C62x完全兼容。完全兼容。 DSP芯片最初主要应用在数字信号处理领域芯片最初主要应用在

21、数字信号处理领域。随着。随着DSP技术的不断发展,其应用领域逐步扩展技术的不断发展,其应用领域逐步扩展到自动化、机械电子等领域。目前,其应用范围到自动化、机械电子等领域。目前,其应用范围已经越来越广。已经越来越广。 1作为通用数字信号处理器,可用于数字滤作为通用数字信号处理器,可用于数字滤波、卷积、相关、波、卷积、相关、FFT、希尔伯特变换、自适应滤、希尔伯特变换、自适应滤波、窗函数产生、波形发生等。波、窗函数产生、波形发生等。 2在通信设备中,可用于高速调制解调器、在通信设备中,可用于高速调制解调器、编译码器、自适应均衡器、传真、程控交换机编译码器、自适应均衡器、传真、程控交换机、蜂房移动电

22、话、数字基站、数字留言机、蜂房移动电话、数字基站、数字留言机、15.2.6 DSP芯片的应用芯片的应用 回音消除、噪声抑制、电视会议、保密通信、卫回音消除、噪声抑制、电视会议、保密通信、卫星通信、星通信、TDMAFDMACDMA等各种通信制等各种通信制式。随着互联网络的迅猛发展,式。随着互联网络的迅猛发展,DSP又在网络管又在网络管理理服务、信息转发、服务、信息转发、IP电话等新领域扮演着重电话等新领域扮演着重要角色,而软件无线电的提出和发展进一步增强要角色,而软件无线电的提出和发展进一步增强了了DSP在无线通信领域的作用。在无线通信领域的作用。 3在语音处理领域,可用于语音编码、语在语音处理

23、领域,可用于语音编码、语音合成、语音识别、语音增强、说话人辨认、说音合成、语音识别、语音增强、说话人辨认、说话人确认、语音储存等。话人确认、语音储存等。 4在图形图像处理领域,可用于三维图像变在图形图像处理领域,可用于三维图像变换、模式识别、图像增强、动画、电子出版、电子地换、模式识别、图像增强、动画、电子出版、电子地图等。图等。 5在自动控制领域,可用于磁盘、光盘、打印在自动控制领域,可用于磁盘、光盘、打印机伺服控制、发动机控制、电机驱动等。机伺服控制、发动机控制、电机驱动等。 6在仪器仪表中,可用于测量数据谱分析、自在仪器仪表中,可用于测量数据谱分析、自动监测及分析、暂态分析、勘探、模拟试

24、验。动监测及分析、暂态分析、勘探、模拟试验。 7在医学电子领域,可用于助听器、在医学电子领域,可用于助听器、CT扫描、扫描、超声波、心脑电图、核磁共振、医疗监护等。超声波、心脑电图、核磁共振、医疗监护等。 8在军事与尖端科技领域,可用于雷达和在军事与尖端科技领域,可用于雷达和声呐信号处理、雷达成像、自适应波束合成、阵声呐信号处理、雷达成像、自适应波束合成、阵列天线信号处理、导弹制导、火控系统、战场列天线信号处理、导弹制导、火控系统、战场C3I系统、导航、全球定位系统、导航、全球定位GPS、目标搜索跟踪、目标搜索跟踪、尖端武器试验、航空航天试验、宇宙飞船、侦、尖端武器试验、航空航天试验、宇宙飞船

25、、侦察卫星。察卫星。 9在计算机与工作站,可用于阵列处理机在计算机与工作站,可用于阵列处理机、计算加速卡、图形加速卡、多媒体计算机。、计算加速卡、图形加速卡、多媒体计算机。 10在消费电子领域,可用于数字电视、高在消费电子领域,可用于数字电视、高清晰度电视、图像清晰度电视、图像/ /声音压缩解压器声音压缩解压器、 VCD/DVD/CD播放机、电子玩具、游戏机、数字播放机、电子玩具、游戏机、数字留言留言/ /应答机、汽车电子装置、音响合成、住宅电应答机、汽车电子装置、音响合成、住宅电子安全系统、家电电脑控制装置。子安全系统、家电电脑控制装置。15.3 基于基于DSP的语音处理系统的语音处理系统1

26、5.3.1 基于基于DSP的实时语音处理系统的的实时语音处理系统的构成构成 一个基于一个基于DSP芯片的实时语音处理系统如图示:芯片的实时语音处理系统如图示:模/数转 换DSP芯片数/模转 换平滑滤波语音输入语音输出图15.1 实时语音处理系统抗混叠滤 波 图图15.3中给出的基于中给出的基于DSP的语音处理系统模的语音处理系统模型只是一个典型模型,并不是所有的语音处理系型只是一个典型模型,并不是所有的语音处理系统都必须具有模型中的所有部件。比如语音识别统都必须具有模型中的所有部件。比如语音识别系统在输出端并不是连续的语音波形而是识别结系统在输出端并不是连续的语音波形而是识别结果,如数字、文字

27、等,因此可以不必进行数模转果,如数字、文字等,因此可以不必进行数模转换。换。15.3.2 基于基于DSP的语音处理系统的的语音处理系统的特点特点 DSP语音处理系统以数字信号处理为基础,语音处理系统以数字信号处理为基础,因此具有数字处理的全部优点。因此具有数字处理的全部优点。 1. 接口简单方便。接口简单方便。 2. 编程方便,容易实现复杂的算法。编程方便,容易实现复杂的算法。 3. 精度高,稳定性好。精度高,稳定性好。 4. 集成方便。集成方便。 15.3.3 基于基于DSP的语音处理系统的的语音处理系统的设计过程设计过程基于基于DSP的语音处理系统设计的一般过程如下:的语音处理系统设计的一

28、般过程如下:定义系统性能指标选择DSP芯片系统集成系统调试和测试软件编程软件调试硬件设计 硬件 调试图15.2 基于DSP的语音处理系统的设计流程 设计系统之前,必须根据语音处理系统要达到设计系统之前,必须根据语音处理系统要达到的目标和要求确定系统的各项性能指标。按照语音的目标和要求确定系统的各项性能指标。按照语音处理的要求,系统要达到的目标通常可用数据流程处理的要求,系统要达到的目标通常可用数据流程图、数学运算序列、正式的符号或自然语言来加以图、数学运算序列、正式的符号或自然语言来加以详细描述。详细描述。 在基于在基于DSP的语音处理系统中,对语音信号的的语音处理系统中,对语音信号的处理方法

29、也就是语音信号处理算法。算法模拟输入处理方法也就是语音信号处理算法。算法模拟输入的数据根据不同的情况可以是经过采样的实际信号,的数据根据不同的情况可以是经过采样的实际信号,也可以是假设的数据。也可以是假设的数据。 实时实时DSP语音处理系统的设计包括硬件设计语音处理系统的设计包括硬件设计和软件设计两个并行的部分。硬件设计首先要根和软件设计两个并行的部分。硬件设计首先要根据运算量的大小、运算精度的要求、系统成本限据运算量的大小、运算精度的要求、系统成本限制以及体积、功耗等要求选择合适的制以及体积、功耗等要求选择合适的DSP芯片,然芯片,然后根据系统要求和选好的后根据系统要求和选好的DSP芯片设计

30、外围电路及芯片设计外围电路及其它电路。软件设计和编程主要根据系统要求和其它电路。软件设计和编程主要根据系统要求和所选的所选的DSP芯片编写相应的芯片编写相应的DSP汇编程序或汇编程序或C/C+程序。在实际应用系统中常采用高级语言和汇编程序。在实际应用系统中常采用高级语言和汇编混合编程的方法。混合编程的方法。 DSP硬件和软件设计完成后,就需要进行硬件硬件和软件设计完成后,就需要进行硬件和软件的调试。软件的调试一般借助于和软件的调试。软件的调试一般借助于DSP开发工开发工具,如软件模拟器、具,如软件模拟器、DSP开发系统或仿真器等。调开发系统或仿真器等。调试试DSP算法时一般采用将实时结果与模拟

31、结果进行算法时一般采用将实时结果与模拟结果进行比较的方法。应用系统的其他软件可以根据实际情比较的方法。应用系统的其他软件可以根据实际情况进行调试。硬件调试一般采用硬件仿真器进行调况进行调试。硬件调试一般采用硬件仿真器进行调试,如果没有相应的硬件仿真器,且硬件系统不是试,如果没有相应的硬件仿真器,且硬件系统不是十分复杂,也可以借助于一般的工具进行调试。十分复杂,也可以借助于一般的工具进行调试。 系统的软件和硬件调试完成后,就可以将软件系统的软件和硬件调试完成后,就可以将软件脱离开发系统而直接在应用系统上运行。脱离开发系统而直接在应用系统上运行。15.4 DSP CCS集成开发环境集成开发环境15

32、.4.1 DSP的开发工具的开发工具 可编程可编程DSP芯片的开发需要一整套完整的软硬芯片的开发需要一整套完整的软硬件开发工具。这些开发工具一般可以被分为代码生件开发工具。这些开发工具一般可以被分为代码生成工具和代码调试工具。成工具和代码调试工具。 代码生成工具的作用是将用代码生成工具的作用是将用C或汇编语言编写或汇编语言编写的程序转化为可执行的的程序转化为可执行的DSP程序。程序。TI公司提供的代公司提供的代码生成工具主要包括:码生成工具主要包括:C编译器、汇编器、链接器、编译器、汇编器、链接器、文件格式转换程序、库存生成程序、文档管理程序、文件格式转换程序、库存生成程序、文档管理程序、库存

33、文件头文件等。库存文件头文件等。 代码调试工具的作用是对代码调试工具的作用是对DSP程序进行调试程序进行调试以达到预定的设计目标。代码调试工具主要包括以达到预定的设计目标。代码调试工具主要包括C/汇编语言源码调试器、初学者工具汇编语言源码调试器、初学者工具DSK、软件、软件模拟器、评价模块模拟器、评价模块EVM、软件开发系统、软件开发系统SWDS、软件仿真器等。软件仿真器等。 CCS是是TI推出的集代码生成工具和代码调试推出的集代码生成工具和代码调试工具于一体的工具于一体的DSP集成开发环境,结合仿真器等集成开发环境,结合仿真器等硬件调试工具,就可以进行几乎所有的硬件调试工具,就可以进行几乎所

34、有的DSP软硬软硬件测试。件测试。 1999年年TI公司推出了集成开发环境公司推出了集成开发环境CCS IDE (Code Composer Studio Integrated Development Environment)。它支持。它支持TMS320C2000、C5000和和C6000系列。系列。 CCS是一个开放和具有强大集成能力的集成开是一个开放和具有强大集成能力的集成开发环境,该套开发环境集成代码生成工具和代码调发环境,该套开发环境集成代码生成工具和代码调试工具为一体,能完成试工具为一体,能完成DSP系统开发过程的各个环系统开发过程的各个环节。节。15.4.2 CCS概述概述 1.

35、工程管理功能工程管理功能 CCS对一个对一个DSP P应用系统的文件管理是通过工应用系统的文件管理是通过工程方式进行的。程方式进行的。 (1) 向工程中添加文件,向工程中添加文件,CCS会根据文件的类型会根据文件的类型将其自动分配到相应的文件夹。将其自动分配到相应的文件夹。 (2) 不用添加头文件,不用添加头文件,CCS会自动搜索源文件用会自动搜索源文件用到的头文件,并添加到工程中。到的头文件,并添加到工程中。 2.源代码编辑功能源代码编辑功能 (1) 对对C语言和汇编语言源代码进行编辑。语言和汇编语言源代码进行编辑。 (2) 可在一个或多个文件中查找、替换、快速可在一个或多个文件中查找、替换

36、、快速搜寻特定字符串。搜寻特定字符串。 (3) 可以根据用户习惯定制不同的快捷方式。可以根据用户习惯定制不同的快捷方式。 (4) 对关键字、注释、字符串等以不同的颜色对关键字、注释、字符串等以不同的颜色高亮显示。高亮显示。 (5) 选定某一指令后,按下选定某一指令后,按下F1键,可以得到指键,可以得到指令帮助。令帮助。 3. 代码生成功能代码生成功能 CCS对某一应用系统的生成,实际上就是实现对某一应用系统的生成,实际上就是实现对这一工程的编译、汇编和链接。对这一工程的编译、汇编和链接。 (1) 通过对话方式设置通过对话方式设置Build命令选项。命令选项。 (2) C编译器将编译器将C C源

37、代码编译为汇编语言代码。源代码编译为汇编语言代码。 (3) 扫描文件,为整个工程创建依赖关系树。扫描文件,为整个工程创建依赖关系树。 (4) 运行支持库。运行支持库。 4. 代码调试功能代码调试功能 (1) 提供完善的程序运行控制的功能,如单步执提供完善的程序运行控制的功能,如单步执行、条件执行和端点设置等。行、条件执行和端点设置等。 (2) 综合数据显示能力,可以方便地通过不同窗综合数据显示能力,可以方便地通过不同窗口显示和修改变量、存储器和寄存器的值。口显示和修改变量、存储器和寄存器的值。 (3) 在断点处自动更新所有窗口。在断点处自动更新所有窗口。 (4) 显示反汇编文件和显示反汇编文件

38、和C文件,实现文件,实现C语言和汇语言和汇编语言源代码的同时调试。编语言源代码的同时调试。 (5) 图形显示图形显示DSP中的数据。中的数据。 (6) 统计代码的执行时间。统计代码的执行时间。 用用C或汇编语言开发的应用程序,经代码生或汇编语言开发的应用程序,经代码生成工具编译、链接后生成可执行文件成工具编译、链接后生成可执行文件(*.out),还,还需要把可执行文件加载到指定的需要把可执行文件加载到指定的DSP目标板或目标板或软件模拟器软件模拟器中中进行逻辑错误和实时性调试。进行逻辑错误和实时性调试。CCS支持的调试器包括支持的调试器包括:Simulator( (软件模拟器软件模拟器) )、

39、EVM、DSK板和硬件仿真器板和硬件仿真器XDS510等。等。图图15.5给出了给出了CCS的功能框图。的功能框图。设 计概念性规划调 试语法检查断点设置和日志保存等编程和编译创建工程文件编写源程序和配置文件分 析实时调试统计和跟踪 图15.3 CCS的功能框图 CCS包括如下各部分:包括如下各部分:CCS代码生成工具、代码生成工具、CCS集成开发环境(集成开发环境(IDE)、)、DSP/BIOS插件程序插件程序和和API函数、函数、RTDX插件、主机接口和插件、主机接口和API函数。函数。 CCS构成及接口见图构成及接口见图15.6。15.4.3 CCS的构成的构成图15.6 CCS构成及接

40、口 1CCS的代码生成工具的代码生成工具 代码生成工具奠定了代码生成工具奠定了CCS所提供的开发环境的所提供的开发环境的基础。图基础。图15.7是一个典型的软件开发流程图,图中是一个典型的软件开发流程图,图中阴影部分表示通常的阴影部分表示通常的C语言开发途径,其它部分是语言开发途径,其它部分是为了强化开发过程而设置的附加功能。为了强化开发过程而设置的附加功能。 图图15.7描述的工具如下:描述的工具如下: (1) C编译器编译器(C compiler):产生汇编语言源代产生汇编语言源代码。码。 (2) 汇编器汇编器(assembler):把汇编语言源文件把汇编语言源文件翻翻译成机器语言目标文件

41、。译成机器语言目标文件。 (3) 连接器连接器( (linker) ):把多个目标文件组合成单:把多个目标文件组合成单个可执行目标模块。个可执行目标模块。 (4) 归档器归档器(archiver):允许你把一组文件收集:允许你把一组文件收集到一个归档文件中。到一个归档文件中。 (5) 助记符到代数汇编语言转换公用程序助记符到代数汇编语言转换公用程序(mnemonic to algebraic assembly translator utility):把含有助记符指令的汇编语言源文件转换成含:把含有助记符指令的汇编语言源文件转换成含有代数指令的汇编语言源文件。有代数指令的汇编语言源文件。 (6)

42、 建库程序建库程序(library build utility):建立满:建立满足自己要求的足自己要求的“运行支持库运行支持库”。图15.7 软件开发流程 (7) 运行支持库运行支持库(run-time-support libraries):它它包括包括C编译器所支持的编译器所支持的ANSI标准运行支持函数、编标准运行支持函数、编译器公用程序函数、浮点运算函数和译器公用程序函数、浮点运算函数和C编译器支持编译器支持的的I/O函数。函数。 (8) 十六进制转换公用程序十六进制转换公用程序(hex conversion utility):把把COFF目标文件转换成目标文件转换成TI-Tagged、

43、ASCII-hex、Intel、Motorola-S、或或Tektronix等目等目标格式。标格式。 (9) 交叉引用列表器交叉引用列表器(cross-reference lister):):用目标文件产生参照列表文件,可显示符号及其定义用目标文件产生参照列表文件,可显示符号及其定义,以及符号所在的源文件。,以及符号所在的源文件。 (10) 绝对列表器绝对列表器(absolute lister):):它输入目标它输入目标文件,输出文件,输出.abs文件,通过汇编文件,通过汇编.abs文件可产生含有文件可产生含有绝对地址的列表文件。绝对地址的列表文件。 2. CCS集成开发环境集成开发环境 CC

44、S集成开发环境集成开发环境(IDE)允许编辑、编译、汇允许编辑、编译、汇编、链接和调试编、链接和调试DSP目标程序。目标程序。 (1) 编辑源程序编辑源程序 (2) 创建应用程序创建应用程序 (3) 调试应用程序调试应用程序 3DSP/BIOS插件插件 DSP/BIOS API 具有下列实时分析功能:程序具有下列实时分析功能:程序跟踪跟踪(Program tracing)显示写入目标系统日志显示写入目标系统日志(target log)的事件,反映程序执行过程中的动态控的事件,反映程序执行过程中的动态控制流;性能监视制流;性能监视(Performance monitoring)跟踪跟踪反映目标系

45、统资源利用情况的统计表,诸如处理器反映目标系统资源利用情况的统计表,诸如处理器负荷和线程时序;文件流负荷和线程时序;文件流(File streaming)把常驻把常驻目标系统的目标系统的I/O对象捆绑成主机对象捆绑成主机文文档档。 DSP/BIOS也提供基于优先权的调度函数,它也提供基于优先权的调度函数,它支持函数和多优先权线程的周期性执行。支持函数和多优先权线程的周期性执行。 4硬件仿真和实时数据交换硬件仿真和实时数据交换 TI DSP提供在片仿真支持,它使得提供在片仿真支持,它使得CCS能够能够控制程序的执行,实时监视程序运行。增强型控制程序的执行,实时监视程序运行。增强型JTAG连接提供

46、了对在片仿真的支持,它是一种连接提供了对在片仿真的支持,它是一种可与任意可与任意DSP系统相连的低侵扰式的连接。仿真系统相连的低侵扰式的连接。仿真接口提供主机一侧的接口提供主机一侧的JTAG连接,如连接,如TI XDS510。为方便起见,评估板提供在板为方便起见,评估板提供在板JTAG仿真接口。仿真接口。 在片仿真硬件提供多种功能:在片仿真硬件提供多种功能: 1)DSP的启动、停止或复位功能;的启动、停止或复位功能; 2)向向DSP下载代码或数据;下载代码或数据; 3)检查检查DSP的寄存器或存储器;的寄存器或存储器; 4)硬件指令或依赖于数据的断点;硬件指令或依赖于数据的断点; 5)包括周期

47、的精确计算在内的多种记数能力;包括周期的精确计算在内的多种记数能力; 6)主机和主机和DSP之间实时数据交换之间实时数据交换(RTDX)15.5 基于基于TMS320C5409的实时的实时语音识别系统语音识别系统15.5.1 硬件介绍硬件介绍 本节以本节以TMS320C5409DSP为核心并配置一些为核心并配置一些外围器件构成一个非特定人小词汇量语音识别系外围器件构成一个非特定人小词汇量语音识别系统。系统硬件主要由处理器模块、编解码模块、统。系统硬件主要由处理器模块、编解码模块、存储器模块、串行通信模块和电源模块等组成。存储器模块、串行通信模块和电源模块等组成。TMS320C5409是整个系统

48、的核心,其它设备都围是整个系统的核心,其它设备都围绕着它工作。绕着它工作。PC语音输入处理器模块TMS320C5409异步通信串口模块电源模块JTAG语音输出 存储器模块编解码模块TLC320AD50图15.6 系统硬件结构系统硬件结构如图系统硬件结构如图15.8所示。所示。 1. 处理器模块处理器模块 (1) TMS320C5409 DSP简介简介 (2) 处理器模块设计处理器模块设计 2. 编解码模块编解码模块 编解码模块以编解码模块以TLC320AD50C为核心,主要完为核心,主要完成对从麦克风或线性音频接口输入的语音信号的采成对从麦克风或线性音频接口输入的语音信号的采样和模数转换,并能

49、够将样和模数转换,并能够将DSP处理后的信号转换成处理后的信号转换成模拟信号由音频输出口输出。模拟信号由音频输出口输出。 TLC320AD50C(以下简称(以下简称AD50)是)是TI公司公司生产的多媒体音频编解码器芯片,它为系统提供了生产的多媒体音频编解码器芯片,它为系统提供了一个灵活、通用的音频前端。一个灵活、通用的音频前端。AD50的主要特点如下:的主要特点如下:(1) 单一的单一的5V电源供电或电源供电或5V模拟、模拟、3.3V数字双电数字双电 源供电。源供电。(2) 内含内含16位精度的位精度的ADC和和DAC。(3) 器件中的器件中的ADC为为64倍过采样,倍过采样,DAC为为25

50、6倍过倍过采样采样(内部内部)。(4) ADC和和DAC的的SNR(信噪比信噪比)能达到能达到89dB。(5) 可编程的可编程的ADC和和DAC的采样速率,最大可达的采样速率,最大可达 22.05kHz。(6) 可编程的输入输出增益。可编程的输入输出增益。 (7) 支持级联方式工作。支持级联方式工作。 (8) 数据的动态范围能达到数据的动态范围能达到88dB。 模拟输入复用 器ADC抽取滤波器缓冲模拟环路时钟模块低通滤波器DAC内插滤波器缓冲数字环路AUXOUTDOUTDINMCLK IN图图15.9 TLC320AD50的结构的结构 3存储器模块存储器模块 TMS320C5409 DSP总共

51、有总共有192千字的存储器空千字的存储器空间。这些空间可分为间。这些空间可分为3个专门存储空间:个专门存储空间:64千字的千字的程序空间、程序空间、64千字数据空间和千字数据空间和64千字的千字的I/O空间。空间。 4异步通信串口模块异步通信串口模块 异步通信串口异步通信串口(UART)模块用来实现模块用来实现DSP与计与计算机的通信。该模块主要由算机的通信。该模块主要由TL16C550和和MAX3238组成。组成。 5. JTAG模块模块 JTAG模块是为外部设备提供控制模块是为外部设备提供控制DSP工作工作的接口,它的结构如图的接口,它的结构如图15.13所示。它包括两个主所示。它包括两个

52、主要部分:内嵌的要部分:内嵌的JTAG TBC和外接和外接JTAG接口。接口。 6. 电源模块电源模块 DSP板上所有的电源都是通过外部馈入的板上所有的电源都是通过外部馈入的5V直流电源经过变换后获得的。该电源送到直流电源经过变换后获得的。该电源送到DSP板板上后先隔离,然后分别形成上后先隔离,然后分别形成5V的数字电源和的数字电源和5V的模拟电源。的模拟电源。DSP逻辑模块并行口控制JTAG TBCJTAG 接头XDS510XDS510PP图图15.13 JTAG模块模块 基于基于C54x DSP的软件设计可用的软件设计可用C语言编程及混语言编程及混合编程,其软件设计和代码生成的步骤如下:合

53、编程,其软件设计和代码生成的步骤如下: (1) 用用C语言或汇编语言编写程序,后缀分别为语言或汇编语言编写程序,后缀分别为.c或或.asm。 (2) 用用C编译器把编译器把.c文件编译成文件编译成.asm文件,生成文件,生成.obj文件,或者用汇编器把文件,或者用汇编器把.asm生成生成.obj文件。文件。 (3) 用链接器根据链接命令用链接器根据链接命令(.cmd)文件将多个文件将多个.obj文件、库文件链接起来,并分配各程序段、数文件、库文件链接起来,并分配各程序段、数据段的地址,生成的据段的地址,生成的.out文件可供模拟文件可供模拟/仿真。仿真。 15.5.2 软件设计软件设计 1.

54、C54x DSP的的C语言编程语言编程 2. C语言和汇编语言的混合编程方法语言和汇编语言的混合编程方法 3. 软件设计软件设计 (1) DSP的初始化的初始化 (2) UART的初始化的初始化 (3) McBSP0和和AD50的初始化的初始化 初始化DSP初始化UART初始化McBSP0和AD50数据采样NY开始是否检测到结束点?特征归一化识别重新设置变量使能McBSP0中断端点检测禁止McBSP0中断特征提取右图为系统主右图为系统主程序流程图。程序流程图。 软硬件调试成功后,首次通过仿真器将用户软硬件调试成功后,首次通过仿真器将用户BOOT程序写入程序写入Flash,然后再通过仿真器将整个

55、,然后再通过仿真器将整个系统的软件写入系统的软件写入Flash。两个软件写入。两个软件写入Flash后,系后,系统就可以成为独立(即不再和仿真器相连接)运行统就可以成为独立(即不再和仿真器相连接)运行的的DSP系统。系统。 本章介绍的语音识别系统在正确烧写本章介绍的语音识别系统在正确烧写Flash后后,用,用9针连接线使系统针连接线使系统UART与计算机相连(计算与计算机相连(计算机上事先应装有相应的机上事先应装有相应的UART接口调试和显示工具接口调试和显示工具),上电启动后,系统就进入语音识别状态,试验),上电启动后,系统就进入语音识别状态,试验结果表明中等词汇量识别率在结果表明中等词汇量识别率在85以上。以上。15.5.3 独立系统形成独立系统形成


文档来源:https://www.renrendoc.com/paper/212469092.html

文档标签:

下载地址