Hello,
We are using the FCCU NCFF register in MPC5744P to test some FCCU fault handling, for example we test the lock step fault handling by using
FCCU.NCFF.R = va_SUP_FCCU_FaultInjection;
and setting va_SUP_FCCU_FaultInjection to the values 11, 12 and 13.
For values 11 and 12 the behavior is as expected, i.e. theres is a long reset performed. But, for value 13 there seems not to be any reaction.
Thus, is there any difference between the RCCU_0a/RCCU_0b and RCCU_1 faults that could explain this behavior?
We do the following initializations for these faults:
FCCU.NCF_E[0].B.NCFE11 = 0x1u; //Enable reaction on fault NCF[11] - RCCU_0a: Interface (other than D-MEM or DMA) out of lockstep
FCCU.NCF_E[0].B.NCFE12 = 0x1u; //Enable reaction on fault NCF[12] - RCCU_0b: D-MEM array interface out of lockstep
FCCU.NCF_E[0].B.NCFE13 = 0x1u; //Enable reaction on fault NCF[13] - RCCU_1: DMA array interface out of lockstep
/* Configure lock step faults reaction to long reset */
FCCU.NCFS_CFG[0].R |= 0x0A800000u;
Best Regards,
Peder Rogö
Solved! Go to Solution.
Hi,
I just made test example for NCF[13] with long reset reaction.
I is working as expected.
I can inject fault and then device is reset. After reset I can see that FCCU triggered long reset was triggered.
See pictures below:
Have in mind that this fault injection must be executed without debugger. As debug mode disable RCCU checkers.
I have also attached for reference my test example.
Peter
Hi,
I just made test example for NCF[13] with long reset reaction.
I is working as expected.
I can inject fault and then device is reset. After reset I can see that FCCU triggered long reset was triggered.
See pictures below:
Have in mind that this fault injection must be executed without debugger. As debug mode disable RCCU checkers.
I have also attached for reference my test example.
Peter
Hello Peter,
Thanks for your support.
I guess our problem is due to that we configure FCCU using bitwise operations like
FCCU.NCF_E[0].B.NCFE11 = 0x1u;
We have now changed so that 32-bit operations are used like for example
FCCU.NCF_E[0].R = 0x00003800u;
Now, it seems as FCCU is configured as we would like it to, and a long reset is generated for the FCCU faults that are configured with action set to long reset, including RCCU_1.
Best Regards,
Peder