Show / Hide Table of Contents

Class ModelParameters

Common model parameters for mosfets.

Inheritance
object
ParameterSet
ModelParameters
ModelParameters
ModelParameters
ModelParameters
Implements
IParameterSet
ICloneable<ModelParameters>
Inherited Members
ParameterSet.SetParameter<P>(string, P)
ParameterSet.TrySetParameter<P>(string, P)
ParameterSet.GetProperty<P>(string)
ParameterSet.TryGetProperty<P>(string, out P)
ParameterSet.CreateParameterSetter<P>(string)
ParameterSet.CreatePropertyGetter<P>(string)
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: SpiceSharp.Components.Mosfets
Assembly: SpiceSharp.dll
Syntax
public abstract class ModelParameters : ParameterSet, IParameterSet, ICloneable<ModelParameters>

Properties

BulkCapFactor

Gets or sets the bottom junction capacitance per area.

Declaration
[ParameterName("cj")]
[ParameterInfo("Bottom junction cap. per area", Units = "F/m^2")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> BulkCapFactor { get; set; }
Property Value
Type Description
GivenParameter<double>

The bottom junction capacitance per area.

BulkJunctionBotGradingCoefficient

Gets or sets the bulk junction bottom grading coefficient.

Declaration
[ParameterName("mj")]
[ParameterInfo("Bottom grading coefficient")]
[GreaterThan(0)]
[Finite]
public double BulkJunctionBotGradingCoefficient { get; set; }
Property Value
Type Description
double

The bulk junction bottom grading coefficient.

BulkJunctionPotential

Gets or sets the bulk junction potential.

Declaration
[ParameterName("pb")]
[ParameterInfo("Bulk junction potential", Units = "V")]
[GreaterThan(0)]
[Finite]
public double BulkJunctionPotential { get; set; }
Property Value
Type Description
double

The bulk junction potential.

BulkJunctionSideGradingCoefficient

Gets or sets the bulk junction side grading coefficient.

Declaration
[ParameterName("mjsw")]
[ParameterInfo("Side grading coefficient")]
[GreaterThan(0)]
[Finite]
public double BulkJunctionSideGradingCoefficient { get; set; }
Property Value
Type Description
double

The bulk junction side grading coefficient.

CapBd

Gets or sets the bulk-drain junction capacitance.

Declaration
[ParameterName("cbd")]
[ParameterInfo("B-D junction capacitance", Units = "F")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> CapBd { get; set; }
Property Value
Type Description
GivenParameter<double>

The bulk-drain junction capacitance.

CapBs

Gets or sets the bulk-source junction capacitance

Declaration
[ParameterName("cbs")]
[ParameterInfo("B-S junction capacitance", Units = "F")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> CapBs { get; set; }
Property Value
Type Description
GivenParameter<double>

The bulk-source junction capacitance

DrainResistance

Gets or sets the drain ohmic resistance.

Declaration
[ParameterName("rd")]
[ParameterInfo("Drain ohmic resistance", Units = "Ω")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> DrainResistance { get; set; }
Property Value
Type Description
GivenParameter<double>

The drain ohmic resistance.

FlickerNoiseCoefficient

Gets or sets the flicker-noise coefficient parameter.

Declaration
[ParameterName("kf")]
[ParameterInfo("Flicker noise coefficient")]
[Finite]
public double FlickerNoiseCoefficient { get; set; }
Property Value
Type Description
double

The flicker noise coefficient.

FlickerNoiseExponent

Gets or sets the flicker-noise exponent parameter.

Declaration
[ParameterName("af")]
[ParameterInfo("Flicker noise exponent")]
[Finite]
public double FlickerNoiseExponent { get; set; }
Property Value
Type Description
double

The flicker noise exponent.

ForwardCapDepletionCoefficient

Gets or sets the forward bias junction fitting parameter.

Declaration
[ParameterName("fc")]
[ParameterInfo("Forward bias jct. fit parm.")]
[GreaterThan(0)]
[Finite]
public double ForwardCapDepletionCoefficient { get; set; }
Property Value
Type Description
double

The forward bias junction fitting parameter.

Gamma

Gets or sets the bulk threshold parameter.

Declaration
[ParameterName("gamma")]
[ParameterInfo("Bulk threshold parameter", Units = "V^0.5")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> Gamma { get; set; }
Property Value
Type Description
GivenParameter<double>

The bulk threshold parameter.

GateBulkOverlapCapFactor

Gets or sets the gate-bulk overlap capacitance.

Declaration
[ParameterName("cgbo")]
[ParameterInfo("Gate-bulk overlap cap.", Units = "F/m")]
[GreaterThanOrEquals(0)]
[Finite]
public double GateBulkOverlapCapFactor { get; set; }
Property Value
Type Description
double

The gate-bulk overlap capacitance.

GateDrainOverlapCapFactor

Gets or sets the gate-drain overlap capacitance.

Declaration
[ParameterName("cgdo")]
[ParameterInfo("Gate-drain overlap cap.", Units = "F/m")]
[GreaterThanOrEquals(0)]
[Finite]
public double GateDrainOverlapCapFactor { get; set; }
Property Value
Type Description
double

The gate-drain overlap capacitance.

GateSourceOverlapCapFactor

Gets or sets the gate-source overlap capacitance.

Declaration
[ParameterName("cgso")]
[ParameterInfo("Gate-source overlap cap.", Units = "F/m")]
[GreaterThanOrEquals(0)]
[Finite]
public double GateSourceOverlapCapFactor { get; set; }
Property Value
Type Description
double

The gate-source overlap capacitance.

GateType

Gets or sets the type of the gate.

Declaration
[ParameterName("tpg")]
[ParameterInfo("Gate type")]
[Finite]
public GivenParameter<double> GateType { get; set; }
Property Value
Type Description
GivenParameter<double>

The type of the gate.

JunctionSatCur

Gets or sets the bulk junction saturation current.

Declaration
[ParameterName("is")]
[ParameterInfo("Bulk junction saturation current", Units = "A")]
[GreaterThanOrEquals(0)]
[Finite]
public double JunctionSatCur { get; set; }
Property Value
Type Description
double

The bulk junction saturation current.

JunctionSatCurDensity

Gets or sets the bulk junction saturation current density.

Declaration
[ParameterName("js")]
[ParameterInfo("Bulk jct. sat. current density", Units = "A/m^2")]
[GreaterThanOrEquals(0)]
[Finite]
public double JunctionSatCurDensity { get; set; }
Property Value
Type Description
double

The bulk junction saturation current density.

LateralDiffusion

Gets or sets the lateral diffusion.

Declaration
[ParameterName("ld")]
[ParameterInfo("Lateral diffusion", Units = "m")]
[GreaterThanOrEquals(0)]
[Finite]
public double LateralDiffusion { get; set; }
Property Value
Type Description
double

The lateral diffusion.

Length

Gets or sets the default length for transistors using this model.

Declaration
[ParameterName("l")]
[ParameterInfo("The default length for transistors using this model", Units = "m")]
[GreaterThan(0)]
[Finite]
public GivenParameter<double> Length { get; set; }
Property Value
Type Description
GivenParameter<double>

The default length for transistors.

MosfetType

Gets or sets the mosfet type.

Declaration
public double MosfetType { get; protected set; }
Property Value
Type Description
double

The mosfet type.

NominalTemperature

Gets or sets the nominal temperature in Kelvin.

Declaration
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> NominalTemperature { get; set; }
Property Value
Type Description
GivenParameter<double>

The nominal temperature in Kelvin.

NominalTemperatureCelsius

Gets or sets the nominal temperature in degrees celsius.

Declaration
[ParameterName("tnom")]
[ParameterInfo("Parameter measurement temperature", Units = "°C")]
[GreaterThan(-273.15)]
[Finite]
public double NominalTemperatureCelsius { get; set; }
Property Value
Type Description
double

The nominal temperature in degrees Celsius.

OxideThickness

Gets or sets the oxide thickness.

Declaration
[ParameterName("tox")]
[ParameterInfo("Oxide thickness", Units = "m")]
[GreaterThan(0)]
[Finite]
public GivenParameter<double> OxideThickness { get; set; }
Property Value
Type Description
GivenParameter<double>

The oxide thickness.

Phi

Gets or sets the surface potential.

Declaration
[ParameterName("phi")]
[ParameterInfo("Surface potential", Units = "V")]
[GreaterThan(0)]
[Finite]
public GivenParameter<double> Phi { get; set; }
Property Value
Type Description
GivenParameter<double>

The surface potential.

SheetResistance

Gets or sets the sheet resistance.

Declaration
[ParameterName("rsh")]
[ParameterInfo("Sheet resistance", Units = "Ω")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> SheetResistance { get; set; }
Property Value
Type Description
GivenParameter<double>

The sheet resistance.

SidewallCapFactor

Gets or sets the sidewall capacitance.

Declaration
[ParameterName("cjsw")]
[ParameterInfo("Side junction cap. per area", Units = "F/m^2")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> SidewallCapFactor { get; set; }
Property Value
Type Description
GivenParameter<double>

The sidewall capacitance.

SourceResistance

Gets or sets the source ohmic resistance.

Declaration
[ParameterName("rs")]
[ParameterInfo("Source ohmic resistance", Units = "Ω")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> SourceResistance { get; set; }
Property Value
Type Description
GivenParameter<double>

The source ohmic resistance.

SubstrateDoping

Gets or sets the substrate doping level.

Declaration
[ParameterName("nsub")]
[ParameterInfo("Substrate doping")]
[GreaterThan(14500000000)]
[Finite]
public GivenParameter<double> SubstrateDoping { get; set; }
Property Value
Type Description
GivenParameter<double>

The substrate doping level.

SurfaceMobility

Gets or sets the surface mobility.

Declaration
[ParameterName("u0")]
[ParameterName("uo")]
[ParameterInfo("Surface mobility", Units = "V/cm")]
[GreaterThan(0)]
[Finite]
public GivenParameter<double> SurfaceMobility { get; set; }
Property Value
Type Description
GivenParameter<double>

The surface mobility.

SurfaceStateDensity

Gets or sets the surface state density.

Declaration
[ParameterName("nss")]
[ParameterInfo("Surface state density")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> SurfaceStateDensity { get; set; }
Property Value
Type Description
GivenParameter<double>

The surface state density.

Transconductance

Gets or sets the transconductance.

Declaration
[ParameterName("kp")]
[ParameterInfo("Transconductance parameter", Units = "A/V^2")]
[GreaterThanOrEquals(0)]
[Finite]
public GivenParameter<double> Transconductance { get; set; }
Property Value
Type Description
GivenParameter<double>

The transconductance.

TypeName

Gets the name of the type.

Declaration
[ParameterName("type")]
[ParameterInfo("N-channel or P-channel MOS")]
public string TypeName { get; }
Property Value
Type Description
string

The name of the type.

Vt0

Gets or sets the base threshold voltage.

Declaration
[ParameterName("vto")]
[ParameterName("vt0")]
[ParameterInfo("Threshold voltage", Units = "V")]
[Finite]
public GivenParameter<double> Vt0 { get; set; }
Property Value
Type Description
GivenParameter<double>

The base threshold voltage.

Width

Gets or sets the default width for transistors using this model.

Declaration
[ParameterName("w")]
[ParameterInfo("The default width for transistors using this model", Units = "m")]
[GreaterThan(0)]
[Finite]
public GivenParameter<double> Width { get; set; }
Property Value
Type Description
GivenParameter<double>

The default width for transistors.

Methods

Clone()

Clones the instance.

Declaration
public virtual ModelParameters Clone()
Returns
Type Description
ModelParameters

The cloned instance.

SetNmos(bool)

Sets the model to represent an NMOS.

Declaration
[ParameterName("nmos")]
[ParameterInfo("N type Mosfet model")]
public void SetNmos(bool value)
Parameters
Type Name Description
bool value

if set to true, the model represents an NMOS.

SetPmos(bool)

Sets the model to represent a PMOS.

Declaration
[ParameterName("pmos")]
[ParameterInfo("P type Mosfet model")]
public void SetPmos(bool value)
Parameters
Type Name Description
bool value

if set to true, the model represents a PMOS.

Implements

IParameterSet
ICloneable<T>

Extension Methods

Utility.ThrowIfNull<T>(T, string)
Documentation.ParameterValues<T>(IParameterSet, bool)
Documentation.Parameters(IParameterSet)

See Also

ParameterSet
In this article
Back to top Generated by DocFX