Method and system for generating a trigonometric function

Electrical computers: arithmetic processing and calculating – Electrical digital calculating computer – Particular function performed

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C708S440000

Reexamination Certificate

active

06640237

ABSTRACT:

TECHNICAL FIELD OF THE INVENTION
This invention relates generally to digital signal processing and more particularly to a method and system for generating a trigonometric function.
BACKGROUND OF THE INVENTION
Determination of the value of sine and cosine of an arbitrary angle is required in a number of Digital Signal Processing (DSP) applications. A frequently occurring application is the Direct Digital Synthesizer (DDS), which generates an output frequency that is proportional to an input frequency control value. The output signal is a multi-bit word that updates at the sample rate to represent a sine-wave at the programmed frequency. Many DDS implementations simultaneously output quadrature (sine and cosine) signals for use in complex tuning applications. A number of implementations also require high resolution phase input and sine/cosine output signal representations to allow processing of signals with a wide dynamic range.
The standard method of determining sine and cosine functions at a high sample rate uses a look-up table (LUT). If the input is a certain number of bits, P, in length, then there are 2
P
different inputs possible. So an LUT for a P-bit input would require 2
P
rows, one row for each possible input. If the output is a certain number of bits, S, in length, then the LUT would require a column S bits wide. Therefore, an LUT for a P-bit input and an S-bit output requires 2
P
×S bits of memory.
For example, a typical LUT provides P=8 bits of phase input resolution and S=8 bits of sine/cosine output resolution. This LUT would contain 2
8
=256 locations of eight bits each for a total of 2,048 memory bits. However, some applications need a higher resolution LUT, which requires an exponentially higher number of memory bits. For example, doubling the number of the input bits and output bits from 8 to 16 increases the memory requirements from 2,048 bits to 1,048,576 bits. Simultaneous generation of 16-bit sine and cosine output values for a single 16-bit phase input value would require 2,097,152 bits of memory. Thus, small-memory devices, such as field-programmable gate arrays, application-specific integrated circuits, and others, are unable to provide this resolution with look-up tables that require more memory than is available.
SUMMARY OF THE INVENTION
In accordance with the present invention, a method and system for generating a trigonometric function are provided that substantially eliminate or reduce disadvantages and problems associated with previously developed systems and methods. In particular, the present invention, with relatively small memory requirements, generates a high-resolution trigonometric function.
In one embodiment of the present invention, an input angle is received and is automatically separated into a first component angle and a second component angle. A sine value for the input angle is automatically determined based upon the first and second component angles. A cosine value for the input angle is automatically determined based upon the first and second component angles. The trigonometric function is automatically generated based upon the sine and cosine values for the input angle.
More specifically, in accordance with a particular embodiment of the present invention, a sine value for the first component angle is determined by retrieving from a first look-up table of value corresponding to the first component angle. A cosine value for the first component angle is determined by retrieving from a second look-up table a value corresponding to the first component angle. A sine value for the second component angle is calculated based upon a linear approximation. A first intermediate value is generated based upon the sine value for the first component angle and the sine value for the second component angle. A second intermediate value is generated based upon the cosine value for the first component angle and the sine value for the second component angle. The cosine value for the input angle is determined based upon the first intermediate value and the cosine value for the first component angle. The sine value for the input angle is determined based upon the second intermediate value and the sine value for the first component angle.
Technical advantages of the present invention include providing an improved method and system for generating a trigonometric function. In particular, a high-resolution trigonometric function may be generated by separating an input angle into at least two component angles. For at least one of the component angles, a sine value is calculated and a cosine value is set at a constant. As a result, memory requirements are reduced. Accordingly, the improved method and system may be implemented in small memory devices, such as FPGAs, ASICs, and the like, and may also be implemented more efficiently in large memory devices. In addition, the reduced memory requirements provided by the present invention result in a corresponding reduction in the cost of producing a trigonometric function generator.


REFERENCES:
patent: 3969615 (1976-07-01), Bowers et al.
patent: 4077063 (1978-02-01), Lind
patent: 4486846 (1984-12-01), McCallister et al.
patent: 4787058 (1988-11-01), Schmars
patent: 4809205 (1989-02-01), Freeman
patent: 4926443 (1990-05-01), Reich
patent: 4975699 (1990-12-01), Frey
patent: 5027087 (1991-06-01), Rottinghaus
patent: 5111162 (1992-05-01), Hietala et al.
patent: 5146418 (1992-09-01), Lind
patent: 5204676 (1993-04-01), Herrmann
patent: 5249204 (1993-09-01), Funderburk et al.
patent: 5276633 (1994-01-01), Fox et al.
patent: 5315620 (1994-05-01), Halawani et al.
patent: 5483203 (1996-01-01), Rottinghaus
patent: 5504751 (1996-04-01), Ledzius et al.
patent: 5517529 (1996-05-01), Stehlik
patent: 5596609 (1997-01-01), Genrich et al.
patent: 5697068 (1997-12-01), Salvi et al.
patent: 5790601 (1998-08-01), Corrigan, III et al.
patent: 5812940 (1998-09-01), Lindell
patent: 5815117 (1998-09-01), Kolanek
patent: 5894592 (1999-04-01), Brueske et al.
patent: 5991605 (1999-11-01), Rapeli
patent: 6028493 (2000-02-01), Olgaard et al.
patent: 6055280 (2000-04-01), Genrich
patent: 6133804 (2000-10-01), Wagner et al.
patent: 6298093 (2001-10-01), Genrich
patent: 196 16 368 (1997-12-01), None
patent: 0 102 784 (1984-03-01), None
patent: 0 392 229 (1990-10-01), None
patent: 0 889 595 (1998-06-01), None
patent: 0 926 857 (1999-06-01), None
patent: 2 152715 (1985-08-01), None
patent: WO 86/06517 (1986-11-01), None
patent: WO 92/02872 (1992-02-01), None
patent: WO 99/23760 (1999-09-01), None
patent: WO 99/49582 (1999-09-01), None
Aschwanden, Felix, “Direct Conversion—How to make it Work in TV Tuners,” IEEE Transactions on Consumer Electronics, US, IEEE Inc. New York, vol. 42, No. 3, Aug. 1, 1996, pp. 729-738, XP000638561.
Hogenauer, Eugene B., Manuscript: “An Economical Class of Digital Filters for Decimation and Interpolation”, IEEE Transactions on Acoustics, Speech and Signal Processing, vol. ASSP-29, No. 2, Apr. 1981, 9 pages.
Gardner, F.M., “Interpolation in Digital Modems/Part I: Fundamentals”, IEEE Transactions on Communications, IEEE Inc., New York, vol. 41, No. 3, Mar. 1, 1993 (pp. 501-507), XP000372693.
“Digital Tuner with Optimized Clock Frequency and Integrated Parallel CIC Filter and Local Oscillator”, Specification, Claims and Abstract (22 pages), 3 pages of drawings, inventor Thad J. Genrich, filed Mar. 17, 2000, U.S. Appln. Ser. No. 09/527,798.
“Parellel Asynchrononous Sample Rate Reducer”, Specification, Claims and Abstract (24 pages), 6 pages of drawings, inventor Thad J. Genrich, filed Mar. 17, 2000, U.S. Appln. Ser. No. 09/527,411.
“Apparatus and Method for Quadrature Tuner Error Correction”, Specification, Claims and Abstract (32 pages), 3 pages of drawings, inventor Thad J. Genrich, filed Jul. 21, 1999, U.S. Appln. Ser. No. 09/358,354.
PCT International Search Report dated Sep. 28, 2000 for PCT/US00/18334 filed Jul. 3, 2000.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system for generating a trigonometric function does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system for generating a trigonometric function, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for generating a trigonometric function will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3146976

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.