Skip to content

Commit 16e0698

Browse files

File tree

litex_boards/platforms/digilent_arty_z7.py

Lines changed: 87 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -122,91 +122,97 @@
122122

123123
# Connectors ---------------------------------------------------------------------------------------
124124

125-
_connectors = [
126-
# access a pin with `pmoda:N`, where N is:
127-
# N: 0 1 2 3 4 5 6 7
128-
# Pin: 1 2 3 4 7 8 9 10
129-
# Bank 13
130-
("pmoda", "Y18 Y19 Y16 Y17 U18 U19 W18 W19"),
131-
("pmodb", "W14 Y14 T11 T10 V16 W16 V12 W13"),
132-
("ck_io", {
133-
"ck_ioa" : "Y13",
125+
_ck_io_common = {
126+
# Outer Digital Header
127+
"ck_io0" : "T14",
128+
"ck_io1" : "U12",
129+
"ck_io2" : "U13",
130+
"ck_io3" : "V13",
131+
"ck_io4" : "V15",
132+
"ck_io5" : "T15",
133+
"ck_io6" : "R16",
134+
"ck_io7" : "U17",
135+
"ck_io8" : "V17",
136+
"ck_io9" : "V18",
137+
"ck_io10" : "T16",
138+
"ck_io11" : "R17",
139+
"ck_io12" : "P18",
140+
"ck_io13" : "N17",
134141

135-
# Outer Digital Header
136-
"ck_io0" : "T14",
137-
"ck_io1" : "U12",
138-
"ck_io2" : "U13",
139-
"ck_io3" : "V13",
140-
"ck_io4" : "V15",
141-
"ck_io5" : "T15",
142-
"ck_io6" : "R16",
143-
"ck_io7" : "U17",
144-
"ck_io8" : "V17",
145-
"ck_io9" : "V18",
146-
"ck_io10" : "T16",
147-
"ck_io11" : "R17",
148-
"ck_io12" : "P18",
149-
"ck_io13" : "N17",
142+
# Inner Analog Header as Digital IO
143+
"ck_a6" : "F19",
144+
"ck_a7" : "F20",
145+
"ck_a8" : "C20",
146+
"ck_a9" : "B20",
147+
"ck_a10" : "B19",
148+
"ck_a11" : "A20",
149+
}
150+
151+
_ck_io_z7_20 = {
152+
**_ck_io_common,
153+
"ck_ioa" : "Y13",
150154

151-
# Inner Digital Header
152-
# Only for Arty Z7 20
153-
"ck_io26" : "U5",
154-
"ck_io27" : "V5",
155-
"ck_io28" : "V6",
156-
"ck_io29" : "U7",
157-
"ck_io30" : "V7",
158-
"ck_io31" : "U8",
159-
"ck_io32" : "V8",
160-
"ck_io33" : "V10",
161-
"ck_io34" : "W10",
162-
"ck_io35" : "W6",
163-
"ck_io36" : "Y6",
164-
"ck_io37" : "Y7",
165-
"ck_io38" : "W8",
166-
"ck_io39" : "Y8",
167-
"ck_io40" : "W9",
168-
"ck_io41" : "Y9",
155+
# Inner Digital Header
156+
"ck_io26" : "U5",
157+
"ck_io27" : "V5",
158+
"ck_io28" : "V6",
159+
"ck_io29" : "U7",
160+
"ck_io30" : "V7",
161+
"ck_io31" : "U8",
162+
"ck_io32" : "V8",
163+
"ck_io33" : "V10",
164+
"ck_io34" : "W10",
165+
"ck_io35" : "W6",
166+
"ck_io36" : "Y6",
167+
"ck_io37" : "Y7",
168+
"ck_io38" : "W8",
169+
"ck_io39" : "Y8",
170+
"ck_io40" : "W9",
171+
"ck_io41" : "Y9",
169172

170-
# Outer Analog Header as Digital IO
171-
# Only for Arty Z7 20
172-
"ck_a0" : "Y11",
173-
"ck_a1" : "Y12",
174-
"ck_a2" : "W11",
175-
"ck_a3" : "V11",
176-
"ck_a4" : "T5",
177-
"ck_a5" : "U10",
173+
# Outer Analog Header as Digital IO
174+
"ck_a0" : "Y11",
175+
"ck_a1" : "Y12",
176+
"ck_a2" : "W11",
177+
"ck_a3" : "V11",
178+
"ck_a4" : "T5",
179+
"ck_a5" : "U10",
180+
}
178181

179-
# Inner Analog Header as Digital IO
180-
"ck_a6" : "F19",
181-
"ck_a7" : "F20",
182-
"ck_a8" : "C20",
183-
"ck_a9" : "B20",
184-
"ck_a10" : "B19",
185-
"ck_a11" : "A20",
186-
}),
187-
("XADC", {
188-
# Outer Analog Header
189-
"vaux1_p" : "E17",
190-
"vaux1_n" : "B18",
191-
"vaux9_p" : "E18",
192-
"vaux9_n" : "E19",
193-
"vaux6_p" : "K14",
194-
"vaux6_n" : "J14",
195-
"vaux15_p" : "K16",
196-
"vaux15_n" : "J16",
197-
"vaux5_p" : "J20",
198-
"vaux5_n" : "H20",
199-
"vaux13_p" : "G19",
200-
"vaux13_n" : "G20",
182+
_xadc = {
183+
# Outer Analog Header
184+
"vaux1_p" : "E17",
185+
"vaux1_n" : "B18",
186+
"vaux9_p" : "E18",
187+
"vaux9_n" : "E19",
188+
"vaux6_p" : "K14",
189+
"vaux6_n" : "J14",
190+
"vaux15_p" : "K16",
191+
"vaux15_n" : "J16",
192+
"vaux5_p" : "J20",
193+
"vaux5_n" : "H20",
194+
"vaux13_p" : "G19",
195+
"vaux13_n" : "G20",
201196

202-
# Inner Analog Header
203-
"vaux12_p" : "F19",
204-
"vaux12_n" : "F20",
205-
"vaux0_p" : "C20",
206-
"vaux0_n" : "B20",
207-
"vaux8_p" : "B19",
208-
"vaux8_n" : "A19",
209-
})
197+
# Inner Analog Header
198+
"vaux12_p" : "F19",
199+
"vaux12_n" : "F20",
200+
"vaux0_p" : "C20",
201+
"vaux0_n" : "B20",
202+
"vaux8_p" : "B19",
203+
"vaux8_n" : "A20",
204+
}
205+
206+
def _connectors(variant):
207+
# access a pin with `pmoda:N`, where N is:
208+
# N: 0 1 2 3 4 5 6 7
209+
# Pin: 1 2 3 4 7 8 9 10
210+
# Bank 13
211+
return [
212+
("pmoda", "Y18 Y19 Y16 Y17 U18 U19 W18 W19"),
213+
("pmodb", "W14 Y14 T11 T10 V16 W16 V12 W13"),
214+
("ck_io", _ck_io_z7_20 if variant == "z7-20" else _ck_io_common),
215+
("XADC", _xadc),
210216
]
211217

212218
# PS7 config ---------------------------------------------------------------------------------------
@@ -266,7 +272,7 @@ def __init__(self, variant="z7-20", toolchain="vivado"):
266272
"z7-20": "arty_z7_20"
267273
}[variant]
268274

269-
Xilinx7SeriesPlatform.__init__(self, device, _io, _connectors, toolchain=toolchain)
275+
Xilinx7SeriesPlatform.__init__(self, device, _io, _connectors(variant), toolchain=toolchain)
270276
self.ps7_config = ps7_config
271277

272278
def create_programmer(self):

litex_boards/platforms/digilent_genesys2.py

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,175 @@
222222
"DP0_M2C_N" : "AA3",
223223
"GBTCLK0_M2C_P" : "L8",
224224
"GBTCLK0_M2C_N" : "L7",
225+
"CLK_DIR" : "AB30",
226+
"CLK0_M2C_N" : "E20",
227+
"CLK0_M2C_P" : "F20",
228+
"CLK1_M2C_N" : "D28",
229+
"CLK1_M2C_P" : "E28",
230+
"CLK2_BIDIR_N" : "K25",
231+
"CLK2_BIDIR_P" : "L25",
232+
"HA00_CC_N" : "K29",
233+
"HA00_CC_P" : "K28",
234+
"HA01_CC_N" : "L28",
235+
"HA01_CC_P" : "M28",
236+
"HA02_N" : "P22",
237+
"HA02_P" : "P21",
238+
"HA03_N" : "N26",
239+
"HA03_P" : "N25",
240+
"HA04_N" : "M25",
241+
"HA04_P" : "M24",
242+
"HA05_N" : "H29",
243+
"HA05_P" : "J29",
244+
"HA06_N" : "N30",
245+
"HA06_P" : "N29",
246+
"HA07_N" : "M30",
247+
"HA07_P" : "M29",
248+
"HA08_N" : "J28",
249+
"HA08_P" : "J27",
250+
"HA09_N" : "K30",
251+
"HA09_P" : "L30",
252+
"HA10_N" : "N22",
253+
"HA10_P" : "N21",
254+
"HA11_N" : "N24",
255+
"HA11_P" : "P23",
256+
"HA12_N" : "L27",
257+
"HA12_P" : "L26",
258+
"HA13_N" : "J26",
259+
"HA13_P" : "K26",
260+
"HA14_N" : "M27",
261+
"HA14_P" : "N27",
262+
"HA15_N" : "J22",
263+
"HA15_P" : "J21",
264+
"HA16_N" : "M23",
265+
"HA16_P" : "M22",
266+
"HA17_CC_N" : "B25",
267+
"HA17_CC_P" : "C25",
268+
"HA18_N" : "D19",
269+
"HA18_P" : "E19",
270+
"HA19_N" : "F30",
271+
"HA19_P" : "G29",
272+
"HA20_N" : "F27",
273+
"HA20_P" : "G27",
274+
"HA21_N" : "F28",
275+
"HA21_P" : "G28",
276+
"HA22_N" : "C21",
277+
"HA22_P" : "D21",
278+
"HA23_N" : "F18",
279+
"HA23_P" : "G18",
280+
"HB00_CC_N" : "F13",
281+
"HB00_CC_P" : "G13",
282+
"HB01_N" : "G15",
283+
"HB01_P" : "H15",
284+
"HB02_N" : "K15",
285+
"HB02_P" : "L15",
286+
"HB03_N" : "G14",
287+
"HB03_P" : "H14",
288+
"HB04_N" : "H16",
289+
"HB04_P" : "J16",
290+
"HB05_N" : "K16",
291+
"HB05_P" : "L16",
292+
"HB06_CC_N" : "E13",
293+
"HB06_CC_P" : "F12",
294+
"HB07_N" : "A13",
295+
"HB07_P" : "B13",
296+
"HB08_N" : "J14",
297+
"HB08_P" : "K14",
298+
"HB09_N" : "B15",
299+
"HB09_P" : "C15",
300+
"HB10_N" : "J12",
301+
"HB10_P" : "J11",
302+
"HB11_N" : "C11",
303+
"HB11_P" : "D11",
304+
"HB12_N" : "A12",
305+
"HB12_P" : "A11",
306+
"HB13_N" : "B12",
307+
"HB13_P" : "C12",
308+
"HB14_N" : "H12",
309+
"HB14_P" : "H11",
310+
"HB15_N" : "L13",
311+
"HB15_P" : "L12",
312+
"HB16_N" : "J13",
313+
"HB16_P" : "K13",
314+
"HB17_CC_N" : "D13",
315+
"HB17_CC_P" : "D12",
316+
"HB18_N" : "E15",
317+
"HB18_P" : "E14",
318+
"HB19_N" : "E11",
319+
"HB19_P" : "F11",
320+
"HB20_N" : "A15",
321+
"HB20_P" : "B14",
322+
"HB21_N" : "C14",
323+
"HB21_P" : "D14",
324+
"LA00_CC_N" : "C27",
325+
"LA00_CC_P" : "D27",
326+
"LA01_CC_N" : "C26",
327+
"LA01_CC_P" : "D26",
328+
"LA02_N" : "G30",
329+
"LA02_P" : "H30",
330+
"LA03_N" : "E30",
331+
"LA03_P" : "E29",
332+
"LA04_N" : "H27",
333+
"LA04_P" : "H26",
334+
"LA05_N" : "A30",
335+
"LA05_P" : "B30",
336+
"LA06_N" : "C30",
337+
"LA06_P" : "D29",
338+
"LA07_N" : "E25",
339+
"LA07_P" : "F25",
340+
"LA08_N" : "B29",
341+
"LA08_P" : "C29",
342+
"LA09_N" : "A28",
343+
"LA09_P" : "B28",
344+
"LA10_N" : "A27",
345+
"LA10_P" : "B27",
346+
"LA11_N" : "A26",
347+
"LA11_P" : "A25",
348+
"LA12_N" : "E26",
349+
"LA12_P" : "F26",
350+
"LA13_N" : "D24",
351+
"LA13_P" : "E24",
352+
"LA14_N" : "B24",
353+
"LA14_P" : "C24",
354+
"LA15_N" : "A23",
355+
"LA15_P" : "B23",
356+
"LA16_N" : "D23",
357+
"LA16_P" : "E23",
358+
"LA17_CC_N" : "E21",
359+
"LA17_CC_P" : "F21",
360+
"LA18_CC_N" : "D18",
361+
"LA18_CC_P" : "D17",
362+
"LA19_N" : "H22",
363+
"LA19_P" : "H21",
364+
"LA20_N" : "F22",
365+
"LA20_P" : "G22",
366+
"LA21_N" : "L18",
367+
"LA21_P" : "L17",
368+
"LA22_N" : "H17",
369+
"LA22_P" : "J17",
370+
"LA23_N" : "F17",
371+
"LA23_P" : "G17",
372+
"LA24_N" : "G20",
373+
"LA24_P" : "H20",
374+
"LA25_N" : "C22",
375+
"LA25_P" : "D22",
376+
"LA26_N" : "A22",
377+
"LA26_P" : "B22",
378+
"LA27_N" : "A21",
379+
"LA27_P" : "A20",
380+
"LA28_N" : "H19",
381+
"LA28_P" : "J19",
382+
"LA29_N" : "A18",
383+
"LA29_P" : "B18",
384+
"LA30_N" : "A17",
385+
"LA30_P" : "A16",
386+
"LA31_N" : "B17",
387+
"LA31_P" : "C17",
388+
"LA32_N" : "J18",
389+
"LA32_P" : "K18",
390+
"LA33_N" : "C16",
391+
"LA33_P" : "D16",
392+
"IIC_SCL" : "AC24",
393+
"IIC_SDA" : "AD24",
225394
}
226395
),
227396
("pmodc", "AC26 AJ27 AH30 AK29 AD26 AG30 AK30 AK28"),

litex_boards/platforms/digilent_nexys_video.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@
246246
"LA26_P" : "F18",
247247
"LA26_N" : "E18",
248248
"CLK0_M2C_P" : "J19",
249-
"CLK0_M2C_N" : "A19",
249+
"CLK0_M2C_N" : "H19",
250250
"LA02_P" : "M18",
251251
"LA02_N" : "L18",
252252
"LA04_P" : "N20",

0 commit comments

Comments
 (0)