dft : the discrete fourier transform
TRANSCRIPT
DFT : The Discrete Fourier Transform
Chapter 8
2
Roots of Unity
Definition: An Nth root of unity is a complex number x such that xN = 1
The Nth roots of unity are: ω0, ω1, …, ωN-1 where ω = e 2π j/N.Proof: (ωk)N = (e 2π j k / N) N = (e π j ) 2k = (-1) 2k = 1.
In DSP, we often take the principal root of unity as
ω0 = 1
ω1
ω2 = i
ω3
ω4 = -1
ω5
ω6 = -i
ω7
N = 8
2 /j NNW e π−=
8W
58W
3
Properties of N-th Root of Unity
There are exactly N N-th roots of unity: WN0, WN
1 , WN2 , …, WN
N-1
WN is called the principal N-th root of unityThe inverse of WN : WN
-1 = WNN-1
Proof: WN WNN-1 = WN
N =1WdN
dk = WNk
Proof: : WdNdk = = = WN
K
WNN/2 = W2 = -1 Proof: WN
N/2 = W(N/2)*2N/2 = (by property 3) W2 = = -1
If N>0 and N is even, then (WNk )2 = WN/2
k , k = 0, 1, …, N–1
2 /j NNW e π−=
2 /( )j dN dke π− 2 /( )j N ke π−
2 / 2je π−
1
0
1
0
0( )
( ) 1 ( ) 1Proof : ( ) 01 1
Nk n
Nn
k N N kNk n N N
N k kn N N
k rNW
N k rN
W WWW W
−
=
−
=
≠⎧= ⎨ =⎩
− −= = =
− −
∑
∑
r = an integer
4
Circular Shift of a Sequence
Consider length-N sequences defined for
Values of such sequences are not defined for n < 0 and If x[n] is such a sequence, then for any arbitrary integer , the shifted sequenceis no longer defined for the rangeWe thus need to define another type of a shift that will always keep the shifted sequence in the range
Nn ≥
10 −≤≤ Nn
on][][ onnxnx −=1
10 −≤≤ Nn
10 −≤≤ Nn
5
The desired shift, called the circular shift, is defined using a modulo operation:
For (right circular shift), the above equation implies
[ ] [(( )) ]c o Nx n x n n= −
0>on
⎩⎨⎧
+−−= ],[
],[][ nnNxnnxnxo
oc
oo
nnNnn<≤
−≤≤0for
1for
0[ ] [ ] [ ] [ ]cx n x n x n n x n−periodicextension
shift take oneperiod
6
Illustration of the concept of a circular shift
][nx6[(( 1)) ]x n −
6[(( 5)) ]x n= + 6[(( 2)) ]x n= +
6[(( 4)) ]x n −
7
As can be seen from the previous figure, a right circular shift by is equivalent to a left circular shift by sample periods
A circular shift by an integer number greater than N is equivalent to a circular shift by
ononN −
on(( ))o Nn
8
Circular Time Shift
Points shifted out to the right don’t disappear – they come in from the left
Like a ‘barrel shifter’:
5-pt sequence
‘delay’ by 2g[n]
1 2 3 4 n
g[((n-2))5]
1 2 3 4 n
origin pointer
9
Example: Circular Shift
10
Circular Time Reversal
Time reversal is tricky in ‘modulo-N ’ indexing - not reversing the sequence:
Zero point stays fixed; remainder flips
1 2 3 4 n5 6 7 8 9 10 11-7 -6 -5 -4 -3 -2 -1
[ ]x n
5-pt sequence made periodic
Time-reversedperiodic sequence
1 2 3 4 n5 6 7 8 9 10 11-7 -6 -5 -4 -3 -2 -1
[ ](( ))Nx n−
[ ] [ ] [ ] [ ]rx n x n x n x n−periodicextension
reversal take oneperiod
Discrete-Time Fourier Transform (DTFT)
The DTFT is useful for the theoretical analysis of signals and systems.But, the definition of DTFT is
The numerical computation of DTFT has several problems:Problem 1: The summation over n is infiniteProblem 2: The independent variable ω is continuousDTFT and z-transform are not numerically computable transforms.
ApproachesProblem 1 requirement 1 : If the sequence had only a finite number of non-zero terms!
This might be a good assumption since in many cases, we concern only a finite duration of the signal
• The signal itself might be of a finite duration• Only a segment is of interest at a time• Signal is periodic and thus has only finite number of
unique valuesProblem 2 Requirement 2 : If we needed to compute the spectra only at a finite number of frequencies!
This can be achieved by sampling the DTFT in the frequency domain or the z-transform on the unit circle.The remaining issue is that what will happen for the spectra at other frequencies. Aliasing?
DTFS for a periodic sequence satisfy both requirements
Analysis equation
Synthesis equation
But, DTFS is defined for only periodic signals!!!
Way to get there:Analyze periodic sequences on the basis that a periodic sequence can always be represented by a linear combination of harmonically related complex exponentials Discrete Fourier Series (DFS).Extend the DFS to finite-duration sequences Discrete Fourier Transform (DFT), the solution to the two problems!
[ ]1
0
1[ ] , ,1, 10 ,knN
N
kNx n X k W n
N−
=
−
= −= ∑
[ ]0
1
[ ] , 0,1, , 1N
knN
nNX k x n W k
=
−
= = −∑
TerminologyDFS = DTFS
Discrete Fourier Transform (DFT)
For finite duration sequences, an alternative Fourier representation is DFT (Discrete Fourier Transform)
The summation over n is finiteDFT itself is a sequence, rather than a function of a continuous variableTherefore, DFT is computable and important for the implementation of DSP systemsDFT corresponds to the samples of the Fourier transform
DFT is very important in DSP systems since there is FFT (Fast Fourier Transform), an extremely efficient and fast way of computing DFT.
8.1 Discrete Fourier Series (DFS)
A discrete-time signal is periodic if
Fundamental period: the smallest positive integer N
Fundamental frequency:
The DFS can represent a periodic discrete signal by a linear combination of harmonically related complex exponentials.
The Fourier series representation of continuous-time periodic signals require infinite number of complex exponentials.
But for discrete-time periodic signals, we have
Due to the periodicity of the complex exponentials, we only need Nexponentials for discrete time Fourier series
][~][~ Nnxnx +=
N/20 πω =
( )( ) ( ) ( ) ( )2 / 2 / 2 2 /j N k mN n j N kn j mn j N kne e e eπ π π π+ = =
DFS analysis and synthesis pair is expressed as follows:
The Fourier series coefficients can be obtained via
For convenience we may use the notation
Analysis equation
Synthesis equation
[ ] ( ) [ ] ( )1
2 / 2 /
0
1 1[ ]N
j N kn j N kn
k N kx n X k e X k e
N Nπ π
−
=< > =
= =∑ ∑
[ ] ( )1
2 /
0[ ]
Nj N kn
nX k x n e π
−−
=
=∑
( )2 /j NNW e π−=
[ ]1
0
1[ ]N
knN
kx n X k W
N
−−
=
= ∑
[ ]1
0[ ]
Nkn
Nn
X k x n W−
=
=∑
Example 8.1 : DFS of a periodic impulse train
Since the period of the signal is N
We can represent the signal with the DFS coefficients as
[ ] 1[ ]
0r
n rNx n n rN
elseδ
∞
=−∞
=⎧= − =⎨
⎩∑
[ ] ( ) ( ) ( )1 1
2 / 2 / 2 / 0
0 0[ ] [ ] 1
N Nj N kn j N kn j N k
n nX k x n e n e eπ π πδ
− −− − −
= =
= = = =∑ ∑
[ ] ( )1
2 /
0
1[ ]N
j N kn
r kx n n rN e
Nπδ
∞ −
=−∞ =
= − =∑ ∑
Example 8.2 : Here let the Fourier series coefficients be the periodic impulse train Y[k] , and given by this equation:
Substituting Y[k] into DFS equation gives
Comparing this result with the results for Example 8.1, we see that Y[k]=Nx[k] and y[n]=X[n].
[ ] [ ]r
Y k N k rNδ+∞
=−∞
= −∑
10
0
1[ ] [ ] 1N
knN N
ky n N k W W
Nδ
−−
=
= = =∑
Example 8.3 : DFS of an periodic rectangular pulse train
The DFS coefficients
[ ] ( )( )
( )( ) ( )
( )2 /10 54
2 /10 4 /102 /10
0
sin / 21sin /101
j kj kn j k
j kn
keX k e eke
ππ π
π
ππ
−− −
−=
−= = =
−∑
8.2 Properties of DFS
Linearity (all signals have the same period)
Shift of a Sequence
Duality
[ ] [ ][ ] [ ]
[ ] [ ] [ ] [ ]
1 1
2 2
1 2 1 2
DFS
DFS
DFS
x n X kx n X k
ax n bx n aX k bX k
←⎯⎯→←⎯⎯→
+ ←⎯⎯→ +
[ ] [ ][ ] [ ]
[ ] [ ]2 /
2 /
DFS
DFS j km N
DFSj nm N
x n X kx n m e X k
e x n X k m
π
π
−
←⎯⎯→− ←⎯⎯→
←⎯⎯→ −
[ ] [ ][ ] [ ]
DFS
DFS
x n X kX n Nx k
←⎯⎯→←⎯⎯→ −
0 1m N≤ ≤ −
Periodic ConvolutionTake two periodic sequences
Let’s form the product
The periodic sequence with given DFS can be written as a periodic convolution
Periodic convolution is commutative
[ ] [ ][ ] [ ]
1 1
2 2
DFS
DFS
x n X kx n X k
←⎯⎯→←⎯⎯→
[ ] [ ] [ ]3 1 2X k X k X k=
[ ] [ ] [ ]1
3 1 20
N
mx n x m x n m
−
=
= −∑
[ ] [ ] [ ]1
3 2 10
N
mx n x m x n m
−
=
= −∑
ProofSubstitute periodic convolution into the DFS equation
Interchange summations
The inner sum is the DFS of shifted sequence
Substituting
[ ]1 1 1
3 3 1 20 0 0
[ ] [ ] [ ]N N N
kn knN N
n n mX k x n W x m x n m W
− − −
= = =
⎛ ⎞= = −⎜ ⎟
⎝ ⎠∑ ∑ ∑
[ ]1 1
3 1 20 0
[ ] [ ]N N
knN
m nX k x m x n m W
− −
= =
⎛ ⎞= −⎜ ⎟
⎝ ⎠∑ ∑
[ ]1
2 20
[ ]N
kn kmN N
nx n m W W X k
−
=
− =∑
[ ] [ ] [ ] [ ]1 1 1
3 1 2 1 2 1 20 0 0
[ ] [ ] [ ]N N N
kn kmN N
m n mX k x m x n m W x m W X k X k X k
− − −
= = =
⎛ ⎞= − = =⎜ ⎟
⎝ ⎠∑ ∑ ∑
Example 8.4
Properties of DFS
8.3 Fourier Transform of Periodic Signals
Periodic sequences are not absolute or square summableHence they don’t have a Fourier Transform per se
We can represent them as sums of complex exponentials: DFSWe can combine DFS and Fourier transform(Generalized) Fourier transform of periodic sequences
Periodic impulse train with values proportional to DFS coefficients
This is periodic with 2π since DFS is periodicThe inverse transform can be written as
( ) [ ]2 2j
k
kX e X kN N
ω π πδ ω∞
=−∞
⎛ ⎞= −⎜ ⎟⎝ ⎠
∑
( ) [ ]
[ ] [ ]
2 2
0 0
212
00
1 1 2 22 2
1 2 1
j j n j n
k
kN j nj n N
k k
kX e e d X k e dN N
kX k e d X k eN N N
π ε π εω ω ω
ε ε
ππ ε ω
ε
π πω δ ω ωπ π
πδ ω ω
∞− −
− −=−∞
∞ −−
−=−∞ =
⎛ ⎞= −⎜ ⎟⎝ ⎠
⎛ ⎞− =⎜ ⎟⎝ ⎠
∑∫ ∫
∑ ∑∫
Example 8.5Consider the periodic impulse train
The DFS was calculated previously to be
Therefore the Fourier transform is
[ ][ ]r
p n n rNδ∞
=−∞
= −∑
[ ] 1 for all kP k =
( ) 2 2j
k
kP eN N
ω π πδ ω∞
=−∞
⎛ ⎞= −⎜ ⎟⎝ ⎠
∑
Relation between Finite-length and Periodic Signals
Consider finite length signal x[n] spanning from 0 to N-1Convolve with periodic impulse train
The Fourier transform of the periodic sequence (called periodic extension) is
This implies that
DFS coefficients of a periodic expansion signal can be thought as equally spaced samples of the Fourier transform of one period (= the original finite duration sequence)
[ ] [ ][ ] [ ] [ ] [ ]r r
x n x n p n x n n rN x n rNδ∞ ∞
=−∞ =−∞
= ∗ = ∗ − = −∑ ∑
( ) ( ) ( ) ( )
( )2
2 2
2 2
j j j j
k
kjj N
k
kX e X e P e X eN N
kX e X eN N
ω ω ω ω
πω
π πδ ω
π πδ ω
∞
=−∞
∞
=−∞
⎛ ⎞= = −⎜ ⎟⎝ ⎠
⎛ ⎞ ⎛ ⎞= −⎜ ⎟ ⎜ ⎟⎝ ⎠⎝ ⎠
∑
∑
[ ] ( )2
2
kj jNk
N
X k X e X eπ
ωπω=
⎛ ⎞= =⎜ ⎟
⎝ ⎠
Example 8.6
Consider the following sequence
The Fourier transform
The DFS coefficients
1 0 4[ ]
0n
x nelse≤ ≤⎧
= ⎨⎩
( ) ( )( )
2 sin 5 / 2sin / 2
j jX e eω ω ωω
−=
[ ] ( ) ( )( )
4 /10 sin / 2sin /10
j k kX k e
kπ π
π−=
8.4 Sampling the Fourier Transform
Consider an aperiodic sequence with its Fourier transform
Assume that a sequence is obtained by sampling the DTFT
Since the DTFT is periodic, resulting sequence is also periodicWe can also write it in terms of the z-transform
The sampling points are shown in figurecould be the DFS of a sequence
Write the corresponding sequence
[ ] ( )( )
( )( )2 /
2 /
j N kj
N kX k X e X e πω
ω π== =
( )[ ] DTFT jx n X e ω←⎯⎯→
[ ] ( ) ( )( )( )2 /
2 /N k
j N k
z eX k X z X eπ
π
== =
[ ] ( )1
2 /
0
1[ ]N
j N kn
kx n X k e
Nπ
−
=
= ∑
[ ]X k
The only assumption made on the sequence is that DTFT exist
Combine equation to get
Term in the parenthesis is
So we get the periodic extension of x[n]
( ) [ ]j j m
mX e x m eω ω
∞−
=−∞
= ∑ [ ] ( )1
2 /
0
1[ ]N
j N kn
kx n X k e
Nπ
−
=
= ∑[ ] ( )( )2 /j N kX k X e π=
[ ] ( ) ( )
[ ] ( ) ( ) [ ] [ ]
12 / 2 /
0
12 /
0
1[ ]
1
Nj N km j N kn
k m
Nj N k n m
m k m
x n x m e eN
x m e x m p n mN
π π
π
− ∞−
= =−∞
∞ − ∞−
=−∞ = =−∞
⎡ ⎤= ⎢ ⎥
⎣ ⎦⎡ ⎤
= = −⎢ ⎥⎣ ⎦
∑ ∑
∑ ∑ ∑
[ ] ( ) ( ) [ ]1
2 /
0
1 Nj N k n m
k rp n m e n m rN
Nπ δ
− ∞−
= =−∞
− = = − −∑ ∑
[ ] [ ] [ ][ ]r r
x n x n n rN x n rNδ∞ ∞
=−∞ =−∞
= ∗ − = −∑ ∑
In this case, the Fourier series coefficients for aperiodic sequence are samples of the Fouriertransform of one period
In this case, still the Fourier series coefficients for are samples of the Fourier transform of x[n]. But,one period of is no longer identical to x[n].This is just sampling in the frequency domain as compared in the time domain discussed before.
[ ]x n
[ ]x n
Samples of the DTFT of an aperiodic sequence can be thought of as DFS coefficients of a periodic sequence obtained through summing periodic replicas of original sequence. periodic expansionIf the original sequence is of finite length and we take sufficient number of samples of its DTFT the original sequence can be recovered by
It is not necessary to know the DTFT at all frequencies to recover the discrete-time sequence in time domainDiscrete Fourier Transform representing a finite length sequence by samples of DTFT
[ ] [ ] 0 10
x n n Nx n
else⎧ ≤ ≤ −
= ⎨⎩
Time-domain aliasingThe relationship between x[n] and one period of in the undersampled case is considered a form of time domain aliasing.Time domain aliasing can be avoided only if x[n] has finite length, just as frequency domain aliasing can be avoided only for signals being bandlimited.If x[n] has finite length and we take a sufficient number of equally spaced samples of its Fourier transform (specifically, a number greater than or equal to the length of ), then the Fourier transform is recoverable from these samples, equivalently is recoverable from .
[ ]x n
36
Time-Domain Aliasing vs. Frequency-Domain Aliasing
To avoid frequency-domain aliasingSignal is bandlimitedSampling rate in time-domain is high enough
To avoid time-domain aliasingSequence is finiteSampling interval (2π/N) in frequency-domain is small enough
8.5 The Discrete Fourier Transform
Consider a finite length sequence x[n] of length N
For given length-N sequence associate a periodic sequence (a periodic extension)
The DFS coefficients of the periodic sequence are samples of the DTFT of x[n]Since x[n] is of length N there is no overlap between terms of x[n-rN] and we can write the periodic sequence as
To maintain duality between time and frequencyWe choose one period of as the Fourier transform of x[n]
[ ] 0 outside of 0 1x n n N= ≤ ≤ −
[ ] [ ]r
x n x n rN∞
=−∞
= −∑
[ ] ( ) ( )( ) mod NN
X k X k X k⎡ ⎤⎡ ⎤= =⎣ ⎦ ⎣ ⎦
[ ]X k
[ ] [ ] 0 10
X k k NX k
else⎧ ≤ ≤ −
= ⎨⎩
[ ] ( ) ( )( ) mod NN
x n x n x n⎡ ⎤⎡ ⎤= =⎣ ⎦ ⎣ ⎦
The DFS pair
The equations involve only one period so we can write
[ ] ( )1
2 /
0[ ]
Nj N kn
nX k x n e π
−−
=
=∑
[ ]( )
12 /
0[ ] 0 1
0
Nj N kn
nx n e k N
X kelse
π−
−
=
⎧≤ ≤ −⎪= ⎨
⎪⎩
∑
[ ] ( )1
2 /
0
1 0 1[ ]
0
Nj N kn
kX k e n N
x n Nelse
π−
=
⎧≤ ≤ −⎪= ⎨
⎪⎩
∑
The DFT pair can also be written as
The Discrete Fourier Transform
[ ] [ ]DFTX k x n←⎯⎯→
[ ]( )
12 /
0[ ] 0 1
0
Nj N kn
nx n e k N
X kelse
π−
−
=
⎧≤ ≤ −⎪= ⎨
⎪⎩
∑
[ ] ( )1
2 /
0
1 0 1[ ]
0
Nj N kn
kX k e n N
x n Nelse
π−
=
⎧≤ ≤ −⎪= ⎨
⎪⎩
∑
Discrete Fourier Transform (DFT)
The Discrete Fourier Transform (DFT) of a finite length sequence
The Inverse Discrete Fourier Transform (IDFT) is defined by
A DFT and IDFT pair is shown as
{ } { }1,...,0for ][][DFT][1
0
2
−∈== ∑−
=
−NkenxnxkX
N
n
Nnkj
N
π
{ } { }1,...,0for ][1][IDFT][1
0
2
−∈== ∑−
=
NnekXN
kXnxN
k
Nnkj
N
π
][][ DFT kXnx ⎯⎯ →←
41
Proof of Inverse Discrete Fourier Transform
The inverse discrete Fourier transform (IDFT) is given by
To verify the above expression we multiply both sides of the above equation by and sum the result from n = 0 to 1−= Nnn
NW
10,][1][1
0−≤≤∑=
−
=
− NnWkXN
nxN
k
knN
∑ ∑∑−
=
−
=
−−
=⎟⎟⎠
⎞⎜⎜⎝
⎛=
1
0
1
0
1
0
1N
n
nN
N
k
knN
N
n
nN WWkX
NWnx ][][
∑ ∑−
=
−
=
−−=1
0
1
0
1 N
n
N
k
nkNWkX
N)(][
∑ ∑−
=
−
=
−−=1
0
1
0
1 N
k
N
n
nkNWkX
N)(][
42
Making use of the identity
we observe that the RHS of the last equation is
but, for k=0,1,…,N-1, there is only one non-zero term at k=l , and RHS =
Hence
⎩⎨⎧=∑
−
=
−−1
0
N
n
nkNW )(
,,
0N ,rNk =−for
otherwiser an integer
][X
][][ XWnxN
n
nN =∑
−
=
1
0
1
0
[ ] [ ]N
k
RHS X k k l rNδ−
=
= − −∑
43
12 /
0[ ] [ ] , 0 1
Nj kn N
nX k x n e k Nπ
−−
=
= ≤ ≤ −∑
12 /
0
1[ ] [ ] , 0 1N
j kn N
kx n X k e n N
Nπ
−
=
= ≤ ≤ −∑
[ ]X k[ ]x n
DFT: analysis equation
IDFT: synthesis equation
time domain
frequency domain
44
Periodic Extension of DFT Sequence
We can show that the definitions of DFT and IDFT induces periodicity
12 /
0[ ] [ ] , 0 1
Nj kn N
nX k x n e k Nπ
−−
=
= ≤ ≤ −∑1
2 ( ) /
01
2 / 2
01
2 /
0
[ ] [ ]
[ ]
[ ] [ ]
Nj k N n N
nN
j kn N j n
nN
j kn N
n
X k N x n e
x n e e
x n e X k
π
π π
π
−− +
=−
− −
=−
−
=
+ =
=
= =
∑
∑
∑
45
Similarly
12 ( ) /
01
2 / 2
01
2 /
0
1[ ] [ ]
1 [ ]
1 [ ] [ ]
Nj n N k N
kN
j kn N j k
kN
j kn N
k
x n N X k eN
X k e eN
X k e x nN
π
π π
π
−+
=−
=−
=
+ =
=
= =
∑
∑
∑
12 /
0
1[ ] [ ] , 0 1N
j kn N
kx n X k e n N
Nπ
−
=
= ≤ ≤ −∑
46
DTFS and DFT
X[k] is the Fourier series coefficient (or spectral component) at the frequency Thus except the scale factor, we have the following relationship
Differences between the DFT and the DTFSthe DFT assumes signal periodicity while the DTFS requires periodicitythe DFT scales the synthesis equation by 1/N whereas the DTFS scales the analysis equation.
0kω
ˆ[ ] [ ]
[ ] [ ]
x n x n
X k X k
periodic extension
take one period
periodic extension
take one period
DFT
IDFT
DTFS
Example 8.7The DFT of a rectangular pulsex[n] is of length 5We can consider x[n] of any length greater than 5Let’s pick N=5Calculate the DFS of the periodic form of x[n]
[ ] ( )
( )
42 /5
02
2 /5
11
5 0, 5, 10,...0
j k n
nj k
j k
X k e
ee
kelse
π
π
π
−
=
−
−
=
−=
−= ± ±⎧
= ⎨⎩
∑
If we consider x[n] of length 10
We get a different set of DFT coefficients
Still samples of the DTFT but in different places
8.6 Properties of DFT
][][ and ][][ kNXkXkNXkX −−∠=∠−=
50
Linearity
n
)(1 nx
0 N1−1
Duration N1
n)(2 nx
0 N2−1
Duration N2
),max( 21 NNN =
)()( 11 kXnx ⎯⎯ →←DFT
)()( 22 kXnx ⎯⎯ →←DFT
)()()()( 2121 kbXkaXnbxnax +⎯⎯ →←+ DFT
51
Review: Circular Shift of a Sequence
0n
)(nx
N
n
)(~ nx
0 N
n
)(~)(~1 mnxnx −=
0 N
⎩⎨⎧ −≤≤−=
=otherwise
Nnmnxnxnx N
010))(()(~
)( 11
52
DFT of Circular Shifted Sequence
⎩⎨⎧ −≤≤−=
=otherwise
Nnmnxnxnx N
010))(()(~
)( 11
)()( kXnx ⎯⎯ →←DFT
(2 / )(( )) , 0 1 ( ) ( )j N km kmN Nx n m n N e X k W X kπ−− ≤ ≤ − ←⎯⎯→ =DFT
53
Duality
)()( kXnx ⎯⎯ →←DFT
10 ,))(()( −≤≤−⎯⎯ →← NkkNxnX NDFT
54
Example: Duality
Choose N=10
Re[X(k)]
Im[X(k)]
Re[x1(n)]= Re[X(n)]
Im[x1(n)]= Im[X(n)]
X1(k) = 10x((−k))10
55
Notations
Notation : Circular reversal
Properties of DFT
(( )) (( ) )Nx n x n
( ) (( ))y n x n= −
(0) (0)y x=( ) (( )) ( )y n x n x N n= − = −
* * *
(( )) [ ] [ ]( ) [ ] [ ]
x n X k X N kx n X k X N k
− ↔ − = −
↔ − = −
56
Review: Even and Odd Components
Any real-valued signal can be expressed as the sum of an odd signal and an even signal.
( ) ( ) ( ) [ ] [ ] [ ]where
1 1( ) { ( ) ( )} [n]= { [ ] [ ]} anevenfunction2 2
and1 1( ) { ( ) ( )} [ ]= { [ ] [ ]} an odd function2 2
e o e o
e e
o o
x t x t x t x n x n x n
x t x t x t x x n x n
x t x t x t x n x n x n
= + = +
= + − + −
= − − − −
57
Even and Odd Components of a Finite Sequence
For a real finite duration sequence
( ) ( )
( ) ( )
1 1( ) ( ) (( )) ( ) ( )2 21 1( ) ( ) (( )) ( ) ( )2 2
e
o
x n x n x n x n x N n
x n x n x n x n x N n
= + − = + −
= − − = − −
58
Review: Even and Odd Components
If x(t) is a complex valued function:x(t)=xR(t) + j xI(t)x(t) is even iff both the real and imaginary parts of x(t) are even.Similarly x(t) is odd iff both the real and imaginary components of x(t) are odd.
We can also define conjugate symmetry, or Hermitian symmetry: real part of x(t) is even but the imaginary part of x(t) is odd
xR(t)= xR(-t) and xI(t)= -xI(-t) i.e. x*(t)= x*(-t)
59
Symmetry Properties
Real-Imaginary Decomposition
Symmetry Properties (Proakis p.415)
( ) ( ) ( )
[ ( ) ( )] [ ( ) ( )]( ) ( ) ( )
[ ( ) ( )] [ ( ) ( )]
R Ie o e oR R I I
R Ie o e oR R I I
x n x n jx n
x n x n j x n x nX k X k jX k
X k X k j X k X k
= +
= + + += +
= + + +
( ) [ ( ) ( )] [ ( ) ( )]
( ) [ ( ) ( )] [ ( ) ( )]
e o e oR R I I
e o e oR R I I
x n x n x n jx n jx n
X k X k X k jX k jX k
= + + +
= + + +
60
[Re{ ( )}] [ ( ) ( )]
[ ] [ ]
[ Im{ ( )}] [ ( ) ( )]
[ ] [ ]
e oR R
e oR I
e oI I
o eR I
DFT x n DFT x n x n
X k jX k
DFT j x n DFT jx n jx n
X k jX k
= +
= +
= +
= +
Hermitian Symmetry
Hermitian anti-Symmetry
61
The Fourier transform of real signals exhibits special symmetry which is important to us in many cases. Basically, The transform of a real signal x[n] is therefore conjugate Symmetric(Hermitian symmetric)
Real part Symmetric (even)
Imaginary part Antisymmetric (skew-symmetric, odd)
Magnitude Symmetric (even)
Phase Antisymmetric (odd)
Symmetry Relations for DFT of Real Signal
62
Example
)(nx
10 ),(~ =Nnx
|)(| kX
)(kX∠
63
Linear Convolution (Review)
)(*)()()()( 2113 nxnxmnxmxnxm
=−= ∑∞
−∞=
)()( 11ω⎯→← jeXnx FT )()( 22
ω⎯→← jeXnx FT
)()()()(*)()( 213213ωωω =⎯→←= jjj eXeXeXnxnxnx FT
Circular Convolution (Cyclic Convolution)
Circular convolution of two finite length sequences
In linear convolution, one sequence is multiplied by a time –reversed and linearly shifted version of the other. For convolution here, the second sequence is circularly time reversed and circularly shifted.So it is called an N-point circular convolution
[ ] [ ] [ ]
[ ] ( )( )
[ ] ( )( )
1
3 1 201
1 201
2 10
, 0 1
N
mN
NmN
Nm
x n x m x n m
x m x n m
x m x n m n N
−
=
−
=
−
=
= −
⎡ ⎤= −⎣ ⎦
⎡ ⎤= − ≤ ≤ −⎣ ⎦
∑
∑
∑
The cyclic convolution is not the same as the linear
convolution of linear system theory. It is a by-
product of the periodicity of DFS/DFT.
When the DFT X[k] is used, the periodic interpretation of the signal
x[n] is implicit: if
then for any integer m:
Thus, just as the DFT X[k] is implicitly period-N, the inverse DFT is
also implicitly period-N — the periodic extension of x[n].
][][][ nhnxnyN⊗=
][*][][ nhnxny =
{ } { }1,...,0for ][1][IDFT][1
0
2
−∈== ∑−
=
NnekXN
kXnxN
k
Nnkj
N
π
∑∑−
=
−
=
+
==1
0
221
0
)(2
][][1][1 N
k
kmjNknjN
k
NmNnkj
nxeekXN
ekXN
πππ
66
Circular Convolution Theorem
1
3 1 1 20
( ) ( ) (( )) ( ) ( )N
Nm
x n x m x n m x n x n−
=
= − =∑
)()( 11 kXnx ⎯⎯ →←DFT )()( 22 kXnx ⎯⎯ →←DFT
3 1 2 3 1 2( ) ( ) ( ) ( ) ( ) ( )x n x n x n X k X k X k= ←⎯⎯→ =DFT
both of length N
67
Proof: Circular Convolution Theorem
Suppose we have two finite duration sequences x1[n] and x2[n] of length N.Suppose we multiply the two DFTs together: X3[k] = X1[k]X2[k] What happens when I take the IDFT of X3[k] ?
1
3 301
1 20
1 1 1
1 20 0 0
1 1 1( )
1 20 0 0
1( ) [ ]
1 [ ]
1 [ ] [ ]
1 [ ] [ ]
Nkm
kN
km
k
N N Nkn kl km
k n l
N N Nk n l m
n l k
x m X k WN
X X k WN
x n W x l W WN
x n x l WN
−−
=
−−
=
− − −−
= = =
− − −+ −
= = =
=
=
⎡ ⎤ ⎡ ⎤= ⎢ ⎥ ⎢ ⎥
⎣ ⎦ ⎣ ⎦⎡ ⎤
= ⎢ ⎥⎣ ⎦
∑
∑
∑ ∑ ∑
∑ ∑ ∑
and we have , the circular convolution of x1 and x2
68
( )
1( )
0
1 ( : an integer), if (( ))
Thus, 0,
k n l m
NNk n l m
k
W iff n l m Np pN l m n NP m n
Wotherwise
+ −
−+ −
=
= + − =
= − + = −⎧= ⎨⎩
∑
1
3 1 20
( ) ( ) (( ))N
Nn
x m x n x m n−
=
= −∑
69
Circular Convolution Example
70
Example: Circular Convolution Theorem
⎩⎨⎧ −≤≤
==otherwise
Lnnxnx
0101
)()( 21
3 1 2( ) ( ) ( )x n x n x n=
L=N=6
⎩⎨⎧ =
=
== ∑−
=
otherwisekN
WkXkXN
n
knN
00
)()(1
021
⎩⎨⎧ =
==otherwisekN
kXkXkX0
0)()()(
2
213
0 L
)(1 nx
0 L
)(2 nx
0 L
)(3 nxN
71
3 1 2( ) ( ) ( )x n x n x n=
⎪⎩
⎪⎨⎧
−≤≤−
−=
==
+−
−
=∑
otherwise
LkW
W
WkXkX
kL
LkN
L
n
knL
0
1201
1
)()(
2
1)1(
1
0221
⎪⎩
⎪⎨
⎧−≤≤⎟⎟
⎠
⎞⎜⎜⎝
⎛−
−==
+−
otherwise
LkW
WkXkXkX k
L
LkL
0
1201
1 )()()(
2
2
1)1(2
213
⎩⎨⎧ −≤≤
==otherwise
Lnnxnx
0101
)()( 21
L=6, N=12
0 L
)(2 nx
N
0 L
)(1 nx
N
0
)(3 nx
N
N
Why is cyclic convolution not true linear convolution?
Because a wraparound effect occurs at the “ends”:
The procedure of each pair are summed around the circle.
In a while, it will be seen that can be computed using
][*][][ nhnxny =
].[][][ nhnxnyN⊗=
0][][][ 101kn
NDFT WnXnnnx =⎯⎯ →←−= δ
][][][][ 22130 kXWkXkXkX kn
N==
]))[((
]))[((][
][][][
02
2
1
01
213
N
N
N
k
nnx
knxkx
nxnxnx
−=
−=
⊗=
∑−
=
Example 8.11
Circular convolution of two rectangular pulses L=N=6
DFT of each sequence
Multiplication of DFTs
And the inverse DFT
[ ] [ ]1 2
1 0 10
n Lx n x n
else≤ ≤ −⎧
= = ⎨⎩
[ ] [ ]21
1 20
00
N j knN
n
N kX k X k e
else
π− −
=
=⎧= = = ⎨
⎩∑
[ ] [ ] [ ]2
3 1 20
0N k
X k X k X kelse
⎧ == = ⎨
⎩
[ ]3
0 10N n N
x nelse
≤ ≤ −⎧= ⎨⎩
We can augment zeros to each sequence L=2N=12The DFT of each sequence
Multiplication of DFTs
[ ] [ ]2
1 2 21
1
LkjN
kjN
eX k X ke
π
π
−
−
−= =
−
[ ]
22
3 21
1
LkjN
kjN
eX ke
π
π
−
−
⎛ ⎞−⎜ ⎟= ⎜ ⎟⎜ ⎟−⎝ ⎠
77
Example : Consider the two length-4 sequences repeated below for convenience:
We will take DFT approach
n3210
1
2 ][ng
n3210
1
2 ][nh
78
The 4-point DFT G[k] of g[n] is given by
Therefore
,][ 21212 −=−−=G,][ jjjG −=+−= 1211
jjjG +=−+= 1213][
,][ 41210 =++=G
4210 /][][][ kjeggkG π−+=4644 32 // ][][ kjkj egeg ππ −− ++
3021 232 ≤≤++= −− kee kjkj ,// ππ
79
Likewise,
Hence, ,][ 611220 =+++=H
,][ 011222 =−+−=H,][ jjjH −=+−−= 11221
jjjH +=−−+= 11223][
4210 /][][][ kjehhkH π−+=4644 32 // ][][ kjkj eheh ππ −− ++
3022 232 ≤≤+++= −−− keee kjkjkj ,// πππ
80
4
[0] [0] 1 1 1 1 1 4[1] [1] 1 1 2 1
W[2] [2] 1 1 1 1 0 2[3] [3] 1 1 1 1
G gG g j j jG gG g j j j
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥− − −⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥= = =⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥− − −⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥− − +⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦
4
[0] [0] 1 1 1 1 2 6[1] [1] 1 1 2 1
W[2] [2] 1 1 1 1 1 0[3] [3] 1 1 1 1
H hH h j j jH hH h j j j
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥− − −⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥= = =⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥− − +⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦
is the 4-point DFT matrix4W
81
If denotes the 4-point DFT of then
Thus
30 ≤≤= kkHkGkYC ],[][][
][kYC ][nyC
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡−=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
20
224
33221100
3210
j
j
HGHGHGHG
YYYY
CCCC
][][][][][][][][
][][][][
82
The 4-point IDFT of yields][kYC
4
[0] [0][1] [1]1 *W[2] [2]4[3] [3]
C C
C C
C C
C C
y Yy Yy Yy Y
⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥=⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡−
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−−−−−=
5676
20
224
111111
111111
41
j
j
jj
jj
83
4 pt sequences: g[n]={1 2 0 1}
n1 2 3
h[n]={2 2 1 0}
n1 2 3
× 1
× 2
× 0
× 1
nh[((n – 0))4]1 2 3
nh[((n -1))4]1 2 3
nh[((n – 2))4]1 2 3
nh[((n – 3))4]1 2 3
n
g[n] h[n]={4 7 5 4}
1 2 3
4
check: g[n] h[n]={2 6 5 4 2 1 0}
*
[ ] [ ]1
0
(( ))N
Nm
g m h n m−
=
−∑
84
Example : Now let us extended the two length-4 sequences to length 7 by appending each with three zero-valued samples, i.e.
⎩⎨⎧
≤≤≤≤= 640
30nnngnge ,
],[][
⎩⎨⎧
≤≤≤≤= 640
30nnnhnhe ,
],[][
85
We next determine the 7-point circular convolution of and :
From the above
6
70
[ ] [ ] [(( )) ], 0 6e em
y n g m h n m n=
= − ≤ ≤∑
][nge][nhe
[0] [0] [0] [1] [6] [2] [5] [3] [4][4] [3] [5] [2] [6] [1]
[0] [0] 1 2 2
e e e e e e e e
e e e e e e
y g h g h g h g hg h g h g hg h
= + + ++ + +
= = × =
86
Continuing the process we arrive at
,)()(][][][][][ 6222101101 =×+×=+= hghgy
][][][][][][][ 0211202 hghghgy ++= ,)()()( 5202211 =×+×+×=
][][][][][][][][][ 031221303 hghghghgy +++=
,)()()()( 521201211 =×+×+×+×=
][][][][][][][ 1322314 hghghgy ++= ,)()()( 4211012 =×+×+×=
,)()(][][][][][ 1111023325 =×+×=+= hghgy
111336 =×== )(][][][ hgy
87
As can be seen from the above that y[n] is precisely the sequence obtained by a linear convolution of g[n] and h[n]
][nyL
][nyL
DFT and DFS
Periodic Extension: Given a finite-length sequence
define the periodic sequence by
does not have a z-transform or a convergent Fourier sum (why?). But it does have a DFS representation.
The DFS that is the true frequency representation of discrete-time periodic signals. The DFT is just one period of the DFS.
The length-N DFT of the length-N signal contains all the information about . It is convenient to work with.
Whenever the DFT is used, actually the DFS is being used – computations involving are affected by the true periodicity of the coefficients.
{ }1,...,0];[ −= Nnnx{ }+∞<<−∞ nnx ];[~
{ }] mod [][][~ Nnxnxnx N ==][~ nx
][kX ][nx][nx][kX ][~ kX
][kX][~ kX
DFT and z-Transform
The DFT samples the z-transform at evenly spaced samples of the unit circle over one revolution:
{ }1,...,0for |)(][ /2 −∈==
NkzXkX Nkjez π
DFT and DTFT
The DFT samples on period of the discrete-time Fourier transform (DTFT) at N evenly spaced frequencies
{ }1,...,0for |)(][ /2 −∈= = NkeXkX Nkj
πωω
91
DTFT from DFT by Interpolation
It can readily be shown that
This is the dual of interpolation of original time function from sampled values by an ideal low-pass filtering
∑ ⋅⎟⎠⎞
⎜⎝⎛ π−ω
⎟⎠⎞
⎜⎝⎛ π−ω
=−
=
−π−ω−1
0
]2/)1)][(/2[(
22sin
22sin
][1 N
k
NNkje
NkN
kN
kXN
( )jX e ω
[ ]
( ) [ ]
x n
X X kω
IDTFT
DTFT
DFT
IDFTsampling
interpolation
for a finite-durationsignal with no aliasing
92
Relations to the DTFT
[ ] [ ] [ ]
( ) [ ]
m
x n y n x n mN
X Y Kω
∞
=−∞
= +∑
DTFTIDTFT
Aliasing
X
N-point sampling
X
IDFT DFT
Example : A periodic sequence is constructed from the sequence
Discrete-Time Fourier Transform (DTFT)
Discrete Fourier Transform (DFT)
By comparing DTFT and DFT, we find
1 ],[][~ 1 ],[][ <+=→<= ∑∞
−∞=
arNnxnxanuanxr
n
ωωωω
jn
njn
n
njj
aeeaenxeX −
∞
=
−∞
−∞=
−
−=== ∑∑ 1
1][)(0
Nkj
N
n
nNj
aeenxkX /2
1
0
)/2(
11][~][~
ππ
−
−
=
−
−== ∑
{ }1,...,0for |)(][ /2 −∈= = NkeXkX Nkj
πωω
94
Matrix Representation
The DFT samples defined by
can be expressed in matrix form as
where and
10,][][1
0−≤≤∑=
−
=NkWnxkX
N
n
knN
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
=
]1[:
]1[]0[
Nx
xx
x
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−
=
]1[:
]1[]0[
NX
XX
X
1
0
[ ] [ ]N
nkN N
n
X k x n W W−
=
= ⇒ =∑ X x
11
0
1[ ] [ ]N
nkN N
nx n X k W W
N
−− −
=
= ⇒ =∑ x X
95
and is the DFT matrix given byWN NN ×
2
1 2 ( 1)
2 4 2( 1)
( 1) 2( 1) ( 1)
1 1 1 111W
1
NN N N
NknN N NN N
N N NN N N
W W WW W WW
W W W
−
−
− − −
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎡ ⎤= =⎣ ⎦ ⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
indexes column androw :,
)1)(1(,
jiW ji
Nji
N−−=W
2 /j NNW e π−=
96
Likewise, the IDFT relation given by
can be expressed in matrix form as
where is the IDFT matrix
1
0
1[ ] [ ] , 0 1N
k nN
kx n X k W n N
N
−−
=
= ≤ ≤ −∑
NN ×1WN−
1x W XN−=
2
1 2 ( 1)
1 2 4 2( 1)
( 1) 2( 1) ( 1)
1 1 1 1
11 1
1
1
NN N N
kn NN N N N N
N N NN N N
W W W
W W W WN N
W W W
− − − −
− − − − − −
− − − − − −
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎡ ⎤= =⎣ ⎦ ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
W
1 1 *W WN NN− =
97
Example: Matrix Representation
0 0 0 04 4 4 40 1 2 3
4 4 4 44 0 2 4 6
4 4 4 40 3 6 9
4 4 4 4
1 1 1 11 1
W1 1 1 11 1
W W W Wj jW W W W
W W W Wj jW W W W
⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎢ ⎥= =⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎣ ⎦⎣ ⎦
0 0 0 04 4 4 40 1 2 3
1 4 4 4 44 0 2 4 6
4 4 4 40 3 6 9
4 4 4 4
1 1 1 11 11W1 1 1 141 1
W W W Wj jW W W W
W W W Wj jW W W W
− − −−
− − −
− − −
⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎢ ⎥= =⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎣ ⎦⎣ ⎦
Example : The DFT matrices of dimension 2, 3, 4 are as follows:
Suppose
Where we observe that the real part of X[k] is even-symmetric, and the imaginary part is odd-symmetric – the DFT of the real signal.
⎥⎦
⎤⎢⎣
⎡−
=11
112W
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−+−
+−−−=
231
2311
231
2311
111
3
jj
jjW
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−−−−
−−=
jj
jjW
111111
111111
4
,]2031[ T−=x
xX W= ⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
+
−=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−−−−
−−==
]3[]2[]1[]0[
51051
2
2031
111111
111111
4
XXXX
j
j
jj
jjW xX
8.7 Linier convolution using the DFT
Efficient algorithms are available for computing the DFT of finite-duration sequence, therefore it is computationally efficient to implement a convolution of two sequences by the following procedure:
Compute the N point discrete Fourier transforms X1[k] and X2[k] for the two sequences given.Compute the product X3[k]= X1[k]X2[k] Compute the inverse DFT of X3[k]
The multiplication of discrete Fourier transforms corresponds to a circular convolution. To obtain a linear convolution, we must ensure that circular convolution has the effect of linear convolution.
[ ] [ ] [ ]3 1 2m
x k x m x n m+∞
=−∞
= −∑
With aliasing
Without aliasing
Implementing LTI systems using the DFT
Let us consider an L point input sequence x[n] and a P point impulse response h[n]. The linear convolution has finite-duration with length L+P-1. Consequently for linear convolution and circular convolution to be identical, the circular convolution must have the length of at least L+P-1 points.
i.e. both x[n] and h[n] must be augmented with sequence amplitude with zero amplitude.
This process is often referred to as zero-padding.
106
Linear convolution is a key operation in many signal processing applicationsSince a DFT can be efficiently implemented using FFT algorithms, it is of interest to develop methods for the implementation of linear convolution using the DFTLet g[n] and h[n] be two finite-length sequences of length N and M, respectivelyPickDefine two length-L sequences
1L N M= + −
⎩⎨⎧
−≤≤−≤≤= 10
10LnN
Nnngnge ,],[][
⎩⎨⎧
−≤≤−≤≤= 10
10LnM
Mnnhnhe ,],[][
107
Linear Convolution of Two Finite-Length Sequences
Then
The corresponding implementation scheme is illustrated below
Zero-paddingwith
zeros1)( −N point DFT
Zero-paddingwith
zeros1)( −M−−+ )( 1MN
point DFT×
g[n]
h[n]
Length-N
][nge
][nhe −−+ )( 1MN
−−+ )( 1MNpoint IDFT
][nyL
Length-M Length- )( 1−+ MN
[ ] [ ] [ ] [ ] [[ ] ]CLy n g n h n y n g n h n== =∗
The size of DFT to be used can be any integer L≥N+M-1
108
Circular Convolution as Linear Convolution with Time Aliasing
L0
x1(n)n
P
x2(n)0
nL
0 Pn
L+P−1
x (n)
L
109
Terminology: Fast Convolution
110
Filtering Long Sequences
Sometimes we want to filter a sequence that is very longcould save up all the samples, then either
» do a really long time-domain convolution, or» use really big DFTs to do it in the frequency domain
but big DFTs may become impractical; besideswe get long latency: we have to wait a long time to get any output
Sometimes we want to filter a sequence of indefinite lengthand then even the methods above don’t work
111
Example: Filtering Long Sequences
Finite-length impulse response h[n] and indefinite-length signal x[n] to be filtered
Implementing Linear Time-Invariant Systems Using the DFTTheoretically, we store the entire samples and then implement the convolution procedure using a DFT for a large number points which is generally impractical to compute.No filter samples can be computed until all the input samples have been collected. Generally, we would like to avoid such a large delay in processing.
The solution of both problems is to use “block convoltuion”.
112
Block Convolution Techniques
All of samples will be segmented into section of appropriate length (L).Each section can then be convolved with the finite-length impulse response and the filtered sections fitted together in an appropriate way.
Overlap-Add MethodOverlap-Save Method
113
Using Linearity to Filter a Long Signal
114
115
Block Convolution - Overlap Add Method
116
Segmenting the Input in OLA
117
Putting the Output Pieces Together
118
Filtering the Segments
119
Block Convolution - Overlap Save Method
120
Linear Convolution Example Again
121
Aliased Convolution
122
123
OLS Method - Segmenting the Input
124
OLS Method - Extracting the Output
125
Overlap-add method is the procedure of decomposition of x[n] into nonoverlappingsections of length L and the result of convolving each section with h[n] which are overlapped and added to construct the output.
Comparison
126
Overlap-save method is the procedure of decomposition of x[n] into overlapping sections of length L and the result of convolving each section with h[n] which the portions of each filtered section to be discarded in forming the linear convolution.