Claims
- 1. A digital sine/cosine generator comprising:
a coefficient generation module generating a series of values; a sine/cosine wave generation module receiving one of the values from the series of values and receiving an initial value indicative of a starting point of a periodic waveform, wherein the sine/cosine wave generation module employs the initial value and the value from the series of values to generate a sequence of values representative of a periodic waveform.
- 2. The digital sine/cosine generator of claim 1, wherein the series of values generated by the coefficient generation module is determined either by the equation A(N)=cos(2πNFT) or by the equation B(N)=sin(2πNFT).
- 3. The digital sine/cosine generator of claim 1, wherein the series of values generated by the coefficient generation module is representative of a sine wave, wherein the initial value is zero, and wherein the sequence of values generated by the sine/cosine wave generation module is representative of another sine wave.
- 4. The digital sine/cosine generator of claim 1, wherein the sine/cosine wave generation module, using a discrete difference equation to generate the sequence of values representative of a periodic waveform.
- 5. The digital sine/cosine generator of claim 4, wherein the difference equation is y(n)=b*y(n−1)−y(n−2), where y(n) represents the output signals of the sine/cosine generator at discrete time n, and b represents a predetermined constant.
- 6. The digital sine/cosine generator of claim 1, wherein the coefficient generation module has a digital sine/cosine wave oscillator for generating N consecutive values of a sine wave of frequency F, the period between consecutive sample values being T seconds, the coefficient generation module comprising:
a first initializer setting a variable A equal to cos(2πFT), setting a variable B equal to sin(2πFT), setting a variable C equal to sin(2πFT), and setting a variable D equal to cos(2πFT); a calculator operatively connected to the initializer, the calculator accessing variables A, B, C, and D and calculating every T seconds a value A(N)=AD+BC, and a value B(N) AC−BD; an output outputting the values A(N) and B(N); and a second initializer setting the variable A equal to the value A(N) and setting the variable B equal to the value B(N) prior to the beginning of the next calculation by the calculator.
- 7. The digital sine/cosine generator of claim 1, wherein the coefficient generation module simultaneously generates a first series of values representative of a sine wave and a second series of values representative of a cosine wave.
- 8. The digital sine/cosine generator of claim 1, wherein the digital sine/cosine generator further comprising a selector module selecting for receipt by the sine/cosine wave generation module a value from either the first series of values representative of a sine wave or the second series of values representative of a cosine wave.
- 9. A computer-readable media having computer executable modules comprising:
a coefficient generation module generating a first series of N consecutive values characterized by the equation B(N)=sin(2πNFT), wherein F is the base frequency of the function and T is the period between consecutive values; a discrete periodic waveform generation module utilizing a difference equation to generate a sequence of consecutive values representative of discrete periodic waveform, wherein the discrete periodic waveform generation module utilizes a predetermined value as a first initial condition for the difference equation and one of the values of the first series of N consecutive values as a second initial condition for the difference equation, such that frequency of the waveform generated by the discrete periodic waveform generation module has a frequency of N*F.
- 10. The computer-readable media of claim 9, wherein the difference equation is characterized by y(n)=b*y(n−1)−y(n−2), where y(n) represents the output signals of the periodic waveform generation module at discrete time n, and b=2cos(2πFT).
- 11. The computer-readable media of claim 10, wherein the coefficient generation module generates a second series of N consecutive values characterized by A(N)=cos(2πNFT).
- 12. The computer-readable media of claim 11, further comprising a computer executable selector module selecting one of the values from either the first series of M consecutive values or the second series of N consecutive values as the second initial condition for the difference equation.
- 13. The computer-readable media of claim 9, wherein zero is the predetermined value of the first initial condition, and wherein the periodic waveform generator generates a sine wave.
- 14. A method of generating, using a discrete difference equation, a sequence of values representative of a periodic waveform comprising steps of:
(a) selecting a first value representative of a first initial condition of the difference equation; (b) generating a second value representative of a second initial condition of the difference equation; (c) calculating the sequence of values of the periodic waveform with the discrete difference equation using the first and the second values as initial conditions in the difference equation.
- 15. The method of claim 14, wherein the difference equation is characterized by y(n)=b*y(n−1)−y(n−2), where y(n) represents the output signal of the sine/cosine generator at discrete time n, and b represents a constant.
- 16. The method of claim 15, wherein the generating step (b) comprises selecting one value from a series of values characterized by the equation B(N)=sin(2πNFT), wherein F is the base frequency of the function and T is the period between consecutive values.
- 17. The method of claim 15, wherein the generating step (b) comprises steps of:
(b)(1) generating a first series of consecutive values, the first series of values being characterized by the function B(N)=sin(2πNFT), wherein F is the base frequency of the function and T is the period between consecutive values; (b)(2) generating a second series of consecutive values, the second series of values being characterized by the function A(N)=cos(2πNFT), wherein F is the base frequency of the function and T is the period between consecutive values; (b)(3) selecting as the second initial condition for the difference equation one of the values from the first series of consecutive values or one of the values from the second series of consecutive values.
- 18. The method of claim 15 wherein the generating step (b) comprises steps:
(b)(1) setting a variable A equal to cos(2πFT), setting a variable B equal to sin(2πFT), setting a variable C equal to sin(2πFT), and setting a variable D equal to cos(2πFT); (b)(2) calculating a value A(N)=AD+BC and a value B(N)=AC−BD; (b)(3) outputting the values A(N) and B(N); (b)(4) setting the variable A equal to A(N) and the variable B equal to B(N); (b)(5) repeating steps (b)(2), (b)(3), and b(4) a predetermined number of times; and (b)(6) selecting one of the outputted values as the generated second value representative of the second initial condition of the difference equation.
- 19. A digital sine/cosine wave generator comprising:
a coefficient generator generating a series of values; and a sine/cosine generation means for receiving one of the series of values and for generating a sequence of values representative of either a sine wave or a cosine wave using the one of the series of values as an initial condition of a difference equation.
RELATED APPLICATIONS
[0001] This application claims priority of U.S. provisional application Serial No. 60/236,315 filed Sep. 28, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60236315 |
Sep 2000 |
US |