| v {xschem version=2.9.9 file_version=1.2 } |
| G {} |
| K {} |
| V {} |
| S {} |
| E {} |
| T {NMOS Characterization |
| } 20 -260 0 0 0.4 0.4 {} |
| N 90 -100 90 -90 { lab=vg} |
| N 90 -100 130 -100 { lab=vg} |
| N 170 -150 170 -130 { lab=vd} |
| N 170 -150 260 -150 { lab=vd} |
| N 260 -150 260 -130 { lab=vd} |
| N 80 -140 90 -140 { lab=vg} |
| N 70 -140 80 -140 { lab=vg} |
| N 60 -140 70 -140 { lab=vg} |
| N 60 -140 60 -100 { lab=vg} |
| N 60 -100 90 -100 { lab=vg} |
| N 160 -150 170 -150 { lab=vd} |
| N 160 -170 160 -150 { lab=vd} |
| N 160 -170 190 -170 { lab=vd} |
| C {sky130_fd_pr/nfet3_01v8.sym} 150 -100 0 0 {name=M1 |
| L=0.15 |
| W=1 |
| body=GND |
| nf=1 |
| mult=1 |
| ad="'int((nf+1)/2) * W/nf * 0.29'" |
| pd="'2*int((nf+1)/2) * (W/nf + 0.29)'" |
| as="'int((nf+2)/2) * W/nf * 0.29'" |
| ps="'2*int((nf+2)/2) * (W/nf + 0.29)'" |
| nrd="'0.29 / W'" nrs="'0.29 / W'" |
| sa=0 sb=0 sd=0 |
| model=nfet_01v8 |
| spiceprefix=X |
| } |
| C {devices/code_shown.sym} 360 -240 0 0 {name=NGSPICE |
| only_toplevel=false |
| value=".option TEMP=27C |
| |
| .dc v2 0 3 0.01 |
| |
| .control |
| set color0 = rgb:f/f/f |
| alter @v1[dc] = 1 |
| print @m.xm1.msky130_fd_pr__nfet_01v8[vdsat] |
| run |
| alter @v1[dc] = 1.2 |
| print @m.xm1.msky130_fd_pr__nfet_01v8[vdsat] |
| run |
| alter @v1[dc] = 1.4 |
| print @m.xm1.msky130_fd_pr__nfet_01v8[vdsat] |
| run |
| alter @v1[dc] = 1.8 |
| print @m.xm1.msky130_fd_pr__nfet_01v8[vdsat] |
| run |
| alter @v1[dc] = 2 |
| print @m.xm1.msky130_fd_pr__nfet_01v8[vdsat] |
| run |
| |
| plot (-dc1.i(v2)) (-dc2.i(v2)) (-dc3.i(v2)) (-dc4.i(v2)) (-dc5.i(v2)) |
| |
| .endc |
| |
| .save all |
| "} |
| C {devices/code.sym} -170 -290 0 0 {name=TT_MODELS |
| only_toplevel=true |
| format="tcleval( @value )" |
| value="** manual skywater pdks install (with patches applied) |
| * .lib \\\\$::SKYWATER_MODELS\\\\/models/sky130.lib.spice tt |
| |
| ** opencircuitdesign pdks install |
| .lib \\\\$::SKYWATER_MODELS\\\\/sky130.lib.spice tt |
| |
| .param mc_mm_switch=0 |
| .param mc_pr_switch=0 |
| " |
| spice_ignore=false} |
| C {devices/gnd.sym} 170 -70 0 0 {name=l1 lab=GND} |
| C {devices/vsource.sym} 90 -60 0 0 {name=v1 value=1} |
| C {devices/vsource.sym} 260 -100 0 0 {name=v2 value=0 |
| } |
| C {devices/gnd.sym} 90 -30 0 0 {name=l2 lab=GND} |
| C {devices/gnd.sym} 260 -70 0 0 {name=l3 lab=GND} |
| C {devices/opin.sym} 70 -140 0 0 {name=vg lab=vg} |
| C {devices/opin.sym} 170 -170 0 0 {name=vd lab=vd} |
| C {invert.sym} 660 140 0 0 {} |