Adsp PDF
Adsp PDF
IMPLEMENTATION
Presented by-
Sunil Kumar
PHD Scholar
PHD/EC/10006/2019
ECE Department, BIT Mesra
OUTLINE
Introduction
Multirate processing
Downsampling
Upsampling
Polyphase implementation of FIR
filters decimation case
Polyphase implementation of FIR
filters interpolation case
INTRODUCTION
Polyphase filters are becoming a very
important component in the design of
various filter structures due to the fact
that it reduces the cost and complexity
of the filter by doing the process of
decimation prior to filtering which
reduces the multiplications per input
sample
Polyphase filtering is a computationally
efficient structure for applying resampling
and filtering to a signal. Most digital filters
can be applied in a polyphase format, and
it is also possible to create efficient
resampling filterbank
Multirate Processing
Involves two actions on the digital signal:
Downsampling: resampling downwards the
digital signal in the digital domain.
M 1 k
1
y( m ) x ( mM ) x ( n) ( n mM )
1 j 2
x(n)e
n
x( n) M
m M M k 1
Folding term
Downsampling
Anti-aliasing Filter
fc : (Fe/M)/2
x(n) H(z) M y(m)
Fe Fe/M
H(zM) M M H(z)
Y (z) y( n) z
n
n
x( m ) z
m
L m
X zL
Upsampling
Interpolating Filter
fC : (Fe/L)/2
x(m) L H(z) y(n)
Fe LFe
mM 1
H z h( n ) z n
n0
Let n=lM+k
M 1 N / M 1
H z z Ek z
k M with E k z hlM k z l
k 0 l 0
Polyphase Implementation of FIR Filters
Decimation Case 2 of 4
Processing load (MAC/s)
H(z) M
N
E0(zM)
z-1
E1(zM) MTe Time
z-1
• M-1 filter evaluation over M
Fe Fe/M
Polyphase Implementation of FIR Filters
Decimation Case 3 of 4
Using noble identity
z-1
M EM-1(z)
MTe Time
Fe Fe/M
• No more useless computations, but one sampling period over M, CPU is
burdned with N MAC/s.
Polyphase Implementation of FIR Filters
Decimation Case 4 of 4
Equivalent commutator model
E1(z)
N/M
EM-1(z)
MTe Time
Fe Fe/M
• Commutator runs at Fe,. At each input sample only one component is computed and accu-
mulated with the result of the previous one. The result is output when the last component
is reached and accumulator is reset. This spreads the processing load over MTe.
Polyphase Implementation of FIR Filters
Interpolation Case 1 of 5
L H(z) L R(zL)
lL1
H z h( n) z n
n0
Let n=mL+L-1-k
L 1 N / L 1
H z z ( L 1 k )
Rk z L with Rk z hmL L 1 k z m
k 0 m 0
Polyphase Implementation of FIR Filters
Interpolation Case 2 of 5
Processing load (MAC/s)
L H(z)
N
L R0(zL)
z-1
Fe LFe
Polyphase Implementation of FIR Filters
Interpolation Case 3 of 5
Using noble identity
R1(z) L
z-1
RM-1(z) L
Fe LFe
Polyphase Implementation of FIR Filters
Interpolation Case 4 of 5
Equivalent commutator model
R1(z)
N/L
RM-1(z)
Te/L Time
Fe LFe
• For each output sampling instant one polyphase component is computed.
When we reach again the first component (M-1) a new input sample is inputed
in the delay line of each polyphase component.
Polyphase Implementation of FIR Filters
Interpolation Case 5 of 5
Linear Periodically Varying Time system
z-1 z-1
z-1 z-1
h0 hL h2L
Polyphase Decomposition
The Decomposition
Consider an arbitrary sequence {x[n]}
with a z-transform X(z) given by
n
X ( z) n x[ n ] z
We can rewrite X(z) as
M 1 k
X ( z) M
k 0 z X k ( z )
where
n n
X k ( z) n xk [n] z n x[Mn k ] z
0 k M 1
18
Polyphase Decomposition
19
Polyphase Decomposition
The relation between the subsequences{xk [n]}
and the original sequence {x[n]} are given by
In matrix form we can write
xk [n] x[Mn k ], 0 k M 1
X0(zM )
X ( z ) 1 M
z 1 .... z ( M 1) X1.( z )
..
X . M
20 M 1 ( z )
Polyphase Decomposition
21
Polyphase Decomposition
The polyphase decomposition of an IIR
transfer function H(z) = P(z)/D(z) is not that
straight forward
One way to arrive at an M-branch polyphase
decomposition of H(z) is to express it in the
form P '( z ) / D '( z M ) by multiplying P(z) and
D(z) with an appropriately chosen polynomial
and then apply an M-branch polyphase
decomposition to P '( z )
22
FIR Filter Structures Based on
Polyphase Decomposition
M 1 k
H ( z) k 0 z Ek ( z M)
23
FIR Filter Structures Based on
Polyphase Decomposition
24
FIR Filter Structures Based on
Polyphase Decomposition
25
Conclusion
• The multirate operations of decimation and
interpolation that were introduced in the previous
section will now be used to decompose any system
function H(z) into its polyphase representation