Hi,
In the PLL/Costas algorithms why is the error term limited between {1,-1}?
I understand the need for limiting but how was the value '1' chosen? In the
following,

float
gr_costas_loop_cc::phase_detector_2(gr_complex sample) const
{
  return (sample.real()*sample.imag());
}

the phase detector returns the product of the I and Q parts of the sample
which means that the phase error detected is dependent upon the signal
sample amplitude and if the amplitude of the signal is greater than 1, the
returned error ought to be greater than 1 in most of the cases and limiting
the error in such cases defeats the purpose. What am I missing here as this
algorithm always seems to work?

Thanks
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to