BondLib.Spice.Utilities.MOSeq3

# .BondLib.Spice.Utilities.MOSeq3

Computation of injected drain-source current for Level=3

## Information

This function implements a Spice-style Level-3 model of the current flowing between drain and source of a MOSFET. It is is an empirical model that computes the current in its linear, saturation, and weak inversion regions. Various channel modulation effects are also considered.

The model offers a compromise between the much more sophisticated Level-2 model that, however, simulates very slowly, and the often too simple Level-1 model that doesn't allow many questions to be answered, such as what is the highest possible switching frequency reachable, how much power is being dissipated at high frequency operation, what is the amount of substrate cross-talk, etc.

The model comments the equations by providing the corresponding equation numbers from [1].

    Input variables:

     vds:     Drain-source voltage (Volt)

     vgs:     Gate-source voltage (Volt)

     vbs:     Bulk-source voltage (Volt)

     Tdev:    Device temperature (K)

     sig:     Indicator of operating mode
                sig = +1:  direct mode
                sig = -1:  reverse mode (source and drain are flipped)

    Input parameters:

     Type:    Type of MOSFET (default value = 1)
                Type = +1:  NMOS
                Type = -1:  PMOS

     Tnom:    Reference temperature (default value = 300.15 K)

     VFB:     Flat band voltage at reference temperature (default value = 0 Volt)

     KP:      Transconductance parameter at reference temperature (default value = 0 Amp/Volt2)

     GAMMA:   Body-effect parameter (default value = 0 Volt0.5)

     PHI:     Surface inversion potential at reference temperature (default value = 0 Volt)

     COX:     Specific capacitance of SiO2 (default value = 0 F/m2)

     NFS:     Surface fast state density (default value = 0 1/m2)

     XJ:      Metallurgical junction depth (default value = 0 m)

     L:       Channel length (default value = 1e-4 m)

     W:       Channel width (default value = 1e-4 m)

     LD:      Lateral diffusion (default value = 0 m)

     XD:      Depletion factor (default value = 0 m/Volt0.5)

     U0:      Surface mobility at reference temperature (default value = 0 m2/(V*s))

     VMAX:    Maximum drift velocity of carriers (default value = 0 m/s)

     DELTA:   Width effect on threshold voltage (default value = 0)

     KAPPA:   Saturation field factor (default value = 0.2)

     ETA:     Static feedback on threshold voltage (default value = 0)

     THETA:   Mobility modulation (default value = 0 1/Volt)

     EG:      Energy gap for temperature effect on saturation current at 0 K (default value = 1.11 Volt)

     EMin:    if x < EMin, the exp(x) function is linearized (default value = -100) Levels 1-3

     EMax:    if x > EMax, the exp(x) function is linearized (default value = 40) Levels 1-3

    Output variables:

     isd0:    Drain-source current (Amp)

     Vfb:     Flat band voltage at device temperature (Volt)

     Vth:     Threshold voltage (Volt)

     vdsat:   Saturation voltage (Volt)

     vpof:    Pinch-off voltage (Volt)

References:

1. Massobrio, G. and P. Antognetti (1993), Semiconductor Device Modeling with Spice, 2nd edition, McGraw Hill, New York.

#### Interface

>     function MOSeq3
>       input Modelica.SIunits.Voltage vds "Drain-source voltage";
>       input Modelica.SIunits.Voltage vgs "Gate-source voltage";
>       input Modelica.SIunits.Voltage vbs "Bulk-source voltage";
>       input Modelica.SIunits.Temperature Tdev "Device temperature";
>       input Real sig "sign(vds)";
>       input Integer Type "Type=1 for NMOS; Type=-1 for PMOS";
>       input Modelica.SIunits.Temperature Tnom "Reference temperature";
>       input Modelica.SIunits.Voltage VFB "Flat band voltage at reference temperature";
>       input Modelica.SIunits.Transconductance KP "Transconductance parameter at reference temperature";
>       input Real GAMMA(unit = "V^0.5") "Body-effect parameter";
>       input Modelica.SIunits.Voltage PHI "Surface inversion potential at reference temperature";
>       input Real COX(unit = "F/m2") "Specific capacitance of SiO2";
>       input Real NFS(unit = "1/m2") "Surface fast state density";
>       input Modelica.SIunits.Length XJ "Metallurgical junction depth";
>       input Modelica.SIunits.Length L "Effective hannel length";
>       input Modelica.SIunits.Length W "Effective channel width";
>       input Modelica.SIunits.Length LD "Lateral diffusion";
>       input Real XD(unit = "m/V^0.5") "Depletion factor";
>       input Real U0(unit = "m2/(V.s)") "Surface mobility at reference temperature";
>       input Modelica.SIunits.Velocity VMAX "Maximum drift velocity of carriers";
>       input Real DELTA "Width effect on threshold voltage";
>       input Real KAPPA "Saturation field factor";
>       input Real ETA "Static feedback on threshold voltage";
>       input Modelica.SIunits.InversePotential THETA "Mobility modulation";
>       input Modelica.SIunits.Voltage EG "Energy gap for temperature effect on saturation current at 0 K";
>       input Real EMin "if x < EMin, the exp(x) function is linearized";
>       input Real EMax "if x > EMax, the exp(x) function is linearized";
>       output Modelica.SIunits.Current ids0 "Injected drain-source current";
>       output Modelica.SIunits.Voltage Vfb "Effective flat band voltage at device temperature";
>       output Modelica.SIunits.Voltage Vth "Threshold voltage";
>       output Modelica.SIunits.Voltage vdsat "Saturation voltage";
>       output Modelica.SIunits.Voltage vpof "Pinch-off voltage";
>     end MOSeq3;

Generated at 2026-05-12T20:19:03Z by OpenModelicaOpenModelica 1.26.7 using GenerateDoc.mos