tmp node to gnd in HICUM if no SH

This commit is contained in:
Markus Mueller 2020-06-16 17:32:20 +02:00
parent 4e6deec579
commit a46cb231a0
8 changed files with 1301 additions and 1298 deletions

View File

@ -512,9 +512,7 @@ HICUMacLoad(GENmodel *inModel, CKTcircuit *ckt)
//Qcth from 0 to T f_0=- f_T=+
*(here->HICUMtempTempPtr + 1) += -XQcth_Vrth;
} else {
*(here->HICUMtempTempPtr) += ckt->CKTgmin;
}
}
}
}

View File

@ -56,7 +56,7 @@ typedef struct sHICUMinstance {
const int HICUMbaseNode; /* number of base node of hicum */
const int HICUMemitNode; /* number of emitter node of hicum */
const int HICUMsubsNode; /* number of substrate node of hicum */
const int HICUMtempNode; /* number of the temperature node of the hicum */
int HICUMtempNode; /* number of the temperature node of the hicum */
int HICUMcollCINode; /* number of internal collector node of hicum */
int HICUMbaseBINode; /* number of internal base node of hicum */
int HICUMemitEINode; /* number of internal emitter node of hicum */

View File

@ -565,6 +565,19 @@ HICUMsetup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *states)
here->HICUMbaseBINode = tmp->number;
}
//VDMOS COPY
if (!(model->HICUMflsh == 0 || model->HICUMrth < MIN_R )) {
if (here->HICUMtempNode == -1) {
error = CKTmkVolt(ckt,&tmp,here->HICUMname,"dT");
if (error) return(error);
here->HICUMtempNode = tmp->number;
}
} else {
here->HICUMtempNode = 0;
}
//END VDMOS COPY
// if(here->HICUMxfNode == 0) {
// error = CKTmkVolt(ckt, &tmp, here->HICUMname, "xf");
// if(error) return(error);
@ -672,10 +685,7 @@ do { if((here->ptr = SMPmakeElt(matrix, here->first, here->second)) == NULL){\
TSTALLOC(HICUMtempSubsSIPtr,HICUMtempNode,HICUMsubsSINode);
TSTALLOC(HICUMtempTempPtr,HICUMtempNode,HICUMtempNode);
} else { //need this element so that one can still use the node, even though it is not connected
TSTALLOC(HICUMtempTempPtr,HICUMtempNode,HICUMtempNode);
}
}
}
}
return(OK);

View File

@ -3699,11 +3699,6 @@ c Branch: xf-ground, Stamp element: Rxf
// finish
}
}
else {
// force node to 0 volt
*(ckt->CKTrhs + here->HICUMtempNode) += 0;
*(here->HICUMtempTempPtr) += 1;
}
}
}

View File

@ -19,7 +19,7 @@ if [ -z "$testProgramFlags" ] ; then
testProgramFlags="-nw"
fi
#testProgramFlags="-d -V"
testProgramFlags="-d -V"
help() {

File diff suppressed because it is too large Load Diff

View File

@ -1,43 +0,0 @@
//
// Example test specification for HICUM L2V2p32
//
//
// Simulator specific information
// These arguments are added to the model card
// specification to invoke the desired model in
// different simulators (which can have different
// names or levels for the same model) and to switch
// between nType and pType polarities.
// It is assumed that there are no polarity specific
// parameters.
//
`ifdef spice
// hicum not supported
`endif
`ifdef ngspice
nTypeSelectionArguments npn level=8 version=2.34
//pTypeSelectionArguments pnp level=8 version=2.34
`endif
//
// General test-independent information
//
keyLetter q
pins coll base emit subs therm
//verilogaFile vacode/hicumL2V2p34.va
float therm
checkPolarity n
test ypara_npn_full_sh_ac
temperature 27
biases V(emit)=0 V(subs)=0 V(coll)=1.000000
biasSweep V(base)=0.800000,0.950000,0.050000
freq dec 5 1e+008 1e+011
outputs G(base,base) G(base,coll) G(coll,base) G(coll,coll) C(base,base) C(base,coll) C(coll,base) C(coll,coll)
modelParameters parameters/npn_full_sh
`ifdef NOT_USED
`endif

1284
tests/hicum2/npn/qaSpec_real Normal file

File diff suppressed because it is too large Load Diff