|  | 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 {} |