DM__ADM__DPCM__ADPCM-1
DM__ADM__DPCM__ADPCM-1
1 / 35
Delta Modulation
2 / 35
The Difference between the input and the approximation is quantized
into only two levels: Namely ±∆
3 / 35
+∆: Corresponds to positive difference
−∆: Corresponds to negative difference
If the approximation falls below the signal at any sampling epoch: It
is increased by ∆
If the approximation lies above the signal: It is diminished by ∆
If the signal does not change too rapidly from sample to sample: We
find that the staircase approximation remains within ±∆ of the input
signal
Let m(t) denote the message signal, mq (t) denotes its staircase
approximation, and m(n) denote the sample of the signal m(t) taken
at t = nTs
4 / 35
e(n) is an error signal: representing the difference between the
present sample m(n) of the input signal and the latest approximation
mq (n − 1)
eq (n) is the quantized version of e(n), and sgn(.) is the signum
function
The quantizer output mq (n): is coded to produce delta modulated
signal
Figure 1(a) illustrates the way in which the staircase approximation
mq (t) follows the variations in the input signal m(t): in accordance
with above equations
Figure 1(b): displays the corresponding binary sequence at the delta
modulator output
The rate of information transmission in delta modulation: is equal to
the sampling rate fs = 1/Ts
The advantage of delta modulation: is its simplicity
Transmitter:
5 / 35
Delta modulation may be generated by applying the sampled version
of the incoming signal to the modulator: Involving a comparator,
quantizer, and accumulator
The interconnection of comparator, quantizer, and accumulator in
generator is shown in Figure 2
Figure 2: DM Transmitter
6 / 35
The block labeled Z −1 inside the accumulator represents: a unit delay
(equal to one sampling period)
Comparator: Computes the difference between its two inputs
Quantizer: Consists of a hard limiter with an input-output relation
that is a scaled version of the signum function
The quantizer output is then applied to an accumulator producing the
result:
n
X
mq (n) = ∆ sgn(e(i)) (4)
i=1
n
X
= eq (i) (5)
i=1
Figure 3: DM Receiver
8 / 35
In the receiver the staircase approximation mq (t) is reconstructed by
passing the sequence of positive and negative pulses: Produced at the
decoder output through an accumulator in a manner similar to that
used in the transmitter
The out of band quantization noise in the high frequency staircase
waveform mq (t) is rejected by passing it through a LPF- with a
bandwidth equal to the original message bandwidth
Delta modulation is subject to two types of quantization errors:
1 Slope overload distortion
2 Granular noise
Slope overload distortion:
We observe that Equation (3) is the digital equivalent of integration:
it represents the accumulation of positive and negative increments of
magnitude ∆
9 / 35
Denoting the quantization error by q(n)
From above equation we see that except for the quanization error
q(n-1): the quantizer input is a first backward difference of the input
signal- which may be viewed as a digital approximation to the
derivative of the input signal or equivalently as the inverse of the
digital integration process
10 / 35
If we consider the maximum slope of the original input waveform
m(t): the order for the sequence of samples mq (n) need to increase
as fast as the input sequence of samples m(n) in a region of
maximum slope of m(t)- We require that the condition below need to
be satisfied
∆ dm(t)
≥ max| | (9)
Ts dt
Otherwise: we find that the step size ∆ is too small for the staircase
approximation mq (t) to follow a steep segment of the input waveform
m(t)
The mq (t) falling behind m(t) is illustrated in Figure 4 : This
condition is called slope overload- The resulting quantization error is
called slope overload distortion (noise)
Since maximum slope of the staircase approximation mq (t) is fixed by
the step size ∆: As the delta modulator uses a fixed step size it is
often referred to as a linear delta modulator
11 / 35
Figure 4: Illustration of slope overload distortion and Granular noise in
delta modulation
12 / 35
Granular noise: Causes the staircase approximation mq (t) to hunt
around a relatively flat segment of the input waveform (This is
illustrated in Figure 4)
Granular noise is analogous to quantization noise in a PCM system
We therefore see a need to have:
1 A large step size to accommodate a wide dynamic range
2 A small step size for the accurate representation of relatively low level
signals
The choice of optimum step size that minimizes the mean square
value of the quantization error in a linear delta modulator: will result
a compromise between slope overload and granular noise
To satisfy such requirement: We need to make the delta modulator
”adaptive”- in the sense that the step size is made to vary in
accordance with the input signal
13 / 35
Differential Pulse Code Modulation (DPCM)
15 / 35
Figure 5: DPCM Transmitter
16 / 35
By encoding the quantizer output as in Figure 5 we obtain a variant
of PCM known as differential pulse-code modulation (DPCM)
The quantizer output may be expressed as
18 / 35
Figure 6: DPCM Receiver
19 / 35
Accordingly, the corresponding receiver output is equal to mq (n):
which differs from the original input m(n) only by the quantization
error q(n) (incurred as a result of quantizing the prediction error e(n))
In a noise free environment: The prediction filters in the transmitter
and receiver operate on the same sequence of samples mq (n)
Differential pulse code modulation includes delta modulation as a
special case
The important differences between the DM and DPCM are
1 In DM a one bit (two level) quantizer is used
2 In DM a Single delay element is used in place of the prediction filter
DPCM like DM is subject to slope overload distortion when the input
signal changes too rapidly for the prediction filter to track
Also like PCM: DPCM suffers from quantization noise
Processing Gain:
20 / 35
The output signal to noise ratio of the DPCM system shown in Figure
6 is given by
σ2
(SN R)o = M 2 (15)
σQ
where σM2 is the variance of the original input sample m[n]- assumed
to be of zero mean
2 is the variance of the quantization error q(n)
σQ
The above equation can be rewritten as
2 σ2
σM E
(SN R)o = 2 σ2 (16)
σE Q
= Gp (SN R)Q (17)
23 / 35
Adaptive Differential Pulse Code Modulation (ADPCM)
The use of PCM for speech coding at the standard rate of 64kb/s:
demands a high channel bandwidth for its transmission
In certain applications: such as secure transmission over radio
channels that are inherently of low capacity- channel bandwidth is at
a premium
In applications of this kind ( where the channel capacity is low): there
is a need for speech coding at low bit rates- while maintaining
acceptable fidelity or quality of reproduction
For coding speech at low bit rates: a waveform coder of prescribed
configuration is optimized by exploiting both statistical
characterization of speech waveforms and properties of hearing
In particular: The design philosophy has two aims in mind:
1 To remove the redundancies from the speech signal as far as possible
2 To assign the available bits to code the non redundant parts of the
speech signal in a perceptually efficient manner
24 / 35
To reduce the bit rate from 64 kb/s (used in standard PCM) to 32,
16, 8, and 4 kb/s: the schemes used for redundancy removal and bit
assignment become increasingly more sophisticated
As a rule of thumb the reduction in bit rate from 64 kb/s to 8 kb/s
range: increases the computational complexity (measured in terms of
multiply and add operations)
Adaptive differential pulse code modulation(ADPCM): permits the
coding of speech at 32 kb/s through the combined use of adaptive
quantization and adaptive prediction
In ADPCM: the number of eight bits per sample required in the
standard PCM is reduced to four
The term adaptive: means being responsive to changing level and
spectrum of the input speech signal
25 / 35
The variation of performance with speakers and speech material,
together with variations in signal level inherent in the speech
communication process: make the combined use of adaptive
quantization and adaptive prediction necessary to achieve best
performance over a wide range of speakers and speaking situations
Adaptive quantization: refers to a quantizer that operates with a time
varying step size ∆(n)
At any given sampling instant identified by the index n: the adaptive
quantizer is assumed to have a uniform transfer characteristics
2 of the
The step size ∆(n) is varied so as to match the variance σM
input sample m(n)
∆(n) = ϕσˆM (n) (20)
where ϕ is a constant, and σˆM (n) is an estimate of the standard
deviation σM (n) (square root of variance)
For a non stationary input: σM (n) is time varying
26 / 35
The problem of adaptive quantization according to Equation (20): is
computing the estimate σˆM (n) continuously
The implementation of Equation (20) may proceed in two ways:
1 Adaptive quantization with forward estimation (AQF): in which
unquantized samples of the input signal are used to derive the forward
estimates of σM (n)
2 Adaptive quantization with backward estimation (AQB): in which
samples of the quantizer output are used to derive backward estimates
of σM (n)
AQF scheme:
1 requires the use of a buffer to store unquantized samples of the input
speech signal needed for the learning period
2 requires the explicit transmission of level information (typically, about 5
to 6 bits per step-size sample) to a remote decoder- thereby burdening
the system with additional side information that has to be transmitted
to the receiver
3 introduces a processing delay (on the order of 16 ms for speech) in the
encoding operations- which is unacceptable in some applications
27 / 35
The problems of buffering, level transmission, and delay intrinsic to
AQF: are all avoided in AQB
In AQB: the recent history of the quantizer output is used to extract
information for the computation of the step size ∆(n)
In practice: AQB is therefore usually preferred over AQF
The block diagram of AQB is shown in Figure 7
AQB represents a nonlinear feedback system: hence it is not obvious
that the system will be stable
If the quantizer input m(n) is bounded: Then the backward estimate
σˆM (n) and the corresponding step size ∆(n) are bounded- under
such a condition the system is indeed stable
28 / 35
Figure 7: Adaptive Quantization with backward estimation (AQB)
29 / 35
This implies that the design of predictors for such inputs should
likewise be time varying, that is, adaptive
As with adaptive quantization, there are two schemes for performing
adaptive prediction:
1 Adaptive prediction with forward estimation (APF): in which
unquantized samples of the input signal are used to derive estimates of
the predictor coefficients.
2 Adaptive prediction with backward estimation (APB), in which samples
of the quantizer output and the prediction error are used to derive
estimates of the predictor coefficients.
APF suffers from the same intrinsic disadvantages: side information,
buffering, and delay as AQF
These disadvantages are eliminated by using: APB scheme
The block diagram for Adaptive Prediction with Backward Estimation
(APB) is shown in Figure 8
30 / 35
Figure 8: Adaptive Prediction with backward estimation (APB)
31 / 35
The box labeled “logic for adaptive prediction” represents the
algorithm for updating the predictor coefficients
In APB: the optimum predictor coefficients are estimated on the basis
of quantized and transmitted data- predictor coefficients can therefore
be updated as frequently as desired, say, from sample to sample
APB is the preferred method of prediction for ADPCM
The LMS algorithm for the predictor and an adaptive scheme for the
quantizer have been combined in a synchronous fashion for the design
of both the encoder and decoder
The performance of this combination is so impressive at 32 kb/s that
ADPCM is accepted internationally as a standard coding technique
for voice signal signals: along with 64 kb/s using standard PCM
32 / 35
Adaptive Delta Modulation (ADM)
33 / 35
Figure 9: Adaptive delta modulation system: (a) Transmitter. (b) Receiver.
34 / 35
The algorithm for the adaptation of the step size is defined by
( |∆[n−1]|
mq (n) (mq (n) + 0.5 mq (n − 1)) , if ∆(n − 1) ≥ ∆min
∆(n) =
∆min , if ∆(n − 1) < ∆min
where ∆(n) is the step size at iteration (time step) n of the algorithm
mq (n) is the 1-bit quantizer output that equals ±1
35 / 35