Module Operation
486
SPNU563A – March 2018
Copyright © 2018, Texas Instruments Incorporated
Error Profiling Controller (EPC)
The 64-bit aligned address of the correctable fault from each IP FIFO is sent to the CAM to check if the
correctable fault is unique or repetitive. If it is a repetitive address for the correctable fault, then the
correctable fault and its address are discarded and no further indication to the CPU. If it is a unique
address, then the address will be remembered in the CAM content and CAM index will be set to occupied.
It is software configurable to raise an error event to ESM if SERRENA bits in EPCCNTRL are enable.
If all CAM indexes are occupied, EPC will set the CAM full status bit in EPCERRSTAT register and trigger
an interrupt to VIM if CAMFIFOFULLENA bit in EPCCNTRL register is set. You can inspect CAM and set
its indexes to available.
If all CAM indexes are occupied and there is a new correctable fault event to be checked, the EPC will set
the CAM overflow status bit in EPCERRSTAT register and trigger an error event to ESM if correctable
error event enable bits are set in EPCCNTRL register. The CAM content and index are not updated when
CAM overflow happens.
Reading a CAM index value of 5h indicates the CAM entry is available and reading a value of Ah indicates
the CAM entry is occupied. You can also inspect the number of CAM indexes that are still in available
state by reading the CAMAVAILSTAT register.
CAM content and index can only be updated in privilege mode.
In functional mode, CPU can only set CAM index to available state but not occupied state. Occupied state
setting by CPU will be ignored.
CPU can also update the CAM content. In this case, once the CAM content is updated, the CAM index will
auto set to occupied state, but there is no correctable error event generation to ESM. This is mainly used
as a way to avoid correctable error event generation for hard fault on single (correctable) bit error address
in functional mode. An example usage would be: Assume address 0x0800_0000 has a hard fault single-bit
error in the RAM. You can write 0x0800_0000 to the EPC CAM content. This write will update the
corresponding CAM index to “occupied” by EPC hardware. You can avoid EPC generation of single-bit
error event every time the CPU accessing address 0x0800_0000.
12.2.2.2 Diagnostic Mode
EPC allows you to diagnose the CAM content, CAM index, and correctable event generation to ensure the
CAM operates correctly and to avoid latent fault.
You need to set DIAG_ENA_KEY in EPCCNTRL register to Ah to enter diagnostic mode.
Once in diagnostic mode, you can change any CAM index to available or occupied state. Setting all CAM
indexes to occupied will result in CAM full status bit to be set in EPCCNTRL register. In this case, EPC will
generate the CAM full interrupt if CAM/FIFO full interrupt enable is set. The NUMCAMAVAIL bits of
CAMAVAILSTAT will also reflect the number of CAM index available when you change the CAM index
values between available and occupied.
Writes to CAM content will also set the corresponding CAM index to occupied and trigger correctable error
event to ESM. This is done to test the signal chain in CAM content update for unique address and
triggering correctable event in functional mode.