Claims Analysis
Total Claims: 18
Claim 1
Independent Claim
149 words
A circuit for generating succesive points on a sine wave comprising: an angle memory for storing a plurality of angle values at addresses therein; CORDIC logic means, connected to the angle memory, for calculating a sine value from a selected angle value from the angle memory; an increment angle memory for storing a plurality of increment angle values for the selected angle value at addresses therein; incrementing means, connected to the angle memory and to the increment angle memory, for successively adding a selected increment angle value from the increment angle memory to the selected angle value and for providing each incremented angle value to the CORDIC logic means for calculating successive points on a sive wave therefrom; and addressing means, connected to the increment angle memory to the angle memory, for selecting an increment angle value and an angle value to be used for each sine value calculation.
Claim 2
Dependent Claim
149 words
A circuit for generating succesive points on a sine wave comprising: an angle memory for storing a plurality of angle values at addresses therein; CORDIC logic means, connected to the angle memory, for calculating a sine value from a selected angle value from the angle memory; an increment angle memory for storing a plurality of increment angle values for the selected angle value at addresses therein; incrementing means, connected to the angle memory and to the increment angle memory, for successively adding a selected increment angle value from the increment angle memory to the selected angle value and for providing each incremented angle value to the CORDIC logic means for calculating successive points on a sive wave therefrom; and addressing means, connected to the increment angle memory to the angle memory, for selecting an increment angle value and an angle value to be used for each sine value calculation.
Claim 3
Dependent Claim
85 words
The circuit according to claim 1 wherein the addressing means comprises: an address memory, connected to the increment angle memory and to the angle memory, for selecting an increment angle value and an angle value to be used for each sine value calculation; and a periodic counter, connected to the address memory and to the source of clock pulses, for counting the pulses and for cyclically selecting addresses in the address memory to be communicated to the increment angle memory and to the angle memory.
Claim 4
Dependent Claim
311 words
A circuit for generating successive points on a sine wave comprising: angle storing means for storing an angle value; CORDIC logic means, connected to the angle storing means, for calculating a sine value from the angle value, the CORDIC logic means comprising: sign determining means, connected to the angle storing means, for determining the algebraic sign of the angle value; angle constant storing means for storing a plurality of angle constant values; angle arithmetic means, connected to the angle constant means, to the angle storing means, and to the sign determining means, for performing N arithmetic operations on the angle value, for any integer N greater than zero, each operation comprising: (i) adding an angle constant value to the angle value if the angle value is negative; or (ii) subtracting the angle constant value from the angle value if the angle value is positive; wherein the result of each arithmetic operation is the angle value for the next arithmetic operation, and the angle constant values are chosen so that the angle value after the N arithmetic operations is substantially equal to zero; X-storing means for storing a value of an X-coordinate (X); Y-storing means for storing a value of a Y-coordinate (Y); and X/Y-arithmetic means, connected to the X storing means, to the Y storing means and to the sign determining means, for performing, for each arithmetic operation on the angle value, a cross-arithmetic operation with an X-coordinate (X) value and a Y-coordinate (Y) value; increment angle storing means for storing an increment value for the angle value; and incrementing means, connected to the angle storing means and to the increment angle storing means, for successively adding the increment value to the angle value after each sine value is calculated and for providing each incremented angle value to the CORDIC logic means for calculating successive points on a sine wave therefrom.
Claim 5
Dependent Claim
311 words
A circuit for generating successive points on a sine wave comprising: angle storing means for storing an angle value; CORDIC logic means, connected to the angle storing means, for calculating a sine value from the angle value, the CORDIC logic means comprising: sign determining means, connected to the angle storing means, for determining the algebraic sign of the angle value; angle constant storing means for storing a plurality of angle constant values; angle arithmetic means, connected to the angle constant means, to the angle storing means, and to the sign determining means, for performing N arithmetic operations on the angle value, for any integer N greater than zero, each operation comprising: (i) adding an angle constant value to the angle value if the angle value is negative; or (ii) subtracting the angle constant value from the angle value if the angle value is positive; wherein the result of each arithmetic operation is the angle value for the next arithmetic operation, and the angle constant values are chosen so that the angle value after the N arithmetic operations is substantially equal to zero; X-storing means for storing a value of an X-coordinate (X); Y-storing means for storing a value of a Y-coordinate (Y); and X/Y-arithmetic means, connected to the X storing means, to the Y storing means and to the sign determining means, for performing, for each arithmetic operation on the angle value, a cross-arithmetic operation with an X-coordinate (X) value and a Y-coordinate (Y) value; increment angle storing means for storing an increment value for the angle value; and incrementing means, connected to the angle storing means and to the increment angle storing means, for successively adding the increment value to the angle value after each sine value is calculated and for providing each incremented angle value to the CORDIC logic means for calculating successive points on a sine wave therefrom.
Claim 6
Dependent Claim
46 words
The circuit according to claim 3 wherein the angle storing means comprises a register for storing a binary representation of the angle value, and wherein the sign determining means comprises a flip-flop coupled to the register for receiving the most significant bit of the angle value.
Claim 7
Dependent Claim
54 words
The circuit according to claim 3 wherein the cross-arithmetic operation comprises: A. when the angle value is negative: (i) X(n+1)=X(n)+[Y(n)×2 - (n-2) ] and (ii) Y(n+1)=Y(n)-[X(n)×2 - (n-2) ] or B. when the angle value is positive: (iii) X(n+1)=X(n)-[Y(n)×2 - (n-2) ] and (iv) Y(n+1)=Y(n)+[X(n)×2 - (n-2) ] wherein n is an integer, 0<n≦N.
Claim 8
Dependent Claim
19 words
The circuit according to claim 5 wherein X(1) equals a real number greater than zero and Y(1) equals zero.
Claim 9
Dependent Claim
30 words
The circuit according to claim 6 further comprising: amplitude storing means, connected to the cross-arithmetic means, for storing an amplitude value used for calculating an amplitude of the sine wave.
Claim 10
Dependent Claim
29 words
The circuit according to claim 7 wherein the amplitude storing means is connected to the X-storing means and the real number is a value from the amplitude storing means.
Claim 11
Dependent Claim
62 words
The circuit according to claim 8 wherein the cross-arithmetic means includes: an X-shift means, connected to the X-storing means, for implementing the equation X(n)×2 - (n-2) by shifting respective bits of a binary representation of X(n); and a Y-shift means connected to the Y-storing means, for implementing the equation Y(n)×2 - (n-2) by shifting respective bits of a binary representation of Y(n).
Claim 12
Dependent Claim
91 words
The circuit according to claim 9 wherein the cross-arithmetic means further comprises: an X-arithmetic means, connected to the Y-shift means and to the X-storing means for implementing the equation X(n)±Y(n)×2 - (n-2) by adding or subtracting a value in the Y-shift means to or from a value in the X-storing means; and a Y-arithmetic means, connected to the X-shift means and to the Y-storing means, for implementing the equation Y(n)±X(n)×2 - (n-2) by adding or subtracting a value in the X-shift means to or from a value in the Y-storing means.
Claim 13
Dependent Claim
37 words
The circuit according to claim 10 wherein the cross-arithmetic means further comprises: shift inhibit means, connected to the X-shift means and to the Y-shift means, for inhibiting the shifting of the respective binary values therein for n=1.
Claim 14
Dependent Claim
25 words
The circuit according to claim 8 wherein the amplitude storing means comprises an amplitude memory for storing a plurality of amplitude values at addresses therein.
Claim 15
Dependent Claim
28 words
The circuit according to claim 12 wherein the increment angle storing means comprises an increment angle memory for storing a plurality of increment angle values at addresses therein.
Claim 16
Dependent Claim
25 words
The circuit according to claim 13 wherein the angle storing means comprises an angle memory for storing a plurality of angle values at addresses therein.
Claim 17
Dependent Claim
50 words
The circuit according to claim 14 further comprising: addressing means, connected to the amplitude memory, to the increment angle memory, and to the angle memory, for selecting an amplitude value, an increment angle value and an angle value to be used for each set of N arithmetic and cross-arithmetic operations.
Claim 18
Dependent Claim
100 words
The circuit according to claim 15 wherein the addressing means comprises: an address memory, connected to the amplitude memory, to the increment angle memory and to the angle memory, for selecting an amplitude value, an increment angle value and an angle value to be used for each set of N arithmetic and cross-arithmetic operations; and a periodic counter, connected to the address memory and to a source of clock pulses, for counting the pulses and for cyclically selecting addresses in the address memory to be communicated to the amplitude memory, to the increment angle memory, and to the angle memory.