PCM编码、解码实验
一、实验目的
1.熟悉MATLAB环境下的Simulink仿真平台,熟悉PCM编码与解码原理,
构建PCM编码与解码电路图.
2. 对模拟信号进行采样、量化、编码(PCM), 将编码后的信号输入信道再
进行PCM解码,还原出原信号.建立仿真模型,分析仿真波形.
二、实验原理
所谓脉冲编码调制,就是将模拟信号抽样量化,然后将已量化值变换成代码。下面将用一个PCM系统的原理框图简要介绍。
模拟信号输入 抽 样 保 持 量化器 编码器 PCM信号输出 冲激脉冲 信 道 干扰 模拟信号输出 低通 滤波器 译码器 PCM信号输入 图1 PCM原理方框图
在编码器中由冲激脉冲对模拟信号抽样,得到在抽样时刻上的信号抽样值。这个抽样值仍是模拟量。在它量化之前,通常由保持电路(holding circuit)将其作短暂保存,以便电路有时间对其量化。在实际电路中,常把抽样和保持电路作在一起,称为抽样保持电路。图中的量化器把模拟抽样信号变成离散的数字量,然后在编码器中进行二进制编码。这样,每个二进制码组就代表一个量化后
1
的信号抽样值。图中的译码器的原理和编码过程相反。其中,量化与编码的组合称为模/数变换器(A/D变换器); 译码与低通滤波的组合称为数/模变换器(D/A变换器)。
抽样是对模拟信号进行周期性的扫描, 把时间上连续的信号变成时间上离散的信号。我们要求经过抽样的信号应包含原信号的所有信息, 即能无失真地恢复出原模拟信号, 抽样速率的下限由抽样定理确定。
量化是把经抽样得到的瞬时值进行幅度离散,即指定Q规定的电平,把抽样值用最接近的电平表示。
编码是用二进制码组表示有固定电平的量化值。实际上量化是在编码过程中同时完成的。图1是PCM单路抽样、量化、 编码波形图。
μ律与A律压缩特性
1n(1x)y(1x1)(美、日) μ律: 1n(1)
Ax10|x|AA律: (我国、欧洲) y11nA111nA|x||x|1A11nA 式中,x为归一化输入,y为归一化输出,A、μ为压缩系数。
2
数字压扩技术:一种通过大量的数字电路形成若干段折线, 并用这些折线来近似A律或μ律压扩特性,从而达到压扩目的方法。即对数压扩特性的折线近似法。
折线压扩特性:既不同于均匀量化的直线,又不同于对数压扩特性的光滑曲线。总的来说用折线作压扩特性是非均匀量化的, 但它既有非均匀量化(不同折线有不同斜率), 又有均匀量化(在同一折线的小范围内)。 两种常用数字压扩技术:
(1)A律13折线压扩——13折线近似逼近A=87.6的A律压扩特性; (2) μ律15折线压扩——15折线近似逼近μ=255的μ律压扩特性。 采用折线压扩的特点:基本上保持了连续压扩特性曲线的优点,又便于数字电路的实现。
3
实际中A律常采用13折线近似
图2 A律13折线
其具体分法如下:
先将X轴的区间[0,1]一分为二,其中点为1/2,取区间[1/2,1]作为第八段; 区间[0,1/2]再一分为二,其中点为1/4,取区间[1/4,1/2]作为第七段; 区间[0,1/4]再一分为二,其中点为1/8,取区间[1/8,1/4]作为第六段; 区间[0,1/8]一分为二,中点为1/16,取区间[1/16,1/8]作为第五段; 区间[0,1/16]一分为二,中点为1/32,取区间[1/32,1/16]作为第四段; 区间[0,1/32]一分为二,中点为1/,取区间[1/,1/32]作为第三段; 区间[0,1/]一分为二,中点为1/128,区间[1/128,1/]作为第二段; 区间[0,1/128]作为第一段。
然后将Y轴的[0,1]区间均匀地分成八段,从第一段到第八段
分别为[0,1/8],(1/8,2/8],(2/8,3/8],(3/8,4/8],(4/8,5/8],(5/8,6/8],
4
(6/8,7/8],(7/8,1]。分别与X轴对应。
编码的码字和码型:
二进制码可以经受较高的噪声电平的干扰,并易于再生,因此PCM中一般采用二进制码。对于Q个量化电平,可以用k位二进制码来表示,称其中每一种组合为一个码字。在点对点之间通信或短距离通信中,采用k=7位码已基本能满足质量要求。而对于干线远程的全网通信,一般要经过多次转接, 要有较高的质量要求,目前国际上多采用8位编码PCM设备。
码型指的是把量化后的所有量化级,按其量化电平的大小次序排列起来,并列出各对应的码字,这种对应关系的整体就称为码型。在PCM中常用的码型有自然二进制码、折叠二进制码和反射二进制码(又称格雷码)。 码位的安排:
目前国际上普遍采用8位非线性编码。例如PCM 30/32路终端机中最大输入信号幅度对应4 096个量化单位(最小的量化间隔称为一个量化单位), 在4 096单位的输入幅度范围内,被分成256个量化级,因此须用8位码表示每一个量化级。用于13折线A律特性的8位非线性编码的码组结构如下:
极性码 M1 段落码 M2M3M4 段内码 M5M6M7M8 其中,第1位码M1的数值“1”或“0”分别代表信号的正、负极性,称为极性码。从折叠二进制码的规律可知,对于两个极性不同,但绝对值相同的样值脉冲,用折叠码表示时,除极性码M1不同外,其余几位码是完全一样的。因此在编码过程中,只要将样值脉冲的极性判出后,编码器便是以样值脉冲的绝对值进行量化和输出码组的。这样只要考虑13折线中对应于正输入信号的8段折线就行了。这8段折线共包含128个量化级,正好用剩下的7位码(M2,…, M8)就能表示出来。
5
三、实验内容:
1、熟悉simulink的工作环境; 1)建立正弦仿真电路图(见图3)
2)观察并记录正弦信号源、示波器的仿真波形 2、构建PCM编码器电路模型、分析仿真波形; 1)构建PCM编码器电路模型(见图5) 2)设置测试参数
3)观察、记录、分析仿真波形
3、构建PCM解码器电路模型、分析仿真波形; 1)构建PCM解码器电路模型(见图6) 2)设置测试参数
3)观察、记录、分析仿真波形
4、 无干扰信号的PCM编码与解码电路模型构建、分析仿真波形。
1)构建PCM解码器电路模型(见图7) 2)设置测试参数
3)观察、记录、分析仿真波形
四、实验步骤:
1、simulink的工作环境熟悉
建立一个很小的系统,用示波器观察正弦信号的平方的波形,如图3 系统中所需的模块:正弦波模块,示波器模块。
6
图3 正弦仿真电路图
正弦波参数如下:
图4 正弦波参数设置
记录系统内的示波器显示的波形。
7
2、构建PCM编码器电路模型、分析仿真波形;
图5 13折线近似的PCM编码器测试模型
测试模型如图5所示。其中以Saturation作为限幅器,将输入信号幅度值在PCM
8
编码的定义范围内,以A-Law Compressor作压缩器,Relay模块的门限值设置为0,其输出即可作为PCM编码输出的最高位——极性码。样值取值绝对值后,用增益模块将样值放大到0-127,然后用间隔为1的Quantizer进行四舍五入取整,最后将整数编码为7位二进制序列,作为PCM编码的低7位。可以将上图中Constant和Display(不含)之间的模块封装一个PCM编码子系统备用。
具体的参数设置如下:
1. A-Law Compressor:
2. Abs:
3. Relay:
9
4. Gain:
5. Quantizer:
6. Integer to Bit Converter:
10
7. Display:
8. Mux:
9. Saturation
封装之后的PCM编码子系统:
11
图标为:
3、构建PCM解码器电路模型、分析仿真波形; 12
图6 13折线近似的PCM解码器测试模型
测试模型如图6所示,其中PCM编码子系统是3.2中编码器封装之后的。PCM解码器中首先分离并行数据中的最高位(极性码)和7位数据,然后将7位数据转换位整数值,再进行归一化,扩张后与双极性的极性码相乘得出解码值。可以将该模型中In1 Out1右端和Display左端的部分封装为一个PCM解码子系统备用。
具体的参数设置如下:
1. Demux:
2. Mux1:
13
3. Relay1:
4. Bit to Integer Converter:
14
5. Gain1:
6. A-Law Expander:
7. Product:
15
封装之后的PCM解码子系统:
图标为:
4、 无干扰信号的PCM编码与解码
图7 PCM编码器和解码器(无噪声)测试模型
测试模型如图7所示,其中PCM编码与解码子系统已经封装好了。经过编码与解码
16
之后,然后通过低通滤波器,最后在示波器Scope上得出输出波形,示波器上还显示了原信号,以便与输出信号进行比较。在编码器之后通过Display和Scope1显示出PCM数字信号,注意:在通过示波器前需经过To Frame和Buffer,其中To Frame是用来形成帧信号,Buffer是缓冲器。
具体的参数设置如下:
1. Sine Wave:
2. Display:
17
3. To Frame:
4. Buffer:
5. Scope1:
18
6. Analog Filter Design:
7. Scope:
19
8. 系统总的仿真参数:
五、实验报告要求
1、画出各实验电路的测试模型图,并简要叙述其工作过程。 2、画出各实验电路的仿真波形并分析。 3、总结A律PCM编码8bit编码的方法。 4、心得体会。
20