基于matlab的语音信号pcm编译码实现本科生毕业论文(编辑修改稿)内容摘要:

: y = {Ax1+ 𝑙𝑛𝐴 , 0 x ≤ 1𝐴1+𝑙𝑛𝐴𝑥1 +𝑙𝑛𝐴 ,1𝐴 ≤ x ≤ 1 式中: x为压缩器归一化输入电压, y为压缩器归一化输出电压, A为常数, 它 决定压缩程度。 一般 A取。 下面表格是 A率 (其中 A=)与 13 折线法的比较: 表 1: A压缩率 (A=)与 13折线法的比较 I 8 7 6 5 4 3 2 1 0 A率的 x值 0 1/128 1/ 1/ 1/ 1/ 1/ 1 13折线法的x = 1 2𝑖⁄ 0 1/128 1/64 1/32 1/16 1/8 1/4 1/2 1 由上表可知, 13 折线法与 A= 时的 A 率十分接近。 编码 (Coding) 经过量化后 信号变成了离散的数字信号, 接下 来就是对该信号进行编码。 最常用的编码是将其转化为二进制信号,也就是所谓的脉冲编码调制( Pulse Code Modulation, PCM)。 对于 PCM 编码 来说, 有两种 编码方法: 自然 二进制码和折叠二进制码。 后者可用于双极性电压编码, 而且 较前者在小电压处误码影响更小。 而 在语音传输 中, 语音信号 出现小电压的概率大, 故 使用折叠二进制码进行编码。 在这里, 将 采用 十三折线法、折叠二进制码。 首 先将电平范围按十三折线法分成 13段。 然后每段都均匀量化,且每段 16 个 量化间隔。 在十三折线法中的折叠码 共 有 8位。 第一位 c1表示量化值 的 极性正负 (即符号位) ,第二位至第四位即 c2𝑐3𝑐4用于表示所在段 4 落号( 即 段落码), 后面 四位 c5𝑐6𝑐7𝑐8表示 所 在段落的 16 个 量化电平( 即 段内码) : 表 2:段落码、段内码的确定 段落码 段内码 段落序号 段落码 c2𝑐3𝑐4 段落范围 量化间隔 段内码 c5𝑐6𝑐7𝑐8 量化间隔 段内码 c5𝑐6𝑐7𝑐8 8 111 [1024,2048) 15 1111 7 0111 7 110 [512,1024) 14 1110 6 0110 6 101 [256,512) 13 1101 5 0101 5 100 [128,256) 12 1100 4 0100 4 011 [64,128) 11 1011 3 0011 3 010 [32,64) 10 1010 2 0010 2 001 [16,32) 9 1001 1 0001 1 000 [0,16) 8 1000 0 0000 译码 (Decoding) 经过 以上 步骤, 原模拟 信号 已经 处理成二进制信号,每个量化电压都转换为 8位二进制码。 译码就是将这些 8为二进制码还原成十进制的量化电压。 其步骤正好与编码相反。 5 第 3 章 MATLAB 程序设计 流程图设计 系统主程序流程设计 PCM 编码程序流程设计 PCM 译码程序流程设计 开始 信号源 抽样 量化 PCM 编码 PCM 译码 结束 输入 判断正负, 确定 符号位 c1 确定段落号、 段落码 确定段内号、 段 内 码 输出 输入 判断符号位 c1, 确定 电平正负 根据段落码,确定所在段落 及其 初始电平值 根据段内码,确定该电平与该段初始电平的差值 输出 根据上面得到的数据确定电平值 6 Simulink 仿真设计 系统主程序设计 图 1:系统结构图 对于这个系统, 主要 包含三大模块: 信号 源、 信号 处理模块、 显示 模块。 其中信号处理模块分为四个小模块: 抽样 、 量化 、 编码 、 译码。 信号源: 图 2:信号源 抽样模块 : 图 3:抽样模块 7 量化模块 及 编码模块: 图 4:量化及编码模块 译码模块: 图 5:译码模块 显示模块 由两部分组成。 第 一 部分 是输出图, 包含 原始信号、 滤波器输出信号。 第二 部分是抽样过程图,包含原始信号、 抽样 信号 , 及 抽样图。 图 6:显示模块 8 PCM 编码模块 设计 此模块是由 自定义的 函数构成。 本着简化代码的原则,减少了比较的次数。 下面介绍具体方法。 根据电平 的 正负 确定符号位 signCode: beginValue = {1, u 00, u ≥ 0(u 为量化电平 ) 表 3: PCM码的确定 区间 [0,16) [16,32) [32,64) [64,128) [128,256) [256,512) [512,1024) [0124,2048) 𝑙𝑜𝑔2(𝑏𝑒𝑔𝑖𝑛𝑉𝑎𝑙𝑢𝑒) 4 5 6 7 8 9 10 paragraphIndex 1 2 3 4 5 6 7 8 paraCode 000 001 010 011 100 101 110 111 interval 1 1 2 4 8 16 32 64 log2(𝑖𝑛𝑡𝑒𝑟𝑣𝑎𝑙) 0 0 1 2 3 4 5 6 inParagraphIndex 0 1 2 3 4 5 6 7 𝑖𝑛𝑃𝑎𝑟𝑎𝐶𝑜𝑑𝑒 0000 0001 0010 0011 0100 0101 0110 0111 inParagraphIndex 8 9 10 11 12 13 14 15 inParaCode 1000 1001 1010 1011 1100 1101 1110 1111 (𝑏𝑒𝑔𝑖𝑛𝑉𝑎。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。