AU2011202001B2 - Method and system for bit stacked fast fourier transform - Google Patents
Method and system for bit stacked fast fourier transform Download PDFInfo
- Publication number
- AU2011202001B2 AU2011202001B2 AU2011202001A AU2011202001A AU2011202001B2 AU 2011202001 B2 AU2011202001 B2 AU 2011202001B2 AU 2011202001 A AU2011202001 A AU 2011202001A AU 2011202001 A AU2011202001 A AU 2011202001A AU 2011202001 B2 AU2011202001 B2 AU 2011202001B2
- Authority
- AU
- Australia
- Prior art keywords
- signal data
- output
- fft
- msb
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Landscapes
- Complex Calculations (AREA)
Abstract
METHOD AND SYSTEM FOR BIT STACKED FAST FOURIER An FFT algorithm that splits a large bit width waveform into two parts, making it possible to conduct the FFT with much lower logic resource consumption is disclosed. The waveform is split into its most significant bits and its least significant bits through division in the form of a bit shift. Each partial signal is then put through an FFT algorithm. The MSB FFT output is then right bit shifted. The two partial FFT's are summed to create a single output that is largely equivalent to an FFT of the original waveform. Rounding distortion is reduced by overlapping the MSB and LSB partial signals. 11 1640459.6 4/30/2010
Description
S&F Ref: 996920 AUSTRALIA PATENTS ACT 1990 COMPLETE SPECIFICATION FOR A STANDARD PATENT Name and Address SRC, Inc., of 7502 Round Pond Road, North Syracuse, of Applicant: New York, 13212-2558, United States of America Actual Inventor(s): Kristen L. Dobart Michael T. Addario Address for Service: Spruson & Ferguson St Martins Tower Level 35 31 Market Street Sydney NSW 2000 (CCN 3710000177) Invention Title: Method and system for bit stacked fast fourier transform The following statement is a full description of this invention, including the best method of performing it known to me/us: 5845c(4030540_1) TITLE METHOD AND SYSTEM FOR BIT STACKED FAST FOURIER TRANSFORM BACKGROUND OF THE INVENTION 1. FIELD OF THE INVENTION [00011 The present invention relates to fast Fourier transform, and, more particularly, to a method and system for fast Fourier transform that reduces the required amount of logic resources. 2. DESCRIPTION OF THE RELATED ART [0002] Historically, fast Fourier transform ("FFT") has been used to transform time domain data into frequency domain data and vice versa. FFT algorithms have a host of useful applications. For example, FFT can be used to convert sonar data detected in real-time into the frequency domain, where any dominant frequencies radiated by a sonar contact can be readily observed; this would be impossible looking at the time domain data alone. Frequency domain data is also useful for other sensor signal processing such as radar, as well as in the fields of communications, image processing, voice recognition, among many others. [0003] The drawback to the use of FFT processing is that it can be very computationally expensive. Even though current FFT represents approximately a 100-to-1 reduction in required computation power compared to older discrete Fourier transform ("DFT") algorithms, typical signal processing FFT applications typically require tens of millions of computations per second, thereby requiring a significant computational load. This computational load increases dramatically with large bit depth data streams, and in some cases can outstrip available logic resources. 1 1640459.6 4/30/2010 2 [0004] As a result of the heavy drain on computation resources produced by the use of FFT, there have been many attempts to reduce the amount of required processor resources. Some of these efforts have been directed towards reducing the number of computations required in the underlying mathematical operations themselves. Other efforts have involved various ways of rearranging the computation resources so as to split the data and "cascade" the required computations, or other techniques. None of these prior art techniques, however, have solved the problem of effectively computing FFT for very large bit depth data. SUMMARY [0004A]Aspects of the present disclosure provide a computer-implemented method for transforming an input waveform in the form of a signal data, the method comprising the steps of: (a). receiving a signal data; (b). storing the received signal data in a first memory storage device; (c). separating the stored signal data into a first partial signal comprising the least significant bits (LSB) of the stored signal data and a second partial signal comprising the most significant bits (MSB) of the stored signal data; (d). performing FFT on said first and second partial signals to produce a first and second output; (e). right bit shifting said second output; and (f). summing the right bit shifted second output and said first output into a single bit stacked output, wherein the single bit stacked output is the transformed input waveform. 10004B] Aspects of the present disclosure provide a system for transforming an input waveform in the form of a signal data, said system comprising: means for receiving a signal data; means for storing the received signal data in a first memory storage device; means for separating the stored signal data into a first partial signal comprising the least significant bits ("LSB") of the stored signal data and a second partial signal comprising the most significant bits ("MSB") of the stored signal data; means for performing FFT on said first and second partial signals to produce a first and second output; means for right bit shifting said second output; and means for summing the right bit shifted second output and said first output into a single bit stacked output, wherein the single bit stacked output is the transformed input waveform. [0005] Aspects of the present disclosure provide a method and system of fast Fourier transform that significantly reduces the computational load required for processing large bit depth signals.
2a [0006] Aspects of the present disclosure also provide a method and system for computing FFT by splitting the waveform into its most significant bits ("MSB") and its least significant bits ("LSB") in the form of a bit shift. [00071 Other aspects of the present disclosure provide a method and system for computing FFT that reduces the distortion normally associated with divisional FFT by overlapping the MSB and LSB segments. 100081 Other aspects of the present disclosure will in part be obvious, and in part appear hereinafter. [00091 In accordance with the foregoing aspects, the present disclosure provides a method for computing FFT by splitting the waveform into its MSB and its LSB through division, in the form of a bit shift. Then, each of these parts are put through the FFT algorithm as if it were the waveform itself. The MSB output is then right bit-shifted since it was left bit-shifted originally to cause the division. The two partial FFT's are then summed, which is equal to the FFT of the original waveform. BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S) [00101 The present invention will be more fully understood and appreciated by reading the following Detailed Description in conjunction with the accompanying drawings, in which: [0011] Figure 1 is a schematic representation of an embodiment of the fast Fourier transform method according to the present invention; [0012] Figure 2 is a schematic representation of the fast Fourier transform method according to one embodiment of the present invention; and [0013] Figure 3 is a schematic of the circuitry for bit stacked FF1 method according to one embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION [0014] An FFT is essentially an algorithm for computing the discrete Fourier transform ("DFT") - and its inverse - of data samples. The DFT of a sequence x(n), n = 0, ... , N - 1 is defined as: N-1 Xk = E.C-i27<kAN k = 0, ... ,I N - 1 n=O where k is an integer ranging from 0 to N - 1 and N is the transform size. [0015] Many different FFT algorithms have been developed. The Cooley-Tukey FFT algorithm, for example, is named after J.W. Cooley and John Tukey and is one example of a computationally efficient method for calculating the DFT. Under the Cooley-Tukey FFT algorithm, a DFT is expressed in terms of smaller DFTs, thereby reducing both the computation time and computation requirement. 3 1640459.6 4/30/2010 [0016] Referring now to the drawings, wherein like reference numerals refer to like parts throughout, there is shown in Figure 1 a schematic representation of the fast Fourier transform method according to one embodiment of the present invention. As an initial step 10, a waveform is captured for signal processing. The waveform can be any man-made, artificial, or natural electromagnetic signal capable of being detected. In a preferred embodiment, a system such as radar or sonar samples discrete data points of the waveform to translate it into the frequency domain using DFT. An analog-to-digital ("AD") converter, for example, can capture these data points at some pre-programmed or user-defined rate for downstream processing. [0017] In step 12, the system determines the magnitude of the input signal in order to prevent distortion. If the input signal only toggles a couple of bits in the MSB FFT, there can be a large distortion in the output caused by rounding errors The larger in amplitude the input into a single FFT is, the smaller the distortion due to rounding. In a preferred embodiment, the method performs two different sized FFTs for the MSBs and the LSBs. The goal of step 12 is to determine the input strength and to split the input into LSBs and MSBs such that the MSB is not a small number. To accomplish this, the strength of the input signal is detected and if it is determined to be in the edge case such that the MSB would be a small number, the number of bits used in the LSB and the MSB is changed such that it is no longer in the edge case. This will prevent large rounding errors in the MSB FFT, which would result in large rounding errors in the output. In a preferred embodiment, the data entering the system is block float complex data, which has an I data, Q data and an exponent. The first thing that is examined to determine the magnitude of the input signal is the exponent. The system then examines the magnitude of the I/Q data. For positive numbers this is accomplished by looking for the first non zero bit. For 4 1640459.6 4/30/2010 negative numbers, this is accomplished by looking for the first zero. When the system knows the exponent and the magnitude of the I/Q data, the magnitude of the input signal can be determined. [0018] A small number for the MSB is any number where the effects of rounding at each butterfly will significantly distort the output. The larger the input into the MSB FFT, the smaller the distortion of the output. The amount of rounding at each butterfly stage will also affect what would be considered a small number for the MSB. The more rounding in the FFT, the larger the input into the MSB FF1' should be. For example, if the data input was split such that the MSB ranged from -4 to 3 while the LSB ranged from -534,288 to 524,287, the rounding errors from the MSB FFT would be a significant segment of the MSB FFT output and would thereby cause large spurs or distortions in the output. However, if the split between the MSB and LSB were changes such that the MSB ranged from -2048 to 2047 and the LSB ranged from -1024 to 1023, the rounding errors would be significantly reduced. [0019] Since FFT is a linear operation, different sections of any waveform can be FFTed separately and then combined to produce the same output as if the wave was FFTed as a whole. In step 14, the waveform's least significant bits ("LSB") and most significant bits ("MSB") are separated through division in the form of a bit shift. In this arithmetic shift, all of the bits of the operand are shifted a given number of positions and the empty positions are filled in. In a preferred embodiment, the output of each butterfly during FFT is rounded. A butterfly is a portion of a DFT that breaks a single DFT into smaller DFTs or combines the results of smaller DFTs into a larger DFT. In a preferred embodiment, the butterfly consists of a multiply and addition. The output of each butterfly is rounded to limit the number of output bits to a reasonable amount. 5 1640459.6 4/30/2010 [00201 In step 16 of Figure 1, the LSB and the MSB are overlapped. Since the bits that are rounded off from the MSB FFT can have a large effect on the output, the MSB and the LSB are overlapped to reduce the distortion from rounding. That is, the MSBs and the LSBs are overlapped into the MSB FFT. Since the rounding errors will occur most significantly in the overlapped bits, these bits can be truncated off after the MSB FFT. As a result, the bits with the largest rounding error will be truncated off. The FFT is performed using the overlapping MSB and LSB inputs, as shown in steps 18 and 20. Any FFT algorithm known to those skilled in the art can be used to perform the FFT in steps 18 and 20. [0021] In step 22, the output of the MSB FFT is right-shifted. This is necessary because the MSB input into the FFT was effectively left bit shifted in step 14. The method then sums the MSB and LSB FFTs in step 24 into a single stacked FFT result which is equal to the FFT of the initial waveform. [0022] Figure 2 shows a schematic representation of a fast Fourier transform system 28 according to one embodiment. An initial waveform 30 is captured and optionally pre-processed by the system. Waveform 30 is comprised of MSBs and LSBs, which, through a left bit shift, are separated into an MSB waveform 32 and a LSB waveform 34. MSB waveform 32 and LSB waveform 34 are then separately FFTed by system 28 to produce MSB FFT output 36 and LSB FFT output 38. MSB FFT output 36 is then bit shifted to the right. Bit shifted MSB FFT outpute 36 and LSB FF1' output 38 are then summed to produce the bit stacked FFT output 40. Bit stacked FFT output 40 is comparable to hypothetical output 42 in which the original waveform 30 was FFTed as a complete waveform. However, the production of output 40 has far fewer processing requirements compared to the production of hypothetical output 42. 6 1640459.6 4/30/2010 [0023] Figure 3 shows a schematic of the circuitry 50 for the bit stacked FFT method according to one embodiment of the present invention. The block float input data 52, consisting of I data, Q data and an exponent, enters the system. The data enters a First In, First Out ("FIFO") component 54 to buffer and control the signal. The FIFO component can be any FIFO component known in the art, and will preferably contain storage and control logic components. The system determines the maximum exponent of the input signal at 56 and determines whether the input signal is in the edge case at 58. If so, the system changes the number of bits used in the LSB and MSB at 62 as described above. Then, at 60 the data is separated into the LSB and MSB via a bit shift and the LSB and MSB are overlapped. The FFT is performed at 64. The output of the MSB FFT is right-shifted and the MSB and LSB FFT outputs are summed into a single stacked FFT result at 66. The final output of the circuit can then be utilized in downstream applications. [00241 Although the present invention has been described in connection with a preferred embodiment, it should be understood that modifications, alterations, and additions can be made to the invention without departing from the scope of the invention as defined by the claims. 7 1640459.6 413012010
Claims (12)
1. A computer-implemented method for transforming an input waveform in the form of a signal data, the method comprising the steps of: a. receiving a signal data; b. storing the received signal data in a first memory storage device; c. separating the stored signal data into a first partial signal comprising the least significant bits (LSB) of the stored signal data and a second partial signal comprising the most significant bits (MSB) of the stored signal data; d. performing FFT on said first and second partial signals to produce a first and second output; e. right bit shifting said second output; and f. summing the right bit shifted second output and said first output into a single bit stacked output, wherein the single bit stacked output is the transformed input waveform.
2. The method of claim 1, wherein the step of separating the stored signal data comprises the substep of determining the magnitude of the received signal data.
3. The method of claim 2, wherein the step of separating the stored signal data further comprises the substep of adjusting the number of bits used in the LSB and the MSB if the magnitude of the received signal data is within a specified range.
4. The method of claim 1, wherein the stored signal data is separated into said first and second partial signals through division in the form of a bit shift.
5. The method of claim 1, wherein the output of each butterfly during FFT is rounded.
6. The method of claim 1, wherein said first and second partial signals are overlapped during the step of separating.
7. A system for transforming ar. nput waveform in the form of a signal data, said system comprising: means for receiving a signal data; means for storing the received signal data in a first memory storage device; 9 means for separating the stored signal data into a first partial signal comprising the least significant bits ("LSB") of the stored signal data and a second partial signal comprising the most significant bits ("MSB") of the stored signal data; means for performing FFT on said first and second partial signals to produce a first and second output; means for right bit shifting said second output; and means for summing the right bit shifted second output and said first output into a single bit stacked output, wherein the single bit stacked output is the transformed input waveform.
8. The system of claim 7, wherein the system further comprises means for determining the magnitude of the received signal data.
9. The system of claim 8, wherein the system further comprises means for adjusting the number of bits used in the LSB and the MSB if the magnitude of the received signal data is within a specified range.
10. The system of claim 7, wherein the stored signal data is separated into said first and second partial signals through division in the form of a bit shift.
11. The system of claim 7, wherein the output of each butterfly during FFT is rounded.
12. The system of claim 7, further comprising means to overlap said first and second partial signals. SRC, Inc. Patent Attorneys for the Applicant/Nominated Person SPRUSON & FERGUSON
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2011202001A AU2011202001B2 (en) | 2011-05-02 | 2011-05-02 | Method and system for bit stacked fast fourier transform |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2011202001A AU2011202001B2 (en) | 2011-05-02 | 2011-05-02 | Method and system for bit stacked fast fourier transform |
Publications (2)
Publication Number | Publication Date |
---|---|
AU2011202001A1 AU2011202001A1 (en) | 2012-11-22 |
AU2011202001B2 true AU2011202001B2 (en) | 2013-07-18 |
Family
ID=48782725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2011202001A Ceased AU2011202001B2 (en) | 2011-05-02 | 2011-05-02 | Method and system for bit stacked fast fourier transform |
Country Status (1)
Country | Link |
---|---|
AU (1) | AU2011202001B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0478128A2 (en) * | 1990-08-10 | 1992-04-01 | General Electric Company | Pipelined fast fourier transform processor |
US20030236806A1 (en) * | 2002-06-19 | 2003-12-25 | Hou Hsieh S. | Merge and split generalized block transform method |
US20090049112A1 (en) * | 2006-02-22 | 2009-02-19 | The University Of Akron | Interleaved method for parallel implementation of the fast fourier transform |
-
2011
- 2011-05-02 AU AU2011202001A patent/AU2011202001B2/en not_active Ceased
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0478128A2 (en) * | 1990-08-10 | 1992-04-01 | General Electric Company | Pipelined fast fourier transform processor |
US20030236806A1 (en) * | 2002-06-19 | 2003-12-25 | Hou Hsieh S. | Merge and split generalized block transform method |
US20090049112A1 (en) * | 2006-02-22 | 2009-02-19 | The University Of Akron | Interleaved method for parallel implementation of the fast fourier transform |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cantin et al. | A comparison of automatic word length optimization procedures | |
Park et al. | Fixed-point analysis and parameter selections of MSR-CORDIC with applications to FFT designs | |
CN111950715A (en) | 8-bit integer full-quantization inference method and device based on self-adaptive dynamic shift | |
Sarbishei et al. | Analysis of Mean-Square-Error (MSE) for fixed-point FFT units | |
Venkateswarlu et al. | Implementation of area optimized low power multiplication and accumulation | |
CA2738544C (en) | Method and system for bit stacked fast fourier transform | |
Justo et al. | Generalized adaptive polynomial window function | |
AU2011202001B2 (en) | Method and system for bit stacked fast fourier transform | |
CN114842867A (en) | A method and system for frequency estimation of audio sinusoidal signal based on DFT | |
JP2008096337A (en) | Interference signal elimination method | |
Thomas et al. | Fixed-point implementation of discrete Hirschman transform | |
US11301542B2 (en) | Methods and apparatuses involving fast fourier transforms processing of data in a signed magnitude form | |
Wang et al. | Design of pipelined FFT processor based on FPGA | |
US20230418897A1 (en) | Signal processing system for performing a fast fourier transform with adaptive bit shifting, and methods for adaptive bit shifting | |
Zimmerman et al. | A 640-MHz 32-megachannel real-time polyphase-FFT spectrum analyzer | |
CN109921800B (en) | Frequency domain pulse compression method based on self-customized floating point format | |
Yuan et al. | Pruning split-radix FFT with time shift | |
US8706794B1 (en) | No-multiply digital signal processing method | |
Hassan et al. | Signal-to-noise ratio study on pipelined fast fourier transform processor | |
Low et al. | A new RNS scaler for {2 n− 1, 2 n, 2 n+ 1} | |
Lenart et al. | A pipelined FFT processor using data scaling with reduced memory requirements | |
US20230179315A1 (en) | Method for Disseminating Scaling Information and Application Thereof in VLSI Implementation of Fixed-Point FFT | |
Pyrgas et al. | An FPGA design for the two-band fast discrete Hartley transform | |
US12045582B2 (en) | Multi-dimensional FFT computation pipelined hardware architecture using Radix-3 and Radix-22 butterflies | |
Van Der Byl et al. | Recursive fourier transform hardware |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FGA | Letters patent sealed or granted (standard patent) | ||
MK14 | Patent ceased section 143(a) (annual fees not paid) or expired |