I store an architecture configuration and provide methods for convenient abstracting of different MOSFET architecture options.

Instance Variable architecture A dict set from the device spec, containing entries N_channel, LDD, vertical, and Rp.
Method __init__ Undocumented
Method N_channel Property: True if N-channel (NMOS), False if P-channel (PMOS).
Method P_channel Property: True if P-channel (NMOS), False if N-channel (PMOS).
Method has_ldd Property: True if includes a lightly doped drift region.
Method has_jfet Property: True if includes a JFET region.
Method has_Rp Property: True if there is enough baseline drain-source leakage to warrant having a fixed resistor in parallel with the MOS3 primitive modeling the channel.
Method npi Returns the unchanged input if N-channel, else the "inverted" value of the input. "Inverted" means different things for different object types:
Method npp Returns the first arg if N channel, else the second one.
Method npr Returns the args, except with the first two reversed if P Channel.
architecture =
A dict set from the device spec, containing entries N_channel, LDD, vertical, and Rp.
def __init__(self, architecture):
@property
def N_channel(self):

Property: True if N-channel (NMOS), False if P-channel (PMOS).

@property
def P_channel(self):

Property: True if P-channel (NMOS), False if N-channel (PMOS).

@property
def has_ldd(self):

Property: True if includes a lightly doped drift region.

@property
def has_jfet(self):

Property: True if includes a JFET region.

@property
def has_Rp(self):

Property: True if there is enough baseline drain-source leakage to warrant having a fixed resistor in parallel with the MOS3 primitive modeling the channel.

def npi(self, x):

Returns the unchanged input if N-channel, else the "inverted" value of the input. "Inverted" means different things for different object types:

  • string: Prepends a '-' onto the string, or removes a '-' if there was one.
  • float or int: Makes the value negative if it was positive, leaves it alone if it was already negative.
  • AV object or anything else: Inverts it.
def npp(self, x, y, forceFirst=False):

Returns the first arg if N channel, else the second one.

Set the keyword forceFirst True to force return of the first arg.

def npr(self, x, y, *args):

Returns the args, except with the first two reversed if P Channel.

API Documentation for pingspice, generated by pydoctor at 2021-09-18 08:41:11.