Traditionally this was a job for CORDIC.  I don't know what the tradeoffs
look like on a modern processor, though.  If a significant part of your
algorithm operates in phase/magnitude, might you consider a rect->polar
conversion?

John Malsbury [[email protected]] wrote:
> I have a  complex phase rotation function that uses a pre-generated sin/cos
> LUT and some basic multiple/adds.
> 
> As it turns out, the rotation calc, which uses "straight" C/C++ math is
> still the bottleneck in a demod.
> 
> I was wondering, is there some uber-efficient rotation block/class I should
> be using?   I notice there is a volk kernel for the job and gr_rotator.
> But I also should mention that the phase rotation operation must happen one
> sample at a time.  This is due to the sequential nature of the algorithm -
> ie.  I can't align and call a kernel with hundreds of nicely-aligned
> samples.
> 
> Any advice?
> 
> -John

> _______________________________________________
> Discuss-gnuradio mailing list
> [email protected]
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to