基于Matlab程序的PCM系统仿真汇总.docx
- 文档编号:27154081
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:29
- 大小:211.54KB
基于Matlab程序的PCM系统仿真汇总.docx
《基于Matlab程序的PCM系统仿真汇总.docx》由会员分享,可在线阅读,更多相关《基于Matlab程序的PCM系统仿真汇总.docx(29页珍藏版)》请在冰豆网上搜索。
基于Matlab程序的PCM系统仿真汇总
通信原理课程设计
题目基于Matlab程序的PCM系统仿真
学生姓名赵欣学号1213024111
所在学院物理与电信工程学院
专业班级通信工程1204班
指导教师魏瑞
完成地点博远楼
2015年3月28日
基于Matlab程序的PCM系统仿真
xx
(陕西理工学院物理与电信工程学院通信工程专业xx班,陕西汉中723003)
指导教师:
xx
[摘要]在数字通信传输系统中,都是采用脉冲编码调制(pulse-code-modulation),简称PCM。
PCM是对模拟信号进行抽样、量化和编码产生数字信号。
抽样,就是对模拟信号进行周期性扫描,把时间上连续的信号变成时间上离散的信号。
量化,就是把经过抽样得到的瞬时值将其幅度离散,即用一组规定的电平,把瞬时抽样值用最接近的电平值来表示。
一个模拟信号经过抽样量化后,得到已量化的脉冲幅度调制信号,它仅为有限个数值。
编码,就是用一组二进制码组来表示每一个有固定电平的量化值。
[关键词]PCM量化编码µ压缩律
ThePCMSystemBasedOnMatlabSimulation
xxx
(Grade20xxClassxxMajorofCommunicationEngineering,SchoolofPhysicsandTelecommunicationEngineeringofShaanxiUniversityofTechnology,Hanzhong723003,Shaanxi)xx
Abstract:
Indigitalcommunicationtransmissionsystem,usingpulsecodemodulation,Hereinafter
ReferredtoasPCM.PCMiscarriedoutontheanalogsignaldigitalsignalsampling,quantizationandcoding.Periodicallyscan,ananaloguesignalsampling,thatis,thecontinuoustimesignalintoadiscretetimesignal.Quantitative,isaftersamplingtheinstantaneousvalueoftheamplitudeofdiscrete,whichUSESasetofrulesoflevel,theinstantaneoussamplingvalueofthemostclosetothelevelofvalue.Ananalogsignalaftersamplingquantizationhasquantitativepulseamplitudemodulationsignal,itisonlyafinitenumberofvalues.Coding,whichisexpressedinagroupofbinarycodegroupeachhaveafixedlevelofquantitativevalues.
Keywords:
PCM,quantization,coding,Thecompressionlawofµ
任务书
设计题目基于MATLAB的PCM系统仿真
学生信息
姓名
xx
性别
女
班级
xxxxx
学号
xxxx
任务要求
掌握
模拟信号数字化的基本原理,研究15折线法在编码译码过程的应用,并通过MATLAB语言平台仿真验证抽样定理、抽样信号的量化、编码、译码。
所需实验设备、器材、软件
设备:
计算机
软件:
Matlab
设计与制作方案、所用方法及技术路线
掌握模拟信号数字化基本原理,熟悉方法。
熟练掌握MATLAB语言,能够独立编写程序,完成对相应方法的计算机仿真。
研究快速傅里叶变换在信号谱分析中的应用,并通过计算机仿真验证抽样定理、抽样信号的量化、编码、译码。
研究基于15折线的PCM系统,并用Matlab对算法进行仿真实验。
设计与制作进度
课设在3月8日初步确定方案,3月12日开始软件的编写,3月16日完成软件的调试,3月18日开始课设报告的撰写。
设计与制作完成情况
本次课程设计基于MATLAB仿真,已经完成并可以通过程序实现15折线PCM系统仿真研究。
设计与制作收获及总结
熟悉了MATLAB软件,掌握了模拟信号数字化的完整过程,本次课设在以后进一步对信号处理与分析以及有关于PCM系统的数据处理的学习中有很大的帮助。
学生签字年月日
设计与制作成绩(五级制)
指导老师签字年月日
教研室意见
教研室主任签字年月日
备注:
学生除填写本表相应的内容外,还应撰写一份完整的设计与制作报告(1.题目;2.目的;3.原理;4.器材;5.方案;6.说明等)
目录
一、绪论1
1.1课题研究背景1
1.2课题研究目的与意义1
二、基本原理2
2.1对模拟信号进行抽样2
2.2对离散数字信号序列量化3
2.3对量化后的数字信号进行编码5
2.3.1编码5
2.3.2µ律15折线5
2.4对编码后的信号进行译码8
2.4.1译码准则8
2.4.2译码算法8
三、PCM系统仿真8
3.1抽样定理的验证8
3.2量化、编码与译码10
四、仿真结果及其分析10
4.1抽样定理的验证10
4.2量化与编码分析12
五、结论13
致谢14
参考文献15
附录16
一、绪论
1.1课题研究背景
1837年,莫尔斯完成了电报系统,此系统于1844年在华盛顿和巴尔迪摩尔之间试运营,这可认为是电信或者远程通信,也就是数字通信的开始。
数字化可从脉冲编码调制开始说起。
1937年里夫提出用脉冲编码调制对语声信号编码,这种方法优点很多。
例如易于加密,不像模拟传输那样有噪声积累等。
但在当代代价太大,无法实用化;在第二次世界大战期间,美军曾开发并使用24路PCM系统,取得优良的保密效果。
但在商业上应用还要等到20世纪70年代。
才能取代当时普遍采用的载波系统。
我国70代初期决定采用30路的一次群标准,80年代初步引入商用,并开始了通信数字化的方向。
数字化的另一个动向是计算机通信的发展。
随着计算机能力的强大,并日益被利用,计算机之间的信息共享成为进一步扩大其效能的必需。
60年代对此进行了很多研究,其结果表现在1972年投入使用的阿巴网。
由此可见,通信系统中的信息传输已经基本数字化。
在广播系统中,当前还是以模拟方式为主,但数字化的趋向也已经明显,为了改进质量,数字声频广播和数字电视广播已经提前到日程上来,21世纪已经逐步取代模拟系统。
尤为甚者,设备的数字化,更是日新月异。
近年来提出的软件无线电技术,试图在射频进行模数,把调制解调和锁相等模拟运算全部数字化,这使设备超小型化并具有多种功能,所以数字化进程还在发展。
1.2课题研究目的与意义
我的课题是模拟信号数字化,在PCM系统下利用15折线法对抽样数据进行量化编码译码。
一方面通过学习掌握模拟信号数字化的基本原理,传输的过程和分析方法,能懂得通信系统的基本原理和构成,了解有关通信系统的中的技术指标及改善系统性能的一些基本技术措施,为我们全面、系统的了解信号传输过程提供了理论依据。
另一方面,使我们了解到MATLAB软件程序仿真有着更深的了解。
传统的实验教学方法是要求学生完成某一典型电路的验证。
其实验步骤等都是事先安排好的,实验结果往往也大同小异,学生得不到创新能力的培养,故实验教学有待于改革。
然而,仿真实验的应用改变了传统教育模式,使教育的模式发生了根本性的变化,大大提高了学生的综合、设计、创新能力的培养。
而且研发经费不断增加,也制约着技术的发展。
对于正在规划和设计中的通信系统项目,可先建立相应的方案模型。
通过计算机软件仿真对系统进行多种方案设计和参数实验,得到最佳方案。
二、基本原理
通信系统可以分为模拟和数字通信系统两大类。
数字通信系统有很多的优点,应用非常广泛,已经成为现代通信的主要发展趋势。
自然界中很多信号都是模拟量,我们要进行数字传输就要将模拟量进行数字化,将模拟信号数字化,处理可以分为抽样,量化,编码译码这三个步骤。
下图是模拟信号数字传输的过程原理图:
f(t)f(t)f(n)g(n)g(t))
p(t)
图2.1模拟信号数字传输过程原理图
下图是模拟信号数字化过程:
图2.2模拟信号数字化过程
2.1对模拟信号进行抽样
抽样是把时间上连续的模拟信号变成一系列时间上离散的抽样值的过程。
抽样定理:
设一个频带限制的(0,
)Hz内的时间连续信号
如果它不少于2fH次/s的速率进行抽样,则
可以由抽样值完全确定。
抽样定理指出,由样值序列无失真恢复原信号的条件是
,为了满足抽样定理,要求模拟信号的频谱限制在0~
之内(
为模拟信号的最高频率)。
为此,在抽样之前,先设置一个前置低通滤波器,将模拟信号的带宽限制在
以下,如果前置低通滤波器特性不良或者抽样频率过低都会产生折叠噪声。
抽样频率小于2倍频谱最高频率时,信号的频谱有混叠。
抽样频率大于2倍频谱最高频率时,信号的频谱无混叠。
取样分为冲激取样和矩形脉冲取样,这里只详细介绍冲激取样的原理和过程,矩形脉冲取样的原理和冲激取样的是一样的,只不过取样函数变成了矩形脉冲序列。
数学运算与冲激取样是一样的。
冲激取样就是通过冲激函数进行取样。
上图左边就是简化的模拟信号转换离散的数字信号的抽样过程,其中
是连续的时间信号,也就是模拟信号,在送到乘法器上与
取样脉冲序列进行乘法运算,事实上取样脉冲序列就是离散的一个个冲激函数(冲激函数如上图右边的图),右边部分的
就是变成了一个个离散的函数点了。
下面给出抽样的数学运算过程。
(2.1.1)
(2.2.2)
因此:
(2.1.3)
另外要注意的是,采样间隔的周期要足够的小,采样率要做够的大,要不然会出现如下图所示的混叠现象,一帮情况下
。
图2.3混叠现象
2.2对离散数字信号序列量化
量化就是利用预先规定的有限个电平来表示模拟信号抽样值的过程。
时间连续的模拟信号经过抽样后的样值序列虽然在时间上离散,但是在幅度上仍然是连续的,也就是说,抽样值
可以取到无穷多个值,这个很容易理解的,因为在一个区间里面可以取出无数的不同的数值,这就可以看成是连续的信号,所有这样的信号仍然属于模拟信号范围。
因此这就有了对信号进行量化的概念。
在通信系统中已经有很多的量化方法了,最常见的就是均匀量化与非均匀量化。
均匀量化概念比较早出来。
因其有很多的不足之处,很少被使用,这就有了非均匀量化的概念。
均匀量化就是把信号的取值范围按照等距离分割,每个量化电平都取中间值(也就是平均值),落在这个区间的所有值都用这个值代替。
当信号的变化范围和量化电平被确定后,量化间隔也就被确定。
在语言信号数字化通信中,均匀量化有个明显不足之处:
量化信噪比随信号的电平的减小而下降。
为了克服这个缺点,实际中往往采用非均匀量化。
非均匀量化是一种在整个动态范围内量化间隔不相等的量化。
它是根据输入信号的概率密度函数来分布量化电平的,以改善量化性能,它的特点是输入小时量阶也小,输入大时,量阶也大。
整个范围内信噪比几乎是一样的,缩短了码字长度,提高了编码效率。
实际中非均匀量化的方法之一是把输入量化器的信号x先进行压塑处理,再把压缩的信号y进行非均匀量化。
压缩器其实就是一个非线性电路,微弱的信号被放大,强的信号被压缩,压缩器的输入输出关系可以这样表示:
接受端采用一个与压缩特性相反的扩张器来恢复x。
下图2.4就是压缩与扩张的示意图:
图2.4压缩与扩张示意图
通常使用的压缩器中,大多数采用对数压缩,即y=lnx。
广泛采用这两种对数压扩特性的是u/A率压扩。
μ律压缩特性
压缩规律:
μ压缩特性近似满足下对数规律
(2.2.1)
μ律压缩定性分析
μ=0时:
无压缩作用(直线)
μ>0时:
μ↑→压缩明显
压缩作用---y是均匀的,而x是非均匀的→信号越小△x也越小
其中量化过程如图2.5所示:
图2.5量化过程
量化器,其输出信号,
为M个量化电平
、
。
。
。
之一。
、
...
为量化区间的端点。
在实用中需按照不同情况对理想压缩特性作适当修正。
2.3对量化后的数字信号进行编码
2.3.1编码
编码就是把量化后的信号变换成代码,其相反的过程称为译码。
当然,这里的编码和译码与差错控制编码和译码是完全不同的,前者是属于信源编码的范畴。
在现有的编码方法中,若按编码的速度来分,大致可分为两大类:
低速编码和高速编码。
通信中一般都采用第二类。
编码器的种类大体上可以归结为三类:
逐次比较型、折叠级联型、混合型。
在逐次比较型编码方式中,无论采用几位码,一般均按极性码、段落码、段内码的顺序排列。
下面结合15折线的量化来加以说明。
2.3.2µ律15折线
15折线编码压缩特性曲线如下:
图2.615折线编特性码压缩曲线
特点:
基本上保持压缩特性,又便于数字实现。
折线的各段斜率:
线段8斜率:
1/8÷128/255=255/1024线段7斜率:
1/8÷64/255=255/512
线段6斜率:
1/8÷32/255=255/256线段5斜率:
1/8÷16/255=255/128
线段4斜率:
1/8÷8/255=255/64线段3斜率:
1/8÷4/255=255/32
线段2斜率:
1/8÷2/255=255/16线段1斜率:
1/8÷1/255=255/8
下表左边是段落码和段落之间的关系,右边是段内码16个量化级之间的关系(表2.1)
段落序号
段落码
量化级
段内码
8
111
15
1111
14
1110
7
110
13
1101
12
1100
6
101
11
1011
10
1010
5
100
9
1001
8
1000
4
011
7
0111
6
0110
3
010
5
0101
4
0100
2
001
3
0011
2
0010
1
000
1
0001
0
0000
表2.1段内码量化级关系
13折线幅度码及其对应电平(表2..2)
表2.213折线幅度码及其对应电平
量化段序号
i=1~8
电平范围
段落码
M2M3M4
段落起始电平
量化间隔
段内码对应权值
M5M6M7M8
8
1024~2048
1
1
1
1024
64
512
255
128
64
7
512~1023
1
1
0
512
32
256
128
64
32
6
256~511
1
0
1
256
16
128
64
32
16
5
128~255
1
0
0
128
8
64
32
16
8
4
64~127
0
1
1
64
4
32
16
8
4
3
32~63
0
1
0
32
2
16
8
4
2
2
16~31
0
0
1
16
1
8
4
2
1
1
0~15
0
0
0
0
1
4
2
1
1
15折线幅度码及其对应电平起始码和量化间隔是我通过15折线编码压缩特性曲线算出每段斜率,然后又斜率算出起始电平,量化间隔可以由图直接得到(表2.3)
表2.315折线幅度码及其对应电平
量化段序号
i=1~8
电平范围
段落码
M2M3M4
段落起始电平
量化间隔
段内码对应权值
M5M6M7M8
8
2042~4080
1
1
1
2042
128
1024
512
256
128
7
1028~2041
1
1
0
1028
64
512
256
128
64
6
496~1027
1
0
1
496
32
256
128
64
32
5
240~495
1
0
0
240
16
128
64
32
16
4
112~239
0
1
1
112
8
64
32
16
8
3
48~111
0
1
0
48
4
32
16
8
4
2
16~47
0
0
1
16
2
16
8
4
2
1
0~15
0
0
0
0
1
8
4
2
1
2.4对编码后的信号进行译码
译码是编码的逆过程,同时去掉比特流在传播过程中混入的噪声。
利用译码表把文字译成一组组数码或用译码表将代表某一项信息的一系列信号译成文字的过程称之为译码。
2.4.1译码准则
假设编码序列为,经过信道传输,接收端收到的信号为R(模拟信号或数字信号,取决于对信道的定义),那么接收端会顺理成章地在所有可能的码序列中寻找条件概率最大的一个,认为它是可能的发送序列这种判决准则称为最大后验概率准则(MAP)。
2.4.2译码算法
viterbi译码算法是一种卷积码的解码算法。
缺点就是随着约束长度的增加算法的复杂度增加很快。
约束长度N为7时要比较的路径就有64条,为8时路径变为128条。
(2<<(N-1))。
所以viterbi译码一般应用在约束长度小于10的场合中。
算法规定t时刻收到的数据都要进行64次比较,就是64个状态每条路有两条分支(因为输入0或1),同时,跳传到不同的两个状态中去,将两条相应的输出和实际接收到的输出比较,量度值大的抛弃(也就是比较结果相差大的),留下来的就叫做幸存路径,将幸存路径加上上一时刻幸存路径的量度然后保存,这样64条幸存路径就增加了一步。
在译码结束的时候,从64条幸存路径中选出一条量度最小的,反推出这条幸存路径(叫做回溯),得出相应的译码输出。
三、PCM系统仿真
3.1抽样定理的验证
首先我们先要通过matlab软件产生一个模拟信号,然后才能对模拟信号进行抽样等等一系列的操作,下面先给出matlab软件建立m文件产生一个比较熟悉的时域连续的周期函数,
,可以看出这个信号就是由两个最常用的函数复合而成。
A,产生原始连续信号的matlab源代码:
%建立原信号
T=0.002;%取时间间隔为0.01
t=-0.1:
T:
0.1;%时域间隔dt为间隔从0到10画图
xt=cos(2*pi*30*t)+sin(2*pi*65*t);%xt方程
%采样:
时间连续信号变为时间离散模拟信号
fs=500;%抽样fs>=2fc,每秒钟内的抽样点数目将等于或大于2fc个
sdt=1/fs;%频域采样间隔0.002
t1=-0.1:
sdt:
0.1;%以sdt为间隔从-0.1到0.1画图
st=cos(2*pi*30*t)+sin(2*pi*65*t);%离散的抽样函数
figure
(1);
subplot(4,1,1);
plot(t1,st);
%plot(t,xt);title('原始信号');%画出原始的信号图,以好对比
gridon
%画背景
subplot(4,1,2);
stem(t1,st,'.');%这里画出来的是抽样后的离散图
title('抽样信号');
gridon%画背景
产生原始信号的函数生成的信号波形如下图3.1所示:
图3.1原始信号的采样信号
3.2量化、编码与译码
在抽样以后我们得到了一个个的离散的数字信号序列,但是这个序列并不是我们想要的数字信号序列,因为前面已经说过,这个不是真正的离散数字信号,它只是在时间上是离散的,在幅度上仍然是连续的。
所以就要进行下一步操作—量化。
在实际中量化和编码是一起进行的.
程序在附录中
如图是经过量化编码译码后的matlab仿真图3.2。
图3.2抽样编码译码过程
四、仿真结果及其分析
4.1抽样定理的验证
产生原始信号的函数生成的信号波形如图4.1所示:
图中可以看出这是一个连续的周期信号,很容易分析。
在生成好原始波形后就要对信号进行抽样,下面就是不同抽样频率下的抽样结果:
在这里我只选择了三个频率下的抽样(1000,500,100),这样已经能够分析了
图4.1500HZ抽样图
图4.2100HZ抽样图
分析:
分别进行了三次抽样,第二次频率是500Hz(图4.1),第三次频率是100Hz(图4.2),可以看出,在频率很高的情况下,抽样间隔很小,一个个的点靠的也很近,抽出的值得个数也很多,同时如果用线把所有的点都连起来,跟原信号很相似,相反的在第三幅图中,可以看出,抽样的点数很少,看起来比较清爽,但是如果没有上面的原信号波形,即使我们把所有的点都连接起来,我想我们还是很难得到像原始图那样的波形,其实啊,第三幅图中我们有很多的特殊的点都没有取到,比如说,有好几个幅度改变的点我们都没有取,这就在以后的恢复时候,就被忽略掉了,这就造成所谓的失真现象。
其实在matlab中我们的原始信号也是离散的,只不过取样的点数特别多罢了,这个很容易理解的,因为我们的计算机,就是只能处理数字信号,只能处理离散的二进制信号,模拟信号呢,是由无数的点构成的,计算机不可能取到所有的点,所以原始模拟信号在计算机中也是数字化的,另外再从matlab仿真软件角度来看,matlab软件实际上是叫矩阵实验室,矩阵就是处理的数字,我们matlab编程都是把信号,数字,常量等都是放到矩阵中去运行的。
在编程时候,我们在产生原始模拟信号时,参数是这样设置的t=-0.1:
0.001:
0.1;可以看出时间t也是可数的。
所以从这三个方面我们就很好的理解了matlab的工作原理,以及数字信号原理。
4.2量化与编码分析
下面给出由量化编码程序输出的编码序列(由于数据较多,这里只显示前80位数据):
code=
Columns1through16
1111000011001010
Columns17through32
0101000101001011
Columns33through48
1100100011100000
Columns49through64
1101011001010110
Columns65through80
0111010001111110
五、结论
通过此次课程设计,使我更加扎实的掌握了有关模拟信号数字化PCM编码设计
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Matlab 程序 PCM 系统 仿真 汇总