Forum Discussion
Altera_Forum
Honored Contributor
8 years agoandraka's cordic paper (http://www.andraka.com/files/crdcsrvy.pdf) discusses how to do this. You basically create a cordic (http://zipcpu.com/dsp/2017/08/30/cordic.html), input a vector of your input value, and rotate it until the input value reaches (1,0).
Personally, I find the arctan form (http://zipcpu.com/dsp/2017/09/01/topolar.html) of the cordic (http://zipcpu.com/dsp/2017/08/30/cordic.html) more useful, as it doesn't struggle with scale issues and the output doesn't struggle with angular ambiguities. Dan