% -----------實(shí)值信號(hào)~均衡器 ----------------% clear all; close all; %% -----------實(shí)值信號(hào)~均衡器----------------% % ----生成2PAM信號(hào),點(diǎn)數(shù)為Num------- Num=3e3; Xn=rand(1,Num); Xn(Xn>=0.5)=1; Xn (Xn<0.5)=-1; %% ----經(jīng)過(guò)信道,并加噪------- H=[0.005,0.009,-0.024,0.854,-0.218,0.049,-0.016]; %電話信道系數(shù)矩陣,長(zhǎng)度為7. H(z)=0.005+0.009*(z^-1)-0.024*(z^-2)+...-0.016*(z^-6)、 Yn=filter(H,1,Xn);% 通過(guò)信道未加噪聲序列,長(zhǎng)度Num+6 SNR=20; sig=awgn(Yn,SNR); %加噪SNR=20dB W=[0,0,0,1,0,0,0]; % 初始化均衡濾波器系數(shù),長(zhǎng)度為7 Y=[0,0,0,0,0,0,0]; % 長(zhǎng)度為7 Lf=7; mu=0.0008; R2=1; %恒模常量,2PAM for m=1:1:Num % Num+6卷積后Yn的長(zhǎng)度 %------經(jīng)過(guò)濾波器模塊------ Y=[sig(m) Y(1:6)]; s= Y(Lf:-1:1)*W(1:Lf).'; X(m)=s; %------判決模塊------ a(m)=1; if X(m)<=0 a(m)=-1; end %------誤差信號(hào)計(jì)算模塊------ En=s *(s*s-R2); %------迭代模塊(系數(shù)更新)------ W=W-mu*En*Y(Lf:-1:1); end % ----- 計(jì)算誤碼率----- j=0; l=0; for k=1:Num-Lf+1 if a(k+Lf-1)==Xn(k) l=l+1; else j=j+1; % 計(jì)算錯(cuò)誤的數(shù)量 C(j)=k; % 計(jì)算出錯(cuò)位置 end end BER=j/( Num-Lf+1); %% ------------------程序后處理---------------------
|