Model NPN bipolar transistor using enhanced Ebers-Moll equations

Semiconductor Devices

The NPN Bipolar Transistor block uses a variant of the Ebers-Moll equations to represent an NPN bipolar transistor. The Ebers-Moll equations are based on two exponential diodes plus two current-controlled current sources. The NPN Bipolar Transistor block provides the following enhancements to that model:

Early voltage effect

Optional base, collector, and emitter resistances.

Optional fixed base-emitter and base-collector capacitances.

The collector and base currents are:

$$\begin{array}{l}{I}_{C}=IS\left[\left({e}^{q{V}_{BE}/(k{T}_{m1})}-{e}^{q{V}_{BC}/(k{T}_{m1})}\right)\left(1-\frac{{V}_{BC}}{{V}_{A}}\right)-\frac{1}{{\beta}_{R}}\left({e}^{q{V}_{BC}/(k{T}_{m1})}-1\right)\right]\\ {I}_{B}=IS\left[\frac{1}{{\beta}_{F}}\left({e}^{q{V}_{BE}/(k{T}_{m1})}-1\right)+\frac{1}{{\beta}_{R}}\left({e}^{q{V}_{BC}/(k{T}_{m1})}-1\right)\right]\end{array}$$

*I*and_{B}*I*are base and collector currents, defined as positive into the device._{C}*IS*is the saturation current.*V*is the base-emitter voltage and_{BE}*V*is the base-collector voltage._{BC}*β*_{F}is the ideal maximum forward current gain BF*β*_{R}is the ideal maximum reverse current gain BR*V*is the forward Early voltage VAF_{A}*q*is the elementary charge on an electron (1.602176e–19 Coulombs).*k*is the Boltzmann constant (1.3806503e–23 J/K).*T*_{m1}is the transistor temperature, as defined by the**Measurement temperature**parameter value.

You can specify the transistor behavior using datasheet parameters that the block uses to calculate the parameters for these equations, or you can specify the equation parameters directly.

If *q**V*_{BC} /
(*k**T*_{m1})
> 40 or *q**V*_{BE} /
(*k**T*_{m1})
> 40, the corresponding exponential terms
in the equations are replaced with (*q**V*_{BC} /
(*k**T*_{m1})
– 39)*e*^{40} and (*q**V*_{BE} /
(*k**T*_{m1})
– 39)*e*^{40},
respectively. This helps prevent numerical issues associated with
the steep gradient of the exponential function *e*^{x} at
large values of *x*. Similarly, if *q**V*_{BC} /
(*k**T*_{m1})
< –39 or *q**V*_{BE} /
(*k**T*_{m1})
< –39 then the corresponding exponential
terms in the equations are replaced with (*q**V*_{BC} /
(*k**T*_{m1})
+ 40)*e*^{–39} and (*q**V*_{BE} /
(*k**T*_{m1})
+ 40)*e*^{–39},
respectively.

Optionally, you can specify parasitic fixed capacitances across the base-emitter and base-collector junctions. You also have the option to specify base, collector, and emitter connection resistances.

The default behavior is that dependence on temperature is not modeled, and the device is simulated at the temperature for which you provide block parameters. You can optionally include modeling the dependence of the transistor static behavior on temperature during simulation. Temperature dependence of the junction capacitances is not modeled, this being a much smaller effect.

When including temperature dependence, the transistor defining
equations remain the same. The measurement temperature value, *T*_{m1},
is replaced with the simulation temperature, *T*_{s}.
The saturation current, *IS*, and the forward and
reverse gains (*β _{F}* and

$$I{S}_{Ts}=I{S}_{Tm1}\cdot {({T}_{s}/{T}_{m1})}^{XTI}\cdot \mathrm{exp}\left(-\frac{EG}{k{T}_{s}}(1-{T}_{s}/{T}_{m1})\right)$$

$${\beta}_{Fs}={\beta}_{Fm1}{\left(\frac{{T}_{s}}{{T}_{m1}}\right)}^{XTB}$$

$${\beta}_{Rs}={\beta}_{Rm1}{\left(\frac{{T}_{s}}{{T}_{m1}}\right)}^{XTB}$$

where:

*T*_{m1}is the temperature at which the transistor parameters are specified, as defined by the**Measurement temperature**parameter value.*T*_{s}is the simulation temperature.*IS*_{Tm1}is the saturation current at the measurement temperature.*IS*_{Ts}is the saturation current at the simulation temperature. This is the saturation current value used in the bipolar transistor equations when temperature dependence is modeled.*β*_{Fm1}and*β*_{Rm1}are the forward and reverse gains at the measurement temperature.*β*_{Fs}and*β*_{Rs}are the forward and reverse gains at the simulation temperature. These are the values used in the bipolar transistor equations when temperature dependence is modeled.*EG*is the energy gap for the semiconductor type measured in Joules. The value for silicon is usually taken to be 1.11 eV, where 1 eV is 1.602e-19 Joules.*XTI*is the saturation current temperature exponent.*XTB*is the forward and reverse gain temperature coefficient.*k*is the Boltzmann constant (1.3806503e–23 J/K).

Appropriate values for *XTI* and *EG* depend
on the type of transistor and the semiconductor material used. In
practice, the values of *XTI*, *EG*,
and *XTB* need tuning to model the exact behavior
of a particular transistor. Some manufacturers quote these tuned values
in a SPICE Netlist, and you can read off the appropriate values. Otherwise
you can determine values for *XTI*, *EG*,
and *XTB* by using a datasheet-defined data at a
higher temperature *T*_{m2}.
The block provides a datasheet parameterization option for this.

You can also tune the values of *XTI*, *EG*,
and *XTB* yourself, to match lab data for your particular
device. You can use Simulink^{®}
Design Optimization™ software to help
tune the values.

The block has an optional thermal port, hidden by default. To
expose the thermal port, right-click the block in your model, and
then from the context menu select **Simscape** > **Block
choices** > **Show thermal port**.
This action displays the thermal port H on the block icon, and adds
the **Thermal Port** tab to the block dialog box.

Use the thermal port to simulate the effects of generated heat
and device temperature. For more information on using thermal ports
and on the **Thermal Port** tab parameters, see Simulating Thermal Effects in Semiconductors.

The NPN Bipolar Transistor model has the following limitations:

The block does not account for temperature-dependent effects on the junction capacitances.

You may need to use nonzero ohmic resistance and junction capacitance values to prevent numerical simulation issues, but the simulation may run faster with these values set to zero.

**Parameterization**Select one of the following methods for block parameterization:

`Specify from a datasheet`

— Provide parameters that the block converts to equations that describe the transistor. The block calculates the forward Early voltage*VAF*as*Ic/h_oe*, where*Ic*is the**Collector current at which h-parameters are defined**parameter value, and*h_oe*is the**Output admittance h_oe**parameter value [1]. The block sets*BF*to the small-signal**Forward current transfer ratio h_fe**value. The block calculates the saturation current*IS*from the specified**Voltage Vbe**value and the corresponding**Current Ib for voltage Vbe**value when*Ic*is zero. This is the default method.`Specify using equation parameters directly`

— Provide equation parameters*IS*,*BF*, and*VAF*.

**Forward current transfer ratio h_fe**Small-signal current gain. This parameter is only visible when you select

`Specify from a datasheet`

for the**Parameterization**parameter. The default value is`100`

.**Output admittance h_oe**Derivative of the collector current with respect to the collector-emitter voltage for a fixed base current. This parameter is only visible when you select

`Specify from a datasheet`

for the**Parameterization**parameter. The default value is`5e-05`

1/Ω.**Collector current at which h-parameters are defined**The h-parameters vary with operating point, and are defined for this value of the collector current. This parameter is only visible when you select

`Specify from a datasheet`

for the**Parameterization**parameter. The default value is`1`

mA.**Collector-emitter voltage at which h-parameters are defined**The h-parameters vary with operating point, and are defined for this value of the collector-emitter voltage. This parameter is only visible when you select

`Specify from a datasheet`

for the**Parameterization**parameter. The default value is`5`

V.**Voltage Vbe**Base-emitter voltage when the base current is

*Ib*. The [*Vbe**Ib*] data pair must be quoted for when the transistor is in the normal active region, that is, not in the saturated region. This parameter is only visible when you select`Specify from a datasheet`

for the**Parameterization**parameter. The default value is`0.55`

V.**Current Ib for voltage Vbe**Base current when the base-emitter voltage is

*Vbe*. The [*Vbe**Ib*] data pair must be quoted for when the transistor is in the normal active region, that is, not in the saturated region. This parameter is only visible when you select`Specify from a datasheet`

for the**Parameterization**parameter. The default value is`0.5`

mA.**Forward current transfer ratio BF**Ideal maximum forward current gain. This parameter is only visible when you select

`Specify using equation parameters directly`

for the**Parameterization**parameter. The default value is`100`

.**Saturation current IS**Transistor saturation current. This parameter is only visible when you select

`Specify using equation parameters directly`

for the**Parameterization**parameter. The default value is`1e-14`

A.**Forward Early voltage VAF**In the standard Ebers-Moll equations, the gradient of the

*Ic*versus*Vce*curve is zero in the normal active region. The additional forward Early voltage term increases this gradient. The intercept on the*Vce*-axis is equal to –*VAF*when the linear region is extrapolated. This parameter is only visible when you select`Specify using equation parameters directly`

for the**Parameterization**parameter. The default value is`200`

V.**Reverse current transfer ratio BR**Ideal maximum reverse current gain. This value is often not quoted in manufacturer datasheets, because it is not significant when the transistor is biased to operate in the normal active region. When the value is not known and the transistor is not to be operated on the inverse region, use the default value of

`1`

.**Measurement temperature**Temperature

*T*_{m1}at which*Vbe*and*Ib*, or*IS*, are measured. The default value is`25`

°C.

**Collector resistance RC**Resistance at the collector. The default value is

`0.01`

Ω.**Emitter resistance RE**Resistance at the emitter. The default value is

`1e-4`

Ω.**Zero bias base resistance RB**Resistance at the base at zero bias. The default value is

`1`

Ω.

**Base-collector junction capacitance**Parasitic capacitance across the base-collector junction. The default value is

`5`

pF.**Base-emitter junction capacitance**Parasitic capacitance across the base-emitter junction. The default value is

`5`

pF.**Total forward transit time**Represents the mean time for the minority carriers to cross the base region from the emitter to the collector, and is often denoted by the parameter TF [1]. The default value is

`0`

μs.**Total reverse transit time**Represents the mean time for the minority carriers to cross the base region from the collector to the emitter, and is often denoted by the parameter TR [1]. The default value is

`0`

μs.

**Parameterization**Select one of the following methods for temperature dependence parameterization:

`None — Simulate at parameter measurement temperature`

— Temperature dependence is not modeled, or the model is simulated at the measurement temperature*T*_{m1}(as specified by the**Measurement temperature**parameter on the**Main**tab). This is the default method.`Model temperature dependence`

— Provide a value for simulation temperature, to model temperature-dependent effects. You also have to provide a set of additional parameters depending on the block parameterization method. If you parameterize the block from a datasheet, you have to provide values for a second [*Vbe**Ib*] data pair and*h_fe*at second measurement temperature. If you parameterize by directly specifying equation parameters, you have to provide the values for*XTI*,*EG*, and*XTB*.

**Forward current transfer ratio, h_fe, at second measurement temperature**Small-signal current gain at the second measurement temperature. This parameter is only visible when you select

`Specify from a datasheet`

for the**Parameterization**parameter on the**Main**tab. It must be quoted at the same collector-emitter voltage and collector current as for the**Forward current transfer ratio h_fe**parameter on the**Main**tab. The default value is`125`

.**Voltage Vbe at second measurement temperature**Base-emitter voltage when the base current is

*Ib*and the temperature is set to the second measurement temperature. The [*Vbe**Ib*] data pair must be quoted for when the transistor is in the normal active region, that is, not in the saturated region. This parameter is only visible when you select`Specify from a datasheet`

for the**Parameterization**parameter on the**Main**tab. The default value is`0.45`

V.**Current Ib for voltage Vbe at second measurement temperature**Base current when the base-emitter voltage is

*Vbe*and the temperature is set to the second measurement temperature. The [*Vbe**Ib*] data pair must be quoted for when the transistor is in the normal active region, that is, not in the saturated region. This parameter is only visible when you select`Specify from a datasheet`

for the**Parameterization**parameter on the**Main**tab. The default value is`0.5`

mA.**Second measurement temperature**Second temperature

*T*_{m2}at which*h_fe*,*Vbe*, and*Ib*are measured. This parameter is only visible when you select`Specify from a datasheet`

for the**Parameterization**parameter on the**Main**tab. The default value is`125`

°C.**Current gain temperature coefficient, XTB**Current gain temperature coefficient value. This parameter is only visible when you select

`Specify using equation parameters directly`

for the**Parameterization**parameter on the**Main**tab. The default value is`0`

.**Energy gap, EG**Energy gap value. This parameter is only visible when you select

`Specify using equation parameters directly`

for the**Parameterization**parameter on the**Main**tab. The default value is`1.11`

eV.**Saturation current temperature exponent, XTI**Saturation current temperature coefficient value. This parameter is only visible when you select

`Specify using equation parameters directly`

for the**Parameterization**parameter on the**Main**tab. The default value is`3`

.**Device simulation temperature**Temperature

*T*_{s}at which the device is simulated. The default value is`25`

°C.

The block has the following ports:

`B`

Electrical conserving port associated with the transistor base terminal

`C`

Electrical conserving port associated with the transistor collector terminal

`E`

Electrical conserving port associated with the transistor emitter terminal

See the NPN Bipolar Transistor Characteristics example.

[1] G. Massobrio and P. Antognetti. *Semiconductor
Device Modeling with SPICE*. 2nd Edition, McGraw-Hill,
1993.

[2] H. Ahmed and P.J. Spreadbury. *Analogue
and digital electronics for engineers*. 2nd Edition, Cambridge
University Press, 1984.

Was this topic helpful?