Trigger
Regular Excitation
Pulses (0–127)
Extra Excitation
Pulses (0–127)
Stop
Pulses (0–15)
High, Low, or Hi-Z
[Pause]
[Pause]
[S-Pulse]
[E-Pulse]
[X-Pulse]
High, Low, or Hi-Z
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
End of
S-Pulses
Programmable Pulse Generator (PPG or PPG_A) Block
500
SLAU367P – October 2012 – Revised April 2020
Copyright © 2012–2020, Texas Instruments Incorporated
Sequencer for Acquisition, Programmable Pulse Generator, and Physical
Interface (SAPH, SAPH_A)
Figure 21-6. PPG_A State Diagram for Dual Tone
Figure 21-7. PPG_A Dual Tone Generation With SAPHPGC.PPOL = 1
(Starts With Low Polarity)
21.2.4 Trill Tone Generation
The output pulses consists of multiple phases:
Pause
, a software defined set of
Extra_Excitation
and
Regular_Excitation
phases,
Stop
, and
Pause
again. A state machine in PPG_A controls the flow. Set
SAPH_AXPGCTL.XMOD = 3 for trill tone generation. When the PPG_A is triggered, it leaves Pause
phase and generates extra excitation pulses with a frequency defined by
SAPH_AXPGHPER/SAPH_AXPGLPER, then regular excitation pulses with a frequency defined by
SAPH_APGHPER/SAPH_APGLPER. While XMOD = 3 the extra excitation pulses followed by the regular
excitation pulses is repeated. Software is required to change SAPH_AXPGCTL.XMOD = 2 to terminate
the trill. The last regular excitation pulses are followed by stop pulses. Then PPG_A goes to Pause phase
again (see
and
). The stop pulses have a 180° phase shift compared to the last
regular excitation pulses. The stop pulses have same frequency as the last regular excitation pulses. The
PPG generates up to 127 extra excitation pulses, up to 127 regular excitation pulses and up to 15 stop
pulses, which are controlled by the SAPH_AXPGCTL.XPULS, SAPH_APGC.EPULS and
SAPH_APGC.SPULS bits, respectively. The pulse polarity is programmable in the SAPH_APGC.PPOL
bit. The signal polarity of Pause can be programmed to be logical high, logical low, or high impedance
through the SAPH_APGC.PLEV and SAPH_APGC.PHIZ bits.
The PPG_A can be triggered by writing 1 to the SAPH_APPGTRIG.PPGTRIG bit when
SAPH_APGCTL.TRSEL = 0 (register mode) or by the acquisition sequencer (ASQ) when
SAPH_APGCTL.TRSEL = 1 (auto mode). To avoid unintended pulse outputs, keep
SAPH_APGCTL.PPGEN = 0 when preparing the PPG_A registers. After the PPG_A registers are
prepared, write 1 to the SAPH_APGCTL.PPGEN bit before triggering the PPG_A. The
SAPH_APGCTL.PPGEN bit must be set before triggering the PPG_A. The output channel is determined
by the SAPH_APGCTL.PPGCHSEL bit when SAPH_APGCTL.PGSEL = 0 (register mode) or by the
acquisition sequencer (ASQ) when SAPH_APGCTL.PGSEL = 1 (auto mode). Another layer of output
control is inside the PHY, so both blocks must be configured properly (see
). After software
sets XMOD = 2 by directly writing or using the DMA, the PPG_A automatically stops when it completes