Product Specs

Table Of Contents
43 PDM Pulse density modulation interface
Page
437
43 PDM Pulse density modulation interface
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.
Listed here are the main features for PDM:
Up to two PDM microphones configured as a Left/Right pair using the same data input
16 kHz output sample rate, 16-bit samples
EasyDMA support for sample buffering
HW decimation filters
The PDM module illustrated in Figure 124: PDM module on page 437 is interfacing up to two digital
microphones with the PDM interface. It implements EasyDMA, which relieves real-time requirements
associated with controlling the PDM slave from a low priority CPU execution context. It also includes all
the necessary digital filter elements to produce PCM samples. The PDM module allows continuous audio
streaming.
CLK
DIN
Figure 124: PDM module
43.1 Master clock generator
The FREQ field in the master clock's PDMCLKCTRL register allows adjusting the PDM clock's frequency.
The master clock generator does not add any jitter to the HFCLK source chosen. It is recommended (but not
mandatory) to use the Xtal as HFCLK source.
43.2 Module operation
By default, bits from the left PDM microphone are sampled on PDM_CLK falling edge, bits for the right are
sampled on the rising edge of PDM_CLK, resulting in two bitstreams. Each bitstream is fed into a digital filter
which converts the PDM stream into 16-bit PCM samples, and filters and down-samples them to reach the
appropriate sample rate.
The EDGE field in the MODE register allows swapping Left and Right, so that Left will be sampled on rising
edge, and Right on falling.
The PDM module uses EasyDMA to store the samples coming out from the filters into one buffer in RAM.
Depending on the mode chosen in the OPERATION field in the MODE register, memory either contains
alternating left and right 16-bit samples (Stereo), or only left 16-bit samples (Mono).
To ensure continuous PDM sampling, it is up to the application to update the EasyDMA destination address
pointer as the previous buffer is filled.
Band-pass and
Decimation (right)
PDM to PCM
Band-pass and
Decimation (left)
CM
PDM to P
Master clock
generator
RAM
Sampling
EasyDMA