CORDIC v2.0 | Cypress Semiconductor
here's a follow-up to my previous post on the UDB based CORDIC. Here I present RFMS_CORDIC 2.0, which can operate in both Rotation mode (for calculating sine and cosine) and in Vectoring mode (for calculating hypotenuse and arctan2). I've also added support for PSoC 5LP, and provide two example projects demonstrating the operation of each modes on a PSoC 5LP device.
Note that the PSoC 3 version requires a clock that is at most 1/2 of the reference clock, and the PSoC 5LP version requires a clock that is at most 1/3 of the reference clock. Also the Vectoring mode demo project requires <math.h> library and ARM GCC 4.4 seems to have a problem with this. You can bypass this if you use ARM RVDS compiler.