obsolete labels/variables configuring --enable-nobypass and --enable-predictor
This commit is contained in:
parent
699ba544fa
commit
7adf4d9703
|
|
@ -1,3 +1,7 @@
|
|||
2010-11-13 Dietmar Warning
|
||||
* analysis/dctran.c, devices/*/*load.c: hide obsolete labels and local variables
|
||||
for configuring --enable-nobypass and --enable-predictor
|
||||
|
||||
2010-11-06 Robert Larice
|
||||
* src/frontend/inpcom.c :
|
||||
Thank you Éric Larouche, for the report and fix of a bug concerning
|
||||
|
|
|
|||
|
|
@ -31,6 +31,10 @@ Modified: 2000 AlansFixes
|
|||
#include "cluster.h"
|
||||
#endif
|
||||
|
||||
#ifdef PREDICTOR
|
||||
#include "nipred.h"
|
||||
#endif /* PREDICTOR */
|
||||
|
||||
#ifdef HAS_WINDOWS /* hvogt 10.03.99, nach W. Mues */
|
||||
void SetAnalyse(char * Analyse, int Percent);
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -117,7 +117,9 @@ BJTload(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vtc;
|
||||
double vte;
|
||||
double vtn;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double xjrb;
|
||||
double xjtf;
|
||||
double xmc;
|
||||
|
|
@ -711,7 +713,9 @@ next2:
|
|||
perturbation is being carried out */
|
||||
|
||||
if(SenCond)continue;
|
||||
#ifndef NOBYPASS
|
||||
load:
|
||||
#endif
|
||||
/*
|
||||
* load current excitation vector
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -119,7 +119,9 @@ BJT2load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vtc;
|
||||
double vte;
|
||||
double vtn;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double xjrb;
|
||||
double xjtf;
|
||||
double xmc;
|
||||
|
|
@ -753,7 +755,9 @@ next2:
|
|||
perturbation is being carried out */
|
||||
|
||||
if(SenCond)continue;
|
||||
#ifndef NOBYPASS
|
||||
load:
|
||||
#endif
|
||||
m = here->BJT2m;
|
||||
/*
|
||||
* load current excitation vector
|
||||
|
|
|
|||
|
|
@ -88,7 +88,9 @@ B1load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgdo = 0.0;
|
||||
double vgs = 0.0;
|
||||
double von = 0.0;
|
||||
#ifndef PREDICTOR
|
||||
double xfact = 0.0;
|
||||
#endif
|
||||
double xnrm = 0.0;
|
||||
double xrev = 0.0;
|
||||
int Check = 0;
|
||||
|
|
@ -528,8 +530,9 @@ B1load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
((!(ckt->CKTmode & MODETRANOP)) ||
|
||||
(!(ckt->CKTmode & MODEUIC))) && (!(ckt->CKTmode
|
||||
& MODEINITSMSIG))) goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
if( here->B1mode > 0 ) {
|
||||
|
||||
args[0] = GateDrainOverlapCap;
|
||||
|
|
|
|||
|
|
@ -88,7 +88,9 @@ B2load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgdo;
|
||||
double vgs;
|
||||
double von;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double xnrm;
|
||||
double xrev;
|
||||
int Check;
|
||||
|
|
@ -530,8 +532,9 @@ B2load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
((!(ckt->CKTmode & MODETRANOP)) ||
|
||||
(!(ckt->CKTmode & MODEUIC))) && (!(ckt->CKTmode
|
||||
& MODEINITSMSIG))) goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
if( here->B2mode > 0 ) {
|
||||
|
||||
args[0] = GateDrainOverlapCap;
|
||||
|
|
|
|||
|
|
@ -81,7 +81,10 @@ double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb;
|
|||
double tol;
|
||||
#endif
|
||||
double gcsgb, gcssb, MJ, MJSW, MJSWG;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double qgate=0.0, qbulk=0.0, qdrn=0.0, qsrc, qinoi, cqgate, cqbulk, cqdrn;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb;
|
||||
|
|
@ -126,7 +129,10 @@ double TempRatio, tmp1, tmp2, tmp3, tmp4;
|
|||
double DIBL_Sft, dDIBL_Sft_dVd, Lambda, dLambda_dVg;
|
||||
|
||||
double Idtot, Ibtot;
|
||||
double tempv, a1, ScalingFactor;
|
||||
#ifndef NOBYPASS
|
||||
double tempv;
|
||||
#endif
|
||||
double a1, ScalingFactor;
|
||||
|
||||
double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb;
|
||||
double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb;
|
||||
|
|
@ -2408,8 +2414,9 @@ finished:
|
|||
|
||||
if (!ChargeComputationNeeded)
|
||||
goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
/* NQS begins */
|
||||
if ((here->BSIM3nqsMod) || (here->BSIM3acnqsMod))
|
||||
{ qcheq = -(qbulk + qgate);
|
||||
|
|
|
|||
|
|
@ -146,7 +146,10 @@ int B4SOILoadOMP(B4SOIinstance *here, CKTcircuit *ckt) {
|
|||
double gcbdb, gcbgb, gcbsb, gcbeb, gcbT;
|
||||
double gcedb, gcegb, gcesb, gceeb, gceT;
|
||||
double gcTt, gTtg, gTtb, gTtdp, gTtt, gTtsp;
|
||||
double vbd=0.0, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd=0.0, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vg, vd, vs, vp, ve, vb;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
|
||||
|
|
@ -8409,8 +8412,9 @@ finished: /* returning Values to Calling Routine */
|
|||
|
||||
if (!ChargeComputationNeeded)
|
||||
goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
|
||||
T0 = vgd + DELTA_1;
|
||||
|
|
|
|||
|
|
@ -117,7 +117,10 @@ double gcddb, gcdgb, gcdsb, gcdeb, gcdT;
|
|||
double gcbdb, gcbgb, gcbsb, gcbeb, gcbT;
|
||||
double gcedb, gcegb, gcesb, gceeb, gceT;
|
||||
double gcTt, gTtg, gTtb, gTte, gTtdp, gTtt, gTtsp;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vg, vd, vs, vp, ve, vb;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd, dVfb_dT;
|
||||
|
|
@ -3648,8 +3651,9 @@ if (here->B3SOIDDdebugMod > 2)
|
|||
|
||||
if (!ChargeComputationNeeded)
|
||||
goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
|
||||
T0 = vgd + DELTA_1;
|
||||
|
|
|
|||
|
|
@ -114,7 +114,10 @@ double gcddb, gcdgb, gcdsb, gcdeb, gcdT;
|
|||
double gcbdb, gcbgb, gcbsb, gcbeb, gcbT;
|
||||
double gcedb, gcegb, gcesb, gceeb, gceT;
|
||||
double gcTt, gTtg, gTtb, gTte, gTtdp, gTtt, gTtsp;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vg, vd, vs, vp, ve, vb;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd, dVfb_dT;
|
||||
|
|
@ -2768,8 +2771,9 @@ if (here->B3SOIFDdebugMod > 2)
|
|||
|
||||
if (!ChargeComputationNeeded)
|
||||
goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
|
||||
T0 = vgd + DELTA_1;
|
||||
|
|
|
|||
|
|
@ -110,7 +110,10 @@ double gcddb, gcdgb, gcdsb, gcdeb, gcdT;
|
|||
double gcbdb, gcbgb, gcbsb, gcbeb, gcbT;
|
||||
double gcedb, gcegb, gcesb, gceeb, gceT;
|
||||
double gcTt, gTtg, gTtb, gTtdp, gTtt, gTtsp;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vg, vd, vs, vp, ve, vb;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd, dVfb_dT;
|
||||
|
|
@ -3617,8 +3620,9 @@ for (; model != NULL; model = model->B3SOIPDnextModel)
|
|||
|
||||
if (!ChargeComputationNeeded)
|
||||
goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
|
||||
T0 = vgd + DELTA_1;
|
||||
|
|
|
|||
|
|
@ -42,7 +42,10 @@ double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb;
|
|||
double tol;
|
||||
#endif
|
||||
double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc, cqgate, cqbulk, cqdrn;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd;
|
||||
|
|
@ -75,7 +78,10 @@ double Xdep, dXdep_dVb, lt1, dlt1_dVb, ltw, dltw_dVb, Delt_vth, dDelt_vth_dVb;
|
|||
double Theta0, dTheta0_dVb;
|
||||
double TempRatio, tmp1, tmp2, tmp3, tmp4;
|
||||
double DIBL_Sft, dDIBL_Sft_dVd, Pmos_factor;
|
||||
double tempv, a1;
|
||||
#ifndef NOBYPASS
|
||||
double tempv;
|
||||
#endif
|
||||
double a1;
|
||||
|
||||
double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb;
|
||||
double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb;
|
||||
|
|
@ -1542,8 +1548,9 @@ finished: /* returning Values to Calling Routine */
|
|||
|
||||
if (!ChargeComputationNeeded)
|
||||
goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
|
||||
if (model->BSIM3v0capMod == 1)
|
||||
|
|
|
|||
|
|
@ -45,7 +45,10 @@ double delvbd, delvbs, delvds, delvgd, delvgs;
|
|||
double Vfbeff, dVfbeff_dVg, dVfbeff_dVd, dVfbeff_dVb, V3, V4;
|
||||
double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb;
|
||||
double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW, PhiBSWG, MJSWG;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc, cqgate, cqbulk, cqdrn;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd;
|
||||
|
|
@ -80,7 +83,10 @@ double Xdep, dXdep_dVb, lt1, dlt1_dVb, ltw, dltw_dVb, Delt_vth, dDelt_vth_dVb;
|
|||
double Theta0, dTheta0_dVb;
|
||||
double TempRatio, tmp1, tmp2, tmp3, tmp4;
|
||||
double DIBL_Sft, dDIBL_Sft_dVd, Lambda, dLambda_dVg;
|
||||
double tempv, a1;
|
||||
#ifndef NOBYPASS
|
||||
double tempv;
|
||||
#endif
|
||||
double a1;
|
||||
|
||||
double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb;
|
||||
double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb;
|
||||
|
|
@ -2025,8 +2031,9 @@ finished: /* returning Values to Calling Routine */
|
|||
|
||||
if (!ChargeComputationNeeded)
|
||||
goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
|
||||
if (model->BSIM3v1capMod == 0)
|
||||
|
|
|
|||
|
|
@ -40,7 +40,10 @@ double delvbd, delvbs, delvds, delvgd, delvgs;
|
|||
double Vfbeff, dVfbeff_dVg, dVfbeff_dVd, dVfbeff_dVb, V3, V4;
|
||||
double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb;
|
||||
double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc, cqgate, cqbulk, cqdrn;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd;
|
||||
|
|
@ -73,7 +76,10 @@ double Xdep, dXdep_dVb, lt1, dlt1_dVb, ltw, dltw_dVb, Delt_vth, dDelt_vth_dVb;
|
|||
double Theta0, dTheta0_dVb;
|
||||
double TempRatio, tmp1, tmp2, tmp3, tmp4;
|
||||
double DIBL_Sft, dDIBL_Sft_dVd, Pmos_factor;
|
||||
double tempv, a1;
|
||||
#ifndef NOBYPASS
|
||||
double tempv;
|
||||
#endif
|
||||
double a1;
|
||||
|
||||
double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb;
|
||||
double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb;
|
||||
|
|
|
|||
|
|
@ -40,7 +40,10 @@ double delvbd, delvbs, delvds, delvgd, delvgs;
|
|||
double Vfbeff, dVfbeff_dVg, dVfbeff_dVd, dVfbeff_dVb, V3, V4;
|
||||
double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb;
|
||||
double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW, PhiBSWG, MJSWG;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double qgate=0.0, qbulk=0.0, qdrn=0.0, qsrc=0.0, cqgate=0.0, cqbulk=0.0, cqdrn=0.0;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd;
|
||||
|
|
|
|||
|
|
@ -48,7 +48,10 @@ double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb;
|
|||
double tol;
|
||||
#endif
|
||||
double gcsgb, gcssb, MJ, MJSW, MJSWG;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc;
|
||||
double qinoi, cqgate, cqbulk, cqdrn;
|
||||
double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum;
|
||||
|
|
@ -89,7 +92,10 @@ double Theta0, dTheta0_dVb;
|
|||
double TempRatio, tmp1, tmp2, tmp3, tmp4;
|
||||
double DIBL_Sft, dDIBL_Sft_dVd, Lambda, dLambda_dVg;
|
||||
double Idtot, Ibtot;
|
||||
double tempv, a1, ScalingFactor;
|
||||
#ifndef NOBYPASS
|
||||
double tempv;
|
||||
#endif
|
||||
double a1, ScalingFactor;
|
||||
|
||||
double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb;
|
||||
double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb;
|
||||
|
|
|
|||
|
|
@ -119,7 +119,10 @@ double delvges, delvgms, vgmb;
|
|||
double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb;
|
||||
double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid;
|
||||
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vdbs, vdbd, vsbs, vsbdo, vsbd;
|
||||
double delvdbs, delvdbd, delvsbs;
|
||||
double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct;
|
||||
|
|
@ -3945,8 +3948,9 @@ finished:
|
|||
here->BSIM4cgso = cgso;
|
||||
here->BSIM4qgso = qgso;
|
||||
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
if (here->BSIM4mode > 0)
|
||||
{ if (here->BSIM4trnqsMod == 0)
|
||||
|
|
|
|||
|
|
@ -55,7 +55,10 @@ double delvges, delvgms, vgmb;
|
|||
double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb;
|
||||
double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid;
|
||||
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vdbs, vdbd, vsbs, vsbdo, vsbd;
|
||||
double delvdbs, delvdbd, delvsbs;
|
||||
double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct;
|
||||
|
|
@ -3476,8 +3479,9 @@ finished:
|
|||
here->BSIM4v2cgso = cgso;
|
||||
here->BSIM4v2qgso = qgso;
|
||||
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
if (here->BSIM4v2mode > 0)
|
||||
{ if (here->BSIM4v2trnqsMod == 0)
|
||||
|
|
|
|||
|
|
@ -60,7 +60,10 @@ double delvges, delvgms, vgmb;
|
|||
double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb;
|
||||
double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid;
|
||||
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vdbs, vdbd, vsbs, vsbdo, vsbd;
|
||||
double delvdbs, delvdbd, delvsbs;
|
||||
double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct;
|
||||
|
|
@ -3558,8 +3561,9 @@ finished:
|
|||
here->BSIM4v3cgso = cgso;
|
||||
here->BSIM4v3qgso = qgso;
|
||||
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
if (here->BSIM4v3mode > 0)
|
||||
{ if (here->BSIM4v3trnqsMod == 0)
|
||||
|
|
|
|||
|
|
@ -77,7 +77,10 @@ double delvges, delvgms, vgmb;
|
|||
double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb;
|
||||
double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid;
|
||||
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vdbs, vdbd, vsbs, vsbdo, vsbd;
|
||||
double delvdbs, delvdbd, delvsbs;
|
||||
double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct;
|
||||
|
|
@ -3686,8 +3689,9 @@ finished:
|
|||
here->BSIM4v4cgso = cgso;
|
||||
here->BSIM4v4qgso = qgso;
|
||||
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
if (here->BSIM4v4mode > 0)
|
||||
{ if (here->BSIM4v4trnqsMod == 0)
|
||||
|
|
|
|||
|
|
@ -79,7 +79,10 @@ double delvges, delvgms, vgmb;
|
|||
double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb;
|
||||
double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid;
|
||||
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact;
|
||||
double vbd, vbs, vds, vgb, vgd, vgs, vgdo;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vdbs, vdbd, vsbs, vsbdo, vsbd;
|
||||
double delvdbs, delvdbd, delvsbs;
|
||||
double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct;
|
||||
|
|
@ -3728,8 +3731,9 @@ finished:
|
|||
here->BSIM4v5cgso = cgso;
|
||||
here->BSIM4v5qgso = qgso;
|
||||
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
ag0 = ckt->CKTag[0];
|
||||
if (here->BSIM4v5mode > 0)
|
||||
{ if (here->BSIM4v5trnqsMod == 0)
|
||||
|
|
|
|||
|
|
@ -47,7 +47,9 @@ DIOload(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double geq;
|
||||
double gspr; /* area-scaled conductance */
|
||||
double sarg;
|
||||
#ifndef NOBYPASS
|
||||
double tol; /* temporary for tolerence calculations */
|
||||
#endif
|
||||
double vd; /* current diode voltage */
|
||||
double vdtemp;
|
||||
double vt; /* K t / Q */
|
||||
|
|
@ -324,9 +326,9 @@ next2: *(ckt->CKTstate0 + here->DIOvoltage) = vd;
|
|||
|
||||
if(SenCond) continue;
|
||||
|
||||
|
||||
#ifndef NOBYPASS
|
||||
load:
|
||||
|
||||
#endif
|
||||
/*
|
||||
* load current vector
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -66,7 +66,9 @@ int HFETAload(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs1;
|
||||
double vgd1;
|
||||
double vds1;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double temp;
|
||||
double vt;
|
||||
double vgspp=0;
|
||||
|
|
|
|||
|
|
@ -54,7 +54,9 @@ int HFET2load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs1;
|
||||
double vt;
|
||||
double vto;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
int icheck;
|
||||
int ichk1;
|
||||
int error;
|
||||
|
|
|
|||
|
|
@ -150,7 +150,10 @@ int HSM1load(GENmodel *inModel, register CKTcircuit *ckt)
|
|||
double delvbd, delvbs, delvds, delvgd, delvgs;
|
||||
double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb;
|
||||
double gcgdb, gcggb, gcgsb, gcsdb, gcsgb, gcssb;
|
||||
double geq, xfact;
|
||||
double geq;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vbd, vbs, vcrit, vds, vgb, vgd, vgdo, vgs, von;
|
||||
double qgd, qgs, qgb;
|
||||
double gbbdp, gbbsp, gbspg, gbspdp, gbspb, gbspsp;
|
||||
|
|
@ -981,8 +984,9 @@ int HSM1load(GENmodel *inModel, register CKTcircuit *ckt)
|
|||
/* bulk and channel charge plus overlaps */
|
||||
|
||||
if (!ChargeComputationNeeded) goto line850;
|
||||
|
||||
#ifndef NOBYPASS
|
||||
line755:
|
||||
#endif
|
||||
cgdo = here->HSM1_cgdo;
|
||||
cgso = here->HSM1_cgso;
|
||||
cgbo = here->HSM1_cgbo;
|
||||
|
|
|
|||
|
|
@ -63,7 +63,9 @@ JFETload(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgdt;
|
||||
double vgs;
|
||||
double vgst;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
/* Modification for Sydney University JFET model */
|
||||
double vto;
|
||||
double apart,cpart;
|
||||
|
|
|
|||
|
|
@ -50,7 +50,9 @@ JFET2load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vds;
|
||||
double vgd;
|
||||
double vgs;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
int icheck;
|
||||
int ichk1;
|
||||
int error;
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@ MESload(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs1;
|
||||
double vgst;
|
||||
double vto;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double arg;
|
||||
int icheck;
|
||||
int ichk1;
|
||||
|
|
|
|||
|
|
@ -78,7 +78,9 @@ MESAload(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgdpp = 0.0;
|
||||
double vgs1 = 0.0;
|
||||
double vgd1 = 0.0;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double temp;
|
||||
double vted;
|
||||
double vtes;
|
||||
|
|
|
|||
|
|
@ -66,7 +66,9 @@ MOS1load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs;
|
||||
double von;
|
||||
double vt;
|
||||
#ifndef PREDICTOR
|
||||
double xfact = 0.0;
|
||||
#endif
|
||||
int xnrm;
|
||||
int xrev;
|
||||
double capgs = 0.0; /* total gate-source capacitance */
|
||||
|
|
@ -833,7 +835,9 @@ next1: if(vbs <= -3*vt) {
|
|||
}
|
||||
#endif /*PREDICTOR*/
|
||||
}
|
||||
#ifndef NOBYPASS
|
||||
bypass:
|
||||
#endif
|
||||
if(SenCond) continue;
|
||||
|
||||
if ( (ckt->CKTmode & (MODEINITTRAN)) ||
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@ MOS2load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs;
|
||||
double von;
|
||||
double vt; /* K * T / Q */
|
||||
#ifndef PREDICTOR
|
||||
double xfact = 0.0;
|
||||
#endif
|
||||
double capgs = 0.0; /* total gate-source capacitance */
|
||||
double capgd = 0.0; /* total gate-drain capacitance */
|
||||
double capgb = 0.0; /* total gate-bulk capacitance */
|
||||
|
|
|
|||
|
|
@ -65,7 +65,9 @@ MOS3load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs1;
|
||||
double vgs;
|
||||
double von;
|
||||
#ifndef PREDICTOR
|
||||
double xfact = 0.0;
|
||||
#endif
|
||||
int xnrm;
|
||||
int xrev;
|
||||
double capgs = 0.0; /* total gate-source capacitance */
|
||||
|
|
@ -1153,7 +1155,9 @@ innerline1000:;
|
|||
}
|
||||
#endif /*PREDICTOR*/
|
||||
}
|
||||
#ifndef NOBYPASS
|
||||
bypass:
|
||||
#endif
|
||||
if(SenCond) continue;
|
||||
|
||||
if ( (ckt->CKTmode & (MODEINITTRAN)) ||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,9 @@ MOS6load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs;
|
||||
double von;
|
||||
double vt;
|
||||
#ifndef PREDICTOR
|
||||
double xfact = 0.0;
|
||||
#endif
|
||||
int xnrm;
|
||||
int xrev;
|
||||
double capgs = 0.0; /* total gate-source capacitance */
|
||||
|
|
@ -846,7 +848,9 @@ next2: *(ckt->CKTstate0 + here->MOS6vbs) = vbs;
|
|||
}
|
||||
#endif /*PREDICTOR*/
|
||||
}
|
||||
#ifndef NOBYPASS
|
||||
bypass:
|
||||
#endif
|
||||
if(SenCond) continue;
|
||||
|
||||
if ( (ckt->CKTmode & (MODEINITTRAN)) ||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,9 @@ MOS9load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgs1;
|
||||
double vgs;
|
||||
double von;
|
||||
#ifndef PREDICTOR
|
||||
double xfact = 0.0;
|
||||
#endif
|
||||
int xnrm;
|
||||
int xrev;
|
||||
double capgs = 0.0; /* total gate-source capacitance */
|
||||
|
|
@ -1168,7 +1170,9 @@ next2: *(ckt->CKTstate0 + here->MOS9vbs) = vbs;
|
|||
}
|
||||
#endif /*PREDICTOR*/
|
||||
}
|
||||
#ifndef NOBYPASS
|
||||
bypass:
|
||||
#endif
|
||||
if(SenCond) continue;
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -109,7 +109,9 @@ SOI3load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
double vgbs;
|
||||
double von;
|
||||
double vt;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
int xnrm;
|
||||
int xrev;
|
||||
|
||||
|
|
@ -2137,8 +2139,9 @@ SOI3load(GENmodel *inModel, CKTcircuit *ckt)
|
|||
((!(ckt->CKTmode & MODETRANOP)) ||
|
||||
(!(ckt->CKTmode & MODEUIC))) && (!(ckt->CKTmode
|
||||
& MODEINITSMSIG))) goto bypass2;
|
||||
#ifndef NOBYPASS
|
||||
bypass1:
|
||||
|
||||
#endif
|
||||
if (here->SOI3mode>0) {
|
||||
Frontcapargs[0] = FrontGateDrainOverlapCap;
|
||||
Frontcapargs[1] = FrontGateSourceOverlapCap;
|
||||
|
|
|
|||
|
|
@ -52,7 +52,10 @@ VBICload(GENmodel *inModel, CKTcircuit *ckt)
|
|||
,Qbco,Qbco_Vbc,Ibcp,Ibcp_Vbcp,Iccp,Iccp_Vbep,Iccp_Vbci
|
||||
,Iccp_Vbcp,Irs,Irs_Vrs,Qbcp,Qbcp_Vbcp,SCALE;
|
||||
int iret;
|
||||
double vce, xfact;
|
||||
double vce;
|
||||
#ifndef PREDICTOR
|
||||
double xfact;
|
||||
#endif
|
||||
double vt;
|
||||
double delvbei;
|
||||
double delvbex;
|
||||
|
|
|
|||
Loading…
Reference in New Issue