the fast fourier transform
DESCRIPTION
Title. The Fast Fourier Transform. Introduction. What is the FFT? - A collection of “tricks” that exploit the symmetryof the DFT calculation to make its execution muchfaster . - Speedup increases with DFT size. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/1.jpg)
The Fast Fourier Transform
Title
![Page 2: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/2.jpg)
Introduction
What is the FFT?
- A collection of “tricks” that exploit the symmetryof the DFT calculation to make its execution muchfaster .
- Speedup increases with DFT size.
![Page 3: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/3.jpg)
Computational Cost of Discrete-Time Filtering
Convolution of an N-point input with an M-point unit sample response .
- Direct convolution:
Number of multiplies ≈ MN
- Using transforms directly:
Computation of N-point DFTs requires N^2 multiplies.
Each convolution requires three DFTs of length N+M-1 plus an additional N+M-1 complex multiplies or
For , for example, the computation is O(N^2)
y[n] x[k]h[n k]k
X[k] x[n]e j2kn / N
n0
N 1
3(N M 1)2 (N M 1)N M
![Page 4: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/4.jpg)
Computational Cost of Discrete-Time Filtering
Convolution of an N-point input with an M-point unit sample response .
- Using overlap-add with sections of length L:
N/L sections, 2 DFTs per section of size L+M-1, plus additional multiplies for the DFT coefficients, plus one more DFT for
- For very large N, still is proportional to
2N
L(L M 1)2
N
L
(L M 1) (L M 1)2
h[n]
2M
![Page 5: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/5.jpg)
The Cooley-Tukey decimation-in-time algorithm
Consider the DFT algorithm for an integer power of 2,
Create separate sums for even and odd values of n:
Letting for n even and for n odd, we obtain
N 2
X[k]n0
N 1 x[n]WN
nk n0
N 1 x[n]e j2nk /N ; WN e j2 /N
X[k] x[n]WNnk
n even x[n]WN
nk
n odd
X[k] x[2r]WN2rk
r0
N / 2 1
x[2r 1]WN2r1 k
r0
N /2 1
12 rnn 2r
![Page 6: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/6.jpg)
The Cooley-Tukey decimation-in-time algorithm
Splitting indices in time , we have obtained
But and
So
X[k] x[2r]WN2rk
r0
N / 2 1
x[2r 1]WN2r1 k
r0
N /2 1
WN2 e j22 / N e j2 /(N / 2) WN / 2
rkN
kN
kN
rkN WWWW 2/2
X[k] n0
(N/ 2) 1
x[2r]WN /2rk WN
k
n0
(N/ 2) 1
x[2r 1]WN / 2rk
N/2-point DFT of x[2r] N/2-point DFT of x[2r+1]
![Page 7: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/7.jpg)
Signal flowgraph representation of 8-point DFT
Recall that the DFT is now of the form
The DFT in (partial) flowgraph notation:
][][][ kHWkGkX kN
![Page 8: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/8.jpg)
Continuing with the decomposition …
So why not break up into additional DFTs? Let’s take the upper 4-point DFT and break it up into two 2-point DFTs:
![Page 9: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/9.jpg)
The complete decomposition into 2-point DFTs
![Page 10: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/10.jpg)
Closer look at the 2-point DFT
The expression for the 2-point DFT is:
Evaluating for we obtain
which in signal flow graph notation looks like …
This topology is referred as the BASIC BUTTERFLY
X[k] n0
1
x[n]W2nk
n0
1
x[n]e j2nk / 2
X[0] x[0] x[1]
X[1] x[0] e j21/ 2x[1] x[0] x[1]
k 0,1
![Page 11: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/11.jpg)
The complete 8-point decimation-in-time FFT
![Page 12: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/12.jpg)
Number of multiplys for N-point FFTs
• Let
(log2(N) columns)(N/2 butterflies/column)(2 mults/butterfly)
or multiplies
N 2 where log2 (N)
N log2(N)
![Page 13: The Fast Fourier Transform](https://reader033.vdocuments.us/reader033/viewer/2022050802/56814e4a550346895dbbce9c/html5/thumbnails/13.jpg)
CONCLUSION
Use of the FFT algorithm reduces the number of multiplys required to perform the DFT by a factor of more than 100 for 1024-point DFTs, with the advantage increasing with increasing DFT size.