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.

RM57L843: ESM and Diagnostic Library functions collaboration issue

Part Number: RM57L843

Hi team,

Here's some issues from the customer may need your help:

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1065027/rm57l843-issues-about-some-of-the-error-types-in-esm-and-how-to-use-with-the-security-diagnostic-library

The related thread has been created as above.

a. The ESM has only one nError output pin, and if there are multiple errors at the same time, how to determine which one is wrong? Is it necessary to test which part of the problem with the API of each module of the diagnostic library at this time?

b. Also, for correctable 1-bit ECC errors, is it fixed automatically or is it corrected by calling its corresponding diagnostic API?

c. Regarding the return value of the diagnostic API (TRUE/FALSE), dose it mean whether the test is successful, or jus indicate here's something wrong?

Could you help check this case? Thanks.

Best Regards,

Cherry

  • a. The ESM has only one nError output pin, and if there are multiple errors at the same time, how to determine which one is wrong? Is it necessary to test which part of the problem with the API of each module of the diagnostic library at this time?

    The ESM channels are divided into three groups. Group1 channels are considered to be low severity.

    Group1 errors have a configurable interrupt response and configurable ERROR pin behavior.

    Group2 channels are ERROR high severity. Group2 errors always generate a high priority interrupt and an output on the ERROR pin.

    Group3 channels doesn't generate interrupt, but always generate an ERROR pin output.

    You need to check the ESM status registers to determine which flags are set.

    b. Also, for correctable 1-bit ECC errors, is it fixed automatically or is it corrected by calling its corresponding diagnostic API?

    The SRAM and Flash are protected by SECDED. The 1-bit ECC error is corrected automatically.

    c. Regarding the return value of the diagnostic API (TRUE/FALSE), dose it mean whether the test is successful, or jus indicate here's something wrong?

    The last the argument of the API (SL_Selftest_SRAM(), and SL_Selftest_Flash()) is the test result and test status. 

    boolean SL_SelfTest_SRAM(SL_SelfTestType testType, boolean bMode, SL_SelfTest_Result* sram_stResult);

    boolean SL_SelfTest_Flash (SL_SelfTestType testType, boolean bMode, SL_SelfTest_Result* flash_stResult);