An Alternative to PCM: Coding the Difference
While is a general method for representing signals, differential coding can be more suitable in specific applications. Delta Modulation (DM) codes the difference between the current sample and an approximation of the previous sample instead of its absolute value. It is the simplest form of differential pulse-code modulation (DPCM) and uses one bit for quantization.
How Delta Modulation (DM) Works
DM tracks the analog input signal with a staircase approximation. The output is a stream of bits indicating whether the staircase should step up or step down at the next sampling interval.
The DM Process
- Comparison: The analog input signal is compared with the current staircase approximation stored in a feedback loop.
- 1-Bit Quantization: acts as a 1-bit quantizer.
- With the convention used here, if the input signal is greater than the approximation, the output is a binary '1'.
- If the input signal is less than or equal to the approximation, the output is a binary '0'.
- Staircase update: The binary output is fed back to an .
- Upon receiving a '1', the integrator increases its output by a fixed step size, .
- Upon receiving a '0', the integrator decreases its output by the same fixed step size, .
The process repeats at an elevated sampling frequency, for example 32 kHz. It produces a staircase signal that approaches the input and a binary stream describing the direction of successive changes.
Two Distortion Mechanisms: Slope Overload and Granular Noise
A fixed step size () simplifies DM but leads to two characteristic types of distortion.
Slope overload distortion
This occurs when the analog input signal changes too quickly; its slope is steeper than the rate at which the staircase can change. The fixed step size is too small to keep up. The approximation then lags behind the signal, causing distortion, particularly on sharp transients.
Granular noise
The other case occurs when the analog signal is relatively flat or changes slowly, while the fixed step size is too large. The staircase then moves alternately above and below the signal, generating a pattern of alternating '1's and '0's. The oscillation appears in the reconstructed signal as granular noise.
Adaptive Step Size: Adaptive Delta Modulation (ADM)
Adaptive Delta Modulation (ADM) changes the step size according to the recent history of the output bitstream. This lets the modulator respond to the rate of signal change instead of using one step value throughout the waveform.
Example adaptation logic
- Reducing slope overload:If the modulator outputs a sequence of identical bits, such as '111' or '000', the approximation may be failing to follow the signal. In one example algorithm, the logic then increases the step size, for example by doubling it.
- Reducing granular noise:If the modulator outputs an alternating pattern, such as '1010', the approximation is likely oscillating around the signal. The logic can then decrease the step size.
Changing the step can improve signal tracking compared with fixed-step DM, particularly during rapid changes. Depending on the adaptation rule and its parameters, this may improve quality at the same bit rate or maintain similar quality at a lower bit rate. The added logic increases circuit complexity.