DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 115|回复: 0
打印 上一主题 下一主题

基于TMS320C6711的数字语音压缩系统

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-17 23:22:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
语音的数字通信以信道占用宽频带宽为代价实现抗干扰等功能。必须对数字语音信号进行压缩编码。
  目前,G.729A算法多是在TI的5000系列DSP上实现单通道或双通道语音压缩,而本设计在现有的TMS320C6711系列DSP平台上使用最少的硬件资源和软件开销,压缩编码解码时间,实现了多通道语音实时压缩解压。

  选择语音压缩编码方案
  在评价一个语音压缩编码方案时,一般从四个方面考虑:质量、速率、复杂度和延时。目前 ITU-U已制定的G系列标准如表1所示。
  




  本系统需要的是一种低码率、语音质量良好、低时延、较低算法复杂度的压缩方案,从表1中可以看出,从低码率考虑就可以排除G.711、G.721、G.722和G.723。G.726在速率为16Kb/s 时,语音质量为2.0,这显然是不可以接受的。在余下的G.723.1、G.729、G.729A中,可以看到G.723.1的算法复杂度较大,而且延时较长,所以也被排除。和G.729相比,在算法复杂度方面,G.729A有较大优势。实际上, G.729A是G.729的一个简化版本,在语音质量基本维持不变的情况下,算法简化了很多。所以本系统最后选用 G.729A算法。
  G.729A编码方案是电话带宽的语音信号编码的标准,对输入语音性质的模拟信号用8kHz、采样,16比特线性PCM量化。CS-ACELP是基于码本激励线性预测(CELP)的编码模式,每80个样点为一语音帧,对语音信号分析并提取各种参数,把这些参数编码发送。在解码端,把收到的比特流恢复成参数编码,解码后得到各个参数,用自适应码矢序号从自适应码本中得到自适应码矢,用固定码矢序号从固定码本中得到固定码矢,分别乘以它们的增益,按点相加后构成激励序列。用线性预测滤波器系数构成合成滤波器。用自适应码本方法实现长时或基音合成滤波,计算出合成语音后,用后置滤波器进一步增强音质。G.729A算法编码器原理框图如图1所示。
  




  图1 G.729A算法编码器原理框图
  硬件系统设计
  数字信号处理器具有运行速度快、性价比高、功耗低、开发快的特点。本系统选择的TMS320C6711是高性能浮点数字信号处理器,可以成功地实现实时语音压缩和解压。
  1 系统原理框图
  本系统以TMS320C6711为核心,外扩32MB SDRAM和2MB FLASH。DSP仿真器用于DSP的在线调试开发,可以通过软件在线控制DSP的运行状态,并能够查看DSP内部寄存器。PC是开发人员和DSP系统之间的交互界面,通过PC上安装的CCS集成开发环境,开发人员可以在友好的图形界面下对目标系统进行操作。系统原理框图如图2所示。
  




  图2 系统硬件框图
  2 模拟电路接口设计
  TLV320AIC10芯片模拟电路设计包括麦克风接口设计和扬声器接口设计,由于TLV320AIC10输出具有600Ω驱动能力,足够驱动一个耳机,也可以经过一个功率放大芯片驱动扬声器,所以输出电路较为简单。
  TLV320AIC10内置运算放大器电路,可以方便的与麦克风接口,接口电路如图3所示。应当注意的是VMID引脚最大输出电流为5mA,为了防止输出电流超过限制,应当串联一个起保护作用的电位器RP1。
  






  图3 模拟电路接口
  3 数字电路接口设计
  TLV320AIC10 支持与 TI 5000和6000 系列的无缝接口。TLV320AIC10 通过 McBSP接口与TMS320C6711 DSP相连,如图4所示。
  




  图4 数字电路接口
  注意,TLV320AIC10采用主模式,由TLV320AIC10 向TMS320C6711 DSP 提供串行通信频率 SCLK。MCLK 提供TLV320AIC10 的工作频率,包括串行通信频率SCLK和采样频率fs。串行通信频率为MCLK 的二分频,fs与MCLK关系如下:fs= MCLK/(256×N),N = 1,2...,32。在本系统中 N为4,fs为8000,故MCLK是8.19MHz。
  
                          
                       
                          
                                软件系统设计

  本系统实现的目标是能够实时输入语音、压缩,并能把接收到的 G.729A 编码解压、播放出来。事实上 DSP 要同时处理多个任务:从外部语音芯片获取采集数据、编码、解码、把解码后的数据送到外部语音芯片播放。本系统采用 TI BIOS 嵌入式实时操作系统,并在此基础上开发了硬件驱动程序和上层应用程序,最后测试了实现结果。系统软件结构如图5所示。
  




  图5 系统软件结构图
  实验结果
  从实验仿真中可以得到,重建语音与原始语音的频率峰值完全相同,都在468.75Hz,这表示G.729A的LPC参数分析和基音频率估计是非常正确的,但是重建语音在200Hz、700Hz 左右有一个原始语音没有的波峰,而且重建语音在800Hz以后的幅度没有迅速下降。这说明二者还是稍有差别的。
  结束语
  本文对基于DSP的G.729A语音压缩算法进行了严格的测试,测试结果表明:(1)算法通过了ITU-T的测试向量,达到了ITU-T标准;(2)本编码算法对于时间长度为10ms的一帧语音数据编码需要1.1ms,解码需要0.29ms,完全可以在TMS320C6711 DSP处理器上实时实现多路语音编解码。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-12 17:08 , 耗时 0.101958 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表