some useful examples to show hicum2 capabilities
This commit is contained in:
parent
ba1c2de06e
commit
dbd99a33a5
|
|
@ -0,0 +1,42 @@
|
||||||
|
HICUM2v2.34 Test ft=f(Ic) Vce=1V
|
||||||
|
|
||||||
|
vce 1 0 dc 1.0
|
||||||
|
vgain 1 c dc 0.0
|
||||||
|
f 0 2 vgain -2
|
||||||
|
l 2 b 1g
|
||||||
|
c 2 0 1g
|
||||||
|
ib 0 b dc 0.0 ac 1.0
|
||||||
|
ic 0 c 0.001
|
||||||
|
Q1 C B 0 hicumL2V2p3x
|
||||||
|
|
||||||
|
.control
|
||||||
|
let run = 0
|
||||||
|
let ft_runs = 9
|
||||||
|
set curplot=new $ create a new plot
|
||||||
|
set curplotname=ft_plot
|
||||||
|
set curplottitle="HICUM2v2.34 ft = f(Ic)"
|
||||||
|
set scratch=$curplot $ store its name to 'scratch'
|
||||||
|
setplot $scratch $ make 'scratch' the active plot
|
||||||
|
let ft=unitvec(ft_runs) $ create a vector in plot 'scratch' to store ft data
|
||||||
|
let ic=unitvec(ft_runs) $ create a vector in plot 'scratch' to store ic data
|
||||||
|
foreach myic 1e-03 3e-03 6e-03 9e-03 14e-03 21e-03 27e-03 33e-3 40e-03
|
||||||
|
alter ic = $myic
|
||||||
|
op
|
||||||
|
print all
|
||||||
|
ac dec 100 1Meg 800g
|
||||||
|
meas ac freq_at when vdb(vgain#branch)=0
|
||||||
|
set run ="$&run" $ create a variable from the vector
|
||||||
|
set dt = $curplot $ store the current plot to dt
|
||||||
|
setplot $scratch $ make 'scratch' the active plot
|
||||||
|
let ic[run] = $myic $ store ic to vector ft in plot 'scratch'
|
||||||
|
let ft[run] = {$dt}.freq_at $ store ft to vector ft in plot 'scratch'
|
||||||
|
setplot $dt $ go back to the previous plot
|
||||||
|
let run = run + 1
|
||||||
|
end
|
||||||
|
setplot unknown1
|
||||||
|
plot ft vs ic xlog
|
||||||
|
.endc
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
HICUM2v2.34 AC gain Test h21 = f(Ic) Vce=1V
|
||||||
|
|
||||||
|
vce 1 0 dc 1.0
|
||||||
|
vgain 1 c dc 0.0
|
||||||
|
f 0 2 vgain -2
|
||||||
|
l 2 b 1g
|
||||||
|
c 2 0 1g
|
||||||
|
ib 0 b dc 0.0 ac 1.0
|
||||||
|
ic 0 c 0.001
|
||||||
|
Q1 C B 0 hicumL2V2p3x
|
||||||
|
|
||||||
|
.control
|
||||||
|
foreach myic 2e-03 4e-03 7e-03 9e-03 18e-03 33e-3
|
||||||
|
alter ic = $myic
|
||||||
|
op
|
||||||
|
print all
|
||||||
|
ac dec 10 1Meg 800g
|
||||||
|
end
|
||||||
|
plot abs(ac1.vgain#branch) abs(ac2.vgain#branch) abs(ac3.vgain#branch) abs(ac4.vgain#branch) abs(ac5.vgain#branch) abs(ac6.vgain#branch) ylimit 0.1 300 loglog
|
||||||
|
.endc
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
HICUM2v2.34 Gummel Test Ic,b,s=f(Vc,Ib) Vce=1V
|
||||||
|
|
||||||
|
VB B 0 1.2
|
||||||
|
VC C 0 1.0
|
||||||
|
VS S 0 0.0
|
||||||
|
|
||||||
|
Q1 C B 0 S hicumL2V2p3x
|
||||||
|
|
||||||
|
.control
|
||||||
|
option gmin=1e-14
|
||||||
|
dc vb 0.2 1.2 0.01
|
||||||
|
*plot i(vc) i(vb) i(vs)
|
||||||
|
*gnuplot fgum i(vc) i(vb) i(vs) xlimit 0.2 1.2 ylog ylimit 1e-12 0.1
|
||||||
|
plot abs(i(vc)) abs(i(vb)) abs(i(vs)) xlimit 0.2 1.2 ylog ylimit 1e-14 0.1
|
||||||
|
plot abs(i(vc))/abs(i(vb)) vs abs(i(vc)) xlog xlimit 1e-09 100e-3; ylimit 0 500
|
||||||
|
.endc
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
HICUM2v2.34 Gummel Test invers Ie,b,s=f(Ve,Ib) Vec=1V
|
||||||
|
|
||||||
|
VB B 0 1.2
|
||||||
|
VE E 0 1.0
|
||||||
|
VS S 0 0.0
|
||||||
|
|
||||||
|
Q1 0 B E S hicumL2V2p3x
|
||||||
|
|
||||||
|
.control
|
||||||
|
dc vb 0.2 1.2 0.01
|
||||||
|
*plot i(ve) i(vb) i(vs)
|
||||||
|
plot abs(i(ve)) abs(i(vb)) abs(i(vs)) xlimit 0.2 1.2 ylog ylimit 1e-12 0.1
|
||||||
|
plot abs(i(ve))/abs(i(vb)) vs abs(i(ve)) xlog xlimit 1e-06 100e-3 ylimit 0 50
|
||||||
|
.endc
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
HICUM2v2.34 Noise Test
|
||||||
|
|
||||||
|
vcc 4 0 26
|
||||||
|
vin 1 0 ac 1
|
||||||
|
|
||||||
|
ccouple 1 b 1
|
||||||
|
|
||||||
|
ibias 0 b 100uA
|
||||||
|
|
||||||
|
rload 4 c 1k noisy=0
|
||||||
|
|
||||||
|
q1 c b 0 0 hicumL2V2p3x
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.control
|
||||||
|
op
|
||||||
|
print all
|
||||||
|
echo
|
||||||
|
noise v(c) vin dec 10 10 10G 1
|
||||||
|
setplot
|
||||||
|
setplot noise1
|
||||||
|
plot ally
|
||||||
|
plot 300*inoise_spectrum onoise_spectrum
|
||||||
|
setplot noise2
|
||||||
|
print all
|
||||||
|
echo
|
||||||
|
print inoise_total onoise_total
|
||||||
|
.endc
|
||||||
|
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,65 @@
|
||||||
|
HICUM2v2.34 Noise Current Test
|
||||||
|
|
||||||
|
* _______
|
||||||
|
* _|_ _|_
|
||||||
|
* /// / _ \
|
||||||
|
* \/ \/ I1
|
||||||
|
* /\_/\
|
||||||
|
* R1 \___/
|
||||||
|
* _/\ __|
|
||||||
|
* | \/ _|
|
||||||
|
* |____|'
|
||||||
|
* B |`->
|
||||||
|
* _|_ E
|
||||||
|
* /VIN\
|
||||||
|
* \___/
|
||||||
|
* _|_
|
||||||
|
* ///
|
||||||
|
*
|
||||||
|
*
|
||||||
|
|
||||||
|
vin E 0 DC 0.0 ac 1.0u
|
||||||
|
I1 0 C 1uA
|
||||||
|
R1 C B 1000k noisy=0
|
||||||
|
q1 C B E hicumL2V2p3x
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.control
|
||||||
|
setplot new
|
||||||
|
|
||||||
|
let V1u = 0*vector(81)
|
||||||
|
let V10u = 0*vector(81)
|
||||||
|
let V100u = 0*vector(81)
|
||||||
|
let V1000u = 0*vector(81)
|
||||||
|
|
||||||
|
op
|
||||||
|
noise v(C) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V1u = sqrt(v(onoise_spectrum))*1u
|
||||||
|
|
||||||
|
alter I1 dc = 10u
|
||||||
|
op
|
||||||
|
noise v(C) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V10u = sqrt(v(onoise_spectrum))*1u
|
||||||
|
|
||||||
|
alter I1 dc = 100u
|
||||||
|
op
|
||||||
|
noise v(C) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V100u = sqrt(v(onoise_spectrum))*1u
|
||||||
|
|
||||||
|
alter I1 dc = 1000u
|
||||||
|
op
|
||||||
|
noise v(C) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V1000u = sqrt(v(onoise_spectrum))*1u
|
||||||
|
|
||||||
|
|
||||||
|
set pensize = 2
|
||||||
|
plot unknown1.V1u unknown1.V10u unknown1.V100u unknown1.V1000u vs frequency loglog title LM394NoiseCurrent
|
||||||
|
|
||||||
|
echo " ... done."
|
||||||
|
.endcontrol
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,65 @@
|
||||||
|
HICUM2v2.34 Noise Voltage Test
|
||||||
|
|
||||||
|
* _______
|
||||||
|
* _|_ _|_
|
||||||
|
* /// / _ \
|
||||||
|
* \/ \/ I1
|
||||||
|
* /\_/\
|
||||||
|
* \___/
|
||||||
|
* _______|
|
||||||
|
* | _|
|
||||||
|
* |____|'
|
||||||
|
* B |`->
|
||||||
|
* _|_ E
|
||||||
|
* /VIN\
|
||||||
|
* \___/
|
||||||
|
* _|_
|
||||||
|
* ///
|
||||||
|
*
|
||||||
|
*
|
||||||
|
|
||||||
|
vin E 0 DC 0.0 ac 1.0u
|
||||||
|
I1 0 B 1uA
|
||||||
|
q1 B B E hicumL2V2p3x
|
||||||
|
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.control
|
||||||
|
setplot new
|
||||||
|
|
||||||
|
let V1u = 0*vector(81)
|
||||||
|
let V10u = 0*vector(81)
|
||||||
|
let V100u = 0*vector(81)
|
||||||
|
let V1000u = 0*vector(81)
|
||||||
|
|
||||||
|
op
|
||||||
|
noise v(B) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V1u = sqrt(v(onoise_spectrum))
|
||||||
|
|
||||||
|
alter I1 dc = 10u
|
||||||
|
op
|
||||||
|
noise v(B) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V10u = sqrt(v(onoise_spectrum))
|
||||||
|
|
||||||
|
alter I1 dc = 100u
|
||||||
|
op
|
||||||
|
noise v(B) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V100u = sqrt(v(onoise_spectrum))
|
||||||
|
|
||||||
|
alter I1 dc = 1000u
|
||||||
|
op
|
||||||
|
noise v(B) vin dec 10 1 100Meg 1
|
||||||
|
destroy
|
||||||
|
let unknown1.V1000u = sqrt(v(onoise_spectrum))
|
||||||
|
|
||||||
|
|
||||||
|
set pensize = 2
|
||||||
|
plot unknown1.V1u unknown1.V10u unknown1.V100u unknown1.V1000u vs frequency loglog title HICUM_NoiseVoltage
|
||||||
|
|
||||||
|
echo " ... done."
|
||||||
|
.endcontrol
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
HICUM2v2.34 Output Test Ic=f(Vc,Ib)
|
||||||
|
|
||||||
|
IB 0 B 1u
|
||||||
|
VC C 0 1.8
|
||||||
|
VS S 0 0.0
|
||||||
|
|
||||||
|
Q1 C B 0 S tj hicumL2V2p3x
|
||||||
|
|
||||||
|
.control
|
||||||
|
dc vc 0.0 1.8 0.01 ib 10u 100u 10u
|
||||||
|
plot -i(vc)
|
||||||
|
reset
|
||||||
|
altermod @hicumL2V2p3x[flsh]=1
|
||||||
|
dc vc 0.0 1.8 0.01 ib 1u 10u 1u
|
||||||
|
plot -i(vc)
|
||||||
|
plot v(tj)
|
||||||
|
.endc
|
||||||
|
|
||||||
|
.include model-card-examples.lib
|
||||||
|
|
||||||
|
.end
|
||||||
|
|
@ -0,0 +1,172 @@
|
||||||
|
* Example parameter test set
|
||||||
|
.model hicumL2V2p3x npn level=8
|
||||||
|
*
|
||||||
|
*Transfer current
|
||||||
|
+ c10 = 9.074e-030
|
||||||
|
+ qp0 = 1.008e-013
|
||||||
|
+ ich = 0
|
||||||
|
+ hf0 = 40
|
||||||
|
+ hfe = 10.01
|
||||||
|
+ hfc = 20.04
|
||||||
|
+ hjei = 3.382
|
||||||
|
+ hjci = 0.2
|
||||||
|
+ ahjei = 3
|
||||||
|
+ rhjei = 2
|
||||||
|
*
|
||||||
|
*Base-Emitter diode currents
|
||||||
|
+ ibeis = 1.328e-019
|
||||||
|
+ mbei = 1.027
|
||||||
|
*+ ireis = 1.5e-014
|
||||||
|
+ ireis = 1.5e-015
|
||||||
|
+ mrei = 2
|
||||||
|
+ ibeps = 1.26e-019
|
||||||
|
+ mbep = 1.042
|
||||||
|
*+ ireps = 1.8e-014
|
||||||
|
+ ireps = 1.8e-015
|
||||||
|
+ mrep = 1.8
|
||||||
|
+ mcf = 1
|
||||||
|
*
|
||||||
|
*Transit time for excess recombination current at b-c barrier
|
||||||
|
+ tbhrec = 1e-010
|
||||||
|
*
|
||||||
|
*Base-Collector diode currents
|
||||||
|
+ ibcis = 4.603e-017
|
||||||
|
+ mbci = 1.15
|
||||||
|
+ ibcxs = 0
|
||||||
|
+ mbcx = 1
|
||||||
|
*
|
||||||
|
*Base-Emitter tunneling current
|
||||||
|
+ ibets = 0.02035
|
||||||
|
+ abet = 24
|
||||||
|
+ tunode = 1
|
||||||
|
*
|
||||||
|
*Base-Collector avalanche current
|
||||||
|
+ favl = 18.96
|
||||||
|
+ qavl = 5.092e-014
|
||||||
|
+ alfav = -0.0024
|
||||||
|
+ alqav = -0.0006284
|
||||||
|
*
|
||||||
|
*Series resistances
|
||||||
|
+ rbi0 = 4.444
|
||||||
|
+ rbx = 2.568
|
||||||
|
+ fgeo = 0.7409
|
||||||
|
+ fdqr0 = 0
|
||||||
|
+ fcrbi = 0
|
||||||
|
+ fqi = 1
|
||||||
|
+ re = 1.511
|
||||||
|
+ rcx = 2.483
|
||||||
|
*
|
||||||
|
*Substrate transistor
|
||||||
|
*+ itss = 1.143e-019
|
||||||
|
+ itss = 1.143e-017
|
||||||
|
+ msf = 1.056
|
||||||
|
+ iscs = 4.60106e-015
|
||||||
|
+ msc = 1.018
|
||||||
|
+ tsf = 0
|
||||||
|
*
|
||||||
|
*Intra-device substrate coupling
|
||||||
|
+ rsu = 500
|
||||||
|
+ csu = 6.4e-014
|
||||||
|
*
|
||||||
|
*Depletion Capacitances
|
||||||
|
+ cjei0 = 8.869e-015
|
||||||
|
+ vdei = 0.714
|
||||||
|
+ zei = 0.2489
|
||||||
|
+ ajei = 1.65
|
||||||
|
+ cjep0 = 2.178e-015
|
||||||
|
+ vdep = 0.8501
|
||||||
|
+ zep = 0.2632
|
||||||
|
+ ajep = 1.6
|
||||||
|
+ cjci0 = 3.58e-015
|
||||||
|
+ vdci = 0.8201
|
||||||
|
+ zci = 0.2857
|
||||||
|
+ vptci = 1.79
|
||||||
|
+ cjcx0 = 6.299e-015
|
||||||
|
+ vdcx = 0.8201
|
||||||
|
+ zcx = 0.2863
|
||||||
|
+ vptcx = 1.977
|
||||||
|
+ fbcpar = 0.3
|
||||||
|
+ fbepar = 1
|
||||||
|
+ cjs0 = 2.6e-014
|
||||||
|
+ vds = 0.9997
|
||||||
|
+ zs = 0.4295
|
||||||
|
+ vpts = 100
|
||||||
|
+ cscp0 = 1.4e-014
|
||||||
|
+ vdsp = 0
|
||||||
|
+ zsp = 0.35
|
||||||
|
+ vptsp = 4
|
||||||
|
*
|
||||||
|
*Diffusion Capacitances
|
||||||
|
+ t0 = 2.089e-013
|
||||||
|
+ dt0h = 8e-014
|
||||||
|
+ tbvl = 8.25e-014
|
||||||
|
+ tef0 = 3.271e-013
|
||||||
|
+ gtfe = 3.548
|
||||||
|
+ thcs = 5.001e-012
|
||||||
|
+ ahc = 0.05
|
||||||
|
+ fthc = 0.7
|
||||||
|
+ rci0 = 9.523
|
||||||
|
+ vlim = 0.6999
|
||||||
|
+ vces = 0.01
|
||||||
|
+ vpt = 2
|
||||||
|
+ delck = 2
|
||||||
|
+ tr = 0
|
||||||
|
+ acbar = 1.5
|
||||||
|
+ icbar = 0.01
|
||||||
|
+ vcbar = 0.04
|
||||||
|
*
|
||||||
|
*Isolation Capacitances
|
||||||
|
+ cbepar = 2.609e-014
|
||||||
|
+ cbcpar = 1.64512e-014
|
||||||
|
*
|
||||||
|
*Non-quasi-static Effect
|
||||||
|
+ flnqs = 0
|
||||||
|
+ alqf = 0.166667
|
||||||
|
+ alit = 0.333333
|
||||||
|
*
|
||||||
|
*Noise
|
||||||
|
+ kf = .3e-16
|
||||||
|
+ af = .75
|
||||||
|
+ cfbe = -1
|
||||||
|
+ flcono = 0
|
||||||
|
*
|
||||||
|
*Lateral Geometry Scaling (at high current densities)
|
||||||
|
+ latb = 0
|
||||||
|
+ latl = 0
|
||||||
|
*
|
||||||
|
*Temperature dependence
|
||||||
|
+ vgb = 0.91
|
||||||
|
+ alt0 = 0.004
|
||||||
|
+ kt0 = 6.588e-005
|
||||||
|
+ zetaci = 0.58
|
||||||
|
+ alvs = 0.001
|
||||||
|
+ alces = -0.2286
|
||||||
|
+ zetarbi = 0.3002
|
||||||
|
+ zetarbx = 0.06011
|
||||||
|
+ zetarcx = -0.02768
|
||||||
|
+ zetare = -0.9605
|
||||||
|
+ zetacx = 0
|
||||||
|
+ vge = 1.17
|
||||||
|
+ vgc = 1.17
|
||||||
|
+ vgs = 1.049
|
||||||
|
+ f1vg = -0.000102377
|
||||||
|
+ f2vg = 0.00043215
|
||||||
|
+ zetact = 5
|
||||||
|
+ zetabet = 4.892
|
||||||
|
+ alb = 0
|
||||||
|
+ zetahjei = -0.5
|
||||||
|
+ zetavgbe = 0.7
|
||||||
|
*
|
||||||
|
*Self-Heating
|
||||||
|
+ flsh = 0
|
||||||
|
+ rth = 1113.4
|
||||||
|
+ cth = 6.841e-012
|
||||||
|
+ zetarth = 0
|
||||||
|
+ alrth = 0.002
|
||||||
|
*
|
||||||
|
*Compatibility with V2.1
|
||||||
|
+ flcomp = 2.3
|
||||||
|
*
|
||||||
|
*Circuit simulator specific parameters
|
||||||
|
+ tnom = 26.85
|
||||||
|
*+ dt = 0
|
||||||
Loading…
Reference in New Issue