
关注我追更更多通信仿真代码文章目录摘要一、引言二、QPSK调制原理与性能分析2.1 QPSK信号模型2.2 Gray编码与星座图三、π/4-DQPSK调制原理与检测方法3.1 差分编码思想3.2 双星座图设计3.3 非相干差分解调原理四、仿真系统设计与实现4.1 参数设置4.2 仿真流程4.3 仿真图分析4.4 部分代码五、结论摘要正交相移键控QPSK凭借其优异的频谱效率和抗噪声性能在现代数字通信系统中占据核心地位。然而其相干解调要求严格的载波同步在高速移动或相位快速变化的场景下面临挑战。差分正交相移键控DQPSK及其变体 π/4-DQPSK 通过将信息承载于相邻符号的相位差中允许接收端采用非相干解调极大地降低了对载波恢复的依赖。本文基于 MATLAB 平台在加性高斯白噪声AWGN信道下对 QPSK 与 π/4-DQPSK 进行了完整的端到端系统仿真。通过对比两种调制方式的时域波形、星座图弥散程度以及误码率BER曲线本文深入探讨了理论性能极限与实际工程实现复杂度之间的经典权衡。仿真结果表明在相同信噪比条件下采用理想相干解调的 QPSK 误码率性能优于采用差分解调的 π/4-DQPSK但 π/4-DQPSK 在抗相位模糊、包络起伏小以及无需载波同步等方面的优势使其在蜂窝移动通信与卫星通信中依然具有不可替代的工程应用价值。一、引言数字调制技术是决定通信系统可靠性与有效性的关键物理层环节。随着物联网、高速移动通信及卫星互联网等新兴应用的不断涌现通信系统面临着频谱资源日益紧缺与传输环境日趋复杂双重压力。在这一背景下选择恰当的调制方案不仅关乎系统理论性能的极限更直接影响着硬件实现的复杂度、功耗及部署成本。正交相移键控QPSK作为一种高效的四进制相位调制方式每个符号携带两比特信息能够在有限的带宽内实现较高的数据传输速率。与二进制相移键控BPSK相比QPSK 在相同带宽下将数据传输速率提升了一倍同时保持了相近的误码率性能。基于这些优势QPSK 已广泛应用于卫星通信、数字视频广播DVB、无线局域网WLAN及蜂窝移动通信等众多标准之中。然而QPSK 接收机通常采用相干解调方案这要求接收端必须利用 Costas 环等锁相环路恢复出与发送端严格同频同相的本地载波。在实际工程中这一需求带来了三个方面的挑战第一在高速移动场景如高铁、无人机、低轨卫星中强烈的多普勒频移会导致锁相环难以快速锁定甚至完全失锁第二载波相位恢复存在固有的相位模糊问题0°、90°、180°、270° 四种不确定性系统必须依赖独特的帧头序列或导频符号进行相位校准降低了有效吞吐量第三锁相环路的捕获与跟踪需要一定的收敛时间这对于短突发数据包传输而言开销过大。为了规避载波同步的工程难题差分相移键控DPSK及其正交变体 DQPSK 被提出。这类调制方案的核心思想是将待传输的信息编码为相邻符号之间的相位差值而非符号的绝对相位值。在接收端只需将当前符号与延迟一个符号周期的前序符号进行共轭相乘或相位相减即可提取出相位增量并恢复原始数据完全无需进行载波相位恢复。进一步地π/4-DQPSK 作为 DQPSK 的一种优化变型通过在两个相互旋转 45° 的正交星座图之间交替映射符号将信号在码元转换时刻的最大相位跳变限制在 ±135° 以内。这一特性有效避免了 QPSK 中常见的 180° 相位反转即信号矢量穿过原点幅度瞬时归零使得调制信号的包络起伏显著减小。恒包络特性使得 π/4-DQPSK 信号能够高效地通过非线性功率放大器如移动终端和卫星转发器中广泛使用的 C 类功放而不会产生严重的频谱旁瓣再生和邻道干扰。尽管如此非相干解调在本质上对噪声的抑制能力弱于相干解调。差分检测在对相位进行差分运算的过程中会引入噪声的“双重”效应当前符号噪声与前一符号噪声叠加导致其理论误码率高于理想的相干 QPSK。本文旨在通过 MATLAB 仿真平台对 QPSK 与 π/4-DQPSK 在 AWGN 信道下的性能进行定量对比分析。二、QPSK调制原理与性能分析2.1 QPSK信号模型2.2 Gray编码与星座图三、π/4-DQPSK调制原理与检测方法3.1 差分编码思想3.2 双星座图设计3.3 非相干差分解调原理四、仿真系统设计与实现4.1 参数设置参数名称符号数值总比特数N NN40000载波频率f c f_cfc1000 Hz符号周期T b T_bTb1 ms每符号采样点数—100采样率f s f_sfs100 kHz (100 × f c 100 \times f_c100×fc)信噪比扫描范围E b / N 0 E_b/N_0Eb/N00 : 1 : 15 dB4.2 仿真流程4.3 仿真图分析可以看到QPSK无噪声星座图四个星座点清晰地位于复平面的单位圆上加噪声星座图座点围绕理想位置呈二维高斯散布散点弥散程度反映了噪声方差的大小。π/4-DQPSK星座点呈八角形分布本质上是两个旋转45°的QPSK星座的叠加。加噪声时散点出现弥散。两条曲线均随信噪比增大呈指数下降符合理论预期。QPSK的BER曲线始终位于DQPSK曲线下方即QPSK的误码率性能优于π/4-DQPSK。这是因为π/4-DQPSK采用非相干差分解调差分运算等效于对噪声进行差分滤波噪声功率被放大4.4 部分代码clc;clear all;close all;%参数初始化N40000;%总比特数 data1randi([01],1,N);%随机生成二进制序列0/1%----------基带信号处理NRZ 编码----------NZR2*data1-1;%双极性不归零码0→-11→1datareshape(NZR,2,N/2);%重排为两行分别对应 I/Q 两路 fc10^3;%载波频率1000Hz Tb1/fc;%比特周期 t0:(Tb/99):Tb;%每个符号内采样100个点%----------QPSK 调制生成时域实信号----------mod[];%存储已调信号 Ac1;%载波幅度 In_phase[];%存储 I 路分量 Quadrature[];%存储 Q 路分量forr1:N/2Indata(1,r)*Ac*cos(2*pi*fc*t);%I 路载波调制 Qddata(2,r)*Ac*sin(2*pi*fc*t);%Q 路载波调制 In_phase[In_phase In];Quadrature[Quadrature Qd];mod[mod InQd];%两路叠加形成 QPSK 信号 end%----------生成 QPSK 复基带星座点用于星座图----------M4;%调制阶数const[];forn1:N/2ifdata(1,n)-1data(2,n)-1Cexp(1j*pi/4);%11→45° elseifdata(1,n)-1data(2,n)1Cexp(1j*3*pi/4);%01→135° elseifdata(1,n)1data(2,n)-1Cexp(1j*5*pi/4);%10→225° elseifdata(1,n)1data(2,n)1Cexp(1j*7*pi/4);%00→315° endconst[constC];end%----------QPSK 星座图无噪声/有噪声----------SNR20;%用于显示的信噪比 Tx_awgnawgn(mod,SNR,measured);%时域信号加噪声仅用于显示 Tx_const_awgnawgn(const,SNR,measured);%复基带信号加噪声%替换 scatterplot 为 plot兼容无工具箱环境 figure;plot(real(const),imag(const),g*);grid minor;title(QPSK 无噪声星座图);figure;plot(real(Tx_const_awgn),imag(Tx_const_awgn),r*);grid minor;title(QPSK 加噪声星座图);%----------QPSK 时域波形绘制----------figure(Name,QPSK Modulation,NumberTitle,off);%----------QPSK 局部波形放大图前20个比特----------subplot(211);stairs(NZR(1:20),LineWidth,1.5);grid on;ylim([-0.21.2]);xlabel(\bf 比特序号);ylabel(\bf 幅度);title(QPSK 输入序列前20比特);subplot(212);%取前10个符号1000个采样点 samples_per_bit100;%每个比特周期采样点数因为每个符号2比特但每个符号周期采样100点%前20个比特10个符号1000点plot(1000*linspace(0,10*Tb,1000),mod(1:1000),LineWidth,1.5);grid on;ylim([-22]);xlabel(\bf 时间 (ms));ylabel(\bf 幅度);title(QPSK 已调信号前20比特);%QPSK 误码率仿真相干解调SNRdB0:1:15;%信噪比范围dB SNRlin10.^(SNRdB/10);%线性值 BERzeros(1,length(SNRlin));%存储仿真误码率%生成新的随机比特用于误码统计独立于前面显示的数据 b1rand(1,N)0.5;b2rand(1,N)0.5;I(2*b1)-1;Q(2*b2)-1;SI1j*Q;%QPSK 复基带符号 N01./SNRlin;%噪声双边带功率谱密度fork1:length(SNRdB)noisesqrt(N0(k)/2)*(randn(1,N)1j*randn(1,N));%生成复高斯白噪声 sig_RxSnoise;%接收信号%硬判决 sig_Ireal(sig_Rx);sig_Qimag(sig_Rx);bld_Isig_I0;bld_Qsig_Q0;%统计错误比特 b1_error(bld_I~b1);b2_error(bld_Q~b2);Error_bitsum(b1_error)sum(b2_error);BER(k)sum(Error_bit)/(2*N);%总比特数为2N end五、结论本文通过 MATLAB 仿真对比了 QPSK 与 π/4-DQPSK 在 AWGN 信道下的性能。结果表明采用理想相干解调的 QPSK 在误码率性能上优于采用非相干差分解调的 π/4-DQPSK这源于差分检测会引入噪声的“双重”效应。然而π/4-DQPSK 通过将信息承载于相位差中避免了严格的载波同步需求且其 ±135° 的最大相位跳变有效减小了包络起伏使其在高速移动、相位快速变化或需通过非线性功放的工程场景中具有显著优势。因此调制方案的选择本质上是理论性能极限与工程实现复杂度之间的权衡。完整仿真代码可见往期文章文末VX公众号包含往期博客所有代码所见即所得