4 DFT DFT Fast Fourier Transform: FFT 4.1 DFT IDFT X(k) = 1 n=0 x(n)e j2πkn (4.1) 1 x(n) = 1 X(k)e j2πkn (4.2) k=0 x(n) X(k) DFT 2 ( 1) 2 4 2 2(2 1) 2 O( 2 ) 4.2 FFT 4.2.1 radix2 FFT 1 (4.1)
86 4. X(0) w 0 w 0 w 0 X(1) w 0 w 1 w 1 =....... X( 1) w 0 w 1 w 1 x(0) x(1). x( 1) (4.3) w = e j2π w 0,w1,,w 1 kn = m + r, 0 r 1 w kn = wr (4.4) (4.3) X() =F ()x() (4.5) X() =[X(0),X(1),,X( 1)] T (4.6) x() = [x(0),x(1),,x( 1)] T (4.7) (4.8) [] T F () DFT 2 Decimation-in-frequency F () X() F () 2k k 2k +1 k ˆX() = ˆF ()x() (4.9) ˆX() = [ ˆX 0 (/2), ˆX 1 (/2)] T (4.10) ˆX 0 (/2) = [X(0),X(2),,X( 2)] T (4.11) ˆX 1 (/2) = [X(1),X(3),,X( 1)] T (4.12) ˆX 0 (k) = X(2k), 0 k 2 1 (4.13)
4.2 FFT 87 3 ˆX 1 (k) = X(2k +1), 0 k 2 1 (4.14) x() = [x 0 (/2), x 1 (/2)] T (4.15) x 0 (/2) = [x(0),x(1),,x(/2 1)] T (4.16) x 1 (/2) = [x(/2),x(/2+1),,x( 1)] T (4.17) ˆF () = F 1(/2) F 2 (/2) (4.18) F 3 (/2) F 4 (/2) 1. F 1 (/2) F 2 (/2) /2 DFT k n w kn /2, w /2 = e j2π /2 (4.19) F 1 (/2) k n w 2kn = e j2π(2kn)/ = e j2πkn/(/2) = w kn /2 (4.20) 0 k, n 2 1 F (/2) k n F 2 (/2) k n w 2k(n+/2) = e j2π(2k(n+/2))/ = e j2πkn/(/2) j2πk = e j2πkn/(/2) = w kn /2 (4.21) 0 k, n 2 1 F (/2) k n 2. F 3 (/2)F 4 (/2) F 3 (/2) = F 4 (/2) (4.22)
88 4. F 3 (/2) k n w (2k+1)n = e j2π(2k+1)n/, 0 k, n 2 1 (4.23) F 4 (/2) k n w (2k+1)(n+/2) = e j2π(2k+1)(n+/2)/ = e j2π(2k+1)n e j2π(/2)/ = e j2π(2k+1)n, 0 k, n 2 1 (4.24) F 3 (/2) k n 1 3. F 3 (/2) F 3 (/2) = F (/2)D(/2) (4.25) D(/2) = diag(w 0,w 1,,w /2 1 ) (4.26) F 3 (/2) k n w (2k+1)n = e j2π(2k+1)n/ = e j2πkn/(/2) e j2πn/ 0 k, n 2 1 (4.27) F (/2) k n e j2πn/ F (/2) diag (e j2π 0,e j2π 1,e j2π 2 ),,e j2π /2 1 ) (4.28) (4.26) 4 DFT F ()
4.2 FFT 89 ˆF () = F (/2) F (/2) F (/2)D(/2) F (/2)D(/2) (4.29) = F (/2) 0 I(/2) 0 0 F (/2) 0 D(/2) I(/2) I(/2) I(/2) I(/2) (4.30) I(/2) /2 4.1 D(/2) /2 F (/2) k n 4.1 (4.30) w kn /2, w /2 = e j2π/(/2), 0 k, n 2 1 (4.31) F () DFT F () 4.1 F (/2) FFT 5 (4.11) (4.12)
90 4. 0 1 2 3 4 5 6 7 000 001 010 011 100 101 110 111 000 010 100 110 001 011 101 111 000 100 010 110 001 101 011 111 0 4 2 6 1 5 3 7 (4.32) =8 DFT F (8) X(0) X(1) X(2) X(3) X(4) X(5) X(6) X(7) = w 0 w 0 w 0 w 0 w 0 w 0 w 0 w 0 w 0 w 1 w 2 w 3 w 4 w 5 w 6 w 7 w 0 w 2 w 4 w 6 w 0 w 2 w 4 w 6 w 0 w 3 w 6 w 1 w 4 w 7 w 2 w 5 w 0 w 4 w 0 w 4 w 0 w 4 w 0 w 4 w 0 w 5 w 2 w 7 w 4 w 1 w 6 w 3 w 0 w 6 w 4 w 2 w 0 w 6 w 4 w 2 w 0 w 7 w 6 w 5 w 4 w 3 w 2 w 1 x(0) x(1) x(2) x(3) x(4) x(5) x(6) x(7) (4.33) w = e j2π/8 (4.34)
X(0) X(2) X(4) X(6) = X(1) X(3) X(5) X(7) 4.2 FFT 91 w 0 w 0 w 0 w 0 w 0 w 0 w 0 w 0 x(0) w 0 w 2 w 4 w 6 w 0 w 2 w 4 w 6 x(1) w 0 w 4 w 0 w 4 w 0 w 4 w 0 w 4 x(2) w 0 w 6 w 4 w 2 w 0 w 6 w 4 w 2 x(3) (4.35) w 0 w 1 w 2 w 3 w 4 w 5 w 6 w 7 x(4) w 0 w 3 w 6 w 1 w 4 w 7 w 2 w 5 x(5) w 0 w 5 w 2 w 7 w 4 w 1 w 6 w 3 x(6) w 0 w 7 w 6 w 5 w 4 w 3 w 2 w 1 x(7) ˆX 0 (4) = F 1(4) F 2 (4) x 0(4) (4.36) ˆX 1 (4) F 3 (4) F 4 (4) x 1 (4) ˆX 0 (4) = [X(0),X(2),X(4),X(6)] T (4.37) ˆX 1 (4) = [X(1),X(3),X(5),X(7)] T (4.38) x 0 (4) = [x(0),x(1),x(2),x(3)] T (4.39) x 1 (4) = [x(4),x(5),x(6),x(7)] T (4.40) w 0 w 0 w 0 w 0 w F 1 (4) = F 2 (4) = 0 w 2 w 4 w 6 w 0 w 4 w 0 w 4 (4.41) w 0 w 6 w 4 w 2 F 4 (4) = w 4 F 3 (4) = F 3 (4) w 0 w 1 w 2 w 3 w = 0 w 3 w 6 w 1 w 0 w 5 w 2 w 7 w 0 w 7 w 6 w 5 (4.42)
92 4. w 0 w 1 w 2 w 3 w F 3 (4) = 0 w 3 w 6 w 1 w 0 w 5 w 2 w 7 w 0 w 7 w 6 w 5 w 0 w 0 w 0 w 0 w 0 0 0 0 w = 0 w 2 w 4 w 6 0 w 1 0 0 w 0 w 4 w 0 w 4 0 0 w 2 0 w 0 w 6 w 4 w 2 0 0 0 w 3 ˆX 0 (4) ˆX 1 (4) = F 1 (4)D(4) (4.43) F = 1 (4) F 1 (4) x 0(4) (4.44) F 1 (4)D(4) F 1 (4)D(4) x 1 (4) = F 1(4) 0 I(4) 0 0 F 1 (4) 0 D(4) I(4) I(4) x 0(4) (4.45) I(4) I(4) x 1 (4) 4.2 4.2 (4.45) F 1 (4) (4.34) w = e j2π/8 w = e j2π/4
X(0) X(2) = X(4) X(6) X(1) X(3) = X(5) X(7) 4.2 FFT 93 w 0 w 0 w 0 w 0 x 1 (0) w 0 w 1 w 2 w 3 x 1 (1) w 0 w 2 w 0 w 2 (4.46) x 1 (2) w 0 w 3 w 2 w 1 x 1 (3) w 0 w 0 w 0 w 0 x 2 (0) w 0 w 1 w 2 w 3 x 2 (1) w 0 w 2 w 0 w 2 (4.47) x 2 (2) w 0 w 3 w 2 w 1 x 2 (3) w = e j2π/4 (4.48) x 1 (0) x(0) x(4) x 1 (1) x(1) x(5) = + (4.49) x 1 (2) x(2) x(6) x 1 (3) x(3) x(7) x 2 (0) w 0 x(0) x(4) x 2 (1) w = 1 x(1) x(5) x 2 (2) w 2 (4.50) x(2) x(6) x 2 (3) w 3 x(3) x(7) F 1 (4) DFT F (4) 4.3 F (4) F (8) X(0) w 0 w 0 w 0 w 0 x 1 (0) X(4) w = 0 w 2 w 0 w 2 x 1 (1) X(2) w 0 w 1 w 2 w 3 (4.51) x 1 (2) X(6) w 0 w 3 w 2 w 1 x 1 (3) ˆX 00 (2) = F 1(2) F 2 (2) x 10(2) (4.52) ˆX 01 (2) F 3 (2) F 4 (2) x 11 (2)
94 4. 4.3 (4.46) (4.50) ˆX 00 (2) = [X(0),X(4)] T (4.53) ˆX 01 (2) = [X(2),X(6)] T (4.54) x 10 (2) = [x 1 (0),x 1 (1)] T (4.55) x 11 (2) = [x 1 (2),x 1 (3)] T (4.56) F 1 (2) = F 2 (2) = w0 w 0 = 1 1 (4.57) w 0 w 2 1 1 F 4 (2) = w 2 F 3 (2) = F 3 (2) = w0 w 1 (4.58) w 0 w 3 F 3 (2) = w0 w 0 w0 0 w 0 w 2 0 w 1 = F 1 (2)D(2) (4.59) (4.52) (4.45) ˆX 00 (2) = F 1(2) F 1 (2) x 10(2) ˆX 01 (2) F 3 (2) F 3 (2) x 11 (2)
4.2 FFT 95 = F 1(2) 0 I(2) 0 0 F 1 (2) 0 D(2) I(2) I(2) x 10(2) (4.60) I(2) I(2) x 11 (2) F 1 (2) F 1 (4) DFT 4.4 x(n) X(k) (4.32) X(0) X(1) X(3) X(7) 4.4 DFT F (8) FFT w = e j2π/8 4.2.2 FFT 1
96 4. 4.5 4.5 FFT 2 D(/2 m ),m =2,,L = log 2 /2 2 2 + L = log 2 4.1 log 2 FFT 4.1 radix2-fft 2 log 2 2 log 2 log 2 3 log 2 O() DFT O( 2 ) FFT O() O( 2 ) FFT O()
4.2 FFT 97 4.2.3 FFT FFT x() DFT DFT (4. F () F (/2) D(/2)F (/2) (4. F (/2) D(/2)F (/2) = I(/2) I(/2) I(/2) 0 F (/2) 0 I(/2) I(/2) 0 D(/2) 0 F (/2) x() DFT X() ˆx 0 (/2) = [x(0),x(2),,x( 2)] T (4.63) ˆx 1 (/2) = [x(1),x(3),,x( 1)] T (4.64) X 0 (/2) = [X(0),X(1),,X(/2)] T (4.65) X 1 (/2) = [X(/2+1),X(/2+1),,X( 1)] T (4.66) 4.6 FFT FFT 4.6 FFT
98 4. 4.2.4 radix4-fft FFT radix4-fft DFT ˆX() = ˆF ()x() (4.67) ˆX() = [ ˆX 0 (/4), ˆX 1 (/4), ˆX 2 (/4), ˆX 3 (/4)] T (4.68) ˆX 0 (/4) = [X(0),X(4),,X( 4)] T (4.69) ˆX 1 (/4) = [X(1),X(5),,X( 3)] T (4.70) ˆX 2 (/4) = [X(2),X(6),,X( 2)] T (4.71) ˆX 3 (/4) = [X(3),X(7),,X( 1)] T (4.72) ˆX 0 (k) = X(4k), 0 k 4 1 ˆX 1 (k) = X(4k +1), 0 k 4 1 ˆX 2 (k) = X(4k +2), 0 k 4 1 ˆX 3 (k) = X(4k +3), 0 k 4 1 x() = [x 0 (/4), x 1 (/4), x 2 (/4), x 3 (/4)] T (4.73) x() /4 DFT F ( /4) F ( /4) F ( /4) F ( /4) F ˆF () = 1 (/4) jf 1 (/4) F 1 (/4) jf 1 (/4) F 2 (/4) F 2 (/4) F 2 (/4) F 2 (/4) F 3 (/4) jf 3 (/4) F 3 (/4) jf 3 (/4) (4.74) ˆf(k, n) = f(4k, n) (4.75) ˆf(k + /4,n) = f(4k +1,n) 0 k 4 1 (4.76)
4.2 FFT 99 ˆf(k + /2,n) = f(4k +2,n) 0 n 1 (4.77) ˆf(k +3/4,n)=f(4k +3,n) (4.78) F i (/4) /4 DFT F (/4) D i (/4) F i (/4) = F (/4)D i (/4) (4.79) d i (k, k) = e j2πki/ D i (/4) (k, k) (4.80) ˆX 0 (/4) F (/4)D 0 (/4) ˆX 1 (/4) F (/4)D = 1 (/4) ˆX 2 (/4) F (/4)D 2 (/4) ˆX 3 (/4) F (/4)D 3 (/4) I(/4) I(/4) I(/4) I(/4) x 0 (/4) I(/4) ji(/4) I(/4) ji(/4) x 1 (/4) I(/4) I(/4) I(/4) I(/4) x 2 (/4) I(/4) ji(/4) I(/4) ji(/4) x 3 (/4) (4.81) 4.7 ˆX i (/4) F (/4) F () radix4-fft 1 radix4-fft 4.2 4.2 radix4-fft 3 4 log 4 3 log 4 2 log 4 (4 + 3 2 ) log 4
100 4. 4.7 radix4-fft radix2-fft radix4-fft 4.3 radix-4-fft =4 L 4.3 radix2-fft radix4-fft radix2-fft radix4-fft 64 768 1152 576 1056 128 1792 2688 - - 256 4096 6144 3072 5632 512 9216 13824 - - 1024 20480 30720 15360 28160 4.3 FFT (4.1) (4.2) DFT Inverse DFT 1/ IDFT DFT exp( jωt) exp(jωt) 1/ IDFT FFT 1/ 1/2
4.3 FFT 101 1. DFT FFT w 0 w 0 w 0 w 0 w F (4) = 0 w 1 w 2 w 3 w 0 w 2 w 0 w 2, w = e j2π/4 (4.82) w 0 w 3 w 2 w 1 (a) F (4) F 1 (2) F 2 (2) F 3 (2) F 4 (2) ˆF (4) = F 1(2) F 2 (2) (4.83) F 3 (2) F 4 (2) (b) (c) F 1 (2) F 2 (2) F 3 (2) F 4 (2) F 3 (2) F 1 (2) (d) ˆF (4) F 1 (2) (e) FFT F 1 (2) 2. DFT FFT w 0 w 0 w 0 w 0 w F (4) = 0 w 1 w 2 w 3 w 0 w 2 w 0 w 2, w = e j2π/4 (4.84) w 0 w 3 w 2 w 1 (a) F (4) F 1 (2) F 2 (2) F 3 (2) F 4 (2) ˆF (4) = F 1(2) F 2 (2) (4.85) F 3 (2) F 4 (2) (b) F 1 (2) F 3 (2) F 2 (2) F 4 (2)
102 4. (c) F 2 (2) F 1 (2) (d) ˆF (4) F 1 (2) (e) FFT F 1 (2) 3. DFT FFT x(n) x(n) DFT X(k) DFT =2 L DFT X(k) 1 DFT X(k),k =0 1 FFT ( ) = 128 = 1024 L = log 2 FFT DFT % % (1) (2) 1 (3) /2 (4) log 2 (5) L (6) 2 (7) ( 1) (8) (/2)L =(/2) log 2 (9) L = log 2 (10) 7 (11) 8 (12) 9 (13) 10 (14) 9.4 (15) 5.5 (16) 3.1 (17) 1.8 (18) 1 4.