第【77】期-- QPSK与DQPSK调制在AWGN信道下的性能分析及相位误差鲁棒性研究 --MATLAB完整代码
关注我追更更多通信仿真代码摘要本文针对四相移键控QPSK和差分四相移键控DQPSK两种数字调制方式在加性高斯白噪声AWGN信道下的误比特率BER性能进行了理论推导与蒙特卡罗仿真对比。重点分析了接收端存在恒定相位旋转时两种调制方式的误码率恶化程度。理论分析表明QPSK采用相干解调对载波相位同步误差敏感而DQPSK通过相邻符号间的相位差分编码能够完全抵消固定的相位偏移。仿真结果验证了理论预期在无相位误差时QPSK较DQPSK有约1.5 dB的性能增益当存在10°、20°、30°相位旋转时QPSK的BER曲线出现明显的错误平层而DQPSK的BER曲线几乎不受影响。文章目录摘要1. 引言2. 理论基础2.1 QPSK 调制与相干解调原理2.2 DQPSK差分调制与差分检测原理2.3 恒定相位误差对解调性能的影响2.3.1 QPSK相干解调的相位敏感性2.3.2 DQPSK差分检测的相位免疫性3 仿真分析3.1 仿真图3.2 部分代码4 总结1. 引言在现代数字通信系统中正交相移键控QPSK因其频谱效率高、抗噪声性能良好而广泛用于卫星通信、移动通信和数字广播等领域。QPSK将每两个比特映射为一个复数符号通过载波的四个相位0°, 90°, 180°, 270°传输信息接收端通常采用相干解调要求本地载波与发送载波严格同频同相。然而在实际系统中由于信道时变、振荡器漂移和多普勒频移等因素载波相位同步往往存在误差这会严重恶化QPSK的误码性能。为缓解相位同步问题差分QPSKDQPSK被提出。DQPSK通过对相邻符号的相位差进行编码接收端只需比较前后符号的相对相位无需恢复绝对载波相位从而对固定的相位旋转具有天然免疫力。但代价是误码性能略有损失且存在差错传播效应。2. 理论基础本章从基带等效模型出发严格推导 QPSK 和 DQPSK 的调制解调数学原理并分析相位误差对两种解调方式影响的本质差异为后续仿真验证建立理论依据。2.1 QPSK 调制与相干解调原理在AWGN信道下QPSK的理论误码率公式为2.2 DQPSK差分调制与差分检测原理式(2.13)至(2.15)的关键结论在于恒定相位偏移 θ在共轭相乘中被完全抵消。因此无论 θ 取何固定值差分检测的输出yn均等于原始相位差符号 dn从而保证了解调的正确性。这就是DQPSK对固定相位旋转具有免疫性的数学本质。由于差分检测中的等效噪声功率加倍DQPSK的误比特性能劣于理想相干QPSK。在AWGN信道、格雷映射条件下DQPSK的误比特率无精确闭式表达式但工程中广泛采用的近似公式为对比式(2.8)与式(2.17)可知达到相同BER时DQPSK所需 Eb/N0比QPSK高出约1.5~2 dB这是为换取相位同步鲁棒性所付出的功率代价。2.3 恒定相位误差对解调性能的影响2.3.1 QPSK相干解调的相位敏感性值得注意的是2.3.2 DQPSK差分检测的相位免疫性由2.2节的推导可知任意恒定相位偏移 θ 在差分检测的共轭相乘运算中被严格抵消差分检测输出为式(2.21)中完全不包含 θ 项。因此理论上DQPSK对任意大小的恒定相位旋转均具有完全的免疫力不存在因固定相位偏移导致的性能恶化或错误平层。这一特性使得DQPSK在载波同步困难或信道存在固定相移的场景中具有显著的工程优势。需要指出的是上述结论仅对恒定时不变相位偏移成立。若相位误差随时间变化如频率偏移或多普勒扩展差分检测无法完全消除时变相位的影响此时DQPSK的鲁棒性将有所下降。3 仿真分析3.1 仿真图可以看到两种方案的仿真曲线与理论曲线在全信噪比范围内高度吻合说明了仿真的正确性在相同信噪比下DQPSK的BER始终高于QPSK与第二章的理论预期一致。QPSK调制的10° 20° 30°误差 曲线整体向右平移且在高信噪比区域依然保持下降趋势这对应理论分析中 δ45° 的情形相位误差仅等效于降低了有效信噪比。50° 误差曲线明显出现错误平层BER不再随信噪比增加而下降与第二章的理论预期一致。DQPSK调制的四条不同相位误差10°、20°、30°、50°的仿真曲线与无相位误差的理论曲线几乎完全重合彼此之间无显著差异。证明了DQPSK对相位偏移的免疫性3.2 部分代码clear all;close all;%%QPSK和DQPSK的BER随Eb/N0曲线 M4;%4个符号每个2比特 EbN0_dB-5:2:15;%噪声水平 klog2(M);%每符号比特数 Nsimb20000;%符号数 BERSimQPSKzeros(1,length(EbN0_dB));%生成符号向量 txBitsrandi([0,1],1,Nsimb*k);%-----QPSK-------%调制符号s_tmoduladorQPSK(txBits);foriter_EbN0_dB1:length(EbN0_dB)%SNR SNR_dBEbN0_dB(iter_EbN0_dB)10*log10(k);%----信道----r_tawgn(s_t,SNR_dB,measured);%加白噪声%----接收----rxBitsdemoduladorQPSK(r_t);[~,BERSimQPSK(iter_EbN0_dB)]biterr(txBits,rxBits);end%QPSK理论误比特率 BERTheoQPSKqfunc(sqrt(2*10.^(EbN0_dB/10)));BERTheoQPSK(BERTheoQPSK1e-5)NaN;%-----DQPSK-------BERSimDQPSKzeros(1,length(EbN0_dB));s_tmoduladorDQPSK(txBits);foriter_EbN0_dB1:length(EbN0_dB)%SNR SNR_dBEbN0_dB(iter_EbN0_dB)10*log10(k);%----信道----r_tawgn(s_t,SNR_dB,measured);%加噪声%----接收----rxBitsdemoduladorDQPSK(r_t);[~,BERSimDQPSK(iter_EbN0_dB)]biterr(txBits,rxBits);end%DQPSK理论误比特率 BERTheoDQPSK1.13*qfunc(sqrt(1.2*10.^(EbN0_dB/10)));BERTheoDQPSK(BERTheoDQPSK1e-5)NaN;%QPSK与DQPSK对比%---------------------------figure;semilogy(EbN0_dB,BERTheoQPSK,r--,lineWidth,2);hold on;semilogy(EbN0_dB,BERSimQPSK,r-*,lineWidth,2);semilogy(EbN0_dB,BERTheoDQPSK,b--,lineWidth,2);semilogy(EbN0_dB,BERSimDQPSK,b-o,lineWidth,2);xlabel(信噪比 [dB]);ylabel(误比特率 (BER));grid minor;title(QPSK与DQPSK理论及仿真BER对比);legend(QPSK理论,QPSK仿真,DQPSK理论,DQPSK仿真);%%接收端相位旋转或相位误差的影响%-----QPSK-------%计算QPSK在相位误差10°时的BER[BERSimQPSKerr10,BERTheoQPSK]calculateBER_QPSK_fase(txBits,10,EbN0_dB);%计算QPSK在相位误差20°时的BER[BERSimQPSKerr20,~]calculateBER_QPSK_fase(txBits,20,EbN0_dB);%计算QPSK在相位误差30°时的BER[BERSimQPSKerr30,~]calculateBER_QPSK_fase(txBits,30,EbN0_dB);%计算QPSK在相位误差50°时的BER[BERSimQPSKerr50,~]calculateBER_QPSK_fase(txBits,50,EbN0_dB);%绘制BER曲线 figure;semilogy(EbN0_dB,BERTheoQPSK,r-o,lineWidth,2);hold on;semilogy(EbN0_dB,BERSimQPSKerr10,k-*,lineWidth,2);semilogy(EbN0_dB,BERSimQPSKerr20,b-s,lineWidth,2);semilogy(EbN0_dB,BERSimQPSKerr30,m-d,lineWidth,2);semilogy(EbN0_dB,BERSimQPSKerr50,g-^,lineWidth,2);xlabel(信噪比 [dB]);ylabel(误比特率 (BER));grid minor;title(不同相位偏移下QPSK的BER比较);legend(QPSK理论,QPSK仿真 误差10°,QPSK仿真 误差20°,QPSK仿真 误差30°,QPSK仿真 误差50°);%-----DQPSK-------%计算DQPSK在相位误差10°时的BER[BERSimDQPSKerr10,BERTheoDQPSK]calculateBER_DQPSK_fase(txBits,10,EbN0_dB);%计算DQPSK在相位误差20°时的BER[BERSimDQPSKerr20,~]calculateBER_DQPSK_fase(txBits,20,EbN0_dB);%计算DQPSK在相位误差30°时的BER[BERSimDQPSKerr30,~]calculateBER_DQPSK_fase(txBits,30,EbN0_dB);%计算DQPSK在相位误差50°时的BER[BERSimDQPSKerr50,~]calculateBER_DQPSK_fase(txBits,50,EbN0_dB);%绘制BER曲线 figure;semilogy(EbN0_dB,BERTheoDQPSK,r-o,lineWidth,2);hold on;semilogy(EbN0_dB,BERSimDQPSKerr10,k-*,lineWidth,2);semilogy(EbN0_dB,BERSimDQPSKerr20,b-s,lineWidth,2);semilogy(EbN0_dB,BERSimDQPSKerr30,m-d,lineWidth,2);semilogy(EbN0_dB,BERSimDQPSKerr50,g-^,lineWidth,2);xlabel(信噪比 [dB]);ylabel(误比特率 (BER));grid minor;title(不同相位偏移下DQPSK的BER比较);legend(DQPSK理论,DQPSK仿真 误差10°,DQPSK仿真 误差20°,DQPSK仿真 误差30°,DQPSK仿真 误差50°);4 总结本文通过理论推导与蒙特卡罗仿真对比了QPSK与DQPSK在AWGN信道下的BER性能。理论分析表明QPSK相干解调对载波相位误差敏感而DQPSK通过差分编码免疫恒定相位偏移。仿真结果验证了理论无相位误差时QPSK性能优于DQPSK约1.5 dB但当存在恒定相位旋转如10°、20°、30°、50°时QPSK出现显著性能恶化甚至错误平层而DQPSK的BER曲线几乎不受影响。因此在载波同步困难或信道存在固定相移的场景中DQPSK凭借其相位免疫性展现出显著的工程优势。仿真完整代码可见往期文章文末VX公众号包含往期博客所有代码所见即所得