2 changed files with 225 additions and 0 deletions
-
78examples/xspice/see/CMOSComparator/Fig27_12_see.sp
-
147examples/xspice/see/CMOSComparator/cmosedu_models.txt
@ -0,0 +1,78 @@ |
|||
** CMOS comparator *** |
|||
* Figure 27.12 |
|||
* Baker: "CMOS: Circuit Design, Layout, and Simulation", Wiley, 2005 |
|||
|
|||
.param VCC = 5 |
|||
.option scale=1u |
|||
.tran 9.5p 1600n |
|||
|
|||
VDD VDD 0 DC {VCC} |
|||
Vp vp 0 DC 0 PULSE {VCC/2-0.1} {VCC/2+0.1} 30n 1n 1n 350n 700n |
|||
Vctrl ct 0 PULSE {VCC/2-0.2} {VCC/2+0.2} 270n 1n 1n 5n 350n |
|||
vm vm 0 DC {VCC/2} |
|||
|
|||
X1 vbiasn vbiasp vdd bias |
|||
M1 n1 vp vss 0 N_1u L=1 W=10 |
|||
M2 n2 vm vss 0 N_1u L=1 W=10 |
|||
M3a vss vbiasn 0 0 N_1u L=2 W=20 |
|||
M31 n1 n1 vdd vdd P_1u L=1 W=20 |
|||
M41 n2 n2 vdd vdd P_1u L=1 W=20 |
|||
M3 vop n1 vdd vdd P_1u L=1 W=20 |
|||
M4 vom n2 vdd vdd P_1u L=1 W=20 |
|||
M5 vop vop vc 0 N_1u L=1 W=10 |
|||
M6 vop vom vc 0 N_1u L=1 W=10 |
|||
M7 vom vop vc 0 N_1u L=1 W=10 |
|||
M8 vom vom vc 0 N_1u L=1 W=10 |
|||
Mc vc vc 0 0 N_1u L=10 W=10 |
|||
|
|||
M1P vopb vp vpp vdd P_1u L=1 W=20 |
|||
M2P vomb vm vpp vdd P_1u L=1 W=20 |
|||
M3p vpp vbiasp vdd vdd P_1u L=2 W=20 |
|||
M4n vopb vopb 0 0 N_1u L=1 W=10 |
|||
M5n n2 vopb 0 0 N_1u L=1 W=10 |
|||
M6n vomb vomb 0 0 N_1u L=1 W=10 |
|||
M7n n1 vomb 0 0 N_1u L=1 W=10 |
|||
|
|||
M1D vdp vbiasp vdd vdd P_1u L=1 W=20 |
|||
M2D nd1 vom vdp vdd P_1u L=1 W=20 |
|||
M3D vdo vop vdp vdd P_1u L=1 W=20 |
|||
M4D nd1 nd1 0 0 N_1u L=1 W=10 |
|||
M5D vdo nd1 0 0 N_1u L=1 W=10 |
|||
|
|||
MIN out vdo 0 0 N_1u L=1 W=10 |
|||
MIP out vdo vdd vdd P_1u L=1 W=20 |
|||
|
|||
.subckt bias vbiasn vbiasp VDD |
|||
M1 Vbiasn Vbiasn 0 0 N_1u L=2 W=10 |
|||
M2 Vbiasp Vbiasn Vr 0 N_1u L=2 W=40 |
|||
M3 Vbiasn Vbiasp VDD VDD P_1u L=2 W=30 |
|||
M4 Vbiasp Vbiasp VDD VDD P_1u L=2 W=30 |
|||
|
|||
Rbias Vr 0 6.5k |
|||
|
|||
MSU1 Vsur Vbiasn 0 0 N_1u L=2 W=10 |
|||
MSU2 Vsur Vsur VDD VDD P_1u L=100 W=10 |
|||
MSU3 Vbiasp Vsur Vbiasn 0 N_1u L=1 W=10 |
|||
.ends |
|||
|
|||
.include cmosedu_models.txt |
|||
|
|||
|
|||
.param d = 1 |
|||
.param let = 20 |
|||
.param tfall = 500p trise = 100p ; tau in exponent for pulse |
|||
|
|||
aseegen2 ct mon [ %id(vdd vbiasp) %id(vdd vop) %id(vdd vom) %id(vdd vopb) %id(vdd vpp) %id(vdd vomb) %id(vdd vdp) %id(vdd nd1) |
|||
+ %i(vbiasn) %i(x1.vr) %i(x1.vsur) %i(n1) %i(vss) %i(n2) %i(vc) %i(vdo) %i(out) ] seemod2 |
|||
.model seemod2 seegen (tdelay = 25n tperiod=19n tfall='tfall' trise='trise' let='let' cdepth='d' perlim=TRUE ctrlthres= {VCC/2}) |
|||
|
|||
.control |
|||
run |
|||
set xbrushwidth=2 |
|||
plot mon |
|||
plot out vp ct mon*5000+6 |
|||
|
|||
.endc |
|||
|
|||
.end |
|||
|
|||
@ -0,0 +1,147 @@ |
|||
* |
|||
* Long channel models from CMOS Circuit Design, Layout, and Simulation, |
|||
* Level=3 models VDD=5V, see CMOSedu.com |
|||
* |
|||
.MODEL N_1u NMOS LEVEL = 3 |
|||
+ TOX = 200E-10 NSUB = 1E17 GAMMA = 0.5 |
|||
+ PHI = 0.7 VTO = 0.8 DELTA = 3.0 |
|||
+ UO = 650 ETA = 3.0E-6 THETA = 0.1 |
|||
+ KP = 120E-6 VMAX = 1E5 KAPPA = 0.3 |
|||
+ RSH = 0 NFS = 1E12 TPG = 1 |
|||
+ XJ = 500E-9 LD = 100E-9 |
|||
+ CGDO = 200E-12 CGSO = 200E-12 CGBO = 1E-10 |
|||
+ CJ = 400E-6 PB = 1 MJ = 0.5 |
|||
+ CJSW = 300E-12 MJSW = 0.5 |
|||
* |
|||
.MODEL P_1u PMOS LEVEL = 3 |
|||
+ TOX = 200E-10 NSUB = 1E17 GAMMA = 0.6 |
|||
+ PHI = 0.7 VTO = -0.9 DELTA = 0.1 |
|||
+ UO = 250 ETA = 0 THETA = 0.1 |
|||
+ KP = 40E-6 VMAX = 5E4 KAPPA = 1 |
|||
+ RSH = 0 NFS = 1E12 TPG = -1 |
|||
+ XJ = 500E-9 LD = 100E-9 |
|||
+ CGDO = 200E-12 CGSO = 200E-12 CGBO = 1E-10 |
|||
+ CJ = 400E-6 PB = 1 MJ = 0.5 |
|||
+ CJSW = 300E-12 MJSW = 0.5 |
|||
* |
|||
* |
|||
* Short channel models from CMOS Circuit Design, Layout, and Simulation, |
|||
* 50nm BSIM4 models VDD=1V, see CMOSedu.com |
|||
* |
|||
.model N_50n nmos level = 54 |
|||
+binunit = 1 paramchk= 1 mobmod = 0 |
|||
+capmod = 2 igcmod = 1 igbmod = 1 geomod = 0 |
|||
+diomod = 1 rdsmod = 0 rbodymod= 1 rgatemod= 1 |
|||
+permod = 1 acnqsmod= 0 trnqsmod= 0 |
|||
+tnom = 27 toxe = 1.4e-009 toxp = 7e-010 toxm = 1.4e-009 |
|||
+epsrox = 3.9 wint = 5e-009 lint = 1.2e-008 |
|||
+ll = 0 wl = 0 lln = 1 wln = 1 |
|||
+lw = 0 ww = 0 lwn = 1 wwn = 1 |
|||
+lwl = 0 wwl = 0 xpart = 0 toxref = 1.4e-009 |
|||
+vth0 = 0.22 k1 = 0.35 k2 = 0.05 k3 = 0 |
|||
+k3b = 0 w0 = 2.5e-006 dvt0 = 2.8 dvt1 = 0.52 |
|||
+dvt2 = -0.032 dvt0w = 0 dvt1w = 0 dvt2w = 0 |
|||
+dsub = 2 minv = 0.05 voffl = 0 dvtp0 = 1e-007 |
|||
+dvtp1 = 0.05 lpe0 = 5.75e-008 lpeb = 2.3e-010 xj = 2e-008 |
|||
+ngate = 5e+020 ndep = 2.8e+018 nsd = 1e+020 phin = 0 |
|||
+cdsc = 0.0002 cdscb = 0 cdscd = 0 cit = 0 |
|||
+voff = -0.15 nfactor = 1.2 eta0 = 0.15 etab = 0 |
|||
+vfb = -0.55 u0 = 0.032 ua = 1.6e-010 ub = 1.1e-017 |
|||
+uc = -3e-011 vsat = 1.1e+005 a0 = 2 ags = 1e-020 |
|||
+a1 = 0 a2 = 1 b0 = -1e-020 b1 = 0 |
|||
+keta = 0.04 dwg = 0 dwb = 0 pclm = 0.18 |
|||
+pdiblc1 = 0.028 pdiblc2 = 0.022 pdiblcb = -0.005 drout = 0.45 |
|||
+pvag = 1e-020 delta = 0.01 pscbe1 = 8.14e+008 pscbe2 = 1e-007 |
|||
+fprout = 0.2 pdits = 0.2 pditsd = 0.23 pditsl = 2.3e+006 |
|||
+rsh = 3 rdsw = 150 rsw = 150 rdw = 150 |
|||
+rdswmin = 0 rdwmin = 0 rswmin = 0 prwg = 0 |
|||
+prwb = 6.8e-011 wr = 1 alpha0 = 0.074 alpha1 = 0.005 |
|||
+beta0 = 30 agidl = 0.0002 bgidl = 2.1e+009 cgidl = 0.0002 |
|||
+egidl = 0.8 |
|||
+aigbacc = 0.012 bigbacc = 0.0028 cigbacc = 0.002 |
|||
+nigbacc = 1 aigbinv = 0.014 bigbinv = 0.004 cigbinv = 0.004 |
|||
+eigbinv = 1.1 nigbinv = 3 aigc = 0.017 bigc = 0.0028 |
|||
+cigc = 0.002 aigsd = 0.017 bigsd = 0.0028 cigsd = 0.002 |
|||
+nigc = 1 poxedge = 1 pigcd = 1 ntox = 1 |
|||
+xrcrg1 = 12 xrcrg2 = 5 |
|||
+cgso = 6.238e-010 cgdo = 6.238e-010 cgbo = 2.56e-011 cgdl = 2.495e-10 |
|||
+cgsl = 2.495e-10 ckappas = 0.02 ckappad = 0.02 acde = 1 |
|||
+moin = 15 noff = 0.9 voffcv = 0.02 |
|||
+kt1 = -0.21 kt1l = 0.0 kt2 = -0.042 ute = -1.5 |
|||
+ua1 = 1e-009 ub1 = -3.5e-019 uc1 = 0 prt = 0 |
|||
+at = 53000 |
|||
+fnoimod = 1 tnoimod = 0 |
|||
+jss = 0.0001 jsws = 1e-011 jswgs = 1e-010 njs = 1 |
|||
+ijthsfwd= 0.01 ijthsrev= 0.001 bvs = 10 xjbvs = 1 |
|||
+jsd = 0.0001 jswd = 1e-011 jswgd = 1e-010 njd = 1 |
|||
+ijthdfwd= 0.01 ijthdrev= 0.001 bvd = 10 xjbvd = 1 |
|||
+pbs = 1 cjs = 0.0005 mjs = 0.5 pbsws = 1 |
|||
+cjsws = 5e-010 mjsws = 0.33 pbswgs = 1 cjswgs = 5e-010 |
|||
+mjswgs = 0.33 pbd = 1 cjd = 0.0005 mjd = 0.5 |
|||
+pbswd = 1 cjswd = 5e-010 mjswd = 0.33 pbswgd = 1 |
|||
+cjswgd = 5e-010 mjswgd = 0.33 tpb = 0.005 tcj = 0.001 |
|||
+tpbsw = 0.005 tcjsw = 0.001 tpbswg = 0.005 tcjswg = 0.001 |
|||
+xtis = 3 xtid = 3 |
|||
+dmcg = 0e-006 dmci = 0e-006 dmdg = 0e-006 dmcgt = 0e-007 |
|||
+dwj = 0e-008 xgw = 0e-007 xgl = 0e-008 |
|||
+rshg = 0.4 gbmin = 1e-010 rbpb = 5 rbpd = 15 |
|||
+rbps = 15 rbdb = 15 rbsb = 15 ngcon = 1 |
|||
* |
|||
.model P_50n pmos level = 54 |
|||
+binunit = 1 paramchk= 1 mobmod = 0 |
|||
+capmod = 2 igcmod = 1 igbmod = 1 geomod = 0 |
|||
+diomod = 1 rdsmod = 0 rbodymod= 1 rgatemod= 1 |
|||
+permod = 1 acnqsmod= 0 trnqsmod= 0 |
|||
+tnom = 27 toxe = 1.4e-009 toxp = 7e-010 toxm = 1.4e-009 |
|||
+epsrox = 3.9 wint = 5e-009 lint = 1.2e-008 |
|||
+ll = 0 wl = 0 lln = 1 wln = 1 |
|||
+lw = 0 ww = 0 lwn = 1 wwn = 1 |
|||
+lwl = 0 wwl = 0 xpart = 0 toxref = 1.4e-009 |
|||
+vth0 = -0.22 k1 = 0.39 k2 = 0.05 k3 = 0 |
|||
+k3b = 0 w0 = 2.5e-006 dvt0 = 3.9 dvt1 = 0.635 |
|||
+dvt2 = -0.032 dvt0w = 0 dvt1w = 0 dvt2w = 0 |
|||
+dsub = 0.7 minv = 0.05 voffl = 0 dvtp0 = 0.5e-008 |
|||
+dvtp1 = 0.05 lpe0 = 5.75e-008 lpeb = 2.3e-010 xj = 2e-008 |
|||
+ngate = 5e+020 ndep = 2.8e+018 nsd = 1e+020 phin = 0 |
|||
+cdsc = 0.000258 cdscb = 0 cdscd = 6.1e-008 cit = 0 |
|||
+voff = -0.15 nfactor = 2 eta0 = 0.15 etab = 0 |
|||
+vfb = 0.55 u0 = 0.0095 ua = 1.6e-009 ub = 8e-018 |
|||
+uc = 4.6e-013 vsat = 90000 a0 = 1.2 ags = 1e-020 |
|||
+a1 = 0 a2 = 1 b0 = -1e-020 b1 = 0 |
|||
+keta = -0.047 dwg = 0 dwb = 0 pclm = 0.55 |
|||
+pdiblc1 = 0.03 pdiblc2 = 0.0055 pdiblcb = 3.4e-008 drout = 0.56 |
|||
+pvag = 1e-020 delta = 0.014 pscbe1 = 8.14e+008 pscbe2 = 9.58e-007 |
|||
+fprout = 0.2 pdits = 0.2 pditsd = 0.23 pditsl = 2.3e+006 |
|||
+rsh = 3 rdsw = 250 rsw = 160 rdw = 160 |
|||
+rdswmin = 0 rdwmin = 0 rswmin = 0 prwg = 3.22e-008 |
|||
+prwb = 6.8e-011 wr = 1 alpha0 = 0.074 alpha1 = 0.005 |
|||
+beta0 = 30 agidl = 0.0002 bgidl = 2.1e+009 cgidl = 0.0002 |
|||
+egidl = 0.8 |
|||
+aigbacc = 0.012 bigbacc = 0.0028 cigbacc = 0.002 |
|||
+nigbacc = 1 aigbinv = 0.014 bigbinv = 0.004 cigbinv = 0.004 |
|||
+eigbinv = 1.1 nigbinv = 3 aigc = 0.69 bigc = 0.0012 |
|||
+cigc = 0.0008 aigsd = 0.0087 bigsd = 0.0012 cigsd = 0.0008 |
|||
+nigc = 1 poxedge = 1 pigcd = 1 ntox = 1 |
|||
+xrcrg1 = 12 xrcrg2 = 5 |
|||
+cgso = 7.43e-010 cgdo = 7.43e-010 cgbo = 2.56e-011 cgdl = 1e-014 |
|||
+cgsl = 1e-014 ckappas = 0.5 ckappad = 0.5 acde = 1 |
|||
+moin = 15 noff = 0.9 voffcv = 0.02 |
|||
+kt1 = -0.19 kt1l = 0 kt2 = -0.052 ute = -1.5 |
|||
+ua1 = -1e-009 ub1 = 2e-018 uc1 = 0 prt = 0 |
|||
+at = 33000 |
|||
+fnoimod = 1 tnoimod = 0 |
|||
+jss = 0.0001 jsws = 1e-011 jswgs = 1e-010 njs = 1 |
|||
+ijthsfwd= 0.01 ijthsrev= 0.001 bvs = 10 xjbvs = 1 |
|||
+jsd = 0.0001 jswd = 1e-011 jswgd = 1e-010 njd = 1 |
|||
+ijthdfwd= 0.01 ijthdrev= 0.001 bvd = 10 xjbvd = 1 |
|||
+pbs = 1 cjs = 0.0005 mjs = 0.5 pbsws = 1 |
|||
+cjsws = 5e-010 mjsws = 0.33 pbswgs = 1 cjswgs = 5e-010 |
|||
+mjswgs = 0.33 pbd = 1 cjd = 0.0005 mjd = 0.5 |
|||
+pbswd = 1 cjswd = 5e-010 mjswd = 0.33 pbswgd = 1 |
|||
+cjswgd = 5e-010 mjswgd = 0.33 tpb = 0.005 tcj = 0.001 |
|||
+tpbsw = 0.005 tcjsw = 0.001 tpbswg = 0.005 tcjswg = 0.001 |
|||
+xtis = 3 xtid = 3 |
|||
+dmcg = 0e-006 dmci = 0e-006 dmdg = 0e-006 dmcgt = 0e-007 |
|||
+dwj = 0e-008 xgw = 0e-007 xgl = 0e-008 |
|||
+rshg = 0.4 gbmin = 1e-010 rbpb = 5 rbpd = 15 |
|||
+rbps = 15 rbdb = 15 rbsb = 15 ngcon = 1 |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue