Sine/cosine generator
First Claim
1. A method for generating a sine and cosine of an input angle, comprising the steps of:
- decomposing, by at least one electronic circuit, said input angle into an octant or quadrant, a coarse angle, and a fine angle;
determining, by said electronic circuit, a cosine and a sine of said coarse angle;
decomposing, by said electronic circuit, said cosine of said coarse angle to a first most significant word and a first least significant word and said sine of said coarse angle to a second most significant word and a second least significant word;
computing, by said electronic circuit, an approximation of one minus a cosine of said fine angle and an approximation of a sine of said fine angle;
computing, by said electronic circuit, a first product by multiplying said first most significant word by said approximation of a sine of said fine angle, a second product by multiplying said first most significant word by said approximation of one minus a cosine of said fine angle, a third product by multiplying said second most significant word by said approximation of one minus a cosine of said fine angle, and a fourth product by multiplying said second most significant word by said approximation of a sine of said fine angle; and
generating, by said electronic circuit, approximations of a cosine of said input angle modulo π
/k and a sine of said input angle modulo π
/k using said cosine of said coarse angle, said sine of said coarse angle, and each of said products, wherein k is an integer selected in accordance with octant or quadrant symmetry.
1 Assignment
0 Petitions
Accused Products
Abstract
A method (300) for generating a sine and cosine of an input angle (Ø102). The method involves decomposing Ø102 to an octant or quadrant, a coarse angle (A), and a fine angle (B), determining cos(A), and determining sin(A). The method also involves decomposing cos(A) and sin(A) to a most significant word (MSW) and a least significant word (LSW). The method further involves computing an approximation of 1−cos(B), an approximation of sin(B), and a plurality of products (P1, . . . , P4) using the MSWs and approximations. The method involves computing approximations of cos(Ø′102) and sin(Ø′102) using the values for cos(A), sin(A), and P1, . . . , P4. The method involves scaling the approximations of cos(Ø′102) and sin(Ø′102) to a desired resolution.
56 Citations
25 Claims
-
1. A method for generating a sine and cosine of an input angle, comprising the steps of:
-
decomposing, by at least one electronic circuit, said input angle into an octant or quadrant, a coarse angle, and a fine angle; determining, by said electronic circuit, a cosine and a sine of said coarse angle; decomposing, by said electronic circuit, said cosine of said coarse angle to a first most significant word and a first least significant word and said sine of said coarse angle to a second most significant word and a second least significant word; computing, by said electronic circuit, an approximation of one minus a cosine of said fine angle and an approximation of a sine of said fine angle; computing, by said electronic circuit, a first product by multiplying said first most significant word by said approximation of a sine of said fine angle, a second product by multiplying said first most significant word by said approximation of one minus a cosine of said fine angle, a third product by multiplying said second most significant word by said approximation of one minus a cosine of said fine angle, and a fourth product by multiplying said second most significant word by said approximation of a sine of said fine angle; and generating, by said electronic circuit, approximations of a cosine of said input angle modulo π
/k and a sine of said input angle modulo π
/k using said cosine of said coarse angle, said sine of said coarse angle, and each of said products, wherein k is an integer selected in accordance with octant or quadrant symmetry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A sine/cosine generator, comprising:
-
a decomposition device configured for decomposing said input angle into an octant or quadrant, a coarse angle, and a fine angle; at least one coarse angle device configured for determining a cosine of said coarse angle, determining a sine of said coarse angle, decomposing said cosine of said coarse angle to a first most significant word and a first least significant word, and decomposing said sine of said coarse angle to a second most significant word and a second least significant word; at least one fine angle device configured for computing an approximation of one minus a cosine of said fine angle and an approximation of a sine of said fine angle; a product computation device configured for computing a first product by multiplying said first most significant word by said approximation of a sine of said fine angle, a second product by multiplying said first most significant word by said approximation of one minus a cosine of said fine angle, a third product by multiplying said second most significant word by said approximation of one minus a cosine of said fine angle, and a fourth product by multiplying said second most significant word by said approximation of a sine of said fine angle; and an output computation device coupled to said product computation device and said at least one coarse angle device, said output computation device configured for generating approximations of a cosine of said input angle modulo π
/k and a sine of said input angle modulo π
/k using said cosine of said coarse angle, said sine of said coarse angle, and each of said products, wherein k is an integer selected in accordance with octant or quadrant symmetry. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
Specification