• 大小: 2KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-03
  • 语言: Matlab
  • 标签: matlab  

资源简介

实现了OFDM系统的盲信道子空间信道估计,并用matlab描述了ber性能曲线

资源截图

代码片段和文件信息

clear all;
close all;
%生成一个1*64的矩阵
for N=1:100
mod_in=randint(164);
%子载波个数16循环前缀个数4
%QPSK调制
mod_out=zeros(1length(mod_in)/2); 
R=reshape(mod_in2length(mod_in)/2);  
   T=R‘ ;   
   B2D=bi2de(T‘left-msb‘)+1;  
   Temp=[-1-j  -1+j  1-j   1+j]; 
    for i=1:length(mod_in)/2 
         mod_out(i)=Temp(B2D(i))/sqrt(2);%归一化
      end 
%串并变换
E=reshape(mod_out2length(mod_out)/2);
%IFFT
f=ifft(E);
%并串
g=reshape(f132);
for i=1:32
    g(i)=real(g(i));
end
a=g‘*g;
if N==1
    l=a;
end
l=(a+l)/2;
end

%信道
m=[1 0.4 -0.7 0.5 0.1]; %5个
m1=zeros(14);
m2=zeros(14);
for i=1:4
    m1(i)=m(i);
end
m2(1)=m1(1);
c0=toeplitz(m1m2);


m3=zeros(14);
m4=zeros(14);
u=5;
for i=2:5
    u=u-1;
    m4(u)=m(i);
end
m3(1)=m4(1);
c1=toeplitz(m3m4);
c3=zeros(44);

H=[c0 c3 c3 c1 c3 c3 c3 c3;c1 c0 c3 c3 c3 c3 c3 c3;c3 c1 c0 c3 c3 c3 c3 c3;c3 c3 c1 c0 c3 c3 c3 c3 ;c3 c3 c3 c1 c3 c3 c3 c0;c3 c3 c3 c3 c0 c3 c3  c1;c3 c3 c3 c3 c1 c0 c3 c3;c3 c3 c3 c3 c3  c1 c0 c3;c3 c3 c3 c3 c3 c3 c1 c0];

%接收信号自相关矩阵

out1=H*l*H‘;
%加高斯白噪声
snr=4;
SymCh = awgn(out1snr‘measured‘);
%svd分解
[USV] =svd(SymCh);
rank_l=rank(l);
b=U;
for i=1:rank_l;
    b(:1)=[];
end
%b为噪声子空间特征向量36*4

%生成矩阵
A=zeros(14);
%b的第1列生成的A矩阵
for z=1:4:33
m3=zeros(14);
m4=zeros(14);
u=5;
e=z;
for n=1:4
    u=u-1;
    m4(u)=b(e1);
    e=e+1;
end
m3(1)=m4(1);
temp=toeplitz(m3m4);
temp=fliplr(temp);
M=[temp;A];
if z==1
    A11=M;
elseif z==5
    A12=M;
elseif z==9
    A13=M;
elseif z==13
    A14=M;
elseif z==17
    A15=M;
elseif z==21
    A16=M;
elseif z==25
    A17=M;
elseif z==29
    A18=M;
elseif z==33
    A19=M;
end
end
 
%b的第2列生成的A矩阵
for z=1:4:33
m3=zeros(14);
m4=zeros(14);
u=5;
e=z;
for n=1:4
    u=u-1;
    m4(u)=b(e2);
    e=e+1;
end
m3(1)=m4(1);
temp=toeplitz(m3m4);
temp=fliplr(temp);
M=[temp;A];
if z==1
    A21=M;
elseif z==5
    A22=M;
elseif z==9
    A23=M;
elseif z==13
    A24=M;
elseif z==17
    A25=M;
elseif z==21
    A26=M;
elseif z==25
    A27=M;
elseif z==29
    A28=M;
elseif z==33
    A29=M;
end
end

%b的第3列生成的A矩阵
for z=1:4:33
m3=zeros(14);
m4=zeros(14);
u=5;
e=z;
for n=1:4
    u=u-1;
    m4(u)=b(e3);
    e=e+1;
end
m3(1)=m4(1);
temp=toeplitz(m3m4);
temp=fliplr(temp);
M=[temp;A];
if z==1
    A31=M;
elseif z==5
    A32=M;
elseif z==9
    A33=M;
elseif z==13
    A34=M;
elseif z==17
    A35=M;
elseif z==21
    A36=M;
elseif z==25
    A37=M;
elseif z==29
    A38=M;
elseif z==33
    A39=M;
end
end

%b的第4列生成的A矩阵
for z=1:4:33
m3=zeros(14);
m4=zeros(14);
u=5;
e=z;
for n=1:4
    u=u-1;
    m4(u)=b(e4);
    e=e+1;
end
m3(1)=m4(1);
temp=toeplitz(m3m4);
temp=fliplr(temp);
M=[temp;A];
if z==1
    A41=M;
elseif z==5
    A42=M;
elseif z==9
    A43=M;
elseif z==13
    A44=M;
elseif z==17
    A45=M;
elseif z==21
    A46=M;
elseif z==25
    A47=M;
elseif z==29
    A48=M;
elseif z==33
    A49=M;
end

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

     文件         55  2018-08-27 11:33  OFDM盲信道估计_基于子空间的盲信道估计源代码\【源码使用必读】.url

     文件       5894  2006-07-06 17:37  OFDM盲信道估计_基于子空间的盲信道估计源代码\基于子空间盲.m

     目录          0  2018-08-30 08:52  OFDM盲信道估计_基于子空间的盲信道估计源代码

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

                 5949                    3


评论

共有 条评论