Skip to main content

Bsim1Model

Struct Bsim1Model 

Source
pub struct Bsim1Model {
Show 80 fields pub nmos: bool, pub vfb0: f64, pub vfbl: f64, pub vfbw: f64, pub phi0: f64, pub phil: f64, pub phiw: f64, pub k10: f64, pub k1l: f64, pub k1w: f64, pub k20: f64, pub k2l: f64, pub k2w: f64, pub eta0: f64, pub etal: f64, pub etaw: f64, pub etab0: f64, pub etabl: f64, pub etabw: f64, pub etad0: f64, pub etadl: f64, pub etadw: f64, pub mobzero: f64, pub mobzerob0: f64, pub mobzerobl: f64, pub mobzerobw: f64, pub mobvdd0: f64, pub mobvddl: f64, pub mobvddw: f64, pub mobvddb0: f64, pub mobvddbl: f64, pub mobvddbw: f64, pub mobvddd0: f64, pub mobvdddl: f64, pub mobvdddw: f64, pub ugs0: f64, pub ugsl: f64, pub ugsw: f64, pub ugsb0: f64, pub ugsbl: f64, pub ugsbw: f64, pub uds0: f64, pub udsl: f64, pub udsw: f64, pub udsb0: f64, pub udsbl: f64, pub udsbw: f64, pub udsd0: f64, pub udsdl: f64, pub udsdw: f64, pub n00: f64, pub n0l: f64, pub n0w: f64, pub nb0: f64, pub nbl: f64, pub nbw: f64, pub nd0: f64, pub ndl: f64, pub ndw: f64, pub deltal: f64, pub deltaw: f64, pub tox: f64, pub temp: f64, pub vdd: f64, pub cgso: f64, pub cgdo: f64, pub cgbo: f64, pub xpart: f64, pub rsh: f64, pub js: f64, pub pb: f64, pub mj: f64, pub pbsw: f64, pub mjsw: f64, pub cj: f64, pub cjsw: f64, pub wdf: f64, pub dell: f64, pub kf: f64, pub af: f64,
}
Expand description

.model … nmos(level=4 …) parameters, 3f5 names (b1.c keyword table). Everything defaults to 0 (b1set.c); the junction potentials are clamped to ≥ 0.1 at temp time.

Fields§

§nmos: bool§vfb0: f64§vfbl: f64§vfbw: f64§phi0: f64§phil: f64§phiw: f64§k10: f64§k1l: f64§k1w: f64§k20: f64§k2l: f64§k2w: f64§eta0: f64§etal: f64§etaw: f64§etab0: f64§etabl: f64§etabw: f64§etad0: f64§etadl: f64§etadw: f64§mobzero: f64

MUZ has no geometry dependence of its own.

§mobzerob0: f64§mobzerobl: f64§mobzerobw: f64§mobvdd0: f64§mobvddl: f64§mobvddw: f64§mobvddb0: f64§mobvddbl: f64§mobvddbw: f64§mobvddd0: f64§mobvdddl: f64§mobvdddw: f64§ugs0: f64§ugsl: f64§ugsw: f64§ugsb0: f64§ugsbl: f64§ugsbw: f64§uds0: f64§udsl: f64§udsw: f64§udsb0: f64§udsbl: f64§udsbw: f64§udsd0: f64§udsdl: f64§udsdw: f64§n00: f64§n0l: f64§n0w: f64§nb0: f64§nbl: f64§nbw: f64§nd0: f64§ndl: f64§ndw: f64§deltal: f64

DL/DW: channel reduction, µm.

§deltaw: f64§tox: f64

TOX in µm.

§temp: f64

TEMP (accepted and unused: BSIM1 runs on CONSTvt0).

§vdd: f64

VDD: supply at which MUS was measured.

§cgso: f64

Overlap capacitances per meter.

§cgdo: f64§cgbo: f64§xpart: f64

XPART: ≥ 1 selects the 0/100 charge partition, else 40/60.

§rsh: f64§js: f64§pb: f64§mj: f64§pbsw: f64§mjsw: f64§cj: f64§cjsw: f64§wdf: f64

WDF/DELL (accepted and unused by the load, like the C).

§dell: f64§kf: f64

KF/AF (noise only; ngspice-47’s b1noi.c — the 3f5’s BSIM1 has no noise and no such parameters). Defaults 0 and 1 (b1set.c of ngspice) — new sets AF; the derived Default leaves it 0.

§af: f64

Implementations§

Source§

impl Bsim1Model

Source

pub fn new(nmos: bool) -> Self

Trait Implementations§

Source§

impl Clone for Bsim1Model

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Bsim1Model

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Bsim1Model

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> ByRef<T> for T

Source§

fn by_ref(&self) -> &T

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Imply<T> for U
where T: ?Sized, U: ?Sized,

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.