ALTERA_CORDIC IP Core User Guide

ID 683808
Date 5/08/2017
Public

A newer version of this document is available. Customers should click here to go to the newest version.

1.3.4. Vector Rotate Function

The vector rotate function takes a vector v= (x,y) T given by the two coordinates x and y and an angle a. The function produces a similarity rotation of vector v by the angle a to produce the vector v0=(x0, y0) T .
Figure 4. Vector Rotate Function

The rotation is a similarity rotation because the magnitude of the produced vector v0 is scaled up by the CORDIC specific constant K(˜1.646760258121). The equations of the coordinates for vector v0 are:

  • x0 = K(xcos(a) ysin(a))
  • y0 = K(xsin(a)+ ycos(a))

If you set the sign attribute to true for the x,y inputs for the function, the IP core restricts their range to [−1,1]. You provide the number of fractional bits. The input angle a is allowed in the range [−π,+π], and has the same number of fractional bits as the other inputs. You provide the output fractional bits and the total width of the output is w=wF+3, signed. For unsigned inputs x,y, the IP core restricts the range to [0,1], the angle a to [0].