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.

UCD3138A: UCD3138A jumped from programming mode(flash) to rom mode

Part Number: UCD3138A

Hello,

I have a UCD3138A that is shutting down and going into ROM mode for no obvious reason.

The firmware in flash mode worked ok for about 30min and then suddenly it shuts down and doesn't restart anymore. Connecting to the GUI I can make it start easily, as it is in ROM mode again.

I have disabled the backdoor in the firmware and set the backdoor pin as an output to make sure.

it is a simple fixed duty cycle oscillator, driving an open loop uncontrolled power supply. As the voltage goes above 30V it starts shut down a couple of times in a row (restarting immediately) and then it goes in ROM mode and doesn't restart anymore.

What could be happening?

Thank you

  • more details: this is a very watered down version of the PFC EVM code, in which there is no PFC and I have a fixed duty cycle on one PWM module.
    After removing "look_for_interrupted_dflash_erase();" and "erase_task();" from main.c, the device stays in FLASH mode, but it restarts continuously.

    Do those two function bring the controller back in ROM mode in case of several restarts?
    Thank you
  • Marco, generally when I hear that the part is restarting when the voltage or current gets higher, it's one of two things:
    1. Power supply noise
    2. Some device pin (often ADC)is going above or below the power supply rails by too much.

    I'm not sure why the device is restarting with the dflash erase tasks, and not with the other configuration.

    Generally, if the device restarts in flash mode, that means that the program flash checksum is valid. We have actually seen cases where the program flash checksum is cleared by noise. Presumably it gets lost from some other PMBus command and goes to erase the checksum instead. Perhaps when you rearrange the code, it gets lost in some other way.
  • Here are some board layout guidelines:

    www.ti.com/.../slua779a.pdf
  • Thank you Ian, 

    I have followed the layout guidelines and did not have issues for a while with this board until now (other external parts changed though, so I do believe it is a noise issue).

    The ADC pins are clamped to the 3.3V and GND and should not be exceeding those values anyway.

    I think I have confused you with my previous posts:

    the device is restarting in both cases, with or without the dflash erase task removed, the only difference being that after removed the dflash erase, it would stay in FLASH mode.

    So are you saying that the checksum could be erased by both DFLASH ERASE TASK, or noise (in case dflash erase task is removed from the firmware)?

    After removing the dflash erase task, the board kept restarting but stayed in flash

    Thank you

  • No, dflash erase task should not clear the checksum. I suspect taking it out just rearranges the code and changes the effect of the noise.