• 大小: 3KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-17
  • 语言: 其他
  • 标签: FMT  DFE  QAM  

资源简介

FMT DFE QAM,滤波多音调制,均衡很好的参考资源

资源截图

代码片段和文件信息

clc
clear
echo off
global cir_matrix_t
global N
global flag
flag = 1;    
snr_b = [151015203530];
iter_num = 3;
N = 32;
snr = snr_b + 10*log10(2);


subCarrNum=64;    %number of ifft/fft point the subchannel numbers.
gama=16;          %length of polyphase filter
Nf=(2*gama-1);% Select FSE and DFE lengths
Nb=gama;

Prototype=ProtoFilter(subCarrNumgama);
tPolyphase=reshape(PrototypesubCarrNumgama);%polyphase:多相,gama多相滤波器的长度,subCarrNum为子载波个数 reshape:改变数组的配置 
mPolyphase=SubMatchFilter(tPolyphasesubCarrNum);
for p=1:subCarrNum
    subChannelMat(p:)=conv(tPolyphase(p:)mPolyphase(p:));%conv:求两个多项式的乘积
end
for p=1:subCarrNum
    c(p:)=subChannelMat(p:)/norm(subChannelMat(p:));%%%norm:矩阵或向量的范数
end

for snr_index=1:length(snr)
    errsnr(snr_index)=0;
   ber(snr_index)=0;
    lambda = power(10-snr(snr_index)/20);
    
     erriter= 0;
    for iter =1:iter_num
      
        for p=1:subCarrNum
           
           
        bit_signal(p:) = randint(1N);
        modul_signal1(p:) = mod_4PSK(bit_signal(p:));
        end
         modul_signal=ifft(modul_signal1);

        
        for p=1:subCarrNum
          rx_sym(p:) = Through_channel(c(p:)modul_signal(p:)N/2);
         rx_signal1(p:) = awgn(rx_sym(p:)snr(snr_index));
        end
         
        
        for p=1:subCarrNum
               equal_bit= [];
        equal_signal1(p:) = equalizer(NfNbrx_signal1(p:)lambda);
        end
  equal_signal=fft(equal_signal1);
  
        
        errp=0;
        for p=1:subCarrNum
          
               equal_bit= [];
        
            for k=1:N/2
                
                if real(equal_signal(pk))>0.5
                equal_bit = [equal_bit 0 0];
                elseif real(equal_signal(pk)<-0.5)
                equal_bit = [equal_bit 1 1];
                elseif imag(equal_signal(pk))>0.5
                equal_bit = [equal_bit 1 0];
                else equal_bit = [equal_bit 0 1 ];
                end
            end
            errr(p) = sum(abs(equal_bit-bit_signal(p:)));
           errp = errp+ errr(p);
        end   
        erriter=erriter+errp;
   
    end
   errsnr(snr_index)=erriter;
       errsnr1(snr_index)=errsnr(snr_index)/(N*iter_num*subCarrNum);
       ber(snr_index)= errsnr1(snr_index)
       snr_index
end
     semilogy(snr_bber‘*-‘)
hold on
grid on


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

     文件       2471  2007-10-05 08:46  FMT_DFE_4QAM\DFE_MAIN_3.m

     文件        740  2007-09-28 15:12  FMT_DFE_4QAM\equalizer.m

     文件        296  2007-09-26 18:46  FMT_DFE_4QAM\hard_4QAM_demodul.m

     文件        342  2007-09-26 18:46  FMT_DFE_4QAM\mod_4PSK.m

     文件        360  2007-09-27 20:48  FMT_DFE_4QAM\ProtoFilter.m

     文件        145  2007-10-05 19:57  FMT_DFE_4QAM\read me.txt

     文件        474  2007-09-22 14:40  FMT_DFE_4QAM\SubMatchFilter.m

     文件        747  2007-10-01 22:04  FMT_DFE_4QAM\Through_channel.m

     目录          0  2007-10-05 08:47  FMT_DFE_4QAM

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

                 5575                    9


评论

共有 条评论