From: Eyal on
I tried to use lineareq and dfe, with lms and a training sequence, but they only seem to work when the channel filter's coefficients are all positive.
I use:
eqobj = lineareq(30, lms(0.01), [1+i 1-i -1+j -1-j],4);
for i=1:1000
y(i,:)=equalize(eqobj, ComplexSymbols(i,:), CorrectComplexSymbols(i,:));
end
where ComplexSymbols is the signal at a sampling rate of symbol_rate*4, and has length 4 times of CorrectComplexSymbols.
Additionaly, the signal is OQPSK - the I and the Q are transmitted at a half symbol offset.
Am I doing something wrong, or is this the case? They don't correct my actual signal, I suspect that it is for this reason
From: Eyal on
"Eyal " <eyallzevel(a)gmail.com> wrote in message <hnbc97$qbp$1(a)fred.mathworks.com>...
> I tried to use lineareq and dfe, with lms and a training sequence, but they only seem to work when the channel filter's coefficients are all positive.
> I use:
> eqobj = lineareq(30, lms(0.01), [1+i 1-i -1+j -1-j],4);
> for i=1:1000
> y(i,:)=equalize(eqobj, ComplexSymbols(i,:), CorrectComplexSymbols(i,:));
> end
> where ComplexSymbols is the signal at a sampling rate of symbol_rate*4, and has length 4 times of CorrectComplexSymbols.
> Additionaly, the signal is OQPSK - the I and the Q are transmitted at a half symbol offset.
> Am I doing something wrong, or is this the case? They don't correct my actual signal, I suspect that it is for this reason

I forgot to mention: the length of ComplexSymbols is 71 (CorectComplexSymbols's is 284) and I do also "eqobj.ResetBeforeFiltering=0" before the loop. also all(sum(abs(ComplexSymbols).^2,2)==1)==1, and CorrectComplexSymbols's values are only of [1+i 1-i -1+j -1-j]
From: Ethem Sozer on
Hi Eyal,
It is hard to comment on what is going on without more information. Can you
include a simple script that shows the problem? Especially, the channel
coefficients, noise level, Doppler spread etc.
Regards,
Ethem


"Eyal " <eyallzevel(a)gmail.com> wrote in message
news:hnbc97$qbp$1(a)fred.mathworks.com...
>I tried to use lineareq and dfe, with lms and a training sequence, but they
>only seem to work when the channel filter's coefficients are all positive.
>I use:
> eqobj = lineareq(30, lms(0.01), [1+i 1-i -1+j -1-j],4);
> for i=1:1000
> y(i,:)=equalize(eqobj, ComplexSymbols(i,:),
> CorrectComplexSymbols(i,:));
> end
> where ComplexSymbols is the signal at a sampling rate of symbol_rate*4,
> and has length 4 times of CorrectComplexSymbols.
> Additionaly, the signal is OQPSK - the I and the Q are transmitted at a
> half symbol offset.
> Am I doing something wrong, or is this the case? They don't correct my
> actual signal, I suspect that it is for this reason


From: Eyal on
I tried again a simulation with negative coefficients and it worked. probably made a mistake last time. I don't know the real channel's coefficients. can you post me maybe a link to somewhere that explains about this subject? (I don't know what doppler spread is)

"Ethem Sozer" <esozer(a)mathworks.com> wrote in message <hnbfgr$scl$1(a)fred.mathworks.com>...
> Hi Eyal,
> It is hard to comment on what is going on without more information. Can you
> include a simple script that shows the problem? Especially, the channel
> coefficients, noise level, Doppler spread etc.
> Regards,
> Ethem
>
>
> "Eyal " <eyallzevel(a)gmail.com> wrote in message
> news:hnbc97$qbp$1(a)fred.mathworks.com...
> >I tried to use lineareq and dfe, with lms and a training sequence, but they
> >only seem to work when the channel filter's coefficients are all positive.
> >I use:
> > eqobj = lineareq(30, lms(0.01), [1+i 1-i -1+j -1-j],4);
> > for i=1:1000
> > y(i,:)=equalize(eqobj, ComplexSymbols(i,:),
> > CorrectComplexSymbols(i,:));
> > end
> > where ComplexSymbols is the signal at a sampling rate of symbol_rate*4,
> > and has length 4 times of CorrectComplexSymbols.
> > Additionaly, the signal is OQPSK - the I and the Q are transmitted at a
> > half symbol offset.
> > Am I doing something wrong, or is this the case? They don't correct my
> > actual signal, I suspect that it is for this reason
>