Diode Model - wirbel-at-vdr-portal/SpiceModelGen GitHub Wiki
The Diode Model Editor implements diodes as the extended Berkeley spice model, described in the PSpice Reference Guide.
(Symbol Description Unit Default Comment)
- AF flicker noise exponent [-] 1.0 (not yet used - no noise model)
- BV reverse breakdown knee voltage [volt] (infinite) (no breakdown)
- CJO zero-bias p-n capacitance [farad] 0.0 (capacitance at VR=VF=0)
- EG semicconductor bandgap voltage [eV] 1.11 (material: silicon, only for temperature)
- FC forward-bias depletion capacitance coefficient [-] 0.5
- IBVL low-level reverse breakdown knee current [amp] 0.0 (no lower breakdown region)
- IBV reverse breakdown knee current [amp] 1E-10 (Id at BV)
- IKF high-injection knee current [amp] (infinite)
- IS saturation current [amp] 1E-14
- ISR recombination current parameter [amp] 0.0
- KF flicker noise coefficient [-] 0.0 (not yet used - no noise model)
- M p-n grading coefficient [-] 0.5 (try 0.25 .. 0.45)
- N emission coefficient [-] 1.0 (a perfect diode, try 0.6..2)
- NBV reverse breakdown ideality factor [-] 1.0
- NBVL low-level reverse breakdown ideality factor [-] 1.0
- NR emission coefficient for ISR [-] 2.0
- RS parasitic resistance [ohm] 0.0 (always apply an RS > 0 !)
- TBV1 bv temperature coefficient (linear) [1/K] 0.0 (temperature dependencies only)
- TBV2 bv temperature coefficient (quadratic) [1/K^2] 0.0 (temperature dependencies only)
- TIKF ikf temperature coefficient (linear) [1/K] 0.0 (temperature dependencies only)
- TRS1 rs temperature coefficient (linear) [1/K] 0.0 (temparature dependencies only)
- TRS2 rs temperature coefficient (quadratic) [1/K^2] 0.0 (temperature dependencies only)
- TT transit time [sec] 0.0 (see capacitance chapter)
- VJ p-n potential [volt] 1.0
- XTI IS temperature exponent [-] 3.0 (temparature dependencies only)
The DC model for a diode is given by
- the forward voltage region
- area - size of diode
- IS - saturation current
- N - emission coefficient
- T - Temperature
- IKF - high-injection knee current
- ISR - recombination current
- NR - emission coefficient for ISR
- VJ - p-n potential
- M - p-n grading coefficient
- the reverse voltage breakdown region
- BV - breakdown knee voltage
- IBV - the current at BV
- NBV - reverse breakdown ideality factor
- IBVL, NBVL - as IBV, NBV; but for lower region of abs(voltage)
For this wiki, we try to model an 1N4001, as the most basic diode to be around.
From the datasheet, we read the following VF/IF points and enter them into the input field 'VF vs IF reference (VF,IF)'. Always compare with curves at 27 deg Celsius or very close to them. Floating point number have a dot as separator, line by line voltage and current separated using a comma.
- -10,0
- 0.72,1e-2
- 0.8,3e-2
- 0.84,0.1
- 0.96,1
- 1,1.8
- 1.01,2
- 1.2,8.5
- 1.22,10
- 1.4,19
We now start to enter values greater than zero for RS.
As a starting point, we use the last point of the reference trace: RS = 1.4V / 19A = 0.073 [ohms].
From that point, we modify RS and replot until the current fits at the highest VF. The modelled curve is shown in Lime.
It looks like we found a reasonable value at 0.025 ohms. We may refine the model later.
Our model still needs some fine tuning, as the forward knee voltage and the current slope does not really fit.
We need to introduce two more parameters:
- IS - the saturation current; try 1e-9 down to 1e-15
- N - emission coefficient; somewhere around 1
We come up with
- RS=0.019
- IS=0.8e-12
- N=1.31
Many datasheet don't tell too much about the breakdown region of a diode, therefore for most diodes this region is not modelled as well.
The main params for breakdown region are
- BV - reverse breakdown knee voltage. May be assumed as
- 10%..20% higher value as max breakdown voltage in datasheet for fast and ultrafast rectifiers
- 10%..20% Schottkys
- might be several times higher as given in datasheets for lower voltage standard rectifiers, if the rectifiers are downgraded from higher voltages in a series by a manufacturer
- IBV - the current at the breakdown voltage
- might be assumed as a starting point to be 10x than the maximum specified leakage current IR
- IZK for Zener diodes
- IBR for TVS
- ISR - recombination current parameter
- works similar as IS for the foward region
- may be assumed to be IR (rectifier,Zener) or ID for TVS
- or, 10% to 20% of maximum leakage current as per datasheet
- IR = 2µA for VR=4V
- Izt = 1mA for 6.3V+(7.2-6.3)V/2 = 6.75V
- Izt = 5mA for 6.4V+(7.2-6.4)V/2 = 6.8V
- Izt = 20mA for 6.4V+(7.4-6.4)V/2 = 6.9V
- -6.9,-20e-3
- -6.8,-5e-3
- -6.75,-1e-3
- -4,-2e-6
- 0.0,0.0

The datasheeet tells us, that we have 5mA at 6.8volts.
- BV = 6.8
- IBV = 5e-3

Our breakdown region already looks good, but a bit steep.
We need a bit of series resistance (RS) and to increase NBV.
If we want to tune the lower abs(-VF) region, we have also IBVL and NBVL. Not needed in this example.
Every diode incorporates also a parasitic capacitance, if used in revers direction. Just because as it is now conductor-isolator-conductor, and this the most basic description of an capacitor.
There is some initial value at zero volts across the pins, and with more negative voltage, the depletion region gets larger, so the isolation distance gets bigger and the capactance goes down.
The initial value in our case is CJO (as a rule of thumb.. 'C' - junction - zero volts).
For this, we need a diode where the datasheet tells us the capacitance vs VR plot. We use the BAT54 here. For zero volts, the datasheet mention abouts 10.5pF and it goes down to about 2.5pF at 30V.
We enter again a reference curve, this time into the input field 'Cap vs VF reference (VF,cap)';
This is, what I read from the datasheet (VF,cap)
- 0,10.5e-12
- -2,7.3e-12
- -5,4.8e-12
- -10,3.9e-12
- -20,2.9e-12
- -30,2.5e-12
- CJO = 10.5e-12

So, already the first try was almost perfect.
But, increasing the CJO to 12pF gives a slightly better picture over the whole range.
Please note, that there is a second parameter M, the p-n grading coefficient, which modifies the capacitance slope. Useful range might be 0.25V for breakdown at low voltages and 0.45 for several hundreds of volts breakdown.
Only very few diodes are modeled with temperature dependence. If you dont need it, skip it. Therefore there is only limited comparison with existing models possible for this tool.
- The extended Berkeley diode model implemented in spice does not properly model the temperature behaviour of Schottky diodes. The usual solution is to build a subcircuit instead for Schottky diodes, which adds a bit more flexibility.
- Only a few materials are implemented.
- silicon
- germanium
- gallium arsenide
- 2H silicon carbide
- 4H silicon carbide
- 6H silicon carbide
- 3C silicon carbide
- Schottky is implemented w/o Eg(T) dependence, to support all what is avail in spice.
- T - diode temperature
- Tnom - always 27 degree Celsius here.
- XTI - IS and ISR temperature exponent
- TIKF - IKF temperature coefficient (slope)
- TRS1, TRS2 - RS temperature coefficient (linear and quadratic)
- TBV1, TBV2 - BV temperature coefficient (linear and quadratic)
The currents IS = f(Temp) and ISR = f(Temp) are modelled using the XTI parameter, after IS and ISR have been defined for standard temperature Tnom. Additionally, the energy gap (or bandgap energy) EG(0) in eV of the diodes material and it's temperature coefficients needs to be known to calculate EG(T). For some materials standard values are well known, for others this value needs to be searched. For silicon, a value of EG=1.159eV at 27degreee celsius is calculated.
- IS (T) = IS * e^(T/Tnom-1)·EG/(N·Vt) * (T/Tnom)^(XTI/N)
- ISR (T) = ISR * e^(T/Tnom-1)·EG/(NR·Vt) * (T/Tnom)^(XTI/NR)
The high-injection knee current IKF temperature dependence is given by TIKF (linear).
- IKF(T) = IKF * (1 + TIKF * (T-Tnom))
The change of breakdown voltage is modelled with a poly parameter set, TBV1 and TBV2.
- BV(T) = BV * (1 + TBV1 * (T-Tnom) + TBV2 * (T-Tnom)^2)
The change of RS is similar to BV modelled.
- RS(T) = RS * (1 + TRS1 * (T-Tnom) + TRS2 * (T-Tnom)^2)