- Deleted un used files.
diff --git a/caravel b/caravel index c294344..42c9cab 160000 --- a/caravel +++ b/caravel
@@ -1 +1 @@ -Subproject commit c2943440e278814787f761585b99b9ea3c1f4121 +Subproject commit 42c9cab06c7fdd94b7eacc12a5c4ff4a60338e74
diff --git a/xschem/LDO_V1.sch b/xschem/LDO_V1.sch deleted file mode 100644 index 98244d8..0000000 --- a/xschem/LDO_V1.sch +++ /dev/null
@@ -1,1137 +0,0 @@ -v {xschem version=2.9.9 file_version=1.2 } -G {} -K {} -V {} -S {} -E {} -N 5150 -1450 5150 -1430 { lab=VDD} -N 5150 -1450 5400 -1450 { lab=VDD} -N 5400 -1450 5400 -1430 { lab=VDD} -N 5400 -1370 5400 -1330 { lab=#net1} -N 5190 -1400 5360 -1400 { lab=#net2} -N 5150 -1370 5150 -1330 { lab=#net2} -N 5150 -1270 5150 -1210 { lab=#net3} -N 5150 -1210 5400 -1210 { lab=#net3} -N 5400 -1270 5400 -1210 { lab=#net3} -N 5240 -1210 5240 -1190 { lab=#net3} -N 5240 -1080 5240 -1060 { lab=GND} -N 5150 -1300 5400 -1300 { lab=GND} -N 5330 -1300 5330 -1070 { lab=GND} -N 5240 -1070 5330 -1070 { lab=GND} -N 5270 -1470 5270 -1450 { lab=VDD} -N 5400 -1400 5500 -1400 { lab=VDD} -N 5500 -1450 5500 -1400 { lab=VDD} -N 5390 -1450 5500 -1450 { lab=VDD} -N 5050 -1400 5150 -1400 { lab=VDD} -N 5050 -1450 5050 -1400 { lab=VDD} -N 5050 -1450 5150 -1450 { lab=VDD} -N 5240 -1160 5330 -1160 { lab=GND} -N 5540 -1420 5580 -1420 { lab=#net1} -N 5490 -1450 5620 -1450 { lab=VDD} -N 5620 -1420 5720 -1420 { lab=VDD} -N 5620 -1450 5720 -1450 { lab=VDD} -N 5720 -1450 5720 -1420 { lab=VDD} -N 5620 -1390 5620 -1350 { lab=out} -N 5330 -1070 5620 -1070 { lab=GND} -N 5620 -1070 5710 -1070 { lab=GND} -N 4940 -1330 4940 -1310 { lab=VDD} -N 4940 -1250 4940 -1200 { lab=vb} -N 4860 -1170 4900 -1170 { lab=vb} -N 4860 -1220 4860 -1170 { lab=vb} -N 4860 -1220 4940 -1220 { lab=vb} -N 4940 -1140 4940 -1120 { lab=GND} -N 4940 -1170 5020 -1170 { lab=GND} -N 5020 -1170 5020 -1130 { lab=GND} -N 4940 -1130 5020 -1130 { lab=GND} -N 4830 -1170 4860 -1170 { lab=vb} -N 5540 -1280 5580 -1280 { lab=vb} -N 5170 -1160 5200 -1160 { lab=vb} -N 5260 -1400 5260 -1350 { lab=#net2} -N 5150 -1350 5260 -1350 { lab=#net2} -N 5540 -1350 5550 -1350 { lab=#net4} -N 5610 -1350 5620 -1350 { lab=out} -N 5620 -1350 5620 -1310 { lab=out} -N 5620 -1280 5720 -1280 { lab=GND} -N 5720 -1280 5720 -1070 { lab=GND} -N 5710 -1070 5720 -1070 { lab=GND} -N 5620 -1250 5620 -1070 { lab=GND} -N 5090 -1300 5110 -1300 { lab=bg_out} -N 5440 -1300 5470 -1300 { lab=pos} -N 5520 -1350 5540 -1350 { lab=#net4} -N 5540 -1420 5540 -1380 { lab=#net1} -N 5720 -1070 6050 -1070 { lab=GND} -N 5720 -1450 6050 -1450 { lab=VDD} -N 6050 -1450 6150 -1450 { lab=VDD} -N 6010 -1210 6090 -1210 { lab=pos} -N 5910 -1350 5970 -1350 { lab=#net5} -N 5400 -1350 5460 -1350 { lab=#net1} -N 5430 -1380 5540 -1380 { lab=#net1} -N 5430 -1380 5430 -1350 { lab=#net1} -N 5900 -1350 5910 -1350 { lab=#net5} -N 5620 -1350 5680 -1350 { lab=out} -N 5680 -1350 5690 -1350 { lab=out} -N 5690 -1350 5700 -1350 { lab=out} -N 4940 -1280 4970 -1280 { lab=VDD} -N 4970 -1320 4970 -1280 { lab=VDD} -N 4940 -1320 4970 -1320 { lab=VDD} -N 4900 -1330 4900 -1280 { lab=mir} -N 4860 -1330 4900 -1330 { lab=mir} -N 5560 -1330 5580 -1330 { lab=GND} -N 5560 -1330 5560 -1070 { lab=GND} -N 5810 -1280 5810 -1250 { lab=#net6} -N 5810 -1190 5810 -1070 { lab=GND} -N 5810 -1350 5810 -1340 { lab=#net5} -N 5810 -1350 5900 -1350 { lab=#net5} -N 5760 -1350 5810 -1350 { lab=#net5} -N 5970 -1390 5970 -1350 { lab=#net5} -N 5970 -1390 6050 -1390 { lab=#net5} -N 6090 -1450 6090 -1420 { lab=VDD} -N 6150 -1450 6150 -1390 { lab=VDD} -N 6090 -1390 6150 -1390 { lab=VDD} -N 5240 -1130 5240 -1080 { lab=GND} -N 6090 -1360 6090 -1340 { lab=ldo_out} -N 6090 -1280 6090 -1270 { lab=#net7} -N 6090 -1210 6090 -1200 { lab=pos} -N 6090 -1140 6090 -1130 { lab=#net8} -N 6070 -1170 6070 -1100 { lab=GND} -N 6070 -1290 6070 -1240 { lab=GND} -N 6070 -1310 6070 -1290 { lab=GND} -N 6070 -1240 6070 -1170 { lab=GND} -N 6070 -1100 6070 -1070 { lab=GND} -N 6090 -1350 6190 -1350 { lab=ldo_out} -N 6050 -1070 6070 -1070 { lab=GND} -N 6070 -1070 6080 -1070 { lab=GND} -N 6080 -1070 6090 -1070 { lab=GND} -N 2790 -800 2790 -750 { lab=GND} -N 2640 -890 2640 -850 { lab=#net9} -N 2750 -830 2750 -780 { lab=GND} -N 2750 -780 2790 -780 { lab=GND} -N 2600 -820 2600 -770 { lab=GND} -N 2600 -770 2640 -770 { lab=GND} -N 2680 -1090 2750 -1090 { lab=mir} -N 2640 -1180 2640 -1120 { lab=VDD} -N 2640 -1180 2790 -1180 { lab=VDD} -N 2790 -1180 2790 -1120 { lab=VDD} -N 2780 -1180 3030 -1180 { lab=VDD} -N 2640 -790 2640 -780 { lab=GND} -N 2640 -780 2640 -770 { lab=GND} -N 2640 -750 2790 -750 { lab=GND} -N 2640 -770 2640 -750 { lab=GND} -N 2790 -1090 2830 -1090 { lab=VDD} -N 2830 -1180 2830 -1090 { lab=VDD} -N 2530 -1090 2640 -1090 { lab=VDD} -N 2530 -1180 2750 -1180 { lab=VDD} -N 1780 -1180 1780 -1120 { lab=VDD} -N 1670 -1090 1780 -1090 { lab=VDD} -N 1670 -1180 1670 -1090 { lab=VDD} -N 1670 -1180 1780 -1180 { lab=VDD} -N 1780 -1180 1870 -1180 { lab=VDD} -N 1710 -950 1780 -950 { lab=bg_out} -N 2570 -1050 2600 -1050 { lab=inp} -N 2790 -1050 2830 -1050 { lab=inn} -N 2470 -810 2470 -770 { lab=GND} -N 2410 -840 2430 -840 { lab=GND} -N 2410 -840 2410 -800 { lab=GND} -N 2470 -890 2470 -870 { lab=#net9} -N 2390 -810 2390 -770 { lab=GND} -N 2330 -840 2350 -840 { lab=GND} -N 2330 -840 2330 -800 { lab=GND} -N 2390 -890 2390 -870 { lab=#net9} -N 2300 -810 2300 -770 { lab=GND} -N 2240 -840 2260 -840 { lab=GND} -N 2240 -840 2240 -800 { lab=GND} -N 2300 -890 2300 -870 { lab=#net9} -N 2190 -810 2190 -770 { lab=GND} -N 2130 -840 2150 -840 { lab=GND} -N 2130 -840 2130 -800 { lab=GND} -N 2190 -890 2190 -870 { lab=#net9} -N 2100 -810 2100 -770 { lab=GND} -N 2040 -840 2060 -840 { lab=GND} -N 2040 -840 2040 -800 { lab=GND} -N 2100 -890 2100 -870 { lab=#net9} -N 1990 -810 1990 -770 { lab=GND} -N 1930 -840 1950 -840 { lab=GND} -N 1930 -840 1930 -800 { lab=GND} -N 1990 -890 1990 -870 { lab=#net9} -N 1890 -810 1890 -770 { lab=GND} -N 1830 -840 1850 -840 { lab=GND} -N 1830 -840 1830 -800 { lab=GND} -N 1890 -890 1890 -870 { lab=#net9} -N 2510 -750 2640 -750 { lab=GND} -N 1890 -890 1990 -890 { lab=#net9} -N 1980 -890 2100 -890 { lab=#net9} -N 2100 -890 2190 -890 { lab=#net9} -N 2190 -890 2300 -890 { lab=#net9} -N 2300 -890 2390 -890 { lab=#net9} -N 2380 -890 2470 -890 { lab=#net9} -N 1820 -1180 2530 -1180 { lab=VDD} -N 2530 -1180 2530 -1090 { lab=VDD} -N 1830 -800 1830 -770 { lab=GND} -N 1830 -770 1890 -770 { lab=GND} -N 1890 -770 1990 -770 { lab=GND} -N 1990 -770 2110 -770 { lab=GND} -N 2110 -770 2190 -770 { lab=GND} -N 2190 -770 2300 -770 { lab=GND} -N 2300 -770 2410 -770 { lab=GND} -N 2410 -770 2470 -770 { lab=GND} -N 1760 -750 2510 -750 { lab=GND} -N 1930 -800 1930 -770 { lab=GND} -N 2240 -800 2240 -770 { lab=GND} -N 2330 -800 2330 -770 { lab=GND} -N 2410 -800 2410 -770 { lab=GND} -N 2040 -800 2040 -770 { lab=GND} -N 2130 -800 2130 -770 { lab=GND} -N 1750 -750 1760 -750 { lab=GND} -N 1780 -770 1780 -750 { lab=GND} -N 1820 -1090 1850 -1090 { lab=mir} -N 1370 -840 1370 -750 { lab=GND} -N 1370 -870 1460 -870 { lab=GND} -N 1460 -870 1460 -750 { lab=GND} -N 1370 -1180 1370 -1090 { lab=VDD} -N 1370 -1060 1470 -1060 { lab=VDD} -N 1470 -1180 1470 -1060 { lab=VDD} -N 1290 -1060 1330 -1060 { lab=#net10} -N 1290 -870 1330 -870 { lab=bg_out} -N 1250 -870 1290 -870 { lab=bg_out} -N 2790 -1060 2790 -1050 { lab=inn} -N 3180 -1000 3390 -1000 { lab=GND} -N 3390 -1050 3390 -1030 { lab=mir} -N 3390 -1180 3390 -1110 { lab=VDD} -N 3110 -1180 3390 -1180 { lab=VDD} -N 3180 -1180 3180 -1110 { lab=VDD} -N 3340 -840 3340 -750 { lab=GND} -N 3250 -1000 3250 -750 { lab=GND} -N 3080 -1080 3180 -1080 { lab=VDD} -N 3080 -1180 3080 -1080 { lab=VDD} -N 3390 -1080 3500 -1080 { lab=VDD} -N 3500 -1180 3500 -1080 { lab=VDD} -N 3380 -1180 3500 -1180 { lab=VDD} -N 3340 -870 3420 -870 { lab=GND} -N 3420 -870 3420 -750 { lab=GND} -N 2790 -750 3160 -750 { lab=GND} -N 3250 -750 3340 -750 { lab=GND} -N 3340 -750 3420 -750 { lab=GND} -N 3120 -1000 3140 -1000 { lab=inp} -N 3430 -1000 3460 -1000 { lab=inn} -N 3030 -1180 3080 -1180 { lab=VDD} -N 3080 -1180 3110 -1180 { lab=VDD} -N 3160 -750 3250 -750 { lab=GND} -N 2980 -1180 2980 -1040 { lab=VDD} -N 2980 -1010 3040 -1010 { lab=VDD} -N 3040 -1180 3040 -1010 { lab=VDD} -N 2910 -1010 2940 -1010 { lab=mir} -N 2980 -860 2980 -750 { lab=GND} -N 2930 -890 2930 -750 { lab=GND} -N 3390 -1040 3470 -1040 { lab=mir} -N 2790 -870 2790 -860 { lab=#net11} -N 3180 -970 3180 -930 { lab=#net12} -N 3180 -1050 3180 -1030 { lab=#net13} -N 3220 -1080 3350 -1080 { lab=#net13} -N 3290 -1080 3290 -1040 { lab=#net13} -N 3180 -1040 3290 -1040 { lab=#net13} -N 3390 -970 3390 -930 { lab=#net12} -N 3180 -930 3390 -930 { lab=#net12} -N 3340 -930 3340 -900 { lab=#net12} -N 2980 -980 2980 -920 { lab=#net14} -N 3020 -890 3070 -890 { lab=#net14} -N 3070 -930 3070 -890 { lab=#net14} -N 2980 -930 3070 -930 { lab=#net14} -N 3070 -870 3300 -870 { lab=#net14} -N 3070 -890 3070 -870 { lab=#net14} -N 2930 -890 2980 -890 { lab=GND} -N 2440 -770 2440 -750 { lab=GND} -N 2470 -890 2640 -890 { lab=#net9} -N 2790 -960 2790 -870 { lab=#net11} -N 2640 -900 2640 -880 { lab=#net9} -N 2640 -1060 2640 -1050 { lab=inp} -N 2790 -970 2790 -960 { lab=#net11} -N 2600 -1050 2620 -1050 { lab=inp} -N 2620 -1050 2640 -1050 { lab=inp} -N 3540 -1040 3550 -1040 { lab=mir} -N 3470 -1040 3540 -1040 { lab=mir} -N 3550 -1040 3570 -1040 { lab=mir} -N 1530 -1180 1560 -1180 { lab=VDD} -N 1470 -1180 1530 -1180 { lab=VDD} -N 1370 -1180 1470 -1180 { lab=VDD} -N 1560 -750 1580 -750 { lab=GND} -N 1460 -750 1560 -750 { lab=GND} -N 1370 -750 1460 -750 { lab=GND} -N 1780 -960 1780 -930 { lab=bg_out} -N 1780 -1060 1780 -1020 { lab=bg_out} -N 1780 -1020 1780 -960 { lab=bg_out} -N 2640 -980 2640 -960 { lab=#net15} -N 2640 -1050 2640 -1040 { lab=inp} -N 2540 -970 2640 -970 { lab=#net15} -N 2540 -810 2540 -750 { lab=GND} -N 1780 -930 1780 -900 { lab=bg_out} -N 1760 -870 1760 -750 { lab=GND} -N 2860 -920 2860 -750 { lab=GND} -N 2520 -840 2520 -750 { lab=GND} -N 2570 -930 2620 -930 { lab=GND} -N 2570 -930 2570 -750 { lab=GND} -N 2730 -1000 2730 -750 { lab=GND} -N 2510 -1010 2620 -1010 { lab=GND} -N 2510 -1010 2510 -750 { lab=GND} -N 1560 -1180 1670 -1180 { lab=VDD} -N 1580 -750 1750 -750 { lab=GND} -N 1370 -930 1420 -930 { lab=#net16} -N 1370 -930 1370 -900 { lab=#net16} -N 1370 -950 1370 -930 { lab=#net16} -N 1420 -930 1460 -930 { lab=#net16} -N 1500 -900 1500 -750 { lab=GND} -N 1370 -1030 1370 -1010 { lab=#net10} -N 1290 -1020 1370 -1020 { lab=#net10} -N 1290 -1060 1290 -1020 { lab=#net10} -N 1310 -980 1330 -980 { lab=#net16} -N 1310 -980 1310 -930 { lab=#net16} -N 1310 -930 1370 -930 { lab=#net16} -N 1460 -980 1470 -980 { lab=VDD} -N 1470 -1060 1470 -980 { lab=VDD} -N 1500 -1020 1500 -960 { lab=mir} -N 1500 -1020 1560 -1020 { lab=mir} -N 1500 -930 1580 -930 { lab=GND} -N 1580 -930 1580 -750 { lab=GND} -N 3570 -1060 3570 -1040 { lab=mir} -N 3570 -1180 3570 -1120 { lab=VDD} -N 3500 -1180 3570 -1180 { lab=VDD} -N 2540 -970 2540 -960 { lab=#net15} -N 2540 -900 2540 -870 { lab=#net17} -N 2790 -980 2790 -970 { lab=#net11} -N 2730 -1010 2770 -1010 { lab=GND} -N 2730 -1010 2730 -1000 { lab=GND} -N 2840 -810 2840 -750 { lab=GND} -N 2840 -890 2840 -870 { lab=#net18} -N 2790 -950 2840 -950 { lab=#net11} -N 2790 -1050 2790 -1040 { lab=inn} -N 2510 -930 2520 -930 { lab=GND} -N 1780 -840 1780 -830 { lab=#net19} -N 2700 -1110 2700 -1090 { lab=mir} -N 2680 -1140 2700 -1140 { lab=VDD} -N 2680 -1180 2680 -1140 { lab=VDD} -N 2700 -1180 2700 -1170 { lab=VDD} -N 2740 -1140 2760 -1140 { lab=en} -N 4180 -1270 4180 -1250 { lab=en} -N 4180 -1190 4180 -1160 { lab=GND} -N 1370 -980 1460 -980 { lab=VDD} -N 2610 -540 2610 -530 { lab=GND} -N 2610 -750 2610 -740 { lab=GND} -N 2360 -1220 2360 -1180 { lab=VDD} -N 3850 -1330 3850 -1300 { lab=GND} -N 3850 -1420 3850 -1390 { lab=VDD} -N 2360 -1250 2360 -1220 { lab=VDD} -N 3850 -1450 3850 -1420 { lab=VDD} -N 3850 -1510 3930 -1510 { lab=VDD} -N 2610 -740 2610 -610 { lab=GND} -N 2610 -550 2610 -540 { lab=GND} -N 5000 -1010 5000 -990 { lab=GND} -N 5000 -1090 5000 -1070 { lab=GND} -N 4940 -1090 5000 -1090 { lab=GND} -N 4940 -1120 4940 -1090 { lab=GND} -N 5250 -980 5250 -960 { lab=GND} -N 5250 -1060 5250 -1040 { lab=GND} -N 5240 -1060 5250 -1060 { lab=GND} -N 2610 -610 2610 -550 { lab=GND} -N 5250 -1040 5250 -980 { lab=GND} -N 5000 -1070 5000 -1010 { lab=GND} -N 3850 -1510 3850 -1450 { lab=VDD} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 5170 -1400 0 1 {name=M8 -L=1.2 -W=3 -nf=1 -mult=4 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 5130 -1300 0 0 {name=M9 -L=1 -W=2 -nf=1 -mult=8 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 5420 -1300 0 1 {name=M10 -L=1 -W=2 -nf=1 -mult=8 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 5380 -1400 0 0 {name=M11 -L=1.2 -W=3 -nf=1 -mult=4 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 5220 -1160 0 0 {name=M13 -L=1 -W=1 -nf=1 -mult=8 -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_g5v0d10v5 -spiceprefix=X -} -C {devices/gnd.sym} 5250 -960 0 0 {name=l2 lab=GND} -C {devices/vdd.sym} 5270 -1470 0 0 {name=l9 lab=VDD} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 5600 -1420 0 0 {name=M14 -L=1.2 -W=3 -nf=1 -mult=12 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 5600 -1280 0 0 {name=M18 -L=1 -W=1 -nf=1 -mult=12 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 4920 -1170 0 0 {name=M20 -L=1 -W=1 -nf=1 -mult=4 -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_g5v0d10v5 -spiceprefix=X -} -C {devices/gnd.sym} 5000 -990 0 0 {name=l10 lab=GND} -C {devices/vdd.sym} 4940 -1330 0 0 {name=l12 lab=VDD} -C {devices/lab_pin.sym} 4830 -1170 0 0 {name=l14 sig_type=std_logic lab=vb} -C {devices/lab_pin.sym} 5170 -1160 0 0 {name=l15 sig_type=std_logic lab=vb} -C {devices/lab_pin.sym} 5540 -1280 0 0 {name=l16 sig_type=std_logic lab=vb} -C {devices/lab_pin.sym} 5470 -1300 0 1 {name=l17 sig_type=std_logic lab=pos} -C {devices/ngspice_get_value.sym} 5430 -1260 0 0 {name=r7 node=v(@m.$\{path\}xm3.msky130_fd_pr__nfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/launcher.sym} 5420 -990 0 0 {name=h1 -descr=Annotate -tclcommand="ngspice::annotate"} -C {devices/ngspice_get_value.sym} 5480 -1200 0 1 {name=r15 node=@m.$\{path\}xm3.msky130_fd_pr__nfet_g5v0d10v5[gm] -descr="gm="} -C {devices/launcher.sym} 5060 -620 0 0 {name=h2 -descr="View Raw file" -tclcommand="textwindow $netlist_dir/[file tail [file rootname [ xschem get schname 0 ] ] ].raw" -} -C {devices/ngspice_get_value.sym} 5430 -1230 0 0 {name=r16 node=v(@m.$\{path\}xm3.msky130_fd_pr__nfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 5070 -1250 0 0 {name=r17 node=v(@m.$\{path\}xm2.msky130_fd_pr__nfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 5120 -1190 0 1 {name=r18 node=@m.$\{path\}xm2.msky130_fd_pr__nfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 5070 -1220 0 0 {name=r19 node=v(@m.$\{path\}xm2.msky130_fd_pr__nfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 5130 -1110 0 0 {name=r20 node=v(@m.$\{path\}xm5.msky130_fd_pr__nfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 5180 -1050 0 1 {name=r21 node=@m.$\{path\}xm5.msky130_fd_pr__nfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 5130 -1080 0 0 {name=r22 node=v(@m.$\{path\}xm5.msky130_fd_pr__nfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 4860 -1120 0 0 {name=r23 node=v(@m.$\{path\}xm8.msky130_fd_pr__nfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 4910 -1060 0 1 {name=r24 node=@m.$\{path\}xm8.msky130_fd_pr__nfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 4860 -1090 0 0 {name=r25 node=v(@m.$\{path\}xm8.msky130_fd_pr__nfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 5000 -1410 0 0 {name=r33 node=v(@m.$\{path\}xm1.msky130_fd_pr__pfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 5050 -1350 0 1 {name=r34 node=@m.$\{path\}xm1.msky130_fd_pr__pfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 5000 -1380 0 0 {name=r35 node=v(@m.$\{path\}xm1.msky130_fd_pr__pfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 5320 -1420 0 0 {name=r36 node=v(@m.$\{path\}xm4.msky130_fd_pr__pfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 5370 -1360 0 1 {name=r37 node=@m.$\{path\}xm4.msky130_fd_pr__pfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 5320 -1390 0 0 {name=r38 node=v(@m.$\{path\}xm4.msky130_fd_pr__pfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 5650 -1230 0 0 {name=r39 node=v(@m.$\{path\}xm7.msky130_fd_pr__nfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 5700 -1170 0 1 {name=r40 node=@m.$\{path\}xm7.msky130_fd_pr__nfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 5650 -1200 0 0 {name=r41 node=v(@m.$\{path\}xm7.msky130_fd_pr__nfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 5660 -1510 0 0 {name=r42 node=v(@m.$\{path\}xm6.msky130_fd_pr__pfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 5710 -1450 0 1 {name=r43 node=@m.$\{path\}xm6.msky130_fd_pr__pfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 5660 -1480 0 0 {name=r44 node=v(@m.$\{path\}xm6.msky130_fd_pr__pfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 5430 -1170 0 0 {name=r45 node=v(@m.$\{path\}xm3.msky130_fd_pr__nfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 5140 -1020 0 0 {name=r46 node=v(@m.$\{path\}xm5.msky130_fd_pr__nfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 4860 -1020 0 0 {name=r47 node=v(@m.$\{path\}xm8.msky130_fd_pr__nfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 5010 -1320 0 0 {name=r50 node=v(@m.$\{path\}xm1.msky130_fd_pr__pfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 5320 -1330 0 0 {name=r51 node=v(@m.$\{path\}xm4.msky130_fd_pr__pfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 5730 -1420 0 0 {name=r52 node=v(@m.$\{path\}xm6.msky130_fd_pr__pfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 5640 -1140 0 0 {name=r53 node=v(@m.$\{path\}xm7.msky130_fd_pr__nfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 5070 -1150 0 0 {name=r54 node=v(@m.$\{path\}xm2.msky130_fd_pr__nfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 5060 -1110 0 0 {name=r55 node=v(@m.$\{path\}xm2.msky130_fd_pr__nfet_g5v0d10v5[vth]) -descr="vth="} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 6070 -1390 0 0 {name=M24 -L=0.5 -W=10 -nf=1 -mult=800 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {devices/lab_pin.sym} 6010 -1210 0 0 {name=l25 sig_type=std_logic lab=pos} -C {devices/lab_pin.sym} 6190 -1350 0 1 {name=l29 sig_type=std_logic lab=ldo_out} -C {devices/ngspice_get_value.sym} 6210 -1420 0 0 {name=r56 node=v(@m.$\{path\}xm11.msky130_fd_pr__pfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 6260 -1360 0 1 {name=r57 node=@m.$\{path\}xm11.msky130_fd_pr__pfet_g5v0d10v5[gm] -descr="gm="} -C {devices/ngspice_get_value.sym} 6210 -1390 0 0 {name=r58 node=v(@m.$\{path\}xm11.msky130_fd_pr__pfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 6280 -1330 0 0 {name=r59 node=v(@m.$\{path\}xm11.msky130_fd_pr__pfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/lab_pin.sym} 5680 -1350 1 0 {name=l30 sig_type=std_logic lab=out} -C {devices/lab_pin.sym} 5090 -1300 0 0 {name=l31 sig_type=std_logic lab=bg_out} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 4920 -1280 0 0 {name=M26 -L=2 -W=3 -nf=1 -mult=4 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {devices/lab_pin.sym} 4870 -1330 1 0 {name=l32 sig_type=std_logic lab=mir} -C {sky130_fd_pr/cap_mim_m3_1.sym} 5490 -1350 3 1 {name=C3 model=cap_mim_m3_1 W=60 L=60 MF=1 spiceprefix=X} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 5580 -1350 3 0 {name=R7 -W=0.69 -L=4.5 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=1} -C {devices/vsource.sym} 3850 -1360 0 0 {name=Vs value=2.3} -C {devices/vsource.sym} 5810 -1220 0 0 {name=Vt value=0} -C {devices/capa.sym} 5810 -1310 0 0 {name=C2 -m=1 -value=5G -footprint=1206 -device="ceramic capacitor"} -C {devices/ind.sym} 5730 -1350 3 0 {name=L1 -m=1 -value=5G -footprint=1206 -device=inductor} -C {devices/code_shown.sym} 6840 -2950 0 0 {name=SPICE only_toplevel=false value= -" -.param R=18k -R10 ldo_out GND \{R\} -IL ldo_out 0 PWL(0 0.1m 10u 0.1m 20u 10m 30u 10m) -*CL ldo_out gnd 10p -.lib "/home/mustafa/mabrains/pdks/share/pdk/sky130A/libs.tech/ngspice/sky130.lib_mod.spice" tt - - - - -.nodeset v(inn)=1.2 -.nodeset v(inp)=1.2 -.nodeset v(mir)=1 -.nodeset v(net13)=1 -.nodeset v(bg_out)=1.1 -.nodeset v(ldo_out)=1.8 -.nodeset v(pos)=1.1 -*.nodeset v(net3)=0.8 -*.nodeset v(net1)=0.7 -.nodeset v(net14)=0.9 -*.nodeset v(net7)=0.75 -.nodeset v(vb)=0.9 - -.option temp=27 -*User_defined_functions -.control -define max(vector_name) (vecmax(vector_name)) -define min(vector_name) (vecmin(vector_name)) -.endc - - -*Temp_sweep -.control -alter IL 0 -dc temp 85 0 -1 -let temp_coeff=1000000*(max(ldo_out)-min(ldo_out))/85 -print temp_coeff -plot v(ldo_out) -set wr_singlescale -set wr_vecnames -set appendwrite -.endc - - -.control -alter IL 0 -*alter R10 1G -op -let iq =i(Vs) -print iq -*print all -set wr_singlescale -set wr_vecnames -set appendwrite -if v(ldo_out)>1 -wrdata op_point_test v(ldo_out) -end -.endc - - - -*Stability_Analysis -.control -alter IL 0 -alter Vs AC =0 -alter Vt AC=1 -ac dec 10 1 1G -plot vdb(out) -plot (180/pi)*vp(out) -let ph= (180/pi)*vp(out) -meas ac pm FIND ph WHEN vdb(out)=0 -.endc - - -*PSRR_Analysis -.control -alter IL 0 -alter Vs AC =1 -alter Vt AC=0 -alter L1 0 -alter C2 0 -ac dec 10 1 1G -meas AC PSRR100 FIND vdb(ldo_out) AT=100 -meas AC PSRR100k FIND vdb(ldo_out) AT=100k -plot vdb(ldo_out) -.endc - - - - -*supply_sweep -.control -alter IL 0 -dc Vs 2.8 0 -0.01 -plot vdd ldo_out -meas DC Vldo_Sup_2 FIND ldo_out AT=2 -meas DC Vldo_nom FIND ldo_out AT=2.3 -meas DC Vldo_Sup_2_8 FIND ldo_out AT=2.8 -let line_reg = abs((Vldo_Sup_2_8-Vldo_Sup_2)/0.8) -print line_reg -meas DC vin WHEN v(ldo_out)=1.764 -let dropout=vin-1.764 -print dropout -set wr_singlescale -set wr_vecnames -set appendwrite -.endc - - - - - -*Load_Reg_switches -*V1 c1 0 DC 0 PWL(0 5 20u 5 35u 0 50u 0 100u 0) -*V2 c2 0 DC 0 PWL(0 0 20u 0 35u 0 50u 5 100u 5) -*s1 ldo_out 2 c1 0 switch1 ON -*s2 ldo_out 3 c2 0 switch1 OFF -*.model switch1 sw vt=0.1 ron =0.1 roff =1G -*R1 2 0 18k -*R2 3 0 180 - -*.control -*alter R10 1G -*tran 0.1u 90u -*plot v(ldo_out) v(c1) v(c2) -*meas TRAN V_ldo_100u FIND v(ldo_out) AT=10u -*meas TRAN V_ldo_10m FIND v(ldo_out) AT=50u -*let load_reg= V_ldo_100u-V_ldo_10m -*print load_reg -*.endc - - -**Load_Transient -.control -alter IL 50u -alter R10 3600k -tran 0.1u 100u -meas TRAN V_ldo_100u FIND v(ldo_out) AT=5u -meas TRAN V_ldo_10m FIND v(ldo_out) AT=100u -let load_reg= V_ldo_100u-V_ldo_10m -let load_current =(-1*i(Vs)-131.8e-6) -print load_reg -plot load_current v(ldo_out)-1.8 -.endc - - -**Transient -.control -alter R10 36k -alter @IL[PWL] = [ 0 0 10u 0 20u 0 30u 0 ] -alter @Vs[pulse] = [ 1.8 3 10u 10u 1u 100u 200u ] -alter IL 0 -tran 0.1u 100u -plot vdd ldo_out -.endc -.control -alter R10 36k -alter @IL[PWL] = [ 0 0 10u 0 20u 0 30u 0 ] -alter @Vs[pulse] = [ 0 2.3 10u 0.1u 1u 100u 200u ] -tran 0.1u 100u -plot vdd ldo_out -.endc -.control -alter R10 36k -alter @IL[PWL] = [ 0 0 10u 0 20u 0 30u 0 ] -alter @Ven[pulse] = [ 0 2.3 10u 0.1u 1u 100u 200u ] -tran 0.1u 100u -*meas TRAN st_up_time when v(ldo_out)>1.782 -plot en ldo_out -.endc - - - - -"} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 6090 -1310 0 0 {name=R8 -W=0.69 -L=24 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=8} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 6090 -1240 0 0 {name=R9 -W=0.69 -L=24 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=3} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 6090 -1170 0 0 {name=R12 -W=0.69 -L=24 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=2} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 6090 -1100 0 0 {name=R13 -W=0.69 -L=24 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=4} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 2770 -1090 0 0 {name=M1 -L=2 -W=3 -nf=1 -mult=8 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 2660 -1090 0 1 {name=M2 -L=2 -W=3 -nf=1 -mult=8 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 1800 -1090 0 1 {name=M3 -L=2 -W=3 -nf=1 -mult=8 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {devices/lab_pin.sym} 1710 -950 0 0 {name=l1 sig_type=std_logic lab=bg_out} -C {sky130_fd_pr/pnp_05v5.sym} 2770 -830 0 0 {name=Q1 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 2620 -820 0 0 {name=Q5 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 2450 -840 0 0 {name=Q6 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 2370 -840 0 0 {name=Q7 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 2280 -840 0 0 {name=Q9 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 2170 -840 0 0 {name=Q11 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 2080 -840 0 0 {name=Q13 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 1970 -840 0 0 {name=Q15 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {sky130_fd_pr/pnp_05v5.sym} 1870 -840 0 0 {name=Q17 -model=pnp_05v5_W0p68L0p68 -spiceprefix=X -} -C {devices/gnd.sym} 2610 -530 0 0 {name=l6 lab=GND} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 1350 -870 0 0 {name=M4 -L=2 -W=0.42 -nf=1 -mult=2 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 1480 -930 0 0 {name=M5 -L=0.5 -W=5 -nf=1 -mult=4 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 1350 -1060 0 0 {name=M6 -L=3 -W=0.42 -nf=1 -mult=2 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 3200 -1080 0 1 {name=M7 -L=2 -W=3 -nf=1 -mult=4 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 3160 -1000 0 0 {name=M12 -L=1 -W=3 -nf=1 -mult=8 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 3410 -1000 0 1 {name=M21 -L=1 -W=3 -nf=1 -mult=8 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 3370 -1080 0 0 {name=M23 -L=2 -W=3 -nf=1 -mult=4 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 3320 -870 0 0 {name=M15 -L=2 -W=5 -nf=1 -mult=4 -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_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 2960 -1010 0 0 {name=M25 -L=2 -W=3 -nf=1 -mult=8 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {sky130_fd_pr/nfet_g5v0d10v5.sym} 3000 -890 0 1 {name=M16 -L=2 -W=5 -nf=1 -mult=4 -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_g5v0d10v5 -spiceprefix=X -} -C {devices/lab_pin.sym} 1850 -1090 0 1 {name=l7 sig_type=std_logic lab=mir} -C {devices/lab_pin.sym} 2710 -1090 3 0 {name=l8 sig_type=std_logic lab=mir} -C {devices/lab_pin.sym} 2910 -1010 0 0 {name=l11 sig_type=std_logic lab=mir} -C {devices/lab_pin.sym} 3460 -1000 0 1 {name=l13 sig_type=std_logic lab=inn} -C {devices/lab_pin.sym} 3120 -1000 0 0 {name=l18 sig_type=std_logic lab=inp} -C {devices/ngspice_get_value.sym} 4000 -900 0 0 {name=r1 node=v(@m.$\{path\}xm1.msky130_fd_pr__nfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 4050 -840 0 1 {name=r2 node=@m.$\{path\}xm1.msky130_fd_pr__nfet_g5v0d10v5[gds] -descr="gds="} -C {devices/ngspice_get_value.sym} 4000 -870 0 0 {name=r3 node=v(@m.$\{path\}xm1.msky130_fd_pr__nfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 4000 -810 0 0 {name=r4 node=v(@m.$\{path\}xm1.msky130_fd_pr__nfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 4030 -1070 0 0 {name=r5 node=v(@m.$\{path\}xm7.msky130_fd_pr__pfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 4030 -1040 0 0 {name=r6 node=v(@m.$\{path\}xm7.msky130_fd_pr__pfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 4020 -1000 0 0 {name=r8 node=v(@m.$\{path\}xm7.msky130_fd_pr__pfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 4020 -1100 0 0 {name=r9 node=v(@m.$\{path\}xm7.msky130_fd_pr__pfet_g5v0d10v5[vth]) -descr="vth="} -C {devices/ngspice_get_value.sym} 3960 -740 0 0 {name=r10 node=v(@m.$\{path\}xm22.msky130_fd_pr__nfet_g5v0d10v5[vgs]) -descr="vgs="} -C {devices/ngspice_get_value.sym} 4010 -680 0 1 {name=r11 node=@m.$\{path\}xm22.msky130_fd_pr__nfet_g5v0d10v5[gds] -descr="gds="} -C {devices/ngspice_get_value.sym} 3960 -710 0 0 {name=r12 node=v(@m.$\{path\}xm22.msky130_fd_pr__nfet_g5v0d10v5[vdsat]) -descr="vdsat="} -C {devices/ngspice_get_value.sym} 3960 -650 0 0 {name=r13 node=v(@m.$\{path\}xm22.msky130_fd_pr__nfet_g5v0d10v5[vds]) -descr="vds="} -C {devices/ngspice_get_value.sym} 3960 -610 0 0 {name=r26 node=v(@m.$\{path\}xm22.msky130_fd_pr__nfet_g5v0d10v5[vth]) -descr="vth="} -C {devices/ngspice_get_value.sym} 3940 -840 0 0 {name=r27 node=v(@m.$\{path\}xm1.msky130_fd_pr__nfet_g5v0d10v5[vth]) -descr="vth="} -C {devices/lab_pin.sym} 2570 -1050 0 0 {name=l19 sig_type=std_logic lab=inp} -C {devices/lab_pin.sym} 2830 -1050 0 1 {name=l20 sig_type=std_logic lab=inn} -C {sky130_fd_pr/cap_mim_m3_1.sym} 3570 -1090 0 0 {name=C1 model=cap_mim_m3_1 W=20 L=20 MF=1 spiceprefix=X} -C {devices/lab_pin.sym} 3520 -1040 1 0 {name=l21 sig_type=std_logic lab=mir} -C {devices/lab_pin.sym} 1250 -870 0 0 {name=l24 sig_type=std_logic lab=bg_out} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 2640 -1010 0 0 {name=R1 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=3} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 2790 -1010 0 0 {name=R2 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=3} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 2840 -920 0 1 {name=R3 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=1} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 2640 -930 0 0 {name=R10 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=6} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 2540 -840 0 0 {name=R4 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=15} -C {devices/lab_pin.sym} 1560 -1020 0 1 {name=l22 sig_type=std_logic lab=mir} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 2840 -840 0 1 {name=R11 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=15} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 2540 -930 0 0 {name=R6 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=1} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 1780 -870 0 0 {name=R5 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=1} -C {sky130_fd_pr/res_xhigh_po_0p69.sym} 1780 -800 0 0 {name=R14 -W=0.69 -L=27 -model=res_xhigh_po_0p69 -spiceprefix=X -mult=53} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 2720 -1140 0 1 {name=M19 -L=0.5 -W=0.42 -nf=1 -mult=2 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {devices/lab_pin.sym} 2760 -1140 0 1 {name=l23 sig_type=std_logic lab=en} -C {devices/vsource.sym} 4180 -1220 0 0 {name=Ven value=2.3} -C {devices/gnd.sym} 4180 -1160 0 0 {name=l26 lab=GND} -C {devices/lab_pin.sym} 4180 -1270 0 0 {name=l27 sig_type=std_logic lab=en} -C {sky130_fd_pr/pfet_g5v0d10v5.sym} 1350 -980 0 0 {name=M17 -L=3 -W=0.42 -nf=1 -mult=2 -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=pfet_g5v0d10v5 -spiceprefix=X -} -C {devices/gnd.sym} 3850 -1300 0 0 {name=l3 lab=GND} -C {devices/vdd.sym} 2360 -1250 0 0 {name=l5 lab=VDD} -C {devices/vdd.sym} 3930 -1510 0 0 {name=l4 lab=VDD}
diff --git a/xschem/LDO_V1.spice b/xschem/LDO_V1.spice deleted file mode 100644 index cf15a82..0000000 --- a/xschem/LDO_V1.spice +++ /dev/null
@@ -1,290 +0,0 @@ -**.subckt untitled-17 -XM8 net2 net2 VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=1.2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XM9 net2 bg_out net3 GND sky130_fd_pr__nfet_g5v0d10v5 L=1 W=2 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM10 net1 pos net3 GND sky130_fd_pr__nfet_g5v0d10v5 L=1 W=2 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM11 net1 net2 VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=1.2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XM13 net3 vb GND GND sky130_fd_pr__nfet_g5v0d10v5 L=1 W=1 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM14 out net1 VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=1.2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=12 m=12 -XM18 out vb GND GND sky130_fd_pr__nfet_g5v0d10v5 L=1 W=1 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=12 m=12 -XM20 vb vb GND GND sky130_fd_pr__nfet_g5v0d10v5 L=1 W=1 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XM24 ldo_out net5 VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=0.5 W=10 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' -+ as='int((nf+2)/2) * W/nf * 0.29' pd='2*int((nf+1)/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 mult=800 m=800 -XM26 vb mir VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XC3 net1 net4 sky130_fd_pr__cap_mim_m3_1 W=60 L=60 MF=1 m=1 -XR7 out net4 GND sky130_fd_pr__res_xhigh_po_0p69 L=4.5 mult=1 m=1 -Vs VDD GND 2.3 -Vt net6 GND 0 -C2 net5 net6 5G m=1 -L1 out net5 5G m=1 -XR8 net7 ldo_out GND sky130_fd_pr__res_xhigh_po_0p69 L=24 mult=8 m=8 -XR9 pos net7 GND sky130_fd_pr__res_xhigh_po_0p69 L=24 mult=3 m=3 -XR12 net8 pos GND sky130_fd_pr__res_xhigh_po_0p69 L=24 mult=2 m=2 -XR13 GND net8 GND sky130_fd_pr__res_xhigh_po_0p69 L=24 mult=4 m=4 -XM1 inn mir VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM2 inp mir VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM3 bg_out mir VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XQ1 GND GND net11 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ5 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ6 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ7 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ9 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ11 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ13 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ15 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XQ17 GND GND net9 sky130_fd_pr__pnp_05v5_W0p68L0p68 -XM4 net16 bg_out GND GND sky130_fd_pr__nfet_g5v0d10v5 L=2 W=0.42 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' -+ as='int((nf+2)/2) * W/nf * 0.29' pd='2*int((nf+1)/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 mult=2 m=2 -XM5 mir net16 GND GND sky130_fd_pr__nfet_g5v0d10v5 L=0.5 W=5 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XM6 net10 net10 VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=3 W=0.42 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' -+ as='int((nf+2)/2) * W/nf * 0.29' pd='2*int((nf+1)/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 mult=2 m=2 -XM7 net13 net13 VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XM12 net13 inp net12 GND sky130_fd_pr__nfet_g5v0d10v5 L=1 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM21 mir inn net12 GND sky130_fd_pr__nfet_g5v0d10v5 L=1 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM23 mir net13 VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XM15 net12 net14 GND GND sky130_fd_pr__nfet_g5v0d10v5 L=2 W=5 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XM25 net14 mir VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=2 W=3 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=8 m=8 -XM16 net14 net14 GND GND sky130_fd_pr__nfet_g5v0d10v5 L=2 W=5 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=4 m=4 -XC1 VDD mir sky130_fd_pr__cap_mim_m3_1 W=20 L=20 MF=1 m=1 -XR1 net15 inp GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=3 m=3 -XR2 net11 inn GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=3 m=3 -XR3 net18 net11 GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=1 m=1 -XR10 net9 net15 GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=6 m=6 -XR4 GND net17 GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=15 m=15 -XR11 GND net18 GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=15 m=15 -XR6 net17 net15 GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=1 m=1 -XR5 net19 bg_out GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=1 m=1 -XR14 GND net19 GND sky130_fd_pr__res_xhigh_po_0p69 L=27 mult=53 m=53 -XM19 mir en VDD VDD sky130_fd_pr__pfet_g5v0d10v5 L=0.5 W=0.42 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29' -+ pd='2*int((nf+1)/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 mult=2 m=2 -Ven en GND 2.3 -XM17 net16 net16 net10 VDD sky130_fd_pr__pfet_g5v0d10v5 L=3 W=0.42 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' -+ as='int((nf+2)/2) * W/nf * 0.29' pd='2*int((nf+1)/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 mult=2 m=2 -**** begin user architecture code - - -.param R=18k -R10 ldo_out GND {R} -IL ldo_out 0 PWL(0 0.1m 10u 0.1m 20u 10m 30u 10m) -*CL ldo_out gnd 10p -.lib /home/mustafa/mabrains/pdks/share/pdk/sky130A/libs.tech/ngspice/sky130.lib_mod.spice tt - - - - -.nodeset v(inn)=1.2 -.nodeset v(inp)=1.2 -.nodeset v(mir)=1 -.nodeset v(net13)=1 -.nodeset v(bg_out)=1.1 -.nodeset v(ldo_out)=1.8 -.nodeset v(pos)=1.1 -*.nodeset v(net3)=0.8 -*.nodeset v(net1)=0.7 -.nodeset v(net14)=0.9 -*.nodeset v(net7)=0.75 -.nodeset v(vb)=0.9 - -.option temp=27 -*User_defined_functions -.control -define max(vector_name) (vecmax(vector_name)) -define min(vector_name) (vecmin(vector_name)) -.endc - - -*Temp_sweep -.control -alter IL 0 -dc temp 85 0 -1 -let temp_coeff=1000000*(max(ldo_out)-min(ldo_out))/85 -print temp_coeff -plot v(ldo_out) -set wr_singlescale -set wr_vecnames -set appendwrite -.endc - - -.control -alter IL 0 -*alter R10 1G -op -let iq =i(Vs) -print iq -*print all -set wr_singlescale -set wr_vecnames -set appendwrite -if v(ldo_out)>1 -wrdata op_point_test v(ldo_out) -end -.endc - - - -*Stability_Analysis -.control -alter IL 0 -alter Vs AC =0 -alter Vt AC=1 -ac dec 10 1 1G -plot vdb(out) -plot (180/pi)*vp(out) -let ph= (180/pi)*vp(out) -meas ac pm FIND ph WHEN vdb(out)=0 -.endc - - -*PSRR_Analysis -.control -alter IL 0 -alter Vs AC =1 -alter Vt AC=0 -alter L1 0 -alter C2 0 -ac dec 10 1 1G -meas AC PSRR100 FIND vdb(ldo_out) AT=100 -meas AC PSRR100k FIND vdb(ldo_out) AT=100k -plot vdb(ldo_out) -.endc - - - - -*supply_sweep -.control -alter IL 0 -dc Vs 2.8 0 -0.01 -plot vdd ldo_out -meas DC Vldo_Sup_2 FIND ldo_out AT=2 -meas DC Vldo_nom FIND ldo_out AT=2.3 -meas DC Vldo_Sup_2_8 FIND ldo_out AT=2.8 -let line_reg = abs((Vldo_Sup_2_8-Vldo_Sup_2)/0.8) -print line_reg -meas DC vin WHEN v(ldo_out)=1.764 -let dropout=vin-1.764 -print dropout -set wr_singlescale -set wr_vecnames -set appendwrite -.endc - - - - - -*Load_Reg_switches -*V1 c1 0 DC 0 PWL(0 5 20u 5 35u 0 50u 0 100u 0) -*V2 c2 0 DC 0 PWL(0 0 20u 0 35u 0 50u 5 100u 5) -*s1 ldo_out 2 c1 0 switch1 ON -*s2 ldo_out 3 c2 0 switch1 OFF -*.model switch1 sw vt=0.1 ron =0.1 roff =1G -*R1 2 0 18k -*R2 3 0 180 - -*.control -*alter R10 1G -*tran 0.1u 90u -*plot v(ldo_out) v(c1) v(c2) -*meas TRAN V_ldo_100u FIND v(ldo_out) AT=10u -*meas TRAN V_ldo_10m FIND v(ldo_out) AT=50u -*let load_reg= V_ldo_100u-V_ldo_10m -*print load_reg -*.endc - - -**Load_Transient -.control -alter IL 50u -alter R10 3600k -tran 0.1u 100u -meas TRAN V_ldo_100u FIND v(ldo_out) AT=5u -meas TRAN V_ldo_10m FIND v(ldo_out) AT=100u -let load_reg= V_ldo_100u-V_ldo_10m -let load_current =(-1*i(Vs)-131.8e-6) -print load_reg -plot load_current v(ldo_out)-1.8 -.endc - - -**Transient -.control -alter R10 36k -alter @IL[PWL] = [ 0 0 10u 0 20u 0 30u 0 ] -alter @Vs[pulse] = [ 1.8 3 10u 10u 1u 100u 200u ] -alter IL 0 -tran 0.1u 100u -plot vdd ldo_out -.endc -.control -alter R10 36k -alter @IL[PWL] = [ 0 0 10u 0 20u 0 30u 0 ] -alter @Vs[pulse] = [ 0 2.3 10u 0.1u 1u 100u 200u ] -tran 0.1u 100u -plot vdd ldo_out -.endc -.control -alter R10 36k -alter @IL[PWL] = [ 0 0 10u 0 20u 0 30u 0 ] -alter @Ven[pulse] = [ 0 2.3 10u 0.1u 1u 100u 200u ] -tran 0.1u 100u -*meas TRAN st_up_time when v(ldo_out)>1.782 -plot en ldo_out -.endc - - - - - - -**** end user architecture code -**.ends -.GLOBAL GND -.GLOBAL VDD -** flattened .save nodes -.end
diff --git a/xschem/test.data b/xschem/test.data deleted file mode 100644 index c9cde37..0000000 --- a/xschem/test.data +++ /dev/null
@@ -1,101 +0,0 @@ - 7.00000000e-01 -8.93059159e-08 7.00000000e-01 7.00000000e-01 - 7.01000000e-01 -9.08452852e-08 7.01000000e-01 7.01000000e-01 - 7.02000000e-01 -9.24385447e-08 7.02000000e-01 7.02000000e-01 - 7.03000000e-01 -9.40459956e-08 7.03000000e-01 7.03000000e-01 - 7.04000000e-01 -9.56814959e-08 7.04000000e-01 7.04000000e-01 - 7.05000000e-01 -9.73455368e-08 7.05000000e-01 7.05000000e-01 - 7.06000000e-01 -9.90386085e-08 7.06000000e-01 7.06000000e-01 - 7.07000000e-01 -1.00761227e-07 7.07000000e-01 7.07000000e-01 - 7.08000000e-01 -1.02513882e-07 7.08000000e-01 7.08000000e-01 - 7.09000000e-01 -1.04297110e-07 7.09000000e-01 7.09000000e-01 - 7.10000000e-01 -1.06111443e-07 7.10000000e-01 7.10000000e-01 - 7.11000000e-01 -1.07957415e-07 7.11000000e-01 7.11000000e-01 - 7.12000000e-01 -1.09835552e-07 7.12000000e-01 7.12000000e-01 - 7.13000000e-01 -1.11746436e-07 7.13000000e-01 7.13000000e-01 - 7.14000000e-01 -1.13690603e-07 7.14000000e-01 7.14000000e-01 - 7.15000000e-01 -1.15668634e-07 7.15000000e-01 7.15000000e-01 - 7.16000000e-01 -1.17681129e-07 7.16000000e-01 7.16000000e-01 - 7.17000000e-01 -1.19728657e-07 7.17000000e-01 7.17000000e-01 - 7.18000000e-01 -1.21811839e-07 7.18000000e-01 7.18000000e-01 - 7.19000000e-01 -1.23931259e-07 7.19000000e-01 7.19000000e-01 - 7.20000000e-01 -1.26087554e-07 7.20000000e-01 7.20000000e-01 - 7.21000000e-01 -1.28281358e-07 7.21000000e-01 7.21000000e-01 - 7.22000000e-01 -1.30513286e-07 7.22000000e-01 7.22000000e-01 - 7.23000000e-01 -1.32784003e-07 7.23000000e-01 7.23000000e-01 - 7.24000000e-01 -1.35094165e-07 7.24000000e-01 7.24000000e-01 - 7.25000000e-01 -1.37444453e-07 7.25000000e-01 7.25000000e-01 - 7.26000000e-01 -1.39835535e-07 7.26000000e-01 7.26000000e-01 - 7.27000000e-01 -1.42268085e-07 7.27000000e-01 7.27000000e-01 - 7.28000000e-01 -1.44742842e-07 7.28000000e-01 7.28000000e-01 - 7.29000000e-01 -1.47260486e-07 7.29000000e-01 7.29000000e-01 - 7.30000000e-01 -1.49821761e-07 7.30000000e-01 7.30000000e-01 - 7.31000000e-01 -1.52427364e-07 7.31000000e-01 7.31000000e-01 - 7.32000000e-01 -1.55078077e-07 7.32000000e-01 7.32000000e-01 - 7.33000000e-01 -1.57774611e-07 7.33000000e-01 7.33000000e-01 - 7.34000000e-01 -1.60517775e-07 7.34000000e-01 7.34000000e-01 - 7.35000000e-01 -1.63308337e-07 7.35000000e-01 7.35000000e-01 - 7.36000000e-01 -1.66147061e-07 7.36000000e-01 7.36000000e-01 - 7.37000000e-01 -1.69034765e-07 7.37000000e-01 7.37000000e-01 - 7.38000000e-01 -1.71972266e-07 7.38000000e-01 7.38000000e-01 - 7.39000000e-01 -1.74960357e-07 7.39000000e-01 7.39000000e-01 - 7.40000000e-01 -1.77999888e-07 7.40000000e-01 7.40000000e-01 - 7.41000000e-01 -1.81091703e-07 7.41000000e-01 7.41000000e-01 - 7.42000000e-01 -1.84236664e-07 7.42000000e-01 7.42000000e-01 - 7.43000000e-01 -1.87435634e-07 7.43000000e-01 7.43000000e-01 - 7.44000000e-01 -1.90689493e-07 7.44000000e-01 7.44000000e-01 - 7.45000000e-01 -1.93999127e-07 7.45000000e-01 7.45000000e-01 - 7.46000000e-01 -1.97365464e-07 7.46000000e-01 7.46000000e-01 - 7.47000000e-01 -2.00789378e-07 7.47000000e-01 7.47000000e-01 - 7.48000000e-01 -2.04271837e-07 7.48000000e-01 7.48000000e-01 - 7.49000000e-01 -2.07813739e-07 7.49000000e-01 7.49000000e-01 - 7.50000000e-01 -2.11416073e-07 7.50000000e-01 7.50000000e-01 - 7.51000000e-01 -2.15079797e-07 7.51000000e-01 7.51000000e-01 - 7.52000000e-01 -2.18805863e-07 7.52000000e-01 7.52000000e-01 - 7.53000000e-01 -2.22595278e-07 7.53000000e-01 7.53000000e-01 - 7.54000000e-01 -2.26449036e-07 7.54000000e-01 7.54000000e-01 - 7.55000000e-01 -2.30368144e-07 7.55000000e-01 7.55000000e-01 - 7.56000000e-01 -2.34353630e-07 7.56000000e-01 7.56000000e-01 - 7.57000000e-01 -2.38406548e-07 7.57000000e-01 7.57000000e-01 - 7.58000000e-01 -2.42527913e-07 7.58000000e-01 7.58000000e-01 - 7.59000000e-01 -2.46718795e-07 7.59000000e-01 7.59000000e-01 - 7.60000000e-01 -2.50980278e-07 7.60000000e-01 7.60000000e-01 - 7.61000000e-01 -2.55313430e-07 7.61000000e-01 7.61000000e-01 - 7.62000000e-01 -2.59719344e-07 7.62000000e-01 7.62000000e-01 - 7.63000000e-01 -2.64199148e-07 7.63000000e-01 7.63000000e-01 - 7.64000000e-01 -2.68753946e-07 7.64000000e-01 7.64000000e-01 - 7.65000000e-01 -2.73384860e-07 7.65000000e-01 7.65000000e-01 - 7.66000000e-01 -2.78093044e-07 7.66000000e-01 7.66000000e-01 - 7.67000000e-01 -2.82879650e-07 7.67000000e-01 7.67000000e-01 - 7.68000000e-01 -2.87745826e-07 7.68000000e-01 7.68000000e-01 - 7.69000000e-01 -2.92692776e-07 7.69000000e-01 7.69000000e-01 - 7.70000000e-01 -2.97721660e-07 7.70000000e-01 7.70000000e-01 - 7.71000000e-01 -3.02833688e-07 7.71000000e-01 7.71000000e-01 - 7.72000000e-01 -3.08030053e-07 7.72000000e-01 7.72000000e-01 - 7.73000000e-01 -3.13311974e-07 7.73000000e-01 7.73000000e-01 - 7.74000000e-01 -3.18680710e-07 7.74000000e-01 7.74000000e-01 - 7.75000000e-01 -3.24137468e-07 7.75000000e-01 7.75000000e-01 - 7.76000000e-01 -3.29683509e-07 7.76000000e-01 7.76000000e-01 - 7.77000000e-01 -3.35320078e-07 7.77000000e-01 7.77000000e-01 - 7.78000000e-01 -3.41048451e-07 7.78000000e-01 7.78000000e-01 - 7.79000000e-01 -3.46869908e-07 7.79000000e-01 7.79000000e-01 - 7.80000000e-01 -3.52785731e-07 7.80000000e-01 7.80000000e-01 - 7.81000000e-01 -3.58797218e-07 7.81000000e-01 7.81000000e-01 - 7.82000000e-01 -3.64905663e-07 7.82000000e-01 7.82000000e-01 - 7.83000000e-01 -3.71112381e-07 7.83000000e-01 7.83000000e-01 - 7.84000000e-01 -3.77418703e-07 7.84000000e-01 7.84000000e-01 - 7.85000000e-01 -3.83825919e-07 7.85000000e-01 7.85000000e-01 - 7.86000000e-01 -3.90335390e-07 7.86000000e-01 7.86000000e-01 - 7.87000000e-01 -3.96948455e-07 7.87000000e-01 7.87000000e-01 - 7.88000000e-01 -4.03666461e-07 7.88000000e-01 7.88000000e-01 - 7.89000000e-01 -4.10490750e-07 7.89000000e-01 7.89000000e-01 - 7.90000000e-01 -4.17422681e-07 7.90000000e-01 7.90000000e-01 - 7.91000000e-01 -4.24463629e-07 7.91000000e-01 7.91000000e-01 - 7.92000000e-01 -4.31614946e-07 7.92000000e-01 7.92000000e-01 - 7.93000000e-01 -4.38878017e-07 7.93000000e-01 7.93000000e-01 - 7.94000000e-01 -4.46254218e-07 7.94000000e-01 7.94000000e-01 - 7.95000000e-01 -4.53744916e-07 7.95000000e-01 7.95000000e-01 - 7.96000000e-01 -4.61351506e-07 7.96000000e-01 7.96000000e-01 - 7.97000000e-01 -4.69075369e-07 7.97000000e-01 7.97000000e-01 - 7.98000000e-01 -4.76917893e-07 7.98000000e-01 7.98000000e-01 - 7.99000000e-01 -4.84880471e-07 7.99000000e-01 7.99000000e-01 - 8.00000000e-01 -4.92964482e-07 8.00000000e-01 8.00000000e-01