Fourier transform of discrete time signals Discrete … 6 Discrete Fourier Transform • DFT of a...
Transcript of Fourier transform of discrete time signals Discrete … 6 Discrete Fourier Transform • DFT of a...
10/5/2012
1
• Fourier transform of discrete time signals
• Discrete Fourier Transform
• Inverse Discrete Fourier Transform
• Properties of Discrete Fourier Transform
• Computation of discrete Fourier transform
– FFT algorithms
• Decimation in Time (DIT)
• Decimation in Frequency (DIF)
10/5/2012 1S. THAI SUBHA CHAPTER-III
Time domain signal
Frequency domain signal
10/5/2012 2S. THAI SUBHA CHAPTER-III
10/5/2012
2
• Fourier series (Periodic signals) & Fourier Transform
(Finite energy signals)
– Useful in the analysis & design of LTI system.
• Decomposes the signals in terms of sinusoidal or
complex exponential components
– To represent in frequency domain
• Converts Time domain signal to a frequency domain
signal
)eor t(sin jωω
10/5/2012 3S. THAI SUBHA CHAPTER-III
• Fourier Transform (FT) is a way of transforming a continuous
signal into the frequency domain.
• Discrete Time Fourier Transform (DTFT) is a Fourier Transform of
a sampled signal.
• Discrete Fourier Transform (DFT) is a discrete numerical
equivalent using sums instead of integrals that can be computed on a
digital computer.
• Finally, FFT is a highly elegant and efficient algorithm, which is
still one of the most used algorithms in speech processing,
communications, frequency estimation, etc – one of the most highly
developed area of DSP.
10/5/2012 4S. THAI SUBHA CHAPTER-III
10/5/2012
3
Fourier series Fourier Transform
Gives the harmonic content of a
periodic time function
Gives the frequency information
for an aperiodic signals (Finite
energy signals)
Discrete frequency spectrum Continuous frequency spectrum
DTFT DFT
Sampling is performed only in
time domain
Obtained by performing
sampling operation in both the
time and frequency domains
Continuous function ofω Discrete frequency spectrum
10/5/2012 5S. THAI SUBHA CHAPTER-III
The Fourier transform of a continuous time aperiodic signal is given
by
The conditions for the existence of the Fourier transform is follows
the Dirichlet conditions which are:
1 .The signal x(t) has a finite no. of discontinuities.
2.The signal x(t) has a finite no. of maxima and minima.
3.The signal x(t) is absolutely integrable that is
∫∞
∞−
ω−ω=ω allfor dte)t(x)j(X tj
∫∞
∞−
∞< dt)t(x
10/5/2012 6S. THAI SUBHA CHAPTER-III
10/5/2012
4
The discrete time Fourier transform of finite energy aperiodic signal
x(n) is representation of signal in terms of complex exponential
sequence e-jωn where ω is a real frequency variable.
The discrete time Fourier transforms of x(n) is defined as
where X(ω) represents the frequency content if signal is x(n).
• Physically X(ω) is a decomposition of x(n) into its frequency
components.
∑∞
−∞=
ω−ω=ω=
n
njje)n(x)(X)e(X
10/5/2012 7S. THAI SUBHA CHAPTER-III
ITDFT
The Inverse Discrete Time Fourier Transform (ITDFT)
is given by,
∫π
π−
ωωω
π= de)(X
2
1)n(x nj
10/5/2012 8S. THAI SUBHA CHAPTER-III
10/5/2012
5
Relationship between Z-Transform &
Fourier Transform
• Let us consider a sequence x(n) having z-
transform with ROC that includes the unit
circle.
(1)
• The Fourier transform of x(n) is given by
(2)
9
ω=
jrez where
∑∞
−∞=
ω−−ω=
n
njnjer)n(x)re(X
∑∞
−∞=
ω−ω=
n
njje)n(x)e(X
10/5/2012 S. THAI SUBHA CHAPTER-III
• In the z-plane this corresponds to the locus of
points on the unit circle . Hence X(ejω) is
equal to X(z) evaluated along the unit circle, or
• For X(ejω) to exists, the ROC of X(z) must
include the unit circle.
10
1z =
ω=
ω= jez
j )z(X)e(X
10/5/2012 S. THAI SUBHA CHAPTER-III
10/5/2012
6
Discrete Fourier Transform
• DFT of a discrete time signal x(n) is a finite durationdiscrete frequency sequence.
• DFT sequence is denoted by X(k).
• DFT is obtained by sampling one period of the FourierTransform X(ω) of the signal x(n) at a finite no. offrequency points.
• Sampling is performed at N equally spaced points in theperiod 0 ≤ ω ≤ 2π at ωk = 2πk /N; 0 ≤ k ≤ N-1
1)-3...(N 2, 1, 0,kfor ;)(X)k(XN
k2 =ω= π=ω
10/5/2012 11S. THAI SUBHA CHAPTER-III
• DFT converts the continuous function of ω to adiscrete function of ω.
• Thus, DFT allows us to perform frequencyanalysis on a digital computer.
DFT is important for two reasons:
1. To perform spectral analysis.
2. To perform filtering operations in frequency domain.
10/5/2012 12S. THAI SUBHA CHAPTER-III
10/5/2012
7
Compute the N-point DFT of the following finite length
sequence given as,
(a).
(b).
≤≤
≤≤=
1-Nn0 odd,-n 0,
1-Nn0 even,-n ,1)n(x
1-Nn0 ,ax(n) n≤≤=
10/5/2012 13S. THAI SUBHA CHAPTER-III
2
N
2
N.... 2, 0,kfor e
1)-....(N 2, 1, 0,kfor e)n(x)k(X)}n(x{DFT
1
0n
nk 2j
1N
0n
N
nk 2j
2N
2N
=
==
===
∑
∑−
=
π−
−
=
π−
≤≤
≤≤=
1-Nn0 odd,-n 0,
1-Nn0 even,-n ,1)n(x ).a(
==
otherwise 0,
2
N.... 2, 0,k ,
2
N
)k(X
10/5/2012 14S. THAI SUBHA CHAPTER-III
10/5/2012
8
1-Nn0 ,a x(n)(b). n≤≤=
∑−
=
π−
===1N
0n
N
nk 2j
1)-....(N 2, 1, 0,kfor e)n(x)k(X)}n(x{DFT
N
k 2j
N
N
k 2j
xNN
k 2j
N
1N
0n
n
N
k 2j
1N
0n
N
nk 2j
n
ae1
a1
ae1
ea1
ae
1)-....(N 2, 1, 0,kfor ea)k(X
π−
π−
π−
−
=
π−
−
=
π−
−
−=
−
−=
=
==
∑
∑
10/5/2012 15S. THAI SUBHA CHAPTER-III
1. Linearity :
The DFT obeys the law of linearity.
If
10/5/2012 16S. THAI SUBHA CHAPTER-III
10/5/2012
9
2. Periodicity
10/5/2012 17S. THAI SUBHA CHAPTER-III
3. Time reversal of a sequence:
10/5/2012 18S. THAI SUBHA CHAPTER-III
10/5/2012
10
4. Circular shift of a sequence:
10/5/2012 19S. THAI SUBHA CHAPTER-III
5. Circular frequency shift:
10/5/2012 20S. THAI SUBHA CHAPTER-III
10/5/2012
11
6. Multiplication of two sequences:
10/5/2012 21S. THAI SUBHA CHAPTER-III
7. DF of even and odd sequences : • The DFT of an even sequence is purely real.
• The DFT of an odd sequence is purely imaginary.
• Therefore DFT can be evaluated using cosine and sine transforms for even and
odd sequences respectively.
π=
π=
∑
∑
=
=
N
nk2sinx(n)X(k)
sequence, odd For
N
nk2cosx(n)X(k)
sequence,even For
1-N
0n
1-N
0n
10/5/2012 22S. THAI SUBHA CHAPTER-III
10/5/2012
12
N-point DFT of a finite duration sequence x(n)
of length L, where N ≥ L, is defined as,
The Inverse Discrete Fourier Transform (IDFT)
is given by,
( )∑−
=
==π
1N
0k
knj1)-...(N 1, 0, n ,e)k(X
N
1)n(x N
2
∑−
=
π−
===1N
0n
N
nk 2j
1)-....(N 2, 1, 0,kfor e)n(x)k(X)}n(x{DFT
10/5/2012 23S. THAI SUBHA CHAPTER-III
Compute 4-point DFT of causal three sample
sequence given by,
≤≤=
else 0,
2n0 ,3
1
)n(x
∑−
=
π−
==1N
0n
N
nk 2j
1)-....(N 2, 1, 0,kfor e)n(x)k(X
e)n(x)k(X3
0n
4
nk 2j
∑=
π−
=
10/5/2012 24S. THAI SUBHA CHAPTER-III
10/5/2012
13
+++=
+++=
π−
π−
π−
π−
π−
0ee13
1
e)3(xe)2(xe)1(x)0(x)k(X
k j2
k j
2
k 3j
k j2
k j
The values of X(k) can be evaluated for k = 0, 1, 2, 3
π−π+
π−
π+= k sinjk cos
2
k sinj
2
k cos1
3
1)k(X
[ ] 01 33
1 X(0) 0;k When ∠===
[ ]23
1
3
j 1j1
3
1 X(1) 1;k When
π−∠=−=−−==
10/5/2012 25S. THAI SUBHA CHAPTER-III
[ ] 03
1 111
3
1X(2) 2;k When ∠=+−==
[ ]23
1
3
j 1j1
3
1X(3) ;3k When
π∠==−+==
ππ
−=∠
=
π
∠∠π
−∠∠=
2 ,0 ,
2 0,X(k) ,Phase
3
1 ,
3
1 ,
3
1 1,X(k) Magnitude,
23
1 ,0
3
1 ,
23
1 0,1X(k)
by,given is x(n)sequence DFTpoint -4 The
10/5/2012 26S. THAI SUBHA CHAPTER-III
10/5/2012
14
ππ
−=∠
=
π
∠∠π
−∠∠=
2 ,0 ,
2 0,X(k) ,Phase
3
1 ,
3
1 ,
3
1 1,X(k) Magnitude,
23
1 ,0
3
1 ,
23
1 0,1X(k)
by,given is x(n)sequence DFTpoint -4 The
0 1 2 3 k
2
π
2
π−
Magnitude response Phase response
0 1 2 3 4 k
X(k) .
. ..
.
10/5/2012 27S. THAI SUBHA CHAPTER-III
• Ex. Pr:
Find 4 - point DFT of x(n) = {1, 2, 3, 4} and draw magnitude spectrum.
• Ans: X(k) = {10, 2.828, 2, 6.32}
2
k 3j
k j2
k j
2
k 3j
k j2
k j
e4e3e21
e)3(xe)2(xe)1(x)0(x)k(X
π−
π−
π−
π−
π−
π−
+++=
+++=
10/5/2012 28S. THAI SUBHA CHAPTER-III
10/5/2012
15
• Find IDFT for X(k) = {3, -1, 3, -1}
( )∑−
=
==π
1N
0k
knj1)-...(N 1, 0, n ,e)k(X
N
1)n(x N
2
( )∑=
==π
3
0k
knj3 2, 1, 0, n ,e)k(X
4
1)n(x N
2
( ) ( )[ ]njnjnj2
32 ee3e3
4
1)n(x
ππ
−+−=π
0} 2, 0, ,1{)n(x =
10/5/2012 29S. THAI SUBHA CHAPTER-III
• Find the 8-point DFT and IDFT for the given
sequence x(n) = {1, 2, 3, 4}
Solution: N-point DFT is given by,
∑−
=
π−
==1N
0n
N
nk 2j
1)-....(N 2, 1, 0,kfor e)n(x)k(X
∑=
π−
==7
0n
4
nk j
....7 2, 1, 0,kfor e)n(x)k(X
10/5/2012 30S. THAI SUBHA CHAPTER-III
10/5/2012
16
• For k = 0,
• For k = 1,
4
k 3j
2
k j
4
k j
2
k 7j
2
k 3j
4
k 5j
k j4
k 3j
2
k j
4
k j
e4e3e21 )k(X
e)7(xe)6(xe)5(x
e)4(xe)3(xe)2(xe)1(x)0(x)k(X
π−
π−
π−
π−
π−
π−
π−
π−
π−
π−
+++=
+++
++++=
104321 )0(X =+++=
7.2426 j-0.4142 -
e4e3e21 )1(X 4
3j
2
j
4
j
=
+++=
π−
π−
π−
10/5/2012 31S. THAI SUBHA CHAPTER-III
• For k = 2,
• For k = 3,
• For k = 4,
j2 2-
e4e3e21 )2(X 2
3j
j2
j
+=
+++=
π−
π−
π−
j1.2426 - 2.4142
e4e3e21 )3(X 4
9j
2
3j
4
3j
=
+++=
π−
π−
π−
2- 4-32-1
e4e3e21 )4(X 3j2jj
=+=
+++=π−π−π−
4
k 3j
2
k j
4
k j
e4e3e21 )k(X π
−π
−π
−
+++=
10/5/2012 32S. THAI SUBHA CHAPTER-III
10/5/2012
17
• For k = 5,
• For k = 6,
• For k = 7,
• The 8 - point DFT of the given x(n) is,
4
k 3j
2
k j
4
k j
e4e3e21 )k(X π
−π
−π
−
+++=
j1.2426 2.4142
e4e3e21 )5(X 4
15j
2
5j
4
5j
+=
+++=
π−
π−
π−
j2- 2-
e4e3e21 )6(X 2
9j
3j2
3j
=
+++=
π−
π−
π−
7.2426 j0.4142 -
e4e3e21 )7(X 4
21j
2
7j
4
7j
+=
+++=
π−
π−
π−
( ) ( ) ( ){
( ) ( ) ( ) ( )}7.2426 j0.4142 - ,j2- 2- ,j1.2426 2.4142 ,2-
,j1.2426 - 2.4142 ,j2 2- ,7.2426 j-0.4142 - 10,X(k)
++
+=
10/5/2012 33S. THAI SUBHA CHAPTER-III
• Pr.: Find the circular convolution of the given
data sequences,
x1(n) = {1, 3, 5, 7} & x2(n) = {2, 4, 6,8}
x1(0)=1
x1(1)=3
x1(3)=7
x1(2)=5
.
.
.
.x2(1)=4
x2(0)
=2
x2(3)=8
x2(2)
=6
+
+
+
+
y(0) = x1(0)x 2(0) + x1(1) x2(3)
+ x1(2) x2(2) + x1(3) x2(1)
= 2 + 28 + 30 +24
= 84
∑−
=
−=1N
0k
N21 )]kn([x)k(x)n(y
10/5/2012 34S. THAI SUBHA CHAPTER-III
10/5/2012
18
x1(n) = {1, 3, 5, 7} & x2(n) = {2, 4, 6,8}
x1(0)=1
x1(1)=3
x1(3)=7
x1(2)=5
.
.
.
.x2(1)
=4
x2(0)=2
x2(3)
=8
x2(2)=6
+
+
+
+
y(1) = x1(0)x 2(1) + x1(1) x2(0)
+ x1(2) x2(3) + x1(3) x2(2)
= 4 + 42 + 40 +6
= 92
10/5/2012 35S. THAI SUBHA CHAPTER-III
x1(n) = {1, 3, 5, 7} & x2(n) = {2, 4, 6,8}
x1(0)=1
x1(1)=3
x1(3)=7
x1(2)=5
.
.
.
.+
+
+
+
y(2) = x1(0)x 2(2) + x1(1) x2(1)
+ x1(2) x2(0) + x1(3) x2(3)
= 6 + 56 + 10 +12
= 84
x2(1)=4
x2(0)
=2
x2(3)=8
x2(2)
=6
10/5/2012 36S. THAI SUBHA CHAPTER-III
10/5/2012
19
x1(n) = {1, 3, 5, 7} & x2(n) = {2, 4, 6,8}
y(n) = {84, 92, 84, 60}
x1(0)=1
x1(1)=3
x1(3)=7
x1(2)=5
.
.
.
.+
+
+
+
y(3) = x1(0)x 2(3) + x1(1) x2(2)
+ x1(2) x2(1) + x1(3) x2(0)
= 8 + 14 + 20 +18
= 60
x2(1)
=4
x2(0)=2
x2(3)
=8
x2(2)=6
10/5/2012 37S. THAI SUBHA CHAPTER-III
• Method for computing DFT with reduced number of calculations.
• Decomposition of N-point DFT into successively smaller DFTs.
• In an N-point sequence, if N = rm, then sequence can be decimated into r-point sequences.
• For each r-point sequence, r-point DFTs are computed.
• From the results of r-point DFTs, r2-point DFTs are computed.
• From the results of r2-point DFTs, r3-point DFTs are computed and so on until we get rm-point DFT.
• Hence, m - number stages of computation and r - radix of the FFT algorithm.
10/5/2012 38S. THAI SUBHA CHAPTER-III
10/5/2012
20
RadixRadix--2 FFT2 FFT
• Efficient algorithm for computing N-point DFT.
• N-point sequence is decimated into 2-point sequences and the 2-point DFT for each decimated sequence is computed.
• From the results of 2-point DFTs, the 4-point DFTs are computed.
• From the results of 4-point DFTs, the 8-point DFTs are computed and so on until we get N-point DFT.
10/5/2012 39S. THAI SUBHA CHAPTER-III
• For performing radix-2 FFT, the value of N
should be such that, N - even.
– Total number of complex additions = Nlog2N
– Total number of complex multiplications
= (N/2) log2N.
�For DFT
�Total number of complex additions = N(N-1)
�Total number of complex multiplications = N2
10/5/2012 40S. THAI SUBHA CHAPTER-III
10/5/2012
21
N DFT FFT
4 16 8
8 64 24
16 256 64
32 1024 160
64 4096 384
The number of complex multiplications to perform an
N-point DFT using the conventional (DFT) algorithm
and the FFT algorithm.
10/5/2012 41S. THAI SUBHA CHAPTER-III
• Time domain N-point sequence is decimated
into 2 - point sequences - DIT.DIT.
DIF:DIF:� N-point sequences---N/2-point sequences---
N/4-point sequences are obtained by
decimation of frequency domain sequences.
10/5/2012 42S. THAI SUBHA CHAPTER-III
10/5/2012
22
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 43
DITDIT--FFT FFT ImplementationImplementation
�� To efficiently implement the FFT To efficiently implement the FFT algorithm a few observations are made:algorithm a few observations are made:
�� Each stage has the same number of Each stage has the same number of butterflies (number of butterflies = N/2, N is butterflies (number of butterflies = N/2, N is number of points).number of points).
�� The number of DFT groups per stage is equal The number of DFT groups per stage is equal to (N/2to (N/2stagestage).).
�� The The number of butterflies in the group is number of butterflies in the group is equal to 2equal to 2stagestage--11..
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 44
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Example: 8 point FFTExample: 8 point FFT
FFT
10/5/2012
23
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 45
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 46
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 1= 1
Stage 1Stage 1
FFT
10/5/2012
24
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 47
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 2= 2
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2Stage 1Stage 1
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 48
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
FFT
10/5/2012
25
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 49
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1:Stage 1:
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 50
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 1= 1
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
Block 1Block 1
FFT
10/5/2012
26
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 51
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 2= 2
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
Block 1Block 1
Block 2Block 2
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 52
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 3= 3
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
Block 1Block 1
Block 2Block 2
Block 3Block 3
FFT
10/5/2012
27
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 53
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
Block 1Block 1
Block 2Block 2
Block 3Block 3
Block 4Block 4
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 54
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 1= 1
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
Block 1Block 1
FFT
10/5/2012
28
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 55
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
Block 1Block 1
Block 2Block 2
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 56
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
Block 1Block 1
FFT
10/5/2012
29
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 57
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1:Stage 1:
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 58
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1: NStage 1: Nbtfbtf = 1= 1
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
FFT
10/5/2012
30
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 59
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1: NStage 1: Nbtfbtf = 1= 1
�� Stage 2: NStage 2: Nbtfbtf = 1= 1
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 60
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1: NStage 1: Nbtfbtf = 1= 1
�� Stage 2: NStage 2: Nbtfbtf = 2= 2
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
FFT
10/5/2012
31
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 61
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1: NStage 1: Nbtfbtf = 1= 1
�� Stage 2: NStage 2: Nbtfbtf = 2= 2
�� Stage 3: NStage 3: Nbtfbtf = 1= 1
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 62
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1: NStage 1: Nbtfbtf = 1= 1
�� Stage 2: NStage 2: Nbtfbtf = 2= 2
�� Stage 3: NStage 3: Nbtfbtf = 2= 2
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
FFT
10/5/2012
32
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 63
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1: NStage 1: Nbtfbtf = 1= 1
�� Stage 2: NStage 2: Nbtfbtf = 2= 2
�� Stage 3: NStage 3: Nbtfbtf = 3= 3
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
FFT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 19, Slide 64
Example: 8 point FFTExample: 8 point FFT
(1)(1) Number of stages:Number of stages:
�� NNstagesstages = 3= 3
(2)(2) Blocks/stage:Blocks/stage:
�� Stage 1: NStage 1: Nblocksblocks = 4= 4
�� Stage 2: NStage 2: Nblocksblocks = 2= 2
�� Stage 3: NStage 3: Nblocksblocks = 1= 1
(3)(3) B’flies/block:B’flies/block:
�� Stage 1: NStage 1: Nbtfbtf = 1= 1
�� Stage 2: NStage 2: Nbtfbtf = 2= 2
�� Stage 3: NStage 3: Nbtfbtf = 4= 4
FFT ImplementationFFT Implementation
WW00 --11
WW00 --11
WW00 --11
WW00 --11
WW22 --11
WW00
--11WW00
WW22 --11
--11WW00
WW11 --11
WW00
WW33 --11
--11WW22
--11
Stage 2Stage 2 Stage 3Stage 3Stage 1Stage 1
�� Decimation in time FFT:Decimation in time FFT:
�� Number of stages = logNumber of stages = log22NN
�� Number of blocks/stage = N/2Number of blocks/stage = N/2stagestage
�� Number of butterflies/block = 2Number of butterflies/block = 2stagestage--11
FFT
10/5/2012
33
Compute 2-
point DFT
Compute 2-
point DFT
Compute 2-
point DFT
Compute 2-
point DFT
Compute 4-
point DFT
Compute 4-
point DFT
Compute 8-
point DFT
x(0)
x(5)
x(2)
x(3)
x(7)
x(6)
x(1)
x(4)
X(0)
X(1)
X(2)
X(3)
X(4)
X(5)
X(6)
X(7)
10/5/2012 65S. THAI SUBHA CHAPTER-III
• Initially, do bit reversal for grouping even &
odd sequences.
• Find Twiddle factor,
– First stage, (N = 2), k = 0, 1
– Second stage, (N = 4), k = 0, 1, 2, 3
N
kj2 -
ke W
N
π
=
1e W 2
)0(j2 -
0
2==
π
j - e W
1 e W
4
j2 -
1
4
4
)0(j2 -
0
4
==
==
π
π
10/5/2012 66S. THAI SUBHA CHAPTER-III
10/5/2012
34
– Third stage, (N = 8), k = 0, 1, ..7
• First stage output:
707.0j707.0e W j; - e W
707.0j707.0e W 1; e W
8
j6 -
3
88
j4 -
2
8
8
j2 -
1
88
)0(j2 -
0
8
−−====
−====
ππ
ππ
)4(xW)0(x)1(V
)4(xW)0(x)0(V
0
211
0
211
−=
+=
)6(xW)2(x)1(V
)6(xW)2(x)0(V
0
212
0
212
−=
+=
)5(xW)1(x)1(V
)5(xW)1(x)0(V
0
221
0
221
−=
+=
)7(xW)3(x)1(V
)7(xW)3(x)0(V
0
222
0
222
−=
+=
V11(0)
V11(1)0
2W
x(0)
X(4)
Butterfly diagram
-1
10/5/2012 67S. THAI SUBHA CHAPTER-III
• Second stage output:
)1(VW)1(V)3(F
)0(VW)0(V)2(F
)1(VW)1(V)1(F
)0(VW)0(V)0(F
12
1
4111
12
0
4111
12
1
4111
12
0
4111
−=
−=
+=
+=
)1(VW)1(V)3(F
)0(VW)0(V)2(F
)1(VW)1(V)1(F
)0(VW)0(V)0(F
22
1
4212
22
0
4212
22
1
4212
22
0
4212
−=
−=
+=
+=
10/5/2012 68S. THAI SUBHA CHAPTER-III
10/5/2012
35
• Third stage output:
)3(FW)3(F)7(X
)2(FW)2(F)6(X
)1(FW)1(F)5(X
)0(FW)0(F)4(X
)3(FW)3(F)3(X
)2(FW)2(F)2(X
)1(FW)1(F)1(X
)0(FW)0(F)0(X
2
3
81
2
2
81
2
1
81
2
0
81
2
3
81
2
2
81
2
1
81
2
0
81
−=
−=
−=
−=
+=
+=
+=
+=
10/5/2012 69S. THAI SUBHA CHAPTER-III
Find 8-point DFT of the sequence
x(n) = {1, 2, 2,1, 1, 2, 2, 1} using DIT-FFT algorithm.
Solution:
Bit reversal: Group odd and even sequences:
Normal
Form
Bit reversed
Form
x(0) (000) 1 (000) x(0) 1
x(1) (001) 2 (100) x(4) 1
x(2) (010) 2 (010) x(2) 2
x(3) (011) 1 (110) x(6) 2
x(4) (100) 1 (001) x(1) 2
x(5) (101) 2 (101) x(5) 2
x(6) (110) 2 (011) x(3) 1
x(7) (111) 1 (111) x(7) 1
10/5/2012 70S. THAI SUBHA CHAPTER-III
10/5/2012
36
• Find Twiddle factor:
• First stage output:
1e W 2
)0(j2 -
0
2==
π
j - e W 1; e W 4
j2 -
1
44
)0(j2 -
0
4 ====
ππ
707.0j707.0e W j; - e W
707.0j707.0e W 1; e W
8
j6 -
3
88
j4 -
2
8
8
j2 -
1
88
)0(j2 -
0
8
−−====
−====
ππ
ππ
0)4(xW)0(x)1(V
2)4(xW)0(x)0(V
0
211
0
211
=−=
=+=
0)6(xW)2(x)1(V
4)6(xW)2(x)0(V
0
212
0
212
=−=
=+=
0)5(xW)1(x)1(V
4)5(xW)1(x)0(V
0
221
0
221
=−=
=+=
0)7(xW)3(x)1(V
2)7(xW)3(x)0(V
0
222
0
222
=−=
=+=
Bit reversed
Form
(000) x(0) 1
(100) x(4) 1
(010) x(2) 2
(110) x(6) 2
(001) x(1) 2
(101) x(5) 2
(011) x(3) 1
(111) x(7) 1
10/5/2012 71S. THAI SUBHA CHAPTER-III
1
x(0)
x(4)
x(2)
x(6) 1
1
x(1)
x(5)
x(3)
x(7)1
-1
-1
-1
-1
2
0
4
0
4
0
2
0
Bit reversed
Form
(000) x(0) 1
(100) x(4) 1
(010) x(2) 2
(110) x(6) 2
(001) x(1) 2
(101) x(5) 2
(011) x(3) 1
(111) x(7) 1
0
2W
0
2W
0
2W
0
2W
10/5/2012 72S. THAI SUBHA CHAPTER-III
10/5/2012
37
• Second stage output:
0)1(VW)1(V)3(F
2)0(VW)0(V)2(F
0)1(VW)1(V)1(F
6)0(VW)0(V)0(F
12
1
4111
12
0
4111
12
1
4111
12
0
4111
=−=
−=−=
=+=
=+=
0)1(VW)1(V)3(F
2)0(VW)0(V)2(F
0)1(VW)1(V)1(F
6)0(VW)0(V)0(F
22
1
4212
22
0
4212
22
1
4212
22
0
4212
=−=
=−=
=+=
=+=
0)4(xW)0(x)1(V
2)4(xW)0(x)0(V
0
211
0
211
=−=
=+=
0)6(xW)2(x)1(V
4)6(xW)2(x)0(V
0
212
0
212
=−=
=+=
0)5(xW)1(x)1(V
4)5(xW)1(x)0(V
0
221
0
221
=−=
=+=
0)7(xW)3(x)1(V
2)7(xW)3(x)0(V
0
222
0
222
=−=
=+=
10/5/2012 73S. THAI SUBHA CHAPTER-III
1
1x(0)
x(4)
1x(2)
x(6) 1
1
1x(1)
x(5)
1x(3)
x(7)1
-1
-1
-1
-1
2
0
4
0
4
0
2
0
1
1
-j
-j
0
4W
1
4W
0
4W
1
4W
-1
-1
-1
-1
6
0
-2
0
6
0
0
2
0
2W
0
2W
0
2W
0
2W
10/5/2012 74S. THAI SUBHA CHAPTER-III
10/5/2012
38
• Third stage output:
0)3(FW)3(F)7(X
j22)2(FW)2(F)6(X
0)1(FW)1(F)5(X
0)0(FW)0(F)4(X
0)3(FW)3(F)3(X
j22)2(FW)2(F)2(X
0)1(FW)1(F)1(X
12)0(FW)0(F)0(X
2
3
81
2
2
81
2
1
81
2
0
81
2
3
81
2
2
81
2
1
81
2
0
81
=−=
+−=−=
=−=
=−=
=+=
−−=+=
=+=
=+=
0)1(VW)1(V)3(F
2)0(VW)0(V)2(F
0)1(VW)1(V)1(F
6)0(VW)0(V)0(F
12
1
4111
12
0
4111
12
1
4111
12
0
4111
=−=
−=−=
=+=
=+=
0)1(VW)1(V)3(F
2)0(VW)0(V)2(F
0)1(VW)1(V)1(F
6)0(VW)0(V)0(F
22
1
4212
22
0
4212
22
1
4212
22
0
4212
=−=
=−=
=+=
=+=
10/5/2012 75S. THAI SUBHA CHAPTER-III
1
1x(0)
x(4)
1x(2)
x(6) 1
1
1x(1)
x(5)
1x(3)
x(7)1
-1
-1
-1
-1
2
0
4
0
4
0
2
0
1
1
-j
-j
0
4W
1
4W
0
4W
1
4W
-1
-1
-1
-1
6
0
-2
0
6
0
0
2
0
8W
1
8W
2
8W
3
8W
1
-j
0.707 - j 0.707
- 0.707 - j 0.707
-1
-1
-1
-1
X(0)=12
X(1)= 0
X(3)= 0
X(5)= 0
X(7)= 0
X(4)=0
X(2)
= - 2–j2
X(6)
= - 2+j2
X(k) = {12, 0, (-2 - j2), 0, 0, 0, (-2 + j2), 0}
0
2W
0
2W
0
2W
0
2W
10/5/2012 76S. THAI SUBHA CHAPTER-III
10/5/2012
39
Find 8-point DFT of the sequence x(n) = {2, 1, 4, 6, 5, 8, 3, 9}
using DIT-FFT algorithm.
Solution:
Bit reversal: Group odd and even sequences:
Normal
Form
Bit reversed
Form
x(0) (000) 2 (000) x(0) 2
x(1) (001) 1 (100) x(4) 5
x(2) (010) 4 (010) x(2) 4
x(3) (011) 6 (110) x(6) 3
x(4) (100) 5 (001) x(1) 1
x(5) (101) 8 (101) x(5) 8
x(6) (110) 3 (011) x(3) 6
x(7) (111) 9 (111) x(7) 9
10/5/2012 77S. THAI SUBHA CHAPTER-III
• Find Twiddle factor:
• First stage output:
1e W 2
)0(j2 -
0
2==
π
j - e W 1; e W 4
j2 -
1
44
)0(j2 -
0
4 ====
ππ
707.0j707.0e W j; - e W
707.0j707.0e W 1; e W
8
j6 -
3
88
j4 -
2
8
8
j2 -
1
88
)0(j2 -
0
8
−−====
−====
ππ
ππ
3)4(xW)0(x)1(V
7)4(xW)0(x)0(V
0
211
0
211
−=−=
=+=
1)6(xW)2(x)1(V
7)6(xW)2(x)0(V
0
212
0
212
=−=
=+=
7)5(xW)1(x)1(V
9)5(xW)1(x)0(V
0
221
0
221
−=−=
=+=
3)7(xW)3(x)1(V
15)7(xW)3(x)0(V
0
222
0
222
−=−=
=+=
Bit
reversed
Form
(000) x(0) 2
(100) x(4) 5
(010) x(2) 4
(110) x(6) 3
(001) x(1) 1
(101) x(5) 8
(011) x(3) 6
(111) x(7) 9
10/5/2012 78S. THAI SUBHA CHAPTER-III
10/5/2012
40
1
1x(0)
x(4)
1x(2)
x(6) 1
1
1x(1)
x(5)
1x(3)
x(7)1
-1
-1
-1
-1
7
-3
7
1
9
-7
15
-3
Bit
reversed
Form
(000) x(0) 2
(100) x(4) 5
(010) x(2) 4
(110) x(6) 3
(001) x(1) 1
(101) x(5) 8
(011) x(3) 6
(111) x(7) 9
0
2W
0
2W
0
2W
0
2W
10/5/2012 79S. THAI SUBHA CHAPTER-III
• Second stage output:
j3)1(VW)1(V)3(F
0)0(VW)0(V)2(F
j3)1(VW)1(V)1(F
14)0(VW)0(V)0(F
12
1
4111
12
0
4111
12
1
4111
12
0
4111
+−=−=
=−=
−−=+=
=+=
3j7)1(VW)1(V)3(F
6)0(VW)0(V)2(F
3j7)1(VW)1(V)1(F
24)0(VW)0(V)0(F
22
1
4212
22
0
4212
22
1
4212
22
0
4212
−−=−=
−=−=
+−=+=
=+=
3)4(xW)0(x)1(V
7)4(xW)0(x)0(V
0
211
0
211
−=−=
=+=
1)6(xW)2(x)1(V
7)6(xW)2(x)0(V
0
212
0
212
=−=
=+=
7)5(xW)1(x)1(V
9)5(xW)1(x)0(V
0
221
0
221
−=−=
=+=
3)7(xW)3(x)1(V
15)7(xW)3(x)0(V
0
222
0
222
−=−=
=+=
10/5/2012 80S. THAI SUBHA CHAPTER-III
10/5/2012
41
1
1x(0)
x(4)
1x(2)
x(6) 1
1
1x(1)
x(5)
1x(3)
x(7)1
-1
-1
-1
-1
7
-3
7
1
9
-7
15
-3
1
1
-j
-j
0
4W
1
4W
0
4W
1
4W
-1
-1
-1
-1
14
-3-j
0
-3+j
24
-7+j3
-7-j3
-6
0
2W
0
2W
0
2W
0
2W
10/5/2012 81S. THAI SUBHA CHAPTER-III
• Third stage output:
07.6j828.5)3(FW)3(F)7(X
6j)2(FW)2(F)6(X
807.0j172.0)1(FW)1(F)5(X
10)0(FW)0(F)4(X
807.0j172.0)3(FW)3(F)3(X
6j)2(FW)2(F)2(X
07.6j828.5)1(FW)1(F)1(X
38)0(FW)0(F)0(X
2
3
81
2
2
81
2
1
81
2
0
81
2
3
81
2
2
81
2
1
81
2
0
81
−−=−=
−=−=
−−=−=
−=−=
+−=+=
=+=
+−=+=
=+=
j3)1(VW)1(V)3(F
0)0(VW)0(V)2(F
j3)1(VW)1(V)1(F
14)0(VW)0(V)0(F
12
1
4111
12
0
4111
12
1
4111
12
0
4111
+−=−=
=−=
−−=+=
=+=
3j7)1(VW)1(V)3(F
6)0(VW)0(V)2(F
3j7)1(VW)1(V)1(F
24)0(VW)0(V)0(F
22
1
4212
22
0
4212
22
1
4212
22
0
4212
−−=−=
−=−=
+−=+=
=+=
10/5/2012 82S. THAI SUBHA CHAPTER-III
10/5/2012
42
1
1x(0)
x(4)
1x(2)
x(6) 1
1
1x(1)
x(5)
1x(3)
x(7)1
-1
-1
-1
-1
2
0
4
0
4
0
2
0
1
1
-j
-j
0
4W
1
4W
0
4W
1
4W
-1
-1
-1
-1
6
0
-2
0
6
0
0
2
X(k) = {38, -5.828+j6.07, j6, -0.172+j8.07, -10,
-0.172-j8.07, -j6, -5.828-j6.07}10/5/2012 83S. THAI SUBHA CHAPTER-III
0
8W
1
8W
2
8W
3
8W
1
-j
0.707 - j 0.707
- 0.707 - j 0.707
X(0)=38
X(1)=
-5.828+j6.07
X(3)
=- 0.172+j8.07
X(5)=
- 0.172-j8.07
X(7)=
-5.828-j6.07
X(4)= -10
X(2) = j6
X(6)= -j6
-1
-1
-1
-1
10/5/2012 84S. THAI SUBHA CHAPTER-III
10/5/2012
43
1
1x(0)
x(4)
1x(2)
x(6) 1
1
1x(1)
x(5)
1x(3)
x(7)1
-1
-1
-1
-1
7
-3
7
1
9
-7
15
-3
1
1
-j
-j
0
4W
1
4W
0
4W
1
4W
-1
-1
-1
-1
14
-3-j
0
-3+j
24
-7+j3
-7-j3
-6
0
2W
0
2W
0
2W
0
2W
0
8W
1
8W
2
8W
3
8W
1
-j
0.707 - j 0.707
- 0.707 - j 0.707
X(0)=38
X(1)=
-5.828+j6.07
X(3)
=- 0.172+j8.07
X(5)=
- 0.172-j8.07
X(7)=
-5.828-j6.07
X(4)= -10
X(2) = j6
X(6)= -j6
-1
-1
-1
-1
X(k) = {38, -5.828+j6.07, j6, -0.172+j8.07, -10,
-0.172-j8.07, -j6, -5.828-j6.07}10/5/2012 85S. THAI SUBHA CHAPTER-III
Difference between DIT and DIF FFT algorithmDifference between DIT and DIF FFT algorithm
• In this algorithm, the N-point time domain sequence is converted to two groups of N/2 point sequences, then each N/2 point sequence is converted to two groups of N/4-point sequences.
• This process continues until we get N/2 groups of 2-point sequences. Finally 2-point DFT of each 2-point sequence is computed.
• In DIF, the input is in natural order and the output is in bit reversed form.
• Complex multiplication takes place after addition /subtraction
10/5/2012 86S. THAI SUBHA CHAPTER-III
10/5/2012
44
Compute
two groups
of 4-point
DFT
Compute 2-
point
sequence
Compute 2-
point
sequence
Compute 2-
point
sequence
Compute 2-
point
sequence
Compute
two groups
of 2-point
DFT
Compute
two groups
of 2-point
DFT
x(0)
x(4)
x(2)
x(6)
x(5)
x(1)
x(3)
x(7)
X(0)
X(1)
X(2)
X(3)
X(4)
X(5)
X(6)
X(7)
g1(0)
g1(1)
g1(3)
g1(2)
g2(0)
g2(1)
g2(2)
g2(3)
d11(0)
d11(1)
d12(0)
d12(1)
d21(0)
d21(1)
d22(0)
d22(1)
10/5/2012 87S. THAI SUBHA CHAPTER-III
• First stage output:
[ ]
[ ]
[ ]
[ ] 3
82
2
82
1
82
0
82
1
1
1
1
W)7(x)3(x)3(g
W)6(x)2(x)2(g
W)5(x)1(x)1(g
W)4(x)0(x)0(g
)7(x)3(x)3(g
)6(x)2(x)2(g
)5(x)1(x)1(g
)4(x)0(x)0(g
−=
−=
−=
−=
+=
+=
+=
+=
10/5/2012 88S. THAI SUBHA CHAPTER-III
10/5/2012
45
• Second stage output:
• Third stage output:
[ ]
[ ] 1
41112
0
41112
1111
1111
W)3(g)1(g)1(d
W)2(g)0(g)0(d
)3(g)1(g)1(d
)2(g)0(g)0(d
−=
−=
+=
+=
[ ]
[ ] 1
42222
0
42222
2221
2221
W)3(g)1(g)1(d
W)2(g)0(g)0(d
)3(g)1(g)1(d
)2(g)0(g)0(d
−=
−=
+=
+=
[ ] 0
21111
1111
W)1(d)0(d)4(X
)1(d)0(d)0(X
−=
+=
[ ] 0
21212
1212
W)1(d)0(d)6(X
)1(d)0(d)2(X
−=
+=
[ ] 0
22121
2121
W)1(d)0(d)5(X
)1(d)0(d)1(X
−=
+=
[ ] 0
22222
2222
W)1(d)0(d)7(X
)1(d)0(d)3(X
−=
+=
10/5/2012 89S. THAI SUBHA CHAPTER-III
• Compute 8-point DFT using DIF FFT
algorithm for the following sequence:
x(n)={1, 2, 3, 4, 4, 3, 2, 1}
10/5/2012 90S. THAI SUBHA CHAPTER-III
10/5/2012
46
0
8W
1
8W
2
8W
3
8W
1
-j
0.707 - j 0.707
- 0.707 - j 0.707
x(0)
x(1)
x(2)
x(3)
x(4)
x(5)
x(6)
x(7)
1
1
-j
-j
0
4W
1
4W
0
4W
1
4W
1
1
1
1
1
1
1
1
5
-3
5
5
5
-j
-0.707 + j 0.707
-2.121 – j2.121
10
10
0
0
-2.828 -j 1.414
2.828 -j 1.414
-3-j
-3+j
20
0
0
0
-5.828
-j 2.414
-0.172
+j 0.414
-0.172
-j 0.414
-5.828
+j 2.414
x(n)={1, 2, 3, 4, 4, 3, 2, 1}
X(k) = {20, -5.828-j2.414, 0, -0.172-j0.414, 0, -0.172+j0.414,
0, -5.828+j2.414}10/5/2012 91S. THAI SUBHA CHAPTER-III