Anda di halaman 1dari 14

Efficient Computation of DFT

FAST FOURIER TRANSFORM


ALGORITHMS
(FFT)

Fast Fourier Transform (FFT)


2

To evaluate X(k) for k=0,1,2,3..N-1, it follows that the direct determination


of the that
DFT the
requires
N2the
complex
multiplication
Recall
DFT of
sequence
x(n) is givenand
by N2 complex addition, which
can become prohibitive for larger value of N.

2
X (k ) x(n) exp j
nk . k 0,1,2.........N 1
n 0
N

N 1

For convenience, let us denote exp(-j2/N) by WN, so that


N 1

X (k ) x(n)WNkn . k 0,1,2.........N 1
n0

The basic idea in all approaches is to divide the given sequence into
Which can beofexplicitly
writtenand
as the combine these smaller DFTs suitably
subsequences
smaller length
to obtain the DFT of the original sequence

X (k ) x(0)WN0 x(1)WNk x(2)WN2 k x( N 1)WN( N 1) k

Thus, Procedures that reduce the computational burden are of considerable


interest and these procedures in known as Fast Fourier-Transforms(FFT)
algorithms.

The Decimation-in-Time Algorithm(DIF)

N
so
that
,
X
(
k
)

G
(
k
)

W
H
(
k
),
k

0
,
1

1
N
Here, X(n) is divided into two subsequence of length N/2, by grouping the
2
even-indexed samples and the odd-indexed samples together.
N
k

2
nk
nk
and
similarly
,
X
k

G
(
k
)

W
H ((1k))
i.e. X (k ) x( n)WN 2 x(n)WN N
n even
n odd
3K

The signal flow graph for above equations are given as


Letting n=2r in first sum and n=2r+1 in the second sum,
N / 2 1

N / 2 1

i.e. X (k ) x(2r )WN x(2r 1)WN


2 rk

r 0

N / 2 1

( 2 r 1) k

r 0

N / 2 1

g (r )WN WN h(r )WN (2)


r 0

2 rk

r 0

2 rk

G(0)

Flow graph for first stage of DFT algorithm for N=8


X(0)

X(2)

X(0)

N/2 point
DFT

4
G(1)

G(2)
X(4)

Even number

N (=8) point DFT

Can be explicitly divided into two


like odd(N=4) & even (N=4)
N/2 point
DFT
Odd number

WN

X(1)

WN

X(2)

G(3)
X(6)

WN

X(k+N/2)
K=0 & N=8

X(3)

WN

X(4)

WN

X(5)

WN

X(6)

WN7

X(7)

WN

Flow graph for second stageG(0)


of DFT algorithm for N=4

X(0)

G(0)
X(0)

N/4 point
0
DFT
For N=8, this involves
dividing the sequence g(r) into the two
such as
Wsequences
N /2

{x(0), X(4)} and {x(2), x(6)}


X(4)

N/2 point

G(1)

DFT
X(2)

X(6)

Even

N/4
number
point
DFT

G(1)
X(1)

WN1/ 2
H(0)

H(1)

WN2/ 2

G(2)

WN3/ 2

G(3)

Flow graph for second stageG(0)


of DFT algorithm for N=4

X(1)

H(0)
X(0)

N/4 point
0
DFT
For N=8, this involves
dividing the sequence g(r) into the two
such as
Wsequences
N / 2and {x(3), x(7)}
For N=8, this involves dividing the sequence h(r) into {x(1), x(5)}
{x(0), X(4)} and {x(2), x(6)}
G(1)
H(1)
X(1)
X(5)

N/2 point

DFT
X(3)

X(7)

Odd

N/4
Number
point
DFT

WN1/ 2
H(0)

H(1)

WN2/ 2

WN3/ 2

H(2)

H(3)

X(0)
Complete flow
of the DFT for N=8
W graph for computation
0
0

WN

WN4
x(2)

x(6)

WN0

X(1)

WN

WN1

Re call that ,Bit-Reversal order N=8


WN

WN / 2 e
0

WN4

so that ,

WN4

2
2
jBit-Reversal
Binary
Decimal
2
N
6
Representaio
Representati
Equivale
WN
Number
n
on
ntN

Decimal
N / 2

WN2

WN

8
N
0
000
Number W
of stages
3 000
log

log
2
W2
0

1
2
3
4
5
6
7

001
010
011
100
101
110
111

X(2)

100
010
110
2N
N 001
2
101
011
111

W
0 N

4
2 5
6WN
1
5
6
3WN
7

X(3)
X(4)

N complex
multiplication and addition for each stage
W
4

W operation
and leading to a total of N log
WN0
WN4

WN4

WN6

WN7

X(5)

X(6)

X(7)

Develop Decimation in Time algorithm for N=4 and draw


Forsignal
N 4flow
we have
graph.

F1 (k 2) F1 (k ) For k 0, F1 (0)8 F1 (2) & For k 1, F1 (1) F1 (3)

Also
,
Solution
F (k 2) F (k ) 1 For k 0, F2 nk(0) F k(2) & For k 12,nkF (1) F (3)
0
0
0
2
X
(
k
)

x
(
2
n
)
W

W
x
(
2
n

1
)
W

F1 (0) But
x(0from
)W4 symmetry
W4 X (24 ) &property,
(0)W
W4 X (2)
have
iF.e1.,(41) xwe
44
2

N 1

X (k ) n x0 (n)WN x(n)W4nk
nk

F2 (0) x(1)W

W
X
(
3
)
&
F
(
1
)

x
(
1
)
W

W
X
(
3
)
N
F
(
0
)

W
F
(
0
)

F
(
k
)
)
4N
4 W F ( kX
2 (0)
4
1
4
F1 (kOdd
and
) Even
) &2 Fwe
(khave
)1 F2 (k )
F
j 21( k
j 2
Split into
terms,
2
1
2
N
4 2
Here, But , W
e
WN4/ X
(e1) F1 (1)j W4 F2 (1)
N / 2N
1
2 1
2 nk
( 2 n 1) k
2
0)

j
2

X
(
k
)

x
(
2
n
W

x
(
2
n

1
)
W

Where
F
(k)
and
F
(k)
are
2
point
DFT
4
4
X (0) F21 (01n)0 W4 F222 (0) nX0 (2) F1 (0) W4 F2 (0)
W4 even
W2 1e
1odd
3
X (1) F1 (1)1 jW
3 4 F2 (1)
1 X (3) F1 (1) W4 F2 (1)
2 nk
( 2 n 1) k
3
0
2
e x(2
n2)W
x1(2n 1)W4
W
j
&
4 W4
4
X (2) F (2) W F (2)
n 00

n0

n 0

X (3) F1 (3) W43 F2 (3)

n 0

0 2
4 4 2

Signal flow graph of DIT algorithm for N=4


F1(0)

x(0)

X(0)

F1(1)
x(2)

X(1)

-1
F2(0)

x(1)

W4 j
W42 1
Here,
1

X(2)

X (3 0) F1 (0) X(3)
W4 F2 (0)
x(3)
-1
W4 j
1
2
(1)0 W
F
(1)
4 X
2 (3)
F2 (0) x(1)W40 W40 X (3) & F2 X
(1)(1) x(F
1)1W
W
4
4
2 2
0
0
0
x2F
))4WW
F (0)
(X
01 ()(0W
4 4 2X ( 2)
FF2 (1 (00))xx(1()0)WX4 (3)W&4 X
F2((21)) &
xFX
(11()(12))W
3
4
F1 (0) x(0) X (2) & F1 (1) Xx((03)) XF1((21) W43 F2 (1)
F2(1)

The Decimation-in-Frequency Algorithm (DIF)


10

To derive this algorithm, we group the first N/2 points and the last N/2 point
of the sequence x(n) together and write

X (k )

N / 2 1

)W
x(nLet

nk
N

n 0

N 1

x(n)W

n N / 2

nk
N

N nk

n) set
2r
xx( n&
nNwrite
we
x(gn()W
Wx ( nk)
/ 2)W
Nas

For k even,
can
n 0
n 0
2
( N / 2 ) 1
( N /22) 1
2 rn
rn
j
Nk / 2
Nk / 2
k
N
N
X
(
2
r
)

g
(
n
)
W

g
(
n
)
W

N e
N)
/2 n
By noting
that,
W

1
N x ( n ) n x
n 0 h( n)
0 n
WN
2 as
1 & write
N / 2 1can set k 2r
N
For k Odd, we

k
nk
X ( k ) (
x(n),0 (1n)
x/(2 )N
n1 /2) 1 WN

where
N
/
2
)

1
(
N

n 0
2 rn
2 rn

X (2r 1) h(n)WN h(n)WN / 2


N / 2 1

n 0

nk
N

Nk / 2
N

N / 2 1

n 0

First Stage of DIF graph


g(0)

x(0)

X(0)
X(2)

x(1)

g(1)

x(2)

g(2)

X(4)

x(3)

g(3)

X(6)

x(4)

x(5)

-1

-1

WN0
WN1

x(6)

-1

WN2

x(7)

-1

WN3

h(0)

h(1)

h(2)
h(3)

N/2-p0int
DFT

Let

X(1)

N X(3)
8
g (n) xN/2-p0int
( n ) x n

DFT
2X(5)
N 8 n

h( n) x ( n) x n
WN
2 X(7)

11

Flow graph for the N/4 point DFTs 0f G(k)


12

g(0)

g1(0)

g(1)

g1(1)

g(2)
g(3)

-1
-1

WN / 2 WN
0

WN1/ 2 WN2

N
g1 (n) g (n) g n G(0) X ;(0even
4 )

N/4-p0int
N

DFT
g 2 (n) g (n) g n G(2) X;(Odd
4)
4

and

N
2)
h(n) h n G(1) X; (even
g (0) h1 ( n)N/4-p0int
4

DFT
GN
(3) X (6)
g (1)

h2 (n) h(n) h n ; Odd


4

Flow graph for the N/4 point DFTs 0f H(k)


13

h(0)

h1(0)

h(1)

h1(1)

h(2)
h(3)

-1
-1

WN0/ 2 WN0
WN1/ 2 WN2

N
g1 (n) g (n) g n ; even
4

N/4-p0int
DFT
2) X (5)
H (N
g 2 (n) g (n) g n ; Odd
4

and
N
n ; even
4

H (3) X (7)
h (1)
N

h2 (n) h(n) h n ; Odd


4

h2(0)

N/4-p0int
h1 (n) DFT
h ( n ) h

H (0) X (1)

H (1) X (3)

X(0)

Complete flow graph for DIF algorithm, N=8

X(1)

X(0)
-1

-1

X(2)

X(3)

-1

-1

-1
-1
-1

WN0

WN0
WN2

X(4)

X(2)
-1

WN0

WN0

X(6)

X(1)

WN1

0
W
N
-1

WN2

-1

WN3

-1
14

WN0
WN2

X(5)
X(3)

-1

WN0

X(7)