Upload
vargil
View
186
Download
5
Embed Size (px)
Citation preview
Data flow diagram connectingthe inputs x (left) to the outputsy that depend on them (right)
for a "butterfly" step of aradix-2 Cooley–Tukey FFT.
This diagram resembles abutterfly (as in the Morpho
butterfly shown forcomparison), hence the name.
From Wikipedia, the free encyclopedia
This article is about butterfly diagrams in FFT algorithms; for the sunspot diagrams of the same name,see Solar cycle.
In the context of fast Fourier transform algorithms, a butterfly is a portionof the computation that combines the results of smaller discrete Fouriertransforms (DFTs) into a larger DFT, or vice versa (breaking a larger DFTup into subtransforms). The name "butterfly" comes from the shape of the
data-flow diagram in the radix-2 case, as described below.[1] The samestructure can also be found in the Viterbi algorithm, used for finding themost likely sequence of hidden states.
Most commonly, the term "butterfly" appears in the context of theCooley–Tukey FFT algorithm, which recursively breaks down a DFT ofcomposite size n = rm into r smaller transforms of size m where r is the"radix" of the transform. These smaller DFTs are then combined via size-rbutterflies, which themselves are DFTs of size r (performed m times oncorresponding outputs of the sub-transforms) pre-multiplied by roots ofunity (known as twiddle factors). (This is the "decimation in time" case; onecan also perform the steps in reverse, known as "decimation in frequency",where the butterflies come first and are post-multiplied by twiddle factors.See also the Cooley–Tukey FFT article.)
1 Radix-2 butterfly diagram2 See also3 References4 External links
In the case of the radix-2 Cooley–Tukey algorithm, the butterfly is simply a DFT of size-2 that takes two inputs(x0, x1) (corresponding outputs of the two sub-transforms) and gives two outputs (y0, y1) by the formula (notincluding twiddle factors):
If one draws the data-flow diagram for this pair of operations, the (x0, x1) to (y0, y1) lines cross and resemble thewings of a butterfly, hence the name (see also the illustration at right).
Butterfly diagram - Wikipedia, the free encyclopediaButterfly diagram - Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Butterfly_diagram
1 of 2 Butterfly diagram - Wikipedia, the free encyclopedia 1/25/2011 10:11 PM
A decimation-in-time radix-2 FFT breaks alength-N DFT into two length-N/2 DFTs
followed by a combining stage consisting ofmany butterfly operations.
More specifically, a decimation-in-time FFT algorithm on
n = 2 p inputs with respect to a primitive n-th root of unityω = exp(2πi / n) relies on O(n log n) butterflies of the form:
where k is an integer depending on the part of the transformbeing computed. Whereas the corresponding inversetransform can mathematically be performed by replacing ω
with ω−1 (and possibly multiplying by an overall scalefactor, depending on the normalization convention), onemay also directly invert the butterflies:
corresponding to a decimation-in-frequency FFT algorithm.
Mathematical diagramZassenhaus lemma
^ Alan V. Oppenheim, Ronald W. Schafer, and John R. Buck, Discrete-Time Signal Processing, 2nd edition (UpperSaddle River, NJ: Prentice Hall, 1989)
1.
explanation of the FFT and butterfly diagrams (http://www.relisoft.com/Science/Physics/fft.html) .butterfly diagrams of various FFT implementations (Radix-2, Radix-4, Split-Radix)(http://www.cmlab.csie.ntu.edu.tw/cml/dsp/training/coding/transform/fft.html) .
Retrieved from "http://en.wikipedia.org/wiki/Butterfly_diagram"Categories: FFT algorithms | Diagrams
This page was last modified on 4 January 2011 at 12:09.Text is available under the Creative Commons Attribution-ShareAlike License; additional terms mayapply. See Terms of Use for details.Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
Butterfly diagram - Wikipedia, the free encyclopediaButterfly diagram - Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Butterfly_diagram
2 of 2 Butterfly diagram - Wikipedia, the free encyclopedia 1/25/2011 10:11 PM