
Functional Description
478
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Hibernation Module
The Hibernation module power source is supplied by V
DD
as long as it is within a valid range, even if V
BAT
> V
DD
. The Hibernation module also has an independent clock source to maintain a real-time clock (RTC)
when the system clock is powered down. Hibernate mode can be entered through one of two ways:
•
The user initiates hibernation by setting the HIBREQ bit in the Hibernation Control (HIBCTL) register
•
Power is arbitrarily removed from V
DD
while a valid V
BAT
is applied
When in hibernation, the module signals an external voltage regulator to turn the power back on when an
external pin (WAKE, RST or a wake-enabled GPIO pin) is asserted or when the internal RTC reaches a
certain value. The Hibernation module can also detect when the battery voltage is low and optionally
prevent hibernation or wake from hibernation when the battery voltage falls below a certain threshold.
Note that multiple wake sources can be configured at the same time to generate a wake signal such that
any of them can wake the module.
When waking from hibernation, the HIB signal is deasserted. The return of V
DD
causes a POR to be
executed. The time from when the WAKE signal is asserted to when code begins execution is equal to the
wake-up time (t
WAKE_TO_HIB
) plus the power-on-reset time (t
POR
).
6.3.1 Register Access Timing
Because the Hibernation module has an independent clocking domain, hibernation registers must be
written only with a timing gap between accesses. The delay time is t
HIB_REG_ACCESS
, therefore software must
guarantee that this delay is inserted between back-to-back writes to Hibernation registers or between a
write followed by a read. The WC interrupt in the HIBMIS register can be used to notify the application
when the Hibernation modules registers can be accessed. Alternatively, software may make use of the
WRC bit in the Hibernation Control (HIBCTL) register to ensure that the required timing gap has elapsed.
This bit is cleared on a write operation and set once the write completes, indicating to software that
another write or read may be started safely. Software should poll HIBCTL for WRC = 1 prior to accessing
any hibernation register.
Back-to-back reads from Hibernation module registers have no timing restrictions. Reads are performed at
the full peripheral clock rate.
6.3.2 Hibernation Clock Source
The HIB module can be clocked by one of three different clock sources:
•
A 32.768-kHz oscillator
•
An external 32.768-kHz clock source
•
An internal low frequency oscillator (HIB LFIOSC)
summarizes the encodings for the bits in the HIBCTL register that are required for each clock
source to be enabled. Note that CLK32EN must be set for any Hibernation clock source to be valid. The
Hibernation module is not enabled until the CLK32EN bit is set. The HIB clock source is the source of the
RTC Oscillator (RTCOSC), which can be selected as the system clock source by programming a 0x4 in
the OSCSRC field of the Run and Sleep Mode Configuration (RSCLKCFG) register in the System Control
Module. See
for more information.
(1)
The frequency can have wide variations; see the HIB electrical specifications in the device-specific data
sheet for more details.
Table 6-1. HIB Clock Source Configurations
HIB Clock Source
CLK32EN
OSCSEL
OSCBYP
32.768 kHz oscillator
1
0
0
External 32.768-kHz clock source
1
0
1
Low-frequency internal oscillator (HIB LFIOSC)
(1)
1
1
0
To use an external crystal, a 32.768-kHz crystal is connected to the XOSC0 and XOSC1 pins.
Alternatively, a 32.768-kHz oscillator can be connected to the XOSC0 pin, leaving XOSC1 unconnected.
Care must be taken that the voltage amplitude of the 32.768-kHz oscillator is less than V
BAT
, otherwise, the
Hibernation module may draw power from the oscillator and not V
BAT
during hibernation. See
and