语音信号的A率(或u率)压缩算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
语音信号的A律(或μ律)压缩算法
一试验目的
(1)了解PCM编码的格式和原理;
(2)了解A律和μ律压缩解压的原理
(3)熟悉A律和μ律压缩解压实现方法;
二试验内容
本试验要求完成的内容是使用AD将外部语音信号采集,DSP对语音信号保存处理,经过DA将处理后的语音信号输出;DSP对语音信号的处理包括A律和μ律压缩解压、声音信号的音效处理等。
三试验原理
PCM(Pulse Code Modulation)编码即脉冲编码调制,也就是将模拟信号转换为数码,
A律和μ律压缩编码压缩码是CCITT(Consultative Committee for International Telegraph and Telephone)国际电报电话协会最早推出的G.711语音压缩解压编码的一种格式的主要内容。
其中欧洲和中国等国家采用A律压缩解压编码,美国日本等国家采用μ律压缩解压编码。
由于中国采用A律,本试验只介绍A律压缩解压。
图5.1是DSP进行数据压缩解压的简单流程,DSP将传输来的压缩后的数据进行解压成16位或者32位,然后对解压后的数据进行分析、处理;然后将处理后的数据按照要求压缩成8位的数据格式输出到相应设备,供其他设备读取。
图5.1
图5.2是DSP 将数据解压的值,DSP 将压缩的8位数据解压成16位的DSP 通用数据格式,其中高12位为解压后的数据,低4位补0。
DSP 将解压后的数据放在缓冲串口的发送寄存器中,只要运行发送指令,缓冲串口就会将数据发送出去。
对接受数据的解压缓冲串口有一样的操作。
图5.2 A 律数据解压图
DSP 内部的缓冲串口(MCBSPS )带有硬件实现的A 律和 律压缩解压,用户只需要在相应寄存器中设置就可以了。
所有与缓冲串口相关的寄存器和引脚如图5.4所示,图5.4中有13个需要设置的寄存器,分别为RSR 、XSR 、RBR 、DRR 、DXR 、SPCR 、RCR 、XCR 、SRGR 、PCR 、MCR 、RCER 、XCER 等。
在进行A 律压缩时,对于采样到的12位数据,默认其最高位为符号位,压缩时要保持最高位即符号位不变,原数据的后11位要压缩成7位。
这7位码由3位段落码和4位段内码组成。
具体的压缩变换后的数据根据后11位数据大小决定。
具体的编译码表如表5.2所示。
压缩后的数据的最高位(第7位)表示符号,量阶分别为1、1、2、4、8、16、32、64,由压缩后数据的第6位到第4位决定,第3位到第0位是段内码。
压缩后的数据有一定的失真。
有些数据不能表示出,只能取最近该数据的压缩值。
例如,数据125,压缩后的值为
发送缓冲器
图5.2 和缓冲串口相关的引脚和寄存器图
任务一:
硬件仿真:完成A律压缩子函数的编写。
任务二:
硬件仿真:完成A律解压子函数的编写。
并利用任务一的结果,实现音频信号采集压缩和解压回放。