DFS PDF
DFS PDF
DFS PDF
4
Introduction . . . . . . . . . . . . . . . . . . . . . . . Periodic Sampling . . . . . . . . . . . . . . . . . . . . Frequency Domain Analysis . . . . . . . . . . . . . . 4.3.1 Continuous-Time Fourier TransformReview . . 4-3 4-4 4-5 4-6 Relating X.e j! / to Xc .j / and Xs .j / . . . . . . . . 4-11 Reconstruction of a Bandlimited Signal from Its Samples . . . . . . . . . . . . . . . . . 4-13 Discrete-Time Processing of Continuous-Time Signals 4.6.1 4.6.2 4-16 Linear Time-Invariant Discrete-Time Systems . . 4-17 Impulse-Invariant Design . . . . . . . . . . . . . 4-23
4.7 4.8
Continuous-Time Processing of Discrete-Time Signals . . . . . . . . . . . . . . . . . . 4-27 Changing Sampling Rate using Discrete-Time Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31 4.8.1 4.8.2 Analog Techniques: . . . . . . . . . . . . . . . 4-31 Sampling Rate Reduction by an Integer Factor . 4-31
4-1
4.9
Increasing the Sampling Rate by an Integer Factor . . 4-37 4.9.1 Changing the Sampling Rate by a Rational Number Factor . . . . . . . . . . . . . . . . . . . . . 4-42
4.10 Multirate Signal Processing . . . . . . . . . . . . . . . 4-50 4.10.1 Interchanging of Filtering and Downsampling/Upsampling4-51 4.10.2 Polyphase Decompositions . . . . . . . . . . . . 4-52 4.10.3 Polyphase Implementation of Decimation Filters 4-56 4.10.4 Polyphase Implementation of Interpolation Filters 4-58 4.11 Discrete-Time Random Signals . . . . . . . . . . . . . 4-60 4.11.1 Probability . . . . . . . . . . . . . . . . . . . . 4-60 4.11.2 Random Variables . . . . . . . . . . . . . . . . 4-63 4.11.3 Random Processes . . . . . . . . . . . . . . . . 4-68 4.12 Digital Signal Processing of Analog Signals . . . . . . 4-86 4.12.1 Preltering to Avoid Aliasing . . . . . . . . . . 4-87 4.12.2 Analog-to-Digital (A/D) Conversion . . . . . . . 4-96 4.12.3 Analysis of Quantization Errors . . . . . . . . . 4-102 4.12.4 D/A Conversion . . . . . . . . . . . . . . . . . 4-107 4.13 Oversampling and Noise Shaping A/Ds and D/As . . 4-110 4.13.1 Oversampled A/D Conversion with Direct Quantization . . . . . . . . . . . . . . . . . . . . . . 4-111 4.13.2 Oversampling & Noise Shaping A/Ds . . . . . . 4-117 4.13.3 Oversampling & Noise Shaping D/As . . . . . . 4-125 4.14 Appendix A: Continuous vs. Discrete WSS Random Processes . . . . . . . . . . . . . . . . . . . . . . . . . 4-146 4.14.1 Continuous-Time Domain Denitions . . . . . . 4-146 4.14.2 Relationships to Discrete-Time Quantities . . . . 4-147 4.14.3 Alternate Power Spectrum Derivation . . . . . . 4-148
4-2
4.1. INTRODUCTION
4.1
Introduction
Discrete-time signals very often occur as a result of periodic (uniform) sampling continuous-time signals. As we will see later it is not too difcult to design a sampling system that allows reasonably accurate reconstruction of a continuous-time signal from discretetime samples. An important result is that continuous-time signal processing can be implemented by rst sampling, discrete-time processing, and then reconstruction of a continuous-time signal. The following block diagram illustrates such a system.
AntiAliasing Filter Sample & Hold ReconstructionFilter
A/D Converter
DSP Processor
D/A Converter
100 ... 1 000 ... 1 111 ... 0 110 ... 0 111 ... 1 010 ... 0
001 ... 1 001 ... 0 110 ... 1 010 ... 1 111 ... 1 010 ... 0
4-3
4.2
Periodic Sampling
The most common method of obtaining a discrete-time representation of a continuous-time signal is via periodic sampling. We obtain xn from the continuous-time signal xc .t / by sampling every T seconds xn D xc .nT / 1 < n < 1: The sample spacing T is the sampling period The reciprocal of T , fs D 1=T is the sampling frequency (rate) in samples per second A mathematically convenient way of representing ideal sampling is shown below
C/D Converter s(t) xc ( t )
Conversion from Impulse Train to Discrete-Time xs ( t ) Sequence Equivalent block
Continuous to discrete (C/D) converter Here s.t / is an impulse train s.t / D and xs .t / D xc .t /s.t / D
4-4 1 X nD 1 1 X nD 1 ECE 5650/4650 Modern DSP
.t
nT /
xc .nT /.t
nT /
is a weighted impulse train, related to xn Note that xs .t / and xn differ in that xn is simply the sample values of xc .t / while xs .t / is composed of impulses with area equal to the sample values of xc .t /
xc ( t )
xs ( t )
T
x[n]
4 3 2 1 0 1 2 3 4
4 3 2 1 0 1 2 3 4
4.3
s /;
D 2 fs
kj
s/
4-5
4.3.1
The continuous-time Fourier transform pair that we are using is Z 1 X.j / D x.t / e j t dt 1 Z 1 1 x.t / D X.j / e j t d 2 1 For future reference dene the continuous-time rectangular window function as t 1; jt j < =2 0; otherwise Also dene the sinc() function as sinc.x/ sin x x
Continuous-time Fourier transform pairs x.t / x.t to/ e j ot x.t / x.t / cos. ot C '/ x1.t / x2.t / x1.t /x2.t / A.t / A e at u.t /; .jaj > 0/ x.t / D t 2B sinc.2Bt / P1 kT / k D 1 .t
4-6
X.j / e j to X.j / X.j j o/ 1 X.j j o/e j' C X.j 2 X1.j /X2.j / 1 X1.j / X2.j / 2 A 2 A. / 1=.a C j / sinc 2 4 B ; (B in Hz) P1 n o/; o nD 1 .
Cj
o /e
j'
2 T
Returning to the frequency domain analysis of sampling, we see that the F.T. of xs .t / consists of replicas of Xc .j / placed at all multiples of the sampling frequency s Suppose that xc .t / has bandlimited Fourier transform as shown below
Xc ( j )
Fourier transform of xc .t / If xc .t / is bandlimited to N we see from the following gure that no spectral overlap occurs in Xs .j / provided s N > N or s > 2 N
1 -T
Xs ( j ) ...
... N N s
( s N )
Spectrum of xs .t / for
ECE 5650/4650 Modern DSP
>2
N 4-7
1 -T
Xs ( j ) ...
Aliasing
...
( s N )
Spectrum of xs .t / for
<2
Exact recovery of xc .t / from xs .t / is possible if the frequency translated replicas of Xc .j / do not overlap when added together. Using an ideal lowpass lter we can recover xc .t / from xs .t / to within a 1=T scale factor.
s(t ) =
( t nT ) n = Hr ( j )
xc( t )
xs ( t )
xr ( t )
Xc( j ) 1
N < c < ( s N )
Hr ( j ) T
Sample
c
Fil te r
Recover
Xs ( j ) 1 -T
s > 2 N
1 Xr ( j )
Exact recovery using an ideal lowpass lter Hence we conclude that if Hr .j / is an ideal lowpass lter with gain T and cutoff frequency c chosen such that
N
<
<
N;
we can write Xr .j / D Xc .j / or xr .t / D xc .t / Note that if s < 2 N then xc .t / is not recoverable from xs .t / due to the presence of aliasing
4-9
Example 4.1:
Suppose that xc .t / D cos
ot
Xc ( j )
The spectrum of xc .t /
With o < s =2 we see from the following gure that using an ideal lowpass lter the reconstructed output is xr .t / D cos
Recovery LPF
ot
T -T s 0
Xs ( j )
Xr ( j )
0 < -T
0 s -----2
Pre and Post reconstruction spectra With s > o > s =2 we see from the following gure that using an ideal lowpass lter we can not recover the true xc .t /. The reconstructed output with aliasing is xr .t / D cos.
4-10 s o /t ECE 5650/4650 Modern DSP
Recovery LPF
T -T s 0
Xs ( j )
Xr ( j )
0 > -T
s ------ 0 s 2
( s 0 ) ( s 0 )
Pre and Post reconstruction spectra, with aliasing Nyquist Sampling Theorem Let xc .t/ be a bandlimited signal such that Xc .j / D 0 for j j >
N
Then xc .t / can be recovered from its samples xc .nT / also D xn, provided 2 >2 N D s T N is referred to as the Nyquist frequency 2
N
4.4
to /
j Tn
! Ae
to
xc .nT /e
4-11
/D
1 X nD 1
xne
j Tn
It now follows by variable substitution that Xs .j / D X.e j! /jwD and hence that X.e j
1 X 1 T /D Xc .j T kD 1 T
D X.e j
jk
s/
or equivalently that
1 X 1 ! X.e j! / D Xc j T T kD 1
2 k T
The transformation between X.e j! / and Xs .j / simply requires the frequency scaling ! D T With the above frequency scaling we see that while Xs .j / has period s , X.e j! / always has period 2 . This is consistent with the fact that xs .t / has sample spacing T D 1=fs and xn always has unit sample spacing.
4-12
4.5
At this point we know from the sampling theorem that it is possible to reconstruct a bandlimited signal from its samples. We are now interested in obtaining a time domain formula for reconstructing xc .t / directly from its samples xn. As the rst step we can write xs .t / D
1 X nD 1
xn.t
nT /
The reconstruction lter with frequency response Hr .j / has impulse response hr .t / so the lter output is xr .t / D xs .t / hr .t / D
1 X nD 1
xnhr .t
nT /
Recall that the ideal reconstruction lter is an ideal lowpass lter with gain T and cutoff frequency N < c < s =2 D =T , thus Y 1 hr .t / D F T 2 c T ct D c sinc The time domain formula for obtaining xr .t / from xn then is xr .t / D
1 X nD 1 ECE 5650/4650 Modern DSP 4-13
xnsinc
c .t
nT /=
As a special case we may choose as the cutoff frequency s =2 D =T , then we can write xr .t / D D
1 X nD 1 1 X nD 1
xnsinc.t xn
nT /=T
Note that the reconstruction lter interpolates signal values between the impulses in xs .t / to form xr .t /
xr ( t )
xs ( t )
Hr ( j )
-T
-T
xc ( t )
t xs( t )
t
T
xr( t )
t
T
Ideal bandlimited interpolation with the lowpass cutoff frequency set to the Nyquist frequency In future developments we will refer to the ideal discrete-tocontinuous-time (D/C) converter as a system which has frequency domain relationship Xr .j / D Hr .j /X.e j
T
xr ( t )
xs ( t )
Hr ( j )
Sampling Period T
Equivalent Blocks
x[ n]
D/C
T
xr( t )
4.6
A major application of discrete-time signal processing is in the processing of continuous-time signals. The processor blocks needed to accomplish this are shown in the following gure
xc( t )
C/D
x[ n] T
Discrete-Time System
D/C
y[n ] T yr ( t )
Discrete-time processing of continuous-time signals using a C/D-H.e j! /-D/C system Without specifying anything about the discrete-time system we can at the very least say that xn D xc .nT /
4-16 ECE 5650/4650 Modern DSP
2 k T
and yr .t / D
1 X nD 1
ynsinc.t
nT /=T
/; j j < =T otherwise
4.6.1
The process of relating xc .t / to yr .t / is now straightforward since LTI systems have the property that Y .e j! / D H.e j! /X.e j! / Direct substitution of the above result into the previous expression for Yr .j / yields Yr .j / D Hr .j /H.e j Yr .j / D Hr .j /H.e j /X.e j T / 1 X 1 T / Xc j T
kD 1 T
2 k T
4-17
If we further assume that the input is bandlimited, that is Xc .j / D 0 for j j =T , then the ideal reconstruction lter will remove all but the fundamental term (k D 0) in X.e j! /, i.e. Yr .j / D H.e j 0;
T
An alternate representation for Yr .j / is Yr .j / D Heff.j /Xc .j / where the effective continuous-time frequency response is dened as H.e j T /; j j < =T Heff.j / D 0; otherwise The above characteristic is valid only if (1) the discrete-time system is LTI, and (2) if xc .t / is bandlimited with Nyquist rate less than s
Example 4.2:
Consider an ideal lowpass lter with cutoff frequency !c . The discrete-time system response over the fundamental interval ; / is 1; j! j < !c H.e j! / D 0; otherwise
H(e 1 2 c 0 c 2
j
4-18
Assuming the input is bandlimited and sampled above the Nyquist rate, the effective continuous-time frequency response is Heff.j / D 1; j j < !c =T 0; otherwise
H eff ( j ) 1 c 0 ----T c ----T
Note that in the continuous-time domain the lowpass cutoff frequency is c D !c =T To be more specic suppose xc .t / has the bandlimited spectrum shown below
1 Xc( j ) 2 - N ---- T 2 ----T 2
...
2 ----T 2
N 0 N Xs ( j ) 1T N 0 -T N -T
...
Plots of Xc .j / and Xs .j /
ECE 5650/4650 Modern DSP 4-19
X( e ) 1T 2 c NT
j H( e ) ( 2 N T )
T Y(e 1T c -T ----T
jT
Hr ( j )
D/ C
Digital Filter
N T
j
2 ----T
1 T Y(e ) c c 2
2 ----T
Reconstruct
c ----T
T
/, and Yr .j /
The system is effectively an ideal lowpass lter with cutoff frequency c D !c =T A variable cutoff frequency lowpass lter can be implemented by simply varying the sample period T , in particular setting N T < !c results in no ltering, i.e. yr .t / D xc .t / Since the discrete-time system provides additional bandlimiting, the condition that N < s =2 to avoid aliasing may be relaxed. Specically the condition for no aliasing is .2
NT /
> !c ;
>
NT
4-20
Example 4.3:
Consider an LTI system with frequency response as shown below:
H(e
Amplitude j
s 2 fs 2
H ( e
Phase
2 s fs
Magnitude and phase response of H.e j! / Suppose this system is placed between ideal C/D and D/C converters to form a continuous-time processor with T D 0.2 seconds (fs D 5 samples/sec.). To consider the effect of not sampling above the Nyquist rate consider the system response to a sinusoidal input of the form xi .t / D sin 2 fi t; i D 1; 2; 3 where f1 D 1, f2 D 6, and f3 D 4 Hz. Note that after sampling with T D 0:2 we have x1n D x2n D x3n
ECE 5650/4650 Modern DSP 4-21
x 2 ( t ) = sin 12 t
x 1 ( t ) = sin 2 t
1.2 0.2
1.6 2.4
1 0 1 4 8
x 1 [ n ] = sin 2 n -- 5 n 12
Two continuous-time signals giving the same discrete-time sequence after sampling every 0.2 sec.
Input Signal x 1 ( t ) = sin 2 t t 1
f 1 = 1 Hz
DSP System A
H(e )
j
A/D
D/A
T = 0.2s
A A
----2 f 1 = 1 Hz
x ( t ) = sin 12 t 1 2
A/D D/A
y 2 ( t ) = A sin [ 2 t ]
Aliasing!
t 1
f 1 = 12 Hz
H(e )
t A A
----2 f 2 = 1 Hz
T = 0.2s x 3 ( t ) = sin 8 t
H(e )
j
y 3 ( t ) = A sin [ 2 t ] t
----2
A/D
D/A
t 1
f 1 = 4 Hz
T = 0.2s
Aliasing!
f3 = 1 Hz
4-22
4.6.2
Impulse-Invariant Design
We wish to implement a bandlimited continuous-time system, Hc .j /, using a C/D-H.e j! /-D/C system. We must choose H.e j! / and T such that Heff .j / D Hc .j /.
xc ( t )
Exchange
Continuous-Time System h c ( t ), H c ( j )
yc ( t )
Exchange
C/D
xc( t ) T x[ n]
Discrete-Time System j h [ n ], H ( e )
D/C
y[n ] T yc( t )
H eff ( j ) = H c ( j )
Desired LTI system; (top) continuous-time system (bottom) equivalent system for band limited inputs To obtain the desired response we must have H.e j! / D Hc .j!=T /; j! j < with T chosen such that Hc .j / D 0 for j j Note that if we let hn D F 1fHc .j /gjt !nT D hc .nT / then in the frequency domain we have
1 1 X ! Hc j H.e / D T T j! kD 1
=T
2 k T
4-23
On the interval
which is the desired result to within a constant To obtain an impulse-invariant version of the continuous-time system we thus specify that hn D T hc .nT /
A s s0
ECE 5650/4650 Modern DSP
In elementary circuit theory Hc .s/ would come from a simple RC lowpass lter with A D 1=RC and s0 D 1=RC , thus h.t / D 1 e RC
t=RC
u.t /;
Hc .s/ D
1 1 C sRC
Note: The lter 3dB frequency is f3 D 1=.2 RC / Applying the denition of impulse invariant simply requires that we set T hn D T hc .nT / D e nT =RC un D 2 f3T e 2 f3T n un RC The z -transform of the impulse invariant digital lter is H.z/ D 1 2 f3T e 2 f3T z
1
We now use MATLAB to compare the frequency response of the two lters for fs D 1=T D 10 kHz, and f3 D :1; 1, and 5 kHz As a practical matter we will rst match the gains of the two lters at dc 1 D1 Hc .j /j D0 D 1 C j =2 f
3 D0
2 f3T e 2 f3T e
j0 4-25
Thus to match the dc gain of the analog lter we must set GD 1 e 2 f3 T 2 f3T
>> f = 0:10/200:10; >> Hc = 1./(1 + j*f/.1); >> H = (1 - exp(-2*pi*.1/10))./... (1 - exp(-2*pi*.1/10)*exp(j*2*pi*f/10)); >> subplot(311); >> plot(f, 20*log10(abs(Hc)),k--) >> hold >> plot(f, 20*log10(abs(H)),k) >> axis([0 4 -40 0]) >> grid % Generate the 1 and 2 Hz fc plots similarly
H dB ( f )
20 30 40 0
Digital Filter
H dB ( f )
10 20
fc f c = 1 kHz, f s = 10 kHz
Analog Filter
7 8 9 10
30 0
H dB ( f )
2 4 6 8 0 1
Digital Filter
fc f c = 5 kHz, f s = 10 kHz
2 3 4 5 6 7 8
Analog Filter
9 10
Frequency in kHz
4-26
4.7
Using the denitions of the ideal D/C and C/D converters we can in theory construct a system for continuous-time processing of discretetime signals.
D/C
x[n ] T xc ( t )
h c ( t ), H c ( j )
C/D
yc( t ) T y[n ]
h [ n ], H ( e
Continuous-time processor for discrete-time signals using a D/C-Hc .j /-C/D system It is not difcult to show that the overall discrete-time system has frequency response H.e j! / D Hc .j!=T /; j! j < Note that since Xc .j / D 0 for j j =T (due to the design of the ideal D/C), the response of Hc .j / above =T is actually arbitrary
4-27
Example 4.5:
Use a D/C-Hc .j /-C/D system to implement a noninteger discretetime delay. The discrete-time frequency response we desire is of the form H.e j! / D e
j!
; j! j <
where is not necessarily an integer Note that for the special case of being an integer then yn D xn A continuous-time system which gives arbitrary delay is Hc .j / D H.e j or in the time domain yc .t / D xc .t T /
T
/De
j T
Since xc .t / is the bandlimited interpolation of xn, and yn D yc .t /jt DnT , we can write yn D yc .nT / D xc .nT T / 1 X D xk sinc.nT T
kD 1 4-28 ECE 5650/4650 Modern DSP
kT /=T
x[ n]
xc( t )
(a)
y[n ]
T
Half-Sample Delay
t 4T y (t ) = x (t T 2) c c
(b)
0 T 4T
The term e j!M=2 provides a pure delay in the time domain which we see is a half-sample if M is odd
ECE 5650/4650 Modern DSP 4-29
% n x y
M = = =
1 0.5
x[ n]
10
y[ n]
0 0.2 0.4 2 0
10
Sample Index n n
M=2-Sample delay of a moving average lter; M D 5
4-30
4.8
In discrete-time signal processing systems we may wish to change the underlying sampling rate somewhere within the system. For example we may start with xn D xc .nT / and later nd it more appropriate or efcient to work with x 0n D xc .nT 0/ where T T 0 (typically T =T 0 is rational).
4.8.1
Analog Techniques:
Conceptually the simplest way to change the sampling rate is to rst reconstruct xc .t / from xn using an appropriate analog interpolation lter, then resample xc .t / with period T 0 to obtain x 0n.
4.8.2
Dene a new sequence xd n with rate reduced by a factor M with respect to xn as xd n D xnM D xc .nM T / The system which performs the sampling rate reduction (preltering may also be included) is referred to as a downsampler, or a decimator
ECE 5650/4650 Modern DSP 4-31
x[ n]
Sampling Period T
x d [ n ] = x [ nM ]
Sampling Period T = MT
Downsampler or decimator (no prelter shown) To study the operation of the downsampler we will consider xd n and xn in the frequency domain Recall that since xn D xc .nT / we can write
1 ! 1 X Xc j X.e / D T T j! kD 1
2 k T
2 r T0 j 2 r MT
1 1 X ! D Xc j M T rD 1 MT
The above equation shows that Xd .e j! / consists of replicas of Xc .j!=M T / placed at all multiples of 2 , while in contrast X.e j! / consists of replicas of Xc .j!=T / at 2 spacings To relate X.e j! / to Xd .e j! / we can reindex the sum in Xd .e j! / using r D i C kM with 1 < k < 1 and 0 i M 1 (note we still have 1 < r < 1)
4-32 ECE 5650/4650 Modern DSP
The above equation shows that an alternative interpretation of Xd .e j! / is that it consists of M copies of X.e j! / frequency scaled by M (i.e. ! ! !=M ), each shifted by integer multiples of 2 =M No matter how Xd .e j! / is viewed its period is always 2 With downsampling the potential for aliasing exits since the new sampling rate may actually be below the Nyquist rate of xc .t /.
Example 4.7:
Consider downsampling using M D 2 a signal with bandlimited spectrum as shown below
1 N 1 -T 2 ----T N Xc ( j )
jT
N X s ( j ), X ( e )
2 ----T
T
/
4-33
1 -T 2 N 1------MT 2
In Terms of the New Sampling Rate
X(e )
-2
say N = 2 = T
N Xd ( e )
j
1 ---T Xd ( j )
2 M = 2
= T
4 ----T
2 ----T
2 ----T
4 ----T
= ---T
Spectra of X.e j! /, Xd .e j! /, and Xd .j / for M D 2 Note that in the above example N has been chosen so that after downsampling with M D 2, no aliasing results (i.e. 4 N D just 2 =T and N D . =T 0/ or =.2T /)
In general to avoid aliasing when downsampling by M we must ensure that xn is bandlimited such that !N M < or !N < =M
NT )
In some cases we may need to lter xn with an ideal lowpass lter with cutoff frequency !c D =M before downsampling
4-34 ECE 5650/4650 Modern DSP
The lter output, denoted xn Q , may then be downsampled without aliasing to obtain x Q d n Note that with the introduction of the prelter x Q d n xc .nM T /, but is equivalent to sampling xc .t / after ltering with an ideal lowpass lter having cutoff frequency c D =.M T /
x[ n]
Sampling Period T
[n] = x [ nM ] x d
Sampling Period T = MT
Example 4.8:
Consider a second example where 4
1 -T 2 Aliasing! N 1 ------MT X(e )
-2
still N
D 2 =T , but now M D 3.
N Xd ( e )
j
2 M = 3
= T
-2
3 ----- 2 2
= T
The downsampled sequence xd n will contain aliasing since the downsampled signal bandwidth in the ! domain is N M T D 3 =2 > Note that an ideal lowpass prelter with cutoff frequency !c D =3 can be used to eliminate aliasing Spectral plots of the modied downsampling system are shown on the following page
Hd ( e
) c = -3 2 M = 3 = T = T
---M 1 -T
---M j Xd( e )
-3 1 ------MT
-3 j Xd( e )
2 M = 3
= T
4-36
4.9
Dene a new sequence xi n with rate increased by a factor L as a lowpass ltered version of xe n D xn=L D xc .nT =L/; n D 0; L; 2L; : : : The system which performs the sampling rate increase (including postltering) is referred to as an upsampler, or an interpolator
x[ n]
Sampling Period T
xi [ n ]
The rst stage of the upsampler is also known as a sampling rate expander or just expander. We can write the expander output as xe n D xn=L; n D 0; L; 2L; : : : 0; otherwise 1 X D xkn kL
kD 1
To obtain xi n from xe n requires discrete-time reconstruction (interpolation), since xe n is an impulse train consisting of nonzero samples every L samples
ECE 5650/4650 Modern DSP 4-37
The operation of the upsampler is best viewed in the frequency domain To begin with we can write Xe .e j! / D D
1 X nD 1 1 X kD 1 1 X kD 1
! xkn
j!Lk
kL e
j!n
xke
D X.e j!L/
From the above equation we see that the expander output is simply a frequency scaled version of X.e j! / (i.e. ! ! !L D LT )
Example 4.9:
Consider upsampling a signal with bandlimited spectrum as shown below using L D 2
1 Xc( j )
N 1 -T 2
N X(e
j
= T
1 -L L
Hd ( e
) = T
-L j Hi ( e )
-L 1- = L ----T T
-L j Xi( e )
= T
-L
-L
= T
In the previous example we saw that the reconstruction lter was used to remove all the frequency-scaled images of Xc .j / except those located at integer multiples of 2 In general if we use an ideal lowpass lter for interpolation the lter gain must be L (this gives an overall gain of L=T D 1=T 0), and the cutoff frequency must be =L Assuming an ideal lowpass interpolation lter we can then write the upsampler output as xi n D
1 X kD 1 ECE 5650/4650 Modern DSP 4-39
xk sinc.n
kL/=L
In practice the ideal lowpass lter cannot be implemented exactly, however very good approximations are possible
As an alternative to the ideal lowpass lter one may wish to consider using linear interpolation which corresponds to a lter with impulse response
hlinn D
xi n D D
xe khlinn xkhlinn
k kL
Example 4.10:
Shown below is an example of linear interpolation for the case L D 5. Note that in data plotting linear interpolation is inherent when straight line segments are used to connect the data points.
4-40 ECE 5650/4650 Modern DSP
h lin [ n ] L = 5 4 0 4 xe [ n ] n
n 0 x lin [ n ]
n 0
Linear interpolation; impulse response, & I/O The limitations of using a simple linear interpolation lter can be seen in the frequency response of the lter It can be shown that 1 sin.!L=2/ j! Hlin.e / D L sin.!=2/
L = 5 Hi ( e
j
2
)
j
H lin ( e )
4 ----5
2 ----5
-5
-5
2 ----5
4 ----5
4-41
Note that unless the original sampling rate is well above the Nyquist rate, the interpolation lter will allow adjacent band energy ( =L < j! j ) to leak into xi n Intuitively we can reason that if the sampling rate is well above the Nyquist rate, then the signal does not vary much between samples, thus linear interpolation gives accurate results
4.9.1
To change the sampling rate by a rational number such as T 0 D TM=L all we need to do is cascade an interpolator (upsampler) with a decimator (downsampler). Note that the interpolation lter of the upsampler will be in cascade with the downsampler prelter, thus the two lters may be combined into a single lowpass lter with cutoff frequency equal to the minimum of =L and =M
Interpolator
LPF Gain = L Cutoff = /L
Decimator
LPF Gain = 1 Cutoff = /M
L x[n] T
T -L
x[n] T
L
Sampling Period
T -L
M T -L
Sampling Period
4-42
Example 4.11:
In commercial compact disc (CD) players upsampling using L D 2 or 4 is often employed to simplify the design of the analog reconstruction lter, and also to avoid the use of a sharp cutoff lter which introduces unwanted phase shifts near the audio frequency bandedge. In the CD system the initial sampling rate is xed at 44.1 kHz The spectrum of the output signal following conversion to an impulse train is shown below
Spectrum Amplitude
22.05 44.1
88.2
132.3
176.4
220.5
f (kHz)
The digital-to-analog converter (DAC) performs a zero-order hold operation on the impulse train so that the output becomes a stair-step approximation (more on this in Section 4.12.4). The frequency response of the zero-order hold is of the form of a sinc() function
Freq. Droop Spectrum Amplitude
22.05 44.1
88.2
132.3
176.4
220.5
f (kHz)
By using say L D 4 upsampling (4 times oversampling) and a digital interpolation lter, the nearest spectral image that the analog reconstruction lter has to remove is shifted from 44.1 kHz up to 176.4 kHz
Spectrum Amplitude Digital Filter Removes These Spectral Translates
22.05 44.1
88.2
176.4
220.5
f (kHz)
Spectrum Amplitude
22.05 44.1
88.2
132.3
176.4
220.5
f (kHz)
4-44
f RF
Local Oscillator
f IF
IF BPF fIF, B
xa t
A/D (wideband)
Re r 2 n
2 Complex r 3 n Baseband Signal
f LO
fs
cos 2 f s 4 Tn sin 2 f s 4 Tn
2 Digital LPF, B/2
r1 n
fs
fs --2
Im r 2 n
IF sampling digital receiver block diagram The rf front-end bandpass lters and low noise amplies the received signal The rf bandpass lter is wide with respect to the signal of interest since the receiver is typically capable of tuning to many different rf carrier frequencies The received rf signal is converted to a common IF frequency using an analog mixer followed by a narrow bandpass lter, often a surface acoustic wave (SAW) device if the IF is in the vicinity of 70 MHz
Results, IEEE Journal and Selected Areas in Communications, October 1990, pp. 15001511. 4-46 ECE 5650/4650 Modern DSP
The IF lter is very important here in that it must pass the desired signal yet reject adjacent channel signals and noise The choice of the exact IF frequency, fIF, and the corresponding bandwidth B are design parameters The signal spectrum of xa .t /, prior to sampling, is shown below
Xa f
IF Signal of Interest
f , Hz f IF M f s f s
fs --4
fs -4
fs
fs 4
Mf s f IF
The spectrum of IF signal xa .t / By undersampling the IF signal we can accomplish both digitizing and frequency translation in one step Undersampling introduces controlled aliasing such that the desired signal can be futher processed in the fundamental interval fs =2; fs =2 Hz or ; rad/s on the ! axis The design constraints (formulas) are that we choose jfIF Mfs j D fs =4 B fs =2
Note: As a matter of practice B is xed by the signal that is being received and fs is chosen to allow for lter transition bands, but also to be an integer multiple of the bit rate; fIF and
ECE 5650/4650 Modern DSP 4-47
M are chosen accordingly within physical design constraints of devices The above two expressions insure that following the undersampling the IF spectrum Xa .f / (Xa .j / with replaced by 2 f ) will be centered on fs =4 and the various spectral translates will not overlap (alias) with each other Note: If Mfs is above fIF the signal spectrum will ip
R1 e
j 2 f fs
Alias of Interest ... IF Signal of Interest ...
...
...
f , Hz f IF M f s f s 2
Digital Lowpass Filter Response ...
fs -4
0 0
fs -4
fs
j j 2 fs 4 Tn
Mf s f IF
R2 e
= R1 e
- Frequency Translate
-2
R3 e
j
2
0 --
- Decimation by 2
Complex Signal
...
...
The entire spectrum will next be shifted down or up in frequency by fs =4 Hz ( =2 on the ! axis); in general down unless the spectrum is ipped
4-48 ECE 5650/4650 Modern DSP
This frequency translation is performed in the discrete-time domain using a complex local oscillator of the form e j 2
.fs =4/T n
D cos2 .fs =4/T n j sin2 .fs =4/T n D cos n=2 j sin n=2
Note: This multiplication is very simple as cos and sin take only the values 0, 1, and -1 (very nice!) Frequency translation results in a complex signal, which in this case is now centered on dc, so we call it a complex baseband signal, which is composed of real (I) and imaginary (Q) parts Each signal path, real and imaginary, is now typically ltered by a linear phase FIR lter to provide signal matched ltering Since the signal of interest is constrained to lie on the interval of =2; =2 we can also decimate the signal by two to further save processing resources Further simplications are possible and are discussed in the references Specic Frequency Plan Consider a PCS band application for the design of an IS-95 Code Division Multiple Access (CDMA) receiver The Block E receive band is 18851890 MHz, which in Colorado Springs is used by Qwest Three CDMA carrier frequencies reside in this block, the center carrier frequency is 1887.5 MHz with a bandwidth of 1.25 MHz
ECE 5650/4650 Modern DSP 4-49
The IS-95 CDMA signal has a chip rate of 1.2288 Mchips/s and is pulse shaped to occupy an rf bandwidth of 1.25 MHz Here we choose fs D 7:3728 Msamples/s (6 samples/chip) so fs =4 D 1:8432 MHz is our digital IF frequency The analog IF frequency must be either 1.8432 MHz above or below M 7:3728 MHz Choosing M D 9 and then fIF D 68:1984 MHz works, which then requires fLO D 1819:3016 MHz
4.10
In multirate signal processing more than one sampling rate is employed in the DSP system. This in general means one or more decimator, interpolator, and the associated digital lters. The CD player example (Example 4.11) is a multirate system A rate changing system where the ratio of input over output sampling rates is say 101/100, would nominally require interpolation using L D 100 followed by decimation using M D 101; intermediate rate changes by smaller amounts can reduce the computational burden The theme of this section is how to efciently combine ltering downsampling/upsampling operations into what is known as a polyphase decomposition.
4-50 ECE 5650/4650 Modern DSP
4.10.1
The polyphase decomposition approach relies on a downsampling and an upsampling identity. Downsampling Identity
x[n] M xa [ n ] x[n] H( z ) xb [ n ]
M
H(z )
y[n ]
y[n ]
To show the equivalence we work in the frequency domain on the lower system, and write that Xb .e j! / D H.e j!M /X.e j! / From the previous analysis of decimation by M , we know that
M 1 X 1 X.e j.!=M Y .e j! / D M i D0 2 i=M /
/H.e j.!
2 i/
2 i/
/ D H.e j! /, so
2 i=M /
Upsampling Identity
x[n] H(z) xa [ n ] x[n] L xb [ n ] H(z )
L
y[n ]
y[n ]
Two equivalent upsampling systems Beginning with the top system, we can write that Y .e j! / D Xa .e j!L/ D X.e j!L/H.e j!L/ Using the previously developed results for an interpolator, we also know that Xb .e j! / D X.e j!L/ so it follows upon substitution that in the lower system, Y .e j! / D H.e j!L/Xb .e j! /
4.10.2
Polyphase Decompositions
The polyphase decomposition begins by breaking impulse response hn into M subsequences, hk n, as follows: ( hn C k; n D integer multiple of M hk n D 0; otherwise
4-52 ECE 5650/4650 Modern DSP
To return to the original impulse response, hn, from the subsequences just form the sum hn D
M 1 X k D0
hk n
M = 2
0.1 n 0 1 h0 n
0.2 n 0
0.9
h1 n
0.1 n 0 1 2 3 4 5 6 7 8 9
Decomposition of hn for M D 2 into hk n sequences By delaying and decimating hn or the hk n sequences by M , we obtain sequences denoted ek n ek n D hnM C k D hk nM
ECE 5650/4650 Modern DSP 4-53
Continuing the simple example above, e0n and e1n are as follows:
1 e0 n = h n 2 + 0 = h 0 n 2
M = 2
0.2 n 0
0.9
e1 n = h n 2 + 1 = h 1 n 2
0.1 n 0 1 2 3 4
Decomposition of hn for M D 2 into ek n sequences A block diagram representation that breaks hn down into the components ek n and then reassembles hn is useful in understanding how to build an efcient decimator and interpolator
4-54
M h[n ] z M h[n + 1] z e1 [ n ] h[ n] e0 [ n ]
M h0[ n ] z M h1[ n ] z
1 1
h[n ]
...
M h[ n + M 1 ] eM 1 [ n ]
...
M hM 1 [n ]
M 1 X k D0
The block diagram shown above is not yet practical since the z blocks are unrealizable Working from Ek .z/ D Z fek ng we can write H.z/ as
H.z/ D
Ek .z M /z
Suppose wn D xn hn, then polyphase ltering of xn to produce wn can be represented as shown below
ECE 5650/4650 Modern DSP 4-55
E0 ( z ) x[ n] z
1 M
E1 ( z )
...
w[n ]
EM 1 ( z )
hn
4.10.3
x[ n]
H(z) y[n ]
w [ n ] = y [ nM ]
A decimation by M system Since the decimator only keeps every M th sample, it would be nice to make this operation more efcient Using the polyphase decomposition of hn followed by a decimator we can form the following block diagram:
4-56 ECE 5650/4650 Modern DSP
E0 ( z ) x[ n] z
1 M
E1 ( z )
M w[n ]
...
EM 1 ( z )
E0 ( z )
E1 ( z ) w[n ]
...
EM 1 ( z )
Polyphase decomposition decimation The second version of the above gure results from the down sampling identity for an N -point FIR lter In the nal polyphase implementation each lter, Ek .z/, re1 N 1 N quires M multiplications and M 1 additions per input M M sample Comparing the total computations count per input sample for the direct N -tap FIR decimator and the polyphase decimator we have the following:
ECE 5650/4650 Modern DSP 4-57
...
...
M
Decimator Operations per Input Sample Scheme Additions Multiplications Direct Implementation N 1 N N N Efcient Polyphase 1 C .M 1/ M M For N D 50 and M D 4 the saving in multiplications is 50 versus 50=4 D 12:5 or a factor of 4 The additions count is 49 versus 14:5 or a factor of about 3
4.10.4
A complete interpolation system requires an interpolator followed by a lowpass postlter to ll in the zero samples
x[ n]
L w[ n]
H( z)
y[ n]
An interpolation by L system Since the interpolation inserts L 1 zero samples between each input sample, it would be nice to make this operation more efcient as with the decimator described earlier Apply a polyphase decomposition of hn following interpolation by L
4-58 ECE 5650/4650 Modern DSP
L x[ n]
E0( z ) z
1 L
y[ n]
E1( z )
...
...
z
... L
EL 1( z )
L
1
y[n ]
...
...
z EL 1( z ) L
Polyphase decomposition interpolation The second version of the above gure results from the up sampling identity In the nal polyphase implementation each lter, Ek .z/, requires N multiplications and N 1 additions per input samL L ple Comparing the total computations count per input sample for the direct N -tap FIR interpolator and the polyphase interpolator we have the following:
ECE 5650/4650 Modern DSP 4-59
Interpolator Operations per Input Sample Scheme Additions Multiplications Direct Implementation NL 1 NL Efcient Polyphase L N 1 C .L 1/ L N L L For N D 50 and L D 4 the saving in multiplications is 200 versus 50 or a factor of 4 The additions count is 199 versus 49 or a factor of about 4
4.11
To prepare for the study of quantization noise in digital processing of analog signals and other related modeling issues, we now need to take time out to introduce the basics of random process theory. In this section the emphasis will be on the characterization of discrete-time random processes as opposed to both continuous and discrete-time random processes. The major concepts are statistical averages, correlation and covariance functions, and the power spectrum. Of special importance is the analysis of random signals in linear time invariant systems. Before getting into the random process topics we will briey review probability and random variables.
4.11.1
Probability
Consider an experiment which has possible outcomes i . The i s are elements of the space S known as the sample space A subset of S is a collection of elements A
4-60 i
i.e. for
S
ECE 5650/4650 Modern DSP
we might have A D f 1g Note that here A Events: Subsets of S which make up a -eld are events on S The sample space S is called the certain event The empty set, ;, is called the impossible event Associated with each event is a measure called probability Axioms of Probability: 1. P .A/ 0 for all A in S B B D f 1;
3; 5g
n X i D1
! Ai D
n X i D1
P .Ai /
Conditional Probability: Given two events A and B , the probability of A given B is P .A=B/ D also P .B=A/ D H) P .A=B/ D P .AB/ P .B/ P .AB/ P .A/
Theorem of Total Probability: Given n mutually exclusive (disjoint) events Ai Aj D ; i j D 1; 2; : : : ; n such that Pn
i D 1 Ai
P .B/ D proof
P .B=Ai /P .Ai /
B D BS D B so P .B/ D P
n X i D1
n X i D1
! Ai ! D
n X i D1
BAi
BAi
n X i D1
P .BAi /
Independence: Events A and B are statistically independent if and only if P .AB/ D P .A/P .B/ It then follows that P .A=B/ D P .A/ and P .B=A/ D P .B/
4.11.2
Random Variables
A random variable is a rule that assigns a numerical value to outcomes of a chance experiment
2
S
3
x( 3 )
x( 1 )
x( 2 )
Elementary outcomes mapped to the real line It may be continuous, discrete, or mixed. A random variable (rv) will be denoted as x. i / D x or X. i / D X . The values it takes on will be denoted by x . Cumulative Distribution Function (CDF): or probability distribution function Px.x/ D P f W x. /
ECE 5650/4650 Modern DSP
x g D P x
x
4-63
dPx.x/ dx
x
px.u/ du
Properties 1. px.x/ 0 R1 2. 1 px.x/ dx D 1 3. P x1 < x Joint RVs: CDF Px;y.x; y/ D P x PDF @2Px;y.x; y/ px;y.x; y/ D @x@y
4-64 ECE 5650/4650 Modern DSP
x2 D Px.x2/
Px.x1/ D
R x2
x1
px.x/ dx
x; y
Note: Px;y.x; y/ D
x 1
px;y.u; v/ du dv
1
and Bayes rule py=x.y=x/ D Independent RVs: Px;y.x; y/ D Px.x/Py.y/ px;y.x; y/ D px.x/py.y/ Statistical Averages: Mean or rst moment Z mx D E fxg D
1 1
px=y.x=y/py.y/ px.x/
xpx.x/ dx
variance
2 x
D E f.x
mx/2g D E fx2g
m2 x
Note:
Note if either x or y has zero mean, then uncorrelated rvs are also orthogonal i.e. E fxyg D 0 Important PDFs: Uniform If rv x is uniform on the interval a; b, then px.x/ D
1 ; b a
0;
a x b otherwise U a; b.
The rv x uniform on a; b Gaussian or Normal: If rv x is normal with mean mx and variance px.x/ D p 1 2
2 x 2 x,
then
.x mx /2 2 2 x
N mx;
2 x .
px( x )
mx
2 x
The area under the tail of a Gaussian PDF can be written in terms of the Q./-function, that is P x > x D Q where x mx
x
Tail of normal pdf A simple, reasonably accurate approximation for Q.x/ over 0 < x < 1 is Q.x/ ' .1 1 p p e 2 a/x C a x 2 C b 1
x 2 =2
where a D 1= and b D 2
ECE 5650/4650 Modern DSP 4-67
4.11.3
Random Processes
Formally a random process (rp) is a family (ensemble) of functions x.t; / for continous-time or xn; for discrete-time, such that each outcome i forming the space S is assigned a time function x.t; i / or a sequence xn; i .
A discrete-time random process can also be viewed as being a sequence of random variables indexed by the discrete-time variable n
4-68 ECE 5650/4650 Modern DSP
2 i
x( n, 1 )
n
x( n, 2 )
n
...
n A random variable for n fixed
i s
x ( n, i )
are considered
A family of time functions, n and x variables A single time function, n variable and x xed A random variable, n xed and x variable A single number, n and x both xed Notationally it is easier to write rp xn D xn and let it be understood from the discussion which of the four interpretations is intended
ECE 5650/4650 Modern DSP 4-69
Random Process Characterization Since rp xn is just an rv for any particular index value, n, we can dene the mean and variance as: mx n D E fxng and
2 x n
In general the mean and variance are functions of time index n, but if the rp xn is stationary, then they are both constants The autocorrelation sequence of xn is dened as
xx n; m
D E fxnx mg
Note that
xx n; n
xx m
j mx j2
The cross-correlation between jointly WSS sequences xn and yn is xy m D E fxn C my ng Similarly the cross-covariance is dened as
xy m
D E f.xn C m
mx /.yn
my / g
If jointly WSS sequence xn and yn are uncorrelated, then E fxn C my ng D E fxn C mgE fy ng D mx my If either process has zero mean, then as a special case of being uncorrelated E fxn C my ng D 0 The power spectral density of a WSS rp is Pxx .!/ D xx .e j! / D F f Conversely 1 m D xx 2 Z xx .e j! /e j!m d!
xx mg
The mean square of xn is also interpreted as the average power Z 1 Pxx .!/ d! E fjxnj2g D xx 0 D 2 Note that the ac power or variance is just Z 1 2 Pxx .!/ d! x D xx .0/ D 2
ECE 5650/4650 Modern DSP
j mx j2
4-71
From a practical implementation point-of-view we would like to replace the ensemble averages with corresponding time averages over a single observed sample function If a process is mean-ergodic, then the statistical mean and the time average mean are equivalent If a process is correlation-ergodic, then the statistical autocorrelation and the time average autocorrelation are equivalent Unless stated otherwise in this course we will assume that we are dealing with ergodic processes (also WSS), thus the operations h i and E f g may be interchanged
2 In practice it is not possible for L ! 1, thus mx , x , and xx m must be estimated using say, a record of L samples from xn 4-72 ECE 5650/4650 Modern DSP
Given a nite-length record of xn, n D 0; 1; : : :, L 1, an estimator for the autocorrelation sequence assuming xn is real, is ( P L jmj 1 1 xnxn C jmj; jmj L 1 O xx m D L nD0 0; otherwise Important properties of this estimator are its mean and variance (Note: The estimate O xx m is an rv). The variance is difcult to calculate. The mean is easily shown to be ( L jmj L E f O xx mg D 0;
xx m;
jmj
1 L.
otherwise
Thus the estimate is biased, but the bias is small for jmj An unbiased estimator is L xx m D L L j mj O xx m
A general observation with regard to the variance of both estimators is that as jmj increases fewer samples are used in the estimate, thus it is expected that the variance should also increase LTI Systems with RP Inputs Let xn be a real rp input sequence and hn a real impulse response, the output rp yn is 1 X yn D hkxn k
kD 1 ECE 5650/4650 Modern DSP 4-73
If E fxng D mx , then ( my D E D
1 X
) hkxn k
kD 1 1 X kD 1
hk E fxn kg
mx
D mx
1 X kD 1
hk
H.e j 0 /
xx n
C m; n D h m
xx m
then it can be
xx m
hm
An alternate expression is
yy m
1 X lD 1
xx m
lcl
hkhl C k D h l
hl
D Z H.z/H.1=z/ Taking the Fourier transform of both sides of the above expres4-74 ECE 5650/4650 Modern DSP
sion for
yy m
gives
yy .e j! / D C.e j! /xx .e j! / D H.e j! /H .e j! /xx .e j! / D jH.e j! /j2xx .e j! / White Noise A WSS rp wn is a white noise sequence if E fwng D 0 and
ww m 2 w m
j! j <
Note: White and Gaussian are unrelated random process properties, although they often occur together in practice, e.g., white Gaussian noise. . .
ww [ m ] w
2
P ww ( )
F.T.
m 2 0 2
The sequence xg n is Gaussian with zero mean and unit variance The sequence xun has uniform amplitude pdf with zero mean p p and unity variance, i.e., xun U. 3; 3/, why?
>> xg = randn(4096,1); >> xu = sqrt(3)*(2*rand(4096,1)-1);
Time Sequence of Gaussian and Uniform White Noise Time Sequences of Gaussian and Uniform White Noise
2.5
Gaussian
2 1.5 1
Amplitude Amplitude
Uniform
10 20 30 40 50
Unit variance uniform and Gaussian white noise To estimate the autocorrelation function of these sequences we use the signal processing toolbox function xcorr(), which can for example form either the biased or unbiased estimates of xx m
XCORR Cross-correlation function estimates. C = XCORR(A,B), where A and B are length M vectors (M>1), returns the length 2*M-1 cross-correlation sequence C. If A and B are of different length, the shortest one is zero-padded. C will be a 4-76 ECE 5650/4650 Modern DSP
row vector if A is a row vector, and a column vector if A is a column vector. XCORR(A), when A is a vector, is the auto-correlation sequence. XCORR(A), when A is an M-by-N matrix, is a large matrix with 2*M-1 rows whose N^2 columns contain the cross-correlation sequences for all combinations of the columns of A. The zeroth lag of the output correlation is in the middle of the sequence, at element or row M. XCORR(A,B,MAXLAG) computes the cross-correlation over the range of lags: -MAXLAG to MAXLAG, i.e., 2*MAXLAG+1 lags. XCORR(A,MAXLAG) computes the auto-correlation over the range of lags. If missing, default is MAXLAG = M-1. [C,LAGS] = XCORR returns a vector of lag indices (LAGS).
XCORR(A,flag), XCORR(A,B,flag) or XCORR(A,B,MAXLAG,flag) normalizes the correlation according to flag: biased - scales the raw cross-correlation by 1/M. unbiased - scales the raw correlation by 1/(M-abs(lags)) coeff - normalizes the sequence so that the auto-correlations at zero lag are identically 1.0. none - no scaling (this is the default). See also XCOV, CORRCOEF, CONV, COV and XCORR2.
We will use the unbiased estimator for L D 4096 point records The theoretical autocorrelation function for both sequences is of course
g xx m
u xx m
2 x m
D m
0.8
Correlation
0.6
0.4
0.2
0 20 10 0 10 20
Lag Value m
0.8
Correlation
0.6
0.4
0.2
0 20 10 0 10 20
Lag Value m
An estimate of the power spectral density (psd) can be obtained by Fourier transforming the autocorrelation function estimate of directly using the signal processing toolbox function psd() The function psd() uses Welchs method of averaging modied periodograms A periodogram is basically the discrete Fourier transform (DFT) of a block of signal samples in magnitude-squared form (we will study this more later for now psd is just a tool)
PSD Power Spectral Density estimate. Pxx = PSD(X,NFFT,Fs,WINDOW) estimates the Power Spectral Density of a discrete-time signal vector X using Welchs averaged, modified periodogram method. X is divided into overlapping sections, each of which is detrended (according to the detrending flag, if specified), then windowed by the WINDOW parameter, then zero-padded to length NFFT. The magnitude squared of the length NFFT DFTs of the sections are averaged to form Pxx. Pxx is length NFFT/2+1 for NFFT even, (NFFT+1)/2 for NFFT odd, or NFFT if the signal X is complex. If you specify a scalar for WINDOW, a Hanning window of that length is used. Fs is the sampling frequency which doesnt affect the spectrum estimate but is used for scaling the X-axis of the plots. [Pxx,F] = PSD(X,NFFT,Fs,WINDOW,NOVERLAP) returns a vector of frequencies the same size as Pxx at which the PSD is estimated, and overlaps the sections of X by NOVERLAP samples. [Pxx, Pxxc, F] = PSD(X,NFFT,Fs,WINDOW,NOVERLAP,P) where P is a scalar between 0 and 1, returns the P*100% confidence interval for Pxx. PSD(X,...,DFLAG), where DFLAG can be linear, mean or none, specifies a detrending mode for the prewindowed sections of X. DFLAG can take the place of any parameter in the parameter list (besides X) as long as it is last, e.g. PSD(X,mean); PSD with no output arguments plots the PSD in the current figure window, with confidence intervals if you provide the P parameter. The default values for the parameters are NFFT = 256 (or LENGTH(X), ECE 5650/4650 Modern DSP 4-79
whichever is smaller), NOVERLAP = 0, WINDOW = HANNING(NFFT), Fs = 2, P = .95, and DFLAG = none. You can obtain a default parameter by leaving it off or inserting an empty matrix [], e.g. PSD(X,[],10000). NOTE: For Welchs method implementation which scales by the sampling frequency, 1/Fs, see PWELCH.
Here we force psd to average sixteen periodograms by setting NFFT to 256, e.g., Px = psd(x,256,1); The theoretical psd is of course Pxx .!/ D
2 x
D 1; 8 !
PSD in dB
10
15
Normalized Frequency f
PSD in dB
10
15
Normalized Frequency f
Power spectrum estimate of uniform white noise Linear Systems and White Noise In the second part of this example we will investigate the correlation, crosscorrelation, and spectral properties of white noise that has been passed through a rst-order lowpass lter. We will consider the following system with real a 1 a yn D ayn 1 C .1 a/xn ) H.z/ D ; jz j > ja j 1 az 1 The theoretical output autocorrelation function is 1 1 X X 2 lcl D lcl yy m D xx m x m D where cl D
1 X kD 1 ECE 5650/4650 Modern DSP 4-81 lD 1 2 x cm lD 1
hkhl C k D hl
h l
z 1 D a .1 az 1/.1 a 1z 1/ .1 a/2 A1 A2 C ; D a 1 az 1 1 a 1z 1 1 jaj < jz j < a Solve for A1 and A2 and inverse transform z 1 a A1 D D 1 a 1z 1 z 1Da 1 1 a2 z 1 a ) A2 D D 1 az 1 z 1Da 1 a2 .1 cm D 1 .1 D 1 Finally,
yy m
az
2 x
Let a D 0:8 and compare the theoretical autocorrelation function with that measured (for just xg n), again using xcorr()
4-82 ECE 5650/4650 Modern DSP
>> yg = filter(1-0.8,[1 -0.8],xg); >> [phig_yy, lag] = xcorr(yg,25,unbiased); >> phig_yythy = .2^2/(1 - .8^2)*0.8.^(abs(lag));
Correlation
Sim.
0 20 10 0 10
Theory
20
Lag Values m
We can also compare the theoretical power spectrum with the averaged periodogram The theoretical psd at the lter output is Pyy .!/ D yy .e j! / D >> >> >> >>
2 j! 2 x jH.e /j
PSD in dB
10
15
Theory
20 0 0.1 0.2 0.3 0.4 Frequency Normalized Frequency f 0.5
Output power spectrum estimate of ltered white noise, Py .!/ The cross-correlation between the input and output sequences is dened as
xy m
1 X kD 1
hk
xx m
C k
The cross power spectrum is obtained by Fourier transforming both sides in the above xy .e j! / D H.e j! /xx .e j! / D H.e j! /xx .e j! /
4-84 ECE 5650/4650 Modern DSP x real
If the input is a zero mean white noise random process, it then follows that 2 xy m D x hm and the cross spectrum is xy .e j! / D
2 j! x H.e /
Again with a D 0:8 the theoretical impulse response and estimated cross-correlation estimate are shown below
>> >> >> >> >> >> >> [phig_xy, lag] = xcorr(xg,yg,25,unbiased); phig_xythy = zeros(size(lag)); s1 = find(lag >= 0); phig_xythy(s1) = 0.2*0.8.^(lag(s1)); plot(lag,phig_xythy,r) hold plot(lag,phig_xythy,r)
Filter Input/Output Crosscorrelation Function
0.2
Crosscorrelation
0.15
0.1
0.05
Theory
0 5 0 5 10 15 20 25
Lag Values m
xy m
4-85
4.12
In this section practical issues associated with the idealized C/DH.z/-D/C system are investigated. The section begins with the antialiasing lter which bandlimits the input signal to satisfy the sampling theorem. We will see that multirate sampling can be used to ease analog design requirements. Next we model the analog-todigital (A/D) conversion process in more detail than the simple C/D presented earlier. The quantization of the analog input will be modeled using stochastic (random) process theory. Finally, the digitalto-analog (D/A) conversion process is modeled in more detail. The modeling enhancements provided by this section of the notes is summarized by comparing the differences between subgures (a) and (b) of the following gure.
xc t
x n
C/D
Discrete-time System
y n
yr t
D/C
T xc t
T
Discrete-time System
x0 t
n x
H aa j
S&H
A/D
n y
T yr t
Compensated j H r
y DA t
D/A
4.12.1
A general rule in digital signal processing is to minimize the sampling rate for core processing algorithms whenever possible. The analog signal of interest, xc .t /, may need analog preprocessing before conversion to a discrete-time signal. 1. The signal xc .t / my need to be bandlimited to contain just a useful band of frequencies 2. The signal xc .t / may be adequately bandlimited already, but high frequency noise is present above the Nyquist frequency and will hence alias into the band of interest Preprocessing is performed by passing xc .t / through an antialiasing lter with frequency response Haa .j /.
xc t
xa t
x n
y n
Antialiasing Filter
C/D
Discretetime System
yr t
D/C
Use of an antialias prelter Haa .j / An ideal antialiasing lter is of the form ( 1; j j < c < =T Haa .j / D 0; otherwise Bandlimiting xc .t / to have bandwidth at or below =T radians/s (fs =2 Hz) insures for the case of an ideal Haa .j /, that no aliasing can possibly occur
ECE 5650/4650 Modern DSP 4-87
If this is true then the effective analog frequency response is ( H.e j T /; j j < c < =T Heff.j / D 0; otherwise where H.e j! / is the discrete-time system frequency response As a matter of practice no time-limited signal is strictly bandlimited and Haa .j / cannot be made bandlimited, thus we often settle for a minimum attenuation of aliased signal and/or noise components with respect to the desired signal As a simple approximation, if we can make Haa .j / small for j j > =T then Heff.j / Haa .j /H.e j
T
Using Multi-Rate Sampling to Simplify the Analog Design When the desired signal bandwidth, N , is close to =T D s =2 (fN is close to fs =2) the design requirements for the antialiasing lter become more challenging A sharp-cutoff (high-order) design is needed The lter must begin to roll-off before amplitude distortion
4-88 N,
which introduces
Once in the discrete-time domain this distortion can be partially compensated for with a digital equalization lter Phase distortion near the band edge also occurs in sharp-cutoff analog lters Realizing a sharp-cutoff analog lter can be both difcult and expensive A way to simplify the analog design requirements is via multirate sampling
High-Order Low-Order (Sharp-cutoff) Antialiasing C/D = /M Filter
Filter c n xa t x H aa j 1 - ------T = ---M N
M
xc t
xd n
Using oversampling to simplify the design of Haa .j / Assuming the usable lowpass bandwidth is again N we choose an oversampling factor of M , so the sampling rate is now s D 2M N The simple antialiasing lter can have a very gradual cutoff, so long as it has signicant attenuation at M N In the discrete-time domain we now implement a sharp-cutoff antialiasing lter with digital cutoff frequency of !c D =M and then decimate by M The sharp-cutoff digital lter can have linear phase and thus provide near perfect bandlimiting behavior
ECE 5650/4650 Modern DSP 4-89
An obvious drawback is the need for additional processing as a trade for the more difcult/expensive analog lter design A pictorial example of how this works is shown in the following gure
Low-order (simple) Antialiasing filter
Xc j 1
Xa j 1
ej X 1 T
Aliased Noise
Xd e
j 1 T
The Analog input signal amplitude spectrum We wish to pass xc .t / through a lowpass lter with frequency response Haa .j / to provide additional bandlimiting prior to sampling.
xc( t )
H aa ( j )
x c ( t )
Filtering of the input signal xc .t / with the anti-aliasing lter Haa .j / Assume that the dB bandwidth of xc .t / is and at A the spectrum is down AdB
ECE 5650/4650 Modern DSP c
4-91
Further assume that the signal spectrum is monotonically decreasing with frequency, i.e. jXc .j 2/j < jXc .j 1/j for
2 1
If xc .t / is sampled at frequency s (fs Hz) to produce the sequence xn, then the Fourier transform of xn is a superposition of scaled replicas of Xc .j / at multiples of the normalized sampling rate (i.e., 2 )
X ( e ) dB dB
j
A dB 2 2
Discrete-time domain spectra following sampling without the antialiasing lter Antialiasing Filter Requirements: A reasonable design specication is to require that the aliased spectral content from 0 to be Aa dB down from the 0 dB spectral reference level of the input In particular note that if fA D fs =2 then the minimum aliased spectral content is down only AdB An additional constraint is that the spectral content of the input signal between 0 and fc Hz not be modied by the antialiasing lter
4-92 ECE 5650/4650 Modern DSP
To increase Aa dB one may increase fs or choose to prelter 0 xc .t / with an antialising lter such that the spectrum of xc .t / meets the desired aliased spectral content requirement Note: A combination of the above may also be considered The Filter Design Problem The lter design problem is simply to design a lowpass lter with cutoff frequency at fc and lter attentuation at fs =2 of jXc .j s =2/jdB CjHaa .j
AdB s =2/jdB
Aa
dB
or jHaa .j
s =2/jdB
Aa
dB
AdB
The lowpass prototype may a Butterworth, Chebyshev (type I or II), or perhaps an elliptic. For more information on these prototype transfer functions see Chapter 7 of the text. A a specic example suppose the analog lter is a Butterworth with fc the 3 dB cutoff frequency Note: The input signal spectrum near this cutoff frequency will receive additional attenuation which may be compensated for in the discrete-time domain, see text problem 4.56 An N th-order Butterworth lowpass lter has frequency response of the form 1 jHb .j /j2 D 2N 1C
ECE 5650/4650 Modern DSP
c
4-93
Aa
dB
AdB
2 or
D 10
Aa dB AdB 10
c
Aa dB AdB 10
log10 10 N
1
c
2 log10
s =2
Note that N must be an integer! An Example Case: Suppose that the analog input signal has a Butterworth spectrum of the form jXc .j /j D p 1 1 C . =.2 350; 000//6
and the sampling rate is chosen to be fs D 1 MHz. The aliased spectral components are to be attenuated by at least 60 dB. Find the lter cutoff frequency and minimum lter order, N , to meet the design goals. To begin with we observe that the signal spectrum has a cutoff frequency of 350 kHz, thus fc D 350 103 At fs =2 D 500 kHz the input spectrum is attenuated by only 9.77 dB
4-94 ECE 5650/4650 Modern DSP
N D 17 is unreasonable, so to lessen the requirements on the antialiasing lter we either use a different prototype, such as an elliptic since it has a very narrow transition band, or up the sampling rate Try increasing fs to 4 MHz, once the signal is in the discretetime domain we can then build a high order digital lter to band limit the signal and then decimate back down to the desired 1 MHz rate log10 10.60 45:41/=10 1 N D 0:953 2 log102000=350 N D 1 is very reasonable, perhaps the sampling rate can be reduced to something in between 1 MHz and 4 MHz
xc( t ) xc( t ) N = 17 Butterworth Lowpass C/D x[ n]
f s = 1 MHz xc( t ) N=1 xc( t ) Butterworth Lowpass x[n] C/D HighOrder Lowpass x[ n] 4
f s = 4 MHz
4-95
4.12.2
In the model of the C/D converter, developed previously, we have a means for converting a continuous-time signal into a discrete-time signal with each sample having innite precision. In reality the C/D can be better approximated as a sample-and-hold (S&H) followed by an analog-to-digital (A/D or ADC) converter. The S&H holds each analog voltage or current sample long enough for the A/D conversion cycle to convert the input into a binary code that most closely represents the input amplitude.
xa t
x0 t
A/D
n x B
The S&H can be modeled as an ideal sampler followed by a zero-order hold (ZOH) lter h0.t / of the form ( h0.t / D
4-96
1; 0;
xa t
xs t s t =
ZOH h0 t
t nT
x0 t
h0 t
1 t 0 T
n =
xa t
x0 t
3 T
2 T
2T
3T
4T
5T
xa .nT /.t
nT /
The ltering action of h0.t /, although important for operation of the A/D, does not alter the signal samples x O B n We have assumed that the S&H output is constant until the next sample is taken More advanced modeling of S&H issues can be found elsewhere As described here the S&H allows ideal sampling to occur
ECE 5650/4650 Modern DSP 4-97
A mathematical representation of an analog-to-digital (A/D) converter is thus a cascade of three stages: (1) ideal C/D converter; (2) quantizer; (3) coder
xa t
C/D
T
x n
Quantizer
n x
Coder
x n
B
Rened Model of an A/D The combination of the quantizer and coder represent the A/D converter The quantizer is a nonlinear system which transforms the ideal real number input sample xn into a number from a nite set Mathematically the operator notation is xn O D Q.xn/ where xn O is used to represent a quantized signal sample The quantization levels may be uniformly spaced or nonuniformly spaced In the following gure a uniform quantizer is shown which accepts a bipolar input and has eight quantization levels Note that in this gure the number of quantization levels is even, thus it is not possible to have a level at zero and have an equal number of positive and negative levels
4-98 ECE 5650/4650 Modern DSP
= Q x x 3 2
2 9 -----2 7 -----2 5 -----2 3 -----2 -2 3-----2 5-----2 7-----2
Offset Binary Code 111 110 101 100 011 010 001 000
2 3 4 2Xm
101 100
A uniform quantizer that uses rounding The coder block in the mathematical model maps each quantization level to a code word If binary symbols are used, then 2B C1 levels can be coded using .B C 1/-bit binary code words The quantizer step size, , is given by Xm 2Xm D 2B C 1 2B where Xm is the full-scale level of the A/D D Two popular binary coding schemes are offset binary and twos complement The twos complement format is the most convenient representation of signed numbers
ECE 5650/4650 Modern DSP 4-99
The leftmost bit or most-signicant-bit (MSB) is also termed the sign bit The right most bit is the least signicant bit or LSB For a binary .B C 1/-bit twos complement number of the form b0b1b2 : : : bB we can write the quantizer output as xn O D Xmx O B n " D Xm b0 C
B X i D1
# bi 2
i
x O B n <
In a twos complement representation a positive fraction is in straight binary form with a zero in the sign bit (MSB). To obtain a negative fraction subtract the positive number from 2.0 or just complement the positive fraction and add one LSB e.g., 3 D 0011 8 3 D 1100 C 0001 D 1101 8 Twos complement binary symbols and x O B for B D 2
4-100 ECE 5650/4650 Modern DSP
Binary Symbol Numeric Value; x OB 011 3=4 010 1=2 001 1=4 000 0 111 1=4 110 1=2 101 3=4 100 1
3 2
Amplitude
0 2 3 4
0 T 000 2T 100 3T 101 4T 001
Input Signal (solid gray)
4-101
4.12.3
In the analysis of quantization errors xn is the true sequence value and xn O is the quantized value
x n
Quantizer Q( )
n = Q x n x
Additive Noise Model
x n
n = x n + e n x e n
Quantizer and additive noise model Dene the quantization error sequence as en D xn O xn
where if we assume rounding in the quantizer =2 < en =2 provided . Xm =2/ < xn .Xm =2/ A useful quantizer interpretation is to view xn O as xn plus an additive noise sequence en Simplistic, yet useful modeling assumptions are the following: Let en be a stationary random process Assume en and xn are uncorrelated (this is difcult to justify) Assume en is a white noise sequence Assume the PDF of en is uniform over the error signal range
4-102 ECE 5650/4650 Modern DSP
Assuming rounding and the modeling assumptions discussed above en has the following statistical description:
pe ( e )
n
1 -
= 2
--, -e U 2 2
Uniform PDF notation 2
Xm
-2
-2
2 e = ----12
Note: the rounding operation in MATLAB actually creates 23 C 1 and 28 C 1 levels respectively
ECE 5650/4650 Modern DSP 4-103
[n] x [ n ], x
Exact 3Bit
Xm 1 = ------ = ----B 2 22
200
0.1
3-Bit e [ n ]
1 -- = ---- = 0.125 3 2 2
Appears to be correlated with x[n]
8-Bit e [ n ]
1 -- = ---- = 3.9E-3 8 2 2
Correlation not apparent here
Sample Index
A quantized sinusoid (top), error en for 3-bits (middle), error en for 8-bits From the above gure we see that the quantization error pattern is not apparent in the 8-bit error as it is in the 3-bit error The error values are bounded as expected by =2 D 1=2B The experimental distribution of the quantization errors can be computed using a histogram, .e.g,
4-104 ECE 5650/4650 Modern DSP
3-Bit
60 40
8-Bit
20 0 -4
-3
-2
-1
3 x 10
4
-3
Histogram of error statistics The histogram appears more uniform for 8-bits than for 3-bits Looking at the autocorrelation sequence or power spectrum of en are other statistical measures worth considering
D 6:02B C 10:8
ECE 5650/4650 Modern DSP
20 log10
Xm
x 4-105
Since Xm is typically xed we see that reducing decreases the SNR by about 6 dB
by two
If xn should exceed Xm then severe distortion results i.e. jenj > =2. The degree of distortion depends on just how large jenj is and how often an exceedance occurs. In general the signal amplitude must match as best as possible to the full-scale amplitude
To insure that xn rarely exceeds Xm we might set Xm D 3 x , then P jxnj > 3 x D 2:70 10 3 or jxnj exceeds Xm only 0.27% of the time Under this condition SNRdB 6B C 10:8 20 log10 3
x x
6B C 1:26 dB For 16 bit digital audio B D 16 1 D 15 and with Xm D 3 it follows that SNRdB 91:3 dB
x
4-106
4.12.4
D/A Conversion
For a bandlimited input signal the ideal D/C produces an output spectrum of Xr .j / D X.e j T /Hr .j / where Hr .j / is the frequency response of the ideal lowpass reconstruction lter. From our earlier discussion we know that in the time-domain this becomes the sinc function interpolation formula xr .t / D
1 X nD 1
xn
A more complete model of the D/C is an analog-to-digital (D/A or DAC) converter followed by a realizable reconstruction lter
D/A Converter Realizable LPF
[n ] x B
x DA ( t )
(j) H r ( j ) or H r
(t ) x r
D/A Model
Scale by
[n ] x B
Xm
[n ] x
Convert to Impulses
Zero-Order Hold x DA ( t )
A/D converter model with reconstruction lter Initially we will consider just the D/A model
4-107
The ZOH converts the impulse train sampled signal into a stairstep approximation as follows xDA.t / D D
1 X nD 1 1 X nD 1
nT /
where the ZOH impulse response, h0.t /, is a rectangular pulse of duration T seconds A quantized signal sample is held xed at the D/A output for T seconds If we consider xn O as resulting from an additive noise model for quantization noise, we can write xDA.t / D
1 X nD 1
xnh0.t
x0 .t/
nT / C
1 X nD 1
enh0.t
e0 .t/
nT /
Note that the signal term x0.t / is related to the input xn D xa .nT /, and e0.t / is in part related to the quantization noise generated by the input A/D The term e0.t / may also take contributions from other quantization elements in the system, for example if the D/A has a shorter word-length than the internal processing achitecture, additional quantization noise is created at the D/A interface (more on this in text Chapter 6)
4-108 ECE 5650/4650 Modern DSP
In the frequency domain we can write for the signal component that X0.j / D X.e j T /H0.j /
T ZOH Magnitude Response H 0 ( j )
3.9 dB
2 ----T
-T
-T
2 ----T
ZOH frequency response compared with ideal Hr .j / The frequency domain shaping imposed by H0.j / will in general interfere with X.e j T / inside the j j < =T frequency band The nal ltering stage, Hr .j /, my compensate for H0.j / by choosing Q r .j / D Hr .j / H H0.j / The ZOH has frequency response given by Y t 2 sin. T =2/ H0.j / D F D e T
j T =2
----T
-T
-T
----T
Ideal compensated reconstruction lter As a matter of practice the time delay represented in the term e j T =2 would not be realized
4.13
We have already seen that by using oversampling the sharp cutoff antialising lter can be moved from the analog front-end to the interior of the DSP design, where it becomes a digital lter. When oversampling is employed it turns out that the number of quantization levels can also be reduced. In particular if quantization noise shaping is employed a further reduction in the number of A/D bits can be achieved. The same techniques for reducing quantization bits in the overall C/D operation can be employed in the D/C.
4-110 ECE 5650/4650 Modern DSP
4.13.1
Before studying a complete oversampling and noise shaping based A/D, we will rst consider a basic C/D system that employs straight oversampling followed by decimation. The mathematical framework requires the use of both continuous and discrete-time random processes.
LPF c = M
C/D xa ( t ) T x[n]
Quantizer
M xd [ n ]
[n] x
Down Sampler
Oversampling B C 1-bit A/D conversion with a downsampler We assume that the input xa .t / is a zero-mean WSS random process with continuous-time autocorrelation function
xa xa .
/ D E fxa .t C /xa .t /g
/g
j j
To analyze the quantization noise performance resulting from oversampling we replace the quantizer with a linear noise model as shown below
[ n] = x[n ] + e[ n] x C/D xa ( t ) T = -----------N M x[n] e[n] LPF c = M M xd [ n ] = x da [ n ] + x de [ n ]
As a result of superposition, the decimator output is composed of a signal related term xda n, and noise related term xde n We would like to nd the ratio of output signal power to output quantization noise power, i.e, SNRQ
2 ng E fxda Pda D D 2 Pde E fxde ng
in terms of the number of quantizer bits B and the oversampling ratio M As previously developed, the signal and noise are modeled as independent random processes Signal Analysis To nd the signal power we will use the power spectral density of xda n which is related to the power spectral density of xa .t /
4-112 ECE 5650/4650 Modern DSP
Following the development in Appendix A of this chapter, we know that xx m D xa xa .mT / and hence xx .e j
1 X 1 T /D xa xa j T kD 1
2 k T
N M 1 -- = ----------- T
---M
---M
Signal xa .t / spectra before and after sampling The power in the input analog signal is given by Z N 1 2 E fxa .t /g D xa xa .j / d 2 N The power in the sampled analog signal is Z 1 E fx 2ng D xx .e j! / d! 2 Z =M ! 1 1 D xa xa j 2 T =M T
ECE 5650/4650 Modern DSP
d!
4-113
If we change variables of integration in the above by letting ! ! T and noting that =M ! N , we can also write that Z N 1 2 E fx 2ng D xa xa .j / d D E fxa .t /g 2 N and hence that the power in the input analog signal and sampled signal are identical The decimation lowpass lter is ideal and xn is bandlimited so we can write xda n D xnM D xa .nM T / which further implies that the signal power is constant through the entire system Viewed in terms of the power spectrum xda xda .e j! / D and Z 1 2 E fxda ng D 2 Z 1 D 2 Z 1 D 2 xda xda .e j! / d! 1 xx .e j!=M / d! M
=M
1 xx .e j!=M /; M
j! j <
xx .e j! / d! D E fx 2ng D Pda
=M
4-114
Noise Analysis The quantization noise analysis is different as it is not bandlimited to j! j < =M We model en as a WSS zero mean white-noise process with
xx m
2 e m
2 m D 12
j! j <
2 e
The noise power following the decimation lowpass lter and decimator is Z 1 2 2 j! 2 E fxde ng D e jHLPF .e /j d! 2 Z =M 2 1 e 2 D D Pde e d! D 2 M =M From this we can also infer that xde xde .e / D
ECE 5650/4650 Modern DSP j! 2 e
M
4-115
xx ( e ) j ee ( e ) ---M e
2
---M
Signal and noise spectra before and after downsampling The bandlimiting action of the decimation lowpass lter has reduced the quantization noise power by the factor M Note that since D Xm=2B we can also write that 1 2 ng D E fxde 12M SNRQ Observations We can now write the signal-to-quantization noise ratio (SNRQ ) as B 2 Pda 2 2 SNRQ d D D E fxda ng 12M Pde Xm Clearly as M increases SNRQ increases linearly Also observe that for a xed SNRQ increasing M by four is the same as increasing B by one bit, i.e., every doubling of M increases the effective number of bits by 1/2
4-116 ECE 5650/4650 Modern DSP
Xm 2B
To increase the effective number of bits from say 10 to 16 would require an oversampling factor of M D 22.16 10/ D 212!
4.13.2
In the previous section we saw that by the using oversampling the effective number of quantization bits can be increased by log2.M /=2 bits. In this section we will see that with noise shaping the increase can be signicantly greater than this. We would like to make the quantization noise spectrum nonuniform so that most of the noise power is outside the band j! j < =M , and thus removed by the downsampling lowpass lter A generic Delta-Sigma modulator or just A/D is shown in the following gure
+
x n
A/D Converter
y n
D/A Converter
A/D
A general A/D
The A/D converter is typically a 1-bit quantizer or simply a comparator For modeling purposes a discrete-time equivalent can be constructed as shown below
x n xa
+ -
C/D
1 ---------------1 1 z H z z
y n
Quantizer
LPF = ---c
T
1
x da n + x de n
xd n =
Discrete-time model of a 1st-order A/D Note that the switched capacitor integrator is modeled using a discrete-time accumulator To model the quantization noise performance we again use a linear quantization noise model
x n xa t
+ -
e n 1 ---------------1 1 z H z z
1
y n
C/D
LPF = ---c
x da n + x de n
xd n =
4-118
The A/D output is due to a transfer function that carries xn to yn and en to yn Mathematically we can write Y .z/ D X.z/Hx .z/ C E.z/He .z/
Yx .z/ O E.z/
1 1 z
n e xa t
1z
C/D
x n T
y n
LPF c = ---M n x n +e
xd n = M x da n + x de n
4-119
2 2 e 2 sin.!=2/
The noise power contained in en O is Z 1 2 2 E fen O gD e 2 sin.!=2/ d! 2 2Z 4 e D sin2.!=2/ d! 2 2Z 1 1 4 e cos.!/ d! D 2 D 2 2 2 which is twice that of en!
2 e
The total noise power may be doubled, but in the frequency band =M; =M the power spectral density is much smaller than without noise shaping
j
e e e
2 2 = 4 e sin2
1 -T
j
xx e
2
e
---M
---M
4-120
Assuming as before an ideal lowpass lter in the downsampler, the composite power spectral density of xd n is as shown below
j
e e e
4 e 2 = -------2M - sin M
1 ---T
x da x da e
Shaped noise and signal spectrum following downsampling The quantization noise power is Z 1 Pde D E fyde ng D xde xde .e j! / d! 2 Z 2 ! Xm 2 1 1 2 sin D d! 2 12M 2B 2M 1 Xm 2 2M D 2 sin. =M / 12M 2B Assuming that M is large we can approximate sin.u/ Z 1 1 Xm 2 ! 2 Pde d! 2 2 12M 2B 2M ! 2 3 1 1 Xm ! D 2 12M 2B 3M 3 1 Xm D 36 2B
ECE 5650/4650 Modern DSP 2 2
u so
M3
4-121
Using the approximation we see that doubling M is equivalent to a gain of 1.5 bits By solving for B in the expressions for Pde we can calculate the savings in bits when using combinations of oversampling and noise shaping compared to M D 1 and at noise For the case of no noise shaping, but oversampling, the bit savings is given by 1 B0.M / D log2 M 2 Considering the exact expression for Pde with rst-order noise shaping, the bit savings is # " 1 M B1.M / D log2 2 2 1 M sin. =M / Considering the approximate expression for Pde with rst-order noise shaping, the bit savings is
3 3M 1 Q 1.M / D log2 B 2 2
The bit savings expressions are compared in the following table for M D 4; : : : ; 64 M 4 8 16 32 64
4-122
Direct Quant. Noise Shape Noise Shape approx. Q 1.M / B0.M / B1.M / B 1 2.16 2.14 1.5 3.65 3.64 2 5.14 5.14 2.5 6.64 6.64 3.5 8.14 8.14
ECE 5650/4650 Modern DSP
Higher-Order Noise Shaping To further improve the bit savings a higher-order noise shaping scheme can be employed A second-order noise shaping A/D is shown below
x n
+
e n 1 ---------------1 1z
+ -
xa t
C/D -
1 ---------------1 1z
y n
Quantizer Model
T z
1
Second-order noise shaping -A/D The design is such that Hx .z/ D 1 and He .z/ D .1 so,
j! e Oe O .e / D 2 e
z 1 /2
4
2 sin.!=2/
When p -stages are employed the quantization noise power spectral density becomes
j! e Oe O .e / D 2 e
2 sin.!=2/
2p
The approximate expression for Pde when using the small angle approximation for sin.u/ becomes Z h 1 1 Xm 2 ! i2p Pde D 2 d! 2 12M 2B 2M 2p 1 Xm 2 D 12.2p C 1/ 2B M 2pC1
ECE 5650/4650 Modern DSP 4-123
Using this approximate expression for Pde the bit savings compared with no noise shaping (p D 0) and no oversampling (M D 1) is
2p C1 1 .2p C 1/M Q p .M / D log2 B 2p 2
Quantizer bit savings as a function of noise shaping lter order, p , and oversampling ratio, M , is given in the following table Filter Order p 0 1 2 3 4 5 Oversampling Factor M 4 8 16 32 64 1.00 1.50 2.00 2.50 3.00 2.14 3.64 5.14 6.64 8.14 2.86 5.36 7.86 10.36 12.86 3.45 6.95 10.45 13.95 17.45 3.98 8.48 12.98 17.48 21.98 4.47 9.97 15.47 20.97 26.47
Note that the numbers in the above table differ slightly from those in the text (why?) Suppose that we want to achieve 16-bit accuracy with just a 1-bit quantizer; Choosing M D 64 and p D 3 equates to 18.45 equivalent bits The text authors point out that large values of p can be difcult to deal with The lter structure known as multistage noise shaping or MASH is an alternative explored in Text problem 4.62
4-124
4.13.3
In the D/A conversion process similar issues exist with regard to realizability of analog lters, here reconstruction, and the use of oversampling to reduce the number of quantization bits.
The basic idea is to oversample a signal just prior to the D/A converter, but also choose the D/A to have fewer bits (hence requantize the higher sample rate signal)
LPF
yd
Gain = M
c = ---M
n y
Quantizer
y n
D/C
ya t T
Upsampler
For this scheme to work the quantization noise must be shifted outside the signal band A rst-order noise shaping lter and the linear noise model equivalent is shown below
ECE 5650/4650 Modern DSP 4-125
n y
+ Quantizer -
y n
z
1
e n
e n
+ -
z
1
n + e n = y
y n
e n
First-order noise shaping -D/A and linear noise equivalent The signal path transfer function is such that yn D yn O The transfer function relating en O to en is O E.z/ D E.z/ or O E.z/ He .z/ D D1 E.z/ z
1
E.z/z
2 sin.!=2/
Input Spectrum
yd yd e
Input Upsampled
j
y e y
---M
---M = 4 e sin 2
2
j
e e e
MT
-T
------MT
------MT
-T
Signal and noise spectra in the rst-order -D/A In the above gure it is assumed that the D/C has an ideal reconstruction lter This requirement must be relaxed in a practical -D/A A softer reconstruction lter will allow more noise to pass, but a multistage noise shaping lter can be employed to counter this loss
4-127
As in the A/D case an order-p noise shaping lter produces a spectrum of the form
j! e Oe O .e / D 2 e
2 sin.!=2/
2p
32 Tap FIR
f s = 1 Hz
+7.5038e-002z 1
Sine Wave
Over Sample
Quantizer
Decimate LPF
f s = 16 Hz
32 Levels on [-1,1]
Scope1
M = 16
Zero-Order Hold
Scope2
final_ovsr To Workspace
In this block diagram we have a continuous-time sinusoid of the form sin.2:01 =20/t driving a zero-order hold block which sets the sampling rate at T D 1=16 s or fs D 16 Hz The quantizer block has quantization steps at intervals of 1=16 so the interval 1; 1 contains 32 levels (actually 33 since zero is also included) Sampling rate conversion is performed by a 32-tap FIR lowpass lter with !c D =16 Decimation by M D 16 is performed by another zero-order hold block which samples with T D 1s Samples are collected in the MATLAB workspace from the quantizer output and the decimator output Spectral analysis is then performed using psd()
p D 2 A/D
For comparison purposes a A/D block diagram is congured using a second-order (p D 2) shaping lter The remaining block diagram elements are the same as in the straight oversampled A/D
ECE 5650/4650 Modern DSP 4-129
raw_ds
M = 16
32 Tap FIR
Scope1
To Workspace1
f s = 16 Hz
1 1-z-1 1 1-z-1 Accum2 1 z Unit Delay Quantizer +7.5038e-002z 1 Decimate LPF1
f s = 1 Hz
Sine Wave
Accum1
Zero-Order Hold
Scope2
final_ds
32 Levels on [-1,1]
To Workspace
Simulation runs of length 10,000 seconds are run with each system
The following gures compare the power spectrum differences between the two systems as viewed from the quantizer output and the decimator output
4-130 ECE 5650/4650 Modern DSP
-A/D
Oversampling A/D
Noise Shaping from p = 2 1 2 3 4 5 6 7 8
Frequency
20 dB
Oversampling A/D
-A/D
0.4 0.5
Frequency
The quantization noise oor drops by about 20 dB in the A/D compared with the oversampled A/D
ECE 5650/4650 Modern DSP 4-131
The theoretical reduction in total noise power should be the result of gaining an equivalent of 7.86 bits or 6:02 7:86 D 47 dB More work is needed to verify this
D D D D D D D D D
14-Bit Dynamic Range ADC and DAC Variable ADC and DAC Sampling Rate Up to 19,200 Samples per Second Switched-Capacitor Antialiasing Input Filter and Output-Reconstruction Filter Serial Port for Direct Interface to TMS32011, TMS320C17, TMS32020, and TMS320C25 Digital Signal Process Synchronous or Asynchronous ADC and DAC Conversion Rate With Programmable Incremental ADC and DAC Conversion Timing Adjustments Serial Port Interface to SN74299 Serial-to-Parallel Shift Register for Parallel Interface to TMS32010, TMS320C15, or Other Digital Processors 600-Mil Wide N Package (CL to CL) 2s Complement Format CMOS Technology
Band-Pass Filter M U X M U X Internal Voltage Reference (TLC32040 only) Low-Pass Filter + + OUT + OUT A/D Serial Port FSR DR EODR MSTR CLK SHIFT CLK WORD/BYTE DX FSX D/A EODX
IN + IN AUX IN + AUX IN
Transmit Section
REF
RESET
Notes: The serial port interfaces directly with TI DSPs The sampling rate is software programmable
ECE 5650/4650 Modern DSP 4-133
word
A feature of the TLC32040 is that it has a switched-capacitor programmable antialias lter and reconstruction lter
The 14-bit A/D and D/A uses a traditional successive approximation type design
30 40 50 60 70
Magnitude dB
30
The TLC320AD535 is a complete two channel (audio and data) 16 bit AIC for telephony applications
This circuit is mentioned here because it is also native to the TI C6711-DSKs used here in the signal processing laboratory
ECE 5650/4650 Modern DSP 4-135
Magnitude dB
4-136
MIC_AUDIO
+
Mic Preamp 20/0 dB Gain 2.5 V Phantom Power 2.5 V @ 5 mA
MIC_BIAS
M I X E R
+
2.5 V Line_In PGA 12 to 36 dB 1.5 dB Noiseless Steps 31 Steps and Mute
1
16-Bit ADC
-D/A
CAP_V
+
60- Pwr Spkr Buffer 0 dB or Mute ( Same Polarity) SPKR_LEFT
HSRX_FB
HSRXM HSRXP
Handset RX (Hybrid)
+
SPKR_RIGHT
-A/D
16-Bit DAC
+ 2.5 V
Line_Out PGA 12 to 36 dB 1.5 dB Noiseless Steps 31 Steps and Mute
2.5 V
+
600- Out Buffer 0 dB or Mute
TAPI_OUT
Handset TX (Hybrid)
HS_BUF
+
600- Handset Out Buffer 0 dB or Mute
+ Data_In PGA 0-6-12-18 dB Gain with Mute 16-Bit DAC Data (Hybrid)
1
CAP_D
-D/A
Mon_Out PGA 0-3-6-9-12 dB Gain with Mute
16-Bit ADC
M U X
+ 2.5 V
-A/D
TLC320AD535 block diagram The 16-bit A/D and D/A uses a design so the antialising
ECE 5650/4650 Modern DSP 4-137
(decimation) and reconstruction (interpolation) lters are in effect included by default, that is they cannot be removed The lter frequency responses are shown below
A/D Decimation Filter Frequency Response
0 20 40
Attenuation dB
60 80 100 120
0.8
1.6
2.4
5.6
6.4
7.2
Attenuation dB
60 80 100 120
0.8
1.6
2.4
5.6
6.4
7.2
The CS4231 is a complete stereo 16 bit audio codec usable for PC soundcard application and other 16-bit audio applications
This circuit is mentioned here because it is also native to the TI C6201/6701-EVM (evaluation module) PCI bus DSP boards which are available in the signal processing laboratory
-A/Ds
-D/As
The 16-bit A/D and D/A uses a design as in the TI320AD535, so the antialising (decimation) and reconstruction (interpolation) lters are in effect included by default, that is they cannot be removed
4-141
The CS4223 is a complete stereo 24 bit audio codec usable for high quality digital audio processing at sample rates as high as 48 kHz
4-143
Analog Devices AD6640 IF Sampling A/D The AD6640 is a 12-bit 65 Msps A/D design for software radio applications, particularly wireless base station applications
Analog Devices AD6640 12-Bit 65 MSPS IF Sampling A/D Data Sheet Description
IF Samplin
FEATURES 65 MSPS Minimum Sample Rate 80 dB Spurious-Free Dynamic Range IF-Sampling to 70 MHz 710 mW Power Dissipation Single +5 V Supply On-Chip T/H and Reference Twos Complement Output Format 3.3 V or 5 V CMOS-Compatible Output Levels APPLICATIONS Cellular/PCS Base Stations Multichannel, Multimode Receivers GPS Anti-Jamming Receivers Communications Receivers Phased Array Receivers
FUNCTIONAL
put Levels
PRODUCT DESCRIPTION FUNCTIONAL BLOCK DIAGRAM The AD6640 is a high speed, highAD6640 performance, low power, Features of the monolithic 12-bit analog-to-digital converter. All necessary functions, including track-and-hold (T/H) and reference are AVCC DV included on-chipCC to provide a complete conversion solution. The AD6640 runs on a single +5 V supply and provides CMOSA TH1 digital outputs TH2 at 65 MSPS. TH3 BUF ADC compatible Specifically designed to address the needs of multichannel, +2.4V multimode receivers, the AD6640 maintains 80 dB spuriousADC DAC 7 AD6640 REFERENCE free dynamic range (SFDR) over a bandwidth of 25 MHz. 6 Noise performance is also exceptional; typical signal-to-noise INTERNAL DIGITAL ERROR CORRECTION LOGIC TIMING ratio is 68 dB. MSB LSB TheGND AD6640 is built on Analog Devices high speed complemenD11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 tary bipolar process (XFCB) and uses an innovative multipass architecture. Units are packaged in a 44-terminal Plastic Thin Quad Flatpack (TQFP) specified from 40 C to +85 C.
PRODUCT HIGHLIGHTS 1. Guaranteed sample rate is 2. Fully differential analog inp up to 70 MHz; enables IF 3. Low power dissipation: 71 4. Digital outputs may be run face to digital ASICs. 5. Complete Solution: referen 6. Packaged in small, surface
mance, low power, er. All necessary and reference are nversion solution. nd provides CMOS4-144
The intended application of the AD6640 is to replace a tradiPRODUCT HIGHLIGHTS tional IQ sampling which requires two A/Ds with 1. Guaranteed samplefront-end rate is 65 MSPS. a single IF sampling A/D which can serve many DSP based 2. Fully differential analog input stage specified for frequencies up to 70 MHz; enables IF Sampling. channelizing lter blocks
3. Low power dissipation: 710 mW off a single +5 V supply. 4. Digital outputs may be run on +3.3 V supply forECE easy5650/4650 inter- Modern DSP face to digital ASICs. 5. Complete Solution: reference and track-and-hold.
and purpos referred to general as a soft radio using a mixer with a variable local oscillator (LO); the variable purpose filtering, demodulation and simply through code rev LO is Figure used to43. tune-in the desired signal. This first IF is Narrowband Digital Receiver Architecture analog counter parts. mixed down to a OVERSAMPLING second IF using another mixer stage and a A/DS AND 4.13. NOISE SHAPING D/AS Description If LO. demodulation takes place in theAND analog domain then tradiInSystem the narrowband receiver fixed Demodulation takes place at the second or third IF In the wideband digital tional discriminators, envelop detectors, phase locked loops or must be tuned. This is acco using either analog or digital techniques. sion functions in much other synchronous detectors are generally employed to strip the oscillator at the first mix do An entire isreject shifte modulation from the selected carrier. narrow band band filter to ADCs NARROWBAND NARROWBAND diate frequency. In the the selected carrier for signa However, such as theI ADSP-2181 LNA as general purpose FILTER DSP chips FILTER MHz to 30 MHz of ba become more popular, they will be used in many basebandIn5 the digital wideband rece neously to an IF frequen sampled applications like the one 43. As Q IF IF shown in Figure oscillator has been replaced RF band c shown in the figure, prior to ADC conversion, the signal must e.g. 900MHz must beanalog-to-digital accomplished in an digitalusing dataastream con be mixed down, filtered, and the I and Q components separated. digitally digital dow FIXED VARIABLE These functions are realizable through DSP techniques, howremainder of the radio i quently called a channelize SHARED ever several key technology breakthroughs are required: high ONE RECEIVER PER CHANNEL purpose general pu because theand purpose of thes dynamic range ADCs such as the AD6640, new DSPs (highly filtering, demodulation of many within the broadba programmable with onboardDigital memory, fast), digital tuners and Figure 43.Narrowband Narrowband Digital Receiver Architecture data stream of the ADC. Traditional Receiver Architecture analog counter parts. filters such as the AD6620, wide band mixers and amplifiers. If demodulation takes place in the analog domain then tradiIn the narrowband recei AD6620 tional discriminators, envelop detectors, phase locked loops or must be tuned. This is AD6640 other synchronous detectors are generally employed to strip the oscillator at the first mix DIGITAL TUNER/FILTER WIDEBAND DSP modulation from the selected carrier. ADC WIDEBAND narrow band filter to rej WIDEBAND LNA FILTER MIXER the selected carrier for s However, as general purpose DSP chips such as the ADSP-2181 "n" CHANNELS TO DSP become RF more popular, they will be used in many basebandIn the digital wideband e.g. 900MHz 12.5MHz sampled applications like the one shown in Figure 43. As oscillator has been repla (416 CHANNELS) TUNER/FILTER Figure 45. AD6 shown in the figure, prior to ADC conversion,DIGITAL the signal FIXED must be accomplished i DSP must be mixed down, filtered, and the I and Q components separated. Figure 45 shows the block digitally using a digital d CHANNEL SELECTION SHARED These functions are realizable through DSP techniques, howasquently the AD6620. Channelize called a channe merically Controlled Oscilla ever several key technology breakthroughs are required: high because the purpose of Figure 44. Wideband Receiver Architecture Wideband Digital Digital Receiver Architecture matched digital filters. The dynamic range ADCs such as the AD6640, new DSPs (highly of many within the broa Figure 44 shows such a wideband system. This design shows bedata required in an rec programmable with onboard memory, fast), digital tuners and stream of analog the ADC that the front end variable local oscillator has been replaced with digital form. The digital ou filters such as the AD6620, wide band and amplifiers. a fixed oscillator andIF thesampling back end has mixers been replaced with a AD6640 application
1 2
Figure 45 shows the blo as the AD6620. Channe SHARC is a registered trademark of Analog Devices, Inc. Controlled Os Figure 44. Wideband Digital Receiver Architecture 18 merically matched digital filters. Figure 44 shows such a wideband system. This design shows be required in an analog that the front end variable local oscillator has been replaced with digital form. The digita a fixed oscillator and the back end has been replaced with a desired carrier, frequent wide dynamic range ADC, digital tuner and DSP. This techbeen filtered and remov nique offers many benefits. desired. Since the chan RF channel, one tuner c First, many passive discrete components have been eliminated ceived, although only on that formed the tuning and filtering functions. These passive the entire band. Data fr components often require tweaking and special handling cessed using a digital sig during assembly and final system alignment. Digital compoor the SHARC process nents require no such adjustments; tuner and filter characteristics ECE 5650/4650 Modern DSP then4-145 be processed throu are always exactly the same. Moreover, the tuning and filtering characteristics can be changed through software. Since software tion from the carrier.
wide dynamic range ADC, digital tuner and DSP. This technique offers many benefits. First, many passive discrete components have been eliminated that formed the tuning and filtering functions. These passive components often require tweaking and special handling during assembly and final system alignment. Digital components require no such adjustments; tuner and filter characteristics are always exactly the same. Moreover, the tuning and filtering characteristics can be changed through software. Since software
desired carrier, frequently in been filtered and removed b desired. Since the channeli RF channel, one tuner chip ceived, although only one w the entire band. Data from cessed using a digital signal or the SHARC processor, then be processed through s Figure 45. A tion from the carrier.
4.14
Continuous vs Discrete-Time WSS Random Processes The text and notes discussion of random processes is for the most part restricted to discrete-time random processes. In order to work problems involving the sampling of continuous-time random processes, a basic understanding of continuous-time random processes is helpful. This short note is intended to help supply some of the needed information for the special case of wide-sense stationary (WSS) processes.
4.14.1
To begin with consider the basic denitions of auto-correlation and power spectral density of the random process xc .t /. The mean is given by mxc D E fxc .t /g The autocorrelation function is
xc xc .
/ D fxc .t C /xc .t /g
The auto covariance function is mxc xc .t / xc xc . / D xc .t C / D xc xc . / jmxc j2 The power spectral density is Z Pxc xc . / D xc xc .j / D
1 4-146 1 xc xc .
mxc
/e
4.14.2
The continuous-time quantities of autocorrelation and power spectral density are related to their discrete-time counter-parts via sampling relationships. To begin with we assume that xn D xc .nT /, where T is the sample spacing. The autocorrelation functions are related as follows:
xx m
To obtain the power spectrum relationship rst note that 1 Pxc xc . / DmT xx m D xc xc .mT / D F Proceed by taking the Fourier transform of both sides Pxx .!/ D D
1 X mD 1
1 2
1
1 1
Pxc xc . /e j "
1 X mD 1
d
DmT
e # e
j!m
j!m
1 2
Pxc xc . /
1
ej
mT
The inner sum can be written as an impulse train by using the Poisson sum formula
1 X mD 1 ECE 5650/4650 Modern DSP
j.
!=T /mT
2 D T
1 X mD 1
! 2 m C T T
4-147
Now substitute the impulse train representation into the power spectrum equation to obtain Z 1 1 1 X ! 2 m Pxx .!/ D Pxc xc . / C d T mD 1 T T 1
1 1 X ! D Pxc xc T mD 1 T
2 m T
4.14.3
The power spectral density relationship can also be established in a manner very similar to that found in the notes Pxx .!/ D
1 X mD 1 " ( xx me j!m 1 X mD 1
D . 2 T
1 X mD 1
xc xc .mT /e
j!m
)# mT /
1 X mD 1 !D T
D F "
xc xc .
1 D F xc xc . / 2 " 1 1 X D Px x T mD 1 c c Finally,
#
!D T
2 m T
#
!D T
2 m T
4-149