Professional Documents
Culture Documents
Processing
Sampling Rate Conversion
If a digital signal is formed by properly sampling an analog
signal, it is possible in principle, to convert it back to analog
form and re-sample it at a new sampling rate. But it would be
better to directly change from one sampling rate to another
without going through the analog form.
() (
x t = 2 f c / f sx c sx
n=
0 , otherwise 2
Sampling Rate Conversion
x ( t ) = 2 ( f / f ) x ( nT ) sinc ( 2 f ( t nT ))
c sx sx c sx
n=
()
If we sample x t at a rate f sy > f s x to form y n then
( ) x ( nT ) sinc ( f ( mT ))
y m = x mTsy = sx sx sy
nTsx
n=
(
y m = x mTsx = sx sx sx
n= n=
x ( nT ) sinc ( f ( mT )) , f
y m = sx sx sy
nTsx sy
> f sx
n=
or
x ( nT ) sinc ( mT )
y m = sx sy
/ Tsx n , f sy > f sx
n=
Letting k = km n,
x (( k ) )
y m = m ( )
k Tsx sinc k + m , f sy > f sx
k =
5
Sampling Rate Conversion
Downsampling by a factor D
to produce x s n = x n D n .
6
Sampling Rate Conversion
The discrete-time Fourier series harmonic function for D
n is
1 j 2 kn/ D
D
k =
D n= D m=
n mD
e
1 D1 j 2 kn/ D
= e
n mD = 1 / D
D n=0 m=
Therefore
D1
1 D1 j 2 kn/ D
D
n = D
k e j 2 kn/ D = e
k =0 D k =0
The z transform of x s
n = x
n D
n is
n
()
D1
1
X s z = x
n D
n z =
n
x
n e j 2 kn/ D
z
n= D n= k =0 7
Sampling Rate Conversion
z = x n ( e )
X ( z ) = x n e
D1 D1
1 1 j 2 kn/ D n j 2 k / D 1
n
s
z
D k =0 n= D k =0 n=
1 D1
(
= X ze j 2 k / D
D k =0
)
( ) 1 D1
( ) ( )
D1
= X e j e j 2 k / D = X e (
1 j 2 k / D )
X s e j
D k =0 D k =0
8
Sampling Rate Conversion
To reduce the number of samples, decimate the sampled signal
to form x d n = x s Dn . The z transform of x d n is
()
Xd z = x d n z n = x s Dn z n . Let m = Dn.
n= n=
( )
()
Then X d z = x s m z m/ D = x s m z m/ D = X s z1/ D
m= m=
m/ D an
integer
()
1 D1
(
X d z = X z1/ D e j 2 k / D
D k =0
) 9
Sampling Rate Conversion
( ) 1 D1
( ) ( )
D1
1 j ( 2 k ) / D
X d e j = X e j/ D j 2 k / D
e = X e
D k =0 D k =0
10
Sampling Rate Conversion
11
Sampling Rate Conversion
A discrete-time expansion by a factor of I corresponds to a
discrete-time-frequency compression by the same factor.
() ( ) ( ) ( )
X s z = X z I X s e j = X e jI
12
Sampling Rate Conversion
An ideal lowpass filter with transfer function
1 , < / I
( ) (( )
H e = rect I 2 k / 2 =
j
)
k = 0 , / I < <
could be used to interpolate between sample values yielding
( ) ( ) rect ( I ( 2 k ) / 2 )
X i e j = X s e j
k =
( ) ( )
which corresponds to x i n
= x s n
1 / I sinc n / I in the
time domain.
13
Sampling Rate Conversion
14
Polyphase Filters
The polyphase filter was developed for the efficient
implementation of sampling rate conversion. Any transfer
function is of the form
()
H z = + h 0 + z 1 h 1 + + z k h k +
which can be regrouped and written as
()
H z = + h 0 + z M h M +
+ z ( ) h M + 1 +
M +1
z -1h 1
-( M -1) ( 2 M 1)
z h M -1 + z h 2 M 1 +
15
Polyphase Filters
()
H z = + h 0 + z M h M +
(
z -1 h 1 )
+ z M h M + 1 +
(
z ( ) h M -1 + z M h 2 M 1 +
- M -1
)
This can be written compactly as
( )
M 1
()
H z = z Pi z
1 M
() (
where Pi z = )
h nM + i z n
i=0 n=
17
The Noble Identities
The relationships between a signal and a decimated version of
( ) ( )
the signal was found to be X e j = D X d e jD , 0 < < / D.
It then follows that, in the z domain,
() ( ) () (
X z = D X d z D and X d z = 1 / D X z1/ D ) ( )
for signals sampled according to the sampling theorem.
Consider a downsampler followed by a filter with input signal
x n and output signal y n and let the downsampler output
be y1 n .
18
The Noble Identities
() ( ) ( ) () () ()
Y1 z = 1 / D X z1/ D and Y z = H z Y1 z
Therefore Y ( z ) = (1 / D ) H ( z ) X ( z ) .
1/ D
The two output signals are not the same because the
downsampler is not an LTI system. But they would
()
be the same if z z D in H z in the second system.
19
The Noble Identities
For decimators
For interpolators
20
Cascaded Integrator Comb
Filters
In both decimation and interpolation a lowpass filter is
needed. The cascaded integrator comb filter is an efficient
structure for lowpass filtering in decimation or interpolation.
Its transfer function is
M 1
1 z M
( ) z
H z = k
=
1 z 1
k =0
21
Cascaded Integrator Comb
In decimation
Filters
In interpolation
22
Cascaded Integrator Comb
Filters
The transfer function of the cascaded integrator filter can be
written as
M 1
()
H z = z k
= 1+ z 1
+ z 2
+ + z
( M 1)
k =0
( )( )
M 1
()
For M = 4, H z = z k
= 1+ z 1
+ z 2
+ z 3
= 1+ z 1
1+ z 2
.
k =0
For M = 8, H ( z ) = 1+ z 1
+ z 2 + z 3 + z 4 + z 5 + z 6 + z 7
( )(
= 1+ z 1 1+ z 2 1+ z 4 )( )
() ( )(1+ z )(1+ z 2( )
)
k 1
1 2
For M = 2 , H z = 1+ z
k
23
Cascaded Integrator Comb
Filters
24
Polyphase Structures in
Decimation and Interpolation
The basic decimator model is a lowpass filter followed by
a downsampler.
25
Polyphase Structures in
Decimation and Interpolation
Filter Decimate Decimate Filter
Less Efficient More Efficient
26
Polyphase Structures in
Decimation and Interpolation
This commutator structure
is a convenient way to
implement a polyphase
decimator.
27
Polyphase Structures in
Decimation and Interpolation
Interpolate Filter Filter Interpolate
Less Efficient More Efficient
28
Polyphase Structures in
Decimation and Interpolation
This commutator structure
is a convenient way to
implement a polyphase
interpolator.
29
Phase Shifter
Sometimes it is desired to delay a signal x n by a fraction
of the time between samples Tsx . If that fraction is k / I and
k and I are both integers, the delay can be acccomplished by
sample-rate conversion methods.
30
Phase Shifter
31
Subband Coding
Because most of the power of speech signals is at the lower
frequencies it is efficient to use more bits on the low frequency
part of the spectrum. Subband coding accomplishes that by
filtering and decimating multiple times.
32
Subband Coding
The speech signal can be recovered by doing the opposite of
subband coding.
33
Digital Filter Banks
frequency response
sin ( N / 2 )
( )=e
H e j j( N 1) /2
sin ( / 2 )
34
Digital Filter Banks
sin ( N / 2 )
( )=e
H e j j( N 1) /2
sin ( / 2 )
35
Digital Filter Banks
The output signal from the kth filter would be
sin ( N / 2 )
Yk e( ) = ( X (e ) ( 2 k / N )) e
j j j( N 1) /2
sin ( / 2 )
sin ( N / 2 )
Yk e( ) = X (e
j j ( 2 k / N )
)e j( N 1) /2
sin ( / 2 )
or, in the time domain
( )
n
y k [ n ] = x [ n ] e j 2 kn / N h [ n ] = x [ n m ] e j 2 k ( nm ) / N
m=n ( N 1)
N 1
y k [ N 1] = x [ q ] e j 2 kq / N which, at any time n, is X [ k ]
q=0
( )
n
y k [ n ] = x [ n ] e j 2 kn / N h 0 [ n ] = h 0 [ n m ] x [ m ] e j 2 km / N
m=n ( N 1)
37
Digital Filter Banks
An analysis filter
bank with decimation.
38
Quadrature Mirror Filters
The two-channel quadrature mirror structure
39
Quadrature Mirror Filters
The Fourier transforms of the output signals from the analysis
section are
X a0 e( )j 1
2
( ) ( ) ( ) ( )
= X e j/2 H 0 e j/2 + X e j(2 ) /2 H 0 e j(2 ) /2
and
( ) 1
( ) ( ) ( ) (
X a1 e = X e j/2 H1 e j/2 + X e j(2 ) /2 H1 e j(2 ) /2
j
2
)
The Fourier transform of the output signal from the synthesis section is
( ) ( ) ( ) ( ) ( )
X̂ e j = X s 0 e j 2 G 0 e j + X s1 e j 2 G1 e j
40
Quadrature Mirror Filters
If we connect the outputs from the analysis section to the
inputs of the synthesis section we get
( ) 1
( ) ( ) ) ( ( ) ( )
X̂ e = X e j H 0 e j + X e j( ) H 0 e j( ) G 0 e j
j
2
1
( ) ( ) ( ) ( ) ( )
+ X e j H1 e j + X e j( ) H1 e j( ) G1 e j
2
( ) ( ) ( ) ( ) ( )
which can be written as X̂ e j = Q e j X e j + A e j X e j( )
or in the z domain as X̂ ( z ) = Q ( z ) X ( z ) + A ( z ) X ( z )
where
Q ( z ) = (1 / 2 ) H 0 ( z ) G 0 ( z ) + H1 ( z ) G1 ( z )
A ( z ) = (1 / 2 ) H 0 ( z ) G 0 ( z ) + H1 ( z ) G1 ( z )
41
Quadrature Mirror Filters
The second term A ( z ) X ( z ) is an undesirable alias. If we
set A ( z ) = 0 we get
H 0 ( z ) G 0 ( z ) + H1 ( z ) G1 ( z ) = 0
( ) ( ) (
H 0 e j( ) G 0 e j = H1 e j( ) G1 e j ) ( )
Then if we set
( ) (
G 0 e j = H1 e j( ) ) ( ) (
and G1 e j = H 0 e j( ) )
we get
( ) ( ) ( ) (
H 0 e j( ) H1 e j( ) = H1 e j( ) H 0 e j( ) )
and A ( z ) = 0.
42
Quadrature Mirror Filters
( )
If H e j is lowpass
and we set
( ) ( ) (
H 0 e j = H e j = H1 e j( ) )
then H ( e ) is highpass
1
j
G 0 ( z ) = H ( z ) , G1 ( z ) = H ( z )
for elimination of aliases.
43
Quadrature Mirror Filters
44
Quadrature Mirror Filters
One frequent use of quadrature mirror filters is to break
a signal into multiple parts with the analysis section,
analyze the parts and then reconstruct the signal in the
synthesis section. What is the requirement for perfect
reconstruction? Since we know that
X̂ ( z ) = Q ( z ) X ( z ) + A ( z ) X ( z )
and we want the synthesized signal to be a delayed version
of the original signal we want X̂ ( z ) = z k X ( z ) . If we
have already eliminated the aliases we have
zk X(z) = Q(z) X(z)
Q ( z ) = (1 / 2 ) H 0 ( z ) G 0 ( z ) + H1 ( z ) G1 ( z ) = z k 45
Quadrature Mirror Filters
Combining
zk X(z) = Q(z) X(z)
Q ( z ) = (1 / 2 ) H 0 ( z ) G 0 ( z ) + H1 ( z ) G1 ( z ) = z k
with the elimination of aliases we get
(1 / 2) H ( z ) H ( z ) H ( z ) H ( z ) = z k
or
( ) ( )
H 2 ( z ) H 2 ( z ) = 2z k H 2 e j H 2 e j( ) = 2e jk
which implies that
( ) (
H 2 e j H 2 e j( ) = 2 )
for perfect reconstruction.
46
Polyphase Quadrature Mirror
Filters
Let
( ) ( )
H 0 ( z ) = P0 z 2 + z 1P1 z 2
H (z) = P (z ) z P (z )
1 0
2 1
1
2
Then
( ) ( )
G 0 ( z ) = P0 z 2 + z 1P1 z 2
G ( z ) = P ( z ) z P ( z )
1 0
2 1
1
2
47
Polyphase Quadrature Mirror
Filters
If the analysis and synthesis sections are cascade connected and
the noble identities are used to make the computations more efficient
we get
48
Perfect Reconstruction QMF
Perfect reconstruction of the input signal can be acheived by
an FIR half-band filter of length 2N 1. A half-band filter
is a zero-phase FIR filter whose impulse response b [ n ] satisfies
constant , n = 0
b [ 2n ] =
0 , n0
If it is zero-phase then b [ n ] = b [ n ]. The frequency response
( ) b[ n ]e
K
jn
is B e j = where K is odd.
n= K
49
Perfect Reconstruction QMF
( ) b[ n ]e
K K
B e j = jn
= b [ 0 ] + 2 b [ n ] cos ( n )
n= K n=1
n odd
( K 1) /2
( )
B e j = b [ 0 ] + 2 b[ 2n + 1] cos (( 2n + 1) )
n=0
( )
B e j( ) = b [ 0 ] 2 { b [1] cos ( ) + b [ 3] cos ( 3 ) + + b [ K ] cos ( K )}
( ) ( )
B e j + B e j( ) = 2 b [ 0 ] a constant for all .
50
Perfect Reconstruction QMF
As an example let
,0,0,1 / 7,0,1 / 5,0,1 / 3,0,1,
b[ n ] =
,1,0,1 / 3,0,1 / 5,0,1 / 7,0,0,
2
Then
( )
B e = + 2 {cos ( ) + cos ( 3 ) / 3 + cos ( 5 ) / 5}
j
51
Perfect Reconstruction QMF
The filter with impulse response b [ n ] is non-causal. It can be
made causal by delaying it by K samples. Also the frequency
( )
response B e j goes negative at some frequencies. If we add
a term B just large enough to make it non-negative at all
( ) ( )
frequencies we get B+ e j = B e j + B . Since it is non-negative
it is possible to write it in the form
( ) ( ) ( ) ( )
2
B+ e j
= H e j
= H e j H e j
Since h [ n ] h [ n ] H ( e ) H ( e ) we can say that
F j j
( ) = H (e ) ( ) ( )
e j( N 1) = H e j H e j e j( N 1)
2
j j
B+ e
Using the fact that
b [1] cos ( ) + b [ 3] cos ( 3 ) +
( )
B e = b[ 0 ] + 2
j
+ b [ K ] cos ( K )
it follows that
b [1] cos ( ) + b [ 3] cos ( 3 ) + j( N 1)
( )
B+ e j
= b[ 0 ] + 2 + B e
+ b [ K ] cos ( K )
53
Perfect Reconstruction QMF
After a few lines of algebraic simplification we can show that
( )
B+ e j + ( 1)
N 1
(
B+ e j( ) )
( ) ( )
= B+ e j B+ e j( ) = 2 b [ 0 ] e j( N 1) = e j( N 1)
where = 2 b [ 0 ] a constant. It then follows that
( )
H ( z ) H z 1 + H ( z ) H z 1 = ( )
Then combining the conditions for perfect reconstruction
with the conditions for elimination of aliases,
H0 ( z ) = H ( z )
(
H1 ( z ) = z ( N 1) H 0 z 1 )
G 0 ( z ) = H1 ( z ) = ( z ) ( )
( N 1)
( )
H 0 z 1 = z ( N 1) H 0 z 1
G1 ( z ) = H 0 ( z ) = z ( N 1 )
H (z )
1
1 54
Perfect Reconstruction QMF
As an example let H ( z ) = (1 / 2 ) (1 + z ) .
0
1
55
Perfect Reconstruction QMF
The four impulse responses are
( )
h 0 [ n ] = 1 / 2 ( [ n ] + [ n 1])
h [ n ] = (1 / 2 ) ( [ n ] [ n 1])
1
g [ n ] = (1 / 2 ) ( [ n ] + [ n 1])
0
g [ n ] = (1 / 2 ) ( [ n ] [ n 1])
1
56