Hi friends, I am running an 1 tap complex tracker with an adaptive weight using a LMS algorithm. u-input d-ideal points y-filtered points w- coefficient y(i)=w*(i).u(i) e(i)=d(i)-y(i) w(i+1)=w(i)+mu.e(i).u(i) mu=0.01 The floating point algorithm works well with this value of mu. I have done a matlab fixed point 1.15 and 1.31 implementation of the above , and find that it is a poor tracker with the value of mu =0.01 . Upon changing the value to 0.1, i find that it works fine. I am wondering why this should happen with the fixed point simulation. Can anyone explain as to why this is happening or is there anything else i should take into consideration.? Thanks for ur inputs. rahul.

# 1.15 LMS problem ...please help

Started by ●October 12, 2003

Reply by ●October 13, 20032003-10-13

rahul wrote:> Hi friends, > > I am running an 1 tap complex tracker with an adaptive weight using a > LMS > algorithm. > > u-input > d-ideal points > y-filtered points > w- coefficient > > y(i)=w*(i).u(i) > e(i)=d(i)-y(i) > w(i+1)=w(i)+mu.e(i).u(i) > > mu=0.01 > > The floating point algorithm works well with this value of mu. I have > done a matlab fixed point 1.15 and 1.31 implementation of the above , > and find that it is a poor tracker with the value of mu =0.01 . Upon > changing the value to 0.1, i find that it works fine. I am wondering > why this should happen with the fixed point simulation. > > Can anyone explain as to why this is happening or is there anything > else i should take into consideration.? > > Thanks for ur inputs. > > rahul.One thing to remember for fixed point implementations is that the order of multiplications is important when you quantize between the multiplications (which I assume you are doing here). It would be interesting to see in which order you do the mu.e(i).u(i) term. You might find that doing mu.(e(i).u(i)) will improve your performance. Also running normalized (higher mu for smaller values of u(i)) can improve the performance. -- Brian Dam Pedersen DSP Software Engineer