📄 b3soipdset.c
字号:
if (!model->B3SOIPDwesatiiGiven) model->B3SOIPDwesatii = 0.0; if (!model->B3SOIPDwsii0Given) model->B3SOIPDwsii0 = 0.0; if (!model->B3SOIPDwsii1Given) model->B3SOIPDwsii1 = 0.0; if (!model->B3SOIPDwsii2Given) model->B3SOIPDwsii2 = 0.0; if (!model->B3SOIPDwsiidGiven) model->B3SOIPDwsiid = 0.0; if (!model->B3SOIPDwagidlGiven) model->B3SOIPDwagidl = 0.0; if (!model->B3SOIPDwbgidlGiven) model->B3SOIPDwbgidl = 0.0; if (!model->B3SOIPDwngidlGiven) model->B3SOIPDwngidl = 0.0; if (!model->B3SOIPDwntunGiven) model->B3SOIPDwntun = 0.0; if (!model->B3SOIPDwndiodeGiven) model->B3SOIPDwndiode = 0.0; if (!model->B3SOIPDwnrecf0Given) model->B3SOIPDwnrecf0 = 0.0; if (!model->B3SOIPDwnrecr0Given) model->B3SOIPDwnrecr0 = 0.0; if (!model->B3SOIPDwisbjtGiven) model->B3SOIPDwisbjt = 0.0; if (!model->B3SOIPDwisdifGiven) model->B3SOIPDwisdif = 0.0; if (!model->B3SOIPDwisrecGiven) model->B3SOIPDwisrec = 0.0; if (!model->B3SOIPDwistunGiven) model->B3SOIPDwistun = 0.0; if (!model->B3SOIPDwvrec0Given) model->B3SOIPDwvrec0 = 0.0; if (!model->B3SOIPDwvtun0Given) model->B3SOIPDwvtun0 = 0.0; if (!model->B3SOIPDwnbjtGiven) model->B3SOIPDwnbjt = 0.0; if (!model->B3SOIPDwlbjt0Given) model->B3SOIPDwlbjt0 = 0.0; if (!model->B3SOIPDwvabjtGiven) model->B3SOIPDwvabjt = 0.0; if (!model->B3SOIPDwaelyGiven) model->B3SOIPDwaely = 0.0; if (!model->B3SOIPDwahliGiven) model->B3SOIPDwahli = 0.0; /* CV Model */ if (!model->B3SOIPDwvsdfbGiven) model->B3SOIPDwvsdfb = 0.0; if (!model->B3SOIPDwvsdthGiven) model->B3SOIPDwvsdth = 0.0; if (!model->B3SOIPDwdelvtGiven) model->B3SOIPDwdelvt = 0.0; if (!model->B3SOIPDwacdeGiven) model->B3SOIPDwacde = 0.0; if (!model->B3SOIPDwmoinGiven) model->B3SOIPDwmoin = 0.0; /* Cross-term dependence */ if (!model->B3SOIPDpnpeakGiven) model->B3SOIPDpnpeak = 0.0; if (!model->B3SOIPDpnsubGiven) model->B3SOIPDpnsub = 0.0; if (!model->B3SOIPDpngateGiven) model->B3SOIPDpngate = 0.0; if (!model->B3SOIPDpvth0Given) model->B3SOIPDpvth0 = 0.0; if (!model->B3SOIPDpk1Given) model->B3SOIPDpk1 = 0.0; if (!model->B3SOIPDpk1w1Given) model->B3SOIPDpk1w1 = 0.0; if (!model->B3SOIPDpk1w2Given) model->B3SOIPDpk1w2 = 0.0; if (!model->B3SOIPDpk2Given) model->B3SOIPDpk2 = 0.0; if (!model->B3SOIPDpk3Given) model->B3SOIPDpk3 = 0.0; if (!model->B3SOIPDpk3bGiven) model->B3SOIPDpk3b = 0.0; if (!model->B3SOIPDpkb1Given) model->B3SOIPDpkb1 = 0.0; if (!model->B3SOIPDpw0Given) model->B3SOIPDpw0 = 0.0; if (!model->B3SOIPDpnlxGiven) model->B3SOIPDpnlx = 0.0; if (!model->B3SOIPDpdvt0Given) model->B3SOIPDpdvt0 = 0.0; if (!model->B3SOIPDpdvt1Given) model->B3SOIPDpdvt1 = 0.0; if (!model->B3SOIPDpdvt2Given) model->B3SOIPDpdvt2 = 0.0; if (!model->B3SOIPDpdvt0wGiven) model->B3SOIPDpdvt0w = 0.0; if (!model->B3SOIPDpdvt1wGiven) model->B3SOIPDpdvt1w = 0.0; if (!model->B3SOIPDpdvt2wGiven) model->B3SOIPDpdvt2w = 0.0; if (!model->B3SOIPDpu0Given) model->B3SOIPDpu0 = 0.0; if (!model->B3SOIPDpuaGiven) model->B3SOIPDpua = 0.0; if (!model->B3SOIPDpubGiven) model->B3SOIPDpub = 0.0; if (!model->B3SOIPDpucGiven) model->B3SOIPDpuc = 0.0; if (!model->B3SOIPDpvsatGiven) model->B3SOIPDpvsat = 0.0; if (!model->B3SOIPDpa0Given) model->B3SOIPDpa0 = 0.0; if (!model->B3SOIPDpagsGiven) model->B3SOIPDpags = 0.0; if (!model->B3SOIPDpb0Given) model->B3SOIPDpb0 = 0.0; if (!model->B3SOIPDpb1Given) model->B3SOIPDpb1 = 0.0; if (!model->B3SOIPDpketaGiven) model->B3SOIPDpketa = 0.0; if (!model->B3SOIPDpketasGiven) model->B3SOIPDpketas = 0.0; if (!model->B3SOIPDpa1Given) model->B3SOIPDpa1 = 0.0; if (!model->B3SOIPDpa2Given) model->B3SOIPDpa2 = 0.0; if (!model->B3SOIPDprdswGiven) model->B3SOIPDprdsw = 0.0; if (!model->B3SOIPDpprwbGiven) model->B3SOIPDpprwb = 0.0; if (!model->B3SOIPDpprwgGiven) model->B3SOIPDpprwg = 0.0; if (!model->B3SOIPDpwrGiven) model->B3SOIPDpwr = 0.0; if (!model->B3SOIPDpnfactorGiven) model->B3SOIPDpnfactor = 0.0; if (!model->B3SOIPDpdwgGiven) model->B3SOIPDpdwg = 0.0; if (!model->B3SOIPDpdwbGiven) model->B3SOIPDpdwb = 0.0; if (!model->B3SOIPDpvoffGiven) model->B3SOIPDpvoff = 0.0; if (!model->B3SOIPDpeta0Given) model->B3SOIPDpeta0 = 0.0; if (!model->B3SOIPDpetabGiven) model->B3SOIPDpetab = 0.0; if (!model->B3SOIPDpdsubGiven) model->B3SOIPDpdsub = 0.0; if (!model->B3SOIPDpcitGiven) model->B3SOIPDpcit = 0.0; if (!model->B3SOIPDpcdscGiven) model->B3SOIPDpcdsc = 0.0; if (!model->B3SOIPDpcdscbGiven) model->B3SOIPDpcdscb = 0.0; if (!model->B3SOIPDpcdscdGiven) model->B3SOIPDpcdscd = 0.0; if (!model->B3SOIPDppclmGiven) model->B3SOIPDppclm = 0.0; if (!model->B3SOIPDppdibl1Given) model->B3SOIPDppdibl1 = 0.0; if (!model->B3SOIPDppdibl2Given) model->B3SOIPDppdibl2 = 0.0; if (!model->B3SOIPDppdiblbGiven) model->B3SOIPDppdiblb = 0.0; if (!model->B3SOIPDpdroutGiven) model->B3SOIPDpdrout = 0.0; if (!model->B3SOIPDppvagGiven) model->B3SOIPDppvag = 0.0; if (!model->B3SOIPDpdeltaGiven) model->B3SOIPDpdelta = 0.0; if (!model->B3SOIPDpalpha0Given) model->B3SOIPDpalpha0 = 0.0; if (!model->B3SOIPDpfbjtiiGiven) model->B3SOIPDpfbjtii = 0.0; if (!model->B3SOIPDpbeta0Given) model->B3SOIPDpbeta0 = 0.0; if (!model->B3SOIPDpbeta1Given) model->B3SOIPDpbeta1 = 0.0; if (!model->B3SOIPDpbeta2Given) model->B3SOIPDpbeta2 = 0.0; if (!model->B3SOIPDpvdsatii0Given) model->B3SOIPDpvdsatii0 = 0.0; if (!model->B3SOIPDpliiGiven) model->B3SOIPDplii = 0.0; if (!model->B3SOIPDpesatiiGiven) model->B3SOIPDpesatii = 0.0; if (!model->B3SOIPDpsii0Given) model->B3SOIPDpsii0 = 0.0; if (!model->B3SOIPDpsii1Given) model->B3SOIPDpsii1 = 0.0; if (!model->B3SOIPDpsii2Given) model->B3SOIPDpsii2 = 0.0; if (!model->B3SOIPDpsiidGiven) model->B3SOIPDpsiid = 0.0; if (!model->B3SOIPDpagidlGiven) model->B3SOIPDpagidl = 0.0; if (!model->B3SOIPDpbgidlGiven) model->B3SOIPDpbgidl = 0.0; if (!model->B3SOIPDpngidlGiven) model->B3SOIPDpngidl = 0.0; if (!model->B3SOIPDpntunGiven) model->B3SOIPDpntun = 0.0; if (!model->B3SOIPDpndiodeGiven) model->B3SOIPDpndiode = 0.0; if (!model->B3SOIPDpnrecf0Given) model->B3SOIPDpnrecf0 = 0.0; if (!model->B3SOIPDpnrecr0Given) model->B3SOIPDpnrecr0 = 0.0; if (!model->B3SOIPDpisbjtGiven) model->B3SOIPDpisbjt = 0.0; if (!model->B3SOIPDpisdifGiven) model->B3SOIPDpisdif = 0.0; if (!model->B3SOIPDpisrecGiven) model->B3SOIPDpisrec = 0.0; if (!model->B3SOIPDpistunGiven) model->B3SOIPDpistun = 0.0; if (!model->B3SOIPDpvrec0Given) model->B3SOIPDpvrec0 = 0.0; if (!model->B3SOIPDpvtun0Given) model->B3SOIPDpvtun0 = 0.0; if (!model->B3SOIPDpnbjtGiven) model->B3SOIPDpnbjt = 0.0; if (!model->B3SOIPDplbjt0Given) model->B3SOIPDplbjt0 = 0.0; if (!model->B3SOIPDpvabjtGiven) model->B3SOIPDpvabjt = 0.0; if (!model->B3SOIPDpaelyGiven) model->B3SOIPDpaely = 0.0; if (!model->B3SOIPDpahliGiven) model->B3SOIPDpahli = 0.0; /* CV Model */ if (!model->B3SOIPDpvsdfbGiven) model->B3SOIPDpvsdfb = 0.0; if (!model->B3SOIPDpvsdthGiven) model->B3SOIPDpvsdth = 0.0; if (!model->B3SOIPDpdelvtGiven) model->B3SOIPDpdelvt = 0.0; if (!model->B3SOIPDpacdeGiven) model->B3SOIPDpacde = 0.0; if (!model->B3SOIPDpmoinGiven) model->B3SOIPDpmoin = 0.0;/* Added for binning - END */ if (!model->B3SOIPDcfGiven) model->B3SOIPDcf = 2.0 * EPSOX / PI * log(1.0 + 0.4e-6 / model->B3SOIPDtox); if (!model->B3SOIPDcgdoGiven) { if (model->B3SOIPDdlcGiven && (model->B3SOIPDdlc > 0.0)) { model->B3SOIPDcgdo = model->B3SOIPDdlc * model->B3SOIPDcox - model->B3SOIPDcgdl ; } else model->B3SOIPDcgdo = 0.6 * model->B3SOIPDxj * model->B3SOIPDcox; } if (!model->B3SOIPDcgsoGiven) { if (model->B3SOIPDdlcGiven && (model->B3SOIPDdlc > 0.0)) { model->B3SOIPDcgso = model->B3SOIPDdlc * model->B3SOIPDcox - model->B3SOIPDcgsl ; } else model->B3SOIPDcgso = 0.6 * model->B3SOIPDxj * model->B3SOIPDcox; } if (!model->B3SOIPDcgeoGiven) { model->B3SOIPDcgeo = 0.0; } if (!model->B3SOIPDxpartGiven) model->B3SOIPDxpart = 0.0; if (!model->B3SOIPDsheetResistanceGiven) model->B3SOIPDsheetResistance = 0.0; if (!model->B3SOIPDcsdeswGiven) model->B3SOIPDcsdesw = 0.0; if (!model->B3SOIPDunitLengthGateSidewallJctCapGiven) model->B3SOIPDunitLengthGateSidewallJctCap = 1e-10; if (!model->B3SOIPDGatesidewallJctPotentialGiven) model->B3SOIPDGatesidewallJctPotential = 0.7; if (!model->B3SOIPDbodyJctGateSideGradingCoeffGiven) model->B3SOIPDbodyJctGateSideGradingCoeff = 0.5; if (!model->B3SOIPDoxideTrapDensityAGiven) { if (model->B3SOIPDtype == NMOS) model->B3SOIPDoxideTrapDensityA = 1e20; else model->B3SOIPDoxideTrapDensityA=9.9e18; } if (!model->B3SOIPDoxideTrapDensityBGiven) { if (model->B3SOIPDtype == NMOS) model->B3SOIPDoxideTrapDensityB = 5e4; else model->B3SOIPDoxideTrapDensityB = 2.4e3; } if (!model->B3SOIPDoxideTrapDensityCGiven) { if (model->B3SOIPDtype == NMOS) model->B3SOIPDoxideTrapDensityC = -1.4e-12; else model->B3SOIPDoxideTrapDensityC = 1.4e-12; } if (!model->B3SOIPDemGiven) model->B3SOIPDem = 4.1e7; /* V/m */ if (!model->B3SOIPDefGiven) model->B3SOIPDef = 1.0; if (!model->B3SOIPDafGiven) model->B3SOIPDaf = 1.0; if (!model->B3SOIPDkfGiven) model->B3SOIPDkf = 0.0; if (!model->B3SOIPDnoifGiven) model->B3SOIPDnoif = 1.0; /* loop through all the instances of the model */ for (here = model->B3SOIPDinstances; here != NULL ; here=here->B3SOIPDnextInstance) { if (here->B3SOIPDowner == ARCHme) { /* allocate a chunk of the state vector */ here->B3SOIPDstates = *states; *states += B3SOIPDnumStates; } /* perform the parameter defaulting */ if (!here->B3SOIPDdrainAreaGiven) here->B3SOIPDdrainArea = 0.0; if (!here->B3SOIPDdrainPerimeterGiven) here->B3SOIPDdrainPerimeter = 0.0; if (!here->B3SOIPDdrainSquaresGiven) here->B3SOIPDdrainSquares = 1.0; if (!here->B3SOIPDicVBSGiven) here->B3SOIPDicVBS = 0; if (!here->B3SOIPDicVDSGiven) here->B3SOIPDicVDS = 0; if (!here->B3SOIPDicVGSGiven) here->B3SOIPDicVGS = 0; if (!here->B3SOIPDicVESGiven) here->B3SOIPDicVES = 0; if (!here->B3SOIPDicVPSGiven) here->B3SOIPDicVPS = 0; if (!here->B3SOIPDbjtoffGiven) here->B3SOIPDbjtoff = 0; if (!here->B3SOIPDdebugModGiven) here->B3SOIPDdebugMod = 0; if (!here->B3SOIPDrth0Given) here->B3SOIPDrth0 = model->B3SOIPDrth0; if (!here->B3SOIPDcth0Given) here->B3SOIPDcth0 = model->B3SOIPDcth0; if (!here->B3SOIPDbodySquaresGiven) here->B3SOIPDbodySquares = 1.0; if (!here->B3SOIPDfrbodyGiven) here->B3SOIPDfrbody = 1.0; if (!here->B3SOIPDlGiven) here->B3SOIPDl = 5e-6; if (!here->B3SOIPDsourceAreaGiven) here->B3SOIPDsourceArea = 0; if (!here->B3SOIPDsourcePerimeterGiven) here->B3SOIPDsourcePerimeter = 0; if (!here->B3SOIPDsourceSquaresGiven) here->B3SOIPDsourceSquares = 1; if (!here->B3SOIPDwGiven) here->B3SOIPDw = 5e-6; if (!here->B3SOIPDmGiven) here->B3SOIPDm = 1; /* v2.0 release */ if (!here->B3SOIPDnbcGiven) here->B3SOIPDnbc = 0; if (!here->B3SOIPDnsegGiven) here->B3SOIPDnseg = 1; if (!here->B3SOIPDpdbcpGiven) here->B3SOIPDpdbcp = 0; if (!here->B3SOIPDpsbcpGiven) here->B3SOIPDpsbcp = 0; if (!here->B3SOIPDagbcpGiven) here->B3SOIPDagbcp = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -