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.

DWD module

Other Parts Discussed in Thread: TMS570LS3137

Hi,

The DWD module in the TRM said that it can generate a watchdog reset or NMI under special situation. Then what's the kind of the NMI belong? A  group 1 ESM interrupt ? In the example dwwd.c, it generate a esm group2 interrupt , and it reset the watchdog in the notification function. Does the reset in the notification will be the same meaning with the DWD generate reset mode?

Actually, I'm not understand the dwwd.c very much. The compare 0 ,1 ,2,3 interrupt will happen cycling, when the esm2notification will happen? The way to handle the situation is just to reset the watchdog itself? When the watchdog is actived(I mean the program maybe runaway), the usual treatment is to reset the cpu so the program will run at the very beginning from the startup.c? Or you can decide the reset point?

Regards,

yong 

  • Hello Yong,

    The DWD response to error does not go through the ESM.  It interacts directly with the interrupt controller (for interrupt requests) or system module (for reset requests).  The DWD interrupt is fixed as a high priority interrupt.  Group 2 ESM interrupt responses will always generate a similar high priority interrupt, whereas Group 1 ESM interrupt responses give the option of generating a low priority interrupt, a high priority interrupt, or no interrupt response.

    The reset request generated by the DWD on current Hercules devices has the same result as generating a "warm reset" or "software system reset".  This results in a reset  of the majority of digital logic on the device, not just the CPU.

    Best Regards,
    Karl 

  • One minor correction: the non-maskable interrupt from the watchdog (DWWD) does go through the ESM. This is wired to a group2 channel of the ESM, which automatically generates a non-maskable interrupt to the CPU.

    Regards,

    Sunil

  • Is the channel number 24 and we cannot modify it by ourselves? Another question, in the init function of the DWWD, the maximum time is DWDPRLD =4095

    texp =((DWDPRLD +1)×2^13)/RTICLK ,the RTICLK of the TMS570ls3137 HDK is 90×10^6, while the unit of the texp is second?the help documents of the HCG says the forlum is texp =((DWDPRLD +1))/RTICL, which is correct? If the expiration time is longer than the maximum, what should I do?

    Regards,

    yong

     

  • Hello Yong,

    Yes, the DWWD NMI is mapped to ESM group2 channel 24. This is a fixed connection and cannot be changed. There is no configuration necessary inside the ESM to generate a high-priority interrupt to the CPU. This is an FIQ interrupt which is non-maskable (needs to be enabled once).

    The watchdog expiry time is correctly shown in the reference manual. The preload value is copied from the DWDPRLD register to the top 12 bits of the down counter. For an RTICLK of 90MHz, you will get a maximum watchdog time-out of 372.8ms. For a longer watchdog time-out period, you can configure the source of the RTICLK to another available clock source that is slower than VCLK (main oscillator, for example).

    Regards,

    Sunil

  • Thanks a lot.

    Regards,

    yong

  • Hi Yong,

    Sorry for any confusion with my post - we actually have an older DWD module and the more current DWWD. For TMS570LS proucts (which use DWWD), Sunil is correct.

    Regards,

    Karl