Delete mag directory
diff --git a/mag/10bitdac_cap_layout_design.mag b/mag/10bitdac_cap_layout_design.mag
deleted file mode 100644
index c1ff8b0..0000000
--- a/mag/10bitdac_cap_layout_design.mag
+++ /dev/null
@@ -1,110 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1260 -1308 236578 113674
-<< locali >>
-rect 1224 111478 1280 111678
-rect 166990 55698 167030 58214
-rect 170054 56858 170108 57650
-rect 173560 56638 173644 58478
-rect 176982 54874 177048 58546
-rect 179826 56758 179890 57852
-rect 183168 54830 183216 58556
-rect 188400 54802 188470 58594
-rect 191890 54838 191964 58672
-rect 196096 54788 196172 79662
-rect 205436 57549 205476 57550
-rect 205436 57515 205439 57549
-rect 205473 57515 205476 57549
-rect 205436 57514 205476 57515
-rect 202790 57336 203012 57432
-rect 166000 5276 166054 5432
-<< viali >>
-rect 205439 57515 205473 57549
-<< metal1 >>
-rect 205430 57564 205602 57576
-rect 205430 57549 205547 57564
-rect 205430 57515 205439 57549
-rect 205473 57515 205547 57549
-rect 205430 57512 205547 57515
-rect 205599 57512 205602 57564
-rect 205430 57500 205602 57512
-rect 208338 52576 208562 52648
-<< via1 >>
-rect 205547 57512 205599 57564
-<< metal2 >>
-rect 196548 55424 196626 85814
-rect 205538 57568 205722 57578
-rect 205538 57564 205651 57568
-rect 205538 57512 205547 57564
-rect 205599 57512 205651 57564
-rect 205707 57512 205722 57568
-rect 205538 57500 205722 57512
-<< via2 >>
-rect 205651 57512 205707 57568
-<< metal3 >>
-rect 205750 57584 205862 57590
-rect 205638 57576 205862 57584
-rect 205638 57568 205771 57576
-rect 205638 57512 205651 57568
-rect 205707 57512 205771 57568
-rect 205835 57512 205862 57576
-rect 205638 57500 205862 57512
-rect 205750 57498 205862 57500
-rect 208338 52576 208562 52648
-<< via3 >>
-rect 205771 57512 205835 57576
-<< mimcapcontact >>
-rect 210209 57512 210273 57576
-<< metal4 >>
-rect 201970 58220 202162 83072
-rect 205764 57576 210286 57584
-rect 205764 57512 205771 57576
-rect 205835 57512 210209 57576
-rect 210273 57512 210286 57576
-rect 205764 57504 210286 57512
-rect 205764 57500 205956 57504
-use 10bitdac_layout 10bitdac_layout_0
-timestamp 1624221218
-transform 1 0 428 0 1 57644
-box -428 -57692 205056 54770
-use cap_28p cap_28p_0
-timestamp 1624221218
-transform 1 0 210498 0 1 53878
-box -1968 -2452 24820 24898
-<< labels >>
-rlabel metal4 s 207420 57532 207420 57532 4 out
-port 1 nsew
-flabel locali s 166000 5276 166054 5432 0 FreeSans 195 0 0 0 inp2
-port 2 nsew
-flabel locali s 1224 111478 1280 111678 0 FreeSans 195 0 0 0 inp1
-port 3 nsew
-flabel locali s 166990 55698 167030 58214 0 FreeSans 195 0 0 0 d0
-port 4 nsew
-flabel locali s 170054 56858 170108 57650 0 FreeSans 195 0 0 0 d1
-port 5 nsew
-flabel locali s 173560 56638 173644 58478 0 FreeSans 195 0 0 0 d2
-port 6 nsew
-flabel locali s 176982 54874 177048 58546 0 FreeSans 195 0 0 0 d3
-port 7 nsew
-flabel locali s 179826 56758 179890 57852 0 FreeSans 195 0 0 0 d4
-port 8 nsew
-flabel locali s 183168 54830 183216 58556 0 FreeSans 195 0 0 0 d5
-port 9 nsew
-flabel locali s 188400 54802 188470 58594 0 FreeSans 195 0 0 0 d6
-port 10 nsew
-flabel locali s 191890 54838 191964 58672 0 FreeSans 195 0 0 0 d7
-port 11 nsew
-flabel locali s 196096 54788 196172 79662 0 FreeSans 195 0 0 0 d8
-port 12 nsew
-flabel locali s 202790 57336 203012 57432 0 FreeSans 195 0 0 0 d9
-port 13 nsew
-flabel metal2 s 196548 55424 196626 85814 0 FreeSans 195 0 0 0 gnd!
-port 14 nsew
-flabel metal4 s 201970 58220 202162 83072 0 FreeSans 195 0 0 0 vdd!
-port 15 nsew
-<< properties >>
-string FIXED_BBOX 0 0 1748 1088
-<< end >>
diff --git a/mag/10bitdac_layout.mag b/mag/10bitdac_layout.mag
deleted file mode 100644
index a8d1e9d..0000000
--- a/mag/10bitdac_layout.mag
+++ /dev/null
@@ -1,625 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1688 -58952 206316 56030
-<< locali >>
-rect 796 53914 852 54034
-rect 198700 29356 204742 29418
-rect 195658 29180 196142 29254
-rect 195658 28902 195742 29180
-rect 195658 28868 195685 28902
-rect 195719 28868 195742 28902
-rect 195658 28848 195742 28868
-rect 195664 28608 195734 28638
-rect 195664 28574 195683 28608
-rect 195717 28574 195734 28608
-rect 195664 22018 195734 28574
-rect 204674 24878 204742 29356
-rect 204672 24802 204742 24878
-rect 195664 21966 195744 22018
-rect 165972 5160 166028 5278
-rect 166150 4802 166236 4972
-rect 166150 4768 166180 4802
-rect 166214 4768 166236 4802
-rect 166150 4766 166236 4768
-rect 169778 2000 169812 2036
-rect 169778 1990 169826 2000
-rect 166148 1950 166242 1962
-rect 166148 1928 166176 1950
-rect 166146 1916 166176 1928
-rect 166210 1916 166242 1950
-rect 166146 1896 166242 1916
-rect 166146 1212 166230 1896
-rect 166138 1199 166230 1212
-rect 169778 1206 169812 1990
-rect 173138 1268 173228 2234
-rect 173138 1234 173160 1268
-rect 173194 1234 173228 1268
-rect 166138 1165 166150 1199
-rect 166184 1165 166230 1199
-rect 166138 1162 166230 1165
-rect 166140 1160 166230 1162
-rect 169774 1194 169832 1206
-rect 173138 1202 173228 1234
-rect 176554 1241 176612 2398
-rect 179390 2076 179450 2602
-rect 179390 1988 179466 2076
-rect 176554 1207 176569 1241
-rect 176603 1207 176612 1241
-rect 169774 1160 169786 1194
-rect 169820 1160 169832 1194
-rect 176554 1192 176612 1207
-rect 179394 1224 179466 1988
-rect 179394 1190 179418 1224
-rect 179452 1190 179466 1224
-rect 179394 1170 179466 1190
-rect 182738 1232 182788 2766
-rect 182738 1198 182748 1232
-rect 182782 1198 182788 1232
-rect 182738 1180 182788 1198
-rect 187976 1238 188046 2962
-rect 187976 1204 187997 1238
-rect 188031 1204 188046 1238
-rect 187976 1176 188046 1204
-rect 166140 1158 166208 1160
-rect 169774 1150 169832 1160
-rect 166788 1014 166860 1022
-rect 169770 1018 169828 1032
-rect 191468 1028 191536 1124
-rect 166554 996 166870 1014
-rect 166138 976 166186 978
-rect 166138 942 166146 976
-rect 166180 942 166186 976
-rect 166554 962 166809 996
-rect 166843 962 166870 996
-rect 169770 984 169781 1018
-rect 169815 984 169828 1018
-rect 169770 972 169828 984
-rect 179402 1008 179474 1028
-rect 179402 974 179422 1008
-rect 179456 974 179474 1008
-rect 166554 942 166870 962
-rect 166138 924 166186 942
-rect 166138 268 166180 924
-rect 166558 570 166598 942
-rect 166788 940 166860 942
-rect 169776 906 169812 972
-rect 176554 941 176620 968
-rect 169616 866 169812 906
-rect 169620 758 169676 866
-rect 169776 862 169812 866
-rect 173132 878 173216 932
-rect 173132 844 173156 878
-rect 173190 844 173216 878
-rect 169620 712 169678 758
-rect 166558 530 166602 570
-rect 166122 222 166180 268
-rect 368 -2678 116520 -2670
-rect 166122 -2678 166170 222
-rect 166562 -1918 166602 530
-rect 169624 6 169678 712
-rect 169624 -34 169680 6
-rect 169626 -746 169680 -34
-rect 169626 -786 169682 -746
-rect 169628 -1456 169682 -786
-rect 173132 -916 173216 844
-rect 169626 -1538 169682 -1456
-rect 173130 -1006 173216 -916
-rect 176554 907 176569 941
-rect 176603 907 176620 941
-rect 166562 -1946 166610 -1918
-rect 368 -2716 166170 -2678
-rect 368 -2720 116520 -2716
-rect 368 -3772 424 -2720
-rect 166568 -2818 166610 -1946
-rect 166558 -2848 166630 -2818
-rect 166558 -2882 166573 -2848
-rect 166607 -2882 166630 -2848
-rect 166558 -2900 166630 -2882
-rect 169626 -2870 169680 -1538
-rect 173130 -2778 173208 -1006
-rect 173130 -2812 173156 -2778
-rect 173190 -2812 173208 -2778
-rect 173130 -2840 173208 -2812
-rect 176554 -2780 176620 907
-rect 179402 208 179474 974
-rect 187972 992 188042 1022
-rect 179398 122 179474 208
-rect 182740 948 182788 972
-rect 182740 914 182748 948
-rect 182782 914 182788 948
-rect 179398 -810 179462 122
-rect 176554 -2814 176569 -2780
-rect 176603 -2814 176620 -2780
-rect 176554 -2842 176620 -2814
-rect 179394 -886 179462 -810
-rect 179394 -2750 179458 -886
-rect 179394 -2784 179412 -2750
-rect 179446 -2784 179458 -2750
-rect 179394 -2836 179458 -2784
-rect 182740 -2812 182788 914
-rect 182738 -2816 182788 -2812
-rect 182738 -2850 182746 -2816
-rect 182780 -2850 182788 -2816
-rect 182738 -2864 182788 -2850
-rect 169626 -2904 169637 -2870
-rect 169671 -2904 169680 -2870
-rect 182740 -2880 182788 -2864
-rect 187972 958 187993 992
-rect 188027 958 188042 992
-rect 187972 -2850 188042 958
-rect 169626 -2916 169680 -2904
-rect 187972 -2884 187991 -2850
-rect 188025 -2884 188042 -2850
-rect 191462 -2815 191536 1028
-rect 191462 -2849 191479 -2815
-rect 191513 -2849 191536 -2815
-rect 191462 -2874 191536 -2849
-rect 195668 -2862 195744 21966
-rect 204672 190 204740 24802
-rect 204862 -96 205056 -74
-rect 204862 -130 204872 -96
-rect 204906 -130 205056 -96
-rect 204862 -144 205056 -130
-rect 202362 -308 202584 -212
-rect 204698 -996 204766 -552
-rect 187972 -2908 188042 -2884
-rect 195668 -2896 195690 -2862
-rect 195724 -2896 195744 -2862
-rect 195668 -2926 195744 -2896
-rect 204054 -1054 204766 -996
-rect 204054 -1060 204754 -1054
-rect 195662 -3104 195738 -3078
-rect 195662 -3138 195686 -3104
-rect 195720 -3138 195738 -3104
-rect 191448 -3223 191518 -3202
-rect 191448 -3257 191467 -3223
-rect 191501 -3257 191518 -3223
-rect 187970 -3608 188038 -3590
-rect 169616 -3652 169692 -3632
-rect 169616 -3686 169633 -3652
-rect 169667 -3686 169692 -3652
-rect 169616 -3702 169692 -3686
-rect 173128 -3690 173208 -3626
-rect 182744 -3650 182790 -3614
-rect 166560 -4454 166606 -4452
-rect 166550 -4460 166618 -4454
-rect 166550 -4490 166567 -4460
-rect 166552 -4494 166567 -4490
-rect 166601 -4494 166618 -4460
-rect 166552 -4506 166618 -4494
-rect 166566 -5002 166600 -4506
-rect 169620 -4736 169674 -3702
-rect 173128 -3724 173158 -3690
-rect 173192 -3724 173208 -3690
-rect 169618 -4752 169678 -4736
-rect 169618 -4786 169635 -4752
-rect 169669 -4786 169678 -4752
-rect 169618 -4794 169678 -4786
-rect 169624 -4944 169684 -4942
-rect 169622 -4955 169684 -4944
-rect 169622 -4989 169636 -4955
-rect 169670 -4989 169684 -4955
-rect 166566 -5020 166602 -5002
-rect 169622 -5006 169684 -4989
-rect 166566 -5022 166604 -5020
-rect 166566 -5036 166600 -5022
-rect 169624 -5536 169678 -5006
-rect 173128 -5284 173208 -3724
-rect 176548 -3690 176614 -3666
-rect 176548 -3724 176567 -3690
-rect 176601 -3724 176614 -3690
-rect 173134 -6614 173202 -5524
-rect 176548 -6294 176614 -3724
-rect 179398 -3712 179462 -3658
-rect 179398 -3746 179412 -3712
-rect 179446 -3746 179462 -3712
-rect 179398 -4462 179462 -3746
-rect 182744 -3684 182748 -3650
-rect 182782 -3684 182790 -3650
-rect 179398 -4752 179466 -4462
-rect 179402 -5508 179466 -4752
-rect 179402 -5556 179470 -5508
-rect 176548 -6328 176563 -6294
-rect 176597 -6328 176614 -6294
-rect 176548 -6356 176614 -6328
-rect 179406 -6536 179470 -5556
-rect 179402 -6602 179470 -6536
-rect 173134 -6616 173248 -6614
-rect 173134 -6656 173202 -6616
-rect 176554 -6763 176626 -6732
-rect 176554 -6797 176572 -6763
-rect 176606 -6797 176626 -6763
-rect 176554 -9876 176626 -6797
-rect 179402 -9612 179466 -6602
-rect 182744 -6958 182790 -3684
-rect 187970 -3642 187991 -3608
-rect 188025 -3642 188038 -3608
-rect 182744 -7010 182802 -6958
-rect 179402 -9646 179418 -9612
-rect 179452 -9646 179466 -9612
-rect 179402 -9660 179466 -9646
-rect 179400 -9844 179470 -9830
-rect 179400 -9878 179420 -9844
-rect 179454 -9878 179470 -9844
-rect 179400 -9896 179470 -9878
-rect 179402 -9956 179470 -9896
-rect 179406 -11952 179470 -9956
-rect 179402 -12004 179470 -11952
-rect 179402 -15108 179466 -12004
-rect 182748 -14804 182802 -7010
-rect 182748 -14818 182810 -14804
-rect 182748 -14852 182762 -14818
-rect 182796 -14852 182810 -14818
-rect 182748 -14862 182810 -14852
-rect 182748 -15050 182798 -15048
-rect 182742 -15062 182802 -15050
-rect 182742 -15096 182752 -15062
-rect 182786 -15096 182802 -15062
-rect 182742 -15108 182802 -15096
-rect 182748 -15822 182798 -15108
-rect 182748 -23716 182802 -15822
-rect 182748 -23774 182806 -23716
-rect 182752 -27720 182806 -23774
-rect 187970 -26430 188038 -3642
-rect 187970 -27264 188048 -26430
-rect 191448 -27726 191518 -3257
-rect 195662 -28022 195738 -3138
-rect 195664 -28404 195738 -28022
-rect 204054 -28274 204108 -1060
-rect 198296 -28336 204108 -28274
-rect 204054 -28338 204108 -28336
-rect 195664 -28406 195778 -28404
-rect 195664 -28488 195738 -28406
-rect 165560 -52582 165620 -52438
-<< viali >>
-rect 195685 28868 195719 28902
-rect 195683 28574 195717 28608
-rect 166180 4768 166214 4802
-rect 166176 1916 166210 1950
-rect 173160 1234 173194 1268
-rect 166150 1165 166184 1199
-rect 176569 1207 176603 1241
-rect 169786 1160 169820 1194
-rect 179418 1190 179452 1224
-rect 182748 1198 182782 1232
-rect 187997 1204 188031 1238
-rect 166146 942 166180 976
-rect 166809 962 166843 996
-rect 169781 984 169815 1018
-rect 179422 974 179456 1008
-rect 173156 844 173190 878
-rect 176569 907 176603 941
-rect 166573 -2882 166607 -2848
-rect 173156 -2812 173190 -2778
-rect 182748 914 182782 948
-rect 176569 -2814 176603 -2780
-rect 179412 -2784 179446 -2750
-rect 182746 -2850 182780 -2816
-rect 169637 -2904 169671 -2870
-rect 187993 958 188027 992
-rect 187991 -2884 188025 -2850
-rect 191479 -2849 191513 -2815
-rect 204872 -130 204906 -96
-rect 195690 -2896 195724 -2862
-rect 195686 -3138 195720 -3104
-rect 191467 -3257 191501 -3223
-rect 169633 -3686 169667 -3652
-rect 166567 -4494 166601 -4460
-rect 173158 -3724 173192 -3690
-rect 169635 -4786 169669 -4752
-rect 169636 -4989 169670 -4955
-rect 176567 -3724 176601 -3690
-rect 179412 -3746 179446 -3712
-rect 182748 -3684 182782 -3650
-rect 176563 -6328 176597 -6294
-rect 176572 -6797 176606 -6763
-rect 187991 -3642 188025 -3608
-rect 179418 -9646 179452 -9612
-rect 179420 -9878 179454 -9844
-rect 182762 -14852 182796 -14818
-rect 182752 -15096 182786 -15062
-<< metal1 >>
-rect 195658 28902 195742 28922
-rect 195658 28868 195685 28902
-rect 195719 28868 195742 28902
-rect 195658 28608 195742 28868
-rect 195658 28574 195683 28608
-rect 195717 28574 195742 28608
-rect 195658 28548 195742 28574
-rect 166150 4802 166238 4810
-rect 166150 4768 166180 4802
-rect 166214 4768 166238 4802
-rect 166150 1950 166238 4768
-rect 166150 1916 166176 1950
-rect 166210 1916 166238 1950
-rect 166150 1896 166238 1916
-rect 166798 1954 166838 3114
-rect 166798 1844 166844 1954
-rect 166138 1208 166206 1212
-rect 166138 1199 166208 1208
-rect 166138 1165 166150 1199
-rect 166184 1165 166208 1199
-rect 166138 1162 166208 1165
-rect 166140 1158 166208 1162
-rect 166140 976 166186 1158
-rect 166802 1022 166844 1844
-rect 173132 1268 173222 1334
-rect 173132 1234 173160 1268
-rect 173194 1234 173222 1268
-rect 169774 1194 169832 1206
-rect 169774 1160 169786 1194
-rect 169820 1160 169832 1194
-rect 169774 1150 169832 1160
-rect 169778 1032 169814 1150
-rect 166138 942 166146 976
-rect 166180 942 166186 976
-rect 166138 924 166186 942
-rect 166788 996 166860 1022
-rect 166788 962 166809 996
-rect 166843 962 166860 996
-rect 169770 1018 169828 1032
-rect 169770 984 169781 1018
-rect 169815 984 169828 1018
-rect 169770 972 169828 984
-rect 166788 940 166860 962
-rect 173132 878 173222 1234
-rect 176548 1241 176620 1292
-rect 176548 1207 176569 1241
-rect 176603 1207 176620 1241
-rect 176548 941 176620 1207
-rect 179402 1224 179470 1244
-rect 179402 1190 179418 1224
-rect 179452 1190 179470 1224
-rect 179402 1008 179470 1190
-rect 179402 974 179422 1008
-rect 179456 974 179470 1008
-rect 179402 948 179470 974
-rect 182738 1232 182788 1256
-rect 182738 1198 182748 1232
-rect 182782 1198 182788 1232
-rect 182738 948 182788 1198
-rect 176548 907 176569 941
-rect 176603 907 176620 941
-rect 176548 884 176620 907
-rect 182738 914 182748 948
-rect 182782 914 182788 948
-rect 187976 1238 188046 1266
-rect 187976 1204 187997 1238
-rect 188031 1204 188046 1238
-rect 187976 992 188046 1204
-rect 187976 958 187993 992
-rect 188027 958 188046 992
-rect 187976 934 188046 958
-rect 182738 898 182788 914
-rect 173132 844 173156 878
-rect 173190 844 173222 878
-rect 173132 806 173222 844
-rect 203326 230 203420 238
-rect 203326 178 203361 230
-rect 203413 178 203420 230
-rect 203326 164 203420 178
-rect 204864 -96 204922 -74
-rect 204864 -130 204872 -96
-rect 204906 -130 204922 -96
-rect 204864 -146 204922 -130
-rect 202616 -542 202694 -498
-rect 202616 -594 202630 -542
-rect 202682 -594 202694 -542
-rect 202616 -630 202694 -594
-rect 173130 -2778 173208 -2732
-rect 179394 -2750 179458 -2688
-rect 173130 -2812 173156 -2778
-rect 173190 -2812 173208 -2778
-rect 166558 -2848 166630 -2818
-rect 166558 -2882 166573 -2848
-rect 166607 -2882 166630 -2848
-rect 166558 -2900 166630 -2882
-rect 169622 -2870 169682 -2854
-rect 166566 -4328 166594 -2900
-rect 169622 -2904 169637 -2870
-rect 169671 -2904 169682 -2870
-rect 169622 -2918 169682 -2904
-rect 169624 -3632 169678 -2918
-rect 169616 -3652 169692 -3632
-rect 169616 -3686 169633 -3652
-rect 169667 -3686 169692 -3652
-rect 169616 -3702 169692 -3686
-rect 173130 -3690 173208 -2812
-rect 173130 -3724 173158 -3690
-rect 173192 -3724 173208 -3690
-rect 173130 -3798 173208 -3724
-rect 176548 -2780 176624 -2754
-rect 176548 -2814 176569 -2780
-rect 176603 -2814 176624 -2780
-rect 176548 -3690 176624 -2814
-rect 176548 -3724 176567 -3690
-rect 176601 -3724 176624 -3690
-rect 176548 -3750 176624 -3724
-rect 179394 -2784 179412 -2750
-rect 179446 -2784 179458 -2750
-rect 179394 -3712 179458 -2784
-rect 182742 -2804 182784 -2796
-rect 182740 -2812 182788 -2804
-rect 182738 -2816 182788 -2812
-rect 182738 -2850 182746 -2816
-rect 182780 -2850 182788 -2816
-rect 191452 -2815 191532 -2770
-rect 182738 -2856 182788 -2850
-rect 187970 -2850 188048 -2826
-rect 182738 -2864 182786 -2856
-rect 182742 -3642 182784 -2864
-rect 187970 -2884 187991 -2850
-rect 188025 -2884 188048 -2850
-rect 187970 -3608 188048 -2884
-rect 191452 -2849 191479 -2815
-rect 191513 -2849 191532 -2815
-rect 191452 -3223 191532 -2849
-rect 195660 -2862 195744 -2816
-rect 195660 -2896 195690 -2862
-rect 195724 -2896 195744 -2862
-rect 195660 -3104 195744 -2896
-rect 195660 -3138 195686 -3104
-rect 195720 -3138 195744 -3104
-rect 195660 -3160 195744 -3138
-rect 191452 -3257 191467 -3223
-rect 191501 -3257 191532 -3223
-rect 191452 -3284 191532 -3257
-rect 187970 -3642 187991 -3608
-rect 188025 -3642 188048 -3608
-rect 182742 -3650 182792 -3642
-rect 182742 -3684 182748 -3650
-rect 182782 -3684 182792 -3650
-rect 187970 -3666 188048 -3642
-rect 182742 -3694 182792 -3684
-rect 182742 -3704 182784 -3694
-rect 179394 -3746 179412 -3712
-rect 179446 -3746 179458 -3712
-rect 179394 -3782 179458 -3746
-rect 166566 -4452 166602 -4328
-rect 166560 -4454 166606 -4452
-rect 166550 -4460 166618 -4454
-rect 166550 -4490 166567 -4460
-rect 166552 -4494 166567 -4490
-rect 166601 -4494 166618 -4460
-rect 166552 -4506 166618 -4494
-rect 169618 -4752 169678 -4736
-rect 169618 -4786 169635 -4752
-rect 169669 -4786 169678 -4752
-rect 169618 -4794 169678 -4786
-rect 169624 -4942 169676 -4794
-rect 169624 -4944 169684 -4942
-rect 169622 -4955 169684 -4944
-rect 169622 -4989 169636 -4955
-rect 169670 -4989 169684 -4955
-rect 169622 -5006 169684 -4989
-rect 173128 -5604 173204 -5190
-rect 176546 -6294 176622 -6246
-rect 176546 -6328 176563 -6294
-rect 176597 -6328 176622 -6294
-rect 176546 -6730 176622 -6328
-rect 176546 -6763 176626 -6730
-rect 176546 -6797 176572 -6763
-rect 176606 -6797 176626 -6763
-rect 176546 -6816 176626 -6797
-rect 176548 -6820 176626 -6816
-rect 179400 -9612 179468 -9590
-rect 179400 -9646 179418 -9612
-rect 179452 -9646 179468 -9612
-rect 179400 -9830 179468 -9646
-rect 179400 -9844 179470 -9830
-rect 179400 -9878 179420 -9844
-rect 179454 -9878 179470 -9844
-rect 179400 -9896 179470 -9878
-rect 182750 -14818 182810 -14804
-rect 182748 -14852 182762 -14818
-rect 182796 -14852 182810 -14818
-rect 182748 -14862 182810 -14852
-rect 182748 -15050 182800 -14862
-rect 182742 -15062 182802 -15050
-rect 182742 -15096 182752 -15062
-rect 182786 -15096 182802 -15062
-rect 182742 -15108 182802 -15096
-<< via1 >>
-rect 203361 178 203413 230
-rect 202630 -594 202682 -542
-<< metal2 >>
-rect 196108 28170 196194 28938
-rect 196108 27644 196198 28170
-rect 167888 -2118 168006 -2108
-rect 196120 -2118 196198 27644
-rect 203350 322 203432 332
-rect 203348 315 203432 322
-rect 203348 259 203363 315
-rect 203419 259 203432 315
-rect 203348 242 203432 259
-rect 203348 230 203420 242
-rect 203348 178 203361 230
-rect 203413 178 203420 230
-rect 203348 164 203420 178
-rect 202496 -530 202556 -522
-rect 202496 -542 202688 -530
-rect 202496 -594 202630 -542
-rect 202682 -594 202688 -542
-rect 202496 -600 202688 -594
-rect 202496 -2118 202556 -600
-rect 167888 -2198 202556 -2118
-rect 167888 -3814 168006 -2198
-rect 196120 -2220 196198 -2198
-<< via2 >>
-rect 203363 259 203419 315
-<< metal3 >>
-rect 203346 435 203422 468
-rect 203346 378 203354 435
-rect 203348 371 203354 378
-rect 203418 424 203422 435
-rect 203418 371 203430 424
-rect 203348 336 203430 371
-rect 203350 315 203430 336
-rect 203350 259 203363 315
-rect 203419 259 203430 315
-rect 203350 242 203430 259
-<< via3 >>
-rect 203354 371 203418 435
-<< metal4 >>
-rect 201162 31044 201518 31050
-rect 197054 30978 201640 31044
-rect 201162 30968 201640 30978
-rect 201540 25428 201640 30968
-rect 201540 25220 201734 25428
-rect 201542 648 201734 25220
-rect 201542 576 203420 648
-rect 201554 414 201720 576
-rect 203348 516 203420 576
-rect 203346 496 203420 516
-rect 203346 435 203422 496
-rect 201554 314 201724 414
-rect 203346 371 203354 435
-rect 203418 424 203422 435
-rect 203418 371 203434 424
-rect 203346 352 203434 371
-rect 166934 -1628 167402 -1624
-rect 201558 -1628 201724 314
-rect 166934 -1828 201724 -1628
-rect 166946 -2842 167064 -1828
-rect 166936 -2912 167064 -2842
-rect 166936 -4012 167054 -2912
-use 9bitdac_layout 9bitdac_layout_0
-timestamp 1624221218
-transform 1 0 0 0 1 1976
-box 0 -1976 198772 52794
-use 9bitdac_layout 9bitdac_layout_1
-timestamp 1624221218
-transform 1 0 -428 0 1 -55716
-box 0 -1976 198772 52794
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 202454 0 1 -818
-box 40 172 2460 1180
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 1 0 165760 0 1 5268
-box 218 -342 484 -90
-<< labels >>
-rlabel locali s 166002 5196 166002 5196 4 x1_vref5
-rlabel locali s 166178 4858 166178 4858 4 x2_vref1
-rlabel locali s 165594 -52506 165594 -52506 4 inp2
-rlabel locali s 830 53968 830 53968 4 inp1
-rlabel locali s 202424 -280 202424 -280 4 d9
-rlabel locali s 204962 -118 204962 -118 4 out_v
-rlabel metal2 s 202538 -566 202538 -566 4 gnd!
-rlabel metal4 s 203376 488 203376 488 4 vdd!
-rlabel locali s 204708 432 204708 432 4 x1_out_v
-rlabel locali s 204730 -712 204730 -712 4 x2_out_v
-rlabel locali s 166580 414 166580 414 4 d0
-rlabel locali s 169642 144 169642 144 4 d1
-rlabel locali s 173170 -566 173170 -566 4 d2
-rlabel locali s 176582 -860 176582 -860 4 d3
-rlabel locali s 179432 -344 179432 -344 4 d4
-rlabel locali s 182764 -170 182764 -170 4 d5
-rlabel locali s 188000 -138 188000 -138 4 d6
-rlabel locali s 191500 -950 191500 -950 4 d7
-rlabel locali s 195706 -1220 195706 -1220 4 d8
-<< end >>
diff --git a/mag/2bitdac_layout.mag b/mag/2bitdac_layout.mag
deleted file mode 100644
index b4f3899..0000000
--- a/mag/2bitdac_layout.mag
+++ /dev/null
@@ -1,346 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1270 -2558 7762 2690
-<< locali >>
-rect 400 1308 2254 1310
-rect 2630 1308 3014 1310
-rect 400 1270 3014 1308
-rect 400 1268 2872 1270
-rect 400 1066 442 1268
-rect 2252 1266 2632 1268
-rect 170 738 220 986
-rect 400 864 440 1066
-rect 2978 1060 3014 1270
-rect 150 438 200 538
-rect 402 438 440 864
-rect 3424 854 3468 856
-rect 3424 816 6160 854
-rect 3424 790 3468 816
-rect 3132 778 3468 790
-rect 3132 744 3145 778
-rect 3179 744 3468 778
-rect 3132 730 3468 744
-rect 3132 728 3464 730
-rect 778 658 816 662
-rect 150 398 440 438
-rect 768 410 816 658
-rect 6110 576 6160 816
-rect 150 290 200 398
-rect 672 170 728 184
-rect 390 169 728 170
-rect 390 135 682 169
-rect 716 135 728 169
-rect 768 168 818 410
-rect 908 176 964 182
-rect 2998 176 3056 306
-rect 6272 294 6502 306
-rect 6272 260 6281 294
-rect 6315 260 6502 294
-rect 6272 242 6502 260
-rect 908 174 3056 176
-rect 390 130 728 135
-rect 148 0 204 92
-rect 390 0 436 130
-rect 672 118 728 130
-rect 772 128 818 168
-rect 904 165 3056 174
-rect 904 131 918 165
-rect 952 131 3056 165
-rect 904 128 3056 131
-rect 772 124 816 128
-rect 668 6 722 20
-rect 668 4 678 6
-rect 148 -42 436 0
-rect 546 -28 678 4
-rect 712 -28 722 6
-rect 546 -40 722 -28
-rect 148 -340 204 -42
-rect 546 -202 590 -40
-rect 668 -46 722 -40
-rect 770 12 816 124
-rect 908 126 3056 128
-rect 908 124 3048 126
-rect 908 116 964 124
-rect 3832 78 4062 180
-rect 894 12 952 22
-rect 770 -26 818 12
-rect 894 8 3044 12
-rect 894 -26 904 8
-rect 938 -24 3044 8
-rect 938 -26 952 -24
-rect 1862 -26 2588 -24
-rect 770 -120 816 -26
-rect 894 -44 952 -26
-rect 696 -164 816 -120
-rect 192 -342 204 -340
-rect 166 -632 260 -542
-rect 200 -712 260 -632
-rect 544 -708 590 -202
-rect 768 -706 816 -164
-rect 3004 -222 3044 -24
-rect 6156 -482 6196 -172
-rect 4644 -486 4882 -484
-rect 5080 -486 5318 -484
-rect 5524 -486 5762 -484
-rect 5960 -486 6198 -482
-rect 4202 -488 6198 -486
-rect 3524 -492 3762 -490
-rect 3980 -492 6198 -488
-rect 3156 -509 6198 -492
-rect 3156 -543 3170 -509
-rect 3204 -538 6198 -509
-rect 3204 -540 5988 -538
-rect 3204 -542 4662 -540
-rect 4864 -542 5102 -540
-rect 5294 -542 5532 -540
-rect 5750 -542 5988 -540
-rect 3204 -543 4218 -542
-rect 3156 -544 4218 -543
-rect 3156 -546 3990 -544
-rect 3156 -548 3534 -546
-rect 3752 -548 3990 -546
-rect 3156 -550 3300 -548
-rect 358 -712 590 -708
-rect 776 -712 816 -706
-rect 200 -748 590 -712
-rect 200 -750 330 -748
-rect 200 -908 260 -750
-rect -10 -1140 40 -986
-rect 1584 -1098 1952 -1096
-rect 3034 -1098 3068 -972
-rect 332 -1100 380 -1098
-rect 548 -1100 3068 -1098
-rect 332 -1132 3068 -1100
-rect 332 -1134 2634 -1132
-rect 330 -1136 1594 -1134
-rect 1904 -1136 2634 -1134
-rect 330 -1138 704 -1136
-rect 330 -1140 380 -1138
-rect -10 -1174 380 -1140
-rect -10 -1234 40 -1174
-<< viali >>
-rect 3145 744 3179 778
-rect 682 135 716 169
-rect 6281 260 6315 294
-rect 918 131 952 165
-rect 678 -28 712 6
-rect 904 -26 938 8
-rect 3170 -543 3204 -509
-<< metal1 >>
-rect 1602 1126 1622 1200
-rect 1602 1124 1682 1126
-rect 1602 1106 1694 1124
-rect 1602 1054 1630 1106
-rect 1682 1054 1694 1106
-rect 1602 1036 1694 1054
-rect 3144 778 3180 780
-rect 3144 744 3145 778
-rect 3179 744 3180 778
-rect 3144 742 3180 744
-rect 4742 620 4864 642
-rect 4742 568 4789 620
-rect 4841 568 4864 620
-rect 4742 548 4864 568
-rect 906 327 966 374
-rect 906 275 909 327
-rect 961 275 966 327
-rect 906 230 966 275
-rect 6280 294 6316 296
-rect 6280 260 6281 294
-rect 6315 260 6316 294
-rect 6280 258 6316 260
-rect 672 169 728 184
-rect 908 176 964 182
-rect 672 168 682 169
-rect 670 135 682 168
-rect 716 168 728 169
-rect 904 168 966 176
-rect 716 165 966 168
-rect 716 135 918 165
-rect 670 131 918 135
-rect 952 131 966 165
-rect 670 130 966 131
-rect 670 128 964 130
-rect 672 118 728 128
-rect 908 116 964 128
-rect 668 12 722 20
-rect 894 12 952 22
-rect 668 8 952 12
-rect 668 6 904 8
-rect 668 -28 678 6
-rect 712 -26 904 6
-rect 938 -26 952 8
-rect 712 -28 722 -26
-rect 668 -46 722 -28
-rect 894 -44 952 -26
-rect 1644 -177 1732 -154
-rect 1644 -229 1665 -177
-rect 1717 -229 1732 -177
-rect 1644 -248 1732 -229
-rect 4030 -173 4112 -108
-rect 4030 -225 4039 -173
-rect 4091 -225 4112 -173
-rect 4030 -250 4112 -225
-rect 4058 -252 4112 -250
-rect 3170 -509 3204 -508
-rect 3170 -544 3204 -543
-rect 942 -955 1002 -904
-rect 942 -1007 943 -955
-rect 995 -1007 1002 -955
-rect 942 -1048 1002 -1007
-<< via1 >>
-rect 1630 1054 1682 1106
-rect 4789 568 4841 620
-rect 909 275 961 327
-rect 1665 -229 1717 -177
-rect 4039 -225 4091 -173
-rect 943 -1007 995 -955
-<< metal2 >>
-rect 1622 1202 1706 1234
-rect 1622 1146 1635 1202
-rect 1691 1146 1706 1202
-rect 1622 1130 1706 1146
-rect 1622 1106 1694 1130
-rect 1622 1054 1630 1106
-rect 1682 1054 1694 1106
-rect 1622 1034 1694 1054
-rect 4766 721 4866 752
-rect 4766 665 4788 721
-rect 4844 665 4866 721
-rect 4766 620 4866 665
-rect 4766 568 4789 620
-rect 4841 568 4866 620
-rect 4766 548 4866 568
-rect 872 327 968 338
-rect 872 275 909 327
-rect 961 275 968 327
-rect 872 258 968 275
-rect 872 -936 910 258
-rect 1656 -83 1732 -66
-rect 1656 -139 1665 -83
-rect 1721 -139 1732 -83
-rect 1656 -177 1732 -139
-rect 4000 -162 4042 -160
-rect 3910 -170 4094 -162
-rect 1656 -229 1665 -177
-rect 1717 -229 1732 -177
-rect 1656 -248 1732 -229
-rect 3900 -173 4094 -170
-rect 3900 -225 4039 -173
-rect 4091 -178 4094 -173
-rect 4091 -225 4096 -178
-rect 3900 -232 4096 -225
-rect 3900 -238 4094 -232
-rect 3900 -684 3948 -238
-rect 4000 -240 4042 -238
-rect 3900 -914 3950 -684
-rect 872 -942 922 -936
-rect 872 -955 1002 -942
-rect 872 -1007 943 -955
-rect 995 -1007 1002 -955
-rect 872 -1022 1002 -1007
-rect 874 -1250 922 -1022
-rect 3902 -1250 3950 -914
-rect 874 -1284 3950 -1250
-rect 874 -1298 3896 -1284
-<< via2 >>
-rect 1635 1146 1691 1202
-rect 4788 665 4844 721
-rect 1665 -139 1721 -83
-<< metal3 >>
-rect 1620 1402 1728 1426
-rect 1620 1338 1636 1402
-rect 1700 1338 1728 1402
-rect 1620 1316 1728 1338
-rect 1622 1234 1702 1316
-rect 1622 1202 1706 1234
-rect 1622 1146 1635 1202
-rect 1691 1146 1706 1202
-rect 1622 1130 1706 1146
-rect 1622 1126 1694 1130
-rect 4766 940 4868 956
-rect 4766 876 4784 940
-rect 4848 876 4868 940
-rect 4766 858 4868 876
-rect 4766 721 4866 858
-rect 4766 665 4788 721
-rect 4844 665 4866 721
-rect 4766 642 4866 665
-rect 1656 89 1746 104
-rect 1656 25 1668 89
-rect 1732 25 1746 89
-rect 1656 18 1746 25
-rect 1656 -83 1744 18
-rect 1656 -139 1665 -83
-rect 1721 -139 1744 -83
-rect 1656 -154 1744 -139
-<< via3 >>
-rect 1636 1338 1700 1402
-rect 4784 876 4848 940
-rect 1668 25 1732 89
-<< metal4 >>
-rect 2188 1426 4042 1428
-rect 4488 1426 4870 1430
-rect 1622 1402 4870 1426
-rect 1622 1338 1636 1402
-rect 1700 1338 4870 1402
-rect 1622 1322 4870 1338
-rect 1622 1320 4504 1322
-rect 1622 1318 2190 1320
-rect 4032 1318 4504 1320
-rect 1744 102 1854 1318
-rect 4766 956 4864 1322
-rect 4766 940 4868 956
-rect 4766 876 4784 940
-rect 4848 876 4868 940
-rect 4766 858 4868 876
-rect 1656 89 1854 102
-rect 1656 25 1668 89
-rect 1732 25 1854 89
-rect 1656 22 1854 25
-rect 1656 18 1772 22
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 3868 0 1 -434
-box 40 172 2460 1180
-use switch_layout switch_layout_1
-timestamp 1624221218
-transform 1 0 764 0 1 -1230
-box 40 172 2460 1180
-use switch_layout switch_layout_2
-timestamp 1624221218
-transform 1 0 732 0 1 50
-box 40 172 2460 1180
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 0 1 340 -1 0 -598
-box 218 -342 484 -90
-use res500_layout res500_layout_0
-timestamp 1624221218
-transform 0 1 296 -1 0 1046
-box 218 -288 598 -90
-use res500_layout res500_layout_1
-timestamp 1624221218
-transform 0 1 288 -1 0 -34
-box 218 -288 598 -90
-use res500_layout res500_layout_2
-timestamp 1624221218
-transform 0 1 288 -1 0 598
-box 218 -288 598 -90
-<< labels >>
-rlabel locali s 200 816 200 816 4 vref1
-rlabel locali s 196 412 196 412 4 x1_inp1
-rlabel locali s 160 -128 160 -128 4 x1_inp2
-rlabel locali s 244 -730 244 -730 4 x2_inp1
-rlabel locali s 6 -1154 6 -1154 4 vref5
-rlabel locali s 780 -162 780 -162 4 d0
-rlabel locali s 3868 120 3868 120 4 d1
-rlabel locali s 3302 754 3302 754 4 x1_vout
-rlabel locali s 3530 -520 3530 -520 4 x2_vout
-rlabel locali s 6396 274 6396 274 4 out_v
-rlabel metal4 s 2236 1374 2236 1374 4 vdd!
-rlabel metal2 s 2062 -1274 2062 -1274 4 gnd!
-<< end >>
diff --git a/mag/3bitdac_layout.mag b/mag/3bitdac_layout.mag
deleted file mode 100644
index af391fe..0000000
--- a/mag/3bitdac_layout.mag
+++ /dev/null
@@ -1,196 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1314 -4320 11380 3924
-<< locali >>
-rect 180 2182 232 2372
-rect 8780 1550 9674 1556
-rect 6592 1544 9674 1550
-rect 6458 1474 9674 1544
-rect 6458 1468 8854 1474
-rect 6458 1466 6636 1468
-rect 3838 959 3938 1414
-rect 3838 925 3870 959
-rect 3904 925 3938 959
-rect 3838 884 3938 925
-rect 9598 702 9670 1474
-rect 742 269 838 568
-rect 742 235 768 269
-rect 802 235 838 269
-rect 742 198 838 235
-rect 3802 523 3934 542
-rect 3802 489 3870 523
-rect 3904 489 3934 523
-rect 0 -18 208 16
-rect 170 -278 208 -18
-rect -54 -612 -16 -360
-rect 746 -499 838 -476
-rect 746 -533 776 -499
-rect 810 -533 838 -499
-rect 146 -612 200 -610
-rect -54 -654 200 -612
-rect 146 -696 200 -654
-rect 746 -624 838 -533
-rect 3802 -623 3934 489
-rect 9786 417 10120 434
-rect 9786 383 9805 417
-rect 9839 383 10120 417
-rect 9786 372 10120 383
-rect 7348 208 7494 300
-rect 746 -994 842 -624
-rect 3802 -657 3838 -623
-rect 3872 -657 3934 -623
-rect 3802 -684 3934 -657
-rect 3808 -1053 3908 -1038
-rect 3808 -1087 3840 -1053
-rect 3874 -1087 3908 -1053
-rect 3808 -1568 3908 -1087
-rect 9640 -1334 9708 -36
-rect 9526 -1338 9718 -1334
-rect 6422 -1342 7278 -1340
-rect 8758 -1342 9718 -1338
-rect 6422 -1406 9718 -1342
-rect 6422 -1408 8850 -1406
-rect 7220 -1410 8850 -1408
-rect 9526 -1414 9718 -1406
-rect 9640 -1416 9708 -1414
-rect -32 -2936 20 -2818
-rect -36 -3060 24 -2936
-<< viali >>
-rect 3870 925 3904 959
-rect 768 235 802 269
-rect 3870 489 3904 523
-rect 776 -533 810 -499
-rect 9805 383 9839 417
-rect 3838 -657 3872 -623
-rect 3840 -1087 3874 -1053
-<< metal1 >>
-rect 3834 959 3934 994
-rect 3834 925 3870 959
-rect 3904 925 3934 959
-rect 3834 523 3934 925
-rect 8272 734 8378 752
-rect 8272 682 8305 734
-rect 8357 682 8378 734
-rect 8272 670 8378 682
-rect 3834 489 3870 523
-rect 3904 489 3934 523
-rect 3834 464 3934 489
-rect 9802 417 9842 420
-rect 9802 383 9805 417
-rect 9839 383 9842 417
-rect 9802 380 9842 383
-rect 742 269 840 290
-rect 742 235 768 269
-rect 802 235 840 269
-rect 742 -499 840 235
-rect 7558 -40 7634 16
-rect 7558 -92 7572 -40
-rect 7624 -92 7634 -40
-rect 7558 -128 7634 -92
-rect 742 -533 776 -499
-rect 810 -533 840 -499
-rect 742 -556 840 -533
-rect 3804 -623 3904 -600
-rect 3804 -657 3838 -623
-rect 3872 -657 3904 -623
-rect 3804 -1053 3904 -657
-rect 3804 -1087 3840 -1053
-rect 3874 -1087 3904 -1053
-rect 3804 -1130 3904 -1087
-<< via1 >>
-rect 8305 682 8357 734
-rect 7572 -92 7624 -40
-<< metal2 >>
-rect 8290 823 8380 842
-rect 8290 767 8305 823
-rect 8361 767 8380 823
-rect 8290 734 8380 767
-rect 8290 682 8305 734
-rect 8357 682 8380 734
-rect 8290 670 8380 682
-rect 3456 -1282 3506 -6
-rect 7428 -22 7638 -18
-rect 7426 -40 7638 -22
-rect 7426 -92 7572 -40
-rect 7624 -92 7638 -40
-rect 7426 -122 7638 -92
-rect 7426 -272 7490 -122
-rect 7426 -586 7488 -272
-rect 3450 -2958 3510 -1282
-rect 7420 -2766 7492 -586
-rect 5068 -2840 6822 -2838
-rect 7420 -2840 7486 -2766
-rect 5068 -2850 7486 -2840
-rect 4896 -2852 7486 -2850
-rect 4292 -2854 7486 -2852
-rect 3880 -2896 7486 -2854
-rect 3880 -2898 5110 -2896
-rect 6762 -2898 7486 -2896
-rect 3880 -2900 4912 -2898
-rect 3880 -2902 4298 -2900
-<< via2 >>
-rect 8305 767 8361 823
-<< metal3 >>
-rect 8290 973 8380 988
-rect 8290 909 8304 973
-rect 8368 909 8380 973
-rect 8290 823 8380 909
-rect 8290 767 8305 823
-rect 8361 767 8380 823
-rect 8290 754 8380 767
-<< via3 >>
-rect 8304 909 8368 973
-<< metal4 >>
-rect 6774 2270 6876 2296
-rect 7720 2270 8386 2274
-rect 6340 2264 8386 2270
-rect 6228 2262 8386 2264
-rect 5886 2260 8386 2262
-rect 4868 2190 8386 2260
-rect 4868 2188 6242 2190
-rect 4868 2186 5900 2188
-rect 6340 2182 8386 2190
-rect 6774 -114 6876 2182
-rect 7720 2174 8386 2182
-rect 8292 1024 8380 2174
-rect 8290 973 8380 1024
-rect 8290 909 8304 973
-rect 8368 909 8380 973
-rect 8290 900 8380 909
-rect 6774 -176 6872 -114
-rect 5438 -216 6872 -176
-rect 4730 -332 6872 -216
-rect 4730 -336 5494 -332
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 0 1 296 -1 0 28
-box 218 -342 484 -90
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 7394 0 1 -310
-box 40 172 2460 1180
-use 2bitdac_layout 2bitdac_layout_0
-timestamp 1624221218
-transform 1 0 10 0 1 1234
-box -10 -1298 6502 1430
-use 2bitdac_layout 2bitdac_layout_1
-timestamp 1624221218
-transform 1 0 -24 0 1 -1650
-box -10 -1298 6502 1430
-<< labels >>
-rlabel locali s -2 -2910 -2 -2910 4 inp2
-rlabel locali s 206 2306 206 2306 4 inp1
-rlabel locali s 184 -152 184 -152 4 x1_vref5
-rlabel locali s -40 -518 -40 -518 4 x2_vref1
-rlabel locali s 798 -706 798 -706 4 d0
-rlabel locali s 3838 -106 3838 -106 4 d1
-rlabel locali s 7412 268 7412 268 4 d2
-rlabel locali s 6704 1510 6704 1510 4 x1_out_v
-rlabel locali s 6584 -1370 6584 -1370 4 x2_out_v
-rlabel locali s 9986 400 9986 400 4 out_v
-rlabel metal4 s 7546 2226 7546 2226 4 vdd!
-rlabel metal2 s 7462 -2700 7462 -2700 4 gnd!
-<< end >>
diff --git a/mag/4bitdac_layout.mag b/mag/4bitdac_layout.mag
deleted file mode 100644
index 9ddf9c6..0000000
--- a/mag/4bitdac_layout.mag
+++ /dev/null
@@ -1,239 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1266 -7308 14774 6984
-<< locali >>
-rect 232 5402 290 5482
-rect 13190 3488 13240 3490
-rect 10096 3434 13240 3488
-rect 10096 3428 12540 3434
-rect 7408 2028 7508 3300
-rect 7408 1994 7442 2028
-rect 7476 1994 7508 2028
-rect 7408 1962 7508 1994
-rect 3880 1546 3940 1602
-rect 3880 1420 3948 1546
-rect 7398 1424 7500 1478
-rect 3880 1414 3952 1420
-rect 3884 1069 3952 1414
-rect 3884 1035 3896 1069
-rect 3930 1035 3952 1069
-rect 3884 1022 3952 1035
-rect 7398 1390 7432 1424
-rect 7466 1390 7500 1424
-rect 7398 1034 7500 1390
-rect 7390 862 7500 1034
-rect 3880 741 3948 764
-rect 800 468 844 736
-rect 3880 707 3898 741
-rect 3932 707 3948 741
-rect 788 464 852 468
-rect 788 430 805 464
-rect 839 430 852 464
-rect 788 424 852 430
-rect 3880 386 3948 707
-rect 794 226 858 234
-rect 794 192 808 226
-rect 842 192 858 226
-rect 794 186 858 192
-rect 20 0 316 46
-rect 266 -280 316 0
-rect 800 -296 846 186
-rect 788 -306 864 -296
-rect 788 -317 866 -306
-rect 788 -351 809 -317
-rect 843 -351 866 -317
-rect 40 -572 90 -358
-rect 788 -360 866 -351
-rect 790 -370 866 -360
-rect 786 -539 860 -518
-rect 40 -622 282 -572
-rect 786 -573 806 -539
-rect 840 -573 860 -539
-rect 786 -592 860 -573
-rect 798 -754 844 -592
-rect 3880 -602 3950 386
-rect 7390 -32 7492 862
-rect 13190 806 13242 3434
-rect 13188 782 13242 806
-rect 13188 556 13240 782
-rect 13358 272 13514 284
-rect 13358 238 13370 272
-rect 13404 238 13514 272
-rect 13358 224 13514 238
-rect 10958 64 11044 158
-rect 7390 -120 7498 -32
-rect 3878 -621 3956 -602
-rect 3878 -655 3898 -621
-rect 3932 -655 3956 -621
-rect 3878 -676 3956 -655
-rect 796 -1042 846 -754
-rect 796 -1070 872 -1042
-rect 798 -1106 872 -1070
-rect 3884 -1071 3954 -1052
-rect 3884 -1105 3900 -1071
-rect 3934 -1105 3954 -1071
-rect 3884 -1584 3954 -1105
-rect 7396 -1152 7498 -120
-rect 7396 -1186 7428 -1152
-rect 7462 -1186 7498 -1152
-rect 7396 -1222 7498 -1186
-rect 7398 -1678 7492 -1626
-rect 7398 -1712 7422 -1678
-rect 7456 -1712 7492 -1678
-rect 7398 -2702 7492 -1712
-rect 13196 -2524 13258 -194
-rect 9972 -2584 13266 -2524
-rect 10 -6048 72 -5968
-<< viali >>
-rect 7442 1994 7476 2028
-rect 3896 1035 3930 1069
-rect 7432 1390 7466 1424
-rect 3898 707 3932 741
-rect 805 430 839 464
-rect 808 192 842 226
-rect 809 -351 843 -317
-rect 806 -573 840 -539
-rect 13370 238 13404 272
-rect 3898 -655 3932 -621
-rect 3900 -1105 3934 -1071
-rect 7428 -1186 7462 -1152
-rect 7422 -1712 7456 -1678
-<< metal1 >>
-rect 7392 2028 7506 2070
-rect 7392 1994 7442 2028
-rect 7476 1994 7506 2028
-rect 7392 1424 7506 1994
-rect 7392 1390 7432 1424
-rect 7466 1390 7506 1424
-rect 7392 1356 7506 1390
-rect 3884 1084 3930 1130
-rect 3880 1069 3948 1084
-rect 3880 1035 3896 1069
-rect 3930 1035 3948 1069
-rect 3880 741 3948 1035
-rect 3880 707 3898 741
-rect 3932 707 3948 741
-rect 3880 686 3948 707
-rect 11832 591 11926 606
-rect 11832 539 11859 591
-rect 11911 539 11926 591
-rect 11832 528 11926 539
-rect 798 470 844 502
-rect 798 468 846 470
-rect 788 464 852 468
-rect 788 430 805 464
-rect 839 430 852 464
-rect 788 424 852 430
-rect 800 234 846 424
-rect 13368 238 13370 272
-rect 13404 238 13406 272
-rect 794 226 858 234
-rect 794 192 808 226
-rect 842 192 858 226
-rect 794 186 858 192
-rect 11092 -208 11208 -132
-rect 11092 -260 11096 -208
-rect 11148 -260 11208 -208
-rect 11092 -278 11208 -260
-rect 788 -306 864 -296
-rect 788 -317 866 -306
-rect 788 -351 809 -317
-rect 843 -351 866 -317
-rect 788 -360 866 -351
-rect 790 -370 866 -360
-rect 800 -518 846 -370
-rect 786 -539 860 -518
-rect 786 -573 806 -539
-rect 840 -573 860 -539
-rect 786 -592 860 -573
-rect 3882 -602 3952 -596
-rect 3878 -621 3956 -602
-rect 3878 -655 3898 -621
-rect 3932 -655 3956 -621
-rect 3878 -676 3956 -655
-rect 3882 -1071 3952 -676
-rect 3882 -1105 3900 -1071
-rect 3934 -1105 3952 -1071
-rect 3882 -1128 3952 -1105
-rect 7396 -1134 7500 -1118
-rect 7390 -1152 7500 -1134
-rect 7390 -1186 7428 -1152
-rect 7462 -1186 7500 -1152
-rect 7390 -1218 7500 -1186
-rect 7390 -1678 7492 -1218
-rect 7390 -1712 7422 -1678
-rect 7456 -1712 7492 -1678
-rect 7390 -1750 7492 -1712
-<< via1 >>
-rect 11859 539 11911 591
-rect 11096 -260 11148 -208
-<< metal2 >>
-rect 11848 687 11924 702
-rect 11848 631 11860 687
-rect 11916 631 11924 687
-rect 11848 591 11924 631
-rect 11848 539 11859 591
-rect 11911 539 11924 591
-rect 11848 530 11924 539
-rect 6532 -216 6570 218
-rect 11090 -208 11164 -192
-rect 11090 -216 11096 -208
-rect 6532 -260 11096 -216
-rect 11148 -260 11164 -208
-rect 6532 -264 11164 -260
-rect 6532 -5868 6570 -264
-<< via2 >>
-rect 11860 631 11916 687
-<< metal3 >>
-rect 11850 826 11926 840
-rect 11850 772 11860 826
-rect 11848 762 11860 772
-rect 11924 762 11926 826
-rect 11848 687 11926 762
-rect 11848 631 11860 687
-rect 11916 631 11926 687
-rect 11848 620 11926 631
-<< via3 >>
-rect 11860 762 11924 826
-<< metal4 >>
-rect 6842 962 6920 3000
-rect 6820 884 11926 962
-rect 6842 -774 6920 884
-rect 11850 826 11926 884
-rect 11850 762 11860 826
-rect 11924 762 11926 826
-rect 11850 750 11926 762
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 0 -1 -48 1 0 -668
-box 218 -342 484 -90
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 10954 0 1 -454
-box 40 172 2460 1180
-use 3bitdac_layout 3bitdac_layout_0
-timestamp 1624221218
-transform 1 0 54 0 1 3060
-box -54 -3060 10120 2664
-use 3bitdac_layout 3bitdac_layout_1
-timestamp 1624221218
-transform 1 0 48 0 1 -2954
-box -54 -3060 10120 2664
-<< labels >>
-rlabel locali s 13434 248 13434 248 4 out_v
-rlabel locali s 10976 102 10976 102 4 d3
-rlabel locali s 7436 126 7436 126 4 d2
-rlabel locali s 3908 -10 3908 -10 4 d1
-rlabel locali s 818 -52 818 -52 4 d0
-rlabel locali s 202 -604 202 -604 4 x2_vref1
-rlabel locali s 292 -138 292 -138 4 x1_vref5
-rlabel locali s 40 -6024 40 -6024 4 inp2
-rlabel locali s 254 5442 254 5442 4 inp1
-rlabel locali s 10334 -2560 10334 -2560 4 x2_out_v
-rlabel locali s 10594 3462 10594 3462 4 x1_out_v
-rlabel metal2 s 10968 -246 10968 -246 4 gnd!
-rlabel metal4 s 11590 914 11590 914 4 vdd!
-<< end >>
diff --git a/mag/5bitdac_layout.mag b/mag/5bitdac_layout.mag
deleted file mode 100644
index d331ccf..0000000
--- a/mag/5bitdac_layout.mag
+++ /dev/null
@@ -1,278 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1330 -13330 17632 13032
-<< locali >>
-rect 236 11484 292 11620
-rect 13494 6278 16080 6312
-rect 13494 6276 16078 6278
-rect 10824 6080 11014 6204
-rect 10824 4040 10940 6080
-rect 10824 4006 10852 4040
-rect 10886 4006 10940 4040
-rect 10824 3958 10940 4006
-rect 7380 2087 7492 3404
-rect 7380 2053 7398 2087
-rect 7432 2053 7492 2087
-rect 7380 2030 7492 2053
-rect 10792 2876 10924 2974
-rect 10792 2842 10860 2876
-rect 10894 2842 10924 2876
-rect 10792 2020 10924 2842
-rect 16042 2424 16078 6276
-rect 16038 2214 16080 2424
-rect 16038 2198 16082 2214
-rect 3794 1520 3936 1620
-rect 3794 1080 3884 1520
-rect 3794 1046 3809 1080
-rect 3843 1046 3884 1080
-rect 3794 1020 3884 1046
-rect 7312 1373 7464 1454
-rect 7312 1339 7406 1373
-rect 7440 1339 7464 1373
-rect 806 856 822 866
-rect 800 842 822 856
-rect 804 828 822 842
-rect 754 503 822 828
-rect 754 469 778 503
-rect 812 469 822 503
-rect 754 438 822 469
-rect 3794 582 3884 628
-rect 3794 548 3817 582
-rect 3851 548 3884 582
-rect 3794 460 3884 548
-rect 766 163 834 178
-rect 766 129 776 163
-rect 810 129 834 163
-rect 14 -164 76 0
-rect 766 -187 834 129
-rect 3794 44 3892 460
-rect 766 -221 786 -187
-rect 820 -221 834 -187
-rect 766 -250 834 -221
-rect 168 -468 228 -402
-rect 762 -525 834 -482
-rect 762 -559 782 -525
-rect 816 -559 834 -525
-rect 762 -1038 834 -559
-rect 3802 -508 3892 44
-rect 7312 -294 7464 1339
-rect 3802 -542 3823 -508
-rect 3857 -542 3892 -508
-rect 3802 -582 3892 -542
-rect 3812 -998 3902 -958
-rect 3812 -1032 3835 -998
-rect 3869 -1032 3902 -998
-rect 3812 -1542 3902 -1032
-rect 7320 -965 7420 -294
-rect 7320 -999 7348 -965
-rect 7382 -999 7420 -965
-rect 10792 -974 10958 2020
-rect 16040 1784 16082 2198
-rect 16038 1776 16082 1784
-rect 16038 1344 16080 1776
-rect 16208 1061 16372 1072
-rect 16208 1027 16216 1061
-rect 16250 1027 16372 1061
-rect 16208 1016 16372 1027
-rect 13784 856 13886 946
-rect 7320 -1052 7420 -999
-rect 7332 -1769 7432 -1706
-rect 7332 -1803 7364 -1769
-rect 7398 -1803 7432 -1769
-rect 7332 -2636 7432 -1803
-rect 10826 -1780 10958 -974
-rect 16062 -1396 16098 598
-rect 10826 -1814 10886 -1780
-rect 10920 -1814 10958 -1780
-rect 10826 -1928 10958 -1814
-rect 10840 -2820 10972 -2706
-rect 10840 -2854 10886 -2820
-rect 10920 -2854 10972 -2820
-rect 10840 -5868 10972 -2854
-rect 16044 -3300 16098 -1396
-rect 16044 -5290 16080 -3300
-rect 16042 -5652 16082 -5290
-rect 13412 -5710 16082 -5652
-rect 13412 -5714 16074 -5710
-rect -54 -12070 4 -11964
-<< viali >>
-rect 10852 4006 10886 4040
-rect 7398 2053 7432 2087
-rect 10860 2842 10894 2876
-rect 3809 1046 3843 1080
-rect 7406 1339 7440 1373
-rect 778 469 812 503
-rect 3817 548 3851 582
-rect 776 129 810 163
-rect 786 -221 820 -187
-rect 782 -559 816 -525
-rect 3823 -542 3857 -508
-rect 3835 -1032 3869 -998
-rect 7348 -999 7382 -965
-rect 16216 1027 16250 1061
-rect 7364 -1803 7398 -1769
-rect 10886 -1814 10920 -1780
-rect 10886 -2854 10920 -2820
-<< metal1 >>
-rect 10808 4040 10916 4124
-rect 10808 4006 10852 4040
-rect 10886 4006 10916 4040
-rect 10808 2876 10916 4006
-rect 10808 2842 10860 2876
-rect 10894 2842 10916 2876
-rect 10808 2770 10916 2842
-rect 7376 2087 7476 2232
-rect 7376 2053 7398 2087
-rect 7432 2053 7476 2087
-rect 7376 1373 7476 2053
-rect 7376 1339 7406 1373
-rect 7440 1339 7476 1373
-rect 7376 1302 7476 1339
-rect 14674 1390 14798 1416
-rect 14674 1338 14725 1390
-rect 14777 1338 14798 1390
-rect 14674 1320 14798 1338
-rect 3794 1080 3884 1102
-rect 3794 1046 3809 1080
-rect 3843 1046 3884 1080
-rect 3794 582 3884 1046
-rect 16214 1061 16252 1064
-rect 16214 1027 16216 1061
-rect 16250 1027 16252 1061
-rect 16214 1024 16252 1027
-rect 16258 1020 16270 1066
-rect 16214 1018 16258 1020
-rect 3794 548 3817 582
-rect 3851 548 3884 582
-rect 762 503 830 534
-rect 3794 518 3884 548
-rect 13936 598 14048 664
-rect 13936 546 13952 598
-rect 14004 546 14048 598
-rect 13936 520 14048 546
-rect 762 469 778 503
-rect 812 469 830 503
-rect 762 163 830 469
-rect 762 129 776 163
-rect 810 129 830 163
-rect 762 106 830 129
-rect 762 -187 830 -172
-rect 762 -221 786 -187
-rect 820 -221 830 -187
-rect 762 -525 830 -221
-rect 762 -559 782 -525
-rect 816 -559 830 -525
-rect 762 -600 830 -559
-rect 3802 -508 3892 -482
-rect 3802 -542 3823 -508
-rect 3857 -542 3892 -508
-rect 3802 -998 3892 -542
-rect 3802 -1032 3835 -998
-rect 3869 -1032 3892 -998
-rect 3802 -1066 3892 -1032
-rect 7328 -965 7428 -912
-rect 7328 -999 7348 -965
-rect 7382 -999 7428 -965
-rect 7328 -1769 7428 -999
-rect 7328 -1803 7364 -1769
-rect 7398 -1803 7428 -1769
-rect 7328 -1842 7428 -1803
-rect 10848 -1780 10956 -1624
-rect 10848 -1814 10886 -1780
-rect 10920 -1814 10956 -1780
-rect 10848 -2820 10956 -1814
-rect 10848 -2854 10886 -2820
-rect 10920 -2854 10956 -2820
-rect 10848 -2978 10956 -2854
-<< via1 >>
-rect 14725 1338 14777 1390
-rect 13952 546 14004 598
-<< metal2 >>
-rect 10460 4878 10550 5848
-rect 10460 4866 13424 4878
-rect 10460 4774 13484 4866
-rect 13394 570 13484 4774
-rect 14702 1514 14802 1530
-rect 14700 1510 14802 1514
-rect 14700 1454 14725 1510
-rect 14781 1454 14802 1510
-rect 14700 1418 14802 1454
-rect 14700 1390 14800 1418
-rect 14700 1338 14725 1390
-rect 14777 1338 14800 1390
-rect 14700 1322 14800 1338
-rect 13938 598 14010 632
-rect 13938 570 13952 598
-rect 13390 546 13952 570
-rect 14004 546 14010 598
-rect 13390 518 14010 546
-rect 13394 -172 13484 518
-rect 13388 -254 13484 -172
-rect 13388 -4702 13478 -254
-rect 13388 -4746 13484 -4702
-rect 10758 -6932 10840 -6150
-rect 10744 -6936 12360 -6932
-rect 13394 -6936 13484 -4746
-rect 10744 -7006 13486 -6936
-rect 10758 -7010 10840 -7006
-rect 12108 -7010 13486 -7006
-rect 13394 -7022 13484 -7010
-<< via2 >>
-rect 14725 1454 14781 1510
-<< metal3 >>
-rect 14698 1626 14816 1660
-rect 14698 1562 14728 1626
-rect 14792 1562 14816 1626
-rect 14698 1540 14816 1562
-rect 14702 1510 14798 1540
-rect 14702 1454 14725 1510
-rect 14781 1454 14798 1510
-rect 14702 1434 14798 1454
-<< via3 >>
-rect 14728 1562 14792 1626
-<< metal4 >>
-rect 10134 3322 10222 7012
-rect 10134 1824 10224 3322
-rect 14698 1824 14814 1828
-rect 10130 1712 14814 1824
-rect 10134 -5100 10224 1712
-rect 14698 1626 14814 1712
-rect 14698 1562 14728 1626
-rect 14792 1562 14814 1626
-rect 14698 1540 14814 1562
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 1 0 -230 0 1 -62
-box 218 -342 484 -90
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 13800 0 1 336
-box 40 172 2460 1180
-use 4bitdac_layout 4bitdac_layout_0
-timestamp 1624221218
-transform 1 0 6 0 1 6048
-box -6 -6048 13514 5724
-use 4bitdac_layout 4bitdac_layout_1
-timestamp 1624221218
-transform 1 0 -64 0 1 -5936
-box -6 -6048 13514 5724
-<< labels >>
-rlabel locali s 36 -122 36 -122 4 x1_vref5
-rlabel locali s 188 -432 188 -432 4 x2_vref1
-rlabel locali s 784 -46 784 -46 4 d0
-rlabel locali s 3842 -18 3842 -18 4 d1
-rlabel locali s 7356 -74 7356 -74 4 d2
-rlabel locali s 10878 -158 10878 -158 4 d3
-rlabel locali s 13812 896 13812 896 4 d4
-rlabel locali s 16320 1034 16320 1034 4 out_v
-rlabel locali s 13596 -5688 13596 -5688 4 x2_out_v
-rlabel locali s 13732 6288 13732 6288 4 x1_out_v
-rlabel locali s 262 11508 262 11508 4 inp1
-rlabel locali s 258 11576 258 11576 4 inp1
-rlabel locali s -36 -12014 -36 -12014 4 inp2
-rlabel metal4 s 14500 1778 14500 1778 4 vdd!
-rlabel metal2 s 13440 532 13440 532 4 gnd!
-<< end >>
diff --git a/mag/6bitdac_layout.mag b/mag/6bitdac_layout.mag
deleted file mode 100644
index daef065..0000000
--- a/mag/6bitdac_layout.mag
+++ /dev/null
@@ -1,376 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1504 -25390 20976 25102
-<< locali >>
-rect 302 23654 358 23734
-rect 16410 13092 19408 13156
-rect 19358 13050 19408 13092
-rect 13744 12924 13862 13024
-rect 13744 6592 13790 12924
-rect 19358 12682 19412 13050
-rect 19358 11948 19420 12682
-rect 19358 11592 19424 11948
-rect 19358 11198 19416 11592
-rect 19358 10832 19420 11198
-rect 19358 10068 19416 10832
-rect 19358 9674 19412 10068
-rect 19358 9330 19424 9674
-rect 19358 8946 19416 9330
-rect 19358 7038 19412 8946
-rect 19366 6664 19420 7038
-rect 13728 6575 13810 6592
-rect 13728 6541 13754 6575
-rect 13788 6541 13810 6575
-rect 13728 6522 13810 6541
-rect 10752 6176 11058 6318
-rect 13738 6190 13820 6208
-rect 10752 6172 10932 6176
-rect 10752 4848 10844 6172
-rect 13738 6156 13759 6190
-rect 13793 6156 13820 6190
-rect 13738 6138 13820 6156
-rect 10770 4804 10844 4848
-rect 10770 4018 10848 4804
-rect 10770 3984 10805 4018
-rect 10839 3984 10848 4018
-rect 10770 3946 10848 3984
-rect 7328 3404 7468 3486
-rect 7330 3272 7460 3404
-rect 10776 3312 10854 3374
-rect 10776 3278 10787 3312
-rect 10821 3278 10854 3312
-rect 7326 2298 7464 3272
-rect 7326 2264 7374 2298
-rect 7408 2264 7464 2298
-rect 7326 2226 7464 2264
-rect 10776 3004 10854 3278
-rect 3862 1257 3936 1772
-rect 10776 1562 10848 3004
-rect 3862 1223 3883 1257
-rect 3917 1223 3936 1257
-rect 3862 1194 3936 1223
-rect 7348 1450 7464 1544
-rect 7348 1416 7388 1450
-rect 7422 1416 7464 1450
-rect 806 531 864 904
-rect 806 497 821 531
-rect 855 497 864 531
-rect 806 486 864 497
-rect 3862 799 3946 828
-rect 3862 765 3881 799
-rect 3915 765 3946 799
-rect 806 327 864 342
-rect 806 293 816 327
-rect 850 293 864 327
-rect 10 -112 80 20
-rect -244 -180 80 -112
-rect 10 -182 80 -180
-rect 806 -174 864 293
-rect 806 -208 817 -174
-rect 851 -208 864 -174
-rect 806 -216 864 -208
-rect -70 -450 258 -386
-rect 3862 -437 3946 765
-rect 804 -494 862 -466
-rect 804 -528 817 -494
-rect 851 -528 862 -494
-rect 3862 -471 3893 -437
-rect 3927 -471 3946 -437
-rect 3862 -528 3946 -471
-rect 7348 -278 7464 1416
-rect 10776 696 10854 1562
-rect 10776 -14 10856 696
-rect 10774 -56 10856 -14
-rect 804 -1038 862 -528
-rect 3862 -955 3946 -916
-rect 3862 -989 3883 -955
-rect 3917 -989 3946 -955
-rect 3862 -1558 3946 -989
-rect 7348 -1044 7486 -278
-rect 7348 -1078 7412 -1044
-rect 7446 -1078 7486 -1044
-rect 7348 -1120 7486 -1078
-rect 7368 -1648 7486 -1600
-rect 7368 -1682 7414 -1648
-rect 7448 -1682 7486 -1648
-rect 7368 -2730 7486 -1682
-rect 10772 -2194 10856 -56
-rect 10772 -2228 10795 -2194
-rect 10829 -2228 10856 -2194
-rect 10772 -2256 10856 -2228
-rect 10780 -2748 10858 -2740
-rect 10780 -2816 10864 -2748
-rect 10780 -2850 10809 -2816
-rect 10843 -2850 10864 -2816
-rect 10780 -5774 10864 -2850
-rect 13748 -4448 13794 6138
-rect 19366 5536 19416 6664
-rect 19366 5142 19412 5536
-rect 19366 4764 19416 5142
-rect 19366 4404 19420 4764
-rect 19366 3356 19424 4404
-rect 19366 2962 19412 3356
-rect 19366 2244 19420 2962
-rect 19366 1880 19416 2244
-rect 19366 1188 19412 1880
-rect 19358 1106 19412 1188
-rect 19358 794 19408 1106
-rect 19550 506 19716 518
-rect 19550 472 19559 506
-rect 19593 472 19716 506
-rect 19550 456 19716 472
-rect 17108 300 17190 392
-rect 19422 -20 19532 42
-rect 13752 -4700 13792 -4448
-rect 13750 -4712 13792 -4700
-rect 13750 -4994 13790 -4712
-rect 13748 -5006 13790 -4994
-rect 13748 -5530 13788 -5006
-rect 13734 -5552 13812 -5530
-rect 13734 -5586 13758 -5552
-rect 13792 -5586 13812 -5552
-rect 13734 -5614 13812 -5586
-rect 10780 -5850 10888 -5774
-rect 13730 -5804 13808 -5776
-rect 13730 -5838 13757 -5804
-rect 13791 -5838 13808 -5804
-rect 13730 -5860 13808 -5838
-rect 13748 -6196 13788 -5860
-rect 13748 -6212 13792 -6196
-rect 13750 -11026 13792 -6212
-rect 19472 -10888 19532 -20
-rect 16320 -10972 19532 -10888
-rect 16320 -10974 19466 -10972
-rect 13750 -11034 13828 -11026
-rect 13750 -11118 13792 -11034
-rect 13750 -11126 13818 -11118
-rect -90 -24130 -32 -24014
-<< viali >>
-rect 13754 6541 13788 6575
-rect 13759 6156 13793 6190
-rect 10805 3984 10839 4018
-rect 10787 3278 10821 3312
-rect 7374 2264 7408 2298
-rect 3883 1223 3917 1257
-rect 7388 1416 7422 1450
-rect 821 497 855 531
-rect 3881 765 3915 799
-rect 816 293 850 327
-rect 817 -208 851 -174
-rect 817 -528 851 -494
-rect 3893 -471 3927 -437
-rect 3883 -989 3917 -955
-rect 7412 -1078 7446 -1044
-rect 7414 -1682 7448 -1648
-rect 10795 -2228 10829 -2194
-rect 10809 -2850 10843 -2816
-rect 19559 472 19593 506
-rect 13758 -5586 13792 -5552
-rect 13757 -5838 13791 -5804
-<< metal1 >>
-rect 13728 6575 13810 6592
-rect 13728 6541 13754 6575
-rect 13788 6541 13810 6575
-rect 13728 6522 13810 6541
-rect 13750 6208 13790 6522
-rect 13738 6190 13820 6208
-rect 13738 6156 13759 6190
-rect 13793 6156 13820 6190
-rect 13738 6138 13820 6156
-rect 13750 6132 13790 6138
-rect 10770 4018 10848 4098
-rect 10770 3984 10805 4018
-rect 10839 3984 10848 4018
-rect 10770 3418 10848 3984
-rect 10776 3406 10848 3418
-rect 10776 3312 10854 3406
-rect 10776 3278 10787 3312
-rect 10821 3278 10854 3312
-rect 10776 3026 10854 3278
-rect 7326 2298 7464 2376
-rect 7326 2264 7374 2298
-rect 7408 2264 7464 2298
-rect 7326 1450 7464 2264
-rect 7326 1416 7388 1450
-rect 7422 1416 7464 1450
-rect 7326 1330 7464 1416
-rect 3862 1257 3936 1290
-rect 3862 1223 3883 1257
-rect 3917 1223 3936 1257
-rect 3862 799 3936 1223
-rect 3862 765 3881 799
-rect 3915 765 3936 799
-rect 3862 712 3936 765
-rect 18010 827 18118 840
-rect 18010 775 18042 827
-rect 18094 775 18118 827
-rect 18010 760 18118 775
-rect 804 531 868 554
-rect 804 497 821 531
-rect 855 497 868 531
-rect 19590 510 19608 518
-rect 804 490 868 497
-rect 19558 506 19608 510
-rect 808 348 866 490
-rect 19558 472 19559 506
-rect 19593 472 19608 506
-rect 19558 468 19608 472
-rect 19590 462 19608 468
-rect 806 328 866 348
-rect 804 327 866 328
-rect 804 293 816 327
-rect 850 293 866 327
-rect 804 290 866 293
-rect 804 286 860 290
-rect 806 266 860 286
-rect 17252 41 17368 102
-rect 17252 -11 17281 41
-rect 17333 -11 17368 41
-rect 17252 -40 17368 -11
-rect 804 -174 866 -160
-rect 804 -190 817 -174
-rect 806 -208 817 -190
-rect 851 -190 866 -174
-rect 851 -208 864 -190
-rect 806 -494 864 -208
-rect 806 -528 817 -494
-rect 851 -528 864 -494
-rect 806 -554 864 -528
-rect 3862 -437 3946 -386
-rect 3862 -471 3893 -437
-rect 3927 -471 3946 -437
-rect 3862 -955 3946 -471
-rect 3862 -989 3883 -955
-rect 3917 -989 3946 -955
-rect 3862 -1028 3946 -989
-rect 7358 -1044 7496 -950
-rect 7358 -1078 7412 -1044
-rect 7446 -1078 7496 -1044
-rect 7358 -1648 7496 -1078
-rect 7358 -1682 7414 -1648
-rect 7448 -1682 7496 -1648
-rect 7358 -1792 7496 -1682
-rect 10772 -2194 10866 -2116
-rect 10772 -2228 10795 -2194
-rect 10829 -2228 10866 -2194
-rect 10772 -2268 10866 -2228
-rect 10770 -2658 10866 -2268
-rect 10770 -2748 10858 -2658
-rect 10770 -2816 10864 -2748
-rect 10770 -2850 10809 -2816
-rect 10843 -2850 10864 -2816
-rect 10770 -2912 10864 -2850
-rect 13734 -5552 13812 -5530
-rect 13734 -5586 13758 -5552
-rect 13792 -5586 13812 -5552
-rect 13734 -5614 13812 -5586
-rect 13748 -5776 13788 -5614
-rect 13730 -5804 13808 -5776
-rect 13730 -5838 13757 -5804
-rect 13791 -5838 13808 -5804
-rect 13730 -5860 13808 -5838
-<< via1 >>
-rect 18042 775 18094 827
-rect 17281 -11 17333 41
-<< metal2 >>
-rect 13448 5058 16794 5164
-rect 16686 50 16786 5058
-rect 18028 911 18120 940
-rect 18028 902 18050 911
-rect 18030 855 18050 902
-rect 18106 855 18120 911
-rect 18030 827 18120 855
-rect 18030 775 18042 827
-rect 18094 775 18120 827
-rect 18030 760 18120 775
-rect 17272 50 17354 52
-rect 16686 41 17354 50
-rect 16686 0 17281 41
-rect 16686 -4344 16786 0
-rect 17272 -11 17281 0
-rect 17333 -11 17354 41
-rect 17272 -28 17354 -11
-rect 16680 -6858 16794 -4344
-rect 16680 -6972 16808 -6858
-rect 16686 -7334 16808 -6972
-rect 13370 -7440 16808 -7334
-rect 16686 -7468 16808 -7440
-<< via2 >>
-rect 18050 855 18106 911
-<< metal3 >>
-rect 18030 1042 18120 1062
-rect 18030 978 18045 1042
-rect 18109 978 18120 1042
-rect 18030 911 18120 978
-rect 18030 855 18050 911
-rect 18106 855 18120 911
-rect 18030 844 18120 855
-<< via3 >>
-rect 18045 978 18109 1042
-<< metal4 >>
-rect 17440 7122 18112 7124
-rect 16590 7120 18112 7122
-rect 15890 7116 18112 7120
-rect 15122 7114 18112 7116
-rect 13468 7106 18112 7114
-rect 12650 7100 18112 7106
-rect 11842 7052 18112 7100
-rect 11842 7050 16780 7052
-rect 11842 7046 16012 7050
-rect 11842 7044 15172 7046
-rect 11842 7036 13540 7044
-rect 11842 7030 12732 7036
-rect 18030 3468 18112 7052
-rect 18030 3398 18116 3468
-rect 18030 2540 18124 3398
-rect 18032 2156 18124 2540
-rect 17972 2150 18124 2156
-rect 14668 2098 18124 2150
-rect 14660 2070 18124 2098
-rect 14660 -9234 14766 2070
-rect 17972 2068 18124 2070
-rect 18032 1822 18124 2068
-rect 18030 1806 18124 1822
-rect 18030 1076 18122 1806
-rect 18030 1042 18120 1076
-rect 18030 978 18045 1042
-rect 18109 978 18120 1042
-rect 18030 962 18120 978
-rect 14660 -9304 14784 -9234
-rect 14668 -10260 14784 -9304
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 1 0 -462 0 1 -66
-box 218 -342 484 -90
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 17134 0 1 -222
-box 40 172 2460 1180
-use 5bitdac_layout 5bitdac_layout_0
-timestamp 1624221218
-transform 1 0 68 0 1 12070
-box -70 -12070 16372 11772
-use 5bitdac_layout 5bitdac_layout_1
-timestamp 1624221218
-transform 1 0 -32 0 1 -11978
-box -70 -12070 16372 11772
-<< labels >>
-rlabel locali s 19666 494 19666 494 4 out_v
-rlabel locali s 17138 330 17138 330 4 d5
-rlabel locali s 19384 1048 19384 1048 4 x1_out_v
-rlabel locali s 19514 -126 19514 -126 4 x2_out_v
-rlabel locali s -160 -152 -160 -152 4 x1_vref5
-rlabel locali s 64 -428 64 -428 4 x2_vref1
-rlabel locali s -66 -24090 -66 -24090 4 inp2
-rlabel locali s 322 23712 322 23712 4 inp1
-rlabel locali s 834 58 834 58 4 d0
-rlabel locali s 3912 -58 3912 -58 4 d1
-rlabel locali s 7406 -58 7406 -58 4 d2
-rlabel locali s 10798 -618 10798 -618 4 d3
-rlabel locali s 13766 -734 13766 -734 4 d4
-rlabel metal4 s 18068 1250 18068 1250 4 vdd!
-rlabel metal2 s 16740 20 16740 20 4 gnd!
-<< end >>
diff --git a/mag/7bitdac_layout.mag b/mag/7bitdac_layout.mag
deleted file mode 100644
index 57aebc4..0000000
--- a/mag/7bitdac_layout.mag
+++ /dev/null
@@ -1,592 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1512 -3716 46822 49946
-<< locali >>
-rect 19916 48682 19962 48686
-rect 19916 48680 19964 48682
-rect 19916 48672 19966 48680
-rect 19916 48638 19924 48672
-rect 19958 48670 19966 48672
-rect 43760 48670 45162 48678
-rect 19958 48640 45162 48670
-rect 19958 48638 43838 48640
-rect 19916 48632 43838 48638
-rect 19916 48630 27254 48632
-rect 45116 48624 45162 48640
-rect 11768 48096 20162 48100
-rect -252 48050 20860 48096
-rect -252 48046 11818 48050
-rect -252 48040 3448 48046
-rect -246 -164 -194 48040
-rect 544 47846 602 48006
-rect 19916 47982 19976 47990
-rect 19916 47948 19930 47982
-rect 19964 47948 19976 47982
-rect 19916 47940 19976 47948
-rect 19918 30780 19964 47940
-rect 20810 47820 20858 48050
-rect 45116 46140 45166 48624
-rect 19918 30744 19970 30780
-rect 19922 27384 19970 30744
-rect 19916 27342 19970 27384
-rect 19916 26696 19964 27342
-rect 19916 26662 19966 26696
-rect 19918 26004 19966 26662
-rect 45116 26240 45170 46140
-rect 45116 26204 45180 26240
-rect 19918 25974 19970 26004
-rect 19922 24586 19970 25974
-rect 45120 25704 45180 26204
-rect 45122 25350 45176 25704
-rect 45316 25065 45562 25086
-rect 45316 25031 45340 25065
-rect 45374 25031 45562 25065
-rect 45316 25018 45562 25031
-rect 42884 24848 42968 24952
-rect 41604 24610 42370 24614
-rect 40178 24554 42372 24610
-rect 40178 24550 41694 24554
-rect 17260 13452 17380 24516
-rect 17260 13418 17300 13452
-rect 17334 13418 17380 13452
-rect 17260 13380 17380 13418
-rect 37596 13344 37638 24484
-rect 42332 24162 42372 24554
-rect 45176 24166 45216 24602
-rect 43884 24162 45222 24166
-rect 42332 24122 45222 24162
-rect 42332 24120 44692 24122
-rect 42332 24116 43924 24120
-rect 37596 13310 37602 13344
-rect 37636 13310 37638 13344
-rect 37596 13294 37638 13310
-rect 13936 12996 14044 13104
-rect 17230 13014 17360 13046
-rect 13946 9290 14034 12996
-rect 17230 12980 17280 13014
-rect 17314 12980 17360 13014
-rect 17230 11702 17360 12980
-rect 17230 11514 17368 11702
-rect 13928 8130 14034 9290
-rect 13928 7460 14016 8130
-rect 13928 6810 14024 7460
-rect 13928 6776 13962 6810
-rect 13996 6776 14024 6810
-rect 13930 6740 14024 6776
-rect 10834 6284 11118 6382
-rect 10838 5450 10908 6284
-rect 10830 5384 10908 5450
-rect 13928 6216 14016 6278
-rect 13928 6182 13952 6216
-rect 13986 6182 14016 6216
-rect 10830 4776 10904 5384
-rect 10824 4474 10904 4776
-rect 10824 3867 10898 4474
-rect 13928 4124 14016 6182
-rect 13930 4052 14012 4124
-rect 13930 3918 14042 4052
-rect 10824 3833 10845 3867
-rect 10879 3833 10898 3867
-rect 10824 3800 10898 3833
-rect 7484 3468 7582 3552
-rect 10812 3531 10886 3560
-rect 10812 3497 10819 3531
-rect 10853 3497 10886 3531
-rect 7486 2912 7540 3468
-rect 7482 2115 7542 2912
-rect 10812 2874 10886 3497
-rect 7482 2081 7493 2115
-rect 7527 2081 7542 2115
-rect 7482 2030 7542 2081
-rect 7482 1739 7542 1760
-rect 3982 1706 4008 1724
-rect 3982 1202 4040 1706
-rect 3982 1168 3995 1202
-rect 4029 1168 4040 1202
-rect 3982 1154 4040 1168
-rect 7482 1705 7493 1739
-rect 7527 1705 7542 1739
-rect 7482 1074 7542 1705
-rect 3970 1012 4044 1022
-rect 942 954 1030 980
-rect 3970 978 3991 1012
-rect 4025 978 4044 1012
-rect 942 700 1012 954
-rect 3970 930 4044 978
-rect 7468 1000 7542 1074
-rect 3970 796 4040 930
-rect 942 692 1010 700
-rect 944 634 1010 692
-rect 3966 690 4040 796
-rect 944 604 1008 634
-rect 936 596 1008 604
-rect 3966 600 4020 690
-rect 936 562 953 596
-rect 987 562 1008 596
-rect 936 550 1008 562
-rect 944 412 1012 418
-rect 944 406 1018 412
-rect 944 372 963 406
-rect 997 372 1018 406
-rect 944 364 1018 372
-rect 944 358 1010 364
-rect 948 290 1010 358
-rect 948 168 1012 290
-rect 42 -2 214 34
-rect 42 -118 104 -2
-rect 944 -28 1012 168
-rect 3938 76 4020 600
-rect 7468 392 7538 1000
-rect 10810 394 10898 2874
-rect 13934 1138 14042 3918
-rect 17248 1390 17368 11514
-rect 34244 7424 34288 13136
-rect 37590 12930 37634 12962
-rect 37590 12896 37596 12930
-rect 37630 12896 37634 12930
-rect 37590 12880 37634 12896
-rect 34236 7310 34288 7424
-rect 34236 6627 34286 7310
-rect 34236 6593 34242 6627
-rect 34276 6593 34286 6627
-rect 34236 6578 34286 6593
-rect 31008 6268 31386 6392
-rect 31008 6160 31132 6268
-rect 34242 6230 34286 6238
-rect 34238 6224 34286 6230
-rect 34238 6190 34242 6224
-rect 34276 6190 34286 6224
-rect 34238 6172 34286 6190
-rect 31018 4026 31130 6160
-rect 31002 3834 31144 4026
-rect 31002 3800 31064 3834
-rect 31098 3800 31144 3834
-rect 31002 3734 31144 3800
-rect 27776 2084 27854 3514
-rect 27776 2050 27803 2084
-rect 27837 2050 27854 2084
-rect 27776 1984 27854 2050
-rect 31040 3402 31128 3448
-rect 31040 3368 31070 3402
-rect 31104 3368 31128 3402
-rect 3938 38 4018 76
-rect -246 -360 -192 -164
-rect -246 -362 172 -360
-rect 214 -362 308 -350
-rect -246 -416 308 -362
-rect -118 -418 308 -416
-rect 214 -420 308 -418
-rect 936 -1568 1012 -28
-rect 936 -1940 1014 -1568
-rect 936 -2396 1016 -1940
-rect 3930 -2024 4018 38
-rect 7436 -1950 7548 392
-rect 10804 -1788 10898 394
-rect 13890 764 14042 1138
-rect 13890 -1484 14012 764
-rect 17228 -1042 17408 1390
-rect 24250 1239 24336 1754
-rect 24250 1205 24282 1239
-rect 24316 1205 24336 1239
-rect 24250 1178 24336 1205
-rect 27766 1612 27844 1676
-rect 27766 1578 27785 1612
-rect 27819 1578 27844 1612
-rect 21198 568 21264 920
-rect 21198 534 21207 568
-rect 21241 534 21264 568
-rect 21198 528 21264 534
-rect 24238 915 24324 984
-rect 24238 881 24270 915
-rect 24304 881 24324 915
-rect 21206 526 21242 528
-rect 21190 358 21256 374
-rect 21190 324 21207 358
-rect 21241 324 21256 358
-rect 21190 68 21256 324
-rect 21190 -18 21258 68
-rect 20414 -128 20468 -28
-rect 21212 -952 21258 -18
-rect 24238 -60 24324 881
-rect 27766 272 27844 1578
-rect 31040 1532 31128 3368
-rect 31032 966 31146 1532
-rect 31032 516 31176 966
-rect 27712 146 27844 272
-rect 24238 -912 24298 -60
-rect 24236 -929 24298 -912
-rect 21206 -966 21268 -952
-rect 21206 -1000 21216 -966
-rect 21250 -1000 21268 -966
-rect 24236 -963 24252 -929
-rect 24286 -963 24298 -929
-rect 27712 -892 27810 146
-rect 27712 -926 27733 -892
-rect 27767 -926 27810 -892
-rect 27712 -962 27810 -926
-rect 31048 -855 31176 516
-rect 34242 472 34286 6172
-rect 37592 2112 37634 12880
-rect 34202 418 34286 472
-rect 34202 334 34296 418
-rect 34210 -218 34296 334
-rect 31048 -889 31101 -855
-rect 31135 -889 31176 -855
-rect 24236 -996 24298 -963
-rect 31048 -978 31176 -889
-rect 34202 -318 34296 -218
-rect 34202 -902 34288 -318
-rect 34202 -936 34220 -902
-rect 34254 -936 34288 -902
-rect 34202 -954 34288 -936
-rect 21206 -1006 21268 -1000
-rect 37532 -1042 37652 2112
-rect 17198 -1200 37654 -1042
-rect 17198 -1216 19098 -1200
-rect 27596 -1222 37654 -1200
-rect 27596 -1252 31946 -1222
-rect 33618 -1470 34274 -1452
-rect 20416 -1484 34274 -1470
-rect 13890 -1486 34274 -1484
-rect 13890 -1520 34224 -1486
-rect 34258 -1520 34274 -1486
-rect 13890 -1606 34274 -1520
-rect 13890 -1620 20582 -1606
-rect 33618 -1620 34274 -1606
-rect 28184 -1740 31172 -1726
-rect 21244 -1756 31172 -1740
-rect 14370 -1767 31172 -1756
-rect 14370 -1788 31081 -1767
-rect 10804 -1801 31081 -1788
-rect 31115 -1801 31172 -1767
-rect 10804 -1854 31172 -1801
-rect 10804 -1868 28408 -1854
-rect 10804 -1884 21406 -1868
-rect 10804 -1908 14418 -1884
-rect 10892 -1916 14418 -1908
-rect 7412 -1986 7552 -1950
-rect 11356 -1984 11698 -1976
-rect 11356 -1986 24578 -1984
-rect 7412 -2020 24578 -1986
-rect 3930 -2272 4010 -2024
-rect 7412 -2052 27818 -2020
-rect 7412 -2086 27749 -2052
-rect 27783 -2086 27818 -2052
-rect 7412 -2120 27818 -2086
-rect 7412 -2124 24578 -2120
-rect 7412 -2130 11500 -2124
-rect 7412 -2148 7552 -2130
-rect 3928 -2276 4048 -2272
-rect 12266 -2276 20764 -2260
-rect 3928 -2285 24300 -2276
-rect 3928 -2319 24254 -2285
-rect 24288 -2319 24300 -2285
-rect 3928 -2342 24300 -2319
-rect 3928 -2358 12398 -2342
-rect 942 -2398 1016 -2396
-rect 21200 -2398 21260 -2390
-rect 942 -2400 4086 -2398
-rect 19604 -2400 21260 -2398
-rect 942 -2405 21260 -2400
-rect 942 -2439 21211 -2405
-rect 21245 -2439 21260 -2405
-rect 942 -2448 21260 -2439
-rect 942 -2454 19742 -2448
-rect 21200 -2452 21260 -2448
-rect 942 -2456 1016 -2454
-rect 4060 -2456 19742 -2454
-<< viali >>
-rect 19924 48638 19958 48672
-rect 19930 47948 19964 47982
-rect 45340 25031 45374 25065
-rect 17300 13418 17334 13452
-rect 37602 13310 37636 13344
-rect 17280 12980 17314 13014
-rect 13962 6776 13996 6810
-rect 13952 6182 13986 6216
-rect 10845 3833 10879 3867
-rect 10819 3497 10853 3531
-rect 7493 2081 7527 2115
-rect 3995 1168 4029 1202
-rect 7493 1705 7527 1739
-rect 3991 978 4025 1012
-rect 953 562 987 596
-rect 963 372 997 406
-rect 37596 12896 37630 12930
-rect 34242 6593 34276 6627
-rect 34242 6190 34276 6224
-rect 31064 3800 31098 3834
-rect 27803 2050 27837 2084
-rect 31070 3368 31104 3402
-rect 24282 1205 24316 1239
-rect 27785 1578 27819 1612
-rect 21207 534 21241 568
-rect 24270 881 24304 915
-rect 21207 324 21241 358
-rect 21216 -1000 21250 -966
-rect 24252 -963 24286 -929
-rect 27733 -926 27767 -892
-rect 31101 -889 31135 -855
-rect 34220 -936 34254 -902
-rect 34224 -1520 34258 -1486
-rect 31081 -1801 31115 -1767
-rect 27749 -2086 27783 -2052
-rect 24254 -2319 24288 -2285
-rect 21211 -2439 21245 -2405
-<< metal1 >>
-rect 19916 48680 19962 48686
-rect 19916 48672 19966 48680
-rect 19916 48638 19924 48672
-rect 19958 48638 19966 48672
-rect 19916 48630 19966 48638
-rect 19916 47990 19962 48630
-rect 19916 47982 19976 47990
-rect 19916 47948 19930 47982
-rect 19964 47948 19976 47982
-rect 19916 47940 19976 47948
-rect 43774 25378 43882 25392
-rect 43774 25326 43811 25378
-rect 43863 25326 43882 25378
-rect 43774 25316 43882 25326
-rect 45316 25065 45392 25084
-rect 45316 25031 45340 25065
-rect 45374 25031 45392 25065
-rect 45316 25018 45392 25031
-rect 43050 24608 43134 24662
-rect 43050 24556 43063 24608
-rect 43115 24556 43134 24608
-rect 43050 24518 43134 24556
-rect 17230 13452 17378 13492
-rect 17230 13418 17300 13452
-rect 17334 13418 17378 13452
-rect 17230 13014 17378 13418
-rect 17230 12980 17280 13014
-rect 17314 12980 17378 13014
-rect 17230 12934 17378 12980
-rect 37590 13344 37642 13364
-rect 37590 13310 37602 13344
-rect 37636 13310 37642 13344
-rect 37590 12930 37642 13310
-rect 37590 12896 37596 12930
-rect 37630 12896 37642 12930
-rect 37590 12878 37642 12896
-rect 13926 6810 14020 6856
-rect 13926 6776 13962 6810
-rect 13996 6776 14020 6810
-rect 13926 6216 14020 6776
-rect 13926 6182 13952 6216
-rect 13986 6182 14020 6216
-rect 13926 6136 14020 6182
-rect 34236 6627 34284 6668
-rect 34236 6593 34242 6627
-rect 34276 6593 34284 6627
-rect 34236 6224 34284 6593
-rect 34236 6190 34242 6224
-rect 34276 6190 34284 6224
-rect 34236 6170 34284 6190
-rect 10802 3867 10888 3910
-rect 10802 3833 10845 3867
-rect 10879 3833 10888 3867
-rect 10802 3531 10888 3833
-rect 10802 3497 10819 3531
-rect 10853 3497 10888 3531
-rect 10802 3480 10888 3497
-rect 31014 3834 31138 3886
-rect 31014 3800 31064 3834
-rect 31098 3800 31138 3834
-rect 31014 3402 31138 3800
-rect 31014 3368 31070 3402
-rect 31104 3368 31138 3402
-rect 31014 3328 31138 3368
-rect 7482 2115 7550 2156
-rect 7482 2081 7493 2115
-rect 7527 2081 7550 2115
-rect 7482 1739 7550 2081
-rect 7482 1705 7493 1739
-rect 7527 1705 7550 1739
-rect 7482 1680 7550 1705
-rect 27766 2084 27854 2172
-rect 27766 2050 27803 2084
-rect 27837 2050 27854 2084
-rect 27766 1612 27854 2050
-rect 27766 1578 27785 1612
-rect 27819 1578 27854 1612
-rect 27766 1544 27854 1578
-rect 24220 1239 24328 1312
-rect 3970 1202 4040 1226
-rect 3970 1168 3995 1202
-rect 4029 1168 4040 1202
-rect 3970 1012 4040 1168
-rect 3970 978 3991 1012
-rect 4025 978 4040 1012
-rect 3970 964 4040 978
-rect 24220 1205 24282 1239
-rect 24316 1205 24328 1239
-rect 24220 915 24328 1205
-rect 24220 881 24270 915
-rect 24304 881 24328 915
-rect 24220 856 24328 881
-rect 944 604 1008 614
-rect 936 596 1008 604
-rect 936 562 953 596
-rect 987 562 1008 596
-rect 936 526 1008 562
-rect 21188 568 21262 592
-rect 21188 534 21207 568
-rect 21241 534 21262 568
-rect 936 518 1010 526
-rect 932 474 1020 518
-rect 932 470 1012 474
-rect 950 424 1012 470
-rect 944 412 1012 424
-rect 944 406 1018 412
-rect 944 372 963 406
-rect 997 372 1018 406
-rect 944 364 1018 372
-rect 944 362 1010 364
-rect 21188 358 21262 534
-rect 21188 324 21207 358
-rect 21241 324 21262 358
-rect 21188 312 21262 324
-rect 21188 306 21260 312
-rect 27712 -884 27808 -828
-rect 31048 -855 31176 -802
-rect 27712 -892 27812 -884
-rect 24236 -929 24298 -892
-rect 21206 -966 21268 -952
-rect 21206 -1000 21216 -966
-rect 21250 -1000 21268 -966
-rect 21206 -1006 21268 -1000
-rect 24236 -963 24252 -929
-rect 24286 -963 24298 -929
-rect 27712 -926 27733 -892
-rect 27767 -926 27812 -892
-rect 27712 -962 27812 -926
-rect 21208 -2390 21244 -1006
-rect 24236 -2285 24298 -963
-rect 27714 -2052 27812 -962
-rect 31048 -889 31101 -855
-rect 31135 -889 31176 -855
-rect 31048 -1658 31176 -889
-rect 34194 -902 34280 -876
-rect 34194 -936 34220 -902
-rect 34254 -936 34280 -902
-rect 34194 -1486 34280 -936
-rect 34194 -1520 34224 -1486
-rect 34258 -1520 34280 -1486
-rect 34194 -1612 34280 -1520
-rect 31048 -1767 31172 -1658
-rect 31048 -1801 31081 -1767
-rect 31115 -1801 31172 -1767
-rect 31048 -1854 31172 -1801
-rect 27714 -2086 27749 -2052
-rect 27783 -2086 27812 -2052
-rect 27714 -2118 27812 -2086
-rect 24236 -2319 24254 -2285
-rect 24288 -2319 24298 -2285
-rect 24236 -2326 24298 -2319
-rect 24242 -2346 24298 -2326
-rect 21200 -2405 21260 -2390
-rect 21200 -2439 21211 -2405
-rect 21245 -2439 21260 -2405
-rect 21200 -2452 21260 -2439
-<< via1 >>
-rect 43811 25326 43863 25378
-rect 43063 24556 43115 24608
-<< metal2 >>
-rect 19138 48464 24104 48470
-rect 16350 48460 24104 48464
-rect 10768 48384 24104 48460
-rect 10768 48378 19186 48384
-rect 10768 48374 16396 48378
-rect 10768 43598 10832 48374
-rect 24060 48362 24104 48384
-rect 24060 47762 24116 48362
-rect 24060 46508 24126 47762
-rect 24060 46470 24132 46508
-rect 24066 45216 24132 46470
-rect 10768 43518 10854 43598
-rect 10778 42020 10854 43518
-rect 43792 25464 43886 25482
-rect 43792 25408 43809 25464
-rect 43865 25408 43886 25464
-rect 43792 25378 43886 25408
-rect 43792 25326 43811 25378
-rect 43863 25326 43886 25378
-rect 43792 25316 43886 25326
-rect 42950 24620 43128 24624
-rect 42944 24608 43128 24620
-rect 42944 24556 43063 24608
-rect 43115 24556 43128 24608
-rect 42944 24526 43128 24556
-rect 42944 23834 42980 24526
-rect 37200 23790 41970 23802
-rect 42944 23790 42976 23834
-rect 37200 23756 42976 23790
-rect 42944 23754 42976 23756
-<< via2 >>
-rect 43809 25408 43865 25464
-<< metal3 >>
-rect 43790 25566 43890 25574
-rect 43790 25502 43811 25566
-rect 43875 25502 43890 25566
-rect 43790 25464 43890 25502
-rect 43790 25408 43809 25464
-rect 43865 25408 43890 25464
-rect 43790 25398 43890 25408
-<< via3 >>
-rect 43811 25502 43875 25566
-<< metal4 >>
-rect 7746 48242 7842 48246
-rect 22460 48242 22590 48246
-rect 7746 48160 22590 48242
-rect 7746 47486 7842 48160
-rect 22460 48158 22590 48160
-rect 22514 47824 22590 48158
-rect 38540 26238 42638 26240
-rect 43788 26238 43884 26240
-rect 38540 26170 43884 26238
-rect 38540 26164 42638 26170
-rect 43788 25626 43884 26170
-rect 43788 25612 43890 25626
-rect 43790 25566 43890 25612
-rect 43790 25502 43811 25566
-rect 43875 25502 43890 25566
-rect 43790 25494 43890 25502
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 1 0 -176 0 1 -20
-box 218 -342 484 -90
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 42896 0 1 24336
-box 40 172 2460 1180
-use 6bitdac_layout 6bitdac_layout_0
-timestamp 1624221218
-transform 1 0 20506 0 1 24092
-box -244 -24130 19716 23842
-use 6bitdac_layout 6bitdac_layout_1
-timestamp 1624221218
-transform 1 0 244 0 1 24130
-box -244 -24130 19716 23842
-<< labels >>
-rlabel locali s 86 -116 86 -116 4 x1_vref5
-rlabel locali s 254 -402 254 -402 4 x2_vref1
-rlabel locali s 20436 -88 20436 -88 4 inp2
-rlabel locali s 574 47944 574 47944 4 inp1
-rlabel locali s 42914 24889 42914 24889 4 d6
-rlabel locali s 45424 25060 45424 25060 4 out_v
-rlabel metal4 s 43842 25592 43842 25592 4 vdd!
-rlabel metal2 s 43000 24558 43000 24558 4 gnd!
-rlabel locali s 45196 24296 45196 24296 4 x2_out_v
-rlabel locali s 45154 25632 45154 25632 4 x1_out_v
-rlabel locali s 978 254 978 254 4 d0
-rlabel locali s 3992 214 3992 214 4 d1
-rlabel locali s 10852 480 10852 480 4 d3
-rlabel locali s 14002 926 14002 926 4 d4
-rlabel locali s 17326 810 17326 810 4 d5
-rlabel locali s 7486 -1174 7486 -1174 4 d2
-<< end >>
diff --git a/mag/8bitdac_layout.mag b/mag/8bitdac_layout.mag
deleted file mode 100644
index 3088a71..0000000
--- a/mag/8bitdac_layout.mag
+++ /dev/null
@@ -1,433 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1260 -2492 97780 52822
-<< locali >>
-rect 45770 51554 90780 51562
-rect 95360 51554 96184 51558
-rect 45770 51520 96184 51554
-rect 45770 51370 45824 51520
-rect 95364 51516 96184 51520
-rect 45770 51336 45777 51370
-rect 45811 51336 45824 51370
-rect 45770 51326 45824 51336
-rect 96148 51466 96184 51516
-rect 21190 51278 21746 51280
-rect 21190 51274 37460 51278
-rect 20370 51272 37460 51274
-rect 20370 51255 48154 51272
-rect 20370 51230 20399 51255
-rect 20372 51221 20399 51230
-rect 20433 51234 48154 51255
-rect 20433 51230 21390 51234
-rect 20433 51221 20452 51230
-rect 20372 51210 20452 51221
-rect 45768 51190 45818 51196
-rect 45768 51156 45777 51190
-rect 45811 51156 45818 51190
-rect 796 50625 854 50672
-rect 796 50591 811 50625
-rect 845 50591 854 50625
-rect 796 50586 854 50591
-rect 808 50451 844 50452
-rect 808 50417 809 50451
-rect 843 50417 844 50451
-rect 808 50416 844 50417
-rect 20382 50411 20456 50432
-rect 20382 50377 20399 50411
-rect 20433 50377 20456 50411
-rect 20382 49560 20456 50377
-rect 45768 49816 45818 51156
-rect 48098 50662 48154 51234
-rect 48092 50643 48158 50662
-rect 48092 50609 48111 50643
-rect 48145 50609 48158 50643
-rect 48092 50594 48158 50609
-rect 48098 50590 48154 50594
-rect 48114 50441 48158 50446
-rect 48114 50407 48119 50441
-rect 48153 50407 48158 50441
-rect 48114 50402 48158 50407
-rect 20380 26192 20460 49560
-rect 45768 27474 45816 49816
-rect 96148 49202 96190 51466
-rect 96146 27622 96190 49202
-rect 96146 27580 96196 27622
-rect 43122 26731 43162 27404
-rect 43122 26697 43124 26731
-rect 43158 26697 43162 26731
-rect 43122 26682 43162 26697
-rect 90376 26755 90468 27392
-rect 90376 26721 90401 26755
-rect 90435 26721 90468 26755
-rect 90376 26658 90468 26721
-rect 43110 26517 43164 26526
-rect 43110 26483 43120 26517
-rect 43154 26483 43164 26517
-rect 43110 26472 43164 26483
-rect 20380 26162 20466 26192
-rect 20386 2810 20466 26162
-rect 43116 25406 43164 26472
-rect 43110 24386 43164 25406
-rect 43102 23928 43164 24386
-rect 90376 26401 90434 26460
-rect 90376 26367 90389 26401
-rect 90423 26367 90434 26401
-rect 20386 2312 20472 2810
-rect 20382 2288 20472 2312
-rect 20382 1880 20468 2288
-rect 20600 2184 20702 2358
-rect 20776 1880 20878 1974
-rect 20382 1790 20884 1880
-rect 20386 1788 20884 1790
-rect 21292 -1170 21352 48
-rect 24370 -1026 24430 192
-rect 27710 -818 27770 440
-rect 31104 -636 31164 734
-rect 34346 -442 34406 1020
-rect 37808 -300 37868 1456
-rect 43102 1292 43154 23928
-rect 67968 2260 68026 2354
-rect 43092 -108 43158 1292
-rect 48502 39 48572 54
-rect 78542 50 78638 662
-rect 81690 52 81788 1002
-rect 85120 432 85182 1398
-rect 85120 98 85190 432
-rect 85120 72 85202 98
-rect 85126 70 85202 72
-rect 48502 5 48523 39
-rect 48557 5 48572 39
-rect 48502 -10 48572 5
-rect 78540 23 78640 50
-rect 78540 -11 78570 23
-rect 78604 -11 78640 23
-rect 81688 16 81790 52
-rect 81688 8 81722 16
-rect 78540 -38 78640 -11
-rect 81690 -18 81722 8
-rect 81756 8 81790 16
-rect 85126 36 85142 70
-rect 85176 36 85202 70
-rect 85126 8 85202 36
-rect 81756 -18 81788 8
-rect 85126 -4 85190 8
-rect 78542 -44 78638 -38
-rect 81690 -48 81788 -18
-rect 88292 -102 89642 -98
-rect 90376 -102 90434 26367
-rect 93032 26096 93112 27534
-rect 96150 27322 96196 27580
-rect 96320 27036 96520 27052
-rect 96320 27002 96331 27036
-rect 96365 27002 96520 27036
-rect 96320 26988 96520 27002
-rect 93930 26830 93980 26922
-rect 96172 26364 96214 26570
-rect 96172 26120 96218 26364
-rect 96172 26100 96212 26120
-rect 93540 26096 96212 26100
-rect 93032 26030 96212 26096
-rect 93032 26026 93562 26030
-rect 88292 -108 90434 -102
-rect 43090 -168 90434 -108
-rect 43090 -172 85110 -168
-rect 85226 -172 90434 -168
-rect 43090 -186 43236 -172
-rect 88292 -184 90434 -172
-rect 85120 -264 85182 -238
-rect 85120 -298 85134 -264
-rect 85168 -272 85182 -264
-rect 85168 -298 85194 -272
-rect 37800 -304 63320 -300
-rect 85120 -304 85194 -298
-rect 37800 -362 85194 -304
-rect 37800 -366 85178 -362
-rect 37800 -372 63320 -366
-rect 37808 -380 37868 -372
-rect 34350 -468 34406 -442
-rect 81688 -460 81790 -420
-rect 44280 -462 81790 -460
-rect 44280 -464 81724 -462
-rect 39300 -468 81724 -464
-rect 34350 -496 81724 -468
-rect 81758 -464 81790 -462
-rect 81758 -496 81788 -464
-rect 34350 -520 81788 -496
-rect 34350 -524 81758 -520
-rect 34350 -528 70790 -524
-rect 34350 -532 44304 -528
-rect 34350 -534 39342 -532
-rect 34448 -536 39342 -534
-rect 31098 -644 36684 -636
-rect 42164 -644 57422 -640
-rect 31098 -648 65052 -644
-rect 31098 -660 72694 -648
-rect 78542 -660 78638 -652
-rect 31098 -675 78638 -660
-rect 31098 -696 78574 -675
-rect 31104 -704 31164 -696
-rect 36646 -704 78574 -696
-rect 42164 -709 78574 -704
-rect 78608 -709 78638 -675
-rect 42164 -712 78638 -709
-rect 57366 -716 78638 -712
-rect 65008 -720 78638 -716
-rect 78534 -730 78638 -720
-rect 27698 -822 33728 -818
-rect 27698 -835 75364 -822
-rect 27698 -869 75311 -835
-rect 75345 -866 75364 -835
-rect 75345 -869 75362 -866
-rect 27698 -876 75362 -869
-rect 27710 -886 27770 -876
-rect 75290 -884 75362 -876
-rect 71794 -1026 71862 -1022
-rect 24370 -1028 71862 -1026
-rect 24370 -1062 71812 -1028
-rect 71846 -1062 71862 -1028
-rect 24370 -1068 58626 -1062
-rect 24370 -1070 39590 -1068
-rect 71794 -1072 71862 -1062
-rect 46996 -1170 48574 -1160
-rect 21286 -1172 27752 -1170
-rect 40626 -1172 48574 -1170
-rect 21286 -1177 48574 -1172
-rect 21286 -1211 48521 -1177
-rect 48555 -1211 48574 -1177
-rect 21286 -1224 48574 -1211
-rect 21286 -1230 47092 -1224
-rect 21424 -1232 26450 -1230
-rect 27734 -1232 40650 -1230
-<< viali >>
-rect 45777 51336 45811 51370
-rect 20399 51221 20433 51255
-rect 45777 51156 45811 51190
-rect 811 50591 845 50625
-rect 809 50417 843 50451
-rect 20399 50377 20433 50411
-rect 48111 50609 48145 50643
-rect 48119 50407 48153 50441
-rect 43124 26697 43158 26731
-rect 90401 26721 90435 26755
-rect 43120 26483 43154 26517
-rect 90389 26367 90423 26401
-rect 48523 5 48557 39
-rect 78570 -11 78604 23
-rect 81722 -18 81756 16
-rect 85142 36 85176 70
-rect 96331 27002 96365 27036
-rect 85134 -298 85168 -264
-rect 81724 -496 81758 -462
-rect 78574 -709 78608 -675
-rect 75311 -869 75345 -835
-rect 71812 -1062 71846 -1028
-rect 48521 -1211 48555 -1177
-<< metal1 >>
-rect 45766 51372 45824 51384
-rect 45764 51370 45824 51372
-rect 45764 51336 45777 51370
-rect 45811 51336 45824 51370
-rect 45764 51326 45824 51336
-rect 20376 51255 20450 51276
-rect 20376 51221 20399 51255
-rect 20433 51221 20450 51255
-rect 796 50625 854 50656
-rect 796 50591 811 50625
-rect 845 50591 854 50625
-rect 796 50451 854 50591
-rect 796 50417 809 50451
-rect 843 50417 854 50451
-rect 796 50404 854 50417
-rect 20376 50411 20450 51221
-rect 45768 51192 45822 51326
-rect 45766 51190 45822 51192
-rect 45766 51156 45777 51190
-rect 45811 51156 45822 51190
-rect 45766 51140 45822 51156
-rect 48092 50658 48158 50662
-rect 48092 50643 48168 50658
-rect 48092 50609 48111 50643
-rect 48145 50609 48168 50643
-rect 48092 50594 48168 50609
-rect 48100 50456 48168 50594
-rect 20376 50377 20399 50411
-rect 20433 50377 20450 50411
-rect 48098 50441 48168 50456
-rect 48098 50407 48119 50441
-rect 48153 50412 48168 50441
-rect 48153 50407 48164 50412
-rect 48098 50388 48164 50407
-rect 20376 50358 20450 50377
-rect 94792 27354 94880 27366
-rect 94792 27302 94825 27354
-rect 94877 27302 94880 27354
-rect 94792 27290 94880 27302
-rect 96320 27036 96386 27052
-rect 96320 27002 96331 27036
-rect 96365 27002 96386 27036
-rect 96320 26986 96386 27002
-rect 43116 26742 43162 26758
-rect 90362 26755 90468 26792
-rect 43116 26731 43164 26742
-rect 43116 26697 43124 26731
-rect 43158 26697 43164 26731
-rect 43116 26686 43164 26697
-rect 90362 26721 90401 26755
-rect 90435 26721 90468 26755
-rect 43116 26526 43162 26686
-rect 43110 26517 43162 26526
-rect 43110 26483 43120 26517
-rect 43154 26483 43162 26517
-rect 43110 26472 43162 26483
-rect 43116 26470 43162 26472
-rect 90362 26401 90468 26721
-rect 94048 26578 94160 26630
-rect 94048 26526 94073 26578
-rect 94125 26526 94160 26578
-rect 94048 26492 94160 26526
-rect 90362 26367 90389 26401
-rect 90423 26367 90468 26401
-rect 90362 26340 90468 26367
-rect 48502 46 48572 54
-rect 48502 39 48574 46
-rect 48502 5 48523 39
-rect 48557 5 48574 39
-rect 48502 -10 48574 5
-rect 48512 -1162 48574 -10
-rect 71798 -1022 71858 172
-rect 75288 -780 75364 436
-rect 85122 98 85186 126
-rect 85122 70 85202 98
-rect 78540 23 78640 50
-rect 78540 -11 78570 23
-rect 78604 -11 78640 23
-rect 81688 42 81790 52
-rect 81688 16 81792 42
-rect 81688 8 81722 16
-rect 78540 -38 78640 -11
-rect 81694 -18 81722 8
-rect 81756 -18 81792 16
-rect 78542 -675 78638 -38
-rect 81694 -462 81792 -18
-rect 85122 36 85142 70
-rect 85176 36 85202 70
-rect 85122 8 85202 36
-rect 85122 -206 85186 8
-rect 85114 -264 85186 -206
-rect 85114 -298 85134 -264
-rect 85168 -272 85186 -264
-rect 85168 -298 85194 -272
-rect 85114 -362 85194 -298
-rect 85114 -378 85178 -362
-rect 81694 -496 81724 -462
-rect 81758 -496 81792 -462
-rect 81694 -534 81792 -496
-rect 78542 -692 78574 -675
-rect 78540 -709 78574 -692
-rect 78608 -709 78638 -675
-rect 78540 -730 78638 -709
-rect 75288 -822 75360 -780
-rect 75288 -835 75364 -822
-rect 75288 -869 75311 -835
-rect 75345 -866 75364 -835
-rect 75345 -869 75362 -866
-rect 75288 -872 75362 -869
-rect 75290 -884 75362 -872
-rect 71794 -1028 71862 -1022
-rect 71794 -1062 71812 -1028
-rect 71846 -1062 71862 -1028
-rect 71794 -1072 71862 -1062
-rect 48506 -1177 48574 -1162
-rect 48506 -1211 48521 -1177
-rect 48555 -1211 48574 -1177
-rect 48506 -1224 48574 -1211
-<< via1 >>
-rect 94825 27302 94877 27354
-rect 94073 26526 94125 26578
-<< metal2 >>
-rect 24290 50910 25152 50920
-rect 24290 50906 58282 50910
-rect 24290 50854 58400 50906
-rect 24290 50850 58282 50854
-rect 25120 50848 58282 50850
-rect 94810 27436 94880 27446
-rect 94810 27380 94816 27436
-rect 94872 27380 94880 27436
-rect 94810 27354 94880 27380
-rect 94810 27302 94825 27354
-rect 94877 27302 94880 27354
-rect 94810 27292 94880 27302
-rect 93934 26586 94146 26592
-rect 93914 26578 94146 26586
-rect 93914 26526 94073 26578
-rect 94125 26526 94146 26578
-rect 93914 26500 94146 26526
-rect 93914 26240 93954 26500
-rect 91012 26238 93958 26240
-rect 90500 26202 93958 26238
-rect 90500 26200 92030 26202
-rect 90500 26198 91014 26200
-<< via2 >>
-rect 94816 27380 94872 27436
-<< metal3 >>
-rect 94810 27530 94890 27538
-rect 94810 27466 94820 27530
-rect 94884 27466 94890 27530
-rect 94810 27456 94890 27466
-rect 94810 27436 94880 27456
-rect 94810 27380 94816 27436
-rect 94872 27380 94880 27436
-rect 94810 27372 94880 27380
-<< via3 >>
-rect 94820 27466 94884 27530
-<< metal4 >>
-rect 23762 51496 49764 51500
-rect 22752 51434 49764 51496
-rect 22752 51432 23808 51434
-rect 22764 50622 22848 51432
-rect 49692 50314 49762 51434
-rect 91334 28070 94890 28140
-rect 94816 27590 94890 28070
-rect 94810 27584 94890 27590
-rect 94810 27530 94888 27584
-rect 94810 27466 94820 27530
-rect 94884 27466 94888 27530
-rect 94810 27460 94888 27466
-use 7bitdac_layout 7bitdac_layout_0
-timestamp 1624221218
-transform 1 0 47558 0 1 2444
-box -252 -2456 45562 48686
-use 7bitdac_layout 7bitdac_layout_1
-timestamp 1624221218
-transform 1 0 252 0 1 2456
-box -252 -2456 45562 48686
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 93914 0 1 26310
-box 40 172 2460 1180
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 1 0 20392 0 1 2302
-box 218 -342 484 -90
-<< labels >>
-rlabel locali s 20652 2264 20652 2264 4 x1_vref5
-rlabel locali s 20812 1868 20812 1868 4 x2_vref1
-rlabel locali s 804 50664 804 50664 4 inp1
-rlabel locali s 67994 2294 67994 2294 4 inp2
-rlabel locali s 93952 26862 93952 26862 4 d7
-rlabel locali s 96452 27014 96452 27014 4 out_v
-rlabel locali s 96176 27544 96176 27544 4 x1_out_v
-rlabel locali s 96200 26388 96200 26388 4 x2_out_v
-rlabel metal2 s 93978 26540 93978 26540 4 gnd!
-rlabel metal4 s 94864 27554 94864 27554 4 vdd!
-rlabel locali s 43126 44 43126 44 4 d6
-rlabel locali s 37842 -218 37842 -218 4 d5
-rlabel locali s 34364 612 34364 612 4 d4
-rlabel locali s 31132 486 31132 486 4 d3
-rlabel locali s 27736 152 27736 152 4 d2
-rlabel locali s 24396 40 24396 40 4 d1
-rlabel locali s 21316 -64 21316 -64 4 d0
-<< end >>
diff --git a/mag/9bitdac_layout.mag b/mag/9bitdac_layout.mag
deleted file mode 100644
index fb7b008..0000000
--- a/mag/9bitdac_layout.mag
+++ /dev/null
@@ -1,590 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1260 -3236 200032 54054
-<< locali >>
-rect 143604 52756 173468 52758
-rect 143604 52718 198410 52756
-rect 120322 52714 198410 52718
-rect 120322 52674 143648 52714
-rect 173454 52712 198410 52714
-rect 97118 52582 97268 52584
-rect 120322 52582 120364 52674
-rect 97118 52576 120364 52582
-rect 97118 52542 97135 52576
-rect 97169 52542 120364 52576
-rect 97118 52530 120364 52542
-rect 97118 52528 120360 52530
-rect 96280 52462 96342 52466
-rect 98716 52462 98882 52466
-rect 71454 52454 85650 52456
-rect 94858 52454 96112 52456
-rect 69398 52450 96112 52454
-rect 67656 52446 67710 52448
-rect 68402 52446 96112 52450
-rect 67656 52434 96057 52446
-rect 67656 52400 67662 52434
-rect 67696 52412 96057 52434
-rect 96091 52412 96112 52446
-rect 96258 52452 98882 52462
-rect 96258 52418 96285 52452
-rect 96319 52418 98882 52452
-rect 96258 52414 98882 52418
-rect 96258 52412 97512 52414
-rect 67696 52408 96112 52412
-rect 67696 52406 71464 52408
-rect 85622 52406 96112 52408
-rect 67696 52402 69446 52406
-rect 96040 52402 96108 52406
-rect 96280 52404 96342 52412
-rect 67696 52400 68450 52402
-rect 67656 52398 68450 52400
-rect 67656 52392 67710 52398
-rect 97118 52322 97184 52334
-rect 97118 52288 97135 52322
-rect 97169 52288 97184 52322
-rect 796 51892 854 51954
-rect 67650 51664 67710 51674
-rect 67650 51630 67664 51664
-rect 67698 51630 67710 51664
-rect 67650 51616 67710 51630
-rect 67658 47534 67700 51616
-rect 67658 41838 67702 47534
-rect 67658 41806 67704 41838
-rect 67660 36140 67704 41806
-rect 67658 36110 67704 36140
-rect 67658 24756 67702 36110
-rect 97118 29332 97184 52288
-rect 98820 52248 98878 52414
-rect 98822 51746 98878 52248
-rect 97112 28286 97184 29332
-rect 198360 29304 198410 52712
-rect 198360 29290 198412 29304
-rect 198362 28628 198412 29290
-rect 96494 28216 97184 28286
-rect 198360 28592 198412 28628
-rect 93744 28088 93994 28136
-rect 93748 27571 93830 28088
-rect 191874 28014 192000 28028
-rect 191874 27918 192008 28014
-rect 191876 27914 191984 27918
-rect 93748 27537 93776 27571
-rect 93810 27537 93830 27571
-rect 93748 27504 93830 27537
-rect 191880 27848 191942 27914
-rect 191880 27404 191938 27848
-rect 191880 27370 191891 27404
-rect 191925 27370 191938 27404
-rect 191880 27360 191938 27370
-rect 194514 27280 194548 28140
-rect 198360 27710 198410 28592
-rect 198528 27444 198610 27446
-rect 198526 27426 198772 27444
-rect 198526 27392 198542 27426
-rect 198576 27392 198772 27426
-rect 198526 27380 198772 27392
-rect 198528 27374 198610 27380
-rect 93748 27185 93834 27210
-rect 93748 27151 93774 27185
-rect 93808 27151 93834 27185
-rect 93748 26488 93834 27151
-rect 192100 27050 192152 27056
-rect 191880 27037 192152 27050
-rect 191880 27003 191892 27037
-rect 191926 27003 192152 27037
-rect 194514 27012 194552 27280
-rect 196098 27218 196190 27310
-rect 191880 26992 192152 27003
-rect 93752 26436 93830 26488
-rect 93748 26284 93830 26436
-rect 67658 24732 67704 24756
-rect 67660 19046 67704 24732
-rect 67658 16746 67704 19046
-rect 67658 16720 67706 16746
-rect 67660 14448 67706 16720
-rect 67660 13050 67708 14448
-rect 67658 13028 67708 13050
-rect 67658 11654 67706 13028
-rect 67658 11630 67708 11654
-rect 67660 7450 67708 11630
-rect 67658 7430 67708 7450
-rect 67658 6042 67706 7430
-rect 67656 6030 67706 6042
-rect 67656 4634 67704 6030
-rect 67654 4622 67704 4634
-rect 67654 3230 67702 4622
-rect 67862 3504 68030 3528
-rect 67860 3490 68030 3504
-rect 67860 3286 67908 3490
-rect 67654 2942 67704 3230
-rect 68032 2942 68084 3090
-rect 67654 2894 68084 2942
-rect 67654 2890 68082 2894
-rect 93748 2452 93800 26284
-rect 165990 3266 166048 3372
-rect 93742 2428 93800 2452
-rect 115660 2438 115708 2446
-rect 68750 82 68816 100
-rect 68750 48 68764 82
-rect 68798 48 68816 82
-rect 68750 30 68816 48
-rect 68750 28 68818 30
-rect 68760 18 68818 28
-rect 68762 -226 68818 18
-rect 68762 -1852 68808 -226
-rect 68758 -1920 68808 -1852
-rect 71804 -1830 71850 212
-rect 75294 -1714 75370 414
-rect 78572 -1620 78624 578
-rect 81708 -1502 81778 784
-rect 85106 -1290 85168 968
-rect 90368 452 90440 1178
-rect 90360 344 90440 452
-rect 90360 -1042 90438 344
-rect 93742 -868 93786 2428
-rect 115660 2404 115667 2438
-rect 115701 2404 115708 2438
-rect 115660 2396 115708 2404
-rect 112774 1876 112838 1984
-rect 112776 1866 112838 1876
-rect 112776 1832 112790 1866
-rect 112824 1860 112838 1866
-rect 112824 1832 112840 1860
-rect 112776 1826 112840 1832
-rect 112776 1824 112838 1826
-rect 109158 1705 109194 1706
-rect 109158 1671 109159 1705
-rect 109193 1671 109194 1705
-rect 109158 1670 109194 1671
-rect 105668 1457 105754 1500
-rect 105668 1423 105690 1457
-rect 105724 1423 105754 1457
-rect 105668 1396 105754 1423
-rect 102398 1231 102442 1234
-rect 102398 1197 102403 1231
-rect 102437 1197 102442 1231
-rect 192100 1198 192152 26992
-rect 194506 26798 194556 27012
-rect 194506 26794 195966 26798
-rect 198380 26794 198430 26960
-rect 194506 26740 198430 26794
-rect 194506 26732 198422 26740
-rect 195560 26728 198422 26732
-rect 102398 1194 102442 1197
-rect 99338 232 99406 1136
-rect 102376 965 102454 1006
-rect 102376 931 102403 965
-rect 102437 931 102454 965
-rect 105658 1001 105738 1032
-rect 109150 1018 109200 1020
-rect 105658 967 105680 1001
-rect 105714 967 105738 1001
-rect 105658 952 105738 967
-rect 109148 1007 109200 1018
-rect 109148 973 109157 1007
-rect 109191 973 109200 1007
-rect 109148 960 109200 973
-rect 112780 968 112838 996
-rect 102376 472 102454 931
-rect 99338 -764 99402 232
-rect 102376 -645 102444 472
-rect 105670 134 105714 952
-rect 102376 -679 102391 -645
-rect 102425 -679 102444 -645
-rect 102376 -714 102444 -679
-rect 105672 -750 105714 134
-rect 109148 -684 109196 960
-rect 112780 934 112794 968
-rect 112828 934 112838 968
-rect 112780 228 112838 934
-rect 141138 968 141176 970
-rect 141138 934 141140 968
-rect 141174 934 141176 968
-rect 141138 932 141176 934
-rect 115634 898 115734 928
-rect 115634 864 115667 898
-rect 115701 864 115734 898
-rect 115634 458 115734 864
-rect 112776 58 112838 228
-rect 115628 274 115734 458
-rect 112776 -660 112834 58
-rect 99338 -798 99348 -764
-rect 99382 -798 99402 -764
-rect 99338 -808 99402 -798
-rect 105670 -766 105740 -750
-rect 105670 -800 105683 -766
-rect 105717 -800 105740 -766
-rect 109148 -760 109200 -684
-rect 112776 -694 112792 -660
-rect 112826 -694 112834 -660
-rect 115628 -692 115728 274
-rect 112776 -710 112834 -694
-rect 115626 -724 115728 -692
-rect 115626 -730 115669 -724
-rect 109148 -794 109156 -760
-rect 109190 -794 109200 -760
-rect 115628 -758 115669 -730
-rect 115703 -758 115728 -724
-rect 115628 -776 115728 -758
-rect 109148 -800 109200 -794
-rect 105670 -814 105740 -800
-rect 192090 -830 192162 1198
-rect 192090 -860 192158 -830
-rect 188778 -868 192158 -860
-rect 93742 -908 192158 -868
-rect 90360 -1098 141198 -1042
-rect 90360 -1132 141132 -1098
-rect 141166 -1132 141198 -1098
-rect 90360 -1168 141198 -1132
-rect 90360 -1178 90438 -1168
-rect 85104 -1296 95784 -1290
-rect 85104 -1300 106466 -1296
-rect 85104 -1304 113234 -1300
-rect 85104 -1324 115728 -1304
-rect 85104 -1358 115659 -1324
-rect 115693 -1358 115728 -1324
-rect 85106 -1360 85168 -1358
-rect 95730 -1364 115728 -1358
-rect 106432 -1376 115728 -1364
-rect 113208 -1384 115728 -1376
-rect 81712 -1522 81778 -1502
-rect 81712 -1528 87110 -1522
-rect 92448 -1528 112832 -1522
-rect 81712 -1532 112832 -1528
-rect 81712 -1566 112794 -1532
-rect 112828 -1566 112832 -1532
-rect 81712 -1578 112832 -1566
-rect 87080 -1584 92492 -1578
-rect 78572 -1622 78754 -1620
-rect 81746 -1622 81802 -1616
-rect 90688 -1622 94746 -1620
-rect 109150 -1622 109210 -1612
-rect 78570 -1656 109158 -1622
-rect 109192 -1656 109210 -1622
-rect 78570 -1658 109210 -1656
-rect 78570 -1660 90710 -1658
-rect 109146 -1668 109210 -1658
-rect 75524 -1714 105722 -1710
-rect 75294 -1731 105722 -1714
-rect 75294 -1750 105673 -1731
-rect 75294 -1752 78622 -1750
-rect 75294 -1766 75758 -1752
-rect 105654 -1765 105673 -1750
-rect 105707 -1765 105722 -1731
-rect 105654 -1782 105722 -1765
-rect 105654 -1788 105716 -1782
-rect 75662 -1818 102084 -1814
-rect 71804 -1832 71998 -1830
-rect 75662 -1832 102432 -1818
-rect 71804 -1839 102432 -1832
-rect 71804 -1873 102385 -1839
-rect 102419 -1873 102432 -1839
-rect 71804 -1878 102432 -1873
-rect 71946 -1882 102432 -1878
-rect 75662 -1886 102432 -1882
-rect 102054 -1890 102432 -1886
-rect 68758 -1926 99390 -1920
-rect 68758 -1956 99344 -1926
-rect 68760 -1960 99344 -1956
-rect 99378 -1960 99390 -1926
-rect 68760 -1962 99390 -1960
-rect 71944 -1966 99390 -1962
-rect 99330 -1976 99388 -1966
-<< viali >>
-rect 97135 52542 97169 52576
-rect 67662 52400 67696 52434
-rect 96057 52412 96091 52446
-rect 96285 52418 96319 52452
-rect 97135 52288 97169 52322
-rect 67664 51630 67698 51664
-rect 93776 27537 93810 27571
-rect 191891 27370 191925 27404
-rect 198542 27392 198576 27426
-rect 93774 27151 93808 27185
-rect 191892 27003 191926 27037
-rect 68764 48 68798 82
-rect 115667 2404 115701 2438
-rect 112790 1832 112824 1866
-rect 109159 1671 109193 1705
-rect 105690 1423 105724 1457
-rect 102403 1197 102437 1231
-rect 102403 931 102437 965
-rect 105680 967 105714 1001
-rect 109157 973 109191 1007
-rect 102391 -679 102425 -645
-rect 112794 934 112828 968
-rect 141140 934 141174 968
-rect 115667 864 115701 898
-rect 99348 -798 99382 -764
-rect 105683 -800 105717 -766
-rect 112792 -694 112826 -660
-rect 109156 -794 109190 -760
-rect 115669 -758 115703 -724
-rect 141132 -1132 141166 -1098
-rect 115659 -1358 115693 -1324
-rect 112794 -1566 112828 -1532
-rect 109158 -1656 109192 -1622
-rect 105673 -1765 105707 -1731
-rect 102385 -1873 102419 -1839
-rect 99344 -1960 99378 -1926
-<< metal1 >>
-rect 97118 52576 97186 52586
-rect 97118 52542 97135 52576
-rect 97169 52542 97186 52576
-rect 97118 52528 97186 52542
-rect 96280 52462 96342 52466
-rect 96038 52452 96342 52462
-rect 67656 52434 67710 52448
-rect 67656 52400 67662 52434
-rect 67696 52400 67710 52434
-rect 96038 52446 96285 52452
-rect 96038 52412 96057 52446
-rect 96091 52418 96285 52446
-rect 96319 52418 96342 52452
-rect 96091 52412 96342 52418
-rect 96038 52406 96342 52412
-rect 96040 52402 96108 52406
-rect 96280 52404 96342 52406
-rect 67656 52392 67710 52400
-rect 67658 51674 67700 52392
-rect 97118 52328 97184 52528
-rect 97118 52322 97186 52328
-rect 97118 52288 97135 52322
-rect 97169 52288 97186 52322
-rect 97118 52270 97186 52288
-rect 67650 51664 67710 51674
-rect 67650 51630 67664 51664
-rect 67698 51630 67710 51664
-rect 67650 51616 67710 51630
-rect 197006 27740 197116 27748
-rect 197006 27688 197046 27740
-rect 197098 27688 197116 27740
-rect 197006 27680 197116 27688
-rect 93750 27571 93834 27598
-rect 93750 27537 93776 27571
-rect 93810 27537 93834 27571
-rect 93750 27185 93834 27537
-rect 198528 27426 198610 27446
-rect 93750 27151 93774 27185
-rect 93808 27151 93834 27185
-rect 93750 27132 93834 27151
-rect 191880 27404 191938 27418
-rect 191880 27370 191891 27404
-rect 191925 27370 191938 27404
-rect 198528 27392 198542 27426
-rect 198576 27392 198610 27426
-rect 198528 27374 198610 27392
-rect 191880 27360 191938 27370
-rect 191880 27050 191936 27360
-rect 191880 27037 191938 27050
-rect 191880 27003 191892 27037
-rect 191926 27003 191938 27037
-rect 191880 26992 191938 27003
-rect 196282 26965 196372 27024
-rect 196282 26913 196298 26965
-rect 196350 26913 196372 26965
-rect 196282 26886 196372 26913
-rect 115634 2438 115722 2506
-rect 115634 2404 115667 2438
-rect 115701 2404 115722 2438
-rect 112776 1870 112838 1874
-rect 112776 1866 112840 1870
-rect 112776 1832 112790 1866
-rect 112824 1832 112840 1866
-rect 112776 1826 112840 1832
-rect 109150 1705 109200 1724
-rect 109150 1671 109159 1705
-rect 109193 1671 109200 1705
-rect 105668 1457 105754 1500
-rect 105668 1423 105690 1457
-rect 105724 1423 105754 1457
-rect 105668 1396 105754 1423
-rect 68748 100 68816 1312
-rect 102382 1231 102464 1260
-rect 102382 1197 102403 1231
-rect 102437 1197 102464 1231
-rect 102382 965 102464 1197
-rect 105668 1032 105710 1396
-rect 102382 931 102403 965
-rect 102437 931 102464 965
-rect 105658 1001 105738 1032
-rect 109150 1018 109200 1671
-rect 105658 967 105680 1001
-rect 105714 967 105738 1001
-rect 105658 952 105738 967
-rect 109148 1007 109200 1018
-rect 109148 973 109157 1007
-rect 109191 973 109200 1007
-rect 109148 960 109200 973
-rect 112776 968 112834 1826
-rect 102382 896 102464 931
-rect 112776 934 112794 968
-rect 112828 934 112834 968
-rect 112776 920 112834 934
-rect 115634 898 115722 2404
-rect 115634 864 115667 898
-rect 115701 864 115722 898
-rect 115634 828 115722 864
-rect 141102 968 141204 1174
-rect 141102 934 141140 968
-rect 141174 934 141204 968
-rect 68750 82 68816 100
-rect 68750 48 68764 82
-rect 68798 48 68816 82
-rect 68750 28 68816 48
-rect 102370 -645 102438 -606
-rect 102370 -679 102391 -645
-rect 102425 -679 102438 -645
-rect 99328 -764 99392 -732
-rect 99328 -798 99348 -764
-rect 99382 -798 99392 -764
-rect 99328 -1904 99392 -798
-rect 102370 -1839 102438 -679
-rect 112780 -660 112838 -630
-rect 112780 -694 112792 -660
-rect 112826 -694 112838 -660
-rect 105670 -766 105740 -750
-rect 105670 -800 105683 -766
-rect 105717 -800 105740 -766
-rect 105670 -814 105740 -800
-rect 109148 -760 109200 -746
-rect 109148 -794 109156 -760
-rect 109190 -794 109200 -760
-rect 109148 -800 109200 -794
-rect 105672 -1714 105714 -814
-rect 109148 -1612 109196 -800
-rect 112780 -1532 112838 -694
-rect 115626 -724 115726 -692
-rect 115622 -758 115669 -724
-rect 115703 -730 115726 -724
-rect 115703 -758 115722 -730
-rect 115622 -1324 115722 -758
-rect 141102 -1030 141204 934
-rect 141102 -1098 141198 -1030
-rect 141102 -1132 141132 -1098
-rect 141166 -1132 141198 -1098
-rect 141102 -1164 141198 -1132
-rect 115622 -1358 115659 -1324
-rect 115693 -1358 115722 -1324
-rect 115622 -1378 115722 -1358
-rect 112780 -1566 112794 -1532
-rect 112828 -1566 112838 -1532
-rect 112780 -1580 112838 -1566
-rect 109148 -1622 109210 -1612
-rect 109148 -1640 109158 -1622
-rect 109146 -1656 109158 -1640
-rect 109192 -1656 109210 -1622
-rect 109146 -1668 109210 -1656
-rect 105660 -1720 105722 -1714
-rect 105654 -1731 105722 -1720
-rect 105654 -1765 105673 -1731
-rect 105707 -1765 105722 -1731
-rect 105654 -1782 105722 -1765
-rect 105654 -1788 105716 -1782
-rect 102370 -1873 102385 -1839
-rect 102419 -1873 102438 -1839
-rect 102370 -1890 102438 -1873
-rect 99328 -1926 99390 -1904
-rect 99328 -1946 99344 -1926
-rect 99330 -1960 99344 -1946
-rect 99378 -1960 99390 -1926
-rect 99330 -1966 99390 -1960
-rect 99330 -1976 99388 -1966
-<< via1 >>
-rect 197046 27688 197098 27740
-rect 196298 26913 196350 26965
-<< metal2 >>
-rect 108964 51918 109086 51930
-rect 108958 51882 109086 51918
-rect 78606 51740 79736 51744
-rect 108958 51742 109016 51882
-rect 100608 51740 109016 51742
-rect 78606 51700 109016 51740
-rect 78606 51694 109000 51700
-rect 78612 45584 78666 51694
-rect 197030 27821 197120 27826
-rect 197030 27765 197050 27821
-rect 197106 27765 197120 27821
-rect 197030 27740 197120 27765
-rect 197030 27688 197046 27740
-rect 197098 27688 197120 27740
-rect 197030 27680 197120 27688
-rect 191938 27330 194848 27334
-rect 191938 27288 195816 27330
-rect 194814 27286 195816 27288
-rect 195754 26962 195816 27286
-rect 196198 26965 196362 26984
-rect 196198 26962 196298 26965
-rect 195754 26913 196298 26962
-rect 196350 26913 196362 26965
-rect 195754 26886 196362 26913
-rect 195754 26870 196232 26886
-<< via2 >>
-rect 197050 27765 197106 27821
-<< metal3 >>
-rect 197030 27915 197120 27940
-rect 197030 27851 197049 27915
-rect 197113 27851 197120 27915
-rect 197030 27826 197120 27851
-rect 197032 27821 197120 27826
-rect 197032 27765 197050 27821
-rect 197106 27765 197120 27821
-rect 197032 27756 197120 27765
-<< via3 >>
-rect 197049 27851 197113 27915
-<< metal4 >>
-rect 98718 51758 100484 51828
-rect 98720 51494 98806 51758
-rect 98724 51396 98800 51494
-rect 100396 51404 100476 51758
-rect 76478 51204 82974 51206
-rect 98724 51204 98796 51396
-rect 76478 51134 98796 51204
-rect 192840 29230 193268 29232
-rect 196698 29230 197136 29242
-rect 192840 29160 197140 29230
-rect 196698 29156 197140 29160
-rect 197044 27980 197140 29156
-rect 197032 27958 197140 27980
-rect 197032 27915 197128 27958
-rect 197032 27851 197049 27915
-rect 197113 27851 197128 27915
-rect 197032 27834 197128 27851
-use 8bitdac_layout 8bitdac_layout_0
-timestamp 1624221218
-transform 1 0 0 0 1 1232
-box 0 -1232 96520 51562
-use 8bitdac_layout 8bitdac_layout_1
-timestamp 1624221218
-transform 1 0 98026 0 1 1086
-box 0 -1232 96520 51562
-use switch_layout switch_layout_0
-timestamp 1624221218
-transform 1 0 196132 0 1 26700
-box 40 172 2460 1180
-use res250_layout res250_layout_0
-timestamp 1624221218
-transform 1 0 67642 0 1 3396
-box 218 -342 484 -90
-<< labels >>
-rlabel locali s 198666 27404 198666 27404 4 out_v
-rlabel metal4 s 197072 27958 197072 27958 4 vdd!
-rlabel metal2 s 196242 26928 196242 26928 4 gnd!
-rlabel locali s 198396 26794 198396 26794 4 x2_out_v
-rlabel locali s 198392 27904 198392 27904 4 x1_out_v
-rlabel locali s 196140 27266 196140 27266 4 d8
-rlabel locali s 67886 3392 67886 3392 4 x1_vref5
-rlabel locali s 68056 2954 68056 2954 4 x2_vref1
-rlabel locali s 166012 3308 166012 3308 4 inp2
-rlabel locali s 824 51932 824 51932 4 inp1
-rlabel locali s 68780 -66 68780 -66 4 d0
-rlabel locali s 90414 582 90414 582 4 d6
-rlabel locali s 93764 2660 93764 2660 4 d7
-rlabel locali s 85134 -908 85134 -908 4 d5
-rlabel locali s 81746 -1340 81746 -1340 4 d4
-rlabel locali s 78594 -484 78594 -484 4 d3
-rlabel locali s 75332 -1538 75332 -1538 4 d2
-rlabel locali s 71824 -1620 71824 -1620 4 d1
-<< end >>
diff --git a/mag/INV.mag b/mag/INV.mag
deleted file mode 100644
index 7f0a1ad..0000000
--- a/mag/INV.mag
+++ /dev/null
@@ -1,153 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1348 -1700 1550 1810
-<< nwell >>
-rect 0 334 288 550
-rect 0 0 282 334
-<< pwell >>
-rect 20 -430 278 -312
-<< nmos >>
-rect 130 -242 160 -120
-<< pmos >>
-rect 130 60 160 300
-<< ndiff >>
-rect 42 -163 130 -120
-rect 42 -197 57 -163
-rect 91 -197 130 -163
-rect 42 -242 130 -197
-rect 160 -163 248 -120
-rect 160 -197 199 -163
-rect 233 -197 248 -163
-rect 160 -242 248 -197
-<< pdiff >>
-rect 50 227 130 300
-rect 50 193 63 227
-rect 97 193 130 227
-rect 50 159 130 193
-rect 50 125 63 159
-rect 97 125 130 159
-rect 50 60 130 125
-rect 160 232 242 300
-rect 160 198 194 232
-rect 228 198 242 232
-rect 160 164 242 198
-rect 160 130 194 164
-rect 228 130 242 164
-rect 160 60 242 130
-<< ndiffc >>
-rect 57 -197 91 -163
-rect 199 -197 233 -163
-<< pdiffc >>
-rect 63 193 97 227
-rect 63 125 97 159
-rect 194 198 228 232
-rect 194 130 228 164
-<< psubdiff >>
-rect 20 -368 278 -312
-rect 20 -402 97 -368
-rect 131 -402 179 -368
-rect 213 -402 278 -368
-rect 20 -430 278 -402
-<< nsubdiff >>
-rect 40 451 250 498
-rect 40 447 166 451
-rect 40 413 94 447
-rect 128 417 166 447
-rect 200 417 250 451
-rect 128 413 250 417
-rect 40 378 250 413
-<< psubdiffcont >>
-rect 97 -402 131 -368
-rect 179 -402 213 -368
-<< nsubdiffcont >>
-rect 94 413 128 447
-rect 166 417 200 451
-<< poly >>
-rect 130 300 160 330
-rect -88 -39 -30 -10
-rect -88 -73 -76 -39
-rect -42 -40 -30 -39
-rect 130 -40 160 60
-rect -42 -73 160 -40
-rect -88 -80 160 -73
-rect -88 -102 -30 -80
-rect 130 -120 160 -80
-rect 130 -270 160 -242
-<< polycont >>
-rect -76 -73 -42 -39
-<< locali >>
-rect 10 451 270 520
-rect 10 447 166 451
-rect 10 425 94 447
-rect 10 391 41 425
-rect 75 413 94 425
-rect 128 417 166 447
-rect 200 425 270 451
-rect 200 417 213 425
-rect 128 413 213 417
-rect 75 391 213 413
-rect 247 391 270 425
-rect 10 368 270 391
-rect 50 302 100 368
-rect 50 227 102 302
-rect 50 193 63 227
-rect 97 193 102 227
-rect 50 159 102 193
-rect 50 125 63 159
-rect 97 125 102 159
-rect 50 58 102 125
-rect 190 232 242 300
-rect 190 198 194 232
-rect 228 198 242 232
-rect 190 164 242 198
-rect 190 130 194 164
-rect 228 130 242 164
-rect 190 60 242 130
-rect -88 -39 -30 -10
-rect -88 -73 -76 -39
-rect -42 -73 -30 -39
-rect -88 -102 -30 -73
-rect 190 -120 240 60
-rect 40 -163 100 -120
-rect 40 -197 57 -163
-rect 91 -197 100 -163
-rect 40 -310 100 -197
-rect 190 -163 248 -120
-rect 190 -197 199 -163
-rect 233 -197 248 -163
-rect 190 -240 248 -197
-rect 20 -336 280 -310
-rect 20 -370 52 -336
-rect 86 -338 280 -336
-rect 86 -368 224 -338
-rect 86 -370 97 -368
-rect 20 -402 97 -370
-rect 131 -402 179 -368
-rect 213 -372 224 -368
-rect 258 -372 280 -338
-rect 213 -402 280 -372
-rect 20 -430 280 -402
-<< viali >>
-rect 41 391 75 425
-rect 213 391 247 425
-rect 52 -370 86 -336
-rect 224 -372 258 -338
-<< metal1 >>
-rect 0 425 282 528
-rect 0 420 41 425
-rect -2 391 41 420
-rect 75 391 213 425
-rect 247 420 282 425
-rect 247 391 278 420
-rect -2 358 278 391
-rect 8 -336 290 -298
-rect 8 -370 52 -336
-rect 86 -338 290 -336
-rect 86 -370 224 -338
-rect 8 -372 224 -370
-rect 258 -372 290 -338
-rect 8 -440 290 -372
-<< end >>
diff --git a/mag/cap_28p.mag b/mag/cap_28p.mag
deleted file mode 100644
index e15989c..0000000
--- a/mag/cap_28p.mag
+++ /dev/null
@@ -1,21 +0,0 @@
-magic
-tech sky130A
-timestamp 1624221218
-<< checkpaint >>
-rect -1614 -1856 13040 13079
-<< metal1 >>
-rect -984 12417 -496 12449
-rect -984 11818 12410 12417
-rect -984 -1163 12375 11818
-rect -984 -1226 -464 -1163
-rect 11855 -1226 12375 -1163
-<< metal3 >>
-rect -984 12417 -496 12449
-rect -984 11818 12410 12417
-rect -984 11706 12375 11818
-rect -984 -442 -260 11706
-rect 11803 -442 12375 11706
-rect -984 -1163 12375 -442
-rect -984 -1226 -464 -1163
-rect 11855 -1226 12375 -1163
-<< end >>
diff --git a/mag/dot.magicrc.dist b/mag/dot.magicrc.dist
deleted file mode 100644
index 94668c3..0000000
--- a/mag/dot.magicrc.dist
+++ /dev/null
@@ -1,120 +0,0 @@
-# SPDX-FileCopyrightText: 2020 Efabless Corporation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-
-#---------------------------------------------------------------------
-# 1) must set the variable PDK_ROOT
-#---------------------------------------------------------------------
-
-puts stdout "Sourcing design .magicrc for technology sky130A ..."
-
-#---------------------------------------------------------------------
-
-# Put grid on 0.005 pitch. This is important, as some commands don't
-# rescale the grid automatically (such as lef read?).
-
-set scalefac [tech lambda]
-if {[lindex $scalefac 1] < 2} {
- scalegrid 1 2
-}
-#---------------------------------------------------------------------
-#
-# Allow override of DRC on/off from environment variable DRC
-#
-#---------------------------------------------------------------------
-if {[catch {set DRC $env(DRC)}]} {
- # default value
- drc off
-} else {
- drc style drc(full)
- drc euclidean on
- sdrc $DRC
-}
-#
-#---------------------------------------------------------------------
-# Allow override of PDK path from environment variable PDKPATH
-#
-if {[catch {set PDKPATH $env(PDKPATH)}]} {
- set PDKPATH "$::env(PDK_ROOT)/sky130A"
-}
-#---------------------------------------------------------------------
-# loading technology
-tech load $PDKPATH/libs.tech/magic/current/sky130A.tech
-
-#---------------------------------------------------------------------
-# load device generator
-source $PDKPATH/libs.tech/magic/current/sky130A.tcl
-
-#---------------------------------------------------------------------
-# load bind keys (optional)
-# source $PDKPATH/libs.tech/magic/current/sky130A-BindKeys
-
-#---------------------------------------------------------------------
-# set units to lambda grid
-snap lambda
-
-#---------------------------------------------------------------------
-
-# set sky130 standard power, ground, and substrate names
-set VDD VPWR
-set GND VGND
-set SUB VSUBS
-
-#---------------------------------------------------------------------
-
-# Allow override of type of magic library views used, "mag" or "maglef",
-# from environment variable MAGTYPE. Deafault value is MAGTYPE=maglef
-
-if {[catch {set MAGTYPE $env(MAGTYPE)}]} {
- set MAGTYPE maglef
-}
-
-path search [concat "../$MAGTYPE" [path search]]
-
-#---------------------------------------------------------------------
-
-# add path to reference cells
-if {[file isdir ${PDKPATH}/libs.ref/${MAGTYPE}]} {
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_pr
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_io
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hd
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hdll
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hs
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hvl
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_lp
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_ls
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_ms
- addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_osu_sc
-} else {
- addpath ${PDKPATH}/libs.ref/sky130_fd_pr/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_io/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hd/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hdll/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hs/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hvl/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_sc_lp/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_sc_ls/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_fd_sc_ms/${MAGTYPE}
- addpath ${PDKPATH}/libs.ref/sky130_osu_sc/${MAGTYPE}
-}
-
-# add path to GDS cells
-
- addpath ../gds
-
-# add path to IP from catalog. This procedure defined in the PDK script.
-catch {magic::query_mylib_ip}
-# add path to local IP from user design space. Defined in the PDK script.
-catch {magic::query_my_projects}
diff --git a/mag/res250_layout.mag b/mag/res250_layout.mag
deleted file mode 100644
index fb29e47..0000000
--- a/mag/res250_layout.mag
+++ /dev/null
@@ -1,37 +0,0 @@
-magic
-tech sky130A
-timestamp 1624221218
-<< checkpaint >>
-rect -521 -801 872 585
-<< ndiff >>
-rect 119 -100 140 -94
-rect 119 -117 121 -100
-rect 138 -117 140 -100
-rect 119 -123 140 -117
-rect 205 -100 226 -93
-rect 205 -117 207 -100
-rect 224 -117 226 -100
-rect 205 -124 226 -117
-<< ndiffc >>
-rect 121 -117 138 -100
-rect 207 -117 224 -100
-<< ndiffres >>
-rect 114 -93 241 -78
-rect 114 -94 205 -93
-rect 114 -123 119 -94
-rect 140 -123 205 -94
-rect 114 -124 205 -123
-rect 226 -124 241 -93
-rect 114 -126 241 -124
-rect 114 -142 242 -126
-<< locali >>
-rect 112 -47 145 -45
-rect 109 -100 154 -47
-rect 109 -117 121 -100
-rect 138 -117 154 -100
-rect 109 -142 154 -117
-rect 195 -100 241 -77
-rect 195 -117 207 -100
-rect 224 -117 241 -100
-rect 195 -171 241 -117
-<< end >>
diff --git a/mag/res500_layout.mag b/mag/res500_layout.mag
deleted file mode 100644
index 672ea82..0000000
--- a/mag/res500_layout.mag
+++ /dev/null
@@ -1,39 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1042 -1548 1858 1170
-<< ndiff >>
-rect 238 -200 280 -188
-rect 238 -234 242 -200
-rect 276 -234 280 -200
-rect 238 -246 280 -234
-rect 528 -195 570 -184
-rect 528 -229 532 -195
-rect 566 -229 570 -195
-rect 528 -240 570 -229
-<< ndiffc >>
-rect 242 -234 276 -200
-rect 532 -229 566 -195
-<< ndiffres >>
-rect 228 -158 416 -156
-rect 228 -184 596 -158
-rect 228 -188 528 -184
-rect 228 -246 238 -188
-rect 280 -240 528 -188
-rect 570 -240 596 -184
-rect 280 -246 596 -240
-rect 228 -284 596 -246
-rect 416 -286 596 -284
-<< locali >>
-rect 224 -94 290 -90
-rect 218 -200 308 -94
-rect 218 -234 242 -200
-rect 276 -234 308 -200
-rect 218 -284 308 -234
-rect 508 -195 598 -96
-rect 508 -229 532 -195
-rect 566 -229 598 -195
-rect 508 -288 598 -229
-<< end >>
diff --git a/mag/sky130A.tech b/mag/sky130A.tech
deleted file mode 100644
index 196d5b9..0000000
--- a/mag/sky130A.tech
+++ /dev/null
@@ -1,6328 +0,0 @@
-#------------------------------------------------------------------------
-# Copyright (c) 2020 R. Timothy Edwards
-# Revisions: See below
-#
-# This file is an Open Source foundry process describing
-# the SkyWater sky130 hybrid 0.18um / 0.13um fabrication
-# process. The file may be distributed under the terms
-# of the Apache 2.0 license agreement.
-#
-#------------------------------------------------------------------------
-# This file is designed to be used with magic versions
-# 8.3.24 or newer.
-#------------------------------------------------------------------------
-tech
- format 35
- sky130A
-end
-
-version
- version 1.0.85-0-g32cdb20
- description "SkyWater SKY130: PRE ALPHA Vendor Open Source rules and DRC"
-end
-
-#------------------------------------------------------------------------
-# Status 7/10/20: Rev 1 (alpha):
-# First public release
-# Status 8/14/20: Rev 2 (alpha):
-# Started updating with new device/model naming convention
-#------------------------------------------------------------------------
-
-#------------------------------------------------------------------------
-# Supported device types
-#------------------------------------------------------------------------
-# device name magic ID layer description
-#------------------------------------------------------------------------
-# sky130_fd_pr__nfet_01v8 nfet standard nFET
-# sky130_fd_pr__nfet_01v8 scnfet standard nFET in standard cell**
-# sky130_fd_pr__special_nfet_latch npd special nFET in SRAM cell
-# sky130_fd_pr__special_nfet_pass npass special nFET in SRAM cell
-# sky130_fd_pr__nfet_01v8_lvt nfetlvt low Vt nFET
-# sky130_fd_bs_flash__special_sonosfet_star nsonos SONOS nFET
-# sky130_fd_pr__pfet_01v8 pfet standard pFET
-# sky130_fd_pr__pfet_01v8 scpfet standard pFET in standard cell**
-# sky130_fd_pr__special_pfet_pass ppu special pFET in SRAM cell
-# sky130_fd_pr__pfet_01v8_lvt pfetlvt low Vt pFET
-# sky130_fd_pr__pfet_01v8_mvt pfetmvt med Vt pFET
-# sky130_fd_pr__pfet_01v8_hvt pfethvt high Vt pFET
-# sky130_fd_pr__nfet_03v3_nvt --- native nFET
-# sky130_fd_pr__pfet_g5v0d10v5 mvpfet thickox pFET
-# sky130_fd_pr__nfet_g5v0d10v5 mvnfet thickox nFET
-# sky130_fd_pr__nfet_01v8_nvt mvnnfet thickox native nFET
-# sky130_fd_pr__diode_pw2nd_05v5 ndiode n+ diff diode
-# sky130_fd_pr__diode_pw2nd_05v5_lvt ndiodelvt low Vt n+ diff diode
-# sky130_fd_pr__diode_pw2nd_05v5_nvt nndiode diode with nndiff
-# sky130_fd_pr__diode_pw2nd_11v0 mvndiode thickox n+ diff diode
-# sky130_fd_pr__diode_pd2nw_05v5 pdiode p+ diff diode
-# sky130_fd_pr__diode_pd2nw_05v5_lvt pdiodelvt low Vt p+ diff diode
-# sky130_fd_pr__diode_pd2nw_05v5_hvt pdiodehvt high Vt p+ diff diode
-# sky130_fd_pr__diode_pd2nw_11v0 mvpdiode thickox p+ diff diode
-# sky130_fd_pr__npn_05v0 pbase NPN in deep nwell
-# sky130_fd_pr__npn_11v0 pbase thick oxide gated NPN
-# sky130_fd_pr__pnp_05v0 nbase PNP
-# sky130_fd_pr__cap_mim_m3_1 mimcap MiM cap 1st plate
-# sky130_fd_pr__cap_mim_m3_2 mimcap2 MiM cap 2nd plate
-# sky130_fd_pr__res_generic_nd rdn n+ diff resistor
-# sky130_fd_pr__res_generic_nd__hv mvrdn thickox n+ diff resistor
-# sky130_fd_pr__res_generic_pd rdp p+ diff resistor
-# sky130_fd_pr__res_generic_pd__nv mvrdp thickox p+ diff resistor
-# sky130_fd_pr__res_generic_l1 rli local interconnect resistor
-# sky130_fd_pr__res_generic_po npres n+ poly resistor
-# sky130_fd_pr__res_high_po_* ppres (*) p+ poly resistor (300 Ohms/sq)
-# sky130_fd_pr__res_xhigh_po_* xres (*) p+ poly resistor (2k Ohms/sq)
-# sky130_fd_pr__cap_var_lvt varactor low Vt varactor
-# sky130_fd_pr__cap_var_hvt varactorhvt high Vt varactor
-# sky130_fd_pr__cap_var mvvaractor thickox varactor
-# sky130_fd_pr__res_iso_pw rpw pwell resistor (in deep nwell)
-#
-# (*) Note that ppres may extract into some generic type called
-# "sky130_fd_pr__res_xhigh_po", but only specific sizes of xhrpoly are
-# allowed, and these are created from fixed layouts like the types below.
-#
-# (**) nFET and pFET in standard cells are the same as devices
-# outside of the standard cell except for the DRC rule for
-# FET to diffusion contact spacing (which is 0.05um, not 0.055um)
-#
-#-------------------------------------------------------------
-# The following devices are not extracted but are represented
-# only by script-generated subcells in the PDK.
-#-------------------------------------------------------------
-# sky130_fd_pr__esd_nfet_01v8 ESD nFET
-# sky130_fd_pr__esd_nfet_g5v0d10v5 ESD thickox nFET
-# sky130_fd_pr__esd_nfet_05v0_nvt ESD native nFET
-# sky130_fd_pr__esd_pfet_g5v0d10v5 ESD thickox pFET
-# sky130_fd_pr__special_nfet_pass_flash flash nFET device
-# sky130_fd_pr__esd_rf_diode_pw2nd_11v0 ESD n+ diode
-# sky130_fd_pr__esd_rf_diode_pd2nw_11v0 ESD p+ diode
-# sky130_fd_pr__cap_vpp_* Vpp cap
-# sky130_fd_pr__ind_* inductor
-# sky130_fd_pr__fuse_m4 metal fuse device
-#--------------------------------------------------------------
-
-#-----------------------------------------------------
-# Tile planes
-#-----------------------------------------------------
-
-planes
- dwell,dw
- well,w
- active,a
- locali,li1,li
- metal1,m1
- metal2,m2
- metal3,m3
- cap1,c1
- metal4,m4
- cap2,c2
- metal5,m5
- metali,mi
- block,b
- comment,c
-end
-
-#-----------------------------------------------------
-# Tile types
-#-----------------------------------------------------
-
-types
-# Deep nwell
- dwell dnwell,dnw
-
-# Wells
- well nwell,nw
- well pwell,pw
- well rpw,rpwell
- -well obswell
- well pbase,npn
- well nbase,pnp
-
-# Transistors
- active nmos,ntransistor,nfet
- -active scnmos,scntransistor,scnfet
- -active npd,npdfet,sramnfet
- -active npass,npassfet,srampassfet
- active pmos,ptransistor,pfet
- -active scpmos,scptransistor,scpfet
- -active scpmoshvt,scpfethvt
- -active ppu,ppufet,srampfet
- active nnmos,nntransistor
- active mvnmos,mvntransistor,mvnfet
- active mvpmos,mvptransistor,mvpfet
- active mvnnmos,mvnntransistor,mvnnfet,nnfet
- active varactor,varact,var
- active mvvaractor,mvvaract,mvvar
-
- active pmoslvt,pfetlvt
- active pmosmvt,pfetmvt
- active pmoshvt,pfethvt
- active nmoslvt,nfetlvt
- active varactorhvt,varacthvt,varhvt
- -active nsonos,sonos
- active sramnvar,corenvar,corenvaractor
- active srampvar,corepvar,corepvaractor
-
-# Diffusions
- active ndiff,ndiffusion,ndif
- active pdiff,pdiffusion,pdif
- active mvndiff,mvndiffusion,mvndif
- active mvpdiff,mvpdiffusion,mvpdif
- active ndiffc,ndcontact,ndc
- active pdiffc,pdcontact,pdc
- active mvndiffc,mvndcontact,mvndc
- active mvpdiffc,mvpdcontact,mvpdc
- active psubdiff,psubstratepdiff,ppdiff,ppd,psd
- active nsubdiff,nsubstratendiff,nndiff,nnd,nsd
- active mvpsubdiff,mvpsubstratepdiff,mvppdiff,mvppd,mvpsd
- active mvnsubdiff,mvnsubstratendiff,mvnndiff,mvnnd,mvnsd
- active psubdiffcont,psubstratepcontact,psc
- active nsubdiffcont,nsubstratencontact,nsc
- active mvpsubdiffcont,mvpsubstratepcontact,mvpsc
- active mvnsubdiffcont,mvnsubstratencontact,mvnsc
- -active obsactive
- -active mvobsactive
-
-# Poly
- active poly,p,polysilicon
- active polycont,pc,pcontact,polycut,polyc
- active xpolycontact,xpolyc,xpc
-
-# Resistors
- active npolyres,npres,mrp1
- active ppolyres,ppres,xhrpoly
- active xpolyres,xpres,xres,uhrpoly
- active ndiffres,rnd,rdn,rndiff
- active pdiffres,rpd,rdp,rpdiff
- active mvndiffres,mvrnd,mvrdn,mvrndiff
- active mvpdiffres,mvrpd,mvrdp,mvrpdiff
- active rmp
-
-# Diodes
- active pdiode,pdi
- active ndiode,ndi
- active nndiode,nndi
- active pdiodec,pdic
- active ndiodec,ndic
- active nndiodec,nndic
- active mvpdiode,mvpdi
- active mvndiode,mvndi
- active mvpdiodec,mvpdic
- active mvndiodec,mvndic
- active pdiodelvt,pdilvt
- active pdiodehvt,pdihvt
- active ndiodelvt,ndilvt
- active pdiodelvtc,pdilvtc
- active pdiodehvtc,pdihvtc
- active ndiodelvtc,ndilvtc
-
-# Local Interconnect
- locali locali,li1,li
- -locali corelocali,coreli1,coreli
- locali rlocali,rli1,rli
- locali viali,vial,mcon,lic,licon,m1c,v0
- -locali obsli1,obsli
- -locali obsli1c,obslic,obslicon
-
-# Metal 1
- metal1 metal1,m1,met1
- metal1 rmetal1,rm1,rmet1
- metal1 via1,m2contact,m2cut,m2c,via,v,v1
- -metal1 obsm1
- metal1 padl
- -metal1 m1fill
-
-# Metal 2
- metal2 metal2,m2,met2
- metal2 rmetal2,rm2,rmet2
- metal2 via2,m3contact,m3cut,m3c,v2
- -metal2 obsm2
- -metal2 m2fill
-
-# Metal 3
- metal3 metal3,m3,met3
- metal3 rmetal3,rm3,rmet3
- -metal3 obsm3
- metal3 via3,v3
- -metal3 m3fill
-
- cap1 mimcap,mim,capm
- cap1 mimcapcontact,mimcapc,mimcc,capmc
-
-# Metal 4
- metal4 metal4,m4,met4
- metal4 rmetal4,rm4,rmet4
- -metal4 obsm4
- metal4 via4,v4
- -metal4 m4fill
-
- cap2 mimcap2,mim2,capm2
- cap2 mimcap2contact,mimcap2c,mim2cc,capm2c
-
-# Metal 5
- metal5 metal5,m5,met5
- metal5 rm5,rmetal5,rmet5
- -metal5 obsm5
- -metal5 m5fill
-
- metal5 mrdlcontact,mrdlc
- metali metalrdl,mrdl,metrdl
- -metali obsmrdl
-
-# Miscellaneous
- -block glass
- -block fillblock
- comment comment
- -comment obscomment
-# fixed resistor width identifiers
- -comment res0p35
- -comment res0p69
- -comment res1p41
- -comment res2p85
- -comment res5p73
-
-end
-
-#-----------------------------------------------------
-# Magic contact types
-#-----------------------------------------------------
-
-contact
- pc poly locali
- ndc ndiff locali
- pdc pdiff locali
- nsc nsd locali
- psc psd locali
- ndic ndiode locali
- ndilvtc ndiodelvt locali
- nndic nndiode locali
- pdic pdiode locali
- pdilvtc pdiodelvt locali
- pdihvtc pdiodehvt locali
- xpc xpc locali
-
- mvndc mvndiff locali
- mvpdc mvpdiff locali
- mvnsc mvnsd locali
- mvpsc mvpsd locali
- mvndic mvndiode locali
- mvpdic mvpdiode locali
-
- lic locali metal1
- obslic obsli metal1
-
- via1 metal1 metal2
- via2 metal2 metal3
- via3 metal3 metal4
- via4 metal4 metal5
- stackable
-
- # MiM cap contacts are not stackable!
- mimcc mimcap metal4
- mim2cc mimcap2 metal5
-
- padl m1 m2 m3 m4 m5 glass
-
- mrdlc metal5 mrdl
-end
-
-#-----------------------------------------------------
-# Layer aliases
-#-----------------------------------------------------
-
-aliases
-
- allwellplane nwell
- allnwell nwell,obswell,pnp
-
- allnfets nfet,npass,npd,scnfet,mvnfet,mvnnfet,nfetlvt,nsonos
- allpfets pfet,ppu,scpfet,scpfethvt,mvpfet,pfethvt,pfetlvt,pfetmvt
- allfets allnfets,allpfets,varactor,mvvaractor,varhvt,corenvar,corepvar
- allfetsstd nfet,mvnfet,mvnnfet,nfetlvt,pfet,mvpfet,pfethvt,pfetlvt,pfetmvt
- allfetsspecial scnfet,scpfet,scpfethvt
- allfetscore npass,npd,nsonos,ppu,corenvar,corepvar
- allfetsnolvt nfet,npass,npd,scnfet,mvnfet,mvnnfet,nsonos,pfet,ppu,scpfet,scpfethvt,mvpfet,pfethvt,pfetmvt,varactor,mvvaractor,varhvt,corenvar
-
- allnactivenonfet *ndiff,*nsd,*ndiode,*nndiode,*mvndiff,*mvnsd,*mvndiode,*ndiodelvt
- allnactive allnactivenonfet,allnfets
- allnactivenontap *ndiff,*ndiode,*nndiode,*mvndiff,*mvndiode,*ndiodelvt,allnfets
- allnactivetap *nsd,*mvnsd,var,varhvt,mvvar,corenvar
-
- allpactivenonfet *pdiff,*psd,*pdiode,*mvpdiff,*mvpsd,*mvpdiode,*pdiodelvt,*pdiodehvt
- allpactive allpactivenonfet,allpfets
- allpactivenontap *pdiff,*pdiode,*mvpdiff,*mvpdiode,*pdiodelvt,*pdiodehvt,allpfets
- allpactivetap *psd,*mvpsd,corepvar
-
- allactivenonfet allnactivenonfet,allpactivenonfet
- allactive allactivenonfet,allfets
-
- allactiveres ndiffres,pdiffres,mvndiffres,mvpdiffres
-
- allndifflv *ndif,*nsd,*ndiode,ndiffres,nfet,npass,npd,scnfet,nfetlvt,nsonos
- allpdifflv *pdif,*psd,*pdiode,pdiffres,pfet,ppu,scpfet,scpfethvt,pfetlvt,pfetmvt,pfethvt
- alldifflv allndifflv,allpdifflv
- allndifflvnonfet *ndif,*nsd,*ndiode,*nndiode,ndiffres,*ndiodelvt
- allpdifflvnonfet *pdif,*psd,*pdiode,pdiffres,*pdiodelvt,*pdiodehvt
- alldifflvnonfet allndifflvnonfet,allpdifflvnonfet
-
- allndiffmv *mvndif,*mvnsd,*mvndiode,*nndiode,mvndiffres,mvnfet,mvnnfet
- allpdiffmv *mvpdif,*mvpsd,*mvpdiode,mvpdiffres,mvpfet
- alldiffmv allndiffmv,allpdiffmv
- allndiffmvnontap *mvndif,*mvndiode,*nndiode,mvndiffres,mvnfet,mvnnfet
- allpdiffmvnontap *mvpdif,*mvpdiode,mvpdiffres,mvpfet
- alldiffmvnontap allndiffmvnontap,allpdiffmvnontap
- allndiffmvnonfet *mvndif,*mvnsd,*mvndiode,*nndiode,mvndiffres
- allpdiffmvnonfet *mvpdif,*mvpsd,*mvpdiode,mvpdiffres
- alldiffmvnonfet allndiffmvnonfet,allpdiffmvnonfet
-
- alldiffnonfet alldifflvnonfet,alldiffmvnonfet
- alldiff alldifflv,alldiffmv
-
- allpolyres mrp1,xhrpoly,uhrpoly,rmp
- allpolynonfet *poly,allpolyres,xpc
- allpolynonres *poly,allfets,xpc
-
- allpoly allpolynonfet,allfets
- allpolynoncap *poly,xpc,allfets,allpolyres
-
- allndiffcontlv ndc,nsc,ndic,nndic,ndilvtc
- allpdiffcontlv pdc,psc,pdic,pdilvtc,pdihvtc
- allndiffcontmv mvndc,mvnsc,mvndic
- allpdiffcontmv mvpdc,mvpsc,mvpdic
- allndiffcont allndiffcontlv,allndiffcontmv
- allpdiffcont allpdiffcontlv,allpdiffcontmv
- alldiffcontlv allndiffcontlv,allpdiffcontlv
- alldiffcontmv allndiffcontmv,allpdiffcontmv
- alldiffcont alldiffcontlv,alldiffcontmv
-
- allcont alldiffcont,pc
-
- allres allpolyres,allactiveres
-
- allli *locali,coreli,rli
- allm1 *m1,rm1
- allm2 *m2,rm2
- allm3 *m3,rm3
- allm4 *m4,rm4
- allm5 *m5,rm5
-
- allpad padl
-
- psub pwell
-
-end
-
-#-----------------------------------------------------
-# Layer drawing styles
-#-----------------------------------------------------
-
-styles
- styletype mos
- dnwell cwell
- nwell nwell
- pwell pwell
- rpwell pwell ptransistor_stripes
- ndiff ndiffusion
- pdiff pdiffusion
- nsd ndiff_in_nwell
- psd pdiff_in_pwell
- nfet ntransistor ntransistor_stripes
- scnfet ntransistor ntransistor_stripes
- npass ntransistor ntransistor_stripes
- npd ntransistor ntransistor_stripes
- pfet ptransistor ptransistor_stripes
- scpfet ptransistor ptransistor_stripes
- scpfethvt ptransistor ptransistor_stripes implant2
- ppu ptransistor ptransistor_stripes
- var polysilicon ndiff_in_nwell
- ndc ndiffusion metal1 contact_X'es
- pdc pdiffusion metal1 contact_X'es
- nsc ndiff_in_nwell metal1 contact_X'es
- psc pdiff_in_pwell metal1 contact_X'es
- corenvar polysilicon ndiff_in_nwell
- corepvar polysilicon pdiff_in_pwell
-
- pnp nwell ntransistor_stripes
- npn pwell ptransistor_stripes
-
- pfetlvt ptransistor ptransistor_stripes implant1
- pfetmvt ptransistor ptransistor_stripes implant3
- pfethvt ptransistor ptransistor_stripes implant2
- nfetlvt ntransistor ntransistor_stripes implant1
- nsonos ntransistor implant3
- varhvt polysilicon ndiff_in_nwell implant2
-
- mvndiff ndiffusion hvndiff_mask
- mvpdiff pdiffusion hvpdiff_mask
- mvnsd ndiff_in_nwell hvndiff_mask
- mvpsd pdiff_in_pwell hvpdiff_mask
- mvnfet ntransistor ntransistor_stripes hvndiff_mask
- mvnnfet ntransistor ndiff_in_nwell hvndiff_mask
- mvpfet ptransistor ptransistor_stripes
- mvvar polysilicon ndiff_in_nwell hvndiff_mask
- mvndc ndiffusion metal1 contact_X'es hvndiff_mask
- mvpdc pdiffusion metal1 contact_X'es hvpdiff_mask
- mvnsc ndiff_in_nwell metal1 contact_X'es hvndiff_mask
- mvpsc pdiff_in_pwell metal1 contact_X'es hvpdiff_mask
-
- poly polysilicon
- pc polysilicon metal1 contact_X'es
- npolyres polysilicon silicide_block nselect2
- ppolyres polysilicon silicide_block pselect2
- xpc polysilicon pselect2 metal1 contact_X'es
- rmp polysilicon poly_resist_stripes
-
- res0p35 implant1
- res0p69 implant1
- res1p41 implant1
- res2p85 implant1
- res5p73 implant1
-
- pdiode pdiffusion pselect2
- ndiode ndiffusion nselect2
- pdiodec pdiffusion pselect2 metal1 contact_X'es
- ndiodec ndiffusion nselect2 metal1 contact_X'es
-
- nndiode ndiffusion nselect2 implant3
- ndiodelvt ndiffusion nselect2 implant1
- pdiodelvt pdiffusion pselect2 implant1
- pdiodehvt pdiffusion pselect2 implant2
- pdilvtc pdiffusion pselect2 implant1 metal1 contact_X'es
- pdihvtc pdiffusion pselect2 implant2 metal1 contact_X'es
- ndilvtc ndiffusion nselect2 implant1 metal1 contact_X'es
-
- mvpdiode pdiffusion pselect2 hvpdiff_mask
- mvndiode ndiffusion nselect2 hvndiff_mask
- mvpdiodec pdiffusion pselect2 metal1 contact_X'es hvpdiff_mask
- mvndiodec ndiffusion nselect2 metal1 contact_X'es hvndiff_mask
- nndiodec ndiff_in_nwell nselect2 metal1 contact_X'es hvndiff_mask
-
- locali metal1
- coreli metal1
- rli metal1 poly_resist_stripes
- lic metal1 metal2 via1arrow
- obsli metal1
- obslic metal1 metal2 via1arrow
-
- metal1 metal2
- m1fill metal2
- rm1 metal2 poly_resist_stripes
- obsm1 metal2
- m2c metal2 metal3 via2arrow
- metal2 metal3
- m2fill metal3
- rm2 metal3 poly_resist_stripes
- obsm2 metal3
- m3c metal3 metal4 via3alt
- metal3 metal4
- m3fill metal4
- rm3 metal4 poly_resist_stripes
- obsm3 metal4
- mimcap metal3 mems
- mimcc metal3 contact_X'es mems
- mimcap2 metal4 mems
- mim2cc metal4 contact_X'es mems
- via3 metal4 metal5 via4
- metal4 metal5
- m4fill metal5
- rm4 metal5 poly_resist_stripes
- obsm4 metal5
- via4 metal5 metal6 via5
- metal5 metal6
- m5fill metal6
- rm5 metal6 poly_resist_stripes
- obsm5 metal6
- mrdlc metal6 metal7 via6
- metalrdl metal7
- obsmrdl metal7
-
- glass overglass
- mrp1 poly_resist poly_resist_stripes
- xhrpoly poly_resist silicide_block
- uhrpoly poly_resist
- ndiffres ndiffusion ndop_stripes
- pdiffres pdiffusion pdop_stripes
- mvndiffres ndiffusion hvndiff_mask ndop_stripes
- mvpdiffres pdiffusion hvpdiff_mask pdop_stripes
- comment comment
- error_p error_waffle
- error_s error_waffle
- error_ps error_waffle
- fillblock cwell
-
- obswell cwell
- obsactive implant4
-
- padl metal6 via6 overglass
-
- magnet substrate_field_implant
- rotate via3alt
- fence via5
-end
-
-#-----------------------------------------------------
-# Special paint/erase rules
-#-----------------------------------------------------
-
-compose
- compose nfet poly ndiff
- compose pfet poly pdiff
- compose var poly nsd
-
- compose mvnfet poly mvndiff
- compose mvpfet poly mvpdiff
- compose mvvar poly mvnsd
-
- paint obslic locali via1
- paint obslic obsm1 obsli,obsm1
-
- paint ndc nwell pdc
- paint nfet nwell pfet
- paint scnfet nwell scpfet
- paint ndiff nwell pdiff
- paint psd nwell nsd
- paint psc nwell nsc
- paint npd nwell ppu
-
- paint pdc pwell ndc
- paint pfet pwell nfet
- paint scpfet pwell scnfet
- paint pdiff pwell ndiff
- paint nsd pwell psd
- paint nsc pwell psc
- paint ppu pwell npd
-
- paint pdc coreli pdc
- paint ndc coreli ndc
- paint pc coreli pc
- paint nsc coreli nsc
- paint psc coreli psc
- paint viali coreli viali
-
- paint coreli pdc pdc
- paint coreli ndc ndc
- paint coreli pc pc
- paint coreli nsc nsc
- paint coreli psc psc
- paint coreli viali viali
-
- paint m4 obsm4 m4
- paint m5 obsm5 m5
-end
-
-#-----------------------------------------------------
-# Electrical connectivity
-#-----------------------------------------------------
-
-connect
- *nwell,*nsd,*mvnsd,dnwell,pnp *nwell,*nsd,*mvnsd,dnwell,pnp
- pwell,*psd,*mvpsd,npn pwell,*psd,*mvpsd,npn
- *li,coreli *li,coreli
- *m1,m1fill,obslic *m1,m1fill,obslic
- *m2,m2fill *m2,m2fill
- *m3,m3fill *m3,m3fill
- *m4,m4fill *m4,m4fill
- *m5,m5fill *m5,m5fill
- *mimcap *mimcap
- *mimcap2 *mimcap2
- allnactivenonfet allnactivenonfet
- allpactivenonfet allpactivenonfet
- *poly,xpc,allfets *poly,xpc,allfets
- # RDL connects to m5 (i.e., padl) through glass cut
- *mrdl *mrdl
- glass metrdl
-end
-
-#-----------------------------------------------------
-# CIF/GDS output layer definitions
-#-----------------------------------------------------
-# NOTE: All values in this section MUST be multiples of 25
-# or else magic will scale below the allowed layout grid size
-
-cifoutput
-
-#----------------------------------------------------------------
-style gdsii
-# NOTE: This section is used for actual GDS output
-#----------------------------------------------------------------
- scalefactor 10 nanometers
- options calma-permissive-labels
- gridlimit 5
-
-#----------------------------------------------------------------
-# Create a temp layer from the cell bounding box for use in
-# generating ID layers. Note that "boundary", unlike "bbox",
-# requires the FIXED_BBOX property (abutment box) in the cell.
-#----------------------------------------------------------------
- templayer CELLBOUND
- boundary
-
-#----------------------------------------------------------------
-# BOUND
-#----------------------------------------------------------------
- layer BOUND CELLBOUND
- calma 235 4
-
-# Create a boundary outside of an abutment box, so that layers
-# can be made to stretch to the abutment box edges. First strink
-# so that any box that would be so small as to interact with
-# itself will be removed.
-
- templayer CELLRING CELLBOUND
- shrink 345
- grow 545
- and-not CELLBOUND
-
-#----------------------------------------------------------------
-# DNWELL
-#----------------------------------------------------------------
-
- layer DNWELL dnwell,pnp
- calma 64 18
-
- layer PWRES rpw
- and dnwell
- calma 64 13
-
-#----------------------------------------------------------------
-# NWELL
-#----------------------------------------------------------------
-
- layer NWELL allnwell
- bloat-all rpw dnwell
- and-not rpw,pwell
- calma 64 20
-
- layer WELLTXT
- labels allnwell noport
- calma 64 16
-
- layer WELLPIN
- labels allnwell port
- calma 64 5
-
-#----------------------------------------------------------------
-# SUB (text/port only)
-#----------------------------------------------------------------
-
- layer SUBTXT
- labels pwell noport
- calma 122 16
-
- layer SUBPIN
- labels pwell port
- calma 64 59
-
-#----------------------------------------------------------------
-# DIFF
-#----------------------------------------------------------------
-
- layer DIFF allnactivenontap,allpactivenontap,allactiveres
- labels allnactivenontap,allpactivenontap
- calma 65 20
-
-#----------------------------------------------------------------
-# TAP
-#----------------------------------------------------------------
-
- layer TAP allnactivetap,allpactivetap
- labels allnactivetap,allpactivetap
- calma 65 44
-
-#----------------------------------------------------------------
-# PPLUS, NPLUS (PSDM, NSDM)
-#----------------------------------------------------------------
-
- templayer basePPLUS pdiffres,mvpdiffres
- grow 15
- or xhrpoly,uhrpoly,xpc
- grow 110
- bloat-or allpactivetap * 125 allnactivenontap 0
- bloat-or allpactivenontap * 125 allnactivetap 0
-
- templayer baseNPLUS ndiffres,mvndiffres
- grow 125
- bloat-or allnactivetap * 125 allpactivenontap 0
- bloat-or allnactivenontap * 125 allpactivetap 0
-
- templayer extendPPLUS basePPLUS,CELLRING
- bridge 380 380
- and-not baseNPLUS
- and-not CELLRING
-
- layer PPLUS basePPLUS,extendPPLUS
- grow 185
- shrink 185
- close 265000
- calma 94 20
-
- templayer extendNPLUS baseNPLUS,CELLRING
- bridge 380 380
- and-not basePPLUS
- and-not CELLRING
-
- layer NPLUS baseNPLUS,extendNPLUS
- grow 185
- shrink 185
- close 265000
- calma 93 44
-
-#----------------------------------------------------------------
-# LVTN
-#----------------------------------------------------------------
-
- layer LVTN pfetlvt,nfetlvt,mvvar,mvnnfet,nsonos,*pdiodelvt,*ndiodelvt,*nndiode
- grow 180
- bridge 380 380
- grow 185
- shrink 185
- close 265000
- calma 125 44
-
-#----------------------------------------------------------------
-# HVTR
-#----------------------------------------------------------------
-
- layer HVTR pfetmvt
- grow 180
- bridge 380 380
- grow 185
- shrink 185
- close 265000
- calma 18 20
-
-#----------------------------------------------------------------
-# HVTP
-#----------------------------------------------------------------
-
- layer HVTP scpfethvt,ppu,pfethvt,varhvt,*pdiodehvt
- grow 180
- bridge 380 380
- grow 185
- shrink 185
- close 265000
- calma 78 44
-
-#----------------------------------------------------------------
-# SONOS
-#----------------------------------------------------------------
-
- layer SONOS nsonos
- grow 100
- grow-min 410
- bridge 500 410
- grow 250
- shrink 250
- calma 80 20
-
-#----------------------------------------------------------------
-# SONOS requires COREID around area (areaid.ce). Also, the
-# coreli layer indicates a cell needing COREID. Also, devices
-# npd, npass, and ppu indicate a COREID cell.
-#----------------------------------------------------------------
-
- layer COREID
- bloat-all nsonos,coreli,ppu,npd,npass,corepvar,corenvar CELLBOUND
- calma 81 2
-
-#----------------------------------------------------------------
-# STDCELL applies to all cells containing scnfet or scpfet.
-#----------------------------------------------------------------
-
- layer STDCELL scnfet
- bloat-all scpfet,scpfethvt,scnfet CELLBOUND
- calma 81 4
-
-#----------------------------------------------------------------
-# NPNID and PNPID apply to bipolar transistors
-#----------------------------------------------------------------
-
- layer NPNID
- bloat-all npn dnwell
- calma 82 20
-
- templayer pnparea pnp
- grow 400
-
- layer PNPID
- bloat-all pnparea *psd
- or pnparea
- calma 82 44
-
-#----------------------------------------------------------------
-# RPM
-#----------------------------------------------------------------
-
- layer RPM
- bloat-all xhrpoly xpc
- grow 200
- grow-min 1270
- grow 420
- shrink 420
- calma 86 20
-
-#----------------------------------------------------------------
-# URPM (2kOhms/sq. poly implant)
-#----------------------------------------------------------------
-
- layer URPM
- bloat-all uhrpoly xpc
- grow 200
- grow-min 1270
- grow 420
- shrink 420
- calma 79 20
-
-#----------------------------------------------------------------
-# LDNTM (Tip implant for SONOS FETs)
-#----------------------------------------------------------------
-
- layer LDNTM
- bloat-all nsonos *ndiff
- grow 185
- grow 345
- shrink 345
- calma 11 44
-
-#----------------------------------------------------------------
-# HVNTM (Tip implant for MV ndiff devices)
-#----------------------------------------------------------------
-
- templayer hvntm_block *mvpsd
- grow 185
-
- layer HVNTM
- bloat-all mvnfet,mvnnfet,*mvndiode,mvrdn,*nndiode *mvndiff
- bloat-all mvvaractor *mvnsd
- and-not hvntm_block
- grow 185
- grow 345
- shrink 345
- and-not hvntm_block
- calma 125 20
-
-#----------------------------------------------------------------
-# POLY
-#----------------------------------------------------------------
-
- layer POLY allpoly
- calma 66 20
-
- layer POLYTXT
- labels allpoly noport
- calma 66 16
-
- layer POLYPIN
- labels allpoly port
- calma 66 5
-
-#----------------------------------------------------------------
-# THKOX (HVI) (includes rules NWELL 8-11 and DIFFTAP 14-26)
-#----------------------------------------------------------------
-
- templayer thkox_area alldiffmv,mvvar
- grow 185
- bloat-all alldiffmv nwell
- grow 345
- shrink 345
-
- templayer large_ptap_mv thkox_area
- shrink 420
- grow 420
-
- templayer small_ptap_mv thkox_area
- and-not large_ptap_mv
- # (HVI min width rule is 0.6 but CNTM min width rule is 0.84um)
- grow-min 840
-
- templayer baseTHKOX thkox_area,small_ptap_mv
- bridge 700 600
- grow 345
- shrink 345
-
- templayer extendTHKOX baseTHKOX,CELLRING
- grow 345
- shrink 345
- and-not CELLRING
-
- layer THKOX baseTHKOX,extendTHKOX
- calma 75 20
-
-#----------------------------------------------------------------
-# CONT (LICON)
-#----------------------------------------------------------------
-
- layer CONT allcont
- squares-grid 0 170 170
- calma 66 44
-
- # Contact for pres is different than other LICON contacts
- # See rules LICON 1b, 1c (width/length) and 2b (spacing)
- templayer xpc_horiz xpc
- shrink 1007
- grow 1007
-
- layer CONT xpc
- and-not xpc_horiz
- # Force long edge vertical for contacts narrower than 2um
- # Minimum space is 350 but 520 satisfies no. of contacts rule
- slots 80 190 520 80 2000 350
- calma 66 44
-
- layer CONT xpc
- and xpc_horiz
- # Force long edge vertical for contacts wider than 2um
- # Minimum space is 350 but 520 satisfies no. of contacts rule
- slots 80 2000 350 80 190 520
- calma 66 44
-
-#----------------------------------------------------------------
-# NPC (Nitride poly cut)
-# surrounds CONT (LICON) on poly only (i.e., pc)
-#----------------------------------------------------------------
-
- layer NPC pc
- squares-grid 0 170 170
- grow 100
- bridge 270 270
- grow 130
- shrink 130
- calma 95 20
-
- # NPC is also generated on xhrpoly and uhrpoly resistors
-
- layer NPC xpc,xhrpoly,uhrpoly
- # xpc surrounds precision_resistor by 0.095um
- grow 95
- grow 130
- shrink 130
- calma 95 20
-
-#----------------------------------------------------------------
-# Device markers
-#----------------------------------------------------------------
-
- layer DIFFRES rdn,mvrdn,rdp,mvrdp
- calma 65 13
-
- layer POLYRES mrp1
- calma 66 13
-
- # POLYSHORT is a poly layer resistor like rli, rm1, etc., for metal layers
- layer POLYSHORT rmp
- calma 66 15
-
- # POLYRES extends to edge of contact cut
- layer POLYRES xhrpoly,uhrpoly
- grow 60
- and xpc
- or xhrpoly,uhrpoly
- calma 66 13
-
- layer DIODE *pdi,*ndi,*nndi,*mvpdi,*mvndi,*pdilvt,*pdihvt,*ndilvt
- # To be done: Expand to include anode, cathode, and guard ring
- calma 81 23
-
-#----------------------------------------------------------------
-# LI
-#----------------------------------------------------------------
- layer LI allli
- calma 67 20
-
- layer LITXT
- labels *locali,coreli noport
- calma 67 16
-
- layer LIPIN
- labels *locali,coreli port
- calma 67 5
-
- layer LIRES rli
- labels rli
- calma 67 13
-
-#----------------------------------------------------------------
-# MCON
-#----------------------------------------------------------------
- layer MCON lic
- squares-grid 0 170 190
- calma 67 44
-
-#----------------------------------------------------------------
-# MET1
-#----------------------------------------------------------------
- layer MET1 allm1,m1fill
- calma 68 20
-
- layer MET1TXT
- labels allm1 noport
- calma 68 16
-
- layer MET1PIN
- labels allm1 port
- calma 68 5
-
- layer MET1RES rm1
- labels rm1
- calma 68 13
-
-#----------------------------------------------------------------
-# VIA1
-#----------------------------------------------------------------
- layer VIA1 via1
- squares-grid 55 150 170
- calma 68 44
-
-#----------------------------------------------------------------
-# MET2
-#----------------------------------------------------------------
- layer MET2 allm2,m2fill
- calma 69 20
-
- layer MET2TXT
- labels allm2 noport
- calma 69 16
-
- layer MET2PIN
- labels allm2 port
- calma 69 5
-
- layer MET2RES rm2
- labels rm2
- calma 69 13
-
-#----------------------------------------------------------------
-# VIA2
-#----------------------------------------------------------------
- layer VIA2 via2
- squares-grid 40 200 200
- calma 69 44
-
-#----------------------------------------------------------------
-# MET3
-#----------------------------------------------------------------
- layer MET3 allm3,m3fill
- calma 70 20
-
- layer MET3TXT
- labels allm3 noport
- calma 70 16
-
- layer MET3PIN
- labels allm3 port
- calma 70 5
-
- layer MET3RES rm3
- labels rm3
- calma 70 13
-
-#----------------------------------------------------------------
-# VIA3
-#----------------------------------------------------------------
- layer VIA3 via3
- or mimcc
- squares-grid 60 200 200
- calma 70 44
-
-#----------------------------------------------------------------
-# MET4
-#----------------------------------------------------------------
- layer MET4 allm4,m4fill
- calma 71 20
-
- layer MET4TXT
- labels allm4 noport
- calma 71 16
-
- layer MET4PIN
- labels allm4 port
- calma 71 5
-
- layer MET4RES rm4
- labels rm4
- calma 71 13
-
-#----------------------------------------------------------------
-# VIA4
-#----------------------------------------------------------------
- layer VIA4 via4
- or mim2cc
- squares-grid 190 800 800
- calma 71 44
-
-#----------------------------------------------------------------
-# MET5
-#----------------------------------------------------------------
- layer MET5 allm5,m5fill
- calma 72 20
-
- layer MET5TXT
- labels allm5 noport
- calma 72 16
-
- layer MET5PIN
- labels allm5 port
- calma 72 5
-
- layer MET5RES rm5
- labels rm5
- calma 72 13
-
-
-#----------------------------------------------------------------
-# RDL
-#----------------------------------------------------------------
- layer RDL *metrdl
- calma 74 20
-
- layer RDLTXT
- labels *metrdl noport
- calma 74 16
-
- layer RDLPIN
- labels *metrdl port
- calma 74 5
-
- layer PI1 *metrdl
- and padl,glass
- # Test only---needs GDS layer number
-
- layer UBM *metrdl
- shrink 50000
- grow 40000
- # Test only---needs GDS layer number
-
- layer PI2 *metrdl
- shrink 50000
- grow 25000
- # Test only---needs GDS layer number
-
-
-#----------------------------------------------------------------
-# GLASS
-#----------------------------------------------------------------
- layer GLASS glass
- calma 76 20
-
-#----------------------------------------------------------------
-# CAPM
-#----------------------------------------------------------------
- layer CAPM *mimcap
- labels mimcap
- calma 89 44
-
- layer CAPM2 *mimcap2
- labels mimcap2
- calma 97 44
-
-#----------------------------------------------------------------
-# Chip top level marker for DRC latchup rules to check 15um
-# distance to taps (otherwise 6um is used)
-#----------------------------------------------------------------
-
- layer LOWTAPDENSITY
- bbox top
- # Clear 200um for pads + 50um for required high tap density
- # in critical area.
- shrink 250000
- calma 81 14
-
-#----------------------------------------------------------------
-# FILLBLOCK
-#----------------------------------------------------------------
- layer FILLOBSM1 fillblock
- calma 62 24
-
- layer FILLOBSM2 fillblock
- calma 105 52
-
- layer FILLOBSM3 fillblock
- calma 107 24
-
- layer FILLOBSM4 fillblock
- calma 112 4
-
- render DNWELL cwell -0.1 0.1
- render NWELL nwell 0.0 0.2062
- render DIFF ndiffusion 0.2062 0.12
- render TAP pdiffusion 0.2062 0.12
- render POLY polysilicon 0.3262 0.18
- render CONT via 0.5062 0.43
- render LI metal1 0.9361 0.10
- render MCON via 1.0361 0.34
- render MET1 metal2 1.3761 0.36
- render VIA1 via 1.7361 0.27
- render MET2 metal3 2.0061 0.36
- render VIA2 via 2.3661 0.42
- render MET3 metal4 2.7861 0.845
- render VIA3 via 3.6311 0.39
- render MET4 metal5 4.0211 0.845
- render VIA4 via 4.8661 0.505
- render MET5 metal6 5.3711 1.26
- render CAPM metal8 2.4661 0.2
- render CAPM2 metal9 3.7311 0.2
- render RDL metal7 11.8834 4.0
-
-#----------------------------------------------------------------
-style drc
-#----------------------------------------------------------------
-# NOTE: This style is used for DRC only, not for GDS output
-#----------------------------------------------------------------
- scalefactor 10 nanometers
- options calma-permissive-labels
-
- # Ensure nwell overlaps dnwell at least 0.4um outside and 1.03um inside
- templayer dnwell_shrink dnwell
- shrink 1030
-
- templayer nwell_missing dnwell
- grow 400
- and-not dnwell_shrink
- and-not nwell
-
- templayer pwell_in_dnwell dnwell
- and-not nwell
-
- # SONOS nFET devices must be in deep nwell
- templayer dnwell_missing nsonos
- and-not dnwell
-
- # SONOS nFET devices must be in cell with abutment box
- templayer abutment_box
- boundary
-
- templayer bbox_missing nsonos
- and-not abutment_box
-
- # Make sure nwell covers varactor poly
- templayer var_poly_no_nwell
- bloat-all varactor,mvvaractor *poly
- grow 150
- and-not nwell
-
- # Define MiM cap bottom plate for spacing rule
- templayer mim_bottom
- bloat-all *mimcap *metal3
-
- # Define MiM2 cap bottom plate for spacing rule
- templayer mim2_bottom
- bloat-all *mimcap2 *metal4
-
- # Note that metal fill is performed by the foundry and so is not
- # an option for a cifoutput style.
-
- # Check latchup rule (15um minimum from tap LICON center to any
- # non-tap diffusion. Note that to count as a tap, the diffusion
- # must be contacted to LI
-
- templayer ptap_reach psc,mvpsc
- and-not dnwell
- # grow total is 15um. grow in 0.84um increments to ensure that
- # no nwell ring is crossed
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 840
- and-not nwell,dnwell
- grow 635
- and-not nwell,dnwell
-
- templayer ptap_missing *ndiff,*mvndiff
- and-not dnwell
- and-not ptap_reach
-
- templayer ntap_reach nsc,mvnsc
- # grow total is 15um. grow in 1.27um increments to ensure that
- # no nwell ring is crossed. There is no difference between
- # ntaps in and out of deep nwell.
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 1270
- and nwell,pnp
- grow 945
- and nwell,pnp
-
- templayer ntap_missing *pdiff,*mvpdiff
- and-not pwell_in_dnwell
- and-not ntap_reach
-
- templayer dptap_reach psc,mvpsc
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 840
- and-not nwell
- and dnwell
- grow 635
- and-not nwell
- and dnwell
-
- templayer dptap_missing *ndiff,*mvndiff
- and dnwell
- and-not dptap_reach
-
- templayer pdiff_crosses_dnwell dnwell
- grow 20
- and-not dnwell
- and allpdifflv,allpdiffmv
-
- # MV nwell must be 2um from any other nwell
- templayer mvnwell
- bloat-all alldiffmv nwell
- grow-min 840
- bridge 700 600
-
- # Simple spacing checks to lvnwell must use CIF-DRC rule
- templayer allmvdiffnowell *mvndiff,*mvpsd
-
- templayer lvnwell nwell
- and-not mvnwell
-
- templayer nwell_with_tap
- bloat-all nsc,mvnsc nwell,pnp
-
- templayer nwell_missing_tap nwell,pnp
- and-not nwell_with_tap
-
- templayer tap_with_licon
- bloat-all psc,mvpsc psd,mvpsd
- bloat-all nsc,mvnsc nsd,mvnsd
-
- templayer tap_missing_licon psd,nsd,mvpsd,mvnsd
- and-not tap_with_licon
-
- # Make sure varactor nwell contains no P diffusion
- templayer pdiff_in_varactor_well
- bloat-all varactor,mvvaractor nwell
- and allpactive
-
- # HVNTM spacing requires recreating HVNTM
- templayer hvntm_block *mvpsd
- grow 185
-
- templayer hvntm_generate
- bloat-all mvnfet,mvnnfet,*mvndiode,mvrdn,*nndiode *mvndiff
- bloat-all mvvaractor *mvnsd
- and-not hvntm_block
- grow 185
- grow 345
- shrink 345
- and-not hvntm_block
-
- templayer m1_small_hole allm1,obsm1,obslic
- close 140000
-
- templayer m1_hole_empty m1_small_hole
- and-not allm1,obsm1,obslic
-
- templayer m2_small_hole allm2,obsm2
- close 140000
-
- templayer m2_hole_empty m2_small_hole
- and-not allm2,obsm2
-
- templayer m1_huge allm1
- shrink 1500
- grow 1500
-
- templayer m1_large_halo m1_huge
- grow 280
- and-not m1_huge
- and allm1
-
- templayer m2_huge allm2
- shrink 1500
- grow 1500
-
- templayer m2_large_halo m2_huge
- grow 280
- and-not m2_huge
- and allm2
-
- templayer m3_huge allm3
- shrink 1500
- grow 1500
-
- templayer m3_large_halo m3_huge
- grow 400
- and-not m3_huge
- and allm3
-
- templayer m4_huge allm4
- shrink 1500
- grow 1500
-
- templayer m4_large_halo m4_huge
- grow 400
- and-not m4_huge
- and allm4
-
-
-#----------------------------------------------------------------
-style wafflefill
-#----------------------------------------------------------------
-# Style used by scripts for automatically generating fill layers
-# NOTE: Be sure to generate output on flattened layout.
-#----------------------------------------------------------------
- scalefactor 10 nanometers
- options calma-permissive-labels
- gridlimit 5
-
-#----------------------------------------------------------------
-# Generate and retain a layer representing the bounding box
-#----------------------------------------------------------------
- templayer topbox
- bbox top
-
-#----------------------------------------------------------------
-# Generate guard-band around nwells to keep FOM from crossing
-# Spacing from LV nwell = Diff/Tap 9 = 0.34um
-# Spacing from HV nwell = Diff/Tap 18 = 0.43um (= 0.18 + 0.25)
-# Enclosure by nwell = Diff/Tap 8 = 0.18um
-#----------------------------------------------------------------
-
- templayer mvnwell
- bloat-all alldiffmv nwell
-
- templayer lvnwell nwell
- and-not mvnwell
-
- templayer well_shrink mvnwell
- shrink 250
- or lvnwell
- shrink 180
- templayer well_guardband nwell
- grow 340
- and-not well_shrink
-
-#---------------------------------------------------
-# Diffusion and poly keep-out areas
-#---------------------------------------------------
- templayer obstruct_fom alldiff,allpoly,rpw
- grow 500
- or well_guardband
-
- templayer obstruct_poly alldiff,allpoly,rpw
- grow 1000
-
-#---------------------------------------------------
-# FOM and POLY fill
-#---------------------------------------------------
- templayer fomfill_pass1 topbox
- slots 0 4080 1320 0 4080 1320 1360 0
- and-not obstruct_fom
- and topbox
- shrink 2035
- grow 2035
-
-#---------------------------------------------------
-
- templayer obstruct_poly_pass1 fomfill_pass1
- grow 300
- or obstruct_poly
- templayer polyfill_pass1 topbox
- slots 0 720 360 0 720 360 240 0
- and-not obstruct_poly_pass1
- and topbox
- shrink 355
- grow 355
-
-#---------------------------------------------------
-
- templayer obstruct_fom_pass2 fomfill_pass1
- grow 1290
- or polyfill_pass1
- grow 300
- or obstruct_fom
- templayer fomfill_pass2 topbox
- slots 0 2500 1320 0 2500 1320 1360 0
- and-not obstruct_fom_pass2
- and topbox
- shrink 1245
- grow 1245
-
-#---------------------------------------------------
-
- templayer obstruct_poly_coarse polyfill_pass1
- grow 60
- or fomfill_pass1,fomfill_pass2
- grow 300
- or obstruct_poly
- templayer polyfill_coarse topbox
- slots 0 720 360 0 720 360 240 120
- and-not obstruct_poly_coarse
- and topbox
- shrink 355
- grow 355
-
-#---------------------------------------------------
- templayer obstruct_poly_medium polyfill_pass1,polyfill_coarse
- grow 60
- or fomfill_pass1,fomfill_pass2
- grow 300
- or obstruct_poly
- templayer polyfill_medium topbox
- slots 0 540 360 0 540 360 240 100
- and-not obstruct_poly_medium
- and topbox
- shrink 265
- grow 265
-
-#---------------------------------------------------
- templayer obstruct_poly_fine polyfill_pass1,polyfill_coarse,polyfill_medium
- grow 60
- or fomfill_pass1,fomfill_pass2
- grow 300
- or obstruct_poly
- templayer polyfill_fine topbox
- slots 0 480 360 0 480 360 240 200
- and-not obstruct_poly_fine
- and topbox
- shrink 235
- grow 235
-
-#---------------------------------------------------
-
- templayer obstruct_fom_coarse fomfill_pass1,fomfill_pass2
- grow 1290
- or polyfill_pass1,polyfill_coarse,polyfill_medium,polyfill_fine
- grow 300
- or obstruct_fom
- templayer fomfill_coarse topbox
- slots 0 1500 1320 0 1500 1320 1360 0
- and-not obstruct_fom_coarse
- and topbox
- shrink 745
- grow 745
-
-#---------------------------------------------------
-
- templayer obstruct_fom_fine fomfill_pass1,fomfill_pass2,fomfill_coarse
- grow 1290
- or polyfill_pass1,polyfill_coarse,polyfill_medium,polyfill_fine
- grow 300
- or obstruct_fom
- templayer fomfill_fine topbox
- slots 0 500 400 0 500 400 160 0
- and-not obstruct_fom_fine
- and topbox
- shrink 245
- grow 245
-
-#---------------------------------------------------
- templayer fomfill
- or fomfill_pass1
- or fomfill_pass2
- or fomfill_coarse
- or fomfill_fine
-
- templayer polyfill
- or polyfill_pass1
- or polyfill_coarse
- or polyfill_medium
- or polyfill_fine
-
- layer FOMMASK fomfill
- calma 23 0
- layer POLYMASK polyfill
- calma 28 0
-
-#---------------------------------------------------
-# MET1 fill
-#---------------------------------------------------
-
- templayer obstruct_m1_coarse allm1,allpad,obsm1,m1fill,fillblock
- grow 3000
- templayer met1fill_coarse topbox
- slots 0 2000 200 0 2000 200 700 0
- and-not obstruct_m1_coarse
- and topbox
- shrink 995
- grow 995
-
- templayer obstruct_m1_medium allm1,allpad,obsm1,m1fill,fillblock
- grow 2800
- or met1fill_coarse
- grow 200
- templayer met1fill_medium topbox
- slots 0 1000 200 0 1000 200 700 0
- and-not obstruct_m1_medium
- and topbox
- shrink 495
- grow 495
-
- templayer obstruct_m1_fine allm1,allpad,obsm1,m1fill,fillblock
- grow 300
- or met1fill_coarse,met1fill_medium
- grow 200
- templayer met1fill_fine topbox
- slots 0 580 200 0 580 200 700 0
- and-not obstruct_m1_fine
- and topbox
- shrink 285
- grow 285
-
- templayer obstruct_m1_veryfine allm1,allpad,obsm1,m1fill,fillblock
- grow 100
- or met1fill_coarse,met1fill_medium,met1fill_fine
- grow 200
- templayer met1fill_veryfine topbox
- slots 0 300 200 0 300 200 100 50
- and-not obstruct_m1_veryfine
- and topbox
- shrink 145
- grow 145
-
- layer MET1MASK met1fill_coarse
- or met1fill_medium
- or met1fill_fine
- or met1fill_veryfine
- calma 36 0
-
-#---------------------------------------------------
-# MET2 fill
-#---------------------------------------------------
- templayer obstruct_m2 allm2,allpad,obsm2,m2fill,fillblock
- grow 3000
- templayer met2fill_coarse topbox
- slots 0 2000 200 0 2000 200 700 350
- and-not obstruct_m2
- and topbox
- shrink 995
- grow 995
-
- templayer obstruct_m2_medium allm2,allpad,obsm2,m2fill,fillblock
- grow 2800
- or met2fill_coarse
- grow 200
- templayer met2fill_medium topbox
- slots 0 1000 200 0 1000 200 700 350
- and-not obstruct_m2_medium
- and topbox
- shrink 495
- grow 495
-
- templayer obstruct_m2_fine allm2,allpad,obsm2,m2fill,fillblock
- grow 300
- or met2fill_coarse,met2fill_medium
- grow 200
- templayer met2fill_fine topbox
- slots 0 580 200 0 580 200 700 350
- and-not obstruct_m2_fine
- and topbox
- shrink 285
- grow 285
-
- templayer obstruct_m2_veryfine allm2,allpad,obsm2,m2fill,fillblock
- grow 100
- or met2fill_coarse,met2fill_medium,met2fill_fine
- grow 200
- templayer met2fill_veryfine topbox
- slots 0 300 200 0 300 200 100 100
- and-not obstruct_m2_veryfine
- and topbox
- shrink 145
- grow 145
-
- layer MET2MASK met2fill_coarse
- or met2fill_medium
- or met2fill_fine
- or met2fill_veryfine
- calma 41 0
-
-#---------------------------------------------------
-# MET3 fill
-#---------------------------------------------------
- templayer obstruct_m3 allm3,allpad,obsm3,m3fill,fillblock
- grow 3000
- templayer met3fill_coarse topbox
- slots 0 2000 300 0 2000 300 700 700
- and-not obstruct_m3
- and topbox
- shrink 995
- grow 995
-
- templayer obstruct_m3_medium allm3,allpad,obsm3,m3fill,fillblock
- grow 2700
- or met3fill_coarse
- grow 300
- templayer met3fill_medium topbox
- slots 0 1000 300 0 1000 300 700 700
- and-not obstruct_m3_medium
- and topbox
- shrink 495
- grow 495
-
- templayer obstruct_m3_fine allm3,allpad,obsm3,m3fill,fillblock
- grow 200
- or met3fill_coarse,met3fill_medium
- grow 300
- templayer met3fill_fine topbox
- slots 0 580 300 0 580 300 700 700
- and-not obstruct_m3_fine
- and topbox
- shrink 285
- grow 285
-
- templayer obstruct_m3_veryfine allm3,allpad,obsm3,m3fill,fillblock
- # Note: Adding 0.1 to waffle rule to clear wide spacing rule
- grow 100
- or met3fill_coarse,met3fill_medium,met3fill_fine
- grow 300
- templayer met3fill_veryfine topbox
- slots 0 400 300 0 400 300 150 200
- and-not obstruct_m3_veryfine
- and topbox
- shrink 195
- grow 195
-
- layer MET3MASK met3fill_coarse
- or met3fill_medium
- or met3fill_fine
- or met3fill_veryfine
- calma 34 0
-
-#---------------------------------------------------
-# MET4 fill
-#---------------------------------------------------
- templayer obstruct_m4 allm4,allpad,obsm4,m4fill,fillblock
- grow 3000
- templayer met4fill_coarse topbox
- slots 0 2000 300 0 2000 300 700 1050
- and-not obstruct_m4
- and topbox
- shrink 995
- grow 995
-
- templayer obstruct_m4_medium allm4,allpad,obsm4,m4fill,fillblock
- grow 2700
- or met4fill_coarse
- grow 300
- templayer met4fill_medium topbox
- slots 0 1000 300 0 1000 300 700 1050
- and-not obstruct_m4_medium
- shrink 495
- grow 495
-
- templayer obstruct_m4_fine allm4,allpad,obsm4,m4fill,fillblock
- grow 200
- or met4fill_coarse,met4fill_medium
- grow 300
- templayer met4fill_fine topbox
- slots 0 580 300 0 580 300 700 1050
- and-not obstruct_m4_fine
- and topbox
- shrink 285
- grow 285
-
- templayer obstruct_m4_veryfine allm4,allpad,obsm4,m4fill,fillblock
- # Note: Adding 0.1 to waffle rule to clear wide spacing rule
- grow 100
- or met4fill_coarse,met4fill_medium,met4fill_fine
- grow 300
- templayer met4fill_veryfine topbox
- slots 0 400 300 0 400 300 150 300
- and-not obstruct_m4_veryfine
- and topbox
- shrink 195
- grow 195
-
- layer MET4MASK met4fill_coarse
- or met4fill_medium
- or met4fill_fine
- or met4fill_veryfine
- calma 51 0
-
-#---------------------------------------------------
-# MET5 fill
-#---------------------------------------------------
- templayer obstruct_m5 allm5,allpad,obsm5,m5fill,fillblock
- grow 3000
- templayer met5fill_gen topbox
- slots 0 3000 1600 0 3000 1600 1000 100
- and-not obstruct_m5
- and topbox
- shrink 1495
- grow 1495
-
- layer MET5MASK met5fill_gen
- calma 59 0
-
-end
-
-#-----------------------------------------------------------------------
-cifinput
-#-----------------------------------------------------------------------
-# NOTE: All values in this section MUST be multiples of 25
-# or else magic will scale below the allowed layout grid size
-#-----------------------------------------------------------------------
-
-style sky130
- scalefactor 10 nanometers
- gridlimit 5
-
- options ignore-unknown-layer-labels no-reconnect-labels
-
- ignore NPC
- ignore SEALID
- ignore CAPID
- ignore LDNTM
- ignore HVNTM
- ignore POLYMOD
- ignore LOWTAPDENSITY
-
- layer pnp NWELL,WELLTXT,WELLPIN
- and PNPID
- labels NWELL
- labels WELLTXT text
- labels WELLPIN port
-
- layer nwell NWELL,WELLTXT,WELLPIN
- and-not PNPID
- labels NWELL
- labels WELLTXT text
- labels WELLPIN port
-
- layer pwell SUBTXT,SUBPIN
- labels SUBTXT text
- labels SUBPIN port
-
- # Always draw pwell under p-tap
- layer pwell TAP
- and-not NWELL
-
- layer dnwell DNWELL
- labels DNWELL
-
- layer npn DNWELL
- and-not NWELL
- and NPNID
-
- layer rpw PWRES
- and DNWELL
- labels PWRES
-
- templayer ndiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and-not NWELL
- and-not PPLUS
- and-not DIODE
- and-not DIFFRES
- and-not THKOX
- and NPLUS
- copyup ndifcheck
- labels DIFF
- labels DIFFTXT text
- labels DIFFPIN port
- labels TAPPIN port
-
- layer ndiff ndiffarea
-
- # Copy ndiff areas up for contact checks
- templayer xndifcheck ndifcheck
- copyup ndifcheck
-
- templayer mvndiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and-not NWELL
- and-not PPLUS
- and-not DIODE
- and-not DIFFRES
- and THKOX
- and NPLUS
- copyup ndifcheck
- labels DIFF
- labels DIFFTXT text
- labels DIFFPIN port
-
- layer mvndiff mvndiffarea
-
- # Copy ndiff areas up for contact checks
- templayer mvxndifcheck mvndifcheck
- copyup mvndifcheck
-
- layer ndiode DIFF
- and NPLUS
- and DIODE
- and-not NWELL
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and-not LVTN
- labels DIFF
-
- layer ndiodelvt DIFF
- and NPLUS
- and DIODE
- and-not NWELL
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and LVTN
- labels DIFF
-
- templayer ndiodearea DIODE
- and NPLUS
- and-not THKOX
- and-not NWELL
- copyup DIODE,NPLUS
-
- layer ndiffres DIFFRES
- and NPLUS
- and-not THKOX
- labels DIFF
-
- templayer pdiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and NWELL
- and-not NPLUS
- and-not DIODE
- and-not THKOX
- and PPLUS
- copyup pdifcheck
- labels DIFF
- labels DIFFTXT text
- labels DIFFPIN port
-
- layer pdiff pdiffarea
-
- layer mvndiode DIFF
- and NPLUS
- and DIODE
- and THKOX
- and-not POLY
- and-not PPLUS
- and-not LVTN
- labels DIFF
-
- layer nndiode DIFF
- and NPLUS
- and DIODE
- and THKOX
- and-not POLY
- and-not PPLUS
- and LVTN
- labels DIFF
-
- templayer mvndiodearea DIODE
- and NPLUS
- and THKOX
- and-not NWELL
- copyup DIODE,NPLUS
-
- layer mvndiffres DIFFRES
- and NPLUS
- and THKOX
- labels DIFF
-
- templayer mvpdiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and NWELL
- and-not NPLUS
- and THKOX
- and-not DIODE
- and-not DIFFRES
- and PPLUS
- copyup mvpdifcheck
- labels DIFF
- labels DIFFTXT text
- labels DIFFPIN port
-
- layer mvpdiff mvpdiffarea
-
- # Copy pdiff areas up for contact checks
- templayer xpdifcheck pdifcheck
- copyup pdifcheck
-
- layer pdiode DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and-not HVTP
- and DIODE
- labels DIFF
-
- layer pdiodelvt DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and LVTN
- and-not HVTP
- and DIODE
- labels DIFF
-
- layer pdiodehvt DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and HVTP
- and DIODE
- labels DIFF
-
- templayer pdiodearea DIODE
- and PPLUS
- and-not THKOX
- copyup DIODE,PPLUS
-
- # Define pfet areas as known pdiff, regardless of the presence of a well.
-
- templayer pfetarea DIFF
- and-not NPLUS
- and-not THKOX
- and POLY
-
- layer pfet pfetarea
- and-not LVTN
- and-not HVTP
- and-not STDCELL
- and-not COREID
- labels DIFF
-
- layer scpfet pfetarea
- and-not LVTN
- and-not HVTP
- and STDCELL
- labels DIFF
-
- layer scpfethvt pfetarea
- and-not LVTN
- and HVTP
- and STDCELL
- labels DIFF
-
- layer ppu pfetarea
- and-not LVTN
- and HVTP
- and COREID
- labels DIFF
-
- layer pfetlvt pfetarea
- and LVTN
- labels DIFF
-
- layer pfetmvt pfetarea
- and HVTR
- labels DIFF
-
- layer pfethvt pfetarea
- and HVTP
- and-not STDCELL
- and-not COREID
- labels DIFF
-
- # Always force nwell under pfet (nwell encloses pdiff by 0.18)
- layer nwell pfetarea
- grow 180
-
- # Copy mvpdiff areas up for contact checks
- templayer mvxpdifcheck mvpdifcheck
- copyup mvpdifcheck
-
- layer mvpdiode DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and THKOX
- and DIODE
- labels DIFF
-
- templayer mvpdiodearea DIODE
- and PPLUS
- and THKOX
- copyup DIODE,PPLUS
-
- # Define pfet areas as known pdiff,
- # regardless of the presence of a
- # well.
-
- templayer mvpfetarea DIFF
- and-not NPLUS
- and THKOX
- and POLY
-
- layer mvpfet mvpfetarea
- labels DIFF
-
- layer pdiff DIFF,DIFFTXT,DIFFPIN
- and-not NPLUS
- and-not POLY
- and-not THKOX
- and-not DIODE
- and-not DIFFRES
- labels DIFF
- labels DIFFTXT text
- labels DIFFPIN port
-
- layer pdiffres DIFFRES
- and PPLUS
- and NWELL
- and-not THKOX
- labels DIFF
-
- layer nfet DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not THKOX
- and-not LVTN
- and-not SONOS
- and-not STDCELL
- labels DIFF
-
- layer scnfet DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not NWELL
- and-not THKOX
- and-not LVTN
- and-not SONOS
- and STDCELL
- labels DIFF
-
- layer npass DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not NWELL
- and COREID
- labels DIFF
-
- layer npd DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not NWELL
- and COREID
- # Shrink-grow operation eliminates the smaller npass device
- shrink 70
- grow 70
- labels DIFF
-
- layer nfetlvt DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not THKOX
- and LVTN
- and-not SONOS
- labels DIFF
-
- layer nsonos DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not THKOX
- and LVTN
- and SONOS
- labels DIFF
-
- templayer nsdarea TAP
- and NPLUS
- and NWELL
- and-not POLY
- and-not PPLUS
- and-not THKOX
- copyup nsubcheck
-
- layer nsd nsdarea
- labels TAP
-
- layer nsd TAP,TAPPIN
- and NPLUS
- and-not POLY
- and-not THKOX
- labels TAP
- labels TAPPIN port
-
- layer corenvar TAP
- and NPLUS
- and POLY
- and COREID
- labels TAP
-
- templayer nsdexpand nsdarea
- grow 500
-
- # Copy nsub areas up for contact checks
- templayer xnsubcheck nsubcheck
- copyup nsubcheck
-
- templayer psdarea TAP
- and PPLUS
- and-not NWELL
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not pfetexpand
- copyup psubcheck
-
- layer psd psdarea
- labels TAP
-
- layer psd TAP,TAPPIN
- and PPLUS
- and-not POLY
- and-not THKOX
- labels TAP
- labels TAPPIN port
-
- layer corepvar TAP
- and PPLUS
- and POLY
- and COREID
- labels TAP
-
- templayer psdexpand psdarea
- grow 500
-
- layer mvpdiff DIFF,DIFFTXT,DIFFPIN
- and-not NPLUS
- and-not POLY
- and THKOX
- and mvpfetexpand
- labels DIFF
- labels DIFFTXT text
- labels DIFFPIN port
-
- layer mvpdiffres DIFFRES
- and PPLUS
- and NWELL
- and THKOX
- and-not mvrdpioedge
- labels DIFF
-
- templayer mvnfetarea DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not LVTN
- and THKOX
- grow 1000
-
- templayer mvnnfetarea DIFF,TAP
- and POLY
- and-not PPLUS
- and NPLUS
- and LVTN
- and THKOX
- and-not mvnfetarea
-
- layer mvnfet DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and THKOX
- and-not mvnnfetarea
- labels DIFF
-
- layer mvnnfet mvnnfetarea
- labels DIFF
-
- templayer mvnsdarea TAP
- and NPLUS
- and NWELL
- and-not POLY
- and-not PPLUS
- and THKOX
- copyup mvnsubcheck
-
- layer mvnsd mvnsdarea
- labels TAP
-
- layer mvnsd TAP,TAPPIN
- and NPLUS
- and THKOX
- labels TAP
- labels TAPPIN port
-
- templayer mvnsdexpand mvnsdarea
- grow 500
-
- # Copy nsub areas up for contact checks
- templayer mvxnsubcheck mvnsubcheck
- copyup mvnsubcheck
-
- templayer mvpsdarea DIFF
- and PPLUS
- and-not NWELL
- and-not POLY
- and-not NPLUS
- and THKOX
- and-not mvpfetexpand
- copyup mvpsubcheck
-
- layer mvpsd mvpsdarea
- labels DIFF
-
- layer mvpsd TAP,TAPPIN
- and PPLUS
- and THKOX
- labels TAP
- labels TAPPIN port
-
- templayer mvpsdexpand mvpsdarea
- grow 500
-
- # Copy psub areas up for contact checks
- templayer xpsubcheck psubcheck
- copyup psubcheck
-
- templayer mvxpsubcheck mvpsubcheck
- copyup mvpsubcheck
-
- layer psd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and-not THKOX
- and-not pfetexpand
- and psdexpand
-
- layer nsd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and-not THKOX
- and nsdexpand
-
- layer mvpsd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and THKOX
- and-not mvpfetexpand
- and mvpsdexpand
-
- layer mvnsd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and THKOX
- and mvnsdexpand
-
- templayer hresarea POLY
- and RPM
- grow 3000
-
- templayer uresarea POLY
- and URPM
- grow 3000
-
- templayer diffresarea DIFFRES
- and-not THKOX
- grow 3000
-
- templayer mvdiffresarea DIFFRES
- and THKOX
- grow 3000
-
- templayer resarea diffresarea,mvdiffresarea,hresarea,uresarea
-
- layer pfet POLY
- and DIFF
- and diffresarea
- and-not NPLUS
- and-not STDCELL
-
- layer scpfet POLY
- and DIFF
- and diffresarea
- and-not HVTP
- and-not NPLUS
- and STDCELL
-
- layer scpfethvt POLY
- and DIFF
- and diffresarea
- and HVTP
- and-not NPLUS
- and STDCELL
-
- templayer xpolyterm RPM,URPM
- and POLY
- and-not POLYRES
- # add back the 0.06um contact surround in the direction of the resistor
- grow 60
- and POLY
-
- layer xpc xpolyterm
-
- templayer polyarea POLY
- and-not POLYRES
- and-not POLYSHORT
- and-not DIFF
- and-not TAP
- and-not RPM
- and-not URPM
- copyup polycheck
-
- layer poly polyarea,POLYTXT,POLYPIN
- labels POLY
- labels POLYTXT text
- labels POLYPIN port
-
- # Copy (non-resistor) poly areas up for contact checks
- templayer xpolycheck polycheck
- copyup polycheck
-
- layer mrp1 POLY
- and POLYRES
- and-not RPM
- and-not URPM
- labels POLY
-
- layer rmp POLY
- and POLYSHORT
- labels POLY
-
- layer xhrpoly POLY
- and POLYRES
- and RPM
- and-not URPM
- and PPLUS
- and NPC
- and-not xpolyterm
- labels POLY
-
- layer uhrpoly POLY
- and POLYRES
- and URPM
- and-not RPM
- and NPC
- and-not xpolyterm
- labels POLY
-
- templayer ndcbase CONT
- and DIFF
- and NPLUS
- and-not NWELL
- and LI
- and-not THKOX
-
- layer ndc ndcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndcbase
- labels CONT
-
- templayer nscbase CONT
- and DIFF,TAP
- and NPLUS
- and NWELL
- and LI
- and-not THKOX
-
- layer nsc nscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or nscbase
- labels CONT
-
- templayer pdcbase CONT
- and DIFF
- and PPLUS
- and NWELL
- and LI
- and-not THKOX
-
- layer pdc pdcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdcbase
- labels CONT
-
- templayer pdcnowell CONT
- and DIFF
- and PPLUS
- and pfetexpand
- and LI
- and-not THKOX
-
- layer pdc pdcnowell
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdcnowell
- labels CONT
-
- templayer pscbase CONT
- and DIFF,TAP
- and PPLUS
- and-not NWELL
- and-not pfetexpand
- and LI
- and-not THKOX
-
- layer psc pscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pscbase
- labels CONT
-
- templayer pcbase CONT
- and POLY
- and-not DIFF
- and-not RPM,URPM
- and LI
-
- layer pc pcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pcbase
- labels CONT
-
- templayer ndicbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and-not LVTN
-
- layer ndic ndicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndicbase
- labels CONT
-
- templayer ndilvtcbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and LVTN
-
- layer ndilvtc ndilvtcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndilvtcbase
- labels CONT
-
- templayer pdicbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and-not HVTP
-
- layer pdic pdicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdicbase
- labels CONT
-
- templayer pdilvtcbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and LVTN
- and-not HVTP
-
- layer pdilvtc pdilvtcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdilvtcbase
- labels CONT
-
- templayer pdihvtcbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and HVTP
-
- layer pdihvtc pdihvtcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdihvtcbase
- labels CONT
-
- templayer mvndcbase CONT
- and DIFF
- and NPLUS
- and-not NWELL
- and LI
- and THKOX
-
- layer mvndc mvndcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndcbase
- labels CONT
-
- templayer mvnscbase CONT
- and DIFF,TAP
- and NPLUS
- and NWELL
- and LI
- and THKOX
-
- layer mvnsc mvnscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvnscbase
- labels CONT
-
- templayer mvpdcbase CONT
- and DIFF
- and PPLUS
- and NWELL
- and LI
- and THKOX
-
- layer mvpdc mvpdcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdcbase
- labels CONT
-
- templayer mvpdcnowell CONT
- and DIFF
- and PPLUS
- and mvpfetexpand
- and MET1
- and THKOX
-
- layer mvpdc mvpdcnowell
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdcnowell
- labels CONT
-
- templayer mvpscbase CONT
- and DIFF,TAP
- and PPLUS
- and-not NWELL
- and-not mvpfetexpand
- and LI
- and THKOX
-
- layer mvpsc mvpscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpscbase
- labels CONT
-
- templayer mvndicbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and-not LVTN
- and THKOX
-
- layer mvndic mvndicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndicbase
- labels CONT
-
- templayer nndicbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and LVTN
- and THKOX
-
- layer nndic nndicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or nndicbase
- labels CONT
-
- templayer mvpdicbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and THKOX
-
- layer mvpdic mvpdicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdicbase
- labels CONT
-
- layer coreli LI,LITXT,LIPIN
- and-not LIRES,LISHORT
- and COREID
- labels LI
- labels LITXT text
- labels LIPIN port
-
- layer locali LI,LITXT,LIPIN
- and-not LIRES,LISHORT
- and-not COREID
- labels LI
- labels LITXT text
- labels LIPIN port
-
- layer rli LI
- and LIRES,LISHORT
- labels LIRES,LISHORT
-
- layer lic MCON
- grow 95
- shrink 95
- shrink 85
- grow 85
- or MCON
- labels MCON
-
- layer m1 MET1,MET1TXT,MET1PIN
- and-not MET1RES,MET1SHORT
- labels MET1
- labels MET1TXT text
- labels MET1PIN port
-
- layer rm1 MET1
- and MET1RES,MET1SHORT
- labels MET1RES,MET1SHORT
-
- layer m1fill MET1FILL
- labels MET1FILL
-
- layer mimcap MET3
- and CAPM
- labels CAPM
-
- layer mimcc VIA3
- and CAPM
- grow 60
- grow 40
- shrink 40
- labels CAPM
-
- layer mimcap2 MET4
- and CAPM2
- labels CAPM2
-
- layer mim2cc VIA4
- and CAPM2
- grow 190
- grow 210
- shrink 210
- labels CAPM2
-
-
- templayer m2cbase VIA1
- grow 55
-
- layer m2c m2cbase
- grow 30
- shrink 30
- shrink 130
- grow 130
- or m2cbase
-
- layer m2 MET2,MET2TXT,MET2PIN
- and-not MET2RES,MET2SHORT
- labels MET2
- labels MET2TXT text
- labels MET2PIN port
-
- layer rm2 MET2
- and MET2RES,MET2SHORT
- labels MET2RES,MET2SHORT
-
- layer m2fill MET2FILL
- labels MET2FILL
-
- templayer m3cbase VIA2
- grow 40
-
- layer m3c m3cbase
- grow 60
- shrink 60
- shrink 140
- grow 140
- or m3cbase
-
- layer m3 MET3,MET3TXT,MET3PIN
- and-not MET3RES,MET3SHORT
- and-not CAPM
- labels MET3
- labels MET3TXT text
- labels MET3PIN port
-
- layer rm3 MET3
- and MET3RES,MET3SHORT
- labels MET3RES,MET3SHORT
-
- layer m3fill MET3FILL
- labels MET3FILL
-
-
- templayer via3base VIA3
- and-not CAPM
- grow 60
-
- layer via3 via3base
- grow 40
- shrink 40
- shrink 160
- grow 160
- or via3base
-
- layer m4 MET4,MET4TXT,MET4PIN
- and-not MET4RES,MET4SHORT
- and-not CAPM2
- labels MET4
- labels MET4TXT text
- labels MET4PIN port
-
- layer rm4 MET4
- and MET4RES,MET4SHORT
- labels MET4RES,MET4SHORT
-
- layer m4fill MET4FILL
- labels MET4FILL
-
- layer m5 MET5,MET5TXT,MET5PIN
- and-not MET5RES,MET5SHORT
- labels MET5
- labels MET5TXT text
- labels MET5PIN port
-
- layer rm5 MET5
- and MET5RES,MET5SHORT
- labels MET5RES,MET5SHORT
-
- layer m5fill MET5FILL
- labels MET5FILL
-
- templayer via4base VIA4
- and-not CAPM2
- grow 190
-
- layer via4 via4base
- grow 210
- shrink 210
- shrink 590
- grow 590
- or via4base
-
- layer metrdl RDL,RDLTXT,RDLPIN
- labels RDL
- labels RDLTXT text
- labels RDLPIN port
-
- # Find diffusion not covered in
- # NPLUS or PPLUS and pull it into
- # the next layer up
-
- templayer gentrans DIFF
- and-not PPLUS
- and-not NPLUS
- and POLY
- copyup DIFF,POLY
-
- templayer gendiff DIFF,TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- copyup DIFF
-
- # Handle contacts found by copyup
-
- templayer ndiccopy CONT
- and LI
- and DIODE
- and NPLUS
- and-not THKOX
-
- layer ndic ndiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndiccopy
- labels CONT
-
- templayer mvndiccopy CONT
- and LI
- and DIODE
- and NPLUS
- and THKOX
-
- layer mvndic mvndiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndiccopy
- labels CONT
-
- templayer pdiccopy CONT
- and LI
- and DIODE
- and PPLUS
- and-not THKOX
-
- layer pdic pdiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdiccopy
- labels CONT
-
- templayer mvpdiccopy CONT
- and LI
- and DIODE
- and PPLUS
- and THKOX
-
- layer mvpdic mvpdiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdiccopy
- labels CONT
-
- templayer ndccopy CONT
- and ndifcheck
-
- layer ndc ndccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndccopy
- labels CONT
-
- templayer mvndccopy CONT
- and mvndifcheck
-
- layer mvndc mvndccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndccopy
- labels CONT
-
- templayer pdccopy CONT
- and pdifcheck
-
- layer pdc pdccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdccopy
- labels CONT
-
- templayer mvpdccopy CONT
- and mvpdifcheck
-
- layer mvpdc mvpdccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdccopy
- labels CONT
-
- templayer pccopy CONT
- and polycheck
-
- layer pc pccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pccopy
- labels CONT
-
- templayer nsccopy CONT
- and nsubcheck
-
- layer nsc nsccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or nsccopy
- labels CONT
-
- templayer mvnsccopy CONT
- and mvnsubcheck
-
- layer mvnsc mvnsccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvnsccopy
- labels CONT
-
- templayer psccopy CONT
- and psubcheck
-
- layer psc psccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or psccopy
- labels CONT
-
- templayer mvpsccopy CONT
- and mvpsubcheck
-
- layer mvpsc mvpsccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpsccopy
- labels CONT
-
- # Find contacts not covered in
- # metal and pull them into the
- # next layer up
-
- templayer gencont CONT
- and LI
- and-not DIFF,TAP
- and-not POLY
- and-not DIODE
- and-not nsubcheck
- and-not psubcheck
- and-not mvnsubcheck
- and-not mvpsubcheck
- copyup CONT,LI
-
- templayer barecont CONT
- and-not LI
- and-not nsubcheck
- and-not psubcheck
- and-not mvnsubcheck
- and-not mvpsubcheck
- copyup CONT
-
- layer glass GLASS,PADTXT,PADPIN
- labels GLASS
- labels PADTXT text
- labels PADPIN port
-
- templayer boundary BOUND,STDCELL,PADCELL
- boundary
-
- layer comment LVSTEXT
- labels LVSTEXT text
-
- layer comment TTEXT
- labels TTEXT text
-
- layer fillblock FILLOBSM1,FILLOBSM2,FILLOBSM3,FILLOBSM4
- labels FILLOBSM1,FILLOBSM2,FILLOBSM3,FILLOBSM4
-
-# MOS Varactor
-
- layer var POLY
- and TAP
- and NPLUS
- and NWELL
- and-not THKOX
- and-not HVTP
- # NOTE: Else forms a varactor that is not in the vendor netlist.
- and-not COREID
- labels POLY
-
- layer varhvt POLY
- and TAP
- and NPLUS
- and NWELL
- and-not THKOX
- and HVTP
- labels POLY
-
- layer mvvar POLY
- and TAP
- and NPLUS
- and NWELL
- and THKOX
- labels POLY
-
- calma NWELL 64 20
- calma DIFF 65 20
- calma DNWELL 64 18
- calma PWRES 64 13
- calma TAP 65 44
- # LVTN
- calma LVTN 125 44
- # HVTR
- calma HVTR 18 20
- # HVTP
- calma HVTP 78 44
- # SONOS (TUNM)
- calma SONOS 80 20
- # NPLUS = NSDM
- calma NPLUS 93 44
- # PPLUS = PSDM
- calma PPLUS 94 20
- # HVI
- calma THKOX 75 20
- # NPC
- calma NPC 95 20
- # P+ POLY MASK
- calma RPM 86 20
- calma URPM 79 20
- calma LDNTM 11 44
- calma HVNTM 125 20
- # Poly resistor ID mark
- calma POLYRES 66 13
- # Diffusion resistor ID mark
- calma DIFFRES 65 13
- calma POLY 66 20
- calma POLYMOD 66 83
- # Diode ID mark
- calma DIODE 81 23
- # Bipolar NPN mark
- calma NPNID 82 20
- # Bipolar PNP mark
- calma PNPID 82 44
- # Capacitor ID
- calma CAPID 82 64
- # Core area ID mark
- calma COREID 81 2
- # Standard cell ID mark
- calma STDCELL 81 4
- # Padframe cell ID mark
- calma PADCELL 81 3
- # Seal ring ID mark
- calma SEALID 81 1
- # Low tap density ID mark
- calma LOWTAPDENSITY 81 14
-
- # LICON
- calma CONT 66 44
- calma LI 67 20
- calma MCON 67 44
-
- calma MET1 68 20
- calma VIA1 68 44
- calma MET2 69 20
- calma VIA2 69 44
- calma MET3 70 20
- calma VIA3 70 44
- calma MET4 71 20
- calma VIA4 71 44
- calma MET5 72 20
- calma RDL 74 20
- calma GLASS 76 20
-
- calma SUBPIN 64 59
- calma PADPIN 76 5
- calma DIFFPIN 65 6
- calma TAPPIN 65 5
- calma WELLPIN 64 5
- calma LIPIN 67 5
- calma POLYPIN 66 5
- calma MET1PIN 68 5
- calma MET2PIN 69 5
- calma MET3PIN 70 5
- calma MET4PIN 71 5
- calma MET5PIN 72 5
- calma RDLPIN 74 5
-
- calma LIRES 67 13
- calma MET1RES 68 13
- calma MET2RES 69 13
- calma MET3RES 70 13
- calma MET4RES 71 13
- calma MET5RES 72 13
-
- calma MET1FILL 68 28
- calma MET2FILL 69 28
- calma MET3FILL 70 28
- calma MET4FILL 71 28
- calma MET5FILL 72 28
-
- calma POLYSHORT 66 15
- calma LISHORT 67 15
- calma MET1SHORT 68 15
- calma MET2SHORT 69 15
- calma MET3SHORT 70 15
- calma MET4SHORT 71 15
- calma MET5SHORT 72 15
-
- calma SUBTXT 122 16
- calma PADTXT 76 16
- calma DIFFTXT 65 16
- calma POLYTXT 66 16
- calma WELLTXT 64 16
- calma LITXT 67 16
- calma MET1TXT 68 16
- calma MET2TXT 69 16
- calma MET3TXT 70 16
- calma MET4TXT 71 16
- calma MET5TXT 72 16
- calma RDLPIN 74 16
-
- calma BOUND 235 4
-
- calma LVSTEXT 83 44
-
- calma CAPM 89 44
- calma CAPM2 97 44
-
- calma FILLOBSM1 62 24
- calma FILLOBSM2 105 52
- calma FILLOBSM3 107 24
- calma FILLOBSM4 112 4
-
-#-----------------------------------------------------------------------
-
-style vendorimport
- scalefactor 10 nanometers
- gridlimit 5
-
- options ignore-unknown-layer-labels no-reconnect-labels
-
- ignore NPC
- ignore SEALID
- ignore CAPID
- ignore LDNTM
- ignore HVNTM
- ignore POLYMOD
- ignore LOWTAPDENSITY
-
- layer pnp NWELL,WELLTXT,WELLPIN
- and PNPID
- labels NWELL
- labels WELLTXT port
- labels WELLPIN port
-
- layer nwell NWELL,WELLTXT,WELLPIN
- and-not PNPID
- labels NWELL
- labels WELLTXT port
- labels WELLPIN port
-
- layer pwell SUBTXT,SUBPIN
- labels SUBTXT port
- labels SUBPIN port
-
- # Always draw pwell under p-tap
- layer pwell TAP
- and-not NWELL
-
- layer dnwell DNWELL
- labels DNWELL
-
- layer npn DNWELL
- and-not NWELL
- and NPNID
-
- layer rpw PWRES
- and DNWELL
- labels PWRES
-
- templayer ndiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and-not NWELL
- and-not PPLUS
- and-not DIODE
- and-not DIFFRES
- and-not THKOX
- and NPLUS
- copyup ndifcheck
- labels DIFF
- labels DIFFTXT port
- labels DIFFPIN port
- labels TAPPIN port
-
- layer ndiff ndiffarea
-
- # Copy ndiff areas up for contact checks
- templayer xndifcheck ndifcheck
- copyup ndifcheck
-
- templayer mvndiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and-not NWELL
- and-not PPLUS
- and-not DIODE
- and-not DIFFRES
- and THKOX
- and NPLUS
- copyup ndifcheck
- labels DIFF
- labels DIFFTXT port
- labels DIFFPIN port
-
- layer mvndiff mvndiffarea
-
- # Copy ndiff areas up for contact checks
- templayer mvxndifcheck mvndifcheck
- copyup mvndifcheck
-
- layer ndiode DIFF
- and NPLUS
- and DIODE
- and-not NWELL
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and-not LVTN
- labels DIFF
-
- layer ndiodelvt DIFF
- and NPLUS
- and DIODE
- and-not NWELL
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and LVTN
- labels DIFF
-
- templayer ndiodearea DIODE
- and NPLUS
- and-not THKOX
- and-not NWELL
- copyup DIODE,NPLUS
-
- layer ndiffres DIFFRES
- and NPLUS
- and-not THKOX
- labels DIFF
-
- templayer pdiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and NWELL
- and-not NPLUS
- and-not DIODE
- and-not THKOX
- and PPLUS
- copyup pdifcheck
- labels DIFF
- labels DIFFTXT port
- labels DIFFPIN port
-
- layer pdiff pdiffarea
-
- layer mvndiode DIFF
- and NPLUS
- and DIODE
- and THKOX
- and-not POLY
- and-not PPLUS
- and-not LVTN
- labels DIFF
-
- layer nndiode DIFF
- and NPLUS
- and DIODE
- and THKOX
- and-not POLY
- and-not PPLUS
- and LVTN
- labels DIFF
-
- templayer mvndiodearea DIODE
- and NPLUS
- and THKOX
- and-not NWELL
- copyup DIODE,NPLUS
-
- layer mvndiffres DIFFRES
- and NPLUS
- and THKOX
- labels DIFF
-
- templayer mvpdiffarea DIFF,DIFFTXT,DIFFPIN
- and-not POLY
- and NWELL
- and-not NPLUS
- and THKOX
- and-not DIODE
- and-not DIFFRES
- and PPLUS
- copyup mvpdifcheck
- labels DIFF
- labels DIFFTXT port
- labels DIFFPIN port
-
- layer mvpdiff mvpdiffarea
-
- # Copy pdiff areas up for contact checks
- templayer xpdifcheck pdifcheck
- copyup pdifcheck
-
- layer pdiode DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and-not HVTP
- and DIODE
- labels DIFF
-
- layer pdiodelvt DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and LVTN
- and-not HVTP
- and DIODE
- labels DIFF
-
- layer pdiodehvt DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and HVTP
- and DIODE
- labels DIFF
-
- templayer pdiodearea DIODE
- and PPLUS
- and-not THKOX
- copyup DIODE,PPLUS
-
- # Define pfet areas as known pdiff, regardless of the presence of a well.
-
- templayer pfetarea DIFF
- and-not NPLUS
- and-not THKOX
- and POLY
-
- layer pfet pfetarea
- and-not LVTN
- and-not HVTP
- and-not STDCELL
- and-not COREID
- labels DIFF
-
- layer scpfet pfetarea
- and-not LVTN
- and-not HVTP
- and STDCELL
- labels DIFF
-
- layer scpfethvt pfetarea
- and-not LVTN
- and HVTP
- and STDCELL
- labels DIFF
-
- layer ppu pfetarea
- and-not LVTN
- and HVTP
- and COREID
- labels DIFF
-
- layer pfetlvt pfetarea
- and LVTN
- labels DIFF
-
- layer pfetmvt pfetarea
- and HVTR
- labels DIFF
-
- layer pfethvt pfetarea
- and HVTP
- and-not STDCELL
- and-not COREID
- labels DIFF
-
- # Always force nwell under pfet (nwell encloses pdiff by 0.18)
- layer nwell pfetarea
- grow 180
-
- # Copy mvpdiff areas up for contact checks
- templayer mvxpdifcheck mvpdifcheck
- copyup mvpdifcheck
-
- layer mvpdiode DIFF
- and PPLUS
- and-not POLY
- and-not NPLUS
- and THKOX
- and DIODE
- labels DIFF
-
- templayer mvpdiodearea DIODE
- and PPLUS
- and THKOX
- copyup DIODE,PPLUS
-
- # Define pfet areas as known pdiff,
- # regardless of the presence of a
- # well.
-
- templayer mvpfetarea DIFF
- and-not NPLUS
- and THKOX
- and POLY
-
- layer mvpfet mvpfetarea
- labels DIFF
-
- layer pdiff DIFF,DIFFTXT,DIFFPIN
- and-not NPLUS
- and-not POLY
- and-not THKOX
- and-not DIODE
- and-not DIFFRES
- labels DIFF
- labels DIFFTXT port
- labels DIFFPIN port
-
- layer pdiffres DIFFRES
- and PPLUS
- and NWELL
- and-not THKOX
- labels DIFF
-
- layer nfet DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not THKOX
- and-not LVTN
- and-not SONOS
- and-not STDCELL
- labels DIFF
-
- layer scnfet DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not NWELL
- and-not THKOX
- and-not LVTN
- and-not SONOS
- and STDCELL
- labels DIFF
-
- layer npass DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not NWELL
- and COREID
- labels DIFF
-
- layer npd DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not NWELL
- and COREID
- # Shrink-grow operation eliminates the smaller npass device
- shrink 70
- grow 70
- labels DIFF
-
- layer nfetlvt DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not THKOX
- and LVTN
- and-not SONOS
- labels DIFF
-
- layer nsonos DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not THKOX
- and LVTN
- and SONOS
- labels DIFF
-
- templayer nsdarea TAP
- and NPLUS
- and NWELL
- and-not POLY
- and-not PPLUS
- and-not THKOX
- copyup nsubcheck
-
- layer nsd nsdarea
- labels TAP
-
- layer nsd TAP,TAPPIN
- and NPLUS
- and-not POLY
- and-not THKOX
- labels TAP
- labels TAPPIN port
-
- layer corenvar TAP
- and NPLUS
- and POLY
- and COREID
- labels TAP
-
- templayer nsdexpand nsdarea
- grow 500
-
- # Copy nsub areas up for contact checks
- templayer xnsubcheck nsubcheck
- copyup nsubcheck
-
- templayer psdarea TAP
- and PPLUS
- and-not NWELL
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not pfetexpand
- copyup psubcheck
-
- layer psd psdarea
- labels TAP
-
- layer psd TAP,TAPPIN
- and PPLUS
- and-not POLY
- and-not THKOX
- labels TAP
- labels TAPPIN port
-
- layer corepvar TAP
- and PPLUS
- and POLY
- and COREID
- labels TAP
-
- templayer psdexpand psdarea
- grow 500
-
- layer mvpdiff DIFF,DIFFTXT,DIFFPIN
- and-not NPLUS
- and-not POLY
- and THKOX
- and mvpfetexpand
- labels DIFF
- labels DIFFTXT port
- labels DIFFPIN port
-
- layer mvpdiffres DIFFRES
- and PPLUS
- and NWELL
- and THKOX
- and-not mvrdpioedge
- labels DIFF
-
- templayer mvnfetarea DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and-not LVTN
- and THKOX
- grow 1000
-
- templayer mvnnfetarea DIFF,TAP
- and POLY
- and-not PPLUS
- and NPLUS
- and LVTN
- and THKOX
- and-not mvnfetarea
-
- layer mvnfet DIFF
- and POLY
- and-not PPLUS
- and NPLUS
- and THKOX
- and-not mvnnfetarea
- labels DIFF
-
- layer mvnnfet mvnnfetarea
- labels DIFF
-
- templayer mvnsdarea TAP
- and NPLUS
- and NWELL
- and-not POLY
- and-not PPLUS
- and THKOX
- copyup mvnsubcheck
-
- layer mvnsd mvnsdarea
- labels TAP
-
- layer mvnsd TAP,TAPPIN
- and NPLUS
- and THKOX
- labels TAP
- labels TAPPIN port
-
- templayer mvnsdexpand mvnsdarea
- grow 500
-
- # Copy nsub areas up for contact checks
- templayer mvxnsubcheck mvnsubcheck
- copyup mvnsubcheck
-
- templayer mvpsdarea DIFF
- and PPLUS
- and-not NWELL
- and-not POLY
- and-not NPLUS
- and THKOX
- and-not mvpfetexpand
- copyup mvpsubcheck
-
- layer mvpsd mvpsdarea
- labels DIFF
-
- layer mvpsd TAP,TAPPIN
- and PPLUS
- and THKOX
- labels TAP
- labels TAPPIN port
-
- templayer mvpsdexpand mvpsdarea
- grow 500
-
- # Copy psub areas up for contact checks
- templayer xpsubcheck psubcheck
- copyup psubcheck
-
- templayer mvxpsubcheck mvpsubcheck
- copyup mvpsubcheck
-
- layer psd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and-not THKOX
- and-not pfetexpand
- and psdexpand
-
- layer nsd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and-not THKOX
- and nsdexpand
-
- layer mvpsd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and THKOX
- and-not mvpfetexpand
- and mvpsdexpand
-
- layer mvnsd TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- and THKOX
- and mvnsdexpand
-
- templayer hresarea POLY
- and RPM
- grow 3000
-
- templayer uresarea POLY
- and URPM
- grow 3000
-
- templayer diffresarea DIFFRES
- and-not THKOX
- grow 3000
-
- templayer mvdiffresarea DIFFRES
- and THKOX
- grow 3000
-
- templayer resarea diffresarea,mvdiffresarea,hresarea,uresarea
-
- layer pfet POLY
- and DIFF
- and diffresarea
- and-not NPLUS
- and-not STDCELL
-
- layer scpfet POLY
- and DIFF
- and diffresarea
- and-not HVTP
- and-not NPLUS
- and STDCELL
-
- layer scpfethvt POLY
- and DIFF
- and diffresarea
- and HVTP
- and-not NPLUS
- and STDCELL
-
- templayer xpolyterm RPM,URPM
- and POLY
- and-not POLYRES
- # add back the 0.06um contact surround in the direction of the resistor
- grow 60
- and POLY
-
- layer xpc xpolyterm
-
- templayer polyarea POLY
- and-not POLYRES
- and-not POLYSHORT
- and-not DIFF
- and-not TAP
- and-not RPM
- and-not URPM
- copyup polycheck
-
- layer poly polyarea,POLYTXT,POLYPIN
- labels POLY
- labels POLYTXT port
- labels POLYPIN port
-
- # Copy (non-resistor) poly areas up for contact checks
- templayer xpolycheck polycheck
- copyup polycheck
-
- layer mrp1 POLY
- and POLYRES
- and-not RPM
- and-not URPM
- labels POLY
-
- layer rmp POLY
- and POLYSHORT
- labels POLY
-
- layer xhrpoly POLY
- and POLYRES
- and RPM
- and-not URPM
- and PPLUS
- and NPC
- and-not xpolyterm
- labels POLY
-
- layer uhrpoly POLY
- and POLYRES
- and URPM
- and-not RPM
- and NPC
- and-not xpolyterm
- labels POLY
-
- templayer ndcbase CONT
- and DIFF
- and NPLUS
- and-not NWELL
- and LI
- and-not THKOX
-
- layer ndc ndcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndcbase
- labels CONT
-
- templayer nscbase CONT
- and DIFF,TAP
- and NPLUS
- and NWELL
- and LI
- and-not THKOX
-
- layer nsc nscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or nscbase
- labels CONT
-
- templayer pdcbase CONT
- and DIFF
- and PPLUS
- and NWELL
- and LI
- and-not THKOX
-
- layer pdc pdcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdcbase
- labels CONT
-
- templayer pdcnowell CONT
- and DIFF
- and PPLUS
- and pfetexpand
- and LI
- and-not THKOX
-
- layer pdc pdcnowell
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdcnowell
- labels CONT
-
- templayer pscbase CONT
- and DIFF,TAP
- and PPLUS
- and-not NWELL
- and-not pfetexpand
- and LI
- and-not THKOX
-
- layer psc pscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pscbase
- labels CONT
-
- templayer pcbase CONT
- and POLY
- and-not DIFF
- and-not RPM,URPM
- and LI
-
- layer pc pcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pcbase
- labels CONT
-
- templayer ndicbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and-not LVTN
-
- layer ndic ndicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndicbase
- labels CONT
-
- templayer ndilvtcbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and-not THKOX
- and LVTN
-
- layer ndilvtc ndilvtcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndilvtcbase
- labels CONT
-
- templayer pdicbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and-not HVTP
-
- layer pdic pdicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdicbase
- labels CONT
-
- templayer pdilvtcbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and LVTN
- and-not HVTP
-
- layer pdilvtc pdilvtcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdilvtcbase
- labels CONT
-
- templayer pdihvtcbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and-not THKOX
- and-not LVTN
- and HVTP
-
- layer pdihvtc pdihvtcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdihvtcbase
- labels CONT
-
- templayer mvndcbase CONT
- and DIFF
- and NPLUS
- and-not NWELL
- and LI
- and THKOX
-
- layer mvndc mvndcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndcbase
- labels CONT
-
- templayer mvnscbase CONT
- and DIFF,TAP
- and NPLUS
- and NWELL
- and LI
- and THKOX
-
- layer mvnsc mvnscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvnscbase
- labels CONT
-
- templayer mvpdcbase CONT
- and DIFF
- and PPLUS
- and NWELL
- and LI
- and THKOX
-
- layer mvpdc mvpdcbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdcbase
- labels CONT
-
- templayer mvpdcnowell CONT
- and DIFF
- and PPLUS
- and mvpfetexpand
- and MET1
- and THKOX
-
- layer mvpdc mvpdcnowell
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdcnowell
- labels CONT
-
- templayer mvpscbase CONT
- and DIFF,TAP
- and PPLUS
- and-not NWELL
- and-not mvpfetexpand
- and LI
- and THKOX
-
- layer mvpsc mvpscbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpscbase
- labels CONT
-
- templayer mvndicbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and-not LVTN
- and THKOX
-
- layer mvndic mvndicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndicbase
- labels CONT
-
- templayer nndicbase CONT
- and DIFF
- and NPLUS
- and DIODE
- and-not POLY
- and-not PPLUS
- and LVTN
- and THKOX
-
- layer nndic nndicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or nndicbase
- labels CONT
-
- templayer mvpdicbase CONT
- and DIFF
- and PPLUS
- and DIODE
- and-not POLY
- and-not NPLUS
- and THKOX
-
- layer mvpdic mvpdicbase
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdicbase
- labels CONT
-
- layer coreli LI,LITXT,LIPIN
- and-not LIRES,LISHORT
- and COREID
- labels LI
- labels LITXT port
- labels LIPIN port
-
- layer locali LI,LITXT,LIPIN
- and-not LIRES,LISHORT
- and-not COREID
- labels LI
- labels LITXT port
- labels LIPIN port
-
- layer rli LI
- and LIRES,LISHORT
- labels LIRES,LISHORT
-
- layer lic MCON
- grow 95
- shrink 95
- shrink 85
- grow 85
- or MCON
- labels MCON
-
- layer m1 MET1,MET1TXT,MET1PIN
- and-not MET1RES,MET1SHORT
- labels MET1
- labels MET1TXT port
- labels MET1PIN port
-
- layer rm1 MET1
- and MET1RES,MET1SHORT
- labels MET1RES,MET1SHORT
-
- layer m1fill MET1FILL
- labels MET1FILL
-
- layer mimcap MET3
- and CAPM
- labels CAPM
-
- layer mimcc VIA3
- and CAPM
- grow 60
- grow 40
- shrink 40
- labels CAPM
-
- layer mimcap2 MET4
- and CAPM2
- labels CAPM2
-
- layer mim2cc VIA4
- and CAPM2
- grow 190
- grow 210
- shrink 210
- labels CAPM2
-
-
- templayer m2cbase VIA1
- grow 55
-
- layer m2c m2cbase
- grow 30
- shrink 30
- shrink 130
- grow 130
- or m2cbase
-
- layer m2 MET2,MET2TXT,MET2PIN
- and-not MET2RES,MET2SHORT
- labels MET2
- labels MET2TXT port
- labels MET2PIN port
-
- layer rm2 MET2
- and MET2RES,MET2SHORT
- labels MET2RES,MET2SHORT
-
- layer m2fill MET2FILL
- labels MET2FILL
-
- templayer m3cbase VIA2
- grow 40
-
- layer m3c m3cbase
- grow 60
- shrink 60
- shrink 140
- grow 140
- or m3cbase
-
- layer m3 MET3,MET3TXT,MET3PIN
- and-not MET3RES,MET3SHORT
- and-not CAPM
- labels MET3
- labels MET3TXT port
- labels MET3PIN port
-
- layer rm3 MET3
- and MET3RES,MET3SHORT
- labels MET3RES,MET3SHORT
-
- layer m3fill MET3FILL
- labels MET3FILL
-
-
- templayer via3base VIA3
- and-not CAPM
- grow 60
-
- layer via3 via3base
- grow 40
- shrink 40
- shrink 160
- grow 160
- or via3base
-
- layer m4 MET4,MET4TXT,MET4PIN
- and-not MET4RES,MET4SHORT
- and-not CAPM2
- labels MET4
- labels MET4TXT port
- labels MET4PIN port
-
- layer rm4 MET4
- and MET4RES,MET4SHORT
- labels MET4RES,MET4SHORT
-
- layer m4fill MET4FILL
- labels MET4FILL
-
- layer m5 MET5,MET5TXT,MET5PIN
- and-not MET5RES,MET5SHORT
- labels MET5
- labels MET5TXT port
- labels MET5PIN port
-
- layer rm5 MET5
- and MET5RES,MET5SHORT
- labels MET5RES,MET5SHORT
-
- layer m5fill MET5FILL
- labels MET5FILL
-
- templayer via4base VIA4
- and-not CAPM2
- grow 190
-
- layer via4 via4base
- grow 210
- shrink 210
- shrink 590
- grow 590
- or via4base
-
- layer metrdl RDL,RDLTXT,RDLPIN
- labels RDL
- labels RDLTXT port
- labels RDLPIN port
-
- # Find diffusion not covered in
- # NPLUS or PPLUS and pull it into
- # the next layer up
-
- templayer gentrans DIFF
- and-not PPLUS
- and-not NPLUS
- and POLY
- copyup DIFF,POLY
-
- templayer gendiff DIFF,TAP
- and-not PPLUS
- and-not NPLUS
- and-not POLY
- copyup DIFF
-
- # Handle contacts found by copyup
-
- templayer ndiccopy CONT
- and LI
- and DIODE
- and NPLUS
- and-not THKOX
-
- layer ndic ndiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndiccopy
- labels CONT
-
- templayer mvndiccopy CONT
- and LI
- and DIODE
- and NPLUS
- and THKOX
-
- layer mvndic mvndiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndiccopy
- labels CONT
-
- templayer pdiccopy CONT
- and LI
- and DIODE
- and PPLUS
- and-not THKOX
-
- layer pdic pdiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdiccopy
- labels CONT
-
- templayer mvpdiccopy CONT
- and LI
- and DIODE
- and PPLUS
- and THKOX
-
- layer mvpdic mvpdiccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdiccopy
- labels CONT
-
- templayer ndccopy CONT
- and ndifcheck
-
- layer ndc ndccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or ndccopy
- labels CONT
-
- templayer mvndccopy CONT
- and mvndifcheck
-
- layer mvndc mvndccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvndccopy
- labels CONT
-
- templayer pdccopy CONT
- and pdifcheck
-
- layer pdc pdccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pdccopy
- labels CONT
-
- templayer mvpdccopy CONT
- and mvpdifcheck
-
- layer mvpdc mvpdccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpdccopy
- labels CONT
-
- templayer pccopy CONT
- and polycheck
-
- layer pc pccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or pccopy
- labels CONT
-
- templayer nsccopy CONT
- and nsubcheck
-
- layer nsc nsccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or nsccopy
- labels CONT
-
- templayer mvnsccopy CONT
- and mvnsubcheck
-
- layer mvnsc mvnsccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvnsccopy
- labels CONT
-
- templayer psccopy CONT
- and psubcheck
-
- layer psc psccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or psccopy
- labels CONT
-
- templayer mvpsccopy CONT
- and mvpsubcheck
-
- layer mvpsc mvpsccopy
- grow 85
- shrink 85
- shrink 85
- grow 85
- or mvpsccopy
- labels CONT
-
- # Find contacts not covered in
- # metal and pull them into the
- # next layer up
-
- templayer gencont CONT
- and LI
- and-not DIFF,TAP
- and-not POLY
- and-not DIODE
- and-not nsubcheck
- and-not psubcheck
- and-not mvnsubcheck
- and-not mvpsubcheck
- copyup CONT,LI
-
- templayer barecont CONT
- and-not LI
- and-not nsubcheck
- and-not psubcheck
- and-not mvnsubcheck
- and-not mvpsubcheck
- copyup CONT
-
- layer glass GLASS,PADTXT,PADPIN
- labels GLASS
- labels PADTXT port
- labels PADPIN port
-
- templayer boundary BOUND,STDCELL,PADCELL
- boundary
-
- layer comment LVSTEXT
- labels LVSTEXT text
-
- layer comment TTEXT
- labels TTEXT text
-
- layer fillblock FILLOBSM1,FILLOBSM2,FILLOBSM3,FILLOBSM4
- labels FILLOBSM1,FILLOBSM2,FILLOBSM3,FILLOBSM4
-
-# MOS Varactor
-
- layer var POLY
- and TAP
- and NPLUS
- and NWELL
- and-not THKOX
- and-not HVTP
- # NOTE: Else forms a varactor that is not in the vendor netlist.
- and-not COREID
- labels POLY
-
- layer varhvt POLY
- and TAP
- and NPLUS
- and NWELL
- and-not THKOX
- and HVTP
- labels POLY
-
- layer mvvar POLY
- and TAP
- and NPLUS
- and NWELL
- and THKOX
- labels POLY
-
- calma NWELL 64 20
- calma DIFF 65 20
- calma DNWELL 64 18
- calma PWRES 64 13
- calma TAP 65 44
- # LVTN
- calma LVTN 125 44
- # HVTR
- calma HVTR 18 20
- # HVTP
- calma HVTP 78 44
- # SONOS (TUNM)
- calma SONOS 80 20
- # NPLUS = NSDM
- calma NPLUS 93 44
- # PPLUS = PSDM
- calma PPLUS 94 20
- # HVI
- calma THKOX 75 20
- # NPC
- calma NPC 95 20
- # P+ POLY MASK
- calma RPM 86 20
- calma URPM 79 20
- calma LDNTM 11 44
- calma HVNTM 125 20
- # Poly resistor ID mark
- calma POLYRES 66 13
- # Diffusion resistor ID mark
- calma DIFFRES 65 13
- calma POLY 66 20
- calma POLYMOD 66 83
- # Diode ID mark
- calma DIODE 81 23
- # Bipolar NPN mark
- calma NPNID 82 20
- # Bipolar PNP mark
- calma PNPID 82 44
- # Capacitor ID
- calma CAPID 82 64
- # Core area ID mark
- calma COREID 81 2
- # Standard cell ID mark
- calma STDCELL 81 4
- # Padframe cell ID mark
- calma PADCELL 81 3
- # Seal ring ID mark
- calma SEALID 81 1
- # Low tap density ID mark
- calma LOWTAPDENSITY 81 14
-
- # LICON
- calma CONT 66 44
- calma LI 67 20
- calma MCON 67 44
-
- calma MET1 68 20
- calma VIA1 68 44
- calma MET2 69 20
- calma VIA2 69 44
- calma MET3 70 20
- calma VIA3 70 44
- calma MET4 71 20
- calma VIA4 71 44
- calma MET5 72 20
- calma RDL 74 20
- calma GLASS 76 20
-
- calma SUBPIN 64 59
- calma PADPIN 76 5
- calma DIFFPIN 65 6
- calma TAPPIN 65 5
- calma WELLPIN 64 5
- calma LIPIN 67 5
- calma POLYPIN 66 5
- calma MET1PIN 68 5
- calma MET2PIN 69 5
- calma MET3PIN 70 5
- calma MET4PIN 71 5
- calma MET5PIN 72 5
- calma RDLPIN 74 5
-
- calma LIRES 67 13
- calma MET1RES 68 13
- calma MET2RES 69 13
- calma MET3RES 70 13
- calma MET4RES 71 13
- calma MET5RES 72 13
-
- calma MET1FILL 68 28
- calma MET2FILL 69 28
- calma MET3FILL 70 28
- calma MET4FILL 71 28
- calma MET5FILL 72 28
-
- calma POLYSHORT 66 15
- calma LISHORT 67 15
- calma MET1SHORT 68 15
- calma MET2SHORT 69 15
- calma MET3SHORT 70 15
- calma MET4SHORT 71 15
- calma MET5SHORT 72 15
-
- calma SUBTXT 122 16
- calma PADTXT 76 16
- calma DIFFTXT 65 16
- calma POLYTXT 66 16
- calma WELLTXT 64 16
- calma LITXT 67 16
- calma MET1TXT 68 16
- calma MET2TXT 69 16
- calma MET3TXT 70 16
- calma MET4TXT 71 16
- calma MET5TXT 72 16
- calma RDLPIN 74 16
-
- calma BOUND 235 4
-
- calma LVSTEXT 83 44
-
- calma CAPM 89 44
- calma CAPM2 97 44
-
- calma FILLOBSM1 62 24
- calma FILLOBSM2 105 52
- calma FILLOBSM3 107 24
- calma FILLOBSM4 112 4
-
-style waffleimport
- # This style is for reading back and validating shapes
- # generated by the "wafflefill" cifoutput style.
-
- scalefactor 10 nanometers
- gridlimit 5
-
- options ignore-unknown-layer-labels no-reconnect-labels
-
- layer ndiff FOMMASK
- layer poly POLYMASK
- layer metal1 MET1MASK
- layer metal2 MET2MASK
- layer metal3 MET3MASK
- layer metal4 MET4MASK
- layer metal5 MET5MASK
-
- calma FOMMASK 23 0
- calma POLYMASK 28 0
- calma MET1MASK 36 0
- calma MET2MASK 41 0
- calma MET3MASK 34 0
- calma MET4MASK 51 0
- calma MET5MASK 59 0
-
-style rdlimport
- # This style is for reading shapes generated with the RDL layers
-
- scalefactor 10 nanometers
- gridlimit 5
-
- options ignore-unknown-layer-labels no-reconnect-labels
-
- layer mrdl RDL
- layer mrdlc RDLC
-
- calma RDL 10 0
- calma RDLC 20 0
-
-end
-
-#-----------------------------------------------------
-# Digital flow maze router cost parameters
-#-----------------------------------------------------
-
-mzrouter
-end
-
-#-----------------------------------------------------
-# Vendor DRC rules
-#-----------------------------------------------------
-
-drc
-
- style drc variants (fast),(full),(routing)
- scalefactor 10
- cifstyle drc
-
- variants (fast),(full)
-
-#-----------------------------
-# DNWELL
-#-----------------------------
-
- width dnwell 3000 "Deep N-well width < %d (dnwell.2)"
- spacing dnwell dnwell 6300 touching_ok "Deep N-well spacing < %d (dnwell.3)"
- spacing dnwell allnwell 4500 surround_ok \
- "Deep N-well spacing to N-well < %d (nwell.7)"
-
- variants (full)
- cifmaxwidth nwell_missing 0 bend_illegal \
- "N-well overlap of Deep N-well < 0.4um outside, 1.03um inside (nwell.5a, 7)"
- cifmaxwidth dnwell_missing 0 bend_illegal \
- "SONOS nFET must be in Deep N-well (tunm.6a)"
-
- cifmaxwidth pdiff_crosses_dnwell 0 bend_illegal \
- "P+ diff cannot straddle Deep N-well (dnwell.5)"
- variants (fast),(full)
-
-#-----------------------------
-# NWELL
-#-----------------------------
-
- width allnwell 840 "N-well width < %d (nwell.1)"
- spacing allnwell allnwell 1270 touching_ok "N-well spacing < %d (nwell.2a)"
-
- variants (full)
- cifmaxwidth nwell_missing_tap 0 bend_illegal \
- "All nwells must contain metal-connected N+ taps (nwell.4)"
-
- cifspacing mvnwell lvnwell 2000 touching_illegal \
- "Spacing of HV nwell to LV nwell < 2.0um (nwell.8)"
- cifspacing mvnwell mvnwell 2000 touching_ok \
- "Spacing of HV nwell to HV nwell < 2.0um (nwell.8)"
- variants (fast),(full)
-
-#-----------------------------
-# DIFF
-#-----------------------------
-
- width *ndiff,nfet,scnfet,npd,npass,*nsd,*ndiode,ndiffres,*pdiff,pfet,scpfet,scpfethvt,ppu,*psd,*pdiode,pdiffres \
- 150 "Diffusion width < %d (diff/tap.1)"
- width *mvndiff,mvnfet,mvnnfet,*mvndiode,*nndiode,mvndiffres,*mvpdiff,mvpfet,*mvpdiode,mvpdiffres 290 \
- "MV Diffusion width < %d (diff/tap.14)"
-
- width *mvnsd,*mvpsd 150 "MV Tap width < %d (diff/tap.1)"
- extend *mvpsd *mvndiff 700 "MV Butting tap length < %d (diff/tap.16)"
- extend *mvnsd *mvpdiff 700 "MV Butting tap length < %d (diff/tap.16)"
- extend *psd *ndiff 290 "Butting tap length < %d (diff/tap.4)"
- extend *nsd *pdiff 290 "Butting tap length < %d (diff/tap.4)"
- width mvpdiffres 150 "MV P-Diffusion resistor width < %d (diff/tap.14a)"
- spacing alldifflv,var,varhvt alldifflv,var,varhvt 270 touching_ok \
- "Diffusion spacing < %d (diff/tap.3)"
- spacing alldiffmvnontap,mvvar alldiffmvnontap,mvvar 300 touching_ok \
- "MV Diffusion spacing < %d (diff/tap.15a)"
- spacing alldiffmv *mvnsd,*mvpsd 270 touching_ok \
- "MV Diffusion to MV tap spacing < %d (diff/tap.3)"
- spacing *mvndiff,mvnfet,mvnnfet,*mvndiode,*nndiode,mvndiffres,mvvar *mvpsd 370 \
- touching_ok "MV P-Diffusion to MV N-tap spacing < %d (diff/tap.15b)"
- spacing *mvnsd,*mvpdiff,mvpfet,mvvar,*mvpdiode *mvpsd,*psd 760 touching_illegal \
- "MV Diffusion in N-well to P-tap spacing < %d (diff/tap.20 + diff/tap.17,19)"
- spacing *ndiff,*ndiode,nfet allnwell 340 touching_illegal \
- "N-Diffusion spacing to N-well < %d (diff/tap.9)"
- spacing *mvndiff,*mvndiode,mvnfet,mvnnfet allnwell 340 touching_illegal \
- "N-Diffusion spacing to N-well < %d (diff/tap.9)"
- spacing *psd allnwell 130 touching_illegal \
- "P-tap spacing to N-well < %d (diff/tap.11)"
- spacing *mvpsd allnwell 130 touching_illegal \
- "P-tap spacing to N-well < %d (diff/tap.11)"
- surround *nsd allnwell 180 absence_illegal \
- "N-well overlap of N-tap < %d (diff/tap.10)"
- surround *mvnsd allnwell 330 absence_illegal \
- "N-well overlap of MV N-tap < %d (diff/tap.19)"
- surround *pdiff,*pdiode,pfet,scpfet,ppu allnwell 180 absence_illegal \
- "N-well overlap of P-Diffusion < %d (diff/tap.8)"
- surround *mvpdiff,*mvpdiode,mvpfet allnwell 330 absence_illegal \
- "N-well overlap of P-Diffusion < %d (diff/tap.17)"
- surround mvvar allnwell 560 absence_illegal \
- "N-well overlap of MV varactor < %d (lvtn.10 + lvtn.4b)"
- spacing *mvndiode *mvndiode 1070 touching_ok \
- "MV N-diode spacing < %d (hvntm.2 + 2 * hvntm.3)"
-
-variants (full)
- cifspacing allmvdiffnowell lvnwell 825 touching_illegal \
- "MV diffusion to LV nwell spacing < %d (hvi.5 + nsd/psd.5)"
-variants (fast),(full)
-
- spacing allnfets allpactivenonfet 270 touching_illegal \
- "nFET cannot abut P-diffusion (diff/tap.3)"
- spacing allpfets allnactivenonfet 270 touching_illegal \
- "pFET cannot abut N-diffusion (diff/tap.3)"
-
- # Butting junction rules
- edge4way (*psd)/a ~(*ndiff,*psd)/a 125 ~(*ndiff)/a (*ndiff)/a 125 \
- "N-Diffusion to P-tap spacing < %d across butted junction (psd.5b)"
- edge4way (*ndiff)/a ~(*ndiff,*psd)/a 125 ~(*psd)/a (*psd)/a 125 \
- "N-Diffusion to P-tap spacing < %d across butted junction (psd.5a)"
- edge4way (*nsd)/a ~(*pdiff,*nsd)/a 125 ~(*pdiff)/a (*pdiff)/a 125 \
- "P-Diffusion to N-tap spacing < %d across butted junction (nsd.5b)"
- edge4way (*pdiff)/a ~(*pdiff,*nsd)/a 125 ~(*nsd)/a (*nsd)/a 125 \
- "P-Diffusion to N-tap spacing < %d across butted junction (nsd.5a)"
-
- edge4way (*mvpsd)/a ~(*mvndiff,*mvpsd)/a 125 ~(*mvndiff)/a (*mvndiff)/a 125 \
- "MV N-Diffusion to MV P-tap spacing < %d across butted junction (psd.5b)"
- edge4way (*mvndiff)/a ~(*mvndiff,*mvpsd)/a 125 ~(*mvpsd)/a (*mvpsd)/a 125 \
- "MV N-Diffusion to MV P-tap spacing < %d across butted junction (psd.5a)"
- edge4way (*mvnsd)/a ~(*mvpdiff,*mvnsd)/a 125 ~(*mvpdiff)/a (*mvpdiff)/a 125 \
- "MV P-Diffusion to MV N-tap spacing < %d across butted junction (nsd.5b)"
- edge4way (*mvpdiff)/a ~(*mvpdiff,*mvnsd)/a 125 ~(*mvnsd)/a (*mvnsd)/a 125 \
- "MV P-Diffusion to MV N-tap spacing < %d across butted junction (nsd.5a)"
-
- # Sandwiched butting junction restrictions
- edge4way (*pdiff)/a (*nsd)/a 400 ~(*pdiff)/a 0 0 "NSDM width < %d (diff/tap.5)"
- edge4way (*ndiff)/a (*psd)/a 400 ~(*ndiff)/a 0 0 "PSDM width < %d (diff/tap.5)"
-
- area *nsd,*mvnsd 70110 150 "N-tap minimum area < 0.07011um^2 (nsd.10b)"
- area *psd,*mvpsd 70110 150 "P-tap minimum area < 0.07011um^2 (psd.10b)"
-
- angles allactive 90 "Only 90 degree angles permitted on diff and tap (x.2)"
-
- variants (full)
- cifmaxwidth tap_missing_licon 0 bend_illegal "All taps must be contacted (licon.16)"
-
- # Latchup rules
- cifmaxwidth ptap_missing 0 bend_illegal \
- "N-diff distance to P-tap must be < 15.0um (LU.2)"
- cifmaxwidth dptap_missing 0 bend_illegal \
- "N-diff distance to P-tap in deep nwell.must be < 15.0um (LU.2.1)"
- cifmaxwidth ntap_missing 0 bend_illegal \
- "P-diff distance to N-tap must be < 15.0um (LU.3)"
-
- variants (fast),(full)
-
-#-----------------------------
-# POLY
-#-----------------------------
-
- width allpoly 150 "poly width < %d (poly.1a)"
- spacing allpoly allpoly 210 touching_ok "poly spacing < %d (poly.2)"
-
- spacing allpolynonfet \
- *ndiff,*mvndiff,*ndiode,*nndiode,ndiffres,*ndiodelvt,*pdiff,*mvpdiff,*pdiode,pdiffres,*pdiodelvt,*pdiodehvt \
- 75 corner_ok allfets \
- "poly spacing to Diffusion < %d (poly.4)"
- spacing npres *nsd 480 touching_illegal \
- "poly resistor spacing to N-tap < %d (poly.9)"
- overhang *ndiff,rndiff nfet,scnfet,npd,npass 250 "N-Diffusion overhang of nFET < %d (poly.7)"
- overhang *mvndiff,mvrndiff mvnfet,mvnnfet 250 \
- "N-Diffusion overhang of nFET < %d (poly.7)"
- overhang *pdiff,rpdiff pfet,scpfet,ppu 250 "P-Diffusion overhang of pmos < %d (poly.7)"
- overhang *mvpdiff,mvrpdiff mvpfet 250 "P-Diffusion overhang of pmos < %d (poly.7)"
- overhang *poly allfetsstd,allfetsspecial 130 "poly overhang of transistor < %d (poly.8)"
- overhang *poly allfetscore 110 "poly overhang of SRAM core transistor < %d (poly.8)"
- rect_only allfets "No bends in transistors (poly.11)"
- rect_only xhrpoly,uhrpoly "No bends in poly resistors (poly.11)"
- extend xpc/a xhrpoly,uhrpoly 2160 \
- "poly contact extends poly resistor by < %d (licon.1c + li.5)"
- spacing xhrpoly,uhrpoly,xpc xhrpoly,uhrpoly,xpc 1240 touching_illegal \
- "Distance between precision resistors < %d (rpm.2 + 2 * rpm.3)"
-
- spacing xhrpoly,uhrpoly,xpc allndifflv,allndiffmv 780 touching_illegal \
- "Distance from precision resistor to N+ diffusion < %d (rpm.3 + rpm.6 + nsd.5a)"
- spacing xhrpoly,uhrpoly,xpc *poly 400 touching_illegal \
- "Distance from precision resistor to unrelated poly < %d (rpm.3 + rpm.7)"
- spacing xhrpoly,uhrpoly,xpc allndiffmvnontap 830 touching_illegal \
- "Distance from precision resistor to MV N+ diffusion < %d (rpm.3 + rpm.9)"
-
- angles allpoly 90 "Only 90 degree angles permitted on poly (x.2)"
-
-#--------------------------------------------------------------------
-# HVTP
-#--------------------------------------------------------------------
-
- spacing pfethvt,pdiodehvt,varactorhvt pfet,ppu,scpfet,mvpfet,pfetlvt,pfetmvt \
- 360 touching_illegal \
- "Min. spacing between pFET and HVTP < %d (hvtp.4)"
-
- spacing pfethvt,pdiodehvt,varactorhvt varactor 360 touching_illegal \
- "Min. spacing between varactor and HVTP < %d (hvtp.4 + varac.3)"
-
-#--------------------------------------------------------------------
-# LVTN
-#--------------------------------------------------------------------
-
- spacing pfetlvt,nfetlvt,pdiodelvt,ndiodelvt \
- allfetsnolvt 360 touching_illegal \
- "Min. spacing between FET and LVTN < %d (lvtn.3a)"
-
- spacing pfetlvt,nfetlvt,pdiodelvt,ndiodelvt scpfethvt,pfethvt,pdiodehvt,varactorhvt \
- 740 touching_illegal \
- "Min. spacing between LVTN and HVTP < %d (lvtn.9)"
-
- # Spacing across S/D direction requires edge rule
- edge4way allfetsnolvt allactivenonfet 415 \
- ~(pfetlvt,nfetlvt,pdiodelvt,ndiodelvt)/a allfetsnolvt 415 \
- "Min. spacing between FET and LVTN in S/D direction < %d (lvtn.3b)"
-
-#--------------------------------------------------------------------
-# NPC (Nitride poly Cut)
-#--------------------------------------------------------------------
-
-# Layer NPC is defined automatically around poly contacts (grow 0.1um)
-
-#--------------------------------------------------------------------
-# CONT (LICON, contact between poly/diff and LI)
-#--------------------------------------------------------------------
-
- width ndc/li 170 "N-diffusion contact width < %d (licon.1)"
- width nsc/li 170 "N-tap contact width < %d (licon.1)"
- width pdc/li 170 "P-diffusion contact width < %d (licon.1)"
- width psc/li 170 "P-tap contact width < %d (licon.1)"
- width ndic/li 170 "N-diode contact width < %d (licon.1)"
- width pdic/li 170 "P-diode contact width < %d (licon.1)"
- width pc/li 170 "poly contact width < %d (licon.1)"
-
- width xpc/li 350 "poly resistor contact width < %d (licon.1b + 2 * li.5)"
- area xpc/li 700000 350 "poly resistor contact length < 2.0um (licon.1c)"
- area allli,*obsli 56100 170 "Local interconnect minimum area < %a (li.6)"
-
- width mvndc/li 170 "N-diffusion contact width < %d (licon.1)"
- width mvnsc/li 170 "N-tap contact width < %d (licon.1)"
- width mvpdc/li 170 "P-diffusion contact width < %d (licon.1)"
- width mvpsc/li 170 "P-tap contact width < %d (licon.1)"
- width mvndic/li 170 "N-diode contact width < %d (licon.1)"
- width mvpdic/li 170 "P-diode contact width < %d (licon.1)"
-
- spacing allpdiffcont allndiffcont 170 touching_illegal \
- "Diffusion contact spacing < %d (licon.2)"
- spacing allndiffcont allndiffcont 170 touching_ok \
- "Diffusion contact spacing < %d (licon.2)"
- spacing allpdiffcont allpdiffcont 170 touching_ok \
- "Diffusion contact spacing < %d (licon.2)"
- spacing pc pc 170 touching_ok "Poly1 contact spacing < %d (licon.2)"
-
- spacing pc alldiff 190 touching_illegal \
- "poly contact spacing to diffusion < %d (licon.14)"
- spacing pc allpdifflv,allpdiffmv 235 touching_illegal \
- "poly contact spacing to P-diffusion < %d (licon.9 + psdm.5a)"
-
- spacing ndc,pdc nfet,nfetlvt,pfet,pfethvt,pfetlvt,pfetmvt 55 touching_illegal \
- "Diffusion contact to gate < %d (licon.11)"
- spacing ndc,pdc scnfet,scpfet,scpfethvt 50 touching_illegal \
- "Diffusion contact to standard cell gate < %d (licon.11)"
- spacing ndc,pdc npd,npass,ppu 40 touching_illegal \
- "Diffusion contact to SRAM gate < %d (licon.11)"
- spacing mvndc,mvpdc mvnfet,mvnnfet,mvpfet 55 touching_illegal \
- "Diffusion contact to gate < %d (licon.11)"
- spacing nsc varactor,varhvt 250 touching_illegal \
- "Diffusion contact to varactor gate < %d (licon.10)"
- spacing mvnsc mvvar 250 touching_illegal \
- "Diffusion contact to varactor gate < %d (licon.10)"
-
- surround ndc/a *ndiff,nfet,scnfet,npd,npass,nfetlvt,rnd 40 absence_illegal \
- "N-diffusion overlap of N-diffusion contact < %d (licon.5a)"
- surround pdc/a *pdiff,pfet,scpfet,scpfethvt,ppu,pfethvt,pfetmvt,pfetlvt,rpd \
- 40 absence_illegal \
- "P-diffusion overlap of P-diffusion contact < %d (licon.5a)"
- surround ndic/a *ndi 40 absence_illegal \
- "N-diode overlap of N-diode contact < %d (licon.5a)"
- surround pdic/a *pdi 40 absence_illegal \
- "P-diode overlap of N-diode contact < %d (licon.5a)"
-
- spacing psc/a allnactivenontap 60 touching_illegal \
- "Min. space between P-tap contact and butting N diffusion < %d (licon.5b)"
- spacing nsc/a allpactivenontap 60 touching_illegal \
- "Min. space between N-tap contact and butting P diffusion < %d (licon.5b)"
-
- surround ndc/a *ndiff,nfet,scnfet,npd,npass,nfetlvt,rnd 60 directional \
- "N-diffusion overlap of N-diffusion contact < %d in one direction (licon.5c)"
- surround pdc/a *pdiff,pfet,scpfet,scpfethvt,ppu,pfethvt,pfetmvt,pfetlvt,rpd \
- 60 directional \
- "P-diffusion overlap of P-diffusion contact < %d in one direction (licon.5c)"
- surround ndic/a *ndi 60 directional \
- "N-diode overlap of N-diode contact < %d in one direction (licon.5c)"
- surround pdic/a *pdi 60 directional \
- "P-diode overlap of N-diode contact < %d in one direction (licon.5c)"
-
- surround nsc/a *nsd 120 directional \
- "N-tap overlap of N-tap contact < %d in one direction (licon.7)"
- surround psc/a *psd 120 directional \
- "P-tap overlap of P-tap contact < %d in one direction (licon.7)"
-
- surround mvndc/a *mvndiff,mvnfet,mvrnd 40 absence_illegal \
- "N-diffusion overlap of N-diffusion contact < %d (licon.5a)"
- surround mvpdc/a *mvpdiff,mvpfet,mvrpd 40 absence_illegal \
- "P-diffusion overlap of P-diffusion contact < %d (licon.5a)"
- surround mvndic/a *mvndi 40 absence_illegal \
- "N-diode overlap of N-diode contact < %d (licon.5a)"
- surround mvpdic/a *mvpdi 40 absence_illegal \
- "P-diode overlap of N-diode contact < %d (licon.5a)"
-
- spacing mvpsc/a allndiffmvnontap 60 touching_illegal \
- "Min. space between P-tap contact and butting N diffusion < %d (licon.5b)"
- spacing mvnsc/a allpdiffmvnontap 60 touching_illegal \
- "Min. space between N-tap contact and butting P diffusion < %d (licon.5b)"
-
- surround mvndc/a *mvndiff,mvnfet,mvrnd 60 directional \
- "N-diffusion overlap of N-diffusion contact < %d in one direction (licon.5c)"
- surround mvpdc/a *mvpdiff,mvpfet,mvrpd 60 directional \
- "P-diffusion overlap of P-diffusion contact < %d in one direction (licon.5c)"
- surround mvndic/a *mvndi 60 directional \
- "N-diode overlap of N-diode contact < %d in one direction (licon.5c)"
- surround mvpdic/a *mvpdi 60 directional \
- "P-diode overlap of N-diode contact < %d in one direction (licon.5c)"
-
- surround mvnsc/a *mvnsd 120 directional \
- "N-tap overlap of N-tap contact < %d in one direction (licon.7)"
- surround mvpsc/a *mvpsd 120 directional \
- "P-tap overlap of P-tap contact < %d in one direction (licon.7)"
-
- surround pc/a *poly,mrp1,xhrpoly,uhrpoly 50 absence_illegal \
- "poly overlap of poly contact < %d (licon.8)"
- surround pc/a *poly,mrp1,xhrpoly,uhrpoly 80 directional \
- "poly overlap of poly contact < %d in one direction (licon.8a)"
-
- exact_overlap (allcont)/a
-
-#-------------------------------------------------------------
-# LI - Local interconnect layer
-#-------------------------------------------------------------
-
-variants *
-
- width *li 170 "Local interconnect width < %d (li.1)"
- width rli 290 "Local interconnect width < %d (li.7)"
-
- spacing *locali,rli *locali,rli,*obsli 170 touching_ok \
- "Local interconnect spacing < %d (li.3)"
-
- # Local interconnect in core (SRAM) cells has more relaxed rules. There are
- # no special layers for the contacts in core cells, so they must be included
- # in the rule.
- width coreli,pc,ndc,nsc,pdc,psc,allli,*obsli 140 \
- "Core local interconnect width < %d (li.c1)"
-
- spacing coreli,pc,ndc,nsc,pdc,psc,lic allli,*obsli 140 touching_ok \
- "Core local interconnect spacing < %d (li.c2)"
-
- surround pc/li *li,coreli 80 directional \
- "Local interconnect overlap of poly contact < %d in one direction (li.5)"
-
- surround ndc/li,nsc/li,pdc/li,psc/li,ndic/li,pdic/li,mvndc/li,mvnsc/li,mvpdc/li,mvpsc/li,mvndic/li,mvpdic/li \
- *li,rli,coreli 80 directional \
- "Local interconnect overlap of diffusion contact < %d in one direction (li.5)"
-
- area allli,*obsli,coreli 56100 170 "Local interconnect minimum area < %a (li.6)"
-
- angles *locali,rli 90 "Only 90 degree angles permitted on local interconnect (x.2)"
- angles coreli 45 \
- "Only 45 degree angles permitted on local interconnect in SRAM cell (x.2)"
-
-#-------------------------------------------------------------
-# MCON - Contact between local interconnect and metal1
-#-------------------------------------------------------------
-
- width lic/m1 170 "mcon.width < %d (mcon.1)"
- spacing lic/m1 lic/m1,obslic/m1 190 touching_ok "mcon.spacing < %d (mcon.2)"
-
- exact_overlap lic/li
-
-#-------------------------------------------------------------
-# METAL1 -
-#-------------------------------------------------------------
-
- width *m1,rm1 140 "Metal1 width < %d (met1.1)"
- spacing allm1 allm1,*obsm1 140 touching_ok "Metal1 spacing < %d (met1.2)"
- area allm1,*obsm1 83000 140 "Metal1 minimum area < %a (met1.6)"
-
- surround lic/m1 *met1 30 absence_illegal \
- "Metal1 overlap of local interconnect contact < %d (met1.4)"
- surround lic/m1 *met1 60 directional \
- "Metal1 overlap of local interconnect contact < %d in one direction (met1.5)"
-
- angles allm1 45 "Only 45 and 90 degree angles permitted on metal1 (x.3a)"
-
-variants (fast),(full)
- widespacing allm1 3000 allm1,*obsm1 280 touching_ok \
- "Metal1 > 3um spacing to unrelated m1 < %d (met1.3b)"
- widespacing *obsm1 3000 allm1 280 touching_ok \
- "Metal1 > 3um spacing to unrelated m1 < %d (met1.3b)"
-
-variants (full)
- cifmaxwidth m1_hole_empty 0 bend_illegal \
- "Min area of metal1 holes > 0.14um^2 (met1.7)"
-
- cifspacing m1_large_halo m1_large_halo 280 touching_ok \
- "Spacing of metal1 features attached to and within 0.28um of large metal1 < %d (met1.3a)"
-variants *
-
-#--------------------------------------------------
-# VIA1
-#--------------------------------------------------
-
- width v1/m1 260 "Via1 width < %d (via.1a + 2 * via.4a)"
- spacing v1 v1 60 touching_ok "Via1 spacing < %d (via.2 - 2 * via.4a)"
- surround v1/m1 *m1 30 directional \
- "Metal1 overlap of Via1 < %d in one direction (via.5a - via.4a)"
- surround v1/m2 *m2 30 directional \
- "Metal2 overlap of Via1 < %d in one direction (met2.5 - met2.4)"
-
- exact_overlap v1/m1
-
-#--------------------------------------------------
-# METAL2 -
-#--------------------------------------------------
-
- width allm2 140 "Metal2 width < %d (met2.1)"
- spacing allm2 allm2,obsm2 140 touching_ok "Metal2 spacing < %d (met2.2)"
- area allm2,obsm2 67600 140 "Metal2 minimum area < %a (met2.6)"
-
- angles allm2 45 "Only 45 and 90 degree angles permitted on metal2 (x.3a)"
-
-variants (fast),(full)
- widespacing allm2 3000 allm2,obsm2 280 touching_ok \
- "Metal2 > 3um spacing to unrelated m2 < %d (met2.3b)"
- widespacing obsm2 3000 allm2 280 touching_ok \
- "Metal2 > 3um spacing to unrelated m2 < %d (met2.3b)"
-
-variants (full)
- cifmaxwidth m2_hole_empty 0 bend_illegal \
- "Min area of metal2 holes > 0.14um^2 (met2.7)"
-
- cifspacing m2_large_halo m2_large_halo 280 touching_ok \
- "Spacing of metal2 features attached to and within 0.28um of large metal2 < %d (met2.3a)"
-variants *
-
-#--------------------------------------------------
-# VIA2
-#--------------------------------------------------
-
- width v2/m2 280 "via2.width < %d (via2.1a + 2 * via2.4)"
-
- spacing v2 v2 120 touching_ok "via2.spacing < 0.24um (via2.2 - 2 * via2.4)"
-
- surround v2/m2 *m2 45 directional \
- "Metal2 overlap of via2.< %d in one direction (via2.4a - via2.4)"
- surround v2/m3 *m3 25 absence_illegal "Metal3 overlap of via2.< %d (met3.4)"
-
- exact_overlap v2/m2
-
-#--------------------------------------------------
-# METAL3 -
-#--------------------------------------------------
-
- width allm3 300 "Metal3 width < %d (met3.1)"
- spacing allm3 allm3,obsm3 300 touching_ok "Metal3 spacing < %d (met3.2)"
- area allm3,obsm3 240000 300 "Metal3 minimum area < %a (met3.6)"
-
- angles allm3 45 "Only 45 and 90 degree angles permitted on metal3 (x.3a)"
-
-variants (fast),(full)
- widespacing allm3 3000 allm3,obsm3 400 touching_ok \
- "Metal3 > 3um spacing to unrelated m3 < %d (met3.3d)"
- widespacing obsm3 3000 allm3 400 touching_ok \
- "Metal3 > 3um spacing to unrelated m3 < %d (met3.3d)"
-variants (full)
- cifspacing m3_large_halo m3_large_halo 400 touching_ok \
- "Spacing of metal3 features attached to and within 0.40um of large metal3 < %d (met3.3c)"
-variants *
-
-
-#--------------------------------------------------
-# VIA3 - Requires METAL5 Module
-#--------------------------------------------------
-
- width v3/m3 320 "via3.width < %d (via3.1 + 2 * via3.4)"
- spacing v3 v3 80 touching_ok "via3.spacing < %d (via3.2 - 2 * via3.4)"
- surround v3/m3 *m3 30 directional \
- "Metal3 overlap of via3.in one direction < %d (via3.5 - via3.4)"
- surround v3/m4 *m4 5 absence_illegal \
- "Metal4 overlap of via3.< %d (met4.3 - via3.4)"
-
- exact_overlap v3/m3
-
-#-----------------------------
-# METAL4 - METAL4 Module
-#-----------------------------
-
-variants *
-
- width allm4 300 "Metal4 width < %d (met4.1)"
- spacing allm4 allm4,obsm4 300 touching_ok "Metal4 spacing < %d (met4.2)"
- area allm4,obsm4 240000 300 "Metal4 minimum area < %a (met4.4a)"
-
- angles allm4 45 "Only 45 and 90 degree angles permitted on metal4 (x.3a)"
-
-variants (fast),(full)
- widespacing allm4 3000 allm4,obsm4 400 touching_ok \
- "Metal4 > 3um spacing to unrelated m4 < %d (met4.5b)"
- widespacing obsm4 3000 allm4 400 touching_ok \
- "Metal4 > 3um spacing to unrelated m4 < %d (met4.5b)"
-variants (full)
- cifspacing m4_large_halo m4_large_halo 400 touching_ok \
- "Spacing of metal4 features attached to and within 0.40um of large metal4 < %d (met4.5a)"
-variants *
-
-#--------------------------------------------------
-# VIA4 - Requires METAL5 Module
-#--------------------------------------------------
-
- width v4/m4 1180 "via4.width < %d (via4.1 + 2 * via4.4)"
- spacing v4 v4 420 touching_ok "via4.spacing < %d (via4.2 - 2 * via4.4)"
- surround v4/m5 *m5 120 absence_illegal \
- "Metal5 overlap of via4.< %d (met5.3 - via4.4)"
-
- exact_overlap v4/m4
-
-#-----------------------------
-# METAL5 - METAL5 Module
-#-----------------------------
-
- width allm5 1600 "Metal5 width < %d (met5.1)"
- spacing allm5 allm5,obsm5 1600 touching_ok "Metal5 spacing < %d (met5.2)"
- area allm5,obsm5 4000000 1600 "Metal5 minimum area < %a (met5.4)"
-
- angles allm5 45 "Only 45 and 90 degree angles permitted on metal5 (x.3a)"
-
-
-
-variants (full)
-
- width metrdl 10000 "RDL width < %d (rdl.1)"
- spacing metrdl metrdl 10000 touching_ok "RDL spacing < %d (rdl.2)"
- surround glass metrdl 10750 absence_ok "RDL must surround glass cut by %d (rdl.3)"
- spacing metrdl padl 19660 surround_ok "RDL spacing to unrelated pad < %d (rdl.6)"
-
-variants (fast),(full)
-
-
-#--------------------------------------------------
-# NMOS, PMOS
-#--------------------------------------------------
-
- edge4way *poly allfetsstd 420 allfets 0 0 \
- "Transistor width < %d (diff/tap.2)"
- edge4way *poly allfetsspecial 360 allfets 0 0 \
- "Transistor in standard cell width < %d (diff/tap.2)"
- edge4way *poly npass,npd,nsonos 210 allfets 0 0 \
- "N-Transistor in SRAM core width < %d (diff/tap.2)"
- edge4way *poly ppu 140 allfets 0 0 \
- "P-Transistor in SRAM core width < %d (diff/tap.2)"
-
- # Except: Note that standard cells allow transistor width minimum 0.36um
- width pfetlvt 350 "LVT PMOS gate length < %d (poly.1b)"
-
- spacing allpolynonfet *nsd 55 corner_ok varactor \
- "poly spacing to diffusion tap < %d (poly.5)"
- spacing allpolynonfet *mvnsd 55 corner_ok mvvaractor \
- "poly spacing to diffusion tap < %d (poly.5)"
-
- edge4way *psd *ndiff 300 ~(nfet,npass,npd,scnfet,nfetlvt,nsonos)/a *psd 300 \
- "Butting P-tap spacing to NMOS gate < %d (poly.6)"
- edge4way *nsd *pdiff 300 ~(pfet,ppu,scpfet,scpfethvt,pfetlvt,pfetmvt)/a *nsd 300 \
- "Butting N-tap spacing to PMOS gate < %d (poly.6)"
- edge4way *mvpsd *mvndiff 300 ~(mvnfet,mvnnfet)/a *mvpsd 300 \
- "Butting MV P-tap spacing to MV NMOS gate < %d (poly.6)"
- edge4way *mvnsd *mvpdiff 300 ~mvpfet/a *mvnsd 300 \
- "Butting MV N-tap spacing to MV PMOS gate < %d (poly.6)"
-
- # No LV FETs in HV diff
- spacing pfet,scpfet,scpfethvt,ppu,pfetlvt,pfetmvt,pfethvt,*pdiff *mvpdiff 360 touching_illegal \
- "LV P-diffusion to MV P-diffusion < %d (diff/tap.23 + diff/tap.22)"
-
- spacing nfet,scnfet,npd,npass,nfetlvt,varactor,varhvt,*ndiff *mvndiff 360 touching_illegal \
- "LV N-diffusion to MV N-diffusion < %d (diff/tap.23 + diff/tap.22)"
-
- # No HV FETs in LV diff
- spacing mvpfet,*mvpdiff *pdiff 360 touching_illegal \
- "MV P-diffusion to LV P-diffusion < %d (diff/tap.23 + diff/tap.22)"
-
- spacing mvnfet,mvvaractor,*mvndiff *ndiff 360 touching_illegal \
- "MV N-diffusion to LV N-diffusion < %d (diff/tap.23 + diff/tap.22)"
-
- # Minimum length of MV FETs. Note that this is larger than the minimum
- # width (0.29um), so an edge rule is required
-
- edge4way mvndiff mvnfet 500 mvnfet 0 0 \
- "MV NMOS minimum length < %d (poly.13)"
-
- edge4way mvnsd mvvaractor 500 mvvaractor 0 0 \
- "MV Varactor minimum length < %d (poly.13)"
-
- edge4way mvpdiff mvpfet 500 mvpfet 0 0 \
- "MV PMOS minimum length < %d (poly.13)"
-
-#--------------------------------------------------
-# mrp1 (N+ poly resistor)
-#--------------------------------------------------
-
- width mrp1 330 "mrp1 resistor width < %d (poly.3)"
-
-#--------------------------------------------------
-# xhrpoly (P+ poly resistor)
-# uhrpoly (P+ poly resistor, 2kOhm/sq)
-#--------------------------------------------------
-
- # NOTE: u/xhrpoly resistor requires discrete widths 0.35, 0.69, ... up to 1.27.
- width xhrpoly 350 "xhrpoly resistor width < %d (P+ poly.1a)"
- width uhrpoly 350 "uhrpoly resistor width < %d (P+ poly.1a)"
-
- spacing xhrpoly,uhrpoly,xpc alldiff 480 touching_illegal \
- "xhrpoly/uhrpoly resistor spacing to diffusion < %d (poly.9)"
-
- spacing mrp1,xhrpoly,uhrpoly,xpc allfets 480 touching_illegal \
- "Poly resistor spacing to poly < %d (poly.9)"
-
- spacing xhrpoly,uhrpoly,xpc *poly 480 touching_illegal \
- "Poly resistor spacing to poly < %d (poly.9)"
-
- spacing mrp1 *poly 480 touching_ok \
- "Poly resistor spacing to poly < %d (poly.9)"
-
- spacing mrp1,xhrpoly,uhrpoly,xpc alldiff 480 touching_illegal \
- "Poly resistor spacing to diffusion < %d (poly.9)"
-
-#------------------------------------
-# nsonos
-#------------------------------------
-
-variants (full)
- cifmaxwidth bbox_missing 0 bend_illegal \
- "SONOS transistor must be in cell with abutment box (tunm.8)"
-variants (fast),(full)
-
-#------------------------------------
-# MOS Varactor device rules
-#------------------------------------
-
- overhang *nsd var,varhvt 250 \
- "N-Tap overhang of Varactor < %d (var.4)"
-
- overhang *mvnsd mvvar 250 \
- "N-Tap overhang of Varactor < %d (var.4)"
-
- width var,varhvt,mvvar 180 "Varactor length < %d (var.1)"
- extend var,varhvt,mvvar *poly 1000 "Varactor width < %d (var.2)"
-
-variants (full)
- cifmaxwidth var_poly_no_nwell 0 bend_illegal \
- "N-well overlap of varactor poly < 0.15um (varac.5)"
-
- cifmaxwidth pdiff_in_varactor_well 0 bend_illegal \
- "Varactor N-well must not contain P+ diffusion (varac.7)"
-variants (fast),(full)
-
-#-----------------------------------------------------------
-# MiM CAP (CAPM) -
-#-----------------------------------------------------------
-
- width *mimcap 1000 "MiM cap width < %d (capm.1)"
- spacing *mimcap *mimcap 840 touching_ok "MiM cap spacing < %d (capm.2a)"
- spacing *mimcap via3/m3 80 touching_illegal \
- "MiM cap spacing to via3 < %d (capm.5 - via3.4)"
- surround *mimcc *mimcap 80 absence_illegal \
- "MiM cap must surround MiM cap contact by %d (capm.4 - via3.4)"
- rect_only *mimcap "MiM cap must be rectangular (capm.7)
-
- surround *mimcap *metal3/m3 140 absence_illegal \
- "Metal3 must surround MiM cap by %d (capm.3)"
- spacing via2 *mimcap 100 touching_illegal \
- "MiM cap spacing to via2 < %d (capm.8 - via2.4)"
- spacing *mimcap *metal3/m3 500 surround_ok \
- "MiM cap spacing to unrelated metal3 < %d (capm.11)"
-
-variants (full)
- cifspacing mim_bottom mim_bottom 1200 touching_ok \
- "MiM cap bottom plate spacing < %d (capm.2b)"
-variants (fast),(full)
-
- # MiM cap contact rules (VIA3)
-
- width mimcc/c1 320 "MiM cap contact width < %d (via3.1 + 2 * via3.4)"
- spacing mimcc mimcc 80 touching_ok "MiM cap contact spacing < %d (via3.2 - 2 * via3.4)"
- surround mimcc/m4 *m4 5 directional \
- "Metal4 overlap of MiM cap contact in one direction < %d (met4.3 - via3.4)"
- exact_overlap mimcc/c1
-
- width *mimcap2 1000 "MiM2 cap width < %d (cap2m.1)"
- spacing *mimcap2 *mimcap2 840 touching_ok "MiM2 cap spacing < %d (cap2m.2a)"
- spacing *mimcap2 via4/m4 10 touching_illegal \
- "MiM2 cap spacing to via4 < %d (cap2m.5 - via4.4)"
- surround *mim2cc *mimcap2 10 absence_illegal \
- "MiM2 cap must surround MiM cap 2 contact by %d (cap2m.4 - via4.4)"
- rect_only *mimcap2 "MiM2 cap must be rectangular (cap2m.7)
-
- surround *mimcap2 *metal4/m4 140 absence_illegal \
- "Metal4 must surround MiM2 cap by %d (cap2m.3)"
- spacing via3,mimcc *mimcap2 80 touching_illegal \
- "MiM2 cap spacing to via3 < %d (cap2m.8 - via3.4)"
- spacing *mimcap2 *metal4/m4 500 surround_ok \
- "MiM2 cap spacing to unrelated metal4 < %d (cap2m.11)"
-
-variants (full)
- cifspacing mim2_bottom mim2_bottom 1200 touching_ok \
- "MiM2 cap bottom plate spacing < %d (cap2m.2b)"
-variants (fast),(full)
-
- # MiM cap contact rules (VIA4)
-
- width mim2cc/c2 1180 "MiM2 cap contact width < %d (via4.1 + 2 * via4.4)"
- spacing mim2cc mim2cc 420 touching_ok \
- "MiM2 cap contact spacing < %d (via4.2 - 2 * via4.4)"
- surround mim2cc/m5 *m5 120 absence_illegal \
- "Metal5 overlap of MiM2 cap contact < %d (met5.3 - via4.4)"
- exact_overlap mim2cc/c2
-
-
-#----------------------------
-# HVNTM
-#----------------------------
-variants (full)
- cifspacing hvntm_generate hvntm_generate 700 touching_ok \
- "HVNTM spacing < %d (hvntm.2)"
-variants (fast),(full)
-
-#----------------------------
-# End DRC style
-#----------------------------
-
-end
-
-#----------------------------
-# LEF format definitions
-#----------------------------
-
-lef
-
- masterslice pwell pwell PWELL substrate
- masterslice nwell nwell NWELL
-
- routing li li1 LI1 LI li
-
- routing m1 met1 MET1 m1
- routing m2 met2 MET2 m2
- routing m3 met3 MET3 m3
- routing m4 met4 MET4 m4
- routing m5 met5 MET5 m5
- routing mrdl met6 MET6 m6 MRDL METRDL
-
- cut lic mcon MCON Mcon
- cut m2c via via1 VIA VIA1 cont2 via12
- cut m3c via2 VIA2 cont3 via23
- cut via3 via3 VIA3 cont4 via34
- cut via4 via4 VIA4 cont5 via45
-
- obs obsli li1
- obs obsm1 met1
- obs obsm2 met2
- obs obsm3 met3
-
- obs obsm4 met4
- obs obsm5 met5
- obs obsmrdl met6
-
- # NOTE: obslic only used with li1, not obsli.
- obs obslic mcon
-
- # Vias on obstruction layers should be ignored, so cast to obstruction metal.
- obs obsm1 via
- obs obsm2 via2
- obs obsm3 via3
- obs obsm4 via4
-
-end
-
-#-----------------------------------------------------
-# Device and Parasitic extraction
-#-----------------------------------------------------
-
-
-extract
- style ngspice variants (),(orig),(si)
- cscale 1
- # NOTE: SkyWater SPICE libraries use .option scale 1E6 so all
- # dimensions must be in units of microns in the extract file.
- # Use extract style "ngspice(si)" to override this and produce
- # a file with SI units for length/area.
-
- variants (),(orig)
- lambda 1E6
- variants (si)
- lambda 1.0
- variants *
-
- units microns
- step 7
- sidehalo 2
-
- # NOTE: MiM cap layers have been purposely put out of order,
- # may want to reconsider.
-
- planeorder dwell 0
- planeorder well 1
- planeorder active 2
- planeorder locali 3
- planeorder metal1 4
- planeorder metal2 5
- planeorder metal3 6
- planeorder metal4 7
- planeorder metal5 8
- planeorder metali 9
- planeorder block 10
- planeorder comment 11
- planeorder cap1 12
- planeorder cap2 13
-
- height dnwell -0.1 0.1
- height nwell,pwell 0.0 0.2062
- height alldiff 0.2062 0.12
- height allpoly 0.3262 0.18
- height alldiffcont 0.3262 0.61
- height pc 0.5062 0.43
- height allli 0.9361 0.10
- height lic 1.0361 0.34
- height allm1 1.3761 0.36
- height v1 1.7361 0.27
- height allm2 2.0061 0.36
- height v2 2.3661 0.42
- height allm3 2.7861 0.845
- height v3 3.6311 0.39
- height allm4 4.0211 0.845
- height v4 4.8661 0.505
- height allm5 5.3711 1.26
- height mimcap 2.4661 0.2
- height mimcap2 3.7311 0.2
- height mimcc 2.6661 0.12
- height mim2cc 3.9311 0.09
- height mrdlc 6.6311 5.2523
- height mrdl 11.8834 4.0
-
- # Antenna check parameters
- # Note that checks w/diode diffusion are not modeled
- model partial
- antenna poly sidewall 50 none
- antenna allcont surface 3 none
- antenna li sidewall 75 0 450
- antenna lic surface 3 0 18
- antenna m1,m2,m3 sidewall 400 2600 400
- antenna v1 surface 3 0 18
- antenna v2 surface 6 0 36
- antenna m4,m5 sidewall 400 2600 400
- antenna v3,v4 surface 6 0 36
-
- tiedown alldiffnonfet
-
- substrate *ppdiff,*mvppdiff,space/w,pwell well $SUB -dnwell
-
-# Layer resistance: Use document xp018-PDS-v4_2_1.pdf
-
-# Resistances are in milliohms per square
-# Optional 3rd argument is the corner adjustment fraction
-# Device values come from trtc.cor (typical corner)
- resist (dnwell)/dwell 2200000
- resist (pwell)/well 3050000
- resist (nwell)/well 1700000
- resist (rpw)/well 3050000 0.5
- resist (*ndiff,nsd)/active 120000
- resist (*pdiff,*psd)/active 197000
- resist (*mvndiff,mvnsd)/active 114000
- resist (*mvpdiff,*mvpsd)/active 191000
-
- resist ndiffres/active 120000 0.5
- resist pdiffres/active 197000 0.5
- resist mvndiffres/active 114000 0.5
- resist mvpdiffres/active 191000 0.5
- resist mrp1/active 48200 0.5
- resist xhrpoly/active 319800 0.5
- resist uhrpoly/active 2000000 0.5
-
- resist (allpolynonres)/active 48200
- resist rmp/active 48200
-
- resist (allli)/locali 12200
- resist (allm1)/metal1 125
- resist (allm2)/metal2 125
- resist (allm3)/metal3 47
- resist (allm4)/metal4 47
- resist (allm5)/metal5 29
- resist mrdl/metali 5
-
- contact ndc,nsc 15000
- contact pdc,psc 15000
- contact mvndc,mvnsc 15000
- contact mvpdc,mvpsc 15000
- contact pc 15000
- contact lic 152000
- contact m2c 4500
- contact m3c 3410
- contact mimcc 4500
- contact mim2cc 3410
- contact via3 3410
- contact via4 380
- contact mrdlc 6
-
-#-------------------------------------------------------------------------
-# Parasitic capacitance values: Use document (...)
-#-------------------------------------------------------------------------
-# This uses the new "default" definitions that determine the intervening
-# planes from the planeorder stack, take care of the reflexive sideoverlap
-# definitions, and generally clean up the section and make it more readable.
-#
-# Also uses "units microns" statement. All values are taken from the
-# document PEX/xRC/cap_models. Fringe capacitance values are approximated.
-# Units are aF/um^2 for area caps and aF/um for perimeter and sidewall caps.
-#-------------------------------------------------------------------------
-# Remember that device capacitances to substrate are taken care of by the
-# models. Thus, active and poly definitions ignore all "fet" types.
-# fet types are excluded when computing parasitic capacitance to
-# active from layers above them because poly is a shield; fet types are
-# included for parasitics from layers above to poly. Resistor types
-# should be removed from all parasitic capacitance calculations, or else
-# they just create floating caps. Technically, the capacitance probably
-# should be split between the two terminals. Unsure of the correct model.
-#-------------------------------------------------------------------------
-
-#n-well
-# NOTE: This value not found in PEX files
-defaultareacap nwell well 120
-
-#n-active
-# Rely on device models to capture *ndiff area cap
-# Do not extract parasitics from resistors
-# defaultareacap allnactivenonfet active 790
-# defaultperimeter allnactivenonfet active 280
-
-#p-active
-# Rely on device models to capture *pdiff area cap
-# Do not extract parasitics from resistors
-# defaultareacap allpactivenonfet active 810
-# defaultperimeter allpactivenonfet active 300
-
-#poly
-# Do not extract parasitics from resistors
-# defaultsidewall allpolynonfet active 22
-# defaultareacap allpolynonfet active 106
-# defaultperimeter allpolynonfet active 57
-
- defaultsidewall *poly active 23
- defaultareacap *poly active nwell,obswell,pwell well 106
- defaultperimeter *poly active nwell,obswell,pwell well 55
-
-#locali
- defaultsidewall allli locali 33
- defaultareacap allli locali nwell,obswell,pwell well 37
- defaultperimeter allli locali nwell,obswell,pwell well 55
- defaultoverlap allli locali nwell well 37
-
-#locali->diff
- defaultoverlap allli locali allactivenonfet active 37
- defaultsideoverlap allli locali allactivenonfet active 55
-
-#locali->poly
- defaultoverlap allli locali allpolynonres active 94
- defaultsideoverlap allli locali allpolynonres active 52
- defaultsideoverlap *poly active allli locali 25
-
-#metal1
- defaultsidewall allm1 metal1 45
- defaultareacap allm1 metal1 nwell,obswell,pwell well 26
- defaultperimeter allm1 metal1 nwell,obswell,pwell well 41
- defaultoverlap allm1 metal1 nwell well 26
-
-#metal1->diff
- defaultoverlap allm1 metal1 allactivenonfet active 26
- defaultsideoverlap allm1 metal1 allactivenonfet active 41
-
-#metal1->poly
- defaultoverlap allm1 metal1 allpolynonres active 45
- defaultsideoverlap allm1 metal1 allpolynonres active 47
- defaultsideoverlap *poly active allm1 metal1 17
-
-#metal1->locali
- defaultoverlap allm1 metal1 allli locali 114
- defaultsideoverlap allm1 metal1 allli locali 59
- defaultsideoverlap allli locali allm1 metal1 35
-
-#metal2
- defaultsidewall allm2 metal2 50
- defaultareacap allm2 metal2 nwell,obswell,pwell well 17
- defaultperimeter allm2 metal2 nwell,obswell,pwell well 41
- defaultoverlap allm2 metal2 nwell well 38
-
-#metal2->diff
- defaultoverlap allm2 metal2 allactivenonfet active 17
- defaultsideoverlap allm2 metal2 allactivenonfet active 41
-
-#metal2->poly
- defaultoverlap allm2 metal2 allpolynonres active 24
- defaultsideoverlap allm2 metal2 allpolynonres active 41
- defaultsideoverlap *poly active allm2 metal2 11
-
-#metal2->locali
- defaultoverlap allm2 metal2 allli locali 38
- defaultsideoverlap allm2 metal2 allli locali 46
- defaultsideoverlap allli locali allm2 metal2 22
-
-#metal2->metal1
- defaultoverlap allm2 metal2 allm1 metal1 134
- defaultsideoverlap allm2 metal2 allm1 metal1 67
- defaultsideoverlap allm1 metal1 allm2 metal2 48
-
-#metal3
- defaultsidewall allm3 metal3 63
- defaultoverlap allm3 metal3 nwell well 12
- defaultareacap allm3 metal3 nwell,obswell,pwell well 12
- defaultperimeter allm3 metal3 nwell,obswell,pwell well 41
-
-#metal3->diff
- defaultoverlap allm3 metal3 allactive active 12
- defaultsideoverlap allm3 metal3 allactive active 41
-
-#metal3->poly
- defaultoverlap allm3 metal3 allpolynonres active 16
- defaultsideoverlap allm3 metal3 allpolynonres active 44
- defaultsideoverlap *poly active allm3 metal3 9
-
-#metal3->locali
- defaultoverlap allm3 metal3 allli locali 21
- defaultsideoverlap allm3 metal3 allli locali 47
- defaultsideoverlap allli locali allm3 metal3 15
-
-#metal3->metal1
- defaultoverlap allm3 metal3 allm1 metal1 35
- defaultsideoverlap allm3 metal3 allm1 metal1 55
- defaultsideoverlap allm1 metal1 allm3 metal3 27
-
-#metal3->metal2
- defaultoverlap allm3 metal3 allm2 metal2 86
- defaultsideoverlap allm3 metal3 allm2 metal2 70
- defaultsideoverlap allm2 metal2 allm3 metal3 44
-
-#metal4
- defaultsidewall allm4 metal4 67
-# defaultareacap alltopm metal4 well 6
- areacap allm4/m4 8
- defaultoverlap allm4 metal4 nwell well 8
- defaultperimeter allm4 metal4 well 37
-
-#metal4->diff
- defaultoverlap allm4 metal4 allactivenonfet active 8
- defaultsideoverlap allm4 metal4 allactivenonfet active 37
-
-#metal4->poly
- defaultoverlap allm4 metal4 allpolynonres active 10
- defaultsideoverlap allm4 metal4 allpolynonres active 38
- defaultsideoverlap *poly active allm4 metal4 6
-
-#metal4->locali
- defaultoverlap allm4 metal4 allli locali 12
- defaultsideoverlap allm4 metal4 allli locali 40
- defaultsideoverlap allli locali allm4 metal4 10
-
-#metal4->metal1
- defaultoverlap allm4 metal4 allm1 metal1 15
- defaultsideoverlap allm4 metal4 allm1 metal1 43
- defaultsideoverlap allm1 metal1 allm4 metal4 16
-
-#metal4->metal2
- defaultoverlap allm4 metal4 allm2 metal2 20
- defaultsideoverlap allm4 metal4 allm2 metal2 46
- defaultsideoverlap allm2 metal2 allm4 metal4 22
-
-#metal4->metal3
- defaultoverlap allm4 metal4 allm3 metal3 84
- defaultsideoverlap allm4 metal4 allm3 metal3 71
- defaultsideoverlap allm3 metal3 allm4 metal4 43
-
-#metal5
- defaultsidewall allm5 metal5 127
-# defaultareacap allm5 metal5 well 6
- areacap allm5/m5 6
- defaultoverlap allm5 metal5 nwell well 6
- defaultperimeter allm5 metal5 well 39
-
-#metal5->diff
- defaultoverlap allm5 metal5 allactivenonfet active 6
- defaultsideoverlap allm5 metal5 allactivenonfet active 39
-
-#metal5->poly
- defaultoverlap allm5 metal5 allpolynonres active 7
- defaultsideoverlap allm5 metal5 allpolynonres active 40
- defaultsideoverlap *poly active allm5 metal5 6
-
-#metal5->locali
- defaultoverlap allm5 metal5 allli locali 8
- defaultsideoverlap allm5 metal5 allli locali 41
- defaultsideoverlap allli locali allm5 metal5 8
-
-#metal5->metal1
- defaultoverlap allm5 metal5 allm1 metal1 9
- defaultsideoverlap allm5 metal5 allm1 metal1 43
- defaultsideoverlap allm1 metal1 allm5 metal5 12
-
-#metal5->metal2
- defaultoverlap allm5 metal5 allm2 metal2 11
- defaultsideoverlap allm5 metal5 allm2 metal2 46
- defaultsideoverlap allm2 metal2 allm5 metal5 16
-
-#metal5->metal3
- defaultoverlap allm5 metal5 allm3 metal3 20
- defaultsideoverlap allm5 metal5 allm3 metal3 54
- defaultsideoverlap allm3 metal3 allm5 metal5 28
-
-#metal5->metal4
- defaultoverlap allm5 metal5 allm4 metal4 68
- defaultsideoverlap allm5 metal5 allm4 metal4 83
- defaultsideoverlap allm4 metal4 allm5 metal5 47
-
-
-# Devices: Base models (not subcircuit wrappers)
-
-variants (),(si)
-
- device msubcircuit sky130_fd_pr__pfet_01v8 pfet,scpfet \
- *pdiff,pdiffres *pdiff,pdiffres nwell error l=l w=w
- device msubcircuit sky130_fd_pr__special_pfet_pass ppu \
- *pdiff,pdiffres *pdiff,pdiffres nwell error l=l w=w
- device msubcircuit sky130_fd_pr__pfet_01v8_lvt pfetlvt \
- *pdiff,pdiffres *pdiff,pdiffres nwell error l=l w=w
- device msubcircuit sky130_fd_pr__pfet_01v8_mvt pfetmvt \
- *pdiff,pdiffres *pdiff,pdiffres nwell error l=l w=w
- device msubcircuit sky130_fd_pr__pfet_01v8_hvt pfethvt,scpfethvt \
- *pdiff,pdiffres *pdiff,pdiffres nwell error l=l w=w
-
- device msubcircuit sky130_fd_pr__nfet_01v8 nfet,scnfet \
- *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_pr__special_nfet_latch npd \
- *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_pr__special_nfet_pass npass \
- *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_pr__nfet_01v8_lvt nfetlvt \
- *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_bs_flash__special_sonosfet_star nsonos \
- *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w
- device subcircuit sky130_fd_pr__cap_var_lvt varactor \
- *nndiff nwell error l=l w=w
- device subcircuit sky130_fd_pr__cap_var_hvt varhvt \
- *nndiff nwell error l=l w=w
- device subcircuit sky130_fd_pr__cap_var mvvaractor \
- *mvnndiff nwell error l=l w=w
-
- # Bipolars
- device msubcircuit sky130_fd_pr__npn_05v0 npn dnwell *ndiff space/w error a2=area
- device msubcircuit sky130_fd_pr__pnp_05v0 pnp pwell,space/w *pdiff a2=area
- device msubcircuit sky130_fd_pr__npn_11v0 npn dnwell *mvndiff space/w error a2=area
-
- # Ignore the extended-drain FET geometry that forms part of the high-voltage
- # bipolar devices.
- device msubcircuit Ignore mvnfet *mvndiff,mvndiffres dnwell pwell,space/w error +npn,pnp
- device msubcircuit Ignore mvpfet *mvpdiff,mvpdiffres pwell,space/w nwell error +npn,pnp
-
- # Extended drain devices (must appear before the regular devices)
- device msubcircuit sky130_fd_pr__nfet_20v0_nvt mvnnfet *mvndiff,mvndiffres \
- dnwell pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_pr__nfet_20v0 mvnfet *mvndiff,mvndiffres \
- dnwell pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_pr__pfet_20v0 mvpfet *mvpdiff,mvpdiffres \
- pwell,space/w nwell error l=l w=w
-
- device msubcircuit sky130_fd_pr__pfet_g5v0d10v5 mvpfet \
- *mvpdiff,mvpdiffres *mvpdiff,mvpdiffres nwell error l=l w=w
- device msubcircuit sky130_fd_pr__nfet_g5v0d10v5 mvnfet \
- *mvndiff,mvndiffres *mvndiff,mvndiffres pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_pr__nfet_05v0_nvt mvnnfet \
- *mvndiff,mvndiffres *mvndiff,mvndiffres pwell,space/w error l=l w=w
-
- device resistor sky130_fd_pr__res_generic_l1 rli1 *li,coreli
- device resistor sky130_fd_pr__res_generic_m1 rmetal1 *metal1
- device resistor sky130_fd_pr__res_generic_m2 rmetal2 *metal2
- device resistor sky130_fd_pr__res_generic_m3 rmetal3 *metal3
- device resistor sky130_fd_pr__res_generic_m4 rm4 *m4
- device resistor sky130_fd_pr__res_generic_m5 rm5 *m5
-
- device rsubcircuit sky130_fd_pr__res_high_po_0p35 xhrpoly \
- xpc pwell,space/w error +res0p35 l=l
- device rsubcircuit sky130_fd_pr__res_high_po_0p69 xhrpoly \
- xpc pwell,space/w error +res0p69 l=l
- device rsubcircuit sky130_fd_pr__res_high_po_1p41 xhrpoly \
- xpc pwell,space/w error +res1p41 l=l
- device rsubcircuit sky130_fd_pr__res_high_po_2p85 xhrpoly \
- xpc pwell,space/w error +res2p85 l=l
- device rsubcircuit sky130_fd_pr__res_high_po_5p73 xhrpoly \
- xpc pwell,space/w error +res5p73 l=l
- device rsubcircuit sky130_fd_pr__res_high_po xhrpoly \
- xpc pwell,space/w error l=l w=w
- device rsubcircuit sky130_fd_pr__res_xhigh_po_0p35 uhrpoly \
- xpc pwell,space/w error +res0p35 l=l
- device rsubcircuit sky130_fd_pr__res_xhigh_po_0p69 uhrpoly \
- xpc pwell,space/w error +res0p69 l=l
- device rsubcircuit sky130_fd_pr__res_xhigh_po_1p41 uhrpoly \
- xpc pwell,space/w error +res1p41 l=l
- device rsubcircuit sky130_fd_pr__res_xhigh_po_2p85 uhrpoly \
- xpc pwell,space/w error +res2p85 l=l
- device rsubcircuit sky130_fd_pr__res_xhigh_po_5p73 uhrpoly \
- xpc pwell,space/w error +res5p73 l=l
- device rsubcircuit sky130_fd_pr__res_xhigh_po uhrpoly \
- xpc pwell,space/w error l=l w=w
-
- device rsubcircuit sky130_fd_pr__res_generic_nd ndiffres \
- *ndiff pwell,space/w error l=l w=w
- device rsubcircuit sky130_fd_pr__res_generic_pd pdiffres \
- *pdiff nwell error l=l w=w
- device rsubcircuit sky130_fd_pr__res_iso_pw rpw \
- pwell dnwell error l=l w=w
- device rsubcircuit sky130_fd_pr__res_generic_nd__hv mvndiffres \
- *mvndiff pwell,space/w error l=l w=w
- device rsubcircuit sky130_fd_pr__res_generic_pd__hv mvpdiffres \
- *mvpdiff nwell error l=l w=w
-
- device resistor sky130_fd_pr__res_generic_po rmp *poly
- device resistor sky130_fd_pr__res_generic_po mrp1 *poly
-
- device subcircuit sky130_fd_pr__diode_pd2nw_05v5 *pdiode \
- nwell a=area
- device subcircuit sky130_fd_pr__diode_pd2nw_05v5_lvt *pdiodelvt \
- nwell a=area
- device subcircuit sky130_fd_pr__diode_pd2nw_05v5_hvt *pdiodehvt \
- nwell a=area
- device subcircuit sky130_fd_pr__diode_pd2nw_11v0 *mvpdiode \
- nwell a=area
-
- device msubcircuit sky130_fd_pr__diode_pw2nd_05v5 *ndiode \
- pwell,space/w a=area
- device msubcircuit sky130_fd_pr__diode_pw2nd_05v5_lvt *ndiodelvt \
- pwell,space/w a=area
- device msubcircuit sky130_fd_pr__diode_pw2nd_05v5_nvt *nndiode \
- pwell,space/w a=area
- device msubcircuit sky130_fd_pr__diode_pw2nd_11v0 *mvndiode \
- pwell,space/w a=area
-
-
- device csubcircuit sky130_fd_pr__cap_mim_m3_1 *mimcap *m3 w=w l=l
- device csubcircuit sky130_fd_pr__cap_mim_m3_2 *mimcap2 *m4 w=w l=l
-
- variants (orig)
-
- device mosfet sky130_fd_pr__pfet_01v8 scpfet,pfet pdiff,pdiffres,pdc nwell
- device mosfet sky130_fd_pr__special_pfet_pass ppu pdiff,pdiffres,pdc nwell
- device mosfet sky130_fd_pr__pfet_01v8_lvt pfetlvt pdiff,pdiffres,pdc nwell
- device mosfet sky130_fd_pr__pfet_01v8_mvt pfetmvt pdiff,pdiffres,pdc nwell
- device mosfet sky130_fd_pr__pfet_01v8_hvt scpfethvt,pfethvt pdiff,pdiffres,pdc nwell
- device mosfet sky130_fd_pr__nfet_01v8 scnfet,nfet ndiff,ndiffres,ndc pwell,space/w
- device mosfet sky130_fd_pr__special_nfet_pass npass ndiff,ndiffres,ndc pwell,space/w
- device mosfet sky130_fd_pr__special_nfet_latch npd ndiff,ndiffres,ndc pwell,space/w
- device mosfet sky130_fd_pr__special_nfet_latch npd ndiff,ndiffres,ndc pwell,space/w
- device mosfet sky130_fd_pr__nfet_01v8_lvt nfetlvt ndiff,ndiffres,ndc pwell,space/w
- device mosfet sky130_fd_bs_flash__special_sonosfet_star nsonos ndiff,ndiffres,ndc \
- pwell,space/w
-
- # Note that corenvar, corepvar are not considered devices, and extract as
- # parasitic capacitance instead (but cap values need to be added).
-
- # Extended drain devices (must appear before the regular devices)
- device mosfet sky130_fd_pr__nfet_20v0_nvt mvnnfet *mvndiff,mvndiffres \
- dnwell pwell,space/w error
- device mosfet sky130_fd_pr__nfet_20v0 mvnfet *mvndiff,mvndiffres \
- dnwell pwell,space/w error
- device mosfet sky130_fd_pr__pfet_20v0 mvpfet *mvpdiff,mvpdiffres \
- pwell,space/w nwell error
-
- device mosfet sky130_fd_pr__pfet_g5v0d10v5 mvpfet mvpdiff,mvpdiffres,mvpdc nwell
- device mosfet sky130_fd_pr__nfet_g5v0d10v5 mvnfet mvndiff,mvndiffres,mvndc pwell,space/w
- device mosfet sky130_fd_pr__nfet_05v0_nvt mvnnfet *mvndiff,mvndiffres pwell,space/w
-
- # These devices always extract as subcircuits
- device subcircuit sky130_fd_pr__cap_var_lvt varactor *nndiff nwell error l=l w=w
- device subcircuit sky130_fd_pr__cap_var_hvt varhvt *nndiff nwell error l=l w=w
- device subcircuit sky130_fd_pr__cap_var mvvaractor *mvnndiff nwell error l=l w=w
-
- device resistor sky130_fd_pr__res_generic_po rmp *poly
- device resistor sky130_fd_pr__res_generic_l1 rli1 *li,coreli
- device resistor sky130_fd_pr__res_generic_m1 rmetal1 *metal1
- device resistor sky130_fd_pr__res_generic_m2 rmetal2 *metal2
- device resistor sky130_fd_pr__res_generic_m3 rmetal3 *metal3
- device resistor sky130_fd_pr__res_generic_m4 rm4 *m4
- device resistor sky130_fd_pr__res_generic_m5 rm5 *m5
-
- device resistor sky130_fd_pr__res_high_po_0p35 xhrpoly xpc +res0p35
- device resistor sky130_fd_pr__res_high_po_0p69 xhrpoly xpc +res0p69
- device resistor sky130_fd_pr__res_high_po_1p41 xhrpoly xpc +res1p41
- device resistor sky130_fd_pr__res_high_po_2p85 xhrpoly xpc +res2p85
- device resistor sky130_fd_pr__res_high_po_5p73 xhrpoly xpc +res5p73
- device resistor sky130_fd_pr__res_high_po xhrpoly xpc
- device resistor sky130_fd_pr__res_xhigh_po_0p35 uhrpoly xpc +res0p35
- device resistor sky130_fd_pr__res_xhigh_po_0p69 uhrpoly xpc +res0p69
- device resistor sky130_fd_pr__res_xhigh_po_1p41 uhrpoly xpc +res1p41
- device resistor sky130_fd_pr__res_xhigh_po_2p85 uhrpoly xpc +res2p85
- device resistor sky130_fd_pr__res_xhigh_po_5p73 uhrpoly xpc +res5p73
- device resistor sky130_fd_pr__res_xhigh_po uhrpoly xpc
- device resistor sky130_fd_pr__res_generic_po mrp1 *poly
- device resistor sky130_fd_pr__res_generic_nd ndiffres *ndiff
- device resistor sky130_fd_pr__res_generic_pd pdiffres *pdiff
- device resistor mrdn_hv mvndiffres *mvndiff
- device resistor mrdp_hv mvpdiffres *mvpdiff
- device resistor sky130_fd_pr__res_iso_pw rpw pwell
-
- device ndiode sky130_fd_pr__diode_pw2nd_05v5 *ndiode pwell,space/w a=area
- device ndiode sky130_fd_pr__diode_pw2nd_05v5_lvt *ndiodelvt pwell,space/w a=area
- device ndiode sky130_fd_pr__diode_pw2nd_05v5_nvt *nndiode pwell,space/w a=area
- device ndiode sky130_fd_pr__diode_pw2nd_11v0 *mvndiode pwell,space/w a=area
-
- device pdiode sky130_fd_pr__diode_pd2nw_05v5 *pdiode nwell a=area
- device pdiode sky130_fd_pr__diode_pd2nw_05v5_lvt *pdiodelvt nwell a=area
- device pdiode sky130_fd_pr__diode_pd2nw_05v5_hvt *pdiodehvt nwell a=area
- device pdiode sky130_fd_pr__diode_pd2nw_11v0 *mvpdiode nwell a=area
-
- device bjt sky130_fd_pr__npn_05v5 npn dnwell *ndiff space/w error a2=area
- device bjt sky130_fd_pr__pnp_05v5 pnp pwell,space/w *pdiff a2=area
- device bjt sky130_fd_pr__npn_11v0 npn dnwell *mvndiff space/w error a2=area
-
- device capacitor sky130_fd_pr__cap_mim_m3_1 *mimcap *m3 1
- device capacitor sky130_fd_pr__cap_mim_m3_2 *mimcap2 *m4 1
-
-end
-
-#-----------------------------------------------------
-# Wiring tool definitions
-#-----------------------------------------------------
-
-wiring
- # All wiring values are in nanometers
- scalefactor 10
-
- contact lic 170 li 0 0 m1 30 60
- contact v1 260 m1 0 30 m2 0 30
- contact v2 280 m2 0 45 m3 25 0
- contact v3 320 m3 0 30 m4 5 5
- contact v4 1180 m4 0 m5 120
-
- contact pc 170 poly 50 80 li 0 80
- contact pdc 170 pdiff 40 60 li 0 80
- contact ndc 170 ndiff 40 60 li 0 80
- contact psc 170 psd 40 60 li 0 80
- contact nsc 170 nsd 40 60 li 0 80
-
-end
-
-#-----------------------------------------------------
-# Plain old router. . .
-#-----------------------------------------------------
-
-router
-end
-
-#------------------------------------------------------------
-# Plowing (restored in magic 8.2, need to fill this section)
-#------------------------------------------------------------
-
-plowing
-end
-
-#-----------------------------------------------------------------
-# No special plot layers defined (use default PNM color choices)
-#-----------------------------------------------------------------
-
-plot
- style pnm
- default
- draw fillblock no_color_at_all
- draw nwell cwell
-end
-
diff --git a/mag/sky130_fd_sc_hvl__lsbufhv2lv_1_wrapped.mag b/mag/sky130_fd_sc_hvl__lsbufhv2lv_1_wrapped.mag
deleted file mode 100644
index 1684eb0..0000000
--- a/mag/sky130_fd_sc_hvl__lsbufhv2lv_1_wrapped.mag
+++ /dev/null
@@ -1,315 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1608587411
-<< viali >>
-rect 1663 2610 1697 2644
-rect 1951 2610 1985 2644
-rect 2431 1944 2465 1978
-<< metal1 >>
-rect 480 3282 3456 3307
-rect 480 3230 2122 3282
-rect 2174 3230 2186 3282
-rect 2238 3230 3456 3282
-rect 480 3205 3456 3230
-rect 1651 2644 1709 2650
-rect 1651 2610 1663 2644
-rect 1697 2641 1709 2644
-rect 1939 2644 1997 2650
-rect 1939 2641 1951 2644
-rect 1697 2613 1951 2641
-rect 1697 2610 1709 2613
-rect 1651 2604 1709 2610
-rect 1939 2610 1951 2613
-rect 1985 2641 1997 2644
-rect 3184 2641 3190 2653
-rect 1985 2613 3190 2641
-rect 1985 2610 1997 2613
-rect 1939 2604 1997 2610
-rect 3184 2601 3190 2613
-rect 3242 2601 3248 2653
-rect 480 2468 3456 2493
-rect 480 2416 822 2468
-rect 874 2416 886 2468
-rect 938 2416 3456 2468
-rect 480 2391 3456 2416
-rect 1536 2286 2110 2289
-rect 1536 2232 1670 2286
-rect 1664 2226 1670 2232
-rect 1854 2232 2110 2286
-rect 1854 2226 1860 2232
-rect 1664 2222 1860 2226
-rect 592 1935 598 1987
-rect 650 1975 656 1987
-rect 2419 1978 2477 1984
-rect 2419 1975 2431 1978
-rect 650 1947 2431 1975
-rect 650 1935 656 1947
-rect 2419 1944 2431 1947
-rect 2465 1944 2477 1978
-rect 2419 1938 2477 1944
-rect 480 1654 3456 1679
-rect 480 1602 2122 1654
-rect 2174 1602 2186 1654
-rect 2238 1602 3456 1654
-rect 480 1577 3456 1602
-rect 480 840 3456 865
-rect 480 788 822 840
-rect 874 788 886 840
-rect 938 788 3456 840
-rect 480 763 3456 788
-<< via1 >>
-rect 2122 3230 2174 3282
-rect 2186 3230 2238 3282
-rect 3190 2601 3242 2653
-rect 822 2416 874 2468
-rect 886 2416 938 2468
-rect 1670 2226 1854 2286
-rect 598 1935 650 1987
-rect 2122 1602 2174 1654
-rect 2186 1602 2238 1654
-rect 822 788 874 840
-rect 886 788 938 840
-<< metal2 >>
-rect 2112 3284 2248 3307
-rect 2168 3282 2192 3284
-rect 2174 3230 2186 3282
-rect 2168 3228 2192 3230
-rect 2112 3205 2248 3228
-rect 3190 2653 3242 2659
-rect 3284 2604 3340 3800
-rect 3242 2601 3340 2604
-rect 3190 2600 3340 2601
-rect 3190 2595 3326 2600
-rect 3202 2576 3326 2595
-rect 812 2470 948 2493
-rect 868 2468 892 2470
-rect 874 2416 886 2468
-rect 868 2414 892 2416
-rect 812 2391 948 2414
-rect 1660 2286 1864 2296
-rect 1660 2226 1670 2286
-rect 1854 2226 1864 2286
-rect 1660 2214 1864 2226
-rect 598 1987 650 1993
-rect 598 1929 650 1935
-rect 610 800 638 1929
-rect 2112 1656 2248 1679
-rect 2168 1654 2192 1656
-rect 2174 1602 2186 1654
-rect 2168 1600 2192 1602
-rect 2112 1577 2248 1600
-rect 812 842 948 865
-rect 868 840 892 842
-rect 596 -400 652 800
-rect 874 788 886 840
-rect 868 786 892 788
-rect 812 763 948 786
-<< via2 >>
-rect 2112 3282 2168 3284
-rect 2192 3282 2248 3284
-rect 2112 3230 2122 3282
-rect 2122 3230 2168 3282
-rect 2192 3230 2238 3282
-rect 2238 3230 2248 3282
-rect 2112 3228 2168 3230
-rect 2192 3228 2248 3230
-rect 812 2468 868 2470
-rect 892 2468 948 2470
-rect 812 2416 822 2468
-rect 822 2416 868 2468
-rect 892 2416 938 2468
-rect 938 2416 948 2468
-rect 812 2414 868 2416
-rect 892 2414 948 2416
-rect 1670 2226 1854 2286
-rect 2112 1654 2168 1656
-rect 2192 1654 2248 1656
-rect 2112 1602 2122 1654
-rect 2122 1602 2168 1654
-rect 2192 1602 2238 1654
-rect 2238 1602 2248 1654
-rect 2112 1600 2168 1602
-rect 2192 1600 2248 1602
-rect 812 840 868 842
-rect 892 840 948 842
-rect 812 788 822 840
-rect 822 788 868 840
-rect 892 788 938 840
-rect 938 788 948 840
-rect 812 786 868 788
-rect 892 786 948 788
-<< metal3 >>
-rect 2090 3288 2270 3289
-rect 2090 3224 2108 3288
-rect 2172 3224 2188 3288
-rect 2252 3224 2270 3288
-rect 2090 3223 2270 3224
-rect 790 2474 970 2475
-rect 790 2410 808 2474
-rect 872 2410 888 2474
-rect 952 2410 970 2474
-rect 790 2409 970 2410
-rect 1660 2290 1864 2296
-rect 1660 2226 1670 2290
-rect 1854 2226 1864 2290
-rect 1660 2214 1864 2226
-rect 2090 1660 2270 1661
-rect 2090 1596 2108 1660
-rect 2172 1596 2188 1660
-rect 2252 1596 2270 1660
-rect 2090 1595 2270 1596
-rect 790 846 970 847
-rect 790 782 808 846
-rect 872 782 888 846
-rect 952 782 970 846
-rect 790 781 970 782
-<< via3 >>
-rect 2108 3284 2172 3288
-rect 2108 3228 2112 3284
-rect 2112 3228 2168 3284
-rect 2168 3228 2172 3284
-rect 2108 3224 2172 3228
-rect 2188 3284 2252 3288
-rect 2188 3228 2192 3284
-rect 2192 3228 2248 3284
-rect 2248 3228 2252 3284
-rect 2188 3224 2252 3228
-rect 808 2470 872 2474
-rect 808 2414 812 2470
-rect 812 2414 868 2470
-rect 868 2414 872 2470
-rect 808 2410 872 2414
-rect 888 2470 952 2474
-rect 888 2414 892 2470
-rect 892 2414 948 2470
-rect 948 2414 952 2470
-rect 888 2410 952 2414
-rect 1670 2286 1854 2290
-rect 1670 2226 1854 2286
-rect 2108 1656 2172 1660
-rect 2108 1600 2112 1656
-rect 2112 1600 2168 1656
-rect 2168 1600 2172 1656
-rect 2108 1596 2172 1600
-rect 2188 1656 2252 1660
-rect 2188 1600 2192 1656
-rect 2192 1600 2248 1656
-rect 2248 1600 2252 1656
-rect 2188 1596 2252 1600
-rect 808 842 872 846
-rect 808 786 812 842
-rect 812 786 868 842
-rect 868 786 872 842
-rect 808 782 872 786
-rect 888 842 952 846
-rect 888 786 892 842
-rect 892 786 948 842
-rect 948 786 952 842
-rect 888 782 952 786
-<< metal4 >>
-rect 790 2474 970 3307
-rect 2090 3288 2270 3307
-rect 790 2410 808 2474
-rect 872 2410 888 2474
-rect 952 2410 970 2474
-rect 790 846 970 2410
-rect 1670 2296 1850 3256
-rect 2090 3224 2108 3288
-rect 2172 3224 2188 3288
-rect 2252 3224 2270 3288
-rect 1660 2290 1860 2296
-rect 1660 2226 1670 2290
-rect 1854 2226 1860 2290
-rect 1660 2216 1860 2226
-rect 790 782 808 846
-rect 872 782 888 846
-rect 952 782 970 846
-rect 1670 814 1850 2216
-rect 2090 1660 2270 3224
-rect 2090 1596 2108 1660
-rect 2172 1596 2188 1660
-rect 2252 1596 2270 1660
-rect 790 763 970 782
-rect 2090 763 2270 1596
-rect 2970 814 3150 3256
-use sky130_fd_sc_hvl__decap_8 FILLER_0_0 $PDKPATH/libs.ref/sky130_fd_sc_hvl/mag
-timestamp 1608587411
-transform 1 0 480 0 -1 1628
-box -66 -23 834 897
-use sky130_fd_sc_hvl__decap_8 FILLER_0_8
-timestamp 1608587411
-transform 1 0 1248 0 -1 1628
-box -66 -23 834 897
-use sky130_fd_sc_hvl__decap_8 FILLER_1_0
-timestamp 1608587411
-transform 1 0 480 0 1 1628
-box -66 -23 834 897
-use sky130_fd_sc_hvl__decap_4 FILLER_1_8 $PDKPATH/libs.ref/sky130_fd_sc_hvl/mag
-timestamp 1608587411
-transform 1 0 1248 0 1 1628
-box -66 -23 450 897
-use sky130_fd_sc_hvl__decap_8 FILLER_0_16
-timestamp 1608587411
-transform 1 0 2016 0 -1 1628
-box -66 -23 834 897
-use sky130_fd_sc_hvl__fill_1 FILLER_1_12 $PDKPATH/libs.ref/sky130_fd_sc_hvl/mag
-timestamp 1608587411
-transform 1 0 1632 0 1 1628
-box -66 -23 162 897
-use sky130_fd_sc_hvl__decap_4 FILLER_0_24
-timestamp 1608587411
-transform 1 0 2784 0 -1 1628
-box -66 -23 450 897
-use sky130_fd_sc_hvl__fill_2 FILLER_0_28 $PDKPATH/libs.ref/sky130_fd_sc_hvl/mag
-timestamp 1608587411
-transform 1 0 3168 0 -1 1628
-box -66 -23 258 897
-use sky130_fd_sc_hvl__fill_1 FILLER_0_30
-timestamp 1608587411
-transform 1 0 3360 0 -1 1628
-box -66 -23 162 897
-use sky130_fd_sc_hvl__fill_1 FILLER_1_30
-timestamp 1608587411
-transform 1 0 3360 0 1 1628
-box -66 -23 162 897
-use sky130_fd_sc_hvl__diode_2 ANTENNA_lvlshiftdown_A $PDKPATH/libs.ref/sky130_fd_sc_hvl/mag
-timestamp 1608587411
-transform 1 0 1536 0 -1 3256
-box -66 -23 258 897
-use sky130_fd_sc_hvl__decap_8 FILLER_2_0
-timestamp 1608587411
-transform 1 0 480 0 -1 3256
-box -66 -23 834 897
-use sky130_fd_sc_hvl__fill_2 FILLER_2_8
-timestamp 1608587411
-transform 1 0 1248 0 -1 3256
-box -66 -23 258 897
-use sky130_fd_sc_hvl__fill_1 FILLER_2_10
-timestamp 1608587411
-transform 1 0 1440 0 -1 3256
-box -66 -23 162 897
-use sky130_fd_sc_hvl__fill_1 FILLER_2_30
-timestamp 1608587411
-transform 1 0 3360 0 -1 3256
-box -66 -23 162 897
-use sky130_fd_sc_hvl__lsbufhv2lv_1 lvlshiftdown $PDKPATH/libs.ref/sky130_fd_sc_hvl/mag
-timestamp 1608587411
-transform 1 0 1728 0 1 1628
-box -66 -23 1698 1651
-<< labels >>
-rlabel metal2 s 3284 2600 3340 3800 6 A
-port 0 nsew signal input
-rlabel metal2 s 596 -400 652 800 6 X
-port 1 nsew signal tristate
-rlabel metal4 s 790 763 970 3307 6 VPWR
-port 2 nsew power bidirectional
-rlabel metal4 s 2090 763 2270 3307 6 VGND
-port 3 nsew ground bidirectional
-rlabel metal4 s 1670 814 1850 3256 6 LVPWR
-port 4 nsew power bidirectional
-rlabel metal4 s 2970 814 3150 3256 6 LVGND
-port 5 nsew ground bidirectional
-<< properties >>
-string FIXED_BBOX 0 0 4000 3400
-<< end >>
diff --git a/mag/sram_1rw1r_32_256_8_sky130.mag b/mag/sram_1rw1r_32_256_8_sky130.mag
deleted file mode 100644
index a24a7aa..0000000
--- a/mag/sram_1rw1r_32_256_8_sky130.mag
+++ /dev/null
@@ -1,426 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1613304635
-<< obsactive >>
-rect 1000 1000 76296 90247
-<< obsli1 >>
-rect 1000 1000 76356 90307
-<< obsm1 >>
-rect 1000 1000 76356 90307
-<< obsm2 >>
-rect 1000 1000 76356 90307
-<< metal3 >>
-rect 71856 90307 72204 90428
-rect 76208 90410 77260 90428
-rect 76208 90307 76944 90410
-rect 0 86557 920 86617
-rect 0 85429 920 85489
-rect 0 83729 920 83789
-rect 0 82601 920 82661
-rect 0 80901 920 80961
-rect 0 79773 920 79833
-rect 0 78073 920 78133
-rect 0 20225 920 20285
-rect 0 18525 920 18585
-rect 76356 90088 76944 90307
-rect 77248 90088 77260 90410
-rect 76356 90080 77260 90088
-rect 76436 89653 77296 89713
-rect 76356 88926 76810 88932
-rect 76356 88724 76500 88926
-rect 76804 88724 76810 88926
-rect 76356 88720 76810 88724
-rect 76436 29382 77296 29442
-rect 76436 27682 77296 27742
-rect 76436 26554 77296 26614
-rect 76436 24854 77296 24914
-rect 76436 23726 77296 23786
-rect 76436 22026 77296 22086
-rect 76436 20898 77296 20958
-<< obsm3 >>
-rect 1000 1000 76356 90307
-<< via3 >>
-rect 76944 90088 77248 90410
-rect 76500 88724 76804 88926
-<< metal4 >>
-rect 18805 90407 18865 91247
-rect 20053 90407 20113 91247
-rect 21301 90407 21361 91247
-rect 22549 90407 22609 91247
-rect 23797 90407 23857 91247
-rect 25045 90407 25105 91247
-rect 26293 90407 26353 91247
-rect 27541 90407 27601 91247
-rect 28789 90407 28849 91247
-rect 30037 90407 30097 91247
-rect 31285 90407 31345 91247
-rect 32533 90407 32593 91247
-rect 33781 90407 33841 91247
-rect 35029 90407 35089 91247
-rect 36277 90407 36337 91247
-rect 37525 90407 37585 91247
-rect 38773 90407 38833 91247
-rect 40021 90407 40081 91247
-rect 41269 90407 41329 91247
-rect 42517 90407 42577 91247
-rect 43765 90407 43825 91247
-rect 45013 90407 45073 91247
-rect 46261 90407 46321 91247
-rect 47509 90407 47569 91247
-rect 48757 90407 48817 91247
-rect 50005 90407 50065 91247
-rect 51253 90407 51313 91247
-rect 52501 90407 52561 91247
-rect 53749 90407 53809 91247
-rect 54997 90407 55057 91247
-rect 56245 90407 56305 91247
-rect 57493 90407 57553 91247
-rect 68578 90407 68638 91247
-rect 73573 90407 73633 91247
-rect 76938 90410 77262 90428
-rect 76938 90088 76944 90410
-rect 77248 90088 77262 90410
-rect 76494 88926 76814 88936
-rect 76494 88724 76500 88926
-rect 76804 88724 76814 88926
-rect 3803 0 3863 920
-rect 6802 0 6862 920
-rect 7970 0 8030 920
-rect 9138 0 9198 920
-rect 10306 0 10366 920
-rect 11474 0 11534 920
-rect 12642 0 12702 920
-rect 12766 0 12826 920
-rect 13810 0 13870 920
-rect 13934 0 13994 920
-rect 14978 0 15038 920
-rect 15102 0 15162 920
-rect 16146 0 16206 920
-rect 16270 0 16330 920
-rect 17314 0 17374 920
-rect 17438 0 17498 920
-rect 18482 0 18542 920
-rect 18606 0 18666 920
-rect 19650 0 19710 920
-rect 19774 0 19834 920
-rect 20818 0 20878 920
-rect 20942 0 21002 920
-rect 21986 0 22046 920
-rect 22110 0 22170 920
-rect 23154 0 23214 920
-rect 23278 0 23338 920
-rect 24322 0 24382 920
-rect 24446 0 24506 920
-rect 25490 0 25550 920
-rect 25614 0 25674 920
-rect 26658 0 26718 920
-rect 26782 0 26842 920
-rect 27826 0 27886 920
-rect 27950 0 28010 920
-rect 28994 0 29054 920
-rect 29118 0 29178 920
-rect 30162 0 30222 920
-rect 30286 0 30346 920
-rect 31330 0 31390 920
-rect 31454 0 31514 920
-rect 32498 0 32558 920
-rect 32622 0 32682 920
-rect 33666 0 33726 920
-rect 33790 0 33850 920
-rect 34834 0 34894 920
-rect 34958 0 35018 920
-rect 36002 0 36062 920
-rect 36126 0 36186 920
-rect 37170 0 37230 920
-rect 37294 0 37354 920
-rect 38338 0 38398 920
-rect 38462 0 38522 920
-rect 39506 0 39566 920
-rect 39630 0 39690 920
-rect 40674 0 40734 920
-rect 40798 0 40858 920
-rect 41842 0 41902 920
-rect 41966 0 42026 920
-rect 43010 0 43070 920
-rect 43134 0 43194 920
-rect 44178 0 44238 920
-rect 44302 0 44362 920
-rect 45346 0 45406 920
-rect 45470 0 45530 920
-rect 46514 0 46574 920
-rect 46638 0 46698 920
-rect 47682 0 47742 920
-rect 47806 0 47866 920
-rect 48850 0 48910 920
-rect 48974 0 49034 920
-rect 76494 734 76814 88724
-rect 76938 812 77262 90088
-<< obsm4 >>
-rect 1000 1000 76356 90307
-<< labels >>
-rlabel metal4 s 12642 0 12702 920 6 din0[0]
-port 1 nsew default input
-rlabel metal4 s 13810 0 13870 920 6 din0[1]
-port 2 nsew default input
-rlabel metal4 s 14978 0 15038 920 6 din0[2]
-port 3 nsew default input
-rlabel metal4 s 16146 0 16206 920 6 din0[3]
-port 4 nsew default input
-rlabel metal4 s 17314 0 17374 920 6 din0[4]
-port 5 nsew default input
-rlabel metal4 s 18482 0 18542 920 6 din0[5]
-port 6 nsew default input
-rlabel metal4 s 19650 0 19710 920 6 din0[6]
-port 7 nsew default input
-rlabel metal4 s 20818 0 20878 920 6 din0[7]
-port 8 nsew default input
-rlabel metal4 s 21986 0 22046 920 6 din0[8]
-port 9 nsew default input
-rlabel metal4 s 23154 0 23214 920 6 din0[9]
-port 10 nsew default input
-rlabel metal4 s 24322 0 24382 920 6 din0[10]
-port 11 nsew default input
-rlabel metal4 s 25490 0 25550 920 6 din0[11]
-port 12 nsew default input
-rlabel metal4 s 26658 0 26718 920 6 din0[12]
-port 13 nsew default input
-rlabel metal4 s 27826 0 27886 920 6 din0[13]
-port 14 nsew default input
-rlabel metal4 s 28994 0 29054 920 6 din0[14]
-port 15 nsew default input
-rlabel metal4 s 30162 0 30222 920 6 din0[15]
-port 16 nsew default input
-rlabel metal4 s 31330 0 31390 920 6 din0[16]
-port 17 nsew default input
-rlabel metal4 s 32498 0 32558 920 6 din0[17]
-port 18 nsew default input
-rlabel metal4 s 33666 0 33726 920 6 din0[18]
-port 19 nsew default input
-rlabel metal4 s 34834 0 34894 920 6 din0[19]
-port 20 nsew default input
-rlabel metal4 s 36002 0 36062 920 6 din0[20]
-port 21 nsew default input
-rlabel metal4 s 37170 0 37230 920 6 din0[21]
-port 22 nsew default input
-rlabel metal4 s 38338 0 38398 920 6 din0[22]
-port 23 nsew default input
-rlabel metal4 s 39506 0 39566 920 6 din0[23]
-port 24 nsew default input
-rlabel metal4 s 40674 0 40734 920 6 din0[24]
-port 25 nsew default input
-rlabel metal4 s 41842 0 41902 920 6 din0[25]
-port 26 nsew default input
-rlabel metal4 s 43010 0 43070 920 6 din0[26]
-port 27 nsew default input
-rlabel metal4 s 44178 0 44238 920 6 din0[27]
-port 28 nsew default input
-rlabel metal4 s 45346 0 45406 920 6 din0[28]
-port 29 nsew default input
-rlabel metal4 s 46514 0 46574 920 6 din0[29]
-port 30 nsew default input
-rlabel metal4 s 47682 0 47742 920 6 din0[30]
-port 31 nsew default input
-rlabel metal4 s 48850 0 48910 920 6 din0[31]
-port 32 nsew default input
-rlabel metal4 s 6802 0 6862 920 6 addr0[0]
-port 33 nsew default input
-rlabel metal3 s 0 78073 920 78133 6 addr0[1]
-port 34 nsew default input
-rlabel metal3 s 0 79773 920 79833 6 addr0[2]
-port 35 nsew default input
-rlabel metal3 s 0 80901 920 80961 6 addr0[3]
-port 36 nsew default input
-rlabel metal3 s 0 82601 920 82661 6 addr0[4]
-port 37 nsew default input
-rlabel metal3 s 0 83729 920 83789 6 addr0[5]
-port 38 nsew default input
-rlabel metal3 s 0 85429 920 85489 6 addr0[6]
-port 39 nsew default input
-rlabel metal3 s 0 86557 920 86617 6 addr0[7]
-port 40 nsew default input
-rlabel metal4 s 68578 90407 68638 91247 6 addr1[0]
-port 41 nsew default input
-rlabel metal3 s 76436 29382 77296 29442 6 addr1[1]
-port 42 nsew default input
-rlabel metal3 s 76436 27682 77296 27742 6 addr1[2]
-port 43 nsew default input
-rlabel metal3 s 76436 26554 77296 26614 6 addr1[3]
-port 44 nsew default input
-rlabel metal3 s 76436 24854 77296 24914 6 addr1[4]
-port 45 nsew default input
-rlabel metal3 s 76436 23726 77296 23786 6 addr1[5]
-port 46 nsew default input
-rlabel metal3 s 76436 22026 77296 22086 6 addr1[6]
-port 47 nsew default input
-rlabel metal3 s 76436 20898 77296 20958 6 addr1[7]
-port 48 nsew default input
-rlabel metal3 s 0 18525 920 18585 6 csb0
-port 49 nsew default input
-rlabel metal3 s 76436 89653 77296 89713 6 csb1
-port 50 nsew default input
-rlabel metal3 s 0 20225 920 20285 6 web0
-port 51 nsew default input
-rlabel metal4 s 3803 0 3863 920 6 clk0
-port 52 nsew default input
-rlabel metal4 s 73573 90407 73633 91247 6 clk1
-port 53 nsew default input
-rlabel metal4 s 7970 0 8030 920 6 wmask0[0]
-port 54 nsew default input
-rlabel metal4 s 9138 0 9198 920 6 wmask0[1]
-port 55 nsew default input
-rlabel metal4 s 10306 0 10366 920 6 wmask0[2]
-port 56 nsew default input
-rlabel metal4 s 11474 0 11534 920 6 wmask0[3]
-port 57 nsew default input
-rlabel metal4 s 12766 0 12826 920 6 dout0[0]
-port 58 nsew default output
-rlabel metal4 s 13934 0 13994 920 6 dout0[1]
-port 59 nsew default output
-rlabel metal4 s 15102 0 15162 920 6 dout0[2]
-port 60 nsew default output
-rlabel metal4 s 16270 0 16330 920 6 dout0[3]
-port 61 nsew default output
-rlabel metal4 s 17438 0 17498 920 6 dout0[4]
-port 62 nsew default output
-rlabel metal4 s 18606 0 18666 920 6 dout0[5]
-port 63 nsew default output
-rlabel metal4 s 19774 0 19834 920 6 dout0[6]
-port 64 nsew default output
-rlabel metal4 s 20942 0 21002 920 6 dout0[7]
-port 65 nsew default output
-rlabel metal4 s 22110 0 22170 920 6 dout0[8]
-port 66 nsew default output
-rlabel metal4 s 23278 0 23338 920 6 dout0[9]
-port 67 nsew default output
-rlabel metal4 s 24446 0 24506 920 6 dout0[10]
-port 68 nsew default output
-rlabel metal4 s 25614 0 25674 920 6 dout0[11]
-port 69 nsew default output
-rlabel metal4 s 26782 0 26842 920 6 dout0[12]
-port 70 nsew default output
-rlabel metal4 s 27950 0 28010 920 6 dout0[13]
-port 71 nsew default output
-rlabel metal4 s 29118 0 29178 920 6 dout0[14]
-port 72 nsew default output
-rlabel metal4 s 30286 0 30346 920 6 dout0[15]
-port 73 nsew default output
-rlabel metal4 s 31454 0 31514 920 6 dout0[16]
-port 74 nsew default output
-rlabel metal4 s 32622 0 32682 920 6 dout0[17]
-port 75 nsew default output
-rlabel metal4 s 33790 0 33850 920 6 dout0[18]
-port 76 nsew default output
-rlabel metal4 s 34958 0 35018 920 6 dout0[19]
-port 77 nsew default output
-rlabel metal4 s 36126 0 36186 920 6 dout0[20]
-port 78 nsew default output
-rlabel metal4 s 37294 0 37354 920 6 dout0[21]
-port 79 nsew default output
-rlabel metal4 s 38462 0 38522 920 6 dout0[22]
-port 80 nsew default output
-rlabel metal4 s 39630 0 39690 920 6 dout0[23]
-port 81 nsew default output
-rlabel metal4 s 40798 0 40858 920 6 dout0[24]
-port 82 nsew default output
-rlabel metal4 s 41966 0 42026 920 6 dout0[25]
-port 83 nsew default output
-rlabel metal4 s 43134 0 43194 920 6 dout0[26]
-port 84 nsew default output
-rlabel metal4 s 44302 0 44362 920 6 dout0[27]
-port 85 nsew default output
-rlabel metal4 s 45470 0 45530 920 6 dout0[28]
-port 86 nsew default output
-rlabel metal4 s 46638 0 46698 920 6 dout0[29]
-port 87 nsew default output
-rlabel metal4 s 47806 0 47866 920 6 dout0[30]
-port 88 nsew default output
-rlabel metal4 s 48974 0 49034 920 6 dout0[31]
-port 89 nsew default output
-rlabel metal4 s 18805 90407 18865 91247 6 dout1[0]
-port 90 nsew default output
-rlabel metal4 s 20053 90407 20113 91247 6 dout1[1]
-port 91 nsew default output
-rlabel metal4 s 21301 90407 21361 91247 6 dout1[2]
-port 92 nsew default output
-rlabel metal4 s 22549 90407 22609 91247 6 dout1[3]
-port 93 nsew default output
-rlabel metal4 s 23797 90407 23857 91247 6 dout1[4]
-port 94 nsew default output
-rlabel metal4 s 25045 90407 25105 91247 6 dout1[5]
-port 95 nsew default output
-rlabel metal4 s 26293 90407 26353 91247 6 dout1[6]
-port 96 nsew default output
-rlabel metal4 s 27541 90407 27601 91247 6 dout1[7]
-port 97 nsew default output
-rlabel metal4 s 28789 90407 28849 91247 6 dout1[8]
-port 98 nsew default output
-rlabel metal4 s 30037 90407 30097 91247 6 dout1[9]
-port 99 nsew default output
-rlabel metal4 s 31285 90407 31345 91247 6 dout1[10]
-port 100 nsew default output
-rlabel metal4 s 32533 90407 32593 91247 6 dout1[11]
-port 101 nsew default output
-rlabel metal4 s 33781 90407 33841 91247 6 dout1[12]
-port 102 nsew default output
-rlabel metal4 s 35029 90407 35089 91247 6 dout1[13]
-port 103 nsew default output
-rlabel metal4 s 36277 90407 36337 91247 6 dout1[14]
-port 104 nsew default output
-rlabel metal4 s 37525 90407 37585 91247 6 dout1[15]
-port 105 nsew default output
-rlabel metal4 s 38773 90407 38833 91247 6 dout1[16]
-port 106 nsew default output
-rlabel metal4 s 40021 90407 40081 91247 6 dout1[17]
-port 107 nsew default output
-rlabel metal4 s 41269 90407 41329 91247 6 dout1[18]
-port 108 nsew default output
-rlabel metal4 s 42517 90407 42577 91247 6 dout1[19]
-port 109 nsew default output
-rlabel metal4 s 43765 90407 43825 91247 6 dout1[20]
-port 110 nsew default output
-rlabel metal4 s 45013 90407 45073 91247 6 dout1[21]
-port 111 nsew default output
-rlabel metal4 s 46261 90407 46321 91247 6 dout1[22]
-port 112 nsew default output
-rlabel metal4 s 47509 90407 47569 91247 6 dout1[23]
-port 113 nsew default output
-rlabel metal4 s 48757 90407 48817 91247 6 dout1[24]
-port 114 nsew default output
-rlabel metal4 s 50005 90407 50065 91247 6 dout1[25]
-port 115 nsew default output
-rlabel metal4 s 51253 90407 51313 91247 6 dout1[26]
-port 116 nsew default output
-rlabel metal4 s 52501 90407 52561 91247 6 dout1[27]
-port 117 nsew default output
-rlabel metal4 s 53749 90407 53809 91247 6 dout1[28]
-port 118 nsew default output
-rlabel metal4 s 54997 90407 55057 91247 6 dout1[29]
-port 119 nsew default output
-rlabel metal4 s 56245 90407 56305 91247 6 dout1[30]
-port 120 nsew default output
-rlabel metal4 s 57493 90407 57553 91247 6 dout1[31]
-port 121 nsew default output
-rlabel metal4 s 76494 734 76814 88936 6 vdd
-port 122 nsew power bidirectional
-rlabel via3 s 76500 88724 76804 88926 6 vdd
-port 122 nsew power bidirectional
-rlabel metal3 s 76208 88720 76810 88932 6 vdd
-port 122 nsew power bidirectional
-rlabel metal3 s 71856 90216 72204 90428 6 gnd
-port 123 nsew ground bidirectional
-rlabel metal4 s 76938 812 77262 90428 6 gnd
-port 123 nsew ground bidirectional
-rlabel via3 s 76944 90088 77248 90410 6 gnd
-port 123 nsew ground bidirectional
-rlabel metal3 s 76208 90080 77260 90428 6 gnd
-port 123 nsew ground bidirectional
-<< properties >>
-string LEFclass BLOCK
-string FIXED_BBOX 0 0 77296 91247
-string LEFsymmetry X Y R90
-string LEFview TRUE
-string GDS_FILE ../gds/sram_1rw1r_32_256_8_sky130.gds
-string GDS_END 13299042
-string GDS_START 13275442
-<< end >>
diff --git a/mag/switch_layout.mag b/mag/switch_layout.mag
deleted file mode 100644
index 09c5aa5..0000000
--- a/mag/switch_layout.mag
+++ /dev/null
@@ -1,231 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624221218
-<< checkpaint >>
-rect -1220 -1088 3720 2440
-<< nwell >>
-rect 506 622 602 1172
-rect 1166 654 1548 1100
-rect 1816 172 2200 624
-<< nmos >>
-rect 2010 820 2040 940
-rect 1350 340 1380 460
-<< pmos >>
-rect 1350 700 1380 942
-rect 2010 330 2040 570
-<< ndiff >>
-rect 1920 898 2010 940
-rect 1920 864 1938 898
-rect 1972 864 2010 898
-rect 1920 820 2010 864
-rect 2040 898 2130 940
-rect 2040 864 2078 898
-rect 2112 864 2130 898
-rect 2040 820 2130 864
-rect 1260 417 1350 460
-rect 1260 383 1277 417
-rect 1311 383 1350 417
-rect 1260 340 1350 383
-rect 1380 417 1470 460
-rect 1380 383 1418 417
-rect 1452 383 1470 417
-rect 1380 340 1470 383
-<< pdiff >>
-rect 1270 868 1350 942
-rect 1270 834 1283 868
-rect 1317 834 1350 868
-rect 1270 800 1350 834
-rect 1270 766 1283 800
-rect 1317 766 1350 800
-rect 1270 700 1350 766
-rect 1380 871 1462 942
-rect 1380 837 1413 871
-rect 1447 837 1462 871
-rect 1380 803 1462 837
-rect 1380 769 1413 803
-rect 1447 769 1462 803
-rect 1380 700 1462 769
-rect 1930 499 2010 570
-rect 1930 465 1943 499
-rect 1977 465 2010 499
-rect 1930 431 2010 465
-rect 1930 397 1943 431
-rect 1977 397 2010 431
-rect 1930 330 2010 397
-rect 2040 501 2122 570
-rect 2040 467 2073 501
-rect 2107 467 2122 501
-rect 2040 433 2122 467
-rect 2040 399 2073 433
-rect 2107 399 2122 433
-rect 2040 330 2122 399
-<< ndiffc >>
-rect 1938 864 1972 898
-rect 2078 864 2112 898
-rect 1277 383 1311 417
-rect 1418 383 1452 417
-<< pdiffc >>
-rect 1283 834 1317 868
-rect 1283 766 1317 800
-rect 1413 837 1447 871
-rect 1413 769 1447 803
-rect 1943 465 1977 499
-rect 1943 397 1977 431
-rect 2073 467 2107 501
-rect 2073 399 2107 433
-<< poly >>
-rect 1350 942 1380 970
-rect 2010 940 2040 970
-rect 2010 790 2040 820
-rect 2170 815 2230 840
-rect 2170 790 2183 815
-rect 2008 781 2183 790
-rect 2217 781 2230 815
-rect 2008 760 2230 781
-rect 920 580 984 582
-rect 730 557 984 580
-rect 730 542 935 557
-rect 920 523 935 542
-rect 969 523 984 557
-rect 920 504 984 523
-rect 1190 576 1248 582
-rect 1350 576 1380 700
-rect 1190 557 1380 576
-rect 2010 570 2040 760
-rect 1190 523 1201 557
-rect 1235 540 1380 557
-rect 1235 523 1248 540
-rect 1190 504 1248 523
-rect 1350 460 1380 540
-rect 1350 310 1380 340
-rect 2010 298 2040 330
-<< polycont >>
-rect 2183 781 2217 815
-rect 935 523 969 557
-rect 1201 523 1235 557
-<< locali >>
-rect 492 992 612 1142
-rect 1230 1010 2280 1070
-rect 1270 868 1320 1010
-rect 1270 834 1283 868
-rect 1317 834 1320 868
-rect 1270 800 1320 834
-rect 1270 766 1283 800
-rect 1317 766 1320 800
-rect 1270 700 1320 766
-rect 1410 871 1462 944
-rect 1410 837 1413 871
-rect 1447 837 1462 871
-rect 1410 803 1462 837
-rect 1410 769 1413 803
-rect 1447 769 1462 803
-rect 842 680 844 682
-rect 840 670 870 680
-rect 810 667 870 670
-rect 810 648 813 667
-rect 790 633 813 648
-rect 847 633 870 667
-rect 790 630 870 633
-rect 40 518 196 612
-rect 790 610 834 630
-rect 840 622 870 630
-rect 1410 622 1462 769
-rect 1920 898 1980 940
-rect 1920 864 1938 898
-rect 1972 864 1980 898
-rect 1920 730 1980 864
-rect 2070 898 2130 1010
-rect 2070 864 2078 898
-rect 2112 864 2130 898
-rect 2070 820 2130 864
-rect 2170 830 2230 840
-rect 2170 815 2350 830
-rect 2170 781 2183 815
-rect 2217 813 2350 815
-rect 2217 781 2304 813
-rect 2170 779 2304 781
-rect 2338 779 2350 813
-rect 2170 760 2350 779
-rect 1408 610 1462 622
-rect 1718 726 1980 730
-rect 1718 692 1932 726
-rect 1966 692 1980 726
-rect 1718 678 1980 692
-rect 1718 610 1780 678
-rect 414 542 570 580
-rect 920 557 1248 582
-rect 920 523 935 557
-rect 969 523 1201 557
-rect 1235 523 1248 557
-rect 1408 552 1780 610
-rect 1408 550 1470 552
-rect 1718 550 1780 552
-rect 920 504 1248 523
-rect 1260 417 1320 460
-rect 1260 383 1277 417
-rect 1311 383 1320 417
-rect 502 192 622 312
-rect 1260 260 1320 383
-rect 1410 417 1470 550
-rect 1410 383 1418 417
-rect 1452 383 1470 417
-rect 1410 340 1470 383
-rect 1930 499 1980 678
-rect 1930 465 1943 499
-rect 1977 465 1980 499
-rect 1930 431 1980 465
-rect 1930 397 1943 431
-rect 1977 397 1980 431
-rect 1930 330 1980 397
-rect 2070 501 2122 570
-rect 2070 467 2073 501
-rect 2107 467 2122 501
-rect 2070 433 2122 467
-rect 2070 399 2073 433
-rect 2107 399 2122 433
-rect 2070 260 2122 399
-rect 1250 200 2300 260
-<< viali >>
-rect 813 633 847 667
-rect 2304 779 2338 813
-rect 1932 692 1966 726
-<< metal1 >>
-rect 502 980 602 1150
-rect 1038 1148 2330 1180
-rect 1038 1138 2332 1148
-rect 1040 920 1080 1138
-rect 920 880 1080 920
-rect 920 680 960 880
-rect 2292 830 2332 1138
-rect 2292 813 2350 830
-rect 2292 779 2304 813
-rect 2338 779 2350 813
-rect 2292 770 2350 779
-rect 1920 726 2460 740
-rect 1920 692 1932 726
-rect 1966 692 2460 726
-rect 1920 680 2460 692
-rect 790 667 960 680
-rect 790 633 813 667
-rect 847 633 960 667
-rect 790 622 960 633
-rect 512 182 612 324
-use INV INV_0
-timestamp 1624221218
-transform 1 0 224 0 1 622
-box -88 -440 290 550
-use INV INV_1
-timestamp 1624221218
-transform 1 0 602 0 1 622
-box -88 -440 290 550
-<< labels >>
-rlabel metal1 s 544 1068 544 1068 4 vdd!
-rlabel metal1 s 540 216 540 216 4 gnd!
-rlabel locali s 1576 220 1576 220 4 inp2
-rlabel locali s 1778 1032 1778 1032 4 inp1
-rlabel locali s 100 566 100 566 4 din
-rlabel locali s 470 556 470 556 4 dinb
-rlabel poly s 2116 776 2116 776 4 dd
-rlabel metal1 s 2112 702 2112 702 4 vout
-<< end >>
diff --git a/mag/user_analog_project_wrapper.mag b/mag/user_analog_project_wrapper.mag
deleted file mode 100644
index 2f81a79..0000000
--- a/mag/user_analog_project_wrapper.mag
+++ /dev/null
@@ -1,2332 +0,0 @@
-magic
-tech sky130A
-magscale 1 2
-timestamp 1624220454
-<< checkpaint >>
-rect -2114 -2060 586060 706060
-<< locali >>
-rect 46054 508408 47990 508612
-rect 1388 508124 18224 508148
-rect 1040 508082 18224 508124
-rect 34048 508082 47990 508408
-rect 1040 508050 47990 508082
-rect 1040 508016 1076 508050
-rect 1110 508016 47990 508050
-rect 1040 507948 47990 508016
-rect 1388 507936 47990 507948
-rect 17790 507870 47990 507936
-rect 34048 507680 47990 507870
-rect 41820 465164 42396 465210
-rect 12010 464980 36218 465044
-rect 41796 464980 42534 465164
-rect 1308 464958 1904 464962
-rect 12010 464958 42534 464980
-rect 1308 464938 42534 464958
-rect 1280 464892 42534 464938
-rect 1280 464786 1317 464892
-rect 1423 464786 42534 464892
-rect 1280 464720 42534 464786
-rect 1308 464718 42534 464720
-rect 1308 464714 12998 464718
-rect 1734 464688 12998 464714
-rect 35038 464634 42534 464718
-rect 41796 464282 42534 464634
-rect 41820 464174 42454 464282
-rect 41936 442502 42454 464174
-rect 46054 443352 47990 507680
-rect 41950 426232 42396 442502
-rect 46152 426512 47038 443352
-rect 41660 426014 42778 426232
-rect 41660 425188 41849 426014
-rect 42675 425188 42778 426014
-rect 41660 424942 42778 425188
-rect 45470 425825 48130 426512
-rect 41950 424874 42396 424942
-rect 45470 423919 45929 425825
-rect 47547 423919 48130 425825
-rect 45470 423444 48130 423919
-rect 86114 421766 86752 421910
-rect 40164 421718 44794 421764
-rect 47536 421718 87094 421766
-rect 31504 421694 87094 421718
-rect 12258 421678 87094 421694
-rect 1326 421674 87094 421678
-rect 1052 421608 87094 421674
-rect 1052 421574 1082 421608
-rect 1116 421574 87094 421608
-rect 1052 421516 87094 421574
-rect 1326 421510 87094 421516
-rect 1326 421494 31986 421510
-rect 12258 421486 31986 421494
-rect 40164 421482 44794 421510
-rect 47536 421488 87094 421510
-rect 86080 420832 86752 421488
-rect 41660 419072 42846 419336
-rect 41660 418390 41899 419072
-rect 42581 418390 42846 419072
-rect 41660 418178 42846 418390
-rect 41942 416032 42480 418178
-rect 35606 378752 36994 378954
-rect 14172 378540 36994 378752
-rect 1396 378492 1600 378500
-rect 1786 378492 36994 378540
-rect 1396 378402 36994 378492
-rect 1396 378368 1451 378402
-rect 1485 378368 36994 378402
-rect 1396 378264 36994 378368
-rect 1786 378236 36994 378264
-rect 14172 378112 36994 378236
-rect 32172 335486 32496 335558
-rect 28860 335424 32496 335486
-rect 10856 335392 32496 335424
-rect 1434 335252 1730 335338
-rect 6558 335272 32496 335392
-rect 2098 335252 32496 335272
-rect 1434 335240 32496 335252
-rect 1434 335062 1470 335240
-rect 1648 335174 32496 335240
-rect 1648 335074 7088 335174
-rect 10856 335112 29920 335174
-rect 1648 335062 1730 335074
-rect 1434 334992 1730 335062
-rect 2098 335054 7088 335074
-rect 32172 334974 32496 335174
-rect 32172 322958 32560 334974
-rect 32106 322634 32560 322958
-rect 32106 294014 32236 322634
-rect 32106 292560 32348 294014
-rect 28540 292024 28614 292088
-rect 28256 292012 28622 292024
-rect 1210 292006 1346 292008
-rect 1708 292006 28622 292012
-rect 1210 291982 28622 292006
-rect 1210 291948 1250 291982
-rect 1284 291948 28622 291982
-rect 1210 291910 28622 291948
-rect 1210 291876 1250 291910
-rect 1284 291876 28622 291910
-rect 1210 291848 28622 291876
-rect 1238 291840 28622 291848
-rect 1708 291776 28622 291840
-rect 1708 291750 28614 291776
-rect 28500 291716 28614 291750
-rect 1478 248988 2134 248998
-rect 1478 248986 2176 248988
-rect 1478 248946 13250 248986
-rect 27000 248976 27368 249020
-rect 27000 248964 27428 248976
-rect 20984 248962 27428 248964
-rect 20984 248946 27057 248962
-rect 1478 248917 27057 248946
-rect 1478 248883 1504 248917
-rect 1538 248883 1576 248917
-rect 1610 248883 27057 248917
-rect 1478 248822 27057 248883
-rect 1478 248820 2176 248822
-rect 1520 248810 2176 248820
-rect 12604 248784 27057 248822
-rect 27307 248784 27428 248962
-rect 12604 248782 27428 248784
-rect 27000 248722 27428 248782
-rect 27000 248690 27368 248722
-rect 28540 235124 28614 291716
-rect 32122 265398 32348 292560
-rect 32122 264580 32380 265398
-rect 32154 250476 32380 264580
-rect 32090 250284 32380 250476
-rect 29152 248914 29456 248964
-rect 29152 248736 29220 248914
-rect 29398 248736 29456 248914
-rect 29152 248706 29456 248736
-rect 28540 235100 28634 235124
-rect 28580 234270 28634 235100
-rect 29192 234566 29314 248706
-rect 32090 235686 32316 250284
-rect 35606 249642 36994 378112
-rect 41950 366394 42396 416032
-rect 45196 414571 47856 415122
-rect 45196 412665 45757 414571
-rect 47375 412665 47856 414571
-rect 45196 412054 47856 412665
-rect 45264 386360 45606 412054
-rect 41894 366122 42396 366394
-rect 45196 384980 45606 386360
-rect 41894 289002 42340 366122
-rect 45196 295526 45600 384980
-rect 86080 306970 86664 420832
-rect 86080 303878 86746 306970
-rect 45154 295098 45600 295526
-rect 42024 256962 42302 289002
-rect 35376 249272 36994 249642
-rect 41996 256738 42302 256962
-rect 35376 235714 36648 249272
-rect 41996 245398 42274 256738
-rect 45154 250810 45558 295098
-rect 86366 284952 86746 303878
-rect 86330 284286 86746 284952
-rect 86330 262694 86710 284286
-rect 86266 262268 86710 262694
-rect 45154 249138 45752 250810
-rect 41968 244896 42274 245398
-rect 41968 236116 42246 244896
-rect 41940 235758 42246 236116
-rect 32090 235362 32418 235686
-rect 29174 234444 29314 234566
-rect 32152 234446 32418 235362
-rect 35676 234936 36022 235714
-rect 41940 235030 42230 235758
-rect 45248 235474 45752 249138
-rect 86266 240392 86646 262268
-rect 86266 240010 86738 240392
-rect 86418 235878 86738 240010
-rect 86388 235814 86738 235878
-rect 86388 235638 86676 235814
-rect 45250 235167 45618 235474
-rect 86388 235460 86463 235638
-rect 86569 235460 86676 235638
-rect 86388 235434 86676 235460
-rect 45250 235061 45339 235167
-rect 45517 235061 45618 235167
-rect 35678 234648 35914 234936
-rect 41940 234861 42236 235030
-rect 45250 235016 45618 235061
-rect 45250 234948 45614 235016
-rect 41940 234755 42024 234861
-rect 42130 234755 42236 234861
-rect 41940 234676 42236 234755
-rect 35654 234583 35986 234648
-rect 35654 234477 35717 234583
-rect 35895 234477 35986 234583
-rect 29174 234216 29266 234444
-rect 32152 234430 32434 234446
-rect 32156 234369 32434 234430
-rect 35654 234422 35986 234477
-rect 32156 234263 32246 234369
-rect 32352 234263 32434 234369
-rect 29158 234188 29278 234216
-rect 29158 234154 29199 234188
-rect 29233 234154 29278 234188
-rect 32156 234174 32434 234263
-rect 29158 234124 29278 234154
-rect 41944 233739 42200 233802
-rect 29162 233686 29262 233712
-rect 29162 233652 29196 233686
-rect 29230 233652 29262 233686
-rect 29162 233630 29262 233652
-rect 41944 233633 42006 233739
-rect 42112 233633 42200 233739
-rect 29184 233074 29246 233630
-rect 41944 233564 42200 233633
-rect 45254 233655 45620 233742
-rect 32254 233244 32334 233256
-rect 32220 233191 32390 233244
-rect 32220 233157 32250 233191
-rect 32284 233157 32322 233191
-rect 32356 233157 32390 233191
-rect 32220 233116 32390 233157
-rect 28944 232638 28982 232674
-rect 32254 232594 32334 233116
-rect 35696 232627 35934 232672
-rect 28750 232528 28856 232566
-rect 28750 232494 28785 232528
-rect 28819 232494 28856 232528
-rect 28750 232468 28856 232494
-rect 35696 232521 35765 232627
-rect 35871 232521 35934 232627
-rect 35696 232470 35934 232521
-rect 35756 231476 35846 232470
-rect 41998 228770 42132 233564
-rect 45254 233477 45343 233655
-rect 45521 233477 45620 233655
-rect 86392 233741 86686 233800
-rect 86392 233635 86457 233741
-rect 86563 233635 86686 233741
-rect 86392 233562 86686 233635
-rect 45254 233422 45620 233477
-rect 41992 228688 42160 228770
-rect 41992 228654 42046 228688
-rect 42080 228654 42160 228688
-rect 41992 228598 42160 228654
-rect 45314 228638 45568 233422
-rect 86446 232544 86604 233562
-rect 86436 232032 86632 232544
-rect 86436 231926 86484 232032
-rect 86590 231926 86632 232032
-rect 86436 231880 86632 231926
-rect 86428 228906 86626 228948
-rect 86428 228800 86475 228906
-rect 86581 228800 86626 228906
-rect 86428 228756 86626 228800
-rect 41990 228340 42160 228376
-rect 41990 228306 42048 228340
-rect 42082 228306 42160 228340
-rect 41990 228234 42160 228306
-rect 42036 223014 42082 228234
-rect 45318 223760 45474 228638
-rect 86474 228184 86574 228756
-rect 45240 223688 45566 223760
-rect 45240 223582 45302 223688
-rect 45480 223582 45566 223688
-rect 45240 223512 45566 223582
-rect 45318 223014 45474 223022
-rect 45260 222954 45534 223014
-rect 45260 222848 45330 222954
-rect 45436 222848 45534 222954
-rect 45260 222790 45534 222848
-rect 45318 217796 45474 222790
-rect 45308 217598 45474 217796
-rect 45308 212510 45464 217598
-rect 45306 212372 45464 212510
-rect 45306 210400 45426 212372
-rect 45306 210354 45466 210400
-rect 45412 210352 45466 210354
-rect 230072 179868 230166 180094
-rect 230074 179422 230156 179868
-rect 230074 179324 230166 179422
-rect 230082 177260 230166 179324
-rect 230084 176058 230162 177260
-rect 230080 173642 230200 176058
-rect 230046 158416 230234 173642
-rect 230036 158212 230234 158416
-rect 230036 152361 230218 158212
-rect 230036 152255 230079 152361
-rect 230185 152255 230218 152361
-rect 230036 152248 230218 152255
-rect 230040 152206 230212 152248
-rect 223454 151670 223526 151896
-rect 223390 151658 223526 151670
-rect 223390 151624 223403 151658
-rect 223437 151624 223526 151658
-rect 223390 151618 223526 151624
-rect 230050 151745 230232 151788
-rect 230050 151639 230087 151745
-rect 230193 151639 230232 151745
-rect 223394 151218 223516 151236
-rect 223394 151184 223405 151218
-rect 223439 151184 223516 151218
-rect 223394 151168 223516 151184
-rect 223464 151058 223516 151168
-rect 230050 151124 230232 151639
-rect 223464 150824 223514 151058
-rect 223466 150572 223508 150824
-rect 223464 150556 223508 150572
-rect 223464 150150 223506 150556
-rect 223464 144986 223528 150150
-rect 223464 141836 223524 144986
-rect 215750 123988 215830 125568
-rect 215722 123944 215860 123988
-rect 215722 123910 215774 123944
-rect 215808 123910 215860 123944
-rect 215722 123854 215860 123910
-rect 215750 123852 215830 123854
-rect 215722 123506 215860 123558
-rect 215722 123472 215770 123506
-rect 215804 123472 215860 123506
-rect 215722 123424 215860 123472
-rect 215744 122952 215830 123424
-rect 219388 123230 219598 123902
-rect 215644 121622 215932 122952
-rect 157096 121566 200074 121594
-rect 213632 121566 216026 121622
-rect 34792 121478 39042 121506
-rect 45868 121478 50118 121536
-rect 157096 121478 216026 121566
-rect 13216 121448 17466 121478
-rect 34792 121448 50118 121478
-rect 61214 121448 65464 121478
-rect 68830 121448 73080 121478
-rect 94098 121448 98348 121478
-rect 101712 121448 113520 121478
-rect 153316 121448 216026 121478
-rect 5658 121424 17466 121448
-rect 1760 121420 17466 121424
-rect 24264 121420 28514 121448
-rect 31504 121420 73080 121448
-rect 90262 121420 113520 121448
-rect 116338 121420 123876 121448
-rect 1760 121414 73080 121420
-rect 1326 121392 73080 121414
-rect 75608 121392 83146 121420
-rect 86166 121392 123876 121420
-rect 126894 121392 131144 121448
-rect 138288 121420 146288 121448
-rect 149510 121420 216026 121448
-rect 138288 121392 216026 121420
-rect 1326 121299 216026 121392
-rect 1326 121265 1377 121299
-rect 1411 121276 216026 121299
-rect 1411 121265 35754 121276
-rect 1326 121248 35754 121265
-rect 38312 121248 216026 121276
-rect 1326 121218 13572 121248
-rect 17052 121218 35754 121248
-rect 46474 121218 62148 121248
-rect 65166 121218 69416 121248
-rect 71714 121218 102126 121248
-rect 112760 121218 153760 121248
-rect 157096 121218 216026 121248
-rect 1326 121194 6010 121218
-rect 1326 121192 1940 121194
-rect 17052 121190 24850 121218
-rect 27898 121190 32148 121218
-rect 46474 121190 50724 121218
-rect 71714 121190 90416 121218
-rect 71714 121162 75964 121190
-rect 82762 121162 87012 121190
-rect 94126 121132 98376 121218
-rect 112760 121190 117010 121218
-rect 123462 121162 127712 121218
-rect 130702 121162 138674 121218
-rect 145760 121190 150010 121218
-rect 199556 121190 216026 121218
-rect 219390 115908 219452 123230
-rect 219376 110454 219472 115908
-rect 219376 110292 219554 110454
-rect 219384 82632 219554 110292
-rect 1322 78178 2024 78182
-rect 1322 78162 2042 78178
-rect 1322 78120 7396 78162
-rect 107308 78120 108944 78276
-rect 219344 78120 219688 82632
-rect 1322 78094 108944 78120
-rect 1322 78060 1379 78094
-rect 1413 78060 108944 78094
-rect 1322 78022 108944 78060
-rect 1322 77988 1379 78022
-rect 1413 77988 108944 78022
-rect 1322 77946 108944 77988
-rect 1340 77944 108944 77946
-rect 1340 77942 3194 77944
-rect 1792 77924 3194 77942
-rect 6570 77912 108944 77944
-rect 107308 77846 108944 77912
-rect 205854 77846 220472 78120
-rect 107068 77638 220472 77846
-rect 107308 77500 108944 77638
-rect 205854 77316 220472 77638
-rect 219344 77296 219688 77316
-rect 223440 52746 223570 141836
-rect 230044 91166 230250 151124
-rect 25162 34966 135052 34980
-rect 1442 34914 2048 34926
-rect 2804 34914 135052 34966
-rect 1442 34842 135052 34914
-rect 1442 34808 1473 34842
-rect 1507 34808 135052 34842
-rect 1442 34754 135052 34808
-rect 223418 34774 223602 52746
-rect 1442 34736 2934 34754
-rect 1442 34732 2048 34736
-rect 25162 34696 135052 34754
-rect 222918 34696 223756 34774
-rect 133346 34554 223756 34696
-rect 222918 34460 223756 34554
-rect 223418 34408 223602 34460
-rect 230038 24152 230352 91166
-rect 10676 13808 11714 13994
-rect 230054 13866 230334 24152
-rect 229026 13808 230364 13866
-rect 10676 13562 230364 13808
-rect 2508 13548 230364 13562
-rect 1320 13494 230364 13548
-rect 1048 13429 230364 13494
-rect 1048 13395 1073 13429
-rect 1107 13395 230364 13429
-rect 1048 13336 230364 13395
-rect 1054 13334 230364 13336
-rect 1320 13322 230364 13334
-rect 2508 13310 230364 13322
-rect 2508 13292 12146 13310
-rect 10676 13016 11714 13292
-rect 229026 13274 230364 13310
-rect 230054 13182 230334 13274
-<< viali >>
-rect 1076 508016 1110 508050
-rect 1317 464786 1423 464892
-rect 41849 425188 42675 426014
-rect 45929 423919 47547 425825
-rect 1082 421574 1116 421608
-rect 41899 418390 42581 419072
-rect 1451 378368 1485 378402
-rect 1470 335062 1648 335240
-rect 1250 291948 1284 291982
-rect 1250 291876 1284 291910
-rect 1504 248883 1538 248917
-rect 1576 248883 1610 248917
-rect 27057 248784 27307 248962
-rect 29220 248736 29398 248914
-rect 45757 412665 47375 414571
-rect 86463 235460 86569 235638
-rect 45339 235061 45517 235167
-rect 42024 234755 42130 234861
-rect 35717 234477 35895 234583
-rect 32246 234263 32352 234369
-rect 29199 234154 29233 234188
-rect 29196 233652 29230 233686
-rect 42006 233633 42112 233739
-rect 32250 233157 32284 233191
-rect 32322 233157 32356 233191
-rect 28785 232494 28819 232528
-rect 35765 232521 35871 232627
-rect 45343 233477 45521 233655
-rect 86457 233635 86563 233741
-rect 42046 228654 42080 228688
-rect 86484 231926 86590 232032
-rect 86475 228800 86581 228906
-rect 42048 228306 42082 228340
-rect 45302 223582 45480 223688
-rect 45330 222848 45436 222954
-rect 230079 152255 230185 152361
-rect 223403 151624 223437 151658
-rect 230087 151639 230193 151745
-rect 223405 151184 223439 151218
-rect 215774 123910 215808 123944
-rect 215770 123472 215804 123506
-rect 1377 121265 1411 121299
-rect 1379 78060 1413 78094
-rect 1379 77988 1413 78022
-rect 1473 34808 1507 34842
-rect 1073 13395 1107 13429
-<< metal1 >>
-rect 674 508061 1152 508092
-rect 674 508009 691 508061
-rect 743 508009 755 508061
-rect 807 508050 1152 508061
-rect 807 508016 1076 508050
-rect 1110 508016 1152 508050
-rect 807 508009 1152 508016
-rect 674 507972 1152 508009
-rect 858 464901 1446 464918
-rect 858 464785 880 464901
-rect 996 464892 1446 464901
-rect 996 464786 1317 464892
-rect 1423 464786 1446 464892
-rect 996 464785 1446 464786
-rect 858 464744 1446 464785
-rect 41688 426014 42818 426226
-rect 41688 425188 41849 426014
-rect 42675 425188 42818 426014
-rect 744 421621 1154 421646
-rect 744 421569 776 421621
-rect 828 421608 1154 421621
-rect 828 421574 1082 421608
-rect 1116 421574 1154 421608
-rect 828 421569 1154 421574
-rect 744 421538 1154 421569
-rect 41688 419072 42818 425188
-rect 45402 425825 48130 426308
-rect 45402 424738 45929 425825
-rect 41688 418390 41899 419072
-rect 42581 418390 42818 419072
-rect 41688 418094 42818 418390
-rect 45264 423919 45929 424738
-rect 47547 423919 48130 425825
-rect 45264 423512 48130 423919
-rect 45264 415122 47514 423512
-rect 45196 414571 47856 415122
-rect 45196 412665 45757 414571
-rect 47375 412665 47856 414571
-rect 45196 412054 47856 412665
-rect 1372 378452 1536 378454
-rect 812 378404 1536 378452
-rect 812 378352 849 378404
-rect 901 378352 913 378404
-rect 965 378402 1536 378404
-rect 965 378368 1451 378402
-rect 1485 378368 1536 378402
-rect 965 378352 1536 378368
-rect 812 378310 1536 378352
-rect 736 335276 980 335306
-rect 736 335240 1676 335276
-rect 736 335210 1470 335240
-rect 736 335094 800 335210
-rect 916 335094 1470 335210
-rect 736 335062 1470 335094
-rect 1648 335062 1676 335240
-rect 736 335030 1676 335062
-rect 736 335014 980 335030
-rect 832 291997 1318 292004
-rect 832 291945 863 291997
-rect 915 291982 1318 291997
-rect 915 291948 1250 291982
-rect 1284 291948 1318 291982
-rect 915 291945 1318 291948
-rect 832 291933 1318 291945
-rect 832 291881 863 291933
-rect 915 291910 1318 291933
-rect 915 291881 1250 291910
-rect 832 291876 1250 291881
-rect 1284 291876 1318 291910
-rect 832 291854 1318 291876
-rect 840 248936 1632 248964
-rect 840 248884 856 248936
-rect 908 248884 920 248936
-rect 972 248917 1632 248936
-rect 972 248884 1504 248917
-rect 840 248883 1504 248884
-rect 1538 248883 1576 248917
-rect 1610 248883 1632 248917
-rect 840 248840 1632 248883
-rect 26962 248962 29600 249046
-rect 26962 248784 27057 248962
-rect 27307 248914 29600 248962
-rect 27307 248784 29220 248914
-rect 26962 248736 29220 248784
-rect 29398 248736 29600 248914
-rect 26962 248618 29600 248736
-rect 86404 235638 86644 235662
-rect 86404 235460 86463 235638
-rect 86569 235460 86644 235638
-rect 86404 235360 86644 235460
-rect 86402 235332 86644 235360
-rect 45264 235167 45628 235248
-rect 45264 235061 45339 235167
-rect 45517 235061 45628 235167
-rect 41960 234861 42190 234940
-rect 41960 234755 42024 234861
-rect 42130 234755 42190 234861
-rect 45264 234796 45628 235061
-rect 35682 234583 35936 234634
-rect 35682 234477 35717 234583
-rect 35895 234477 35936 234583
-rect 32196 234369 32414 234418
-rect 32196 234263 32246 234369
-rect 32352 234263 32414 234369
-rect 35682 234324 35936 234477
-rect 29148 234188 29288 234220
-rect 29148 234154 29199 234188
-rect 29233 234154 29288 234188
-rect 29148 234128 29288 234154
-rect 29146 234104 29288 234128
-rect 32196 234206 32414 234263
-rect 35678 234260 35936 234324
-rect 41960 234620 42190 234755
-rect 29146 233686 29276 234104
-rect 32196 234102 32406 234206
-rect 29146 233652 29196 233686
-rect 29230 233652 29276 233686
-rect 29146 233622 29276 233652
-rect 32212 233256 32390 234102
-rect 32204 233191 32398 233256
-rect 32204 233157 32250 233191
-rect 32284 233157 32322 233191
-rect 32356 233157 32398 233191
-rect 32204 233096 32398 233157
-rect 35678 232627 35934 234260
-rect 41960 233739 42186 234620
-rect 45260 233742 45636 234796
-rect 41960 233633 42006 233739
-rect 42112 233633 42186 233739
-rect 41960 233582 42186 233633
-rect 45254 233655 45636 233742
-rect 45254 233477 45343 233655
-rect 45521 233498 45636 233655
-rect 86402 233741 86638 235332
-rect 86402 233635 86457 233741
-rect 86563 233635 86638 233741
-rect 86402 233570 86638 233635
-rect 45521 233477 45620 233498
-rect 45254 233422 45620 233477
-rect 28750 232528 28862 232580
-rect 28750 232494 28785 232528
-rect 28819 232494 28862 232528
-rect 28750 232466 28862 232494
-rect 35678 232521 35765 232627
-rect 35871 232521 35934 232627
-rect 35678 232484 35934 232521
-rect 28754 232194 28858 232466
-rect 28744 232154 28882 232194
-rect 28744 232102 28784 232154
-rect 28836 232102 28882 232154
-rect 28744 232058 28882 232102
-rect 86416 232032 86666 232072
-rect 86416 231926 86484 232032
-rect 86590 231926 86666 232032
-rect 86416 231876 86666 231926
-rect 86438 228940 86616 231876
-rect 86434 228906 86624 228940
-rect 86434 228800 86475 228906
-rect 86581 228800 86624 228906
-rect 42012 228688 42114 228736
-rect 86434 228704 86624 228800
-rect 42012 228654 42046 228688
-rect 42080 228654 42114 228688
-rect 42012 228340 42114 228654
-rect 42012 228306 42048 228340
-rect 42082 228306 42114 228340
-rect 42012 228260 42114 228306
-rect 45254 223688 45552 223756
-rect 45254 223582 45302 223688
-rect 45480 223582 45552 223688
-rect 45254 222954 45552 223582
-rect 45254 222854 45330 222954
-rect 45266 222848 45330 222854
-rect 45436 222854 45552 222954
-rect 45436 222848 45538 222854
-rect 45266 222812 45538 222848
-rect 230008 152361 230260 152390
-rect 230008 152255 230079 152361
-rect 230185 152255 230260 152361
-rect 230008 151810 230260 152255
-rect 230008 151745 230278 151810
-rect 230008 151718 230087 151745
-rect 223388 151658 223452 151670
-rect 223388 151624 223403 151658
-rect 223437 151624 223452 151658
-rect 223388 151618 223452 151624
-rect 230012 151639 230087 151718
-rect 230193 151639 230278 151745
-rect 223392 151236 223444 151618
-rect 230012 151600 230278 151639
-rect 223392 151218 223450 151236
-rect 223392 151186 223405 151218
-rect 223396 151184 223405 151186
-rect 223439 151184 223450 151218
-rect 223396 151168 223450 151184
-rect 215720 123944 215896 123990
-rect 215720 123910 215774 123944
-rect 215808 123910 215896 123944
-rect 215720 123506 215896 123910
-rect 215720 123472 215770 123506
-rect 215804 123472 215896 123506
-rect 215720 123408 215896 123472
-rect 730 121313 1458 121352
-rect 730 121261 762 121313
-rect 814 121261 826 121313
-rect 878 121299 1458 121313
-rect 878 121265 1377 121299
-rect 1411 121265 1458 121299
-rect 878 121261 1458 121265
-rect 730 121218 1458 121261
-rect 784 78094 1460 78116
-rect 784 78067 1379 78094
-rect 784 78015 796 78067
-rect 848 78015 860 78067
-rect 912 78060 1379 78067
-rect 1413 78060 1460 78094
-rect 912 78022 1460 78060
-rect 912 78015 1379 78022
-rect 784 77988 1379 78015
-rect 1413 77988 1460 78022
-rect 784 77972 1460 77988
-rect 808 34859 1536 34878
-rect 808 34807 849 34859
-rect 901 34842 1536 34859
-rect 901 34808 1473 34842
-rect 1507 34808 1536 34842
-rect 901 34807 1536 34808
-rect 808 34770 1536 34807
-rect 660 13438 1130 13460
-rect 660 13386 702 13438
-rect 754 13429 1130 13438
-rect 754 13395 1073 13429
-rect 1107 13395 1130 13429
-rect 754 13386 1130 13395
-rect 660 13360 1130 13386
-<< via1 >>
-rect 691 508009 743 508061
-rect 755 508009 807 508061
-rect 880 464785 996 464901
-rect 776 421569 828 421621
-rect 849 378352 901 378404
-rect 913 378352 965 378404
-rect 800 335094 916 335210
-rect 863 291945 915 291997
-rect 863 291881 915 291933
-rect 856 248884 908 248936
-rect 920 248884 972 248936
-rect 28784 232102 28836 232154
-rect 762 121261 814 121313
-rect 826 121261 878 121313
-rect 796 78015 848 78067
-rect 860 78015 912 78067
-rect 849 34807 901 34859
-rect 702 13386 754 13438
-<< metal2 >>
-rect 342 508066 830 508114
-rect 342 508010 376 508066
-rect 432 508061 830 508066
-rect 432 508010 691 508061
-rect 342 508009 691 508010
-rect 743 508009 755 508061
-rect 807 508009 830 508061
-rect 342 507944 830 508009
-rect 796 464926 1006 464934
-rect 326 464901 1006 464926
-rect 326 464843 880 464901
-rect 326 464787 377 464843
-rect 433 464787 880 464843
-rect 326 464785 880 464787
-rect 996 464785 1006 464901
-rect 326 464718 1006 464785
-rect 374 421625 856 421668
-rect 374 421569 396 421625
-rect 452 421621 856 421625
-rect 452 421569 776 421621
-rect 828 421569 856 421621
-rect 374 421522 856 421569
-rect 308 378404 1008 378486
-rect 308 378402 849 378404
-rect 308 378346 378 378402
-rect 434 378352 849 378402
-rect 901 378352 913 378404
-rect 965 378352 1008 378404
-rect 434 378346 1008 378352
-rect 308 378272 1008 378346
-rect 296 335256 494 335298
-rect 296 335210 968 335256
-rect 296 335177 800 335210
-rect 296 335121 369 335177
-rect 425 335121 800 335177
-rect 296 335094 800 335121
-rect 916 335094 968 335210
-rect 296 335058 968 335094
-rect 296 335038 494 335058
-rect 698 292000 938 292006
-rect 320 291997 938 292000
-rect 320 291963 863 291997
-rect 320 291907 365 291963
-rect 421 291945 863 291963
-rect 915 291945 938 291997
-rect 421 291933 938 291945
-rect 421 291907 863 291933
-rect 320 291881 863 291907
-rect 915 291881 938 291933
-rect 320 291862 938 291881
-rect 302 248936 996 249006
-rect 302 248934 856 248936
-rect 302 248878 327 248934
-rect 383 248878 407 248934
-rect 463 248884 856 248934
-rect 908 248884 920 248936
-rect 972 248884 996 248936
-rect 463 248878 996 248884
-rect 302 248810 996 248878
-rect 28748 232162 28880 232186
-rect 28748 232154 29326 232162
-rect 28748 232102 28784 232154
-rect 28836 232102 29326 232154
-rect 28748 232100 29326 232102
-rect 28748 232096 28888 232100
-rect 28748 232058 28880 232096
-rect 2946 175569 4258 175780
-rect 2946 174953 3108 175569
-rect 3964 174953 4258 175569
-rect 2946 174794 4258 174953
-rect 2946 174760 7564 174794
-rect 2946 174724 13834 174760
-rect 2946 174700 21328 174724
-rect 22726 174704 27330 174712
-rect 22726 174700 28900 174704
-rect 2946 174648 28900 174700
-rect 2946 174636 22896 174648
-rect 27278 174640 28900 174648
-rect 2946 174620 13834 174636
-rect 2946 174588 4258 174620
-rect 7402 174588 13834 174620
-rect 312 121313 898 121392
-rect 312 121312 762 121313
-rect 312 121256 365 121312
-rect 421 121261 762 121312
-rect 814 121261 826 121313
-rect 878 121261 898 121313
-rect 421 121256 898 121261
-rect 312 121188 898 121256
-rect 336 78089 924 78158
-rect 336 78033 384 78089
-rect 440 78067 924 78089
-rect 440 78033 796 78067
-rect 336 78015 796 78033
-rect 848 78015 860 78067
-rect 912 78015 924 78067
-rect 336 77948 924 78015
-rect 332 34869 954 34918
-rect 332 34813 373 34869
-rect 429 34859 954 34869
-rect 429 34813 849 34859
-rect 332 34807 849 34813
-rect 901 34807 954 34859
-rect 332 34744 954 34807
-rect 328 13440 788 13494
-rect 328 13384 370 13440
-rect 426 13438 788 13440
-rect 426 13386 702 13438
-rect 754 13386 788 13438
-rect 426 13384 788 13386
-rect 328 13334 788 13384
-rect 524 -800 636 480
-rect 1706 -800 1818 480
-rect 2888 -800 3000 480
-rect 4070 -800 4182 480
-rect 5252 -800 5364 480
-rect 6434 -800 6546 480
-rect 7616 -800 7728 480
-rect 8798 -800 8910 480
-rect 9980 -800 10092 480
-rect 11162 -800 11274 480
-rect 12344 -800 12456 480
-rect 13526 -800 13638 480
-rect 14708 -800 14820 480
-rect 15890 -800 16002 480
-rect 17072 -800 17184 480
-rect 18254 -800 18366 480
-rect 19436 -800 19548 480
-rect 20618 -800 20730 480
-rect 21800 -800 21912 480
-rect 22982 -800 23094 480
-rect 24164 -800 24276 480
-rect 25346 -800 25458 480
-rect 26528 -800 26640 480
-rect 27710 -800 27822 480
-rect 28892 -800 29004 480
-rect 30074 -800 30186 480
-rect 31256 -800 31368 480
-rect 32438 -800 32550 480
-rect 33620 -800 33732 480
-rect 34802 -800 34914 480
-rect 35984 -800 36096 480
-rect 37166 -800 37278 480
-rect 38348 -800 38460 480
-rect 39530 -800 39642 480
-rect 40712 -800 40824 480
-rect 41894 -800 42006 480
-rect 43076 -800 43188 480
-rect 44258 -800 44370 480
-rect 45440 -800 45552 480
-rect 46622 -800 46734 480
-rect 47804 -800 47916 480
-rect 48986 -800 49098 480
-rect 50168 -800 50280 480
-rect 51350 -800 51462 480
-rect 52532 -800 52644 480
-rect 53714 -800 53826 480
-rect 54896 -800 55008 480
-rect 56078 -800 56190 480
-rect 57260 -800 57372 480
-rect 58442 -800 58554 480
-rect 59624 -800 59736 480
-rect 60806 -800 60918 480
-rect 61988 -800 62100 480
-rect 63170 -800 63282 480
-rect 64352 -800 64464 480
-rect 65534 -800 65646 480
-rect 66716 -800 66828 480
-rect 67898 -800 68010 480
-rect 69080 -800 69192 480
-rect 70262 -800 70374 480
-rect 71444 -800 71556 480
-rect 72626 -800 72738 480
-rect 73808 -800 73920 480
-rect 74990 -800 75102 480
-rect 76172 -800 76284 480
-rect 77354 -800 77466 480
-rect 78536 -800 78648 480
-rect 79718 -800 79830 480
-rect 80900 -800 81012 480
-rect 82082 -800 82194 480
-rect 83264 -800 83376 480
-rect 84446 -800 84558 480
-rect 85628 -800 85740 480
-rect 86810 -800 86922 480
-rect 87992 -800 88104 480
-rect 89174 -800 89286 480
-rect 90356 -800 90468 480
-rect 91538 -800 91650 480
-rect 92720 -800 92832 480
-rect 93902 -800 94014 480
-rect 95084 -800 95196 480
-rect 96266 -800 96378 480
-rect 97448 -800 97560 480
-rect 98630 -800 98742 480
-rect 99812 -800 99924 480
-rect 100994 -800 101106 480
-rect 102176 -800 102288 480
-rect 103358 -800 103470 480
-rect 104540 -800 104652 480
-rect 105722 -800 105834 480
-rect 106904 -800 107016 480
-rect 108086 -800 108198 480
-rect 109268 -800 109380 480
-rect 110450 -800 110562 480
-rect 111632 -800 111744 480
-rect 112814 -800 112926 480
-rect 113996 -800 114108 480
-rect 115178 -800 115290 480
-rect 116360 -800 116472 480
-rect 117542 -800 117654 480
-rect 118724 -800 118836 480
-rect 119906 -800 120018 480
-rect 121088 -800 121200 480
-rect 122270 -800 122382 480
-rect 123452 -800 123564 480
-rect 124634 -800 124746 480
-rect 125816 -800 125928 480
-rect 126998 -800 127110 480
-rect 128180 -800 128292 480
-rect 129362 -800 129474 480
-rect 130544 -800 130656 480
-rect 131726 -800 131838 480
-rect 132908 -800 133020 480
-rect 134090 -800 134202 480
-rect 135272 -800 135384 480
-rect 136454 -800 136566 480
-rect 137636 -800 137748 480
-rect 138818 -800 138930 480
-rect 140000 -800 140112 480
-rect 141182 -800 141294 480
-rect 142364 -800 142476 480
-rect 143546 -800 143658 480
-rect 144728 -800 144840 480
-rect 145910 -800 146022 480
-rect 147092 -800 147204 480
-rect 148274 -800 148386 480
-rect 149456 -800 149568 480
-rect 150638 -800 150750 480
-rect 151820 -800 151932 480
-rect 153002 -800 153114 480
-rect 154184 -800 154296 480
-rect 155366 -800 155478 480
-rect 156548 -800 156660 480
-rect 157730 -800 157842 480
-rect 158912 -800 159024 480
-rect 160094 -800 160206 480
-rect 161276 -800 161388 480
-rect 162458 -800 162570 480
-rect 163640 -800 163752 480
-rect 164822 -800 164934 480
-rect 166004 -800 166116 480
-rect 167186 -800 167298 480
-rect 168368 -800 168480 480
-rect 169550 -800 169662 480
-rect 170732 -800 170844 480
-rect 171914 -800 172026 480
-rect 173096 -800 173208 480
-rect 174278 -800 174390 480
-rect 175460 -800 175572 480
-rect 176642 -800 176754 480
-rect 177824 -800 177936 480
-rect 179006 -800 179118 480
-rect 180188 -800 180300 480
-rect 181370 -800 181482 480
-rect 182552 -800 182664 480
-rect 183734 -800 183846 480
-rect 184916 -800 185028 480
-rect 186098 -800 186210 480
-rect 187280 -800 187392 480
-rect 188462 -800 188574 480
-rect 189644 -800 189756 480
-rect 190826 -800 190938 480
-rect 192008 -800 192120 480
-rect 193190 -800 193302 480
-rect 194372 -800 194484 480
-rect 195554 -800 195666 480
-rect 196736 -800 196848 480
-rect 197918 -800 198030 480
-rect 199100 -800 199212 480
-rect 200282 -800 200394 480
-rect 201464 -800 201576 480
-rect 202646 -800 202758 480
-rect 203828 -800 203940 480
-rect 205010 -800 205122 480
-rect 206192 -800 206304 480
-rect 207374 -800 207486 480
-rect 208556 -800 208668 480
-rect 209738 -800 209850 480
-rect 210920 -800 211032 480
-rect 212102 -800 212214 480
-rect 213284 -800 213396 480
-rect 214466 -800 214578 480
-rect 215648 -800 215760 480
-rect 216830 -800 216942 480
-rect 218012 -800 218124 480
-rect 219194 -800 219306 480
-rect 220376 -800 220488 480
-rect 221558 -800 221670 480
-rect 222740 -800 222852 480
-rect 223922 -800 224034 480
-rect 225104 -800 225216 480
-rect 226286 -800 226398 480
-rect 227468 -800 227580 480
-rect 228650 -800 228762 480
-rect 229832 -800 229944 480
-rect 231014 -800 231126 480
-rect 232196 -800 232308 480
-rect 233378 -800 233490 480
-rect 234560 -800 234672 480
-rect 235742 -800 235854 480
-rect 236924 -800 237036 480
-rect 238106 -800 238218 480
-rect 239288 -800 239400 480
-rect 240470 -800 240582 480
-rect 241652 -800 241764 480
-rect 242834 -800 242946 480
-rect 244016 -800 244128 480
-rect 245198 -800 245310 480
-rect 246380 -800 246492 480
-rect 247562 -800 247674 480
-rect 248744 -800 248856 480
-rect 249926 -800 250038 480
-rect 251108 -800 251220 480
-rect 252290 -800 252402 480
-rect 253472 -800 253584 480
-rect 254654 -800 254766 480
-rect 255836 -800 255948 480
-rect 257018 -800 257130 480
-rect 258200 -800 258312 480
-rect 259382 -800 259494 480
-rect 260564 -800 260676 480
-rect 261746 -800 261858 480
-rect 262928 -800 263040 480
-rect 264110 -800 264222 480
-rect 265292 -800 265404 480
-rect 266474 -800 266586 480
-rect 267656 -800 267768 480
-rect 268838 -800 268950 480
-rect 270020 -800 270132 480
-rect 271202 -800 271314 480
-rect 272384 -800 272496 480
-rect 273566 -800 273678 480
-rect 274748 -800 274860 480
-rect 275930 -800 276042 480
-rect 277112 -800 277224 480
-rect 278294 -800 278406 480
-rect 279476 -800 279588 480
-rect 280658 -800 280770 480
-rect 281840 -800 281952 480
-rect 283022 -800 283134 480
-rect 284204 -800 284316 480
-rect 285386 -800 285498 480
-rect 286568 -800 286680 480
-rect 287750 -800 287862 480
-rect 288932 -800 289044 480
-rect 290114 -800 290226 480
-rect 291296 -800 291408 480
-rect 292478 -800 292590 480
-rect 293660 -800 293772 480
-rect 294842 -800 294954 480
-rect 296024 -800 296136 480
-rect 297206 -800 297318 480
-rect 298388 -800 298500 480
-rect 299570 -800 299682 480
-rect 300752 -800 300864 480
-rect 301934 -800 302046 480
-rect 303116 -800 303228 480
-rect 304298 -800 304410 480
-rect 305480 -800 305592 480
-rect 306662 -800 306774 480
-rect 307844 -800 307956 480
-rect 309026 -800 309138 480
-rect 310208 -800 310320 480
-rect 311390 -800 311502 480
-rect 312572 -800 312684 480
-rect 313754 -800 313866 480
-rect 314936 -800 315048 480
-rect 316118 -800 316230 480
-rect 317300 -800 317412 480
-rect 318482 -800 318594 480
-rect 319664 -800 319776 480
-rect 320846 -800 320958 480
-rect 322028 -800 322140 480
-rect 323210 -800 323322 480
-rect 324392 -800 324504 480
-rect 325574 -800 325686 480
-rect 326756 -800 326868 480
-rect 327938 -800 328050 480
-rect 329120 -800 329232 480
-rect 330302 -800 330414 480
-rect 331484 -800 331596 480
-rect 332666 -800 332778 480
-rect 333848 -800 333960 480
-rect 335030 -800 335142 480
-rect 336212 -800 336324 480
-rect 337394 -800 337506 480
-rect 338576 -800 338688 480
-rect 339758 -800 339870 480
-rect 340940 -800 341052 480
-rect 342122 -800 342234 480
-rect 343304 -800 343416 480
-rect 344486 -800 344598 480
-rect 345668 -800 345780 480
-rect 346850 -800 346962 480
-rect 348032 -800 348144 480
-rect 349214 -800 349326 480
-rect 350396 -800 350508 480
-rect 351578 -800 351690 480
-rect 352760 -800 352872 480
-rect 353942 -800 354054 480
-rect 355124 -800 355236 480
-rect 356306 -800 356418 480
-rect 357488 -800 357600 480
-rect 358670 -800 358782 480
-rect 359852 -800 359964 480
-rect 361034 -800 361146 480
-rect 362216 -800 362328 480
-rect 363398 -800 363510 480
-rect 364580 -800 364692 480
-rect 365762 -800 365874 480
-rect 366944 -800 367056 480
-rect 368126 -800 368238 480
-rect 369308 -800 369420 480
-rect 370490 -800 370602 480
-rect 371672 -800 371784 480
-rect 372854 -800 372966 480
-rect 374036 -800 374148 480
-rect 375218 -800 375330 480
-rect 376400 -800 376512 480
-rect 377582 -800 377694 480
-rect 378764 -800 378876 480
-rect 379946 -800 380058 480
-rect 381128 -800 381240 480
-rect 382310 -800 382422 480
-rect 383492 -800 383604 480
-rect 384674 -800 384786 480
-rect 385856 -800 385968 480
-rect 387038 -800 387150 480
-rect 388220 -800 388332 480
-rect 389402 -800 389514 480
-rect 390584 -800 390696 480
-rect 391766 -800 391878 480
-rect 392948 -800 393060 480
-rect 394130 -800 394242 480
-rect 395312 -800 395424 480
-rect 396494 -800 396606 480
-rect 397676 -800 397788 480
-rect 398858 -800 398970 480
-rect 400040 -800 400152 480
-rect 401222 -800 401334 480
-rect 402404 -800 402516 480
-rect 403586 -800 403698 480
-rect 404768 -800 404880 480
-rect 405950 -800 406062 480
-rect 407132 -800 407244 480
-rect 408314 -800 408426 480
-rect 409496 -800 409608 480
-rect 410678 -800 410790 480
-rect 411860 -800 411972 480
-rect 413042 -800 413154 480
-rect 414224 -800 414336 480
-rect 415406 -800 415518 480
-rect 416588 -800 416700 480
-rect 417770 -800 417882 480
-rect 418952 -800 419064 480
-rect 420134 -800 420246 480
-rect 421316 -800 421428 480
-rect 422498 -800 422610 480
-rect 423680 -800 423792 480
-rect 424862 -800 424974 480
-rect 426044 -800 426156 480
-rect 427226 -800 427338 480
-rect 428408 -800 428520 480
-rect 429590 -800 429702 480
-rect 430772 -800 430884 480
-rect 431954 -800 432066 480
-rect 433136 -800 433248 480
-rect 434318 -800 434430 480
-rect 435500 -800 435612 480
-rect 436682 -800 436794 480
-rect 437864 -800 437976 480
-rect 439046 -800 439158 480
-rect 440228 -800 440340 480
-rect 441410 -800 441522 480
-rect 442592 -800 442704 480
-rect 443774 -800 443886 480
-rect 444956 -800 445068 480
-rect 446138 -800 446250 480
-rect 447320 -800 447432 480
-rect 448502 -800 448614 480
-rect 449684 -800 449796 480
-rect 450866 -800 450978 480
-rect 452048 -800 452160 480
-rect 453230 -800 453342 480
-rect 454412 -800 454524 480
-rect 455594 -800 455706 480
-rect 456776 -800 456888 480
-rect 457958 -800 458070 480
-rect 459140 -800 459252 480
-rect 460322 -800 460434 480
-rect 461504 -800 461616 480
-rect 462686 -800 462798 480
-rect 463868 -800 463980 480
-rect 465050 -800 465162 480
-rect 466232 -800 466344 480
-rect 467414 -800 467526 480
-rect 468596 -800 468708 480
-rect 469778 -800 469890 480
-rect 470960 -800 471072 480
-rect 472142 -800 472254 480
-rect 473324 -800 473436 480
-rect 474506 -800 474618 480
-rect 475688 -800 475800 480
-rect 476870 -800 476982 480
-rect 478052 -800 478164 480
-rect 479234 -800 479346 480
-rect 480416 -800 480528 480
-rect 481598 -800 481710 480
-rect 482780 -800 482892 480
-rect 483962 -800 484074 480
-rect 485144 -800 485256 480
-rect 486326 -800 486438 480
-rect 487508 -800 487620 480
-rect 488690 -800 488802 480
-rect 489872 -800 489984 480
-rect 491054 -800 491166 480
-rect 492236 -800 492348 480
-rect 493418 -800 493530 480
-rect 494600 -800 494712 480
-rect 495782 -800 495894 480
-rect 496964 -800 497076 480
-rect 498146 -800 498258 480
-rect 499328 -800 499440 480
-rect 500510 -800 500622 480
-rect 501692 -800 501804 480
-rect 502874 -800 502986 480
-rect 504056 -800 504168 480
-rect 505238 -800 505350 480
-rect 506420 -800 506532 480
-rect 507602 -800 507714 480
-rect 508784 -800 508896 480
-rect 509966 -800 510078 480
-rect 511148 -800 511260 480
-rect 512330 -800 512442 480
-rect 513512 -800 513624 480
-rect 514694 -800 514806 480
-rect 515876 -800 515988 480
-rect 517058 -800 517170 480
-rect 518240 -800 518352 480
-rect 519422 -800 519534 480
-rect 520604 -800 520716 480
-rect 521786 -800 521898 480
-rect 522968 -800 523080 480
-rect 524150 -800 524262 480
-rect 525332 -800 525444 480
-rect 526514 -800 526626 480
-rect 527696 -800 527808 480
-rect 528878 -800 528990 480
-rect 530060 -800 530172 480
-rect 531242 -800 531354 480
-rect 532424 -800 532536 480
-rect 533606 -800 533718 480
-rect 534788 -800 534900 480
-rect 535970 -800 536082 480
-rect 537152 -800 537264 480
-rect 538334 -800 538446 480
-rect 539516 -800 539628 480
-rect 540698 -800 540810 480
-rect 541880 -800 541992 480
-rect 543062 -800 543174 480
-rect 544244 -800 544356 480
-rect 545426 -800 545538 480
-rect 546608 -800 546720 480
-rect 547790 -800 547902 480
-rect 548972 -800 549084 480
-rect 550154 -800 550266 480
-rect 551336 -800 551448 480
-rect 552518 -800 552630 480
-rect 553700 -800 553812 480
-rect 554882 -800 554994 480
-rect 556064 -800 556176 480
-rect 557246 -800 557358 480
-rect 558428 -800 558540 480
-rect 559610 -800 559722 480
-rect 560792 -800 560904 480
-rect 561974 -800 562086 480
-rect 563156 -800 563268 480
-rect 564338 -800 564450 480
-rect 565520 -800 565632 480
-rect 566702 -800 566814 480
-rect 567884 -800 567996 480
-rect 569066 -800 569178 480
-rect 570248 -800 570360 480
-rect 571430 -800 571542 480
-rect 572612 -800 572724 480
-rect 573794 -800 573906 480
-rect 574976 -800 575088 480
-rect 576158 -800 576270 480
-rect 577340 -800 577452 480
-rect 578522 -800 578634 480
-rect 579704 -800 579816 480
-rect 580886 -800 580998 480
-rect 582068 -800 582180 480
-rect 583250 -800 583362 480
-<< via2 >>
-rect 376 508010 432 508066
-rect 377 464787 433 464843
-rect 396 421569 452 421625
-rect 378 378346 434 378402
-rect 369 335121 425 335177
-rect 365 291907 421 291963
-rect 327 248878 383 248934
-rect 407 248878 463 248934
-rect 3108 174953 3964 175569
-rect 365 121256 421 121312
-rect 384 78033 440 78089
-rect 373 34813 429 34869
-rect 370 13384 426 13440
-<< metal3 >>
-rect 16194 702300 21194 704800
-rect 68194 702300 73194 704800
-rect 120194 702300 125194 704800
-rect 165594 702300 170594 704800
-rect 170894 702300 173094 704800
-rect 173394 702300 175594 704800
-rect 175894 702300 180894 704800
-rect 217294 702300 222294 704800
-rect 222594 702300 224794 704800
-rect 225094 702300 227294 704800
-rect 227594 702300 232594 704800
-rect 318994 702300 323994 704800
-rect 324294 702300 326494 704800
-rect 326794 702300 328994 704800
-rect 329294 702300 334294 704800
-rect 413394 702300 418394 704800
-rect 465394 702300 470394 704800
-rect 510594 702340 515394 704800
-rect 520594 702340 525394 704800
-rect 566594 702300 571594 704800
-rect -800 680242 1700 685242
-rect 120410 679704 124992 702300
-rect 120240 679290 124992 679704
-rect 120240 677386 120858 679290
-rect 124122 677386 124992 679290
-rect 582300 677984 584800 682984
-rect 120240 677350 124992 677386
-rect 120240 676552 124950 677350
-rect -800 645284 1660 648642
-rect -800 644260 163 645284
-rect 1347 644762 1660 645284
-rect 1347 644336 30974 644762
-rect 1347 644260 1660 644336
-rect -800 643842 1660 644260
-rect 582340 639784 584800 644584
-rect -800 633842 1660 638642
-rect 582340 629784 584800 634584
-rect 583520 589472 584800 589584
-rect 583520 588290 584800 588402
-rect 583520 587108 584800 587220
-rect 583520 585926 584800 586038
-rect 583520 584744 584800 584856
-rect 583520 583562 584800 583674
-rect -800 559442 1660 564242
-rect -800 549442 1660 554242
-rect 582340 550562 584800 555362
-rect 582340 540562 584800 545362
-rect -800 511530 480 511642
-rect -800 510348 480 510460
-rect -800 509166 480 509278
-rect -800 508066 480 508096
-rect -800 508010 376 508066
-rect 432 508010 480 508066
-rect -800 507984 480 508010
-rect -800 506802 480 506914
-rect -800 505620 480 505732
-rect 583520 500050 584800 500162
-rect 583520 498868 584800 498980
-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 -800 467126 480 467238
-rect -800 465944 480 466056
-rect -800 464843 480 464874
-rect -800 464787 377 464843
-rect 433 464787 480 464843
-rect -800 464762 480 464787
-rect -800 463580 480 463692
-rect -800 462398 480 462510
-rect 583520 455628 584800 455740
-rect 583520 454446 584800 454558
-rect 583520 453264 584800 453376
-rect 583520 452082 584800 452194
-rect 583520 450900 584800 451012
-rect 583520 449718 584800 449830
-rect -800 425086 480 425198
-rect -800 423904 480 424016
-rect -800 422722 480 422834
-rect -800 421625 480 421652
-rect -800 421569 396 421625
-rect 452 421569 480 421625
-rect -800 421540 480 421569
-rect -800 420358 480 420470
-rect -800 419176 480 419288
-rect 583520 411206 584800 411318
-rect 583520 410024 584800 410136
-rect 583520 408842 584800 408954
-rect 583520 407660 584800 407772
-rect 583520 406478 584800 406590
-rect 583520 405296 584800 405408
-rect -800 381864 480 381976
-rect -800 380682 480 380794
-rect -800 379500 480 379612
-rect -800 378402 480 378430
-rect -800 378346 378 378402
-rect 434 378346 480 378402
-rect -800 378318 480 378346
-rect -800 377136 480 377248
-rect -800 375954 480 376066
-rect 583520 364784 584800 364896
-rect 583520 363602 584800 363714
-rect 583520 362420 584800 362532
-rect 583520 361238 584800 361350
-rect 583520 360056 584800 360168
-rect 583520 358874 584800 358986
-rect -800 338642 480 338754
-rect -800 337460 480 337572
-rect -800 336278 480 336390
-rect 122 336274 478 336278
-rect -800 335177 480 335208
-rect -800 335121 369 335177
-rect 425 335121 480 335177
-rect -800 335096 480 335121
-rect -800 333914 480 334026
-rect -800 332732 480 332844
-rect 583520 319562 584800 319674
-rect 583520 318380 584800 318492
-rect 583520 317198 584800 317310
-rect 583520 316016 584800 316128
-rect 583520 314834 584800 314946
-rect 583520 313652 584800 313764
-rect -800 295420 480 295532
-rect -800 294238 480 294350
-rect -800 293056 480 293168
-rect -800 291963 480 291986
-rect -800 291907 365 291963
-rect 421 291907 480 291963
-rect -800 291874 480 291907
-rect -800 290692 480 290804
-rect -800 289510 480 289622
-rect 583520 275140 584800 275252
-rect 583520 273958 584800 274070
-rect 583520 272776 584800 272888
-rect 583520 271594 584800 271706
-rect 583520 270412 584800 270524
-rect 583520 269230 584800 269342
-rect -800 252398 480 252510
-rect -800 251216 480 251328
-rect -800 250034 480 250146
-rect -800 248934 480 248964
-rect -800 248878 327 248934
-rect 383 248878 407 248934
-rect 463 248878 480 248934
-rect -800 248852 480 248878
-rect -800 247670 480 247782
-rect -800 246488 480 246600
-rect 582340 235230 584800 240030
-rect 582340 225230 584800 230030
-rect -800 214888 1660 219688
-rect -800 204888 1660 209688
-rect 582340 191430 584800 196230
-rect 582340 181430 584800 186230
-rect -800 175696 1660 177688
-rect -800 175569 4126 175696
-rect -800 174953 3108 175569
-rect 3964 174953 4126 175569
-rect -800 174836 4126 174953
-rect -800 172888 1660 174836
-rect -800 162888 1660 167688
-rect 582340 146830 584800 151630
-rect 582340 136830 584800 141630
-rect -800 124776 480 124888
-rect -800 123594 480 123706
-rect -800 122412 480 122524
-rect -800 121312 480 121342
-rect -800 121256 365 121312
-rect 421 121256 480 121312
-rect -800 121230 480 121256
-rect -800 120048 480 120160
-rect -800 118866 480 118978
-rect 583520 95118 584800 95230
-rect 583520 93936 584800 94048
-rect 583520 92754 584800 92866
-rect 583520 91572 584800 91684
-rect -800 81554 480 81666
-rect -800 80372 480 80484
-rect -800 79190 480 79302
-rect -800 78089 480 78120
-rect -800 78033 384 78089
-rect 440 78033 480 78089
-rect -800 78008 480 78033
-rect -800 76826 480 76938
-rect -800 75644 480 75756
-rect 583520 50460 584800 50572
-rect 583520 49278 584800 49390
-rect 583520 48096 584800 48208
-rect 583520 46914 584800 47026
-rect -800 38332 480 38444
-rect -800 37150 480 37262
-rect -800 35968 480 36080
-rect -800 34869 480 34898
-rect -800 34813 373 34869
-rect 429 34813 480 34869
-rect -800 34786 480 34813
-rect -800 33604 480 33716
-rect -800 32422 480 32534
-rect 583520 24002 584800 24114
-rect 583520 22820 584800 22932
-rect 583520 21638 584800 21750
-rect 583520 20456 584800 20568
-rect 583520 19274 584800 19386
-rect 583520 18092 584800 18204
-rect -800 16910 480 17022
-rect 583520 16910 584800 17022
-rect -800 15728 480 15840
-rect 583520 15728 584800 15840
-rect -800 14546 480 14658
-rect 583520 14546 584800 14658
-rect -800 13440 480 13476
-rect -800 13384 370 13440
-rect 426 13384 480 13440
-rect -800 13364 480 13384
-rect 583520 13364 584800 13476
-rect -800 12182 480 12294
-rect 583520 12182 584800 12294
-rect -800 11000 480 11112
-rect 583520 11000 584800 11112
-rect -800 9818 480 9930
-rect 583520 9818 584800 9930
-rect -800 8636 480 8748
-rect 583520 8636 584800 8748
-rect -800 7454 480 7566
-rect 583520 7454 584800 7566
-rect -800 6272 480 6384
-rect 583520 6272 584800 6384
-rect -800 5090 480 5202
-rect 583520 5090 584800 5202
-rect -800 3908 480 4020
-rect 583520 3908 584800 4020
-rect -800 2726 480 2838
-rect 583520 2726 584800 2838
-rect -800 1544 480 1656
-rect 583520 1544 584800 1656
-<< via3 >>
-rect 120858 677386 124122 679290
-rect 163 644260 1347 645284
-<< metal4 >>
-rect 120366 679290 125496 680040
-rect 120366 679074 120858 679290
-rect 120198 677386 120858 679074
-rect 124122 679074 125496 679290
-rect 124122 679062 127430 679074
-rect 197836 679062 234588 679164
-rect 124122 677386 234588 679062
-rect 120198 677308 234588 677386
-rect 120366 677286 234588 677308
-rect 120366 677218 200848 677286
-rect 120366 676720 125496 677218
-rect -854 645284 2056 645488
-rect -854 644260 163 645284
-rect 1347 644762 2056 645284
-rect 30512 644762 30990 646010
-rect 1347 644336 30990 644762
-rect 1347 644260 2056 644336
-rect -854 644034 2056 644260
-rect 30512 552250 30990 644336
-rect 233136 562822 234460 677286
-rect 30536 234560 30826 552250
-rect 233136 545444 235866 562822
-rect 233218 545114 235866 545444
-rect 234388 494250 234710 545114
-rect 234364 493666 234710 494250
-rect 234364 431964 234686 493666
-rect 234364 428392 234734 431964
-rect 234524 330316 234734 428392
-rect 234524 328398 234736 330316
-rect 234526 278386 234736 328398
-rect 234526 277472 234746 278386
-rect 30402 234282 31114 234560
-rect 30854 233842 30954 234282
-rect 234536 226754 234746 277472
-rect 234536 225542 234778 226754
-rect 234542 204802 234778 225542
-rect 234580 192660 234660 204802
-rect 234580 192270 234700 192660
-rect 234612 188780 234700 192270
-rect 234602 188632 234700 188780
-rect 234602 180872 234690 188632
-rect 234606 180162 234670 180872
-use 10bitdac_cap_layout_design 10bitdac_cap_layout_design_0
-timestamp 1624220454
-transform 1 0 27354 0 1 122658
-box 0 -48 235318 112414
-<< labels >>
-flabel metal3 s 583520 269230 584800 269342 0 FreeSans 3416 0 0 0 gpio_analog[0]
-flabel metal3 s -800 381864 480 381976 0 FreeSans 3416 0 0 0 gpio_analog[10]
-flabel metal3 s -800 338642 480 338754 0 FreeSans 3416 0 0 0 gpio_analog[11]
-flabel metal3 s -800 295420 480 295532 0 FreeSans 3416 0 0 0 gpio_analog[12]
-flabel metal3 s -800 252398 480 252510 0 FreeSans 3416 0 0 0 gpio_analog[13]
-flabel metal3 s -800 124776 480 124888 0 FreeSans 3416 0 0 0 gpio_analog[14]
-flabel metal3 s -800 81554 480 81666 0 FreeSans 3416 0 0 0 gpio_analog[15]
-flabel metal3 s -800 38332 480 38444 0 FreeSans 3416 0 0 0 gpio_analog[16]
-flabel metal3 s -800 16910 480 17022 0 FreeSans 3416 0 0 0 gpio_analog[17]
-flabel metal3 s 583520 313652 584800 313764 0 FreeSans 3416 0 0 0 gpio_analog[1]
-flabel metal3 s 583520 358874 584800 358986 0 FreeSans 3416 0 0 0 gpio_analog[2]
-flabel metal3 s 583520 405296 584800 405408 0 FreeSans 3416 0 0 0 gpio_analog[3]
-flabel metal3 s 583520 449718 584800 449830 0 FreeSans 3416 0 0 0 gpio_analog[4]
-flabel metal3 s 583520 494140 584800 494252 0 FreeSans 3416 0 0 0 gpio_analog[5]
-flabel metal3 s 583520 583562 584800 583674 0 FreeSans 3416 0 0 0 gpio_analog[6]
-flabel metal3 s -800 511530 480 511642 0 FreeSans 3416 0 0 0 gpio_analog[7]
-flabel metal3 s -800 468308 480 468420 0 FreeSans 3416 0 0 0 gpio_analog[8]
-flabel metal3 s -800 425086 480 425198 0 FreeSans 3416 0 0 0 gpio_analog[9]
-flabel metal3 s 583520 270412 584800 270524 0 FreeSans 3416 0 0 0 gpio_noesd[0]
-flabel metal3 s -800 380682 480 380794 0 FreeSans 3416 0 0 0 gpio_noesd[10]
-flabel metal3 s -800 337460 480 337572 0 FreeSans 3416 0 0 0 gpio_noesd[11]
-flabel metal3 s -800 294238 480 294350 0 FreeSans 3416 0 0 0 gpio_noesd[12]
-flabel metal3 s -800 251216 480 251328 0 FreeSans 3416 0 0 0 gpio_noesd[13]
-flabel metal3 s -800 123594 480 123706 0 FreeSans 3416 0 0 0 gpio_noesd[14]
-flabel metal3 s -800 80372 480 80484 0 FreeSans 3416 0 0 0 gpio_noesd[15]
-flabel metal3 s -800 37150 480 37262 0 FreeSans 3416 0 0 0 gpio_noesd[16]
-flabel metal3 s -800 15728 480 15840 0 FreeSans 3416 0 0 0 gpio_noesd[17]
-flabel metal3 s 583520 314834 584800 314946 0 FreeSans 3416 0 0 0 gpio_noesd[1]
-flabel metal3 s 583520 360056 584800 360168 0 FreeSans 3416 0 0 0 gpio_noesd[2]
-flabel metal3 s 583520 406478 584800 406590 0 FreeSans 3416 0 0 0 gpio_noesd[3]
-flabel metal3 s 583520 450900 584800 451012 0 FreeSans 3416 0 0 0 gpio_noesd[4]
-flabel metal3 s 583520 495322 584800 495434 0 FreeSans 3416 0 0 0 gpio_noesd[5]
-flabel metal3 s 583520 584744 584800 584856 0 FreeSans 3416 0 0 0 gpio_noesd[6]
-flabel metal3 s -800 510348 480 510460 0 FreeSans 3416 0 0 0 gpio_noesd[7]
-flabel metal3 s -800 467126 480 467238 0 FreeSans 3416 0 0 0 gpio_noesd[8]
-flabel metal3 s -800 423904 480 424016 0 FreeSans 3416 0 0 0 gpio_noesd[9]
-flabel metal3 s 582300 677984 584800 682984 0 FreeSans 3416 0 0 0 io_analog[0]
-flabel metal3 s 0 680242 1700 685242 0 FreeSans 3416 0 0 0 io_analog[10]
-flabel metal3 s 566594 702300 571594 704800 0 FreeSans 5858 180 0 0 io_analog[1]
-flabel metal3 s 465394 702300 470394 704800 0 FreeSans 5858 180 0 0 io_analog[2]
-flabel metal3 s 413394 702300 418394 704800 0 FreeSans 5858 180 0 0 io_analog[3]
-flabel metal3 s 329294 702300 334294 704800 0 FreeSans 5858 180 0 0 io_analog[4]
-flabel metal3 s 227594 702300 232594 704800 0 FreeSans 5858 180 0 0 io_analog[5]
-flabel metal3 s 175894 702300 180894 704800 0 FreeSans 5858 180 0 0 io_analog[6]
-flabel metal3 s 120194 702300 125194 704800 0 FreeSans 5858 180 0 0 io_analog[7]
-flabel metal3 s 68194 702300 73194 704800 0 FreeSans 5858 180 0 0 io_analog[8]
-flabel metal3 s 16194 702300 21194 704800 0 FreeSans 5858 180 0 0 io_analog[9]
-flabel metal3 s 318994 702300 323994 704800 0 FreeSans 5858 180 0 0 io_analog[4]
-flabel metal3 s 217294 702300 222294 704800 0 FreeSans 5858 180 0 0 io_analog[5]
-flabel metal3 s 165594 702300 170594 704800 0 FreeSans 5858 180 0 0 io_analog[6]
-flabel metal3 s 326794 702300 328994 704800 0 FreeSans 5858 180 0 0 io_clamp_high[0]
-flabel metal3 s 225094 702300 227294 704800 0 FreeSans 5858 180 0 0 io_clamp_high[1]
-flabel metal3 s 173394 702300 175594 704800 0 FreeSans 5858 180 0 0 io_clamp_high[2]
-flabel metal3 s 324294 702300 326494 704800 0 FreeSans 5858 180 0 0 io_clamp_low[0]
-flabel metal3 s 222594 702300 224794 704800 0 FreeSans 5858 180 0 0 io_clamp_low[1]
-flabel metal3 s 170894 702300 173094 704800 0 FreeSans 5858 180 0 0 io_clamp_low[2]
-flabel metal3 s 583520 2726 584800 2838 0 FreeSans 3416 0 0 0 io_in[0]
-flabel metal3 s 583520 408842 584800 408954 0 FreeSans 3416 0 0 0 io_in[10]
-flabel metal3 s 583520 453264 584800 453376 0 FreeSans 3416 0 0 0 io_in[11]
-flabel metal3 s 583520 497686 584800 497798 0 FreeSans 3416 0 0 0 io_in[12]
-flabel metal3 s 583520 587108 584800 587220 0 FreeSans 3416 0 0 0 io_in[13]
-flabel metal3 s -800 507984 480 508096 0 FreeSans 3416 0 0 0 io_in[14]
-flabel metal3 s -800 464762 480 464874 0 FreeSans 3416 0 0 0 io_in[15]
-flabel metal3 s -800 421540 480 421652 0 FreeSans 3416 0 0 0 io_in[16]
-flabel metal3 s -800 378318 480 378430 0 FreeSans 3416 0 0 0 io_in[17]
-flabel metal3 s -800 335096 480 335208 0 FreeSans 3416 0 0 0 io_in[18]
-flabel metal3 s -800 291874 480 291986 0 FreeSans 3416 0 0 0 io_in[19]
-flabel metal3 s 583520 7454 584800 7566 0 FreeSans 3416 0 0 0 io_in[1]
-flabel metal3 s -800 248852 480 248964 0 FreeSans 3416 0 0 0 io_in[20]
-flabel metal3 s -800 121230 480 121342 0 FreeSans 3416 0 0 0 io_in[21]
-flabel metal3 s -800 78008 480 78120 0 FreeSans 3416 0 0 0 io_in[22]
-flabel metal3 s -800 34786 480 34898 0 FreeSans 3416 0 0 0 io_in[23]
-flabel metal3 s -800 13364 480 13476 0 FreeSans 3416 0 0 0 io_in[24]
-flabel metal3 s -800 8636 480 8748 0 FreeSans 3416 0 0 0 io_in[25]
-flabel metal3 s -800 3908 480 4020 0 FreeSans 3416 0 0 0 io_in[26]
-flabel metal3 s 583520 12182 584800 12294 0 FreeSans 3416 0 0 0 io_in[2]
-flabel metal3 s 583520 16910 584800 17022 0 FreeSans 3416 0 0 0 io_in[3]
-flabel metal3 s 583520 21638 584800 21750 0 FreeSans 3416 0 0 0 io_in[4]
-flabel metal3 s 583520 48096 584800 48208 0 FreeSans 3416 0 0 0 io_in[5]
-flabel metal3 s 583520 92754 584800 92866 0 FreeSans 3416 0 0 0 io_in[6]
-flabel metal3 s 583520 272776 584800 272888 0 FreeSans 3416 0 0 0 io_in[7]
-flabel metal3 s 583520 317198 584800 317310 0 FreeSans 3416 0 0 0 io_in[8]
-flabel metal3 s 583520 362420 584800 362532 0 FreeSans 3416 0 0 0 io_in[9]
-flabel metal3 s 583520 1544 584800 1656 0 FreeSans 3416 0 0 0 io_in_3v3[0]
-flabel metal3 s 583520 407660 584800 407772 0 FreeSans 3416 0 0 0 io_in_3v3[10]
-flabel metal3 s 583520 452082 584800 452194 0 FreeSans 3416 0 0 0 io_in_3v3[11]
-flabel metal3 s 583520 496504 584800 496616 0 FreeSans 3416 0 0 0 io_in_3v3[12]
-flabel metal3 s 583520 585926 584800 586038 0 FreeSans 3416 0 0 0 io_in_3v3[13]
-flabel metal3 s -800 509166 480 509278 0 FreeSans 3416 0 0 0 io_in_3v3[14]
-flabel metal3 s -800 465944 480 466056 0 FreeSans 3416 0 0 0 io_in_3v3[15]
-flabel metal3 s -800 422722 480 422834 0 FreeSans 3416 0 0 0 io_in_3v3[16]
-flabel metal3 s -800 379500 480 379612 0 FreeSans 3416 0 0 0 io_in_3v3[17]
-flabel metal3 s -800 336278 480 336390 0 FreeSans 3416 0 0 0 io_in_3v3[18]
-flabel metal3 s -800 293056 480 293168 0 FreeSans 3416 0 0 0 io_in_3v3[19]
-flabel metal3 s 583520 6272 584800 6384 0 FreeSans 3416 0 0 0 io_in_3v3[1]
-flabel metal3 s -800 250034 480 250146 0 FreeSans 3416 0 0 0 io_in_3v3[20]
-flabel metal3 s -800 122412 480 122524 0 FreeSans 3416 0 0 0 io_in_3v3[21]
-flabel metal3 s -800 79190 480 79302 0 FreeSans 3416 0 0 0 io_in_3v3[22]
-flabel metal3 s -800 35968 480 36080 0 FreeSans 3416 0 0 0 io_in_3v3[23]
-flabel metal3 s -800 14546 480 14658 0 FreeSans 3416 0 0 0 io_in_3v3[24]
-flabel metal3 s -800 9818 480 9930 0 FreeSans 3416 0 0 0 io_in_3v3[25]
-flabel metal3 s -800 5090 480 5202 0 FreeSans 3416 0 0 0 io_in_3v3[26]
-flabel metal3 s 583520 11000 584800 11112 0 FreeSans 3416 0 0 0 io_in_3v3[2]
-flabel metal3 s 583520 15728 584800 15840 0 FreeSans 3416 0 0 0 io_in_3v3[3]
-flabel metal3 s 583520 20456 584800 20568 0 FreeSans 3416 0 0 0 io_in_3v3[4]
-flabel metal3 s 583520 46914 584800 47026 0 FreeSans 3416 0 0 0 io_in_3v3[5]
-flabel metal3 s 583520 91572 584800 91684 0 FreeSans 3416 0 0 0 io_in_3v3[6]
-flabel metal3 s 583520 271594 584800 271706 0 FreeSans 3416 0 0 0 io_in_3v3[7]
-flabel metal3 s 583520 316016 584800 316128 0 FreeSans 3416 0 0 0 io_in_3v3[8]
-flabel metal3 s 583520 361238 584800 361350 0 FreeSans 3416 0 0 0 io_in_3v3[9]
-flabel metal3 s 583520 5090 584800 5202 0 FreeSans 3416 0 0 0 io_oeb[0]
-flabel metal3 s 583520 411206 584800 411318 0 FreeSans 3416 0 0 0 io_oeb[10]
-flabel metal3 s 583520 455628 584800 455740 0 FreeSans 3416 0 0 0 io_oeb[11]
-flabel metal3 s 583520 500050 584800 500162 0 FreeSans 3416 0 0 0 io_oeb[12]
-flabel metal3 s 583520 589472 584800 589584 0 FreeSans 3416 0 0 0 io_oeb[13]
-flabel metal3 s -800 505620 480 505732 0 FreeSans 3416 0 0 0 io_oeb[14]
-flabel metal3 s -800 462398 480 462510 0 FreeSans 3416 0 0 0 io_oeb[15]
-flabel metal3 s -800 419176 480 419288 0 FreeSans 3416 0 0 0 io_oeb[16]
-flabel metal3 s -800 375954 480 376066 0 FreeSans 3416 0 0 0 io_oeb[17]
-flabel metal3 s -800 332732 480 332844 0 FreeSans 3416 0 0 0 io_oeb[18]
-flabel metal3 s -800 289510 480 289622 0 FreeSans 3416 0 0 0 io_oeb[19]
-flabel metal3 s 583520 9818 584800 9930 0 FreeSans 3416 0 0 0 io_oeb[1]
-flabel metal3 s -800 246488 480 246600 0 FreeSans 3416 0 0 0 io_oeb[20]
-flabel metal3 s -800 118866 480 118978 0 FreeSans 3416 0 0 0 io_oeb[21]
-flabel metal3 s -800 75644 480 75756 0 FreeSans 3416 0 0 0 io_oeb[22]
-flabel metal3 s -800 32422 480 32534 0 FreeSans 3416 0 0 0 io_oeb[23]
-flabel metal3 s -800 11000 480 11112 0 FreeSans 3416 0 0 0 io_oeb[24]
-flabel metal3 s -800 6272 480 6384 0 FreeSans 3416 0 0 0 io_oeb[25]
-flabel metal3 s -800 1544 480 1656 0 FreeSans 3416 0 0 0 io_oeb[26]
-flabel metal3 s 583520 14546 584800 14658 0 FreeSans 3416 0 0 0 io_oeb[2]
-flabel metal3 s 583520 19274 584800 19386 0 FreeSans 3416 0 0 0 io_oeb[3]
-flabel metal3 s 583520 24002 584800 24114 0 FreeSans 3416 0 0 0 io_oeb[4]
-flabel metal3 s 583520 50460 584800 50572 0 FreeSans 3416 0 0 0 io_oeb[5]
-flabel metal3 s 583520 95118 584800 95230 0 FreeSans 3416 0 0 0 io_oeb[6]
-flabel metal3 s 583520 275140 584800 275252 0 FreeSans 3416 0 0 0 io_oeb[7]
-flabel metal3 s 583520 319562 584800 319674 0 FreeSans 3416 0 0 0 io_oeb[8]
-flabel metal3 s 583520 364784 584800 364896 0 FreeSans 3416 0 0 0 io_oeb[9]
-flabel metal3 s 583520 3908 584800 4020 0 FreeSans 3416 0 0 0 io_out[0]
-flabel metal3 s 583520 410024 584800 410136 0 FreeSans 3416 0 0 0 io_out[10]
-flabel metal3 s 583520 454446 584800 454558 0 FreeSans 3416 0 0 0 io_out[11]
-flabel metal3 s 583520 498868 584800 498980 0 FreeSans 3416 0 0 0 io_out[12]
-flabel metal3 s 583520 588290 584800 588402 0 FreeSans 3416 0 0 0 io_out[13]
-flabel metal3 s -800 506802 480 506914 0 FreeSans 3416 0 0 0 io_out[14]
-flabel metal3 s -800 463580 480 463692 0 FreeSans 3416 0 0 0 io_out[15]
-flabel metal3 s -800 420358 480 420470 0 FreeSans 3416 0 0 0 io_out[16]
-flabel metal3 s -800 377136 480 377248 0 FreeSans 3416 0 0 0 io_out[17]
-flabel metal3 s -800 333914 480 334026 0 FreeSans 3416 0 0 0 io_out[18]
-flabel metal3 s -800 290692 480 290804 0 FreeSans 3416 0 0 0 io_out[19]
-flabel metal3 s 583520 8636 584800 8748 0 FreeSans 3416 0 0 0 io_out[1]
-flabel metal3 s -800 247670 480 247782 0 FreeSans 3416 0 0 0 io_out[20]
-flabel metal3 s -800 120048 480 120160 0 FreeSans 3416 0 0 0 io_out[21]
-flabel metal3 s -800 76826 480 76938 0 FreeSans 3416 0 0 0 io_out[22]
-flabel metal3 s -800 33604 480 33716 0 FreeSans 3416 0 0 0 io_out[23]
-flabel metal3 s -800 12182 480 12294 0 FreeSans 3416 0 0 0 io_out[24]
-flabel metal3 s -800 7454 480 7566 0 FreeSans 3416 0 0 0 io_out[25]
-flabel metal3 s -800 2726 480 2838 0 FreeSans 3416 0 0 0 io_out[26]
-flabel metal3 s 583520 13364 584800 13476 0 FreeSans 3416 0 0 0 io_out[2]
-flabel metal3 s 583520 18092 584800 18204 0 FreeSans 3416 0 0 0 io_out[3]
-flabel metal3 s 583520 22820 584800 22932 0 FreeSans 3416 0 0 0 io_out[4]
-flabel metal3 s 583520 49278 584800 49390 0 FreeSans 3416 0 0 0 io_out[5]
-flabel metal3 s 583520 93936 584800 94048 0 FreeSans 3416 0 0 0 io_out[6]
-flabel metal3 s 583520 273958 584800 274070 0 FreeSans 3416 0 0 0 io_out[7]
-flabel metal3 s 583520 318380 584800 318492 0 FreeSans 3416 0 0 0 io_out[8]
-flabel metal3 s 583520 363602 584800 363714 0 FreeSans 3416 0 0 0 io_out[9]
-flabel metal2 s 125816 -800 125928 480 0 FreeSans 3416 90 0 0 la_data_in[0]
-flabel metal2 s 480416 -800 480528 480 0 FreeSans 3416 90 0 0 la_data_in[100]
-flabel metal2 s 483962 -800 484074 480 0 FreeSans 3416 90 0 0 la_data_in[101]
-flabel metal2 s 487508 -800 487620 480 0 FreeSans 3416 90 0 0 la_data_in[102]
-flabel metal2 s 491054 -800 491166 480 0 FreeSans 3416 90 0 0 la_data_in[103]
-flabel metal2 s 494600 -800 494712 480 0 FreeSans 3416 90 0 0 la_data_in[104]
-flabel metal2 s 498146 -800 498258 480 0 FreeSans 3416 90 0 0 la_data_in[105]
-flabel metal2 s 501692 -800 501804 480 0 FreeSans 3416 90 0 0 la_data_in[106]
-flabel metal2 s 505238 -800 505350 480 0 FreeSans 3416 90 0 0 la_data_in[107]
-flabel metal2 s 508784 -800 508896 480 0 FreeSans 3416 90 0 0 la_data_in[108]
-flabel metal2 s 512330 -800 512442 480 0 FreeSans 3416 90 0 0 la_data_in[109]
-flabel metal2 s 161276 -800 161388 480 0 FreeSans 3416 90 0 0 la_data_in[10]
-flabel metal2 s 515876 -800 515988 480 0 FreeSans 3416 90 0 0 la_data_in[110]
-flabel metal2 s 519422 -800 519534 480 0 FreeSans 3416 90 0 0 la_data_in[111]
-flabel metal2 s 522968 -800 523080 480 0 FreeSans 3416 90 0 0 la_data_in[112]
-flabel metal2 s 526514 -800 526626 480 0 FreeSans 3416 90 0 0 la_data_in[113]
-flabel metal2 s 530060 -800 530172 480 0 FreeSans 3416 90 0 0 la_data_in[114]
-flabel metal2 s 533606 -800 533718 480 0 FreeSans 3416 90 0 0 la_data_in[115]
-flabel metal2 s 537152 -800 537264 480 0 FreeSans 3416 90 0 0 la_data_in[116]
-flabel metal2 s 540698 -800 540810 480 0 FreeSans 3416 90 0 0 la_data_in[117]
-flabel metal2 s 544244 -800 544356 480 0 FreeSans 3416 90 0 0 la_data_in[118]
-flabel metal2 s 547790 -800 547902 480 0 FreeSans 3416 90 0 0 la_data_in[119]
-flabel metal2 s 164822 -800 164934 480 0 FreeSans 3416 90 0 0 la_data_in[11]
-flabel metal2 s 551336 -800 551448 480 0 FreeSans 3416 90 0 0 la_data_in[120]
-flabel metal2 s 554882 -800 554994 480 0 FreeSans 3416 90 0 0 la_data_in[121]
-flabel metal2 s 558428 -800 558540 480 0 FreeSans 3416 90 0 0 la_data_in[122]
-flabel metal2 s 561974 -800 562086 480 0 FreeSans 3416 90 0 0 la_data_in[123]
-flabel metal2 s 565520 -800 565632 480 0 FreeSans 3416 90 0 0 la_data_in[124]
-flabel metal2 s 569066 -800 569178 480 0 FreeSans 3416 90 0 0 la_data_in[125]
-flabel metal2 s 572612 -800 572724 480 0 FreeSans 3416 90 0 0 la_data_in[126]
-flabel metal2 s 576158 -800 576270 480 0 FreeSans 3416 90 0 0 la_data_in[127]
-flabel metal2 s 168368 -800 168480 480 0 FreeSans 3416 90 0 0 la_data_in[12]
-flabel metal2 s 171914 -800 172026 480 0 FreeSans 3416 90 0 0 la_data_in[13]
-flabel metal2 s 175460 -800 175572 480 0 FreeSans 3416 90 0 0 la_data_in[14]
-flabel metal2 s 179006 -800 179118 480 0 FreeSans 3416 90 0 0 la_data_in[15]
-flabel metal2 s 182552 -800 182664 480 0 FreeSans 3416 90 0 0 la_data_in[16]
-flabel metal2 s 186098 -800 186210 480 0 FreeSans 3416 90 0 0 la_data_in[17]
-flabel metal2 s 189644 -800 189756 480 0 FreeSans 3416 90 0 0 la_data_in[18]
-flabel metal2 s 193190 -800 193302 480 0 FreeSans 3416 90 0 0 la_data_in[19]
-flabel metal2 s 129362 -800 129474 480 0 FreeSans 3416 90 0 0 la_data_in[1]
-flabel metal2 s 196736 -800 196848 480 0 FreeSans 3416 90 0 0 la_data_in[20]
-flabel metal2 s 200282 -800 200394 480 0 FreeSans 3416 90 0 0 la_data_in[21]
-flabel metal2 s 203828 -800 203940 480 0 FreeSans 3416 90 0 0 la_data_in[22]
-flabel metal2 s 207374 -800 207486 480 0 FreeSans 3416 90 0 0 la_data_in[23]
-flabel metal2 s 210920 -800 211032 480 0 FreeSans 3416 90 0 0 la_data_in[24]
-flabel metal2 s 214466 -800 214578 480 0 FreeSans 3416 90 0 0 la_data_in[25]
-flabel metal2 s 218012 -800 218124 480 0 FreeSans 3416 90 0 0 la_data_in[26]
-flabel metal2 s 221558 -800 221670 480 0 FreeSans 3416 90 0 0 la_data_in[27]
-flabel metal2 s 225104 -800 225216 480 0 FreeSans 3416 90 0 0 la_data_in[28]
-flabel metal2 s 228650 -800 228762 480 0 FreeSans 3416 90 0 0 la_data_in[29]
-flabel metal2 s 132908 -800 133020 480 0 FreeSans 3416 90 0 0 la_data_in[2]
-flabel metal2 s 232196 -800 232308 480 0 FreeSans 3416 90 0 0 la_data_in[30]
-flabel metal2 s 235742 -800 235854 480 0 FreeSans 3416 90 0 0 la_data_in[31]
-flabel metal2 s 239288 -800 239400 480 0 FreeSans 3416 90 0 0 la_data_in[32]
-flabel metal2 s 242834 -800 242946 480 0 FreeSans 3416 90 0 0 la_data_in[33]
-flabel metal2 s 246380 -800 246492 480 0 FreeSans 3416 90 0 0 la_data_in[34]
-flabel metal2 s 249926 -800 250038 480 0 FreeSans 3416 90 0 0 la_data_in[35]
-flabel metal2 s 253472 -800 253584 480 0 FreeSans 3416 90 0 0 la_data_in[36]
-flabel metal2 s 257018 -800 257130 480 0 FreeSans 3416 90 0 0 la_data_in[37]
-flabel metal2 s 260564 -800 260676 480 0 FreeSans 3416 90 0 0 la_data_in[38]
-flabel metal2 s 264110 -800 264222 480 0 FreeSans 3416 90 0 0 la_data_in[39]
-flabel metal2 s 136454 -800 136566 480 0 FreeSans 3416 90 0 0 la_data_in[3]
-flabel metal2 s 267656 -800 267768 480 0 FreeSans 3416 90 0 0 la_data_in[40]
-flabel metal2 s 271202 -800 271314 480 0 FreeSans 3416 90 0 0 la_data_in[41]
-flabel metal2 s 274748 -800 274860 480 0 FreeSans 3416 90 0 0 la_data_in[42]
-flabel metal2 s 278294 -800 278406 480 0 FreeSans 3416 90 0 0 la_data_in[43]
-flabel metal2 s 281840 -800 281952 480 0 FreeSans 3416 90 0 0 la_data_in[44]
-flabel metal2 s 285386 -800 285498 480 0 FreeSans 3416 90 0 0 la_data_in[45]
-flabel metal2 s 288932 -800 289044 480 0 FreeSans 3416 90 0 0 la_data_in[46]
-flabel metal2 s 292478 -800 292590 480 0 FreeSans 3416 90 0 0 la_data_in[47]
-flabel metal2 s 296024 -800 296136 480 0 FreeSans 3416 90 0 0 la_data_in[48]
-flabel metal2 s 299570 -800 299682 480 0 FreeSans 3416 90 0 0 la_data_in[49]
-flabel metal2 s 140000 -800 140112 480 0 FreeSans 3416 90 0 0 la_data_in[4]
-flabel metal2 s 303116 -800 303228 480 0 FreeSans 3416 90 0 0 la_data_in[50]
-flabel metal2 s 306662 -800 306774 480 0 FreeSans 3416 90 0 0 la_data_in[51]
-flabel metal2 s 310208 -800 310320 480 0 FreeSans 3416 90 0 0 la_data_in[52]
-flabel metal2 s 313754 -800 313866 480 0 FreeSans 3416 90 0 0 la_data_in[53]
-flabel metal2 s 317300 -800 317412 480 0 FreeSans 3416 90 0 0 la_data_in[54]
-flabel metal2 s 320846 -800 320958 480 0 FreeSans 3416 90 0 0 la_data_in[55]
-flabel metal2 s 324392 -800 324504 480 0 FreeSans 3416 90 0 0 la_data_in[56]
-flabel metal2 s 327938 -800 328050 480 0 FreeSans 3416 90 0 0 la_data_in[57]
-flabel metal2 s 331484 -800 331596 480 0 FreeSans 3416 90 0 0 la_data_in[58]
-flabel metal2 s 335030 -800 335142 480 0 FreeSans 3416 90 0 0 la_data_in[59]
-flabel metal2 s 143546 -800 143658 480 0 FreeSans 3416 90 0 0 la_data_in[5]
-flabel metal2 s 338576 -800 338688 480 0 FreeSans 3416 90 0 0 la_data_in[60]
-flabel metal2 s 342122 -800 342234 480 0 FreeSans 3416 90 0 0 la_data_in[61]
-flabel metal2 s 345668 -800 345780 480 0 FreeSans 3416 90 0 0 la_data_in[62]
-flabel metal2 s 349214 -800 349326 480 0 FreeSans 3416 90 0 0 la_data_in[63]
-flabel metal2 s 352760 -800 352872 480 0 FreeSans 3416 90 0 0 la_data_in[64]
-flabel metal2 s 356306 -800 356418 480 0 FreeSans 3416 90 0 0 la_data_in[65]
-flabel metal2 s 359852 -800 359964 480 0 FreeSans 3416 90 0 0 la_data_in[66]
-flabel metal2 s 363398 -800 363510 480 0 FreeSans 3416 90 0 0 la_data_in[67]
-flabel metal2 s 366944 -800 367056 480 0 FreeSans 3416 90 0 0 la_data_in[68]
-flabel metal2 s 370490 -800 370602 480 0 FreeSans 3416 90 0 0 la_data_in[69]
-flabel metal2 s 147092 -800 147204 480 0 FreeSans 3416 90 0 0 la_data_in[6]
-flabel metal2 s 374036 -800 374148 480 0 FreeSans 3416 90 0 0 la_data_in[70]
-flabel metal2 s 377582 -800 377694 480 0 FreeSans 3416 90 0 0 la_data_in[71]
-flabel metal2 s 381128 -800 381240 480 0 FreeSans 3416 90 0 0 la_data_in[72]
-flabel metal2 s 384674 -800 384786 480 0 FreeSans 3416 90 0 0 la_data_in[73]
-flabel metal2 s 388220 -800 388332 480 0 FreeSans 3416 90 0 0 la_data_in[74]
-flabel metal2 s 391766 -800 391878 480 0 FreeSans 3416 90 0 0 la_data_in[75]
-flabel metal2 s 395312 -800 395424 480 0 FreeSans 3416 90 0 0 la_data_in[76]
-flabel metal2 s 398858 -800 398970 480 0 FreeSans 3416 90 0 0 la_data_in[77]
-flabel metal2 s 402404 -800 402516 480 0 FreeSans 3416 90 0 0 la_data_in[78]
-flabel metal2 s 405950 -800 406062 480 0 FreeSans 3416 90 0 0 la_data_in[79]
-flabel metal2 s 150638 -800 150750 480 0 FreeSans 3416 90 0 0 la_data_in[7]
-flabel metal2 s 409496 -800 409608 480 0 FreeSans 3416 90 0 0 la_data_in[80]
-flabel metal2 s 413042 -800 413154 480 0 FreeSans 3416 90 0 0 la_data_in[81]
-flabel metal2 s 416588 -800 416700 480 0 FreeSans 3416 90 0 0 la_data_in[82]
-flabel metal2 s 420134 -800 420246 480 0 FreeSans 3416 90 0 0 la_data_in[83]
-flabel metal2 s 423680 -800 423792 480 0 FreeSans 3416 90 0 0 la_data_in[84]
-flabel metal2 s 427226 -800 427338 480 0 FreeSans 3416 90 0 0 la_data_in[85]
-flabel metal2 s 430772 -800 430884 480 0 FreeSans 3416 90 0 0 la_data_in[86]
-flabel metal2 s 434318 -800 434430 480 0 FreeSans 3416 90 0 0 la_data_in[87]
-flabel metal2 s 437864 -800 437976 480 0 FreeSans 3416 90 0 0 la_data_in[88]
-flabel metal2 s 441410 -800 441522 480 0 FreeSans 3416 90 0 0 la_data_in[89]
-flabel metal2 s 154184 -800 154296 480 0 FreeSans 3416 90 0 0 la_data_in[8]
-flabel metal2 s 444956 -800 445068 480 0 FreeSans 3416 90 0 0 la_data_in[90]
-flabel metal2 s 448502 -800 448614 480 0 FreeSans 3416 90 0 0 la_data_in[91]
-flabel metal2 s 452048 -800 452160 480 0 FreeSans 3416 90 0 0 la_data_in[92]
-flabel metal2 s 455594 -800 455706 480 0 FreeSans 3416 90 0 0 la_data_in[93]
-flabel metal2 s 459140 -800 459252 480 0 FreeSans 3416 90 0 0 la_data_in[94]
-flabel metal2 s 462686 -800 462798 480 0 FreeSans 3416 90 0 0 la_data_in[95]
-flabel metal2 s 466232 -800 466344 480 0 FreeSans 3416 90 0 0 la_data_in[96]
-flabel metal2 s 469778 -800 469890 480 0 FreeSans 3416 90 0 0 la_data_in[97]
-flabel metal2 s 473324 -800 473436 480 0 FreeSans 3416 90 0 0 la_data_in[98]
-flabel metal2 s 476870 -800 476982 480 0 FreeSans 3416 90 0 0 la_data_in[99]
-flabel metal2 s 157730 -800 157842 480 0 FreeSans 3416 90 0 0 la_data_in[9]
-flabel metal2 s 126998 -800 127110 480 0 FreeSans 3416 90 0 0 la_data_out[0]
-flabel metal2 s 481598 -800 481710 480 0 FreeSans 3416 90 0 0 la_data_out[100]
-flabel metal2 s 485144 -800 485256 480 0 FreeSans 3416 90 0 0 la_data_out[101]
-flabel metal2 s 488690 -800 488802 480 0 FreeSans 3416 90 0 0 la_data_out[102]
-flabel metal2 s 492236 -800 492348 480 0 FreeSans 3416 90 0 0 la_data_out[103]
-flabel metal2 s 495782 -800 495894 480 0 FreeSans 3416 90 0 0 la_data_out[104]
-flabel metal2 s 499328 -800 499440 480 0 FreeSans 3416 90 0 0 la_data_out[105]
-flabel metal2 s 502874 -800 502986 480 0 FreeSans 3416 90 0 0 la_data_out[106]
-flabel metal2 s 506420 -800 506532 480 0 FreeSans 3416 90 0 0 la_data_out[107]
-flabel metal2 s 509966 -800 510078 480 0 FreeSans 3416 90 0 0 la_data_out[108]
-flabel metal2 s 513512 -800 513624 480 0 FreeSans 3416 90 0 0 la_data_out[109]
-flabel metal2 s 162458 -800 162570 480 0 FreeSans 3416 90 0 0 la_data_out[10]
-flabel metal2 s 517058 -800 517170 480 0 FreeSans 3416 90 0 0 la_data_out[110]
-flabel metal2 s 520604 -800 520716 480 0 FreeSans 3416 90 0 0 la_data_out[111]
-flabel metal2 s 524150 -800 524262 480 0 FreeSans 3416 90 0 0 la_data_out[112]
-flabel metal2 s 527696 -800 527808 480 0 FreeSans 3416 90 0 0 la_data_out[113]
-flabel metal2 s 531242 -800 531354 480 0 FreeSans 3416 90 0 0 la_data_out[114]
-flabel metal2 s 534788 -800 534900 480 0 FreeSans 3416 90 0 0 la_data_out[115]
-flabel metal2 s 538334 -800 538446 480 0 FreeSans 3416 90 0 0 la_data_out[116]
-flabel metal2 s 541880 -800 541992 480 0 FreeSans 3416 90 0 0 la_data_out[117]
-flabel metal2 s 545426 -800 545538 480 0 FreeSans 3416 90 0 0 la_data_out[118]
-flabel metal2 s 548972 -800 549084 480 0 FreeSans 3416 90 0 0 la_data_out[119]
-flabel metal2 s 166004 -800 166116 480 0 FreeSans 3416 90 0 0 la_data_out[11]
-flabel metal2 s 552518 -800 552630 480 0 FreeSans 3416 90 0 0 la_data_out[120]
-flabel metal2 s 556064 -800 556176 480 0 FreeSans 3416 90 0 0 la_data_out[121]
-flabel metal2 s 559610 -800 559722 480 0 FreeSans 3416 90 0 0 la_data_out[122]
-flabel metal2 s 563156 -800 563268 480 0 FreeSans 3416 90 0 0 la_data_out[123]
-flabel metal2 s 566702 -800 566814 480 0 FreeSans 3416 90 0 0 la_data_out[124]
-flabel metal2 s 570248 -800 570360 480 0 FreeSans 3416 90 0 0 la_data_out[125]
-flabel metal2 s 573794 -800 573906 480 0 FreeSans 3416 90 0 0 la_data_out[126]
-flabel metal2 s 577340 -800 577452 480 0 FreeSans 3416 90 0 0 la_data_out[127]
-flabel metal2 s 169550 -800 169662 480 0 FreeSans 3416 90 0 0 la_data_out[12]
-flabel metal2 s 173096 -800 173208 480 0 FreeSans 3416 90 0 0 la_data_out[13]
-flabel metal2 s 176642 -800 176754 480 0 FreeSans 3416 90 0 0 la_data_out[14]
-flabel metal2 s 180188 -800 180300 480 0 FreeSans 3416 90 0 0 la_data_out[15]
-flabel metal2 s 183734 -800 183846 480 0 FreeSans 3416 90 0 0 la_data_out[16]
-flabel metal2 s 187280 -800 187392 480 0 FreeSans 3416 90 0 0 la_data_out[17]
-flabel metal2 s 190826 -800 190938 480 0 FreeSans 3416 90 0 0 la_data_out[18]
-flabel metal2 s 194372 -800 194484 480 0 FreeSans 3416 90 0 0 la_data_out[19]
-flabel metal2 s 130544 -800 130656 480 0 FreeSans 3416 90 0 0 la_data_out[1]
-flabel metal2 s 197918 -800 198030 480 0 FreeSans 3416 90 0 0 la_data_out[20]
-flabel metal2 s 201464 -800 201576 480 0 FreeSans 3416 90 0 0 la_data_out[21]
-flabel metal2 s 205010 -800 205122 480 0 FreeSans 3416 90 0 0 la_data_out[22]
-flabel metal2 s 208556 -800 208668 480 0 FreeSans 3416 90 0 0 la_data_out[23]
-flabel metal2 s 212102 -800 212214 480 0 FreeSans 3416 90 0 0 la_data_out[24]
-flabel metal2 s 215648 -800 215760 480 0 FreeSans 3416 90 0 0 la_data_out[25]
-flabel metal2 s 219194 -800 219306 480 0 FreeSans 3416 90 0 0 la_data_out[26]
-flabel metal2 s 222740 -800 222852 480 0 FreeSans 3416 90 0 0 la_data_out[27]
-flabel metal2 s 226286 -800 226398 480 0 FreeSans 3416 90 0 0 la_data_out[28]
-flabel metal2 s 229832 -800 229944 480 0 FreeSans 3416 90 0 0 la_data_out[29]
-flabel metal2 s 134090 -800 134202 480 0 FreeSans 3416 90 0 0 la_data_out[2]
-flabel metal2 s 233378 -800 233490 480 0 FreeSans 3416 90 0 0 la_data_out[30]
-flabel metal2 s 236924 -800 237036 480 0 FreeSans 3416 90 0 0 la_data_out[31]
-flabel metal2 s 240470 -800 240582 480 0 FreeSans 3416 90 0 0 la_data_out[32]
-flabel metal2 s 244016 -800 244128 480 0 FreeSans 3416 90 0 0 la_data_out[33]
-flabel metal2 s 247562 -800 247674 480 0 FreeSans 3416 90 0 0 la_data_out[34]
-flabel metal2 s 251108 -800 251220 480 0 FreeSans 3416 90 0 0 la_data_out[35]
-flabel metal2 s 254654 -800 254766 480 0 FreeSans 3416 90 0 0 la_data_out[36]
-flabel metal2 s 258200 -800 258312 480 0 FreeSans 3416 90 0 0 la_data_out[37]
-flabel metal2 s 261746 -800 261858 480 0 FreeSans 3416 90 0 0 la_data_out[38]
-flabel metal2 s 265292 -800 265404 480 0 FreeSans 3416 90 0 0 la_data_out[39]
-flabel metal2 s 137636 -800 137748 480 0 FreeSans 3416 90 0 0 la_data_out[3]
-flabel metal2 s 268838 -800 268950 480 0 FreeSans 3416 90 0 0 la_data_out[40]
-flabel metal2 s 272384 -800 272496 480 0 FreeSans 3416 90 0 0 la_data_out[41]
-flabel metal2 s 275930 -800 276042 480 0 FreeSans 3416 90 0 0 la_data_out[42]
-flabel metal2 s 279476 -800 279588 480 0 FreeSans 3416 90 0 0 la_data_out[43]
-flabel metal2 s 283022 -800 283134 480 0 FreeSans 3416 90 0 0 la_data_out[44]
-flabel metal2 s 286568 -800 286680 480 0 FreeSans 3416 90 0 0 la_data_out[45]
-flabel metal2 s 290114 -800 290226 480 0 FreeSans 3416 90 0 0 la_data_out[46]
-flabel metal2 s 293660 -800 293772 480 0 FreeSans 3416 90 0 0 la_data_out[47]
-flabel metal2 s 297206 -800 297318 480 0 FreeSans 3416 90 0 0 la_data_out[48]
-flabel metal2 s 300752 -800 300864 480 0 FreeSans 3416 90 0 0 la_data_out[49]
-flabel metal2 s 141182 -800 141294 480 0 FreeSans 3416 90 0 0 la_data_out[4]
-flabel metal2 s 304298 -800 304410 480 0 FreeSans 3416 90 0 0 la_data_out[50]
-flabel metal2 s 307844 -800 307956 480 0 FreeSans 3416 90 0 0 la_data_out[51]
-flabel metal2 s 311390 -800 311502 480 0 FreeSans 3416 90 0 0 la_data_out[52]
-flabel metal2 s 314936 -800 315048 480 0 FreeSans 3416 90 0 0 la_data_out[53]
-flabel metal2 s 318482 -800 318594 480 0 FreeSans 3416 90 0 0 la_data_out[54]
-flabel metal2 s 322028 -800 322140 480 0 FreeSans 3416 90 0 0 la_data_out[55]
-flabel metal2 s 325574 -800 325686 480 0 FreeSans 3416 90 0 0 la_data_out[56]
-flabel metal2 s 329120 -800 329232 480 0 FreeSans 3416 90 0 0 la_data_out[57]
-flabel metal2 s 332666 -800 332778 480 0 FreeSans 3416 90 0 0 la_data_out[58]
-flabel metal2 s 336212 -800 336324 480 0 FreeSans 3416 90 0 0 la_data_out[59]
-flabel metal2 s 144728 -800 144840 480 0 FreeSans 3416 90 0 0 la_data_out[5]
-flabel metal2 s 339758 -800 339870 480 0 FreeSans 3416 90 0 0 la_data_out[60]
-flabel metal2 s 343304 -800 343416 480 0 FreeSans 3416 90 0 0 la_data_out[61]
-flabel metal2 s 346850 -800 346962 480 0 FreeSans 3416 90 0 0 la_data_out[62]
-flabel metal2 s 350396 -800 350508 480 0 FreeSans 3416 90 0 0 la_data_out[63]
-flabel metal2 s 353942 -800 354054 480 0 FreeSans 3416 90 0 0 la_data_out[64]
-flabel metal2 s 357488 -800 357600 480 0 FreeSans 3416 90 0 0 la_data_out[65]
-flabel metal2 s 361034 -800 361146 480 0 FreeSans 3416 90 0 0 la_data_out[66]
-flabel metal2 s 364580 -800 364692 480 0 FreeSans 3416 90 0 0 la_data_out[67]
-flabel metal2 s 368126 -800 368238 480 0 FreeSans 3416 90 0 0 la_data_out[68]
-flabel metal2 s 371672 -800 371784 480 0 FreeSans 3416 90 0 0 la_data_out[69]
-flabel metal2 s 148274 -800 148386 480 0 FreeSans 3416 90 0 0 la_data_out[6]
-flabel metal2 s 375218 -800 375330 480 0 FreeSans 3416 90 0 0 la_data_out[70]
-flabel metal2 s 378764 -800 378876 480 0 FreeSans 3416 90 0 0 la_data_out[71]
-flabel metal2 s 382310 -800 382422 480 0 FreeSans 3416 90 0 0 la_data_out[72]
-flabel metal2 s 385856 -800 385968 480 0 FreeSans 3416 90 0 0 la_data_out[73]
-flabel metal2 s 389402 -800 389514 480 0 FreeSans 3416 90 0 0 la_data_out[74]
-flabel metal2 s 392948 -800 393060 480 0 FreeSans 3416 90 0 0 la_data_out[75]
-flabel metal2 s 396494 -800 396606 480 0 FreeSans 3416 90 0 0 la_data_out[76]
-flabel metal2 s 400040 -800 400152 480 0 FreeSans 3416 90 0 0 la_data_out[77]
-flabel metal2 s 403586 -800 403698 480 0 FreeSans 3416 90 0 0 la_data_out[78]
-flabel metal2 s 407132 -800 407244 480 0 FreeSans 3416 90 0 0 la_data_out[79]
-flabel metal2 s 151820 -800 151932 480 0 FreeSans 3416 90 0 0 la_data_out[7]
-flabel metal2 s 410678 -800 410790 480 0 FreeSans 3416 90 0 0 la_data_out[80]
-flabel metal2 s 414224 -800 414336 480 0 FreeSans 3416 90 0 0 la_data_out[81]
-flabel metal2 s 417770 -800 417882 480 0 FreeSans 3416 90 0 0 la_data_out[82]
-flabel metal2 s 421316 -800 421428 480 0 FreeSans 3416 90 0 0 la_data_out[83]
-flabel metal2 s 424862 -800 424974 480 0 FreeSans 3416 90 0 0 la_data_out[84]
-flabel metal2 s 428408 -800 428520 480 0 FreeSans 3416 90 0 0 la_data_out[85]
-flabel metal2 s 431954 -800 432066 480 0 FreeSans 3416 90 0 0 la_data_out[86]
-flabel metal2 s 435500 -800 435612 480 0 FreeSans 3416 90 0 0 la_data_out[87]
-flabel metal2 s 439046 -800 439158 480 0 FreeSans 3416 90 0 0 la_data_out[88]
-flabel metal2 s 442592 -800 442704 480 0 FreeSans 3416 90 0 0 la_data_out[89]
-flabel metal2 s 155366 -800 155478 480 0 FreeSans 3416 90 0 0 la_data_out[8]
-flabel metal2 s 446138 -800 446250 480 0 FreeSans 3416 90 0 0 la_data_out[90]
-flabel metal2 s 449684 -800 449796 480 0 FreeSans 3416 90 0 0 la_data_out[91]
-flabel metal2 s 453230 -800 453342 480 0 FreeSans 3416 90 0 0 la_data_out[92]
-flabel metal2 s 456776 -800 456888 480 0 FreeSans 3416 90 0 0 la_data_out[93]
-flabel metal2 s 460322 -800 460434 480 0 FreeSans 3416 90 0 0 la_data_out[94]
-flabel metal2 s 463868 -800 463980 480 0 FreeSans 3416 90 0 0 la_data_out[95]
-flabel metal2 s 467414 -800 467526 480 0 FreeSans 3416 90 0 0 la_data_out[96]
-flabel metal2 s 470960 -800 471072 480 0 FreeSans 3416 90 0 0 la_data_out[97]
-flabel metal2 s 474506 -800 474618 480 0 FreeSans 3416 90 0 0 la_data_out[98]
-flabel metal2 s 478052 -800 478164 480 0 FreeSans 3416 90 0 0 la_data_out[99]
-flabel metal2 s 158912 -800 159024 480 0 FreeSans 3416 90 0 0 la_data_out[9]
-flabel metal2 s 128180 -800 128292 480 0 FreeSans 3416 90 0 0 la_oenb[0]
-flabel metal2 s 482780 -800 482892 480 0 FreeSans 3416 90 0 0 la_oenb[100]
-flabel metal2 s 486326 -800 486438 480 0 FreeSans 3416 90 0 0 la_oenb[101]
-flabel metal2 s 489872 -800 489984 480 0 FreeSans 3416 90 0 0 la_oenb[102]
-flabel metal2 s 493418 -800 493530 480 0 FreeSans 3416 90 0 0 la_oenb[103]
-flabel metal2 s 496964 -800 497076 480 0 FreeSans 3416 90 0 0 la_oenb[104]
-flabel metal2 s 500510 -800 500622 480 0 FreeSans 3416 90 0 0 la_oenb[105]
-flabel metal2 s 504056 -800 504168 480 0 FreeSans 3416 90 0 0 la_oenb[106]
-flabel metal2 s 507602 -800 507714 480 0 FreeSans 3416 90 0 0 la_oenb[107]
-flabel metal2 s 511148 -800 511260 480 0 FreeSans 3416 90 0 0 la_oenb[108]
-flabel metal2 s 514694 -800 514806 480 0 FreeSans 3416 90 0 0 la_oenb[109]
-flabel metal2 s 163640 -800 163752 480 0 FreeSans 3416 90 0 0 la_oenb[10]
-flabel metal2 s 518240 -800 518352 480 0 FreeSans 3416 90 0 0 la_oenb[110]
-flabel metal2 s 521786 -800 521898 480 0 FreeSans 3416 90 0 0 la_oenb[111]
-flabel metal2 s 525332 -800 525444 480 0 FreeSans 3416 90 0 0 la_oenb[112]
-flabel metal2 s 528878 -800 528990 480 0 FreeSans 3416 90 0 0 la_oenb[113]
-flabel metal2 s 532424 -800 532536 480 0 FreeSans 3416 90 0 0 la_oenb[114]
-flabel metal2 s 535970 -800 536082 480 0 FreeSans 3416 90 0 0 la_oenb[115]
-flabel metal2 s 539516 -800 539628 480 0 FreeSans 3416 90 0 0 la_oenb[116]
-flabel metal2 s 543062 -800 543174 480 0 FreeSans 3416 90 0 0 la_oenb[117]
-flabel metal2 s 546608 -800 546720 480 0 FreeSans 3416 90 0 0 la_oenb[118]
-flabel metal2 s 550154 -800 550266 480 0 FreeSans 3416 90 0 0 la_oenb[119]
-flabel metal2 s 167186 -800 167298 480 0 FreeSans 3416 90 0 0 la_oenb[11]
-flabel metal2 s 553700 -800 553812 480 0 FreeSans 3416 90 0 0 la_oenb[120]
-flabel metal2 s 557246 -800 557358 480 0 FreeSans 3416 90 0 0 la_oenb[121]
-flabel metal2 s 560792 -800 560904 480 0 FreeSans 3416 90 0 0 la_oenb[122]
-flabel metal2 s 564338 -800 564450 480 0 FreeSans 3416 90 0 0 la_oenb[123]
-flabel metal2 s 567884 -800 567996 480 0 FreeSans 3416 90 0 0 la_oenb[124]
-flabel metal2 s 571430 -800 571542 480 0 FreeSans 3416 90 0 0 la_oenb[125]
-flabel metal2 s 574976 -800 575088 480 0 FreeSans 3416 90 0 0 la_oenb[126]
-flabel metal2 s 578522 -800 578634 480 0 FreeSans 3416 90 0 0 la_oenb[127]
-flabel metal2 s 170732 -800 170844 480 0 FreeSans 3416 90 0 0 la_oenb[12]
-flabel metal2 s 174278 -800 174390 480 0 FreeSans 3416 90 0 0 la_oenb[13]
-flabel metal2 s 177824 -800 177936 480 0 FreeSans 3416 90 0 0 la_oenb[14]
-flabel metal2 s 181370 -800 181482 480 0 FreeSans 3416 90 0 0 la_oenb[15]
-flabel metal2 s 184916 -800 185028 480 0 FreeSans 3416 90 0 0 la_oenb[16]
-flabel metal2 s 188462 -800 188574 480 0 FreeSans 3416 90 0 0 la_oenb[17]
-flabel metal2 s 192008 -800 192120 480 0 FreeSans 3416 90 0 0 la_oenb[18]
-flabel metal2 s 195554 -800 195666 480 0 FreeSans 3416 90 0 0 la_oenb[19]
-flabel metal2 s 131726 -800 131838 480 0 FreeSans 3416 90 0 0 la_oenb[1]
-flabel metal2 s 199100 -800 199212 480 0 FreeSans 3416 90 0 0 la_oenb[20]
-flabel metal2 s 202646 -800 202758 480 0 FreeSans 3416 90 0 0 la_oenb[21]
-flabel metal2 s 206192 -800 206304 480 0 FreeSans 3416 90 0 0 la_oenb[22]
-flabel metal2 s 209738 -800 209850 480 0 FreeSans 3416 90 0 0 la_oenb[23]
-flabel metal2 s 213284 -800 213396 480 0 FreeSans 3416 90 0 0 la_oenb[24]
-flabel metal2 s 216830 -800 216942 480 0 FreeSans 3416 90 0 0 la_oenb[25]
-flabel metal2 s 220376 -800 220488 480 0 FreeSans 3416 90 0 0 la_oenb[26]
-flabel metal2 s 223922 -800 224034 480 0 FreeSans 3416 90 0 0 la_oenb[27]
-flabel metal2 s 227468 -800 227580 480 0 FreeSans 3416 90 0 0 la_oenb[28]
-flabel metal2 s 231014 -800 231126 480 0 FreeSans 3416 90 0 0 la_oenb[29]
-flabel metal2 s 135272 -800 135384 480 0 FreeSans 3416 90 0 0 la_oenb[2]
-flabel metal2 s 234560 -800 234672 480 0 FreeSans 3416 90 0 0 la_oenb[30]
-flabel metal2 s 238106 -800 238218 480 0 FreeSans 3416 90 0 0 la_oenb[31]
-flabel metal2 s 241652 -800 241764 480 0 FreeSans 3416 90 0 0 la_oenb[32]
-flabel metal2 s 245198 -800 245310 480 0 FreeSans 3416 90 0 0 la_oenb[33]
-flabel metal2 s 248744 -800 248856 480 0 FreeSans 3416 90 0 0 la_oenb[34]
-flabel metal2 s 252290 -800 252402 480 0 FreeSans 3416 90 0 0 la_oenb[35]
-flabel metal2 s 255836 -800 255948 480 0 FreeSans 3416 90 0 0 la_oenb[36]
-flabel metal2 s 259382 -800 259494 480 0 FreeSans 3416 90 0 0 la_oenb[37]
-flabel metal2 s 262928 -800 263040 480 0 FreeSans 3416 90 0 0 la_oenb[38]
-flabel metal2 s 266474 -800 266586 480 0 FreeSans 3416 90 0 0 la_oenb[39]
-flabel metal2 s 138818 -800 138930 480 0 FreeSans 3416 90 0 0 la_oenb[3]
-flabel metal2 s 270020 -800 270132 480 0 FreeSans 3416 90 0 0 la_oenb[40]
-flabel metal2 s 273566 -800 273678 480 0 FreeSans 3416 90 0 0 la_oenb[41]
-flabel metal2 s 277112 -800 277224 480 0 FreeSans 3416 90 0 0 la_oenb[42]
-flabel metal2 s 280658 -800 280770 480 0 FreeSans 3416 90 0 0 la_oenb[43]
-flabel metal2 s 284204 -800 284316 480 0 FreeSans 3416 90 0 0 la_oenb[44]
-flabel metal2 s 287750 -800 287862 480 0 FreeSans 3416 90 0 0 la_oenb[45]
-flabel metal2 s 291296 -800 291408 480 0 FreeSans 3416 90 0 0 la_oenb[46]
-flabel metal2 s 294842 -800 294954 480 0 FreeSans 3416 90 0 0 la_oenb[47]
-flabel metal2 s 298388 -800 298500 480 0 FreeSans 3416 90 0 0 la_oenb[48]
-flabel metal2 s 301934 -800 302046 480 0 FreeSans 3416 90 0 0 la_oenb[49]
-flabel metal2 s 142364 -800 142476 480 0 FreeSans 3416 90 0 0 la_oenb[4]
-flabel metal2 s 305480 -800 305592 480 0 FreeSans 3416 90 0 0 la_oenb[50]
-flabel metal2 s 309026 -800 309138 480 0 FreeSans 3416 90 0 0 la_oenb[51]
-flabel metal2 s 312572 -800 312684 480 0 FreeSans 3416 90 0 0 la_oenb[52]
-flabel metal2 s 316118 -800 316230 480 0 FreeSans 3416 90 0 0 la_oenb[53]
-flabel metal2 s 319664 -800 319776 480 0 FreeSans 3416 90 0 0 la_oenb[54]
-flabel metal2 s 323210 -800 323322 480 0 FreeSans 3416 90 0 0 la_oenb[55]
-flabel metal2 s 326756 -800 326868 480 0 FreeSans 3416 90 0 0 la_oenb[56]
-flabel metal2 s 330302 -800 330414 480 0 FreeSans 3416 90 0 0 la_oenb[57]
-flabel metal2 s 333848 -800 333960 480 0 FreeSans 3416 90 0 0 la_oenb[58]
-flabel metal2 s 337394 -800 337506 480 0 FreeSans 3416 90 0 0 la_oenb[59]
-flabel metal2 s 145910 -800 146022 480 0 FreeSans 3416 90 0 0 la_oenb[5]
-flabel metal2 s 340940 -800 341052 480 0 FreeSans 3416 90 0 0 la_oenb[60]
-flabel metal2 s 344486 -800 344598 480 0 FreeSans 3416 90 0 0 la_oenb[61]
-flabel metal2 s 348032 -800 348144 480 0 FreeSans 3416 90 0 0 la_oenb[62]
-flabel metal2 s 351578 -800 351690 480 0 FreeSans 3416 90 0 0 la_oenb[63]
-flabel metal2 s 355124 -800 355236 480 0 FreeSans 3416 90 0 0 la_oenb[64]
-flabel metal2 s 358670 -800 358782 480 0 FreeSans 3416 90 0 0 la_oenb[65]
-flabel metal2 s 362216 -800 362328 480 0 FreeSans 3416 90 0 0 la_oenb[66]
-flabel metal2 s 365762 -800 365874 480 0 FreeSans 3416 90 0 0 la_oenb[67]
-flabel metal2 s 369308 -800 369420 480 0 FreeSans 3416 90 0 0 la_oenb[68]
-flabel metal2 s 372854 -800 372966 480 0 FreeSans 3416 90 0 0 la_oenb[69]
-flabel metal2 s 149456 -800 149568 480 0 FreeSans 3416 90 0 0 la_oenb[6]
-flabel metal2 s 376400 -800 376512 480 0 FreeSans 3416 90 0 0 la_oenb[70]
-flabel metal2 s 379946 -800 380058 480 0 FreeSans 3416 90 0 0 la_oenb[71]
-flabel metal2 s 383492 -800 383604 480 0 FreeSans 3416 90 0 0 la_oenb[72]
-flabel metal2 s 387038 -800 387150 480 0 FreeSans 3416 90 0 0 la_oenb[73]
-flabel metal2 s 390584 -800 390696 480 0 FreeSans 3416 90 0 0 la_oenb[74]
-flabel metal2 s 394130 -800 394242 480 0 FreeSans 3416 90 0 0 la_oenb[75]
-flabel metal2 s 397676 -800 397788 480 0 FreeSans 3416 90 0 0 la_oenb[76]
-flabel metal2 s 401222 -800 401334 480 0 FreeSans 3416 90 0 0 la_oenb[77]
-flabel metal2 s 404768 -800 404880 480 0 FreeSans 3416 90 0 0 la_oenb[78]
-flabel metal2 s 408314 -800 408426 480 0 FreeSans 3416 90 0 0 la_oenb[79]
-flabel metal2 s 153002 -800 153114 480 0 FreeSans 3416 90 0 0 la_oenb[7]
-flabel metal2 s 411860 -800 411972 480 0 FreeSans 3416 90 0 0 la_oenb[80]
-flabel metal2 s 415406 -800 415518 480 0 FreeSans 3416 90 0 0 la_oenb[81]
-flabel metal2 s 418952 -800 419064 480 0 FreeSans 3416 90 0 0 la_oenb[82]
-flabel metal2 s 422498 -800 422610 480 0 FreeSans 3416 90 0 0 la_oenb[83]
-flabel metal2 s 426044 -800 426156 480 0 FreeSans 3416 90 0 0 la_oenb[84]
-flabel metal2 s 429590 -800 429702 480 0 FreeSans 3416 90 0 0 la_oenb[85]
-flabel metal2 s 433136 -800 433248 480 0 FreeSans 3416 90 0 0 la_oenb[86]
-flabel metal2 s 436682 -800 436794 480 0 FreeSans 3416 90 0 0 la_oenb[87]
-flabel metal2 s 440228 -800 440340 480 0 FreeSans 3416 90 0 0 la_oenb[88]
-flabel metal2 s 443774 -800 443886 480 0 FreeSans 3416 90 0 0 la_oenb[89]
-flabel metal2 s 156548 -800 156660 480 0 FreeSans 3416 90 0 0 la_oenb[8]
-flabel metal2 s 447320 -800 447432 480 0 FreeSans 3416 90 0 0 la_oenb[90]
-flabel metal2 s 450866 -800 450978 480 0 FreeSans 3416 90 0 0 la_oenb[91]
-flabel metal2 s 454412 -800 454524 480 0 FreeSans 3416 90 0 0 la_oenb[92]
-flabel metal2 s 457958 -800 458070 480 0 FreeSans 3416 90 0 0 la_oenb[93]
-flabel metal2 s 461504 -800 461616 480 0 FreeSans 3416 90 0 0 la_oenb[94]
-flabel metal2 s 465050 -800 465162 480 0 FreeSans 3416 90 0 0 la_oenb[95]
-flabel metal2 s 468596 -800 468708 480 0 FreeSans 3416 90 0 0 la_oenb[96]
-flabel metal2 s 472142 -800 472254 480 0 FreeSans 3416 90 0 0 la_oenb[97]
-flabel metal2 s 475688 -800 475800 480 0 FreeSans 3416 90 0 0 la_oenb[98]
-flabel metal2 s 479234 -800 479346 480 0 FreeSans 3416 90 0 0 la_oenb[99]
-flabel metal2 s 160094 -800 160206 480 0 FreeSans 3416 90 0 0 la_oenb[9]
-flabel metal2 s 579704 -800 579816 480 0 FreeSans 3416 90 0 0 user_clock2
-flabel metal2 s 580886 -800 580998 480 0 FreeSans 3416 90 0 0 user_irq[0]
-flabel metal2 s 582068 -800 582180 480 0 FreeSans 3416 90 0 0 user_irq[1]
-flabel metal2 s 583250 -800 583362 480 0 FreeSans 3416 90 0 0 user_irq[2]
-flabel metal3 s 582340 639784 584800 644584 0 FreeSans 3416 0 0 0 vccd1
-flabel metal3 s 582340 629784 584800 634584 0 FreeSans 3416 0 0 0 vccd1
-flabel metal3 s 0 643842 1660 648642 0 FreeSans 3416 0 0 0 vccd2
-flabel metal3 s 0 633842 1660 638642 0 FreeSans 3416 0 0 0 vccd2
-flabel metal3 s 582340 540562 584800 545362 0 FreeSans 3416 0 0 0 vdda1
-flabel metal3 s 582340 550562 584800 555362 0 FreeSans 3416 0 0 0 vdda1
-flabel metal3 s 582340 235230 584800 240030 0 FreeSans 3416 0 0 0 vdda1
-flabel metal3 s 582340 225230 584800 230030 0 FreeSans 3416 0 0 0 vdda1
-flabel metal3 s 0 204888 1660 209688 0 FreeSans 3416 0 0 0 vdda2
-flabel metal3 s 0 214888 1660 219688 0 FreeSans 3416 0 0 0 vdda2
-flabel metal3 s 520594 702340 525394 704800 0 FreeSans 5858 180 0 0 vssa1
-flabel metal3 s 510594 702340 515394 704800 0 FreeSans 5858 180 0 0 vssa1
-flabel metal3 s 582340 146830 584800 151630 0 FreeSans 3416 0 0 0 vssa1
-flabel metal3 s 582340 136830 584800 141630 0 FreeSans 3416 0 0 0 vssa1
-flabel metal3 s 0 559442 1660 564242 0 FreeSans 3416 0 0 0 vssa2
-flabel metal3 s 0 549442 1660 554242 0 FreeSans 3416 0 0 0 vssa2
-flabel metal3 s 582340 191430 584800 196230 0 FreeSans 3416 0 0 0 vssd1
-flabel metal3 s 582340 181430 584800 186230 0 FreeSans 3416 0 0 0 vssd1
-flabel metal3 s 0 172888 1660 177688 0 FreeSans 3416 0 0 0 vssd2
-flabel metal3 s 0 162888 1660 167688 0 FreeSans 3416 0 0 0 vssd2
-flabel metal2 s 524 -800 636 480 0 FreeSans 3416 90 0 0 wb_clk_i
-flabel metal2 s 1706 -800 1818 480 0 FreeSans 3416 90 0 0 wb_rst_i
-flabel metal2 s 2888 -800 3000 480 0 FreeSans 3416 90 0 0 wbs_ack_o
-flabel metal2 s 7616 -800 7728 480 0 FreeSans 3416 90 0 0 wbs_adr_i[0]
-flabel metal2 s 47804 -800 47916 480 0 FreeSans 3416 90 0 0 wbs_adr_i[10]
-flabel metal2 s 51350 -800 51462 480 0 FreeSans 3416 90 0 0 wbs_adr_i[11]
-flabel metal2 s 54896 -800 55008 480 0 FreeSans 3416 90 0 0 wbs_adr_i[12]
-flabel metal2 s 58442 -800 58554 480 0 FreeSans 3416 90 0 0 wbs_adr_i[13]
-flabel metal2 s 61988 -800 62100 480 0 FreeSans 3416 90 0 0 wbs_adr_i[14]
-flabel metal2 s 65534 -800 65646 480 0 FreeSans 3416 90 0 0 wbs_adr_i[15]
-flabel metal2 s 69080 -800 69192 480 0 FreeSans 3416 90 0 0 wbs_adr_i[16]
-flabel metal2 s 72626 -800 72738 480 0 FreeSans 3416 90 0 0 wbs_adr_i[17]
-flabel metal2 s 76172 -800 76284 480 0 FreeSans 3416 90 0 0 wbs_adr_i[18]
-flabel metal2 s 79718 -800 79830 480 0 FreeSans 3416 90 0 0 wbs_adr_i[19]
-flabel metal2 s 12344 -800 12456 480 0 FreeSans 3416 90 0 0 wbs_adr_i[1]
-flabel metal2 s 83264 -800 83376 480 0 FreeSans 3416 90 0 0 wbs_adr_i[20]
-flabel metal2 s 86810 -800 86922 480 0 FreeSans 3416 90 0 0 wbs_adr_i[21]
-flabel metal2 s 90356 -800 90468 480 0 FreeSans 3416 90 0 0 wbs_adr_i[22]
-flabel metal2 s 93902 -800 94014 480 0 FreeSans 3416 90 0 0 wbs_adr_i[23]
-flabel metal2 s 97448 -800 97560 480 0 FreeSans 3416 90 0 0 wbs_adr_i[24]
-flabel metal2 s 100994 -800 101106 480 0 FreeSans 3416 90 0 0 wbs_adr_i[25]
-flabel metal2 s 104540 -800 104652 480 0 FreeSans 3416 90 0 0 wbs_adr_i[26]
-flabel metal2 s 108086 -800 108198 480 0 FreeSans 3416 90 0 0 wbs_adr_i[27]
-flabel metal2 s 111632 -800 111744 480 0 FreeSans 3416 90 0 0 wbs_adr_i[28]
-flabel metal2 s 115178 -800 115290 480 0 FreeSans 3416 90 0 0 wbs_adr_i[29]
-flabel metal2 s 17072 -800 17184 480 0 FreeSans 3416 90 0 0 wbs_adr_i[2]
-flabel metal2 s 118724 -800 118836 480 0 FreeSans 3416 90 0 0 wbs_adr_i[30]
-flabel metal2 s 122270 -800 122382 480 0 FreeSans 3416 90 0 0 wbs_adr_i[31]
-flabel metal2 s 21800 -800 21912 480 0 FreeSans 3416 90 0 0 wbs_adr_i[3]
-flabel metal2 s 26528 -800 26640 480 0 FreeSans 3416 90 0 0 wbs_adr_i[4]
-flabel metal2 s 30074 -800 30186 480 0 FreeSans 3416 90 0 0 wbs_adr_i[5]
-flabel metal2 s 33620 -800 33732 480 0 FreeSans 3416 90 0 0 wbs_adr_i[6]
-flabel metal2 s 37166 -800 37278 480 0 FreeSans 3416 90 0 0 wbs_adr_i[7]
-flabel metal2 s 40712 -800 40824 480 0 FreeSans 3416 90 0 0 wbs_adr_i[8]
-flabel metal2 s 44258 -800 44370 480 0 FreeSans 3416 90 0 0 wbs_adr_i[9]
-flabel metal2 s 4070 -800 4182 480 0 FreeSans 3416 90 0 0 wbs_cyc_i
-flabel metal2 s 8798 -800 8910 480 0 FreeSans 3416 90 0 0 wbs_dat_i[0]
-flabel metal2 s 48986 -800 49098 480 0 FreeSans 3416 90 0 0 wbs_dat_i[10]
-flabel metal2 s 52532 -800 52644 480 0 FreeSans 3416 90 0 0 wbs_dat_i[11]
-flabel metal2 s 56078 -800 56190 480 0 FreeSans 3416 90 0 0 wbs_dat_i[12]
-flabel metal2 s 59624 -800 59736 480 0 FreeSans 3416 90 0 0 wbs_dat_i[13]
-flabel metal2 s 63170 -800 63282 480 0 FreeSans 3416 90 0 0 wbs_dat_i[14]
-flabel metal2 s 66716 -800 66828 480 0 FreeSans 3416 90 0 0 wbs_dat_i[15]
-flabel metal2 s 70262 -800 70374 480 0 FreeSans 3416 90 0 0 wbs_dat_i[16]
-flabel metal2 s 73808 -800 73920 480 0 FreeSans 3416 90 0 0 wbs_dat_i[17]
-flabel metal2 s 77354 -800 77466 480 0 FreeSans 3416 90 0 0 wbs_dat_i[18]
-flabel metal2 s 80900 -800 81012 480 0 FreeSans 3416 90 0 0 wbs_dat_i[19]
-flabel metal2 s 13526 -800 13638 480 0 FreeSans 3416 90 0 0 wbs_dat_i[1]
-flabel metal2 s 84446 -800 84558 480 0 FreeSans 3416 90 0 0 wbs_dat_i[20]
-flabel metal2 s 87992 -800 88104 480 0 FreeSans 3416 90 0 0 wbs_dat_i[21]
-flabel metal2 s 91538 -800 91650 480 0 FreeSans 3416 90 0 0 wbs_dat_i[22]
-flabel metal2 s 95084 -800 95196 480 0 FreeSans 3416 90 0 0 wbs_dat_i[23]
-flabel metal2 s 98630 -800 98742 480 0 FreeSans 3416 90 0 0 wbs_dat_i[24]
-flabel metal2 s 102176 -800 102288 480 0 FreeSans 3416 90 0 0 wbs_dat_i[25]
-flabel metal2 s 105722 -800 105834 480 0 FreeSans 3416 90 0 0 wbs_dat_i[26]
-flabel metal2 s 109268 -800 109380 480 0 FreeSans 3416 90 0 0 wbs_dat_i[27]
-flabel metal2 s 112814 -800 112926 480 0 FreeSans 3416 90 0 0 wbs_dat_i[28]
-flabel metal2 s 116360 -800 116472 480 0 FreeSans 3416 90 0 0 wbs_dat_i[29]
-flabel metal2 s 18254 -800 18366 480 0 FreeSans 3416 90 0 0 wbs_dat_i[2]
-flabel metal2 s 119906 -800 120018 480 0 FreeSans 3416 90 0 0 wbs_dat_i[30]
-flabel metal2 s 123452 -800 123564 480 0 FreeSans 3416 90 0 0 wbs_dat_i[31]
-flabel metal2 s 22982 -800 23094 480 0 FreeSans 3416 90 0 0 wbs_dat_i[3]
-flabel metal2 s 27710 -800 27822 480 0 FreeSans 3416 90 0 0 wbs_dat_i[4]
-flabel metal2 s 31256 -800 31368 480 0 FreeSans 3416 90 0 0 wbs_dat_i[5]
-flabel metal2 s 34802 -800 34914 480 0 FreeSans 3416 90 0 0 wbs_dat_i[6]
-flabel metal2 s 38348 -800 38460 480 0 FreeSans 3416 90 0 0 wbs_dat_i[7]
-flabel metal2 s 41894 -800 42006 480 0 FreeSans 3416 90 0 0 wbs_dat_i[8]
-flabel metal2 s 45440 -800 45552 480 0 FreeSans 3416 90 0 0 wbs_dat_i[9]
-flabel metal2 s 9980 -800 10092 480 0 FreeSans 3416 90 0 0 wbs_dat_o[0]
-flabel metal2 s 50168 -800 50280 480 0 FreeSans 3416 90 0 0 wbs_dat_o[10]
-flabel metal2 s 53714 -800 53826 480 0 FreeSans 3416 90 0 0 wbs_dat_o[11]
-flabel metal2 s 57260 -800 57372 480 0 FreeSans 3416 90 0 0 wbs_dat_o[12]
-flabel metal2 s 60806 -800 60918 480 0 FreeSans 3416 90 0 0 wbs_dat_o[13]
-flabel metal2 s 64352 -800 64464 480 0 FreeSans 3416 90 0 0 wbs_dat_o[14]
-flabel metal2 s 67898 -800 68010 480 0 FreeSans 3416 90 0 0 wbs_dat_o[15]
-flabel metal2 s 71444 -800 71556 480 0 FreeSans 3416 90 0 0 wbs_dat_o[16]
-flabel metal2 s 74990 -800 75102 480 0 FreeSans 3416 90 0 0 wbs_dat_o[17]
-flabel metal2 s 78536 -800 78648 480 0 FreeSans 3416 90 0 0 wbs_dat_o[18]
-flabel metal2 s 82082 -800 82194 480 0 FreeSans 3416 90 0 0 wbs_dat_o[19]
-flabel metal2 s 14708 -800 14820 480 0 FreeSans 3416 90 0 0 wbs_dat_o[1]
-flabel metal2 s 85628 -800 85740 480 0 FreeSans 3416 90 0 0 wbs_dat_o[20]
-flabel metal2 s 89174 -800 89286 480 0 FreeSans 3416 90 0 0 wbs_dat_o[21]
-flabel metal2 s 92720 -800 92832 480 0 FreeSans 3416 90 0 0 wbs_dat_o[22]
-flabel metal2 s 96266 -800 96378 480 0 FreeSans 3416 90 0 0 wbs_dat_o[23]
-flabel metal2 s 99812 -800 99924 480 0 FreeSans 3416 90 0 0 wbs_dat_o[24]
-flabel metal2 s 103358 -800 103470 480 0 FreeSans 3416 90 0 0 wbs_dat_o[25]
-flabel metal2 s 106904 -800 107016 480 0 FreeSans 3416 90 0 0 wbs_dat_o[26]
-flabel metal2 s 110450 -800 110562 480 0 FreeSans 3416 90 0 0 wbs_dat_o[27]
-flabel metal2 s 113996 -800 114108 480 0 FreeSans 3416 90 0 0 wbs_dat_o[28]
-flabel metal2 s 117542 -800 117654 480 0 FreeSans 3416 90 0 0 wbs_dat_o[29]
-flabel metal2 s 19436 -800 19548 480 0 FreeSans 3416 90 0 0 wbs_dat_o[2]
-flabel metal2 s 121088 -800 121200 480 0 FreeSans 3416 90 0 0 wbs_dat_o[30]
-flabel metal2 s 124634 -800 124746 480 0 FreeSans 3416 90 0 0 wbs_dat_o[31]
-flabel metal2 s 24164 -800 24276 480 0 FreeSans 3416 90 0 0 wbs_dat_o[3]
-flabel metal2 s 28892 -800 29004 480 0 FreeSans 3416 90 0 0 wbs_dat_o[4]
-flabel metal2 s 32438 -800 32550 480 0 FreeSans 3416 90 0 0 wbs_dat_o[5]
-flabel metal2 s 35984 -800 36096 480 0 FreeSans 3416 90 0 0 wbs_dat_o[6]
-flabel metal2 s 39530 -800 39642 480 0 FreeSans 3416 90 0 0 wbs_dat_o[7]
-flabel metal2 s 43076 -800 43188 480 0 FreeSans 3416 90 0 0 wbs_dat_o[8]
-flabel metal2 s 46622 -800 46734 480 0 FreeSans 3416 90 0 0 wbs_dat_o[9]
-flabel metal2 s 11162 -800 11274 480 0 FreeSans 3416 90 0 0 wbs_sel_i[0]
-flabel metal2 s 15890 -800 16002 480 0 FreeSans 3416 90 0 0 wbs_sel_i[1]
-flabel metal2 s 20618 -800 20730 480 0 FreeSans 3416 90 0 0 wbs_sel_i[2]
-flabel metal2 s 25346 -800 25458 480 0 FreeSans 3416 90 0 0 wbs_sel_i[3]
-flabel metal2 s 5252 -800 5364 480 0 FreeSans 3416 90 0 0 wbs_stb_i
-flabel metal2 s 6434 -800 6546 480 0 FreeSans 3416 90 0 0 wbs_we_i
-<< properties >>
-string FIXED_BBOX 0 0 584000 704000
-<< end >>