1 /*********************************************************************** 2 3 HiSIM (Hiroshima University STARC IGFET Model) 4 Copyright (C) 2012 Hiroshima University & STARC 5 6 MODEL NAME : HiSIM_HV 7 ( VERSION : 1 SUBVERSION : 2 REVISION : 4 ) 8 Model Parameter VERSION : 1.23 9 FILE : hsmhvdef 10 11 DATE : 2013.04.30 12 13 released by 14 Hiroshima University & 15 Semiconductor Technology Academic Research Center (STARC) 16 ***********************************************************************/ 17 18 #ifndef HSMHV 19 #define HSMHV 20 21 #include "ngspice/ifsim.h" 22 #include "ngspice/gendefs.h" 23 #include "ngspice/cktdefs.h" 24 #include "ngspice/complex.h" 25 #include "ngspice/noisedef.h" 26 27 /* declarations for HiSIMHV MOSFETs */ 28 29 /* unit-converted model parameters */ 30 typedef struct sHSMHVmodelMKSParam { 31 double HSMHV_npext ; 32 double HSMHV_vmax ; 33 double HSMHV_ll ; 34 double HSMHV_wl ; 35 double HSMHV_svgsl ; 36 double HSMHV_svgsw ; 37 double HSMHV_svbsl ; 38 double HSMHV_slgl ; 39 double HSMHV_sub1l ; 40 double HSMHV_slg ; 41 double HSMHV_sub2l ; 42 double HSMHV_subld2 ; 43 double HSMHV_rd22 ; 44 double HSMHV_rd23 ; 45 double HSMHV_rd24 ; 46 double HSMHV_rdtemp1 ; 47 double HSMHV_rdtemp2 ; 48 double HSMHV_rdvd ; 49 double HSMHV_rdvdtemp1 ; 50 double HSMHV_rdvdtemp2 ; 51 //double HSMHV_muecb0 ; 52 //double HSMHV_muecb1 ; 53 //double HSMHV_muesr1 ; 54 //double HSMHV_mueph1 ; 55 double HSMHV_nsubsub ; 56 double HSMHV_nsubpsti1 ; 57 double HSMHV_muesti1 ; 58 double HSMHV_wfc ; 59 double HSMHV_glksd1 ; 60 double HSMHV_glksd2 ; 61 double HSMHV_glksd3 ; 62 double HSMHV_gleak2 ; 63 double HSMHV_gleak4 ; 64 double HSMHV_gleak5 ; 65 double HSMHV_gleak7 ; 66 double HSMHV_glkb2 ; 67 double HSMHV_fn2 ; 68 double HSMHV_gidl1 ; 69 double HSMHV_gidl2 ; 70 double HSMHV_nfalp ; 71 double HSMHV_nftrp ; 72 double HSMHV_cit ; 73 double HSMHV_ovslp ; 74 double HSMHV_dly3 ; 75 double HSMHV_rth0 ; 76 double HSMHV_cth0 ; 77 } HSMHVmodelMKSParam ; 78 79 80 /* binning parameters */ 81 typedef struct sHSMHVbinningParam { 82 double HSMHV_vmax ; 83 double HSMHV_bgtmp1 ; 84 double HSMHV_bgtmp2 ; 85 double HSMHV_eg0 ; 86 double HSMHV_vfbover ; 87 double HSMHV_nover ; 88 double HSMHV_novers ; 89 double HSMHV_wl2 ; 90 double HSMHV_vfbc ; 91 double HSMHV_nsubc ; 92 double HSMHV_nsubp ; 93 double HSMHV_scp1 ; 94 double HSMHV_scp2 ; 95 double HSMHV_scp3 ; 96 double HSMHV_sc1 ; 97 double HSMHV_sc2 ; 98 double HSMHV_sc3 ; 99 double HSMHV_pgd1 ; 100 double HSMHV_pgd3 ; 101 double HSMHV_ndep ; 102 double HSMHV_ninv ; 103 double HSMHV_muecb0 ; 104 double HSMHV_muecb1 ; 105 double HSMHV_mueph1 ; 106 double HSMHV_vtmp ; 107 double HSMHV_wvth0 ; 108 double HSMHV_muesr1 ; 109 double HSMHV_muetmp ; 110 double HSMHV_sub1 ; 111 double HSMHV_sub2 ; 112 double HSMHV_svds ; 113 double HSMHV_svbs ; 114 double HSMHV_svgs ; 115 double HSMHV_fn1 ; 116 double HSMHV_fn2 ; 117 double HSMHV_fn3 ; 118 double HSMHV_fvbs ; 119 double HSMHV_nsti ; 120 double HSMHV_wsti ; 121 double HSMHV_scsti1 ; 122 double HSMHV_scsti2 ; 123 double HSMHV_vthsti ; 124 double HSMHV_muesti1 ; 125 double HSMHV_muesti2 ; 126 double HSMHV_muesti3 ; 127 double HSMHV_nsubpsti1 ; 128 double HSMHV_nsubpsti2 ; 129 double HSMHV_nsubpsti3 ; 130 double HSMHV_cgso ; 131 double HSMHV_cgdo ; 132 double HSMHV_js0 ; 133 double HSMHV_js0sw ; 134 double HSMHV_nj ; 135 double HSMHV_cisbk ; 136 double HSMHV_clm1 ; 137 double HSMHV_clm2 ; 138 double HSMHV_clm3 ; 139 double HSMHV_wfc ; 140 double HSMHV_gidl1 ; 141 double HSMHV_gidl2 ; 142 double HSMHV_gleak1 ; 143 double HSMHV_gleak2 ; 144 double HSMHV_gleak3 ; 145 double HSMHV_gleak6 ; 146 double HSMHV_glksd1 ; 147 double HSMHV_glksd2 ; 148 double HSMHV_glkb1 ; 149 double HSMHV_glkb2 ; 150 double HSMHV_nftrp ; 151 double HSMHV_nfalp ; 152 double HSMHV_pthrou ; 153 double HSMHV_vdiffj ; 154 double HSMHV_ibpc1 ; 155 double HSMHV_ibpc2 ; 156 double HSMHV_cgbo ; 157 double HSMHV_cvdsover ; 158 double HSMHV_falph ; 159 double HSMHV_npext ; 160 double HSMHV_powrat ; 161 double HSMHV_rd ; 162 double HSMHV_rd22 ; 163 double HSMHV_rd23 ; 164 double HSMHV_rd24 ; 165 double HSMHV_rdict1 ; 166 double HSMHV_rdov13 ; 167 double HSMHV_rdslp1 ; 168 double HSMHV_rdvb ; 169 double HSMHV_rdvd ; 170 double HSMHV_rdvg11 ; 171 double HSMHV_rs ; 172 double HSMHV_rth0 ; 173 double HSMHV_vover ; 174 /*-----------SHE--------------*/ 175 double HSMHV_rth ; 176 double HSMHV_cth ; 177 /*-----------------------------*/ 178 179 } HSMHVbinningParam ; 180 181 182 /* unit-converted parameters for each instance */ 183 typedef struct sHSMHVhereMKSParam { 184 double HSMHV_vmax ; 185 double HSMHV_subld2 ; 186 //double HSMHV_muecb0 ; 187 //double HSMHV_muecb1 ; 188 //double HSMHV_muesr1 ; 189 //double HSMHV_mueph1 ; 190 double HSMHV_ndep ; 191 double HSMHV_ninv ; 192 double HSMHV_nsubc ; 193 double HSMHV_nsubcdfm ; 194 double HSMHV_nsubp ; 195 double HSMHV_nsubpsti1 ; 196 double HSMHV_muesti1 ; 197 double HSMHV_nsti ; 198 double HSMHV_npext ; 199 double HSMHV_nover ; 200 double HSMHV_novers ; 201 double HSMHV_wfc ; 202 double HSMHV_glksd1 ; 203 double HSMHV_glksd2 ; 204 double HSMHV_gleak2 ; 205 double HSMHV_glkb2 ; 206 double HSMHV_fn2 ; 207 double HSMHV_gidl1 ; 208 double HSMHV_gidl2 ; 209 double HSMHV_nfalp ; 210 double HSMHV_nftrp ; 211 } HSMHVhereMKSParam ; 212 213 214 /* information needed for each instance */ 215 typedef struct sHSMHVinstance { 216 217 struct GENinstance gen; 218 219 #define HSMHVmodPtr(inst) ((struct sHSMHVmodel *)((inst)->gen.GENmodPtr)) 220 #define HSMHVnextInstance(inst) ((struct sHSMHVinstance *)((inst)->gen.GENnextInstance)) 221 #define HSMHVname gen.GENname 222 #define HSMHVstates gen.GENstate 223 224 const int HSMHVdNode; /* number of the drain node of the mosfet */ 225 const int HSMHVgNode; /* number of the gate node of the mosfet */ 226 const int HSMHVsNode; /* number of the source node of the mosfet */ 227 const int HSMHVbNode; /* number of the bulk node of the mosfet */ 228 const int HSMHVsubNodeExt; /* number of the substrate node */ 229 const int HSMHVtempNodeExt;/* number of the temp node----------SHE--------*/ 230 int HSMHVsubNode; /* number of the substrate node */ 231 int HSMHVtempNode; /* number of the temp node */ 232 int HSMHVdNodePrime; /* number od the inner drain node */ 233 int HSMHVgNodePrime; /* number of the inner gate node */ 234 int HSMHVsNodePrime; /* number od the inner source node */ 235 int HSMHVbNodePrime; 236 int HSMHVdbNode; 237 int HSMHVsbNode; 238 int HSMHVqiNode; /* number of the qi node in case of NQS */ 239 int HSMHVqbNode; /* number of the qb node in case of NQS */ 240 241 double HSMHV_noiflick; /* for 1/f noise calc. */ 242 double HSMHV_noithrml; /* for thrmal noise calc. */ 243 double HSMHV_noiigate; /* for induced gate noise */ 244 double HSMHV_noicross; /* for induced gate noise */ 245 246 /* instance */ 247 int HSMHV_coselfheat; /* Self-heating model */ 248 int HSMHV_cosubnode; /* switch tempNode to subNode */ 249 double HSMHV_l; /* the length of the channel region */ 250 double HSMHV_w; /* the width of the channel region */ 251 double HSMHV_ad; /* the area of the drain diffusion */ 252 double HSMHV_as; /* the area of the source diffusion */ 253 double HSMHV_pd; /* perimeter of drain junction [m] */ 254 double HSMHV_ps; /* perimeter of source junction [m] */ 255 double HSMHV_nrd; /* equivalent num of squares of drain [-] (unused) */ 256 double HSMHV_nrs; /* equivalent num of squares of source [-] (unused) */ 257 double HSMHV_dtemp; 258 259 double HSMHV_weff; /* the effective width of the channel region */ 260 double HSMHV_weff_ld; /* the effective width of the drift region */ 261 double HSMHV_weff_cv; /* the effective width of the drift region for capacitance */ 262 double HSMHV_weff_nf; /* Weff * NF */ 263 double HSMHV_weffcv_nf; /* Weffcv * NF */ 264 double HSMHV_leff; /* the effective length of the channel region */ 265 266 int HSMHV_corbnet ; 267 double HSMHV_rbpb ; 268 double HSMHV_rbpd ; 269 double HSMHV_rbps ; 270 double HSMHV_rbdb ; 271 double HSMHV_rbsb ; 272 273 int HSMHV_corg ; 274 double HSMHV_ngcon; 275 double HSMHV_xgw; 276 double HSMHV_xgl; 277 double HSMHV_nf; 278 279 double HSMHV_sa; 280 double HSMHV_sb; 281 double HSMHV_sd; 282 double HSMHV_nsubcdfm; 283 double HSMHV_m; 284 double HSMHV_subld1; 285 double HSMHV_subld2; 286 double HSMHV_lover; 287 double HSMHV_lovers; 288 double HSMHV_loverld; 289 double HSMHV_ldrift1; 290 double HSMHV_ldrift2; 291 double HSMHV_ldrift1s; 292 double HSMHV_ldrift2s; 293 294 int HSMHV_called; /* flag to check the first call */ 295 /* previous values to evaluate initial guess */ 296 double HSMHV_mode_prv; 297 double HSMHV_vbsc_prv; 298 double HSMHV_vdsc_prv; 299 double HSMHV_vgsc_prv; 300 double HSMHV_ps0_prv; 301 double HSMHV_ps0_dvbs_prv; 302 double HSMHV_ps0_dvds_prv; 303 double HSMHV_ps0_dvgs_prv; 304 double HSMHV_ps0_dtemp_prv; 305 double HSMHV_pds_prv; 306 double HSMHV_pds_dvbs_prv; 307 double HSMHV_pds_dvds_prv; 308 double HSMHV_pds_dvgs_prv; 309 double HSMHV_pds_dtemp_prv; 310 /* double HSMHV_ids_prv; not used */ 311 /* double HSMHV_ids_dvbs_prv; not used */ 312 /* double HSMHV_ids_dvds_prv; not used */ 313 /* double HSMHV_ids_dvgs_prv; not used */ 314 /* double HSMHV_ids_dtemp_prv; not used */ 315 double HSMHV_mode_prv2; 316 double HSMHV_vbsc_prv2; 317 double HSMHV_vdsc_prv2; 318 double HSMHV_vgsc_prv2; 319 double HSMHV_ps0_prv2; /* assigned but not used */ 320 double HSMHV_ps0_dvbs_prv2; 321 double HSMHV_ps0_dvds_prv2; 322 double HSMHV_ps0_dvgs_prv2; 323 double HSMHV_pds_prv2; /* assigned but not used */ 324 double HSMHV_pds_dvbs_prv2; 325 double HSMHV_pds_dvds_prv2; 326 double HSMHV_pds_dvgs_prv2; 327 double HSMHV_temp_prv; 328 /* double HSMHV_time; /\* for debug print *\/ */ 329 330 /* output */ 331 /* int HSMHV_capop; not used */ 332 /* double HSMHV_gd; not used */ 333 /* double HSMHV_gs; not used */ 334 double HSMHV_cgso; /* can be made local */ 335 double HSMHV_cgdo; 336 double HSMHV_cgbo; 337 double HSMHV_cggo; 338 double HSMHV_cdso; /* can be made local */ 339 double HSMHV_cddo; 340 double HSMHV_cdgo; 341 double HSMHV_cdbo; 342 double HSMHV_csso; /* can be made local */ 343 double HSMHV_csdo; /* can be made local */ 344 double HSMHV_csgo; /* can be made local */ 345 double HSMHV_csbo; /* can be made local */ 346 double HSMHV_cbdo; 347 double HSMHV_cbgo; 348 double HSMHV_cbbo; 349 /* double HSMHV_cqyd; not used */ 350 /* double HSMHV_cqyg; not used */ 351 /* double HSMHV_cqyb; not used */ 352 double HSMHV_von; /* vth */ 353 double HSMHV_vdsat; 354 /* double HSMHV_capgs; not used */ 355 /* double HSMHV_capgd; not used */ 356 /* double HSMHV_capgb; not used */ 357 358 /* double HSMHV_rth0; not used */ 359 /* double HSMHV_cth0; not used */ 360 /* double HSMHV_cth; not used */ 361 362 363 #define XDIM 14 364 double HSMHV_ydc_d[XDIM], HSMHV_ydc_dP[XDIM], HSMHV_ydc_g[XDIM], HSMHV_ydc_gP[XDIM], HSMHV_ydc_s[XDIM], HSMHV_ydc_sP[XDIM], 365 HSMHV_ydc_bP[XDIM], HSMHV_ydc_b[XDIM], HSMHV_ydc_db[XDIM], HSMHV_ydc_sb[XDIM], HSMHV_ydc_t[XDIM], HSMHV_ydc_qi[XDIM], 366 HSMHV_ydc_qb[XDIM]; 367 double HSMHV_ydyn_d[XDIM], HSMHV_ydyn_dP[XDIM], HSMHV_ydyn_g[XDIM], HSMHV_ydyn_gP[XDIM], HSMHV_ydyn_s[XDIM], HSMHV_ydyn_sP[XDIM], 368 HSMHV_ydyn_bP[XDIM], HSMHV_ydyn_b[XDIM], HSMHV_ydyn_db[XDIM], HSMHV_ydyn_sb[XDIM], HSMHV_ydyn_t[XDIM], HSMHV_ydyn_qi[XDIM], 369 HSMHV_ydyn_qb[XDIM]; 370 371 /* resistances */ 372 double HSMHV_Rd ; /* different from HSMHV_rd */ 373 double HSMHV_dRd_dVdse ; 374 double HSMHV_dRd_dVgse ; 375 double HSMHV_dRd_dVbse ; 376 double HSMHV_dRd_dVsubs ; 377 double HSMHV_dRd_dTi ; 378 double HSMHV_Rs ; /* different from HSMHV_rs */ 379 double HSMHV_dRs_dVdse ; 380 double HSMHV_dRs_dVgse ; 381 double HSMHV_dRs_dVbse ; 382 double HSMHV_dRs_dVsubs ; 383 double HSMHV_dRs_dTi ; 384 /* drain current */ 385 double HSMHV_ids; 386 double HSMHV_gds; /* used for printout, but not loaded */ 387 double HSMHV_gm; /* used for printout, but not loaded */ 388 double HSMHV_gmbs; /* used for printout, but not loaded */ 389 double HSMHV_dIds_dVdse ; 390 double HSMHV_dIds_dVgse ; 391 double HSMHV_dIds_dVbse ; 392 double HSMHV_dIds_dVdsi ; 393 double HSMHV_dIds_dVgsi ; 394 double HSMHV_dIds_dVbsi ; 395 double HSMHV_dIds_dTi ; 396 /* substrate current */ 397 double HSMHV_isub; 398 /* double HSMHV_gbgs; not used */ 399 /* double HSMHV_gbds; not used */ 400 /* double HSMHV_gbbs; not used */ 401 double HSMHV_dIsub_dVdsi ; 402 double HSMHV_dIsub_dVgsi ; 403 double HSMHV_dIsub_dVbsi ; 404 double HSMHV_dIsub_dTi ; 405 double HSMHV_dIsub_dVdse ; 406 /* gidl and gisl current */ 407 double HSMHV_igidl; /* gate induced drain leakage */ 408 /* double HSMHV_gigidlgs; not used */ 409 /* double HSMHV_gigidlds; not used */ 410 /* double HSMHV_gigidlbs; not used */ 411 double HSMHV_dIgidl_dVdsi ; 412 double HSMHV_dIgidl_dVgsi ; 413 double HSMHV_dIgidl_dVbsi ; 414 double HSMHV_dIgidl_dTi ; 415 double HSMHV_igisl; /* gate induced source leakage */ 416 /* double HSMHV_gigislgd; not used */ 417 /* double HSMHV_gigislsd; not used */ 418 /* double HSMHV_gigislbd; not used */ 419 double HSMHV_dIgisl_dVdsi ; 420 double HSMHV_dIgisl_dVgsi ; 421 double HSMHV_dIgisl_dVbsi ; 422 double HSMHV_dIgisl_dTi ; 423 /* gate leakage currents */ 424 double HSMHV_igb; /* gate tunneling current (gate to bulk) */ 425 /* double HSMHV_gigbg; not used */ 426 /* double HSMHV_gigbd; not used */ 427 /* double HSMHV_gigbb; not used */ 428 /* double HSMHV_gigbs; not used */ 429 double HSMHV_dIgb_dVdsi ; 430 double HSMHV_dIgb_dVgsi ; 431 double HSMHV_dIgb_dVbsi ; 432 double HSMHV_dIgb_dTi ; 433 double HSMHV_igd; /* gate tunneling current (gate to drain) */ 434 /* double HSMHV_gigdg; not used */ 435 /* double HSMHV_gigdd; not used */ 436 /* double HSMHV_gigdb; not used */ 437 /* double HSMHV_gigds; not used */ 438 double HSMHV_dIgd_dVdsi ; 439 double HSMHV_dIgd_dVgsi ; 440 double HSMHV_dIgd_dVbsi ; 441 double HSMHV_dIgd_dTi ; 442 double HSMHV_igs; /* gate tunneling current (gate to source) */ 443 /* double HSMHV_gigsg; not used */ 444 /* double HSMHV_gigsd; not used */ 445 /* double HSMHV_gigsb; not used */ 446 /* double HSMHV_gigss; not used */ 447 double HSMHV_dIgs_dVdsi ; 448 double HSMHV_dIgs_dVgsi ; 449 double HSMHV_dIgs_dVbsi ; 450 double HSMHV_dIgs_dTi ; 451 /* charges */ 452 double HSMHV_qd; 453 double HSMHV_cdgb; /* used for printout, but not loaded */ 454 /* double HSMHV_cddb; not used */ 455 /* double HSMHV_cdsb; not used */ 456 /* double HSMHVcdT; not used */ 457 double HSMHV_dQdi_dVdsi ; 458 double HSMHV_dQdi_dVgsi ; 459 double HSMHV_dQdi_dVbsi ; 460 double HSMHV_dQdi_dTi ; 461 double HSMHV_qg; 462 double HSMHV_cggb; /* used for printout, but not loaded */ 463 double HSMHV_cgdb; /* used for printout, but not loaded */ 464 double HSMHV_cgsb; /* used for printout, but not loaded */ 465 /* double HSMHVcgT; not used */ 466 double HSMHV_dQg_dVdsi ; 467 double HSMHV_dQg_dVgsi ; 468 double HSMHV_dQg_dVbsi ; 469 double HSMHV_dQg_dTi ; 470 double HSMHV_qs; 471 double HSMHV_dQsi_dVdsi ; 472 double HSMHV_dQsi_dVgsi ; 473 double HSMHV_dQsi_dVbsi ; 474 double HSMHV_dQsi_dTi ; 475 double HSMHV_qb; /* bulk charge qb = -(qg + qd + qs) */ 476 double HSMHV_cbgb; /* used for printout, but not loaded */ 477 /* double HSMHV_cbdb; not used */ 478 /* double HSMHV_cbsb; not used */ 479 /* double HSMHVcbT; not used */ 480 double HSMHV_dQb_dVdsi ; /* Qb: bulk charge inclusive overlaps, Qbulk: bulk charge without overlaps (see above) */ 481 double HSMHV_dQb_dVgsi ; 482 double HSMHV_dQb_dVbsi ; 483 double HSMHV_dQb_dTi ; 484 /* outer charges (fringing etc.) */ 485 double HSMHV_qdp ; 486 double HSMHV_dqdp_dVdse ; 487 double HSMHV_dqdp_dVgse ; 488 double HSMHV_dqdp_dVbse ; 489 double HSMHV_dqdp_dTi ; 490 double HSMHV_qsp ; 491 double HSMHV_dqsp_dVdse ; 492 double HSMHV_dqsp_dVgse ; 493 double HSMHV_dqsp_dVbse ; 494 double HSMHV_dqsp_dTi ; 495 double HSMHV_qgext ; 496 double HSMHV_dQgext_dVdse ; 497 double HSMHV_dQgext_dVgse ; 498 double HSMHV_dQgext_dVbse ; 499 double HSMHV_dQgext_dTi ; 500 double HSMHV_qdext ; 501 double HSMHV_dQdext_dVdse ; 502 double HSMHV_dQdext_dVgse ; 503 double HSMHV_dQdext_dVbse ; 504 double HSMHV_dQdext_dTi ; 505 double HSMHV_qbext ; 506 double HSMHV_dQbext_dVdse ; 507 double HSMHV_dQbext_dVgse ; 508 double HSMHV_dQbext_dVbse ; 509 double HSMHV_dQbext_dTi ; 510 double HSMHV_qsext ; 511 double HSMHV_dQsext_dVdse ; 512 double HSMHV_dQsext_dVgse ; 513 double HSMHV_dQsext_dVbse ; 514 double HSMHV_dQsext_dTi ; 515 /* junctions */ 516 double HSMHV_ibd; 517 double HSMHV_gbd; 518 double HSMHV_gbdT; 519 double HSMHV_ibs; 520 double HSMHV_gbs; 521 double HSMHV_gbsT; 522 double HSMHV_qbd; 523 double HSMHV_capbd; 524 double HSMHV_gcbdT; 525 double HSMHV_qbs; 526 double HSMHV_capbs; 527 double HSMHV_gcbsT; 528 529 /* double HSMHV_gtempg; not used */ 530 /* double HSMHV_gtempt; not used */ 531 /* double HSMHV_gtempd; not used */ 532 /* double HSMHV_gtempb; not used */ 533 534 /* double HSMHV_gmt; not used */ 535 /* double HSMHV_isubt; not used */ 536 537 538 /* NQS */ 539 double HSMHV_tau ; 540 double HSMHV_tau_dVgsi ; 541 double HSMHV_tau_dVdsi ; 542 double HSMHV_tau_dVbsi ; 543 double HSMHV_tau_dTi ; 544 double HSMHV_Xd ; 545 double HSMHV_Xd_dVgsi ; 546 double HSMHV_Xd_dVdsi ; 547 double HSMHV_Xd_dVbsi ; 548 double HSMHV_Xd_dTi ; 549 double HSMHV_Qi ; 550 double HSMHV_Qi_dVgsi ; 551 double HSMHV_Qi_dVdsi ; 552 double HSMHV_Qi_dVbsi ; 553 double HSMHV_Qi_dTi ; 554 double HSMHV_taub ; 555 double HSMHV_taub_dVgsi ; 556 double HSMHV_taub_dVdsi ; 557 double HSMHV_taub_dVbsi ; 558 double HSMHV_taub_dTi ; 559 double HSMHV_Qbulk ; /* Qbulk: without overlaps, Qb: inclusive overlaps (see below) */ 560 double HSMHV_Qbulk_dVgsi ; 561 double HSMHV_Qbulk_dVdsi ; 562 double HSMHV_Qbulk_dVbsi ; 563 double HSMHV_Qbulk_dTi ; 564 565 566 567 568 /* internal variables */ 569 double HSMHV_eg ; 570 double HSMHV_beta ; 571 double HSMHV_beta_inv ; 572 double HSMHV_beta2 ; 573 double HSMHV_betatnom ; 574 double HSMHV_nin ; 575 double HSMHV_egp12 ; 576 double HSMHV_egp32 ; 577 double HSMHV_lgate ; 578 double HSMHV_wg ; 579 double HSMHV_mueph ; 580 double HSMHV_mphn0 ; 581 double HSMHV_mphn1 ; 582 double HSMHV_muesr ; 583 double HSMHV_rdvd ; 584 double HSMHV_rsvd ; /* for the reverse mode */ 585 double HSMHV_rd23 ; 586 587 double HSMHV_ninvd ; 588 double HSMHV_ninvd0 ; 589 590 double HSMHV_nsub ; 591 double HSMHV_qnsub ; 592 double HSMHV_qnsub_esi ; 593 double HSMHV_2qnsub_esi ; 594 double HSMHV_ptovr0 ; 595 double HSMHV_ptovr ; 596 double HSMHV_vmax0 ; 597 double HSMHV_vmax ; 598 double HSMHV_pb2 ; 599 double HSMHV_pb20 ; 600 double HSMHV_pb2c ; 601 double HSMHV_cnst0 ; 602 double HSMHV_cnst1 ; 603 double HSMHV_isbd ; 604 double HSMHV_isbd2 ; 605 double HSMHV_isbs ; 606 double HSMHV_isbs2 ; 607 double HSMHV_vbdt ; 608 double HSMHV_vbst ; 609 double HSMHV_exptemp ; 610 double HSMHV_wsti ; 611 double HSMHV_cnstpgd ; 612 /* double HSMHV_ninvp0 ; not used */ 613 /* double HSMHV_ninv0 ; not used */ 614 double HSMHV_grbpb ; 615 double HSMHV_grbpd ; 616 double HSMHV_grbps ; 617 double HSMHV_grg ; 618 double HSMHV_rs ; 619 double HSMHV_rs0 ; 620 double HSMHV_rd ; 621 double HSMHV_rd0 ; 622 double HSMHV_rdtemp0 ; 623 double HSMHV_clmmod ; 624 double HSMHV_lgatesm ; 625 double HSMHV_dVthsm ; 626 double HSMHV_ddlt ; 627 double HSMHV_xsub1 ; 628 double HSMHV_xsub2 ; 629 double HSMHV_xgate ; 630 double HSMHV_xvbs ; 631 double HSMHV_vg2const ; 632 double HSMHV_wdpl ; 633 double HSMHV_wdplp ; 634 double HSMHV_cfrng ; 635 double HSMHV_jd_nvtm_inv ; 636 double HSMHV_jd_expcd ; 637 double HSMHV_jd_expcs ; 638 double HSMHV_sqrt_eg ; 639 640 double HSMHV_egtnom ; 641 double HSMHV_cecox ; 642 double HSMHV_msc ; 643 int HSMHV_flg_pgd ; 644 double HSMHV_ndep_o_esi ; 645 double HSMHV_ninv_o_esi ; 646 double HSMHV_cqyb0 ; 647 double HSMHV_cnst0over ; 648 double HSMHV_cnst0overs ; 649 double HSMHV_costi00 ; 650 double HSMHV_nsti_p2 ; 651 double HSMHV_costi0 ; 652 double HSMHV_costi0_p2 ; 653 double HSMHV_costi1 ; 654 double HSMHV_ps0ldinib ; 655 double HSMHV_ps0ldinibs ; 656 double HSMHV_rdvdtemp0 ; 657 double HSMHV_rthtemp0 ; 658 double HSMHV_powratio ; 659 660 double HSMHV_mueph1 ; 661 double HSMHV_nsubp; 662 double HSMHV_nsubc; 663 664 665 HSMHVhereMKSParam hereMKS ; /* unit-converted parameters */ 666 667 HSMHVbinningParam pParam ; /* binning parameters */ 668 669 /* no use in SPICE3f5 670 double HSMHVdrainSquares; the length of the drain in squares 671 double HSMHVsourceSquares; the length of the source in squares */ 672 double HSMHVsourceConductance; /* cond. of source (or 0): set in setup */ 673 double HSMHVdrainConductance; /* cond. of drain (or 0): set in setup */ 674 675 double HSMHV_icVBS; /* initial condition B-S voltage */ 676 double HSMHV_icVDS; /* initial condition D-S voltage */ 677 double HSMHV_icVGS; /* initial condition G-S voltage */ 678 int HSMHV_off; /* non-zero to indicate device is off for dc analysis */ 679 int HSMHV_mode; /* device mode : 1 = normal, -1 = inverse */ 680 681 unsigned HSMHV_coselfheat_Given :1; 682 unsigned HSMHV_cosubnode_Given :1; 683 unsigned HSMHV_l_Given :1; 684 unsigned HSMHV_w_Given :1; 685 unsigned HSMHV_ad_Given :1; 686 unsigned HSMHV_as_Given :1; 687 unsigned HSMHV_pd_Given :1; 688 unsigned HSMHV_ps_Given :1; 689 unsigned HSMHV_nrd_Given :1; 690 unsigned HSMHV_nrs_Given :1; 691 unsigned HSMHV_dtemp_Given :1; 692 unsigned HSMHV_icVBS_Given :1; 693 unsigned HSMHV_icVDS_Given :1; 694 unsigned HSMHV_icVGS_Given :1; 695 unsigned HSMHV_corbnet_Given :1; 696 unsigned HSMHV_rbpb_Given :1; 697 unsigned HSMHV_rbpd_Given :1; 698 unsigned HSMHV_rbps_Given :1; 699 unsigned HSMHV_rbdb_Given :1; 700 unsigned HSMHV_rbsb_Given :1; 701 unsigned HSMHV_corg_Given :1; 702 unsigned HSMHV_ngcon_Given :1; 703 unsigned HSMHV_xgw_Given :1; 704 unsigned HSMHV_xgl_Given :1; 705 unsigned HSMHV_nf_Given :1; 706 unsigned HSMHV_sa_Given :1; 707 unsigned HSMHV_sb_Given :1; 708 unsigned HSMHV_sd_Given :1; 709 unsigned HSMHV_nsubcdfm_Given :1; 710 unsigned HSMHV_m_Given :1; 711 unsigned HSMHV_subld1_Given :1; 712 unsigned HSMHV_subld2_Given :1; 713 unsigned HSMHV_lover_Given :1; 714 unsigned HSMHV_lovers_Given :1; 715 unsigned HSMHV_loverld_Given :1; 716 unsigned HSMHV_ldrift1_Given :1; 717 unsigned HSMHV_ldrift2_Given :1; 718 unsigned HSMHV_ldrift1s_Given :1; 719 unsigned HSMHV_ldrift2s_Given :1; 720 721 /* unsigned HSMHV_rth0_Given :1; not used */ 722 /* unsigned HSMHV_cth0_Given :1; not used */ 723 724 725 726 /* pointers to sparse matrix */ 727 728 double *HSMHVGgPtr; /* pointer to sparse matrix element at (gate node,gate node) */ 729 double *HSMHVGgpPtr; /* pointer to sparse matrix element at (gate node,gate prime node) */ 730 /* double *HSMHVGdpPtr; not used */ 731 /* double *HSMHVGspPtr; not used */ 732 /* double *HSMHVGbpPtr; not used */ 733 734 double *HSMHVGPgPtr; /* pointer to sparse matrix element at (gate prime node,gate node) */ 735 double *HSMHVGPgpPtr; /* pointer to sparse matrix element at (gate prime node,gate prime node) */ 736 double *HSMHVGPdpPtr; /* pointer to sparse matrix element at (gate prime node,drain prime node) */ 737 double *HSMHVGPspPtr; /* pointer to sparse matrix element at (gate prime node,source prime node) */ 738 double *HSMHVGPbpPtr; /* pointer to sparse matrix element at (gate prime node,bulk prime node) */ 739 740 double *HSMHVDPdPtr; /* pointer to sparse matrix element at (drain prime node,drain node) */ 741 double *HSMHVDPdpPtr; /* pointer to sparse matrix element at (drain prime node,drain prime node) */ 742 double *HSMHVDPgpPtr; /* pointer to sparse matrix element at (drain prime node,gate prime node) */ 743 double *HSMHVDPspPtr; /* pointer to sparse matrix element at (drain prime node,source prime node) */ 744 double *HSMHVDPbpPtr; /* pointer to sparse matrix element at (drain prime node,bulk prime node) */ 745 746 double *HSMHVDdPtr; /* pointer to sparse matrix element at (Drain node,drain node) */ 747 double *HSMHVDdpPtr; /* pointer to sparse matrix element at (drain node,drain prime node) */ 748 double *HSMHVDspPtr; /* pointer to sparse matrix element at (drain node,source prime node) */ 749 double *HSMHVDdbPtr; /* pointer to sparse matrix element at (drain node,drain body node) */ 750 751 double *HSMHVSPsPtr; /* pointer to sparse matrix element at (source prime node,source node) */ 752 double *HSMHVSPspPtr; /* pointer to sparse matrix element at (source prime node,source prime node) */ 753 double *HSMHVSPgpPtr; /* pointer to sparse matrix element at (source prime node,gate prime node) */ 754 double *HSMHVSPdpPtr; /* pointer to sparse matrix element at (source prime node,drain prime node) */ 755 double *HSMHVSPbpPtr; /* pointer to sparse matrix element at (source prime node,bulk prime node) */ 756 757 double *HSMHVSsPtr; /* pointer to sparse matrix element at (source node,source node) */ 758 double *HSMHVSspPtr; /* pointer to sparse matrix element at (source node,source prime node) */ 759 double *HSMHVSdpPtr; /* pointer to sparse matrix element at (source node,drain prime node) */ 760 double *HSMHVSsbPtr; /* pointer to sparse matrix element at (source node,source body node) */ 761 762 double *HSMHVBPgpPtr; /* pointer to sparse matrix element at (bulk prime node,gate prime node) */ 763 double *HSMHVBPbpPtr; /* pointer to sparse matrix element at (bulk prime node,bulk prime node) */ 764 double *HSMHVBPdPtr; /* pointer to sparse matrix element at (bulk prime node,drain node) */ 765 double *HSMHVBPdpPtr; /* pointer to sparse matrix element at (bulk prime node,drain prime node) */ 766 double *HSMHVBPspPtr; /* pointer to sparse matrix element at (bulk prime node,source prime node) */ 767 double *HSMHVBPsPtr; /* pointer to sparse matrix element at (bulk prime node,source node) */ 768 double *HSMHVBPbPtr; /* pointer to sparse matrix element at (bulk prime node,bulk node) */ 769 double *HSMHVBPdbPtr; /* pointer to sparse matrix element at (bulk prime node,source body node) */ 770 double *HSMHVBPsbPtr; /* pointer to sparse matrix element at (bulk prime node,source body node) */ 771 772 double *HSMHVDBdPtr; /* pointer to sparse matrix element at (drain body node,drain node) */ 773 double *HSMHVDBdbPtr; /* pointer to sparse matrix element at (drain body node,drain body node) */ 774 double *HSMHVDBbpPtr; /* pointer to sparse matrix element at (drain body node,bulk prime node) */ 775 /* double *HSMHVDBbPtr; not used */ 776 777 double *HSMHVSBsPtr; /* pointer to sparse matrix element at (source body node,source node) */ 778 double *HSMHVSBbpPtr; /* pointer to sparse matrix element at (source body node,bulk prime node) */ 779 /* double *HSMHVSBbPtr; not used */ 780 double *HSMHVSBsbPtr; /* pointer to sparse matrix element at (source body node,source body node) */ 781 782 /* double *HSMHVBsbPtr; not used */ 783 double *HSMHVBbpPtr; /* pointer to sparse matrix element at (bulk node,bulk prime node) */ 784 /* double *HSMHVBdbPtr; not used */ 785 double *HSMHVBbPtr; /* pointer to sparse matrix element at (bulk node,bulk node) */ 786 787 double *HSMHVTemptempPtr; /* pointer to sparse matrix element at (temp node, temp node) */ 788 double *HSMHVTempdPtr; /* pointer to sparse matrix element at (temp node, drain node) */ 789 double *HSMHVTempdpPtr; /* pointer to sparse matrix element at (temp node, drain prime node) */ 790 double *HSMHVTempsPtr; /* pointer to sparse matrix element at (temp node, source node) */ 791 double *HSMHVTempspPtr; /* pointer to sparse matrix element at (temp node, source prime node) */ 792 /* double *HSMHVTempgPtr; not used */ 793 double *HSMHVTempgpPtr; /* pointer to sparse matrix element at (temp node, gate prime node) */ 794 /* double *HSMHVTempbPtr; not used */ 795 double *HSMHVTempbpPtr; /* pointer to sparse matrix element at (temp node, bulk prime node) */ 796 /* double *HSMHVGtempPtr; not used */ 797 double *HSMHVGPtempPtr; /* pointer to sparse matrix element at (gate prime node, temp node) */ 798 double *HSMHVDPtempPtr; /* pointer to sparse matrix element at (drain prime node, temp node) */ 799 double *HSMHVSPtempPtr; /* pointer to sparse matrix element at (source prime node, temp node) */ 800 /* double *HSMHVBtempPtr; not used */ 801 double *HSMHVBPtempPtr; /* pointer to sparse matrix element at (bulk prime node, temp node) */ 802 double *HSMHVDBtempPtr; /* pointer to sparse matrix element at (drain bulk node, temp node) */ 803 double *HSMHVSBtempPtr; /* pointer to sparse matrix element at (source bulk node, temp node) */ 804 805 double *HSMHVDgpPtr; /* pointer to sparse matrix element at (drain node, gate prime node) */ 806 double *HSMHVDsPtr; /* pointer to sparse matrix element at (drain node, source node) */ 807 double *HSMHVDbpPtr; /* pointer to sparse matrix element at (drain node, bulk prime node) */ 808 double *HSMHVDtempPtr; /* pointer to sparse matrix element at (drain node, temp node) */ 809 double *HSMHVDPsPtr; /* pointer to sparse matrix element at (drain prime node, source node) */ 810 double *HSMHVGPdPtr; /* pointer to sparse matrix element at (gate prime node, drain node) */ 811 double *HSMHVGPsPtr; /* pointer to sparse matrix element at (gate prime node, source node) */ 812 double *HSMHVSdPtr; /* pointer to sparse matrix element at (source node, drain node) */ 813 double *HSMHVSgpPtr; /* pointer to sparse matrix element at (source node, gate prime node) */ 814 double *HSMHVSbpPtr; /* pointer to sparse matrix element at (source node, bulk prime node) */ 815 double *HSMHVStempPtr; /* pointer to sparse matrix element at (source node, temp node) */ 816 double *HSMHVSPdPtr; /* pointer to sparse matrix element at (source prime node, drain node) */ 817 818 /* nqs related pointers */ 819 double *HSMHVDPqiPtr; /* pointer to sparse matrix element at (drain prime node, qi_nqs node) */ 820 double *HSMHVGPqiPtr; /* pointer to sparse matrix element at (gate prime node, qi_nqs node) */ 821 double *HSMHVGPqbPtr; /* pointer to sparse matrix element at (gate prime node, qb_nqs node) */ 822 double *HSMHVSPqiPtr; /* pointer to sparse matrix element at (source prime node, qi_nqs node) */ 823 double *HSMHVBPqbPtr; /* pointer to sparse matrix element at (bulk prime node, qb_nqs node) */ 824 double *HSMHVQIdpPtr; /* pointer to sparse matrix element at (qi_nqs node, drain prime node) */ 825 double *HSMHVQIgpPtr; /* pointer to sparse matrix element at (qi_nqs node, gate prime node) */ 826 double *HSMHVQIspPtr; /* pointer to sparse matrix element at (qi_nqs node, source prime node) */ 827 double *HSMHVQIbpPtr; /* pointer to sparse matrix element at (qi_nqs node, bulk prime node) */ 828 double *HSMHVQIqiPtr; /* pointer to sparse matrix element at (qi_nqs node, qi_nqs node) */ 829 double *HSMHVQBdpPtr; /* pointer to sparse matrix element at (qb_nqs node, drain prime node) */ 830 double *HSMHVQBgpPtr; /* pointer to sparse matrix element at (qb_nqs node, gate prime node) */ 831 double *HSMHVQBspPtr; /* pointer to sparse matrix element at (qb_nqs node, source prime node) */ 832 double *HSMHVQBbpPtr; /* pointer to sparse matrix element at (qb_nqs node, bulk prime node) */ 833 double *HSMHVQBqbPtr; /* pointer to sparse matrix element at (qb_nqs node, qb_nqs node) */ 834 double *HSMHVQItempPtr; /* pointer to sparse matrix element at (qi_nqs node, temp node) */ 835 double *HSMHVQBtempPtr; /* pointer to sparse matrix element at (qb_nqs node, temp node) */ 836 837 /* Substrate effect related pointers */ 838 double *HSMHVDsubPtr; /* pointer to sparse matrix element at (drain node, substrate node) */ 839 double *HSMHVDPsubPtr; /* pointer to sparse matrix element at (drain prime node, substrate node) */ 840 double *HSMHVSsubPtr; /* pointer to sparse matrix element at (source node, substrate node) */ 841 double *HSMHVSPsubPtr; /* pointer to sparse matrix element at (source prime node, substrate node) */ 842 843 844 /* common state values in hisim module */ 845 #define HSMHVvbd HSMHVstates+ 0 846 #define HSMHVvbs HSMHVstates+ 1 847 #define HSMHVvgs HSMHVstates+ 2 848 #define HSMHVvds HSMHVstates+ 3 849 #define HSMHVvdbs HSMHVstates+ 4 850 #define HSMHVvdbd HSMHVstates+ 5 851 #define HSMHVvsbs HSMHVstates+ 6 852 #define HSMHVvges HSMHVstates+ 7 853 #define HSMHVvsubs HSMHVstates+ 8 /* substrate bias */ 854 #define HSMHVdeltemp HSMHVstates+ 9 855 #define HSMHVvdse HSMHVstates+ 10 856 #define HSMHVvgse HSMHVstates+ 11 857 #define HSMHVvbse HSMHVstates+ 12 858 859 #define HSMHVqb HSMHVstates+ 13 860 #define HSMHVcqb HSMHVstates+ 14 861 #define HSMHVqg HSMHVstates+ 15 862 #define HSMHVcqg HSMHVstates+ 16 863 #define HSMHVqd HSMHVstates+ 17 864 #define HSMHVcqd HSMHVstates+ 18 865 866 #define HSMHVqbs HSMHVstates+ 19 867 #define HSMHVcqbs HSMHVstates+ 20 868 #define HSMHVqbd HSMHVstates+ 21 869 #define HSMHVcqbd HSMHVstates+ 22 870 871 #define HSMHVqth HSMHVstates+ 23 872 #define HSMHVcqth HSMHVstates+ 24 873 874 /*add fringing capacitance*/ 875 #define HSMHVqfd HSMHVstates+ 25 876 #define HSMHVcqfd HSMHVstates+ 26 877 #define HSMHVqfs HSMHVstates+ 27 878 #define HSMHVcqfs HSMHVstates+ 28 879 880 /*add external drain capacitance*/ 881 #define HSMHVqdE HSMHVstates+ 29 882 #define HSMHVcqdE HSMHVstates+ 30 883 884 #define HSMHVnumStates 31 885 886 /* nqs charges */ 887 #define HSMHVqi_nqs HSMHVstates+ 32 888 #define HSMHVdotqi_nqs HSMHVstates + 33 889 #define HSMHVqb_nqs HSMHVstates+ 34 890 #define HSMHVdotqb_nqs HSMHVstates + 35 891 892 #define HSMHVnumStatesNqs 36 893 894 /* indices to the array of HiSIMHV NOISE SOURCES */ 895 #define HSMHVRDNOIZ 0 896 #define HSMHVRSNOIZ 1 897 #define HSMHVIDNOIZ 2 898 #define HSMHVFLNOIZ 3 899 #define HSMHVIGNOIZ 4 900 #define HSMHVTOTNOIZ 5 901 902 #define HSMHVNSRCS 6 /* the number of HiSIMHV MOSFET noise sources */ 903 904 #ifndef NONOISE 905 double HSMHVnVar[NSTATVARS][HSMHVNSRCS]; 906 #else /* NONOISE */ 907 double **HSMHVnVar; 908 #endif /* NONOISE */ 909 910 } HSMHVinstance ; 911 912 913 /* per model data */ 914 915 typedef struct sHSMHVmodel { /* model structure for a resistor */ 916 917 struct GENmodel gen; 918 919 #define HSMHVmodType gen.GENmodType 920 #define HSMHVnextModel(inst) ((struct sHSMHVmodel *)((inst)->gen.GENnextModel)) 921 #define HSMHVinstances(inst) ((HSMHVinstance *)((inst)->gen.GENinstances)) 922 #define HSMHVmodName gen.GENmodName 923 924 int HSMHV_type; /* device type: 1 = nmos, -1 = pmos */ 925 int HSMHV_level; /* level */ 926 int HSMHV_info; /* information */ 927 int HSMHV_noise; /* noise model selecter see hsmhvnoi.c */ 928 char *HSMHV_version; /* model version */ 929 int HSMHV_show; /* show physical value 1, 2, ... , 11 */ 930 931 932 int HSMHV_corsrd ; 933 int HSMHV_corg ; 934 int HSMHV_coiprv ; 935 int HSMHV_copprv ; 936 int HSMHV_coadov ; 937 int HSMHV_coisub ; 938 int HSMHV_coiigs ; 939 int HSMHV_cogidl ; 940 int HSMHV_coovlp ; 941 int HSMHV_coovlps ; 942 int HSMHV_coflick ; 943 int HSMHV_coisti ; 944 int HSMHV_conqs ; 945 int HSMHV_corbnet ; 946 int HSMHV_cothrml; 947 int HSMHV_coign; /* Induced gate noise */ 948 int HSMHV_codfm; /* DFM */ 949 int HSMHV_coqovsm ; 950 int HSMHV_coselfheat; /* Self-heating model */ 951 int HSMHV_cosubnode; /* switch tempNode to subNode */ 952 int HSMHV_cosym; /* Symmetry model for HV */ 953 int HSMHV_cotemp; 954 int HSMHV_coldrift; 955 956 957 double HSMHV_vmax ; 958 double HSMHV_vmaxt1 ; 959 double HSMHV_vmaxt2 ; 960 double HSMHV_bgtmp1 ; 961 double HSMHV_bgtmp2 ; 962 double HSMHV_eg0 ; 963 double HSMHV_tox ; 964 double HSMHV_xld ; 965 double HSMHV_xldld ; 966 double HSMHV_xwdld ; 967 double HSMHV_lover ; 968 double HSMHV_lovers ; 969 double HSMHV_rdov11 ; 970 double HSMHV_rdov12 ; 971 double HSMHV_rdov13 ; 972 double HSMHV_rdslp1 ; 973 double HSMHV_rdict1 ; 974 double HSMHV_rdslp2 ; 975 double HSMHV_rdict2 ; 976 double HSMHV_loverld ; 977 double HSMHV_ldrift1 ; 978 double HSMHV_ldrift2 ; 979 double HSMHV_ldrift1s ; 980 double HSMHV_ldrift2s ; 981 double HSMHV_subld1 ; 982 double HSMHV_subld2 ; 983 double HSMHV_ddltmax ; 984 double HSMHV_ddltslp ; 985 double HSMHV_ddltict ; 986 double HSMHV_vfbover ; 987 double HSMHV_nover ; 988 double HSMHV_novers ; 989 double HSMHV_xwd ; 990 double HSMHV_xwdc ; 991 double HSMHV_xl ; 992 double HSMHV_xw ; 993 double HSMHV_saref ; 994 double HSMHV_sbref ; 995 double HSMHV_ll ; 996 double HSMHV_lld ; 997 double HSMHV_lln ; 998 double HSMHV_wl ; 999 double HSMHV_wl1 ; 1000 double HSMHV_wl1p ; 1001 double HSMHV_wl2 ; 1002 double HSMHV_wl2p ; 1003 double HSMHV_wld ; 1004 double HSMHV_wln ; 1005 double HSMHV_xqy ; 1006 double HSMHV_xqy1 ; 1007 double HSMHV_xqy2 ; 1008 double HSMHV_rs; /* source contact resistance */ 1009 double HSMHV_rd; /* drain contact resistance */ 1010 double HSMHV_rsh; /* source/drain diffusion sheet resistance */ 1011 double HSMHV_rshg; 1012 /* double HSMHV_ngcon; */ 1013 /* double HSMHV_xgw; */ 1014 /* double HSMHV_xgl; */ 1015 /* double HSMHV_nf; */ 1016 double HSMHV_vfbc ; 1017 double HSMHV_vbi ; 1018 double HSMHV_nsubc ; 1019 double HSMHV_qdftvd ; 1020 double HSMHV_parl2 ; 1021 double HSMHV_lp ; 1022 double HSMHV_nsubp ; 1023 double HSMHV_nsubp0 ; 1024 double HSMHV_nsubwp ; 1025 double HSMHV_scp1 ; 1026 double HSMHV_scp2 ; 1027 double HSMHV_scp3 ; 1028 double HSMHV_sc1 ; 1029 double HSMHV_sc2 ; 1030 double HSMHV_sc3 ; 1031 double HSMHV_sc4 ; 1032 double HSMHV_pgd1 ; 1033 double HSMHV_pgd2 ; 1034 double HSMHV_pgd3 ; 1035 double HSMHV_pgd4 ; 1036 double HSMHV_ndep ; 1037 double HSMHV_ndepl ; 1038 double HSMHV_ndeplp ; 1039 double HSMHV_ninv ; 1040 double HSMHV_ninvd ; 1041 double HSMHV_ninvdw ; 1042 double HSMHV_ninvdwp ; 1043 double HSMHV_ninvdt1 ; 1044 double HSMHV_ninvdt2 ; 1045 double HSMHV_muecb0 ; 1046 double HSMHV_muecb1 ; 1047 double HSMHV_mueph1 ; 1048 double HSMHV_mueph0 ; 1049 double HSMHV_muephw ; 1050 double HSMHV_muepwp ; 1051 double HSMHV_muephl ; 1052 double HSMHV_mueplp ; 1053 double HSMHV_muephs ; 1054 double HSMHV_muepsp ; 1055 double HSMHV_vtmp ; 1056 double HSMHV_wvth0 ; 1057 double HSMHV_muesr1 ; 1058 double HSMHV_muesr0 ; 1059 double HSMHV_muesrw ; 1060 double HSMHV_mueswp ; 1061 double HSMHV_muesrl ; 1062 double HSMHV_mueslp ; 1063 double HSMHV_bb ; 1064 double HSMHV_sub1 ; 1065 double HSMHV_sub2 ; 1066 double HSMHV_svgs ; 1067 double HSMHV_svbs ; 1068 double HSMHV_svbsl ; 1069 double HSMHV_svds ; 1070 double HSMHV_slg ; 1071 double HSMHV_sub1l ; 1072 double HSMHV_sub2l ; 1073 double HSMHV_fn1 ; 1074 double HSMHV_fn2 ; 1075 double HSMHV_fn3 ; 1076 double HSMHV_fvbs ; 1077 double HSMHV_svgsl ; 1078 double HSMHV_svgslp ; 1079 double HSMHV_svgswp ; 1080 double HSMHV_svgsw ; 1081 double HSMHV_svbslp ; 1082 double HSMHV_slgl ; 1083 double HSMHV_slglp ; 1084 double HSMHV_sub1lp ; 1085 double HSMHV_nsti ; 1086 double HSMHV_wsti ; 1087 double HSMHV_wstil ; 1088 double HSMHV_wstilp ; 1089 double HSMHV_wstiw ; 1090 double HSMHV_wstiwp ; 1091 double HSMHV_scsti1 ; 1092 double HSMHV_scsti2 ; 1093 double HSMHV_vthsti ; 1094 double HSMHV_vdsti ; 1095 double HSMHV_muesti1 ; 1096 double HSMHV_muesti2 ; 1097 double HSMHV_muesti3 ; 1098 double HSMHV_nsubpsti1 ; 1099 double HSMHV_nsubpsti2 ; 1100 double HSMHV_nsubpsti3 ; 1101 double HSMHV_lpext ; 1102 double HSMHV_npext ; 1103 double HSMHV_scp22 ; 1104 double HSMHV_scp21 ; 1105 double HSMHV_bs1 ; 1106 double HSMHV_bs2 ; 1107 double HSMHV_cgso ; 1108 double HSMHV_cgdo ; 1109 double HSMHV_cgbo ; 1110 double HSMHV_tpoly ; 1111 double HSMHV_js0 ; 1112 double HSMHV_js0sw ; 1113 double HSMHV_nj ; 1114 double HSMHV_njsw ; 1115 double HSMHV_xti ; 1116 double HSMHV_cj ; 1117 double HSMHV_cjsw ; 1118 double HSMHV_cjswg ; 1119 double HSMHV_mj ; 1120 double HSMHV_mjsw ; 1121 double HSMHV_mjswg ; 1122 double HSMHV_xti2 ; 1123 double HSMHV_cisb ; 1124 double HSMHV_cvb ; 1125 double HSMHV_ctemp ; 1126 double HSMHV_cisbk ; 1127 double HSMHV_cvbk ; 1128 double HSMHV_divx ; 1129 double HSMHV_pb ; 1130 double HSMHV_pbsw ; 1131 double HSMHV_pbswg ; 1132 double HSMHV_clm1 ; 1133 double HSMHV_clm2 ; 1134 double HSMHV_clm3 ; 1135 double HSMHV_clm5 ; 1136 double HSMHV_clm6 ; 1137 double HSMHV_muetmp ; 1138 double HSMHV_vover ; 1139 double HSMHV_voverp ; 1140 double HSMHV_vovers ; 1141 double HSMHV_voversp ; 1142 double HSMHV_wfc ; 1143 double HSMHV_nsubcw ; 1144 double HSMHV_nsubcwp ; 1145 double HSMHV_qme1 ; 1146 double HSMHV_qme2 ; 1147 double HSMHV_qme3 ; 1148 double HSMHV_gidl1 ; 1149 double HSMHV_gidl2 ; 1150 double HSMHV_gidl3 ; 1151 double HSMHV_gidl4 ; 1152 double HSMHV_gidl5 ; 1153 double HSMHV_gleak1 ; 1154 double HSMHV_gleak2 ; 1155 double HSMHV_gleak3 ; 1156 double HSMHV_gleak4 ; 1157 double HSMHV_gleak5 ; 1158 double HSMHV_gleak6 ; 1159 double HSMHV_gleak7 ; 1160 double HSMHV_glpart1 ; 1161 double HSMHV_glksd1 ; 1162 double HSMHV_glksd2 ; 1163 double HSMHV_glksd3 ; 1164 double HSMHV_glkb1 ; 1165 double HSMHV_glkb2 ; 1166 double HSMHV_glkb3 ; 1167 double HSMHV_egig; 1168 double HSMHV_igtemp2; 1169 double HSMHV_igtemp3; 1170 double HSMHV_vzadd0 ; 1171 double HSMHV_pzadd0 ; 1172 double HSMHV_nftrp ; 1173 double HSMHV_nfalp ; 1174 double HSMHV_cit ; 1175 double HSMHV_falph ; 1176 double HSMHV_kappa ; 1177 double HSMHV_pthrou ; 1178 double HSMHV_vdiffj ; 1179 double HSMHV_dly1 ; 1180 double HSMHV_dly2 ; 1181 double HSMHV_dly3 ; 1182 double HSMHV_dlyov; 1183 double HSMHV_tnom ; 1184 double HSMHV_ovslp ; 1185 double HSMHV_ovmag ; 1186 /* substrate resistances */ 1187 double HSMHV_gbmin; 1188 double HSMHV_rbpb ; 1189 double HSMHV_rbpd ; 1190 double HSMHV_rbps ; 1191 double HSMHV_rbdb ; 1192 double HSMHV_rbsb ; 1193 /* IBPC */ 1194 double HSMHV_ibpc1 ; 1195 double HSMHV_ibpc2 ; 1196 /* DFM */ 1197 double HSMHV_mphdfm ; 1198 1199 double HSMHV_vbsmin ; 1200 double HSMHV_rdvg11 ; 1201 double HSMHV_rdvg12 ; 1202 double HSMHV_rd20 ; 1203 double HSMHV_qovsm ; 1204 double HSMHV_ldrift ; 1205 double HSMHV_rd21 ; 1206 double HSMHV_rd22 ; 1207 double HSMHV_rd22d ; 1208 double HSMHV_rd23 ; 1209 double HSMHV_rd24 ; 1210 double HSMHV_rd25 ; 1211 double HSMHV_rd26 ; 1212 double HSMHV_rdvdl ; 1213 double HSMHV_rdvdlp ; 1214 double HSMHV_rdvds ; 1215 double HSMHV_rdvdsp ; 1216 double HSMHV_rd23l ; 1217 double HSMHV_rd23lp ; 1218 double HSMHV_rd23s ; 1219 double HSMHV_rd23sp ; 1220 double HSMHV_rds ; 1221 double HSMHV_rdsp ; 1222 1223 double HSMHV_rdvd ; 1224 double HSMHV_rdvb ; 1225 1226 double HSMHV_rdvsub ; /* substrate effect */ 1227 double HSMHV_rdvdsub ; /* substrate effect */ 1228 double HSMHV_ddrift ; /* substrate effect */ 1229 double HSMHV_vbisub ; /* substrate effect */ 1230 double HSMHV_nsubsub ; /* substrate effect */ 1231 1232 double HSMHV_rth0 ; 1233 double HSMHV_cth0 ; 1234 double HSMHV_powrat ; 1235 1236 double HSMHV_tcjbd ; 1237 double HSMHV_tcjbs ; 1238 double HSMHV_tcjbdsw ; 1239 double HSMHV_tcjbssw ; 1240 double HSMHV_tcjbdswg ; 1241 double HSMHV_tcjbsswg ; 1242 1243 1244 double HSMHV_rdtemp1 ; 1245 double HSMHV_rdtemp2 ; 1246 double HSMHV_rth0r ; /* heat radiation for SHE */ 1247 double HSMHV_rdvdtemp1 ; 1248 double HSMHV_rdvdtemp2 ; 1249 double HSMHV_rth0w ; 1250 double HSMHV_rth0wp ; 1251 double HSMHV_rth0nf ; 1252 1253 double HSMHV_rthtemp1 ; 1254 double HSMHV_rthtemp2 ; 1255 double HSMHV_prattemp1 ; 1256 double HSMHV_prattemp2 ; 1257 1258 1259 double HSMHV_cvdsover ; 1260 double HSMHV_shemax; 1261 1262 /* binning parameters */ 1263 double HSMHV_lmin ; 1264 double HSMHV_lmax ; 1265 double HSMHV_wmin ; 1266 double HSMHV_wmax ; 1267 double HSMHV_lbinn ; 1268 double HSMHV_wbinn ; 1269 1270 /* Length dependence */ 1271 double HSMHV_lvmax ; 1272 double HSMHV_lbgtmp1 ; 1273 double HSMHV_lbgtmp2 ; 1274 double HSMHV_leg0 ; 1275 double HSMHV_lvfbover ; 1276 double HSMHV_lnover ; 1277 double HSMHV_lnovers ; 1278 double HSMHV_lwl2 ; 1279 double HSMHV_lvfbc ; 1280 double HSMHV_lnsubc ; 1281 double HSMHV_lnsubp ; 1282 double HSMHV_lscp1 ; 1283 double HSMHV_lscp2 ; 1284 double HSMHV_lscp3 ; 1285 double HSMHV_lsc1 ; 1286 double HSMHV_lsc2 ; 1287 double HSMHV_lsc3 ; 1288 double HSMHV_lpgd1 ; 1289 double HSMHV_lpgd3 ; 1290 double HSMHV_lndep ; 1291 double HSMHV_lninv ; 1292 double HSMHV_lmuecb0 ; 1293 double HSMHV_lmuecb1 ; 1294 double HSMHV_lmueph1 ; 1295 double HSMHV_lvtmp ; 1296 double HSMHV_lwvth0 ; 1297 double HSMHV_lmuesr1 ; 1298 double HSMHV_lmuetmp ; 1299 double HSMHV_lsub1 ; 1300 double HSMHV_lsub2 ; 1301 double HSMHV_lsvds ; 1302 double HSMHV_lsvbs ; 1303 double HSMHV_lsvgs ; 1304 double HSMHV_lfn1 ; 1305 double HSMHV_lfn2 ; 1306 double HSMHV_lfn3 ; 1307 double HSMHV_lfvbs ; 1308 double HSMHV_lnsti ; 1309 double HSMHV_lwsti ; 1310 double HSMHV_lscsti1 ; 1311 double HSMHV_lscsti2 ; 1312 double HSMHV_lvthsti ; 1313 double HSMHV_lmuesti1 ; 1314 double HSMHV_lmuesti2 ; 1315 double HSMHV_lmuesti3 ; 1316 double HSMHV_lnsubpsti1 ; 1317 double HSMHV_lnsubpsti2 ; 1318 double HSMHV_lnsubpsti3 ; 1319 double HSMHV_lcgso ; 1320 double HSMHV_lcgdo ; 1321 double HSMHV_ljs0 ; 1322 double HSMHV_ljs0sw ; 1323 double HSMHV_lnj ; 1324 double HSMHV_lcisbk ; 1325 double HSMHV_lclm1 ; 1326 double HSMHV_lclm2 ; 1327 double HSMHV_lclm3 ; 1328 double HSMHV_lwfc ; 1329 double HSMHV_lgidl1 ; 1330 double HSMHV_lgidl2 ; 1331 double HSMHV_lgleak1 ; 1332 double HSMHV_lgleak2 ; 1333 double HSMHV_lgleak3 ; 1334 double HSMHV_lgleak6 ; 1335 double HSMHV_lglksd1 ; 1336 double HSMHV_lglksd2 ; 1337 double HSMHV_lglkb1 ; 1338 double HSMHV_lglkb2 ; 1339 double HSMHV_lnftrp ; 1340 double HSMHV_lnfalp ; 1341 double HSMHV_lpthrou ; 1342 double HSMHV_lvdiffj ; 1343 double HSMHV_libpc1 ; 1344 double HSMHV_libpc2 ; 1345 double HSMHV_lcgbo ; 1346 double HSMHV_lcvdsover ; 1347 double HSMHV_lfalph ; 1348 double HSMHV_lnpext ; 1349 double HSMHV_lpowrat ; 1350 double HSMHV_lrd ; 1351 double HSMHV_lrd22 ; 1352 double HSMHV_lrd23 ; 1353 double HSMHV_lrd24 ; 1354 double HSMHV_lrdict1 ; 1355 double HSMHV_lrdov13 ; 1356 double HSMHV_lrdslp1 ; 1357 double HSMHV_lrdvb ; 1358 double HSMHV_lrdvd ; 1359 double HSMHV_lrdvg11 ; 1360 double HSMHV_lrs ; 1361 double HSMHV_lrth0 ; 1362 double HSMHV_lvover ; 1363 1364 /* Width dependence */ 1365 double HSMHV_wvmax ; 1366 double HSMHV_wbgtmp1 ; 1367 double HSMHV_wbgtmp2 ; 1368 double HSMHV_weg0 ; 1369 double HSMHV_wvfbover ; 1370 double HSMHV_wnover ; 1371 double HSMHV_wnovers ; 1372 double HSMHV_wwl2 ; 1373 double HSMHV_wvfbc ; 1374 double HSMHV_wnsubc ; 1375 double HSMHV_wnsubp ; 1376 double HSMHV_wscp1 ; 1377 double HSMHV_wscp2 ; 1378 double HSMHV_wscp3 ; 1379 double HSMHV_wsc1 ; 1380 double HSMHV_wsc2 ; 1381 double HSMHV_wsc3 ; 1382 double HSMHV_wpgd1 ; 1383 double HSMHV_wpgd3 ; 1384 double HSMHV_wndep ; 1385 double HSMHV_wninv ; 1386 double HSMHV_wmuecb0 ; 1387 double HSMHV_wmuecb1 ; 1388 double HSMHV_wmueph1 ; 1389 double HSMHV_wvtmp ; 1390 double HSMHV_wwvth0 ; 1391 double HSMHV_wmuesr1 ; 1392 double HSMHV_wmuetmp ; 1393 double HSMHV_wsub1 ; 1394 double HSMHV_wsub2 ; 1395 double HSMHV_wsvds ; 1396 double HSMHV_wsvbs ; 1397 double HSMHV_wsvgs ; 1398 double HSMHV_wfn1 ; 1399 double HSMHV_wfn2 ; 1400 double HSMHV_wfn3 ; 1401 double HSMHV_wfvbs ; 1402 double HSMHV_wnsti ; 1403 double HSMHV_wwsti ; 1404 double HSMHV_wscsti1 ; 1405 double HSMHV_wscsti2 ; 1406 double HSMHV_wvthsti ; 1407 double HSMHV_wmuesti1 ; 1408 double HSMHV_wmuesti2 ; 1409 double HSMHV_wmuesti3 ; 1410 double HSMHV_wnsubpsti1 ; 1411 double HSMHV_wnsubpsti2 ; 1412 double HSMHV_wnsubpsti3 ; 1413 double HSMHV_wcgso ; 1414 double HSMHV_wcgdo ; 1415 double HSMHV_wjs0 ; 1416 double HSMHV_wjs0sw ; 1417 double HSMHV_wnj ; 1418 double HSMHV_wcisbk ; 1419 double HSMHV_wclm1 ; 1420 double HSMHV_wclm2 ; 1421 double HSMHV_wclm3 ; 1422 double HSMHV_wwfc ; 1423 double HSMHV_wgidl1 ; 1424 double HSMHV_wgidl2 ; 1425 double HSMHV_wgleak1 ; 1426 double HSMHV_wgleak2 ; 1427 double HSMHV_wgleak3 ; 1428 double HSMHV_wgleak6 ; 1429 double HSMHV_wglksd1 ; 1430 double HSMHV_wglksd2 ; 1431 double HSMHV_wglkb1 ; 1432 double HSMHV_wglkb2 ; 1433 double HSMHV_wnftrp ; 1434 double HSMHV_wnfalp ; 1435 double HSMHV_wpthrou ; 1436 double HSMHV_wvdiffj ; 1437 double HSMHV_wibpc1 ; 1438 double HSMHV_wibpc2 ; 1439 double HSMHV_wcgbo ; 1440 double HSMHV_wcvdsover ; 1441 double HSMHV_wfalph ; 1442 double HSMHV_wnpext ; 1443 double HSMHV_wpowrat ; 1444 double HSMHV_wrd ; 1445 double HSMHV_wrd22 ; 1446 double HSMHV_wrd23 ; 1447 double HSMHV_wrd24 ; 1448 double HSMHV_wrdict1 ; 1449 double HSMHV_wrdov13 ; 1450 double HSMHV_wrdslp1 ; 1451 double HSMHV_wrdvb ; 1452 double HSMHV_wrdvd ; 1453 double HSMHV_wrdvg11 ; 1454 double HSMHV_wrs ; 1455 double HSMHV_wrth0 ; 1456 double HSMHV_wvover ; 1457 1458 /* Cross-term dependence */ 1459 double HSMHV_pvmax ; 1460 double HSMHV_pbgtmp1 ; 1461 double HSMHV_pbgtmp2 ; 1462 double HSMHV_peg0 ; 1463 double HSMHV_pvfbover ; 1464 double HSMHV_pnover ; 1465 double HSMHV_pnovers ; 1466 double HSMHV_pwl2 ; 1467 double HSMHV_pvfbc ; 1468 double HSMHV_pnsubc ; 1469 double HSMHV_pnsubp ; 1470 double HSMHV_pscp1 ; 1471 double HSMHV_pscp2 ; 1472 double HSMHV_pscp3 ; 1473 double HSMHV_psc1 ; 1474 double HSMHV_psc2 ; 1475 double HSMHV_psc3 ; 1476 double HSMHV_ppgd1 ; 1477 double HSMHV_ppgd3 ; 1478 double HSMHV_pndep ; 1479 double HSMHV_pninv ; 1480 double HSMHV_pmuecb0 ; 1481 double HSMHV_pmuecb1 ; 1482 double HSMHV_pmueph1 ; 1483 double HSMHV_pvtmp ; 1484 double HSMHV_pwvth0 ; 1485 double HSMHV_pmuesr1 ; 1486 double HSMHV_pmuetmp ; 1487 double HSMHV_psub1 ; 1488 double HSMHV_psub2 ; 1489 double HSMHV_psvds ; 1490 double HSMHV_psvbs ; 1491 double HSMHV_psvgs ; 1492 double HSMHV_pfn1 ; 1493 double HSMHV_pfn2 ; 1494 double HSMHV_pfn3 ; 1495 double HSMHV_pfvbs ; 1496 double HSMHV_pnsti ; 1497 double HSMHV_pwsti ; 1498 double HSMHV_pscsti1 ; 1499 double HSMHV_pscsti2 ; 1500 double HSMHV_pvthsti ; 1501 double HSMHV_pmuesti1 ; 1502 double HSMHV_pmuesti2 ; 1503 double HSMHV_pmuesti3 ; 1504 double HSMHV_pnsubpsti1 ; 1505 double HSMHV_pnsubpsti2 ; 1506 double HSMHV_pnsubpsti3 ; 1507 double HSMHV_pcgso ; 1508 double HSMHV_pcgdo ; 1509 double HSMHV_pjs0 ; 1510 double HSMHV_pjs0sw ; 1511 double HSMHV_pnj ; 1512 double HSMHV_pcisbk ; 1513 double HSMHV_pclm1 ; 1514 double HSMHV_pclm2 ; 1515 double HSMHV_pclm3 ; 1516 double HSMHV_pwfc ; 1517 double HSMHV_pgidl1 ; 1518 double HSMHV_pgidl2 ; 1519 double HSMHV_pgleak1 ; 1520 double HSMHV_pgleak2 ; 1521 double HSMHV_pgleak3 ; 1522 double HSMHV_pgleak6 ; 1523 double HSMHV_pglksd1 ; 1524 double HSMHV_pglksd2 ; 1525 double HSMHV_pglkb1 ; 1526 double HSMHV_pglkb2 ; 1527 double HSMHV_pnftrp ; 1528 double HSMHV_pnfalp ; 1529 double HSMHV_ppthrou ; 1530 double HSMHV_pvdiffj ; 1531 double HSMHV_pibpc1 ; 1532 double HSMHV_pibpc2 ; 1533 double HSMHV_pcgbo ; 1534 double HSMHV_pcvdsover ; 1535 double HSMHV_pfalph ; 1536 double HSMHV_pnpext ; 1537 double HSMHV_ppowrat ; 1538 double HSMHV_prd ; 1539 double HSMHV_prd22 ; 1540 double HSMHV_prd23 ; 1541 double HSMHV_prd24 ; 1542 double HSMHV_prdict1 ; 1543 double HSMHV_prdov13 ; 1544 double HSMHV_prdslp1 ; 1545 double HSMHV_prdvb ; 1546 double HSMHV_prdvd ; 1547 double HSMHV_prdvg11 ; 1548 double HSMHV_prs ; 1549 double HSMHV_prth0 ; 1550 double HSMHV_pvover ; 1551 1552 /* internal variables */ 1553 double HSMHV_vcrit ; 1554 int HSMHV_flg_qme ; 1555 double HSMHV_qme12 ; 1556 double HSMHV_ktnom ; 1557 1558 double HSMHVvgsMax; 1559 double HSMHVvgdMax; 1560 double HSMHVvgbMax; 1561 double HSMHVvdsMax; 1562 double HSMHVvbsMax; 1563 double HSMHVvbdMax; 1564 double HSMHVvgsrMax; 1565 double HSMHVvgdrMax; 1566 double HSMHVvgbrMax; 1567 double HSMHVvbsrMax; 1568 double HSMHVvbdrMax; 1569 1570 HSMHVmodelMKSParam modelMKS ; /* unit-converted parameters */ 1571 1572 1573 /* flag for model */ 1574 unsigned HSMHV_type_Given :1; 1575 unsigned HSMHV_level_Given :1; 1576 unsigned HSMHV_info_Given :1; 1577 unsigned HSMHV_noise_Given :1; 1578 unsigned HSMHV_version_Given :1; 1579 unsigned HSMHV_show_Given :1; 1580 unsigned HSMHV_corsrd_Given :1; 1581 unsigned HSMHV_corg_Given :1; 1582 unsigned HSMHV_coiprv_Given :1; 1583 unsigned HSMHV_copprv_Given :1; 1584 unsigned HSMHV_coadov_Given :1; 1585 unsigned HSMHV_coisub_Given :1; 1586 unsigned HSMHV_coiigs_Given :1; 1587 unsigned HSMHV_cogidl_Given :1; 1588 unsigned HSMHV_coovlp_Given :1; 1589 unsigned HSMHV_coovlps_Given :1; 1590 unsigned HSMHV_coflick_Given :1; 1591 unsigned HSMHV_coisti_Given :1; 1592 unsigned HSMHV_conqs_Given :1; 1593 unsigned HSMHV_corbnet_Given :1; 1594 unsigned HSMHV_cothrml_Given :1; 1595 unsigned HSMHV_coign_Given :1; /* Induced gate noise */ 1596 unsigned HSMHV_codfm_Given :1; /* DFM */ 1597 unsigned HSMHV_coqovsm_Given :1; 1598 unsigned HSMHV_coselfheat_Given :1; /* Self-heating model */ 1599 unsigned HSMHV_cosubnode_Given :1; /* switch tempNode to subNode */ 1600 unsigned HSMHV_cosym_Given :1; /* Symmetry model for HV */ 1601 unsigned HSMHV_cotemp_Given :1; 1602 unsigned HSMHV_coldrift_Given :1; 1603 unsigned HSMHV_kappa_Given :1; 1604 unsigned HSMHV_pthrou_Given :1; 1605 unsigned HSMHV_vdiffj_Given :1; 1606 unsigned HSMHV_vmax_Given :1; 1607 unsigned HSMHV_vmaxt1_Given :1; 1608 unsigned HSMHV_vmaxt2_Given :1; 1609 unsigned HSMHV_bgtmp1_Given :1; 1610 unsigned HSMHV_bgtmp2_Given :1; 1611 unsigned HSMHV_eg0_Given :1; 1612 unsigned HSMHV_tox_Given :1; 1613 unsigned HSMHV_xld_Given :1; 1614 unsigned HSMHV_xldld_Given :1; 1615 unsigned HSMHV_xwdld_Given :1; 1616 unsigned HSMHV_lover_Given :1; 1617 unsigned HSMHV_lovers_Given :1; 1618 unsigned HSMHV_rdov11_Given :1; 1619 unsigned HSMHV_rdov12_Given :1; 1620 unsigned HSMHV_rdov13_Given :1; 1621 unsigned HSMHV_rdslp1_Given :1; 1622 unsigned HSMHV_rdict1_Given :1; 1623 unsigned HSMHV_rdslp2_Given :1; 1624 unsigned HSMHV_rdict2_Given :1; 1625 unsigned HSMHV_loverld_Given :1; 1626 unsigned HSMHV_ldrift1_Given :1; 1627 unsigned HSMHV_ldrift2_Given :1; 1628 unsigned HSMHV_ldrift1s_Given :1; 1629 unsigned HSMHV_ldrift2s_Given :1; 1630 unsigned HSMHV_subld1_Given :1; 1631 unsigned HSMHV_subld2_Given :1; 1632 unsigned HSMHV_ddltmax_Given :1; 1633 unsigned HSMHV_ddltslp_Given :1; 1634 unsigned HSMHV_ddltict_Given :1; 1635 unsigned HSMHV_vfbover_Given :1; 1636 unsigned HSMHV_nover_Given :1; 1637 unsigned HSMHV_novers_Given :1; 1638 unsigned HSMHV_xwd_Given :1; 1639 unsigned HSMHV_xwdc_Given :1; 1640 unsigned HSMHV_xl_Given :1; 1641 unsigned HSMHV_xw_Given :1; 1642 unsigned HSMHV_saref_Given :1; 1643 unsigned HSMHV_sbref_Given :1; 1644 unsigned HSMHV_ll_Given :1; 1645 unsigned HSMHV_lld_Given :1; 1646 unsigned HSMHV_lln_Given :1; 1647 unsigned HSMHV_wl_Given :1; 1648 unsigned HSMHV_wl1_Given :1; 1649 unsigned HSMHV_wl1p_Given :1; 1650 unsigned HSMHV_wl2_Given :1; 1651 unsigned HSMHV_wl2p_Given :1; 1652 unsigned HSMHV_wld_Given :1; 1653 unsigned HSMHV_wln_Given :1; 1654 unsigned HSMHV_xqy_Given :1; 1655 unsigned HSMHV_xqy1_Given :1; 1656 unsigned HSMHV_xqy2_Given :1; 1657 unsigned HSMHV_rs_Given :1; 1658 unsigned HSMHV_rd_Given :1; 1659 unsigned HSMHV_rsh_Given :1; 1660 unsigned HSMHV_rshg_Given :1; 1661 /* unsigned HSMHV_ngcon_Given :1; */ 1662 /* unsigned HSMHV_xgw_Given :1; */ 1663 /* unsigned HSMHV_xgl_Given :1; */ 1664 /* unsigned HSMHV_nf_Given :1; */ 1665 unsigned HSMHV_vfbc_Given :1; 1666 unsigned HSMHV_vbi_Given :1; 1667 unsigned HSMHV_nsubc_Given :1; 1668 unsigned HSMHV_parl2_Given :1; 1669 unsigned HSMHV_lp_Given :1; 1670 unsigned HSMHV_nsubp_Given :1; 1671 unsigned HSMHV_nsubp0_Given :1; 1672 unsigned HSMHV_nsubwp_Given :1; 1673 unsigned HSMHV_scp1_Given :1; 1674 unsigned HSMHV_scp2_Given :1; 1675 unsigned HSMHV_scp3_Given :1; 1676 unsigned HSMHV_sc1_Given :1; 1677 unsigned HSMHV_sc2_Given :1; 1678 unsigned HSMHV_sc3_Given :1; 1679 unsigned HSMHV_sc4_Given :1; 1680 unsigned HSMHV_pgd1_Given :1; 1681 unsigned HSMHV_pgd2_Given :1; 1682 unsigned HSMHV_pgd3_Given :1; 1683 unsigned HSMHV_pgd4_Given :1; 1684 unsigned HSMHV_ndep_Given :1; 1685 unsigned HSMHV_ndepl_Given :1; 1686 unsigned HSMHV_ndeplp_Given :1; 1687 unsigned HSMHV_ninv_Given :1; 1688 unsigned HSMHV_muecb0_Given :1; 1689 unsigned HSMHV_muecb1_Given :1; 1690 unsigned HSMHV_mueph1_Given :1; 1691 unsigned HSMHV_mueph0_Given :1; 1692 unsigned HSMHV_muephw_Given :1; 1693 unsigned HSMHV_muepwp_Given :1; 1694 unsigned HSMHV_muephl_Given :1; 1695 unsigned HSMHV_mueplp_Given :1; 1696 unsigned HSMHV_muephs_Given :1; 1697 unsigned HSMHV_muepsp_Given :1; 1698 unsigned HSMHV_vtmp_Given :1; 1699 unsigned HSMHV_wvth0_Given :1; 1700 unsigned HSMHV_muesr1_Given :1; 1701 unsigned HSMHV_muesr0_Given :1; 1702 unsigned HSMHV_muesrl_Given :1; 1703 unsigned HSMHV_mueslp_Given :1; 1704 unsigned HSMHV_muesrw_Given :1; 1705 unsigned HSMHV_mueswp_Given :1; 1706 unsigned HSMHV_bb_Given :1; 1707 unsigned HSMHV_sub1_Given :1; 1708 unsigned HSMHV_sub2_Given :1; 1709 unsigned HSMHV_svgs_Given :1; 1710 unsigned HSMHV_svbs_Given :1; 1711 unsigned HSMHV_svbsl_Given :1; 1712 unsigned HSMHV_svds_Given :1; 1713 unsigned HSMHV_slg_Given :1; 1714 unsigned HSMHV_sub1l_Given :1; 1715 unsigned HSMHV_sub2l_Given :1; 1716 unsigned HSMHV_fn1_Given :1; 1717 unsigned HSMHV_fn2_Given :1; 1718 unsigned HSMHV_fn3_Given :1; 1719 unsigned HSMHV_fvbs_Given :1; 1720 unsigned HSMHV_svgsl_Given :1; 1721 unsigned HSMHV_svgslp_Given :1; 1722 unsigned HSMHV_svgswp_Given :1; 1723 unsigned HSMHV_svgsw_Given :1; 1724 unsigned HSMHV_svbslp_Given :1; 1725 unsigned HSMHV_slgl_Given :1; 1726 unsigned HSMHV_slglp_Given :1; 1727 unsigned HSMHV_sub1lp_Given :1; 1728 unsigned HSMHV_nsti_Given :1; 1729 unsigned HSMHV_wsti_Given :1; 1730 unsigned HSMHV_wstil_Given :1; 1731 unsigned HSMHV_wstilp_Given :1; 1732 unsigned HSMHV_wstiw_Given :1; 1733 unsigned HSMHV_wstiwp_Given :1; 1734 unsigned HSMHV_scsti1_Given :1; 1735 unsigned HSMHV_scsti2_Given :1; 1736 unsigned HSMHV_vthsti_Given :1; 1737 unsigned HSMHV_vdsti_Given :1; 1738 unsigned HSMHV_muesti1_Given :1; 1739 unsigned HSMHV_muesti2_Given :1; 1740 unsigned HSMHV_muesti3_Given :1; 1741 unsigned HSMHV_nsubpsti1_Given :1; 1742 unsigned HSMHV_nsubpsti2_Given :1; 1743 unsigned HSMHV_nsubpsti3_Given :1; 1744 unsigned HSMHV_lpext_Given :1; 1745 unsigned HSMHV_npext_Given :1; 1746 unsigned HSMHV_scp22_Given :1; 1747 unsigned HSMHV_scp21_Given :1; 1748 unsigned HSMHV_bs1_Given :1; 1749 unsigned HSMHV_bs2_Given :1; 1750 unsigned HSMHV_cgso_Given :1; 1751 unsigned HSMHV_cgdo_Given :1; 1752 unsigned HSMHV_cgbo_Given :1; 1753 unsigned HSMHV_tpoly_Given :1; 1754 unsigned HSMHV_js0_Given :1; 1755 unsigned HSMHV_js0sw_Given :1; 1756 unsigned HSMHV_nj_Given :1; 1757 unsigned HSMHV_njsw_Given :1; 1758 unsigned HSMHV_xti_Given :1; 1759 unsigned HSMHV_cj_Given :1; 1760 unsigned HSMHV_cjsw_Given :1; 1761 unsigned HSMHV_cjswg_Given :1; 1762 unsigned HSMHV_mj_Given :1; 1763 unsigned HSMHV_mjsw_Given :1; 1764 unsigned HSMHV_mjswg_Given :1; 1765 unsigned HSMHV_xti2_Given :1; 1766 unsigned HSMHV_cisb_Given :1; 1767 unsigned HSMHV_cvb_Given :1; 1768 unsigned HSMHV_ctemp_Given :1; 1769 unsigned HSMHV_cisbk_Given :1; 1770 unsigned HSMHV_cvbk_Given :1; 1771 unsigned HSMHV_divx_Given :1; 1772 unsigned HSMHV_pb_Given :1; 1773 unsigned HSMHV_pbsw_Given :1; 1774 unsigned HSMHV_pbswg_Given :1; 1775 unsigned HSMHV_clm1_Given :1; 1776 unsigned HSMHV_clm2_Given :1; 1777 unsigned HSMHV_clm3_Given :1; 1778 unsigned HSMHV_clm5_Given :1; 1779 unsigned HSMHV_clm6_Given :1; 1780 unsigned HSMHV_muetmp_Given :1; 1781 unsigned HSMHV_vover_Given :1; 1782 unsigned HSMHV_voverp_Given :1; 1783 unsigned HSMHV_vovers_Given :1; 1784 unsigned HSMHV_voversp_Given :1; 1785 unsigned HSMHV_wfc_Given :1; 1786 unsigned HSMHV_nsubcw_Given :1; 1787 unsigned HSMHV_nsubcwp_Given :1; 1788 unsigned HSMHV_qme1_Given :1; 1789 unsigned HSMHV_qme2_Given :1; 1790 unsigned HSMHV_qme3_Given :1; 1791 unsigned HSMHV_gidl1_Given :1; 1792 unsigned HSMHV_gidl2_Given :1; 1793 unsigned HSMHV_gidl3_Given :1; 1794 unsigned HSMHV_gidl4_Given :1; 1795 unsigned HSMHV_gidl5_Given :1; 1796 unsigned HSMHV_gleak1_Given :1; 1797 unsigned HSMHV_gleak2_Given :1; 1798 unsigned HSMHV_gleak3_Given :1; 1799 unsigned HSMHV_gleak4_Given :1; 1800 unsigned HSMHV_gleak5_Given :1; 1801 unsigned HSMHV_gleak6_Given :1; 1802 unsigned HSMHV_gleak7_Given :1; 1803 unsigned HSMHV_glpart1_Given :1; 1804 unsigned HSMHV_glksd1_Given :1; 1805 unsigned HSMHV_glksd2_Given :1; 1806 unsigned HSMHV_glksd3_Given :1; 1807 unsigned HSMHV_glkb1_Given :1; 1808 unsigned HSMHV_glkb2_Given :1; 1809 unsigned HSMHV_glkb3_Given :1; 1810 unsigned HSMHV_egig_Given :1; 1811 unsigned HSMHV_igtemp2_Given :1; 1812 unsigned HSMHV_igtemp3_Given :1; 1813 unsigned HSMHV_vzadd0_Given :1; 1814 unsigned HSMHV_pzadd0_Given :1; 1815 unsigned HSMHV_nftrp_Given :1; 1816 unsigned HSMHV_nfalp_Given :1; 1817 unsigned HSMHV_cit_Given :1; 1818 unsigned HSMHV_falph_Given :1; 1819 unsigned HSMHV_dly1_Given :1; 1820 unsigned HSMHV_dly2_Given :1; 1821 unsigned HSMHV_dly3_Given :1; 1822 unsigned HSMHV_dlyov_Given :1; 1823 unsigned HSMHV_tnom_Given :1; 1824 unsigned HSMHV_ovslp_Given :1; 1825 unsigned HSMHV_ovmag_Given :1; 1826 unsigned HSMHV_gbmin_Given :1; 1827 unsigned HSMHV_rbpb_Given :1; 1828 unsigned HSMHV_rbpd_Given :1; 1829 unsigned HSMHV_rbps_Given :1; 1830 unsigned HSMHV_rbdb_Given :1; 1831 unsigned HSMHV_rbsb_Given :1; 1832 unsigned HSMHV_ibpc1_Given :1; 1833 unsigned HSMHV_ibpc2_Given :1; 1834 unsigned HSMHV_mphdfm_Given :1; 1835 unsigned HSMHV_rdvg11_Given :1; 1836 unsigned HSMHV_rdvg12_Given :1; 1837 unsigned HSMHV_qovsm_Given :1; 1838 unsigned HSMHV_ldrift_Given :1; 1839 unsigned HSMHV_rd20_Given :1; 1840 unsigned HSMHV_rd21_Given :1; 1841 unsigned HSMHV_rd22_Given :1; 1842 unsigned HSMHV_rd22d_Given :1; 1843 unsigned HSMHV_rd23_Given :1; 1844 unsigned HSMHV_rd24_Given :1; 1845 unsigned HSMHV_rd25_Given :1; 1846 unsigned HSMHV_rd26_Given :1; 1847 unsigned HSMHV_rdvdl_Given :1; 1848 unsigned HSMHV_rdvdlp_Given :1; 1849 unsigned HSMHV_rdvds_Given :1; 1850 unsigned HSMHV_rdvdsp_Given :1; 1851 unsigned HSMHV_rd23l_Given :1; 1852 unsigned HSMHV_rd23lp_Given :1; 1853 unsigned HSMHV_rd23s_Given :1; 1854 unsigned HSMHV_rd23sp_Given :1; 1855 unsigned HSMHV_rds_Given :1; 1856 unsigned HSMHV_rdsp_Given :1; 1857 unsigned HSMHV_vbsmin_Given :1; 1858 unsigned HSMHV_ninvd_Given :1; 1859 unsigned HSMHV_ninvdw_Given :1; 1860 unsigned HSMHV_ninvdwp_Given :1; 1861 unsigned HSMHV_ninvdt1_Given :1; 1862 unsigned HSMHV_ninvdt2_Given :1; 1863 unsigned HSMHV_rdvb_Given :1; 1864 unsigned HSMHV_rth0nf_Given :1; 1865 1866 unsigned HSMHV_rthtemp1_Given :1; 1867 unsigned HSMHV_rthtemp2_Given :1; 1868 unsigned HSMHV_prattemp1_Given :1; 1869 unsigned HSMHV_prattemp2_Given :1; 1870 1871 1872 unsigned HSMHV_rth0_Given :1; 1873 unsigned HSMHV_cth0_Given :1; 1874 unsigned HSMHV_powrat_Given :1; 1875 1876 1877 unsigned HSMHV_tcjbd_Given :1; 1878 unsigned HSMHV_tcjbs_Given :1; 1879 unsigned HSMHV_tcjbdsw_Given :1; 1880 unsigned HSMHV_tcjbssw_Given :1; 1881 unsigned HSMHV_tcjbdswg_Given :1; 1882 unsigned HSMHV_tcjbsswg_Given :1; 1883 1884 1885 /* unsigned HSMHV_wth0_Given :1; */ 1886 unsigned HSMHV_qdftvd_Given :1; 1887 unsigned HSMHV_rdvd_Given :1; 1888 unsigned HSMHV_rdtemp1_Given :1; 1889 unsigned HSMHV_rdtemp2_Given :1; 1890 unsigned HSMHV_rth0r_Given :1; 1891 unsigned HSMHV_rdvdtemp1_Given :1; 1892 unsigned HSMHV_rdvdtemp2_Given :1; 1893 unsigned HSMHV_rth0w_Given :1; 1894 unsigned HSMHV_rth0wp_Given :1; 1895 1896 unsigned HSMHV_cvdsover_Given :1; 1897 1898 /* substrate effect */ 1899 unsigned HSMHV_rdvsub_Given :1; /* substrate effect */ 1900 unsigned HSMHV_rdvdsub_Given :1; /* substrate effect */ 1901 unsigned HSMHV_ddrift_Given :1; /* substrate effect */ 1902 unsigned HSMHV_vbisub_Given :1; /* substrate effect */ 1903 unsigned HSMHV_nsubsub_Given :1; /* substrate effect */ 1904 unsigned HSMHV_shemax_Given :1; 1905 1906 /* binning parameters */ 1907 unsigned HSMHV_lmin_Given :1; 1908 unsigned HSMHV_lmax_Given :1; 1909 unsigned HSMHV_wmin_Given :1; 1910 unsigned HSMHV_wmax_Given :1; 1911 unsigned HSMHV_lbinn_Given :1; 1912 unsigned HSMHV_wbinn_Given :1; 1913 1914 /* Length dependence */ 1915 unsigned HSMHV_lvmax_Given :1; 1916 unsigned HSMHV_lbgtmp1_Given :1; 1917 unsigned HSMHV_lbgtmp2_Given :1; 1918 unsigned HSMHV_leg0_Given :1; 1919 unsigned HSMHV_lvfbover_Given :1; 1920 unsigned HSMHV_lnover_Given :1; 1921 unsigned HSMHV_lnovers_Given :1; 1922 unsigned HSMHV_lwl2_Given :1; 1923 unsigned HSMHV_lvfbc_Given :1; 1924 unsigned HSMHV_lnsubc_Given :1; 1925 unsigned HSMHV_lnsubp_Given :1; 1926 unsigned HSMHV_lscp1_Given :1; 1927 unsigned HSMHV_lscp2_Given :1; 1928 unsigned HSMHV_lscp3_Given :1; 1929 unsigned HSMHV_lsc1_Given :1; 1930 unsigned HSMHV_lsc2_Given :1; 1931 unsigned HSMHV_lsc3_Given :1; 1932 unsigned HSMHV_lpgd1_Given :1; 1933 unsigned HSMHV_lpgd3_Given :1; 1934 unsigned HSMHV_lndep_Given :1; 1935 unsigned HSMHV_lninv_Given :1; 1936 unsigned HSMHV_lmuecb0_Given :1; 1937 unsigned HSMHV_lmuecb1_Given :1; 1938 unsigned HSMHV_lmueph1_Given :1; 1939 unsigned HSMHV_lvtmp_Given :1; 1940 unsigned HSMHV_lwvth0_Given :1; 1941 unsigned HSMHV_lmuesr1_Given :1; 1942 unsigned HSMHV_lmuetmp_Given :1; 1943 unsigned HSMHV_lsub1_Given :1; 1944 unsigned HSMHV_lsub2_Given :1; 1945 unsigned HSMHV_lsvds_Given :1; 1946 unsigned HSMHV_lsvbs_Given :1; 1947 unsigned HSMHV_lsvgs_Given :1; 1948 unsigned HSMHV_lfn1_Given :1; 1949 unsigned HSMHV_lfn2_Given :1; 1950 unsigned HSMHV_lfn3_Given :1; 1951 unsigned HSMHV_lfvbs_Given :1; 1952 unsigned HSMHV_lnsti_Given :1; 1953 unsigned HSMHV_lwsti_Given :1; 1954 unsigned HSMHV_lscsti1_Given :1; 1955 unsigned HSMHV_lscsti2_Given :1; 1956 unsigned HSMHV_lvthsti_Given :1; 1957 unsigned HSMHV_lmuesti1_Given :1; 1958 unsigned HSMHV_lmuesti2_Given :1; 1959 unsigned HSMHV_lmuesti3_Given :1; 1960 unsigned HSMHV_lnsubpsti1_Given :1; 1961 unsigned HSMHV_lnsubpsti2_Given :1; 1962 unsigned HSMHV_lnsubpsti3_Given :1; 1963 unsigned HSMHV_lcgso_Given :1; 1964 unsigned HSMHV_lcgdo_Given :1; 1965 unsigned HSMHV_ljs0_Given :1; 1966 unsigned HSMHV_ljs0sw_Given :1; 1967 unsigned HSMHV_lnj_Given :1; 1968 unsigned HSMHV_lcisbk_Given :1; 1969 unsigned HSMHV_lclm1_Given :1; 1970 unsigned HSMHV_lclm2_Given :1; 1971 unsigned HSMHV_lclm3_Given :1; 1972 unsigned HSMHV_lwfc_Given :1; 1973 unsigned HSMHV_lgidl1_Given :1; 1974 unsigned HSMHV_lgidl2_Given :1; 1975 unsigned HSMHV_lgleak1_Given :1; 1976 unsigned HSMHV_lgleak2_Given :1; 1977 unsigned HSMHV_lgleak3_Given :1; 1978 unsigned HSMHV_lgleak6_Given :1; 1979 unsigned HSMHV_lglksd1_Given :1; 1980 unsigned HSMHV_lglksd2_Given :1; 1981 unsigned HSMHV_lglkb1_Given :1; 1982 unsigned HSMHV_lglkb2_Given :1; 1983 unsigned HSMHV_lnftrp_Given :1; 1984 unsigned HSMHV_lnfalp_Given :1; 1985 unsigned HSMHV_lpthrou_Given :1; 1986 unsigned HSMHV_lvdiffj_Given :1; 1987 unsigned HSMHV_libpc1_Given :1; 1988 unsigned HSMHV_libpc2_Given :1; 1989 unsigned HSMHV_lcgbo_Given :1; 1990 unsigned HSMHV_lcvdsover_Given :1; 1991 unsigned HSMHV_lfalph_Given :1; 1992 unsigned HSMHV_lnpext_Given :1; 1993 unsigned HSMHV_lpowrat_Given :1; 1994 unsigned HSMHV_lrd_Given :1; 1995 unsigned HSMHV_lrd22_Given :1; 1996 unsigned HSMHV_lrd23_Given :1; 1997 unsigned HSMHV_lrd24_Given :1; 1998 unsigned HSMHV_lrdict1_Given :1; 1999 unsigned HSMHV_lrdov13_Given :1; 2000 unsigned HSMHV_lrdslp1_Given :1; 2001 unsigned HSMHV_lrdvb_Given :1; 2002 unsigned HSMHV_lrdvd_Given :1; 2003 unsigned HSMHV_lrdvg11_Given :1; 2004 unsigned HSMHV_lrs_Given :1; 2005 unsigned HSMHV_lrth0_Given :1; 2006 unsigned HSMHV_lvover_Given :1; 2007 2008 /* Width dependence */ 2009 unsigned HSMHV_wvmax_Given :1; 2010 unsigned HSMHV_wbgtmp1_Given :1; 2011 unsigned HSMHV_wbgtmp2_Given :1; 2012 unsigned HSMHV_weg0_Given :1; 2013 unsigned HSMHV_wvfbover_Given :1; 2014 unsigned HSMHV_wnover_Given :1; 2015 unsigned HSMHV_wnovers_Given :1; 2016 unsigned HSMHV_wwl2_Given :1; 2017 unsigned HSMHV_wvfbc_Given :1; 2018 unsigned HSMHV_wnsubc_Given :1; 2019 unsigned HSMHV_wnsubp_Given :1; 2020 unsigned HSMHV_wscp1_Given :1; 2021 unsigned HSMHV_wscp2_Given :1; 2022 unsigned HSMHV_wscp3_Given :1; 2023 unsigned HSMHV_wsc1_Given :1; 2024 unsigned HSMHV_wsc2_Given :1; 2025 unsigned HSMHV_wsc3_Given :1; 2026 unsigned HSMHV_wpgd1_Given :1; 2027 unsigned HSMHV_wpgd3_Given :1; 2028 unsigned HSMHV_wndep_Given :1; 2029 unsigned HSMHV_wninv_Given :1; 2030 unsigned HSMHV_wmuecb0_Given :1; 2031 unsigned HSMHV_wmuecb1_Given :1; 2032 unsigned HSMHV_wmueph1_Given :1; 2033 unsigned HSMHV_wvtmp_Given :1; 2034 unsigned HSMHV_wwvth0_Given :1; 2035 unsigned HSMHV_wmuesr1_Given :1; 2036 unsigned HSMHV_wmuetmp_Given :1; 2037 unsigned HSMHV_wsub1_Given :1; 2038 unsigned HSMHV_wsub2_Given :1; 2039 unsigned HSMHV_wsvds_Given :1; 2040 unsigned HSMHV_wsvbs_Given :1; 2041 unsigned HSMHV_wsvgs_Given :1; 2042 unsigned HSMHV_wfn1_Given :1; 2043 unsigned HSMHV_wfn2_Given :1; 2044 unsigned HSMHV_wfn3_Given :1; 2045 unsigned HSMHV_wfvbs_Given :1; 2046 unsigned HSMHV_wnsti_Given :1; 2047 unsigned HSMHV_wwsti_Given :1; 2048 unsigned HSMHV_wscsti1_Given :1; 2049 unsigned HSMHV_wscsti2_Given :1; 2050 unsigned HSMHV_wvthsti_Given :1; 2051 unsigned HSMHV_wmuesti1_Given :1; 2052 unsigned HSMHV_wmuesti2_Given :1; 2053 unsigned HSMHV_wmuesti3_Given :1; 2054 unsigned HSMHV_wnsubpsti1_Given :1; 2055 unsigned HSMHV_wnsubpsti2_Given :1; 2056 unsigned HSMHV_wnsubpsti3_Given :1; 2057 unsigned HSMHV_wcgso_Given :1; 2058 unsigned HSMHV_wcgdo_Given :1; 2059 unsigned HSMHV_wjs0_Given :1; 2060 unsigned HSMHV_wjs0sw_Given :1; 2061 unsigned HSMHV_wnj_Given :1; 2062 unsigned HSMHV_wcisbk_Given :1; 2063 unsigned HSMHV_wclm1_Given :1; 2064 unsigned HSMHV_wclm2_Given :1; 2065 unsigned HSMHV_wclm3_Given :1; 2066 unsigned HSMHV_wwfc_Given :1; 2067 unsigned HSMHV_wgidl1_Given :1; 2068 unsigned HSMHV_wgidl2_Given :1; 2069 unsigned HSMHV_wgleak1_Given :1; 2070 unsigned HSMHV_wgleak2_Given :1; 2071 unsigned HSMHV_wgleak3_Given :1; 2072 unsigned HSMHV_wgleak6_Given :1; 2073 unsigned HSMHV_wglksd1_Given :1; 2074 unsigned HSMHV_wglksd2_Given :1; 2075 unsigned HSMHV_wglkb1_Given :1; 2076 unsigned HSMHV_wglkb2_Given :1; 2077 unsigned HSMHV_wnftrp_Given :1; 2078 unsigned HSMHV_wnfalp_Given :1; 2079 unsigned HSMHV_wpthrou_Given :1; 2080 unsigned HSMHV_wvdiffj_Given :1; 2081 unsigned HSMHV_wibpc1_Given :1; 2082 unsigned HSMHV_wibpc2_Given :1; 2083 unsigned HSMHV_wcgbo_Given :1; 2084 unsigned HSMHV_wcvdsover_Given :1; 2085 unsigned HSMHV_wfalph_Given :1; 2086 unsigned HSMHV_wnpext_Given :1; 2087 unsigned HSMHV_wpowrat_Given :1; 2088 unsigned HSMHV_wrd_Given :1; 2089 unsigned HSMHV_wrd22_Given :1; 2090 unsigned HSMHV_wrd23_Given :1; 2091 unsigned HSMHV_wrd24_Given :1; 2092 unsigned HSMHV_wrdict1_Given :1; 2093 unsigned HSMHV_wrdov13_Given :1; 2094 unsigned HSMHV_wrdslp1_Given :1; 2095 unsigned HSMHV_wrdvb_Given :1; 2096 unsigned HSMHV_wrdvd_Given :1; 2097 unsigned HSMHV_wrdvg11_Given :1; 2098 unsigned HSMHV_wrs_Given :1; 2099 unsigned HSMHV_wrth0_Given :1; 2100 unsigned HSMHV_wvover_Given :1; 2101 2102 /* Cross-term dependence */ 2103 unsigned HSMHV_pvmax_Given :1; 2104 unsigned HSMHV_pbgtmp1_Given :1; 2105 unsigned HSMHV_pbgtmp2_Given :1; 2106 unsigned HSMHV_peg0_Given :1; 2107 unsigned HSMHV_pvfbover_Given :1; 2108 unsigned HSMHV_pnover_Given :1; 2109 unsigned HSMHV_pnovers_Given :1; 2110 unsigned HSMHV_pwl2_Given :1; 2111 unsigned HSMHV_pvfbc_Given :1; 2112 unsigned HSMHV_pnsubc_Given :1; 2113 unsigned HSMHV_pnsubp_Given :1; 2114 unsigned HSMHV_pscp1_Given :1; 2115 unsigned HSMHV_pscp2_Given :1; 2116 unsigned HSMHV_pscp3_Given :1; 2117 unsigned HSMHV_psc1_Given :1; 2118 unsigned HSMHV_psc2_Given :1; 2119 unsigned HSMHV_psc3_Given :1; 2120 unsigned HSMHV_ppgd1_Given :1; 2121 unsigned HSMHV_ppgd3_Given :1; 2122 unsigned HSMHV_pndep_Given :1; 2123 unsigned HSMHV_pninv_Given :1; 2124 unsigned HSMHV_pmuecb0_Given :1; 2125 unsigned HSMHV_pmuecb1_Given :1; 2126 unsigned HSMHV_pmueph1_Given :1; 2127 unsigned HSMHV_pvtmp_Given :1; 2128 unsigned HSMHV_pwvth0_Given :1; 2129 unsigned HSMHV_pmuesr1_Given :1; 2130 unsigned HSMHV_pmuetmp_Given :1; 2131 unsigned HSMHV_psub1_Given :1; 2132 unsigned HSMHV_psub2_Given :1; 2133 unsigned HSMHV_psvds_Given :1; 2134 unsigned HSMHV_psvbs_Given :1; 2135 unsigned HSMHV_psvgs_Given :1; 2136 unsigned HSMHV_pfn1_Given :1; 2137 unsigned HSMHV_pfn2_Given :1; 2138 unsigned HSMHV_pfn3_Given :1; 2139 unsigned HSMHV_pfvbs_Given :1; 2140 unsigned HSMHV_pnsti_Given :1; 2141 unsigned HSMHV_pwsti_Given :1; 2142 unsigned HSMHV_pscsti1_Given :1; 2143 unsigned HSMHV_pscsti2_Given :1; 2144 unsigned HSMHV_pvthsti_Given :1; 2145 unsigned HSMHV_pmuesti1_Given :1; 2146 unsigned HSMHV_pmuesti2_Given :1; 2147 unsigned HSMHV_pmuesti3_Given :1; 2148 unsigned HSMHV_pnsubpsti1_Given :1; 2149 unsigned HSMHV_pnsubpsti2_Given :1; 2150 unsigned HSMHV_pnsubpsti3_Given :1; 2151 unsigned HSMHV_pcgso_Given :1; 2152 unsigned HSMHV_pcgdo_Given :1; 2153 unsigned HSMHV_pjs0_Given :1; 2154 unsigned HSMHV_pjs0sw_Given :1; 2155 unsigned HSMHV_pnj_Given :1; 2156 unsigned HSMHV_pcisbk_Given :1; 2157 unsigned HSMHV_pclm1_Given :1; 2158 unsigned HSMHV_pclm2_Given :1; 2159 unsigned HSMHV_pclm3_Given :1; 2160 unsigned HSMHV_pwfc_Given :1; 2161 unsigned HSMHV_pgidl1_Given :1; 2162 unsigned HSMHV_pgidl2_Given :1; 2163 unsigned HSMHV_pgleak1_Given :1; 2164 unsigned HSMHV_pgleak2_Given :1; 2165 unsigned HSMHV_pgleak3_Given :1; 2166 unsigned HSMHV_pgleak6_Given :1; 2167 unsigned HSMHV_pglksd1_Given :1; 2168 unsigned HSMHV_pglksd2_Given :1; 2169 unsigned HSMHV_pglkb1_Given :1; 2170 unsigned HSMHV_pglkb2_Given :1; 2171 unsigned HSMHV_pnftrp_Given :1; 2172 unsigned HSMHV_pnfalp_Given :1; 2173 unsigned HSMHV_ppthrou_Given :1; 2174 unsigned HSMHV_pvdiffj_Given :1; 2175 unsigned HSMHV_pibpc1_Given :1; 2176 unsigned HSMHV_pibpc2_Given :1; 2177 unsigned HSMHV_pcgbo_Given :1; 2178 unsigned HSMHV_pcvdsover_Given :1; 2179 unsigned HSMHV_pfalph_Given :1; 2180 unsigned HSMHV_pnpext_Given :1; 2181 unsigned HSMHV_ppowrat_Given :1; 2182 unsigned HSMHV_prd_Given :1; 2183 unsigned HSMHV_prd22_Given :1; 2184 unsigned HSMHV_prd23_Given :1; 2185 unsigned HSMHV_prd24_Given :1; 2186 unsigned HSMHV_prdict1_Given :1; 2187 unsigned HSMHV_prdov13_Given :1; 2188 unsigned HSMHV_prdslp1_Given :1; 2189 unsigned HSMHV_prdvb_Given :1; 2190 unsigned HSMHV_prdvd_Given :1; 2191 unsigned HSMHV_prdvg11_Given :1; 2192 unsigned HSMHV_prs_Given :1; 2193 unsigned HSMHV_prth0_Given :1; 2194 unsigned HSMHV_pvover_Given :1; 2195 2196 unsigned HSMHVvgsMaxGiven :1; 2197 unsigned HSMHVvgdMaxGiven :1; 2198 unsigned HSMHVvgbMaxGiven :1; 2199 unsigned HSMHVvdsMaxGiven :1; 2200 unsigned HSMHVvbsMaxGiven :1; 2201 unsigned HSMHVvbdMaxGiven :1; 2202 unsigned HSMHVvgsrMaxGiven :1; 2203 unsigned HSMHVvgdrMaxGiven :1; 2204 unsigned HSMHVvgbrMaxGiven :1; 2205 unsigned HSMHVvbsrMaxGiven :1; 2206 unsigned HSMHVvbdrMaxGiven :1; 2207 2208 } HSMHVmodel; 2209 2210 #ifndef NMOS 2211 #define NMOS 1 2212 #define PMOS -1 2213 #endif /*NMOS*/ 2214 2215 #define HSMHV_BAD_PARAM -1 2216 2217 /* flags */ 2218 #define HSMHV_MOD_NMOS 1 2219 #define HSMHV_MOD_PMOS 2 2220 #define HSMHV_MOD_LEVEL 3 2221 #define HSMHV_MOD_INFO 4 2222 #define HSMHV_MOD_NOISE 5 2223 #define HSMHV_MOD_VERSION 6 2224 #define HSMHV_MOD_SHOW 7 2225 #define HSMHV_MOD_CORSRD 11 2226 #define HSMHV_MOD_COIPRV 12 2227 #define HSMHV_MOD_COPPRV 13 2228 #define HSMHV_MOD_COADOV 17 2229 #define HSMHV_MOD_COISUB 21 2230 #define HSMHV_MOD_COIIGS 22 2231 #define HSMHV_MOD_COGIDL 23 2232 #define HSMHV_MOD_COOVLP 24 2233 #define HSMHV_MOD_COOVLPS 8 2234 #define HSMHV_MOD_COFLICK 25 2235 #define HSMHV_MOD_COISTI 26 2236 #define HSMHV_MOD_CONQS 29 2237 #define HSMHV_MOD_COTHRML 30 2238 #define HSMHV_MOD_COIGN 31 /* Induced gate noise */ 2239 #define HSMHV_MOD_CORG 32 2240 #define HSMHV_MOD_CORBNET 33 2241 #define HSMHV_MOD_CODFM 36 /* DFM */ 2242 #define HSMHV_MOD_COQOVSM 34 2243 #define HSMHV_MOD_COSELFHEAT 35 /* Self-heating model--SHE-- */ 2244 #define HSMHV_MOD_COSUBNODE 48 2245 #define HSMHV_MOD_COSYM 37 /* Symmery model for HV */ 2246 #define HSMHV_MOD_COTEMP 38 2247 #define HSMHV_MOD_COLDRIFT 39 2248 /* device parameters */ 2249 #define HSMHV_COSELFHEAT 49 2250 #define HSMHV_COSUBNODE 50 2251 #define HSMHV_L 51 2252 #define HSMHV_W 52 2253 #define HSMHV_AD 53 2254 #define HSMHV_AS 54 2255 #define HSMHV_PD 55 2256 #define HSMHV_PS 56 2257 #define HSMHV_NRD 57 2258 #define HSMHV_NRS 58 2259 /* #define HSMHV_TEMP 59 not used */ 2260 #define HSMHV_DTEMP 60 2261 #define HSMHV_OFF 61 2262 #define HSMHV_IC_VBS 62 2263 #define HSMHV_IC_VDS 63 2264 #define HSMHV_IC_VGS 64 2265 #define HSMHV_IC 65 2266 #define HSMHV_CORBNET 66 2267 #define HSMHV_RBPB 67 2268 #define HSMHV_RBPD 68 2269 #define HSMHV_RBPS 69 2270 #define HSMHV_RBDB 70 2271 #define HSMHV_RBSB 71 2272 #define HSMHV_CORG 72 2273 /* #define HSMHV_RSHG 73 */ 2274 #define HSMHV_NGCON 74 2275 #define HSMHV_XGW 75 2276 #define HSMHV_XGL 76 2277 #define HSMHV_NF 77 2278 #define HSMHV_SA 78 2279 #define HSMHV_SB 79 2280 #define HSMHV_SD 80 2281 #define HSMHV_NSUBCDFM 82 2282 #define HSMHV_M 83 2283 #define HSMHV_SUBLD1 86 2284 #define HSMHV_SUBLD2 87 2285 #define HSMHV_LOVER 41 2286 #define HSMHV_LOVERS 42 2287 #define HSMHV_LOVERLD 43 2288 #define HSMHV_LDRIFT1 88 2289 #define HSMHV_LDRIFT2 89 2290 #define HSMHV_LDRIFT1S 90 2291 #define HSMHV_LDRIFT2S 91 2292 /* #define HSMHV_RTH0 84 not used */ 2293 /* #define HSMHV_CTH0 85 not used */ 2294 2295 2296 2297 2298 /* model parameters */ 2299 #define HSMHV_MOD_VBSMIN 198 2300 #define HSMHV_MOD_VMAX 500 2301 #define HSMHV_MOD_VMAXT1 503 2302 #define HSMHV_MOD_VMAXT2 504 2303 #define HSMHV_MOD_BGTMP1 101 2304 #define HSMHV_MOD_BGTMP2 102 2305 #define HSMHV_MOD_EG0 103 2306 #define HSMHV_MOD_TOX 104 2307 #define HSMHV_MOD_XLD 105 2308 #define HSMHV_MOD_LOVER 106 2309 #define HSMHV_MOD_LOVERS 385 2310 #define HSMHV_MOD_RDOV11 313 2311 #define HSMHV_MOD_RDOV12 314 2312 #define HSMHV_MOD_RDOV13 476 2313 #define HSMHV_MOD_RDSLP1 315 2314 #define HSMHV_MOD_RDICT1 316 2315 #define HSMHV_MOD_RDSLP2 317 2316 #define HSMHV_MOD_RDICT2 318 2317 #define HSMHV_MOD_LOVERLD 436 2318 #define HSMHV_MOD_LDRIFT1 319 2319 #define HSMHV_MOD_LDRIFT2 320 2320 #define HSMHV_MOD_LDRIFT1S 324 2321 #define HSMHV_MOD_LDRIFT2S 325 2322 #define HSMHV_MOD_SUBLD1 321 2323 #define HSMHV_MOD_SUBLD2 322 2324 #define HSMHV_MOD_DDLTMAX 421 /* Vdseff */ 2325 #define HSMHV_MOD_DDLTSLP 422 /* Vdseff */ 2326 #define HSMHV_MOD_DDLTICT 423 /* Vdseff */ 2327 #define HSMHV_MOD_VFBOVER 428 2328 #define HSMHV_MOD_NOVER 430 2329 #define HSMHV_MOD_NOVERS 431 2330 #define HSMHV_MOD_XWD 107 2331 #define HSMHV_MOD_XWDC 513 2332 #define HSMHV_MOD_XL 112 2333 #define HSMHV_MOD_XW 117 2334 #define HSMHV_MOD_SAREF 433 2335 #define HSMHV_MOD_SBREF 434 2336 #define HSMHV_MOD_LL 108 2337 #define HSMHV_MOD_LLD 109 2338 #define HSMHV_MOD_LLN 110 2339 #define HSMHV_MOD_WL 111 2340 #define HSMHV_MOD_WL1 113 2341 #define HSMHV_MOD_WL1P 114 2342 #define HSMHV_MOD_WL2 407 2343 #define HSMHV_MOD_WL2P 408 2344 #define HSMHV_MOD_WLD 115 2345 #define HSMHV_MOD_WLN 116 2346 2347 #define HSMHV_MOD_XQY 178 2348 #define HSMHV_MOD_XQY1 118 2349 #define HSMHV_MOD_XQY2 120 2350 #define HSMHV_MOD_RSH 119 2351 2352 #define HSMHV_MOD_RSHG 384 2353 /* #define HSMHV_MOD_NGCON 385 */ 2354 /* #define HSMHV_MOD_XGW 386 */ 2355 /* #define HSMHV_MOD_XGL 387 */ 2356 /* #define HSMHV_MOD_NF 388 */ 2357 #define HSMHV_MOD_RS 398 2358 #define HSMHV_MOD_RD 399 2359 2360 #define HSMHV_MOD_VFBC 121 2361 #define HSMHV_MOD_VBI 122 2362 #define HSMHV_MOD_NSUBC 123 2363 #define HSMHV_MOD_TNOM 124 2364 #define HSMHV_MOD_PARL2 125 2365 #define HSMHV_MOD_SC1 126 2366 #define HSMHV_MOD_SC2 127 2367 #define HSMHV_MOD_SC3 128 2368 #define HSMHV_MOD_SC4 248 2369 #define HSMHV_MOD_NDEP 129 2370 #define HSMHV_MOD_NDEPL 419 2371 #define HSMHV_MOD_NDEPLP 420 2372 #define HSMHV_MOD_NINV 130 2373 #define HSMHV_MOD_NINVD 505 2374 #define HSMHV_MOD_NINVDW 506 2375 #define HSMHV_MOD_NINVDWP 507 2376 #define HSMHV_MOD_NINVDT1 508 2377 #define HSMHV_MOD_NINVDT2 509 2378 #define HSMHV_MOD_MUECB0 131 2379 #define HSMHV_MOD_MUECB1 132 2380 #define HSMHV_MOD_MUEPH1 133 2381 #define HSMHV_MOD_MUEPH0 134 2382 #define HSMHV_MOD_MUEPHW 135 2383 #define HSMHV_MOD_MUEPWP 136 2384 #define HSMHV_MOD_MUEPHL 137 2385 #define HSMHV_MOD_MUEPLP 138 2386 #define HSMHV_MOD_MUEPHS 139 2387 #define HSMHV_MOD_MUEPSP 140 2388 #define HSMHV_MOD_VTMP 141 2389 #define HSMHV_MOD_WVTH0 142 2390 #define HSMHV_MOD_MUESR1 143 2391 #define HSMHV_MOD_MUESR0 144 2392 #define HSMHV_MOD_MUESRL 145 2393 #define HSMHV_MOD_MUESLP 146 2394 #define HSMHV_MOD_MUESRW 147 2395 #define HSMHV_MOD_MUESWP 148 2396 #define HSMHV_MOD_BB 149 2397 2398 #define HSMHV_MOD_SUB1 151 2399 #define HSMHV_MOD_SUB2 152 2400 #define HSMHV_MOD_CGSO 154 2401 #define HSMHV_MOD_CGDO 155 2402 #define HSMHV_MOD_CGBO 156 2403 #define HSMHV_MOD_JS0 157 2404 #define HSMHV_MOD_JS0SW 158 2405 #define HSMHV_MOD_NJ 159 2406 #define HSMHV_MOD_NJSW 160 2407 #define HSMHV_MOD_XTI 161 2408 #define HSMHV_MOD_CJ 162 2409 #define HSMHV_MOD_CJSW 163 2410 #define HSMHV_MOD_CJSWG 164 2411 #define HSMHV_MOD_MJ 165 2412 #define HSMHV_MOD_MJSW 166 2413 #define HSMHV_MOD_MJSWG 167 2414 #define HSMHV_MOD_XTI2 168 2415 #define HSMHV_MOD_CISB 169 2416 #define HSMHV_MOD_CVB 170 2417 #define HSMHV_MOD_CTEMP 171 2418 #define HSMHV_MOD_CISBK 172 2419 #define HSMHV_MOD_CVBK 173 2420 #define HSMHV_MOD_DIVX 174 2421 #define HSMHV_MOD_PB 175 2422 #define HSMHV_MOD_PBSW 176 2423 #define HSMHV_MOD_PBSWG 177 2424 #define HSMHV_MOD_TPOLY 179 2425 /* #define HSMHV_MOD_TPOLYLD 477 not used */ 2426 #define HSMHV_MOD_LP 180 2427 #define HSMHV_MOD_NSUBP 181 2428 #define HSMHV_MOD_NSUBP0 182 2429 #define HSMHV_MOD_NSUBWP 183 2430 #define HSMHV_MOD_SCP1 184 2431 #define HSMHV_MOD_SCP2 185 2432 #define HSMHV_MOD_SCP3 186 2433 #define HSMHV_MOD_PGD1 187 2434 #define HSMHV_MOD_PGD2 188 2435 #define HSMHV_MOD_PGD3 189 2436 #define HSMHV_MOD_PGD4 190 2437 #define HSMHV_MOD_CLM1 191 2438 #define HSMHV_MOD_CLM2 192 2439 #define HSMHV_MOD_CLM3 193 2440 #define HSMHV_MOD_CLM5 402 2441 #define HSMHV_MOD_CLM6 403 2442 #define HSMHV_MOD_MUETMP 195 2443 2444 #define HSMHV_MOD_VOVER 199 2445 #define HSMHV_MOD_VOVERP 200 2446 #define HSMHV_MOD_WFC 201 2447 #define HSMHV_MOD_NSUBCW 249 2448 #define HSMHV_MOD_NSUBCWP 250 2449 #define HSMHV_MOD_QME1 202 2450 #define HSMHV_MOD_QME2 203 2451 #define HSMHV_MOD_QME3 204 2452 #define HSMHV_MOD_GIDL1 205 2453 #define HSMHV_MOD_GIDL2 206 2454 #define HSMHV_MOD_GIDL3 207 2455 #define HSMHV_MOD_GLEAK1 208 2456 #define HSMHV_MOD_GLEAK2 209 2457 #define HSMHV_MOD_GLEAK3 210 2458 #define HSMHV_MOD_GLEAK4 211 2459 #define HSMHV_MOD_GLEAK5 212 2460 #define HSMHV_MOD_GLEAK6 213 2461 #define HSMHV_MOD_GLEAK7 214 2462 #define HSMHV_MOD_GLPART1 406 2463 #define HSMHV_MOD_GLKSD1 215 2464 #define HSMHV_MOD_GLKSD2 216 2465 #define HSMHV_MOD_GLKSD3 217 2466 #define HSMHV_MOD_GLKB1 218 2467 #define HSMHV_MOD_GLKB2 219 2468 #define HSMHV_MOD_GLKB3 429 2469 #define HSMHV_MOD_EGIG 220 2470 #define HSMHV_MOD_IGTEMP2 221 2471 #define HSMHV_MOD_IGTEMP3 222 2472 #define HSMHV_MOD_VZADD0 223 2473 #define HSMHV_MOD_PZADD0 224 2474 #define HSMHV_MOD_NSTI 225 2475 #define HSMHV_MOD_WSTI 226 2476 #define HSMHV_MOD_WSTIL 227 2477 #define HSMHV_MOD_WSTILP 231 2478 #define HSMHV_MOD_WSTIW 234 2479 #define HSMHV_MOD_WSTIWP 228 2480 #define HSMHV_MOD_SCSTI1 229 2481 #define HSMHV_MOD_SCSTI2 230 2482 #define HSMHV_MOD_VTHSTI 232 2483 #define HSMHV_MOD_VDSTI 233 2484 #define HSMHV_MOD_MUESTI1 235 2485 #define HSMHV_MOD_MUESTI2 236 2486 #define HSMHV_MOD_MUESTI3 237 2487 #define HSMHV_MOD_NSUBPSTI1 238 2488 #define HSMHV_MOD_NSUBPSTI2 239 2489 #define HSMHV_MOD_NSUBPSTI3 240 2490 #define HSMHV_MOD_LPEXT 241 2491 #define HSMHV_MOD_NPEXT 242 2492 #define HSMHV_MOD_SCP22 243 2493 #define HSMHV_MOD_SCP21 244 2494 #define HSMHV_MOD_BS1 245 2495 #define HSMHV_MOD_BS2 246 2496 #define HSMHV_MOD_KAPPA 251 2497 #define HSMHV_MOD_PTHROU 253 2498 #define HSMHV_MOD_VDIFFJ 254 2499 #define HSMHV_MOD_DLY1 255 2500 #define HSMHV_MOD_DLY2 256 2501 #define HSMHV_MOD_DLY3 257 2502 #define HSMHV_MOD_NFTRP 258 2503 #define HSMHV_MOD_NFALP 259 2504 #define HSMHV_MOD_CIT 260 2505 #define HSMHV_MOD_FALPH 263 2506 #define HSMHV_MOD_OVSLP 261 2507 #define HSMHV_MOD_OVMAG 262 2508 #define HSMHV_MOD_GIDL4 281 2509 #define HSMHV_MOD_GIDL5 282 2510 #define HSMHV_MOD_SVGS 283 2511 #define HSMHV_MOD_SVBS 284 2512 #define HSMHV_MOD_SVBSL 285 2513 #define HSMHV_MOD_SVDS 286 2514 #define HSMHV_MOD_SLG 287 2515 #define HSMHV_MOD_SUB1L 290 2516 #define HSMHV_MOD_SUB2L 292 2517 #define HSMHV_MOD_FN1 294 2518 #define HSMHV_MOD_FN2 295 2519 #define HSMHV_MOD_FN3 296 2520 #define HSMHV_MOD_FVBS 297 2521 #define HSMHV_MOD_VOVERS 303 2522 #define HSMHV_MOD_VOVERSP 304 2523 #define HSMHV_MOD_SVGSL 305 2524 #define HSMHV_MOD_SVGSLP 306 2525 #define HSMHV_MOD_SVGSWP 307 2526 #define HSMHV_MOD_SVGSW 308 2527 #define HSMHV_MOD_SVBSLP 309 2528 #define HSMHV_MOD_SLGL 310 2529 #define HSMHV_MOD_SLGLP 311 2530 #define HSMHV_MOD_SUB1LP 312 2531 #define HSMHV_MOD_IBPC1 404 2532 #define HSMHV_MOD_IBPC2 405 2533 #define HSMHV_MOD_MPHDFM 409 2534 #define HSMHV_MOD_RDVG11 424 2535 #define HSMHV_MOD_RDVG12 425 2536 #define HSMHV_MOD_RTH0 432 2537 #define HSMHV_MOD_CTH0 462 2538 #define HSMHV_MOD_POWRAT 463 2539 /* #define HSMHV_MOD_WTH0 463 /\*---------SHE----------*\/ */ 2540 #define HSMHV_MOD_DLYOV 437 2541 #define HSMHV_MOD_QDFTVD 438 2542 #define HSMHV_MOD_XLDLD 439 2543 #define HSMHV_MOD_XWDLD 494 2544 #define HSMHV_MOD_RDVD 510 2545 #define HSMHV_MOD_RDVB 301 2546 2547 #define HSMHV_MOD_RDVSUB 481 /* substrate effect */ 2548 #define HSMHV_MOD_RDVDSUB 482 /* substrate effect */ 2549 #define HSMHV_MOD_DDRIFT 483 /* substrate effect */ 2550 #define HSMHV_MOD_VBISUB 484 /* substrate effect */ 2551 #define HSMHV_MOD_NSUBSUB 485 /* substrate effect */ 2552 2553 #define HSMHV_MOD_QOVSM 323 2554 #define HSMHV_MOD_LDRIFT 458 2555 #define HSMHV_MOD_RD20 447 2556 #define HSMHV_MOD_RD21 441 2557 #define HSMHV_MOD_RD22 442 2558 #define HSMHV_MOD_RD22D 478 2559 #define HSMHV_MOD_RD23 443 2560 #define HSMHV_MOD_RD24 444 2561 #define HSMHV_MOD_RD25 445 2562 #define HSMHV_MOD_RD26 446 2563 #define HSMHV_MOD_RDVDL 448 2564 #define HSMHV_MOD_RDVDLP 449 2565 #define HSMHV_MOD_RDVDS 450 2566 #define HSMHV_MOD_RDVDSP 451 2567 #define HSMHV_MOD_RD23L 452 2568 #define HSMHV_MOD_RD23LP 453 2569 #define HSMHV_MOD_RD23S 454 2570 #define HSMHV_MOD_RD23SP 455 2571 #define HSMHV_MOD_RDS 456 2572 #define HSMHV_MOD_RDSP 457 2573 #define HSMHV_MOD_RDTEMP1 461 2574 #define HSMHV_MOD_RDTEMP2 464 2575 #define HSMHV_MOD_RTH0R 470 2576 #define HSMHV_MOD_RDVDTEMP1 471 2577 #define HSMHV_MOD_RDVDTEMP2 472 2578 #define HSMHV_MOD_RTH0W 473 2579 #define HSMHV_MOD_RTH0WP 474 2580 #define HSMHV_MOD_RTH0NF 475 2581 2582 #define HSMHV_MOD_RTHTEMP1 490 2583 #define HSMHV_MOD_RTHTEMP2 491 2584 #define HSMHV_MOD_PRATTEMP1 492 2585 #define HSMHV_MOD_PRATTEMP2 493 2586 2587 2588 #define HSMHV_MOD_CVDSOVER 480 2589 #define HSMHV_MOD_SHEMAX 100 2590 2591 /* binning parameters */ 2592 #define HSMHV_MOD_LMIN 1000 2593 #define HSMHV_MOD_LMAX 1001 2594 #define HSMHV_MOD_WMIN 1002 2595 #define HSMHV_MOD_WMAX 1003 2596 #define HSMHV_MOD_LBINN 1004 2597 #define HSMHV_MOD_WBINN 1005 2598 2599 /* Length dependence */ 2600 #define HSMHV_MOD_LVMAX 1100 2601 #define HSMHV_MOD_LBGTMP1 1101 2602 #define HSMHV_MOD_LBGTMP2 1102 2603 #define HSMHV_MOD_LEG0 1103 2604 #define HSMHV_MOD_LVFBOVER 1428 2605 #define HSMHV_MOD_LNOVER 1430 2606 #define HSMHV_MOD_LNOVERS 1431 2607 #define HSMHV_MOD_LWL2 1407 2608 #define HSMHV_MOD_LVFBC 1121 2609 #define HSMHV_MOD_LNSUBC 1123 2610 #define HSMHV_MOD_LNSUBP 1181 2611 #define HSMHV_MOD_LSCP1 1184 2612 #define HSMHV_MOD_LSCP2 1185 2613 #define HSMHV_MOD_LSCP3 1186 2614 #define HSMHV_MOD_LSC1 1126 2615 #define HSMHV_MOD_LSC2 1127 2616 #define HSMHV_MOD_LSC3 1128 2617 #define HSMHV_MOD_LPGD1 1187 2618 #define HSMHV_MOD_LPGD3 1189 2619 #define HSMHV_MOD_LNDEP 1129 2620 #define HSMHV_MOD_LNINV 1130 2621 #define HSMHV_MOD_LMUECB0 1131 2622 #define HSMHV_MOD_LMUECB1 1132 2623 #define HSMHV_MOD_LMUEPH1 1133 2624 #define HSMHV_MOD_LVTMP 1141 2625 #define HSMHV_MOD_LWVTH0 1142 2626 #define HSMHV_MOD_LMUESR1 1143 2627 #define HSMHV_MOD_LMUETMP 1195 2628 #define HSMHV_MOD_LSUB1 1151 2629 #define HSMHV_MOD_LSUB2 1152 2630 #define HSMHV_MOD_LSVDS 1286 2631 #define HSMHV_MOD_LSVBS 1284 2632 #define HSMHV_MOD_LSVGS 1283 2633 #define HSMHV_MOD_LFN1 1294 2634 #define HSMHV_MOD_LFN2 1295 2635 #define HSMHV_MOD_LFN3 1296 2636 #define HSMHV_MOD_LFVBS 1297 2637 #define HSMHV_MOD_LNSTI 1225 2638 #define HSMHV_MOD_LWSTI 1226 2639 #define HSMHV_MOD_LSCSTI1 1229 2640 #define HSMHV_MOD_LSCSTI2 1230 2641 #define HSMHV_MOD_LVTHSTI 1232 2642 #define HSMHV_MOD_LMUESTI1 1235 2643 #define HSMHV_MOD_LMUESTI2 1236 2644 #define HSMHV_MOD_LMUESTI3 1237 2645 #define HSMHV_MOD_LNSUBPSTI1 1238 2646 #define HSMHV_MOD_LNSUBPSTI2 1239 2647 #define HSMHV_MOD_LNSUBPSTI3 1240 2648 #define HSMHV_MOD_LCGSO 1154 2649 #define HSMHV_MOD_LCGDO 1155 2650 #define HSMHV_MOD_LJS0 1157 2651 #define HSMHV_MOD_LJS0SW 1158 2652 #define HSMHV_MOD_LNJ 1159 2653 #define HSMHV_MOD_LCISBK 1172 2654 #define HSMHV_MOD_LCLM1 1191 2655 #define HSMHV_MOD_LCLM2 1192 2656 #define HSMHV_MOD_LCLM3 1193 2657 #define HSMHV_MOD_LWFC 1201 2658 #define HSMHV_MOD_LGIDL1 1205 2659 #define HSMHV_MOD_LGIDL2 1206 2660 #define HSMHV_MOD_LGLEAK1 1208 2661 #define HSMHV_MOD_LGLEAK2 1209 2662 #define HSMHV_MOD_LGLEAK3 1210 2663 #define HSMHV_MOD_LGLEAK6 1213 2664 #define HSMHV_MOD_LGLKSD1 1215 2665 #define HSMHV_MOD_LGLKSD2 1216 2666 #define HSMHV_MOD_LGLKB1 1218 2667 #define HSMHV_MOD_LGLKB2 1219 2668 #define HSMHV_MOD_LNFTRP 1258 2669 #define HSMHV_MOD_LNFALP 1259 2670 #define HSMHV_MOD_LPTHROU 1253 2671 #define HSMHV_MOD_LVDIFFJ 1254 2672 #define HSMHV_MOD_LIBPC1 1404 2673 #define HSMHV_MOD_LIBPC2 1405 2674 #define HSMHV_MOD_LCGBO 1156 2675 #define HSMHV_MOD_LCVDSOVER 1480 2676 #define HSMHV_MOD_LFALPH 1263 2677 #define HSMHV_MOD_LNPEXT 1242 2678 #define HSMHV_MOD_LPOWRAT 1463 2679 #define HSMHV_MOD_LRD 1399 2680 #define HSMHV_MOD_LRD22 1442 2681 #define HSMHV_MOD_LRD23 1443 2682 #define HSMHV_MOD_LRD24 1444 2683 #define HSMHV_MOD_LRDICT1 1316 2684 #define HSMHV_MOD_LRDOV13 1476 2685 #define HSMHV_MOD_LRDSLP1 1315 2686 #define HSMHV_MOD_LRDVB 1301 2687 #define HSMHV_MOD_LRDVD 1510 2688 #define HSMHV_MOD_LRDVG11 1424 2689 #define HSMHV_MOD_LRS 1398 2690 #define HSMHV_MOD_LRTH0 1432 2691 #define HSMHV_MOD_LVOVER 1199 2692 2693 /* Width dependence */ 2694 #define HSMHV_MOD_WVMAX 2100 2695 #define HSMHV_MOD_WBGTMP1 2101 2696 #define HSMHV_MOD_WBGTMP2 2102 2697 #define HSMHV_MOD_WEG0 2103 2698 #define HSMHV_MOD_WVFBOVER 2428 2699 #define HSMHV_MOD_WNOVER 2430 2700 #define HSMHV_MOD_WNOVERS 2431 2701 #define HSMHV_MOD_WWL2 2407 2702 #define HSMHV_MOD_WVFBC 2121 2703 #define HSMHV_MOD_WNSUBC 2123 2704 #define HSMHV_MOD_WNSUBP 2181 2705 #define HSMHV_MOD_WSCP1 2184 2706 #define HSMHV_MOD_WSCP2 2185 2707 #define HSMHV_MOD_WSCP3 2186 2708 #define HSMHV_MOD_WSC1 2126 2709 #define HSMHV_MOD_WSC2 2127 2710 #define HSMHV_MOD_WSC3 2128 2711 #define HSMHV_MOD_WPGD1 2187 2712 #define HSMHV_MOD_WPGD3 2189 2713 #define HSMHV_MOD_WNDEP 2129 2714 #define HSMHV_MOD_WNINV 2130 2715 #define HSMHV_MOD_WMUECB0 2131 2716 #define HSMHV_MOD_WMUECB1 2132 2717 #define HSMHV_MOD_WMUEPH1 2133 2718 #define HSMHV_MOD_WVTMP 2141 2719 #define HSMHV_MOD_WWVTH0 2142 2720 #define HSMHV_MOD_WMUESR1 2143 2721 #define HSMHV_MOD_WMUETMP 2195 2722 #define HSMHV_MOD_WSUB1 2151 2723 #define HSMHV_MOD_WSUB2 2152 2724 #define HSMHV_MOD_WSVDS 2286 2725 #define HSMHV_MOD_WSVBS 2284 2726 #define HSMHV_MOD_WSVGS 2283 2727 #define HSMHV_MOD_WFN1 2294 2728 #define HSMHV_MOD_WFN2 2295 2729 #define HSMHV_MOD_WFN3 2296 2730 #define HSMHV_MOD_WFVBS 2297 2731 #define HSMHV_MOD_WNSTI 2225 2732 #define HSMHV_MOD_WWSTI 2226 2733 #define HSMHV_MOD_WSCSTI1 2229 2734 #define HSMHV_MOD_WSCSTI2 2230 2735 #define HSMHV_MOD_WVTHSTI 2232 2736 #define HSMHV_MOD_WMUESTI1 2235 2737 #define HSMHV_MOD_WMUESTI2 2236 2738 #define HSMHV_MOD_WMUESTI3 2237 2739 #define HSMHV_MOD_WNSUBPSTI1 2238 2740 #define HSMHV_MOD_WNSUBPSTI2 2239 2741 #define HSMHV_MOD_WNSUBPSTI3 2240 2742 #define HSMHV_MOD_WCGSO 2154 2743 #define HSMHV_MOD_WCGDO 2155 2744 #define HSMHV_MOD_WJS0 2157 2745 #define HSMHV_MOD_WJS0SW 2158 2746 #define HSMHV_MOD_WNJ 2159 2747 #define HSMHV_MOD_WCISBK 2172 2748 #define HSMHV_MOD_WCLM1 2191 2749 #define HSMHV_MOD_WCLM2 2192 2750 #define HSMHV_MOD_WCLM3 2193 2751 #define HSMHV_MOD_WWFC 2201 2752 #define HSMHV_MOD_WGIDL1 2205 2753 #define HSMHV_MOD_WGIDL2 2206 2754 #define HSMHV_MOD_WGLEAK1 2208 2755 #define HSMHV_MOD_WGLEAK2 2209 2756 #define HSMHV_MOD_WGLEAK3 2210 2757 #define HSMHV_MOD_WGLEAK6 2213 2758 #define HSMHV_MOD_WGLKSD1 2215 2759 #define HSMHV_MOD_WGLKSD2 2216 2760 #define HSMHV_MOD_WGLKB1 2218 2761 #define HSMHV_MOD_WGLKB2 2219 2762 #define HSMHV_MOD_WNFTRP 2258 2763 #define HSMHV_MOD_WNFALP 2259 2764 #define HSMHV_MOD_WPTHROU 2253 2765 #define HSMHV_MOD_WVDIFFJ 2254 2766 #define HSMHV_MOD_WIBPC1 2404 2767 #define HSMHV_MOD_WIBPC2 2405 2768 #define HSMHV_MOD_WCGBO 2156 2769 #define HSMHV_MOD_WCVDSOVER 2480 2770 #define HSMHV_MOD_WFALPH 2263 2771 #define HSMHV_MOD_WNPEXT 2242 2772 #define HSMHV_MOD_WPOWRAT 2463 2773 #define HSMHV_MOD_WRD 2399 2774 #define HSMHV_MOD_WRD22 2442 2775 #define HSMHV_MOD_WRD23 2443 2776 #define HSMHV_MOD_WRD24 2444 2777 #define HSMHV_MOD_WRDICT1 2316 2778 #define HSMHV_MOD_WRDOV13 2476 2779 #define HSMHV_MOD_WRDSLP1 2315 2780 #define HSMHV_MOD_WRDVB 2301 2781 #define HSMHV_MOD_WRDVD 2510 2782 #define HSMHV_MOD_WRDVG11 2424 2783 #define HSMHV_MOD_WRS 2398 2784 #define HSMHV_MOD_WRTH0 2432 2785 #define HSMHV_MOD_WVOVER 2199 2786 2787 /* Cross-term dependence */ 2788 #define HSMHV_MOD_PVMAX 3100 2789 #define HSMHV_MOD_PBGTMP1 3101 2790 #define HSMHV_MOD_PBGTMP2 3102 2791 #define HSMHV_MOD_PEG0 3103 2792 #define HSMHV_MOD_PVFBOVER 3428 2793 #define HSMHV_MOD_PNOVER 3430 2794 #define HSMHV_MOD_PNOVERS 3431 2795 #define HSMHV_MOD_PWL2 3407 2796 #define HSMHV_MOD_PVFBC 3121 2797 #define HSMHV_MOD_PNSUBC 3123 2798 #define HSMHV_MOD_PNSUBP 3181 2799 #define HSMHV_MOD_PSCP1 3184 2800 #define HSMHV_MOD_PSCP2 3185 2801 #define HSMHV_MOD_PSCP3 3186 2802 #define HSMHV_MOD_PSC1 3126 2803 #define HSMHV_MOD_PSC2 3127 2804 #define HSMHV_MOD_PSC3 3128 2805 #define HSMHV_MOD_PPGD1 3187 2806 #define HSMHV_MOD_PPGD3 3189 2807 #define HSMHV_MOD_PNDEP 3129 2808 #define HSMHV_MOD_PNINV 3130 2809 #define HSMHV_MOD_PMUECB0 3131 2810 #define HSMHV_MOD_PMUECB1 3132 2811 #define HSMHV_MOD_PMUEPH1 3133 2812 #define HSMHV_MOD_PVTMP 3141 2813 #define HSMHV_MOD_PWVTH0 3142 2814 #define HSMHV_MOD_PMUESR1 3143 2815 #define HSMHV_MOD_PMUETMP 3195 2816 #define HSMHV_MOD_PSUB1 3151 2817 #define HSMHV_MOD_PSUB2 3152 2818 #define HSMHV_MOD_PSVDS 3286 2819 #define HSMHV_MOD_PSVBS 3284 2820 #define HSMHV_MOD_PSVGS 3283 2821 #define HSMHV_MOD_PFN1 3294 2822 #define HSMHV_MOD_PFN2 3295 2823 #define HSMHV_MOD_PFN3 3296 2824 #define HSMHV_MOD_PFVBS 3297 2825 #define HSMHV_MOD_PNSTI 3225 2826 #define HSMHV_MOD_PWSTI 3226 2827 #define HSMHV_MOD_PSCSTI1 3229 2828 #define HSMHV_MOD_PSCSTI2 3230 2829 #define HSMHV_MOD_PVTHSTI 3232 2830 #define HSMHV_MOD_PMUESTI1 3235 2831 #define HSMHV_MOD_PMUESTI2 3236 2832 #define HSMHV_MOD_PMUESTI3 3237 2833 #define HSMHV_MOD_PNSUBPSTI1 3238 2834 #define HSMHV_MOD_PNSUBPSTI2 3239 2835 #define HSMHV_MOD_PNSUBPSTI3 3240 2836 #define HSMHV_MOD_PCGSO 3154 2837 #define HSMHV_MOD_PCGDO 3155 2838 #define HSMHV_MOD_PJS0 3157 2839 #define HSMHV_MOD_PJS0SW 3158 2840 #define HSMHV_MOD_PNJ 3159 2841 #define HSMHV_MOD_PCISBK 3172 2842 #define HSMHV_MOD_PCLM1 3191 2843 #define HSMHV_MOD_PCLM2 3192 2844 #define HSMHV_MOD_PCLM3 3193 2845 #define HSMHV_MOD_PWFC 3201 2846 #define HSMHV_MOD_PGIDL1 3205 2847 #define HSMHV_MOD_PGIDL2 3206 2848 #define HSMHV_MOD_PGLEAK1 3208 2849 #define HSMHV_MOD_PGLEAK2 3209 2850 #define HSMHV_MOD_PGLEAK3 3210 2851 #define HSMHV_MOD_PGLEAK6 3213 2852 #define HSMHV_MOD_PGLKSD1 3215 2853 #define HSMHV_MOD_PGLKSD2 3216 2854 #define HSMHV_MOD_PGLKB1 3218 2855 #define HSMHV_MOD_PGLKB2 3219 2856 #define HSMHV_MOD_PNFTRP 3258 2857 #define HSMHV_MOD_PNFALP 3259 2858 #define HSMHV_MOD_PPTHROU 3253 2859 #define HSMHV_MOD_PVDIFFJ 3254 2860 #define HSMHV_MOD_PIBPC1 3404 2861 #define HSMHV_MOD_PIBPC2 3405 2862 #define HSMHV_MOD_PCGBO 3156 2863 #define HSMHV_MOD_PCVDSOVER 3480 2864 #define HSMHV_MOD_PFALPH 3263 2865 #define HSMHV_MOD_PNPEXT 3242 2866 #define HSMHV_MOD_PPOWRAT 3463 2867 #define HSMHV_MOD_PRD 3399 2868 #define HSMHV_MOD_PRD22 3442 2869 #define HSMHV_MOD_PRD23 3443 2870 #define HSMHV_MOD_PRD24 3444 2871 #define HSMHV_MOD_PRDICT1 3316 2872 #define HSMHV_MOD_PRDOV13 3476 2873 #define HSMHV_MOD_PRDSLP1 3315 2874 #define HSMHV_MOD_PRDVB 3301 2875 #define HSMHV_MOD_PRDVD 3510 2876 #define HSMHV_MOD_PRDVG11 3424 2877 #define HSMHV_MOD_PRS 3398 2878 #define HSMHV_MOD_PRTH0 3432 2879 #define HSMHV_MOD_PVOVER 3199 2880 2881 /* device requests */ 2882 #define HSMHV_DNODE 341 2883 #define HSMHV_GNODE 342 2884 #define HSMHV_SNODE 343 2885 #define HSMHV_BNODE 344 2886 /* #define HSMHV_TEMPNODE 345 not used */ 2887 #define HSMHV_DNODEPRIME 346 2888 #define HSMHV_SNODEPRIME 347 2889 /* #define HSMHV_BNODEPRIME 395 not used */ 2890 /* #define HSMHV_DBNODE 396 not used */ 2891 /* #define HSMHV_SBNODE 397 not used */ 2892 /* #define HSMHV_VBD 347 */ 2893 #define HSMHV_VBD 466 2894 #define HSMHV_VBS 348 2895 #define HSMHV_VGS 349 2896 #define HSMHV_VDS 350 2897 #define HSMHV_CD 351 2898 #define HSMHV_CBS 352 2899 #define HSMHV_CBD 353 2900 #define HSMHV_GM 354 2901 #define HSMHV_GDS 355 2902 #define HSMHV_GMBS 356 2903 #define HSMHV_GMT 465 2904 /* #define HSMHV_ISUBT 466 */ 2905 #define HSMHV_GBD 357 2906 #define HSMHV_GBS 358 2907 #define HSMHV_QB 359 2908 #define HSMHV_CQB 360 2909 /* #define HSMHV_QTH 467 not used */ 2910 /* #define HSMHV_CQTH 468 not used */ 2911 /* #define HSMHV_CTH 469 not used */ 2912 #define HSMHV_QG 361 2913 #define HSMHV_CQG 362 2914 #define HSMHV_QD 363 2915 #define HSMHV_CQD 364 2916 #define HSMHV_CGG 365 2917 #define HSMHV_CGD 366 2918 #define HSMHV_CGS 367 2919 #define HSMHV_CBG 368 2920 #define HSMHV_CAPBD 369 2921 /* #define HSMHV_CQBD 370 not used */ 2922 #define HSMHV_CAPBS 371 2923 /* #define HSMHV_CQBS 372 not used */ 2924 #define HSMHV_CDG 373 2925 #define HSMHV_CDD 374 2926 #define HSMHV_CDS 375 2927 #define HSMHV_VON 376 2928 #define HSMHV_VDSAT 377 2929 #define HSMHV_QBS 378 2930 #define HSMHV_QBD 379 2931 #define HSMHV_SOURCECONDUCT 380 2932 #define HSMHV_DRAINCONDUCT 381 2933 #define HSMHV_CBDB 382 2934 #define HSMHV_CBSB 383 2935 #define HSMHV_MOD_RBPB 389 2936 #define HSMHV_MOD_RBPD 390 2937 #define HSMHV_MOD_RBPS 391 2938 #define HSMHV_MOD_RBDB 392 2939 #define HSMHV_MOD_RBSB 393 2940 #define HSMHV_MOD_GBMIN 394 2941 2942 #define HSMHV_ISUB 410 2943 #define HSMHV_IGIDL 411 2944 #define HSMHV_IGISL 412 2945 #define HSMHV_IGD 413 2946 #define HSMHV_IGS 414 2947 #define HSMHV_IGB 415 2948 #define HSMHV_CGSO 416 2949 #define HSMHV_CGBO 417 2950 #define HSMHV_CGDO 418 2951 2952 #define HSMHV_MOD_TCJBD 92 2953 #define HSMHV_MOD_TCJBS 93 2954 #define HSMHV_MOD_TCJBDSW 94 2955 #define HSMHV_MOD_TCJBSSW 95 2956 #define HSMHV_MOD_TCJBDSWG 96 2957 #define HSMHV_MOD_TCJBSSWG 97 2958 2959 #define HSMHV_MOD_VGS_MAX 4001 2960 #define HSMHV_MOD_VGD_MAX 4002 2961 #define HSMHV_MOD_VGB_MAX 4003 2962 #define HSMHV_MOD_VDS_MAX 4004 2963 #define HSMHV_MOD_VBS_MAX 4005 2964 #define HSMHV_MOD_VBD_MAX 4006 2965 #define HSMHV_MOD_VGSR_MAX 4007 2966 #define HSMHV_MOD_VGDR_MAX 4008 2967 #define HSMHV_MOD_VGBR_MAX 4009 2968 #define HSMHV_MOD_VBSR_MAX 4010 2969 #define HSMHV_MOD_VBDR_MAX 4011 2970 2971 #include "hsmhvext.h" 2972 2973 /* Prototype has to be adapted! 2974 extern void HSMHVevaluate(double,double,double,HSMHVinstance*,HSMHVmodel*, 2975 double*,double*,double*, double*, double*, double*, double*, 2976 double*, double*, double*, double*, double*, double*, double*, 2977 double*, double*, double*, double*, CKTcircuit*); 2978 */ 2979 2980 #endif /*HSMHV*/ 2981 2982