PDM — Pulse density modulation interface

nRF54L15 | nRF54L10 | nRF54L05 Datasheet

The pulse density modulation (PDM) module enables input of pulse density modulated signals from external audio frontends, for example, digital microphones. The PDM module generates the PDM clock and supports single-channel or dual-channel (left and right) data input. Data is transferred directly to RAM buffers using EasyDMA.

The main features of PDM are:

  • Up to two PDM microphones configured as a left/right pair using the same data input
  • 8 kHz, 16 kHz, 32 kHz, or 48k Hz output sample rate, 16-bit samples
  • Supports digital microphone clocks at 768 kHz, 800 kHz, 1. 024 MHz , 1.536 MHz, 2.048 MHz , 3.072 MHz , 1.28 MHz, and 2.56 MHz
  • Selectable ratio of 32, 48, 50, 64, 80, 96, 100, or 128 between PDM_CLK and output sample rate
  • HW decimation filters
  • EasyDMA support for sample buffering

The PDM module illustrated below is interfacing up to two digital microphones with the PDM interface. EasyDMA is implemented to relieve the real-time requirements associated with controlling of the PDM slave from a low priority CPU execution context. It also includes all the necessary digital filter elements to produce pulse code modulation (PCM) samples. The PDM module allows continuous audio streaming.

Figure 1. PDM module
PDM module