Sunteți pe pagina 1din 59

Chapter 19

Fast Fourier Transform (FFT)

(Theory and Implementation)

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Learning Objectives

Chapter 19, Slide 2

DFT algorithm.
Conversion of DFT to FFT algorithm.
Implementation of the FFT algorithm.

DFT Algorithm

The Fourier transform of an analogue

signal x(t) is given by:
X

x t e jt dt

The Discrete Fourier Transform (DFT) of

a discrete-time signal x(nT) is given by:
N 1

X k x n e

2
nk
N

n 0

Chapter 19, Slide 3

Where:

k 0,1, N 1
x nT x n
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

DFT Algorithm
N 1

X k x nWNnk
n0

x[n] = input
X[k] = frequency bins
W

= twiddle factors

X(0)

X(1)

:

X(k)

:

Note: For N samples of x we have N frequencies

representing the signal.
Chapter 19, Slide 4

multiplications:

Each X(k) requires N complex

multiplications.
Therefore to evaluate all the values of the
DFT ( X(0) to X(N-1) ) N2 multiplications are
required.

Therefore to evaluate all the values of the
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

120

120

Number of Multiplications

Performance of the DFT Algorithm

100
80
60
40
20

100
80
60
40
20
0

0
0

Number of Samples

Chapter 19, Slide 6

10

10

Number of Samples

Can the number of computations required

be reduced?
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

DFT FFT

A large amount of work has been devoted

to reducing the computation time of a
DFT.
This has led to efficient algorithms which
are known as the Fast Fourier Transform
(FFT) algorithms.

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

DFT FFT
N 1

X k x nWNnk ; 0 k N 1
n 0

[1]

Lets divide the sequence x[n] into even

and odd sequences:

Chapter 19, Slide 8

x[2n]
= x[0], x[2], , x[N-2]
x[2n+1] = x[1], x[3], , x[N-1]

DFT FFT

Equation 1 can be rewritten as:

N
1
2

N
1
2

n 0

n0

X k x 2nWN2 nk x 2n 1WN 2 n 1 k

[2]

Since:
W N2 nk e

2
2 nk
N

2
nk
N 2

WN 2 n 1 k WNk W Nnk

W Nnk

Then:

X k

N
1
2

n 0

x 2nW Nnk W Nk
2

Y k WNk Z k
Chapter 19, Slide 9

N
1
2

n 0

x 2n 1W Nnk
2

DFT FFT

The result is that an N-point DFT can be

divided into two N/2 point DFTs:
N 1

X k x nWNnk ; 0 k N 1

N-point DFT

n 0

Where Y(k) and Z(k) are the two N/2

point DFTs operating on even and odd
samples respectively:
X k

N
1
2

n 0

x1 nW Nnk W Nk
2

Y k W Nk Z k
Chapter 19, Slide 10

N
1
2

n 0

x2 nW Nnk
2

DFT FFT

Periodicity and symmetry of W can be

exploited to simplify the DFT further:
N
1
2

X k

x1 n W Nnk W Nk

n 0

N
1
2

x2 nW Nnk

n 0

[3]

X k
2

Or:
And:
Chapter 19, Slide 11

WN

N
2

N
1
2

N
n k
x1 n W N 2
n 0
2

WN
2

N
2

2
k
N

2 N
N 2

2
k
N 2

N
1
2
N
k
WN 2
x2

n 0

2
k
N

2 N
N 2 2

e
2
k
N 2

n k
n W N 2
2

2
k
N

W Nk
2

W Nk

: Symmetry

: Periodicity

DFT FFT

Symmetry and periodicity:

W86

W85

W87

W84

W80 = W88

W83

W81 = W89

WNk+N/2 = -WNk
WN/2k+N/2 = WN/2k
W8k+4 = -W8k
W8k+8 = W8k

W82

DFT FFT

Finally by exploiting the symmetry and

periodicity, Equation 3 can be written as:

N
X k
2

N
1
2

n 0

x1 nW Nnk WNk
2

Y k WNk Z k

N
1
2

n 0

x2 nW Nnk
2

[4]

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

DFT FFT
N
1
2

N
k
Y k WN Z k ; k 0,
1
2

X k Y k WNk Z k ; k 0,

N
X k
2

Y(k) and WNk Z(k) only need to be

calculated once and used for both
equations.
Note: the calculation is reduced from 0 to
N-1 to 0 to (N/2 - 1).

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

DFT FFT
N
1
2

N
k
Y k WN Z k ; k 0,
1
2

X k Y k WNk Z k ; k 0,

N
X k
2

Y(k) and Z(k) can also be divided into N/4

point DFTs using the same process shown
above:
Y k U k W Nk V k
2

N
Y k U k W Nk V k
4

Z k P k W Nk Q k
2

Z k P k W Nk Q k
4

point DFTs.

DFT FFT
x[0]
x[2]
x[4]

N/2 point
DFT

x[N-1]

Chapter 19, Slide 16

X[0] = y[0]+W0z[0]
X[1] = y[1]+W1z[1]

y[N-2]

x[N-2]
x[1]
x[3]
x[5]

y[0]
y[1]
y[2]

N/2 point
DFT

z[0]
z[1]
z[2]

W0
W1

-1
-1

X[N/2] = y[0]-W0z[0]
X[N/2+1] = y[1]-W1z[1]

z[N/2-1]

Illustration of the first decimation in time

FFT.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

X [k ] G[k] WNk H[ K ]
X[k
Chapter 19, Slide 17

N
] G[k] WNk H[ K ]
2

N
k 0 to
1
2

G[k ] G1[k] W Nk H1[ K ]

2

N
G[k ] G1[k] W Nk H1[ K ]
4
2

Chapter 19, Slide 19

N
k 0 to ( 1)
4
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

BUTTERFLY STRUCTURE

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

FFT Implementation

To efficiently implement the FFT

algorithm a few observations are made:

Each stage has the same number of

butterflies (number of butterflies = N/2, N is
number of points).
The number of DFT groups per stage is equal
to (N/2stage).
The difference between the upper and lower
leg is equal to 2stage-1.
The number of butterflies in the group is
equal to 2stage-1.

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

FFT Implementation
Example: 8 point FFT
W0

W0

W0

W0

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

FFT Implementation
Example: 8 point FFT
(1) Number of stages:
W0

W0

W0

W0

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Example: 8 point FFT
(1) Number of stages:
Nstages = 1

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Example: 8 point FFT

(1) Number of stages:
Nstages = 2

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1:

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

FFT Implementation
Stage 2

Stage 3

Block 1
W0

W0

W0

W0

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

FFT Implementation
Stage 2

Stage 3

Block 1
W0

-1

Block 2
W0

W0

W0

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 2

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

FFT Implementation
Stage 2

Stage 3

Block 1
W0

-1

Block 2
W0

-1

W0

-1

W2

-1

Block 3
W0

W0

-1

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 3

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

FFT Implementation
Stage 2

Stage 3

Block 1
W0

-1

Block 2
W0

-1

W0

-1

W2

-1

Block 3
W0

-1

Block 4
W0

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

Block 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

Block 1

W0

W0

Block 2

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

Block 1

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1:

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1: Nbtf = 1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1: Nbtf = 1

Stage 2: Nbtf = 1

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1: Nbtf = 1

Stage 2: Nbtf = 2

Number of stages = log2N

Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1: Nbtf = 1

Stage 2: Nbtf = 2

Number of stages = log2N

Stage 3: Nbtf = 1
Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1: Nbtf = 1

Stage 2: Nbtf = 2

Number of stages = log2N

Stage 3: Nbtf = 2
Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1: Nbtf = 1

Stage 2: Nbtf = 2

Number of stages = log2N

Stage 3: Nbtf = 3
Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

Stage 1

W0

W0

W0

W0

FFT Implementation
Stage 2

Stage 3

-1

-1

-1

-1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

Example: 8 point FFT

(1) Number of stages:
Nstages = 3
(2) Blocks/stage:
Stage 1: Nblocks = 4

Stage 2: Nblocks = 2

Stage 3: Nblocks = 1

(3) Bflies/block:
Stage 1: Nbtf = 1

Stage 2: Nbtf = 2

Number of stages = log2N

Stage 3: Nbtf = 4
Number of blocks/stage = N/2stage
Number of butterflies/block
= 2stage-1
Dr. Naim Dahnoun,
Bristol University, (c) Texas Instruments 2004

FFT Implementation
Stage 1

W0

-1

W0

-1

W0

Chapter 19, Slide 46

Stage 3

-1

W0

Start Index
Input Index
Twiddle Factor Index

Stage 2

-1

0
1

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

0
2

0
4

N/2 = 4

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

FFT Implementation
Stage 1

W0

-1

W0

-1

W0

Chapter 19, Slide 47

Stage 3

-1

W0

Start Index
Input Index
Twiddle Factor Index

Stage 2

-1

0
1
N/2 = 4

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

0
2

0
4

4 /2 = 2

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

FFT Implementation
Stage 1

W0

-1

W0

-1

W0

Chapter 19, Slide 48

Stage 3

-1

W0

Start Index
Input Index
Twiddle Factor Index

Stage 2

-1

0
1
N/2 = 4

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

0
2
4 /2 = 2

0
4
2 /2 = 1

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

FFT Implementation
Stage 1

W0

Stage 3

-1

W0

-1

W0

-1

W0

Start Index
Input Index
Twiddle Factor Index
Indicies Used

Stage 2

-1

0
1
N/2 = 4
W0

W0

-1

W2

-1

W0

W0

-1

W1

-1

W0

-1

W2

-1

W2

-1

W3

-1

0
2

0
4

4 /2 = 2
W0

2 /2 = 1

W2

W1

W0
W2

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments

2004
3

Decimation-in-frequency FFT
Regroup the signal samples
butterfly operation
DFT obtained with proper order of frequency index

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Decimation-in-frequency FFT
Assuming that N is a even number.
Divide the data sample into two groups

N
N

x
(
),
x
(

1
),...
x
(
N

1
)
.

2
2

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Decimation-in-frequency FFT
7

X ( k ) x ( n )W
n 0

nk
8

x ( n )W
n 0

nk
8

x ( n )W
n 4

nk
8

We want to do something so that the above

are two 4-point DFTs.

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Decimation-in-frequency FFT
For even k, (k=2m)
3

X ( 2m ) x ( n )W

2 nm
8

n 0

x ( n )W
n 0

nm
4

x ( n )W82 nm
n 4

x ( n 4)W
n 0

( n4)m
4

x ( n )W
n 0

nm
4

x ( n 4)W4nm
n 0

x ( n ) x ( n 4)W4nm
n 0

The DFT with even frequency indices can be

obtained as the 4-DFT of [x(n) +x(n+4)] (n=0,1,2,3)

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Decimation-in-frequency FFT
For odd k, (k=2m+1)
X ( 2m 1)

x ( n )W

n ( 2 m 1)
8

n 0

W
n 0

W
n 0

n
8

n
8

W
n 0

n
8

nm
4

x ( n )W

nm
4

x ( n )W

W
n 0

( n4 )
8

W
n 0

n
8

x ( n )W

n ( 2 m 1)
8

n 4

x ( n 4)W4( n 4 ) m

x ( n 4)W4nm

x ( n ) x ( n 4)W

nm
4

W x ( n ) x ( n 4)W
3

n 0

n
8

nm
4

The DFT with odd frequency

indices can be obtained
n
as the 4-DFT of W8 x ( n ) x ( n 4)
(n=0,1,2,3)

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Decimation-in-frequency FFT
x(0)
x(1)
x(2)
x(3)
x(4)
x(5)
x(6)
x(7)

X(0)
4-point
DFT
-

W80
W81

4-point

W82

DFT

W83

X(2)
X(4)
X(6)
X(1)
X(3)
X(5)
X(7)

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Decimation-in-frequency FFT
x(0)

2-point

x(1)
x(2)

x(3)

x(4)

x(5)

x(6)

x(7)

W40
W41

W80
1
8

W82
W83

W40
W41

X(0)

DFT

X(4)

2-point

X(2)

DFT

X(6)

2-point

X(1)

DFT

X(5)

2-point

X(3)

DFT

X(7)

Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004

Decimation-in-frequency FFT
x(0)

X(0)

x(1)

x(2)

x(3)
x(4)
x(5)
x(6)
x(7)

--

W80

W81

W82

W83

W40
W41

W20

X(4)
X(2)
X(6)
X(1)

X(3)

W40
W41

X(5)

X(7)

End