count level=3 model poly and metal capacitance in charge calculation and correct xoi and xom units to Angstrom

This commit is contained in:
dwarning 2025-09-23 17:33:55 +02:00
parent 5afd1c53c0
commit 6d1a54523f
3 changed files with 5 additions and 9 deletions

View File

@ -461,17 +461,13 @@ next1:
deplcapSW = czof2SW*(here->DIOtF3SW+model->DIOgradingSWCoeff*vd/here->DIOtJctSWPot);
}
/*
Dietmar: should not we also add a term (DIOcmetal+DIOcpoly)*vd to DIOcapCharge?
*/
if (model->DIOsoftRevRecParamGiven) {
/*
soft recovery model with VP given and TT!=0 (secured in setup)
add only depletion capacitance.
*/
*(ckt->CKTstate0 + here->DIOcapCharge) =
deplcharge + deplchargeSW;
deplcharge + deplchargeSW + (here->DIOcmetal + here->DIOcpoly)*vd;
capd = deplcap + deplcapSW + here->DIOcmetal + here->DIOcpoly;
here->DIOcap = capd;

View File

@ -267,11 +267,11 @@ DIOmParam(int param, IFvalue *value, GENmodel *inModel)
model->DIOwidthPolyGiven = TRUE;
break;
case DIO_MOD_XOM:
model->DIOmetalOxideThick = value->rValue * 1e-10; /* m */
model->DIOmetalOxideThick = value->rValue * 1e-10; /* Angstrom -> m */
model->DIOmetalOxideThickGiven = TRUE;
break;
case DIO_MOD_XOI:
model->DIOpolyOxideThick = value->rValue * 1e-10; /* m */
model->DIOpolyOxideThick = value->rValue * 1e-10; /* Angstrom -> m */
model->DIOpolyOxideThickGiven = TRUE;
break;
case DIO_MOD_XM:

View File

@ -269,10 +269,10 @@ DIOsetup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *states)
model->DIOwidthPoly = 0.0;
}
if(!model->DIOmetalOxideThickGiven) {
model->DIOmetalOxideThick = 1e-06; /* m */
model->DIOmetalOxideThick = 1e4; /* 10k Angstrom */
}
if(!model->DIOpolyOxideThickGiven) {
model->DIOpolyOxideThick = 1e-06; /* m */
model->DIOpolyOxideThick = 1e4; /* 10k Angstrom */
}
if(!model->DIOmetalMaskOffsetGiven) {
model->DIOmetalMaskOffset = 0.0;