Class ModelParameters
Common model parameters for mosfets.
Inherited Members
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 |
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 |