This preview shows pages 1–9. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: MODULE 11 FAST FOURIER TRANSFORM ALGORITHMS • Complexity of DFT • DecimationinTime FFT • DecimationinFrequency FFT • Prime Factor FFT • Winograd Fast Convolution Algorithm Page 11.1 INDEX Complexity of DFT DecimationinTime FFT DecimationinFrequency FFT MixedRadix FFT Algorithms MixedRadix Complexity Prime Factor FFT DFT as Cyclic Convolution Inverse Primitive Root of Unity DFT for N Prime Permuted Indexing in the DFT Example of DFT as Cyclic Convolution Comments on DFT and Cyclic Convolution Winograd's Fast Convolution Algorithm On Modular Arithmetic Winograd's Theorem Minimum Complexity Algorithm Winograd Algorithm Steps Euclid's Algorithm Example  Winograd's Algorithm Comments on Winograd Algorithm MAIN INDEX Page 11.2 11. FAST FOURIER TRANSFORM ALGORITHMS index READ : Chapter 9 of Oppenheim & Schafer. Work as many related problems as possible. • Much of the power and popularity of digital signal processing arises from the feasibility of fast and accurate analysis of signal spectra by computer/digital processing. • The algorithms known collectively as Fast Fourier Transforms allow the fast computation of spectra. • They are also obviously useful for computing fast convolutions . Page 11.3 Complexity of DFT index • The DFT: X ( m ) = ∑ = 1 N n x ( n ) mn N W • Evaluation of these sums for m = 0 ,..., N1 requires: N 2 complex multiplies = 4 N 2 real multiplies N ( N1) complex additions = 2 N ( N1) real additions • Thus, the DFT has complexity O( N 2 ). • The basic FFT algorithms have complexity O( N log 2 N ). Page 11.4 DecimationinTime FFT index • A treestructured algorithm for efficiently computing the DFT X ( m ) = ∑ = 1 N n x ( n ) mn N W of a length N sequence { x ( n ) ; n = 0 ,..., N1}, where N = 2 M , M = an integer. • FFT algorithms that assume N = 2 M are called radix2 . They are the most common. • Now define the subsampled or " decimated " sequences u ( n ) = x (2 n ) for n = 0 ,..., N 2 1 v ( n ) = x (2 n +1) Page 11.5 • Then the DFT sum can be rewritten: index X ( m ) = ∑ = 1 ) 2 / ( N n [ x (2 n ) nm N W 2 + x (2 n +1) m n N W ) 1 2 ( + ] = ∑ = 1 ) 2 / ( N n u ( n ) nm N W 2 / + m N W · ∑ = 1 ) 2 / ( N n v ( n ) nm N W 2 / since k N W 2 = e j 2 π (2 k/N ) = e j 2 π k/ ( N /2) = k N W 2 / . • Letting { U ( m ) ; m = 0 ,..., N 2 1 } = DFT N 2 { u ( n ) } { V ( m ) ; m = 0 ,..., N 2 1 } = DFT N 2 { v ( n ) } then immediately X ( m ) = U ( m ) + m N W · V ( m ) ; m = 0 ,..., N 2 1 Page 11.6 • A similar procedure to express X ( m ) for m > N 2 1: index X ( m + N 2 ) = ∑ = 1 ) 2 / ( N n u ( n ) ) 2 / ( 2 / N m n N W + + ) 2 / ( N m N W + · ∑ = 1 ) 2 / ( N n v ( n ) ) 2 / ( 2 / N m n N W + = ∑ = 1 ) 2 / ( N n u ( n ) nm N W 2 / m N W · ∑ = 1 ) 2 / ( N n v ( n ) nm N W 2 / since clearly N N W = 1 (in this case 2 / 2 / N N W = 1) 2 / N N W = 1 and so X ( m + N 2 ) = U ( m )  m N W · V ( m ) ; m = 0 ,..., N 2 1 Page 11.7 DFT Butterfly index...
View
Full
Document
This note was uploaded on 05/06/2010 for the course ECE 539 taught by Professor Alanc.bovik during the Spring '04 term at University of New Brunswick.
 Spring '04
 AlanC.Bovik
 Digital Signal Processing, Algorithms, Frequency, Signal Processing

Click to edit the document details