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.

TMS320LF2406A: TMS320LF2406A

Part Number: TMS320LF2406A


Hello,

 

Regarding the TMS 320LF2406APZA, I would like to know how best to resolve an issue I am having because of MOSFET Ringing, one of our DSPs on a board is being Reset.

 

Is there a programming option that would allow a Reset only after a defined delay, say 1 ms for example ? Or require the Reset line to stay in the active [ Reset ] state for a defined period of time before it was accepted?

 

I am trying to prevent a Hardware and / or an Etch change and, prevent intermittent field faults by changing software instead ?

 

Thank you for your help.

 

Sincerely,

 

Robert J. Kukis

 

Note1 : This is just a personnel question that I have as I research the circuits.

Note2 : Please reply / email to : Robert.kukis@rockwellautomation.com and robert.kukis@gmail.com

  • Unfortunately, no such option exists. The solution has to be implemented using external hardware. This is true of any device. The solution lies in hardening the circuit design to make it immune to the disturbance. The challenge lies in determining precisely how the disturbance impacts the circuit. i.e. in identifying exactly how noise couples into the circuit. In other words, what is the conduit for this noise to get into the circuit and cause the malfunction? Once this is identified, it is relatively easy to come up with the protection solution. Unfortunately, often times, the shortcomings are discovered after the board is made and hence make the redesign of the board necessary. 

    We regret we cannot send responses directly to email addresses. If there is information you would rather not post on the forum (schematics, for example), you can send me a “friendship request” via e2e. Once I accept your request, you will be able to send me private messages via e2e.

  • Robert,

              You have rejected my response without providing a reason. I am afraid I cannot add a lot to what I have already said in my previous post. EMI issues are very difficult to fix remotely. 

    Many books have been written on this topic and many papers published. The actual circuit design, the components used, the geometry of the components, the board layout, the board stack-up, the shielding employed , all play a role in the immunity strength of the design. Debugging such problems is an iterative process and warrant hands-on debug. It is extremely difficult to debug issues like this remotely, without access to the schematics, PCB layout and the hardware itself. In other words, remote debug is not practical. The first task is to find whether the noise is coupled conductively or radiatively into the system. i.e. whether the issue at hand is one of conducted immunity or radiated immunity. Once this is identified, we need to identify the entry point of the noise into the system. Only then can we come with a solution. Problem could be related to insufficient decoupling/filtering, incorrect layout, improper (or lack of) shielding etc. There are numerous resources online that deal with this. Hard to explain them in a post.

  • Hello Hareesh, 1. In this case, the MOSFET Ringing is causing the issue, the energy is being conducted into the Etch and causing DSP Reset issues. 2. Are your points are correct, however, I was hoping we could resolve by changing the DSP software and not having to redesign the Hardware. Basically, delaying the Reset by a longer period that the Ringing. 3. What if we changed the DSP operational code / software; when a RS occurs and jumps to location zero, then have it jump to a counting / delay routine [ 1 ms for example ] and then jump to the execution point it was at before the RS. However, if the RS input signal is a true Reset request condition, stays active for x ms, then the DSP would remain Reset until commanded otherwise. Note1 : You can tell that I am not knowledgeable in this area; DSP software or software in general. However, I am just trying to see if there is a way of preventing a Hardware and rework design currently. Thank you again for all your input / suggestions. Note2 : I think there should be 3 choices, " ... resolved ", " ... Not Resolved " and " Other ".

  • Basically, delaying the Reset by a longer period that the Ringing.

    Not sure how this technique would work. Wouldn’t the ringing be a constant occurrence?

    What if we changed the DSP operational code / software;

    Your scheme stands on the premise that you would somehow be able to distinguish a ringing-induced-reset from a "true" reset. There is no way to do it without redesigning the board. If you are willing to redesign, you can connect a capacitor to a GPIO pin. If you read the level of this pin at power-on-reset, it will be low because the cap has not charged yet. After coming out of reset, code should change this to an output pin and drive it high, charging the capacitor. At this point, after a ringing-induced-reset, reading this pin would present a 1 because the cap would have charged.

    However, if the RS input signal is a true Reset request condition,

    How would you determine that?

  •             Hello Hareesh,

     

                            Thank you for your feedback again.

     

    BTY, I really like your rework option, using a Capacitor. This may be very helpful for the Boards that we have to rework. However, in addition, I still would like the option of a SW fix for Ringing induced problems.

     

                            I realize I now am asking a different question, see below : However, perhaps we can

    live with this technique listed below : if it will work.

     

    1. What if, when a RS occurs and the operation jumps to location zero, lets then jump to a counting routine [ internal Resister perhaps ],

    [ we will call it the Reset Counting Register ( RSCR ) ] designed to count up for 1 ms for example.

     

    1. If the Counter reaches the last position / number, then the DSP would initialize and then operate as designed / per the user code / program.

     

    1. When Ringing occurs from a nearby Power MOSFET and the Ringing normal rise and decay time is, say, 10 ns, then the DSP, RS Line with the coupled in Ringing energy, may RS the DSP a number of times depending on the Ringing energy / voltage level and its duration, however, the DSP, RSCR Register, will be able to reach the MAX count after the Ringing is no longer able to enable the RS Line, therefore, the DSP will initialize and then operate again as designed.

     

    1. Could this technique help prevent the DSP from starting to initialize and then being RS again or be RS multiple times in a short time frame, and / or initializing and beginning to operate per the user program, and then Halted / RS again because of a Ringing event ?

     

    Will this work, is it doable, does it make sense ?

     

                            Your thoughts ?

     

                            Thanks again and I hope you have a nice weekend.

     

                            Sincerely,

     

                            Robert J. Kukis

  • Robert,

       It will take me a day or two to respond. I will provide an answer by Monday.

  • In theory, your idea sounds good. I do not know enough about the ringing in your circuit (how long, how often, its impact on the DSP etc). If it only happens for deterministic time in a deterministic way, your idea may work.

  • Hello Hareesh,

    Sorry to bother you again, however, as you pointed out weeks ago, my suggestion regarding the TMS320LF2406A Reset line only responding to a Reset request after a delay period, is flawed. I think my idea would work if after the DSP software Shift Register [ RSCR ] counted up and reaching the max count, then have the DSP, check the status of the RS input level / Pin and if it is still active [ Low ], then allow the DSP Reset to occur / initialize. Therefore, if the RS line is not active [ it is not at a logic low ], then resume normal operation. So, 2 questions:

    1. Can the TMS320LF2406A DSP be programmed to count up to a number that would take 1ms to 2ms when the RS line / pin goes active [ low ] ?

    2. Can the DSP be programmed to check the RS input level [ High or Low ] after the RSCR reached the max count number, and then Reset the DSP if the RS line is Low or resume normal operation if the RS line is High ?

    Thank you again for all you help.

    Good day.

    rjk

  • 1. Can the TMS320LF2406A DSP be programmed to count up to a number that would take 1ms to 2ms when the RS line / pin goes active [ low ] ?

    No. Nothing can happen in the DSP until the -RS pin goes high.

    2. Can the DSP be programmed to check the RS input level [ High or Low ] after the RSCR reached the max count number, and then Reset the DSP if the RS line is Low or resume normal operation if the RS line is High ?

    This is not possible. As mentioned above, you cannot make the DSP do anything while the -RS pin is low.  Sure, you can check the RS pin when it is high, but you already know it. It is a catch-22 situation.