资源简介
2*1的Alamouti空时码BER性能曲线matlab源码,内含详细注释,即下即用
代码片段和文件信息
%ex1.m
%仿真Alamouti 2发1收空时编码性能,调制方式为QPSK
clear all
datasize=100000; % 仿真的符号数
EbNo=0:2:20; % 信噪比
M=4; % QPSK modulation
x=randsrc(2datasize/2[0:3]); % 数据源符号
x1=pskmod(xMpi/4);
h=randn(2datasize/2)+j*randn(2datasize/2); %Rayleigh衰落信道
h=h./sqrt(2);
for indx=1:length(EbNo)
sigma1=sqrt(1/(4*10.^(EbNo(indx)/10))); % SISO信道高斯白噪声标准差
n=sigma1*(randn(2datasize/2)+j*randn(2datasize/2));
y=x1+n; % 通过AWGN信道
y1=x1+n./h; % 通过SISO瑞利衰落信道后的判决变量
x2=pskdemod(yMpi/4);
x3=pskdemod(y1Mpi/4);
sigma2=sqrt(1/(2*10.^(EbNo(indx)/10))); % Alamouti方案每个子信道高斯白噪声标准差
n=sigma2*(randn(2datasize/2)+j*randn(2datasize/2));
n1(1:)=(conj(h(1:)).*n(1:)+h(2:).*conj(n(2:)))./(sum(abs(h).^2)); % Alamouti方案的判决变量
n1(2:)=(conj(h(2:)).*n(1:)-h(1:).*conj(n(2:)))./(sum(abs(h).^2));
y3=x1+n1;
x4=pskdemod(y3Mpi/4);
[tempber1(indx)]=biterr(xx2log2(M));
[tempber2(indx)]=biterr(xx3log2(M));
[tempber3(indx)]=biterr(xx4log2(M));
end
semilogy(EbNober1‘-k*‘EbNober2‘-ko‘EbNober3‘-kd‘)
grid on
legend(‘AWGN信道‘‘SISO瑞利衰落信道‘‘2发1收Alamouti方案‘)
xlabel(‘信噪比EbNo(dB)‘)
ylabel(‘误比特率(BER)‘)
title(‘2发1收Alamouti方案在瑞利衰落信道下的性能‘)
评论
共有 条评论