DFT : The Discrete Fourier Transform

126
DFT : The Discrete Fourier Transform Chapter 8

Transcript of DFT : The Discrete Fourier Transform

Page 1: DFT : The Discrete Fourier Transform

DFT : The Discrete Fourier Transform

Chapter 8

Page 2: DFT : The Discrete Fourier Transform

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

Page 3: DFT : The Discrete Fourier Transform

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

Page 4: DFT : The Discrete Fourier Transform

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

Page 5: DFT : The Discrete Fourier Transform

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

Page 6: DFT : The Discrete Fourier Transform

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 −

Page 7: DFT : The Discrete Fourier Transform

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

Page 8: DFT : The Discrete Fourier Transform

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

Page 9: DFT : The Discrete Fourier Transform

9

Example: Circular Shift

Page 10: DFT : The Discrete Fourier Transform

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

Page 11: DFT : The Discrete Fourier Transform

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.

Page 12: DFT : The Discrete Fourier Transform

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?

Page 13: DFT : The Discrete Fourier Transform

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

Page 14: DFT : The Discrete Fourier Transform

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.

Page 15: DFT : The Discrete Fourier Transform

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π π π π+ = =

Page 16: DFT : The Discrete Fourier Transform

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−

=

=∑

Page 17: DFT : The Discrete Fourier Transform

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πδ

∞ −

=−∞ =

= − =∑ ∑

Page 18: DFT : The Discrete Fourier Transform

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

−−

=

= = =∑

Page 19: DFT : The Discrete Fourier Transform

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

ππ π

π

ππ

−− −

−=

−= = =

−∑

Page 20: DFT : The Discrete Fourier Transform

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≤ ≤ −

Page 21: DFT : The Discrete Fourier Transform

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

=

= −∑

Page 22: DFT : The Discrete Fourier Transform

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

− − −

= = =

⎛ ⎞= − = =⎜ ⎟

⎝ ⎠∑ ∑ ∑

Page 23: DFT : The Discrete Fourier Transform

Example 8.4

Page 24: DFT : The Discrete Fourier Transform

Properties of DFS

Page 25: DFT : The Discrete Fourier Transform
Page 26: DFT : The Discrete Fourier Transform

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

π ε π εω ω ω

ε ε

ππ ε ω

ε

π πω δ ω ωπ π

πδ ω ω

∞− −

− −=−∞

∞ −−

−=−∞ =

⎛ ⎞= −⎜ ⎟⎝ ⎠

⎛ ⎞− =⎜ ⎟⎝ ⎠

∑∫ ∫

∑ ∑∫

Page 27: DFT : The Discrete Fourier Transform

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

ω π πδ ω∞

=−∞

⎛ ⎞= −⎜ ⎟⎝ ⎠

Page 28: DFT : The Discrete Fourier Transform

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π

ωπω=

⎛ ⎞= =⎜ ⎟

⎝ ⎠

Page 29: DFT : The Discrete Fourier Transform

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π π

π−=

Page 30: DFT : The Discrete Fourier Transform

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

=

= ∑

[ ]X k

Page 31: DFT : The Discrete Fourier Transform

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

=

= ∑[ ] ( )( )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δ∞ ∞

=−∞ =−∞

= ∗ − = −∑ ∑

Page 32: DFT : The Discrete Fourier Transform

In this case, the Fourier series coefficients for aperiodic sequence are samples of the Fouriertransform of one period

Page 33: DFT : The Discrete Fourier Transform

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

Page 34: DFT : The Discrete Fourier Transform

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⎧ ≤ ≤ −

= ⎨⎩

Page 35: DFT : The Discrete Fourier Transform

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

Page 36: DFT : The Discrete Fourier Transform

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

Page 37: DFT : The Discrete Fourier Transform

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⎡ ⎤⎡ ⎤= =⎣ ⎦ ⎣ ⎦

Page 38: DFT : The Discrete Fourier Transform

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

π−

=

⎧≤ ≤ −⎪= ⎨

⎪⎩

Page 39: DFT : The Discrete Fourier Transform

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

π−

=

⎧≤ ≤ −⎪= ⎨

⎪⎩

Page 40: DFT : The Discrete Fourier Transform

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 ⎯⎯ →←

Page 41: DFT : The Discrete Fourier Transform

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)(][

Page 42: DFT : The Discrete Fourier Transform

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δ−

=

= − −∑

Page 43: DFT : The Discrete Fourier Transform

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

=

= ≤ ≤ −∑

[ ]X k[ ]x n

DFT: analysis equation

IDFT: synthesis equation

time domain

frequency domain

Page 44: DFT : The Discrete Fourier Transform

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

π

π π

π

−− +

=−

− −

=−

=

+ =

=

= =

Page 45: DFT : The Discrete Fourier Transform

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

=

= ≤ ≤ −∑

Page 46: DFT : The Discrete Fourier Transform

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

Page 47: DFT : The Discrete Fourier Transform

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

π

π

π

=

=

−=

−= ± ±⎧

= ⎨⎩

Page 48: DFT : The Discrete Fourier Transform

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

Page 49: DFT : The Discrete Fourier Transform

8.6 Properties of DFT

][][ and ][][ kNXkXkNXkX −−∠=∠−=

Page 50: DFT : The Discrete Fourier Transform

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

Page 51: DFT : The Discrete Fourier Transform

51

Review: Circular Shift of a Sequence

0n

)(nx

N

n

)(~ nx

0 N

n

)(~)(~1 mnxnx −=

0 N

⎩⎨⎧ −≤≤−=

=otherwise

Nnmnxnxnx N

010))(()(~

)( 11

Page 52: DFT : The Discrete Fourier Transform

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

Page 53: DFT : The Discrete Fourier Transform

53

Duality

)()( kXnx ⎯⎯ →←DFT

10 ,))(()( −≤≤−⎯⎯ →← NkkNxnX NDFT

Page 54: DFT : The Discrete Fourier Transform

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

Page 55: DFT : The Discrete Fourier Transform

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

− ↔ − = −

↔ − = −

Page 56: DFT : The Discrete Fourier Transform

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

= + = +

= + − + −

= − − − −

Page 57: DFT : The Discrete Fourier Transform

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

= + − = + −

= − − = − −

Page 58: DFT : The Discrete Fourier Transform

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)

Page 59: DFT : The Discrete Fourier Transform

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

= + + +

= + + +

Page 60: DFT : The Discrete Fourier Transform

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

Page 61: DFT : The Discrete Fourier Transform

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

Page 62: DFT : The Discrete Fourier Transform

62

Example

)(nx

10 ),(~ =Nnx

|)(| kX

)(kX∠

Page 63: DFT : The Discrete Fourier Transform

63

Linear Convolution (Review)

)(*)()()()( 2113 nxnxmnxmxnxm

=−= ∑∞

−∞=

)()( 11ω⎯→← jeXnx FT )()( 22

ω⎯→← jeXnx FT

)()()()(*)()( 213213ωωω =⎯→←= jjj eXeXeXnxnxnx FT

Page 64: DFT : The Discrete Fourier Transform

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

=

=

=

= −

⎡ ⎤= −⎣ ⎦

⎡ ⎤= − ≤ ≤ −⎣ ⎦

Page 65: DFT : The Discrete Fourier Transform

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

πππ

Page 66: DFT : The Discrete Fourier Transform

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

Page 67: DFT : The Discrete Fourier Transform

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

−−

=

−−

=

− − −−

= = =

− − −+ −

= = =

=

=

⎡ ⎤ ⎡ ⎤= ⎢ ⎥ ⎢ ⎥

⎣ ⎦ ⎣ ⎦⎡ ⎤

= ⎢ ⎥⎣ ⎦

∑ ∑ ∑

∑ ∑ ∑

Page 68: DFT : The Discrete Fourier Transform

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−

=

= −∑

Page 69: DFT : The Discrete Fourier Transform

69

Circular Convolution Example

Page 70: DFT : The Discrete Fourier Transform

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

Page 71: DFT : The Discrete Fourier Transform

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

Page 72: DFT : The Discrete Fourier Transform

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⊗=

Page 73: DFT : The Discrete Fourier Transform
Page 74: DFT : The Discrete Fourier Transform

0][][][ 101kn

NDFT WnXnnnx =⎯⎯ →←−= δ

][][][][ 22130 kXWkXkXkX kn

N==

]))[((

]))[((][

][][][

02

2

1

01

213

N

N

N

k

nnx

knxkx

nxnxnx

−=

−=

⊗=

∑−

=

Page 75: DFT : The Discrete Fourier Transform

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

≤ ≤ −⎧= ⎨⎩

Page 76: DFT : The Discrete Fourier Transform

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

π

π

⎛ ⎞−⎜ ⎟= ⎜ ⎟⎜ ⎟−⎝ ⎠

Page 77: DFT : The Discrete Fourier Transform

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

Page 78: DFT : The Discrete Fourier Transform

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 ,// ππ

Page 79: DFT : The Discrete Fourier Transform

79

Likewise,

Hence, ,][ 611220 =+++=H

,][ 011222 =−+−=H,][ jjjH −=+−−= 11221

jjjH +=−−+= 11223][

4210 /][][][ kjehhkH π−+=4644 32 // ][][ kjkj eheh ππ −− ++

3022 232 ≤≤+++= −−− keee kjkjkj ,// πππ

Page 80: DFT : The Discrete Fourier Transform

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

Page 81: DFT : The Discrete Fourier Transform

81

If denotes the 4-point DFT of then

Thus

30 ≤≤= kkHkGkYC ],[][][

][kYC ][nyC

⎥⎥⎥

⎢⎢⎢

⎡−=

⎥⎥⎥

⎢⎢⎢

=⎥⎥⎥

⎢⎢⎢

20

224

33221100

3210

j

j

HGHGHGHG

YYYY

CCCC

][][][][][][][][

][][][][

Page 82: DFT : The Discrete Fourier Transform

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

Page 83: DFT : The Discrete Fourier Transform

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−

=

−∑

Page 84: DFT : The Discrete Fourier Transform

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 ,

],[][

Page 85: DFT : The Discrete Fourier Transform

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

= + + ++ + +

= = × =

Page 86: DFT : The Discrete Fourier Transform

86

Continuing the process we arrive at

,)()(][][][][][ 6222101101 =×+×=+= hghgy

][][][][][][][ 0211202 hghghgy ++= ,)()()( 5202211 =×+×+×=

][][][][][][][][][ 031221303 hghghghgy +++=

,)()()()( 521201211 =×+×+×+×=

][][][][][][][ 1322314 hghghgy ++= ,)()()( 4211012 =×+×+×=

,)()(][][][][][ 1111023325 =×+×=+= hghgy

111336 =×== )(][][][ hgy

Page 87: DFT : The Discrete Fourier Transform

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

Page 88: DFT : The Discrete Fourier Transform

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

Page 89: DFT : The Discrete Fourier Transform

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 π

Page 90: DFT : The Discrete Fourier Transform

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

πωω

Page 91: DFT : The Discrete Fourier Transform

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

Page 92: DFT : The Discrete Fourier Transform

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

Page 93: DFT : The Discrete Fourier Transform

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

πωω

Page 94: DFT : The Discrete Fourier Transform

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

Page 95: DFT : The Discrete Fourier Transform

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 π−=

Page 96: DFT : The Discrete Fourier Transform

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− =

Page 97: DFT : The Discrete Fourier Transform

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

− − −−

− − −

− − −

⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎢ ⎥= =⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎢ ⎥− −⎢ ⎥ ⎣ ⎦⎣ ⎦

Page 98: DFT : The Discrete Fourier Transform

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

Page 99: DFT : The Discrete Fourier Transform

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.

Page 100: DFT : The Discrete Fourier Transform

[ ] [ ] [ ]3 1 2m

x k x m x n m+∞

=−∞

= −∑

Page 101: DFT : The Discrete Fourier Transform

With aliasing

Without aliasing

Page 102: DFT : The Discrete Fourier Transform
Page 103: DFT : The Discrete Fourier Transform
Page 104: DFT : The Discrete Fourier Transform
Page 105: DFT : The Discrete Fourier Transform

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.

Page 106: DFT : The Discrete Fourier Transform

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 ,],[][

Page 107: DFT : The Discrete Fourier Transform

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

Page 108: DFT : The Discrete Fourier Transform

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

Page 109: DFT : The Discrete Fourier Transform

109

Terminology: Fast Convolution

Page 110: DFT : The Discrete Fourier Transform

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

Page 111: DFT : The Discrete Fourier Transform

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”.

Page 112: DFT : The Discrete Fourier Transform

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

Page 113: DFT : The Discrete Fourier Transform

113

Using Linearity to Filter a Long Signal

Page 114: DFT : The Discrete Fourier Transform

114

Page 115: DFT : The Discrete Fourier Transform

115

Block Convolution - Overlap Add Method

Page 116: DFT : The Discrete Fourier Transform

116

Segmenting the Input in OLA

Page 117: DFT : The Discrete Fourier Transform

117

Putting the Output Pieces Together

Page 118: DFT : The Discrete Fourier Transform

118

Filtering the Segments

Page 119: DFT : The Discrete Fourier Transform

119

Block Convolution - Overlap Save Method

Page 120: DFT : The Discrete Fourier Transform

120

Linear Convolution Example Again

Page 121: DFT : The Discrete Fourier Transform

121

Aliased Convolution

Page 122: DFT : The Discrete Fourier Transform

122

Page 123: DFT : The Discrete Fourier Transform

123

OLS Method - Segmenting the Input

Page 124: DFT : The Discrete Fourier Transform

124

OLS Method - Extracting the Output

Page 125: DFT : The Discrete Fourier Transform

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

Page 126: DFT : The Discrete Fourier Transform

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.