update to hicum0 v1.2
This commit is contained in:
parent
58ad4af9f6
commit
b03cf4e6c2
|
|
@ -1,8 +1,38 @@
|
|||
// HICUM Level_0: A Verilog-A description
|
||||
// HICUM Level_0 Version_1.12: A Verilog-A description
|
||||
// (A simplified version of HICUM Level2 model for BJT)
|
||||
// ## It is modified after the first version of HICUM/L0 code ##
|
||||
|
||||
// Changed VT0 in Vt0 to prevent conflict in compiled C version. DW
|
||||
// 12/08: Modifications for ngspice and adms2.2.7 DW
|
||||
// Changed VT0 in Vt0 to prevent conflict in compiled C version.
|
||||
// Made a temporary variable cjei_i for cjei output purpose only.
|
||||
|
||||
// Minor code related changes
|
||||
// 12/06: Upper limit of FGEO is changed to infinity
|
||||
// 06/06: Thermal node "tnode" set as external
|
||||
// Flag FLSH introduced for controlling Self-heating calculation
|
||||
// all if-else blocks marked with begin-end
|
||||
// all series resistors and RTH are allowed to have a minimum value MIN_R
|
||||
// 07/06: QCJMOD deleted, QJMODF introduced along with with HICJQ
|
||||
// ddx() operator used with QJMOD and QJMODF wherever needed
|
||||
// aj is kept at 2.4 except BE depletion charge
|
||||
// Substrate transistor transfer current added.
|
||||
// Gmin added to (bi,ei) and (bi,ci) branches.
|
||||
// hyperbolic smoothing used in rbi computation to avoid devide-by-zero.
|
||||
|
||||
// *********************************************************************************
|
||||
// 06/06: Comment on NODE COLLAPSING:
|
||||
// Presently this verilog code permits a minimum of 1 milli-Ohm resistance for any
|
||||
// series resistance as well as for thermal resistance RTH. If any of the resistance
|
||||
// values drops below this minimum value, the corresponding nodes are shorted with
|
||||
// zero voltage contribution. We want the model compilers/simulators deal this
|
||||
// situation in such a manner that the corresponding node is COLLAPSED.
|
||||
// We expect that the simulators should permit current contribution statement
|
||||
// for any branch with resistance value more than (or equal to) 1 milli-Ohm without
|
||||
// any convergence problem. In fact, we wish NOT to have to use a voltage contribution
|
||||
// statement in our Verilog code, except as an indication for the model compiler/simulator
|
||||
// to interprete a zero branch voltage as NODE-COLLAPSING action.
|
||||
// **********************************************************************************
|
||||
|
||||
|
||||
//Default simulator: Spectre
|
||||
|
||||
|
|
@ -30,63 +60,43 @@
|
|||
`define NPN +1
|
||||
`define PNP -1
|
||||
|
||||
|
||||
`define VPT_thresh 1.0e2
|
||||
`define EXPLIM 80.0
|
||||
`define INF 1.0e6
|
||||
`define TMAX 326.85
|
||||
`define TMIN -100.0
|
||||
`define MIN_R 0.001
|
||||
`define Gmin 1.0e-12
|
||||
|
||||
// Depletion Charge and capacitance
|
||||
// Use of ddx() operator would help omit this macro
|
||||
`define QCJMOD(vj,cj0,vd,z,vpt,aj,qjf,cjf)\
|
||||
`define QCMODF(vj,cj0,vd,z,aj,cjf)\
|
||||
if(cj0 > 0.0) begin\
|
||||
zr = z/4.0;\
|
||||
vp = vpt-vd;\
|
||||
vf = vd*(1.0-exp(-ln(aj)/z));\
|
||||
cmax = aj*cj0;\
|
||||
cr = cj0*exp((z-zr)*ln(vd/vpt));\
|
||||
a = VT;\
|
||||
ve = (vf-vj)/a;\
|
||||
if (ve <= `EXPLIM) begin\
|
||||
ex1 = exp(ve);\
|
||||
ee1 = 1.0+ex1;\
|
||||
e1 = ex1/ee1;\
|
||||
vj1 = vf-a*ln(ee1);\
|
||||
end else begin\
|
||||
e1 = 1.0;\
|
||||
vj1 = vj;\
|
||||
end\
|
||||
a = 0.1*vp+4.0*VT;\
|
||||
vr = (vp+vj1)/a;\
|
||||
if (vr <= `EXPLIM) begin\
|
||||
ex1 = exp(vr);\
|
||||
ee1 = 1.0+ex1;\
|
||||
e2 = ex1/ee1;\
|
||||
vj2 = -vp+a*ln(ee1);\
|
||||
end else begin\
|
||||
e2 = 1.0;\
|
||||
vj2 = vj1;\
|
||||
end\
|
||||
vj4 = vj-vj1;\
|
||||
ez = 1.0-z;\
|
||||
ezr = 1.0-zr;\
|
||||
vdj1 = ln(1.0-vj1/vd);\
|
||||
vdj2 = ln(1.0-vj2/vd);\
|
||||
qj1 = cj0*(1.0-exp(vdj2*ez))/ez;\
|
||||
qj2 = cr*(1.0-exp(vdj1*ezr))/ezr;\
|
||||
qj3 = cr*(1.0-exp(vdj2*ezr))/ezr;\
|
||||
qjf = (qj1+qj2-qj3)*vd+cmax*vj4;\
|
||||
cj1 = cj0*exp(vdj2*(-z))*e1*e2;\
|
||||
cj2 = cr*exp(vdj1*(-zr))*(1.0-e2);\
|
||||
cj3 = cmax*(1.0-e1);\
|
||||
cjf = cj1+cj2+cj3;\
|
||||
vf = vd*(1.0-exp(-ln(aj)/z));\
|
||||
xvf = (vf-vj)/VT;\
|
||||
xvf2 = sqrt(xvf*xvf+1.921812);\
|
||||
v_j = vf-VT*(xvf+xvf2)*0.5;\
|
||||
dvj = 0.5*(xvf+xvf2)/xvf2;\
|
||||
cjf = cj0*exp(-z*ln(1-v_j/vd))*dvj+aj*cj0*(1-dvj);\
|
||||
end else begin\
|
||||
qjf = 0.0;\
|
||||
cjf = 0.0;\
|
||||
cjf = 0.0;\
|
||||
end
|
||||
|
||||
|
||||
// Depletion Charge
|
||||
// DEPLETION CHARGE CALCULATION
|
||||
// Hyperbolic smoothing used; no punch-through
|
||||
`define QJMODF(vj,cj0,vd,z,aj,qjf)\
|
||||
if(cj0 > 0.0) begin\
|
||||
vf = vd*(1.0-exp(-ln(aj)/z));\
|
||||
xvf = (vf-vj)/VT;\
|
||||
xvf2 = sqrt(xvf*xvf+1.921812);\
|
||||
v_j = vf-VT*(xvf+xvf2)*0.5;\
|
||||
x = 1.0-z;\
|
||||
y = 1.0-exp(x*ln(1.0-v_j/vd));\
|
||||
qjf = cj0*vd*y/x+aj*cj0*(vj-v_j);\
|
||||
end else begin\
|
||||
qjf = 0.0;\
|
||||
end
|
||||
|
||||
|
||||
// Depletion Charge : with punch through
|
||||
`define QJMOD(vj,cj0,vd,z,vpt,aj,qjf)\
|
||||
if(cj0 > 0.0) begin\
|
||||
zr = z/4.0;\
|
||||
|
|
@ -99,10 +109,8 @@
|
|||
if (ve <= `EXPLIM) begin\
|
||||
ex1 = exp(ve);\
|
||||
ee1 = 1.0+ex1;\
|
||||
e1 = ex1/(ee1);\
|
||||
vj1 = vf-a*ln(ee1);\
|
||||
end else begin\
|
||||
e1 = 1.0;\
|
||||
vj1 = vj;\
|
||||
end\
|
||||
a = 0.1*vp+4.0*VT;\
|
||||
|
|
@ -110,10 +118,8 @@
|
|||
if (vr <= `EXPLIM) begin\
|
||||
ex1 = exp(vr);\
|
||||
ee1 = 1.0+ex1;\
|
||||
e2 = ex1/(ee1);\
|
||||
vj2 = -vp+a*ln(ee1);\
|
||||
end else begin\
|
||||
e2 = 1.0;\
|
||||
vj2 = vj1;\
|
||||
end\
|
||||
vj4 = vj-vj1;\
|
||||
|
|
@ -128,15 +134,26 @@
|
|||
end else begin\
|
||||
qjf = 0.0;\
|
||||
end
|
||||
|
||||
|
||||
|
||||
// DEPLETION CHARGE CALCULATION SELECTOR:
|
||||
// Dependent on junction punch-through voltage
|
||||
// Important for collector related junctions
|
||||
`define HICJQ(vj,cj0,vd,z,vpt,qjf)\
|
||||
if(vpt < `VPT_thresh) begin\
|
||||
`QJMOD(vj,cj0,vd,z,vpt,2.4,qjf)\
|
||||
end else begin\
|
||||
`QJMODF(vj,cj0,vd,z,2.4,qjf)\
|
||||
end
|
||||
|
||||
//Temperature dependence of depletion capacitance parameters
|
||||
`define TMPHICJ(cj0,vd,z,aj,vg,cj0_t,vd_t,aj_t)\
|
||||
`define TMPHICJ(cj0,vd,z,vg,cj0_t,vd_t)\
|
||||
arg = 0.5*vd/Vt0;\
|
||||
vdj0 = 2*Vt0*ln(exp(arg)-exp(-arg));\
|
||||
vdjt = vdj0*qtt0+vg*(1-qtt0)-mg*VT*ln_qtt0;\
|
||||
vd_t = vdjt+2*VT*ln(0.5*(1+sqrt(1+4*exp(-vdjt/VT))));\
|
||||
cj0_t = cj0*exp(z*ln(vd/vd_t));\
|
||||
aj_t = aj*vd_t/vd;
|
||||
cj0_t = cj0*exp(z*ln(vd/vd_t));
|
||||
|
||||
|
||||
//Limiting exponential
|
||||
`define LIN_EXP(le, arg)\
|
||||
|
|
@ -177,12 +194,12 @@
|
|||
end
|
||||
|
||||
|
||||
module hic0_full (c,b,e,s);
|
||||
module hic0_full (c,b,e,s,tnode);
|
||||
|
||||
|
||||
//Node definitions
|
||||
|
||||
inout c,b,e,s;
|
||||
inout c,b,e,s,tnode;
|
||||
electrical c `P(info="external collector node");
|
||||
electrical b `P(info="external base node");
|
||||
electrical e `P(info="external emitter node");
|
||||
|
|
@ -190,14 +207,25 @@ module hic0_full (c,b,e,s);
|
|||
electrical ci `P(info="internal collector node");
|
||||
electrical bi `P(info="internal base node");
|
||||
electrical ei `P(info="internal emitter node");
|
||||
electrical tnode `P(info="local temperature rise node");
|
||||
|
||||
branch (ci,c) irescx;
|
||||
branch (ci,c) vrescx;
|
||||
branch (ei,e) iresex;
|
||||
branch (ei,e) vresex;
|
||||
branch (b,bi) irescb;
|
||||
branch (b,bi) vrescb;
|
||||
electrical tnode `P(info="local temperature rise node");
|
||||
|
||||
|
||||
//Branch definitions
|
||||
branch (ci,c) br_cic_i;
|
||||
branch (ci,c) br_cic_v;
|
||||
branch (ei,e) br_eie_i;
|
||||
branch (ei,e) br_eie_v;
|
||||
branch (bi,ei) br_biei;
|
||||
branch (bi,ci) br_bici;
|
||||
branch (ci,ei) br_ciei;
|
||||
branch (b,bi) br_bbi_i;
|
||||
branch (b,bi) br_bbi_v;
|
||||
branch (b,e) br_be;
|
||||
branch (b,ci) br_bci;
|
||||
branch (b,s) br_bs;
|
||||
branch (s,ci) br_sci;
|
||||
branch (tnode ) br_sht;
|
||||
|
||||
//
|
||||
// Parameter initialization with default values
|
||||
|
||||
|
|
@ -258,14 +286,16 @@ module hic0_full (c,b,e,s);
|
|||
parameter real rbi0 = 0.0 from [0:`INF) `P(spice:name="rbi0" info="Internal base resistance at zero-bias" test:value="100" unit="Ohm" m:inverse_factor="yes");
|
||||
parameter real vr0e = 2.5 from (0:`INF] `P(spice:name="vr0e" info="forward Early voltage (normalization volt.)" unit="V");
|
||||
parameter real vr0c = `INF from (0:`INF] `P(spice:name="vr0c" info="forward Early voltage (normalization volt.)" unit="V" default="infinity" test:value="25.0");
|
||||
parameter real fgeo = 0.656 from [0:1] `P(spice:name="fgeo" info="Geometry factor" test:value="0.73");
|
||||
parameter real fgeo = 0.656 from [0:`INF] `P(spice:name="fgeo" info="Geometry factor" test:value="0.73");
|
||||
|
||||
// Series resistances
|
||||
parameter real rbx = 0.0 from [0:`INF) `P(spice:name="rbx" info="External base series resistance" test:value="8.8" unit="Ohm" m:inverse_factor="yes");
|
||||
parameter real rcx = 0.0 from [0:`INF) `P(spice:name="rcx" info="Emitter series resistance" test:value="12.5" unit="Ohm" m:inverse_factor="yes");
|
||||
parameter real re = 0.0 from [0:`INF) `P(spice:name="re" info="External collector series resistance" test:value="9.16" unit="Ohm" m:inverse_factor="yes");
|
||||
|
||||
// Substrate diode current and cap
|
||||
// Substrate transfer current, diode current and cap
|
||||
parameter real itss = 0.0 from [0:1.0] `P(spice:name="itss" info="Substrate transistor transfer saturation current" unit="A" test:value="1e-17" m:factor="yes");
|
||||
parameter real msf = 1.0 from (0:10] `P(spice:name="msf" info="Substrate transistor transfer current non-ideality factor");
|
||||
parameter real iscs = 0.0 from [0:1.0] `P(spice:name="iscs" info="SC saturation current" unit="A" test:value="1e-17" m:factor="yes");
|
||||
parameter real msc = 1.0 from (0:10] `P(spice:name="msc" info="SC non-ideality factor");
|
||||
parameter real cjs0 = 1.0e-20 from [0:`INF) `P(spice:name="cjs0" info="Zero-bias SC depletion capacitance" unit="F" test:value="1e-15" m:factor="yes");
|
||||
|
|
@ -307,6 +337,7 @@ module hic0_full (c,b,e,s);
|
|||
parameter real aleav = 0.0 `P(spice:name="aleav" info="TC of avalanche exponential factor" unit="1/K");
|
||||
|
||||
// Self-heating
|
||||
parameter integer flsh = 0 from [0:2] `P(spice:name="flsh" info="Flag for self-heating calculation" test:value="2");
|
||||
parameter real rth = 0.0 from [0:`INF) `P(spice:name="rth" info="Thermal resistance" test:value="200.0" unit="K/W" m:inverse_factor="yes");
|
||||
parameter real cth = 0.0 from [0:`INF) `P(spice:name="cth" info="Thermal capacitance" test:value="0.1" unit="Ws/K" m:factor="yes");
|
||||
|
||||
|
|
@ -344,21 +375,21 @@ module hic0_full (c,b,e,s);
|
|||
real VT,Tamb,Tdev,Tnom,dT,qtt0,ln_qtt0;
|
||||
real vde_t,vdci_t,vdcx_t,vds_t;
|
||||
real is_t,ires_t,ibes_t,ibcs_t;
|
||||
real iscs_t,cje0_t,cjci0_t,cjcx0_t;
|
||||
real itss_t,iscs_t,cje0_t,cjci0_t,cjcx0_t;
|
||||
real cjs0_t,rci0_t,vlim_t;
|
||||
real vces_t,thcs_t,tef0_t,rbi0_t;
|
||||
real rbx_t,rcx_t,re_t,t0_t,eavl_t,kavl_t;
|
||||
real aje_t,ajci_t,ajcx_t,ajs_t;
|
||||
real aje_t;
|
||||
|
||||
// bc charge and cap
|
||||
real qjci `P(ask="yes" info="B-C internal junction charge" unit="C");
|
||||
real qjcx,qjcii,cjcii,qjcxi,qjciii; //cjcx
|
||||
real cjci0_t_ii,cjcx0_t_ii,cjcx0_t_i;
|
||||
real cjci0_t_ii,cjcx0_t_ii,cjcx0_t_i,v_j;
|
||||
|
||||
// be junction
|
||||
real qjei `P(ask="yes" info="B-E internal junction charge" unit="C");
|
||||
real cjei `P(ask="yes" info="B-E internal junction capacitance" unit="F");
|
||||
real vf,vj,x,y,e1,e2;
|
||||
real cjei_i `P(ask="yes" info="B-E internal junction capacitance" unit="F"); // dw: adms2.2.7 problem
|
||||
real cjei,vf,vj,x,y,e1,e2;
|
||||
|
||||
// transfer and internal base current
|
||||
real cc,qj_2,facl;
|
||||
|
|
@ -380,10 +411,10 @@ module hic0_full (c,b,e,s);
|
|||
real v_bord,a_iavl,lncc;
|
||||
|
||||
// base resistance
|
||||
real rb,ri,eta,fac_ri,rbi,qje;
|
||||
real rb,eta,rbi,qje,Qz_nom,fQz;
|
||||
|
||||
// substrate diode and cap
|
||||
real qjs;
|
||||
// substrate transistor, diode and cap
|
||||
real qjs,HSa,HSb,HSI_Tsu,HSUM;
|
||||
|
||||
// self heating
|
||||
real pterm;
|
||||
|
|
@ -403,7 +434,7 @@ module hic0_full (c,b,e,s);
|
|||
real IS,IST,UM1,U,Iz,DIOY;
|
||||
|
||||
// branch voltages
|
||||
real Vbci,Vbici,Vbiei,Vciei,Vsci,Veie,Vbbi,Vcic,Vbe,Vrth, Vrth_ext;
|
||||
real Vbci,Vbici,Vbiei,Vciei,Vsci,Veie,Vbbi,Vcic,Vbe,Vrth;
|
||||
|
||||
//Output to be seen
|
||||
real ijbc `P(ask="yes" info="Base-collector diode current" unit="A");
|
||||
|
|
@ -437,16 +468,16 @@ analog begin
|
|||
HICUMtype = `NPN;
|
||||
end
|
||||
|
||||
Vbci = HICUMtype*V(b,ci);
|
||||
Vbici = HICUMtype*V(bi,ci);
|
||||
Vbiei = HICUMtype*V(bi,ei);
|
||||
Vciei = HICUMtype*V(ci,ei);
|
||||
Vsci = HICUMtype*V(s,ci);
|
||||
Veie = V(vresex);
|
||||
Vcic = V(vrescx);
|
||||
Vbbi = V(vrescb);
|
||||
Vbe = HICUMtype*V(b,e);
|
||||
Vrth = V(tnode);
|
||||
Vbci = HICUMtype*V(br_bci);
|
||||
Vbici = HICUMtype*V(br_bici);
|
||||
Vbiei = HICUMtype*V(br_biei);
|
||||
Vciei = HICUMtype*V(br_ciei);
|
||||
Vsci = HICUMtype*V(br_sci);
|
||||
Veie = V(br_eie_v);
|
||||
Vcic = V(br_cic_v);
|
||||
Vbbi = V(br_bbi_v);
|
||||
Vbe = HICUMtype*V(br_be);
|
||||
Vrth = V(br_sht);
|
||||
|
||||
|
||||
|
||||
|
|
@ -456,14 +487,16 @@ analog begin
|
|||
|
||||
Tnom = tnom+273.15;
|
||||
Tamb = $temperature;
|
||||
Tdev = Tamb+dt+Vrth; // selfheating instead dT later possible
|
||||
Tdev = Tamb+dt+Vrth;
|
||||
|
||||
// Limit temperature to avoid FPE's in equations
|
||||
if(Tdev < `TMIN + 273.15)
|
||||
if(Tdev < `TMIN + 273.15) begin
|
||||
Tdev = `TMIN + 273.15;
|
||||
else
|
||||
if (Tdev > `TMAX + 273.15)
|
||||
end else begin
|
||||
if (Tdev > `TMAX + 273.15) begin
|
||||
Tdev = `TMAX + 273.15;
|
||||
end
|
||||
end
|
||||
|
||||
Vt0 = `P_K*Tnom /`P_Q;
|
||||
VT = `P_K*Tdev /`P_Q;
|
||||
|
|
@ -483,11 +516,13 @@ analog begin
|
|||
ibes_t = ibes*exp(zetabet*ln_qtt0+vge/VT*(qtt0-1));
|
||||
ires_t = ires*exp(0.5*mg*ln_qtt0+0.5*vgbe/VT*(qtt0-1));
|
||||
ibcs_t = ibcs*exp(zetabci*ln_qtt0+vgc/VT*(qtt0-1));
|
||||
itss_t = itss*exp(zetasct*ln_qtt0+vgc/VT*(qtt0-1));
|
||||
iscs_t = iscs*exp(zetasct*ln_qtt0+vgs/VT*(qtt0-1));
|
||||
`TMPHICJ(cje0,vde,ze,aje,vgbe,cje0_t,vde_t,aje_t)
|
||||
`TMPHICJ(cjci0,vdci,zci,2.4,vgbc,cjci0_t,vdci_t,ajci_t)
|
||||
`TMPHICJ(cjcx0,vdcx,zcx,2.4,vgbc,cjcx0_t,vdcx_t,ajcx_t)
|
||||
`TMPHICJ(cjs0,vds,zs,2.4,vgsc,cjs0_t,vds_t,ajs_t)
|
||||
`TMPHICJ(cje0,vde,ze,vgbe,cje0_t,vde_t)
|
||||
aje_t = aje*vde_t/vde;
|
||||
`TMPHICJ(cjci0,vdci,zci,vgbc,cjci0_t,vdci_t)
|
||||
`TMPHICJ(cjcx0,vdcx,zcx,vgbc,cjcx0_t,vdcx_t)
|
||||
`TMPHICJ(cjs0,vds,zs,vgsc,cjs0_t,vds_t)
|
||||
rci0_t = rci0*exp(zetaci*ln_qtt0);
|
||||
vlim_t = vlim*exp((zetaci-avs)*ln_qtt0);
|
||||
vces_t = vces*(1+alces*dT);
|
||||
|
|
@ -501,7 +536,8 @@ analog begin
|
|||
rbi0_t = rbi0*exp(zetarbi*ln_qtt0);
|
||||
re_t = re*exp(zetare*ln_qtt0);
|
||||
eavl_t = eavl*exp(aleav*dT);
|
||||
kavl_t = kavl*exp(alkav*dT);
|
||||
kavl_t = kavl*exp(alkav*dT);
|
||||
|
||||
|
||||
//
|
||||
// Calculation of intrinsic transistor elements
|
||||
|
|
@ -517,42 +553,28 @@ analog begin
|
|||
cjci0_t_ii = cjci0_t*fbc; // zero bias internal portion
|
||||
qjcxi = 0;
|
||||
cjcx0_t_i = cjci0_t*(1-fbc); // zero bias external portion
|
||||
`QJMOD(Vbci,cjcx0_t_i,vdci_t,zci,vptci,ajci_t,qjcx)
|
||||
`HICJQ(Vbci,cjcx0_t_i,vdci_t,zci,vptci,qjcx)
|
||||
end else begin
|
||||
cjci0_t_ii = cjci0_t; // zero bias internal portion
|
||||
cjcx0_t_ii = cjcx0_t*fbc;
|
||||
`QJMOD(Vbici,cjcx0_t_ii,vdcx_t,zcx,vptcx,ajcx_t,qjcxi);
|
||||
`HICJQ(Vbici,cjcx0_t_ii,vdcx_t,zcx,vptcx,qjcxi)
|
||||
cjcx0_t_i = cjcx0_t*(1-fbc); // zero bias external portion
|
||||
`QJMOD(Vbci,cjcx0_t_i,vdcx_t,zcx,vptcx,ajcx_t,qjcx)
|
||||
`HICJQ(Vbci,cjcx0_t_i,vdcx_t,zcx,vptcx,qjcx)
|
||||
end
|
||||
`QJMOD(Vbici,cjci0_t_ii,vdci_t,zci,vptci,ajci_t,qjci)
|
||||
`HICJQ(Vbici,cjci0_t_ii,vdci_t,zci,vptci,qjci)
|
||||
qjcii = qjci+qjcxi;
|
||||
|
||||
//Internal bc cap without punch through for cc
|
||||
|
||||
`QCJMOD(Vbici,cjci0_t_ii,vdci_t,zci,100,ajci_t,qjciii,cjcii)
|
||||
// cjcii = ddx(qjciii,Vbici); //cap needful only here: ddx() not supported
|
||||
//`HICJQ(Vbici,cjci0_t_ii,vdci_t,zci,100,qjciii)
|
||||
`QCMODF(Vbici,cjci0_t_ii,vdci_t,zci,2.4,cjcii)
|
||||
//cjcii = ddx(qjciii,V(bi));
|
||||
|
||||
//Internal be cap and charge
|
||||
|
||||
// Preprocessing
|
||||
vf = vde_t*(1-exp(-ln(aje_t)/ze));
|
||||
|
||||
// Smoothing terms
|
||||
xvf = (vf-Vbiei)/VT;
|
||||
xvf2 = sqrt(xvf*xvf+1.921812);
|
||||
vj = vf-VT*0.5*(xvf+xvf2);
|
||||
dvj = 0.5*(xvf+xvf2)/xvf2;
|
||||
|
||||
// BE cap
|
||||
cjei = cje0_t*exp(-ze*ln(1-vj/vde_t))*dvj+aje_t*cje0_t*(1-dvj);
|
||||
|
||||
// Preprocessing
|
||||
x = 1-ze;
|
||||
y = 1-exp(x*ln(1-vj/vde_t));
|
||||
|
||||
// BE charge
|
||||
qjei = cje0_t*vde_t/x*y+aje_t*cje0_t*(Vbiei-vj);
|
||||
`QJMODF(Vbiei,cje0_t,vde_t,ze,aje_t,qjei)
|
||||
cjei = ddx(qjei,V(bi));
|
||||
cjei_i = cjei; // dw: adms2.2.7 problem
|
||||
|
||||
// Critical current: ick
|
||||
vc = Vciei-vces_t;
|
||||
|
|
@ -590,8 +612,9 @@ analog begin
|
|||
|
||||
// Normalized total hole charge
|
||||
qpt = qj_2+sqrt((qj_2)*(qj_2)+qm);
|
||||
if (qpt<=1e-20)
|
||||
qpt=1e-20;
|
||||
if (qpt<=1e-20) begin
|
||||
qpt=1e-20;
|
||||
end
|
||||
|
||||
// Low transfer current
|
||||
itfl = itfi/qpt;
|
||||
|
|
@ -599,8 +622,9 @@ analog begin
|
|||
|
||||
// Normalized injection width with low transfer current
|
||||
// and normalized charge component
|
||||
if (itfl<=1e-20)
|
||||
if (itfl<=1e-20) begin
|
||||
itfl = 1e-20;
|
||||
end
|
||||
al = 1-ick/itfl;
|
||||
s3l = sqrt(al*al+ahc);
|
||||
wl = (al+s3l)/(1+sqrt(1+ahc));
|
||||
|
|
@ -610,8 +634,9 @@ analog begin
|
|||
facl = 1/(1+d_qfh/qpt);
|
||||
itf = itfl*facl;
|
||||
itr = itrl*facl;
|
||||
if (itf<=1e-20)
|
||||
if (itf<=1e-20) begin
|
||||
itf = 1e-20;
|
||||
end
|
||||
it = itf-itr;
|
||||
|
||||
// BE diffusion charge
|
||||
|
|
@ -653,8 +678,8 @@ analog begin
|
|||
|
||||
// Avalanche current
|
||||
|
||||
v_bord = eavl_t*vdci_t;
|
||||
if (Vbici < 0) begin
|
||||
if (Vbici < 0) begin : HICAVL
|
||||
v_bord = eavl_t*vdci_t;
|
||||
if (vdci_t-Vbici>v_bord) begin
|
||||
a_iavl = kavl_t/vdci_t*exp(-cc);
|
||||
iavl = itf*a_iavl*(v_bord+(1+cc)*(vdci_t-Vbici-v_bord));
|
||||
|
|
@ -671,32 +696,58 @@ analog begin
|
|||
//
|
||||
|
||||
// Base resistance
|
||||
|
||||
qje = qjei/cje0_t;
|
||||
ri = rbi0_t/(1+qje/vr0e+itf/ickf+itr/ickr+qjci/vr0c);
|
||||
if (ibi > 0.0) begin
|
||||
eta = fgeo*ri*ibi/VT;
|
||||
if (eta < 1e-6) begin
|
||||
fac_ri=1-eta/2;
|
||||
end else begin
|
||||
fac_ri=ln(eta+1)/eta;
|
||||
if(rbi0_t > 0.0) begin : HICRBI
|
||||
// Conductivity modulation with hyperbolic smoothing
|
||||
qje = qjei/cje0_t;
|
||||
Qz_nom = 1+qje/vr0e+qjci/vr0c+itf/ickf+itr/ickr;
|
||||
fQz = 0.5*(Qz_nom+sqrt(Qz_nom*Qz_nom+0.01));;
|
||||
rbi = rbi0_t/fQz;
|
||||
// Emitter current crowding
|
||||
if (ibi > 0.0) begin
|
||||
eta = fgeo*rbi*ibi/VT;
|
||||
if (eta < 1e-6) begin
|
||||
rbi = rbi*(1-0.5*eta);
|
||||
end else begin
|
||||
rbi = rbi*ln(eta+1)/eta;
|
||||
end
|
||||
end
|
||||
end else begin
|
||||
fac_ri = 1.0;
|
||||
rbi = 0.0;
|
||||
end
|
||||
rbi = ri*fac_ri;
|
||||
rb = rbi+rbx_t;
|
||||
// Total base resistance
|
||||
rb = rbi+rbx_t;
|
||||
|
||||
// Parasitic substrate transistor transfer current
|
||||
if(itss > 0.0) begin : Sub_Transfer
|
||||
HSUM = msf*VT;
|
||||
HSa = limexp(Vbci/HSUM);
|
||||
HSb = limexp(Vsci/HSUM);
|
||||
HSI_Tsu = itss_t*(HSa-HSb);
|
||||
end else begin
|
||||
HSI_Tsu = 0.0;
|
||||
end
|
||||
|
||||
// Substrate diode and cap and charge
|
||||
|
||||
`HICDIO(iscs,iscs_t,msc,Vsci,ijsc)
|
||||
|
||||
`QJMOD(Vsci,cjs0_t,vds_t,zs,vpts,ajs_t,qjs); // aj=2.4 assumed
|
||||
`HICJQ(Vsci,cjs0_t,vds_t,zs,vpts,qjs)
|
||||
|
||||
// Self heating
|
||||
|
||||
if (rth > 0.0) begin
|
||||
if (flsh == 1 && rth >= `MIN_R) begin
|
||||
pterm = it*Vciei+iavl*(vdci_t-Vbici);
|
||||
end else if (flsh == 2 && rth >= `MIN_R) begin
|
||||
pterm = Vciei*it + (vdci_t-Vbici)*iavl + ijbe*Vbiei + ijbc*Vbici + ijsc*Vsci;
|
||||
if (rb >= `MIN_R) begin
|
||||
pterm = pterm + Vbbi*Vbbi/rb;
|
||||
end
|
||||
if (re_t >= `MIN_R) begin
|
||||
pterm = pterm + Veie*Veie/re_t;
|
||||
end
|
||||
if (rcx_t >= `MIN_R) begin
|
||||
pterm = pterm + Vcic*Vcic/rcx_t;
|
||||
end
|
||||
end
|
||||
|
||||
//
|
||||
|
|
@ -724,59 +775,79 @@ analog begin
|
|||
|
||||
//
|
||||
// Define branch sources
|
||||
//
|
||||
|
||||
I(s,ci) <+ ijsc `P(spectre:gmin="add" spectre:pwl_passive="1e10");
|
||||
I(s,ci) <+ ddt(qjs);
|
||||
I(b,ci) <+ ddt(qjcx);
|
||||
I(b,ci) <+ ddt(Qbci);
|
||||
I(b,e) <+ ddt(Qbe);
|
||||
if (re > 0.0) begin
|
||||
I(iresex) <+ Veie/re_t `P(spectre:gmin="add");
|
||||
//
|
||||
I(br_biei) <+ `Gmin*V(br_biei);
|
||||
I(br_bici) <+ `Gmin*V(br_bici);
|
||||
|
||||
I(br_bs) <+ HSI_Tsu;
|
||||
I(br_sci) <+ ijsc `P(spectre:gmin="add" spectre:pwl_passive="1e10");
|
||||
I(br_sci) <+ ddt(qjs);
|
||||
I(br_bci) <+ ddt(qjcx);
|
||||
I(br_bci) <+ ddt(Qbci);
|
||||
I(br_be) <+ ddt(Qbe);
|
||||
if (re >= `MIN_R) begin
|
||||
I(br_eie_i) <+ Veie/re_t `P(spectre:gmin="add");
|
||||
end else begin
|
||||
V(vresex) <+ 0.0;
|
||||
V(br_eie_v) <+ 0.0;
|
||||
end
|
||||
if (rcx > 0.0) begin
|
||||
I(irescx) <+ Vcic/rcx_t `P(spectre:gmin="add");
|
||||
if (rcx >= `MIN_R) begin
|
||||
I(br_cic_i) <+ Vcic/rcx_t `P(spectre:gmin="add");
|
||||
end else begin
|
||||
V(vrescx) <+ 0.0;
|
||||
V(br_cic_v) <+ 0.0;
|
||||
end
|
||||
if (rbi0 > 0.0 || rbx > 0.0) begin
|
||||
I(irescb) <+ Vbbi/rb `P(spectre:gmin="add");
|
||||
if (rbi0 >= `MIN_R || rbx >= `MIN_R) begin
|
||||
I(br_bbi_i) <+ Vbbi/rb `P(spectre:gmin="add");
|
||||
end else begin
|
||||
V(vrescb) <+ 0.0;
|
||||
V(br_bbi_v) <+ 0.0;
|
||||
end
|
||||
I(bi,ci) <+ Ibici `P(spectre:gmin="add" spectre:pwl_sat_current="IMAX" spectre:pwl_sat_cond="imax/0.025" spectre:pwl_rev_current="imax" spectre:pwl_rev_cond="IMAX/0.025");
|
||||
I(bi,ci) <+ ddt(Qbici);
|
||||
I(bi,ei) <+ ijbe `P(spectre:gmin="add" spectre:pwl_fwd_current="IBEIS*exp(25.0)" spectre:pwl_fwd_node="bi" spectre:pwl_fwd_cond="IBEIS*exp(25.0)/0.025" spectre:pwl_sat_current="IMAX" spectre:pwl_sat_cond="IMAX/0.025" spectre:pwl_passive="1e10");
|
||||
I(bi,ei) <+ ddt(Qbiei);
|
||||
I(ci,ei) <+ it `P(spectre:pwl_fwd_current="IS*exp(25.0)" spectre:pwl_fwd_node="bi" spectre:pwl_fwd_cond="IS*exp(25.0)/0.025" spectre:pwl_rev_current="IMAX" spectre:pwl_rev_cond="IMAX/0.025" spectre:pwl_passive="1e10");
|
||||
I(br_bici) <+ Ibici `P(spectre:gmin="add" spectre:pwl_sat_current="IMAX" spectre:pwl_sat_cond="imax/0.025" spectre:pwl_rev_current="imax" spectre:pwl_rev_cond="IMAX/0.025");
|
||||
I(br_bici) <+ ddt(Qbici);
|
||||
I(br_biei) <+ ijbe `P(spectre:gmin="add" spectre:pwl_fwd_current="IBEIS*exp(25.0)" spectre:pwl_fwd_node="bi" spectre:pwl_fwd_cond="IBEIS*exp(25.0)/0.025" spectre:pwl_sat_current="IMAX" spectre:pwl_sat_cond="IMAX/0.025" spectre:pwl_passive="1e10");
|
||||
I(br_biei) <+ ddt(Qbiei);
|
||||
I(br_ciei) <+ it `P(spectre:pwl_fwd_current="IS*exp(25.0)" spectre:pwl_fwd_node="bi" spectre:pwl_fwd_cond="IS*exp(25.0)/0.025" spectre:pwl_rev_current="IMAX" spectre:pwl_rev_cond="IMAX/0.025" spectre:pwl_passive="1e10");
|
||||
|
||||
if(rth == 0) begin
|
||||
V(tnode) <+ 0.0;
|
||||
// Following code is an intermediate solution:
|
||||
// ******************************************
|
||||
//if(flsh == 0 || rth < `MIN_R) begin
|
||||
// I(br_sht) <+ Vrth/`MIN_R;
|
||||
//end else begin
|
||||
// I(br_sht) <+ Vrth/rth-pterm `P(spectre:gmin="add");
|
||||
// I(br_sht) <+ ddt(cth*Vrth);
|
||||
//end
|
||||
// ******************************************
|
||||
// For simulators having no problem with V(br_sht) <+ 0.0
|
||||
// with external thermal node, follwing code may be used.
|
||||
// This external thermal node should remain accessible.
|
||||
// ********************************************
|
||||
if(flsh == 0 || rth < `MIN_R) begin
|
||||
V(br_sht) <+ 0.0;
|
||||
end else begin
|
||||
I(tnode) <+ Vrth/rth-pterm `P(spectre:gmin="add");
|
||||
I(tnode) <+ ddt(cth*Vrth);
|
||||
I(br_sht) <+ Vrth/rth-pterm `P(spectre:gmin="add");
|
||||
I(br_sht) <+ ddt(cth*Vrth);
|
||||
end
|
||||
|
||||
// ********************************************
|
||||
|
||||
// Noise sources
|
||||
// Thermal noise
|
||||
fourkt = 4.0 * `P_K * Tdev;
|
||||
if(rbx > 0.0 || rbi0 > 0.0)
|
||||
I(irescb) <+ white_noise(fourkt/rb);
|
||||
if(rcx > 0.0)
|
||||
I(irescx) <+ white_noise(fourkt/rcx_t);
|
||||
if(re > 0.0)
|
||||
I(iresex) <+ white_noise(fourkt/re_t);
|
||||
if(rbx >= `MIN_R || rbi0 >= `MIN_R) begin
|
||||
I(br_bbi_i) <+ white_noise(fourkt/rb);
|
||||
end
|
||||
if(rcx >= `MIN_R) begin
|
||||
I(br_cic_i) <+ white_noise(fourkt/rcx_t);
|
||||
end
|
||||
if(re >= `MIN_R) begin
|
||||
I(br_eie_i) <+ white_noise(fourkt/re_t);
|
||||
end
|
||||
|
||||
// Shot noise
|
||||
twoq = 2.0 * `P_Q;
|
||||
I(bi,ei) <+ white_noise(twoq*ijbe);
|
||||
I(ci,ei) <+ white_noise(twoq*it);
|
||||
I(br_biei) <+ white_noise(twoq*ijbe);
|
||||
I(br_ciei) <+ white_noise(twoq*it);
|
||||
|
||||
// Flicker noise
|
||||
flicker_Pwr = kf*pow(ijbe,af);
|
||||
I(bi,ei) <+ flicker_noise(flicker_Pwr,1.0);
|
||||
I(br_biei) <+ flicker_noise(flicker_Pwr,1.0);
|
||||
|
||||
end // analog
|
||||
endmodule
|
||||
|
|
|
|||
|
|
@ -12,256 +12,6 @@ plot abs(i(vc)) abs(i(vb)) abs(i(vs)) ylimit 0.1e-12 100e-3 ylog
|
|||
plot abs(i(vc))/abs(i(vb)) vs abs(-i(vc)) xlog xlimit 1e-09 10e-3 ylimit 0 300
|
||||
.endc
|
||||
|
||||
********************************************************************************
|
||||
********************************************************************************
|
||||
* HICUM Level0 Version 1.1 model cards for testing
|
||||
********************************************************************************
|
||||
********************************************************************************
|
||||
* 1D transistor: Isothermal Simulation and Temperature dependence
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D
|
||||
********************************************************************************
|
||||
* 1D transistor: Electrothermal Simulation to test self-heating
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D_slh c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=1000.0 cth=1.0e-10
|
||||
+ tnom=27.0 dt=0.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D_slh
|
||||
********************************************************************************
|
||||
* 1D transistor: Isothermal Simulation with NQS Effect: future
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D_nqs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D_nqs
|
||||
********************************************************************************
|
||||
* 1D transistor: Isothermal Simulation to test collector current spreading
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D_ccs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D_ccs
|
||||
********************************************************************************
|
||||
* Internal transistor: Isothermal Simulation and Temperature dependence (Tunneling current at peripheral node:future)
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_i_tnp c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_i_tnp
|
||||
********************************************************************************
|
||||
* Internal transistor: Isothermal Simulation and Temperature dependence (Tunneling current at internal node:future)
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_i_tni c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_i_tni
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation and Temperature dependence
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c
|
||||
********************************************************************************
|
||||
* Complete transistor: Electrothermal Simulation to test self-heating
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_slh c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=1000.0 cth=1.0e-10
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_slh
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation with NQS Effect: future
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_nqs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_nqs
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation to test collector current spreading
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_ccs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_ccs
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation with substrate diode
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_sbt c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=1.0e-17 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=3.64e-14 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_sbt
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation with substrate network: future
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_sbn c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=1.0e-17 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=3.64e-14 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_sbn
|
||||
********************************************************************************
|
||||
* Complete test transistor: default
|
||||
********************************************************************************
|
||||
.subckt hicumL0V11_default c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.ends hicumL0V11_default
|
||||
********************************************************************************
|
||||
.include model-card-hicumL0V1p11.lib
|
||||
|
||||
.end
|
||||
|
|
|
|||
|
|
@ -11,256 +11,6 @@ run
|
|||
plot abs(i(vc))
|
||||
.endc
|
||||
|
||||
********************************************************************************
|
||||
********************************************************************************
|
||||
* HICUM Level0 Version 1.1 model cards for testing
|
||||
********************************************************************************
|
||||
********************************************************************************
|
||||
* 1D transistor: Isothermal Simulation and Temperature dependence
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D
|
||||
********************************************************************************
|
||||
* 1D transistor: Electrothermal Simulation to test self-heating
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D_slh c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=1000.0 cth=1.0e-10
|
||||
+ tnom=27.0 dt=0.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D_slh
|
||||
********************************************************************************
|
||||
* 1D transistor: Isothermal Simulation with NQS Effect: future
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D_nqs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D_nqs
|
||||
********************************************************************************
|
||||
* 1D transistor: Isothermal Simulation to test collector current spreading
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_1D_ccs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=0.0 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_1D_ccs
|
||||
********************************************************************************
|
||||
* Internal transistor: Isothermal Simulation and Temperature dependence (Tunneling current at peripheral node:future)
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_i_tnp c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_i_tnp
|
||||
********************************************************************************
|
||||
* Internal transistor: Isothermal Simulation and Temperature dependence (Tunneling current at internal node:future)
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_i_tni c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=0.0 fgeo=0.73 re=0.0 rcx=0.0 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=1.0e-20 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=0.0 cbcpar=0.0 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_i_tni
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation and Temperature dependence
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c
|
||||
********************************************************************************
|
||||
* Complete transistor: Electrothermal Simulation to test self-heating
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_slh c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=1000.0 cth=1.0e-10
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_slh
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation with NQS Effect: future
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_nqs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_nqs
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation to test collector current spreading
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_ccs c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=0.0 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=0.0 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_ccs
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation with substrate diode
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_sbt c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=1.0e-17 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=3.64e-14 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_sbt
|
||||
********************************************************************************
|
||||
* Complete transistor: Isothermal Simulation with substrate network: future
|
||||
********************************************************************************
|
||||
.subckt hicumL0V1p1_c_sbn c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.model hic0_full npn level=7 is=1.3525E-18 vef=8.0 iqf=3.0e-2 iqr=1e6
|
||||
+ iqfh=1e6 tfh=1e-8 ibes=1.16E-20 mbe=1.015 ires=1.16e-16 mre=2.0 ibcs=1.16e-20
|
||||
+ mbc=1.015 mcf=1.0 mcr=1 kavl=0.9488 eavl=11.96e10 alkav=0.825e-4
|
||||
+ aleav=0.196e-3 rbi0=71.76 rbx=8.83 fgeo=0.73 re=12.534 rcx=9.165 iscs=1.0e-17 msc=1.0
|
||||
+ cje0=8.11e-15 vde=0.95 ze=0.5 aje=1.8 cjci0=1.16e-15 vdci=0.8 zci=0.333
|
||||
+ vptci=46 cjcx0=5.4e-15 vdcx=0.7 zcx=0.333 vptcx=100 fbc=0.1526 vr0e=1.6 vr0c=8.0
|
||||
+ cjs0=3.64e-14 vds=0.6 zs=0.447 vpts=100 t0=4.75e-12 dt0h=2.1e-12 tbvl=4.0e-12
|
||||
+ tef0=1.8e-12 gte=1.4 thcs=30.0e-12 ahc=0.75 tr=0.0 rci0=127.8 vlim=0.7
|
||||
+ vces=0.1 vpt=5 cbepar=1.13e-15 cbcpar=2.97e-15 kf=1.43e-8 af=2.0 vgb=1.17
|
||||
+ alt0=0.0 kt0=0.0 zetaci=1.6 alvs=1.0e-3 alces=0.4e-3 zetarbi=0.588
|
||||
+ zetarbx=0.206 zetarcx=0.223 zetare=0.0 vge=1.1386 vgc=1.1143 vgs=1.15 f1vg=-1.02377e-4
|
||||
+ f2vg=4.3215e-4 zetact=3.5 zetabet=4.0 rth=0.0 cth=0.0
|
||||
+ tnom=27.0 npn=1 pnp=0
|
||||
*+ dt=0.0
|
||||
.ends hicumL0V1p1_c_sbn
|
||||
********************************************************************************
|
||||
* Complete test transistor: default
|
||||
********************************************************************************
|
||||
.subckt hicumL0V11_default c b e s
|
||||
qhcm0 c b e s hic0_full
|
||||
.ends hicumL0V11_default
|
||||
********************************************************************************
|
||||
.include model-card-hicumL0V1p11.lib
|
||||
|
||||
.end
|
||||
|
|
|
|||
Loading…
Reference in New Issue