juanmard/icestudio

View on GitHub
resources/boards/blackice-ii/pinout.pcf

Summary

Maintainability
Test Coverage
# -----------------------------------------------------------------------------
#- BlackIce II constraint file (.pcf)
#- By Jesus Arroyo Torrens
#- January - 2018
#- GPL license
# -----------------------------------------------------------------------------


# ------------ LEDs -----------------------------------------------------------
#            ______                ______
#        ___|      |______________|      |___
#       |   |______|              |______|   |
#       |    ####                           _|__
#       |  LED1...LED4                     |    |
#       |                                  |    |
#       |                                  |____|
#       |                                   _|__
#       |                                  |    |
#       |                                  |    |
#       |                                  |____|
#       |_                                  _|__
#       |_|                                |    |
#       |_                                 |    |
#       |_|                                |____|
#       |    ______     ______     ______    |
#       |___|      |___|      |___|      |___|
#           |______|   |______|   |______|
#
# --   LED1: Blue
# --   LED2: Green
# --   LED3: Yellow
# --   LED4: Red

set_io --warn-no-port LED1 71
set_io --warn-no-port LED2 67
set_io --warn-no-port LED3 68
set_io --warn-no-port LED4 70

# LED1 = SS = P140
# LED2 = MISO = P141
# LED3 = MOSI = P142
# LED4 = SCK = P143


# ------------ Buttons --------------------------------------------------------
#            ______                ______
#        ___|      |______________|      |___
#       |   |______|              |______|   |
#       |            [] []                  _|__
#       |            B2 B1                 |    |
#       |                                  |    |
#       |                                  |____|
#       |                                   _|__
#       |                                  |    |
#       |                                  |    |
#       |                                  |____|
#       |_                                  _|__
#       |_|                                |    |
#       |_                                 |    |
#       |_|                                |____|
#       |    ______     ______     ______    |
#       |___|      |___|      |___|      |___|
#           |______|   |______|   |______|
#

set_io --warn-no-port B1 63
set_io --warn-no-port B2 64


# ------------ System 12 MHz clock --------------------------------------------
set_io --warn-no-port CLK 129


# ------------ Digital connectors ---------------------------------------------
#            ______                ______
#        ___|      |______________|      |___
#       |   |______|              |______|   |
#       |                                   _|__
#       |               Digital3           |    |
#       |              ************        |    |
#       |                                  |____|
#       |                                   _|__
#       |                                  |    |
#       |                                  |    |
#       |                                  |____|
#       |_                                  _|__
#       |_|                                |    |
#       |_     Digital1   Digital2         |    |
#       |_|    ********  **********        |____|
#       |    ______     ______     ______    |
#       |___|      |___|      |___|      |___|
#           |______|   |______|   |______|
#

# -------------| Digital1 |----------------------------------------------------
#
#  Connected to the STM32
#
#      ---------------------------------------
#     | D0 | D1 | D2 | D3 | D4 | D5 | D6 | D7 |
#      ---------------------------------------

# -------------| Digital2 |----------------------------------------------------
#
#  Connected to the STM32
#
#      -------------------------------------------------
#     | D8 | D9 | D10 | D11 | D12 | D13 | - | - | - | - |
#      -------------------------------------------------

# -------------| Digital3 |----------------------------------------------------
#
#  Connected to the STM32
#
#      -------------------------------------------------------
#     | - | - | - | - | - | - | - | - | D19 | D18 | D17 | D16 |
#      -------------------------------------------------------

set_io --warn-no-port D16 41
set_io --warn-no-port D17 39
set_io --warn-no-port D18 38
set_io --warn-no-port D19 37

# D16 = P133
# D17 = P132
# D18 = P131
# D19 = P130


# ------------ Analog connectors ----------------------------------------------
#            ______                ______
#        ___|      |______________|      |___
#       |   |______|              |______|   |
#       |                                   _|__
#       |      Analog                      |    |
#       |      ******                      |    |
#       |                                  |____|
#       |                                   _|__
#       |                                  |    |
#       |                                  |    |
#       |                                  |____|
#       |_                                  _|__
#       |_|                                |    |
#       |_                                 |    |
#       |_|                                |____|
#       |    ______     ______     ______    |
#       |___|      |___|      |___|      |___|
#           |______|   |______|   |______|
#

# -------------| Analog |------------------------------------------------------
#
#  Connected to the STM32
#
#      -----------------------------
#     | A0 | A1 | A2 | A3 | A4 | A5 |
#      -----------------------------


# ------------ PMOD connectors ------------------------------------------------
#            ______                ______
#        ___|      |______________|      |___
#       |   |______|              |______|   |
#       |     P14                   P13     _|__
#       |                                  |    |
#       |                                  |    | P11/12
#       |                                  |____|
#       |                                   _|__
#       |                                  |    |
#       |                                  |    | P9/10
#       |                                  |____|
#       |_                                  _|__
#       |_|                                |    |
#       |_                                 |    | P7/8
#       |_|                                |____|
#       |    ______     ______     ______    |
#       |___|      |___|      |___|      |___|
#           |______|   |______|   |______|
#             P1/2       P3/4       P5/6

# -------------| P1 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P13 | P12 | P11 | P10 |  <       ^
#      -----------------------------------
#     | 3V3 | GND | P23 | P22 | P21 | P20 |
#      -----------------------------------

set_io --warn-no-port P10 94
set_io --warn-no-port P11 91
set_io --warn-no-port P12 88
set_io --warn-no-port P13 85

# P11 = CH340 RST <=> GRESET

# -------------| P2 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P13 | P12 | P11 | P10 |          ^
#      -----------------------------------
#     | 3V3 | GND | P23 | P22 | P21 | P20 |  <
#      -----------------------------------

set_io --warn-no-port P20 95
set_io --warn-no-port P21 93
set_io --warn-no-port P22 90
set_io --warn-no-port P23 87

# -------------| P3 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P33 | P32 | P31 | P30 |  <       ^
#      -----------------------------------
#     | 3V3 | GND | P43 | P42 | P41 | P40 |
#      -----------------------------------

set_io --warn-no-port P30 105
set_io --warn-no-port P31 102
set_io --warn-no-port P32  99
set_io --warn-no-port P33  97

# -------------| P4 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P33 | P32 | P31 | P30 |          ^
#      -----------------------------------
#     | 3V3 | GND | P43 | P42 | P41 | P40 |  <
#      -----------------------------------

set_io --warn-no-port P40 104
set_io --warn-no-port P41 101
set_io --warn-no-port P42  98
set_io --warn-no-port P43  96

# -------------| P5 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P53 | P52 | P51 | P50 |  <       ^
#      -----------------------------------
#     | 3V3 | GND | P63 | P62 | P61 | P60 |
#      -----------------------------------

set_io --warn-no-port P50 143
set_io --warn-no-port P51 114
set_io --warn-no-port P52 112
set_io --warn-no-port P53 107

# -------------| P6 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P53 | P52 | P51 | P50 |          ^
#      -----------------------------------
#     | 3V3 | GND | P63 | P62 | P61 | P60 |  <
#      -----------------------------------

set_io --warn-no-port P60 144
set_io --warn-no-port P61 113
set_io --warn-no-port P62 110
set_io --warn-no-port P63 106

# -------------| P7 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P73 | P72 | P71 | P70 |  <       ^
#      -----------------------------------
#     | 3V3 | GND | P83 | P82 | P81 | P80 |
#      -----------------------------------

set_io --warn-no-port P70 10
set_io --warn-no-port P71  9
set_io --warn-no-port P72  2
set_io --warn-no-port P73  1

# -------------| P8 |----------------------------------------------------------
#
#      -----------------------------------          TOP
#     | 3V3 | GND | P73 | P72 | P71 | P70 |          ^
#      -----------------------------------
#     | 3V3 | GND | P83 | P82 | P81 | P80 |  <
#      -----------------------------------

set_io --warn-no-port P80 8
set_io --warn-no-port P81 7
set_io --warn-no-port P82 4
set_io --warn-no-port P83 3

# -------------| P9 |----------------------------------------------------------
#
#      ---------------------------------------          TOP
#     | 3V3 | GND | P93  | P92  | P91  | P90  |  <       ^
#      ---------------------------------------
#     | 3V3 | GND | P103 | P102 | P101 | P100 |
#      ---------------------------------------

set_io --warn-no-port P90 20
set_io --warn-no-port P91 19
set_io --warn-no-port P92 16
set_io --warn-no-port P93 15

# -------------| P10 |---------------------------------------------------------
#
#      ---------------------------------------          TOP
#     | 3V3 | GND | P93  | P92  | P91  | P90  |          ^
#      ---------------------------------------
#     | 3V3 | GND | P103 | P102 | P101 | P100 |  <
#      ---------------------------------------

set_io --warn-no-port P100 18
set_io --warn-no-port P101 17
set_io --warn-no-port P102 12
set_io --warn-no-port P103 11

# -------------| P11 |---------------------------------------------------------
#
#      ---------------------------------------          TOP
#     | 3V3 | GND | P113 | P112 | P111 | P110 |  <       ^
#      ---------------------------------------
#     | 3V3 | GND | P123 | P122 | P121 | P120 |
#      ---------------------------------------

set_io --warn-no-port P110 34
set_io --warn-no-port P111 33
set_io --warn-no-port P112 22
set_io --warn-no-port P113 21

# -------------| P12 |---------------------------------------------------------
#
#      ---------------------------------------          TOP
#     | 3V3 | GND | P113 | P112 | P111 | P110 |          ^
#      ---------------------------------------
#     | 3V3 | GND | P123 | P122 | P121 | P120 |  <
#      ---------------------------------------

set_io --warn-no-port P120 32
set_io --warn-no-port P121 31
set_io --warn-no-port P122 26
set_io --warn-no-port P123 25

# -------------| P13 |---------------------------------------------------------
#
#      ---------------------------------------          TOP
#     | 3V3 | GND | P133 | P132 | P131 | P130 |          ^
#      ---------------------------------------

set_io --warn-no-port P130 37
set_io --warn-no-port P131 38
set_io --warn-no-port P132 39
set_io --warn-no-port P133 41

# P130 = D19
# P131 = D18
# P132 = D17
# P133 = D16

# -------------| P14 |---------------------------------------------------------
#
#      ---------------------------------------          TOP
#     | 3V3 | GND | P143 | P142 | P141 | P140 |          ^
#      ---------------------------------------

set_io --warn-no-port P140 71
set_io --warn-no-port P141 67
set_io --warn-no-port P142 68
set_io --warn-no-port P143 70

# P140 = LED1 = SS
# P141 = LED2 = MISO
# P142 = LED3 = MOSI
# P143 = LED4 = SCK


# ------------ SRAM -----------------------------------------------------------
#

set_io --warn-no-port RAMOE  29
set_io --warn-no-port RAMWE 120
set_io --warn-no-port RAMCS  23
set_io --warn-no-port RAMUB  28
set_io --warn-no-port RAMLB  24

# -------------| ADR |---------------------------------------------------------
set_io --warn-no-port ADR0  137
set_io --warn-no-port ADR1  138
set_io --warn-no-port ADR2  139
set_io --warn-no-port ADR3  141
set_io --warn-no-port ADR4  142
set_io --warn-no-port ADR5   42
set_io --warn-no-port ADR6   43
set_io --warn-no-port ADR7   44
set_io --warn-no-port ADR8   73
set_io --warn-no-port ADR9   74
set_io --warn-no-port ADR10  75
set_io --warn-no-port ADR11  76
set_io --warn-no-port ADR12 115
set_io --warn-no-port ADR13 116
set_io --warn-no-port ADR14 117
set_io --warn-no-port ADR15 118
set_io --warn-no-port ADR16 119
set_io --warn-no-port ADR17  78

# -------------| DAT |---------------------------------------------------------
set_io --warn-no-port DAT0 136
set_io --warn-no-port DAT1 135
set_io --warn-no-port DAT2 134
set_io --warn-no-port DAT3 130
set_io --warn-no-port DAT4 125
set_io --warn-no-port DAT5 124
set_io --warn-no-port DAT6 122
set_io --warn-no-port DAT7 121
set_io --warn-no-port DAT8  62
set_io --warn-no-port DAT9  61
set_io --warn-no-port DAT10 60
set_io --warn-no-port DAT11 56
set_io --warn-no-port DAT12 55
set_io --warn-no-port DAT13 48
set_io --warn-no-port DAT14 47
set_io --warn-no-port DAT15 45


# ------------ Debug ----------------------------------------------------------
#

set_io --warn-no-port DONE 52
set_io --warn-no-port DBG1 49


# ------------ Internal global reset ------------------------------------------
#

set_io --warn-no-port GRESET 128

# GRESET <=> P11 = CH340 RST


# ------------ FTDI -----------------------------------------------------------
#

set_io --warn-no-port SS   71
set_io --warn-no-port MISO 67
set_io --warn-no-port MOSI 68
set_io --warn-no-port SCK  70

# SS = P140 = LED1
# MISO = P141 = LED2
# MOSI = P142 = LED3
# SCK = P143 = LED4


# ------------ COMS connectors ---------------------------------------------
#            ______                ______
#        ___|      |______________|      |___
#       |   |______|              |______|   |
#       |                                   _|__
#       | **                               |    |
#       | **                               |    |
#       | **                               |____|
#       | **                                _|__
#       | **                               |    |
#       | **                               |    |
#       | **                               |____|
#       |_                                  _|__
#       |_|                                |    |
#       |_                                 |    |
#       |_|                                |____|
#       |    ______     ______     ______    |
#       |___|      |___|      |___|      |___|
#           |______|   |______|   |______|
#