Pulse-density modulation, or PDM, is a form of modulation
used to represent an analog signal
with a binary signal
. In a PDM signal, specific amplitude
values are not encoded into codewords of pulses of different weight as they would be in pulse-code modulation
(PCM); rather, the relative density
of the pulses corresponds to the analog signal's amplitude. The output of a 1-bit DAC
is the same as the PDM encoding of the signal. Pulse-width modulation
(PWM) is a special case of PDM where the switching frequency is fixed and all the pulses corresponding to one sample are contiguous in the digital signal. For a 50% voltage with a resolution of 8-bits, a PWM waveform will turn on for 128 clock cycles and then off for the remaining 128 cycles. With PDM and the same clock rate the signal would alternate between on and off every other cycle. The average is 50% for both waveforms, but the PDM signal switches more often. For 100% or 0% level, they are the same.
In a pulse-density modulation bitstream
a 1 corresponds to a pulse of positive polarity (+''A''), and a 0 corresponds to a pulse of negative polarity (−''A''). Mathematically, this can be represented as
is the bipolar bitstream (either −''A'' or +''A''), and ''a'''n''
is the corresponding binary bitstream (either 0 or 1).
A run consisting of all 1s would correspond to the maximum (positive) amplitude value, all 0s would correspond to the minimum (negative) amplitude value, and alternating 1s and 0s would correspond to a zero amplitude value. The continuous amplitude waveform is recovered by low-pass filter
ing the bipolar PDM bitstream.
A single period
of the trigonometric sine function
100 times and represented as a PDM bitstream, is:
Two periods of a higher frequency sine wave would appear as:
In pulse-''density'' modulation, a high ''density'' of 1s occurs at the peaks of the sine wave, while a low ''density'' of 1s occurs at the troughs of the sine wave.
A PDM bitstream is encode
d from an analog signal through the process of delta-sigma modulation
. This process uses a one-bit quantizer
that produces either a 1 or 0 depending on the amplitude of the analog signal. A 1 or 0 corresponds to a signal that is all the way up or all the way down, respectively. Because in the real world, analog signals are rarely all the way in one direction, there is a quantization error, the difference between the 1 or 0 and the actual amplitude it represents. This error is fed back negatively in the ΔΣ process loop. In this way, every error successively influences every other quantization measurement and its error. This has the effect of averaging
out the quantization error.
The process of decoding
a PDM signal into an analog one is simple: one only has to pass the PDM signal through a low-pass filter
. This works because the function of a low-pass filter is essentially to average the signal. The average amplitude of pulses is measured by the density of those pulses over time, thus a low-pass filter is the only step required in the decoding process.
Relationship to biology
Notably, one of the ways animal nervous systems represent sensory and other information is through rate coding
whereby the magnitude of the signal is related to the rate of firing of the sensory neuron. In direct analogy, each neural event – called an action potential – represents one bit (pulse), with the rate of firing of the neuron representing the pulse density.
right|thumb|300px|Pulse-density modulation of a sine wave
using this algorithm
A digital model of pulse-density modulation can be obtained from a digital model of the delta-sigma modulator
. Consider a signal