Part Number: TMS570LS0432
Excuse me,
HI
when the cpu is doing self-test,or flash test and so on, do the interrupt program can be break flash test?when the interrupt is over,the self-test doesnot have an impact
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Part Number: TMS570LS0432
Excuse me,
HI
when the cpu is doing self-test,or flash test and so on, do the interrupt program can be break flash test?when the interrupt is over,the self-test doesnot have an impact
Thank you
hi Miro
According to what you mean, the STC self-test and the PBIST self-test are executed at startup. I understand it.
In order to ensure the security of the system, a self-test at runtime is required, and this self-test cannot affect the performance of the system at runtime, so that I need to self-check what function, there are interruption in the system, when self-test is running,interruption unaffected.
I see this .. do they can run when the system is running
retVal = Reg_Read_Compare(CCMR4,COMPARE);
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = Reg_Read_Compare(EFC,COMPARE);
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = Reg_Read_Compare(PBIST,COMPARE);
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = Reg_Read_Compare(STC,COMPARE);
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = Reg_Read_Compare(ESM,COMPARE); //by sun
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = Reg_Read_Compare(DCC1,COMPARE);
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = Reg_Read_Compare(TCMFLASH,COMPARE); //by sun
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = Reg_Read_Compare(SRAM,COMPARE);
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
#endif
retVal = Reg_Read_Compare(VIM,COMPARE);
INCREMENT_PASS_FAIL_COUNTER(ST_PASS, retVal);
retVal = SL_SelfTest_FEE(FEE_ECC_DATA_CORR_MODE, TRUE, &failInfoFlash);
INCREMENT_PASS_FAIL_COUNTER(failInfoFlash, retVal);
/* Run 1 bit selftest */
retVal = SL_SelfTest_FEE(FEE_ECC_TEST_MODE_1BIT, TRUE, &failInfoFlash);
INCREMENT_PASS_FAIL_COUNTER(failInfoFlash, retVal);
#if 0
/* Run 2 bit selftest */
retVal = SL_SelfTest_FEE(FEE_ECC_TEST_MODE_2BIT, TRUE, &failInfoFlash);
INCREMENT_PASS_FAIL_COUNTER(failInfoFlash, retVal);
#endif
/* Run Diagmode 2 */
retVal = SL_SelfTest_FEE(FEE_ECC_SYN_REPORT_MODE, TRUE, &failInfoFlash);
INCREMENT_PASS_FAIL_COUNTER(failInfoFlash, retVal);
/* Run Diagmode 3 */
retVal = SL_SelfTest_FEE(FEE_ECC_MALFUNCTION_MODE1, TRUE, &failInfoFlash);
INCREMENT_PASS_FAIL_COUNTER(failInfoFlash, retVal);
/* Run Diagmode 4 */
retVal = SL_SelfTest_FEE(FEE_ECC_MALFUNCTION_MODE2, TRUE, &failInfoFlash);
INCREMENT_PASS_FAIL_COUNTER(failInfoFlash, retVal);
retVal = SL_SelfTest_PSCON(PSCON_SELF_TEST, TRUE, &failInfoPSCON);
INCREMENT_PASS_FAIL_COUNTER(failInfoPSCON.stResult, retVal);
retVal = SL_SelfTest_PSCON(PSCON_ERROR_FORCING, TRUE, &failInfoPSCON);
INCREMENT_PASS_FAIL_COUNTER(failInfoPSCON.stResult, retVal);
retVal = SL_SelfTest_PSCON(PSCON_SELF_TEST_ERROR_FORCING, TRUE, &failInfoPSCON);
INCREMENT_PASS_FAIL_COUNTER(failInfoPSCON.stResult, retVal);
retVal = SL_SelfTest_PSCON(PSCON_PMA_TEST, TRUE, &failInfoPSCON);
Hello whong,
I don't have recommendation about which selftest you need to do for the runtime diagnostic. Please refer to our safety manual for the Safety Feature and Diagnostic.