Engee 文档
Notebook

不同 c AWGN 调制方法的理论误码率特性分析

在现代通信系统中,调制方法的选择对确保数据传输的可靠性和效率起着关键作用。比特误码率(BER)是表征通信质量的主要指标之一,它取决于信噪比(Eb/No)。本演示从理论上分析了各种调制技术在加性白高斯噪声信道条件下的误码率,包括 M-PSK(BPSK、QPSK、8-PSK)、M-QAM(16-QAM、64-QAM)和 M-FSK(2-FSK、4-FSK)。

在计算误码率时,使用了考虑到每种调制方法特殊性的精确公式和近似公式。分析结果以图表的形式直观呈现,可清晰比较不同调制方法作为 Eb/No 变化函数的性能。 该分析有助于工程师和研究人员在考虑数据传输速率和抗噪能力之间权衡的情况下,为特定通信条件选择最佳调制方法。

In [ ]:
using SpecialFunctions

函数berawgn_psk 使用 BPSK (M=2) 的精确公式计算 AWGN 信道中 M-PSK 调制的理论误码率 (BER)--0.5 * erfc(sqrt(EbNo)) ,其中erfc 是一个附加误差函数,而对于 M>2 则使用近似值erfc(sqrt(k * EbNo) * sin(π/M)) / k ,其中考虑了每个符号的比特数 (k = log2(M)) 和星座的几何形状(通过sin(π/M) )。这两个公式都取决于线性信噪比EbNo = 10^(EbNo_dB/10) ,由分贝转换而来。

In [ ]:
function berawgn_psk(EbNo_dB, M)
    EbNo = 10 .^ (EbNo_dB ./ 10)
    k = log2(M)
    if M == 2
        return 0.5 .* erfc.(sqrt.(EbNo))
    else
        return erfc.(sqrt.(k .* EbNo) .* sin(π/M)) / k
    end
end
Out[0]:
berawgn_psk (generic function with 1 method)

函数berawgn_qam 可计算 AWGN 噪声信道中正交振幅调制(M-QAM,如 16-QAM、64-QAM)的理论误码率 (BER)。它使用正交星座的精确公式,其中
-EbNo = 10^(EbNo_dB/10) 是线性信噪比、
-k = log2(M) 是每个符号的比特数、
-erfc 是加性误差函数、

  • 乘法器4/k(1 - 1/sqrt(M)) 考虑了星座的几何形状和不同比特组合的误差概率。该公式对二次 QAM 有效。
In [ ]:
function berawgn_qam(EbNo_dB, M)
    EbNo = 10 .^ (EbNo_dB ./ 10)
    k = log2(M)
    return (4/k) .* (1 - 1/sqrt(M)) .* 0.5 .* erfc.(sqrt.(3*k.*EbNo./(2*(M-1))))
end
Out[0]:
berawgn_qam (generic function with 1 method)

函数berawgn_fsk 计算了 AWGN 噪声信道中 M-FSK(频率操纵)调制的理论误码率(BER),支持两种检测模式。对于相干接收(具有准确的相位信息),使用以下公式:
-EbNo = 10^(EbNo_dB/10) 是线性信噪比、
-k = log2(M) 是每个字符的比特数、
-erfc - 附加误差函数。
该函数考虑了误差随M (通过乘法器(M-1)/M(M-1)/2 )的增加而增加,以及与每比特能量的关系 (k*EbNo)。模式由参数coherent=true/false 设置。适用于分析 2-FSK、4-FSK 和其他正交电路。

In [ ]:
function berawgn_fsk(EbNo_dB, M; coherent=true)
    EbNo = 10 .^ (EbNo_dB ./ 10)
    k = log2(M)
    if coherent
        return ((M-1)/M) .* erfc.(sqrt.(k.*EbNo./2))
    else
        return ((M-1)/2) .* exp.(-k.*EbNo./2)
    end
end
Out[0]:
berawgn_fsk (generic function with 1 method)

现在,让我们对信噪比相同的调制进行比较分析。

In [ ]:
EbNo_dB = -15:1:15 # Диапазон Eb/No для анализа

plot(EbNo_dB, berawgn_psk(EbNo_dB, 2), label="BPSK", marker=:circle, markersize=4)
plot!(EbNo_dB, berawgn_psk(EbNo_dB, 4), label="QPSK", marker=:rect, markersize=4)
plot!(EbNo_dB, berawgn_psk(EbNo_dB, 8), label="8-PSK", marker=:diamond, markersize=4)
plot!(EbNo_dB, berawgn_qam(EbNo_dB, 16), label="16-QAM", marker=:utriangle, markersize=4)
plot!(EbNo_dB, berawgn_qam(EbNo_dB, 64), label="64-QAM", marker=:dtriangle, markersize=4)
plot!(EbNo_dB, berawgn_fsk(EbNo_dB, 2), label="2-FSK", marker=:pentagon, markersize=4)
plot!(EbNo_dB, berawgn_fsk(EbNo_dB, 4), label="4-FSK", marker=:hexagon, markersize=4)

xlabel!("Eb/No (dB)", fontsize=12)
ylabel!("Bit Error Rate (BER)", fontsize=12)
title!("Теоретические BER для различных модуляций", fontsize=14)
Out[0]:

结论

对不同调制方法的理论误码率特性所做的分析表明,它们的不同表现取决于信噪比(Eb/No)。从图中可以看出,BPSK 和 QPSK 调制方法在 Eb/No 值较低时具有较好的抗噪能力,是弱信号条件下的理想选择。然而,随着 Eb/No 值的增加,16-QAM 和 64-QAM 等更高级别的调制技术虽然需要更高的信噪比才能达到相当的误码率值,但却能提供更高的频谱效率。

M-FSK 调制方法,特别是 2-FSK 和 4-FSK,表现出中等性能,使其适用于对实施的简易性和频率变化的鲁棒性有重要要求的特定场景。研究结果强调了根据通信系统的具体要求(如可接受的错误概率、可用带宽和能量限制)选择调制方法的重要性。

因此,我们的分析为通信系统的设计和优化提供了有价值的信息,可以为不同的运行条件选择最佳调制方法。