SPRUIU1C July 2020 – February 2024 DRA821U , DRA821U-Q1
The module will log faults into exception logging registers. It will capture that type of fault, the address that faulted, and the attributes of the transaction that faulted. It will also set an interrupt. The module can only store one fault. When the software clears the interrupt status then the fault is also cleared and another can be captured. If another fault occurs while one is pending then that fault log is lost.
There is a logging Enable/Disable bit per TLB and if disabled then faults from that TLB will not be logged. PVU_EXCEPTION_LOGGING_DISABLE register allows to disable types of faults, and when disabled that type of fault will not be logged. There are additional fault status fields per TLB that capture fault status that would have been logged but could not because another fault was already logged. These status bits stay set until cleared by software.
A TLB fault that occurs after chaining will set the fault status of the original TLB, and not of the last TLB in the chain.