主要内容

在 AWGN 信道中估计通用 QAM 调制的符号错误率

在存在高斯噪声的情况下,使用非矩形 16 进制星座图传输和接收数据。显示含噪星座图的散点图,并估计两种不同 SNR 下的符号误码率 (SER)。

基于 V.29 标准(用于电话线调制解调器)创建一个 16-QAM 星座图。

c = [-5 -5i 5 5i -3 -3-3i -3i 3-3i 3 3+3i 3i -3+3i -1 -1i 1 1i];
sigpower = pow2db(mean(abs(c).^2));
M = length(c);

生成随机符号。

data = randi([0 M-1],2000,1);

使用 genqammod 函数调制数据。由于自定义星座图不是矩形,因此需要通用 QAM 调制。

modData = genqammod(data,c);

通过 SNR 为 20 dB 的 AWGN 信道传递信号。

rxSig = awgn(modData,20,sigpower);

显示接收信号和参考星座图 c 的散点图。

h = scatterplot(rxSig);
hold on
scatterplot(c,[],[],'r*',h)
grid
hold off

Constellation diagram scatter plot of the reference signal and the modulated signal passed through an awgn channel.

使用 genqamdemod 函数解调接收信号。确定符号错误数和 SER。

demodData = genqamdemod(rxSig,c);
[numErrors,ser] = symerr(data,demodData)
numErrors = 
4
ser = 
0.0020

使用 SNR 为 10 dB 的 AWGN 信道重复传输和解调过程。确定降低 SNR 后的 SER。与预期相符,当 SNR 降低时性能下降。

rxSig = awgn(modData,10,sigpower);
demodData = genqamdemod(rxSig,c);
[numErrors,ser] = symerr(data,demodData)
numErrors = 
457
ser = 
0.2285

另请参阅

主题