Browse Source

correct multiplier m

pre-master-46
dwarning 15 years ago
parent
commit
7debdf4ec6
  1. 4
      ChangeLog
  2. 22
      src/spicelib/devices/bsim3soi/b4soiask.c
  3. 42
      src/spicelib/devices/bsim4/b4ask.c
  4. 37
      src/spicelib/devices/bsim4v2/b4v2ask.c
  5. 37
      src/spicelib/devices/bsim4v3/b4v3ask.c
  6. 38
      src/spicelib/devices/bsim4v4/b4v4ask.c
  7. 43
      src/spicelib/devices/bsim4v5/b4v5ask.c

4
ChangeLog

@ -1,3 +1,7 @@
2010-12-18 Dietmar Warning
* devices/bsim*/*ask.c: correct multiplier m for certain currents, conductances, charges
and capacitances if they are requested by plotting and printing, e.g. @m1[gds]
2010-12-18 Holger Vogt 2010-12-18 Holger Vogt
* rnorrexp.c, randnumb.c, 1-f-code.c, main.c, * rnorrexp.c, randnumb.c, 1-f-code.c, main.c,
fteext.h, 1-f-code.h, fteext.h, 1-f-code.h,

22
src/spicelib/devices/bsim3soi/b4soiask.c

@ -251,9 +251,11 @@ B4SOIinstance *here = (B4SOIinstance*)inst;
case B4SOI_SOURCECONDUCT: case B4SOI_SOURCECONDUCT:
value->rValue = here->B4SOIsourceConductance; value->rValue = here->B4SOIsourceConductance;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_DRAINCONDUCT: case B4SOI_DRAINCONDUCT:
value->rValue = here->B4SOIdrainConductance; value->rValue = here->B4SOIdrainConductance;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_VBD: case B4SOI_VBD:
value->rValue = *(ckt->CKTstate0 + here->B4SOIvbd); value->rValue = *(ckt->CKTstate0 + here->B4SOIvbd);
@ -272,54 +274,68 @@ B4SOIinstance *here = (B4SOIinstance*)inst;
return(OK); return(OK);
case B4SOI_CD: case B4SOI_CD:
value->rValue = here->B4SOIcdrain; value->rValue = here->B4SOIcdrain;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_IBS: case B4SOI_IBS:
value->rValue = here->B4SOIibs; value->rValue = here->B4SOIibs;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_IBD: case B4SOI_IBD:
value->rValue = here->B4SOIibd; value->rValue = here->B4SOIibd;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_ISUB: case B4SOI_ISUB:
value->rValue = here->B4SOIiii; value->rValue = here->B4SOIiii;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_IGIDL: case B4SOI_IGIDL:
value->rValue = here->B4SOIigidl; value->rValue = here->B4SOIigidl;
return(OK); return(OK);
case B4SOI_IGISL:
case B4SOI_IGISL:
value->rValue = here->B4SOIigisl; value->rValue = here->B4SOIigisl;
return(OK); return(OK);
case B4SOI_IGS: case B4SOI_IGS:
value->rValue = here->B4SOIIgs; value->rValue = here->B4SOIIgs;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_IGD: case B4SOI_IGD:
value->rValue = here->B4SOIIgd; value->rValue = here->B4SOIIgd;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_IGB: case B4SOI_IGB:
value->rValue = here->B4SOIIgb; value->rValue = here->B4SOIIgb;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_IGCS: case B4SOI_IGCS:
value->rValue = here->B4SOIIgcs; value->rValue = here->B4SOIIgcs;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_IGCD: case B4SOI_IGCD:
value->rValue = here->B4SOIIgcd; value->rValue = here->B4SOIIgcd;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_GM: case B4SOI_GM:
value->rValue = here->B4SOIgm; value->rValue = here->B4SOIgm;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_GMID: case B4SOI_GMID:
value->rValue = here->B4SOIgm/here->B4SOIcd; value->rValue = here->B4SOIgm/here->B4SOIcd;
return(OK); return(OK);
case B4SOI_GDS: case B4SOI_GDS:
value->rValue = here->B4SOIgds; value->rValue = here->B4SOIgds;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_GMBS: case B4SOI_GMBS:
value->rValue = here->B4SOIgmbs; value->rValue = here->B4SOIgmbs;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_GBD: case B4SOI_GBD:
value->rValue = here->B4SOIgjdb; value->rValue = here->B4SOIgjdb;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_GBS: case B4SOI_GBS:
value->rValue = here->B4SOIgjsb; value->rValue = here->B4SOIgjsb;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_CQB: case B4SOI_CQB:
value->rValue = *(ckt->CKTstate0 + here->B4SOIcqb); value->rValue = *(ckt->CKTstate0 + here->B4SOIcqb);
@ -332,15 +348,19 @@ B4SOIinstance *here = (B4SOIinstance*)inst;
return(OK); return(OK);
case B4SOI_CBDB: case B4SOI_CBDB:
value->rValue = here->B4SOIcbdb; value->rValue = here->B4SOIcbdb;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_CBSB: case B4SOI_CBSB:
value->rValue = here->B4SOIcbsb; value->rValue = here->B4SOIcbsb;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_VON: case B4SOI_VON:
value->rValue = here->B4SOIvon; value->rValue = here->B4SOIvon;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_VDSAT: case B4SOI_VDSAT:
value->rValue = here->B4SOIvdsat; value->rValue = here->B4SOIvdsat;
value->rValue *= here->B4SOIm;
return(OK); return(OK);
case B4SOI_QBS: case B4SOI_QBS:
value->rValue = *(ckt->CKTstate0 + here->B4SOIqbs); value->rValue = *(ckt->CKTstate0 + here->B4SOIqbs);

42
src/spicelib/devices/bsim4/b4ask.c

@ -179,9 +179,11 @@ BSIM4instance *here = (BSIM4instance*)inst;
return(OK); return(OK);
case BSIM4_SOURCECONDUCT: case BSIM4_SOURCECONDUCT:
value->rValue = here->BSIM4sourceConductance; value->rValue = here->BSIM4sourceConductance;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_DRAINCONDUCT: case BSIM4_DRAINCONDUCT:
value->rValue = here->BSIM4drainConductance; value->rValue = here->BSIM4drainConductance;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_VBD: case BSIM4_VBD:
value->rValue = *(ckt->CKTstate0 + here->BSIM4vbd); value->rValue = *(ckt->CKTstate0 + here->BSIM4vbd);
@ -197,54 +199,71 @@ BSIM4instance *here = (BSIM4instance*)inst;
return(OK); return(OK);
case BSIM4_CD: case BSIM4_CD:
value->rValue = here->BSIM4cd; value->rValue = here->BSIM4cd;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CBS: case BSIM4_CBS:
value->rValue = here->BSIM4cbs; value->rValue = here->BSIM4cbs;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CBD: case BSIM4_CBD:
value->rValue = here->BSIM4cbd; value->rValue = here->BSIM4cbd;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CSUB: case BSIM4_CSUB:
value->rValue = here->BSIM4csub; value->rValue = here->BSIM4csub;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_QINV: case BSIM4_QINV:
value->rValue = here-> BSIM4qinv; value->rValue = here-> BSIM4qinv;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_IGIDL: case BSIM4_IGIDL:
value->rValue = here->BSIM4Igidl; value->rValue = here->BSIM4Igidl;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_IGISL: case BSIM4_IGISL:
value->rValue = here->BSIM4Igisl; value->rValue = here->BSIM4Igisl;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_IGS: case BSIM4_IGS:
value->rValue = here->BSIM4Igs; value->rValue = here->BSIM4Igs;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_IGD: case BSIM4_IGD:
value->rValue = here->BSIM4Igd; value->rValue = here->BSIM4Igd;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_IGB: case BSIM4_IGB:
value->rValue = here->BSIM4Igb; value->rValue = here->BSIM4Igb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_IGCS: case BSIM4_IGCS:
value->rValue = here->BSIM4Igcs; value->rValue = here->BSIM4Igcs;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_IGCD: case BSIM4_IGCD:
value->rValue = here->BSIM4Igcd; value->rValue = here->BSIM4Igcd;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_GM: case BSIM4_GM:
value->rValue = here->BSIM4gm; value->rValue = here->BSIM4gm;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_GDS: case BSIM4_GDS:
value->rValue = here->BSIM4gds; value->rValue = here->BSIM4gds;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_GMBS: case BSIM4_GMBS:
value->rValue = here->BSIM4gmbs; value->rValue = here->BSIM4gmbs;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_GBD: case BSIM4_GBD:
value->rValue = here->BSIM4gbd; value->rValue = here->BSIM4gbd;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_GBS: case BSIM4_GBS:
value->rValue = here->BSIM4gbs; value->rValue = here->BSIM4gbs;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
/* case BSIM4_QB: /* case BSIM4_QB:
value->rValue = *(ckt->CKTstate0 + here->BSIM4qb); value->rValue = *(ckt->CKTstate0 + here->BSIM4qb);
@ -269,78 +288,101 @@ BSIM4instance *here = (BSIM4instance*)inst;
return(OK); */ return(OK); */
case BSIM4_QB: case BSIM4_QB:
value->rValue = here->BSIM4qbulk; value->rValue = here->BSIM4qbulk;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_QG: case BSIM4_QG:
value->rValue = here->BSIM4qgate; value->rValue = here->BSIM4qgate;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_QS: case BSIM4_QS:
value->rValue = here->BSIM4qsrc; value->rValue = here->BSIM4qsrc;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_QD: case BSIM4_QD:
value->rValue = here->BSIM4qdrn; value->rValue = here->BSIM4qdrn;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_QDEF: case BSIM4_QDEF:
value->rValue = *(ckt->CKTstate0 + here->BSIM4qdef); value->rValue = *(ckt->CKTstate0 + here->BSIM4qdef);
return(OK); return(OK);
case BSIM4_GCRG: case BSIM4_GCRG:
value->rValue = here->BSIM4gcrg; value->rValue = here->BSIM4gcrg;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_GTAU: case BSIM4_GTAU:
value->rValue = here->BSIM4gtau; value->rValue = here->BSIM4gtau;
return(OK); return(OK);
case BSIM4_CGGB: case BSIM4_CGGB:
value->rValue = here->BSIM4cggb; value->rValue = here->BSIM4cggb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CGDB: case BSIM4_CGDB:
value->rValue = here->BSIM4cgdb; value->rValue = here->BSIM4cgdb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CGSB: case BSIM4_CGSB:
value->rValue = here->BSIM4cgsb; value->rValue = here->BSIM4cgsb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CDGB: case BSIM4_CDGB:
value->rValue = here->BSIM4cdgb; value->rValue = here->BSIM4cdgb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CDDB: case BSIM4_CDDB:
value->rValue = here->BSIM4cddb; value->rValue = here->BSIM4cddb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CDSB: case BSIM4_CDSB:
value->rValue = here->BSIM4cdsb; value->rValue = here->BSIM4cdsb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CBGB: case BSIM4_CBGB:
value->rValue = here->BSIM4cbgb; value->rValue = here->BSIM4cbgb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CBDB: case BSIM4_CBDB:
value->rValue = here->BSIM4cbdb; value->rValue = here->BSIM4cbdb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CBSB: case BSIM4_CBSB:
value->rValue = here->BSIM4cbsb; value->rValue = here->BSIM4cbsb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CSGB: case BSIM4_CSGB:
value->rValue = here->BSIM4csgb; value->rValue = here->BSIM4csgb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CSDB: case BSIM4_CSDB:
value->rValue = here->BSIM4csdb; value->rValue = here->BSIM4csdb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CSSB: case BSIM4_CSSB:
value->rValue = here->BSIM4cssb; value->rValue = here->BSIM4cssb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CGBB: case BSIM4_CGBB:
value->rValue = here->BSIM4cgbb; value->rValue = here->BSIM4cgbb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CDBB: case BSIM4_CDBB:
value->rValue = here->BSIM4cdbb; value->rValue = here->BSIM4cdbb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CSBB: case BSIM4_CSBB:
value->rValue = here->BSIM4csbb; value->rValue = here->BSIM4csbb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CBBB: case BSIM4_CBBB:
value->rValue = here->BSIM4cbbb; value->rValue = here->BSIM4cbbb;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CAPBD: case BSIM4_CAPBD:
value->rValue = here->BSIM4capbd; value->rValue = here->BSIM4capbd;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_CAPBS: case BSIM4_CAPBS:
value->rValue = here->BSIM4capbs; value->rValue = here->BSIM4capbs;
value->rValue *= here->BSIM4m;
return(OK); return(OK);
case BSIM4_VON: case BSIM4_VON:
value->rValue = here->BSIM4von; value->rValue = here->BSIM4von;

37
src/spicelib/devices/bsim4v2/b4v2ask.c

@ -146,9 +146,11 @@ BSIM4v2instance *here = (BSIM4v2instance*)inst;
return(OK); return(OK);
case BSIM4v2_SOURCECONDUCT: case BSIM4v2_SOURCECONDUCT:
value->rValue = here->BSIM4v2sourceConductance; value->rValue = here->BSIM4v2sourceConductance;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_DRAINCONDUCT: case BSIM4v2_DRAINCONDUCT:
value->rValue = here->BSIM4v2drainConductance; value->rValue = here->BSIM4v2drainConductance;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_VBD: case BSIM4v2_VBD:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v2vbd); value->rValue = *(ckt->CKTstate0 + here->BSIM4v2vbd);
@ -164,54 +166,71 @@ BSIM4v2instance *here = (BSIM4v2instance*)inst;
return(OK); return(OK);
case BSIM4v2_CD: case BSIM4v2_CD:
value->rValue = here->BSIM4v2cd; value->rValue = here->BSIM4v2cd;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CBS: case BSIM4v2_CBS:
value->rValue = here->BSIM4v2cbs; value->rValue = here->BSIM4v2cbs;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CBD: case BSIM4v2_CBD:
value->rValue = here->BSIM4v2cbd; value->rValue = here->BSIM4v2cbd;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CSUB: case BSIM4v2_CSUB:
value->rValue = here->BSIM4v2csub; value->rValue = here->BSIM4v2csub;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_QINV: case BSIM4v2_QINV:
value->rValue = here-> BSIM4v2qinv; value->rValue = here-> BSIM4v2qinv;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_IGIDL: case BSIM4v2_IGIDL:
value->rValue = here->BSIM4v2Igidl; value->rValue = here->BSIM4v2Igidl;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_IGISL: case BSIM4v2_IGISL:
value->rValue = here->BSIM4v2Igisl; value->rValue = here->BSIM4v2Igisl;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_IGS: case BSIM4v2_IGS:
value->rValue = here->BSIM4v2Igs; value->rValue = here->BSIM4v2Igs;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_IGD: case BSIM4v2_IGD:
value->rValue = here->BSIM4v2Igd; value->rValue = here->BSIM4v2Igd;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_IGB: case BSIM4v2_IGB:
value->rValue = here->BSIM4v2Igb; value->rValue = here->BSIM4v2Igb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_IGCS: case BSIM4v2_IGCS:
value->rValue = here->BSIM4v2Igcs; value->rValue = here->BSIM4v2Igcs;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_IGCD: case BSIM4v2_IGCD:
value->rValue = here->BSIM4v2Igcd; value->rValue = here->BSIM4v2Igcd;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_GM: case BSIM4v2_GM:
value->rValue = here->BSIM4v2gm; value->rValue = here->BSIM4v2gm;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_GDS: case BSIM4v2_GDS:
value->rValue = here->BSIM4v2gds; value->rValue = here->BSIM4v2gds;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_GMBS: case BSIM4v2_GMBS:
value->rValue = here->BSIM4v2gmbs; value->rValue = here->BSIM4v2gmbs;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_GBD: case BSIM4v2_GBD:
value->rValue = here->BSIM4v2gbd; value->rValue = here->BSIM4v2gbd;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_GBS: case BSIM4v2_GBS:
value->rValue = here->BSIM4v2gbs; value->rValue = here->BSIM4v2gbs;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_QB: case BSIM4v2_QB:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v2qb); value->rValue = *(ckt->CKTstate0 + here->BSIM4v2qb);
@ -236,57 +255,75 @@ BSIM4v2instance *here = (BSIM4v2instance*)inst;
return(OK); return(OK);
case BSIM4v2_CGGB: case BSIM4v2_CGGB:
value->rValue = here->BSIM4v2cggb; value->rValue = here->BSIM4v2cggb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CGDB: case BSIM4v2_CGDB:
value->rValue = here->BSIM4v2cgdb; value->rValue = here->BSIM4v2cgdb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CGSB: case BSIM4v2_CGSB:
value->rValue = here->BSIM4v2cgsb; value->rValue = here->BSIM4v2cgsb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CDGB: case BSIM4v2_CDGB:
value->rValue = here->BSIM4v2cdgb; value->rValue = here->BSIM4v2cdgb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CDDB: case BSIM4v2_CDDB:
value->rValue = here->BSIM4v2cddb; value->rValue = here->BSIM4v2cddb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CDSB: case BSIM4v2_CDSB:
value->rValue = here->BSIM4v2cdsb; value->rValue = here->BSIM4v2cdsb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CBGB: case BSIM4v2_CBGB:
value->rValue = here->BSIM4v2cbgb; value->rValue = here->BSIM4v2cbgb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CBDB: case BSIM4v2_CBDB:
value->rValue = here->BSIM4v2cbdb; value->rValue = here->BSIM4v2cbdb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CBSB: case BSIM4v2_CBSB:
value->rValue = here->BSIM4v2cbsb; value->rValue = here->BSIM4v2cbsb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CSGB: case BSIM4v2_CSGB:
value->rValue = here->BSIM4v2csgb; value->rValue = here->BSIM4v2csgb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CSDB: case BSIM4v2_CSDB:
value->rValue = here->BSIM4v2csdb; value->rValue = here->BSIM4v2csdb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CSSB: case BSIM4v2_CSSB:
value->rValue = here->BSIM4v2cssb; value->rValue = here->BSIM4v2cssb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CGBB: case BSIM4v2_CGBB:
value->rValue = here->BSIM4v2cgbb; value->rValue = here->BSIM4v2cgbb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CDBB: case BSIM4v2_CDBB:
value->rValue = here->BSIM4v2cdbb; value->rValue = here->BSIM4v2cdbb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CSBB: case BSIM4v2_CSBB:
value->rValue = here->BSIM4v2csbb; value->rValue = here->BSIM4v2csbb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CBBB: case BSIM4v2_CBBB:
value->rValue = here->BSIM4v2cbbb; value->rValue = here->BSIM4v2cbbb;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CAPBD: case BSIM4v2_CAPBD:
value->rValue = here->BSIM4v2capbd; value->rValue = here->BSIM4v2capbd;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_CAPBS: case BSIM4v2_CAPBS:
value->rValue = here->BSIM4v2capbs; value->rValue = here->BSIM4v2capbs;
value->rValue *= here->BSIM4v2m;
return(OK); return(OK);
case BSIM4v2_VON: case BSIM4v2_VON:
value->rValue = here->BSIM4v2von; value->rValue = here->BSIM4v2von;

37
src/spicelib/devices/bsim4v3/b4v3ask.c

@ -155,9 +155,11 @@ BSIM4v3instance *here = (BSIM4v3instance*)inst;
return(OK); return(OK);
case BSIM4v3_SOURCECONDUCT: case BSIM4v3_SOURCECONDUCT:
value->rValue = here->BSIM4v3sourceConductance; value->rValue = here->BSIM4v3sourceConductance;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_DRAINCONDUCT: case BSIM4v3_DRAINCONDUCT:
value->rValue = here->BSIM4v3drainConductance; value->rValue = here->BSIM4v3drainConductance;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_VBD: case BSIM4v3_VBD:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v3vbd); value->rValue = *(ckt->CKTstate0 + here->BSIM4v3vbd);
@ -173,54 +175,71 @@ BSIM4v3instance *here = (BSIM4v3instance*)inst;
return(OK); return(OK);
case BSIM4v3_CD: case BSIM4v3_CD:
value->rValue = here->BSIM4v3cd; value->rValue = here->BSIM4v3cd;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CBS: case BSIM4v3_CBS:
value->rValue = here->BSIM4v3cbs; value->rValue = here->BSIM4v3cbs;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CBD: case BSIM4v3_CBD:
value->rValue = here->BSIM4v3cbd; value->rValue = here->BSIM4v3cbd;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CSUB: case BSIM4v3_CSUB:
value->rValue = here->BSIM4v3csub; value->rValue = here->BSIM4v3csub;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_QINV: case BSIM4v3_QINV:
value->rValue = here-> BSIM4v3qinv; value->rValue = here-> BSIM4v3qinv;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_IGIDL: case BSIM4v3_IGIDL:
value->rValue = here->BSIM4v3Igidl; value->rValue = here->BSIM4v3Igidl;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_IGISL: case BSIM4v3_IGISL:
value->rValue = here->BSIM4v3Igisl; value->rValue = here->BSIM4v3Igisl;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_IGS: case BSIM4v3_IGS:
value->rValue = here->BSIM4v3Igs; value->rValue = here->BSIM4v3Igs;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_IGD: case BSIM4v3_IGD:
value->rValue = here->BSIM4v3Igd; value->rValue = here->BSIM4v3Igd;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_IGB: case BSIM4v3_IGB:
value->rValue = here->BSIM4v3Igb; value->rValue = here->BSIM4v3Igb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_IGCS: case BSIM4v3_IGCS:
value->rValue = here->BSIM4v3Igcs; value->rValue = here->BSIM4v3Igcs;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_IGCD: case BSIM4v3_IGCD:
value->rValue = here->BSIM4v3Igcd; value->rValue = here->BSIM4v3Igcd;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_GM: case BSIM4v3_GM:
value->rValue = here->BSIM4v3gm; value->rValue = here->BSIM4v3gm;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_GDS: case BSIM4v3_GDS:
value->rValue = here->BSIM4v3gds; value->rValue = here->BSIM4v3gds;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_GMBS: case BSIM4v3_GMBS:
value->rValue = here->BSIM4v3gmbs; value->rValue = here->BSIM4v3gmbs;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_GBD: case BSIM4v3_GBD:
value->rValue = here->BSIM4v3gbd; value->rValue = here->BSIM4v3gbd;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_GBS: case BSIM4v3_GBS:
value->rValue = here->BSIM4v3gbs; value->rValue = here->BSIM4v3gbs;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_QB: case BSIM4v3_QB:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v3qb); value->rValue = *(ckt->CKTstate0 + here->BSIM4v3qb);
@ -245,57 +264,75 @@ BSIM4v3instance *here = (BSIM4v3instance*)inst;
return(OK); return(OK);
case BSIM4v3_CGGB: case BSIM4v3_CGGB:
value->rValue = here->BSIM4v3cggb; value->rValue = here->BSIM4v3cggb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CGDB: case BSIM4v3_CGDB:
value->rValue = here->BSIM4v3cgdb; value->rValue = here->BSIM4v3cgdb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CGSB: case BSIM4v3_CGSB:
value->rValue = here->BSIM4v3cgsb; value->rValue = here->BSIM4v3cgsb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CDGB: case BSIM4v3_CDGB:
value->rValue = here->BSIM4v3cdgb; value->rValue = here->BSIM4v3cdgb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CDDB: case BSIM4v3_CDDB:
value->rValue = here->BSIM4v3cddb; value->rValue = here->BSIM4v3cddb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CDSB: case BSIM4v3_CDSB:
value->rValue = here->BSIM4v3cdsb; value->rValue = here->BSIM4v3cdsb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CBGB: case BSIM4v3_CBGB:
value->rValue = here->BSIM4v3cbgb; value->rValue = here->BSIM4v3cbgb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CBDB: case BSIM4v3_CBDB:
value->rValue = here->BSIM4v3cbdb; value->rValue = here->BSIM4v3cbdb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CBSB: case BSIM4v3_CBSB:
value->rValue = here->BSIM4v3cbsb; value->rValue = here->BSIM4v3cbsb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CSGB: case BSIM4v3_CSGB:
value->rValue = here->BSIM4v3csgb; value->rValue = here->BSIM4v3csgb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CSDB: case BSIM4v3_CSDB:
value->rValue = here->BSIM4v3csdb; value->rValue = here->BSIM4v3csdb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CSSB: case BSIM4v3_CSSB:
value->rValue = here->BSIM4v3cssb; value->rValue = here->BSIM4v3cssb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CGBB: case BSIM4v3_CGBB:
value->rValue = here->BSIM4v3cgbb; value->rValue = here->BSIM4v3cgbb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CDBB: case BSIM4v3_CDBB:
value->rValue = here->BSIM4v3cdbb; value->rValue = here->BSIM4v3cdbb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CSBB: case BSIM4v3_CSBB:
value->rValue = here->BSIM4v3csbb; value->rValue = here->BSIM4v3csbb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CBBB: case BSIM4v3_CBBB:
value->rValue = here->BSIM4v3cbbb; value->rValue = here->BSIM4v3cbbb;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CAPBD: case BSIM4v3_CAPBD:
value->rValue = here->BSIM4v3capbd; value->rValue = here->BSIM4v3capbd;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_CAPBS: case BSIM4v3_CAPBS:
value->rValue = here->BSIM4v3capbs; value->rValue = here->BSIM4v3capbs;
value->rValue *= here->BSIM4v3m;
return(OK); return(OK);
case BSIM4v3_VON: case BSIM4v3_VON:
value->rValue = here->BSIM4v3von; value->rValue = here->BSIM4v3von;

38
src/spicelib/devices/bsim4v4/b4v4ask.c

@ -172,54 +172,71 @@ BSIM4v4instance *here = (BSIM4v4instance*)inst;
return(OK); return(OK);
case BSIM4v4_CD: case BSIM4v4_CD:
value->rValue = here->BSIM4v4cd; value->rValue = here->BSIM4v4cd;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CBS: case BSIM4v4_CBS:
value->rValue = here->BSIM4v4cbs; value->rValue = here->BSIM4v4cbs;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CBD: case BSIM4v4_CBD:
value->rValue = here->BSIM4v4cbd; value->rValue = here->BSIM4v4cbd;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CSUB: case BSIM4v4_CSUB:
value->rValue = here->BSIM4v4csub; value->rValue = here->BSIM4v4csub;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_QINV: case BSIM4v4_QINV:
value->rValue = here-> BSIM4v4qinv; value->rValue = here-> BSIM4v4qinv;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_IGIDL: case BSIM4v4_IGIDL:
value->rValue = here->BSIM4v4Igidl; value->rValue = here->BSIM4v4Igidl;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_IGISL: case BSIM4v4_IGISL:
value->rValue = here->BSIM4v4Igisl; value->rValue = here->BSIM4v4Igisl;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_IGS: case BSIM4v4_IGS:
value->rValue = here->BSIM4v4Igs; value->rValue = here->BSIM4v4Igs;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_IGD: case BSIM4v4_IGD:
value->rValue = here->BSIM4v4Igd; value->rValue = here->BSIM4v4Igd;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_IGB: case BSIM4v4_IGB:
value->rValue = here->BSIM4v4Igb; value->rValue = here->BSIM4v4Igb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_IGCS: case BSIM4v4_IGCS:
value->rValue = here->BSIM4v4Igcs; value->rValue = here->BSIM4v4Igcs;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_IGCD: case BSIM4v4_IGCD:
value->rValue = here->BSIM4v4Igcd; value->rValue = here->BSIM4v4Igcd;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_GM: case BSIM4v4_GM:
value->rValue = here->BSIM4v4gm; value->rValue = here->BSIM4v4gm;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_GDS: case BSIM4v4_GDS:
value->rValue = here->BSIM4v4gds; value->rValue = here->BSIM4v4gds;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_GMBS: case BSIM4v4_GMBS:
value->rValue = here->BSIM4v4gmbs; value->rValue = here->BSIM4v4gmbs;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_GBD: case BSIM4v4_GBD:
value->rValue = here->BSIM4v4gbd; value->rValue = here->BSIM4v4gbd;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_GBS: case BSIM4v4_GBS:
value->rValue = here->BSIM4v4gbs; value->rValue = here->BSIM4v4gbs;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
/* case BSIM4v4_QB: /* case BSIM4v4_QB:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v4qb); value->rValue = *(ckt->CKTstate0 + here->BSIM4v4qb);
@ -244,69 +261,90 @@ BSIM4v4instance *here = (BSIM4v4instance*)inst;
return(OK); */ return(OK); */
case BSIM4v4_QB: case BSIM4v4_QB:
value->rValue = here->BSIM4v4qbulk; value->rValue = here->BSIM4v4qbulk;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_QG: case BSIM4v4_QG:
value->rValue = here->BSIM4v4qgate; value->rValue = here->BSIM4v4qgate;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_QS: case BSIM4v4_QS:
value->rValue = here->BSIM4v4qsrc; value->rValue = here->BSIM4v4qsrc;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_QD: case BSIM4v4_QD:
value->rValue = here->BSIM4v4qdrn; value->rValue = here->BSIM4v4qdrn;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CGGB: case BSIM4v4_CGGB:
value->rValue = here->BSIM4v4cggb; value->rValue = here->BSIM4v4cggb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CGDB: case BSIM4v4_CGDB:
value->rValue = here->BSIM4v4cgdb; value->rValue = here->BSIM4v4cgdb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CGSB: case BSIM4v4_CGSB:
value->rValue = here->BSIM4v4cgsb; value->rValue = here->BSIM4v4cgsb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CDGB: case BSIM4v4_CDGB:
value->rValue = here->BSIM4v4cdgb; value->rValue = here->BSIM4v4cdgb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CDDB: case BSIM4v4_CDDB:
value->rValue = here->BSIM4v4cddb; value->rValue = here->BSIM4v4cddb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CDSB: case BSIM4v4_CDSB:
value->rValue = here->BSIM4v4cdsb; value->rValue = here->BSIM4v4cdsb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CBGB: case BSIM4v4_CBGB:
value->rValue = here->BSIM4v4cbgb; value->rValue = here->BSIM4v4cbgb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CBDB: case BSIM4v4_CBDB:
value->rValue = here->BSIM4v4cbdb; value->rValue = here->BSIM4v4cbdb;
return(OK); return(OK);
case BSIM4v4_CBSB: case BSIM4v4_CBSB:
value->rValue = here->BSIM4v4cbsb; value->rValue = here->BSIM4v4cbsb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CSGB: case BSIM4v4_CSGB:
value->rValue = here->BSIM4v4csgb; value->rValue = here->BSIM4v4csgb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CSDB: case BSIM4v4_CSDB:
value->rValue = here->BSIM4v4csdb; value->rValue = here->BSIM4v4csdb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CSSB: case BSIM4v4_CSSB:
value->rValue = here->BSIM4v4cssb; value->rValue = here->BSIM4v4cssb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CGBB: case BSIM4v4_CGBB:
value->rValue = here->BSIM4v4cgbb; value->rValue = here->BSIM4v4cgbb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CDBB: case BSIM4v4_CDBB:
value->rValue = here->BSIM4v4cdbb; value->rValue = here->BSIM4v4cdbb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CSBB: case BSIM4v4_CSBB:
value->rValue = here->BSIM4v4csbb; value->rValue = here->BSIM4v4csbb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CBBB: case BSIM4v4_CBBB:
value->rValue = here->BSIM4v4cbbb; value->rValue = here->BSIM4v4cbbb;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CAPBD: case BSIM4v4_CAPBD:
value->rValue = here->BSIM4v4capbd; value->rValue = here->BSIM4v4capbd;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_CAPBS: case BSIM4v4_CAPBS:
value->rValue = here->BSIM4v4capbs; value->rValue = here->BSIM4v4capbs;
value->rValue *= here->BSIM4v4m;
return(OK); return(OK);
case BSIM4v4_VON: case BSIM4v4_VON:
value->rValue = here->BSIM4v4von; value->rValue = here->BSIM4v4von;

43
src/spicelib/devices/bsim4v5/b4v5ask.c

@ -177,9 +177,11 @@ BSIM4v5instance *here = (BSIM4v5instance*)inst;
return(OK); return(OK);
case BSIM4v5_SOURCECONDUCT: case BSIM4v5_SOURCECONDUCT:
value->rValue = here->BSIM4v5sourceConductance; value->rValue = here->BSIM4v5sourceConductance;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_DRAINCONDUCT: case BSIM4v5_DRAINCONDUCT:
value->rValue = here->BSIM4v5drainConductance; value->rValue = here->BSIM4v5drainConductance;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_VBD: case BSIM4v5_VBD:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v5vbd); value->rValue = *(ckt->CKTstate0 + here->BSIM4v5vbd);
@ -195,54 +197,71 @@ BSIM4v5instance *here = (BSIM4v5instance*)inst;
return(OK); return(OK);
case BSIM4v5_CD: case BSIM4v5_CD:
value->rValue = here->BSIM4v5cd; value->rValue = here->BSIM4v5cd;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CBS: case BSIM4v5_CBS:
value->rValue = here->BSIM4v5cbs; value->rValue = here->BSIM4v5cbs;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CBD: case BSIM4v5_CBD:
value->rValue = here->BSIM4v5cbd; value->rValue = here->BSIM4v5cbd;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CSUB: case BSIM4v5_CSUB:
value->rValue = here->BSIM4v5csub; value->rValue = here->BSIM4v5csub;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_QINV: case BSIM4v5_QINV:
value->rValue = here-> BSIM4v5qinv; value->rValue = here-> BSIM4v5qinv;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_IGIDL: case BSIM4v5_IGIDL:
value->rValue = here->BSIM4v5Igidl; value->rValue = here->BSIM4v5Igidl;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_IGISL: case BSIM4v5_IGISL:
value->rValue = here->BSIM4v5Igisl; value->rValue = here->BSIM4v5Igisl;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_IGS: case BSIM4v5_IGS:
value->rValue = here->BSIM4v5Igs; value->rValue = here->BSIM4v5Igs;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_IGD: case BSIM4v5_IGD:
value->rValue = here->BSIM4v5Igd; value->rValue = here->BSIM4v5Igd;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_IGB: case BSIM4v5_IGB:
value->rValue = here->BSIM4v5Igb; value->rValue = here->BSIM4v5Igb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_IGCS: case BSIM4v5_IGCS:
value->rValue = here->BSIM4v5Igcs; value->rValue = here->BSIM4v5Igcs;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_IGCD: case BSIM4v5_IGCD:
value->rValue = here->BSIM4v5Igcd; value->rValue = here->BSIM4v5Igcd;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_GM: case BSIM4v5_GM:
value->rValue = here->BSIM4v5gm; value->rValue = here->BSIM4v5gm;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_GDS: case BSIM4v5_GDS:
value->rValue = here->BSIM4v5gds; value->rValue = here->BSIM4v5gds;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_GMBS: case BSIM4v5_GMBS:
value->rValue = here->BSIM4v5gmbs; value->rValue = here->BSIM4v5gmbs;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_GBD: case BSIM4v5_GBD:
value->rValue = here->BSIM4v5gbd; value->rValue = here->BSIM4v5gbd;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_GBS: case BSIM4v5_GBS:
value->rValue = here->BSIM4v5gbs; value->rValue = here->BSIM4v5gbs;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
/* case BSIM4v5_QB: /* case BSIM4v5_QB:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v5qb); value->rValue = *(ckt->CKTstate0 + here->BSIM4v5qb);
@ -267,78 +286,102 @@ BSIM4v5instance *here = (BSIM4v5instance*)inst;
return(OK); */ return(OK); */
case BSIM4v5_QB: case BSIM4v5_QB:
value->rValue = here->BSIM4v5qbulk; value->rValue = here->BSIM4v5qbulk;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_QG: case BSIM4v5_QG:
value->rValue = here->BSIM4v5qgate; value->rValue = here->BSIM4v5qgate;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_QS: case BSIM4v5_QS:
value->rValue = here->BSIM4v5qsrc; value->rValue = here->BSIM4v5qsrc;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_QD: case BSIM4v5_QD:
value->rValue = here->BSIM4v5qdrn; value->rValue = here->BSIM4v5qdrn;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_QDEF: case BSIM4v5_QDEF:
value->rValue = *(ckt->CKTstate0 + here->BSIM4v5qdef); value->rValue = *(ckt->CKTstate0 + here->BSIM4v5qdef);
return(OK); return(OK);
case BSIM4v5_GCRG: case BSIM4v5_GCRG:
value->rValue = here->BSIM4v5gcrg; value->rValue = here->BSIM4v5gcrg;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_GTAU: case BSIM4v5_GTAU:
value->rValue = here->BSIM4v5gtau; value->rValue = here->BSIM4v5gtau;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CGGB: case BSIM4v5_CGGB:
value->rValue = here->BSIM4v5cggb; value->rValue = here->BSIM4v5cggb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CGDB: case BSIM4v5_CGDB:
value->rValue = here->BSIM4v5cgdb; value->rValue = here->BSIM4v5cgdb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CGSB: case BSIM4v5_CGSB:
value->rValue = here->BSIM4v5cgsb; value->rValue = here->BSIM4v5cgsb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CDGB: case BSIM4v5_CDGB:
value->rValue = here->BSIM4v5cdgb; value->rValue = here->BSIM4v5cdgb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CDDB: case BSIM4v5_CDDB:
value->rValue = here->BSIM4v5cddb; value->rValue = here->BSIM4v5cddb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CDSB: case BSIM4v5_CDSB:
value->rValue = here->BSIM4v5cdsb; value->rValue = here->BSIM4v5cdsb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CBGB: case BSIM4v5_CBGB:
value->rValue = here->BSIM4v5cbgb; value->rValue = here->BSIM4v5cbgb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CBDB: case BSIM4v5_CBDB:
value->rValue = here->BSIM4v5cbdb; value->rValue = here->BSIM4v5cbdb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CBSB: case BSIM4v5_CBSB:
value->rValue = here->BSIM4v5cbsb; value->rValue = here->BSIM4v5cbsb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CSGB: case BSIM4v5_CSGB:
value->rValue = here->BSIM4v5csgb; value->rValue = here->BSIM4v5csgb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CSDB: case BSIM4v5_CSDB:
value->rValue = here->BSIM4v5csdb; value->rValue = here->BSIM4v5csdb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CSSB: case BSIM4v5_CSSB:
value->rValue = here->BSIM4v5cssb; value->rValue = here->BSIM4v5cssb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CGBB: case BSIM4v5_CGBB:
value->rValue = here->BSIM4v5cgbb; value->rValue = here->BSIM4v5cgbb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CDBB: case BSIM4v5_CDBB:
value->rValue = here->BSIM4v5cdbb; value->rValue = here->BSIM4v5cdbb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CSBB: case BSIM4v5_CSBB:
value->rValue = here->BSIM4v5csbb; value->rValue = here->BSIM4v5csbb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CBBB: case BSIM4v5_CBBB:
value->rValue = here->BSIM4v5cbbb; value->rValue = here->BSIM4v5cbbb;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CAPBD: case BSIM4v5_CAPBD:
value->rValue = here->BSIM4v5capbd; value->rValue = here->BSIM4v5capbd;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_CAPBS: case BSIM4v5_CAPBS:
value->rValue = here->BSIM4v5capbs; value->rValue = here->BSIM4v5capbs;
value->rValue *= here->BSIM4v5m;
return(OK); return(OK);
case BSIM4v5_VON: case BSIM4v5_VON:
value->rValue = here->BSIM4v5von; value->rValue = here->BSIM4v5von;

Loading…
Cancel
Save