1.算法仿真效果 matlab2022a仿真结果如下(完整代码运行后无水印):

4.jpeg7.jpeg6.jpeg1.jpeg2.jpeg5.jpeg3.jpeg8.jpeg

2.算法涉及理论知识概要 星座图整形技术旨在通过优化星座点的布局来改善系统的性能。这包括但不限于:

1.功率效率提升:通过非均匀分布星座点,可以减少符号间的距离,从而在相同的平均功率下,传输更多信息比特,但这也增加了对解调器的要求。

2.抗干扰能力增强:通过将星座点布局在更有利于区分的区域,即使在存在噪声或干扰的情况下,也能减少错误概率。

3.相位旋转:某些情况下,对星座图进行特定的旋转可以减少某些类型的干扰影响。

9.png

   随着QAM阶数的增加,数据传输速率得以提升,但同时也对信道质量、解调算法复杂度以及系统整体的抗干扰能力提出了更高要求。星座图整形是一种重要的手段,通过精心设计星座点布局,可以在保持或提高系统性能的同时,增加数据传输效率。在实际应用中,选择合适的QAM阶数和优化星座图设计是至关重要的,需要根据具体的通信环境和系统需求综合考量。

3.MATLAB核心程序

s          = randi([0 1],LEN*bitsPerSym,1);
% QAM映射
Tx1        = Trainable_mapping(s,M);%*****************************************************
 
Pnormal    = max(max(abs(Tx1)));
% 功率归一化
Tx2        = func_power_normal(Tx1,Pnormal);
% 上采样
Tx3        = upsample(Tx2,Fs/F_AWG);    
Tx4r       = func_Trainable_filter_F(real(Tx3),Fs,F_AWG);
Tx4i       = func_Trainable_filter_F(imag(Tx3),Fs,F_AWG);
Tx4        = Tx4r+sqrt(-1)*Tx4i;
 % 再次功率归一化
Pnormal2   = max(max(abs(Tx4)));
Tx5        = func_power_normal(Tx4,Pnormal2);
%高斯白噪声信道
Rx         = awgn(Tx5,SNR(i),'measured');
% 下采样
Rx2        = downsample(Rx,Fs/F_AWG);
z          = func_RX_ww(Rx2,M,Pnormal2,Pnormal);% 解调
z2         = z(1:end);
err(i)     = 1-length(find(s==double(z2)))/length(s) 
end
figure;
plot(real(Rx2),imag(Rx2),'b.');
title('256QAM星座图');
 
figure;
semilogy(SNR,err,'b-o');
grid on
xlabel('SNR');
ylabel('error');
 
if M==16
save R2_16.mat Rx2 SNR err
end
if M==32
save R2_32.mat Rx2 SNR err
end
if M==64
save R2_64.mat Rx2 SNR err
end
if M==256
save R2_256.mat Rx2 SNR err
end
0X_065m