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 [jmalsbury.perso...@gmail.com] 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 > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio