基于DSP的数字语音压缩系统
发布时间:2008/5/27 0:00:00 访问次数:603
1 引言
在通信应用领域中,压缩语音信号的传输带宽或降低电话信道的传输码率。一直是设计人员追求的目标。语音编码在实现这一目标的过程中担当着重要的角色,语音编码是压缩语音信号的数字表示,而且是这些信号所需比特数最小的算法。可以说,语音压缩技术的发展和人类信息技术的发展息息相关。因此,对语音压缩技术的研究具有重要的现实意义。
如何在实际系统中实现语音压缩,这是一个重要的研究领域。目前,pc上的实时语音压缩技术已经较为成熟,而嵌入式系统领域的语音压缩技术还有待发展和完善。由于大多数高质量、低码率的语音压缩算法有较为复杂的数据运算,所以传统的单片机已经不能胜任,必须采用更高性能的处理器,而专门为数字信号处理设计的数字信号处理器(dsp)为语音压缩的实现提供了一个很好的平台。
2 语音压缩编码方案选择
在评价一个语音压缩编码方案时,一般从质量、速率、复杂度和延时四个方面考虑。
本数字语音压缩系统需要一种低码率、高语音质量、低时延、较低算法复杂度的压缩设计方案。从表1所列可以看出。从低码率方面排除了g.711、g.721、g.722、g.723。而g3.726在16 kb/s速率下,速率为,语音质量为2.0,显然是不能接受的。在余下的g.723.1、g.729、g.729a中,g.723.1的算法复杂度较大,而且时延较长,所以被排除。在剩余的g.729和g.729a中,在算法复杂度方面,g.729a则有着较大优势。实际上,g.729a是g.729的简化版本,在语音质量基本维持不变的情况下,算法简化了很多。所以本系统最终决定选用g.729a算法。
3 g.729a算法概述
在1996年6月的itu-t sg15末次会议上通过了g.729的附件a"减少复杂度的8 kb/s cs-acelp语音编码器",该编码方案是电话带宽的语音信号编码标准,对输入语音性质的模拟信号采用8 khz采样。16 bit线性pcm量化。cs-acelp是基于码本激励线性预测(celp)的编码模式,每80个样点为一语音帧,分析并提取各种参数(线性预测滤波器系数、自适应码本和固定码本中码本序号、自适应码矢量增益和固定码矢量增益),并发送这些参数编码。在解码端,把接收到的比特流恢复
成参数编码。解码后得到各个参数,用自适应码矢序号从自适应码本中得到自适应码矢,用固定码矢序号从固定码本中得到固定码矢,分别乘以它们的增益,按点相加后构成激励序列。用线性预测滤波器系数构成合成滤波器,用自适应码本方法实现长时或基音合成滤波,计算出合成语音后,用后置滤波器进一步增强音质。
4 硬件系统设计
4.1 系统总体框图
本系统是以tms320c6711为核心,外部扩展16 mb sdram和2 mb flash。dsp仿真器用于dsp的在线调试开发,可以通过软件在线控制。dsp的运行状态,并能够查看dsp内部寄存器。pc机是开发人员和dsp系统之间的交互界面,通过pc机上安装的ccs(code composer studio)集成开发环境,开发人员可以在友好的图形界面下对目标系统进行操作。
4.2 模拟电路接口设计
tlv320aic10模拟电路设计包括micophone接口设计和扬声器接口设计,由于tlv320aic10输出具有600 ω驱动能力,足够驱动一个耳机,也可以经过一个功率放大器驱动扬声器,所以输出电路较为简单。tlv320aic10内置运算放大器电路,可方便地与microphone接口,接口电路如图3所示。应注意的是,vmid引脚最大输出电流为5 ma,为了防止输出电流超过限制,应当串联一只起保护作用的电位器rp1。
4.3 数字电路接口设计
tlv320aic10支持与ti5000、ti6000系列的无缝接口。tlv320aic1o可以通过mcbsp接口与tms320c6711 dsp相连接,需要注意的是,tlv320aic10采用主机模式(master mode),
由tlv320aic1o向tms320c6711提供串行通信频率sclk。mclk提供tlv320aic10的工作频率,包括串行通信频率sclk和采样频率fs。串行通信频率为mclk的二分频,fs与mclk之间的数学关系如下:
本系统实现目标是能够实时输入语音、压缩,并能将接收到的g.729a编码解压播放。事实上,dsp要同时处理多个任务:从外部语音电路获取采集数据、编码、解码,将解码后的数据送到外部语音电路播放。本系统采用ti bios嵌入式实时操作系统.并在此基础上开发了硬件驱动程序和上层应用程序,最后测试了实现结果。
从系统中任意抽取的一帧语音的原始数据和重建数据,并用ccs图形调试工具显示出来。
波形的基本趋势是相同的,但是语音幅度有所减小。
1 引言
在通信应用领域中,压缩语音信号的传输带宽或降低电话信道的传输码率。一直是设计人员追求的目标。语音编码在实现这一目标的过程中担当着重要的角色,语音编码是压缩语音信号的数字表示,而且是这些信号所需比特数最小的算法。可以说,语音压缩技术的发展和人类信息技术的发展息息相关。因此,对语音压缩技术的研究具有重要的现实意义。
如何在实际系统中实现语音压缩,这是一个重要的研究领域。目前,pc上的实时语音压缩技术已经较为成熟,而嵌入式系统领域的语音压缩技术还有待发展和完善。由于大多数高质量、低码率的语音压缩算法有较为复杂的数据运算,所以传统的单片机已经不能胜任,必须采用更高性能的处理器,而专门为数字信号处理设计的数字信号处理器(dsp)为语音压缩的实现提供了一个很好的平台。
2 语音压缩编码方案选择
在评价一个语音压缩编码方案时,一般从质量、速率、复杂度和延时四个方面考虑。
本数字语音压缩系统需要一种低码率、高语音质量、低时延、较低算法复杂度的压缩设计方案。从表1所列可以看出。从低码率方面排除了g.711、g.721、g.722、g.723。而g3.726在16 kb/s速率下,速率为,语音质量为2.0,显然是不能接受的。在余下的g.723.1、g.729、g.729a中,g.723.1的算法复杂度较大,而且时延较长,所以被排除。在剩余的g.729和g.729a中,在算法复杂度方面,g.729a则有着较大优势。实际上,g.729a是g.729的简化版本,在语音质量基本维持不变的情况下,算法简化了很多。所以本系统最终决定选用g.729a算法。
3 g.729a算法概述
在1996年6月的itu-t sg15末次会议上通过了g.729的附件a"减少复杂度的8 kb/s cs-acelp语音编码器",该编码方案是电话带宽的语音信号编码标准,对输入语音性质的模拟信号采用8 khz采样。16 bit线性pcm量化。cs-acelp是基于码本激励线性预测(celp)的编码模式,每80个样点为一语音帧,分析并提取各种参数(线性预测滤波器系数、自适应码本和固定码本中码本序号、自适应码矢量增益和固定码矢量增益),并发送这些参数编码。在解码端,把接收到的比特流恢复
成参数编码。解码后得到各个参数,用自适应码矢序号从自适应码本中得到自适应码矢,用固定码矢序号从固定码本中得到固定码矢,分别乘以它们的增益,按点相加后构成激励序列。用线性预测滤波器系数构成合成滤波器,用自适应码本方法实现长时或基音合成滤波,计算出合成语音后,用后置滤波器进一步增强音质。
4 硬件系统设计
4.1 系统总体框图
本系统是以tms320c6711为核心,外部扩展16 mb sdram和2 mb flash。dsp仿真器用于dsp的在线调试开发,可以通过软件在线控制。dsp的运行状态,并能够查看dsp内部寄存器。pc机是开发人员和dsp系统之间的交互界面,通过pc机上安装的ccs(code composer studio)集成开发环境,开发人员可以在友好的图形界面下对目标系统进行操作。
4.2 模拟电路接口设计
tlv320aic10模拟电路设计包括micophone接口设计和扬声器接口设计,由于tlv320aic10输出具有600 ω驱动能力,足够驱动一个耳机,也可以经过一个功率放大器驱动扬声器,所以输出电路较为简单。tlv320aic10内置运算放大器电路,可方便地与microphone接口,接口电路如图3所示。应注意的是,vmid引脚最大输出电流为5 ma,为了防止输出电流超过限制,应当串联一只起保护作用的电位器rp1。
4.3 数字电路接口设计
tlv320aic10支持与ti5000、ti6000系列的无缝接口。tlv320aic1o可以通过mcbsp接口与tms320c6711 dsp相连接,需要注意的是,tlv320aic10采用主机模式(master mode),
由tlv320aic1o向tms320c6711提供串行通信频率sclk。mclk提供tlv320aic10的工作频率,包括串行通信频率sclk和采样频率fs。串行通信频率为mclk的二分频,fs与mclk之间的数学关系如下:
本系统实现目标是能够实时输入语音、压缩,并能将接收到的g.729a编码解压播放。事实上,dsp要同时处理多个任务:从外部语音电路获取采集数据、编码、解码,将解码后的数据送到外部语音电路播放。本系统采用ti bios嵌入式实时操作系统.并在此基础上开发了硬件驱动程序和上层应用程序,最后测试了实现结果。
从系统中任意抽取的一帧语音的原始数据和重建数据,并用ccs图形调试工具显示出来。
波形的基本趋势是相同的,但是语音幅度有所减小。
上一篇:开发DSP硬件驱动程序的一种方法