From 5bb69f77d11a75042a1b1d4bf1f97f8dac91abee Mon Sep 17 00:00:00 2001 From: dwarning Date: Sun, 18 May 2014 15:16:41 +0200 Subject: [PATCH] hisimhv1, hisim2, clean up unused variables --- src/spicelib/devices/hisim2/hsm2acld.c | 7 +- src/spicelib/devices/hisim2/hsm2eval.c | 34 ++++----- src/spicelib/devices/hisim2/hsm2ld.c | 8 +-- src/spicelib/devices/hisimhv1/hsmhveval.c | 70 ++++++++++--------- .../devices/hisimhv1/hsmhveval_qover.h | 14 ++-- src/spicelib/devices/hisimhv1/hsmhvld.c | 12 ++-- src/spicelib/devices/hisimhv1/hsmhvtemp.c | 2 +- .../devices/hisimhv1/hsmhvtemp_eval.h | 4 +- 8 files changed, 81 insertions(+), 70 deletions(-) diff --git a/src/spicelib/devices/hisim2/hsm2acld.c b/src/spicelib/devices/hisim2/hsm2acld.c index 6f1c58a7a..28182d33e 100644 --- a/src/spicelib/devices/hisim2/hsm2acld.c +++ b/src/spicelib/devices/hisim2/hsm2acld.c @@ -59,7 +59,10 @@ int HSM2acLoad( double grg = 0.0, pxcbdb_i = 0.0, pxcbsb_i = 0.0; double Qi, Qi_dVgs, Qi_dVbs, Qi_dVds ; - double Qb, Qb_dVgs, Qb_dVbs, Qb_dVds ; +#ifdef DEBUG_HISIM2CGG + double Qb ; +#endif + double Qb_dVgs, Qb_dVbs, Qb_dVds ; double tau ; double taub ; double Xd, Xd_dVgs, Xd_dVbs, Xd_dVds ; @@ -95,7 +98,9 @@ int HSM2acLoad( Qi_dVds = here->HSM2_Qi_dVds ; Qi_dVbs = here->HSM2_Qi_dVbs ; +#ifdef DEBUG_HISIM2CGG Qb = here->HSM2_Qb ; +#endif Qb_dVgs = here->HSM2_Qb_dVgs ; Qb_dVds = here->HSM2_Qb_dVds ; Qb_dVbs = here->HSM2_Qb_dVbs ; diff --git a/src/spicelib/devices/hisim2/hsm2eval.c b/src/spicelib/devices/hisim2/hsm2eval.c index 9a68b08b6..b3b7c9dc5 100644 --- a/src/spicelib/devices/hisim2/hsm2eval.c +++ b/src/spicelib/devices/hisim2/hsm2eval.c @@ -898,17 +898,17 @@ int HSM2evaluate double Chi_A=0.0, Chi_A_dVxb=0.0, Chi_A_dVgb =0.0 ; double Chi_B=0.0, Chi_B_dVxb=0.0, Chi_B_dVgb =0.0 ; double Chi_1=0.0, Chi_1_dVxb=0.0, Chi_1_dVgb =0.0 ; - double psi_B=0.0, arg_B =0.0 ; +/* double psi_B=0.0, arg_B =0.0 ;*/ double psi=0.0, psi_dVgb=0.0, psi_dVxb =0.0 ; double Ps0_iniA_dVxb=0.0, Ps0_iniA_dVgb =0.0 ; - double Ps0_iniB_dVxb=0.0, Ps0_iniB_dVgb =0.0 ; +/* double Ps0_iniB_dVxb=0.0 , Ps0_iniB_dVgb =0.0 ;*/ double Psa_dVxb=0.0, Psa_dVgb=0.0, Ps0LD_dVxb=0.0, Ps0LD_dVgb =0.0 ; - double fs02_dVxb=0.0, fs02_dVgb =0.0 ; + double /*fs02_dVxb=0.0,*/ fs02_dVgb =0.0 ; /* SCE LOOP */ double A =0.0, A_dVgs=0.0, A_dVds=0.0, A_dVbs =0.0 ; int NNN =0 ; - double PS0_SCE=0 , PS0_SCE_dVgs = 0 , PS0_SCE_dVds = 0 , PS0_SCE_dVbs = 0 ; +/* double PS0_SCE=0 , PS0_SCE_dVgs = 0 , PS0_SCE_dVds = 0 , PS0_SCE_dVbs = 0 ;*/ double PS0Z_SCE=0 , PS0Z_SCE_dVgs = 0 , PS0Z_SCE_dVds = 0 , PS0Z_SCE_dVbs = 0 ; /* double arg0 = 0.01 , arg1 = 0.04 ; */ double arg0 = 0.01 ; @@ -1563,11 +1563,11 @@ int HSM2evaluate /**************************/ /* initial value for SCE LOOP */ - PS0_SCE = Ps0_ini ; +/* PS0_SCE = Ps0_ini ; PS0_SCE_dVds = Ps0_ini_dVds ; PS0_SCE_dVgs = Ps0_ini_dVgs ; PS0_SCE_dVbs = Ps0_ini_dVbs ; - +*/ PS0Z_SCE = Ps0_ini ; PS0Z_SCE_dVds = Ps0_ini_dVds ; PS0Z_SCE_dVgs = Ps0_ini_dVgs ; @@ -2818,12 +2818,12 @@ int HSM2evaluate PS0Z_SCE_dVbs = Ps0z_dVbs ; PS0Z_SCE_dVds = Ps0z_dVds ; PS0Z_SCE_dVgs = Ps0z_dVgs ; - +/* PS0_SCE = PS0Z_SCE - Pzadd ; PS0_SCE_dVbs = Ps0_dVbs ; PS0_SCE_dVds = Ps0_dVds ; PS0_SCE_dVgs = Ps0_dVgs ; - +*/ NNN += 1 ; if( ( fabs(delta_PS0Z_SCE) > PS0_SCE_tol @@ -3321,12 +3321,12 @@ int HSM2evaluate PS0Z_SCE_dVbs = Ps0z_dVbs ; PS0Z_SCE_dVds = Ps0z_dVds ; PS0Z_SCE_dVgs = Ps0z_dVgs ; - +/* PS0_SCE = PS0Z_SCE - Pzadd ; PS0_SCE_dVbs = Ps0_dVbs ; PS0_SCE_dVds = Ps0_dVds ; PS0_SCE_dVgs = Ps0_dVgs ; - +*/ NNN += 1 ; @@ -3775,12 +3775,12 @@ start_of_loopl: PS0Z_SCE_dVbs = Ps0z_dVbs ; PS0Z_SCE_dVds = Ps0z_dVds ; PS0Z_SCE_dVgs = Ps0z_dVgs ; - +/* PS0_SCE = PS0Z_SCE - Pzadd ; PS0_SCE_dVbs = Ps0_dVbs ; PS0_SCE_dVds = Ps0_dVds ; PS0_SCE_dVgs = Ps0_dVgs ; - +*/ NNN += 1 ; if( ( fabs(delta_PS0Z_SCE) > PS0_SCE_tol @@ -5623,17 +5623,17 @@ start_of_mobility: psi_dVxb -= Chi_1_dVxb ; psi += beta*0.1 ; - +/* psi_B = psi; - arg_B = psi*psi/(gamma*T0); + arg_B = psi*psi/(gamma*T0);*/ Chi_B = log(gamma*T0 + psi*psi) - log(cnst1over*T0) + beta*Vxbgmtcl; Chi_B_dVgb = 2.0*psi*psi_dVgb/ (gamma*T0 + psi*psi); Chi_B_dVxb = (gamma_dVxb*T0+2.0*psi*psi_dVxb)/(gamma*T0+psi*psi) + beta*Vxbgmtcl_dVxbgmt; Ps0_iniB = Chi_B/beta - Vxbgmtcl ; - Ps0_iniB_dVgb = Chi_B_dVgb/beta; +/* Ps0_iniB_dVgb = Chi_B_dVgb/beta; Ps0_iniB_dVxb = Chi_B_dVxb/beta- Vxbgmtcl_dVxbgmt; - +*/ /* construction of Ps0LD by taking Ps0_iniB as an upper limit of Ps0_iniA * @@ -5861,7 +5861,7 @@ start_of_mobility: fs01_dVds = Ps0LD_dVds * fs01_dPs0 ; fs01_dVgs = Ps0LD_dVgb * fs01_dPs0 ; fs02_dVbs = Ps0LD_dVxb * fs02_dPs0 + fs02_dVbs ; - fs02_dVxb = Ps0LD_dVds * fs02_dPs0 ; +/* fs02_dVxb = Ps0LD_dVds * fs02_dPs0 ;*/ fs02_dVgb = Ps0LD_dVgb * fs02_dPs0 ; /*-----------------------------------------------------------* diff --git a/src/spicelib/devices/hisim2/hsm2ld.c b/src/spicelib/devices/hisim2/hsm2ld.c index 84644307e..ac2cbb7a4 100644 --- a/src/spicelib/devices/hisim2/hsm2ld.c +++ b/src/spicelib/devices/hisim2/hsm2ld.c @@ -181,7 +181,7 @@ int HSM2load( { register HSM2model *model = (HSM2model*)inModel; register HSM2instance *here; - HSM2binningParam *pParam; +/* HSM2binningParam *pParam;*/ double cbhat=0.0, cdrain=0.0, cdhat=0.0, cdreq=0.0, cgbhat=0.0, cgshat=0.0, cgdhat=0.0 ; double Ibtot=0.0, Idtot=0.0, Igbtot=0.0, Igstot=0.0, Igdtot=0.0 ; double ceq=0.0, ceqbd=0.0, ceqbs=0.0, ceqqb=0.0, ceqqd=0.0, ceqqg=0.0 ; @@ -204,7 +204,7 @@ int HSM2load( double ivds=0.0, ivgs=0.0, ivbs=0.0 ; double gjbs=0.0, gjbd=0.0, gcdbdb=0.0, gcsbsb=0.0, gcbbb=0.0, gcdbb=0.0, gcsbb=0.0, grg=0.0 ; double vdbs=0.0, vsbs=0.0, vdbd=0.0, delvdbs=0.0, delvsbs=0.0, delvdbd=0.0 ; - double vges=0.0, vged=0.0, delvges=0.0, delvged=0.0, vgedo=0.0 ; + double vges=0.0, vged=0.0, delvges=0.0,/* delvged=0.0,*/ vgedo=0.0 ; double vsbdo=0.0, vsbd=0.0; double vbs_jct=0.0, vbd_jct=0.0, delvbs_jct=0.0, delvbd_jct=0.0 ; int ByPass=0, Check=0, Check1=0, Check2=0 ; @@ -241,7 +241,7 @@ tm0 = gtodsecld() ; for (here = model->HSM2instances; here != NULL ; here = here->HSM2nextInstance) { - pParam = &here->pParam ; +/* pParam = &here->pParam ;*/ showPhysVal = 0; Check=1; ByPass = 0; @@ -369,7 +369,7 @@ tm0 = gtodsecld() ; delvsbs = vsbs - *(ckt->CKTstate0 + here->HSM2vsbs); delvdbd = vdbd - *(ckt->CKTstate0 + here->HSM2vdbd); delvgd = vgd - vgdo; - delvged = vged - vgedo; +/* delvged = vged - vgedo;*/ delvbd_jct = (!here->HSM2_corbnet) ? delvbd : delvdbd; delvbs_jct = (!here->HSM2_corbnet) ? delvbs : delvsbs; diff --git a/src/spicelib/devices/hisimhv1/hsmhveval.c b/src/spicelib/devices/hisimhv1/hsmhveval.c index 5a6c8a098..d083ff320 100644 --- a/src/spicelib/devices/hisimhv1/hsmhveval.c +++ b/src/spicelib/devices/hisimhv1/hsmhveval.c @@ -465,7 +465,7 @@ int HSMHVevaluate double Ps0 =0.0, Ps0_dVbs =0.0, Ps0_dVds =0.0, Ps0_dVgs =0.0, Ps0_dT =0.0 ; double Ps0_ini =0.0 ; double Ps0_iniA =0.0, Ps0_iniA_dVxb =0.0, Ps0_iniA_dVgb =0.0, Ps0_iniA_dT =0.0 ; - double Ps0_iniB =0.0, Ps0_iniB_dVxb =0.0, Ps0_iniB_dVgb =0.0, Ps0_iniB_dT =0.0 ; + double Ps0_iniB =0.0;/*, Ps0_iniB_dVxb =0.0, Ps0_iniB_dVgb =0.0, Ps0_iniB_dT =0.0 ;*/ /* Psl : surface potential at the drain side */ double Psl =0.0, Psl_dVbs =0.0, Psl_dVds =0.0, Psl_dVgs =0.0, Psl_dT =0.0 ; double Psl_lim =0.0, dPlim =0.0 ; @@ -542,7 +542,7 @@ int HSMHVevaluate double costi0 =0.0 ; double costi1 =0.0, costi1_dT =0.0 ; double costi3 =0.0, costi3_dVb =0.0, costi3_dVd =0.0, costi3_dVg =0.0, costi3_dT =0.0 ; - double costi3_dVb_c3 =0.0, costi3_dVd_c3 =0.0, costi3_dVg_c3 =0.0 ; + double costi3_dVb_c3 =0.0, costi3_dVd_c3 =0.0, costi3_dVg_c3 =0.0;/*, costi3_dT_c3 =0.0 ;*/ double costi4 =0.0, costi4_dT =0.0 ; double costi5 =0.0, costi5_dT =0.0 ; double costi6 =0.0, costi6_dT =0.0 ; @@ -583,8 +583,8 @@ int HSMHVevaluate double bs12=0.0, bs12_dVb=0.0, bs12_dVd =0.0, bs12_dVg =0.0, bs12_dT =0.0 ; double Qbmm=0.0, Qbmm_dVb=0.0, Qbmm_dVd =0.0, Qbmm_dVg =0.0, Qbmm_dT =0.0 ; double dqb=0.0, dqb_dVb=0.0, dqb_dVg=0.0, dqb_dVd =0.0, dqb_dT =0.0 ; - double Vdx=0.0, Vdx_dVbs=0.0 ; - double Vdx2=0.0, Vdx2_dVbs=0.0 ; + double Vdx=0.0, Vdx_dVbs=0.0;/*, Vdx_dT=0.0 ;*/ + double Vdx2=0.0, Vdx2_dVbs=0.0;/*, Vdx2_dT=0.0 ;*/ double Pbsum=0.0, Pbsum_dVb=0.0, Pbsum_dVd=0.0, Pbsum_dVg =0.0, Pbsum_dT =0.0 ; double sqrt_Pbsum =0.0 ; /* Poly-Depletion Effect */ @@ -710,6 +710,7 @@ int HSMHVevaluate /* PART-4 (junction diode) */ double Ibs =0.0, Gbs =0.0, Gbse =0.0, Ibs_dT =0.0 ; double Ibd =0.0, Gbd =0.0, Gbde =0.0, Ibd_dT =0.0 ; +/* double Nvtm =0.0 ;*/ /* junction capacitance */ double Qbs =0.0, Capbs =0.0, Capbse =0.0, Qbs_dT =0.0 ; double Qbd =0.0, Capbd =0.0, Capbde =0.0, Qbd_dT =0.0 ; @@ -778,9 +779,9 @@ int HSMHVevaluate double Qovs =0.0, Qovs_dVbs =0.0, Qovs_dVds =0.0, Qovs_dVgs =0.0, Qovs_dT =0.0 ; double QbuLD =0.0, QbuLD_dVbs =0.0, QbuLD_dVds =0.0, QbuLD_dVgs =0.0, QbuLD_dT =0.0 ; double QbdLD =0.0, QbdLD_dVbs =0.0, QbdLD_dVds =0.0, QbdLD_dVgs =0.0, QbdLD_dT =0.0 ; - double QbsLD =0.0, QbsLD_dVbs =0.0, QbsLD_dVds =0.0, QbsLD_dVgs =0.0, QbsLD_dT =0.0 ; + double QbsLD =0.0;/*, QbsLD_dVbs =0.0, QbsLD_dVds =0.0, QbsLD_dVgs =0.0, QbsLD_dT =0.0 ;*/ double QbdLDext =0.0, QbdLDext_dVbse =0.0, QbdLDext_dVdse =0.0, QbdLDext_dVgse =0.0, QbdLDext_dT =0.0 ; - double QbsLDext =0.0, QbsLDext_dVbse =0.0, QbsLDext_dVdse =0.0, QbsLDext_dVgse =0.0, QbsLDext_dT =0.0 ; + double QbsLDext =0.0;/*, QbsLDext_dVbse =0.0, QbsLDext_dVdse =0.0, QbsLDext_dVgse =0.0, QbsLDext_dT =0.0 ;*/ /* Vgsz for SCE and PGD */ double dmpacc =0.0, dmpacc_dVbs =0.0, dmpacc_dVds =0.0, dmpacc_dVgs =0.0 ; @@ -813,7 +814,7 @@ int HSMHVevaluate double Ra_alpha, Ra_beta ; /* modified external biases for symmetry */ - double Vzadd_ext_dVd = 0.0 ; + double /*Vzadd_ext = 0.0,*/ Vzadd_ext_dVd = 0.0 ; double Vdserevz = 0.0, Vdserevz_dVd = 0.0 ; double Vgserevz = 0.0, Vgserevz_dVd = 0.0 ; double Vbserevz = 0.0, Vbserevz_dVd = 0.0 ; @@ -832,7 +833,7 @@ int HSMHVevaluate /* temperature-dependent variables for SHE model */ double TTEMP =0.0, TTEMP0 =0.0 ; - double Tdiff0 = 0.0, Tdiff0_2 = 0.0, Tdiff = 0.0, Tdiff_2 = 0.0 ; + double/* Tdiff0 = 0.0, Tdiff0_2 = 0.0,*/ Tdiff = 0.0, Tdiff_2 = 0.0 ; double Eg =0.0, Eg_dT =0.0 ; double Nin =0.0, Nin_dT =0.0 ; double js =0.0, js_dT =0.0 ; @@ -849,14 +850,14 @@ int HSMHVevaluate double QsuLD =0.0, QsuLD_dVbs =0.0, QsuLD_dVds =0.0, QsuLD_dVgs =0.0, QsuLD_dT =0.0 ; double QiuLD =0.0, QiuLD_dVbs =0.0, QiuLD_dVds =0.0, QiuLD_dVgs =0.0, QiuLD_dT =0.0 ; - double QidLD =0.0, QidLD_dVbs =0.0, QidLD_dVds =0.0, QidLD_dVgs =0.0, QidLD_dT =0.0 ; - double QisLD =0.0, QisLD_dVbs =0.0, QisLD_dVds =0.0, QisLD_dVgs =0.0, QisLD_dT =0.0 ; - double QidLDext =0.0, QidLDext_dVbse =0.0, QidLDext_dVdse =0.0, QidLDext_dVgse =0.0, QidLDext_dT =0.0 ; - double QisLDext =0.0, QisLDext_dVbse =0.0, QisLDext_dVdse =0.0, QisLDext_dVgse =0.0, QisLDext_dT =0.0 ; + double /*QidLD =0.0,*/ QidLD_dVbs =0.0, QidLD_dVds =0.0, QidLD_dVgs =0.0, QidLD_dT =0.0 ; + double /*QisLD =0.0,*/ QisLD_dVbs =0.0, QisLD_dVds =0.0, QisLD_dVgs =0.0, QisLD_dT =0.0 ; + double /*QidLDext =0.0,*/ QidLDext_dVbse =0.0, QidLDext_dVdse =0.0, QidLDext_dVgse =0.0, QidLDext_dT =0.0 ; + double /*QisLDext =0.0,*/ QisLDext_dVbse =0.0, QisLDext_dVdse =0.0, QisLDext_dVgse =0.0, QisLDext_dT =0.0 ; /* Self heating */ double mphn0_dT =0.0 ; - double ps0ldinib_dT =0.0, cnst0over_dT =0.0 ; + double ps0ldinib_dT =0.0, cnst0over_dT =0.0 ; double ps0ldinibs_dT =0.0, cnst0overs_dT =0.0 ; double Temp_dif =0.0 ; /* for SCE */ @@ -868,7 +869,7 @@ int HSMHVevaluate /* Qover */ int flg_ovzone = 0 ; double VgpLD =0.0, VgpLD_dVgb =0.0 ; - double Vgb_fb_LD =0.0 ; + double /*VthLD =0.0,*/ Vgb_fb_LD =0.0 ; double Ac31_dVgb =0.0, Ac31_dVxb =0.0 ; double Ac1_dVgb =0.0, Ac1_dVxb =0.0 ; double Ac2_dVgb =0.0, Ac2_dVxb =0.0 ; @@ -879,11 +880,11 @@ int HSMHVevaluate double Psa_dVgb =0.0, Psa_dVxb =0.0 ; double QsuLD_dVgb =0.0, QsuLD_dVxb =0.0 ; double QbuLD_dVgb =0.0, QbuLD_dVxb =0.0 ; - double fs02_dVgb =0.0, fs02_dVxb =0.0 ; + double fs02_dVgb =0.0 ;/*, fs02_dVxb =0.0 ;*/ double TX_dVgb =0.0, TX_dVxb =0.0 ; double TY_dVgb =0.0, TY_dVxb =0.0 ; double Ps0LD =0.0, Ps0LD_dVgb =0.0, Ps0LD_dVxb =0.0, Ps0LD_dT =0.0 ; - double Ps0LD_dVbs =0.0, Ps0LD_dVds =0.0, Ps0LD_dVgs =0.0 ; + double /*Ps0LD_dVbs =0.0,*/ Ps0LD_dVds =0.0; /*Ps0LD_dVgs =0.0 ;*/ double Pb2over =0.0, Pb2over_dT =0.0 ; int flg_overgiven =0 ; @@ -891,7 +892,7 @@ int HSMHVevaluate double Lovers =0.0, Loverd =0.0 ; double Novers =0.0, Noverd =0.0 ; double Nover_func =0.0 ; - double ps0ldinib_func =0.0, ps0ldinib_func_dT =0.0 ; +/* double ps0ldinib_func =0.0, ps0ldinib_func_dT =0.0 ;*/ double cnst0over_func =0.0, cnst0over_func_dT =0.0 ; double cnst1over =0.0, cnst1over_dT =0.0; /* Qover Analytical Model */ @@ -904,15 +905,17 @@ int HSMHVevaluate double Tp, Tp_dT ; double Tq, Tq_dVxb, Tq_dVgb, Tq_dT ; double T1_dVxb, T1_dVgb ; +/* double T2_dVxb, T2_dVgb ;*/ +/* double T3_dVxb, T3_dVgb ;*/ double T5_dVxb, T5_dVgb ; double VgpLD_shift, VgpLD_shift_dT ; double VgpLD_shift_dVgb, VgpLD_shift_dVxb, exp_bVbs_dVxb ; double gamma, gamma_dVxb, gamma_dT ; double psi , psi_dVgb , psi_dVxb , psi_dT ; - double psi_B, arg_B ; +/* double psi_B, arg_B ;*/ double Chi_1, Chi_1_dVgb, Chi_1_dVxb ,Chi_1_dT ; double Chi_A, Chi_A_dVgb, Chi_A_dVxb, Chi_A_dT ; - double Chi_B, Chi_B_dVgb, Chi_B_dVxb, Chi_B_dT; + double Chi_B, Chi_B_dVgb, Chi_B_dVxb, Chi_B_dT;/*, Chi_B_dpsi , Chi_B_dgamma ;*/ /* X_dT for leakage currents & junction diodes */ double isbd_dT =0.0, isbs_dT =0.0 ; @@ -1815,8 +1818,10 @@ int HSMHVevaluate Vdx = model->HSMHV_scp21 + Vdsz ; Vdx_dVbs = Vdsz_dVbs ; +/* Vdx_dT = Vdsz_dT ;*/ Vdx2 = Vdx * Vdx ; Vdx2_dVbs = 2 * Vdx_dVbs * Vdx ; +/* Vdx2_dT = 2 * Vdx_dT * Vdx ;*/ dVthLP = T1 * dVth0 * T3 + dqb - here->HSMHV_msc / Vdx2 ; dVthLP_dVb = T1_dVb * dVth0 * T3 + T1 * dVth0_dVb * T3 + T1 * dVth0 * T3_dVb @@ -4045,6 +4050,7 @@ start_of_mobility: costi3_dVb_c3 = costi3_dVb * T2 ; costi3_dVd_c3 = costi3_dVd * T2 ; costi3_dVg_c3 = costi3_dVg * T2 ; +/* costi3_dT_c3 = costi3_dT * T2 ;*/ costi4 = costi3 * beta * 0.5 ; costi4_dT = ( costi3_dT * beta + costi3 * beta_dT ) * 0.5 ; @@ -5051,9 +5057,8 @@ start_of_mobility: Nover_func = Novers ; cnst0over_func = ModeNML * here->HSMHV_cnst0overs + ModeRVS * here->HSMHV_cnst0over ; cnst0over_func_dT = ModeNML * cnst0overs_dT + ModeRVS * cnst0over_dT ; - ps0ldinib_func = ModeNML * here->HSMHV_ps0ldinibs + ModeRVS * here->HSMHV_ps0ldinib ; - ps0ldinib_func_dT = ModeNML * ps0ldinibs_dT + ModeRVS * ps0ldinib_dT ; - +/* ps0ldinib_func = ModeNML * here->HSMHV_ps0ldinibs + ModeRVS * here->HSMHV_ps0ldinib ;*/ +/* ps0ldinib_func_dT = ModeNML * ps0ldinibs_dT + ModeRVS * ps0ldinib_dT ;*/ #include "hsmhveval_qover.h" T4 = here->HSMHV_weffcv_nf * Lovers * ( 1 - CVDSOVER ) ; @@ -5064,18 +5069,18 @@ start_of_mobility: Qovs_dVbs = T4 * QsuLD_dVbs ; Qovs_dT = T4 * QsuLD_dT ; - QisLD = T4 * QiuLD ; +/* QisLD = T4 * QiuLD ;*/ QisLD_dVbs = T4 * QiuLD_dVbs ; QisLD_dVds = T4 * QiuLD_dVds ; QisLD_dVgs = T4 * QiuLD_dVgs ; QisLD_dT = T4 * QiuLD_dT ; QbsLD = T4 * QbuLD ; - QbsLD_dVbs = T4 * QbuLD_dVbs ; +/* QbsLD_dVbs = T4 * QbuLD_dVbs ; QbsLD_dVds = T4 * QbuLD_dVds ; QbsLD_dVgs = T4 * QbuLD_dVgs ; QbsLD_dT = T4 * QbuLD_dT ; - +*/ if ( CVDSOVER != 0.0 ) { /* Qovsext begin */ @@ -5097,18 +5102,18 @@ start_of_mobility: Qovsext_dVbse = T4 * QsuLD_dVbs ; Qovsext_dT = T4 * QsuLD_dT ; - QisLDext = T4 * QiuLD ; +/* QisLDext = T4 * QiuLD ;*/ QisLDext_dVbse = T4 * QiuLD_dVbs ; QisLDext_dVdse = T4 * QiuLD_dVds ; QisLDext_dVgse = T4 * QiuLD_dVgs ; QisLDext_dT = T4 * QiuLD_dT ; QbsLDext = T4 * QbuLD ; - QbsLDext_dVbse = T4 * QbuLD_dVbs ; +/* QbsLDext_dVbse = T4 * QbuLD_dVbs ; QbsLDext_dVdse = T4 * QbuLD_dVds ; QbsLDext_dVgse = T4 * QbuLD_dVgs ; QbsLDext_dT = T4 * QbuLD_dT ; - +*/ } /* Qovsext end */ } @@ -5186,9 +5191,8 @@ start_of_mobility: Nover_func = Noverd ; cnst0over_func = ModeNML * here->HSMHV_cnst0over + ModeRVS * here->HSMHV_cnst0overs ; cnst0over_func_dT = ModeNML * cnst0over_dT + ModeRVS * cnst0overs_dT ; - ps0ldinib_func = ModeNML * here->HSMHV_ps0ldinib + ModeRVS * here->HSMHV_ps0ldinibs ; - ps0ldinib_func_dT = ModeNML * ps0ldinib_dT + ModeRVS * ps0ldinibs_dT ; - +/* ps0ldinib_func = ModeNML * here->HSMHV_ps0ldinib + ModeRVS * here->HSMHV_ps0ldinibs ;*/ +/* ps0ldinib_func_dT = ModeNML * ps0ldinib_dT + ModeRVS * ps0ldinibs_dT ;*/ #include "hsmhveval_qover.h" T4 = here->HSMHV_weffcv_nf * Loverd * ( 1 - CVDSOVER ) ; @@ -5198,7 +5202,7 @@ start_of_mobility: Qovd_dVbs = T4 * QsuLD_dVbs ; Qovd_dT = T4 * QsuLD_dT ; - QidLD = T4 * QiuLD ; +/* QidLD = T4 * QiuLD ;*/ QidLD_dVbs = T4 * QiuLD_dVbs ; QidLD_dVds = T4 * QiuLD_dVds ; QidLD_dVgs = T4 * QiuLD_dVgs ; @@ -5230,7 +5234,7 @@ start_of_mobility: Qovdext_dVbse = T4 * QsuLD_dVbs ; Qovdext_dT = T4 * QsuLD_dT ; - QidLDext = T4 * QiuLD ; +/* QidLDext = T4 * QiuLD ;*/ QidLDext_dVbse = T4 * QiuLD_dVbs ; QidLDext_dVdse = T4 * QiuLD_dVds ; QidLDext_dVgse = T4 * QiuLD_dVgs ; diff --git a/src/spicelib/devices/hisimhv1/hsmhveval_qover.h b/src/spicelib/devices/hisimhv1/hsmhveval_qover.h index 6223f6006..8b6f7ef64 100644 --- a/src/spicelib/devices/hisimhv1/hsmhveval_qover.h +++ b/src/spicelib/devices/hisimhv1/hsmhveval_qover.h @@ -311,8 +311,8 @@ psi += beta*0.1 ; psi_dT += beta_dT*0.1 ; - psi_B = psi; - arg_B = psi*psi/(gamma*T0); +/* psi_B = psi;*/ +/* arg_B = psi*psi/(gamma*T0);*/ Chi_B = log(gamma*T0 + psi*psi) - log(cnst1over*T0) + beta*Vxbgmtcl; Chi_B_dVgb = 2.0*psi*psi_dVgb/ (gamma*T0 + psi*psi); Chi_B_dVxb = (gamma_dVxb*T0+2.0*psi*psi_dVxb)/(gamma*T0+psi*psi) @@ -321,10 +321,10 @@ - (cnst1over_dT*T0 + cnst1over*T0_dT)/(cnst1over*T0) + beta_dT*Vxbgmtcl + beta*Vxbgmtcl_dT; Ps0_iniB = Chi_B/beta - Vxbgmtcl ; - Ps0_iniB_dVgb = Chi_B_dVgb/beta; +/* Ps0_iniB_dVgb = Chi_B_dVgb/beta; Ps0_iniB_dVxb = Chi_B_dVxb/beta- Vxbgmtcl_dVxbgmt; Ps0_iniB_dT = Chi_B_dT/beta - Chi_B/(beta*beta)*beta_dT - Vxbgmtcl_dT; - +*/ /* construction of Ps0LD by taking Ps0_iniB as an upper limit of Ps0_iniA * @@ -577,7 +577,7 @@ fs01_dVgs = Ps0LD_dVgb * fs01_dPs0 ; fs01_dT = Ps0LD_dT * fs01_dPs0 + fs01_dT; fs02_dVbs = Ps0LD_dVxb * fs02_dPs0 + fs02_dVbs ; - fs02_dVxb = Ps0LD_dVds * fs02_dPs0 ; +/* fs02_dVxb = Ps0LD_dVds * fs02_dPs0 ;*/ fs02_dVgb = Ps0LD_dVgb * fs02_dPs0 ; fs02_dT = Ps0LD_dT * fs02_dPs0 + fs02_dT; @@ -616,9 +616,9 @@ } /* end of Vgbgmt region blocks */ /* convert to source ref. */ - Ps0LD_dVbs = Ps0LD_dVxb * Vxbgmt_dVbs + Ps0LD_dVgb * Vgbgmt_dVbs ; +/* Ps0LD_dVbs = Ps0LD_dVxb * Vxbgmt_dVbs + Ps0LD_dVgb * Vgbgmt_dVbs ;*/ Ps0LD_dVds = Ps0LD_dVxb * Vxbgmt_dVds + Ps0LD_dVgb * Vgbgmt_dVds ; - Ps0LD_dVgs = Ps0LD_dVxb * Vxbgmt_dVgs + Ps0LD_dVgb * Vgbgmt_dVgs ; +/* Ps0LD_dVgs = Ps0LD_dVxb * Vxbgmt_dVgs + Ps0LD_dVgb * Vgbgmt_dVgs ;*/ QsuLD_dVbs = QsuLD_dVxb * Vxbgmt_dVbs + QsuLD_dVgb * Vgbgmt_dVbs ; QsuLD_dVds = QsuLD_dVxb * Vxbgmt_dVds + QsuLD_dVgb * Vgbgmt_dVds ; diff --git a/src/spicelib/devices/hisimhv1/hsmhvld.c b/src/spicelib/devices/hisimhv1/hsmhvld.c index 407f65fd8..5aff325ef 100644 --- a/src/spicelib/devices/hisimhv1/hsmhvld.c +++ b/src/spicelib/devices/hisimhv1/hsmhvld.c @@ -171,8 +171,8 @@ int HSMHVload( register HSMHVmodel *model = (HSMHVmodel*)inModel; register HSMHVinstance *here; HSMHVbinningParam *pParam; - HSMHVmodelMKSParam *modelMKS ; - HSMHVhereMKSParam *hereMKS ; +/* HSMHVmodelMKSParam *modelMKS ;*/ +/* HSMHVhereMKSParam *hereMKS ;*/ @@ -249,7 +249,7 @@ int HSMHVload( double Qdext=0.0, dQdext_dVdse=0.0, dQdext_dVgse=0.0, dQdext_dVbse=0.0, dQdext_dT=0.0 ; double Qgext=0.0, dQgext_dVdse=0.0, dQgext_dVgse=0.0, dQgext_dVbse=0.0, dQgext_dT=0.0 ; - double dQsext_dVdse=0.0, dQsext_dVgse=0.0, dQsext_dVbse=0.0, dQsext_dT=0.0 ; + double /*Qsext=0.0,*/ dQsext_dVdse=0.0, dQsext_dVgse=0.0, dQsext_dVbse=0.0, dQsext_dT=0.0 ; double Qbext=0.0, dQbext_dVdse=0.0, dQbext_dVgse=0.0, dQbext_dVbse=0.0, dQbext_dT=0.0 ; /* 5th substrate node */ int flg_subNode = 0 ; @@ -363,12 +363,12 @@ int HSMHVload( for ( ; model != NULL; model = model->HSMHVnextModel ) { /* loop through all the instances of the model */ - modelMKS = &model->modelMKS ; +/* modelMKS = &model->modelMKS ;*/ for (here = model->HSMHVinstances; here != NULL ; here = here->HSMHVnextInstance) { - hereMKS = &here->hereMKS ; +/* hereMKS = &here->hereMKS ;*/ pParam = &here->pParam ; showPhysVal = 0; Check=1; @@ -1107,6 +1107,7 @@ line755: /* standard entry if HSMHVevaluate is bypassed */ dQgext_dVgse = here->HSMHV_dQgext_dVgse ; dQgext_dVbse = here->HSMHV_dQgext_dVbse ; dQgext_dT = (here->HSMHV_coselfheat > 0) ? here->HSMHV_dQgext_dTi : 0.0 ; +/* Qsext = here->HSMHV_qsext ;*/ dQsext_dVdse = here->HSMHV_dQsext_dVdse ; dQsext_dVgse = here->HSMHV_dQsext_dVgse ; dQsext_dVbse = here->HSMHV_dQsext_dVbse ; @@ -1268,6 +1269,7 @@ line755: /* standard entry if HSMHVevaluate is bypassed */ dQgext_dVgse = here->HSMHV_dQgext_dVgse ; dQgext_dVbse = here->HSMHV_dQgext_dVbse ; dQgext_dT = (here->HSMHV_coselfheat > 0) ? here->HSMHV_dQgext_dTi : 0.0 ; +/* Qsext = here->HSMHV_qdext ;*/ dQsext_dVdse = - (here->HSMHV_dQdext_dVdse + here->HSMHV_dQdext_dVgse + here->HSMHV_dQdext_dVbse); dQsext_dVgse = here->HSMHV_dQdext_dVgse ; dQsext_dVbse = here->HSMHV_dQdext_dVbse ; diff --git a/src/spicelib/devices/hisimhv1/hsmhvtemp.c b/src/spicelib/devices/hisimhv1/hsmhvtemp.c index 074f3a1d4..894e40863 100644 --- a/src/spicelib/devices/hisimhv1/hsmhvtemp.c +++ b/src/spicelib/devices/hisimhv1/hsmhvtemp.c @@ -73,7 +73,7 @@ int HSMHVtemp( double T0, T1, T2, T3, T4, T5, T6, T7 ; /* temperature-dependent variables */ double Eg =0.0, TTEMP0=0.0, TTEMP=0.0, beta=0.0, Nin=0.0 ; - double Tdiff0 = 0.0, Tdiff0_2 = 0.0, Tdiff = 0.0, Tdiff_2 = 0.0 ; + double /*Tdiff0 = 0.0, Tdiff0_2 = 0.0,*/ Tdiff = 0.0, Tdiff_2 = 0.0 ; double js=0.0, jssw=0.0, js2=0.0, jssw2 =0.0 ; int i=0 ; double TMF1 , TMF2 ; diff --git a/src/spicelib/devices/hisimhv1/hsmhvtemp_eval.h b/src/spicelib/devices/hisimhv1/hsmhvtemp_eval.h index fc1e2db42..cccc90fc0 100644 --- a/src/spicelib/devices/hisimhv1/hsmhvtemp_eval.h +++ b/src/spicelib/devices/hisimhv1/hsmhvtemp_eval.h @@ -24,8 +24,8 @@ /* Self heating */ TTEMP = TTEMP + deltemp ; #endif -Tdiff0 = TTEMP0 - model->HSMHV_ktnom ; -Tdiff0_2 = TTEMP0 * TTEMP0 - model->HSMHV_ktnom * model->HSMHV_ktnom ; +/*Tdiff0 = TTEMP0 - model->HSMHV_ktnom ;*/ +/*Tdiff0_2 = TTEMP0 * TTEMP0 - model->HSMHV_ktnom * model->HSMHV_ktnom ;*/ Tdiff = TTEMP - model->HSMHV_ktnom ; Tdiff_2 = TTEMP * TTEMP - model->HSMHV_ktnom * model->HSMHV_ktnom ;