Chapter 28 Fault Collection Unit (FCU)
MPC5602P Microcontroller Reference Manual, Rev. 4
778
Freescale Semiconductor
The register block implements all the FCU registers including input capture logic. The interface
implements the read functionality and generated write and register enable signals. The timeout counter
implements the counter to calculate timeout to switch from Alarm state to Fault state. The output prescaler
module generates the prescaled clock to be used to generate output sequence. The FCU control implements
the FCU state machine. The output generation logic generates two external output signals according to the
output generation protocol.
28.3.1
State machine
The FCU provides four states: Init, Normal, Alarm, and Fault.
Figure 28-15. Finite state machine
The Init state is entered after any destructive reset assertion. Once the FCU goes into Fault state, both
functional and destructive reset assertion lets the FCU move into Init state.
Once a configuration is locked (see
Section 28.2.3.1, “Module Configuration Register (FCU_MCR)
), the
FCU goes into Normal state. Then, when a fault occurs, the FCU can move into Alarm/Fault states
depending on the Fault Enable Register (FCU_FER). The Fault Flag Register (FCU_FFR) stores any fault
that has occurred, even if the FCU is not entering into the Alarm or the Fault state.
When the FCU is in Alarm state, a timer starts counting up to a fixed timeout (see
) before going into Fault state.
When the FCU goes into Fault state, the status of the FCU_MCR is copied into the FCU_FMCSR. Also,
the FCU_FFR is copied into the FCU_FFFR.
The FCU can be tested by setting field TM[1:0] in the FCU_MCR during initialization. In this way, the
FCU_FFGR can be accessed and faults can be emulated, since FCU behavior is the same whether real or
fake faults occur. Optionally, the output pins can be disabled in Test mode (by setting the TM field to ‘01’).
To exit from Test mode, the TM field must be set to ‘00’ or ‘11’.
NORMAL
INIT
ALARM
FAULT
Destructive reset
Destructive reset
Destructive reset
Destructive
A user-enabled fault
cause has been
detected.
Timeout is enabled
Fault is
recovered
A user-enabled fault
cause has been detected.
Timeout is disabled
Timeout elapses
Functional reset
reset
Configuration phase is finished