Pause
X-Pulse
E-Pulse
S-Pulse
Trigger and
XMOD = 2, 3
Trigger and
XMOD = 0, 1
End of
X-Pulses
End of
E-Pulses and
XMOD = 0, 1, 2
End of
E-Pulses and
XMOD = 3
Reset
Pause
E-Pulse
S-Pulse
Trigger
End of
E-Pulses
Reset
End of
S-Pulses
End of
S-Pulses
PPG
PPG_A
Programmable Pulse Generator (PPG or PPG_A) Block
498
SLAU367P – October 2012 – Revised April 2020
Copyright © 2012–2020, Texas Instruments Incorporated
Sequencer for Acquisition, Programmable Pulse Generator, and Physical
Interface (SAPH, SAPH_A)
21.2.1 Pulse Generation
The PPG offers flexible pulse generation profiles for single tone generation at different frequencies. The
PPG_A is an extended variant of the PPG and extends the profiles with dual tone, trill tone, and multi tone
(chirp).
21.2.2 Single Tone Generation
The output pulses consists of four different phases:
Pause
,
Excitation
,
Stop
, and
Pause
again. A state
machine in PPG and PPG_A controls the flow. On PPG_A set SAPH_AXPGCTL.XMOD = 0 for single
tone generation. When the PPG or PPG_A is triggered, it leaves the Pause phase and generates
excitation pulses followed by stop pulses, then goes to Pause phase again (see
,
and
). The stop pulses have a 180° phase shift compared to the excitation pulses. The PPG
generates up to 127 excitation pulses and up to 15 stop pulses, which are controlled by the
SAPHPGC.EPULS and SAPHPGC.SPULS bits, respectively. The pulse polarity is programmable in the
SAPHPGC.PPOL bit. The signal polarity for Pause can be programmed to be logical high, logical low, or
high impedance through the SAPHPGC.PLEV and SAPHPGC.PHIZ bits.
The PPG can be triggered by writing 1 to the SAPHPPGTRIG.PPGTRIG bit when
SAPHPGCTL.TRSEL = 0 (register mode) or by the acquisition sequencer (ASQ) when
SAPHPGCTL.TRSEL = 1 (auto mode). To avoid unintended pulse outputs, keep
SAPHPGCTL.PPGEN = 0 while updating the PPG registers. After the PPG registers are updated, write 1
to the SAPHPGCTL.PPGEN bit before triggering the PPG. The SAPHPGCTL.PPGEN bit must be set
before triggering the PPG. The output channel is determined by the SAPHPGCTL.PPGCHSEL bit when
SAPHPGCTL.PGSEL = 0 (register mode) or by the acquisition sequencer (ASQ) when
SAPHPGCTL.PGSEL = 1 (auto mode). Another layer of output control is inside the PHY, so both blocks
must be configured properly (see
). The PPG or PPG_A automatically stops when it
completes generating the pulses. To stop generating pulses before completion, regardless of operation
mode, write 1 to SAPHPGCTL.STOP. The PPG immediately stops generating pulses. The
SAPHPGCTL.STOP bit is automatically cleared to zero.
Figure 21-3. PPG or PPG_A Internal State Diagrams for Single Tone