Emulation and SIL3 Diagnostic Modes
353
SPNU563A – March 2018
Copyright © 2018, Texas Instruments Incorporated
F021 Level 2 Flash Module Controller (L2FMC)
7.7.4 SECDED Software Diagnostic
The SECDED block is used to perform error detection and correction on the implicit reads made after
reset by L2FMC. To simplify the diagnostic for this logic, a software mechanism is used. To check that the
SECDED module correctly performed its operation, the following steps must be used:
1. CPU reads the 64-bit memory location of the implicit read. For example, implicit read location is at
0xF008_0140.
2. Next, CPU reads the memory mapped registers RCR_VALUEx registers accessible at address offsets
D0h and D4h.
3. The two 64-bit values read in steps 1 and 2 are compared for being equal.
a. If the two values are equal, then the location in memory after correction by the CPU SECDED is
the same value as location in memory after correction by L2FMC SECDED. Assuming the CPU
SECDED can be independently verified, the L2FMC SECDED must be functioning correctly.
b. If the two values are not equal, then L2FMC SECDED is not functioning correctly.
7.7.5 Read Margin
When the bits are programmed or erased, they are checked against a program_verify or erase_verify
reference level that is far away from the normal read reference point. Over time, bit levels may drift toward
the normal read point and if it is too much then a bit will read the wrong value. To counteract this, the bits
can be read using different read_margin reference points to give an early detection of the problem. The
bits can then be either re-programmed (most common) or the sector can be erased and reprogrammed.
7.8
Parameter Overlay Module (POM)
In many applications it is important to be able to change certain parameters in the program without having
to re-flash the device and immediately test these changes either in a hardware-in-the-loop simulation or in
a real environment. The Parameter Overlay Module (POM) helps to achieve this goal. The POM provides
a mechanism to redirect accesses to non-volatile memory into a volatile memory that can be internal to
the device or external. The data requested by the master will be fetched from the overlay memory instead
of the main non-volatile memory. The overlay memory can be accessed by other masters in the system to
provide an easy update path of the stored data. Other masters can be, for example, the main CPU, DMA,
DMM, or DAP AHB-AP.
7.8.1 Example Procedure to Configure the POM
Suppose the intent is to remap 128KB of Flash at address 10_0000h to 8000_0000h. Note that both
program region and overlay region have to be aligned to the size of the region. Sequence to perform this
configuration would be as follows:
1. Ensure that there are no active accesses to this space while the following configuration is ongoing.
2. Write to the POMGLBCTRL.OTADDR (offset 0h) a value of 200h. These are the upper 10bits of the
overlay region base address.
3. Write to the POMPROGSTART0.STARTADDRESS (offset 200h) a value of 0x10_0000h.
4. Write to the POMOVLSTART0.STARTADDRESS (offset 204h) a value of 00_0000h. These are the
bits 21-17 of the overlay region address. Since the region size is 128KB the lower bits do not matter.
5. Write to the POMREGSIZE0.SIZE (offset 208h) a value of Ch.
6. Finally write to the POMGLBCTRL.ON_OFF to Ah.
7. End of sequence.