Anda di halaman 1dari 46

Review of Discrete Fourier Transform

cwliu@twins.ee.nctu.edu.tw

4 Forms of Fourier Transform

Sampled frequency

cwliu@twins.ee.nctu.edu.tw

Continuous-Time and Continuous-Frequency

Continuous Aperiodic

Continuous Aperiodic

cwliu@twins.ee.nctu.edu.tw

Continuous-Time and Discrete-Frequency

Fourier series of periodic continuous signals

Periodic Continuous
cwliu@twins.ee.nctu.edu.tw

Discrete Aperiodic
4

Discrete-Time and Continuous-Frequency

Fourier transform of aperiodic discrete signals

Discrete Aperiodic
cwliu@twins.ee.nctu.edu.tw

Continuous Periodic
5

Discrete Fourier Transform

DFT is identical to samples of Fourier transforms In DSP applications, we are able to store only a finite number of samples we are able to compute the spectrum only at specific discrete values of
cwliu@twins.ee.nctu.edu.tw 6

Discrete Fourier Transform


Discrete Fourier transform (DFT) pairs
kn X [k ] = x[n]WN , k = 0,1, K , N 1 n =0 N 1

1 x[n] = N

kn X [ k ] W n = 0,1, K , N 1, N , k =0 j 2 kn N

N 1

N complex multiplications N-1 complex additions

kn where WN =e

DFT/IDFT can be implemented by using the same hardware It requires N2 complex multiplications and N(N-1) complex additions
cwliu@twins.ee.nctu.edu.tw 7

More About DFT


Properties of Discrete Fourier Transform Linear Convolution and Discrete Fourier Transform Discrete Cosine Transform

cwliu@twins.ee.nctu.edu.tw

Periodic Sequence
Consider a periodic sequence x [n] of period N The sequence can be represented by Fourier series 1 ~ ~ x [n] = X [k ]e j (2 / N )kn N k The Fourier series for any discrete-time signal with period N requires only N harmonically related complex exponentials.

Q ek +lN [n] = e j (2 / N )(k +lN )n = e j (2 / N )kn = ek [n]


1 ~ x [ n] = N ~ j ( 2 / N )kn X [ k ] e
k =0
9

N 1

cwliu@twins.ee.nctu.edu.tw

Apply the Orthogonality property, we have

Interchange the order of summation

The coefficients are also periodic with period N cwliu@twins.ee.nctu.edu.tw

10

DFS Representation of a Periodic Sequence

Synthesis equation

Analysis equation

~ X [k ] and ~ x [n] are periodic sequence of period N


cwliu@twins.ee.nctu.edu.tw 11

Physical Significance
Let One period

Then

cwliu@twins.ee.nctu.edu.tw 12

~ j X[k] vs X (e )
Example

cwliu@twins.ee.nctu.edu.tw

13

Sampling the Fourier Transform


Suppose Then exists
2 N

or The sampling sequence is periodic with period N Since

unit circle

cwliu@twins.ee.nctu.edu.tw

14

~ x [n] vs x[n]

By adding together an infinite number of shifted replicas of x[n]


cwliu@twins.ee.nctu.edu.tw 15

Aliasing Problem 1
x[n] is infinite-length sequence

~ x [ n]

cwliu@twins.ee.nctu.edu.tw

16

Aliasing Problem 2
If x[n] is finite-length sequence, 0nM-1 Consider the case N<M

~ x [ n]

~ x [n] x[n]
cwliu@twins.ee.nctu.edu.tw 17

Concluding Remarks
The case NM

~ x [ n]

or
cwliu@twins.ee.nctu.edu.tw 18

Property of DFT
Linearity
if of length N1 of length N2 then of length N3=max[N1 , N2]

cwliu@twins.ee.nctu.edu.tw

19

Circular Shift of a Sequence


N=15

x[n]

~ x [ n]

~ x [ n 2]

~ x [ n 2] R N [ n ]
cwliu@twins.ee.nctu.edu.tw

A rotation of the cylinder


20

Circular Shift of a Sequence


N=15

x[n]

~ x [ n]

~ x [n + 13]

~ x [n + 13]R15 [n]
cwliu@twins.ee.nctu.edu.tw

A rotation of the cylinder


21

Property of DFT
Circular Shift
if then of length N

m
that is On the other hand

A rotation of the sequence in the interval

0 n N-1 0 l N-1
cwliu@twins.ee.nctu.edu.tw 22

Other Properties of DFT


Duality
8.6.3

Symmetry
8.6.4

cwliu@twins.ee.nctu.edu.tw

23

More About DFT


Properties of Discrete Fourier Transform Linear Convolution and Discrete Fourier Transform Discrete Cosine Transform

cwliu@twins.ee.nctu.edu.tw

24

Review of Convolution
x L-point sequence h N-point sequence s (L+N-1)-point sequence

Given two sequences:


Data sequence xi, 0 i N-1, of length N Filter sequence hi, 0 i L-1, of length L

Linear convolution

Direct computation, for example 2-by-2 convolution

yi = xi hi = hi xi , i = 0,1, K, L + N 2
s0 h0 0 s = h h x0 0 1 1 x 1 s 0 h cwliu@twins.ee.nctu.edu.tw 1 2

NL multiplications

require 4 multiplications and 1 addition


25

Linear Convolution
Linear Shift

Linear Shift Linear Shift

cwliu@twins.ee.nctu.edu.tw

26

Linear Shift vs Circular Shift

Conventional shift (linear shift)


cwliu@twins.ee.nctu.edu.tw 27

Circular Shift Example

cwliu@twins.ee.nctu.edu.tw

28

Periodic/Circular Convolution

Circular Shift

cwliu@twins.ee.nctu.edu.tw

29

Circular Convolution Definition


Suppose two finite-length duration sequences: x1[n] and x2[n] of length N

x3[n] is also a finite-length duration sequences of length N

cwliu@twins.ee.nctu.edu.tw

30

Computation for Circular Convolution


1. To period the two sequence with period N (large enough) 2. To compute the periodic convolution of the two periodic sequences 3. To get out the duration sequence between [0, N-1]

cwliu@twins.ee.nctu.edu.tw

31

Example
Step 2

Step 1

Step 3

cwliu@twins.ee.nctu.edu.tw

32

Circular Convolution Property


Usually, we use the following notation to represent the circular convolution of length N

Circular convolution property

cwliu@twins.ee.nctu.edu.tw

33

Circular Convolution Implementation


Direct Implementation
x N-point sequence 44 cyclic convolution Circular Convolution h N-point sequence s N-point sequence

~ O(N2) 16 multiplications 12 additions


cwliu@twins.ee.nctu.edu.tw 34

Using Circular Convolution to Implement Linear Convolution


Consider two sequences x1[n] of length L and x2[n] of length P, respectively The linear convolution x3=x1[n] x2[n]

a sequence of length L+P-1

Choose N, such that NL+P-1, then

The same concept related to Winogrand Algorithm

cwliu@twins.ee.nctu.edu.tw

35

Linear Convolution

cwliu@twins.ee.nctu.edu.tw

36

Circular Convolution with N=L+P-1

Time aliasing in the circular convolution of two finite-length sequence can be avoided if N L+P-1
cwliu@twins.ee.nctu.edu.tw 37

Concluding Remarks
The convolution of two finite-length sequences can be interpreted by circular convolution with large enough length Circular convolution can be implemented by DFT/FFT

However, in real applications.


A large delay in processing An indefinite memory

For an FIR system, the input sequence is of indefinite duration To store the entire input signal requires ? Block convolution
cwliu@twins.ee.nctu.edu.tw 38

Block Convolution
Step1: To segment a sequence into sections of length L Step2: Each section is convolved with the finite-length impulse response of length P by using DFT/FFT of length N=L+P-1 Step3: The filtered sections are fitted together in an appropriate way Overlap-add method Overlap-save method
cwliu@twins.ee.nctu.edu.tw 39

Overlap-Add Method
h[n] x h y x[n]

Step1

Zero padding

Zero padding Zero padding


cwliu@twins.ee.nctu.edu.tw 40

Step2 & Step3

yr [n] = xr [n] h[n] = xr [n] N h[n]


Time shift

with L+P-1 length

Time shift

cwliu@twins.ee.nctu.edu.tw

41

Overlap-Save Method
Suppose L > P. Consider an L-point circular convolution of a P-point impulse response h[n] with an L-point input sequence xr[n]
Due to aliasing problem, the first (P-1)-point of the result is incorrect the remaining points [P, L-1] are identical to those that would be obtained by linear convolution

Step1: To segment a sequence into sections of length L such that each section overlaps the preceding section by (P-1) points Step2: Each section is convolved with the finite-length impulse response of length P by using DFT/FFT of length L Step3: The first (P-1)-point of each filtered sequence must be discarded. The remaining samples from successive sections are then abutted to construct the final output.
cwliu@twins.ee.nctu.edu.tw

42

Step1

cwliu@twins.ee.nctu.edu.tw

43

Step2 & Step3

cwliu@twins.ee.nctu.edu.tw

44

Fast Convolution with the FFT


Given two sequences x1 and x2 of length N1 and N2 respectively Consider using FFT to convolve two sequences:
Direct implementation requires N1N2 complex multiplications

Pick N, a power of 2, such that NN1+N2-1 Zero-pad x1 and x2 to length N Compute N-point FFTs of zero-padded x1 and x2, one obtains X1 and X2 Multiply X1 and X2 Apply the IFFT to obtain the convolution sum of x1 and x2 Computation complexity: 2(N/2) log2N + N + (N/2)log2N
cwliu@twins.ee.nctu.edu.tw 45

Example
A sequence x[n] of length 1024 FIR filter h[n] of length 34 Direct computation: 341024=34816 Using radix-2 FFT: 35840 (N=2048) Using overlap-add radix-2 FFT:

x[n] is segmented into a set of contiguous blocks of equal length 95 Apply radix-2 FFT of length 128 Each segment requires 1472 multiplications This algorithm requires total 16192 multiplications

cwliu@twins.ee.nctu.edu.tw

46

Anda mungkin juga menyukai