Prepare for instance parameter 'dtemp', required by commercial PDKs.
Not yet support in the model, silently ignored.
This commit is contained in:
parent
3d5d2390a2
commit
98b84695bf
|
|
@ -55,7 +55,7 @@ IOPR( "delvt0", BSIM4v6_DELVTO, IF_REAL , "Zero bias threshold voltage variat
|
|||
IOP( "mulu0", BSIM4v6_MULU0, IF_REAL, "Low field mobility multiplier"),
|
||||
IOP( "xgw", BSIM4v6_XGW, IF_REAL, "Distance from gate contact center to device edge"),
|
||||
IOP( "ngcon", BSIM4v6_NGCON, IF_REAL, "Number of gate contacts"),
|
||||
|
||||
IOPU("dtemp", BSIM4v6_DTEMP, IF_REAL, "Instance temperature difference"),
|
||||
|
||||
IOP( "trnqsmod", BSIM4v6_TRNQSMOD, IF_INTEGER, "Transient NQS model selector"),
|
||||
IOP( "acnqsmod", BSIM4v6_ACNQSMOD, IF_INTEGER, "AC NQS model selector"),
|
||||
|
|
|
|||
|
|
@ -114,6 +114,9 @@ BSIM4v6instance *here = (BSIM4v6instance*)inst;
|
|||
case BSIM4v6_MULU0:
|
||||
value->rValue = here->BSIM4v6mulu0;
|
||||
return(OK);
|
||||
case BSIM4v6_DTEMP:
|
||||
value->rValue = here->BSIM4v6dtemp;
|
||||
return(OK);
|
||||
case BSIM4v6_XGW:
|
||||
value->rValue = here->BSIM4v6xgw;
|
||||
return(OK);
|
||||
|
|
|
|||
|
|
@ -141,6 +141,10 @@ IFvalue *select)
|
|||
here->BSIM4v6mulu0 = value->rValue;
|
||||
here->BSIM4v6mulu0Given = TRUE;
|
||||
break;
|
||||
case BSIM4v6_DTEMP:
|
||||
here->BSIM4v6dtemp = value->rValue;
|
||||
here->BSIM4v6dtempGiven = TRUE;
|
||||
return(OK);
|
||||
case BSIM4v6_XGW:
|
||||
here->BSIM4v6xgw = value->rValue;
|
||||
here->BSIM4v6xgwGiven = TRUE;
|
||||
|
|
|
|||
|
|
@ -2105,8 +2105,9 @@ BSIM4v6instance **InstArray;
|
|||
here->BSIM4v6xgw = model->BSIM4v6xgw;
|
||||
if (!here->BSIM4v6ngconGiven)
|
||||
here->BSIM4v6ngcon = model->BSIM4v6ngcon;
|
||||
if (!here->BSIM4v6dtempGiven)
|
||||
here->BSIM4v6dtemp = 0;
|
||||
|
||||
|
||||
/* Process instance model selectors, some
|
||||
* may override their global counterparts
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -114,6 +114,7 @@ typedef struct sBSIM4v6instance
|
|||
double BSIM4v6mulu0;
|
||||
double BSIM4v6xgw;
|
||||
double BSIM4v6ngcon;
|
||||
double BSIM4v6dtemp;
|
||||
|
||||
/* added here to account stress effect instance dependence */
|
||||
double BSIM4v6u0temp;
|
||||
|
|
@ -297,6 +298,7 @@ typedef struct sBSIM4v6instance
|
|||
unsigned BSIM4v6mulu0Given :1;
|
||||
unsigned BSIM4v6xgwGiven :1;
|
||||
unsigned BSIM4v6ngconGiven :1;
|
||||
unsigned BSIM4v6dtempGiven : 1;
|
||||
unsigned BSIM4v6icVDSGiven :1;
|
||||
unsigned BSIM4v6icVGSGiven :1;
|
||||
unsigned BSIM4v6icVBSGiven :1;
|
||||
|
|
@ -2713,6 +2715,7 @@ typedef struct sBSIM4v6model
|
|||
#define BSIM4v6_SC 37
|
||||
#define BSIM4v6_M 38
|
||||
#define BSIM4v6_MULU0 39
|
||||
#define BSIM4v6_DTEMP 40
|
||||
|
||||
/* Global parameters */
|
||||
#define BSIM4v6_MOD_TEMPEOT 65
|
||||
|
|
|
|||
Loading…
Reference in New Issue