资源简介
此matlab代码包括对QPSK, 16PSK等M-PSK和QAM, 16QAM, 32QAM, 64QAM, 128QAM等M-QAM调制方式的蒙特卡罗法仿真和与理论结果的对比,画出了星座图,Eb/N0,Es/N0为横坐标时的信道容量曲线。
代码片段和文件信息
clear
clc
close all
trials = 50000;
snr_dB = -10:30;
snr = 10 .^ (0.1 * snr_dB);
C_QPSK = MPSK(4trialssnr);
C_8PSK = MPSK(8trialssnr);
C_16PSK = MPSK(16trialssnr);
% C_128PSK = MPSK(128trialssnr);
C_16QAM = MQAM(16trialssnr);
figure
plot(snr_dBC_QPSK‘k+-‘snr_dBC_8PSK‘k-diamond‘);
hold on;
plot(snr_dBC_16PSK‘k-o‘snr_dBC_16QAM‘r-x‘);
C_shannon = zeros(1length(snr_dB));
for a = 1 : length(snr_dB)
C_shannon(a) = log2(1 + snr(a)); % two dimensions
end
plot(snr_dBC_shannon ‘b‘);
legend(‘QPSK bound‘ ‘8-PSK bound‘ ‘16-PSK bound‘...
‘16-QAM bound‘ ‘Shannon bound‘2);
xlabel(‘SNR(dB)‘);
ylabel(‘Capacity (bps)‘);
title(‘Two Dimension signal Capacity‘);
axis([-10 30 0 6]);
grid on;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 748 2011-10-23 21:45 call_tmp.m
文件 11827 2011-10-23 21:43 capacity.fig
文件 867 2011-10-23 18:25 MPSK.m
文件 957 2011-10-23 18:58 MQAM.m
评论
共有 条评论