基于SIMULINK的PCM编码与解码的研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

郑州大学西亚斯国际学院
本科毕业论文(设计)
题目基于SIMULINK的PCM编码与解码的研究指导教师职称
学生姓名学号20091521222
专业电子信息工程班级 2
院(系)电子信息工程学院电子工程系
完成时间2013年4月18日
基于SIMULINK的PCM编码与解码的研究
摘要
脉冲编码调制(pulse code modulation),简称脉码调制,就是我们所要研究的PCM。

脉冲编码调制是不仅理论上已经很完善,而且在概念上也很简单的编码系统。

它很早就被广大的通信研究者研制出来了,不仅使用广泛,而且原理简单。

我们运用MATLAB软件中的Simulink工具来实现PCM 编解与解码的仿真,其设计方便简单而且操作方便灵活,从使得整个电路设计上的编码和解码易于完成。

本论文所要研究的通信过程主要为抽样、量化、编码等步骤,MATLAB软件中的Simulink工具就为建立实际的通信系统提供了实验仿真。

利用MATLAB集成环境下的Simulink仿真平台提供的信号处理工具箱和通信工具箱中的模块,充分发挥了Simulink建模简单,参数易于调整的特点。

用示波器观察所设计的PCM的编码与解码前后的信号波形,加上各种信号源,用误码测试模块测量误码率;最后根据运行结果和波形来分析该系统的性能。

关键词MATLAB/Simulink仿真平台/PCM编码与解码
STUDY ON PCM ENCODING AND
DECODING BASED ON SIMULINK
ABSTRACT
Pulse Code Modulation (pulse code modulation), known as pulse code modulation, which is what we want to research.Pulse code modulation is not only theoretically have been perfect, but also conceptually very simple coding system.Early on, its researchers developed a general communications, not widely used, but also simple in principle.We use Simulink in MATLAB software tools to decode PCM series solutions and simulation, its design, simple and easy to operate flexibly, makes the whole encoding and decoding on the circuit design is easy to complete. This paper studies the communication process primarily for sampling, quantization and coding procedures, Simulink in MATLAB software provides the tools to build the actual communication system simulation.
Using MATLAB Simulink simulation platform of integrated environment provides communications and signal processing toolbo x tool box module, give full play to the Simulink model simple parameters adjustment feature. Design of PCM encoding and decoding using oscilloscope observation posts around signal waveform, plus
a variety of signal sources, measuring BER error test modules and finally according to the operating result and waveform to analyze the performance of the system.
KEY WORDS MATLAB,Simulink simulation,PCM coded and decode
目录
摘要 (I)
ABSTRACT (II)
1. 绪论 (1)
1.1 研究的背景 (1)
1.2 设计的内容及目的 (2)
2. Simulink工具介绍 (3)
2.1 Simulink介绍 (3)
2.2 Simulink的功能和特点 (3)
3. PCM基本原理 (4)
3.1 抽样 (4)
3.2 量化 (4)
3.3 编码 (7)
3.4 时分多路复用 (9)
4. PCM系统仿真电路设计 (10)
4.1 总体设计思想 (10)
4.2 各模块的设计和仿真图形分析 (10)
4.2.1 PCM编码模块设计 (10)
4.2.2 PCM解码模块设计 (14)
4.2. 3 PCM系统总体模块 (16)
结束语 (19)
结论 (21)
致谢 (22)
参考文献 (23)
1. 绪论
1.1 研究的背景
PCM技术是英国人A.里弗斯提出来的,后来的数字移动通信技术则运用的就是PCM技术。

室内电话网中PCM技术的使用使音频电缆芯线的传输容量大大提高了。

70年代的中后期,PCM技术又成功的应用于各种中、大容量传输系统。

随着电子信息产业的迅速发展,通信技术运用的范围越来越广泛,其中,市话中继传输和大容量干线传输以及数字程控交换机以及用户话机中都采用了PCM技术。

对连续变化的模拟信号进行抽样、量化和编码产生了数字信号,这称为PCM (pulse code modulation),即脉冲编码调制。

虽然目前数字移动通信中的PCM 技术已经发展的相当成熟,但是,最开始传输计算机数据用的是使交换机之间有一条中继线,不是只传送一条电话信号。

PCM有两种标准(表现形式)即T1和E1。

中国采用的是欧洲的E1标准。

T1的速率是1.544Mbit/s,E1的速率是2.048Mbit/s。

PCM技术可以发展包括多项业务,其中,不仅包括数字数据专线的业务,而且包括图片传输、话音传输等其他的业务。

脉冲编码调制是70年代末发展起来的。

80年代初飞利浦和索尼公司共同推出了记录媒体之一,CD。

采用脉冲编码调制音频格式的就有DVD-A,它支持立体声和5.1环绕声。

脉冲编码调制的比特率,采样频率从44.1kHz发展到192kHz。

脉冲编码调制这项技术可以改善和提高的方面则越来越小。

要想从根本上改变PCM技术上的各种问题,必须从各个方面入手,只是简单的增加脉冲编码调制比特率和采样率是不行的。

其原因是脉冲编码调制的主要问题在于:
(1)需要在脉冲编码调制数字音频系统的输入端设置急剧升降的仅让
20Hz-22.05Hz的频率通过(高端22.05kHz是由于CD44.1kHz的一半频
率而确定)的滤波器。

(2)在录音时采用数字滤波器是为了减低采样频率,在重放时也采用数字滤
波器为了提高采样频率,两者都需要加入重复定量噪声,这是为了控制
小信号在编码时的失真。

但是,这样就限制了PCM技术在音频还原时的
真实度。

DSD是PCM脉冲编码调制的进化版,它记录媒体为超级音频CD即SACD,支持立体声和 5.1环绕声,这不仅获得了更高的音质,也全面改善了PCM 数字音频技术。

1.2 设计的内容及目的
本设计研究的内容是利用MATLAB集成环境下的Simulink仿真平台,设计一个PCM通信系统。

PCM通信系统在功能强大的Simulink仿真环境之下,能够很好的为现实工作提供各种方便。

本设计的研究目的是在学习通信原理基本原理基础上,学习PCM调制解调方法;掌握脉冲编码调制技术特点;熟悉MATLAB软件的相关知识;并能够运用MATLAB软件工具对PCM系统进行辅助设计和仿真研究。

1.3研究的内容安排
本论文的主要内容包括以下四部分:
1.第一部分是介绍Simulink工具箱。

Simulink工具是可以实现动态系统建模和仿真的软件包,它不仅调试直观,而且操作简单方便,为PCM技术的编码与解码的仿真提供了各种方便。

2.第二部分是阐述PCM系统的基本原理。

PCM系统包括将模拟信号数字化、信道传输和把数字信号还原为模拟信号等三大模块,其中模拟信号的数字化包括抽样、量化和编码三个步骤;信号在信道中传输,这一过程可能会引入噪声而影响信号的可靠性;最后数字信号还原成模拟信号包括解码、低通滤波等过程,它把数字信号恢复成模拟信号。

第三部分是设计PCM系统仿真模块。

包括总体设计思想和编码、解码等子模块的设计。

第四部分是结束语、结论和致谢,主要是介绍在毕业设计过程中的心得体会等。

2. Simulink工具介绍
2.1 Simulink介绍
Simulink是MATLAB软件中最重要的组件之一。

在Simulink的仿真环境中,不用过多的添加各种大量的程序代码,只用在Simulink的仿真界面上添加自己需要的各种仿真器件即可构造出庞杂的通信系统。

基于Simulink 的操作方便,使用灵活的特点,各种公司也积极的对它加以使用。

其中,PCM技术的编码与解码就在该环境之下成功的进行了设计研究。

2.2 Simulink的功能和特点
连续采样时间、离散采样时间或两种混合的采样时间的需求都可以使用工具Simulink进行建模,在这种仿真平台之中,不同的系统部分可以运用不同的速率,即不同部分可以使用不一样的采样速率。

Simulink提供了一个建立模型方块图的图形用户接口(GUI)以创建动态系统模型,这个过程只需要使用鼠标即可,操作简单方便。

大量产品扩展了Simulink多领域建模功能这是构架在Simulink基础之上的。

Simulink是MATLAB中的一个仿真平台,它能够使用MATLAB中的各种的工具来进行各种所需的运算和仿真。

Simulink的特点:
以设计功能的层次性来分割模型,实现对复杂设计的管理。

丰富的可扩充的预定义模块库。

提供API用于与其他仿真程序的连接或与手写代码集成并且可以交互式的图形编辑器来组合和管理直观的模块图。

使用Embedded MATLAB 模块在Simulink和嵌入式系统执行中调用MATLAB算法。

诊断设计的性能和异常行为的仿真结果观察方便。

3. PCM 基本原理
脉冲编码调制(PCM )是一种用二进制数字代码来代替连续信号的抽样值,从而实现通信的方式。

因为脉冲编码调制的抗干扰能力强,易于实现等特点使得这种实现通信的工作方式得到了广泛的使用。

PCM 信号的形成是模拟信号经过“抽样、量化、编码”三个步骤实现的。

它们在原理上分别是信号完成在时间上离散、信号在幅度上离散和量化后的信号的用二进制数字表示等步骤。

根据相关建议,为了改善小信号量化的性能,采用压扩非均匀量化,我国和欧洲采用了A 律方式,这种方式实现起来比较复杂,因此常使用 13 折线法编码。

3.1 抽样
对模拟信号进行周期性扫描,把时间上连续的信号变成时间上离散的信号就是抽样。

该模拟信号经过抽样后还应当包含原信号中所有信息,也就是说能无失真的恢复原模拟信号。

由抽样定理确定它的抽样速率下限。

如果一个连续信号f (t )的频谱中最高频率不超过f ,当抽样频率F ≥2f 时,抽样后的信号就包含原连续的全部信息。

这就是抽样定理。

3.2 量化
如图 3.1所示量化器Q 输出L 个量化值k y ,k=1,2,3,…,L 。

k y 常称为重建电平或量化电平。

如下图所示,当输入量化器信号幅度x 落在k x 与1+k x 之间时,量化器的输出电平为k y 。

这个量化过程可以表达为:
L k x Q x Q y y x x k k k ,...,3,2,1,}{)(1==<<==+
这里k x 称为分层电平或判决阈值。

通常k k k x x -=∆+1称为量化间隔。

图3-1 模拟信号的量化
量化后的抽样信号会有所失真,并且不再是时间上和幅度上连续的信号。

这种量化后的失真部分的信号通过接收端再还原为模拟信号则为信号噪声,这称为量化噪声。

样值分级“取整”的方式决定了量化噪声的大小。

样值所分的级数越多,量化噪声就越小,被还原的模拟信号就越准确。

模拟信号的量化分为均匀量化和非均匀量化。

无论抽样值大小如何,量化噪声的均方根值都固定不变,这是均匀量化的主要缺点。

因此,当信号小时,信号量噪比也小。

所以,这种均匀量化器对于小输入信号很不利。

为了克服这个缺点,实际中,往往采用非均匀量化。

非均匀量化的量化间隔的确定根据的是信号的不同区间。

对于信号取值小的区间,其量化间隔v ∆也小;反之,量化间隔就大。

它与均匀量化相比,有两个突出的优点。

通常将抽样值通过压缩再进行均匀量化就是是非均匀量化。

一般使用的压缩器中,大多采用对数式压缩。

广泛采用的两种对数压缩律是μ压缩律和A 压缩律。

由于我国和欧洲各国采用的都是A 律压缩方式,所以PCM 编码方式采用的也是A 压缩律。

所谓A 律压缩方式具有以下公式:
A
x A Ax y 10,ln 1≤<+= ; 11,ln 1ln 1<≤++=x A
A Ax y
由于13折线(A=87.6)的压扩特性和A 律函数规律很相近,并且A 律压缩特性函数的电路实现十分复杂。

所以,实际上我们通常采用13折线(A=87.6)的压扩特性来模拟A 律压缩特性。

这样,它不仅保持了连续压扩特性曲线的优点,而且易于用电路实现。

这就对于我们继续研究通信技术提供了方便。

该篇文章的PCM 编码采用的就是13折线(A=87.6)的压扩特性来进行PCM 编码的。

表3-1列出了13折线时的x 值与计算x 值的比较。

图3-2 A律函数13折线
表3-1 13折线时的x值与计算x值的比较
3.3 编码
我们把量化后的离散信号变换成二进制数代码就是编码,那么它的相反过程就称为解码。

本论文所说的PCM的编码与译码是属于信源编码的范畴。

在一定的取值范围内,量化后的抽样信号仅有有限个可取的样值,并且信号正、负样值的个数相等,这是由于信号正、负幅度分布的对称性所决定的,信号的正、负向的量化级对称分布。

如果将有限个从小到大依次排列的量化样值的绝对值相应的依次赋予一个十进制数字代码的话,并且使用“+”、“-”符号作为数字代码的前缀来区分样值的正负,那么按照抽样时序排列的一串十进制数字码流就是由量化后的抽样信号转化而来的,即十进制数字信号。

编码就是把量化的抽样信号变换成给定字长的二进制码流的过程。

当前编码的方法有很多,不过在现如今的编码方法中,如果按照编码的速度来分,大致可分为低速编码和高速编码两大类。

通信中一般都采用第二类。

编码器的种类大体上可以归结为三类:逐次比较型、折叠级联型、混合型。

逐次比较型是一种很好的编码方式,在它的编码方式中,无论采用几位码,通常均按照极性码、段落码、段内码的顺序排列。

下面结合13折线的量化来加以说明。

表3-2 段落码
表3-3 段内码
在13折线(A=87.6)的压扩特性法中,不管输入的是什么样的信号,全部按照包括8个段落来进行PCM编码。

如果用8个段落来表示量化后的抽样信号,那么它的极性则用第一位数字表示,剩下的七位,也就是第二位至第八位则表示量化后的抽样信号的绝对大小。

PCM编码的具体原理是:段落码用第二位到第四位三位数字表示,它的8个段落的起始电平用相应的可能状态来分别表示。

段内码则用其他剩下的四位数字来代表,它的每一个段落的16个均匀划分的量化级分别用相应的16种状态来表示。

这样编码的结果是,第一和第二个段落被划分为16个量化级,以后的段落分别是前一个段落的2倍,那么8个段落就被划分
成了128个量化级。

段落码和8个段落之间的关系如表3-2所示;段内码与16个量化级之间的关系见表3-3。

我们日常的话音PCM采样速率为每秒8KHZ,那么话音数字编码信号的速率就为8bits×8kHz=64kb/s,因为每个量化样值对应一个8位二进制码。

量化噪声随级数的增多和极差的缩小而缩小。

由于量化噪声随着编码的位数增加而减少,即增加编码位数有利于提高量化后的信号的真实度。

但是要使样值的个数增多,那么我们就要求量化级数增加,即需要更长的二进制编码,这就增加了编码的难度和复杂度。

大自然中的声音变幻莫测,充满着各式各样的声音信号,那么它们相应的波形也必然是复杂多变的。

一般我们使用的是脉冲编码调制编码,就是本论文所说的PCM编码。

PCM编码依次通过抽样、量化和编码三个步骤将连续变化的模拟信号转换为在时间和幅度上都离散的数字编码。

3.4 时分多路复用
为了扩大通信链路的容量,我们通常采用复用。

即在一条链路上传输多路独立的信号,实现多路通信。

复用的方法有很多种,包括时分复用(TDM)和频分复用(FDM)。

但是,随着技术的发展,如今时分复用的应用要比频分复用更为广泛。

如下图3-3就是时分多路复用的原理示意图。

图3-3 时分多路复用
4. PCM系统仿真电路设计
4.1 总体设计思想
该论文设计的4路PCM信号是根据1路PCM的基本原理设计而来的,通过不同时隙的信道复用在同一个信道进行了传输,再根据不同时隙把各个信号提取出来。

根据PCM的仿真系统的原理我们能够清楚的了解到它包含连续的模拟信号转化为离散的数字信号模块、信道传输模块、离散的数字信号还原为连续的模拟信号模块等三大模块。

这当中模拟信号转化为数字信号需要抽样,量化和编码三个步骤来完成;信道则是传输信号的通道,信号在信道中传输可能会引入噪声从而会降低通信的质量,也就是会对信号的还原造成影响;由解码、低通滤波、放大输出等过程的组成则是将数字信号还原为模拟信号,他们将离散的数字信号还原为连续的模拟信号。

其原理方框图如图4-1所示:
图4-1 PCM原理框图
4.2 各模块的设计和仿真图形分析
4.2.1 PCM编码模块设计
图4-2 13折线近似的PCM编码器测试模型
本设计首先设计了幅度为1,角频率为200*pi的正弦信号,它是1路信号的编码模块。

再通过奈奎斯特抽样定理我们可以知道抽样的速率不应低于信号最高频率的2倍。

因此,本设计的抽样时间间隔定为0.001s,符合奈奎斯特抽样定理。

其中各个模块功能和参数设置如下:
Zero-Order Hold :它是对输入的一段抽样时间进行保持的零阶保持器。

参数设置中的取样时间间隔为信号的抽样时间间隔0.001s。

Saturation:它是将输入信号的幅度限制在一定范围内的限幅器。

本设计将输入信号幅度限制在[-1,+1]范围内。

Relay:继电模块,它的作用是实现在两个不同常数值之间进行切换。

此模块在本设计中的门限值设为0,其PCM编码输出的最高位就是它的输出,也就是极性码,当输出为1时抽样值就是正值,当为输出为0时抽样值就是负值。

Abs:绝对值模块,它的作用是对输入数值取绝对值。

A-Law Compressor:A率压缩器,它的作用是对输入信号进行A率压缩。

在本设计中A取87.6。

Gain:增益模块,它的作用是对数值的大小增加或减小倍数。

因为将输入信号的幅度限制在[-1,+1],所以为了方便编码就将Gain的增益参数设置为127。

Quantizer:它是将一个连续幅度值映射成一个离散幅度值的量化器。

在该设计中将量化间隔设为1,它使输入数值根据四舍五入的原则量化成相应的离散值。

Integer to Bit Converter:整数点转换器,它的作用是将整数值转换为相应的二进制数值。

本设计中由于量化值最大为127,因此此模块参数设为7,即将十进制整数转换为7位二进制数值。

Mux:复用器,它的作用是将多路信号复用为一路信号。

在该设计中此模块输入参数设置为2。

To Frame:装帧器。

Buffer:缓冲器。

Scope:示波器,它的作用是显示输出信号波形。

输出波形如图4-3所示:
图4-3 PCM信号波形
将编码模块封装成子系统后如图4-4所示:
图4-4 封装之后的PCM编码子系统:
图4-5 封装之后的PCM编码子系统图标
下面图4-6是本设计的 4路PCM信号编码模块:
图4-6 4路PCM信号编码模块
角频率分别为200*pi,150*pi,100*pi和50*pi的且幅度均为1的正弦信号就4路PCM模拟信号,它们的抽样时间间隔都设为0.001s,符合奈奎斯特抽样定理。

4个子系统是PCM编码子系统,Mux模块是信道复用模块,由4路信号输入复用,因此此模块输入参数设为4。

示波器显示的是4路信号复用后的波形,如图4-7所示。

图4-7 4路信号复用后波形
4.2.2 PCM解码模块设计
图4-8 13折线近似的PCM解码器测试模型
上图是1路信号的解码模块。

其中各个模块的功能和参数设置如下:
Demux:分离器,它的作用是将复用的多路信号分离出来。

在此解码模块中信号应分离成一路极性脉冲和7路数值脉冲,因此输出参数设为8。

Mux:复用器。

此模块中输入脉冲由7路二进制数值脉冲组成,因此输入参数设为7。

Relay:继电模块,它的作用是确定信号的极性。

Bit to Integer Convertert:位转换器,它的作用是将二进制脉冲转换为十进制数。

同编码模块中的Integer to Bit Convertert,此模块参数也设为7。

Gain:增益模块,和编码模块相反,此模块增益参数设为1/127。

A-Law Expander:A率扩展器,它的作用是对输入信号进行A率扩展,此模块中A 设为87.6。

Product:它是将极性脉冲和正值数值脉冲相乘以得到有极性的数值的相乘器。

此模块的输入参数设为2。

Analog Filter Design :模拟低通滤波器。

它的作用是得到回复原始的模拟信号。

此滤波器的最高频率设为250*pi,符合条件,可以恢复原始的模拟信号。

将此解码系统封装成子系统后如图4-9所示:
图4-9 封装之后的PCM解码子系统
图4-10 封装之后的PCM解码子系统图标
下面是本设计的4路PCM解码模块:
图4-11 4路PCM信号解码模块
解码模块是复用信号经过信道后通过Demux模块把各路信号分离出,然后分别进行解码,4个子系统是4路信号的解码模块。

由于此复用信号是由4路信号复用而成,因此Demux的输出参数设为4。

4.2. 3 PCM系统总体模块
图4-12 PCM系统总体模块
我们要尽可能增加信道的信噪比来降低误码率,这是因为在信道中会引入噪声,这可能会影响信号的质量继而影响通信质量。

在该设计中信道误码率设为0.01,属于正常的误码率,符合条件。

最后输出信号和输入信号通过示波器如图4-14和图4-15所示。

图4-14 1路PCM 信号仿真结果
图4-14中的示波器的波形由两路信号组成,一路是经过编码、信道传输和解码等恢复的模拟信号波形,另一路是原始输入的模拟信号波形,通过观察可知,输出波形和输入波形误差较小,该系统设计正确。

图4-15 4路PCM信号仿真结果
图4-15的示波器中,上面4路信号是经过编码、信道传输和解码等步骤恢
复的4路信号,下面的是原来的4路输入模拟信号。

由图可知,不同频率的信号,所产生的误差用数字信号来传输时误差基本相同。

综上可知,输出信号和输入信号相比,误差较小,因此在正常信噪比的条件下,该通信系统各个模块使用正确,参数设置适当,可以达到预期的目的。

结束语
随着毕业的日子即将到来,历经半年的毕业设计也接近了尾声。

通过这半年的毕业设计,我明白了自己需要学的知识还很多。

毕业设计不仅仅是对几年所学只是的总结,更是对自己能力的一种提高。

下面我对这半年来毕业设计的过程做一些总结:
第一,选择毕业设计题目时,武丽老师给了十几个毕业设计的题目供大家选择,由于我考研的专业课学的就是通信原理,所以选题的时候我毅然决定做通信原理这方面的设计,感觉对里面的知识是比较熟悉的,也比较好上手。

最后我就选了基于Simulink的PCM编码与解码的研究这一题目。

第二,题目确定后,我一边准备研究生考试,一边开始着手毕业设计方面的准备了。

找资料是一个很复杂的过程,网上搜索到的大部分都是涉及PCM原理的期刊杂志之类的,而具体怎么做的论文是很难搜到的。

由于从来没做过毕业设计,怎么做,做到什么程度都是一头雾水,我只能天天去图书馆搜相关书籍和期刊了,后来还在相关同学朋友的介绍下,我找到了很多与PCM相关的论文和期刊。

毕业设计要求使用MATLAB中的Simulink工具包进行仿真实现。

第三,PCM的原理虽然很清楚,但具体设计时用哪些模块呢,一大堆的问题就出现了。

怎么编码,怎么复用以及怎么形成帧等等,都是需要解决的问题。

我一直在反复琢磨着这些问题,一边参考着网上搜索到的那些资料,一边自己进行思考。

这期间我询问了有关老师和身边的同学朋友,他们帮助我解决了大量的该方面的问题。

第四,在最后的这段日子里,我对前期所搭建的模块进行了进一步的完善。

毕业设计论文的书写的工作是非常繁琐的。

首先是要确定论文的大致目录。

分为几章来写,每一章又分为几小节,每一小节又具体要要写些什么。

这些工作都需要进行认真的思考,因为论文的书写是对整个毕业设计的总结。

书写论文首先要确定论文的大致轮廓即目录,由于我的题目是关于PCM的和利用Simulink来完成的,因此首先要介绍一下PCM的基本原理和Simulink的功能和特点。

论文最主要的部分就是自己的设计部分,这是整个论文的核心内容,对于这部分内容,。

相关文档
最新文档