bsim4: unify error printout
This commit is contained in:
parent
ecac7a07a2
commit
b19f5ca4c3
|
|
@ -435,12 +435,12 @@ int Fatal_Flag = 0;
|
|||
Wdrn = here->BSIM4w / here->BSIM4nf;
|
||||
|
||||
if (Size_Not_Found)
|
||||
{ pParam = (struct bsim4SizeDependParam *)malloc(
|
||||
sizeof(struct bsim4SizeDependParam));
|
||||
{ pParam = TMALLOC(struct bsim4SizeDependParam, 1);
|
||||
|
||||
if (pLastKnot == NULL)
|
||||
model->pSizeDependParamKnot = pParam;
|
||||
model->pSizeDependParamKnot = pParam;
|
||||
else
|
||||
pLastKnot->pNext = pParam;
|
||||
pLastKnot->pNext = pParam;
|
||||
pParam->pNext = NULL;
|
||||
here->pParam = pParam;
|
||||
|
||||
|
|
@ -471,56 +471,46 @@ int Fatal_Flag = 0;
|
|||
|
||||
pParam->BSIM4leff = Lnew - 2.0 * pParam->BSIM4dl;
|
||||
if (pParam->BSIM4leff <= 0.0)
|
||||
{ IFuid namarray[2];
|
||||
namarray[0] = model->BSIM4modName;
|
||||
namarray[1] = here->BSIM4name;
|
||||
(*(SPfrontEnd->IFerror))(ERR_FATAL,
|
||||
{
|
||||
SPfrontEnd->IFerrorf(ERR_FATAL,
|
||||
"BSIM4: mosfet %s, model %s: Effective channel length <= 0",
|
||||
namarray);
|
||||
model->BSIM4modName, here->BSIM4name);
|
||||
return(E_BADPARM);
|
||||
}
|
||||
|
||||
pParam->BSIM4weff = Wnew - 2.0 * pParam->BSIM4dw;
|
||||
if (pParam->BSIM4weff <= 0.0)
|
||||
{ IFuid namarray[2];
|
||||
namarray[0] = model->BSIM4modName;
|
||||
namarray[1] = here->BSIM4name;
|
||||
(*(SPfrontEnd->IFerror))(ERR_FATAL,
|
||||
{
|
||||
SPfrontEnd->IFerrorf(ERR_FATAL,
|
||||
"BSIM4: mosfet %s, model %s: Effective channel width <= 0",
|
||||
namarray);
|
||||
model->BSIM4modName, here->BSIM4name);
|
||||
return(E_BADPARM);
|
||||
}
|
||||
|
||||
pParam->BSIM4leffCV = Lnew - 2.0 * pParam->BSIM4dlc;
|
||||
if (pParam->BSIM4leffCV <= 0.0)
|
||||
{ IFuid namarray[2];
|
||||
namarray[0] = model->BSIM4modName;
|
||||
namarray[1] = here->BSIM4name;
|
||||
(*(SPfrontEnd->IFerror))(ERR_FATAL,
|
||||
{
|
||||
SPfrontEnd->IFerrorf(ERR_FATAL,
|
||||
"BSIM4: mosfet %s, model %s: Effective channel length for C-V <= 0",
|
||||
namarray);
|
||||
model->BSIM4modName, here->BSIM4name);
|
||||
return(E_BADPARM);
|
||||
}
|
||||
|
||||
pParam->BSIM4weffCV = Wnew - 2.0 * pParam->BSIM4dwc;
|
||||
if (pParam->BSIM4weffCV <= 0.0)
|
||||
{ IFuid namarray[2];
|
||||
namarray[0] = model->BSIM4modName;
|
||||
namarray[1] = here->BSIM4name;
|
||||
(*(SPfrontEnd->IFerror))(ERR_FATAL,
|
||||
{
|
||||
SPfrontEnd->IFerrorf(ERR_FATAL,
|
||||
"BSIM4: mosfet %s, model %s: Effective channel width for C-V <= 0",
|
||||
namarray);
|
||||
model->BSIM4modName, here->BSIM4name);
|
||||
return(E_BADPARM);
|
||||
}
|
||||
|
||||
pParam->BSIM4weffCJ = Wnew - 2.0 * pParam->BSIM4dwj;
|
||||
if (pParam->BSIM4weffCJ <= 0.0)
|
||||
{ IFuid namarray[2];
|
||||
namarray[0] = model->BSIM4modName;
|
||||
namarray[1] = here->BSIM4name;
|
||||
(*(SPfrontEnd->IFerror))(ERR_FATAL,
|
||||
{
|
||||
SPfrontEnd->IFerrorf(ERR_FATAL,
|
||||
"BSIM4: mosfet %s, model %s: Effective channel width for S/D junctions <= 0",
|
||||
namarray);
|
||||
model->BSIM4modName, here->BSIM4name);
|
||||
return(E_BADPARM);
|
||||
}
|
||||
|
||||
|
|
@ -2404,10 +2394,10 @@ int Fatal_Flag = 0;
|
|||
}
|
||||
|
||||
if (BSIM4checkModel(model, here, ckt))
|
||||
{ IFuid namarray[2];
|
||||
namarray[0] = model->BSIM4modName;
|
||||
namarray[1] = here->BSIM4name;
|
||||
(*(SPfrontEnd->IFerror)) (ERR_FATAL, "Fatal error(s) detected during BSIM4.6.0 parameter checking for %s in model %s", namarray);
|
||||
{
|
||||
SPfrontEnd->IFerrorf(ERR_FATAL,
|
||||
"detected during BSIM4.8.3 parameter checking for \n model %s of device instance %s\n", model->BSIM4modName, here->BSIM4name);
|
||||
|
||||
return(E_BADPARM);
|
||||
}
|
||||
} /* End instance */
|
||||
|
|
|
|||
Loading…
Reference in New Issue