采用DSP内核技术进行语音压缩开发
发布时间:2008/5/26 0:00:00 访问次数:842
来源:《电子技术应用》
摘要:介绍了一种采用dsp内核芯片设计开发的手持式语音设备。该语音设备无需开发系统支持,语音播放时间长达200分钟,而压缩比达到46:1,仅使用一片32兆位的闪速存储器就可保存全部数据。 关键词:dsp内核 语音压缩
随着仪器仪表人机界面越来越趋于人性化,语音识别的需求不断增长,语音处理技术发展迅速,各种处理算法层出不穷,为大容量的语音应用提供了愈加灵活的技术手段。然而,语音数据的压缩比越高,数据回放算法所要求的计算能力也越强。目前,大多数高压缩比的语音压缩数据生成必须采用专用的语音开发工具和开发版权,这给国内的小规模用户造成了一定的困难。在8k的采样速率下,同样是使用4兆位的flash芯片来存储数据,不同的语音算法所能提供的回放时间有很大差异。例如,采用adpcm(自适应增量脉冲编码)算法只可提供128秒的回放时间,而采用ti的lpc(线性预测编码)算法却可得到50分钟的回放时间。在某一工程项目中,我们需要开发一种回放时间长达200分钟的低成本手持语音设备,由于使用了dsp内核芯片,在较短的时间内完成了开发工作,达到了预先提出的性能指标。
1 语音算法与芯片特点
在本项目中,我们选择了dsp集团的语音压缩最新算法triple rate coder,其压缩比达到了46:1,且音质良好,mos指标达到了3.98。
该算法的基本思想是:首先将语音分为若干小段,由于语音信号的谱变化是一个缓变量,因此在每一小段内信号是平稳变化的。然后用一个数字滤波器和一个激励函数来表示这一段时域波形的离散采样序列。在实际算法中是采用了一个十阶的线性预测滤波器,计算时还将每一帧分为4个子帧,每一子帧的滤波器系数矢量由上一帧和本帧数据计算得到,而最后一子帧的滤波器系数矢量则由矢量分解预测法得到;激励函数采用的是伪随机多脉冲激励函数,由最大似然算法得到。对每一帧计算得到滤波器系数矢量和函数生成元后,将这些系数再压缩打包就得到了最后的语音压缩数据。当对语音压缩数据进行解压时,首先将打包的数据展开,然后建立起线性预测滤波器,将重新生成的伪随机多脉冲激励函数输入滤波器,这样在滤波器的输出端就可得到被恢复的语音信号序列了。
该算法的实时运算需要22mips以上的运算速度,为此dsp集团将dsp内核和算法代码集成在d6571系列芯片内,以满足除pc用户以外的更广泛应用。d6571原理框图如图1所示,其本身可直接外挂并管理4兆位的flash,8k采样速率时在2.8kb的数据率下可提供25分钟的回放时间。该芯片具备工业标准的编***接口,可直接与串行pcm接口的音频编解码芯片相连,如美国国家半导体的tp3054或韩国三星半导体的ks8620。d6571可外接两片音频编解码芯片,上电后可用设置命令对外接音频编解码芯片的工作模式进行设置。例如:设置外接芯片的时钟是外同步还是自同步;设置外接芯片处于输出方式还是输入方式等。
根据实际开发经验,我们认为d6571芯片与其它公司所提供的某些dsp内核芯片相比,其最大的优点是几乎不需要任何开发工具或软件就可使用。因为该芯片的数据是双向的,既可由上位机将压缩后的语音数据通过它解压转变成语音,也可输入语音通过它进行实时压缩后传送给上位机。这就大大方便了长回放时间语音开发用户的使用。更何况目前许多语音压缩芯片对语音数据的管理是不公开的,例如:某些数字录音电话的语音压缩芯片。
2 系统构成
与语音处理有关的系统构成如图2所示。
语音数据存放在一片32兆位的flash中,采用三星的k29w3200,这是一种8位并行接口的闪存,并行接口有利于提高
来源:《电子技术应用》
摘要:介绍了一种采用dsp内核芯片设计开发的手持式语音设备。该语音设备无需开发系统支持,语音播放时间长达200分钟,而压缩比达到46:1,仅使用一片32兆位的闪速存储器就可保存全部数据。 关键词:dsp内核 语音压缩
随着仪器仪表人机界面越来越趋于人性化,语音识别的需求不断增长,语音处理技术发展迅速,各种处理算法层出不穷,为大容量的语音应用提供了愈加灵活的技术手段。然而,语音数据的压缩比越高,数据回放算法所要求的计算能力也越强。目前,大多数高压缩比的语音压缩数据生成必须采用专用的语音开发工具和开发版权,这给国内的小规模用户造成了一定的困难。在8k的采样速率下,同样是使用4兆位的flash芯片来存储数据,不同的语音算法所能提供的回放时间有很大差异。例如,采用adpcm(自适应增量脉冲编码)算法只可提供128秒的回放时间,而采用ti的lpc(线性预测编码)算法却可得到50分钟的回放时间。在某一工程项目中,我们需要开发一种回放时间长达200分钟的低成本手持语音设备,由于使用了dsp内核芯片,在较短的时间内完成了开发工作,达到了预先提出的性能指标。
1 语音算法与芯片特点
在本项目中,我们选择了dsp集团的语音压缩最新算法triple rate coder,其压缩比达到了46:1,且音质良好,mos指标达到了3.98。
该算法的基本思想是:首先将语音分为若干小段,由于语音信号的谱变化是一个缓变量,因此在每一小段内信号是平稳变化的。然后用一个数字滤波器和一个激励函数来表示这一段时域波形的离散采样序列。在实际算法中是采用了一个十阶的线性预测滤波器,计算时还将每一帧分为4个子帧,每一子帧的滤波器系数矢量由上一帧和本帧数据计算得到,而最后一子帧的滤波器系数矢量则由矢量分解预测法得到;激励函数采用的是伪随机多脉冲激励函数,由最大似然算法得到。对每一帧计算得到滤波器系数矢量和函数生成元后,将这些系数再压缩打包就得到了最后的语音压缩数据。当对语音压缩数据进行解压时,首先将打包的数据展开,然后建立起线性预测滤波器,将重新生成的伪随机多脉冲激励函数输入滤波器,这样在滤波器的输出端就可得到被恢复的语音信号序列了。
该算法的实时运算需要22mips以上的运算速度,为此dsp集团将dsp内核和算法代码集成在d6571系列芯片内,以满足除pc用户以外的更广泛应用。d6571原理框图如图1所示,其本身可直接外挂并管理4兆位的flash,8k采样速率时在2.8kb的数据率下可提供25分钟的回放时间。该芯片具备工业标准的编***接口,可直接与串行pcm接口的音频编解码芯片相连,如美国国家半导体的tp3054或韩国三星半导体的ks8620。d6571可外接两片音频编解码芯片,上电后可用设置命令对外接音频编解码芯片的工作模式进行设置。例如:设置外接芯片的时钟是外同步还是自同步;设置外接芯片处于输出方式还是输入方式等。
根据实际开发经验,我们认为d6571芯片与其它公司所提供的某些dsp内核芯片相比,其最大的优点是几乎不需要任何开发工具或软件就可使用。因为该芯片的数据是双向的,既可由上位机将压缩后的语音数据通过它解压转变成语音,也可输入语音通过它进行实时压缩后传送给上位机。这就大大方便了长回放时间语音开发用户的使用。更何况目前许多语音压缩芯片对语音数据的管理是不公开的,例如:某些数字录音电话的语音压缩芯片。
2 系统构成
与语音处理有关的系统构成如图2所示。
语音数据存放在一片32兆位的flash中,采用三星的k29w3200,这是一种8位并行接口的闪存,并行接口有利于提高