ASPA Module 1
ASPA Module 1
ASPA Module 1
Processing Algorithms
01/13/16 2
Course Prerequisites
Knowledge of DSP
01/13/16 3
DSP Computations
01/13/16 4
DSP System Design Objective
01/13/16 5
Main Challenge in Design
01/13/16 6
Architectural Transformations
Pipelining
Retiming
Folding
Unfolding
Systolic
01/13/16 7
Algorithm Transformations
Strength reduction
Look ahead
Relaxed look ahead
01/13/16 8
Terms used…and already known to
you……
Correlation
Convolution
Digital filters
DCT
Quantization
Viterbi Algorithm
01/13/16 9
Typical DSP Algorithms
DSP Algorithm System Applications
Speech Coding and Digital cellular phones, cordless phones,
decoding multimedia computers
Speech Recognition User interfaces, Automotive applications,
Digital cellular phones
Modem Algorithms Digital cellular phones, personal
communication system, Wireless, facsimile,
multimedia computers
Noise cancellation Professional audio, Advanced vehicular
audio
Image Compression Digital cameras, Digital video, multimedia
and Decompression
Beam forming Navigation, Radar, Signal intelligence
01/13/16 10
Scaled CMOS technology & DSP applications
(will be discussed in detail in Module-2)
01/13/16 11
Discrete Fourier Transform
The DFT provides uniformly spaced samples of the Discrete-
Time Fourier Transform (DTFT).
OR
then
Discrete Fourier Transform
Example:
Determine Discrete Fourier Transform (DFT) of the following sequence:
x[n] = an u [n] a 1
X
[
k
]
x
(
nT
)
e
au
(
n
)
e
j
2
k
n
N
j
2
k
n
n N
n
n
X
[
k
]a
e
(
ae)
k
j
2
nN
n 2
k
j
N n
n
0
n
0
1
X
[
k
]2 k
N k = 0 , 1 , 2 , 3 , …..…, N-1
j
1
ae
Discrete Fourier Transform
Example:
X
[
k
]
x
(
n
)
e
a
u
(
n
3
)
e
X
[
k
]a
e
X
[
k
]
(
3
a
2
1
ae
)
j
6
e
j
ae
(
ae
k
k
N
)
n
n
n
3
n
n
j
2
k
j
2
k
n
N
N
j
n
n
2
k
NN
2
k
j
12
k
j
n Nn
Determine Discrete Fourier Transform (DFT) of the following sequence:
n
0
a 1
k = 0 , 1 , 2 , 3 , …………, N-1
n
3
Discrete Fourier Transform
Periodicity:
If x(n) and X(k) are N-point DFT pairs
Linearity:
Discrete Fourier Transform
Circular Convolution:
Discrete Fourier Transform
Multiplication of 2 DFT sequence:
Suppose we have 2 finite-duration sequences of length N, x1(n) and
x2(n)
Multiplication property
m=0 m=2
= 14 = 14
m=1 m=3
= 16 = 16
Circular Convolution
Circular Convolution
Circular Convolution
N
1
2nk
1
j
x
[n
] X[
k]eN
N
n0
IDFT 1/4
Fast Fourier Transform
Fast Fourier Transform
1807-> J.B.J. Fourier- First published Fourier Series
for theory of heat
1822-> Revised Fourier theory
1829-> Dirichlet proved Fourier’s claim
1965-> (Next 150 years) Cooley & Tukey expanded
and generalized the ideas of Fourier and introduced
FFT.
FFT- King of all transforms, countless number of
applications in Engg., Finance, Engg. Mathematics,
Signal processing etc.
FFT is what signal processing made possible!!!
Fast Fourier Transform
The DFT is computable transform, the straightforward implementation
is very inefficient, especially when the sequence length N is large.
FFT decomposes the computation of the DFT of a sequence of length N
into successively smaller DFTs.
DFT definition:
N
1
2nk
2nk 1
N1 j
j
X
[
k]x[
n]
e N x
[n
] X[
k]eN
n0
N
n0
N 1
X [k ] x[ n ] WN
nk
X(k)=WNx(n) (WN: N*N, x: 1*N, X: 1*N)
n 0
Symmetry:
Periodicity: CN=N×log2N
For
Multiplication
example:
is reduced by
factor 2
Note that two length N/2 DFTs take less computation than one length N
DFT: 2(N/2)2<N2
Algorithms that exploit computational savings are collectively called
Fast Fourier Transforms. The common algorithm is Radix-2 FFT
Fast Fourier Transform
Efficient algorithms for computing the DFT
Two different approaches:
Divide and conquer approach->DFT of size N is
reduced to the computation of smaller DFTs from
which larger DFT is computed
Decimation in Time (DIT) algorithm
Decimation in Frequency (DIF) algorithm
Linear filtering operation
Goertzel algorithm
Chirp-Z transform
FFT makes strategic use of following 2 complex
identities:
Fast Fourier Transform
Symmetry property:
Periodicity property:
Fast Fourier Transform
Cooley-Tukey algorithm:
Based on decimation, leads to a factorization of
computations.
N point DFT: N=rv where r=radix of the FFT
algorithm. e.g. For N=8, v=3 as 8=23 ; where
v=number of stages in FFT algorithm
Let us first look at the classical radix 2 decimation
in time (DIT).
This particular case of the algorithm requires the
time sequence length to be a power of 2.
First we split the computation between odd and
even samples:
Fast Fourier Transform
Derivation: Assume N is even and power of two
Derivation of the Radix-2 DIT FFT Algorithm (covered on board)
1
X
(
k
)
x
(
n
)W
2
nk
k
0
,
1
n
0
1 1
X
(
0
)x (n
)
W
2
n
0
x(
n
) x(
0
)
x(
1
)
n
0 n 0
1 1
X (1) 2 x ( n )W
n1
2
n
x ( n )W x ( 0 )W 2 0 x (1)W 2 1
n0 n0
X
[
0
]x
[
0
]
x
[1
]
X
[
1
]x
[
0
]
x
[1
]
b B=a - WrNb
8 64 52 12 24 5.3 times
2:
above
Radix-2 Decimation-In-Frequency (DIF) FFT Algorithm
n
0 n
0 n
N
/2
n
0 n
0 n
0
Substitute variables to get
N
/
2
1
X
2
r
1
x[
n
]
x
[
n
N
/
2
]
W
n
2
r
1
N
/
2
n
0
Decimation-In-Frequency (DIF) FFT Algorithm
Solution:
The number
of complex
multiplication
s are:
Example 4:
above
Inv. Fast Fourier Transform using DIF
Inv. Fast Fourier Transform using DIT
Summary
• References:
• DSP- by Proakis
• Adv. DSp- by Dr. Apte
• Web resources
01/13/16