Functional Description
543
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Internal Memory
7.2.3.11.1 To Program 32 Words With a Single Buffered Flash Memory Write Operation
1. Write the source data to the FWBn registers.
2. Write the target address to the FMA register. This must be a 32-word aligned address (that is, bits [6:0]
in FMA must be 0s).
3. Write the flash memory write key and the WRBUF bit to the FMC2 register.
4. Poll the FMC2 register until the WRBUF bit is cleared or wait for the PMIS interrupt to be signaled.
7.2.3.12 Nonvolatile Register Programming – Flash Memory Resident Registers
NOTE:
The Boot Configuration (BOOTCFG) register requires a POR before the committed changes
take effect.
This section details how to update the registers in
, which are resident within the flash memory.
These registers exist in a separate space from the main flash memory array and are not affected by an
ERASE or MASS ERASE operation. The bits in these registers can be changed from 1 to 0 with a commit
operation. The register contents are unaffected by any reset condition except power-on reset, which
returns the register contents to 0xFFFF.FFFE for the BOOT Configuration (BOOTCFG) register and
0xFFFF.FFFF for all others.
NOTE:
Do not change the values of the reserved bits in the BOOTCFG register. The reserved bits
must remain at their default value of all 1s.
By committing the register values using the COMT bit in the Flash Memory Control (FMC) register, the
register contents become nonvolatile and are therefore retained following power cycling. After the register
contents are committed, the only way to restore the factory default values is to perform the sequence
described in
All of the FMPREn, FMPPEn and USER_REGn registers, in addition to the BOOTCFG register, can be
committed in nonvolatile memory. The FMPREn, FMPPEn, and USER_REGn registers can be tested
before being committed; the BOOTCFG register cannot. To program the BOOTCFG register, the value
must be written into the Flash Memory Data (FMD) register before it is committed. The BOOTCFG
configuration cannot be tried and verified before committing to nonvolatile memory.
NOTE:
All flash memory resident registers can only have bits changed from 1 to 0 by user
programming. The FMPREn, FMPPEn, and BOOTCFG registers can be committed multiple
times, but the USER_REGn registers can only be committed once, after the entire register
has been set to 1s. After being committed, the USER_REGn registers can only be returned
to their factory default values of all 1s by performing the sequence described in
. The mass erase of the main flash memory array caused by the sequence is
performed before restoring these registers.
lists the FMA address required for commitment of each of the registers and the source of the
data to be written when the FMC register is written with a key value of 0xA442 or the PEKEY value of the
FLPEKEY register. The key value used is determined by the KEY bit in the BOOTCFG register at reset. If
the KEY value is 0x0, the PEKEY value in the FLPEKEY register is used for commits in the FMC/FMC2
register. If the KEY value is 0x1, the value 0xA442 is used as the WRKEY in the FMC and FMC2
registers. If the After writing the COMT bit, the user can poll the FMC register to wait for the commit
operation to complete.
NOTE:
To ensure nonvolatile register data integrity, nonvolatile register commits should not be
interrupted with a power loss. If data integrity is compromised during a commit because of a
power loss, a toggle mass erase function can be performed to clear these registers. See
for the list of nonvolatile registers.