# How to remove huge spikes in current

I am making an DC to AC converter circuit in LTSpice. The schematic is posted below.

When I plot the current across the transistors, I get huge spikes in the current, as seen in the diagrams below.

We want to get rid of these spikes in the current.

When we built this circuit in the lab we saw that these large currents were messing with the power supply's output voltage. The power supply can only handle 5 amperes. The current (without the spikes) decreases exponentially with time and soon becomes less than 5 A, but the spikes remain unchanged.

Is there any way to get rid of these spikes?

If so how?

• A kick of nostalgy. Back then when it was easier to build and power the circuit instead of simulating it, we burned a great number of transistors exactly the way you did. Commented Mar 26, 2021 at 10:09

That's called shoot-through. It happens because you are using the same signal to control your both high and low side transistors of each half-bridge. Since the tendency is that it takes longer to turn off than to turn on, there is a point in time where they are both MOSFETs are on creating a short-circuit.

Either use independent control for the MOSFET so you can have a small time delay between turning a MOSFET OFF and a MOSFET in the same half-bridge ON, to give the MOSFET turning off enough time to completely turn off before the other MOSFET starts turning on, or add gate circuitry to make turning on happening more slowly than turning off. A larger series gate resistor will slow down the turn on and turn off time. You can use diodes so that charging uses a different resistor than discharging to independently tune the turn on and turn off times.

Also, you are switching an inductive load which will produce voltage spikes when interrupting a current as the inductance tries to use the energy in the collapsing magnetic field to keep current at the same level via V = I(dL/dt). Since this is an H-bridge configuration, you should have flyback diodes anti-parallel to the MOSFETs to provide the inductive flyback current a path to flow to gracefully decay so a large voltage spike does not need to be produced. Or, you need to place a bidirectional TVS diode in parallel with your inductance which will do something similar (a unidirectional TVS diode, or any unidirectional diode will not work here since your inductance experienced current in both directions).

NOTE: A half-bridge is different than an H-bridge. An H-bridge is formed from two half-bridges.

• Any specific types of TVS diodes that work better than others? Commented Mar 26, 2021 at 0:17
• Well, pick one that is going to keep the voltage at a level that won't blow your MOSFETs. Commented Mar 26, 2021 at 0:37
• A better solution is to create a deadtime delay using a slower turn on with R and a faster turn off with a diode let deadtime T just > rise+fall time Commented Mar 26, 2021 at 0:43
• @TonyStewartSunnyskyguyEE75 I already covered that, but I guess I should have been more explicit about what gate drive circuity to actually add. Commented Mar 26, 2021 at 0:53
• @DKNguyen The anti-parallel diodes are built-in. You can see a hint of Is=1... in OP's picture, which says the body diode is defined (I presume the PMOS has similar settings). Commented Mar 26, 2021 at 7:15

Driver circuit requirements should avoid common low Rds timing for P-channel and N-channel, connected in series, metal oxide (semiconductor) field-effect transistors (MOSFET) like in your circuit example for implementation in reality.

• Ehhhh.....your first paragraph is incorrect. The IRF9640 are indeed P-channel symbols in the original screenshot. What made you think otherwise? Did you open up LTspice yourself and check your work prior to posting this information with such confidence? Commented Mar 26, 2021 at 9:38
• @SteKulov Yes, that paragraph is/was wrong, I did not recognize, that vertical aligned symbols change horizontal orientation, what is some kind of uncommon to my expectations with half bridges. Sorry, I will delete first paragraph. LTspice is not available for my computing system. Thx for correcting me on this. Commented Mar 26, 2021 at 12:56