-- File: [Cherry]<Thyme>Spice>Mosfet.thy
-- Last edited:
-- SChen, 8-Feb-84 20:21:51
MosFet: circuit[drain, gate, source, bulk|
-- <Note>
-- The order of the above four nodes, and the units for the following
-- parameters are the same as those used for Spice
L← 7.5u, -- (meter) mask value of channel Length
W← 50u, -- (meter) mask value of channel width
Ld← 0.2u, -- (meter) lateral diffusion
BB← 0, -- (meter) bird's beak effect
MFW← -0.3U, -- (meter) mask fringing width
MFL← 0.3U, -- (meter) mask fringing length
Dln← 15u, -- (meter) diffusion length (source/drain extension)
Xj← 0.27u, -- (meter) metallurgical junction depth
Js← 6.7E-5, -- (A/m↑2) bulk junction saturation current per sq-meter of junction area
Kp← 5E-5, -- (A/V↑2) transconductance parameter
Vto← 0.6, -- (V) zero bias threshold voltage
Phi← 0.681, -- (V) surface potential (2PhiF)
Pb← 0.81, -- (V) bulk junction potential
Ucrit← 5E4, -- (V/cm) critical field for mobility degradation
Gamma← 0.6, -- (V↑0.5) bulk threshold parameter
Lambda← 0.044, -- (1/V) channel length modulation
Uo← 556, -- (cm↑2/V-s) surface mobility
Vmax← 5E4, -- (m/s) maximum drift velocity of carriers
Nfs← 3E11, -- (1/cm↑2) fast surface state density
Nsub← 3E16, -- (1/cm↑3) substrate doping
Tox← 320E-10, -- (meter) oxide thickness
Cgso← 2.85E-10, -- (F/m) gate-source overlap capacitance per meter channel width
Cgdo← 2.85E-10, -- (F/m) gate-drain overlap capacitance per meter channel width
Cgbo← 1.51E-10, -- (F/m) gate-bulk overlap capacitance per meter channel length
Cj← 3.3E-4, -- (F/m↑2) zero bias bulk junction bottom cap. per sq-meter of junction area
Mj← 0.643, -- () bulk junction bottom grading coef.
Cjsw← 3.15E-10, -- (F/m) zero bias bulk junction sidewall cap. per meter of junction perimeter
Mjsw← 0.181, -- () bulk junction sidewall grading coef.
M← 0.1, -- off gate capacitance multiplier
Uexp← 0.23, -- () critical field exponent in mobility degradation
Neff← 1, -- () total channel charge (fixed and mobile) coefficient
Fc← 0.5, -- () coefficient for forward bias depletion cap. formula
Delta← 0.6, -- () width effect on threshold voltage
TDegC← 27, -- temparature (degree C)
TypeOfChannel← 1, -- channel type (1: n channel, -1: p channel)
Tpg← 1 -- type of gate material,
-- 1: opp. to subs; -1: same as subs; 0: Al gate.
]
asserts[Ld >= 0, Dln > 0, Xj > 0, Js >= 0, Kp > 0, Vto >= 0, Phi > 0,
Pb > 0, Ucrit > 0, Gamma > 0, Lambda < 0.2, Uo > 0, Vmax >= 0,
Nfs >= 0, Nsub > 1.45E10, Tox > 0, Cgso >= 0, Cgdo >= 0, Cgbo >= 0,
Cj > 0, Mj >= 0, Cjsw >= 0, Mjsw >= 0, M >= 0, M < 0.4,
Uexp >= 0, Neff > 0, Fc <= 0.95, Delta >= 0, TDegC >= -50
]= {
Mos0: circuit[| T2DegK, As, Ad, Ps, Pd, Leff, Weff,
Cox, xNsub, Vbi, Eg, Vt, Arg, FcPb, F2, F3, TypeChcek, TpgCheck
]
asserts[As > 0, Ad > 0, Ps > 0, Pd > 0, Leff > 0, Weff > 0,
TypeChcek=0, TpgCheck=0]= {
Mos1: circuit[| T2Over300, PbFactor, Eg2, Vt2, Xd, Cgb, F1]= {
Mos2: circuit[| TRatioTo23rds, Js2, Arg2, Pbo]= {
Mos3: circuit[| PbFactor2, GmaOld]= {
Mos4: circuit[| Phi2, Pb2, GmaNew, CoeCjOld, CoeCjswOld]= {
Mos5: circuit[| CoeCjNew, CoeCjswNew, PbRatio]= {
Mos6: circuit[| Cj2, Cjsw2, FcPb2]= {
Mos7: circuit[| CbsBot, CbdBot, CbsSide, CbdSide]= {
mosModel: model← SpiceLevel2[drain, gate, source, bulk|
Leff, -- l (m)
Weff, -- w (m)
Xd, -- xd (m)
Xj, -- xj (m)
Js2*As, -- Issat (A)
Js2*Ad, -- Idsat (A)
Kp/TRatioTo23rds*Weff/Leff, -- beta (A/V↑2)
Phi2, -- phi (V)
Pb2, -- phiB (V)
Ucrit*1E2*11.7/3.9*Tox, -- vbp (V)
TypeOfChannel*Vbi+(Phi2-Phi)/2+(Eg-Eg2)/2), -- vbi (V)
Gamma, -- gamma (V↑0.5)
Lambda, -- lambda (1/V)
8.61707E-5*T2DegK, -- vt (eV)
Uo*1E-4/TRatioTo23rds, -- uo (m↑2/V-s)
Vmax, -- vmax (m/s)
1.60218E-19*Nfs*1E4, -- QNfs (C/m↑2)
xNsub, -- nsub (1/m↑3)
Uexp, -- uexp ()
Neff, -- neff ()
1+F1, -- eta ()
F1, -- factor ()
Cox, -- Cox (F/m↑2)
Cgso*Weff, -- CovGS (F)
Cgdo*Weff, -- CovDS (F)
Cgb*M, -- CgbM (F)
Cgb*2.0/3.0, -- Cgb23rds (F)
CbsBot, -- CbsBottom (F)
CbdBot, -- CbdBottom (F)
CbsSide, -- CbsSW (F)
CbdSide, -- CbdSW (F)
F3*(CbsBot+CbsSide)/F2, -- CbsFwd1 (F)
(CbsBot*Mj+CbsSide*Mjsw)/F2/Pb2, -- CbsFwd2 (1/V)
F3*(CbdBot+CbdSide)/F2, -- CbdFwd1 (F)
(CbdBot*Mj+CbdSide*Mjsw)/F2/Pb2, -- CbdFwd2 (1/V)
FcPb2, -- FcByPb (V)
TypeOfChannel, -- sign ()
];
i: current[drain, source] ← mosModel[0];
cgb: capacitor[gate, bulk] ← mosModel[1];
cgs: capacitor[gate, source] ← mosModel[2];
cgd: capacitor[gate, drain] ← mosModel[3];
cbs: capacitor[bulk, source] ← mosModel[4];
cbd: capacitor[bulk, drain] ← mosModel[5];
jbs: current[bulk, source] ← mosModel[6];
jbd: current[bulk, drain] ← mosModel[7]
};
mos7: Mos7[|
CbsBot← Cj2*As, -- (F)
CbdBot← Cj2*Ad, -- (F)
CbsSide← Cjsw2*Ps, -- (F)
CbdSide← Cjsw2*Pd -- (F)
]
};
mos6: Mos6[|
FcPb2← FcPb*PbRatio, -- (V)
Cj2← Cj/CoeCjOld*CoeCjNew, -- (F/m↑2)
Cjsw2← Cjsw/CoeCjswOld*CoeCjswNew -- (F/m↑2)
]
};
mos5: Mos5[|
PbRatio← Pb2/Pb, -- ()
CoeCjNew← 1+Mj*(4E-4*(T2DegK-300)-GmaNew), -- ()
CoeCjswNew← 1+Mjsw*(4E-4*(T2DegK-300)-GmaNew) -- ()
]
};
mos4: Mos4[|
Phi2← T2Over300*(Phi-PbFactor)+PbFactor2, -- (V)
Pb2← T2Over300*Pbo+PbFactor2, (V)
GmaNew← T2Over300+PbFactor2/Pbo-1, -- ()
CoeCjOld← 1-Mj*GmaOld, -- ()
CoeCjswOld← 1-Mjsw*GmaOld -- ()
]
};
mos3: Mos3[|
PbFactor2← -2*Vt2*(1.5*\T2Over300 + Arg2), -- (V)
GmaOld← Pb/Pbo-1 -- ()
]
};
mos2: Mos2[|
TRatioTo23rds← T2Over300*/T2Over300, -- ()
Js2← Js*↑(Eg/Vt-Eg2/Vt2), -- (A/m↑2)
Arg2← 1.1150877/(2*0.0259)-Eg2/(2*8.61707E-5*T2DegK), -- ()
Pbo← Pb-PbFactor -- (V)
]
};
mos1: Mos1[|
T2Over300← T2DegK/300.0, -- T/300 ()
Xd← /(2*11.7*8.854215E-12/1.60218E-19/xNsub), -- (m)
PbFactor← -2*Vt*Arg, -- (V)
Eg2← (1.16 - (7.02E-4*T2DegK*T2DegK)/(T2DegK+1108.0)), -- (eV),
Vt2← 1.38066E-23*T2DegK/1.60218E-19, -- kT/q (V),
Cgb← Cgbo*Leff, -- (F)
F1← Delta*6.2832*11.7/3.9*Tox/Weff/8 -- ()
]
};
mos0: Mos0[|
T2DegK← TDegC+273.16, -- (K)
As← W*Dln, -- (m↑2)
Ad← W*Dln, -- (m↑2)
Ps← W+2*Dln, -- (m)
Pd← W+2*Dln, -- (m)
Leff← L - 2*Ld + 2*MFL, -- (m)
Weff← W - 2*BB + 2*MFW, -- (m)
Cox← 3.9*8.854215E-12/Tox, -- (F/m↑2)
xNsub← Nsub*1.0E6, -- (1/m↑3)
Vbi← Vto-TypeOfChannel*Gamma*/Phi, -- (V)
Eg← 1.12, -- Eg @300K (eV)
Vt← 0.0259, -- Vt @300K (V)
Arg← (1.1150877-1.12)/(2*0.0259), -- ()
FcPb← Fc*Pb, -- (V)
F2← ↑(1.5*\(1-Fc)), -- ()
F3← 1-1.5*Fc, -- ()
TypeChcek← TypeOfChannel*TypeOfChannel-1, -- ()
TpgCheck← Tpg*(Tpg*Tpg-1) -- ()
]
};