Diode Circuit Analysis – Resolving Conflicts in Voltage and LTspice

circuit analysisdiodesltspicevoltage

I am very confused about how to analyze diode circuits.

I have read sources that claim the voltage drop across the diode to be 0.5-0.7 V but this seems to be inconsistent with what happens when biasing a diode (can have a large potential difference across it). Can someone explain this discrepancy?

Also, is there a procedure to determine the voltage (relative to ground) in a node separated from a diode? For instance, I am trying to interpret the blue output waveform (voltage in Vout node) when the green sine wave voltage input is applied in a half rectifier configuration. However, I am confused about how the output waveform is derived from the input waveform.

Finally, suppose you connected one terminal of a diode to ground and the other to a +12 V supply. Then the voltage drop across the diode is 12 V instead of 0.5-0.7 V. There is conflicting logic it seems.

Please help.

Thanks

Half-Rectifier circuit
Input & Output voltage waveforms

Best Answer

The ideal case, where a diode is treated like a closed switch when it is forward-biased and like an open switch when it is reverse-biased, is a mostly-useless viewpoint as it is immediately challenged by the fact that using it means that diodes cannot dissipate. Perhaps only a repair technician can use this idea with any utility at all.

Another common idealized case is taken where the forward-biased drop is some fixed constant. That also isn't true, but it is better than the above.

A far better (and not overly complex) view is that when it is forward-biased, it develops a voltage across it that is roughly proportional to the logarithm of the current through it -- acting per the Shockley diode equation:

\begin{equation} I_{_\text{D}}=I_{_{\text{SAT}_T}}\cdot \left(e^{^\frac{V_{_\text{D}}}{\eta\:V_T}}-1\right) \end{equation}

Where \$V_T=\frac{k\,T}{q}\$. \$k\$ is the Boltzmann's constant (not to be confused with Boltzmann's factor that is also very important to the semiconductor diode model, as we'll soon see.) \$q\$ is the electron's charge. \$\eta\$ is the emission co-efficient (worth addressing, shortly.) And \$T\$ is the junction temperature and is usually taken in units of Kelvin. (\$V_T\approx 26 \:\textrm{mV}\$ at room temperature.)

As shown above, there are two temperature-dependent terms: \$V_T\$ and \$I_{_{\text{SAT}_T}}\$. Both impact the voltage that results from a given current through the diode, but in opposing directions. It turns out that the impact of \$I_{_{\text{SAT}_T}}\$ is greater than the impact of \$V_T\$ (see discussion below on the equation for \$I_{_{\text{SAT}_T}}\$), so that the sign of that dependence follows the sign of \$\frac{\text{d}\:I_{_{\text{SAT}_T}}}{\text{d}\,T}\$ and does not follow the sign of \$\frac{\text{d}\:V_T}{\text{d}\,T}\$. Typically, when the current remains the same through the diode, the voltage across it will vary due to temperature changes by roughly the factor: \$\frac{-2\,\text{mV}}{^\circ \textrm{C}}\$. (Some use that fact to make a diode into a temperature sensor, though calibration is usually required for that purpose.)

There's a serious problem with the above Shockley diode equation, though. All diodes exhibit bulk resistance (multiple sources for this.) Sometimes, that resistance is substantial. For example, in the Nichia NSCW100 LED, the bulk resistance works out to about \$\approx 8\:\Omega\$. This is non-trivial.

The above Shockley diode equation can be simply modified so that the voltage drop across this bulk resistance is first subtracted:

\begin{equation} I_{_\text{D}}=I_{_{\text{SAT}_T}}\cdot \left(e^{^\frac{V_{_\text{D}}-I_{_\text{D}}\cdot R_{_\text{S}}}{\eta\:V_T}}-1\right) \end{equation}

There's still a problem with this equation, though, as the diode current appears in two places. It needs to be solved so that \$I_{_\text{D}}\$ appears only on the left side and not both sides of the equation.

If there is also (as in your circuit) an external resistance, \$R_1\$, then that can be combined with \$R_{_\text{S}}\$ as they are both in series with each other. Let's just call that \$R=R_1+R_{_\text{S}}\$, for simplicity.

If we now create another symbolic value, \$I_{R_T}=\frac{\eta\,V_T}{R}\$, as a kind of a weird "thermal current" through \$R\$, then it simplifies the following development:

$$\begin{align*} I_{_\text{D}} &= I_{_{\text{SAT}_T}}\cdot \left(e^{^{\left[\frac{V_{_\text{D}}}{\eta\:V_T}-\frac{I_{_\text{D}}}{I_{R_T}}\right]}}-1\right) \\\\ I_{_\text{D}}+I_{_{\text{SAT}_T}} &= I_{_{\text{SAT}_T}}\cdot e^{^{\left[\frac{V_{_\text{D}}}{\eta\:V_T}-\frac{I_{_\text{D}}}{I_{R_T}}\right]}} \\\\ \left(I_{_\text{D}}+I_{_{\text{SAT}_T}}\right)\cdot e^{^\frac{I_{_\text{D}}}{I_{R_T}}} &= I_{_{\text{SAT}_T}}\cdot e^{^\frac{V_{_\text{D}}}{\eta\:V_T}} \\\\ \frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^\frac{I_{_\text{D}}}{I_{R_T}}} &= \frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^\frac{V_{_\text{D}}}{\eta\:V_T}} \\\\ \frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^\frac{I_{_\text{D}}}{I_{R_T}}}\cdot e^{^\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}} &= \frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^\frac{V_{_\text{D}}}{\eta\:V_T}}\cdot e^{^\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}} \\\\ \frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^\frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}}} &= \frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^{\left[\frac{V_{_\text{D}}}{\eta\:V_T}+\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\right]}} \\\\ \text{setting } u&=\frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}},\text{ and applying} \\\\ \text{Lambert-W}_0\text{, where }u&=W_0\left(u\cdot e^u\right)\forall u |u\in\mathbb{R} \wedge u\ge -\frac1{e}\\\\ \operatorname{LambertW}\left(\frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^\frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}}}\right) &= \operatorname{LambertW}\left(\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^{\left[\frac{V_{_\text{D}}}{\eta\:V_T}+\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\right]}}\right) \\\\ \frac{I_{_\text{D}}+I_{_{\text{SAT}_T}}}{I_{R_T}} &= \operatorname{LambertW}\left(\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^{\left[\frac{V_{_\text{D}}}{\eta\:V_T}+\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\right]}}\right) \\\\ &\text{and finally,} \end{align*}$$

$$\begin{align*} I_{_\text{D}} &= I_{R_T}\cdot \operatorname{LambertW}\left(\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\cdot e^{^{\left[\frac{V_{_\text{D}}}{\eta\:V_T}+\frac{I_{_{\text{SAT}_T}}}{I_{R_T}}\right]}}\right)-I_{_{\text{SAT}_T}} \\\\&\text{now substituting back in for }I_{R_T}=\frac{\eta\,V_T}{R_1+R_{_\text{S}}}, \text{find}\\\\ &=\frac{\eta\,V_T}{R_1+R_{_\text{S}}}\cdot \operatorname{LambertW}\left(\frac{I_{_{\text{SAT}_T}}\cdot\left(R_1+R_{_\text{S}}\right)}{\eta\:V_T}\cdot e^{^{\left[\frac{V_{_\text{D}}+I_{_{\text{SAT}_T}}\left(R_1+R_{_\text{S}}\right)}{\eta\:V_T}\right]}}\right)-I_{_{\text{SAT}_T}} \end{align*}$$

(For those with further interest in the use of the Lambert W function in electronics, see for example, "Exact Analytical Solution of the Diode Ideality Factor of a pn Junction Device Using Lambert W-function Model", by Habibe Bayhan & A. Sertap Kavasoglu, 2006.)

That's the final diode current after taking into account the Shockley diode equation and the series resistances. With that current, you can then work out the voltage drop across the external resistance, \$R_1\$. And from that, the resulting diode voltage that takes into account the Shockley diode equation and also its internal bulk resistance is:

$$V_{_\text{D}}=\eta\:V_T\cdot\ln\left(1+\frac{I_{_\text{D}}}{I_{_{\text{SAT}_T}}}\right)+I_{_\text{D}}\cdot R_{_\text{S}}$$

The whole approach of Spice is to avoid closed solutions like this. The early developers knew that attempting to find closed solutions for a rats' nest of non-linear functions wasn't going to happen in their lifetime and likely not for centuries yet to follow. They knew they would have to find another way.

Luckily, it can be approached by instead using the vast ocean of mathematical work done on solving sets of linear equations by first linearizing these non-linear models. They can then divide and conquer the larger problem by dicing it up into tiny piece-wise bits, stepping towards a solution in small, incremental bits.

So Spice doesn't perform any of the above development. That's just one resistor and one diode. Can you imagine the complexity of a real circuit built from dozens or hundreds of non-linear components? We don't even know how to do that with the current state of mathematics. It's still far from our grasp, as yet, too. So Spice uses a simplified approach that works pretty well most of the time. And it allows some "twiddle factors" to help it find solutions when the general approach needs a little help.

Don't fret the fact that you cannot sit down on a piece of paper and work out exactly what you see in Spice. It's doing a lot of tiny steps so that it comes pretty close to the LambertW closed solution. It doesn't know that it is doing that. It's just approaches it using tiny steps to get there.

You can't waste your time on this using a piece of paper. So, instead, designers use various approximations.

If you want to use some "pretty good rules" then:

  1. Start by assuming a typical diode has some given voltage, \$V_{\text{D}_0}\$, across it when there is some given current, \$I_{\text{D}_0}\$, through it. I often use \$V_{\text{D}_0}=650\:\text{mV}\$ and \$I_{\text{D}_0}=4\:\text{mA}\$ in my head for this because that is typical for a 1N4148 diode. If you already know that the current is somewhere near this, then stop and go no further. Just use \$V_{\text{D}_0}=650\:\text{mV}\$.
  2. If the current through the diode will be significantly more or less than \$I_{\text{D}_0}=4\:\text{mA}\$ then adjust \$V_{\text{D}_0}\$ by about \$100\:\text{mV}\$ for each factor of 10 change in the current. You can compute this using the following equation: \$\Delta V_{\text{D}}\approx 100\:\text{mV}\cdot\log_{10}\left(\frac{I_{\text{D}}}{I_{\text{D}_0}=4\:\text{mA}}\right)\$. For example, if \$I_{\text{D}}=20\:\text{mA}\$ then I'd find \$\Delta V_{\text{D}}= 100\:\text{mV}\cdot\log_{10}\left(\frac{20\:\text{mA}}{4\:\text{mA}}\right)\approx +40\:\text{mV}\$ and so I'd find that \$V_{\text{D}}=V_{\text{D}_0}+\Delta V_{\text{D}}\approx 690\:\text{mV}\$. I'd round that up to \$V_{\text{D}}=700\:\text{mV}\$.
  3. Only for cases where \$I_{\text{D}}\$ is larger than about \$10\:\text{mA}\$, I may add a correction factor for the bulk resistance. With the 1N4148 that resistance is about half an Ohm. So for \$I_{\text{D}}=20\:\text{mA}\$, I'd add \$10\:\text{mV}\$. So here, \$V_{\text{D}}=700\:\text{mV}\$ which I already rounded up towards.

As noted, the first two steps ignore the internal bulk resistance. But that only becomes important at high currents. (In the above example, that was barely enough to justify my earlier rounding attempt.) So step #3 is only ocassionally needed.

That's it. You pretty much never need to worry about anything more than this for small signal diodes like the 1N4148. And almost always a lot less than all three of those steps. I usually stop at step 1, or if I'm just feeling pedantic, perhaps step 2.

(However, that's neglected temperature-caused variation and part variation. So it's still idealized in that sense. What matters will depend upon the application. You may have to keep a few things in mind about a diode, or mentally refresh when needed, and grab after just those that matter to you at the time.)

A final note, though. All diodes will follow the "heavy mathematics" approach I mentioned, when provided with appropriate model parameters. And all diodes can be approached using the above simplified rules. But the nominal \$V_{\text{D}_0}\$ (at some \$I_{\text{D}_0}\$) will vary from one class of diode to another class. And so will the assumed \$100\:\text{mV}\$ for each factor of 10 change in the current, which may instead be some other number of millivolts per factor of 10. So while the three rules still work, the values used in each step may vary from one class of diode to another. What I provided was for a small signal 1N4148. LEDs, for example, will use radically different values. But they will still follow the rules, once you have the right values in mind.