A number of updates: sky130: Pushed a revised GDS-exact tech file for
magic, and a revised fill generation script that makes use of it and
avoids issues with fill shapes overlapping implant layers that is a
problem with the original fill generation script. Added two missing
custom I/O cell wrapper layouts, and fixed a few minor GDS errors in the
pad cel library. gf180mcu: Modified the installation of the xschemrc
file so that it properly specifies the path to simulation models, and
adds the path for the test library so that test library symbols are
valid on startup. Having updated a GF repository to add a canonical
user-side xschemrc file to be used in projects, I regenerated all of
the commit hash references.
diff --git a/VERSION b/VERSION
index 51ae719..f6a8ad3 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.0.527
+1.0.529
diff --git a/gf180mcu/custom/scripts/fix_xschemrc.py b/gf180mcu/custom/scripts/fix_xschemrc.py
index 41dd798..d0a85e3 100755
--- a/gf180mcu/custom/scripts/fix_xschemrc.py
+++ b/gf180mcu/custom/scripts/fix_xschemrc.py
@@ -24,6 +24,9 @@
if skipnext == 0:
if 'trying to find' in line:
skipnext = 2
+ elif '/models/ngspice' in line:
+ # Path matches library source structure; change to open_pdks structure
+ line = line.replace('/models/', '/' + tech_name + '/libs.tech/')
outlines.append(line)
else:
skipnext -= 1
@@ -36,6 +39,7 @@
outlines.append('')
outlines.append('# open_pdks-specific')
outlines.append('set XSCHEM_START_WINDOW ${PDK_ROOT}/' + tech_name + '/libs.tech/xschem/tests/0_top.sch')
+outlines.append('append XSCHEM_LIBRARY_PATH :${PDK_ROOT}/' + tech_name + '/libs.tech/xschem/tests')
outlines.append('append XSCHEM_LIBRARY_PATH :${PDK_ROOT}/' + tech_name + '/libs.tech/xschem')
outlines.append('')
outlines.append('# allow a user-specific path add-on')
diff --git a/gf180mcu/gf180mcu.json b/gf180mcu/gf180mcu.json
index 870d6c5..a6c4fca 100644
--- a/gf180mcu/gf180mcu.json
+++ b/gf180mcu/gf180mcu.json
@@ -89,10 +89,10 @@
"magic": "MAGIC_COMMIT"
},
"reference": {
- "open_pdks": "a6917d83263b9cfc3a746415654c35ecf3fff3cb",
- "magic": "5ecc55b37d9c073340b2e815d5e7a79e7ed2ada8",
+ "open_pdks": "3863076405b31ae66bfc895a8cfe791706de9905",
+ "magic": "eb81da6c56ff200ba3d7ceab41cdba5fde32b513",
"gf180mcu_pdk": "a897aa30369d3bcec87d9d50ce9b01f320f854ef",
- "gf180mcu_fd_pr": "e26c5860ac44646f88b1407d449e766cf15ca360",
+ "gf180mcu_fd_pr": "e5e0710ba82f807f03442b15e4c16c0091aaaf8b",
"gf180mcu_fd_pv": "10ee7fc75437edafa56f29f2b1872e95c9f22b71",
"gf180mcu_fd_io": "f84fe10e67a5cb9002e9ae8210f58e570726c366",
"gf180mcu_fd_sc_mcu7t5v0": "8743b6f9641eb8707179c4e51703380d4dc90f16",
diff --git a/sky130/custom/scripts/generate_fill.py b/sky130/custom/scripts/generate_fill.py
index d163b3a..881180c 100755
--- a/sky130/custom/scripts/generate_fill.py
+++ b/sky130/custom/scripts/generate_fill.py
@@ -217,6 +217,7 @@
print('puts stdout "Started: $starttime"', file=ofile)
print('', file=ofile)
print('gds rescale false', file=ofile)
+ print('gds drccheck no', file=ofile)
print('gds read ' + project_file, file=ofile)
# NOTE: No guarantee that the filename matches the top level cell name;
# might want to query using "cellname list top"
diff --git a/sky130/custom/sky130_fd_io/gds/sky130_ef_io.gds b/sky130/custom/sky130_fd_io/gds/sky130_ef_io.gds
index c7df8b6..fa58cef 100644
--- a/sky130/custom/sky130_fd_io/gds/sky130_ef_io.gds
+++ b/sky130/custom/sky130_fd_io/gds/sky130_ef_io.gds
Binary files differ
diff --git a/sky130/custom/sky130_fd_io/mag/sky130_ef_io.mag b/sky130/custom/sky130_fd_io/mag/sky130_ef_io.mag
index 34f8aa5..ab35e28 100644
--- a/sky130/custom/sky130_fd_io/mag/sky130_ef_io.mag
+++ b/sky130/custom/sky130_fd_io/mag/sky130_ef_io.mag
@@ -1,129 +1,167 @@
magic
tech sky130A
magscale 1 2
-timestamp 1636574685
-use sky130_ef_io__vccd_lvc_clamped3_pad sky130_ef_io__vccd_lvc_clamped3_pad_0
-timestamp 1636574685
-transform 1 0 -2456 0 1 -60530
-box 0 -2177 17187 39593
-use sky130_ef_io__vssd_lvc_clamped3_pad sky130_ef_io__vssd_lvc_clamped3_pad_0
-timestamp 1636574685
-transform 1 0 25051 0 1 -59702
-box 0 -2184 17187 39593
-use sky130_ef_io__vddio_hvc_clamped_pad sky130_ef_io__vddio_hvc_clamped_pad_0
-timestamp 1617120349
-transform 1 0 -778 0 1 -5714
-box 0 -434 15000 39593
-use sky130_ef_io__vssio_hvc_clamped_pad sky130_ef_io__vssio_hvc_clamped_pad_0
-timestamp 1617120349
-transform 1 0 19004 0 1 -5606
-box 0 -434 15000 39593
-use sky130_ef_io__vdda_hvc_clamped_pad sky130_ef_io__vdda_hvc_clamped_pad_0
-timestamp 1617120349
-transform 1 0 39000 0 1 -5606
-box 0 -434 15000 39593
-use sky130_ef_io__vssa_hvc_clamped_pad sky130_ef_io__vssa_hvc_clamped_pad_0
-timestamp 1617120349
-transform 1 0 58346 0 1 -5496
-box 0 -434 15000 39593
-use sky130_ef_io__vccd_lvc_clamped_pad sky130_ef_io__vccd_lvc_clamped_pad_0
-timestamp 1617120349
-transform 1 0 77366 0 1 -5822
-box 0 -2107 17239 39593
-use sky130_ef_io__vssd_lvc_clamped_pad sky130_ef_io__vssd_lvc_clamped_pad_0
-timestamp 1617120349
-transform 1 0 98450 0 1 -6148
-box 0 -2107 17239 39593
-use sky130_ef_io__vccd_lvc_clamped2_pad sky130_ef_io__vccd_lvc_clamped2_pad_0
-timestamp 1617120349
-transform 1 0 118340 0 1 -5714
-box -2195 -2184 17228 39593
-use sky130_ef_io__vssd_lvc_clamped2_pad sky130_ef_io__vssd_lvc_clamped2_pad_0
-timestamp 1617120349
-transform 1 0 141083 0 1 -5048
-box 0 -46 15000 39593
-use sky130_ef_io__top_power_hvc sky130_ef_io__top_power_hvc_0
-timestamp 1624544534
-transform 1 0 163508 0 1 -6325
-box 0 -434 33800 39593
-use sky130_ef_io__vssd_lvc_pad sky130_ef_io__vssd_lvc_pad_0
-timestamp 1617120349
-transform 1 0 -480 0 1 46173
-box 0 -46 15000 39593
-use sky130_ef_io__vssd_hvc_pad sky130_ef_io__vssd_hvc_pad_0
-timestamp 1617120349
-transform 1 0 18134 0 1 46741
-box 0 -434 15000 39593
-use sky130_ef_io__vssa_hvc_pad sky130_ef_io__vssa_hvc_pad_0
-timestamp 1617120349
-transform 1 0 37912 0 1 46935
-box 0 -434 15000 39593
-use sky130_ef_io__vssa_lvc_pad sky130_ef_io__vssa_lvc_pad_0
-timestamp 1617120349
-transform 1 0 60016 0 1 44427
-box 0 -46 15000 39593
-use sky130_ef_io__vssio_lvc_pad sky130_ef_io__vssio_lvc_pad_0
-timestamp 1617120349
-transform 1 0 79018 0 1 44233
-box 0 -7 15000 39593
-use sky130_ef_io__vssio_hvc_pad sky130_ef_io__vssio_hvc_pad_0
-timestamp 1617120349
-transform 1 0 100540 0 1 44967
-box 0 -407 15000 39593
-use sky130_ef_io__corner_pad sky130_ef_io__corner_pad_0
-timestamp 1609343739
-transform 1 0 123795 0 1 46420
-box -271 -204 40000 40800
-use sky130_ef_io__com_bus_slice_20um sky130_ef_io__com_bus_slice_20um_0
-timestamp 1602609570
-transform 1 0 177444 0 1 45996
-box 0 0 4000 39593
-use sky130_ef_io__com_bus_slice_10um sky130_ef_io__com_bus_slice_10um_0
-timestamp 1602609491
-transform 1 0 172732 0 1 45576
-box 0 0 2000 39593
-use sky130_ef_io__com_bus_slice_5um sky130_ef_io__com_bus_slice_5um_0
-timestamp 1602609416
-transform 1 0 169366 0 1 45408
-box 0 0 1000 39593
+timestamp 1682359614
+<< checkpaint >>
+rect -2128 90664 15392 132784
+rect 18426 90804 35946 133324
+rect 36846 89888 54366 132008
+rect 55266 89668 72786 132188
+rect 75818 90638 93338 133158
+rect 95788 91052 113308 133172
+rect 117892 90921 136689 133577
+rect 138834 91192 156581 133712
+rect 159580 91133 190391 133951
+rect -1740 44906 15780 87026
+rect 16874 45047 34394 87594
+rect 36652 45268 54172 87788
+rect 58756 43160 76276 85280
+rect 77758 42966 95278 85086
+rect 99280 43300 116800 85820
+rect 122535 45227 165055 88480
+rect -2038 -7381 15482 35139
+rect 17744 -7273 35264 35247
+rect 37740 -7273 55260 35247
+rect 57086 -7163 74606 35357
+rect 76106 -7089 93626 35031
+rect 97190 -7415 114710 34705
+rect 114885 -9158 136828 35139
+rect 139823 -6315 157343 35805
+rect 171648 -7992 189168 34528
+rect -3716 -63967 15991 -19677
+rect 23791 -63146 43498 -18849
+rect 50756 -62783 68276 -20663
+rect 71702 -62672 89222 -20513
+use sky130_fd_io__top_gpio_ovtv2 sky130_ef_fd__top_gpio_ovtv2_0 $PDKPATH/libs.ref/sky130_fd_io/mag
+timestamp 1681316767
+transform 1 0 160920 0 1 92540
+box -80 -147 28211 40151
use sky130_ef_io__com_bus_slice_1um sky130_ef_io__com_bus_slice_1um_0
timestamp 1576684134
transform 1 0 167600 0 1 45744
box 0 0 200 39593
-use sky130_ef_io__vdda_hvc_pad sky130_ef_io__vdda_hvc_pad_0
-timestamp 1617120349
-transform 1 0 19686 0 1 92471
-box 0 -434 15000 39593
-use sky130_ef_io__vdda_lvc_pad sky130_ef_io__vdda_lvc_pad_0
-timestamp 1617120349
-transform 1 0 -868 0 1 91931
-box 0 -46 15000 39593
-use sky130_ef_io__vccd_lvc_pad sky130_ef_io__vccd_lvc_pad_0
-timestamp 1617120349
-transform 1 0 38106 0 1 91155
-box 0 -46 15000 39593
+use sky130_ef_io__com_bus_slice_5um sky130_ef_io__com_bus_slice_5um_0
+timestamp 1602609416
+transform 1 0 169366 0 1 45408
+box 0 0 1000 39593
+use sky130_ef_io__com_bus_slice_10um sky130_ef_io__com_bus_slice_10um_0
+timestamp 1602609491
+transform 1 0 172732 0 1 45576
+box 0 0 2000 39593
+use sky130_ef_io__com_bus_slice_20um sky130_ef_io__com_bus_slice_20um_0
+timestamp 1602609570
+transform 1 0 177444 0 1 45996
+box 0 0 4000 39593
+use sky130_ef_io__corner_pad sky130_ef_io__corner_pad_0
+timestamp 1609343739
+transform 1 0 123795 0 1 46420
+box -271 -204 40000 40800
+use sky130_ef_io__gpiov2_pad sky130_ef_io__gpiov2_pad_0
+timestamp 1602597384
+transform 1 0 119295 0 1 92724
+box -143 -515 16134 39593
+use sky130_ef_io__top_power_hvc sky130_ef_io__top_power_hvc_0
+timestamp 1624544534
+transform 1 0 163508 0 1 -6325
+box 0 -407 33800 39593
use sky130_ef_io__vccd_hvc_pad sky130_ef_io__vccd_hvc_pad_0
timestamp 1617120349
transform 1 0 56526 0 1 91335
-box 0 -434 15000 39593
+box 0 -407 15000 39593
+use sky130_ef_io__vccd_lvc_clamped2_pad sky130_ef_io__vccd_lvc_clamped2_pad_0
+timestamp 1636578979
+transform 1 0 118340 0 1 -5714
+box -2195 -2184 17228 39593
+use sky130_ef_io__vccd_lvc_clamped3_pad sky130_ef_io__vccd_lvc_clamped3_pad_0
+timestamp 1637024123
+transform 1 0 -2456 0 1 -60530
+box 0 -2177 17187 39593
+use sky130_ef_io__vccd_lvc_clamped_pad sky130_ef_io__vccd_lvc_clamped_pad_0
+timestamp 1617120349
+transform 1 0 77366 0 1 -5822
+box 0 -2107 17239 39593
+use sky130_ef_io__vccd_lvc_pad sky130_ef_io__vccd_lvc_pad_0
+timestamp 1617120349
+transform 1 0 38106 0 1 91155
+box 0 -13 15000 39593
+use sky130_ef_io__vdda_hvc_clamped_pad sky130_ef_io__vdda_hvc_clamped_pad_0
+timestamp 1617120349
+transform 1 0 39000 0 1 -5606
+box 0 -407 15000 39593
+use sky130_ef_io__vdda_hvc_pad sky130_ef_io__vdda_hvc_pad_0
+timestamp 1617120349
+transform 1 0 19686 0 1 92471
+box 0 -407 15000 39593
+use sky130_ef_io__vdda_lvc_pad sky130_ef_io__vdda_lvc_pad_0
+timestamp 1617120349
+transform 1 0 -868 0 1 91931
+box 0 -13 15000 39593
+use sky130_ef_io__vddio_hvc_clamped_pad sky130_ef_io__vddio_hvc_clamped_pad_0
+timestamp 1617120349
+transform 1 0 -778 0 1 -5714
+box 0 -407 15000 39593
use sky130_ef_io__vddio_hvc_pad sky130_ef_io__vddio_hvc_pad_0
timestamp 1617120349
transform 1 0 77078 0 1 92305
box 0 -407 15000 39593
+use sky130_ef_io__vddio_lvc_clamped_pad sky130_ef_io__vddio_lvc_clamped_pad_0
+timestamp 1682358349
+transform 1 0 72962 0 1 -61366
+box 0 -13 15000 39593
use sky130_ef_io__vddio_lvc_pad sky130_ef_io__vddio_lvc_pad_0
timestamp 1617120349
transform 1 0 97048 0 1 92319
-box 0 -7 15000 39593
-use sky130_ef_io__gpiov2_pad sky130_ef_io__gpiov2_pad_0
-timestamp 1602597384
-transform 1 0 119295 0 1 92724
-box -143 -543 16134 39593
+box 0 -13 15000 39593
+use sky130_ef_io__vssa_hvc_clamped_pad sky130_ef_io__vssa_hvc_clamped_pad_0
+timestamp 1617120349
+transform 1 0 58346 0 1 -5496
+box 0 -407 15000 39593
+use sky130_ef_io__vssa_hvc_pad sky130_ef_io__vssa_hvc_pad_0
+timestamp 1617120349
+transform 1 0 37912 0 1 46935
+box 0 -407 15000 39593
+use sky130_ef_io__vssa_lvc_pad sky130_ef_io__vssa_lvc_pad_0
+timestamp 1617120349
+transform 1 0 60016 0 1 44427
+box 0 -13 15000 39593
+use sky130_ef_io__vssd_hvc_pad sky130_ef_io__vssd_hvc_pad_0
+timestamp 1636578979
+transform 1 0 18134 0 1 46741
+box 0 -407 15000 39593
+use sky130_ef_io__vssd_lvc_clamped2_pad sky130_ef_io__vssd_lvc_clamped2_pad_0
+timestamp 1617120349
+transform 1 0 141083 0 1 -5048
+box 0 -13 15000 39593
+use sky130_ef_io__vssd_lvc_clamped3_pad sky130_ef_io__vssd_lvc_clamped3_pad_0
+timestamp 1636578979
+transform 1 0 25051 0 1 -59702
+box 0 -2177 17187 39593
+use sky130_ef_io__vssd_lvc_clamped_pad sky130_ef_io__vssd_lvc_clamped_pad_0
+timestamp 1617120349
+transform 1 0 98450 0 1 -6148
+box 0 -2107 17239 39593
+use sky130_ef_io__vssd_lvc_pad sky130_ef_io__vssd_lvc_pad_0
+timestamp 1617120349
+transform 1 0 -480 0 1 46173
+box 0 -13 15000 39593
+use sky130_ef_io__vssio_hvc_clamped_pad sky130_ef_io__vssio_hvc_clamped_pad_0
+timestamp 1617120349
+transform 1 0 19004 0 1 -5606
+box 0 -407 15000 39593
+use sky130_ef_io__vssio_hvc_pad sky130_ef_io__vssio_hvc_pad_0
+timestamp 1617120349
+transform 1 0 100540 0 1 44967
+box 0 -407 15000 39593
+use sky130_ef_io__vssio_lvc_clamped_pad sky130_ef_io__vssio_lvc_clamped_pad_0
+timestamp 1682357748
+transform 1 0 52016 0 1 -61516
+box 0 -13 15000 39593
+use sky130_ef_io__vssio_lvc_pad sky130_ef_io__vssio_lvc_pad_0
+timestamp 1617120349
+transform 1 0 79018 0 1 44233
+box 0 -13 15000 39593
use sky130_fd_io__top_xres4v2 sky130_fd_io__top_xres4v2_0 $PDKPATH/libs.ref/sky130_fd_io/mag
-timestamp 1636165381
+timestamp 1681316767
transform 1 0 140197 0 1 92452
box -103 0 15124 40000
-use sky130_fd_io__top_gpio_ovtv2 sky130_ef_fd__top_gpio_ovtv2_0 $PDKPATH/libs.ref/sky130_fd_io/mag
-timestamp 1636165381
-transform 1 0 160920 0 1 92540
-box -80 -147 28211 40151
<< end >>
diff --git a/sky130/custom/sky130_fd_io/mag/sky130_ef_io__vddio_lvc_clamped_pad.mag b/sky130/custom/sky130_fd_io/mag/sky130_ef_io__vddio_lvc_clamped_pad.mag
new file mode 100644
index 0000000..10d89c6
--- /dev/null
+++ b/sky130/custom/sky130_fd_io/mag/sky130_ef_io__vddio_lvc_clamped_pad.mag
@@ -0,0 +1,266 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1682454812
+<< checkpaint >>
+rect -1260 40044 16260 40853
+rect -1260 40000 16350 40044
+rect -1260 15111 16356 40000
+rect -1260 -1267 16260 15111
+<< metal1 >>
+rect 6867 95 7067 195
+rect 5242 -7 5540 78
+<< metal2 >>
+rect 13891 38677 14940 38739
+rect 13891 34758 13939 38677
+rect 14834 34758 14940 38677
+tri 13491 19705 13891 20105 se
+rect 13891 19705 14940 34758
+rect 13491 19516 14940 19705
+rect 13496 14688 14940 19516
+rect 3372 1045 3526 2009
+rect 3372 287 4185 1045
+rect 98 0 4185 287
+rect 10707 715 11164 1901
+rect 3372 -7 4185 0
+rect 6888 -7 8888 58
+rect 10707 -7 14940 715
+<< via2 >>
+rect 185 34628 2657 38656
+rect 13939 34758 14834 38677
+<< metal3 >>
+rect 103 38656 2759 38720
+rect 103 34628 185 38656
+rect 2657 34628 2759 38656
+rect 13888 38677 14908 38743
+rect 13888 34758 13939 38677
+rect 14834 34758 14908 38677
+rect 13888 34664 14908 34758
+rect 103 34519 2759 34628
+rect 5354 16660 9453 16700
+rect 5354 15138 5394 16660
+rect 9413 15138 9453 16660
+rect 5354 15098 9453 15138
+rect 4900 11988 5245 13393
+rect 7313 11988 7706 13393
+rect 9819 11988 10151 13393
+rect 98 0 4900 862
+rect 5200 -7 7374 918
+rect 7676 -7 9850 918
+rect 10151 -7 14940 862
+<< via3 >>
+rect 185 34628 2657 38656
+rect 13939 34758 14834 38677
+rect 5394 15138 9413 16660
+<< metal4 >>
+rect 0 38720 254 39593
+rect 14746 38784 15000 39593
+rect 14746 38743 14820 38784
+rect 13888 38739 14820 38743
+rect 0 38656 2759 38720
+rect 0 34750 185 38656
+rect 103 34628 185 34750
+rect 2657 34628 2759 38656
+rect 13888 38677 15000 38739
+rect 13888 34758 13939 38677
+rect 14834 34758 15000 38677
+rect 13888 34750 15000 34758
+rect 13888 34664 14908 34750
+rect 103 34519 2759 34628
+rect 0 13600 254 18593
+rect 14746 13600 15000 18593
+rect 0 12410 254 13300
+rect 14746 12410 15000 13300
+rect 0 11240 254 12130
+rect 14746 11240 15000 12130
+rect 0 10874 254 10940
+rect 14746 10874 15000 10940
+rect 0 10218 100 10814
+rect 14746 10218 14846 10814
+rect 0 9922 254 10158
+rect 14746 9922 15000 10158
+rect 0 9266 116 9862
+rect 14746 9266 14862 9862
+rect 0 9140 254 9206
+rect 14746 9140 15000 9206
+rect 0 7910 254 8840
+rect 14746 7910 15000 8840
+rect 0 6940 254 7630
+rect 14746 6940 15000 7630
+rect 0 5970 254 6660
+rect 14746 5970 15000 6660
+rect 0 4760 254 5690
+rect 14746 4760 15000 5690
+rect 0 3550 254 4480
+rect 14746 3550 15000 4480
+rect 0 2580 254 3270
+rect 14746 2580 15000 3270
+rect 0 1370 254 2300
+rect 14746 1370 15000 2300
+rect 0 0 254 1090
+rect 14746 0 15000 1090
+<< metal5 >>
+rect 0 34750 254 39593
+rect 14746 38784 15000 39593
+rect 14746 38739 14820 38784
+rect 14746 34750 15000 38739
+rect 6339 32546 10468 33417
+rect 0 13600 254 18590
+rect 14746 13600 15000 18590
+rect 0 12430 254 13280
+rect 14746 12430 15000 13280
+rect 0 11260 254 12110
+rect 14746 11260 15000 12110
+rect 0 9140 254 10940
+rect 14746 9140 15000 10940
+rect 0 7930 254 8820
+rect 14746 7930 15000 8820
+rect 0 6960 254 7610
+rect 14746 6960 15000 7610
+rect 0 5990 254 6640
+rect 14746 5990 15000 6640
+rect 0 4780 254 5670
+rect 14746 4780 15000 5670
+rect 0 3570 254 4460
+rect 14746 3570 15000 4460
+rect 0 2600 254 3250
+rect 14746 2600 15000 3250
+rect 0 1390 254 2280
+rect 14746 1390 15000 2280
+rect 0 20 254 1070
+rect 14746 20 15000 1070
+use sky130_fd_io__overlay_vddio_lvc sky130_fd_io__overlay_vddio_lvc_0 $PDKPATH/libs.ref/sky130_fd_io/mag
+timestamp 1682189251
+transform 1 0 0 0 1 -7
+box 0 7 15000 39600
+use sky130_fd_io__top_power_lvc_wpad sky130_fd_io__top_power_lvc_wpad_2 $PDKPATH/libs.ref/sky130_fd_io/mag
+timestamp 1682189251
+transform 1 0 0 0 1 -7
+box 0 0 15000 39600
+<< labels >>
+flabel metal3 s 10151 -7 14940 862 0 FreeSans 4000 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal3 s 100 -7 4900 862 0 FreeSans 2000 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 14746 9140 15000 10940 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 14807 2600 15000 3250 3 FreeSans 520 180 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal5 s 14746 7930 15000 8820 3 FreeSans 520 180 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal5 s 14746 11260 15000 12110 3 FreeSans 520 180 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal5 s 14746 4780 15000 5670 3 FreeSans 520 180 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal5 s 14746 5990 15000 6640 3 FreeSans 520 180 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal5 s 14746 6961 15000 7610 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 14746 1390 15000 2280 3 FreeSans 520 180 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal5 s 14746 12430 15000 13280 3 FreeSans 520 180 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal5 s 14746 13600 15000 18590 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 14746 20 15000 1070 3 FreeSans 520 180 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal5 s 14746 3570 15000 4460 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 0 13600 254 18590 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 0 7930 254 8820 3 FreeSans 520 0 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal5 s 0 11260 254 12110 3 FreeSans 520 0 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal5 s 0 5990 254 6640 3 FreeSans 520 0 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal5 s 0 4780 254 5670 3 FreeSans 520 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal5 s 0 2600 193 3250 3 FreeSans 520 0 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal5 s 0 3570 254 4460 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 0 1390 254 2280 3 FreeSans 520 0 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal5 s 0 12430 254 13280 3 FreeSans 520 0 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal5 s 0 9140 254 10940 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 0 6961 254 7610 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 0 20 254 1070 3 FreeSans 520 0 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal4 s 14746 7910 15000 8840 3 FreeSans 520 180 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal4 s 14807 2580 15000 3270 3 FreeSans 520 180 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal4 s 14746 11240 15000 12130 3 FreeSans 520 180 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal4 s 14746 4760 15000 5690 3 FreeSans 520 180 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 14746 5970 15000 6660 3 FreeSans 520 180 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal4 s 14746 9922 15000 10158 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 10874 15000 10940 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 0 15000 1090 3 FreeSans 520 180 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal4 s 14746 3550 15000 4480 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 14746 9140 15000 9206 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 6940 15000 7630 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 12410 15000 13300 3 FreeSans 520 180 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal4 s 14746 1370 15000 2300 3 FreeSans 520 180 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal4 s 14746 9266 15000 9862 3 FreeSans 520 180 0 0 AMUXBUS_B
+port 1 nsew signal bidirectional
+flabel metal4 s 14746 34750 15000 39593 3 FreeSans 520 180 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 14746 10218 15000 10814 3 FreeSans 520 180 0 0 AMUXBUS_A
+port 0 nsew signal bidirectional
+flabel metal4 s 14746 13600 15000 18593 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 0 34750 254 39593 3 FreeSans 520 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 0 3550 254 4480 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 0 12410 254 13300 3 FreeSans 520 0 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal4 s 0 13600 254 18593 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 0 1370 254 2300 3 FreeSans 520 0 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal4 s 0 9140 254 9206 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 5970 254 6660 3 FreeSans 520 0 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal4 s 0 0 254 1090 3 FreeSans 520 0 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal4 s 0 9922 254 10158 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 11240 254 12130 3 FreeSans 520 0 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal4 s 0 4760 254 5690 3 FreeSans 520 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 0 2580 193 3270 3 FreeSans 520 0 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal4 s 0 10218 254 10814 3 FreeSans 520 0 0 0 AMUXBUS_A
+port 0 nsew signal bidirectional
+flabel metal4 s 0 10874 254 10940 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 6940 254 7630 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 7910 254 8840 3 FreeSans 520 0 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal4 s 0 9266 254 9862 3 FreeSans 520 0 0 0 AMUXBUS_B
+port 1 nsew signal bidirectional
+flabel metal5 s 6339 32546 10468 33417 0 FreeSans 2000 0 0 0 VDDIO_PAD
+port 7 nsew power bidirectional
+<< properties >>
+string FIXED_BBOX 0 0 15000 39593
+string LEFclass PAD POWER
+<< end >>
diff --git a/sky130/custom/sky130_fd_io/mag/sky130_ef_io__vssio_lvc_clamped_pad.mag b/sky130/custom/sky130_fd_io/mag/sky130_ef_io__vssio_lvc_clamped_pad.mag
new file mode 100644
index 0000000..9252ac0
--- /dev/null
+++ b/sky130/custom/sky130_fd_io/mag/sky130_ef_io__vssio_lvc_clamped_pad.mag
@@ -0,0 +1,269 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1682466484
+<< metal1 >>
+rect 6867 95 7067 195
+rect 5242 -7 5540 74
+<< metal2 >>
+rect 3372 1036 3526 2009
+rect 3372 287 4215 1036
+rect 100 0 4215 287
+rect 10707 715 11164 1901
+rect 3372 -7 4215 0
+rect 6888 -7 8888 58
+rect 10707 -7 14940 715
+<< via2 >>
+rect 316 12450 2258 38490
+rect 13868 12470 14780 14576
+rect 316 2266 2258 10944
+rect 11514 1059 13669 4095
+rect 13868 1056 14780 10936
+<< metal3 >>
+rect 4215 18485 4822 18525
+rect 4215 17920 4255 18485
+rect 4782 17920 4822 18485
+rect 9498 18470 10372 18510
+rect 9498 17989 9538 18470
+rect 10332 17989 10372 18470
+rect 4215 17880 4822 17920
+rect 6994 17912 7723 17952
+rect 9498 17949 10372 17989
+rect 5193 17569 5929 17609
+rect 5193 16920 5233 17569
+rect 5889 16920 5929 17569
+rect 5193 16880 5929 16920
+rect 6994 16844 7034 17912
+rect 7683 16844 7723 17912
+rect 8628 17645 9586 17685
+rect 8628 16905 8668 17645
+rect 9546 16905 9586 17645
+rect 8628 16865 9586 16905
+rect 6994 16804 7723 16844
+rect 5272 16664 7324 16704
+rect 5272 13696 5312 16664
+rect 7284 13696 7324 16664
+rect 7696 16688 9748 16728
+rect 7696 15434 7736 16688
+rect 7526 14364 7736 15434
+tri 7526 14214 7676 14364 ne
+rect 7676 13890 7736 14364
+rect 5272 13656 7324 13696
+rect 7696 13720 7736 13890
+rect 9708 15434 9748 16688
+rect 9708 15358 9774 15434
+tri 9774 15358 9850 15434 sw
+rect 9708 13890 9850 15358
+rect 9708 13720 9748 13890
+rect 7696 13680 9748 13720
+rect 98 339 4900 862
+rect 100 0 4900 339
+rect 5200 -7 7374 918
+rect 7676 -7 9850 918
+rect 10151 -7 14940 862
+<< via3 >>
+rect 4255 17920 4782 18485
+rect 9538 17989 10332 18470
+rect 5233 16920 5889 17569
+rect 7034 16844 7683 17912
+rect 8668 16905 9546 17645
+rect 5312 13696 7284 16664
+rect 7736 13720 9708 16688
+<< metal4 >>
+rect 0 34750 254 39593
+rect 14746 34750 15000 39593
+rect 0 13600 254 18593
+rect 14746 13600 15000 18593
+rect 0 12410 254 13300
+rect 14746 12410 15000 13300
+rect 0 11240 254 12130
+rect 14746 11240 15000 12130
+rect 0 10874 254 10940
+rect 14746 10874 15000 10940
+rect 0 10218 100 10814
+rect 14746 10218 14846 10814
+rect 0 9922 254 10158
+rect 14746 9922 15000 10158
+rect 0 9266 116 9862
+rect 14746 9266 14862 9862
+rect 0 9140 254 9206
+rect 14746 9140 15000 9206
+rect 0 7910 254 8840
+rect 14746 7910 15000 8840
+rect 0 6940 254 7630
+rect 14746 6940 15000 7630
+rect 0 5970 254 6660
+rect 14746 5970 15000 6660
+rect 0 4760 254 5690
+rect 14746 4760 15000 5690
+rect 0 3550 254 4480
+rect 14746 3550 15000 4480
+rect 0 2580 254 3270
+rect 14746 2580 15000 3270
+rect 0 1370 254 2300
+rect 14746 1370 15000 2300
+rect 0 0 254 1090
+rect 14746 0 15000 1090
+<< metal5 >>
+rect 0 34750 254 39593
+rect 14746 34750 15000 39593
+rect 6339 32546 10468 33417
+rect 0 13600 254 18590
+rect 14746 13600 15000 18590
+rect 0 12430 254 13280
+rect 14746 12430 15000 13280
+rect 0 11260 254 12110
+rect 14746 11260 15000 12110
+rect 0 9140 254 10940
+rect 14746 9140 15000 10940
+rect 0 7930 254 8820
+rect 14746 7930 15000 8820
+rect 0 6960 254 7610
+rect 14746 6960 15000 7610
+rect 0 5990 254 6640
+rect 14746 5990 15000 6640
+rect 0 4780 254 5670
+rect 14746 4780 15000 5670
+rect 0 3570 254 4460
+rect 14746 3570 15000 4460
+rect 0 2600 254 3250
+rect 14746 2600 15000 3250
+rect 0 1390 254 2280
+rect 14746 1390 15000 2280
+rect 0 20 254 1070
+rect 14746 20 15000 1070
+use sky130_fd_io__overlay_vssio_lvc sky130_fd_io__overlay_vssio_lvc_0 $PDKPATH/libs.ref/sky130_fd_io/mag
+timestamp 1682189251
+transform 1 0 0 0 1 -7
+box 0 7 15000 39600
+use sky130_fd_io__top_ground_lvc_wpad sky130_fd_io__top_ground_lvc_wpad_2 $PDKPATH/libs.ref/sky130_fd_io/mag
+timestamp 1682189251
+transform 1 0 0 0 1 -7
+box 0 0 15000 39600
+<< labels >>
+flabel metal3 s 10151 -7 14940 862 0 FreeSans 4000 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal3 s 100 -7 4900 862 0 FreeSans 2000 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal5 s 14746 9140 15000 10940 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 14807 2600 15000 3250 3 FreeSans 520 180 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal5 s 14746 7930 15000 8820 3 FreeSans 520 180 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal5 s 14746 11260 15000 12110 3 FreeSans 520 180 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal5 s 14746 4780 15000 5670 3 FreeSans 520 180 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal5 s 14746 5990 15000 6640 3 FreeSans 520 180 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal5 s 14746 6961 15000 7610 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 14746 1390 15000 2280 3 FreeSans 520 180 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal5 s 14746 12430 15000 13280 3 FreeSans 520 180 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal5 s 14746 13600 15000 18590 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 14746 20 15000 1070 3 FreeSans 520 180 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal5 s 14746 3570 15000 4460 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 0 13600 254 18590 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 0 7930 254 8820 3 FreeSans 520 0 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal5 s 0 11260 254 12110 3 FreeSans 520 0 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal5 s 0 5990 254 6640 3 FreeSans 520 0 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal5 s 0 4780 254 5670 3 FreeSans 520 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal5 s 0 2600 193 3250 3 FreeSans 520 0 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal5 s 0 3570 254 4460 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal5 s 0 1390 254 2280 3 FreeSans 520 0 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal5 s 0 12430 254 13280 3 FreeSans 520 0 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal5 s 0 9140 254 10940 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 0 6961 254 7610 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal5 s 0 20 254 1070 3 FreeSans 520 0 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal4 s 14746 7910 15000 8840 3 FreeSans 520 180 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal4 s 14807 2580 15000 3270 3 FreeSans 520 180 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal4 s 14746 11240 15000 12130 3 FreeSans 520 180 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal4 s 14746 4760 15000 5690 3 FreeSans 520 180 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 14746 5970 15000 6660 3 FreeSans 520 180 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal4 s 14746 9922 15000 10158 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 10874 15000 10940 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 0 15000 1090 3 FreeSans 520 180 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal4 s 14746 3550 15000 4480 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 14746 9140 15000 9206 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 6940 15000 7630 3 FreeSans 520 180 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 14746 12410 15000 13300 3 FreeSans 520 180 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal4 s 14746 1370 15000 2300 3 FreeSans 520 180 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal4 s 14746 9266 15000 9862 3 FreeSans 520 180 0 0 AMUXBUS_B
+port 1 nsew signal bidirectional
+flabel metal4 s 14746 34750 15000 39593 3 FreeSans 520 180 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 14746 10218 15000 10814 3 FreeSans 520 180 0 0 AMUXBUS_A
+port 0 nsew signal bidirectional
+flabel metal4 s 14746 13600 15000 18593 3 FreeSans 520 180 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 0 34750 254 39593 3 FreeSans 520 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 0 3550 254 4480 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 0 12410 254 13300 3 FreeSans 520 0 0 0 VDDIO_Q
+port 12 nsew power bidirectional
+flabel metal4 s 0 13600 254 18593 3 FreeSans 520 0 0 0 VDDIO
+port 14 nsew power bidirectional
+flabel metal4 s 0 1370 254 2300 3 FreeSans 520 0 0 0 VCCD
+port 15 nsew power bidirectional
+flabel metal4 s 0 9140 254 9206 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 5970 254 6660 3 FreeSans 520 0 0 0 VSWITCH
+port 11 nsew power bidirectional
+flabel metal4 s 0 0 254 1090 3 FreeSans 520 0 0 0 VCCHIB
+port 13 nsew power bidirectional
+flabel metal4 s 0 9922 254 10158 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 11240 254 12130 3 FreeSans 520 0 0 0 VSSIO_Q
+port 18 nsew ground bidirectional
+flabel metal4 s 0 4760 254 5690 3 FreeSans 520 0 0 0 VSSIO
+port 16 nsew ground bidirectional
+flabel metal4 s 0 2580 193 3270 3 FreeSans 520 0 0 0 VDDA
+port 10 nsew power bidirectional
+flabel metal4 s 0 10218 254 10814 3 FreeSans 520 0 0 0 AMUXBUS_A
+port 0 nsew signal bidirectional
+flabel metal4 s 0 10874 254 10940 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 6940 254 7630 3 FreeSans 520 0 0 0 VSSA
+port 9 nsew ground bidirectional
+flabel metal4 s 0 7910 254 8840 3 FreeSans 520 0 0 0 VSSD
+port 17 nsew ground bidirectional
+flabel metal4 s 0 9266 254 9862 3 FreeSans 520 0 0 0 AMUXBUS_B
+port 1 nsew signal bidirectional
+flabel metal5 s 6339 32546 10468 33417 0 FreeSans 2000 0 0 0 VSSIO_PAD
+port 7 nsew ground bidirectional
+<< properties >>
+string FIXED_BBOX 0 0 15000 39593
+string LEFclass PAD POWER
+<< end >>
diff --git a/sky130/magic/sky130.tech b/sky130/magic/sky130.tech
index ab4cf90..09608c7 100644
--- a/sky130/magic/sky130.tech
+++ b/sky130/magic/sky130.tech
@@ -3625,8 +3625,8 @@
labels CONT
layer fomfill FOMFILL
- or FOMFILLALT,DIFFFILLALT
- labels FOMFILL,FOMFILLALT,DIFFFILLALT
+ or DIFFFILLALT
+ labels FOMFILL,DIFFFILLALT
layer polyfill POLYFILL
or POLYFILLALT
@@ -4058,13 +4058,14 @@
# and FILLOBSM1,FILLOBSM2,FILLOBSM3,FILLOBSM4
# Use the obstruction types for fill block on individual layers
- templayer obspoly FILLOBSPOLY
+ templayer obspoly FILLOBSPOLY,POLYBLOCK
and-not POLY
+ labels FILLOBSPOLY
- layer obsactive FILLOBSFOM
+ layer obsactive FILLOBSFOM,DIFFBLOCK
and-not DIFF,TAP
or obspoly
- labels FILLOBSFOM,FILLOBSPOLY
+ labels FILLOBSFOM
layer obsli LIBLOCK
and-not LI
@@ -4299,7 +4300,6 @@
# Alternate layer purpose used for fill
# which uses the regular layer numbers.
- calma FOMFILLALT 22 99
calma DIFFFILLALT 65 99
calma POLYFILLALT 66 99
calma LIFILLALT 67 99
@@ -4312,6 +4312,8 @@
#endif
# Alternate layer purpose used for obstruction (fill block)
+ calma DIFFBLOCK 65 98
+ calma POLYBLOCK 66 98
calma LIBLOCK 67 98
calma MET1BLOCK 68 98
calma MET2BLOCK 69 98
diff --git a/sky130/magic/sky130gds.tech b/sky130/magic/sky130gds.tech
index 5f9d8b9..8da1ba9 100644
--- a/sky130/magic/sky130gds.tech
+++ b/sky130/magic/sky130gds.tech
@@ -764,6 +764,34 @@
labels MET5FILL
calma 59 28
+ layer DIFFBLOCK DIFFBLOCK
+ labels DIFFBLOCK
+ calma 22 24
+
+ layer POLYBLOCK POLYBLOCK
+ labels POLYBLOCK
+ calma 33 24
+
+ layer MET1BLOCK MET1BLOCK
+ labels MET1BLOCK
+ calma 62 24
+
+ layer MET2BLOCK MET2BLOCK
+ labels MET2BLOCK
+ calma 105 52
+
+ layer MET3BLOCK MET3BLOCK
+ labels MET3BLOCK
+ calma 107 24
+
+ layer MET4BLOCK MET4BLOCK
+ labels MET4BLOCK
+ calma 112 4
+
+ layer MET5BLOCK MET5BLOCK
+ labels MET5BLOCK
+ calma 117 4
+
variants (altfill)
layer DIFFFILL DIFFFILL
@@ -798,35 +826,35 @@
labels MET5FILL
calma 72 99
- variants *
-
layer DIFFBLOCK DIFFBLOCK
labels DIFFBLOCK
- calma 22 24
+ calma 65 98
layer POLYBLOCK POLYBLOCK
labels POLYBLOCK
- calma 33 24
+ calma 67 98
layer MET1BLOCK MET1BLOCK
labels MET1BLOCK
- calma 62 24
+ calma 68 98
layer MET2BLOCK MET2BLOCK
labels MET2BLOCK
- calma 105 52
+ calma 69 98
layer MET3BLOCK MET3BLOCK
labels MET3BLOCK
- calma 107 24
+ calma 70 98
layer MET4BLOCK MET4BLOCK
labels MET4BLOCK
- calma 112 4
+ calma 71 98
layer MET5BLOCK MET5BLOCK
labels MET5BLOCK
- calma 117 4
+ calma 72 98
+
+ variants *
layer LISHORT LISHORT
labels LISHORT
@@ -1455,7 +1483,7 @@
layer DIFFCUT DIFFCUT
layer DIFFRES DIFFRES
layer DIFFFILL DIFFFILL,ALTDIFFFILL
- layer DIFFBLOCK DIFFBLOCK
+ layer DIFFBLOCK DIFFBLOCK,ALTDIFFBLOCK
layer POLY POLY,POLYTXT,POLYPIN
labels POLY
@@ -1467,7 +1495,7 @@
layer POLYCUT POLYCUT
layer POLYGATE POLYGATE
layer POLYFILL POLYFILL,ALTPOLYFILL
- layer POLYBLOCK POLYBLOCK
+ layer POLYBLOCK POLYBLOCK,ALTPOLYBLOCK
layer POLYSHORT POLYSHORT
layer NPC NPC
@@ -1484,7 +1512,7 @@
layer LI1RES LI1RES
layer LI1FILL LI1FILL,ALTLI1FILL
- layer LIBLOCK LIBLOCK
+ layer LIBLOCK LIBLOCK,ALTLIBLOCK,OLDLIBLOCK
layer LISHORT LISHORT
layer MCON MCON
@@ -1496,7 +1524,7 @@
layer MET1RES MET1RES
layer MET1FILL MET1FILL,ALTMET1FILL
- layer MET1BLOCK MET1BLOCK
+ layer MET1BLOCK MET1BLOCK,ALTMET1BLOCK,OLDMET1BLOCK
layer MET1SHORT MET1SHORT
layer VIA1 VIA1
@@ -1508,7 +1536,7 @@
layer MET2RES MET2RES
layer MET2FILL MET2FILL,ALTMET2FILL
- layer MET2BLOCK MET2BLOCK
+ layer MET2BLOCK MET2BLOCK,ALTMET2BLOCK,OLDMET2BLOCK
layer MET2SHORT MET2SHORT
layer VIA2 VIA2
@@ -1520,7 +1548,7 @@
layer MET3RES MET3RES
layer MET3FILL MET3FILL,ALTMET3FILL
- layer MET3BLOCK MET3BLOCK
+ layer MET3BLOCK MET3BLOCK,ALTMET3BLOCK,OLDMET3BLOCK
layer MET3SHORT MET3SHORT
layer VIA3 VIA3
@@ -1532,7 +1560,7 @@
layer MET4RES MET4RES
layer MET4FILL MET4FILL,ALTMET4FILL
- layer MET4BLOCK MET4BLOCK
+ layer MET4BLOCK MET4BLOCK,ALTMET4BLOCK,OLDMET4BLOCK
layer MET4SHORT MET4SHORT
layer VIA4 VIA4
@@ -1544,7 +1572,7 @@
layer MET5RES MET5RES
layer MET5FILL MET5FILL,ALTMET5FILL
- layer MET5BLOCK MET5BLOCK
+ layer MET5BLOCK MET5BLOCK,ALTMET5BLOCK,OLDMET5BLOCK
layer MET5SHORT MET5SHORT
layer PAD PAD,PADTXT,PADPIN
@@ -1721,6 +1749,20 @@
calma ALTMET3FILL 70 99
calma ALTMET4FILL 71 99
calma ALTMET5FILL 72 99
+ calma ALTDIFFBLOCK 65 98
+ calma ALTPOLYBLOCK 66 98
+ calma ALTLIBLOCK 67 98
+ calma ALTMET1BLOCK 68 98
+ calma ALTMET2BLOCK 69 98
+ calma ALTMET3BLOCK 70 98
+ calma ALTMET4BLOCK 71 98
+ calma ALTMET5BLOCK 72 98
+ calma OLDLIBLOCK 67 10
+ calma OLDMET1BLOCK 68 10
+ calma OLDMET2BLOCK 69 10
+ calma OLDMET3BLOCK 70 10
+ calma OLDMET4BLOCK 71 10
+ calma OLDMET5BLOCK 72 10
end
diff --git a/sky130/sky130.json b/sky130/sky130.json
index 9b77492..caed36f 100644
--- a/sky130/sky130.json
+++ b/sky130/sky130.json
@@ -94,15 +94,15 @@
"magic": "MAGIC_COMMIT"
},
"reference": {
- "open_pdks": "a6917d83263b9cfc3a746415654c35ecf3fff3cb",
- "magic": "5ecc55b37d9c073340b2e815d5e7a79e7ed2ada8",
+ "open_pdks": "3863076405b31ae66bfc895a8cfe791706de9905",
+ "magic": "eb81da6c56ff200ba3d7ceab41cdba5fde32b513",
"sky130_fd_pr": "1232782c1b9fab3aacda74d67ce7c92bf7da8105",
- "sky130_fd_io": "b9c10d039816c4026f9a10cf8a200b9b5caa1b63",
+ "sky130_fd_io": "250b1ec4f69d70705359a1a0d25f8778046ff6b3",
"sky130_fd_sc_hs": "9a855e97aa75f8a14be7eadc365c28d50045d5fc",
"sky130_fd_sc_ms": "26d0047c0e2dbe28fe4950f171411f6e8b3d0564",
"sky130_fd_sc_ls": "8e7040bfc58a17386e3d900c0e3b9c9163545c4a",
"sky130_fd_sc_lp": "b93a1a75fa1b864872ebb0b078f6a2dd6e318d7c",
- "sky130_fd_sc_hd": "5a42fd01a0eeb2338340438443c7062e198d97a4",
+ "sky130_fd_sc_hd": "892688b66a3d7fc2839dead7209015f93ad9a73d",
"sky130_fd_sc_hdll": "d48faa83ef2d8573d85384c4eb019ab78295db0b",
"sky130_fd_sc_hvl": "5f544a6d5b9385ac563811e7a455b050eea5fb70",
"sky130_osu_sc_t12": "ac90ef0c622a9377a16b5218d9da3ac4169eeaaf",