PCM 编解码和DPCM编解码的实现和性能比较一. 设计目的该课程设计的目的是让我们进一步学习PCM编译码和DPCM编解码原理;在通信系统仿真软件MATLAB平台上,采用M文件设计A律PCM码译码和差分PCM即DPCM编解码对设计项目进行调试;对译码器进行仿真;对仿真结果结合编译码理论进行分析;对两种编码进行比较等二. 设计内容及要求2.1 要求: 设计译码器前,首先以理论作指导,构思设计方案再用MATLAB语言编写程序,在MATLAB软件平台上运行,得到正确程序,并且进行调试、仿真和分析然后对结果进行处理,输出结果和分析结论应该一致,而且应符合理论2.2原理2.2.1 PCM原理脉冲编码调制 (PCM,Pulse Code Modulation)在通信系统中完成将语音信号数字化功能是一种对模拟信号数字化的取样技术,将模拟信号变换为数字信号的编码方式,特别是对于音频信号PCM 对信号每秒钟取样 8000 次;每次取样为 8 个位,总共 64 kbpsPCM的实现主要包括三个步骤完成:抽样、量化、编码分别完成时间上离散、幅度上离散、及量化信号的二进制表示根据CCITT的建议,为改善小信号量化性能,采用压扩非均匀量化,有两种建议方式,分别为A律和μ律方式,我国采用了A律方式,由于A律压缩实现复杂,常使用 13 折线法编码,采用非均匀量化PCM编码 。
2.2.2 DPCM原理DPCM编码,简称差值编码,是对模拟信号幅度抽样的差值进行量化编码的调制方式(抽样差值的含义请参见“增量调制”)这种方式是用已经过去的抽样值来预测当前的抽样值,对它们的差值进行编码差值编码可以提高编码频率,这种技术已应用于模拟信号的数字通信之中 对于有些信号(例如图像信号)由于信号的瞬时斜率比较大,很容易引起过载,因此,不能用简单增量调制进行编码,除此之外,这类信号也没有像话音信号那种音节特性,因而也不能采用像音节压扩那样的方法,只能采用瞬时压扩的方法但瞬时压扩实现起来比较困难,因此,对于这类瞬时斜率比较大的信号,通常采用一种综合了增量调制和脉冲编码调制两者特点的调制方法进行编码,这种编码方式被简称为脉冲增量调制,或称差值脉码调制,用DPCM表示 这种调制方式的主要特点是把增量值分为个等级,然后把个不同等级的增量值编为位二进制代码再送到信道传输,因此,它兼有增量调制和PCM的各自特点 2.3 系统建模2.3.1 PCM编解码原理图低通滤波瞬时压缩抽 样量 化编 码低通滤波瞬时扩张解 调解 码信道再 生 2.3.2 DPCM编解码原理图2.4仿真程序2.4.1 PCM编解码程序A=87.6 t=[0:100]*pi/20;x=cos(t);V=max(x);[p,c]=lloyds(x,t);%生成分界点矢量和编码手册 [index,quant,distor]=quantiz(x,p,c); compressed = compand(x,A,V,‘A/compressor’);expanded = compand(compressed,A,V, ‘A/expander’);plot(t,x,t,expanded, ‘r/*’);title(‘余弦波的A律13折线PCM编解码的实现’)xlabel(‘X轴’)ylabel(‘Y轴’)legend(‘余弦波源’,‘A律压扩’,4 );distor11 = sum((x-expanded).^2)/length(x); 2.4.2 DPCM编解码程序N=2^3; %以3比特传输信道 t=[0:100]*pi/20;u=cos(t);[predictor,codebook,partition]=dpcmopt(u,1,N); %优化的预测传递函数 [index,quant]=dpcmenco(u,codebook,partition,predictor); %使用DPCM编码 [sig, equant]=dpcmdeco(index, codebook, predictor); %使用DPCM解码 plot(t,u,t,sig,‘r--’); title(‘余弦波DPCM编解码的实现’)xlabel(‘X轴’)ylabel(‘Y轴’)legend(‘锯齿波源’,‘DPCM’,4);distor21 = sum((u-equant).^2)/length(u);2.5 仿真图2.5.1 PCM仿真图2.5.2 DPCM仿真图三. 心得体会通过本次课程设计,我们了解了PCM编码与解码原理和DPCM编码与解码原理,特别是MATLAB实现与调制性能分析,把本学期学的通信原理等通信类科目的内容应用到本课程设计中来,进一步巩固复习通信原理,MATLAB等课程,以达到融会贯通的目的。
运用学习成果把课堂上学的系统化的理论知识,尝试性的应用于实际设计工作,并从理论的高度对设计工作的现代化提高一些有创造性的建议和设想,检验学习成果,看一看课堂学习与实际工作到底有多大差距,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,为学习内容提供实践依据对这次课程设计,感受颇深使我们进一步掌握了PCM编译码的工作原理及PCM系统的工作过程;加强了运用仿真软件MATLAB平台,采用M文件编程的能力;学会了通过应用软件仿真来实现各种通信系统的设计,对以后的学习和工作都起到了一定的促进作用;更好的锻炼了我们的动手能力和思维方式经过两个星期的努力,终于完成了我的课程设计, 非常感谢老师一直辛勤指导我们,认真给我们解答疑惑在完成设计的过程中,我的收获很大,不仅仅是对我们自己所学的专业知识加深了解,同时还熟练地掌握了MATLAB软件的操作,而且还锻炼了自己独立处理问题的能力在今后的学习中我一定努力学习!。