Download presentation
Presentation is loading. Please wait.
Published bySheena Mariah Hancock Modified over 6 years ago
1
Chapter 9 Computation of the Discrete Fourier Transform
Biomedical Signal processing Chapter 9 Computation of the Discrete Fourier Transform Zhongguo Liu Biomedical Engineering School of Control Science and Engineering, Shandong University 2019/1/11 1 Zhongguo Liu_Biomedical Engineering_Shandong Univ.
2
Chapter 9 Computation of the Discrete Fourier Transform
9.0 Introduction 9.1 Efficient Computation of Discrete Fourier Transform 9.2 The Goertzel Algorithm 9.3 decimation-in-time FFT Algorithms 9.4 decimation-in-frequency FFT Algorithms 9.5 practical considerations(software realization)
3
9.0 Introduction Implement a convolution of two sequences by the following procedure: 1. Compute the N-point DFT and of the two sequence and 2. Compute for 3. Compute as the inverse DFT of Why not convolve the two sequences directly? There are efficient algorithms called Fast Fourier Transform (FFT) that can be orders of magnitude more efficient than others.
4
9.1 Efficient Computation of Discrete Fourier Transform
The DFT pair was given as Baseline for computational complexity: Each DFT coefficient requires N complex multiplications; N-1 complex additions All N DFT coefficients require N2 complex multiplications; N(N-1) complex additions 4 4
5
9.1 Efficient Computation of Discrete Fourier Transform
Complexity in terms of real operations 4N2 real multiplications 2N(N-1) real additions (approximate 2N2) 5 5
6
9.1 Efficient Computation of Discrete Fourier Transform
Most fast methods are based on Periodicity properties Periodicity in n and k; Conjugate symmetry 6 6
7
9.2 The Goertzel Algorithm
Makes use of the periodicity Multiply DFT equation with this factor Define using x[n]=0 for n<0 and n>N-1 X[k] can be viewed as the output of a filter to the input x[n] Impulse response of filter: X[k] is the output of the filter at time n=N 7 7
8
9.2 The Goertzel Algorithm
Goertzel Filter: Computational complexity 4N real multiplications; 4N real additions Slightly less efficient than the direct method But it avoids computation and storage of 8 8
9
Second Order Goertzel Filter
Multiply both numerator and denominator 9 9
10
Second Order Goertzel Filter
Complexity for one DFT coefficient ( x(n) is complex sequence). Poles: 2N real multiplications and 4N real additions Zeros: Need to be implement only once: 4 real multiplications and 4 real additions Complexity for all DFT coefficients Each pole is used for two DFT coefficients Approximately N2 real multiplications and 2N2 real additions 10 10
11
Second Order Goertzel Filter
If do not need to evaluate all N DFT coefficients Goertzel Algorithm is more efficient than FFT if less than M DFT coefficients are needed,M < log2N 11 11
12
9.3 decimation-in-time FFT Algorithms
Makes use of both periodicity and symmetry Consider special case of N an integer power of 2 Separate x[n] into two sequence of length N/2 Even indexed samples in the first sequence Odd indexed samples in the other sequence 12 12
13
9.3 decimation-in-time FFT Algorithms
Substitute variables n=2r for n even and n=2r+1 for odd G[k] and H[k] are the N/2-point DFT’s of each subsequence 13 13
14
9.3 decimation-in-time FFT Algorithms
G[k] and H[k] are the N/2-point DFT’s of each subsequence 14 14
15
8-point DFT using decimation-in-time
Figure 9.3
16
computational complexity
Two N/2-point DFTs 2(N/2)2 complex multiplications 2(N/2)2 complex additions Combining the DFT outputs N complex multiplications N complex additions Total complexity N2/2+N complex multiplications N2/2+N complex additions More efficient than direct DFT 16 16
17
9.3 decimation-in-time FFT Algorithms
Repeat same process , Divide N/2-point DFTs into Two N/4-point DFTs Combine outputs N=8 17 17
18
9.3 decimation-in-time FFT Algorithms
After two steps of decimation in time Repeat until we’re left with two-point DFT’s 18 18
19
9.3 decimation-in-time FFT Algorithms
flow graph for 8-point decimation in time Complexity: Nlog2N complex multiplications and additions 19 19
20
Butterfly Computation
Flow graph constitutes of butterflies We can implement each butterfly with one multiplication Final complexity for decimation-in-time FFT (N/2)log2N complex multiplications and additions 20 20
21
9.3 decimation-in-time FFT Algorithms
Final flow graph for 8-point decimation in time Complexity: (Nlog2N)/2 complex multiplications and Nlog2N additions 21 21
22
9.3.1 In-Place Computation同址运算
Decimation-in-time flow graphs require two sets of registers Input and output for each stage 22 22
23
9.3.1 In-Place Computation同址运算
Note the arrangement of the input indices Bit reversed indexing(码位倒置) 23 23
24
cause of bit-reversed order
binary coding for position: 000 001 010 011 100 101 110 111 must padding 0 to Figure 9.13
25
9.3.2 Alternative forms Bit reversed indexing(码位倒置)
Note the arrangement of the input indices Bit reversed indexing(码位倒置) 25 25
26
9.3.2 Alternative forms Figure 9.14 strongpoint:in-place computations
shortcoming:non-sequential access of data Figure 9.14
27
Figure 9.15 shortcoming:not in-place computation non-sequential access of data
28
Figure 9.16 shortcoming:not in-place computation strongpoint: sequential access of data
29
9.3 decimation-in-time FFT Algorithms
Substitute variables n=2r for n even and n=2r+1 for odd Review G[k] and H[k] are the N/2-point DFT’s of each subsequence 29 29
30
9.3.1 In-Place Computation同址运算
Bit reversed indexing(码位倒置) 30 30
31
9.3.2 Alternative forms Figure 9.14 strongpoint:in-place computations
shortcoming:non-sequential access of data Figure 9.14
32
9.4 Decimation-In-Frequency FFT Algorithm
The DFT equation Split the DFT equation into even and odd frequency indexes Substitute variables 32 32
33
9.4 Decimation-In-Frequency FFT Algorithm
The DFT equation 33 33
34
decimation-in-frequency decomposition of an N-point DFT to N/2-point DFT
34 34
35
decimation-in-frequency decomposition of an 8-point DFT to four 2-point DFT
35 35
36
2-point DFT 36 36
41
Final flow graph for 8-point DFT decimation in frequency
41 41
42
9.4.1 In-Place Computation同址运算
DIF FFT DIT FFT 42 42
43
9.4.1 In-Place Computation同址运算
DIF FFT DIT FFT 43 43
44
9.4.2 Alternative forms decimation-in-frequecy Butterfly Computation
decimation-in-time Butterfly Computation 44 44
45
The DIF FFT is the transpose of the DIT FFT
45 45
46
Alternative forms DIF FFT DIT FFT
47
Alternative forms DIF FFT DIT FFT
48
Figure 9.24 erratum
49
Alternative forms DIF FFT DIT FFT
50
Zhongguo Liu_Biomedical Engineering_Shandong Univ.
Chapter 9 HW 9.1, 9.2, 9.3, Zhongguo Liu_Biomedical Engineering_Shandong Univ. 50 2019/1/11 返 回 上一页 下一页
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.