1 |
2 |
idiolatrie |
# ==== Primary Clock ====
|
2 |
|
|
NET "clk" LOC = C9 | IOSTANDARD = "LVCMOS33" | TNM_NET = CLK_I;
|
3 |
|
|
TIMESPEC TS_CLK_I = PERIOD "clk" 20 ns HIGH 50%;
|
4 |
|
|
|
5 |
|
|
NET "clk" CLOCK_DEDICATED_ROUTE = FALSE;
|
6 |
|
|
PIN "inst_clock/DCM_SP_INST.CLKIN" CLOCK_DEDICATED_ROUTE = FALSE;
|
7 |
|
|
|
8 |
|
|
# ==== Ethernet PHY ====
|
9 |
|
|
NET "E_COL" LOC = "U6" | IOSTANDARD = LVCMOS33;
|
10 |
|
|
NET "E_CRS" LOC = "U13" | IOSTANDARD = LVCMOS33;
|
11 |
|
|
NET "E_MDC" LOC = "P9" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
12 |
|
|
NET "E_MDIO" LOC = "U5" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
13 |
|
|
NET "E_RX_CLK" LOC = "V3" | IOSTANDARD = LVCMOS33 | TNM_NET = "RXCLK_GRP";
|
14 |
|
|
NET "E_RX_DV" LOC = "V2" | IOSTANDARD = LVCMOS33;
|
15 |
|
|
NET "E_RXD<0>" LOC = "V8" | IOSTANDARD = LVCMOS33;
|
16 |
|
|
NET "E_RXD<1>" LOC = "T11" | IOSTANDARD = LVCMOS33;
|
17 |
|
|
NET "E_RXD<2>" LOC = "U11" | IOSTANDARD = LVCMOS33;
|
18 |
|
|
NET "E_RXD<3>" LOC = "V14" | IOSTANDARD = LVCMOS33;
|
19 |
|
|
NET "E_RX_ER" LOC = "U14" | IOSTANDARD = LVCMOS33;
|
20 |
|
|
NET "E_TX_CLK" LOC = "T7" | IOSTANDARD = LVCMOS33 | TNM_NET = "TXCLK_GRP";
|
21 |
|
|
NET "E_TX_EN" LOC = "P15" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
22 |
|
|
NET "E_TXD<0>" LOC = "R11" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
23 |
|
|
NET "E_TXD<1>" LOC = "T15" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
24 |
|
|
NET "E_TXD<2>" LOC = "R5" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
25 |
|
|
NET "E_TXD<3>" LOC = "T5" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
26 |
|
|
NET "E_TX_ER" LOC = "R6" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
27 |
|
|
|
28 |
|
|
TIMESPEC "TSTXOUT" = FROM "TXCLK_GRP" TO "PADS" 11 ns;
|
29 |
|
|
TIMESPEC "TSRXIN" = FROM "PADS" TO "RXCLK_GRP" 10 ns;
|
30 |
|
|
|
31 |
|
|
NET "E_TX_CLK" MAXSKEW= 2.0 ns;
|
32 |
|
|
NET "E_TX_CLK" PERIOD = 40 ns HIGH 14 ns;
|
33 |
|
|
NET "E_TX_CLK" CLOCK_DEDICATED_ROUTE = FALSE;
|
34 |
|
|
|
35 |
|
|
NET "E_RX_CLK" MAXSKEW= 2.0 ns;
|
36 |
|
|
NET "E_RX_CLK" PERIOD = 40 ns HIGH 14 ns;
|
37 |
|
|
NET "E_RX_CLK" CLOCK_DEDICATED_ROUTE = FALSE;
|
38 |
|
|
|
39 |
|
|
# ==== DAC/ADC ===
|
40 |
|
|
NET "SPI_MISO" LOC = "N10" | IOSTANDARD = LVCMOS33 ;
|
41 |
|
|
NET "SPI_MOSI" LOC = "T4" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
42 |
|
|
NET "SPI_SCK" LOC = "U16" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
43 |
|
|
NET "DAC_CS" LOC = "N8" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
44 |
|
|
NET "DAC_CLR" LOC = "P8" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8;
|
45 |
|
|
|
46 |
|
|
# == Disable lines ===
|
47 |
|
|
NET "SF_OE" LOC = "C18" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 2;
|
48 |
|
|
NET "SF_CE" LOC = "D16" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 2;
|
49 |
|
|
NET "SF_WE" LOC = "D17" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 2;
|
50 |
|
|
NET "FPGA_INIT_B" LOC = "T3" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4;
|
51 |
|
|
NET "SPI_SS_B" LOC = "U3" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 6;
|
52 |
|
|
NET "AD_CONV" LOC = "P11" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 6;
|
53 |
|
|
NET "AMP_CS" LOC = "N7" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 6;
|
54 |
|
|
|
55 |
|
|
# ==== 6-pin header J1 - Digital Input ====
|
56 |
|
|
#NET "DI<3>" LOC = "B4" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
57 |
|
|
#NET "DI<2>" LOC = "A4" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
58 |
|
|
#NET "DI<1>" LOC = "D5" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
59 |
|
|
#NET "DI<0>" LOC = "C5" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
60 |
|
|
|
61 |
|
|
# ==== 6-pin header J2 - Digital Output ====
|
62 |
|
|
NET "DO<3>" LOC = "A6" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
63 |
|
|
NET "DO<2>" LOC = "B6" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
64 |
|
|
NET "DO<1>" LOC = "E7" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
65 |
|
|
NET "DO<0>" LOC = "F7" | IOSTANDARD = LVCMOS33 | SLEW = FAST | DRIVE = 8;
|
66 |
|
|
|
67 |
|
|
# === LEDs ===
|
68 |
|
|
NET "LED<7>" LOC = "F9" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
69 |
|
|
NET "LED<6>" LOC = "E9" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
70 |
|
|
NET "LED<5>" LOC = "D11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
71 |
|
|
NET "LED<4>" LOC = "C11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
72 |
|
|
NET "LED<3>" LOC = "F11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
73 |
|
|
NET "LED<2>" LOC = "E11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
74 |
|
|
NET "LED<1>" LOC = "E12" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
75 |
|
|
NET "LED<0>" LOC = "F12" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
|
76 |
|
|
|
77 |
|
|
# === SWITCHES ===
|
78 |
|
|
NET "SW<0>" LOC = "L13" | IOSTANDARD = LVTTL | PULLUP;
|
79 |
|
|
NET "SW<1>" LOC = "L14" | IOSTANDARD = LVTTL | PULLUP;
|
80 |
|
|
NET "SW<2>" LOC = "H18" | IOSTANDARD = LVTTL | PULLUP;
|
81 |
|
|
NET "SW<3>" LOC = "N17" | IOSTANDARD = LVTTL | PULLUP;
|
82 |
|
|
|
83 |
|
|
# === Buttons ===
|
84 |
|
|
NET "BTN<3>" LOC = "V4" | IOSTANDARD = LVTTL | PULLDOWN;
|
85 |
|
|
NET "BTN<2>" LOC = "H13" | IOSTANDARD = LVTTL | PULLDOWN;
|
86 |
|
|
NET "BTN<1>" LOC = "K17" | IOSTANDARD = LVTTL | PULLDOWN;
|
87 |
|
|
NET "BTN<0>" LOC = "D18" | IOSTANDARD = LVTTL | PULLDOWN;
|