PCM编码及解码_第1页
PCM编码及解码_第2页
PCM编码及解码_第3页
PCM编码及解码_第4页
PCM编码及解码_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上PCM编码及解码一、 设计目的和意义作为电子专业的一名学生,通信原理课程无疑是我所必修专业课中的重点,对于我将来所要从事的领域有着不可或缺的作用,学号这门课是无可厚非的。然而,对于课堂上老师的讲解,最多只能做到了解,真正的理论知识显得枯燥而乏味,没有得到实用的理论等于一纸空文。在这次课程设计中,旨在让我们更深入的了解这门科目某些应用方面以及如何应用自己所学知识去做事情。同时,锻炼我们的动手能力,以及运用软件来实现通信系统中的的工作模式。这对于我们大三,即将走出校园的一代,是很好的历练,让我们学会从发现问题,并找到问题的切入点来处理身边的来来往往。二、 设计原理本设计主

2、要会用到的知识有通信原理中的脉冲编码调制(PCM)、数字信号处理的由时域到频域的一些变换知识,如傅立叶变换、FFT以及MATLAB软件的使用等。 PCM系统的原理:脉码调制将模拟调制信号的采样值变换为脉冲码组。PCM编码包括如下三个过程。 抽样:将模拟信号转换为时间离散的样本脉冲序列。 量化:将离散时间连续幅度的抽样信号转换成为离散时间离散幅度的数字信号。编码:用一定位数的脉冲码组表示量化采样值。译码:把编码后的码流在通过信道传输后得到的码流译成离散时间连续幅度的信号。其系统框图如下: 图1 PCM系统原理图本次课程设计主要是做量化、编码、信道传输、译码四部分。(一)律15折线的原理律采用非均

3、匀量化,它用的是直接法即用不同的量阶对信号进行非均匀量化,对数量化器可以满足要求。律的对数压缩特性为: (1)其中为压缩系数。越大则压缩效果越明显,=0相当于无压缩,国际现在的标准为=255。律压缩特性可以用15折线来近似(折线图见附录中,PCM编码输入输出特性曲线)。由于正负对称,且正的第一区间与负的第一区间斜率相同,所以途中只画出了正半轴。 编码规则:M1M2M3M4M5M6M7M8,(=255,L=256时)八位码。这里采用的是折叠码(FBC)。 极性码M1:0表示负极性,1表示正极性。 段落码M2M3M4:表示量化采样值所在段落的序号。 电平码(段内码)M5M6M7M8:表示每一段落内

4、的16个均匀量化级。(二)信道误码率信道误码率即信码在信道中传错的概率,在数字通信中,即为0被错传为1,1被错传为0的概率。它主要是由信道中的噪声引起的。在本设计中由于采用软件仿真,没有用噪声的方式来产生误码,而是人为的用程序将它的码流变错,先要根据误码率计算出要被传错的码元的个数,再用随机的方法让他的码元变错,这就体现了噪声所引起的误码的不可确定性。(三)量化信噪比PCM系统输出端平均信号量化噪声比仅依赖于每一个编码组数N。对于一个频带限制在的信号,按照抽样定理,此时要求每秒钟最少传输的抽样脉冲数等于2;若PCM系统的编码位数为N,则要求系统每秒传输2个二进制脉冲。为此,这时的系统总带宽B至

5、少等于N。故可用公式: (2) 本设计取=1000Hz, 抽样点为1000时,=1000kHz;当抽样点可变时,=k*。三、 详细设计步骤由于对理论知识掌握不足,在拿到设计题目时候曾一度不知如何下手,为此,我花费了整整两天的功夫,多次翻看课本第五章关于脉冲编码调制PCM的相关知识,查找资料,寻找前人在这些方面的成果。浏览网页,搜索于此相关公式、论文,咨询同学、老师,找出解决方案。经过一番努力,总算有了初步了解。开始着手编写设计程序了,发现过去MATLAB软件的应用知识忘掉了许多,又用了半天时间对其熟悉,并找到设计中可能用到的函数,学习其用法。终于开始了正题,可编写程序过程中总是出现各种各样的错

6、误,比如randn函数的使用,总想着像其他函数那样画出了“多彩”的波形。在编程过程中随时打开百度搜索。还有就是非均匀量化的信噪比公式书上根本没有,从各方资料上才算获悉其具体表达式。编写程序中,分为几个部分:PCM非均匀量化编码函数,解码函数,误码产生函数,均匀量化编码函数,以及主函数,其中主函数除对各支函数的调用之外,还产生了长度为1000的标准整台分布函数,绘制了PCM编码输入输出关系曲线,计算出了均匀,以及非均匀量化的量化误差等。其中正态分布采用randn函数产生,输入输出关系曲线采用书本中公式来绘制,量化误差亦有相关公式考参考。非均匀量化编码函数参考清华大学出版社出版的现代通信原理一书中

7、P133表54,U律的PCM编码表编写,程序中首先判断输入数据的正负,确定M1位,然后将该数取绝对值,根据表中的量化间隔划分,确认各M的取值,最后将所得M的序列保存在以数组总y=str2double(dec2bin(p)。非均匀量化解码表,亦根据此表编程,先判断M1位确定数值的正负,之后通过逐个判断,定位取值区间来解码,其中,由于量化间隔的关系,取值时取量化间隔中间值作为解码输出。误码产生函数,通过产生随机序列p=randperm(k),从产生序列中第一、二两个作为产生误码的行和列,从而得到随机的误码分布。四、 设计结果及分析运行主程序,观测到: x1=randn(1,1000);x10=ff

8、t(x1,1024)(连续图)图2、长度为1000的标准正态分布的随机信号,时域波形及频谱图u=255; xx=0:0.01:1; xy=log(1+u*xx)/log(1+u); 图3、PCM编码输入输出关系曲线t=0:2*pi/n:2*pi; x=sin(t); x0=fft(x,256); y(i)=depcm(num8(i,:); y=y/4079; y0=fft(y,256); 图4、编码前以及解码后时域信号,和频域信号的波形t=0:100*pi/n:100*pi; x=sin(t); x0=fft(x,256);y(i)=depcm(num8(i,:); y=y/4079; y0=

9、fft(y,256);图5、改变输入信号得到x1=randn(1,1000);x10=fft(x1,1024)(离散图)图6、正态分布离散点时域频域图(作为均匀量化输入信号)sl=100; xi=1:100; yi=sin(xi); jylh=jypcm(yi,sl,js);图7、均匀量化解码图同时在MATLAB工作窗口中显示:非均匀量化信噪比: 65536均匀 量化信噪比: 1.2058e+003误码率:kl量化级数js注:(1)非均匀量化SQNR由公式(4),=1000Hz,N=8,B=N*=8000Hz,代入公式(2)可得 (3)(1)均匀量化SNR 由公式 (4)N=8 可得 SNR=

10、49.88DB五、 体会通过本次课程设计,让我更深入的了解了PCM脉冲编码调制原理,以及实现过程,使我对通信系统原理这门科目产生了很大的兴趣,从简单的软件仿真让我知晓了通信系统的整个框架结构,同时在更多的学习通信原理课程之外,我又一次的接触到了MATLAB仿真软件的强大功能,在我们这一专业中许多用到仿真的软件中算是全能型结构,集原理方框图以及编程于一体。相信我以后还有更多的机会与此软件近距离接触,从而从中获悉更多的宝贵知识财富,当然,在这次课程设计中,更重要的是让我学会了动手做事情的能力,以及从中获取更多快乐的方式。这次的课程设计相对以往来说,时间紧,任务重,在考试关头繁忙,自然做的不那么如意

11、,一些波形的显示不尽理想,但能够按时的完成任务并从中得到尝试的勇气对我来说已经是足够的了。六、 参考文献1 曹志刚、钱亚生.现代通信原理.清华大学出版社.1991.112 樊昌信、张甫翊、徐炳祥、吴成柯.通信原理(第5版).国防科技大学出版社2001.53 张志涌.精通MATLAB6.5版.北京航空航天大学出版社.2003.34 苏金明、张莲花、刘波.MATLAB工具箱应用.电子工业出版社.2004.15 程佩青.数字信号处理教程(第二版). 清华大学出版社.2001.8附录:函数一:非均匀PCM量化编码:function pcm=umpcm(x);%PCM编码,入口参数:X(-4079<

12、;X<4079),出口参数PCM为一8码序列;pcm=zeros(1,8);if x<0 k=0;else k=1;end x=abs(x);p=x;if x<=15.5 pcm=k,0,0,0;else if x<=47.5 pcm=k,0,0,1; p=floor(x-15.5)/2); else if x<=111.5 pcm=k,0,1,0; p=floor(x-47.5)/4); else if x<=239.5 pcm=k,0,1,1; p=floor(x-111.5)/8); else if x<=495.5 pcm=k,1,0,0; p

13、=floor(x-239.5)/16); else if x<=1007.5 pcm=k,1,0,1; p=floor(x-495.5)/32); else if x<=2031.5 pcm=k,1,1,0; p=floor(x-1007.5)/64); else if x<=4079.5 pcm=k,1,1,1; p=floor(x-2031.5)/128); end end end end end end end endy=str2double(dec2bin(p); pcm(5)=floor(y/1000);pcm(6)=floor(mod(y,1000)/100);p

14、cm(7)=floor(mod(y,100)/10);pcm(8)=floor(mod(y,10);%dec2bin:将十进制数转换为二进制数;%str2double:将字符型数转化为double型;%floor:像低位取整%mod:求两数的余数 函数二、非均匀PCM解码function dpcm=depcm(s);%解码函数,入口参数S,二进制序列,出口参数:dpcm数据dpcm=0;k=s(2)*4+s(3)*2+s(4);h=s(5)*8+s(6)*4+s(7)*2+s(8);switch k case 0 dpcm=h; case 1 dpcm=16+h*2+1; case 2 dpc

15、m=48+h*4+2; case 3 dpcm=112+h*8+4; case 4 dpcm=240+h*16+8; case 5 dpcm=496+h*32+16; case 6 dpcm=1008+h*64+32; case 7 dpcm=2032+h*128+64; otherwise disp('error');endif s(1)=0 dpcm=0-dpcm;end函数三、误码率生成函数function wm=wml(num8,k);p=randperm(k) %产生长度为K的随机序列for i=1:k q(i)=num8(p(1)+i,p(2); if q(i)=0

16、 q(i)=1; else q(i)=0; endnum8(p(1)+i,p(2)=q(i);end函数四、均匀PCM编码function pcm=jypcm(y,k,n);%均匀量化函数,入口参数%S:输入信号电平,K:信号长度,N:量化级数pcm=zeros(k,n);A=max(y); %取出该函数的最大值derta=A/2(n-1);y0=fix(y/derta);for i=1:k if y0(i)<0 pcm(i,1)=0; y0(i)=0-y0(i); else pcm(i,1)=1; end % yy(i)=dec2bin(y0(i); yyy(i)=str2double

17、(dec2bin(y0(i); for j=1:(n-1) pcm(i,n-j+1)=mod(floor(yyy(i)/10(j-1),10j); end;end 函数五、主函数clc;clear;n=200;num8=zeros(n+1,8);t=0:100*pi/n:100*pi;x1=randn(1,1000);%产生一正态分布序列x10=fft(x1,1024);x=sin(t); %待量化编码序列x0=fft(x,256);subplot(2,1,1);%绘制正态分布序列时域与频域图plot(x1);title('长度为1000的标准正态分布的随机信号时域波形图');

18、subplot(2,1,2);plot(abs(x10);title('正态分布的频域图');figure;%新窗口中绘制PCM编码输入输出关系曲线u=255;xx=0:0.01:1;xy=log(1+u*xx)/log(1+u);plot(xx,xy);title('PCM编码输入输出关系曲线');figure;%打开新的窗口,绘制编码与解码信号时域与频域图subplot(2,2,1);plot(t,x);title('编码前时域信号');subplot(2,2,2);plot(abs(x0);title('编码前频域信号');

19、x=fix(x*4079);%编码过程umpcmfor i=1:n+1 num8(i,:)=umpcm(x(i);endwml(num8,8);for i=1:n+1 %解码部分depcm y(i)=depcm(num8(i,:);endy=y/4079;y0=fft(y,256);subplot(2,2,3);plot(t,y);title('解码后时域信号');subplot(2,2,4);plot(abs(y0);title('解码后频域信号');js=8; %调用均匀量化函数,进行均匀量化sl=100;xi=1:100;yi=sin(xi);jylh=jypcm(yi,sl,js);%disp(num8);FH=1000;B=8*FH;SNR=2(2*B/FH);disp('非均匀量化信噪比:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论