Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to design the matlab code for LMS adaptive equilization

Status
Not open for further replies.

dream_ankur

Newbie level 6
Joined
Dec 22, 2009
Messages
11
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,347
Re: How to design the matlab code for LMS adaptive equilizat

Hi,

Can anyone help me how to design the matlab code for LMS adaptive equilization and from transmitter till receiver which all blocks i need to consider for QPSK. According to what i think is the QPSK bits generated at the receiver will directly passed to the channel and filter it than adding noise and than passed through the equilizer.

Added after 13 minutes:

I am sorry there is small mistake.. the QPSK bits generated at the "transmitter" not receiver. Also in the matlab code i do not want to use the inbuild lms command.
 

Re: How to design the matlab code for LMS adaptive equilizat

This is pretty much it:

Code:
w = 1
mu = .01
foreach x
 y = H x + n
 x_est = w' y
 e = x - x_est
 w = w + mu x e'
end

where x is the transmit symbol, H is channel, n is additive noise, y is the received signal, w is the equalizer coefficient, x_est is the estimated transmit symbol, mu is the parameter which controls convergence speed. You only need to extend that to multipath. Which part is unclear to you exactly?
 

Re: Noise Cancellation using Normalized LMS and Leaky LMS in MATLAB for Speech enhanc

LMS method to findfilter coefficients of order 2. here is code

plot is showing opposite result because of some mistake which i couldn't found so it is diverging instead of convergence.here is code
M=2; %tap weighth length
a(1:M)=[1 2.0260]% 2.1480 -1.1590];
l=M;mu=0.3;tol(1:M,1)=1e-4';

U=rand(1,l)';%input vector of length 10
R=U'*U; % R matrix
Wo=a';
d=Wo'*U;
P=U*d';
W_hat(1:M,1:10000)=0;
% %
i=2;
d_hat(1)=W_hat:),1)'*U;
deltaJw:),1)=-2*U*d'+2*U*U'*W_hat:),1);
while(i<10000)
d_hat(i)=W_hat(1:M,i)'*U;
W_hat:),i)=W_hat:),i-1)-mu*U*(d-d_hat(i));
deltaJw:),i)=-2*U*d'+2*U*U'*W_hat:),i);

if (abs(W_hat:),i)-Wo))<tol:),1)
break
end
i=i+1;
end
figure(2)
plot(W_hat(1,:),W_hat(2,:),'or')
hold on
plot(Wo(1,1),Wo(2,1),'.')
axis ([-3 3 -3 3])
xlabel('w1(n)','FontSize',10)
ylabel('w2(n)','FontSize',10)
grid on
title('w2(n) vs w1(n) with step size 0.3','FontSize',14)

- - - Updated - - -

hi this is my recent work.i will move to NLMS method after gatting good reult for LMS method. if you can debug the problem in above code then i am waiting.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top