2024-09-10 11:42 PM
I am developing a safety application on the SPC56EL60L3 platform. The reference manual RM0032 §43.1.3 outlines the steps for verifying the test results of the STCU (Self-test control unit). As I understand it, I first have to check the actual test status and then I should perform a number of extra checks using the STCU_LBS, STCU_LBE (etc) registers to see whether the test results are reliable. I have two questions regarding this.
First, I am unable to find a clear instruction on how to actually do the first step, i.e. see the status of the test result. I assume I can do it by reading the FCCU status flags CF[20] and NCF[12], but that is not explicitly stated in the STCU chapter. Can anyone please confirm if I am correct in my assumption or if I should do it in another way?
Secondly, in case of no reported errors, the manual tells me to "confirm that the signature registers of each of the LBIST results match their corresponding expected values" and to "read the STCU_LBMISREL/H and STCU_LBIST_NMISRRL/H registers to check the coherency with the STCU_LBS and STCU_LBE bits". However, nowhere in the manual does it say what exactly I should compare the MISR register values to! The application note AN3324 makes it even more confusing by adding "Read the CRCE and CRCR registers to check the coherency with the STCU_ERR[CRCS] flag". I cannot find the acronyms CRCE, CRCR or CRCS anywhere in the reference manual. What exactly am I supposed to do here?
2024-09-13 12:21 AM
I have worked out the answer to the second question. The STCU_LBMISREL/H and STCU_LBIST_NMISRRL/H registers should be compared with each other! That was not obvious. I thought they should both be compared to some other register. I guess CRCE refers to the MISR expected register and CRCR refers to the MISR read registers.
But the first question still remains. Should I use the FCCU's CF[20] and NCF[12] to see the result of the STCU BISTS?