• 大小: 22KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-05-16
  • 语言: Matlab
  • 标签: Alamouti  

资源简介

Alamouti空时分组编码及运行结果,是研究Alamouti方案比较合适的matlab代码

资源截图

代码片段和文件信息

clear all;
SNR=0:2:30;
snr=10.^(SNR/10);
sigma=sqrt(1./snr);%噪声与信号的幅度比值
K=200000;%未调制信号长度,信号越长,曲线越精确
data=randint(1K);
%%%%%%%%%%%%%%%%%%%%设置参数%%%%%%%%%%%%%%%%%%%%%%%%
nt=2;%发射天线数
nr=2;%接收天线数
n=4; %调制方式nPSK

%%%%%%%%%%%%%%%%%%%%NPSK信号调制%%%%%%%%%%%%%%%%%%%%
npskdata=npsk(ndata);%调用调制方式子函数
x=npskdata;           %调制后信号

%%%%%%%%%%%%%%%%%%%Alamouti%%%%%%%%%%%%%%%%%%%%%%%%
for k=1:length(SNR)
    error_symbol=0;%对每一个信噪比下的误符号率清零
for i=1:length(npskdata)/2
     x1=x(2*i-1);
        x2=x(2*i);         %对信源进行空时操作,每两个数据符号一起
        X=[x1 -x2‘;x2 x1‘];%空时发射信号矩阵
H=rey(ntnr);      %调用信道子函数
noise=sigma(k).*rey(ntnr);
        R=sqrt(1/2).*H*X+noise;%接收信号矩阵
        y1=0;y2=0;
for i=1:nr
    y1=H(i1)‘*R(i1)+H(i2)*R(i2)‘+y1;
    y2=H(i2)‘*R(i1)-H(i1)*R(i2)‘+y2;
end  

    %进行最大似然检测
    DEC_X=judge(ny1y2);

        %统计符号错误的总数
    if DEC_X(1)~=x1
    error_symbol=error_symbol+1;
    end
    if DEC_X(2)~=x2
    error_symbol=error_symbol+1;
    end
end
     SER(k)=error_symbol/length(npskdata);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%画图%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
semilogy(SNRSER‘b*-‘);
grid on
legend(‘Alamouti QPSK(2TX 2RX)‘)
title(‘QPSK调制下的Alamouti码方案在慢瑞利衰减信道上的误符号率性能‘)
xlabel(‘信噪比/dB‘);
ylabel(‘误符号率‘);
hold on

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      71168  2009-03-30 10:47  运行结果.doc

     文件        449  2009-03-29 21:07  judge.m

     文件        304  2009-03-29 21:02  npsk.m

     文件        241  2009-03-29 21:00  rey.m

     文件       1461  2009-03-29 21:34  alamouti.m

----------- ---------  ---------- -----  ----

                73623                    5


评论

共有 条评论