1 / 44

Chapter 9. Computation of Discrete Fourier Transform

Chapter 9. Computation of Discrete Fourier Transform. 9.1 Introduction 9.2 Decimation-in-Time Factorization 9.3 Decimation-in-Frequency Factorization 9.4 Application of FFT 9.5 Fast Computation of DCT 9.6 Matrix Approach 9.7 Prime Factor Algorithm. BGL/SNU. 1. Introduction. BGL/SNU.

varick
Download Presentation

Chapter 9. Computation of Discrete Fourier Transform

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 9. Computation of Discrete Fourier Transform 9.1 Introduction 9.2 Decimation-in-Time Factorization 9.3 Decimation-in-Frequency Factorization 9.4 Application of FFT 9.5 Fast Computation of DCT 9.6 Matrix Approach 9.7 Prime Factor Algorithm BGL/SNU

  2. 1. Introduction BGL/SNU

  3. BGL/SNU

  4. BGL/SNU

  5. - Example of fast computation BGL/SNU

  6. BGL/SNU

  7. 2. Decimation-in-Time Factorization BGL/SNU

  8. BGL/SNU

  9. BGL/SNU

  10. BGL/SNU

  11. Decimation-in-time FFT flow graphs BGL/SNU

  12. Decimation-in-time FFT flow graphs BGL/SNU

  13. Decimation-in-time FFT flow graphs BGL/SNU

  14. 3. Decimation-in-frequency Factorization (Sande- Tuckey) FFT BGL/SNU

  15. g(n) h(n) g[0] g[1] g[2] g[3] h[0] h[1] h[2] h[3] x[0] x[1] x[2] x[3] x[4] x[5] x[6] x[7] X[0] X[2] X[4] X[6] X[1] X[3] X[5] X[7]

  16. Final flow graph x[0] x[1] x[2] x[3] x[4] x[5] x[6] x[7] X[0] X[4] X[2] X[6] X[1] X[5] X[3] X[7] BGL/SNU

  17. -Remarks • # Stages • # butterflies • # computations • inplace computations • output data ordering : bit-reversed • -Question • The flow graph for D-I-F is obtained by reversing. • The direction of the flow graph for D-I-T. Why? • -Omit Sections 9.5-9.7 BGL/SNU

  18. 4. Applications of FFT (1) Spectrum Analysis - is the spectrum of x[n] , n=0,1,…,N-1 - Inverse transform can be done through the same mechanism i) Take the complex conjugate of X[k] ii) Pass it through the FFT process, But with one shift right(/2) operation at each stage iii) Finally, take the complex conjugate of the result BGL/SNU

  19. h[n] 0 N-1 n y[n 0 2N-2 n - Operation reduction : (2) Convolution ( Filtering ) h[n] x[n] y[n] N 2N N x[n] 0 N-1 n #computation(multi)? 1+2+…+N+N-1+…+1+0 =N2

  20. x[n] 0 N-1 2N n ~ h[n] 0 N-1 2N n R2N[n] 1 0 2N-1 n y[n] 0 2N-2 2N n ~ -Utilize FFT of 2N-point ~ 2N-pt DFTs BGL/SNU

  21. X[k] 2N-pt FFT x[n] Y[k] 2N-pt IFFT y[n] 2N-pt FFT h[n] H[k] 2N • # operation (multi) • operation reduction : BGL/SNU

  22. (3) Correlation /Power Spectrum 2N-point DFTs # Operation : • Power spectrum P[k] = X[k] X*[k] BGL/SNU

  23. $ Comparison of # computation Direct Computation 106 1M 250k 105 FFT-based Convolution Correlation 62.5k 104 35k 16k 16k 7.25k FFT 103 3.3k 5k 2k 1k 102 0.45k 10 1 N 512 1024 BGL/SNU

  24. 5. Fast Computation of DCT BGL/SNU

  25. - Example: Lee’s Algorithm (1984, IEEE Trans , ASSP, Dec) 1D X[0] X[4] X[2] X[6] X[1] X[5] X[3] X[7] x[0] x[1] x[2] x[3] x[4] x[5] x[6] x[7] BGL/SNU

  26. - Example: 2D DCT Algorithm (1991, N.I.Cho and S.U.Lee) Separable Transform NxN 2D DCT = N 1-D DCT into row direction followed by N 1-D DCT into column direction. Totally 2N 1-D DCT (each N-point) are required. BGL/SNU

  27. Fast Algorithm reduces the number of 1-D DCTs into N. By using the trigonometric properties, 2D DCT is decomposed into 1-D DCTs.

  28. Signal flow graph of 2-D DCT 8x8 DCT 4x4 DCT

  29. 6. Matrix Approach · Decimation-in-time BGL/SNU

  30.    BGL/SNU

  31. · Decimation-in-frequency   BGL/SNU

  32. · General expression for N=2 case

  33. · Extension to general N (Cooley/Tuckey) BGL/SNU

  34. · # computations (complex) BGL/SNU

  35. 7. Prime Factor Algorithm (Thomas/Good) (1) Basics from Number Theory  Euler’s Phi function  Euler’s Theorem N f = = ( ) If ( a , N ) 1 , then a 1 mod N . f = = f = = = ( N ) ( eg ) a 5 , N 6 , ( N ) 2 , a 25 1 mod 6  Chinese Remainder Theorem (CRT)

  36.  Second Integer Representation (SIR) BGL/SNU

  37. BGL/SNU

  38. (2) Prime Factor Algorithm Set Then BGL/SNU

  39. Therefore Note that the only difference is in the “twiddle factor” BGL/SNU

  40. (3) Comparison Example 12-Point DFT (N=12, p=3, q=4) C/T : Cooley/Tuckey T/G : Thomas/Good · Transform · Index Mappings

  41. 4pt DFT 4pt DFT 3pt DFT 3pt DFT 3pt DFT 3pt DFT 4pt DFT x x ( ( k k , , n k ) ) 2 1 0 0 1 0 · Diagram X ( k , k ) 1 0 0 0 (0,0) 0 0 (0,0) (0,0) (1,0) 3 3 (0,1) (0,1) 4 4 6 6 (2,0) (0,2) (3,0) 9 9 (0,2) 8 8 (0,3) (1,0) 1 9 (1,1) 5 1 (1,0) 4 1 (0,1) (1,2) 9 5 (1,1) (1,1) 7 4 10 7 (2,1) (1,2) (2,0) 2 6 (3,1) 1 10 (1,3) (2,1) 6 10 (2,2) 10 2 (2,0) 8 2 (0,2) (3,0) 3 3 (1,2) (2,1) 11 5 (3,1) 7 7 2 8 (2,2) (2,2) (3,2) 5 11 (3,2) 11 (2,3) 11 C/T T/G C/T C/T T/G BGL/SNU

  42. Radix-4 algorithm - Radix-2 algorithms: algorithms in textbook : - Radix-4 algorithms : BGL/JWL/SNU

  43. - Radix-4 butterfly BGL/JWL/SNU

  44. - Radix-4 butterfly -j -1 j -1 1 -1 j -1 -j BGL/JWL/SNU

More Related