In MIPI Soundwire: Digital Audio Simplified, we mentioned that digital audio formats including Pulse Code Modulation (PCM) and Pulse Density Modulation (PDM) are target applications for MIPI Soundwire. In the last blog post on Soundwire, we discussed Pulse Code Modulation.
For more information on MIPI Soundwire, you can download our whitepaper.
In this blog post, we will discuss Pulse Density Modulation (PDM).
PDM, is a form of modulation used to represent an analog signal with digital data. In a PDM signal, specific amplitude values are not encoded into code words of pulses of different weight, as they would be in pulse-code modulation (PCM). Instead, 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.
Figure 1: Pulse Density Modulation
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.
Figure 2: Pulse Density Modulator
PDM modulators consist of noise shaping and oversampling block. Noise shaping ensures that noise present in lower frequency band is relatively low while noise in higher frequency band is relatively high. However, audio quality is more sensitive at higher frequencies unlike video/image data, which is not so sensitive at higher frequencies. To overcome this, PDM modulators oversample the audio signals and use noise shaping to push noise at higher frequencies, which reside in the non-audible zone. Typically, oversampling is done for sound at 3Mhz, while audio sampling is used at 24kHz/48KHz.
For more information on MIPI Soundwire, you can download our whitepaper.