add analog switch on it's own
diff --git a/gds/user_analog_project_wrapper.gds b/gds/user_analog_project_wrapper.gds
index 5762cce..5a7430f 100644
--- a/gds/user_analog_project_wrapper.gds
+++ b/gds/user_analog_project_wrapper.gds
Binary files differ
diff --git a/mag/analog_mux.mag b/mag/analog_mux.mag
index ae779f7..7233b31 100644
--- a/mag/analog_mux.mag
+++ b/mag/analog_mux.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1636416019
+timestamp 1636630175
<< nwell >>
rect 1400 1950 2150 2700
rect 1350 -2650 2150 -2000
@@ -432,11 +432,11 @@
rect 2340 -2540 2650 -2160
rect 2150 -2700 2650 -2540
use analog_switch analog_switch_1
-timestamp 1636413257
+timestamp 1636628614
transform 1 0 500 0 1 -1150
box -500 -750 2250 1100
use analog_switch analog_switch_0
-timestamp 1636413257
+timestamp 1636628614
transform 1 0 500 0 1 750
box -500 -750 2250 1100
<< labels >>
diff --git a/mag/analog_switch.mag b/mag/analog_switch.mag
index ed91d3b..80aad82 100644
--- a/mag/analog_switch.mag
+++ b/mag/analog_switch.mag
@@ -1,6 +1,6 @@
magic
tech sky130A
-timestamp 1636413257
+timestamp 1636628614
<< nwell >>
rect 800 -600 2150 900
<< pwell >>
diff --git a/mag/user_analog_project_wrapper.mag b/mag/user_analog_project_wrapper.mag
index faff5c3..6bb873d 100644
--- a/mag/user_analog_project_wrapper.mag
+++ b/mag/user_analog_project_wrapper.mag
@@ -1,8 +1,18 @@
magic
tech sky130A
magscale 1 2
-timestamp 1636538618
+timestamp 1636630175
<< locali >>
+rect 379600 497400 380100 498000
+rect 379100 497380 380100 497400
+rect 379100 496420 379120 497380
+rect 380080 496420 380100 497380
+rect 379100 496400 380100 496420
+rect 381000 497400 381500 498000
+rect 381000 497380 382000 497400
+rect 381000 496420 381020 497380
+rect 381980 496420 382000 497380
+rect 381000 496400 382000 496420
rect 6700 106200 7700 106500
rect 7300 106140 7700 106200
rect 7300 106020 8000 106140
@@ -18,11 +28,35 @@
rect 11760 103800 12400 104000
rect 12000 103400 12400 103800
<< viali >>
+rect 379120 496420 380080 497380
+rect 381020 496420 381980 497380
rect 6300 106100 6700 106500
rect 6300 105300 6700 105700
rect 7100 104500 7500 104900
rect 12400 103400 13200 104200
<< metal1 >>
+rect 394000 501100 395000 501200
+rect 383500 500300 394100 501100
+rect 394900 500300 395000 501100
+rect 394000 500200 395000 500300
+rect 370400 499500 371400 499600
+rect 370400 498700 370500 499500
+rect 371300 498700 378000 499500
+rect 370400 498600 371400 498700
+rect 347400 497380 380100 497400
+rect 347400 497300 379120 497380
+rect 347400 496500 347500 497300
+rect 348300 496500 379120 497300
+rect 347400 496420 379120 496500
+rect 380080 496420 380100 497380
+rect 347400 496400 380100 496420
+rect 381000 497380 386600 497400
+rect 381000 496420 381020 497380
+rect 381980 497300 386600 497380
+rect 381980 496500 385700 497300
+rect 386500 496500 386600 497300
+rect 381980 496420 386600 496500
+rect 381000 496400 386600 496420
rect 414800 341900 425320 342000
rect 414800 340700 414900 341900
rect 416300 341200 425320 341900
@@ -113,6 +147,10 @@
<< rmetal1 >>
rect 420200 332800 420400 333600
<< via1 >>
+rect 394100 500300 394900 501100
+rect 370500 498700 371300 499500
+rect 347500 496500 348300 497300
+rect 385700 496500 386500 497300
rect 414900 340700 416300 341900
rect 469500 338300 470500 339300
rect 421220 334420 421780 334980
@@ -152,6 +190,48 @@
rect 10600 107000 10800 108200
rect 9200 106800 10800 107000
rect 11200 108200 12800 634000
+rect 387800 555000 390000 555200
+rect 371800 554000 374000 554200
+rect 371800 549600 372000 554000
+rect 373800 549600 374000 554000
+rect 371800 538400 374000 549600
+rect 387800 550800 388000 555000
+rect 389800 550800 390000 555000
+rect 387800 538400 390000 550800
+rect 371800 537200 374800 538400
+rect 375200 537200 379200 538400
+rect 347400 512100 348400 512200
+rect 347400 511300 347500 512100
+rect 348300 511300 348400 512100
+rect 347400 497300 348400 511300
+rect 378200 501700 379200 537200
+rect 382300 537200 384800 538400
+rect 385000 537200 390000 538400
+rect 382300 501700 383300 537200
+rect 394000 501100 395000 501200
+rect 394000 500300 394100 501100
+rect 394900 500300 395000 501100
+rect 347400 496500 347500 497300
+rect 348300 496500 348400 497300
+rect 347400 496400 348400 496500
+rect 370400 499500 371400 499600
+rect 370400 498700 370500 499500
+rect 371300 498700 371400 499500
+rect 370400 450100 371400 498700
+rect 385600 497300 386600 497400
+rect 385600 496500 385700 497300
+rect 386500 496500 386600 497300
+rect 385600 468700 386600 496500
+rect 394000 494500 395000 500300
+rect 394000 493700 394100 494500
+rect 394900 493700 395000 494500
+rect 394000 493600 395000 493700
+rect 385600 467900 385700 468700
+rect 386500 467900 386600 468700
+rect 385600 467800 386600 467900
+rect 370400 449300 370500 450100
+rect 371300 449300 371400 450100
+rect 370400 449200 371400 449300
rect 44400 422980 45000 423000
rect 44400 422420 44420 422980
rect 44980 422420 45000 422980
@@ -760,12 +840,20 @@
rect 582068 -800 582180 480
rect 583250 -800 583362 480
<< rmetal2 >>
+rect 374800 537200 375200 538400
+rect 384800 537200 385000 538400
rect 7000 14000 8200 15200
<< via2 >>
rect 11400 634000 12600 638200
rect 9400 205200 10600 209200
rect 7400 163200 8600 167200
rect 2400 124400 3200 125200
+rect 372000 549600 373800 554000
+rect 388000 550800 389800 555000
+rect 347500 511300 348300 512100
+rect 394100 493700 394900 494500
+rect 385700 467900 386500 468700
+rect 370500 449300 371300 450100
rect 44420 422420 44980 422980
rect 42820 379220 43380 379780
rect 469500 404800 470500 405700
@@ -807,11 +895,11 @@
rect -800 680242 1700 685242
rect 582300 677984 584800 682984
rect -800 643842 1660 648642
-rect 543400 639784 584800 644584
-rect -800 638200 44200 638642
+rect 570984 639784 584800 644584
+rect -800 638200 24289 638642
rect -800 634000 11400 638200
-rect 12600 634000 44200 638200
-rect -800 633842 44200 634000
+rect 12600 634000 24289 638200
+rect -800 633842 24289 634000
rect 582340 629784 584800 634584
rect 583520 589472 584800 589584
rect 583520 588290 584800 588402
@@ -820,12 +908,25 @@
rect 583520 584744 584800 584856
rect 583520 583562 584800 583674
rect -800 559442 1660 564242
+rect 386800 555000 584800 555362
rect -800 554240 1660 554242
-rect -800 549442 49398 554240
-rect 542800 550562 584800 555362
+rect -800 554000 375400 554240
+rect -800 549600 372000 554000
+rect 373800 549600 375400 554000
+rect 386800 550800 388000 555000
+rect 389800 550800 584800 555000
+rect 386800 550562 584800 550800
+rect -800 549442 375400 549600
rect 1660 549440 3320 549442
rect 582340 540562 584800 545362
-rect -800 511530 480 511642
+rect 800 512100 348400 512200
+rect 800 511800 347500 512100
+rect 480 511642 347500 511800
+rect -800 511530 347500 511642
+rect 480 511400 347500 511530
+rect 800 511300 347500 511400
+rect 348300 511300 348400 512100
+rect 800 511200 348400 511300
rect -800 510348 480 510460
rect -800 509166 480 509278
rect -800 507984 480 508096
@@ -836,8 +937,22 @@
rect 583520 497686 584800 497798
rect 583520 496504 584800 496616
rect 583520 495322 584800 495434
-rect 583520 494140 584800 494252
-rect -800 468308 480 468420
+rect 394000 494500 583400 494600
+rect 394000 493700 394100 494500
+rect 394900 494400 583400 494500
+rect 394900 494252 583520 494400
+rect 394900 494140 584800 494252
+rect 394900 494000 583520 494140
+rect 394900 493700 583400 494000
+rect 394000 493600 583400 493700
+rect 600 468700 386600 468800
+rect 600 468600 385700 468700
+rect 480 468420 385700 468600
+rect -800 468308 385700 468420
+rect 480 468200 385700 468308
+rect 600 467900 385700 468200
+rect 386500 467900 386600 468700
+rect 600 467800 386600 467900
rect -800 467126 480 467238
rect -800 465944 480 466056
rect -800 464762 480 464874
@@ -848,7 +963,14 @@
rect 583520 453264 584800 453376
rect 583520 452082 584800 452194
rect 583520 450900 584800 451012
-rect 583520 449718 584800 449830
+rect 370400 450100 583400 450200
+rect 370400 449300 370500 450100
+rect 371300 450000 583400 450100
+rect 371300 449830 583520 450000
+rect 371300 449718 584800 449830
+rect 371300 449600 583520 449718
+rect 371300 449300 583400 449600
+rect 370400 449200 583400 449300
rect -800 425086 480 425198
rect -800 423904 480 424016
rect 600 422980 45000 423000
@@ -1110,12 +1232,16 @@
rect -100 0 0 704000
rect 584000 0 584100 704000
rect -100 -100 584100 0
-use myopamp_flat myopamp_flat_0
+use analog_switch analog_switch_0
+timestamp 1636628614
+transform 1 0 379000 0 1 499500
+box -1000 -1500 4500 2200
+use myopamp_flat myopamp_flat_0 zeroToASIC_integration
timestamp 1636538588
transform 1 0 434519 0 1 332532
box -9200 490 33850 17218
use analog_mux analog_mux_0
-timestamp 1636416019
+timestamp 1636630175
transform 1 0 41360 0 1 296524
box -100 -5400 6600 5500
use comparator comparator_0 comparator
diff --git a/netgen/user_analog_project_wrapper.spice b/netgen/user_analog_project_wrapper.spice
index 43ce29b..7946628 100644
--- a/netgen/user_analog_project_wrapper.spice
+++ b/netgen/user_analog_project_wrapper.spice
@@ -1,4 +1,122 @@
-* SPICE3 file created from user_analog_project_wrapper.ext - technology: sky130A
+* NGSPICE file created from user_analog_project_wrapper.ext - technology: sky130A
+
+.subckt analog_switch VOUT VIN EN ENB VDD3v3 VGND
+X0 VOUT EN VIN VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+07u l=500000u
+X1 VIN ENB VOUT VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=7e+06u l=500000u
+X2 VOUT ENB VIN VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=7e+06u l=500000u
+.ends
+
+.subckt analog_mux VGND VPWR VIN1 VIN0 VOUT EN SELECT
+Xanalog_switch_0 VOUT VIN1 EN1 EN1 VPWR VGND analog_switch
+Xanalog_switch_1 VOUT VIN0 EN0 ENB0 VPWR VGND analog_switch
+X0 EN1 EN VPWR VPWR sky130_fd_pr__pfet_g5v0d10v5 ad=-0p pd=0u as=0p ps=0u w=1e+06u l=500000u
+X1 VPWR EN ENB0 VPWR sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=500000u
+X2 a_1960_4640# EN EN1 VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=700000u l=500000u
+X3 a_1960_n4840# SELECT ENB0 VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=700000u l=500000u
+X4 VPWR SELECT EN1 VPWR sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=-0p ps=0u w=1e+06u l=500000u
+X5 ENB0 SELECT VPWR VPWR sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=500000u
+X6 EN0 ENB0 VGND VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=700000u l=500000u
+X7 VGND SELECT a_1960_4640# VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=700000u l=500000u
+X8 VPWR EN1 EN1 VPWR sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=-0p ps=0u w=1e+06u l=500000u
+X9 SELECT SELECT VPWR VPWR sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=500000u
+X10 EN0 ENB0 VPWR VPWR sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=500000u
+X11 VGND EN a_1960_n4840# VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=700000u l=500000u
+X12 EN1 EN1 VGND VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=700000u l=500000u
+X13 SELECT SELECT VGND VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=700000u l=500000u
+.ends
+
+.subckt myopamp_flat in_n in_p vdd bias out vss
+X0 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X1 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X2 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X3 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X4 bias bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X5 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X6 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X7 a_3424_7369# a_21439_8488# sky130_fd_pr__cap_mim_m3_1 l=3e+07u w=3e+07u
+X8 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X9 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X10 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X11 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X12 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X13 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X14 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X15 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X16 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X17 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X18 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X19 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X20 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X21 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X22 a_3424_7369# a_21439_8488# sky130_fd_pr__cap_mim_m3_1 l=3e+07u w=3e+07u
+X23 a_3424_7369# a_n4266_3630# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X24 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X25 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X26 a_3424_7369# a_21439_8488# sky130_fd_pr__cap_mim_m3_1 l=3e+07u w=3e+07u
+X27 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X28 a_n4008_3630# bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X29 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X30 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X31 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X32 a_n4266_3630# a_n4266_3630# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X33 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X34 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X35 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X36 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X37 bias bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X38 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X39 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X40 a_3424_7369# a_21439_8488# sky130_fd_pr__cap_mim_m3_1 l=3e+07u w=3e+07u
+X41 out a_21439_8488# vss sky130_fd_pr__res_xhigh_po w=690000u l=1e+07u
+X42 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X43 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X44 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X45 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X46 a_3424_7369# a_21439_8488# sky130_fd_pr__cap_mim_m3_1 l=3e+07u w=3e+07u
+X47 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X48 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X49 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X50 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X51 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X52 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X53 a_3424_7369# a_n4266_3630# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X54 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X55 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X56 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X57 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X58 a_n4266_3630# a_n4266_3630# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X59 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X60 a_n4008_3630# in_n a_n4266_3630# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X61 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+X62 out bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X63 a_n4008_3630# bias vss vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+06u l=2e+06u
+X64 a_3424_7369# a_21439_8488# sky130_fd_pr__cap_mim_m3_1 l=3e+07u w=3e+07u
+X65 out a_3424_7369# vdd vdd sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=2e+06u l=2e+06u
+X66 a_n4008_3630# in_p a_3424_7369# vss sky130_fd_pr__nfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1e+07u l=1e+06u
+.ends
+
+.subckt comparator VGND VDD3v3 VDD1v8 VOUT BIASN VN VP
+X0 VPAMP VPAMP VDD3v3 VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u
+X1 VGND BIASN ISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X2 VOPAMP VONAMP VDD1v8 VDD1v8 sky130_fd_pr__pfet_01v8 ad=0p pd=0u as=0p ps=0u w=3e+06u l=180000u
+X3 VON VNAMP VDD3v3 VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u
+X4 ISINK VN VNAMP VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X5 VON VON DECISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X6 DECISINK VON VOP VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X7 DIFFSINK VON VONAMP VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=180000u
+X8 VDD1v8 VOPAMP VOUT VDD1v8 sky130_fd_pr__pfet_01v8 ad=0p pd=0u as=0p ps=0u w=2e+06u l=150000u
+X9 VDD1v8 VONAMP VONAMP VDD1v8 sky130_fd_pr__pfet_01v8 ad=0p pd=0u as=0p ps=0u w=3e+06u l=180000u
+X10 VDD3v3 VPAMP VOP VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u
+X11 DECISINK VOP VON VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X12 VDD3v3 VNAMP VNAMP VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u
+X13 VOPAMP VOP DIFFSINK VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=180000u
+X14 VOUT VOPAMP VGND VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=150000u
+X15 DIFFSINK VONAMP VGND VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=180000u
+X16 ISINK BIASN VGND VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X17 VOP VOP DECISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X18 VPAMP VP ISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+X19 DECISINK DECISINK VGND VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u
+.ends
.subckt user_analog_project_wrapper gpio_analog[0] gpio_analog[10] gpio_analog[11]
+ gpio_analog[12] gpio_analog[13] gpio_analog[14] gpio_analog[15] gpio_analog[16]
@@ -106,52 +224,17 @@
+ wbs_dat_o[30] wbs_dat_o[31] wbs_dat_o[3] wbs_dat_o[4] wbs_dat_o[5] wbs_dat_o[6]
+ wbs_dat_o[7] wbs_dat_o[8] wbs_dat_o[9] wbs_sel_i[0] wbs_sel_i[1] wbs_sel_i[2] wbs_sel_i[3]
+ wbs_stb_i wbs_we_i
-R0 vssa1 vssd2 sky130_fd_pr__res_generic_m1 w=4e+06u l=1e+06u
-R1 io_out[25] gpio_analog[17] sky130_fd_pr__res_generic_m2 w=6e+06u l=6e+06u
-C0 io_in_3v3[16] vccd2 3.45fF
-C1 gpio_analog[11] gpio_analog[13] 4.85fF
-C2 gpio_analog[11] vccd2 7.33fF
-C3 analog_mux_0/EN1 gpio_analog[11] 2.87fF
-C4 myopamp_flat_0/a_21439_8488# myopamp_flat_0/a_3424_7369# 513.13fF
-C5 gpio_analog[12] vccd2 7.33fF
-C6 gpio_analog[3] gpio_analog[0] 3.22fF
-C7 io_in_3v3[16] io_in_3v3[17] 6.66fF
-C8 vdda2 gpio_analog[11] 12.34fF
-C9 gpio_analog[11] io_in_3v3[17] 9.03fF
-C10 vssa2 vccd2 19.74fF
-C11 gpio_analog[13] vccd2 7.33fF
-C12 vdda2 vccd2 19.74fF
-C13 myopamp_flat_0/a_n4266_3630# vdda1 2.10fF
-C14 myopamp_flat_0/a_n4008_3630# gpio_analog[2] 4.26fF
-C15 io_in_3v3[17] vccd2 3.45fF
-C16 gpio_analog[11] io_in_3v3[16] 6.69fF
-C17 myopamp_flat_0/a_n4008_3630# gpio_analog[1] 4.06fF
-C18 analog_mux_0/ENB0 gpio_analog[11] 2.43fF
-C19 myopamp_flat_0/a_n4008_3630# myopamp_flat_0/a_n4266_3630# 13.74fF
-C20 gpio_analog[3] myopamp_flat_0/a_3424_7369# 4.20fF
-C21 gpio_analog[3] vdda1 6.09fF
-C22 vdda1 vssa1 19.74fF
-C23 gpio_analog[11] gpio_analog[12] 4.85fF
-C24 myopamp_flat_0/a_3424_7369# vdda1 9.02fF
-C25 myopamp_flat_0/a_n4008_3630# myopamp_flat_0/a_3424_7369# 13.74fF
Xanalog_mux_0 vssd2 vdda2 gpio_analog[12] gpio_analog[13] gpio_analog[11] io_in_3v3[17]
+ io_in_3v3[16] analog_mux
+Xanalog_switch_0 gpio_analog[5] gpio_analog[4] gpio_analog[7] gpio_analog[8] analog_switch_0/VDD3v3
++ vssd2 analog_switch
Xmyopamp_flat_0 gpio_analog[1] gpio_analog[2] vdda1 gpio_analog[0] gpio_analog[3]
+ vssd2 myopamp_flat
Xcomparator_0 vssd2 vdda2 vccd2 gpio_analog[17] gpio_analog[16] gpio_analog[15] gpio_analog[14]
+ comparator
-C26 vssa1 vssd2 2.35fF
-C27 vccd2 vssd2 20.99fF
-C28 comparator_0/VOPAMP vssd2 2.89fF **FLOATING
-C29 comparator_0/VON vssd2 2.03fF **FLOATING
-C30 gpio_analog[0] vssd2 2.97fF
-C31 gpio_analog[1] vssd2 2.95fF
-C32 myopamp_flat_0/a_n4008_3630# vssd2 26.41fF **FLOATING
-C33 myopamp_flat_0/a_21439_8488# vssd2 111.08fF **FLOATING
-C34 myopamp_flat_0/a_3424_7369# vssd2 50.32fF **FLOATING
-C35 myopamp_flat_0/a_n4266_3630# vssd2 17.95fF **FLOATING
-C36 analog_mux_0/ENB0 vssd2 2.84fF
-C37 gpio_analog[11] vssd2 2.62fF
-C38 gpio_analog[13] vssd2 2.11fF
-C39 gpio_analog[12] vssd2 2.11fF
+R0 vssa1 vssd2 sky130_fd_pr__res_generic_m1 w=4e+06u l=1e+06u
+R1 io_out[25] gpio_analog[17] sky130_fd_pr__res_generic_m2 w=6e+06u l=6e+06u
+R2 analog_switch_0/VDD3v3 vdda1 sky130_fd_pr__res_generic_m2 w=6e+06u l=1e+06u
+R3 vssa2 vssd2 sky130_fd_pr__res_generic_m2 w=6e+06u l=2e+06u
.ends
+