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.

TMS320F28P650DK: Issue of HWBIST and CLA self-test

Part Number: TMS320F28P650DK
Other Parts Discussed in Thread: C2000WARE

Tool/software:

Hi experts,

My customer is doing  CPU self- test by using HWBIST and do CLA self-test. They meet some issues.

1. How to do Inject Errors test by using HWBIST on CPU2

2. In HWBIST, there will be no NMI when inject STL_HWBIST_FINAL_COMPARE error. So How to detect this error when using CPU normally.

3. HWBIST_NMI_TRAP will not trigger any CPU NMI flag. How to detect this error when NMI occur?

4. The customer will trigger CLA task every 0.5ms. Sometimes, when STL_CLA_runPESTMicro is executing, the PWM trigger the CLA task. At this time,  PIE_O_IFR11 is triggered and the STL_CLA_runPESTMicro feed back 0x80 error. For this case, my customer do the follow change in the code. 30ms after 0x80 feedback error firstly, STL_CLA_runPESTMicro will execute again. If the 0x80 error disappear at this time, they think CLA is normal. They want to know Is this method feasible?

Thanks,

Leo

  • Leo,

    I need to loop in some others for the above, should be able to get back to you later today.

    Best,

    Matthew

  • Hi Matthew,

    Any update here?

    Thanks,

    Leo

  • 1. How to do Inject Errors test by using HWBIST on CPU2

    CPU2 does not have HWBIST capability.  This is the lockstep CPU on this device, so CPU3 is responsible for comparing against and detecting errors.  There is a self test feature of the lockstep compare module, this is called, along with a lock and parity check as part of the diagnostic library for CPU2 in C2000Ware here: C:\ti\c2000\C2000Ware_5_05_00_00\libraries\diagnostic\f28p65x\examples\test_application

    2. In HWBIST, there will be no NMI when inject STL_HWBIST_FINAL_COMPARE error. So How to detect this error when using CPU normally.

    This is from the HWBIST appnote https://www.ti.com/lit/an/spraca7a/spraca7a.pdf 

    I'm assuming this will corrupt the MISR so that a micro run itself will fail, as you mentioned there is no immediate NMI

    3. HWBIST_NMI_TRAP will not trigger any CPU NMI flag. How to detect this error when NMI occur?

    Since NMI occurs, but no NMI flag is set, customer can use that condition itself to know this is what triggered the NMI, i.e. in other cases a flag would be set, so absence of flag can indicate this is the issue that tripped the NMI.

    4. The customer will trigger CLA task every 0.5ms. Sometimes, when STL_CLA_runPESTMicro is executing, the PWM trigger the CLA task. At this time,  PIE_O_IFR11 is triggered and the STL_CLA_runPESTMicro feed back 0x80 error. For this case, my customer do the follow change in the code. 30ms after 0x80 feedback error firstly, STL_CLA_runPESTMicro will execute again. If the 0x80 error disappear at this time, they think CLA is normal. They want to know Is this method feasible?

    I believe that as part of the SDL library we intentionally disable CLA tasks before running the STL_CLA diagnostics to prevent the above from happening.  However, if this is not possible due to timings of the customer system, then I agree with the above method of mitigating the error from the CLA.

    Best,
    Matthew