《增量调制仿真设计.doc》由会员分享,可在线阅读,更多相关《增量调制仿真设计.doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、沈阳理工大学通信系统课程设计报告增量调制仿真设计1.课程设计目的(1)加深理解增量调制编译码的基本原理。(2)培养独立开展科研的能力和编程能力。(3)了解系统的过载特性,动态范围以及最大量化信噪比等三大指标的测试方法。2.课程设计要求(1)掌握课程设计的相关知识、概念清晰。(2)程序设计合理、能够正确运行。3.相关知识3.1增量调制简介增量调制简称M或增量脉码调制方式(DM),它是继PCM后出现的又一种模拟信号数字化的方法。1946年由法国工程师De Loraine提出,目的在于简化模拟信号的数字化方法。主要在军事通信和卫星通信中广泛使用,有时也作为高速大规模集成电路中的A/D转换器使用。对模
2、拟信号采样,并用每个样值与它的预测值的差值对周期脉冲序列进行调制,简称墹M或DM。已调脉冲序列以脉冲的有、无来表征差值的正负号,也就是差值只编成一位二进制码。增量调制的基本原理是于1946年提出的,它是一种最简单的差值脉冲编码。早期的语言增量调制编码器是由分立元件组成的。随着模拟集成电路技术的发展,70年代末出现了音节压扩增量调制集成单片,80年代出现了瞬时压扩集成单片,单片内包括了开关电容滤波器与开关电容积分器,集成度不断提高,使增量调制的编码器的体积减小,功耗降低。3.2 基本概念在PCM系统中,为了得到二进制数字序列,要对量化后的数字信号进行编码,每个抽样量化值用一个码组(码字)表示其大
3、小。码长一般为7位或8位,码长越大,可表示的量化级数越多,但编、解码设备就越复杂。那么能否找到其它更为简单的方法完成信号的模/数转换呢?我们看一下图1。图中在模拟信号f(t)的曲线附近,有一条阶梯状的变化曲线f(t),f(t)与f(t)的形状相似。显然,只要阶梯“台阶”和时间间隔t足够小,则f(t)与f(t)的相似程度就会提高。对f(t)进行滤波处理,去掉高频波动,所得到的曲线将会很好地与原曲线重合,这意味着f(t)可以携带f(t)的全部信息(这一点很重要)。因此,f(t)可以看成是用一个给定的“台阶”对f(t)进行抽样与量化后的曲线。我们把“台阶”的高度称为增量,用“1”表示正增量,代表向上
4、增加一个;用“0”表示负增量,代表向下减少一个。则这种阶梯状曲线就可用一个“0”、“1”数字序列来表示(如图(1)所示),也就是说,对f(t)的编码只用一位二进制码即可。此时的二进制码序列不是代表某一时刻的抽样值,每一位码值反映的是曲线向上或向下的变化趋势。这种只用一位二进制编码将模拟信号变为数字序列的方法(过程)就称为增量调制(Delta Modulation),缩写为DM或M调制。增量调制最早由法国人De Loraine于1946年提出,目的是简化模拟信号的数字化方法。其主要特点是:(1) 在比特率较低的场合,量化信噪比高于PCM。(2) 抗误码性能好。能工作在误比特率为102103的信道
5、中,而PCM则要求信道的误比特率为104106。(3) 设备简单、制造容易。它与PCM的本质区别是只用一位二进制码进行编码,但这一位码不表示信号抽样值的大小,而是表示抽样时刻信号曲线的变化趋向。图1 增量调制波形示意示4 课程设计分析4.1 M的调制原理如何在发送端形成f(t)信号并编制成相应的二元码序列呢?仔细分析一上图(1),比较在每个抽样时刻t处的f(t)和f(t)的值可以发现, 当f(it)f(it_)时,上升一个,发“1”码; 当f(it)0,则Po(0)=1 (1)t=t时, e(t)=f(t)-f(t_)0,则Po(t)=1 (2)t=2t时,e(2t)=f(2t)-f(2t_)
6、0,则Po(3t)=1; (4)t=4t时,e(4t)=f(4t)-f(4t_)0,则Po(5t)=1; (6)t=6t时,e(6t)=f(6t)-f(6t_)0,则Po(6t)=1; (7)以此类推,即可得到如图3所示的波形。会发现图3中的f(t)和图1的波形不一样。其实,图1的阶梯波只是为了形象地说明增量调制原理,而实际积分器的输出波形如图3d所示。 (C)图3 增量调制过程示意图4.2 M的解调原理为了完成整个通信过程,发送端调制出的信号必须在接收端通过解调恢复出原始模拟信号。M信号的解调比较简单,用一个和本地解码器一样的积分器即可。在接收端和发送端的积分器一般都是一个RC积分器。解调过
7、程就是图43中的积分过程。当积分器输入“1”码时,积分器输出产生一个正斜变的电压并上升一个量化台阶;而当输入“0”码时,积分器输出电压就下降一个量化台阶。为了保证解调质量,对解码器有两个要求:(1) 每次上升或下降的大小要一致,即正负斜率大小一样。(2) (2)解码器应具有“记忆”功能,即输入为连续“1”或“0”码时,输出能连续上升或下降。对积分器的输出信号进行低通滤波,滤除波形中的高频成分,即可得到与原始模拟信号十分近似的解调信号,如图4所示图4 增量调制译码(解调)示意示5 增量调制MATLAB的仿真5.1 程序代码:Ts=1e-3;t=0:Ts:20*Ts;x=sin(2*pi*50*t
8、)+0.5*sin(2*pi*150*t);delta=0.4;D(1+length(t)=0;for k=1:length(t) e(k)=x(k)-D(k); e_q(k)=delta*(2*(e(k)=0)-1); D(k+1)=e_q(k)+D(k); codeout(k)=(e_q(k)0);endsubplot(3,1,1);plot(t,x,-o);axis(0 20*Ts,-2 2);hold on;subplot(3,1,2);stairs(t,codeout);axis(0 20*Ts,-2 2);Dr(1+length(t)=0;for k=1:length(t) eq(
9、k)=delta*(2*codeout(k)-1); xr(k)=eq(k)+Dr(k); Dr(k+1)=xr(k);endsubplot(3,1,3);stairs(t,xr);hold on;subplot(3,1,3);plot(t,x);5.2 增量调制Simulink仿真实现采用Simulink基本模块实现和采用DPCM编解码模块实现。仿真测试模型如图(6)所示。仿真步进设置为0.001s,模型中所有需要设置采样时间的地方均设置采样时间为0.001s。在增量调制部分,Relay模块作为量化器适应,其门限设置为0,输出值分别设置为0.4和-0.4;Relay作为编码器使用,其门限设置
10、为0,输出值设置为1和0;解码端Relay2模块作为解码器使用,其门限设置为0.5,输出值分别为0.4和-0.4;使用单位延时器Unit Delay作为预测滤波器,初始状态均设置为零。使用DPCM编解码模块进行等价实现,DPCM编码模块的设置是,预测器分子系数为0,1,分母系数是1,量化分割值为0,码书为-0.4,0.4,解码器与编码器设置相同。仿真时间设置为0.02s,即仿真前20个采样点。仿真结果如图(7)所示,采用Simulink基本模块实现的解码结果与编程法得到的波形相同。但是,由于初始值设置问题,采用DPCM编解码模块得出的解码结果与采用Simulink基本模块实现的解码结果在起始部
11、分稍有不同,随着仿真时间的增加,两者输出结果相同。图6增量调制编码仿真测试模型其中f(u)=sin(2*pi*50*u)+0.5*sin(2*pi*150*u)6 结果分析程序执行结果如图5所示。从图中原信号和解码结果对比看,在输入信号变化平缓的部分,编码器输出1、0交替码,相应的解码结果以正负阶距交替变化,形成颗粒噪声,称空载失真;在输入信号变化过快的部分,解码信号因不能跟踪上信号的变化而引起斜率过载失真。量化阶距越小,则空载失真就越小,但是容易发生过载失真;反之,量化阶距增大,则斜率过载失真减小,但空载失真增大。如果量化阶距能根据信号的变化缓急自适应调整,则可以兼顾优化空载失真和过载失真,
12、这就是自适应增量调制的意思。图5增量调制编码解码波形仿真结果(一)波形解析:第一个图形是原信号及离散样值第二个图形是编码输出二进制序列的波形第三个图形解码结果和信号波形对比0.0040.006为空载失真部分0.0090.012为过载失真部分图7增量调制编码解码波形仿真结果(二) 6.1 增量调制存在的问题增量调制尽管有前面所述的不少优点,但它也有两个不足:一个是一般量化噪声问题;另一个是过载噪声问题。两者可统一称为量化噪声。观察图1可以发现,阶梯曲线(调制曲线)的最大上升和下降斜率是一个定值,只要增量和时间间隔t给定,它们就不变。那么,如果原始模拟信号的变化率超过调制曲线的最大斜率,则调制曲线
13、就跟不上原始信号的变化,从而造成误差。我们把这种因调制曲线跟不上原始信号变化的现象叫做过载现象,由此产生的波形失真或者信号误差叫做过载噪声。另外,由于增量调制是利用调制曲线和原始信号的差值进行编码,也就是利用增量进行量化,因此在调制曲线和原始信号之间存在误差,这种误差称为一般量化误差或一般量化噪声。两种噪声示意图如图8所示。 图8 两种量化噪声示意图 仔细分析两种噪声波形我们发现,两种噪声的大小与阶梯波的抽样间隔t和增量有关。我们定义K为阶梯波一个台阶的斜率 式中,fs是抽样频率。该斜率被称为最大跟踪斜率。当信号斜率大于跟踪斜率时,称为过载条件,此时就会出现过载现象;当信号斜率等于跟踪斜率时,
14、称为临界条件;当信号斜率小于跟踪斜率时,称为不过载条件。可见,通过增大量化台阶(增量)进而提高阶梯波形的最大跟踪斜率,就可以减小过载噪声;而降低则可减小一般量化噪声。显然,通过改变量化台阶进行降噪出现了矛盾,因此,值必须两头兼顾,适当选取。不过,利用增大抽样频率(即减小抽样时间间隔t),却可以“左右逢源”,既能减小过载噪声,又可降低一般量化噪声。因此,实际应用中,M系统的抽样频率要比PCM系统高得多(一般在两倍以上,对于话音信号典型值为16kHz和32kHz)。 6.2 自适应增量调制 增量调制中增量的幅值是固定的。若幅值选得过大,粒状噪声过大;若选得过小,超载噪声增加,这给增量的幅度选择带来
15、了一定的困难。为了解决这一问题,可让增量的幅值在调制的过程中随着声音信号的变化自动地进行调制、变化,这就是自适应调制ADM(Adaptive Delta Modulation)。ADM调制的基本原理是:在声音信号变化不大的情况下,取较小的增量幅值以抑制粒状噪声。在声音信号变化较大的情况下,预测信号跟不上声音信号的变化,应采取一定的算法增加增量的幅值,以此抑制超载噪声。调制过程中,增量的幅值随声音信号的变化自适应地变化。ADM调制虽然能较好地克服超载噪声,解决粒状噪声和超载噪声的矛盾,但在声音信号从高速变化转向平坦处时,容易出现由于增量幅值过大而产生的噪声。6.2.1 自适应增量调制MATLAB
16、的仿真程序代码:Ts=1e-3;t=0Ts40Ts;x=sin(2pi50t)+0.5sin(2pi150t);x(2041)=0.2sin(2pi50t(2041);delta=0.4;D(1+length(t)=0;K=1.3;for k=1length(t) e(k)=x(k)-D(k); e_q(k)=delta(2(e(k)=0)-1); if k1 delta=delta(K.sign(e_q(k).e_q(k-1); end D(k+1)=e_q(k)+D(k); codeout(k)=(e_q(k)0);endDr(1+length(t)=0;delta=0.4;for k=1
17、length(t) eq(k)=delta(2codeout(k)-1); if k1 delta=delta(K.sign(eq(k).eq(k-1); end xr(k)=eq(k)+Dr(k); Dr(k+1)=xr(k);endstairs(t,xr);hold on;plot(t,x);自适应增量调制中,量化间距是自适应变化的:如果波形斜率陡峭,则连续输出的一串量化误差是同符号的,那么应使量化间距增大以减小斜率失真;如果波形平缓,则连续输出的一串量化误差是正负符号交替的,这时减小量化间距就可以减小颗粒噪声。例如,一种较简单的自适应规则是 (8)其中,自适应量化间距调整系数K1。显然,
18、当一串量化误差是同符号时,则sgn()0,于是,即量化间距增加,反之,量化间距减少。程序运行结果如图9所示。图9自适应增量调制编码解码仿真结果波形解析:0.01左右及0.02左右量化阶距增加0.015左右及0.025-0.035量化阶距减小,颗粒噪声随之减小6.3 增量调制应用的例子试建立Simulink模型,研究信道误码对增量调制的语音质量的影响。增量调制的采样率为32kHz。仿真模型如图(10)所示,其中使用了PateTranstion模块将输入语音信号的采样率由8000次/s升至32000次/s,然后进行增量调制。增量调制的预测器分子系数设置为0,0.9以避免系统处于临界稳定状态。信道误
19、码率可在01内任意设置。通过仿真聆听相应误码率下的恢复话音,主观感觉误码率在0.1时语音仍然具有相当的可懂度,说明增量调制的抗噪声能力比PCM强,但在无误码传输中,增量调制的解码音质不如PCM。将信道误码率设置为0.5,则输出为纯噪声,相当于通信中断。有趣的是,当将误码率设置为0.9时,又可听到解码语音信号,这说明增量调制能够抵抗信道传输中信号相位反转。由于增量调制解码方法相当简单,实际中甚至直接使用积分器或低通滤波器对输入信号处理即可,也不需要时钟同步,抗干扰能力很强,所以在军用无线语音通信中得到了较为广泛的应用。心得体会由于基础不扎实,以前Matlab并没怎么学,这一次用上了,还真是无从下
20、手。在网上查看了很多资料,本来以为随便找一个程序能运行就行了,但发现这样不行,还是必须自己会点,因为根本不可能找到找到一个要求一摸一样的,最终还是要修改。参考了一些程序后,分析了一下,不会的就看书、百度,还是有点收获的。增量调制通信原理学过,基础还是没忘记,关键就是编程序了。由于对Matlab的陌生,好多函数找不到,也不会用。体现在这次课程设计中的就是不会求频谱。问了好多同学,还是有点模糊。有幸在看到一个求频谱的,原来就是使用的函数不会用。虽然很简单,但不会就是最难的事。这次课程设计的确花了我很长的时间,但从中学到的东西还是令我欣慰的。7 参考文献1 郭文彬,桑林编著,通信原理-基于Matlab的计算机仿真,北京邮电大学出版社,20062 曹志刚,钱亚生,现代通信原理,清华大学出版社,2003年3 郭仕剑等,MATLAB7.x数字信号处理,人民邮电出版社,2006年4 张辉,曹丽娜著,通信原理学习指导,西安电子电子科技大学,200315