Code covered by the BSD License  

Highlights from
LMMSE Equalizer

LMMSE Equalizer

by

Alex Dytso (view profile)

 

Implementation of LMMSE (linear minimum mean square error) Equalizer used to combat ISI

LMMSE(g,r,N0,N )
%Author: Alex Dytso
%Date: 12/19/2012
%Description: This function is an implemenation of the LMMS(linear minimum
%mean square error) that is used to combat ISI( intersymbol interference)
%in communication systems. 

function Xh = LMMSE(g,r,N0,N )

%g channel 
%r input signal after noise has been addded
%N0 is nois vairance
%N length of the sequeance 


%Computing z-transforms of impulse response
gDconjTimeInv=filt(conj(fliplr(g)),1); % frequency domain repersentatin of conjugate  time inverse of g[n]
gD=filt(g,1); % frequence representation of g[n]
f=gDconjTimeInv/(gD*gDconjTimeInv+N0); %LMMSE filter in frequence domain
[num,den]=tfdata(f,'v'); %extraction coefficient of denominator and numerator

%LMMSE
Xh=filter(num,den,r); % filtering input signal r

Xh=Xh(1:N);


end

Contact us