14.5 SINE AND COSINE OPERATORS

This section presents an implementation for sine and cosine computation using CORDIC Algorithm 7.10 as described in Section 7.3.4. The circuit presented in Figure 14.19 is basically made up of three loop-circuits. The auxiliary sequence (upper loop) computes the successive values of the residual rotation angle ai. A lookup table provides the successive values of tan−1 2i to be added or subtracted from the current angle value ai stored in register A: if ai is negative, ai+1 is computed as

image

image

Figure 14.19 CORDIC algorithm implementation for sine and cosine computation.

Otherwise, if ai is positive,

image

The initial value a0 is the argument angle a.

The main sequences, computing sin a (register Y) and cos a (register X) are built up according to the following rules:

image

If ai is positive,

image

Otherwise, if ai is negative,

image

As quoted in Section 7.3.4, the argument a can be ...

Get Synthesis of Arithmetic Circuits: FPGA, ASIC and Embedded Systems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.