Chapter 16
THE FAST FOURIER
TRANSFORM (FFT)
Copyright
c 1996 by Ali H. Sayed. All rights reserved. These notes are distributed only to the
students attending the undergraduate DSP course EE113 in the Electrical Engineering Department
at UCLA. The notes cannot be reproduced without written consent from the instructor: Prof. A.
H. Sayed, Electrical Engineering Department, UCLA, CA 90095, [email protected]
•
As mentioned before, one of the main advantages of using the
DFT
in discretetime
signal processing applications is that efficient methods exist for its evaluation.
The
purpose of this lecture is to introduce some of these methods.
•
The
DFT and
IDFT
. Thus recall that the relations that define the
N
point
DFT
and its inverse of a sequence
x
(
n
) are
X
(
k
) =
N

1
X
n
=0
x
(
n
)
e

j
2
πkn
N
,
k
= 0
,
1
, . . . , N

1
x
(
n
) =
1
N
N

1
X
k
=0
X
(
k
)
e
j
2
πkn
N
,
n
= 0
,
1
, . . . , N

1
•
Phase factor
. For convenience of notation we shall define the complex number:
W
N
Δ
=
e

j
2
π
N
= cos
(
2
π
N
)

j
sin
(
2
π
N
)
It corresponds to the
N
th root of unity (since
W
N
N
= 1) and it satisfies the easily
verifiable identities:
W
q
N
=
W
N/q
,
W
q
+
N
2
N
=

W
q
N
,
W
qN/
2
N
= (

1)
q
Using
W
N
, we can rewrite the expressions for the
DFT
and
IDFT
more compactly as
follows:
X
(
k
) =
N

1
X
n
=0
x
(
n
)
W
kn
N
,
k
= 0
,
1
, . . . , N

1
x
(
n
) =
1
N
N

1
X
k
=0
X
(
k
)
W

kn
N
,
n
= 0
,
1
, . . . , N

1
.
171
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
172
The Fast Fourier Transform (FFT)
Chapter 16
•
Computational cost
. It is clear from the definition of the
DFT
that computing the
DFT
of a sequence of length
N
requires
N
complex multiplications and (
N

1) complex
additions per coefficient
X
(
k
). This means that overall we need
N
2
complex multi
plications and
N
(
N

1) complex additions. We thus say that we need approximately
2
N
2
complex operations:
N

point
DFT
=
⇒
requires
O
(2
N
2
)
complex operations
This cost can be reduced by employing a certain divideandconquer strategy that will
lead us to what is known as the
Fast Fourier Transform
(
FFT
). There are several vari
ants of the
FFT
algorithm. Here we only describe the radix2 decimationintimeand
decimationinfrequency versions, which are the most widely used. All other versions
essentially share the same ideas and derivation.
•
Decimationintime FFT
. Assume
x
(
n
) is a sequence of length
N
and that
N
is a
power of 2, say
N
= 2
p
for some
p
. This requirement is not restrictive since we can
always pad the sequence with zeros in order to achieve a length that is a power of 2.
[By padding a sequence with zeros, we actually increase the resolution that we obtain
for its
DTFT
.]
Since
N
is even, we can split the sequence into two smaller sequences of size
N
2
each.
In one sequence we group the evenindexed samples of
x
(
n
) and in the other sequence
we group the oddindexed samples of
x
(
n
), say
{
x
(0)
, x
(2)
, x
(4)
, . . . , x
(
N

4)
, x
(
N

2)
}
and
{
x
(1)
, x
(3)
, x
(5)
, . . . , x
(
N

3)
, x
(
N

1)
}
.
Now we can express for the
DFT
coefficients of
x
(
n
):
X
(
k
) =
X
n
=
even
x
(
n
)
W
kn
N
+
X
n
=
odd
x
(
n
)
W
kn
N
=
N
2

1
X
m
=0
x
(2
m
)
W
k
2
m
N
+
N
2

1
X
m
=0
x
(2
m
+ 1)
W
k
(2
m
+1)
N
=
N
2

1
X
m
=0
x
(2
m
)
W
km
N/
2

{z
}
X
e
(
k
)
+
W
k
N
N
2

1
X
m
=0
x
(2
m
+ 1)
W
km
N/
2

{z
}
X
o
(
k
)
where
X
e
(
k
) and
X
o
(
k
) are
N
2

point
DFT
This is the end of the preview.
Sign up
to
access the rest of the document.
 Spring '08
 Walker
 Electrical Engineering, Digital Signal Processing, Signal Processing, DFT, −1, Fast Fourier transform

Click to edit the document details