Académique Documents
Professionnel Documents
Culture Documents
Introduction
The Discrete Fourier Transform of a sequence
is given by:
Introduction
How much computations does it require?
For a complex valued sequence x(n) of N points,
DFT may be expressed as :
Introduction
The Direct computation of the above equations
requires:
1. 2 N2 evaluation of trigonometric functions.
2. 4N2 real multiplications.
3. 4N(N-1) real addition.
4. A number of indexing and addressing
operations.
4
Efficient computation of t
he DFT: Fast Fourier
Transform
FFT for the efficient
There are two approaches
n= Ml+m
10
11
Colum
n = l +mL
12
X ( p, q )
M 1 L 1
x(l , m)W
( Mp q )( mL l )
N
m0 l 0
But
( Mp q )( mL l )
N
MLmp
N
mLq
N
Mpl
N
lq
N
15
( Mp q )( mL l )
N
MLmp
N
mLq
N
Mpl
N
lq
N
However
MLmp
N
mqL
N
Mpl
N
W
W
1
mq
N/L
pl
N/M
mq
M
( Mp q )( mL l )
N
pl
L
W W W
mq
M
pl
L
lq
N
16
X ( p, q )
M 1 L 1
x(l , m)W
( Mp q )( mL l )
N
m0 l 0
M 1 L 1
x(l , m)W
lq
N
m0 l 0
mq
M
lp
L
W W
X ( p, q ) W
l 0
lq
N
M 1
x(l , m)W
m0
mq
M
lp
L
17
M 1
mq
x
(
l
,
m
)
W
,0 q M 1
m0
and 0 q M 1
X ( p, q ) G (l , q ) WLlp
l 0
19
For example:
Suppose that: N=1000 and we select L=2 and
M=500 ( Where N=ML)
Direct computation of the DFT requires , N 2 =106
complex multiplications.
Divide and conquer requires
N(M +L+1) = 1000(500+2+1) = 503,000 complex
multiplications.
A reduction of a factor of 2
The number of additions is also reduced by about a
factor of 2.
20
Algorithm 1
1. Store the signal column-wise
2. Compute the M-point DFT for each row
3. Multiply the resulting array by the phase
lq
W
factor N
4. Compute the L-point DFT of each column
5. Read the resulting array row-wise
21
Algorithm 2
1. Store the signal row-wise
2. Compute the L-point DFT for each column
3. Multiply the resulting array by the phase
pm
factor WN
4. Compute the M-point DFT of each row
5. Read the resulting array column-wise
22
23
Decimation in time
Decimation in frequency.
Prime factor algorithm.
Bluestein approach.
..
24
If N is highly composite, N= r1 r2 r3 rv
where ri are prime .
25
26
28
29
30
G2 (k ) WNK F2 (k )
X (k ) G1 (k ) G2 (k )
X (k N2 ) G1 (k ) G2 (k ), k 0,1,2, N2 1
This computation is illustrated in Figure 1.
31
32
n 0,1,2, N4 1
n 0,1,2, N4 1
n 0,1,2, N4 1
n 0,1,2, N4 1
33
N /4
ij
34
The total is 4 2 2 4 N
computation is reduced by a factor of 2
2
35
37
Radix-2
FFT
Algorithm
(cont)
One eight-point DFT
Four two-point DFTs,
Two four-point DFTs
X(0)
X(4)
2 point DFT
4 point DFT
X(2)
X(6)
2 point DFT
8 point DFT
X(1)
2 point DFT
X(5)
4 point DFT
X(3)
X(7)
2 point DFT
A a W b
r
N
r
This is shown in
the
following
butterfly
flow
graph
B a W b
N
39
40
41
Figure .4 Eight-point decimation-in-time FFT algorithm.
42
44
45
46
Radix-2 Algorithm
Decimation in Frequency
48
Radix-2 Algorithm
Decimation in Frequency
Another important radix-2 FFT algorithm,
called the decimation-in-frequency algorithm,
is obtained by using the divide-and-conquer
approach. (N=LM , M=2 and L=N/2)
To derive the algorithm, we begin by splitting
the DFT formula into two summations, one of
which involves the sum over the first N/2 data
points and the second sum involves the last N/2
data points.
49
50
51
52
decimation-in-frequency.
53
54
55
Figure .8
58
Applications
The Fast Fourier Transform (FFT) is one of the
most important tools in Digital Signal
.Processing
First, the FFT can calculate a signal's
frequency spectrum. This is a direct
examination of information encoded in the
frequency, phase, and amplitude of the
.component sinusoids
59
61