I want to simulate the transient voltage response of a TVS Diode against a surge using an exponential voltage source with this characteristics:

  • Initial value 0V
  • Pulsed value 100V
  • Rise delay time 0s
  • Rise time constant 0.00347s
  • Fall delay time 0.00201s
  • Fall time constant 0.0027s
  • Series resistance 5.5 ohm

enter image description here

Diode datasheet: https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/2245/1SMB5.0AT3G_SZ1SMB5.0AT3G_Rev13.pdf

Pulse duration is 2.01ms, and when I calculate it I consider that peak current value is half of the max peak current (6.98A) IP = VP – VC / Z = 100V -23.2V / 5.5 = 76.8V / 5.5 = 13.96A

I use this formula to calculate clamping voltage at 2.01ms as diode resistance is not specified in the datahseet:

VC = (IP / IPP) x (VC max – VBR max) + VBR max

with this values:

VC max = 23.2V

IP = 6.98A

IPP = 25.8A

VBR max = 17.2V

And I get a clamping voltage of 18.82V.

However when I plot results clamping voltage is below 18.82V (something like 17.8V) and the current through the diode is 5A not 6.98A as I expect.

I've been researching what could be the reasons on the result difference but till now I couldn't.

enter image description here

enter image description here

  • \$\begingroup\$ Please add a question you want to ask. \$\endgroup\$
    – Justme
    Nov 1, 2023 at 19:57
  • \$\begingroup\$ Ok, I wanted to know what could be the reason difference in the results of my calcs and the given by the simulator, because the difference is not small to discard it \$\endgroup\$
    – marcosbc
    Nov 1, 2023 at 20:03
  • \$\begingroup\$ Your explanation seems to assume there's one clamping voltage, where the behavior suddenly changes. Reality is much more gradual / smooth. \$\endgroup\$
    – Ben Voigt
    Nov 1, 2023 at 20:35
  • \$\begingroup\$ I don't think TVS diodes are "clamping". They react immediately once the voltage exceeds the TVS diode voltage. \$\endgroup\$
    – Fredled
    Nov 1, 2023 at 21:04

1 Answer 1


You are using an average resistance approximation.

It's a reasonable one, in that, given the tolerances of TVSs and surges, and a reasonable safety margin below failure, the error bar due to method (a linear approximation of a joint linear-exponential function) is comparable to other errors or tolerances, and an adequate safety margin covers the rest.

An average resistance approximation means drawing a line between two points on the curve, and calling that a fixed resistance. Of course it's not: avalanche is exponential, and there is some intrinsic internal resistance).

It's a method that works very well for small differences: where the local slope is known (called incremental resistance), and when solving for a nearby voltage and current, say within a 20% range, the error might be a few percent, no big deal. (And, by repeating iterations, an arbitrarily accurate solution can be found; which in fact is what SPICE itself does, up to the error bounds (the various TOLs) specified in its setup.)

But taking breakdown and surge parameters, is a bit more arbitrary. The incremental resistance at breakdown is much larger (the exponential slope is dominant, and this is still low on the curve), and we would not hope to extrapolate over multiple orders of magnitude using a local slope.

But notice the line connecting breakdown and peak points is not tangent to the curve at either point. The line crosses the curve at both points (at least!). If you took the tangent at breakdown, you'd get a large resistance; if you took the tangent at peak, you'd get a small resistance. We're using assumptions about the function (it's a smooth convex curve), to interpolate over a wider range than local slopes would permit. In exchange, we give up a lot of accuracy: we don't know, in general, how much of the curve has been cut across by such a line. (The closer the two voltages are together, the more reasonable the result, as the values bound the possible answer. The steep slope of diode breakdown helps us out greatly here.)

If you want to know the particular solution, to arbitrary accuracy, you are already in the right place: SPICE is made for exactly this purpose (among many others). Now, you do need to take into account errors in the model itself -- no model is a perfect representation of any random device, under all operating conditions; and manufacturers may make various simplifications as they deem fit. Perhaps they use the basic SPICE diode model for example; this contains an exponential avalanche breakdown function plus internal resistance, but notice RS applies to forward and reverse operation equally well, and TVS are typically modeled in reverse only.

To illustrate, consider the Littelfuse SMAJ200A,

.SUBCKT SMAJ200A     1   2
*       TERMINALS:   A   K
Done    1            3   Dtvs
Dtwo    3            2   Dtvs
Rleak   1            2   400meg
.MODEL  Dtvs         D   (IS=1.0e-5 RS=25.5833 N=1.5 IBV=10m BV=113.12 CJO=1400p)

The datasheet stipulates 3.5V maximum VF at 25A pulse, yet the 25.5833Ω in the model will develop several times its own (reverse) breakdown voltage in such a condition! (And that's just one; note two diodes are wired in series!) Clearly this model is not made to operate in the forward direction -- a shortcut has been taken.

In contrast, in breakdown, your method estimates an internal resistance of (324V - 247V) / (1.2A - 1mA) = 64.22Ω. Two in series is a total RS=51.1666Ω, reasonably close.

As for other matters -- you may want to simulate the pulse a bit more accurately, using an RLC equivalent network for example. You may have trouble finding actual modeled impulse generators; this sounds like an automotive pulse, which are often defined in terms of waveform (voltage) and internal resistance, leaving the source a mystery. In contrast, IEC 61000-4 family pulses for example specify a surge generator, at least in basic RLC terms. (The ESD generator being the most dubious case; it should be read descriptively, as in, these are the components inside the ESD gun, and what the waveform does, involves many other interactions than just this. In particular, the double-peaked waveform has to do with the reflected wave from the gun's ground-return cable.) I don't know offhand if automotive generators use a more synthetic route (a big-ass amplifier?), or in fact use networks (and a simpler trigger switch e.g. SCR/thyratron) but isolate their reactance by simply throwing away amplitude in an attenuator. (Contrast with the IEC 61000-4-5 combination wave generator, whose waveform depends on load resistance; hence the 1.2/50µs figure when lightly loaded, or 8/20µs when heavily loaded. Such a dichotomy is only possible by exposing the network to the load, so that the waveform varies with resistance.)

In any case, how ever the waveform is made, notice the shape of the crest makes a huge difference on how much energy it contains. You might indeed want to consider the worst-case (maximum) tolerance of the waveforms specified, and ensure compliance to that; rather than a sharp peaky exponential source as shown.

You can measure the energy in the pulse by measuring the TVS's voltage and current with E and H sources, multiplying, and integrating. The instantaneous power can even be applied to an RC equivalent thermal (transient thermal impedance) model, if one is available, or equivalent data is available and one wishes to put in the effort to model it.

  • \$\begingroup\$ Thanks so much for the explanation, you make such a great job! \$\endgroup\$
    – marcosbc
    Nov 1, 2023 at 22:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.