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.

TPS65381-Q1: TPS65381+TMS570 Reset Question

Part Number: TPS65381-Q1
Other Parts Discussed in Thread: TPS65381A-Q1

Hi

My customer reported a problem, that is: if bad WD services or nERROR=0 are sent on purpose by TMS570, then causes TPS65381 reset, then TPS65381 makes TMS570 reset, TMS570 doesn't send any command to TPS65381 during this period, then after 100+ms, TPS65381 reset again,  it doesn't enter ACTIVE mode, this process happens again and again, 65381 reset and reset. Could you please tell me how to debug this issue?

Thank you!

  • Hello Wayne,
    I assigned your request to the expert, but due to the thanks-giving-week in US, there may be a delay in the response. Please accept our apologies for this.
    Best regards,
    Frank
  • Hello Wayne,

    I did not fully understand what they are trying to do by stop serving the WD.

    WD function of this device is bit complex and did they look at the datasheet to see whether they are serving the WD according to the datasheet specifications ? If they dont serve the WD correctly, then WD fail counter will reach the count 7 and reset will happen and this is expected behavior. right? If they are trying to check the WD functionality, they need to stop serving the WD for short time and serve it back before WD fail count reaches 7.

    My colleague supporting this device is out of office this week and I don't have much experience with this device and support will be bit slow and sorry about it.

    Regards,

    Murthy
  • Hello Murthy,

    Thanks for your support, I think this is not a simple WD issue.

    Adding more info: If they reboot(power up initial configuration) 65381 in 30ms after 570 reset which is caused by nRST=0, this issue could be resolved, this process is same as their normal power up sequence. And if they reboot 65381 in 50ms after 570 reset, the issue happens. But the diagnostic time-out is 512ms, but they think the actual diagnostic time-out is 30+ms which is much smaller than 512ms. How do you think about it?

     I've send an email to Scott, hope any of you could help me soon. Thanks. 

  • Hi Wayne,

    These are different actions and initial causes for the RESET state transition (NRES pin pulled low in RESET state).  For a watchdog forced RESET from the TMS570, the TPS65381A-Q1 will transition to RESET state immediately when the WD_FAIL_CNT reaches 7 + 1 (next bad watchdog event once the counter has reached 7 while WD_RST_EN is set to 1).  For a forced MCU ESM failure, the TPS65381A-Q1 will first transition to SAFE state and remain there until the SAFE state time-out occurs.  Depending on how the customer has configured the PWD_THR, NO_SAFE_TO and SAFE_LOCK_THR bits the device will then either stay in SAFE, transition to RESET or STANDBY states after the SAFE state time-out.  Please see the device controller state diagram: www.ti.com/.../detailed-description and SAFE state sections for details on these bit settings and the transition from SAFE to RESET or STANDBY: http://www.ti.com/product/TPS65381A-Q1/datasheet/detailed-description#SLVSBC4343

    What is likely happening is the customer boot code is not recognizing that the RESET occurred while WD_RST_EN is still set to 1 since the SAFETY_FUNC_CFG register is not re-initialized after RESET state the WD_RST_EN will stay set to 1.  (See re-initialization sources in the register map for this register, it is only NPOR not RESET state: http://www.ti.com/product/TPS65381A-Q1/datasheet/detailed-description#SLVSBC42889 )

    After RESET state on the transition into DIAGNOSTIC state, the WD_FAIL_CNT is re-initialized to 5, the WD_RST_EN is still set to 1 and the watchdog is running and will increment on "bad events", time-out events and if WD_WIN1_CFG or WD_WIN2_CFG is re-written. During the boot process, the MCU should read the SAFETY_FUNC_CFG to determine WD_RST_EN is still set to 1, and if the MCU cannot re-sync and decrement the WD_FAIL_CNT in within 3 bad watchdog events that will increment the WD_FAIL_CNT to 7 + 1, the software should clear the WD_RST_EN bit to 0 at this initial boot process, synchronize to the watchdog, run necessary diagnostics, then re-set the WD_RST_EN to 1 once the MCU has re-synchronized and completed diagnostics.

    Best Regards,

    Scott

  • Scott,

    Thank you. It is confirmed that this issue was caused just like you said.