summaryrefslogtreecommitdiff
path: root/helper
diff options
context:
space:
mode:
authorPavel V. Shatov (Meister) <meisterpaul1@yandex.ru>2020-09-23 15:02:28 +0300
committerPavel V. Shatov (Meister) <meisterpaul1@yandex.ru>2020-09-23 15:02:28 +0300
commit6010cb79da1b58fc5a71806273bb789840dc106b (patch)
tree6b48c856b4142542a9241131be55bcd0f7fd7908 /helper
parent1144e0d0f546c6d76d58d7b2ae75bf27374272d7 (diff)
Turns out multi-part components were not fully converted and were not
recognized properly during forward annotation. Had to do a couple of experiments to figure out how KiCAD handles this and then write some quick and dirty scripts to repair the multi-part symbols (STM32, Artix-7 and the 74_244 logic buffer were affected).
Diffstat (limited to 'helper')
-rw-r--r--helper/74244.new36
-rw-r--r--helper/74244.old61
-rw-r--r--helper/artix7.new546
-rw-r--r--helper/artix7.old725
-rw-r--r--helper/convert-74244.py71
-rw-r--r--helper/convert-artix7.py71
-rw-r--r--helper/convert-stm32.py64
-rw-r--r--helper/stm32.new232
-rw-r--r--helper/stm32.old269
9 files changed, 2075 insertions, 0 deletions
diff --git a/helper/74244.new b/helper/74244.new
new file mode 100644
index 0000000..0f3cd7c
--- /dev/null
+++ b/helper/74244.new
@@ -0,0 +1,36 @@
+DEF 74*244DW_1 IC 0 40 Y Y 3 F N
+F0 "IC" -330 -530 60 H V L BNN
+F1 "74*244DW_1" -300 420 60 H V L BNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 1 1 10 -300 -400 -300 300
+P 2 1 1 10 -300 300 300 300
+P 2 1 1 10 300 -400 -300 -400
+P 2 1 1 10 300 300 300 -400
+X G 1 -500 -300 200 R 70 70 1 1 P
+X Y4 12 500 -100 200 L 70 70 1 1 T
+X Y3 14 500 0 200 L 70 70 1 1 T
+X Y2 16 500 100 200 L 70 70 1 1 T
+X Y1 18 500 200 200 L 70 70 1 1 T
+X A1 2 -500 200 200 R 70 70 1 1 P
+X A2 4 -500 100 200 R 70 70 1 1 P
+X A3 6 -500 0 200 R 70 70 1 1 P
+X A4 8 -500 -100 200 R 70 70 1 1 P
+P 2 2 1 10 -300 -400 -300 300
+P 2 2 1 10 -300 300 300 300
+P 2 2 1 10 300 -400 -300 -400
+P 2 2 1 10 300 300 300 -400
+X A1 11 -500 200 200 R 70 70 2 1 P
+X A2 13 -500 100 200 R 70 70 2 1 P
+X A3 15 -500 0 200 R 70 70 2 1 P
+X A4 17 -500 -100 200 R 70 70 2 1 P
+X G 19 -500 -300 200 R 70 70 2 1 P
+X Y4 3 500 -100 200 L 70 70 2 1 T
+X Y3 5 500 0 200 L 70 70 2 1 T
+X Y2 7 500 100 200 L 70 70 2 1 T
+X Y1 9 500 200 200 L 70 70 2 1 T
+X GND 10 0 -300 200 U 70 1 3 1 W
+X VCC 20 0 300 200 D 70 1 3 1 W
+ENDDRAW
+ENDDEF
diff --git a/helper/74244.old b/helper/74244.old
new file mode 100644
index 0000000..7968ada
--- /dev/null
+++ b/helper/74244.old
@@ -0,0 +1,61 @@
+#
+# 74*244DW_1
+#
+DEF 74*244DW_1 IC 0 40 Y Y 1 F N
+F0 "IC" -330 -530 60 H V L BNN
+F1 "74*244DW_1" -300 420 60 H V L BNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -300 -400 -300 300
+P 2 0 1 10 -300 300 300 300
+P 2 0 1 10 300 -400 -300 -400
+P 2 0 1 10 300 300 300 -400
+X G 1 -500 -300 200 R 70 70 0 1 P
+X Y4 12 500 -100 200 L 70 70 0 1 T
+X Y3 14 500 0 200 L 70 70 0 1 T
+X Y2 16 500 100 200 L 70 70 0 1 T
+X Y1 18 500 200 200 L 70 70 0 1 T
+X A1 2 -500 200 200 R 70 70 0 1 P
+X A2 4 -500 100 200 R 70 70 0 1 P
+X A3 6 -500 0 200 R 70 70 0 1 P
+X A4 8 -500 -100 200 R 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# 74*244DW_2
+#
+DEF 74*244DW_2 IC 0 40 Y Y 1 F N
+F0 "IC" -330 -530 60 H V L BNN
+F1 "74*244DW_2" -290 420 60 H V L BNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -300 -400 -300 300
+P 2 0 1 10 -300 300 300 300
+P 2 0 1 10 300 -400 -300 -400
+P 2 0 1 10 300 300 300 -400
+X A1 11 -500 200 200 R 70 70 0 1 P
+X A2 13 -500 100 200 R 70 70 0 1 P
+X A3 15 -500 0 200 R 70 70 0 1 P
+X A4 17 -500 -100 200 R 70 70 0 1 P
+X G 19 -500 -300 200 R 70 70 0 1 P
+X Y4 3 500 -100 200 L 70 70 0 1 T
+X Y3 5 500 0 200 L 70 70 0 1 T
+X Y2 7 500 100 200 L 70 70 0 1 T
+X Y1 9 500 200 200 L 70 70 0 1 T
+ENDDRAW
+ENDDEF
+#
+# 74*244DW_3
+#
+DEF 74*244DW_3 IC 0 40 Y Y 1 F N
+F0 "IC" 30 -150 60 H V L BNN
+F1 "74*244DW_3" 180 -20 60 H V L BNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+X GND 10 0 -300 200 U 70 1 0 1 W
+X VCC 20 0 300 200 D 70 1 0 1 W
+ENDDRAW
+ENDDEF
diff --git a/helper/artix7.new b/helper/artix7.new
new file mode 100644
index 0000000..2b7f650
--- /dev/null
+++ b/helper/artix7.new
@@ -0,0 +1,546 @@
+DEF XC7A200TFBG484 IC 0 40 Y Y 17 F N
+F0 "U" -410 -910 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+T 0 -410 810 50 0 1 1 122-1871-ND Normal 1 C C
+T 0 -410 810 50 0 1 1 XC7A200T-1FBG484C Normal 1 C C
+T 0 -410 810 50 0 1 1 Xilinx Normal 1 C C
+P 2 1 1 10 -400 -800 0 -800
+P 2 1 1 10 0 -800 0 800
+P 2 1 1 10 0 800 -400 800
+X VCCBATT_0 E12 200 700 200 L 70 70 1 1 P
+X VCCO_0 F12 200 600 200 L 70 70 1 1 P
+X DONE_0 G11 200 300 200 L 70 70 1 1 P
+X CCLK_0 L12 200 0 200 L 70 70 1 1 P
+X PROGRAM_B_0 N12 200 100 200 L 70 70 1 1 P
+X TDI_0 R13 200 -500 200 L 70 70 1 1 P
+X VCCO_0 T12 200 500 200 L 70 70 1 1 P
+X TMS_0 T13 200 -700 200 L 70 70 1 1 P
+X M1_0 U10 200 -200 200 L 70 70 1 1 P
+X M0_0 U11 200 -100 200 L 70 70 1 1 P
+X INIT_B_0 U12 200 200 200 L 70 70 1 1 C
+X TDO_0 U13 200 -600 200 L 70 70 1 1 O
+X CFGBVS_0 U8 200 400 200 L 70 70 1 1 P
+X M2_0 U9 200 -300 200 L 70 70 1 1 P
+X TCK_0 V12 200 -400 200 L 70 70 1 1 P
+P 2 10 1 10 -400 -2200 0 -2200
+P 2 10 1 10 0 -2200 0 2200
+P 2 10 1 10 0 2200 -400 2200
+X GND AA12 200 -1800 200 L 70 70 10 1 W
+X GND AA2 200 -1700 200 L 70 70 10 1 W
+X GND AA22 200 -1900 200 L 70 70 10 1 W
+X GND AB19 200 -2100 200 L 70 70 10 1 W
+X GND AB9 200 -2000 200 L 70 70 10 1 W
+X GND J10 200 2100 200 L 70 70 10 1 W
+X GND J12 200 2000 200 L 70 70 10 1 W
+X GND J18 200 1900 200 L 70 70 10 1 W
+X GND K11 200 1600 200 L 70 70 10 1 W
+X GND K15 200 1500 200 L 70 70 10 1 W
+X GND K5 200 1800 200 L 70 70 10 1 W
+X GND K7 200 1700 200 L 70 70 10 1 W
+X GND L2 200 1400 200 L 70 70 10 1 W
+X GND L22 200 1200 200 L 70 70 10 1 W
+X GND L8 200 1300 200 L 70 70 10 1 W
+X GND M11 200 1000 200 L 70 70 10 1 W
+X GND M19 200 900 200 L 70 70 10 1 W
+X GND M7 200 1100 200 L 70 70 10 1 W
+X GND N16 200 600 200 L 70 70 10 1 W
+X GND N6 200 800 200 L 70 70 10 1 W
+X GND N8 200 700 200 L 70 70 10 1 W
+X GND P11 200 200 200 L 70 70 10 1 W
+X GND P13 200 100 200 L 70 70 10 1 W
+X GND P3 200 500 200 L 70 70 10 1 W
+X GND P7 200 400 200 L 70 70 10 1 W
+X GND P9 200 300 200 L 70 70 10 1 W
+X GND R10 200 -100 200 L 70 70 10 1 W
+X GND R12 200 -200 200 L 70 70 10 1 W
+X GND R20 200 -300 200 L 70 70 10 1 W
+X GND R8 200 0 200 L 70 70 10 1 W
+X GND T11 200 -600 200 L 70 70 10 1 W
+X GND T17 200 -700 200 L 70 70 10 1 W
+X GND T7 200 -400 200 L 70 70 10 1 W
+X GND T9 200 -500 200 L 70 70 10 1 W
+X GND U14 200 -900 200 L 70 70 10 1 W
+X GND U4 200 -800 200 L 70 70 10 1 W
+X GND V1 200 -1000 200 L 70 70 10 1 W
+X GND V11 200 -1100 200 L 70 70 10 1 W
+X GND V21 200 -1200 200 L 70 70 10 1 W
+X GND W18 200 -1400 200 L 70 70 10 1 W
+X GND W8 200 -1300 200 L 70 70 10 1 W
+X GND Y15 200 -1600 200 L 70 70 10 1 W
+X GND Y5 200 -1500 200 L 70 70 10 1 W
+P 2 11 1 10 -400 -300 0 -300
+P 2 11 1 10 0 -300 0 300
+P 2 11 1 10 0 300 -400 300
+X MGTAVCC D10 200 100 200 L 70 70 11 1 P
+X MGTAVCC D6 200 200 200 L 70 70 11 1 P
+X MGTAVCC E8 200 0 200 L 70 70 11 1 P
+X MGTAVCC F7 200 -100 200 L 70 70 11 1 P
+X MGTAVCC F9 200 -200 200 L 70 70 11 1 P
+P 2 12 1 10 -400 -400 0 -400
+P 2 12 1 10 0 -400 0 300
+P 2 12 1 10 0 300 -400 300
+X MGTAVTT B11 200 -100 200 L 70 70 12 1 P
+X MGTAVTT B5 200 200 200 L 70 70 12 1 P
+X MGTAVTT B7 200 100 200 L 70 70 12 1 P
+X MGTAVTT B9 200 0 200 L 70 70 12 1 P
+X MGTAVTT C4 200 -200 200 L 70 70 12 1 P
+X MGTAVTT C8 200 -300 200 L 70 70 12 1 P
+P 2 13 1 10 -400 -200 0 -200
+P 2 13 1 10 0 -200 0 100
+P 2 13 1 10 0 100 -400 100
+X DXP_0 N10 200 0 200 L 70 70 13 1 P
+X DXN_0 N9 200 -100 200 L 70 70 13 1 P
+P 2 14 1 10 -400 -300 0 -300
+P 2 14 1 10 0 -300 0 300
+P 2 14 1 10 0 300 -400 300
+X VCCAUX H12 200 200 200 L 70 70 14 1 P
+X VCCAUX K12 200 100 200 L 70 70 14 1 P
+X VCCAUX M12 200 0 200 L 70 70 14 1 P
+X VCCAUX P12 200 -100 200 L 70 70 14 1 P
+X VCCAUX R11 200 -200 200 L 70 70 14 1 P
+P 2 15 1 10 -400 -200 0 -200
+P 2 15 1 10 0 -200 0 200
+P 2 15 1 10 0 200 -400 200
+X VCCBRAM J11 200 100 200 L 70 70 15 1 P
+X VCCBRAM L11 200 0 200 L 70 70 15 1 P
+X VCCBRAM N11 200 -100 200 L 70 70 15 1 P
+P 2 16 1 10 -400 -800 0 -800
+P 2 16 1 10 0 -800 0 700
+P 2 16 1 10 0 700 -400 700
+X VCCINT H10 200 500 200 L 70 70 16 1 P
+X VCCINT H8 200 600 200 L 70 70 16 1 P
+X VCCINT J7 200 400 200 L 70 70 16 1 P
+X VCCINT J9 200 300 200 L 70 70 16 1 P
+X VCCINT K8 200 200 200 L 70 70 16 1 P
+X VCCINT L7 200 100 200 L 70 70 16 1 P
+X VCCINT M8 200 0 200 L 70 70 16 1 P
+X VCCINT N7 200 -100 200 L 70 70 16 1 P
+X VCCINT P10 200 -300 200 L 70 70 16 1 P
+X VCCINT P8 200 -200 200 L 70 70 16 1 P
+X VCCINT R7 200 -400 200 L 70 70 16 1 P
+X VCCINT R9 200 -500 200 L 70 70 16 1 P
+X VCCINT T10 200 -700 200 L 70 70 16 1 P
+X VCCINT T8 200 -600 200 L 70 70 16 1 P
+P 2 17 1 10 -400 -400 0 -400
+P 2 17 1 10 0 -400 0 300
+P 2 17 1 10 0 300 -400 300
+X VCCADC_0 K10 200 200 200 L 70 70 17 1 P
+X GNDADC_0 K9 200 -300 200 L 70 70 17 1 P
+X VP_0 L10 200 100 200 L 70 70 17 1 P
+X VREFN_0 L9 200 -200 200 L 70 70 17 1 P
+X VREFP_0 M10 200 -100 200 L 70 70 17 1 P
+X VN_0 M9 200 0 200 L 70 70 17 1 P
+P 2 2 1 10 -400 -2100 0 -2100
+P 2 2 1 10 0 -2100 0 2000
+P 2 2 1 10 0 2000 -400 2000
+X IO_L9P_T1_DQS_13 AA10 200 -300 200 L 70 70 2 1 P
+X IO_L9N_T1_DQS_13 AA11 200 -400 200 L 70 70 2 1 P
+X IO_L3P_T0_DQS_13 AA13 200 900 200 L 70 70 2 1 P
+X IO_L5N_T0_13 AA14 200 400 200 L 70 70 2 1 P
+X IO_L4P_T0_13 AA15 200 700 200 L 70 70 2 1 P
+X IO_L1N_T0_13 AA16 200 1200 200 L 70 70 2 1 P
+X VCCO_13 AA17 200 1600 200 L 70 70 2 1 P
+X IO_L8P_T1_13 AA9 200 -100 200 L 70 70 2 1 P
+X IO_L8N_T1_13 AB10 200 -200 200 L 70 70 2 1 P
+X IO_L7P_T1_13 AB11 200 100 200 L 70 70 2 1 P
+X IO_L7N_T1_13 AB12 200 0 200 L 70 70 2 1 P
+X IO_L3N_T0_DQS_13 AB13 200 800 200 L 70 70 2 1 P
+X VCCO_13 AB14 200 1500 200 L 70 70 2 1 P
+X IO_L4N_T0_13 AB15 200 600 200 L 70 70 2 1 P
+X IO_L2P_T0_13 AB16 200 1100 200 L 70 70 2 1 P
+X IO_L2N_T0_13 AB17 200 1000 200 L 70 70 2 1 P
+X IO_L15P_T2_DQS_13 T14 200 -1500 200 L 70 70 2 1 P
+X IO_L15N_T2_DQS_13 T15 200 -1600 200 L 70 70 2 1 P
+X IO_L17P_T2_13 T16 200 -1900 200 L 70 70 2 1 P
+X IO_L14P_T2_SRCC_13 U15 200 -1300 200 L 70 70 2 1 P
+X IO_L17N_T2_13 U16 200 -2000 200 L 70 70 2 1 P
+X IO_L10P_T1_13 V10 200 -500 200 L 70 70 2 1 P
+X IO_L13P_T2_MRCC_13 V13 200 -1100 200 L 70 70 2 1 P
+X IO_L13N_T2_MRCC_13 V14 200 -1200 200 L 70 70 2 1 P
+X IO_L14N_T2_SRCC_13 V15 200 -1400 200 L 70 70 2 1 P
+X VCCO_13 V16 200 1900 200 L 70 70 2 1 P
+X IO_L10N_T1_13 W10 200 -600 200 L 70 70 2 1 P
+X IO_L12P_T1_MRCC_13 W11 200 -900 200 L 70 70 2 1 P
+X IO_L12N_T1_MRCC_13 W12 200 -1000 200 L 70 70 2 1 P
+X VCCO_13 W13 200 1800 200 L 70 70 2 1 P
+X IO_L6P_T0_13 W14 200 300 200 L 70 70 2 1 P
+X IO_L16P_T2_13 W15 200 -1700 200 L 70 70 2 1 P
+X IO_L16N_T2_13 W16 200 -1800 200 L 70 70 2 1 P
+X VCCO_13 Y10 200 1700 200 L 70 70 2 1 P
+X IO_L11P_T1_SRCC_13 Y11 200 -700 200 L 70 70 2 1 P
+X IO_L11N_T1_SRCC_13 Y12 200 -800 200 L 70 70 2 1 P
+X IO_L5P_T0_13 Y13 200 500 200 L 70 70 2 1 P
+X IO_L6N_T0_VREF_13 Y14 200 200 200 L 70 70 2 1 P
+X IO_L1P_T0_13 Y16 200 1300 200 L 70 70 2 1 P
+X IO_0_13 Y17 200 1400 200 L 70 70 2 1 P
+P 2 3 1 10 -400 -2900 0 -2900
+P 2 3 1 10 0 -2900 0 2800
+P 2 3 1 10 0 2800 -400 2800
+X IO_L17P_T2_A14_D30_14 AA18 200 -1200 200 L 70 70 3 1 P
+X IO_L15P_T2_DQS_RDWR_B_14 AA19 200 -800 200 L 70 70 3 1 P
+X IO_L8P_T1_D11_14 AA20 200 600 200 L 70 70 3 1 P
+X IO_L8N_T1_D12_14 AA21 200 500 200 L 70 70 3 1 P
+X IO_L17N_T2_A13_D29_14 AB18 200 -1300 200 L 70 70 3 1 P
+X IO_L15N_T2_DQS_DOUT_CSO_B_14 AB20 200 -900 200 L 70 70 3 1 P
+X IO_L10P_T1_D14_14 AB21 200 200 200 L 70 70 3 1 P
+X IO_L10N_T1_D15_14 AB22 200 100 200 L 70 70 3 1 P
+X VCCO_14 M14 200 2700 200 L 70 70 3 1 P
+X IO_L23P_T3_A03_D19_14 N13 200 -2400 200 L 70 70 3 1 P
+X IO_L23N_T3_A02_D18_14 N14 200 -2500 200 L 70 70 3 1 P
+X IO_25_14 N15 200 -2800 200 L 70 70 3 1 P
+X IO_L21P_T3_DQS_14 N17 200 -2000 200 L 70 70 3 1 P
+X IO_L19P_T3_A10_D26_14 P14 200 -1600 200 L 70 70 3 1 P
+X IO_L22P_T3_A05_D21_14 P15 200 -2200 200 L 70 70 3 1 P
+X IO_L24P_T3_A01_D17_14 P16 200 -2600 200 L 70 70 3 1 P
+X IO_L21N_T3_DQS_A06_D22_14 P17 200 -2100 200 L 70 70 3 1 P
+X VCCO_14 P18 200 2600 200 L 70 70 3 1 P
+X IO_L5P_T0_D06_14 P19 200 1200 200 L 70 70 3 1 P
+X IO_0_14 P20 200 2100 200 L 70 70 3 1 P
+X IO_L2P_T0_D02_14 P21 200 1800 200 L 70 70 3 1 P
+X IO_L1P_T0_D00_MOSI_14 P22 200 2000 200 L 70 70 3 1 P
+X IO_L19N_T3_A09_D25_VREF_14 R14 200 -1700 200 L 70 70 3 1 P
+X VCCO_14 R15 200 2500 200 L 70 70 3 1 P
+X IO_L22N_T3_A04_D20_14 R16 200 -2300 200 L 70 70 3 1 P
+X IO_L24N_T3_A00_D16_14 R17 200 -2700 200 L 70 70 3 1 P
+X IO_L20P_T3_A08_D24_14 R18 200 -1800 200 L 70 70 3 1 P
+X IO_L5N_T0_D07_14 R19 200 1100 200 L 70 70 3 1 P
+X IO_L2N_T0_D03_14 R21 200 1700 200 L 70 70 3 1 P
+X IO_L1N_T0_D01_DIN_14 R22 200 1900 200 L 70 70 3 1 P
+X IO_L20N_T3_A07_D23_14 T18 200 -1900 200 L 70 70 3 1 P
+X IO_L6P_T0_FCS_B_14 T19 200 1000 200 L 70 70 3 1 P
+X IO_L6N_T0_D08_VREF_14 T20 200 900 200 L 70 70 3 1 P
+X IO_L4P_T0_D04_14 T21 200 1400 200 L 70 70 3 1 P
+X VCCO_14 T22 200 2400 200 L 70 70 3 1 P
+X IO_L18P_T2_A12_D28_14 U17 200 -1400 200 L 70 70 3 1 P
+X IO_L18N_T2_A11_D27_14 U18 200 -1500 200 L 70 70 3 1 P
+X VCCO_14 U19 200 2300 200 L 70 70 3 1 P
+X IO_L11P_T1_SRCC_14 U20 200 0 200 L 70 70 3 1 P
+X IO_L4N_T0_D05_14 U21 200 1300 200 L 70 70 3 1 P
+X IO_L3P_T0_DQS_PUDC_B_14 U22 200 1600 200 L 70 70 3 1 P
+X IO_L16P_T2_CSI_B_14 V17 200 -1000 200 L 70 70 3 1 P
+X IO_L14P_T2_SRCC_14 V18 200 -600 200 L 70 70 3 1 P
+X IO_L14N_T2_SRCC_14 V19 200 -700 200 L 70 70 3 1 P
+X IO_L11N_T1_SRCC_14 V20 200 -100 200 L 70 70 3 1 P
+X IO_L3N_T0_DQS_EMCCLK_14 V22 200 1500 200 L 70 70 3 1 P
+X IO_L16N_T2_A15_D31_14 W17 200 -1100 200 L 70 70 3 1 P
+X IO_L12P_T1_MRCC_14 W19 200 -200 200 L 70 70 3 1 P
+X IO_L12N_T1_MRCC_14 W20 200 -300 200 L 70 70 3 1 P
+X IO_L7P_T1_D09_14 W21 200 800 200 L 70 70 3 1 P
+X IO_L7N_T1_D10_14 W22 200 700 200 L 70 70 3 1 P
+X IO_L13P_T2_MRCC_14 Y18 200 -400 200 L 70 70 3 1 P
+X IO_L13N_T2_MRCC_14 Y19 200 -500 200 L 70 70 3 1 P
+X VCCO_14 Y20 200 2200 200 L 70 70 3 1 P
+X IO_L9P_T1_DQS_14 Y21 200 400 200 L 70 70 3 1 P
+X IO_L9N_T1_DQS_D13_14 Y22 200 300 200 L 70 70 3 1 P
+P 2 4 1 10 -400 -2900 0 -2900
+P 2 4 1 10 0 -2900 0 2800
+P 2 4 1 10 0 2800 -400 2800
+X IO_L1N_T0_AD0N_15 G13 200 1900 200 L 70 70 4 1 P
+X IO_L2P_T0_AD8P_15 G15 200 1800 200 L 70 70 4 1 P
+X IO_L2N_T0_AD8N_15 G16 200 1700 200 L 70 70 4 1 P
+X IO_L4P_T0_15 G17 200 1400 200 L 70 70 4 1 P
+X IO_L4N_T0_15 G18 200 1300 200 L 70 70 4 1 P
+X VCCO_15 G19 200 2700 200 L 70 70 4 1 P
+X IO_L8N_T1_AD10N_15 G20 200 500 200 L 70 70 4 1 P
+X IO_L1P_T0_AD0P_15 H13 200 2000 200 L 70 70 4 1 P
+X IO_L3N_T0_DQS_AD1N_15 H14 200 1500 200 L 70 70 4 1 P
+X IO_L5N_T0_AD9N_15 H15 200 1100 200 L 70 70 4 1 P
+X VCCO_15 H16 200 2600 200 L 70 70 4 1 P
+X IO_L6P_T0_15 H17 200 1000 200 L 70 70 4 1 P
+X IO_L6N_T0_VREF_15 H18 200 900 200 L 70 70 4 1 P
+X IO_L12N_T1_MRCC_15 H19 200 -300 200 L 70 70 4 1 P
+X IO_L8P_T1_AD10P_15 H20 200 600 200 L 70 70 4 1 P
+X IO_L7N_T1_AD2N_15 H22 200 700 200 L 70 70 4 1 P
+X VCCO_15 J13 200 2500 200 L 70 70 4 1 P
+X IO_L3P_T0_DQS_AD1P_15 J14 200 1600 200 L 70 70 4 1 P
+X IO_L5P_T0_AD9P_15 J15 200 1200 200 L 70 70 4 1 P
+X IO_0_15 J16 200 2100 200 L 70 70 4 1 P
+X IO_L21N_T3_DQS_A18_15 J17 200 -2100 200 L 70 70 4 1 P
+X IO_L12P_T1_MRCC_15 J19 200 -200 200 L 70 70 4 1 P
+X IO_L11P_T1_SRCC_15 J20 200 0 200 L 70 70 4 1 P
+X IO_L11N_T1_SRCC_15 J21 200 -100 200 L 70 70 4 1 P
+X IO_L7P_T1_AD2P_15 J22 200 800 200 L 70 70 4 1 P
+X IO_L19P_T3_A22_15 K13 200 -1600 200 L 70 70 4 1 P
+X IO_L19N_T3_A21_VREF_15 K14 200 -1700 200 L 70 70 4 1 P
+X IO_L23N_T3_FWE_B_15 K16 200 -2500 200 L 70 70 4 1 P
+X IO_L21P_T3_DQS_15 K17 200 -2000 200 L 70 70 4 1 P
+X IO_L13P_T2_MRCC_15 K18 200 -400 200 L 70 70 4 1 P
+X IO_L13N_T2_MRCC_15 K19 200 -500 200 L 70 70 4 1 P
+X VCCO_15 K20 200 2400 200 L 70 70 4 1 P
+X IO_L9P_T1_DQS_AD3P_15 K21 200 400 200 L 70 70 4 1 P
+X IO_L9N_T1_DQS_AD3N_15 K22 200 300 200 L 70 70 4 1 P
+X IO_L20N_T3_A19_15 L13 200 -1900 200 L 70 70 4 1 P
+X IO_L22P_T3_A17_15 L14 200 -2200 200 L 70 70 4 1 P
+X IO_L22N_T3_A16_15 L15 200 -2300 200 L 70 70 4 1 P
+X IO_L23P_T3_FOE_B_15 L16 200 -2400 200 L 70 70 4 1 P
+X VCCO_15 L17 200 2300 200 L 70 70 4 1 P
+X IO_L16N_T2_A27_15 L18 200 -1100 200 L 70 70 4 1 P
+X IO_L14P_T2_SRCC_15 L19 200 -600 200 L 70 70 4 1 P
+X IO_L14N_T2_SRCC_15 L20 200 -700 200 L 70 70 4 1 P
+X IO_L10N_T1_AD11N_15 L21 200 100 200 L 70 70 4 1 P
+X IO_L20P_T3_A20_15 M13 200 -1800 200 L 70 70 4 1 P
+X IO_L24P_T3_RS1_15 M15 200 -2600 200 L 70 70 4 1 P
+X IO_L24N_T3_RS0_15 M16 200 -2700 200 L 70 70 4 1 P
+X IO_25_15 M17 200 -2800 200 L 70 70 4 1 P
+X IO_L16P_T2_A28_15 M18 200 -1000 200 L 70 70 4 1 P
+X IO_L18N_T2_A23_15 M20 200 -1500 200 L 70 70 4 1 P
+X IO_L10P_T1_AD11P_15 M21 200 200 200 L 70 70 4 1 P
+X IO_L15N_T2_DQS_ADV_B_15 M22 200 -900 200 L 70 70 4 1 P
+X IO_L17P_T2_A26_15 N18 200 -1200 200 L 70 70 4 1 P
+X IO_L17N_T2_A25_15 N19 200 -1300 200 L 70 70 4 1 P
+X IO_L18P_T2_A24_15 N20 200 -1400 200 L 70 70 4 1 P
+X VCCO_15 N21 200 2200 200 L 70 70 4 1 P
+X IO_L15P_T2_DQS_15 N22 200 -800 200 L 70 70 4 1 P
+P 2 5 1 10 -400 -2900 0 -2900
+P 2 5 1 10 0 -2900 0 2800
+P 2 5 1 10 0 2800 -400 2800
+X IO_L10P_T1_16 A13 200 200 200 L 70 70 5 1 P
+X IO_L10N_T1_16 A14 200 100 200 L 70 70 5 1 P
+X IO_L9P_T1_DQS_16 A15 200 400 200 L 70 70 5 1 P
+X IO_L9N_T1_DQS_16 A16 200 300 200 L 70 70 5 1 P
+X VCCO_16 A17 200 2700 200 L 70 70 5 1 P
+X IO_L17P_T2_16 A18 200 -1200 200 L 70 70 5 1 P
+X IO_L17N_T2_16 A19 200 -1300 200 L 70 70 5 1 P
+X IO_L16N_T2_16 A20 200 -1100 200 L 70 70 5 1 P
+X IO_L21N_T3_DQS_16 A21 200 -2100 200 L 70 70 5 1 P
+X IO_L8N_T1_16 B13 200 500 200 L 70 70 5 1 P
+X VCCO_16 B14 200 2600 200 L 70 70 5 1 P
+X IO_L7P_T1_16 B15 200 800 200 L 70 70 5 1 P
+X IO_L7N_T1_16 B16 200 700 200 L 70 70 5 1 P
+X IO_L11P_T1_SRCC_16 B17 200 0 200 L 70 70 5 1 P
+X IO_L11N_T1_SRCC_16 B18 200 -100 200 L 70 70 5 1 P
+X IO_L16P_T2_16 B20 200 -1000 200 L 70 70 5 1 P
+X IO_L21P_T3_DQS_16 B21 200 -2000 200 L 70 70 5 1 P
+X IO_L20N_T3_16 B22 200 -1900 200 L 70 70 5 1 P
+X IO_L8P_T1_16 C13 200 600 200 L 70 70 5 1 P
+X IO_L3P_T0_DQS_16 C14 200 1600 200 L 70 70 5 1 P
+X IO_L3N_T0_DQS_16 C15 200 1500 200 L 70 70 5 1 P
+X IO_L12N_T1_MRCC_16 C17 200 -300 200 L 70 70 5 1 P
+X IO_L13P_T2_MRCC_16 C18 200 -400 200 L 70 70 5 1 P
+X IO_L13N_T2_MRCC_16 C19 200 -500 200 L 70 70 5 1 P
+X IO_L19N_T3_VREF_16 C20 200 -1700 200 L 70 70 5 1 P
+X VCCO_16 C21 200 2500 200 L 70 70 5 1 P
+X IO_L20P_T3_16 C22 200 -1800 200 L 70 70 5 1 P
+X IO_L6P_T0_16 D14 200 1000 200 L 70 70 5 1 P
+X IO_L6N_T0_VREF_16 D15 200 900 200 L 70 70 5 1 P
+X IO_L5N_T0_16 D16 200 1100 200 L 70 70 5 1 P
+X IO_L12P_T1_MRCC_16 D17 200 -200 200 L 70 70 5 1 P
+X VCCO_16 D18 200 2400 200 L 70 70 5 1 P
+X IO_L14N_T2_SRCC_16 D19 200 -700 200 L 70 70 5 1 P
+X IO_L19P_T3_16 D20 200 -1600 200 L 70 70 5 1 P
+X IO_L23N_T3_16 D21 200 -2500 200 L 70 70 5 1 P
+X IO_L22N_T3_16 D22 200 -2300 200 L 70 70 5 1 P
+X IO_L4P_T0_16 E13 200 1400 200 L 70 70 5 1 P
+X IO_L4N_T0_16 E14 200 1300 200 L 70 70 5 1 P
+X VCCO_16 E15 200 2300 200 L 70 70 5 1 P
+X IO_L5P_T0_16 E16 200 1200 200 L 70 70 5 1 P
+X IO_L2N_T0_16 E17 200 1700 200 L 70 70 5 1 P
+X IO_L15N_T2_DQS_16 E18 200 -900 200 L 70 70 5 1 P
+X IO_L14P_T2_SRCC_16 E19 200 -600 200 L 70 70 5 1 P
+X IO_L23P_T3_16 E21 200 -2400 200 L 70 70 5 1 P
+X IO_L22P_T3_16 E22 200 -2200 200 L 70 70 5 1 P
+X IO_L1P_T0_16 F13 200 2000 200 L 70 70 5 1 P
+X IO_L1N_T0_16 F14 200 1900 200 L 70 70 5 1 P
+X IO_0_16 F15 200 2100 200 L 70 70 5 1 P
+X IO_L2P_T0_16 F16 200 1800 200 L 70 70 5 1 P
+X IO_L15P_T2_DQS_16 F18 200 -800 200 L 70 70 5 1 P
+X IO_L18P_T2_16 F19 200 -1400 200 L 70 70 5 1 P
+X IO_L18N_T2_16 F20 200 -1500 200 L 70 70 5 1 P
+X IO_25_16 F21 200 -2800 200 L 70 70 5 1 P
+X VCCO_16 F22 200 2200 200 L 70 70 5 1 P
+X IO_L24P_T3_16 G21 200 -2600 200 L 70 70 5 1 P
+X IO_L24N_T3_16 G22 200 -2700 200 L 70 70 5 1 P
+P 2 6 1 10 -400 -2900 0 -2900
+P 2 6 1 10 0 -2900 0 2800
+P 2 6 1 10 0 2800 -400 2800
+X IO_L7P_T1_34 AA1 200 800 200 L 70 70 6 1 P
+X IO_L9N_T1_DQS_34 AA3 200 300 200 L 70 70 6 1 P
+X IO_L11N_T1_SRCC_34 AA4 200 -100 200 L 70 70 6 1 P
+X IO_L10P_T1_34 AA5 200 200 200 L 70 70 6 1 P
+X IO_L18N_T2_34 AA6 200 -1500 200 L 70 70 6 1 P
+X VCCO_34 AA7 200 2300 200 L 70 70 6 1 P
+X IO_L22P_T3_34 AA8 200 -2200 200 L 70 70 6 1 P
+X IO_L7N_T1_34 AB1 200 700 200 L 70 70 6 1 P
+X IO_L8N_T1_34 AB2 200 500 200 L 70 70 6 1 P
+X IO_L8P_T1_34 AB3 200 600 200 L 70 70 6 1 P
+X VCCO_34 AB4 200 2200 200 L 70 70 6 1 P
+X IO_L10N_T1_34 AB5 200 100 200 L 70 70 6 1 P
+X IO_L20N_T3_34 AB6 200 -1900 200 L 70 70 6 1 P
+X IO_L20P_T3_34 AB7 200 -1800 200 L 70 70 6 1 P
+X IO_L22N_T3_34 AB8 200 -2300 200 L 70 70 6 1 P
+X IO_L3N_T0_DQS_34 R2 200 1500 200 L 70 70 6 1 P
+X IO_L3P_T0_DQS_34 R3 200 1600 200 L 70 70 6 1 P
+X IO_L13P_T2_MRCC_34 R4 200 -400 200 L 70 70 6 1 P
+X VCCO_34 R5 200 2700 200 L 70 70 6 1 P
+X IO_L17P_T2_34 R6 200 -1200 200 L 70 70 6 1 P
+X IO_L1P_T0_34 T1 200 2000 200 L 70 70 6 1 P
+X VCCO_34 T2 200 2600 200 L 70 70 6 1 P
+X IO_0_34 T3 200 2100 200 L 70 70 6 1 P
+X IO_L13N_T2_MRCC_34 T4 200 -500 200 L 70 70 6 1 P
+X IO_L14P_T2_SRCC_34 T5 200 -600 200 L 70 70 6 1 P
+X IO_L17N_T2_34 T6 200 -1300 200 L 70 70 6 1 P
+X IO_L1N_T0_34 U1 200 1900 200 L 70 70 6 1 P
+X IO_L2P_T0_34 U2 200 1800 200 L 70 70 6 1 P
+X IO_L6P_T0_34 U3 200 1000 200 L 70 70 6 1 P
+X IO_L14N_T2_SRCC_34 U5 200 -700 200 L 70 70 6 1 P
+X IO_L16P_T2_34 U6 200 -1000 200 L 70 70 6 1 P
+X IO_25_34 U7 200 -2800 200 L 70 70 6 1 P
+X IO_L2N_T0_34 V2 200 1700 200 L 70 70 6 1 P
+X IO_L6N_T0_VREF_34 V3 200 900 200 L 70 70 6 1 P
+X IO_L12P_T1_MRCC_34 V4 200 -200 200 L 70 70 6 1 P
+X IO_L16N_T2_34 V5 200 -1100 200 L 70 70 6 1 P
+X VCCO_34 V6 200 2500 200 L 70 70 6 1 P
+X IO_L19P_T3_34 V7 200 -1600 200 L 70 70 6 1 P
+X IO_L21N_T3_DQS_34 V8 200 -2100 200 L 70 70 6 1 P
+X IO_L21P_T3_DQS_34 V9 200 -2000 200 L 70 70 6 1 P
+X IO_L5P_T0_34 W1 200 1200 200 L 70 70 6 1 P
+X IO_L4P_T0_34 W2 200 1400 200 L 70 70 6 1 P
+X VCCO_34 W3 200 2400 200 L 70 70 6 1 P
+X IO_L12N_T1_MRCC_34 W4 200 -300 200 L 70 70 6 1 P
+X IO_L15N_T2_DQS_34 W5 200 -900 200 L 70 70 6 1 P
+X IO_L15P_T2_DQS_34 W6 200 -800 200 L 70 70 6 1 P
+X IO_L19N_T3_VREF_34 W7 200 -1700 200 L 70 70 6 1 P
+X IO_L24P_T3_34 W9 200 -2600 200 L 70 70 6 1 P
+X IO_L5N_T0_34 Y1 200 1100 200 L 70 70 6 1 P
+X IO_L4N_T0_34 Y2 200 1300 200 L 70 70 6 1 P
+X IO_L9P_T1_DQS_34 Y3 200 400 200 L 70 70 6 1 P
+X IO_L11P_T1_SRCC_34 Y4 200 0 200 L 70 70 6 1 P
+X IO_L18P_T2_34 Y6 200 -1400 200 L 70 70 6 1 P
+X IO_L23N_T3_34 Y7 200 -2500 200 L 70 70 6 1 P
+X IO_L23P_T3_34 Y8 200 -2400 200 L 70 70 6 1 P
+X IO_L24N_T3_34 Y9 200 -2700 200 L 70 70 6 1 P
+P 2 7 1 10 -400 -2900 0 -2900
+P 2 7 1 10 0 -2900 0 2800
+P 2 7 1 10 0 2800 -400 2800
+X IO_L1N_T0_AD4N_35 A1 200 1900 200 L 70 70 7 1 P
+X IO_L1P_T0_AD4P_35 B1 200 2000 200 L 70 70 7 1 P
+X IO_L2N_T0_AD12N_35 B2 200 1700 200 L 70 70 7 1 P
+X VCCO_35 C1 200 2700 200 L 70 70 7 1 P
+X IO_L2P_T0_AD12P_35 C2 200 1800 200 L 70 70 7 1 P
+X IO_L3N_T0_DQS_AD5N_35 D1 200 1500 200 L 70 70 7 1 P
+X IO_L4N_T0_35 D2 200 1300 200 L 70 70 7 1 P
+X IO_L3P_T0_DQS_AD5P_35 E1 200 1600 200 L 70 70 7 1 P
+X IO_L4P_T0_35 E2 200 1400 200 L 70 70 7 1 P
+X IO_L6N_T0_VREF_35 E3 200 900 200 L 70 70 7 1 P
+X IO_L5N_T0_AD13N_35 F1 200 1100 200 L 70 70 7 1 P
+X VCCO_35 F2 200 2600 200 L 70 70 7 1 P
+X IO_L6P_T0_35 F3 200 1000 200 L 70 70 7 1 P
+X IO_0_35 F4 200 2100 200 L 70 70 7 1 P
+X IO_L5P_T0_AD13P_35 G1 200 1200 200 L 70 70 7 1 P
+X IO_L8N_T1_AD14N_35 G2 200 500 200 L 70 70 7 1 P
+X IO_L11N_T1_SRCC_35 G3 200 -100 200 L 70 70 7 1 P
+X IO_L12N_T1_MRCC_35 G4 200 -300 200 L 70 70 7 1 P
+X IO_L8P_T1_AD14P_35 H2 200 600 200 L 70 70 7 1 P
+X IO_L11P_T1_SRCC_35 H3 200 0 200 L 70 70 7 1 P
+X IO_L12P_T1_MRCC_35 H4 200 -200 200 L 70 70 7 1 P
+X IO_L10N_T1_AD15N_35 H5 200 100 200 L 70 70 7 1 P
+X VCCO_35 H6 200 2500 200 L 70 70 7 1 P
+X IO_L7N_T1_AD6N_35 J1 200 700 200 L 70 70 7 1 P
+X IO_L9N_T1_DQS_AD7N_35 J2 200 300 200 L 70 70 7 1 P
+X VCCO_35 J3 200 2400 200 L 70 70 7 1 P
+X IO_L13N_T2_MRCC_35 J4 200 -500 200 L 70 70 7 1 P
+X IO_L10P_T1_AD15P_35 J5 200 200 200 L 70 70 7 1 P
+X IO_L17N_T2_35 J6 200 -1300 200 L 70 70 7 1 P
+X IO_L7P_T1_AD6P_35 K1 200 800 200 L 70 70 7 1 P
+X IO_L9P_T1_DQS_AD7P_35 K2 200 400 200 L 70 70 7 1 P
+X IO_L14N_T2_SRCC_35 K3 200 -700 200 L 70 70 7 1 P
+X IO_L13P_T2_MRCC_35 K4 200 -400 200 L 70 70 7 1 P
+X IO_L17P_T2_35 K6 200 -1200 200 L 70 70 7 1 P
+X IO_L15N_T2_DQS_35 L1 200 -900 200 L 70 70 7 1 P
+X IO_L14P_T2_SRCC_35 L3 200 -600 200 L 70 70 7 1 P
+X IO_L18N_T2_35 L4 200 -1500 200 L 70 70 7 1 P
+X IO_L18P_T2_35 L5 200 -1400 200 L 70 70 7 1 P
+X IO_25_35 L6 200 -2800 200 L 70 70 7 1 P
+X IO_L15P_T2_DQS_35 M1 200 -800 200 L 70 70 7 1 P
+X IO_L16N_T2_35 M2 200 -1100 200 L 70 70 7 1 P
+X IO_L16P_T2_35 M3 200 -1000 200 L 70 70 7 1 P
+X VCCO_35 M4 200 2300 200 L 70 70 7 1 P
+X IO_L23N_T3_35 M5 200 -2500 200 L 70 70 7 1 P
+X IO_L23P_T3_35 M6 200 -2400 200 L 70 70 7 1 P
+X VCCO_35 N1 200 2200 200 L 70 70 7 1 P
+X IO_L22N_T3_35 N2 200 -2300 200 L 70 70 7 1 P
+X IO_L19N_T3_VREF_35 N3 200 -1700 200 L 70 70 7 1 P
+X IO_L19P_T3_35 N4 200 -1600 200 L 70 70 7 1 P
+X IO_L24N_T3_35 N5 200 -2700 200 L 70 70 7 1 P
+X IO_L20N_T3_35 P1 200 -1900 200 L 70 70 7 1 P
+X IO_L22P_T3_35 P2 200 -2200 200 L 70 70 7 1 P
+X IO_L21N_T3_DQS_35 P4 200 -2100 200 L 70 70 7 1 P
+X IO_L21P_T3_DQS_35 P5 200 -2000 200 L 70 70 7 1 P
+X IO_L24P_T3_35 P6 200 -2600 200 L 70 70 7 1 P
+X IO_L20P_T3_35 R1 200 -1800 200 L 70 70 7 1 P
+P 2 8 1 10 -400 -1100 0 -1100
+P 2 8 1 10 0 -1100 0 1100
+P 2 8 1 10 0 1100 -400 1100
+X MGTPRXN1_216 A10 200 800 200 L 70 70 8 1 P
+X MGTPTXN3_216 A4 200 -200 200 L 70 70 8 1 P
+X MGTPTXN1_216 A6 200 0 200 L 70 70 8 1 P
+X MGTPRXN3_216 A8 200 600 200 L 70 70 8 1 P
+X MGTPRXP1_216 B10 200 400 200 L 70 70 8 1 P
+X MGTPTXP3_216 B4 200 -600 200 L 70 70 8 1 P
+X MGTPTXP1_216 B6 200 -400 200 L 70 70 8 1 P
+X MGTPRXP3_216 B8 200 200 200 L 70 70 8 1 P
+X MGTPRXN0_216 C11 200 900 200 L 70 70 8 1 P
+X MGTPTXN2_216 C5 200 -100 200 L 70 70 8 1 P
+X MGTPTXN0_216 C7 200 100 200 L 70 70 8 1 P
+X MGTPRXN2_216 C9 200 700 200 L 70 70 8 1 P
+X MGTPRXP0_216 D11 200 500 200 L 70 70 8 1 P
+X MGTPTXP2_216 D5 200 -500 200 L 70 70 8 1 P
+X MGTPTXP0_216 D7 200 -300 200 L 70 70 8 1 P
+X MGTPRXP2_216 D9 200 300 200 L 70 70 8 1 P
+X MGTREFCLK0N_216 E10 200 -800 200 L 70 70 8 1 P
+X MGTREFCLK1N_216 E6 200 -1000 200 L 70 70 8 1 P
+X MGTREFCLK0P_216 F10 200 -700 200 L 70 70 8 1 P
+X MGTREFCLK1P_216 F6 200 -900 200 L 70 70 8 1 P
+X MGTRREF_216 F8 200 1000 200 L 70 70 8 1 P
+P 2 9 1 10 -400 -2300 0 -2300
+P 2 9 1 10 0 -2300 0 2200
+P 2 9 1 10 0 2200 -400 2200
+X GND A11 200 1600 200 L 70 70 9 1 W
+X GND A12 200 1500 200 L 70 70 9 1 W
+X GND A2 200 2100 200 L 70 70 9 1 W
+X GND A22 200 1400 200 L 70 70 9 1 W
+X GND A3 200 2000 200 L 70 70 9 1 W
+X GND A5 200 1900 200 L 70 70 9 1 W
+X GND A7 200 1800 200 L 70 70 9 1 W
+X GND A9 200 1700 200 L 70 70 9 1 W
+X GND B12 200 1200 200 L 70 70 9 1 W
+X GND B19 200 1100 200 L 70 70 9 1 W
+X GND B3 200 1300 200 L 70 70 9 1 W
+X GND C10 200 800 200 L 70 70 9 1 W
+X GND C12 200 700 200 L 70 70 9 1 W
+X GND C16 200 600 200 L 70 70 9 1 W
+X GND C3 200 1000 200 L 70 70 9 1 W
+X GND C6 200 900 200 L 70 70 9 1 W
+X GND D12 200 200 200 L 70 70 9 1 W
+X GND D13 200 100 200 L 70 70 9 1 W
+X GND D3 200 500 200 L 70 70 9 1 W
+X GND D4 200 400 200 L 70 70 9 1 W
+X GND D8 200 300 200 L 70 70 9 1 W
+X GND E11 200 -400 200 L 70 70 9 1 W
+X GND E20 200 -500 200 L 70 70 9 1 W
+X GND E4 200 0 200 L 70 70 9 1 W
+X GND E5 200 -100 200 L 70 70 9 1 W
+X GND E7 200 -200 200 L 70 70 9 1 W
+X GND E9 200 -300 200 L 70 70 9 1 W
+X GND F11 200 -700 200 L 70 70 9 1 W
+X GND F17 200 -800 200 L 70 70 9 1 W
+X GND F5 200 -600 200 L 70 70 9 1 W
+X GND G10 200 -1400 200 L 70 70 9 1 W
+X GND G12 200 -1500 200 L 70 70 9 1 W
+X GND G14 200 -1600 200 L 70 70 9 1 W
+X GND G5 200 -900 200 L 70 70 9 1 W
+X GND G6 200 -1000 200 L 70 70 9 1 W
+X GND G7 200 -1100 200 L 70 70 9 1 W
+X GND G8 200 -1200 200 L 70 70 9 1 W
+X GND G9 200 -1300 200 L 70 70 9 1 W
+X GND H1 200 -1700 200 L 70 70 9 1 W
+X GND H11 200 -2000 200 L 70 70 9 1 W
+X GND H21 200 -2100 200 L 70 70 9 1 W
+X GND H7 200 -1800 200 L 70 70 9 1 W
+X GND H9 200 -1900 200 L 70 70 9 1 W
+X GND J8 200 -2200 200 L 70 70 9 1 W
+ENDDRAW
+ENDDEF
diff --git a/helper/artix7.old b/helper/artix7.old
new file mode 100644
index 0000000..5459368
--- /dev/null
+++ b/helper/artix7.old
@@ -0,0 +1,725 @@
+#
+# XC7A200TFBG484_1
+#
+DEF XC7A200TFBG484_1 IC 0 40 Y Y 1 F N
+F0 "U" -410 -910 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+T 0 -410 810 50 0 1 1 122-1871-ND Normal 1 C C
+T 0 -410 810 50 0 1 1 XC7A200T-1FBG484C Normal 1 C C
+T 0 -410 810 50 0 1 1 Xilinx Normal 1 C C
+P 2 0 1 10 -400 -800 0 -800
+P 2 0 1 10 0 -800 0 800
+P 2 0 1 10 0 800 -400 800
+X VCCBATT_0 E12 200 700 200 L 70 70 0 1 P
+X VCCO_0 F12 200 600 200 L 70 70 0 1 P
+X DONE_0 G11 200 300 200 L 70 70 0 1 P
+X CCLK_0 L12 200 0 200 L 70 70 0 1 P
+X PROGRAM_B_0 N12 200 100 200 L 70 70 0 1 P
+X TDI_0 R13 200 -500 200 L 70 70 0 1 P
+X VCCO_0 T12 200 500 200 L 70 70 0 1 P
+X TMS_0 T13 200 -700 200 L 70 70 0 1 P
+X M1_0 U10 200 -200 200 L 70 70 0 1 P
+X M0_0 U11 200 -100 200 L 70 70 0 1 P
+X INIT_B_0 U12 200 200 200 L 70 70 0 1 C
+X TDO_0 U13 200 -600 200 L 70 70 0 1 O
+X CFGBVS_0 U8 200 400 200 L 70 70 0 1 P
+X M2_0 U9 200 -300 200 L 70 70 0 1 P
+X TCK_0 V12 200 -400 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_10
+#
+DEF XC7A200TFBG484_10 IC 0 40 Y Y 1 F N
+F0 "U" -410 -2310 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2200 0 -2200
+P 2 0 1 10 0 -2200 0 2200
+P 2 0 1 10 0 2200 -400 2200
+X GND AA12 200 -1800 200 L 70 70 0 1 W
+X GND AA2 200 -1700 200 L 70 70 0 1 W
+X GND AA22 200 -1900 200 L 70 70 0 1 W
+X GND AB19 200 -2100 200 L 70 70 0 1 W
+X GND AB9 200 -2000 200 L 70 70 0 1 W
+X GND J10 200 2100 200 L 70 70 0 1 W
+X GND J12 200 2000 200 L 70 70 0 1 W
+X GND J18 200 1900 200 L 70 70 0 1 W
+X GND K11 200 1600 200 L 70 70 0 1 W
+X GND K15 200 1500 200 L 70 70 0 1 W
+X GND K5 200 1800 200 L 70 70 0 1 W
+X GND K7 200 1700 200 L 70 70 0 1 W
+X GND L2 200 1400 200 L 70 70 0 1 W
+X GND L22 200 1200 200 L 70 70 0 1 W
+X GND L8 200 1300 200 L 70 70 0 1 W
+X GND M11 200 1000 200 L 70 70 0 1 W
+X GND M19 200 900 200 L 70 70 0 1 W
+X GND M7 200 1100 200 L 70 70 0 1 W
+X GND N16 200 600 200 L 70 70 0 1 W
+X GND N6 200 800 200 L 70 70 0 1 W
+X GND N8 200 700 200 L 70 70 0 1 W
+X GND P11 200 200 200 L 70 70 0 1 W
+X GND P13 200 100 200 L 70 70 0 1 W
+X GND P3 200 500 200 L 70 70 0 1 W
+X GND P7 200 400 200 L 70 70 0 1 W
+X GND P9 200 300 200 L 70 70 0 1 W
+X GND R10 200 -100 200 L 70 70 0 1 W
+X GND R12 200 -200 200 L 70 70 0 1 W
+X GND R20 200 -300 200 L 70 70 0 1 W
+X GND R8 200 0 200 L 70 70 0 1 W
+X GND T11 200 -600 200 L 70 70 0 1 W
+X GND T17 200 -700 200 L 70 70 0 1 W
+X GND T7 200 -400 200 L 70 70 0 1 W
+X GND T9 200 -500 200 L 70 70 0 1 W
+X GND U14 200 -900 200 L 70 70 0 1 W
+X GND U4 200 -800 200 L 70 70 0 1 W
+X GND V1 200 -1000 200 L 70 70 0 1 W
+X GND V11 200 -1100 200 L 70 70 0 1 W
+X GND V21 200 -1200 200 L 70 70 0 1 W
+X GND W18 200 -1400 200 L 70 70 0 1 W
+X GND W8 200 -1300 200 L 70 70 0 1 W
+X GND Y15 200 -1600 200 L 70 70 0 1 W
+X GND Y5 200 -1500 200 L 70 70 0 1 W
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_11
+#
+DEF XC7A200TFBG484_11 IC 0 40 Y Y 1 F N
+F0 "U" -410 -410 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -300 0 -300
+P 2 0 1 10 0 -300 0 300
+P 2 0 1 10 0 300 -400 300
+X MGTAVCC D10 200 100 200 L 70 70 0 1 P
+X MGTAVCC D6 200 200 200 L 70 70 0 1 P
+X MGTAVCC E8 200 0 200 L 70 70 0 1 P
+X MGTAVCC F7 200 -100 200 L 70 70 0 1 P
+X MGTAVCC F9 200 -200 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_12
+#
+DEF XC7A200TFBG484_12 IC 0 40 Y Y 1 F N
+F0 "U" -410 -510 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -400 0 -400
+P 2 0 1 10 0 -400 0 300
+P 2 0 1 10 0 300 -400 300
+X MGTAVTT B11 200 -100 200 L 70 70 0 1 P
+X MGTAVTT B5 200 200 200 L 70 70 0 1 P
+X MGTAVTT B7 200 100 200 L 70 70 0 1 P
+X MGTAVTT B9 200 0 200 L 70 70 0 1 P
+X MGTAVTT C4 200 -200 200 L 70 70 0 1 P
+X MGTAVTT C8 200 -300 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_13
+#
+DEF XC7A200TFBG484_13 IC 0 40 Y Y 1 F N
+F0 "U" -410 -310 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -200 0 -200
+P 2 0 1 10 0 -200 0 100
+P 2 0 1 10 0 100 -400 100
+X DXP_0 N10 200 0 200 L 70 70 0 1 P
+X DXN_0 N9 200 -100 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_14
+#
+DEF XC7A200TFBG484_14 IC 0 40 Y Y 1 F N
+F0 "U" -410 -410 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -300 0 -300
+P 2 0 1 10 0 -300 0 300
+P 2 0 1 10 0 300 -400 300
+X VCCAUX H12 200 200 200 L 70 70 0 1 P
+X VCCAUX K12 200 100 200 L 70 70 0 1 P
+X VCCAUX M12 200 0 200 L 70 70 0 1 P
+X VCCAUX P12 200 -100 200 L 70 70 0 1 P
+X VCCAUX R11 200 -200 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_15
+#
+DEF XC7A200TFBG484_15 IC 0 40 Y Y 1 F N
+F0 "U" -410 -310 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -200 0 -200
+P 2 0 1 10 0 -200 0 200
+P 2 0 1 10 0 200 -400 200
+X VCCBRAM J11 200 100 200 L 70 70 0 1 P
+X VCCBRAM L11 200 0 200 L 70 70 0 1 P
+X VCCBRAM N11 200 -100 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_16
+#
+DEF XC7A200TFBG484_16 IC 0 40 Y Y 1 F N
+F0 "U" -410 -810 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -800 0 -800
+P 2 0 1 10 0 -800 0 700
+P 2 0 1 10 0 700 -400 700
+X VCCINT H10 200 500 200 L 70 70 0 1 P
+X VCCINT H8 200 600 200 L 70 70 0 1 P
+X VCCINT J7 200 400 200 L 70 70 0 1 P
+X VCCINT J9 200 300 200 L 70 70 0 1 P
+X VCCINT K8 200 200 200 L 70 70 0 1 P
+X VCCINT L7 200 100 200 L 70 70 0 1 P
+X VCCINT M8 200 0 200 L 70 70 0 1 P
+X VCCINT N7 200 -100 200 L 70 70 0 1 P
+X VCCINT P10 200 -300 200 L 70 70 0 1 P
+X VCCINT P8 200 -200 200 L 70 70 0 1 P
+X VCCINT R7 200 -400 200 L 70 70 0 1 P
+X VCCINT R9 200 -500 200 L 70 70 0 1 P
+X VCCINT T10 200 -700 200 L 70 70 0 1 P
+X VCCINT T8 200 -600 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_17
+#
+DEF XC7A200TFBG484_17 IC 0 40 Y Y 1 F N
+F0 "U" -410 -510 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -400 0 -400
+P 2 0 1 10 0 -400 0 300
+P 2 0 1 10 0 300 -400 300
+X VCCADC_0 K10 200 200 200 L 70 70 0 1 P
+X GNDADC_0 K9 200 -300 200 L 70 70 0 1 P
+X VP_0 L10 200 100 200 L 70 70 0 1 P
+X VREFN_0 L9 200 -200 200 L 70 70 0 1 P
+X VREFP_0 M10 200 -100 200 L 70 70 0 1 P
+X VN_0 M9 200 0 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_2
+#
+DEF XC7A200TFBG484_2 IC 0 40 Y Y 1 F N
+F0 "U" -410 -2210 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2100 0 -2100
+P 2 0 1 10 0 -2100 0 2000
+P 2 0 1 10 0 2000 -400 2000
+X IO_L9P_T1_DQS_13 AA10 200 -300 200 L 70 70 0 1 P
+X IO_L9N_T1_DQS_13 AA11 200 -400 200 L 70 70 0 1 P
+X IO_L3P_T0_DQS_13 AA13 200 900 200 L 70 70 0 1 P
+X IO_L5N_T0_13 AA14 200 400 200 L 70 70 0 1 P
+X IO_L4P_T0_13 AA15 200 700 200 L 70 70 0 1 P
+X IO_L1N_T0_13 AA16 200 1200 200 L 70 70 0 1 P
+X VCCO_13 AA17 200 1600 200 L 70 70 0 1 P
+X IO_L8P_T1_13 AA9 200 -100 200 L 70 70 0 1 P
+X IO_L8N_T1_13 AB10 200 -200 200 L 70 70 0 1 P
+X IO_L7P_T1_13 AB11 200 100 200 L 70 70 0 1 P
+X IO_L7N_T1_13 AB12 200 0 200 L 70 70 0 1 P
+X IO_L3N_T0_DQS_13 AB13 200 800 200 L 70 70 0 1 P
+X VCCO_13 AB14 200 1500 200 L 70 70 0 1 P
+X IO_L4N_T0_13 AB15 200 600 200 L 70 70 0 1 P
+X IO_L2P_T0_13 AB16 200 1100 200 L 70 70 0 1 P
+X IO_L2N_T0_13 AB17 200 1000 200 L 70 70 0 1 P
+X IO_L15P_T2_DQS_13 T14 200 -1500 200 L 70 70 0 1 P
+X IO_L15N_T2_DQS_13 T15 200 -1600 200 L 70 70 0 1 P
+X IO_L17P_T2_13 T16 200 -1900 200 L 70 70 0 1 P
+X IO_L14P_T2_SRCC_13 U15 200 -1300 200 L 70 70 0 1 P
+X IO_L17N_T2_13 U16 200 -2000 200 L 70 70 0 1 P
+X IO_L10P_T1_13 V10 200 -500 200 L 70 70 0 1 P
+X IO_L13P_T2_MRCC_13 V13 200 -1100 200 L 70 70 0 1 P
+X IO_L13N_T2_MRCC_13 V14 200 -1200 200 L 70 70 0 1 P
+X IO_L14N_T2_SRCC_13 V15 200 -1400 200 L 70 70 0 1 P
+X VCCO_13 V16 200 1900 200 L 70 70 0 1 P
+X IO_L10N_T1_13 W10 200 -600 200 L 70 70 0 1 P
+X IO_L12P_T1_MRCC_13 W11 200 -900 200 L 70 70 0 1 P
+X IO_L12N_T1_MRCC_13 W12 200 -1000 200 L 70 70 0 1 P
+X VCCO_13 W13 200 1800 200 L 70 70 0 1 P
+X IO_L6P_T0_13 W14 200 300 200 L 70 70 0 1 P
+X IO_L16P_T2_13 W15 200 -1700 200 L 70 70 0 1 P
+X IO_L16N_T2_13 W16 200 -1800 200 L 70 70 0 1 P
+X VCCO_13 Y10 200 1700 200 L 70 70 0 1 P
+X IO_L11P_T1_SRCC_13 Y11 200 -700 200 L 70 70 0 1 P
+X IO_L11N_T1_SRCC_13 Y12 200 -800 200 L 70 70 0 1 P
+X IO_L5P_T0_13 Y13 200 500 200 L 70 70 0 1 P
+X IO_L6N_T0_VREF_13 Y14 200 200 200 L 70 70 0 1 P
+X IO_L1P_T0_13 Y16 200 1300 200 L 70 70 0 1 P
+X IO_0_13 Y17 200 1400 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_3
+#
+DEF XC7A200TFBG484_3 IC 0 40 Y Y 1 F N
+F0 "U" -410 -3010 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2900 0 -2900
+P 2 0 1 10 0 -2900 0 2800
+P 2 0 1 10 0 2800 -400 2800
+X IO_L17P_T2_A14_D30_14 AA18 200 -1200 200 L 70 70 0 1 P
+X IO_L15P_T2_DQS_RDWR_B_14 AA19 200 -800 200 L 70 70 0 1 P
+X IO_L8P_T1_D11_14 AA20 200 600 200 L 70 70 0 1 P
+X IO_L8N_T1_D12_14 AA21 200 500 200 L 70 70 0 1 P
+X IO_L17N_T2_A13_D29_14 AB18 200 -1300 200 L 70 70 0 1 P
+X IO_L15N_T2_DQS_DOUT_CSO_B_14 AB20 200 -900 200 L 70 70 0 1 P
+X IO_L10P_T1_D14_14 AB21 200 200 200 L 70 70 0 1 P
+X IO_L10N_T1_D15_14 AB22 200 100 200 L 70 70 0 1 P
+X VCCO_14 M14 200 2700 200 L 70 70 0 1 P
+X IO_L23P_T3_A03_D19_14 N13 200 -2400 200 L 70 70 0 1 P
+X IO_L23N_T3_A02_D18_14 N14 200 -2500 200 L 70 70 0 1 P
+X IO_25_14 N15 200 -2800 200 L 70 70 0 1 P
+X IO_L21P_T3_DQS_14 N17 200 -2000 200 L 70 70 0 1 P
+X IO_L19P_T3_A10_D26_14 P14 200 -1600 200 L 70 70 0 1 P
+X IO_L22P_T3_A05_D21_14 P15 200 -2200 200 L 70 70 0 1 P
+X IO_L24P_T3_A01_D17_14 P16 200 -2600 200 L 70 70 0 1 P
+X IO_L21N_T3_DQS_A06_D22_14 P17 200 -2100 200 L 70 70 0 1 P
+X VCCO_14 P18 200 2600 200 L 70 70 0 1 P
+X IO_L5P_T0_D06_14 P19 200 1200 200 L 70 70 0 1 P
+X IO_0_14 P20 200 2100 200 L 70 70 0 1 P
+X IO_L2P_T0_D02_14 P21 200 1800 200 L 70 70 0 1 P
+X IO_L1P_T0_D00_MOSI_14 P22 200 2000 200 L 70 70 0 1 P
+X IO_L19N_T3_A09_D25_VREF_14 R14 200 -1700 200 L 70 70 0 1 P
+X VCCO_14 R15 200 2500 200 L 70 70 0 1 P
+X IO_L22N_T3_A04_D20_14 R16 200 -2300 200 L 70 70 0 1 P
+X IO_L24N_T3_A00_D16_14 R17 200 -2700 200 L 70 70 0 1 P
+X IO_L20P_T3_A08_D24_14 R18 200 -1800 200 L 70 70 0 1 P
+X IO_L5N_T0_D07_14 R19 200 1100 200 L 70 70 0 1 P
+X IO_L2N_T0_D03_14 R21 200 1700 200 L 70 70 0 1 P
+X IO_L1N_T0_D01_DIN_14 R22 200 1900 200 L 70 70 0 1 P
+X IO_L20N_T3_A07_D23_14 T18 200 -1900 200 L 70 70 0 1 P
+X IO_L6P_T0_FCS_B_14 T19 200 1000 200 L 70 70 0 1 P
+X IO_L6N_T0_D08_VREF_14 T20 200 900 200 L 70 70 0 1 P
+X IO_L4P_T0_D04_14 T21 200 1400 200 L 70 70 0 1 P
+X VCCO_14 T22 200 2400 200 L 70 70 0 1 P
+X IO_L18P_T2_A12_D28_14 U17 200 -1400 200 L 70 70 0 1 P
+X IO_L18N_T2_A11_D27_14 U18 200 -1500 200 L 70 70 0 1 P
+X VCCO_14 U19 200 2300 200 L 70 70 0 1 P
+X IO_L11P_T1_SRCC_14 U20 200 0 200 L 70 70 0 1 P
+X IO_L4N_T0_D05_14 U21 200 1300 200 L 70 70 0 1 P
+X IO_L3P_T0_DQS_PUDC_B_14 U22 200 1600 200 L 70 70 0 1 P
+X IO_L16P_T2_CSI_B_14 V17 200 -1000 200 L 70 70 0 1 P
+X IO_L14P_T2_SRCC_14 V18 200 -600 200 L 70 70 0 1 P
+X IO_L14N_T2_SRCC_14 V19 200 -700 200 L 70 70 0 1 P
+X IO_L11N_T1_SRCC_14 V20 200 -100 200 L 70 70 0 1 P
+X IO_L3N_T0_DQS_EMCCLK_14 V22 200 1500 200 L 70 70 0 1 P
+X IO_L16N_T2_A15_D31_14 W17 200 -1100 200 L 70 70 0 1 P
+X IO_L12P_T1_MRCC_14 W19 200 -200 200 L 70 70 0 1 P
+X IO_L12N_T1_MRCC_14 W20 200 -300 200 L 70 70 0 1 P
+X IO_L7P_T1_D09_14 W21 200 800 200 L 70 70 0 1 P
+X IO_L7N_T1_D10_14 W22 200 700 200 L 70 70 0 1 P
+X IO_L13P_T2_MRCC_14 Y18 200 -400 200 L 70 70 0 1 P
+X IO_L13N_T2_MRCC_14 Y19 200 -500 200 L 70 70 0 1 P
+X VCCO_14 Y20 200 2200 200 L 70 70 0 1 P
+X IO_L9P_T1_DQS_14 Y21 200 400 200 L 70 70 0 1 P
+X IO_L9N_T1_DQS_D13_14 Y22 200 300 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_4
+#
+DEF XC7A200TFBG484_4 IC 0 40 Y Y 1 F N
+F0 "U" -410 -3010 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2900 0 -2900
+P 2 0 1 10 0 -2900 0 2800
+P 2 0 1 10 0 2800 -400 2800
+X IO_L1N_T0_AD0N_15 G13 200 1900 200 L 70 70 0 1 P
+X IO_L2P_T0_AD8P_15 G15 200 1800 200 L 70 70 0 1 P
+X IO_L2N_T0_AD8N_15 G16 200 1700 200 L 70 70 0 1 P
+X IO_L4P_T0_15 G17 200 1400 200 L 70 70 0 1 P
+X IO_L4N_T0_15 G18 200 1300 200 L 70 70 0 1 P
+X VCCO_15 G19 200 2700 200 L 70 70 0 1 P
+X IO_L8N_T1_AD10N_15 G20 200 500 200 L 70 70 0 1 P
+X IO_L1P_T0_AD0P_15 H13 200 2000 200 L 70 70 0 1 P
+X IO_L3N_T0_DQS_AD1N_15 H14 200 1500 200 L 70 70 0 1 P
+X IO_L5N_T0_AD9N_15 H15 200 1100 200 L 70 70 0 1 P
+X VCCO_15 H16 200 2600 200 L 70 70 0 1 P
+X IO_L6P_T0_15 H17 200 1000 200 L 70 70 0 1 P
+X IO_L6N_T0_VREF_15 H18 200 900 200 L 70 70 0 1 P
+X IO_L12N_T1_MRCC_15 H19 200 -300 200 L 70 70 0 1 P
+X IO_L8P_T1_AD10P_15 H20 200 600 200 L 70 70 0 1 P
+X IO_L7N_T1_AD2N_15 H22 200 700 200 L 70 70 0 1 P
+X VCCO_15 J13 200 2500 200 L 70 70 0 1 P
+X IO_L3P_T0_DQS_AD1P_15 J14 200 1600 200 L 70 70 0 1 P
+X IO_L5P_T0_AD9P_15 J15 200 1200 200 L 70 70 0 1 P
+X IO_0_15 J16 200 2100 200 L 70 70 0 1 P
+X IO_L21N_T3_DQS_A18_15 J17 200 -2100 200 L 70 70 0 1 P
+X IO_L12P_T1_MRCC_15 J19 200 -200 200 L 70 70 0 1 P
+X IO_L11P_T1_SRCC_15 J20 200 0 200 L 70 70 0 1 P
+X IO_L11N_T1_SRCC_15 J21 200 -100 200 L 70 70 0 1 P
+X IO_L7P_T1_AD2P_15 J22 200 800 200 L 70 70 0 1 P
+X IO_L19P_T3_A22_15 K13 200 -1600 200 L 70 70 0 1 P
+X IO_L19N_T3_A21_VREF_15 K14 200 -1700 200 L 70 70 0 1 P
+X IO_L23N_T3_FWE_B_15 K16 200 -2500 200 L 70 70 0 1 P
+X IO_L21P_T3_DQS_15 K17 200 -2000 200 L 70 70 0 1 P
+X IO_L13P_T2_MRCC_15 K18 200 -400 200 L 70 70 0 1 P
+X IO_L13N_T2_MRCC_15 K19 200 -500 200 L 70 70 0 1 P
+X VCCO_15 K20 200 2400 200 L 70 70 0 1 P
+X IO_L9P_T1_DQS_AD3P_15 K21 200 400 200 L 70 70 0 1 P
+X IO_L9N_T1_DQS_AD3N_15 K22 200 300 200 L 70 70 0 1 P
+X IO_L20N_T3_A19_15 L13 200 -1900 200 L 70 70 0 1 P
+X IO_L22P_T3_A17_15 L14 200 -2200 200 L 70 70 0 1 P
+X IO_L22N_T3_A16_15 L15 200 -2300 200 L 70 70 0 1 P
+X IO_L23P_T3_FOE_B_15 L16 200 -2400 200 L 70 70 0 1 P
+X VCCO_15 L17 200 2300 200 L 70 70 0 1 P
+X IO_L16N_T2_A27_15 L18 200 -1100 200 L 70 70 0 1 P
+X IO_L14P_T2_SRCC_15 L19 200 -600 200 L 70 70 0 1 P
+X IO_L14N_T2_SRCC_15 L20 200 -700 200 L 70 70 0 1 P
+X IO_L10N_T1_AD11N_15 L21 200 100 200 L 70 70 0 1 P
+X IO_L20P_T3_A20_15 M13 200 -1800 200 L 70 70 0 1 P
+X IO_L24P_T3_RS1_15 M15 200 -2600 200 L 70 70 0 1 P
+X IO_L24N_T3_RS0_15 M16 200 -2700 200 L 70 70 0 1 P
+X IO_25_15 M17 200 -2800 200 L 70 70 0 1 P
+X IO_L16P_T2_A28_15 M18 200 -1000 200 L 70 70 0 1 P
+X IO_L18N_T2_A23_15 M20 200 -1500 200 L 70 70 0 1 P
+X IO_L10P_T1_AD11P_15 M21 200 200 200 L 70 70 0 1 P
+X IO_L15N_T2_DQS_ADV_B_15 M22 200 -900 200 L 70 70 0 1 P
+X IO_L17P_T2_A26_15 N18 200 -1200 200 L 70 70 0 1 P
+X IO_L17N_T2_A25_15 N19 200 -1300 200 L 70 70 0 1 P
+X IO_L18P_T2_A24_15 N20 200 -1400 200 L 70 70 0 1 P
+X VCCO_15 N21 200 2200 200 L 70 70 0 1 P
+X IO_L15P_T2_DQS_15 N22 200 -800 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_5
+#
+DEF XC7A200TFBG484_5 IC 0 40 Y Y 1 F N
+F0 "U" -410 -3010 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2900 0 -2900
+P 2 0 1 10 0 -2900 0 2800
+P 2 0 1 10 0 2800 -400 2800
+X IO_L10P_T1_16 A13 200 200 200 L 70 70 0 1 P
+X IO_L10N_T1_16 A14 200 100 200 L 70 70 0 1 P
+X IO_L9P_T1_DQS_16 A15 200 400 200 L 70 70 0 1 P
+X IO_L9N_T1_DQS_16 A16 200 300 200 L 70 70 0 1 P
+X VCCO_16 A17 200 2700 200 L 70 70 0 1 P
+X IO_L17P_T2_16 A18 200 -1200 200 L 70 70 0 1 P
+X IO_L17N_T2_16 A19 200 -1300 200 L 70 70 0 1 P
+X IO_L16N_T2_16 A20 200 -1100 200 L 70 70 0 1 P
+X IO_L21N_T3_DQS_16 A21 200 -2100 200 L 70 70 0 1 P
+X IO_L8N_T1_16 B13 200 500 200 L 70 70 0 1 P
+X VCCO_16 B14 200 2600 200 L 70 70 0 1 P
+X IO_L7P_T1_16 B15 200 800 200 L 70 70 0 1 P
+X IO_L7N_T1_16 B16 200 700 200 L 70 70 0 1 P
+X IO_L11P_T1_SRCC_16 B17 200 0 200 L 70 70 0 1 P
+X IO_L11N_T1_SRCC_16 B18 200 -100 200 L 70 70 0 1 P
+X IO_L16P_T2_16 B20 200 -1000 200 L 70 70 0 1 P
+X IO_L21P_T3_DQS_16 B21 200 -2000 200 L 70 70 0 1 P
+X IO_L20N_T3_16 B22 200 -1900 200 L 70 70 0 1 P
+X IO_L8P_T1_16 C13 200 600 200 L 70 70 0 1 P
+X IO_L3P_T0_DQS_16 C14 200 1600 200 L 70 70 0 1 P
+X IO_L3N_T0_DQS_16 C15 200 1500 200 L 70 70 0 1 P
+X IO_L12N_T1_MRCC_16 C17 200 -300 200 L 70 70 0 1 P
+X IO_L13P_T2_MRCC_16 C18 200 -400 200 L 70 70 0 1 P
+X IO_L13N_T2_MRCC_16 C19 200 -500 200 L 70 70 0 1 P
+X IO_L19N_T3_VREF_16 C20 200 -1700 200 L 70 70 0 1 P
+X VCCO_16 C21 200 2500 200 L 70 70 0 1 P
+X IO_L20P_T3_16 C22 200 -1800 200 L 70 70 0 1 P
+X IO_L6P_T0_16 D14 200 1000 200 L 70 70 0 1 P
+X IO_L6N_T0_VREF_16 D15 200 900 200 L 70 70 0 1 P
+X IO_L5N_T0_16 D16 200 1100 200 L 70 70 0 1 P
+X IO_L12P_T1_MRCC_16 D17 200 -200 200 L 70 70 0 1 P
+X VCCO_16 D18 200 2400 200 L 70 70 0 1 P
+X IO_L14N_T2_SRCC_16 D19 200 -700 200 L 70 70 0 1 P
+X IO_L19P_T3_16 D20 200 -1600 200 L 70 70 0 1 P
+X IO_L23N_T3_16 D21 200 -2500 200 L 70 70 0 1 P
+X IO_L22N_T3_16 D22 200 -2300 200 L 70 70 0 1 P
+X IO_L4P_T0_16 E13 200 1400 200 L 70 70 0 1 P
+X IO_L4N_T0_16 E14 200 1300 200 L 70 70 0 1 P
+X VCCO_16 E15 200 2300 200 L 70 70 0 1 P
+X IO_L5P_T0_16 E16 200 1200 200 L 70 70 0 1 P
+X IO_L2N_T0_16 E17 200 1700 200 L 70 70 0 1 P
+X IO_L15N_T2_DQS_16 E18 200 -900 200 L 70 70 0 1 P
+X IO_L14P_T2_SRCC_16 E19 200 -600 200 L 70 70 0 1 P
+X IO_L23P_T3_16 E21 200 -2400 200 L 70 70 0 1 P
+X IO_L22P_T3_16 E22 200 -2200 200 L 70 70 0 1 P
+X IO_L1P_T0_16 F13 200 2000 200 L 70 70 0 1 P
+X IO_L1N_T0_16 F14 200 1900 200 L 70 70 0 1 P
+X IO_0_16 F15 200 2100 200 L 70 70 0 1 P
+X IO_L2P_T0_16 F16 200 1800 200 L 70 70 0 1 P
+X IO_L15P_T2_DQS_16 F18 200 -800 200 L 70 70 0 1 P
+X IO_L18P_T2_16 F19 200 -1400 200 L 70 70 0 1 P
+X IO_L18N_T2_16 F20 200 -1500 200 L 70 70 0 1 P
+X IO_25_16 F21 200 -2800 200 L 70 70 0 1 P
+X VCCO_16 F22 200 2200 200 L 70 70 0 1 P
+X IO_L24P_T3_16 G21 200 -2600 200 L 70 70 0 1 P
+X IO_L24N_T3_16 G22 200 -2700 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_6
+#
+DEF XC7A200TFBG484_6 IC 0 40 Y Y 1 F N
+F0 "U" -410 -3010 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2900 0 -2900
+P 2 0 1 10 0 -2900 0 2800
+P 2 0 1 10 0 2800 -400 2800
+X IO_L7P_T1_34 AA1 200 800 200 L 70 70 0 1 P
+X IO_L9N_T1_DQS_34 AA3 200 300 200 L 70 70 0 1 P
+X IO_L11N_T1_SRCC_34 AA4 200 -100 200 L 70 70 0 1 P
+X IO_L10P_T1_34 AA5 200 200 200 L 70 70 0 1 P
+X IO_L18N_T2_34 AA6 200 -1500 200 L 70 70 0 1 P
+X VCCO_34 AA7 200 2300 200 L 70 70 0 1 P
+X IO_L22P_T3_34 AA8 200 -2200 200 L 70 70 0 1 P
+X IO_L7N_T1_34 AB1 200 700 200 L 70 70 0 1 P
+X IO_L8N_T1_34 AB2 200 500 200 L 70 70 0 1 P
+X IO_L8P_T1_34 AB3 200 600 200 L 70 70 0 1 P
+X VCCO_34 AB4 200 2200 200 L 70 70 0 1 P
+X IO_L10N_T1_34 AB5 200 100 200 L 70 70 0 1 P
+X IO_L20N_T3_34 AB6 200 -1900 200 L 70 70 0 1 P
+X IO_L20P_T3_34 AB7 200 -1800 200 L 70 70 0 1 P
+X IO_L22N_T3_34 AB8 200 -2300 200 L 70 70 0 1 P
+X IO_L3N_T0_DQS_34 R2 200 1500 200 L 70 70 0 1 P
+X IO_L3P_T0_DQS_34 R3 200 1600 200 L 70 70 0 1 P
+X IO_L13P_T2_MRCC_34 R4 200 -400 200 L 70 70 0 1 P
+X VCCO_34 R5 200 2700 200 L 70 70 0 1 P
+X IO_L17P_T2_34 R6 200 -1200 200 L 70 70 0 1 P
+X IO_L1P_T0_34 T1 200 2000 200 L 70 70 0 1 P
+X VCCO_34 T2 200 2600 200 L 70 70 0 1 P
+X IO_0_34 T3 200 2100 200 L 70 70 0 1 P
+X IO_L13N_T2_MRCC_34 T4 200 -500 200 L 70 70 0 1 P
+X IO_L14P_T2_SRCC_34 T5 200 -600 200 L 70 70 0 1 P
+X IO_L17N_T2_34 T6 200 -1300 200 L 70 70 0 1 P
+X IO_L1N_T0_34 U1 200 1900 200 L 70 70 0 1 P
+X IO_L2P_T0_34 U2 200 1800 200 L 70 70 0 1 P
+X IO_L6P_T0_34 U3 200 1000 200 L 70 70 0 1 P
+X IO_L14N_T2_SRCC_34 U5 200 -700 200 L 70 70 0 1 P
+X IO_L16P_T2_34 U6 200 -1000 200 L 70 70 0 1 P
+X IO_25_34 U7 200 -2800 200 L 70 70 0 1 P
+X IO_L2N_T0_34 V2 200 1700 200 L 70 70 0 1 P
+X IO_L6N_T0_VREF_34 V3 200 900 200 L 70 70 0 1 P
+X IO_L12P_T1_MRCC_34 V4 200 -200 200 L 70 70 0 1 P
+X IO_L16N_T2_34 V5 200 -1100 200 L 70 70 0 1 P
+X VCCO_34 V6 200 2500 200 L 70 70 0 1 P
+X IO_L19P_T3_34 V7 200 -1600 200 L 70 70 0 1 P
+X IO_L21N_T3_DQS_34 V8 200 -2100 200 L 70 70 0 1 P
+X IO_L21P_T3_DQS_34 V9 200 -2000 200 L 70 70 0 1 P
+X IO_L5P_T0_34 W1 200 1200 200 L 70 70 0 1 P
+X IO_L4P_T0_34 W2 200 1400 200 L 70 70 0 1 P
+X VCCO_34 W3 200 2400 200 L 70 70 0 1 P
+X IO_L12N_T1_MRCC_34 W4 200 -300 200 L 70 70 0 1 P
+X IO_L15N_T2_DQS_34 W5 200 -900 200 L 70 70 0 1 P
+X IO_L15P_T2_DQS_34 W6 200 -800 200 L 70 70 0 1 P
+X IO_L19N_T3_VREF_34 W7 200 -1700 200 L 70 70 0 1 P
+X IO_L24P_T3_34 W9 200 -2600 200 L 70 70 0 1 P
+X IO_L5N_T0_34 Y1 200 1100 200 L 70 70 0 1 P
+X IO_L4N_T0_34 Y2 200 1300 200 L 70 70 0 1 P
+X IO_L9P_T1_DQS_34 Y3 200 400 200 L 70 70 0 1 P
+X IO_L11P_T1_SRCC_34 Y4 200 0 200 L 70 70 0 1 P
+X IO_L18P_T2_34 Y6 200 -1400 200 L 70 70 0 1 P
+X IO_L23N_T3_34 Y7 200 -2500 200 L 70 70 0 1 P
+X IO_L23P_T3_34 Y8 200 -2400 200 L 70 70 0 1 P
+X IO_L24N_T3_34 Y9 200 -2700 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_7
+#
+DEF XC7A200TFBG484_7 IC 0 40 Y Y 1 F N
+F0 "U" -410 -3010 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2900 0 -2900
+P 2 0 1 10 0 -2900 0 2800
+P 2 0 1 10 0 2800 -400 2800
+X IO_L1N_T0_AD4N_35 A1 200 1900 200 L 70 70 0 1 P
+X IO_L1P_T0_AD4P_35 B1 200 2000 200 L 70 70 0 1 P
+X IO_L2N_T0_AD12N_35 B2 200 1700 200 L 70 70 0 1 P
+X VCCO_35 C1 200 2700 200 L 70 70 0 1 P
+X IO_L2P_T0_AD12P_35 C2 200 1800 200 L 70 70 0 1 P
+X IO_L3N_T0_DQS_AD5N_35 D1 200 1500 200 L 70 70 0 1 P
+X IO_L4N_T0_35 D2 200 1300 200 L 70 70 0 1 P
+X IO_L3P_T0_DQS_AD5P_35 E1 200 1600 200 L 70 70 0 1 P
+X IO_L4P_T0_35 E2 200 1400 200 L 70 70 0 1 P
+X IO_L6N_T0_VREF_35 E3 200 900 200 L 70 70 0 1 P
+X IO_L5N_T0_AD13N_35 F1 200 1100 200 L 70 70 0 1 P
+X VCCO_35 F2 200 2600 200 L 70 70 0 1 P
+X IO_L6P_T0_35 F3 200 1000 200 L 70 70 0 1 P
+X IO_0_35 F4 200 2100 200 L 70 70 0 1 P
+X IO_L5P_T0_AD13P_35 G1 200 1200 200 L 70 70 0 1 P
+X IO_L8N_T1_AD14N_35 G2 200 500 200 L 70 70 0 1 P
+X IO_L11N_T1_SRCC_35 G3 200 -100 200 L 70 70 0 1 P
+X IO_L12N_T1_MRCC_35 G4 200 -300 200 L 70 70 0 1 P
+X IO_L8P_T1_AD14P_35 H2 200 600 200 L 70 70 0 1 P
+X IO_L11P_T1_SRCC_35 H3 200 0 200 L 70 70 0 1 P
+X IO_L12P_T1_MRCC_35 H4 200 -200 200 L 70 70 0 1 P
+X IO_L10N_T1_AD15N_35 H5 200 100 200 L 70 70 0 1 P
+X VCCO_35 H6 200 2500 200 L 70 70 0 1 P
+X IO_L7N_T1_AD6N_35 J1 200 700 200 L 70 70 0 1 P
+X IO_L9N_T1_DQS_AD7N_35 J2 200 300 200 L 70 70 0 1 P
+X VCCO_35 J3 200 2400 200 L 70 70 0 1 P
+X IO_L13N_T2_MRCC_35 J4 200 -500 200 L 70 70 0 1 P
+X IO_L10P_T1_AD15P_35 J5 200 200 200 L 70 70 0 1 P
+X IO_L17N_T2_35 J6 200 -1300 200 L 70 70 0 1 P
+X IO_L7P_T1_AD6P_35 K1 200 800 200 L 70 70 0 1 P
+X IO_L9P_T1_DQS_AD7P_35 K2 200 400 200 L 70 70 0 1 P
+X IO_L14N_T2_SRCC_35 K3 200 -700 200 L 70 70 0 1 P
+X IO_L13P_T2_MRCC_35 K4 200 -400 200 L 70 70 0 1 P
+X IO_L17P_T2_35 K6 200 -1200 200 L 70 70 0 1 P
+X IO_L15N_T2_DQS_35 L1 200 -900 200 L 70 70 0 1 P
+X IO_L14P_T2_SRCC_35 L3 200 -600 200 L 70 70 0 1 P
+X IO_L18N_T2_35 L4 200 -1500 200 L 70 70 0 1 P
+X IO_L18P_T2_35 L5 200 -1400 200 L 70 70 0 1 P
+X IO_25_35 L6 200 -2800 200 L 70 70 0 1 P
+X IO_L15P_T2_DQS_35 M1 200 -800 200 L 70 70 0 1 P
+X IO_L16N_T2_35 M2 200 -1100 200 L 70 70 0 1 P
+X IO_L16P_T2_35 M3 200 -1000 200 L 70 70 0 1 P
+X VCCO_35 M4 200 2300 200 L 70 70 0 1 P
+X IO_L23N_T3_35 M5 200 -2500 200 L 70 70 0 1 P
+X IO_L23P_T3_35 M6 200 -2400 200 L 70 70 0 1 P
+X VCCO_35 N1 200 2200 200 L 70 70 0 1 P
+X IO_L22N_T3_35 N2 200 -2300 200 L 70 70 0 1 P
+X IO_L19N_T3_VREF_35 N3 200 -1700 200 L 70 70 0 1 P
+X IO_L19P_T3_35 N4 200 -1600 200 L 70 70 0 1 P
+X IO_L24N_T3_35 N5 200 -2700 200 L 70 70 0 1 P
+X IO_L20N_T3_35 P1 200 -1900 200 L 70 70 0 1 P
+X IO_L22P_T3_35 P2 200 -2200 200 L 70 70 0 1 P
+X IO_L21N_T3_DQS_35 P4 200 -2100 200 L 70 70 0 1 P
+X IO_L21P_T3_DQS_35 P5 200 -2000 200 L 70 70 0 1 P
+X IO_L24P_T3_35 P6 200 -2600 200 L 70 70 0 1 P
+X IO_L20P_T3_35 R1 200 -1800 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_8
+#
+DEF XC7A200TFBG484_8 IC 0 40 Y Y 1 F N
+F0 "U" -410 -1210 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -1100 0 -1100
+P 2 0 1 10 0 -1100 0 1100
+P 2 0 1 10 0 1100 -400 1100
+X MGTPRXN1_216 A10 200 800 200 L 70 70 0 1 P
+X MGTPTXN3_216 A4 200 -200 200 L 70 70 0 1 P
+X MGTPTXN1_216 A6 200 0 200 L 70 70 0 1 P
+X MGTPRXN3_216 A8 200 600 200 L 70 70 0 1 P
+X MGTPRXP1_216 B10 200 400 200 L 70 70 0 1 P
+X MGTPTXP3_216 B4 200 -600 200 L 70 70 0 1 P
+X MGTPTXP1_216 B6 200 -400 200 L 70 70 0 1 P
+X MGTPRXP3_216 B8 200 200 200 L 70 70 0 1 P
+X MGTPRXN0_216 C11 200 900 200 L 70 70 0 1 P
+X MGTPTXN2_216 C5 200 -100 200 L 70 70 0 1 P
+X MGTPTXN0_216 C7 200 100 200 L 70 70 0 1 P
+X MGTPRXN2_216 C9 200 700 200 L 70 70 0 1 P
+X MGTPRXP0_216 D11 200 500 200 L 70 70 0 1 P
+X MGTPTXP2_216 D5 200 -500 200 L 70 70 0 1 P
+X MGTPTXP0_216 D7 200 -300 200 L 70 70 0 1 P
+X MGTPRXP2_216 D9 200 300 200 L 70 70 0 1 P
+X MGTREFCLK0N_216 E10 200 -800 200 L 70 70 0 1 P
+X MGTREFCLK1N_216 E6 200 -1000 200 L 70 70 0 1 P
+X MGTREFCLK0P_216 F10 200 -700 200 L 70 70 0 1 P
+X MGTREFCLK1P_216 F6 200 -900 200 L 70 70 0 1 P
+X MGTRREF_216 F8 200 1000 200 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# XC7A200TFBG484_9
+#
+DEF XC7A200TFBG484_9 IC 0 40 Y Y 1 F N
+F0 "U" -410 -2410 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -400 -2300 0 -2300
+P 2 0 1 10 0 -2300 0 2200
+P 2 0 1 10 0 2200 -400 2200
+X GND A11 200 1600 200 L 70 70 0 1 W
+X GND A12 200 1500 200 L 70 70 0 1 W
+X GND A2 200 2100 200 L 70 70 0 1 W
+X GND A22 200 1400 200 L 70 70 0 1 W
+X GND A3 200 2000 200 L 70 70 0 1 W
+X GND A5 200 1900 200 L 70 70 0 1 W
+X GND A7 200 1800 200 L 70 70 0 1 W
+X GND A9 200 1700 200 L 70 70 0 1 W
+X GND B12 200 1200 200 L 70 70 0 1 W
+X GND B19 200 1100 200 L 70 70 0 1 W
+X GND B3 200 1300 200 L 70 70 0 1 W
+X GND C10 200 800 200 L 70 70 0 1 W
+X GND C12 200 700 200 L 70 70 0 1 W
+X GND C16 200 600 200 L 70 70 0 1 W
+X GND C3 200 1000 200 L 70 70 0 1 W
+X GND C6 200 900 200 L 70 70 0 1 W
+X GND D12 200 200 200 L 70 70 0 1 W
+X GND D13 200 100 200 L 70 70 0 1 W
+X GND D3 200 500 200 L 70 70 0 1 W
+X GND D4 200 400 200 L 70 70 0 1 W
+X GND D8 200 300 200 L 70 70 0 1 W
+X GND E11 200 -400 200 L 70 70 0 1 W
+X GND E20 200 -500 200 L 70 70 0 1 W
+X GND E4 200 0 200 L 70 70 0 1 W
+X GND E5 200 -100 200 L 70 70 0 1 W
+X GND E7 200 -200 200 L 70 70 0 1 W
+X GND E9 200 -300 200 L 70 70 0 1 W
+X GND F11 200 -700 200 L 70 70 0 1 W
+X GND F17 200 -800 200 L 70 70 0 1 W
+X GND F5 200 -600 200 L 70 70 0 1 W
+X GND G10 200 -1400 200 L 70 70 0 1 W
+X GND G12 200 -1500 200 L 70 70 0 1 W
+X GND G14 200 -1600 200 L 70 70 0 1 W
+X GND G5 200 -900 200 L 70 70 0 1 W
+X GND G6 200 -1000 200 L 70 70 0 1 W
+X GND G7 200 -1100 200 L 70 70 0 1 W
+X GND G8 200 -1200 200 L 70 70 0 1 W
+X GND G9 200 -1300 200 L 70 70 0 1 W
+X GND H1 200 -1700 200 L 70 70 0 1 W
+X GND H11 200 -2000 200 L 70 70 0 1 W
+X GND H21 200 -2100 200 L 70 70 0 1 W
+X GND H7 200 -1800 200 L 70 70 0 1 W
+X GND H9 200 -1900 200 L 70 70 0 1 W
+X GND J8 200 -2200 200 L 70 70 0 1 W
+ENDDRAW
+ENDDEF
diff --git a/helper/convert-74244.py b/helper/convert-74244.py
new file mode 100644
index 0000000..a0a6a46
--- /dev/null
+++ b/helper/convert-74244.py
@@ -0,0 +1,71 @@
+print('DEF 74*244DW_1 IC 0 40 Y Y 3 F N')
+print('F0 "IC" -330 -530 60 H V L BNN')
+print('F1 "74*244DW_1" -300 420 60 H V L BNN')
+print('F2 "" 0 0 60 H V C CNN')
+print('F3 "" 0 0 60 H V C CNN')
+print('DRAW')
+
+def print_rec(r):
+ for i in range(len(r)):
+ ri = r[i]
+ if i > 0: print(' ', end='')
+ print(ri, end='')
+
+ print("\n", end='')
+
+SKIP_REC_TYPES = ['#', 'F0', 'F1', 'F2', 'F3', 'DRAW', 'ENDDRAW', 'ENDDEF']
+
+with open('74244.old', 'r') as f_rd:
+ f_rd_lines = f_rd.readlines()
+
+ for f_rd_line in f_rd_lines:
+ rd_line = f_rd_line.strip()
+
+ #if rd_line.startswith('#'): continue
+ #if rd_line.startswith('DEF '): continue
+ #if rd_line.startswith('ENDDEF'): continue
+ #if rd_line.startswith('DRAW'): continue
+ #if rd_line.startswith('ENDDRAW'): continue
+
+ rec = rd_line.split(' ')
+ rec_type = rec[0]
+
+ #
+ # DEF
+ #
+ if rec_type == "DEF":
+ unit = rec[1].split('_')[1]
+ continue
+
+ #
+ # T
+ #
+ if rec_type == "T":
+ rec[6] = unit
+ print_rec(rec)
+ continue
+
+ #
+ # P
+ #
+ if rec_type == "P":
+ rec[2] = unit
+ print_rec(rec)
+ continue
+
+ #
+ # X
+ #
+ if rec_type == "X":
+ rec[-3] = unit
+ print_rec(rec)
+ continue
+
+ if rec_type in SKIP_REC_TYPES: continue
+ else: raise RuntimeError("rec_type == '%s'" % rec_type)
+
+ print(rd_line)
+
+
+print('ENDDRAW')
+print('ENDDEF')
diff --git a/helper/convert-artix7.py b/helper/convert-artix7.py
new file mode 100644
index 0000000..5a4871a
--- /dev/null
+++ b/helper/convert-artix7.py
@@ -0,0 +1,71 @@
+print('DEF XC7A200TFBG484 IC 0 40 Y Y 17 F N')
+print('F0 "U" -410 -910 60 H V L BNN')
+print('F1 "" 0 0 60 H V C CNN')
+print('F2 "" 0 0 60 H V C CNN')
+print('F3 "" 0 0 60 H V C CNN')
+print('DRAW')
+
+def print_rec(r):
+ for i in range(len(r)):
+ ri = r[i]
+ if i > 0: print(' ', end='')
+ print(ri, end='')
+
+ print("\n", end='')
+
+SKIP_REC_TYPES = ['#', 'F0', 'F1', 'F2', 'F3', 'DRAW', 'ENDDRAW', 'ENDDEF']
+
+with open('artix7.old', 'r') as f_rd:
+ f_rd_lines = f_rd.readlines()
+
+ for f_rd_line in f_rd_lines:
+ rd_line = f_rd_line.strip()
+
+ #if rd_line.startswith('#'): continue
+ #if rd_line.startswith('DEF '): continue
+ #if rd_line.startswith('ENDDEF'): continue
+ #if rd_line.startswith('DRAW'): continue
+ #if rd_line.startswith('ENDDRAW'): continue
+
+ rec = rd_line.split(' ')
+ rec_type = rec[0]
+
+ #
+ # DEF
+ #
+ if rec_type == "DEF":
+ unit = rec[1].split('_')[1]
+ continue
+
+ #
+ # T
+ #
+ if rec_type == "T":
+ rec[6] = unit
+ print_rec(rec)
+ continue
+
+ #
+ # P
+ #
+ if rec_type == "P":
+ rec[2] = unit
+ print_rec(rec)
+ continue
+
+ #
+ # X
+ #
+ if rec_type == "X":
+ rec[-3] = unit
+ print_rec(rec)
+ continue
+
+ if rec_type in SKIP_REC_TYPES: continue
+ else: raise RuntimeError("rec_type == '%s'" % rec_type)
+
+ print(rd_line)
+
+
+print('ENDDRAW')
+print('ENDDEF')
diff --git a/helper/convert-stm32.py b/helper/convert-stm32.py
new file mode 100644
index 0000000..73c4a2e
--- /dev/null
+++ b/helper/convert-stm32.py
@@ -0,0 +1,64 @@
+print('DEF STM32F429BIT6_1 IC 0 40 Y Y 4 F N')
+print('F1 "" 0 0 60 H V C CNN')
+print('F2 "" 0 0 60 H V C CNN')
+print('F3 "" 0 0 60 H V C CNN')
+print('DRAW')
+
+def print_rec(r):
+ for i in range(len(r)):
+ ri = r[i]
+ if i > 0: print(' ', end='')
+ print(ri, end='')
+
+ print("\n", end='')
+
+SKIP_REC_TYPES = ['#', 'F0', 'F1', 'F2', 'F3', 'DRAW', 'ENDDRAW', 'ENDDEF']
+
+with open('stm32.old', 'r') as f_rd:
+ f_rd_lines = f_rd.readlines()
+
+ for f_rd_line in f_rd_lines:
+ rd_line = f_rd_line.strip()
+
+ rec = rd_line.split(' ')
+ rec_type = rec[0]
+
+ #
+ # DEF
+ #
+ if rec_type == "DEF":
+ unit = rec[1].split('_')[1]
+ continue
+
+ #
+ # T
+ #
+ if rec_type == "T":
+ rec[6] = unit
+ print_rec(rec)
+ continue
+
+ #
+ # P
+ #
+ if rec_type == "P":
+ rec[2] = unit
+ print_rec(rec)
+ continue
+
+ #
+ # X
+ #
+ if rec_type == "X":
+ rec[-3] = unit
+ print_rec(rec)
+ continue
+
+ if rec_type in SKIP_REC_TYPES: continue
+ else: raise RuntimeError("rec_type == '%s'" % rec_type)
+
+ print(rd_line)
+
+
+print('ENDDRAW')
+print('ENDDEF')
diff --git a/helper/stm32.new b/helper/stm32.new
new file mode 100644
index 0000000..4a7a93e
--- /dev/null
+++ b/helper/stm32.new
@@ -0,0 +1,232 @@
+DEF STM32F429BIT6_1 IC 0 40 Y Y 4 F N
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+T 0 -1620 3210 50 0 1 1 2469581 Normal 1 C C
+P 2 1 1 10 -1500 -3100 1400 -3100
+P 2 1 1 10 -1500 3200 -1500 -3100
+P 2 1 1 10 1400 -3100 1400 3200
+P 2 1 1 10 1400 3200 -1500 3200
+X PC15 10 -1600 -2800 100 R 70 70 1 1 P
+X PB12 104 -1600 1500 100 R 70 70 1 1 P
+X SPI2_SCK/PB13 105 -1600 1400 100 R 70 70 1 1 P
+X SPI2_MISO/PB14 106 -1600 1300 100 R 70 70 1 1 P
+X SPI2_MOSI/PB15 107 -1600 1200 100 R 70 70 1 1 P
+X PJ6 118 1500 -500 100 L 70 70 1 1 P
+X PJ7 119 1500 -600 100 L 70 70 1 1 P
+X PJ8 120 1500 -700 100 L 70 70 1 1 P
+X PJ9 121 1500 -800 100 L 70 70 1 1 P
+X PJ10 122 1500 -900 100 L 70 70 1 1 P
+X PJ11 123 1500 -1000 100 L 70 70 1 1 P
+X PK0 126 1500 -1700 100 L 70 70 1 1 P
+X PK1 127 1500 -1800 100 L 70 70 1 1 P
+X PK2 128 1500 -1900 100 L 70 70 1 1 P
+X PI11 13 1500 800 100 L 70 70 1 1 P
+X FMC_INT2/PG6 133 1500 2200 100 L 70 70 1 1 P
+X FMC_INT3/PG7 134 1500 2100 100 L 70 70 1 1 P
+X PC6 138 -1600 -2400 100 R 70 70 1 1 P
+X PC7 139 -1600 -2500 100 R 70 70 1 1 P
+X SDIO_D0/PC8 140 -1600 100 100 R 70 70 1 1 P
+X SDIO_D1/PC9 141 -1600 0 100 R 70 70 1 1 P
+X PA8 142 -1600 2200 100 R 70 70 1 1 P
+X USART1_TX/PA9 143 -1600 2100 100 R 70 70 1 1 P
+X USART1_RX/PA10 144 -1600 2000 100 R 70 70 1 1 P
+X USART1_CTS/PA11 145 -1600 1800 100 R 70 70 1 1 P
+X USART1_RTS/PA12 146 -1600 1900 100 R 70 70 1 1 P
+X SDIO_D2/PC10 161 -1600 -100 100 R 70 70 1 1 P
+X SDIO_D3/PC11 162 -1600 -200 100 R 70 70 1 1 P
+X SDIO_CK/PC12 163 -1600 200 100 R 70 70 1 1 P
+X SDIO_CMD/PD2 166 -1600 300 100 R 70 70 1 1 P
+X PJ12 174 1500 -1100 100 L 70 70 1 1 P
+X PJ13 175 1500 -1200 100 L 70 70 1 1 P
+X PJ14 176 1500 -1300 100 L 70 70 1 1 P
+X PJ15 177 1500 -1400 100 L 70 70 1 1 P
+X FMC_NE2/FMC_NCE3/PG9 178 1500 2000 100 L 70 70 1 1 P
+X FMC_NCE4_1/FMC_NE3/PG10 179 1500 1900 100 L 70 70 1 1 P
+X FMC_NCE4_2/PG11 180 1500 1800 100 L 70 70 1 1 P
+X FMC_NE4/PG12 181 1500 1700 100 L 70 70 1 1 P
+X PK3 186 1500 -2000 100 L 70 70 1 1 P
+X PK4 187 1500 -2100 100 L 70 70 1 1 P
+X PK5 188 1500 -2200 100 L 70 70 1 1 P
+X PK6 189 1500 -2300 100 L 70 70 1 1 P
+X PI12 19 1500 700 100 L 70 70 1 1 P
+X PK7 190 1500 -2400 100 L 70 70 1 1 P
+X PB8/I2C1_SCL 198 -1600 -1400 100 R 70 70 1 1 P
+X PB9/I2C1_SDA 199 -1600 -1500 100 R 70 70 1 1 P
+X PI13 20 1500 600 100 L 70 70 1 1 P
+X PI14 21 1500 500 100 L 70 70 1 1 P
+X FMC_NIORD/PF6 27 1500 2900 100 L 70 70 1 1 P
+X FMC_NREG/PF7 28 1500 2800 100 L 70 70 1 1 P
+X FMC_NIOWR/PF8 29 1500 2700 100 L 70 70 1 1 P
+X FMC_CD/PF9 30 1500 2600 100 L 70 70 1 1 P
+X FMC_INTR/PF10 31 1500 2500 100 L 70 70 1 1 P
+X PC1 36 -1600 -2100 100 R 70 70 1 1 P
+X USART2_CTS/WKUP/PA0 43 -1600 2500 100 R 70 70 1 1 P
+X USART2_RTS/PA1 44 -1600 2600 100 R 70 70 1 1 P
+X USART2_TX/PA2 45 -1600 2800 100 R 70 70 1 1 P
+X FMC_SDCKE0/PH2 46 1500 1400 100 L 70 70 1 1 P
+X PH3 47 -1600 -700 100 R 70 70 1 1 P
+X I2C2_SCL/PH4 48 -1600 -600 100 R 70 70 1 1 P
+X I2C2_SDA/PH5 49 -1600 -500 100 R 70 70 1 1 P
+X USART2_RX/PA3 50 -1600 2700 100 R 70 70 1 1 P
+X PA4 53 -1600 2900 100 R 70 70 1 1 P
+X SPI1_SCK/PA5 54 -1600 800 100 R 70 70 1 1 P
+X SPI1_MISO/PA6 55 -1600 700 100 R 70 70 1 1 P
+X SPI1_MOSI/PA7 56 -1600 600 100 R 70 70 1 1 P
+X PC4 57 -1600 -2200 100 R 70 70 1 1 P
+X PC5 58 -1600 -2300 100 R 70 70 1 1 P
+X PB0 61 -1600 900 100 R 70 70 1 1 P
+X PB1 62 -1600 -1300 100 R 70 70 1 1 P
+X PI15 64 1500 400 100 L 70 70 1 1 P
+X PJ0 65 1500 100 100 L 70 70 1 1 P
+X PJ1 66 1500 0 100 L 70 70 1 1 P
+X PJ2 67 1500 -100 100 L 70 70 1 1 P
+X PJ3 68 1500 -200 100 L 70 70 1 1 P
+X PJ4 69 1500 -300 100 L 70 70 1 1 P
+X PI8 7 1500 900 100 L 70 70 1 1 P
+X PC13 8 -1600 -2600 100 R 70 70 1 1 P
+X PC14 9 -1600 -2700 100 R 70 70 1 1 P
+X PB10 90 -1600 -1600 100 R 70 70 1 1 P
+X PB11 91 -1600 -1700 100 R 70 70 1 1 P
+X PJ5 95 1500 -400 100 L 70 70 1 1 P
+X FMC_SDNE1/PH6 96 1500 1300 100 L 70 70 1 1 P
+X FMC_SDCKE1/PH7 97 1500 1200 100 L 70 70 1 1 P
+P 2 2 1 10 -1100 -900 -1100 800
+P 2 2 1 10 1000 -900 -1100 -900
+P 2 2 1 10 1000 -900 1000 800
+P 2 2 1 10 1000 800 -1100 800
+X PA13/JTMS-SWDIO 147 1100 100 100 L 70 70 2 1 P
+X PA14/JTCK-SWCLK 159 1100 200 100 L 70 70 2 1 P
+X PA15/JTDI 160 1100 -200 100 L 70 70 2 1 P
+X PB3/JTDO/TRACESWO 192 1100 -400 100 L 70 70 2 1 P
+X PB4/NJTRST 193 1100 -300 100 L 70 70 2 1 P
+X BOOT0 197 -1200 -700 100 R 70 70 2 1 P
+X PDR_ON 203 -1200 400 100 R 70 70 2 1 P
+X OSC_IN/PH0 32 -1200 0 100 R 70 70 2 1 P
+X OSC_OUT/PH1 33 -1200 -100 100 R 70 70 2 1 P
+X NRST 34 1100 300 100 L 70 70 2 1 P
+X VREF+ 41 -1200 600 100 R 70 70 2 1 W
+X PB2/BOOT1 63 -1200 -500 100 R 70 70 2 1 P
+P 2 3 1 10 -700 1500 -700 -1400
+P 2 3 1 10 700 -1400 -700 -1400
+P 2 3 1 10 700 -1400 700 1500
+P 2 3 1 10 700 1500 -700 1500
+X VDD 103 -800 -100 100 R 70 70 3 1 W
+X VSS 114 800 -300 100 L 70 70 3 1 W
+X VDD 115 -800 -300 100 R 70 70 3 1 W
+X VDD 124 -800 -400 100 R 70 70 3 1 W
+X VSS 125 800 -400 100 L 70 70 3 1 W
+X VSS 136 800 -500 100 L 70 70 3 1 W
+X VDD 137 -800 -500 100 R 70 70 3 1 W
+X VSS 14 800 700 100 L 70 70 3 1 W
+X VCAP2 148 100 1600 100 D 70 70 3 1 P
+X VSS 149 800 -600 100 L 70 70 3 1 W
+X VDD 15 -800 800 100 R 70 70 3 1 W
+X VDD 150 -800 -600 100 R 70 70 3 1 W
+X VDD 158 -800 -1100 100 R 70 70 3 1 W
+X VSS 170 800 -800 100 L 70 70 3 1 W
+X VDD 171 -800 -1000 100 R 70 70 3 1 W
+X VSS 184 800 -900 100 L 70 70 3 1 W
+X VDD 185 -800 -900 100 R 70 70 3 1 W
+X VSS 202 800 -1000 100 L 70 70 3 1 W
+X VDD 204 -800 -800 100 R 70 70 3 1 W
+X VSS 25 800 600 100 L 70 70 3 1 W
+X VDD 26 -800 700 100 R 70 70 3 1 W
+X VDD 39 -800 600 100 R 70 70 3 1 W
+X VSSA 40 800 1000 100 L 70 70 3 1 W
+X VDDA 42 -800 1000 100 R 70 70 3 1 W
+X VSS 51 800 500 100 L 70 70 3 1 W
+X VDD 52 -800 500 100 R 70 70 3 1 W
+X VDD 59 -800 300 100 R 70 70 3 1 W
+X VBAT 6 -800 1200 100 R 70 70 3 1 W
+X VSS 60 800 300 100 L 70 70 3 1 W
+X VSS 72 800 200 100 L 70 70 3 1 W
+X VDD 73 -800 200 100 R 70 70 3 1 W
+X VSS 82 800 100 100 L 70 70 3 1 W
+X VDD 83 -800 100 100 R 70 70 3 1 W
+X VCAP1 92 -100 1600 100 D 70 70 3 1 P
+X VSS 93 800 0 100 L 70 70 3 1 W
+X VDD 94 -800 0 100 R 70 70 3 1 W
+P 2 4 1 10 -1200 2400 -1200 -2700
+P 2 4 1 10 -1200 2400 1000 2400
+P 2 4 1 10 1000 -2700 -1200 -2700
+P 2 4 1 10 1000 2400 1000 -2700
+X FMC_A23/PE2 1 -1300 -200 100 R 70 70 4 1 P
+X PH10/FMC_D18 100 1100 300 100 L 70 70 4 1 P
+X PH11/FMC_D19 101 1100 200 100 L 70 70 4 1 P
+X PH12/FMC_D20 102 1100 100 100 L 70 70 4 1 P
+X PD8/FMC_D13 108 1100 800 100 L 70 70 4 1 P
+X PD9/FMC_D14 109 1100 700 100 L 70 70 4 1 P
+X PI9/FMC_D30 11 1100 -900 100 L 70 70 4 1 P
+X PD10/FMC_D15 110 1100 600 100 L 70 70 4 1 P
+X FMC_A16/PD11 111 -1300 500 100 R 70 70 4 1 P
+X FMC_A17/PD12 112 -1300 400 100 R 70 70 4 1 P
+X FMC_A18/PD13 113 -1300 300 100 R 70 70 4 1 P
+X PD14/FMC_D0 116 1100 2100 100 L 70 70 4 1 P
+X PD15/FMC_D1 117 1100 2000 100 L 70 70 4 1 P
+X PI10/FMC_D31 12 1100 -1000 100 L 70 70 4 1 P
+X FMC_A12/PG2 129 -1300 900 100 R 70 70 4 1 P
+X FMC_A13/PG3 130 -1300 800 100 R 70 70 4 1 P
+X FMC_A14/PG4 131 -1300 700 100 R 70 70 4 1 P
+X FMC_A15/PG5 132 -1300 600 100 R 70 70 4 1 P
+X PG8/FMC_SDCLK 135 1100 -1300 100 L 70 70 4 1 P
+X PH13/FMC_D21 151 1100 0 100 L 70 70 4 1 P
+X PH14/FMC_D22 152 1100 -100 100 L 70 70 4 1 P
+X PH15/FMC_D23 153 1100 -200 100 L 70 70 4 1 P
+X PI0/FMC_D24 154 1100 -300 100 L 70 70 4 1 P
+X PI1/FMC_D25 155 1100 -400 100 L 70 70 4 1 P
+X PI2/FMC_D26 156 1100 -500 100 L 70 70 4 1 P
+X PI3/FMC_D27 157 1100 -600 100 L 70 70 4 1 P
+X FMC_A0/PF0 16 -1300 2100 100 R 70 70 4 1 P
+X PD0/FMC_D2 164 1100 1900 100 L 70 70 4 1 P
+X PD1/FMC_D3 165 1100 1800 100 L 70 70 4 1 P
+X FMC_CLK/PD3 167 -1300 -1600 100 R 70 70 4 1 P
+X FMC_NOE/PD4 168 -1300 -1700 100 R 70 70 4 1 P
+X FMC_NWE/PD5 169 -1300 -1800 100 R 70 70 4 1 P
+X FMC_A1/PF1 17 -1300 2000 100 R 70 70 4 1 P
+X FMC_NWAIT/PD6 172 -1300 -1900 100 R 70 70 4 1 P
+X FMC_NE1/PD7 173 -1300 -2000 100 R 70 70 4 1 P
+X FMC_A2/PF2 18 -1300 1900 100 R 70 70 4 1 P
+X FMC_A24/PG13 182 -1300 -300 100 R 70 70 4 1 P
+X FMC_A25/PG14 183 -1300 -400 100 R 70 70 4 1 P
+X PG15/FMC_SDNCAS 191 1100 -2200 100 L 70 70 4 1 P
+X PB5/FMC_SDCKE1 194 1100 -2000 100 L 70 70 4 1 P
+X PB6/FMC_SDNE1 195 1100 -1700 100 L 70 70 4 1 P
+X FMC_NL/PB7 196 -1300 -1300 100 R 70 70 4 1 P
+X FMC_A19/PE3 2 -1300 200 100 R 70 70 4 1 P
+X FMC_NBL0/PE0 200 -1300 -700 100 R 70 70 4 1 P
+X FMC_NBL1/PE1 201 -1300 -800 100 R 70 70 4 1 P
+X FMC_NBL2/PI4 205 -1300 -900 100 R 70 70 4 1 P
+X FMC_NBL3/PI5 206 -1300 -1000 100 R 70 70 4 1 P
+X PI6/FMC_D28 207 1100 -700 100 L 70 70 4 1 P
+X PI7/FMC_D29 208 1100 -800 100 L 70 70 4 1 P
+X FMC_A3/PF3 22 -1300 1800 100 R 70 70 4 1 P
+X FMC_A4/PF4 23 -1300 1700 100 R 70 70 4 1 P
+X FMC_A5/PF5 24 -1300 1600 100 R 70 70 4 1 P
+X FMC_A20/PE4 3 -1300 100 100 R 70 70 4 1 P
+X PC0/FMC_SDNWE 35 1100 -1400 100 L 70 70 4 1 P
+X PC2/FMC_SDNE0 37 1100 -1600 100 L 70 70 4 1 P
+X PC3/FMC_SDCKE0 38 1100 -1900 100 L 70 70 4 1 P
+X FMC_A21/PE5 4 -1300 0 100 R 70 70 4 1 P
+X FMC_A22/PE6 5 -1300 -100 100 R 70 70 4 1 P
+X PF11/FMC_SDNRAS 70 1100 -2300 100 L 70 70 4 1 P
+X FMC_A6/PF12 71 -1300 1500 100 R 70 70 4 1 P
+X FMC_A7/PF13 74 -1300 1400 100 R 70 70 4 1 P
+X FMC_A8/PF14 75 -1300 1300 100 R 70 70 4 1 P
+X FMC_A9/PF15 76 -1300 1200 100 R 70 70 4 1 P
+X FMC_A10/PG0 77 -1300 1100 100 R 70 70 4 1 P
+X FMC_A11/PG1 78 -1300 1000 100 R 70 70 4 1 P
+X PE7/FMC_D4 79 1100 1700 100 L 70 70 4 1 P
+X PE8/FMC_D5 80 1100 1600 100 L 70 70 4 1 P
+X PE9/FMC_D6 81 1100 1500 100 L 70 70 4 1 P
+X PE10/FMC_D7 84 1100 1400 100 L 70 70 4 1 P
+X PE11/FMC_D8 85 1100 1300 100 L 70 70 4 1 P
+X PE12/FMC_D9 86 1100 1200 100 L 70 70 4 1 P
+X PE13/FMC_D10 87 1100 1100 100 L 70 70 4 1 P
+X PE14/FMC_D11 88 1100 1000 100 L 70 70 4 1 P
+X PE15/FMC_D12 89 1100 900 100 L 70 70 4 1 P
+X PH8/FMC_D16 98 1100 500 100 L 70 70 4 1 P
+X PH9/FMC_D17 99 1100 400 100 L 70 70 4 1 P
+ENDDRAW
+ENDDEF
diff --git a/helper/stm32.old b/helper/stm32.old
new file mode 100644
index 0000000..d45edcc
--- /dev/null
+++ b/helper/stm32.old
@@ -0,0 +1,269 @@
+#
+# STM32F429BIT6_1
+#
+DEF STM32F429BIT6_1 IC 0 40 Y Y 1 F N
+F0 "U" -1510 -3210 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+T 0 -1620 3210 50 0 1 1 2469581 Normal 1 C C
+P 2 0 1 10 -1500 -3100 1400 -3100
+P 2 0 1 10 -1500 3200 -1500 -3100
+P 2 0 1 10 1400 -3100 1400 3200
+P 2 0 1 10 1400 3200 -1500 3200
+X PC15 10 -1600 -2800 100 R 70 70 0 1 P
+X PB12 104 -1600 1500 100 R 70 70 0 1 P
+X SPI2_SCK/PB13 105 -1600 1400 100 R 70 70 0 1 P
+X SPI2_MISO/PB14 106 -1600 1300 100 R 70 70 0 1 P
+X SPI2_MOSI/PB15 107 -1600 1200 100 R 70 70 0 1 P
+X PJ6 118 1500 -500 100 L 70 70 0 1 P
+X PJ7 119 1500 -600 100 L 70 70 0 1 P
+X PJ8 120 1500 -700 100 L 70 70 0 1 P
+X PJ9 121 1500 -800 100 L 70 70 0 1 P
+X PJ10 122 1500 -900 100 L 70 70 0 1 P
+X PJ11 123 1500 -1000 100 L 70 70 0 1 P
+X PK0 126 1500 -1700 100 L 70 70 0 1 P
+X PK1 127 1500 -1800 100 L 70 70 0 1 P
+X PK2 128 1500 -1900 100 L 70 70 0 1 P
+X PI11 13 1500 800 100 L 70 70 0 1 P
+X FMC_INT2/PG6 133 1500 2200 100 L 70 70 0 1 P
+X FMC_INT3/PG7 134 1500 2100 100 L 70 70 0 1 P
+X PC6 138 -1600 -2400 100 R 70 70 0 1 P
+X PC7 139 -1600 -2500 100 R 70 70 0 1 P
+X SDIO_D0/PC8 140 -1600 100 100 R 70 70 0 1 P
+X SDIO_D1/PC9 141 -1600 0 100 R 70 70 0 1 P
+X PA8 142 -1600 2200 100 R 70 70 0 1 P
+X USART1_TX/PA9 143 -1600 2100 100 R 70 70 0 1 P
+X USART1_RX/PA10 144 -1600 2000 100 R 70 70 0 1 P
+X USART1_CTS/PA11 145 -1600 1800 100 R 70 70 0 1 P
+X USART1_RTS/PA12 146 -1600 1900 100 R 70 70 0 1 P
+X SDIO_D2/PC10 161 -1600 -100 100 R 70 70 0 1 P
+X SDIO_D3/PC11 162 -1600 -200 100 R 70 70 0 1 P
+X SDIO_CK/PC12 163 -1600 200 100 R 70 70 0 1 P
+X SDIO_CMD/PD2 166 -1600 300 100 R 70 70 0 1 P
+X PJ12 174 1500 -1100 100 L 70 70 0 1 P
+X PJ13 175 1500 -1200 100 L 70 70 0 1 P
+X PJ14 176 1500 -1300 100 L 70 70 0 1 P
+X PJ15 177 1500 -1400 100 L 70 70 0 1 P
+X FMC_NE2/FMC_NCE3/PG9 178 1500 2000 100 L 70 70 0 1 P
+X FMC_NCE4_1/FMC_NE3/PG10 179 1500 1900 100 L 70 70 0 1 P
+X FMC_NCE4_2/PG11 180 1500 1800 100 L 70 70 0 1 P
+X FMC_NE4/PG12 181 1500 1700 100 L 70 70 0 1 P
+X PK3 186 1500 -2000 100 L 70 70 0 1 P
+X PK4 187 1500 -2100 100 L 70 70 0 1 P
+X PK5 188 1500 -2200 100 L 70 70 0 1 P
+X PK6 189 1500 -2300 100 L 70 70 0 1 P
+X PI12 19 1500 700 100 L 70 70 0 1 P
+X PK7 190 1500 -2400 100 L 70 70 0 1 P
+X PB8/I2C1_SCL 198 -1600 -1400 100 R 70 70 0 1 P
+X PB9/I2C1_SDA 199 -1600 -1500 100 R 70 70 0 1 P
+X PI13 20 1500 600 100 L 70 70 0 1 P
+X PI14 21 1500 500 100 L 70 70 0 1 P
+X FMC_NIORD/PF6 27 1500 2900 100 L 70 70 0 1 P
+X FMC_NREG/PF7 28 1500 2800 100 L 70 70 0 1 P
+X FMC_NIOWR/PF8 29 1500 2700 100 L 70 70 0 1 P
+X FMC_CD/PF9 30 1500 2600 100 L 70 70 0 1 P
+X FMC_INTR/PF10 31 1500 2500 100 L 70 70 0 1 P
+X PC1 36 -1600 -2100 100 R 70 70 0 1 P
+X USART2_CTS/WKUP/PA0 43 -1600 2500 100 R 70 70 0 1 P
+X USART2_RTS/PA1 44 -1600 2600 100 R 70 70 0 1 P
+X USART2_TX/PA2 45 -1600 2800 100 R 70 70 0 1 P
+X FMC_SDCKE0/PH2 46 1500 1400 100 L 70 70 0 1 P
+X PH3 47 -1600 -700 100 R 70 70 0 1 P
+X I2C2_SCL/PH4 48 -1600 -600 100 R 70 70 0 1 P
+X I2C2_SDA/PH5 49 -1600 -500 100 R 70 70 0 1 P
+X USART2_RX/PA3 50 -1600 2700 100 R 70 70 0 1 P
+X PA4 53 -1600 2900 100 R 70 70 0 1 P
+X SPI1_SCK/PA5 54 -1600 800 100 R 70 70 0 1 P
+X SPI1_MISO/PA6 55 -1600 700 100 R 70 70 0 1 P
+X SPI1_MOSI/PA7 56 -1600 600 100 R 70 70 0 1 P
+X PC4 57 -1600 -2200 100 R 70 70 0 1 P
+X PC5 58 -1600 -2300 100 R 70 70 0 1 P
+X PB0 61 -1600 900 100 R 70 70 0 1 P
+X PB1 62 -1600 -1300 100 R 70 70 0 1 P
+X PI15 64 1500 400 100 L 70 70 0 1 P
+X PJ0 65 1500 100 100 L 70 70 0 1 P
+X PJ1 66 1500 0 100 L 70 70 0 1 P
+X PJ2 67 1500 -100 100 L 70 70 0 1 P
+X PJ3 68 1500 -200 100 L 70 70 0 1 P
+X PJ4 69 1500 -300 100 L 70 70 0 1 P
+X PI8 7 1500 900 100 L 70 70 0 1 P
+X PC13 8 -1600 -2600 100 R 70 70 0 1 P
+X PC14 9 -1600 -2700 100 R 70 70 0 1 P
+X PB10 90 -1600 -1600 100 R 70 70 0 1 P
+X PB11 91 -1600 -1700 100 R 70 70 0 1 P
+X PJ5 95 1500 -400 100 L 70 70 0 1 P
+X FMC_SDNE1/PH6 96 1500 1300 100 L 70 70 0 1 P
+X FMC_SDCKE1/PH7 97 1500 1200 100 L 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# STM32F429BIT6_2
+#
+DEF STM32F429BIT6_2 IC 0 40 Y Y 1 F N
+F0 "U" -1110 -1010 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -1100 -900 -1100 800
+P 2 0 1 10 1000 -900 -1100 -900
+P 2 0 1 10 1000 -900 1000 800
+P 2 0 1 10 1000 800 -1100 800
+X PA13/JTMS-SWDIO 147 1100 100 100 L 70 70 0 1 P
+X PA14/JTCK-SWCLK 159 1100 200 100 L 70 70 0 1 P
+X PA15/JTDI 160 1100 -200 100 L 70 70 0 1 P
+X PB3/JTDO/TRACESWO 192 1100 -400 100 L 70 70 0 1 P
+X PB4/NJTRST 193 1100 -300 100 L 70 70 0 1 P
+X BOOT0 197 -1200 -700 100 R 70 70 0 1 P
+X PDR_ON 203 -1200 400 100 R 70 70 0 1 P
+X OSC_IN/PH0 32 -1200 0 100 R 70 70 0 1 P
+X OSC_OUT/PH1 33 -1200 -100 100 R 70 70 0 1 P
+X NRST 34 1100 300 100 L 70 70 0 1 P
+X VREF+ 41 -1200 600 100 R 70 70 0 1 W
+X PB2/BOOT1 63 -1200 -500 100 R 70 70 0 1 P
+ENDDRAW
+ENDDEF
+#
+# STM32F429BIT6_3
+#
+DEF STM32F429BIT6_3 IC 0 40 Y Y 1 F N
+F0 "U" -710 -1610 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -700 1500 -700 -1400
+P 2 0 1 10 700 -1400 -700 -1400
+P 2 0 1 10 700 -1400 700 1500
+P 2 0 1 10 700 1500 -700 1500
+X VDD 103 -800 -100 100 R 70 70 0 1 W
+X VSS 114 800 -300 100 L 70 70 0 1 W
+X VDD 115 -800 -300 100 R 70 70 0 1 W
+X VDD 124 -800 -400 100 R 70 70 0 1 W
+X VSS 125 800 -400 100 L 70 70 0 1 W
+X VSS 136 800 -500 100 L 70 70 0 1 W
+X VDD 137 -800 -500 100 R 70 70 0 1 W
+X VSS 14 800 700 100 L 70 70 0 1 W
+X VCAP2 148 100 1600 100 D 70 70 0 1 P
+X VSS 149 800 -600 100 L 70 70 0 1 W
+X VDD 15 -800 800 100 R 70 70 0 1 W
+X VDD 150 -800 -600 100 R 70 70 0 1 W
+X VDD 158 -800 -1100 100 R 70 70 0 1 W
+X VSS 170 800 -800 100 L 70 70 0 1 W
+X VDD 171 -800 -1000 100 R 70 70 0 1 W
+X VSS 184 800 -900 100 L 70 70 0 1 W
+X VDD 185 -800 -900 100 R 70 70 0 1 W
+X VSS 202 800 -1000 100 L 70 70 0 1 W
+X VDD 204 -800 -800 100 R 70 70 0 1 W
+X VSS 25 800 600 100 L 70 70 0 1 W
+X VDD 26 -800 700 100 R 70 70 0 1 W
+X VDD 39 -800 600 100 R 70 70 0 1 W
+X VSSA 40 800 1000 100 L 70 70 0 1 W
+X VDDA 42 -800 1000 100 R 70 70 0 1 W
+X VSS 51 800 500 100 L 70 70 0 1 W
+X VDD 52 -800 500 100 R 70 70 0 1 W
+X VDD 59 -800 300 100 R 70 70 0 1 W
+X VBAT 6 -800 1200 100 R 70 70 0 1 W
+X VSS 60 800 300 100 L 70 70 0 1 W
+X VSS 72 800 200 100 L 70 70 0 1 W
+X VDD 73 -800 200 100 R 70 70 0 1 W
+X VSS 82 800 100 100 L 70 70 0 1 W
+X VDD 83 -800 100 100 R 70 70 0 1 W
+X VCAP1 92 -100 1600 100 D 70 70 0 1 P
+X VSS 93 800 0 100 L 70 70 0 1 W
+X VDD 94 -800 0 100 R 70 70 0 1 W
+ENDDRAW
+ENDDEF
+#
+# STM32F429BIT6_4
+#
+DEF STM32F429BIT6_4 IC 0 40 Y Y 1 F N
+F0 "U" -1210 -2810 60 H V L BNN
+F1 "" 0 0 60 H V C CNN
+F2 "" 0 0 60 H V C CNN
+F3 "" 0 0 60 H V C CNN
+DRAW
+P 2 0 1 10 -1200 2400 -1200 -2700
+P 2 0 1 10 -1200 2400 1000 2400
+P 2 0 1 10 1000 -2700 -1200 -2700
+P 2 0 1 10 1000 2400 1000 -2700
+X FMC_A23/PE2 1 -1300 -200 100 R 70 70 0 1 P
+X PH10/FMC_D18 100 1100 300 100 L 70 70 0 1 P
+X PH11/FMC_D19 101 1100 200 100 L 70 70 0 1 P
+X PH12/FMC_D20 102 1100 100 100 L 70 70 0 1 P
+X PD8/FMC_D13 108 1100 800 100 L 70 70 0 1 P
+X PD9/FMC_D14 109 1100 700 100 L 70 70 0 1 P
+X PI9/FMC_D30 11 1100 -900 100 L 70 70 0 1 P
+X PD10/FMC_D15 110 1100 600 100 L 70 70 0 1 P
+X FMC_A16/PD11 111 -1300 500 100 R 70 70 0 1 P
+X FMC_A17/PD12 112 -1300 400 100 R 70 70 0 1 P
+X FMC_A18/PD13 113 -1300 300 100 R 70 70 0 1 P
+X PD14/FMC_D0 116 1100 2100 100 L 70 70 0 1 P
+X PD15/FMC_D1 117 1100 2000 100 L 70 70 0 1 P
+X PI10/FMC_D31 12 1100 -1000 100 L 70 70 0 1 P
+X FMC_A12/PG2 129 -1300 900 100 R 70 70 0 1 P
+X FMC_A13/PG3 130 -1300 800 100 R 70 70 0 1 P
+X FMC_A14/PG4 131 -1300 700 100 R 70 70 0 1 P
+X FMC_A15/PG5 132 -1300 600 100 R 70 70 0 1 P
+X PG8/FMC_SDCLK 135 1100 -1300 100 L 70 70 0 1 P
+X PH13/FMC_D21 151 1100 0 100 L 70 70 0 1 P
+X PH14/FMC_D22 152 1100 -100 100 L 70 70 0 1 P
+X PH15/FMC_D23 153 1100 -200 100 L 70 70 0 1 P
+X PI0/FMC_D24 154 1100 -300 100 L 70 70 0 1 P
+X PI1/FMC_D25 155 1100 -400 100 L 70 70 0 1 P
+X PI2/FMC_D26 156 1100 -500 100 L 70 70 0 1 P
+X PI3/FMC_D27 157 1100 -600 100 L 70 70 0 1 P
+X FMC_A0/PF0 16 -1300 2100 100 R 70 70 0 1 P
+X PD0/FMC_D2 164 1100 1900 100 L 70 70 0 1 P
+X PD1/FMC_D3 165 1100 1800 100 L 70 70 0 1 P
+X FMC_CLK/PD3 167 -1300 -1600 100 R 70 70 0 1 P
+X FMC_NOE/PD4 168 -1300 -1700 100 R 70 70 0 1 P
+X FMC_NWE/PD5 169 -1300 -1800 100 R 70 70 0 1 P
+X FMC_A1/PF1 17 -1300 2000 100 R 70 70 0 1 P
+X FMC_NWAIT/PD6 172 -1300 -1900 100 R 70 70 0 1 P
+X FMC_NE1/PD7 173 -1300 -2000 100 R 70 70 0 1 P
+X FMC_A2/PF2 18 -1300 1900 100 R 70 70 0 1 P
+X FMC_A24/PG13 182 -1300 -300 100 R 70 70 0 1 P
+X FMC_A25/PG14 183 -1300 -400 100 R 70 70 0 1 P
+X PG15/FMC_SDNCAS 191 1100 -2200 100 L 70 70 0 1 P
+X PB5/FMC_SDCKE1 194 1100 -2000 100 L 70 70 0 1 P
+X PB6/FMC_SDNE1 195 1100 -1700 100 L 70 70 0 1 P
+X FMC_NL/PB7 196 -1300 -1300 100 R 70 70 0 1 P
+X FMC_A19/PE3 2 -1300 200 100 R 70 70 0 1 P
+X FMC_NBL0/PE0 200 -1300 -700 100 R 70 70 0 1 P
+X FMC_NBL1/PE1 201 -1300 -800 100 R 70 70 0 1 P
+X FMC_NBL2/PI4 205 -1300 -900 100 R 70 70 0 1 P
+X FMC_NBL3/PI5 206 -1300 -1000 100 R 70 70 0 1 P
+X PI6/FMC_D28 207 1100 -700 100 L 70 70 0 1 P
+X PI7/FMC_D29 208 1100 -800 100 L 70 70 0 1 P
+X FMC_A3/PF3 22 -1300 1800 100 R 70 70 0 1 P
+X FMC_A4/PF4 23 -1300 1700 100 R 70 70 0 1 P
+X FMC_A5/PF5 24 -1300 1600 100 R 70 70 0 1 P
+X FMC_A20/PE4 3 -1300 100 100 R 70 70 0 1 P
+X PC0/FMC_SDNWE 35 1100 -1400 100 L 70 70 0 1 P
+X PC2/FMC_SDNE0 37 1100 -1600 100 L 70 70 0 1 P
+X PC3/FMC_SDCKE0 38 1100 -1900 100 L 70 70 0 1 P
+X FMC_A21/PE5 4 -1300 0 100 R 70 70 0 1 P
+X FMC_A22/PE6 5 -1300 -100 100 R 70 70 0 1 P
+X PF11/FMC_SDNRAS 70 1100 -2300 100 L 70 70 0 1 P
+X FMC_A6/PF12 71 -1300 1500 100 R 70 70 0 1 P
+X FMC_A7/PF13 74 -1300 1400 100 R 70 70 0 1 P
+X FMC_A8/PF14 75 -1300 1300 100 R 70 70 0 1 P
+X FMC_A9/PF15 76 -1300 1200 100 R 70 70 0 1 P
+X FMC_A10/PG0 77 -1300 1100 100 R 70 70 0 1 P
+X FMC_A11/PG1 78 -1300 1000 100 R 70 70 0 1 P
+X PE7/FMC_D4 79 1100 1700 100 L 70 70 0 1 P
+X PE8/FMC_D5 80 1100 1600 100 L 70 70 0 1 P
+X PE9/FMC_D6 81 1100 1500 100 L 70 70 0 1 P
+X PE10/FMC_D7 84 1100 1400 100 L 70 70 0 1 P
+X PE11/FMC_D8 85 1100 1300 100 L 70 70 0 1 P
+X PE12/FMC_D9 86 1100 1200 100 L 70 70 0 1 P
+X PE13/FMC_D10 87 1100 1100 100 L 70 70 0 1 P
+X PE14/FMC_D11 88 1100 1000 100 L 70 70 0 1 P
+X PE15/FMC_D12 89 1100 900 100 L 70 70 0 1 P
+X PH8/FMC_D16 98 1100 500 100 L 70 70 0 1 P
+X PH9/FMC_D17 99 1100 400 100 L 70 70 0 1 P
+ENDDRAW
+ENDDEF