diff --git a/app/resources/boards/iCE40-HX8K/info.json b/app/resources/boards/iCE40-HX8K/info.json index 2b93ff91b..02bb735a0 100644 --- a/app/resources/boards/iCE40-HX8K/info.json +++ b/app/resources/boards/iCE40-HX8K/info.json @@ -1,4 +1,4 @@ { "label": "iCE40-HX8K", - "datasheet": "http://www.latticesemi.com/Products/DevelopmentBoardsAndKits/iCE40HX8KBreakoutBoard.aspx" + "datasheet": "http://www.latticesemi.com/view_document?document_id=50373" } diff --git a/app/resources/boards/iCE40-HX8K/pinout.json b/app/resources/boards/iCE40-HX8K/pinout.json index 5a86a289e..ab7f19a63 100644 --- a/app/resources/boards/iCE40-HX8K/pinout.json +++ b/app/resources/boards/iCE40-HX8K/pinout.json @@ -1,112 +1 @@ -[ - { "name": "B1", "value": "B1" }, - { "name": "B2", "value": "B2" }, - { "name": "C1", "value": "C1" }, - { "name": "C2", "value": "C2" }, - { "name": "D1", "value": "D1" }, - { "name": "D2", "value": "D2" }, - { "name": "E2", "value": "E2" }, - { "name": "F1", "value": "F1" }, - { "name": "F2", "value": "F2" }, - { "name": "G1", "value": "G1" }, - { "name": "G2", "value": "G2" }, - { "name": "H1", "value": "H1" }, - { "name": "H2", "value": "H2" }, - { "name": "J3", "value": "J3" }, - { "name": "J2", "value": "J2" }, - { "name": "J1", "value": "J1" }, - { "name": "K3", "value": "K3" }, - { "name": "K1", "value": "K1" }, - { "name": "L3", "value": "L3" }, - { "name": "L1", "value": "L1" }, - { "name": "M2", "value": "M2" }, - { "name": "M1", "value": "M1" }, - { "name": "N3", "value": "N3" }, - { "name": "N2", "value": "N2" }, - { "name": "P1", "value": "P1" }, - { "name": "P2", "value": "P2" }, - { "name": "R1", "value": "R1" }, - { "name": "T1", "value": "T1" }, - { "name": "T2", "value": "T2" }, - { "name": "R2", "value": "R2" }, - { "name": "T3", "value": "T3" }, - { "name": "R3", "value": "R3" }, - { "name": "R4", "value": "R4" }, - { "name": "T5", "value": "T5" }, - { "name": "R5", "value": "R5" }, - { "name": "T6", "value": "T6" }, - { "name": "R6", "value": "R6" }, - { "name": "T7", "value": "T7" }, - { "name": "T8", "value": "T8" }, - { "name": "T9", "value": "T9" }, - { "name": "R9", "value": "R8" }, - { "name": "P8", "value": "P8" }, - { "name": "P9", "value": "P9" }, - { "name": "T10", "value": "T10" }, - { "name": "R10", "value": "R10" }, - { "name": "T11", "value": "T11" }, - { "name": "P10", "value": "P10" }, - { "name": "N12", "value": "N12" }, - { "name": "P13", "value": "P13" }, - { "name": "T13", "value": "T13" }, - { "name": "T14", "value": "T14" }, - { "name": "T15", "value": "T15" }, - { "name": "T16", "value": "T16" }, - { "name": "R16", "value": "R16" }, - { "name": "C16", "value": "C16" }, - { "name": "B16", "value": "B16" }, - { "name": "D16", "value": "D16" }, - { "name": "D14", "value": "D14" }, - { "name": "E16", "value": "E16" }, - { "name": "D15", "value": "D15" }, - { "name": "F16", "value": "F16" }, - { "name": "E14", "value": "E14" }, - { "name": "G16", "value": "G16" }, - { "name": "F15", "value": "F15" }, - { "name": "H16", "value": "H16" }, - { "name": "G15", "value": "G15" }, - { "name": "J15", "value": "J15" }, - { "name": "H14", "value": "H14" }, - { "name": "G14", "value": "G14" }, - { "name": "F14", "value": "F14" }, - { "name": "K14", "value": "K14" }, - { "name": "J14", "value": "J14" }, - { "name": "K15", "value": "K15" }, - { "name": "K16", "value": "K16" }, - { "name": "M16", "value": "M16" }, - { "name": "L16", "value": "L16" }, - { "name": "N16", "value": "N16" }, - { "name": "M15", "value": "M15" }, - { "name": "P16", "value": "P16" }, - { "name": "P15", "value": "P15" }, - { "name": "R15", "value": "R15" }, - { "name": "A2", "value": "A2" }, - { "name": "A1", "value": "A1" }, - { "name": "B4", "value": "B4" }, - { "name": "B3", "value": "B3" }, - { "name": "B5", "value": "B5" }, - { "name": "C3", "value": "C3" }, - { "name": "A5", "value": "A5" }, - { "name": "C4", "value": "C4" }, - { "name": "B6", "value": "B6" }, - { "name": "C5", "value": "C5" }, - { "name": "A6", "value": "A6" }, - { "name": "C6", "value": "C6" }, - { "name": "B7", "value": "B7" }, - { "name": "C7", "value": "C7" }, - { "name": "B8", "value": "B8" }, - { "name": "A7", "value": "A7" }, - { "name": "A9", "value": "A9" }, - { "name": "B9", "value": "B9" }, - { "name": "A10", "value": "A10" }, - { "name": "C9", "value": "C9" }, - { "name": "A11", "value": "A11" }, - { "name": "B10", "value": "B10" }, - { "name": "B12", "value": "B12" }, - { "name": "B11", "value": "B11" }, - { "name": "B13", "value": "B13" }, - { "name": "B14", "value": "B14" }, - { "name": "A15", "value": "A15" }, - { "name": "B15", "value": "B15" }, - { "name": "A16", "value": "A16" } -] +{"pinout": [{"name": "LED0", "value": "B5"}, {"name": "LED1", "value": "B4"}, {"name": "LED2", "value": "A2"}, {"name": "LED3", "value": "A1"}, {"name": "LED4", "value": "C5"}, {"name": "LED5", "value": "C4"}, {"name": "LED6", "value": "B3"}, {"name": "LED7", "value": "C3"}, {"name": "CLK", "value": "J3"}, {"name": "MISO", "value": "P12"}, {"name": "MOSI", "value": "P11"}, {"name": "SCK", "value": "R11"}, {"name": "SS", "value": "R12"}, {"name": "RTS", "value": "B13"}, {"name": "RESET", "value": "N11"}, {"name": "DONE", "value": "M10"}, {"name": "TX", "value": "B12"}, {"name": "RX", "value": "B10"}, {"name": "DCD", "value": "B15"}, {"name": "DSR", "value": "B14"}, {"name": "DTR", "value": "A16"}, {"name": "CTS", "value": "A15"}, {"name": "A16", "value": "A16"}, {"name": "A15", "value": "A15"}, {"name": "B15", "value": "B15"}, {"name": "B13", "value": "B13"}, {"name": "B14", "value": "B14"}, {"name": "B12", "value": "B12"}, {"name": "B11", "value": "B11"}, {"name": "A11", "value": "A11"}, {"name": "B10", "value": "B10"}, {"name": "A10", "value": "A10"}, {"name": "C9", "value": "C9"}, {"name": "A9", "value": "A9"}, {"name": "B9", "value": "B9"}, {"name": "B8", "value": "B8"}, {"name": "A7", "value": "A7"}, {"name": "B7", "value": "B7"}, {"name": "C7", "value": "C7"}, {"name": "A6", "value": "A6"}, {"name": "C6", "value": "C6"}, {"name": "B6", "value": "B6"}, {"name": "C5", "value": "C5"}, {"name": "A5", "value": "A5"}, {"name": "C4", "value": "C4"}, {"name": "B5", "value": "B5"}, {"name": "C3", "value": "C3"}, {"name": "B4", "value": "B4"}, {"name": "B3", "value": "B3"}, {"name": "A2", "value": "A2"}, {"name": "A1", "value": "A1"}, {"name": "R15", "value": "R15"}, {"name": "P16", "value": "P16"}, {"name": "P15", "value": "P15"}, {"name": "N16", "value": "N16"}, {"name": "M15", "value": "M15"}, {"name": "M16", "value": "M16"}, {"name": "L16", "value": "L16"}, {"name": "K15", "value": "K15"}, {"name": "K16", "value": "K16"}, {"name": "K14", "value": "K14"}, {"name": "J14", "value": "J14"}, {"name": "G14", "value": "G14"}, {"name": "F14", "value": "F14"}, {"name": "J15", "value": "J15"}, {"name": "H14", "value": "H14"}, {"name": "H16", "value": "H16"}, {"name": "G15", "value": "G15"}, {"name": "G16", "value": "G16"}, {"name": "F15", "value": "F15"}, {"name": "F16", "value": "F16"}, {"name": "E14", "value": "E14"}, {"name": "E16", "value": "E16"}, {"name": "D15", "value": "D15"}, {"name": "D14", "value": "D14"}, {"name": "B16", "value": "B16"}, {"name": "C16", "value": "C16"}, {"name": "B16", "value": "B16"}, {"name": "R16", "value": "R16"}, {"name": "T15", "value": "T15"}, {"name": "T16", "value": "T16"}, {"name": "T13", "value": "T13"}, {"name": "T14", "value": "T14"}, {"name": "N12", "value": "N12"}, {"name": "P13", "value": "P13"}, {"name": "N10", "value": "N10"}, {"name": "M11", "value": "M11"}, {"name": "T11", "value": "T11"}, {"name": "P10", "value": "P10"}, {"name": "T10", "value": "T10"}, {"name": "R10", "value": "R10"}, {"name": "P8", "value": "P8"}, {"name": "P9", "value": "P9"}, {"name": "T9", "value": "T9"}, {"name": "R9", "value": "R9"}, {"name": "T7", "value": "T7"}, {"name": "T8", "value": "T8"}, {"name": "T6", "value": "T6"}, {"name": "R6", "value": "R6"}, {"name": "T5", "value": "T5"}, {"name": "R5", "value": "R5"}, {"name": "R3", "value": "R3"}, {"name": "R4", "value": "R4"}, {"name": "R2", "value": "R2"}, {"name": "T3", "value": "T3"}, {"name": "T1", "value": "T1"}, {"name": "T2", "value": "T2"}, {"name": "R1", "value": "R1"}, {"name": "P1", "value": "P1"}, {"name": "P2", "value": "P2"}, {"name": "N3", "value": "N3"}, {"name": "N2", "value": "N2"}, {"name": "M2", "value": "M2"}, {"name": "M1", "value": "M1"}, {"name": "L3", "value": "L3"}, {"name": "L1", "value": "L1"}, {"name": "K3", "value": "K3"}, {"name": "K1", "value": "K1"}, {"name": "J2", "value": "J2"}, {"name": "J1", "value": "J1"}, {"name": "H2", "value": "H2"}, {"name": "J3", "value": "J3"}, {"name": "G2", "value": "G2"}, {"name": "H1", "value": "H1"}, {"name": "F2", "value": "F2"}, {"name": "G1", "value": "G1"}, {"name": "E2", "value": "E2"}, {"name": "F1", "value": "F1"}, {"name": "D1", "value": "D1"}, {"name": "D2", "value": "D2"}, {"name": "C1", "value": "C1"}, {"name": "C2", "value": "C2"}, {"name": "B2", "value": "B2"}, {"name": "B1", "value": ""}], "label": "iCE40-HX8K"} \ No newline at end of file diff --git a/app/resources/boards/iCE40-HX8K/pinout.pcf b/app/resources/boards/iCE40-HX8K/pinout.pcf new file mode 100644 index 000000000..1219af3f8 --- /dev/null +++ b/app/resources/boards/iCE40-HX8K/pinout.pcf @@ -0,0 +1,311 @@ +# ----------------------------------------------------------------------------- +#- iCE40-HX8K constraint file (.pcf) +#- By Juan López (Micuss), Carlos Días, Gorka Guardiola and Democrito. +#- November - 2016 +#- GPL license +#- Board info: http://www.latticesemi.com/view_document?document_id=50373 + +#---------------------------- LEDS ------------------------------------------ + +set_io --warn-no-port LED0 B5 +set_io --warn-no-port LED1 B4 +set_io --warn-no-port LED2 A2 +set_io --warn-no-port LED3 A1 +set_io --warn-no-port LED4 C5 +set_io --warn-no-port LED5 C4 +set_io --warn-no-port LED6 B3 +set_io --warn-no-port LED7 C3 + +# -------------------------- SYSTEM CLOCK ------------------------------------ + +set_io --warn-no-port CLK J3 + +# ------------------------------ FTDI 0 -------------------------------------- +# SPI +set_io --warn-no-port MISO P12 +set_io --warn-no-port MOSI P11 +set_io --warn-no-port SCK R11 +set_io --warn-no-port SS R12 #J7.1 +set_io --warn-no-port RTS B13 + +set_io --warn-no-port RESET N11 +set_io --warn-no-port DONE M10 + +# ------------------------------ FTDI 1 -------------------------------------- +# UART +set_io --warn-no-port TX B12 +set_io --warn-no-port RX B10 +set_io --warn-no-port DCD B15 +set_io --warn-no-port DSR B14 +set_io --warn-no-port DTR A16 +set_io --warn-no-port CTS A15 + + +# ******************************* + +# ----------------------------- BANK-0 -------------------------------------------------------- + +# ------------------------ PMOD0 connector (J1) ----------------------------------------------- + +# ************************************ +# * * +# --------------------* Serigraphy of PCB *------------------------------------- +# * * +# ************************************ +# +# +# +# J1 +# -------- +# 1---| A16 VCC |---2 VCCIO0_01 +# 3---| A15 B15 |---4 +# 5---| B13 B14 |---6 +# 7---| GND GND |---8 +# 9---| B12 B11 |---10 +# -------- +# 11---| A11 B10 |---12 +# 13---| A10 C9 |---14 +# 15---| GND GND |---16 +# 17---| A9 B9 |---18 +# 19---| B8 A7 |---20 +# -------- +# 21---| B7 C7 |---22 +# 23---| GND GND |---24 +# 25---| A6 C6 |---26 +# 27---| B6 C5 |---28 +# 29---| A5 C4 |---30 +# -------- +# 31---| GND GND |---32 +# 33---| B5 C3 |---34 +# 35---| B4 B3 |---36 +# 37---| A2 A1 |---38 +# 39---| GND GND |---40 +# --------- + + +set_io --warn-no-port A16 A16 +set_io --warn-no-port A15 A15 +set_io --warn-no-port B15 B15 +set_io --warn-no-port B13 B13 +set_io --warn-no-port B14 B14 +set_io --warn-no-port B12 B12 +set_io --warn-no-port B11 B11 +set_io --warn-no-port A11 A11 +set_io --warn-no-port B10 B10 +set_io --warn-no-port A10 A10 +set_io --warn-no-port C9 C9 +set_io --warn-no-port A9 A9 +set_io --warn-no-port B9 B9 +set_io --warn-no-port B8 B8 +set_io --warn-no-port A7 A7 +set_io --warn-no-port B7 B7 +set_io --warn-no-port C7 C7 +set_io --warn-no-port A6 A6 +set_io --warn-no-port C6 C6 +set_io --warn-no-port B6 B6 +set_io --warn-no-port C5 C5 +set_io --warn-no-port A5 A5 +set_io --warn-no-port C4 C4 +set_io --warn-no-port B5 B5 +set_io --warn-no-port C3 C3 +set_io --warn-no-port B4 B4 +set_io --warn-no-port B3 B3 +set_io --warn-no-port A2 A2 +set_io --warn-no-port A1 A1 + + + +# ----------------------------- BANK-1 -------------------------------------------------------- + + +# ------------------------ PMOD1 connector (J2) ----------------------------------------------- +# +# +# +# +# J2 +# -------- +# 1---| 1V2 VCC |---2 VCCIO1_01 +# 3---| 1V2 R15 |---4 +# 5---| P16 P15 |---6 +# 7---| GND GND |---8 +# 9---| N16 M15 |---10 +# -------- +# 11---| M16 L16 |---12 +# 13---| K15 K16 |---14 +# 15---| GND GND |---16 +# 17---| K14 J14 |---18 +# 19---| G14 F14 |---20 +# -------- +# 21---| J15 H14 |---22 +# 23---| GND GND |---24 +#GBIN2 25---| H16 G15 |---26 +# 27---| G16 F15 |---28 +# 29---| F16 E14 |---30 +# -------- +# 31---| GND GND |---32 +# 33---| E16 D15 |---34 +# 35---| D16 D14 |---36 +# 37---| C16 B16 |---38 +# 39---| GND GND |---40 +# --------- + + +set_io --warn-no-port R15 R15 +set_io --warn-no-port P16 P16 +set_io --warn-no-port P15 P15 +set_io --warn-no-port N16 N16 +set_io --warn-no-port M15 M15 +set_io --warn-no-port M16 M16 +set_io --warn-no-port L16 L16 +set_io --warn-no-port K15 K15 +set_io --warn-no-port K16 K16 +set_io --warn-no-port K14 K14 +set_io --warn-no-port J14 J14 +set_io --warn-no-port G14 G14 +set_io --warn-no-port F14 F14 +set_io --warn-no-port J15 J15 +set_io --warn-no-port H14 H14 +set_io --warn-no-port H16 H16 +set_io --warn-no-port G15 G15 +set_io --warn-no-port G16 G16 +set_io --warn-no-port F15 F15 +set_io --warn-no-port F16 F16 +set_io --warn-no-port E14 E14 +set_io --warn-no-port E16 E16 +set_io --warn-no-port D15 D15 +set_io --warn-no-port D14 D14 +set_io --warn-no-port B16 B16 +set_io --warn-no-port C16 C16 +set_io --warn-no-port B16 B16 + + + +# ----------------------------- BANK-2 -------------------------------------------------------- + +# ------------------------ PMOD2 connector (J3) ----------------------------------------------- +# +# +# +# +# J3 +# -------- +# 1---| R16 VCC |---2 VCCIO2 +# 3---| T15 T16 |---4 +# 5---| T13 T14 |---6 +# 7---| GND GND |---8 +# 9---| N12 P13 |---10 +# -------- +# 11---| N10 M11 |---12 +# 13---| T11 P10 |---14 +# 15---| GND GND |---16 +# 17---| T10 R10 |---18 +# 19---| P8 P9 |---20 +# -------- +# 21---| T9 R9 |---22 +# 23---| GND GND |---24 +# 25---| T7 T8 |---26 +# 27---| T6 R6 |---28 +# 29---| T5 R5 |---30 +# -------- +# 31---| GND GND |---32 +# 33---| R3 R4 |---34 +# 35---| R2 T3 |---36 +# 37---| T1 T2 |---38 +# 39---| GND GND |---40 +# --------- + + +set_io --warn-no-port R16 R16 +set_io --warn-no-port T15 T15 +set_io --warn-no-port T16 T16 +set_io --warn-no-port T13 T13 +set_io --warn-no-port T14 T14 +set_io --warn-no-port N12 N12 +set_io --warn-no-port P13 P13 +set_io --warn-no-port N10 N10 +set_io --warn-no-port M11 M11 +set_io --warn-no-port T11 T11 +set_io --warn-no-port P10 P10 +set_io --warn-no-port T10 T10 +set_io --warn-no-port R10 R10 +set_io --warn-no-port P8 P8 +set_io --warn-no-port P9 P9 +set_io --warn-no-port T9 T9 +set_io --warn-no-port R9 R9 +set_io --warn-no-port T7 T7 +set_io --warn-no-port T8 T8 +set_io --warn-no-port T6 T6 +set_io --warn-no-port R6 R6 +set_io --warn-no-port T5 T5 +set_io --warn-no-port R5 R5 +set_io --warn-no-port R3 R3 +set_io --warn-no-port R4 R4 +set_io --warn-no-port R2 R2 +set_io --warn-no-port T3 T3 +set_io --warn-no-port T1 T1 +set_io --warn-no-port T2 T2 + + +# ----------------------------- BANK-3 -------------------------------------------------------- + + +# ------------------------ PMOD3 connector (J4) ----------------------------------------------- +# +# +# +# J4 +# -------- +# 1---| 3V3 VCC |---2 VCCIO3_01 +# 3---| 3V3 R1 |---4 +# 5---| P1 P2 |---6 +# 7---| GND GND |---8 +# 9---| N3 N2 |---10 +# -------- +# 11---| M2 M1 |---12 +# 13---| L3 L1 |---14 +# 15---| GND GND |---16 +# 17---| K3 K1 |---18 +# 19---| J2 J1 |---20 +# -------- +# 21---| H2 J3 |---22 +# 23---| GND GND |---24 +# 25---| G2 H1 |---26 +# 27---| F2 G1 |---28 +# 29---| E2 F1 |---30 +# -------- +# 31---| GND GND |---32 +# 33---| D1 D2 |---34 +# 35---| C1 C2 |---36 +# 37---| B1 B2 |---38 +# 39---| GND GND |---40 +# --------- + + +set_io --warn-no-port R1 R1 +set_io --warn-no-port P1 P1 +set_io --warn-no-port P2 P2 +set_io --warn-no-port N3 N3 +set_io --warn-no-port N2 N2 +set_io --warn-no-port M2 M2 +set_io --warn-no-port M1 M1 +set_io --warn-no-port L3 L3 +set_io --warn-no-port L1 L1 +set_io --warn-no-port K3 K3 +set_io --warn-no-port K1 K1 +set_io --warn-no-port J2 J2 +set_io --warn-no-port J1 J1 +set_io --warn-no-port H2 H2 +set_io --warn-no-port J3 J3 +set_io --warn-no-port G2 G2 +set_io --warn-no-port H1 H1 +set_io --warn-no-port F2 F2 +set_io --warn-no-port G1 G1 +set_io --warn-no-port E2 E2 +set_io --warn-no-port F1 F1 +set_io --warn-no-port D1 D1 +set_io --warn-no-port D2 D2 +set_io --warn-no-port C1 C1 +set_io --warn-no-port C2 C2 +set_io --warn-no-port B2 B2 +set_io --warn-no-port B1 B1 \ No newline at end of file