b3mask.c

来自「ngspice又一个电子CAD仿真软件代码.功能更全」· C语言 代码 · 共 1,270 行 · 第 1/3 页

C
1,270
字号
/**** BSIM3v3.2.4, Released by Xuemei Xi 12/21/2001 ****//********** * Copyright 2001 Regents of the University of California. All rights reserved. * File: b3mask.c of BSIM3v3.2.4 * Author: 1995 Min-Chie Jeng and Mansun Chan. * Author: 1997-1999 Weidong Liu. * Author: 2001  Xuemei Xi * Modified by Paolo Nenzi 2002 and Dietmar Warning 2003 **********/#include "ngspice.h"#include "ifsim.h"#include "cktdefs.h"#include "devdefs.h"#include "bsim3def.h"#include "sperror.h"#include "suffix.h"intBSIM3mAsk (CKTcircuit *ckt, GENmodel *inst, int which, IFvalue *value){    BSIM3model *model = (BSIM3model *)inst;    switch(which)     {   case BSIM3_MOD_MOBMOD:            value->iValue = model->BSIM3mobMod;             return(OK);        case BSIM3_MOD_PARAMCHK:            value->iValue = model->BSIM3paramChk;             return(OK);        case BSIM3_MOD_BINUNIT:            value->iValue = model->BSIM3binUnit;             return(OK);        case BSIM3_MOD_CAPMOD:            value->iValue = model->BSIM3capMod;             return(OK);        case BSIM3_MOD_NOIMOD:            value->iValue = model->BSIM3noiMod;             return(OK);        case BSIM3_MOD_ACMMOD:            value->iValue = model->BSIM3acmMod;             return(OK);        case  BSIM3_MOD_VERSION :          value->sValue = model->BSIM3version;            return(OK);        case  BSIM3_MOD_TOX :          value->rValue = model->BSIM3tox;            return(OK);        case  BSIM3_MOD_TOXM :          value->rValue = model->BSIM3toxm;            return(OK);        case  BSIM3_MOD_CDSC :          value->rValue = model->BSIM3cdsc;            return(OK);        case  BSIM3_MOD_CDSCB :          value->rValue = model->BSIM3cdscb;            return(OK);        case  BSIM3_MOD_CDSCD :          value->rValue = model->BSIM3cdscd;            return(OK);        case  BSIM3_MOD_CIT :          value->rValue = model->BSIM3cit;            return(OK);        case  BSIM3_MOD_NFACTOR :          value->rValue = model->BSIM3nfactor;            return(OK);        case BSIM3_MOD_XJ:            value->rValue = model->BSIM3xj;            return(OK);        case BSIM3_MOD_VSAT:            value->rValue = model->BSIM3vsat;            return(OK);        case BSIM3_MOD_AT:            value->rValue = model->BSIM3at;            return(OK);        case BSIM3_MOD_A0:            value->rValue = model->BSIM3a0;            return(OK);        case BSIM3_MOD_AGS:            value->rValue = model->BSIM3ags;            return(OK);        case BSIM3_MOD_A1:            value->rValue = model->BSIM3a1;            return(OK);        case BSIM3_MOD_A2:            value->rValue = model->BSIM3a2;            return(OK);        case BSIM3_MOD_KETA:            value->rValue = model->BSIM3keta;            return(OK);           case BSIM3_MOD_NSUB:            value->rValue = model->BSIM3nsub;            return(OK);        case BSIM3_MOD_NPEAK:            value->rValue = model->BSIM3npeak;            return(OK);        case BSIM3_MOD_NGATE:            value->rValue = model->BSIM3ngate;            return(OK);        case BSIM3_MOD_GAMMA1:            value->rValue = model->BSIM3gamma1;            return(OK);        case BSIM3_MOD_GAMMA2:            value->rValue = model->BSIM3gamma2;            return(OK);        case BSIM3_MOD_VBX:            value->rValue = model->BSIM3vbx;            return(OK);        case BSIM3_MOD_VBM:            value->rValue = model->BSIM3vbm;            return(OK);        case BSIM3_MOD_XT:            value->rValue = model->BSIM3xt;            return(OK);        case  BSIM3_MOD_K1:          value->rValue = model->BSIM3k1;            return(OK);        case  BSIM3_MOD_KT1:          value->rValue = model->BSIM3kt1;            return(OK);        case  BSIM3_MOD_KT1L:          value->rValue = model->BSIM3kt1l;            return(OK);        case  BSIM3_MOD_KT2 :          value->rValue = model->BSIM3kt2;            return(OK);        case  BSIM3_MOD_K2 :          value->rValue = model->BSIM3k2;            return(OK);        case  BSIM3_MOD_K3:          value->rValue = model->BSIM3k3;            return(OK);        case  BSIM3_MOD_K3B:          value->rValue = model->BSIM3k3b;            return(OK);        case  BSIM3_MOD_W0:          value->rValue = model->BSIM3w0;            return(OK);        case  BSIM3_MOD_NLX:          value->rValue = model->BSIM3nlx;            return(OK);        case  BSIM3_MOD_DVT0 :                          value->rValue = model->BSIM3dvt0;            return(OK);        case  BSIM3_MOD_DVT1 :                       value->rValue = model->BSIM3dvt1;            return(OK);        case  BSIM3_MOD_DVT2 :                       value->rValue = model->BSIM3dvt2;            return(OK);        case  BSIM3_MOD_DVT0W :                          value->rValue = model->BSIM3dvt0w;            return(OK);        case  BSIM3_MOD_DVT1W :                       value->rValue = model->BSIM3dvt1w;            return(OK);        case  BSIM3_MOD_DVT2W :                       value->rValue = model->BSIM3dvt2w;            return(OK);        case  BSIM3_MOD_DROUT :                     value->rValue = model->BSIM3drout;            return(OK);        case  BSIM3_MOD_DSUB :                     value->rValue = model->BSIM3dsub;            return(OK);        case BSIM3_MOD_VTH0:            value->rValue = model->BSIM3vth0;             return(OK);        case BSIM3_MOD_UA:            value->rValue = model->BSIM3ua;             return(OK);        case BSIM3_MOD_UA1:            value->rValue = model->BSIM3ua1;             return(OK);        case BSIM3_MOD_UB:            value->rValue = model->BSIM3ub;              return(OK);        case BSIM3_MOD_UB1:            value->rValue = model->BSIM3ub1;              return(OK);        case BSIM3_MOD_UC:            value->rValue = model->BSIM3uc;             return(OK);        case BSIM3_MOD_UC1:            value->rValue = model->BSIM3uc1;             return(OK);        case BSIM3_MOD_U0:            value->rValue = model->BSIM3u0;            return(OK);        case BSIM3_MOD_UTE:            value->rValue = model->BSIM3ute;            return(OK);        case BSIM3_MOD_VOFF:            value->rValue = model->BSIM3voff;            return(OK);        case BSIM3_MOD_DELTA:            value->rValue = model->BSIM3delta;            return(OK);        case BSIM3_MOD_RDSW:            value->rValue = model->BSIM3rdsw;             return(OK);                     case BSIM3_MOD_PRWG:            value->rValue = model->BSIM3prwg;             return(OK);                     case BSIM3_MOD_PRWB:            value->rValue = model->BSIM3prwb;             return(OK);                     case BSIM3_MOD_PRT:            value->rValue = model->BSIM3prt;             return(OK);                      case BSIM3_MOD_ETA0:            value->rValue = model->BSIM3eta0;             return(OK);                       case BSIM3_MOD_ETAB:            value->rValue = model->BSIM3etab;             return(OK);                       case BSIM3_MOD_PCLM:            value->rValue = model->BSIM3pclm;             return(OK);                       case BSIM3_MOD_PDIBL1:            value->rValue = model->BSIM3pdibl1;             return(OK);                       case BSIM3_MOD_PDIBL2:            value->rValue = model->BSIM3pdibl2;             return(OK);                       case BSIM3_MOD_PDIBLB:            value->rValue = model->BSIM3pdiblb;             return(OK);                       case BSIM3_MOD_PSCBE1:            value->rValue = model->BSIM3pscbe1;             return(OK);                       case BSIM3_MOD_PSCBE2:            value->rValue = model->BSIM3pscbe2;             return(OK);                       case BSIM3_MOD_PVAG:            value->rValue = model->BSIM3pvag;             return(OK);                       case BSIM3_MOD_WR:            value->rValue = model->BSIM3wr;            return(OK);        case BSIM3_MOD_DWG:            value->rValue = model->BSIM3dwg;            return(OK);        case BSIM3_MOD_DWB:            value->rValue = model->BSIM3dwb;            return(OK);        case BSIM3_MOD_B0:            value->rValue = model->BSIM3b0;            return(OK);        case BSIM3_MOD_B1:            value->rValue = model->BSIM3b1;            return(OK);        case BSIM3_MOD_ALPHA0:            value->rValue = model->BSIM3alpha0;            return(OK);        case BSIM3_MOD_ALPHA1:            value->rValue = model->BSIM3alpha1;            return(OK);        case BSIM3_MOD_BETA0:            value->rValue = model->BSIM3beta0;            return(OK);        case BSIM3_MOD_IJTH:            value->rValue = model->BSIM3ijth;            return(OK);        case BSIM3_MOD_VFB:            value->rValue = model->BSIM3vfb;            return(OK);        case BSIM3_MOD_ELM:            value->rValue = model->BSIM3elm;            return(OK);        case BSIM3_MOD_CGSL:            value->rValue = model->BSIM3cgsl;            return(OK);        case BSIM3_MOD_CGDL:            value->rValue = model->BSIM3cgdl;            return(OK);        case BSIM3_MOD_CKAPPA:            value->rValue = model->BSIM3ckappa;            return(OK);        case BSIM3_MOD_CF:            value->rValue = model->BSIM3cf;            return(OK);        case BSIM3_MOD_CLC:            value->rValue = model->BSIM3clc;            return(OK);        case BSIM3_MOD_CLE:            value->rValue = model->BSIM3cle;            return(OK);        case BSIM3_MOD_DWC:            value->rValue = model->BSIM3dwc;            return(OK);        case BSIM3_MOD_DLC:            value->rValue = model->BSIM3dlc;            return(OK);        case BSIM3_MOD_VFBCV:            value->rValue = model->BSIM3vfbcv;             return(OK);        case BSIM3_MOD_ACDE:            value->rValue = model->BSIM3acde;            return(OK);        case BSIM3_MOD_MOIN:            value->rValue = model->BSIM3moin;            return(OK);        case BSIM3_MOD_NOFF:            value->rValue = model->BSIM3noff;            return(OK);        case BSIM3_MOD_VOFFCV:            value->rValue = model->BSIM3voffcv;            return(OK);        case BSIM3_MOD_TCJ:            value->rValue = model->BSIM3tcj;            return(OK);        case BSIM3_MOD_TPB:            value->rValue = model->BSIM3tpb;            return(OK);        case BSIM3_MOD_TCJSW:            value->rValue = model->BSIM3tcjsw;            return(OK);        case BSIM3_MOD_TPBSW:            value->rValue = model->BSIM3tpbsw;            return(OK);        case BSIM3_MOD_TCJSWG:            value->rValue = model->BSIM3tcjswg;            return(OK);        case BSIM3_MOD_TPBSWG:            value->rValue = model->BSIM3tpbswg;            return(OK);	/* acm model */	case BSIM3_MOD_HDIF:	    value->rValue = model->BSIM3hdif; 	    return(OK);	case BSIM3_MOD_LDIF:	    value->rValue = model->BSIM3ldif; 	    return(OK);	case BSIM3_MOD_LD:	    value->rValue = model->BSIM3ld; 	    return(OK);	case BSIM3_MOD_RD:	    value->rValue = model->BSIM3rd; 	    return(OK);	case BSIM3_MOD_RS:	    value->rValue = model->BSIM3rs; 	    return(OK);	case BSIM3_MOD_RDC:	    value->rValue = model->BSIM3rdc; 	    return(OK);	case BSIM3_MOD_RSC:	    value->rValue = model->BSIM3rsc; 	    return(OK);	/* Length dependence */        case  BSIM3_MOD_LCDSC :          value->rValue = model->BSIM3lcdsc;            return(OK);        case  BSIM3_MOD_LCDSCB :          value->rValue = model->BSIM3lcdscb;            return(OK);        case  BSIM3_MOD_LCDSCD :          value->rValue = model->BSIM3lcdscd;            return(OK);        case  BSIM3_MOD_LCIT :          value->rValue = model->BSIM3lcit;            return(OK);        case  BSIM3_MOD_LNFACTOR :          value->rValue = model->BSIM3lnfactor;            return(OK);        case BSIM3_MOD_LXJ:            value->rValue = model->BSIM3lxj;            return(OK);        case BSIM3_MOD_LVSAT:            value->rValue = model->BSIM3lvsat;            return(OK);        case BSIM3_MOD_LAT:            value->rValue = model->BSIM3lat;            return(OK);        case BSIM3_MOD_LA0:            value->rValue = model->BSIM3la0;            return(OK);        case BSIM3_MOD_LAGS:            value->rValue = model->BSIM3lags;            return(OK);        case BSIM3_MOD_LA1:            value->rValue = model->BSIM3la1;            return(OK);        case BSIM3_MOD_LA2:            value->rValue = model->BSIM3la2;            return(OK);        case BSIM3_MOD_LKETA:            value->rValue = model->BSIM3lketa;            return(OK);           case BSIM3_MOD_LNSUB:            value->rValue = model->BSIM3lnsub;            return(OK);        case BSIM3_MOD_LNPEAK:            value->rValue = model->BSIM3lnpeak;            return(OK);        case BSIM3_MOD_LNGATE:            value->rValue = model->BSIM3lngate;            return(OK);        case BSIM3_MOD_LGAMMA1:            value->rValue = model->BSIM3lgamma1;            return(OK);        case BSIM3_MOD_LGAMMA2:            value->rValue = model->BSIM3lgamma2;            return(OK);        case BSIM3_MOD_LVBX:            value->rValue = model->BSIM3lvbx;            return(OK);        case BSIM3_MOD_LVBM:            value->rValue = model->BSIM3lvbm;            return(OK);        case BSIM3_MOD_LXT:            value->rValue = model->BSIM3lxt;            return(OK);        case  BSIM3_MOD_LK1:          value->rValue = model->BSIM3lk1;            return(OK);        case  BSIM3_MOD_LKT1:

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?