新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于ADPCM的数字语音存储与回放系统设计方案

基于ADPCM的数字语音存储与回放系统设计方案

作者:时间:2013-10-08来源:网络收藏

  0 引言

  由单片机与FPGA共同完成语音的录制与回放,可以拥有丰富的接口资源和运算能力,鉴于PCM 的存储冗余值过大和DPCM 的量化噪声问题, 成为了不错的压缩算法。同时为了拥有较高的共模抑制比、低失真、高功率和高输入阻抗,本文采用仪表放大器、立体声功率放大和控制芯片,结合编码,设计并实现了具有采集速度快、存储时间长、语音回放质量良好的

  1 系统设计框图

  系统主要包括采集、处理与语音回放模块三个部分。对于采集模块,一般由麦克风或者耳机输入的语音通过前置放大和低通滤波等预处理之后,完成A/D 转化。对于语音处理模块来说,进行 的编码以及FFT运算,可将数字化的语音存储于外部介质。对于回放模块来说,可提取存储的语音内容,并且通过解码、D/A转换,最后驱动扬声器来完成回放功能。系统整体框图如图1所示。

  

  其中的立体声ADC和立体声DAC组成部分都集成在芯片PCM3010 内部。通过立体声音量控制芯片PGA3010实现立体声音量的调节,最后由功率放大器驱动扬声器完成语音播放功能。同时,通过在FPGA内部对采样数据进行短时傅里叶变换,可在示波器上实时显示语音信号的频谱。

  2 理论分析计算

  2.1 ADPCM编码的理论分析

  ADPCM 的原理是对相邻两采样值的差值进行编码,利用自适应的思想改变量化阶的大小。ADPCM 编码法结合了DCM 与ADM,其实是差分算法原理的自适应方向改进。对于输入的信号Si 与自适应输出值Sp 存在差值,根据自适应量化步长d 对此差值进行量化,输出ADPCM 四位量化码I.对于量化码I 又重新计算量化步长d .其原理图如图2所示。

  另外一方面对于量化码I,又要送入反量化器,根据计算的步长d 进行差别断定,生成新的解码值,进行下一轮的语音编码。其原理图如图3所示。

  

  通过ADPCM的编码,可以达到1/6的压缩比率。也就是说,对于24 b的采样数据,4 b的存储率即可达成要求,可以大大延长存储的时间。当采样速率为46 kHz时,数据传输速率为184 Kb/s,由于外部存储器BQ4015大小为512×8 Kb,故能够存储的最长时间为22 s.当采样速率为8 kHz时,能够存储的最长时间为128 s.

  2.2 信噪比计算

  一般认为,通话的语音频率一般不超过3.4 kHz,所以低通滤波器选取3.4 kHz作为其截至频率,同时保证A/D采样频率高于8 kHz,根据奈奎斯特定律,即可满足语音量化不损失。对于耳机声道声音,其频率范围为20 Hz~20 kHz,所以对于上述的滤波器以及A/D 采样频率也能满足其要求。根据如下信噪比(单位:dB)公式:

  

  若假定语音信号服从拉普拉斯分布,则xmax = 4σx .

  所以可以计算出:

  

  表明量化器中每个比特字长对信噪比的贡献大约为6 dB.选用24 b A/D 转换器PCM3010,理论上可以达到137 dB的信噪比。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭