Browse Source

devices/bsim3v32: single out duplicate `DrainSatCurrent' block

pre-master-46
dwarning 13 years ago
committed by rlar
parent
commit
751c642db2
  1. 23
      src/spicelib/devices/bsim3v32/b3v32temp.c

23
src/spicelib/devices/bsim3v32/b3v32temp.c

@ -963,6 +963,7 @@ int Size_Not_Found;
+ here->BSIM3v32drainPerimeter
* model->BSIM3v32jctSidewallTempSatCurDensity;
}
#if 0
if ((DrainSatCurrent > 0.0) && (model->BSIM3v32ijth > 0.0))
{ here->BSIM3v32vjdm = Nvtm * log(model->BSIM3v32ijth
/ DrainSatCurrent + 1.0);
@ -980,6 +981,7 @@ int Size_Not_Found;
break;
}
}
#endif
}
else
{
@ -1025,6 +1027,7 @@ int Size_Not_Found;
}
DrainSatCurrent = DrainSatCurrent + here->BSIM3v32drainPerimeter * model->BSIM3v32jctSidewallTempSatCurDensity;
if (DrainSatCurrent <= 0.0) DrainSatCurrent = 1.0e-14;
#if 0
if ((DrainSatCurrent > 0.0) && (model->BSIM3v32ijth > 0.0))
{ here->BSIM3v32vjdm = Nvtm * log(model->BSIM3v32ijth
/ DrainSatCurrent + 1.0);
@ -1042,7 +1045,27 @@ int Size_Not_Found;
break;
}
}
#endif
}
if ((DrainSatCurrent > 0.0) && (model->BSIM3v32ijth > 0.0))
{ here->BSIM3v32vjdm = Nvtm * log(model->BSIM3v32ijth
/ DrainSatCurrent + 1.0);
/* Added revision dependent code */
switch (model->BSIM3v32intVersion) {
case BSIM3v32V324:
case BSIM3v32V323:
case BSIM3v32V322:
here->BSIM3v32IsEvjdm =
DrainSatCurrent * exp(here->BSIM3v32vjdm / Nvtm);
break;
case BSIM3v32V32:
default:
/* Do nothing */
break;
}
}
}
}
return(OK);

Loading…
Cancel
Save