1 |
135 |
jt_eaton |
##############################################################################
|
2 |
|
|
# LOGI Pi UCF file. R1.5 checked 050310 - mj
|
3 |
|
|
#-changes from R1. removed CE1/2 pins and added dedicated mosi/sck pins to fpga (off of flash).
|
4 |
|
|
##############################################################################
|
5 |
|
|
|
6 |
|
|
##### Grouping Constraints #####
|
7 |
|
|
NET OSC_FPGA TNM_NET = clk50_grp;
|
8 |
|
|
#NET DRAM_CLK TNM_NET = clk100_grp;
|
9 |
|
|
NET SYS_SPI_SCK TNM_NET = clk32_grp;
|
10 |
|
|
=-098765tzcx`
|
11 |
|
|
##### Clock Period Constraints #####
|
12 |
|
|
TIMESPEC TS_PER_CLK50 = PERIOD "clk50_grp" 20.0 ns ;
|
13 |
|
|
#TIMESPEC TS_PER_CLK100 = PERIOD "clk100_grp" 10.0 ns;
|
14 |
|
|
TIMESPEC TS_PER_CLK32 = PERIOD "clk32_grp" 20.0 ns;
|
15 |
|
|
#PIN "sys_clocks_gen/clkout2_buf.O" CLOCK_DEDICATED_ROUTE = FALSE;
|
16 |
|
|
NET "SYS_SPI_SCK" CLOCK_DEDICATED_ROUTE = FALSE;
|
17 |
|
|
|
18 |
|
|
##############################################################################
|
19 |
|
|
# Pin LOC Constraints #
|
20 |
|
|
##############################################################################
|
21 |
|
|
NET "OSC_FPGA" LOC = "P85" | IOSTANDARD = LVTTL;
|
22 |
|
|
|
23 |
|
|
#Peripherals#############################################################
|
24 |
|
|
NET "LED<0>" LOC = "P105" | IOSTANDARD = LVTTL; #SHARED WITH ARD_D6
|
25 |
|
|
NET "LED<1>" LOC = "P104" | IOSTANDARD = LVTTL; #SHARED WITH ARD_D7
|
26 |
|
|
NET "PB<0>" LOC = "P102" | IOSTANDARD = LVTTL;
|
27 |
|
|
NET "PB<1>" LOC = "P101" | IOSTANDARD = LVTTL;
|
28 |
|
|
NET "SW<0>" LOC = "P99" | IOSTANDARD = LVTTL;
|
29 |
|
|
NET "SW<1>" LOC = "P100" | IOSTANDARD = LVTTL;
|
30 |
|
|
|
31 |
|
|
|
32 |
|
|
#SATA###########################################################################
|
33 |
|
|
NET "SATA_D1_P" LOC = "P127" | IOSTANDARD = LVDS_33;
|
34 |
|
|
NET "SATA_D1_N" LOC = "P126" | IOSTANDARD = LVDS_33;
|
35 |
|
|
NET "SATA_D2_P" LOC = "P121" | IOSTANDARD = LVDS_33;
|
36 |
|
|
NET "SATA_D2_N" LOC = "P120" | IOSTANDARD = LVDS_33;
|
37 |
|
|
|
38 |
|
|
#SDRAM#########################################################################
|
39 |
|
|
NET "SDRAM_CKE" LOC = "P48" | IOSTANDARD = LVTTL ;
|
40 |
|
|
NET "SDRAM_CLK" LOC = "P50" | IOSTANDARD = LVTTL | SLEW = FAST ;
|
41 |
|
|
NET "SDRAM_nCAS" LOC = "P7" | IOSTANDARD = LVTTL ;
|
42 |
|
|
NET "SDRAM_nRAS" LOC = "P6" | IOSTANDARD = LVTTL ;
|
43 |
|
|
NET "SDRAM_nWE" LOC = "P8" | IOSTANDARD = LVTTL ;
|
44 |
|
|
#NET "DRAM_CS_N" #CS IS PULLED LOW TO SAVE ON PIN COUNT - Can be pulled high with solder jumper on bottom of board
|
45 |
|
|
NET "SDRAM_BA<0>" LOC = "P26" | IOSTANDARD = LVTTL ;
|
46 |
|
|
NET "SDRAM_BA<1>" LOC = "P27" | IOSTANDARD = LVTTL ;
|
47 |
|
|
NET "SDRAM_DQM<0>" LOC = "P9" | IOSTANDARD = LVTTL ;
|
48 |
|
|
NET "SDRAM_DQM<1>" LOC = "P67" | IOSTANDARD = LVTTL ;
|
49 |
|
|
NET "SDRAM_ADDR<0>" LOC = "P30" | IOSTANDARD = LVTTL ;
|
50 |
|
|
NET "SDRAM_ADDR<1>" LOC = "P32" | IOSTANDARD = LVTTL ;
|
51 |
|
|
NET "SDRAM_ADDR<2>" LOC = "P33" | IOSTANDARD = LVTTL ;
|
52 |
|
|
NET "SDRAM_ADDR<3>" LOC = "P34" | IOSTANDARD = LVTTL ;
|
53 |
|
|
NET "SDRAM_ADDR<4>" LOC = "P35" | IOSTANDARD = LVTTL ;
|
54 |
|
|
NET "SDRAM_ADDR<5>" LOC = "P40" | IOSTANDARD = LVTTL ;
|
55 |
|
|
NET "SDRAM_ADDR<6>" LOC = "P41" | IOSTANDARD = LVTTL ;
|
56 |
|
|
NET "SDRAM_ADDR<7>" LOC = "P43" | IOSTANDARD = LVTTL ;
|
57 |
|
|
NET "SDRAM_ADDR<8>" LOC = "P44" | IOSTANDARD = LVTTL ;
|
58 |
|
|
NET "SDRAM_ADDR<9>" LOC = "P45" | IOSTANDARD = LVTTL ;
|
59 |
|
|
NET "SDRAM_ADDR<10>" LOC = "P29" | IOSTANDARD = LVTTL ;
|
60 |
|
|
NET "SDRAM_ADDR<11>" LOC = "P46" | IOSTANDARD = LVTTL ;
|
61 |
|
|
NET "SDRAM_ADDR<12>" LOC = "P47" | IOSTANDARD = LVTTL ;
|
62 |
|
|
NET "SDRAM_DQ<0>" LOC = "P24" | IOSTANDARD = LVTTL ;
|
63 |
|
|
NET "SDRAM_DQ<1>" LOC = "P23" | IOSTANDARD = LVTTL ;
|
64 |
|
|
NET "SDRAM_DQ<2>" LOC = "P22" | IOSTANDARD = LVTTL ;
|
65 |
|
|
NET "SDRAM_DQ<3>" LOC = "P21" | IOSTANDARD = LVTTL ;
|
66 |
|
|
NET "SDRAM_DQ<4>" LOC = "P17" | IOSTANDARD = LVTTL ;
|
67 |
|
|
NET "SDRAM_DQ<5>" LOC = "P12" | IOSTANDARD = LVTTL ;
|
68 |
|
|
NET "SDRAM_DQ<6>" LOC = "P11" | IOSTANDARD = LVTTL ;
|
69 |
|
|
NET "SDRAM_DQ<7>" LOC = "P10" | IOSTANDARD = LVTTL ;
|
70 |
|
|
NET "SDRAM_DQ<8>" LOC = "P66" | IOSTANDARD = LVTTL ;
|
71 |
|
|
NET "SDRAM_DQ<9>" LOC = "P62" | IOSTANDARD = LVTTL ;
|
72 |
|
|
NET "SDRAM_DQ<10>" LOC = "P61" | IOSTANDARD = LVTTL ;
|
73 |
|
|
NET "SDRAM_DQ<11>" LOC = "P59" | IOSTANDARD = LVTTL ;
|
74 |
|
|
NET "SDRAM_DQ<12>" LOC = "P58" | IOSTANDARD = LVTTL ;
|
75 |
|
|
NET "SDRAM_DQ<13>" LOC = "P57" | IOSTANDARD = LVTTL ;
|
76 |
|
|
NET "SDRAM_DQ<14>" LOC = "P56" | IOSTANDARD = LVTTL ;
|
77 |
|
|
NET "SDRAM_DQ<15>" LOC = "P55" | IOSTANDARD = LVTTL ;
|
78 |
|
|
|
79 |
|
|
##PMOD1#############################################################################
|
80 |
|
|
#NET "PMOD1<0>" LOC = "P5" | IOSTANDARD = LVTTL;
|
81 |
|
|
#NET "PMOD1<1>" LOC = "P2" | IOSTANDARD = LVTTL;
|
82 |
|
|
#NET "PMOD1<2>" LOC = "P1" | IOSTANDARD = LVTTL;
|
83 |
|
|
#NET "PMOD1<3>" LOC = "P16" | IOSTANDARD = LVTTL;
|
84 |
|
|
#NET "PMOD1<4>" LOC = "P88" | IOSTANDARD = LVTTL;
|
85 |
|
|
#NET "PMOD1<5>" LOC = "P92" | IOSTANDARD = LVTTL;
|
86 |
|
|
#NET "PMOD1<6>" LOC = "P93" | IOSTANDARD = LVTTL;
|
87 |
|
|
#NET "PMOD1<7>" LOC = "P94" | IOSTANDARD = LVTTL;
|
88 |
|
|
##PMOD2#############################################################################
|
89 |
|
|
#NET "PMOD2<0>" LOC = "P142" | IOSTANDARD = LVTTL;
|
90 |
|
|
#NET "PMOD2<1>" LOC = "P141" | IOSTANDARD = LVTTL;
|
91 |
|
|
#NET "PMOD2<2>" LOC = "P15" | IOSTANDARD = LVTTL;
|
92 |
|
|
#NET "PMOD2<3>" LOC = "P14" | IOSTANDARD = LVTTL;
|
93 |
|
|
#NET "PMOD2<4>" LOC = "P144" | IOSTANDARD = LVTTL;
|
94 |
|
|
#NET "PMOD2<5>" LOC = "P143" | IOSTANDARD = LVTTL;
|
95 |
|
|
#NET "PMOD2<6>" LOC = "P140" | IOSTANDARD = LVTTL;
|
96 |
|
|
#NET "PMOD2<7>" LOC = "P139" | IOSTANDARD = LVTTL;
|
97 |
|
|
##PMOD3#############################################################################
|
98 |
|
|
#NET "PMOD3<0>" LOC = "P138" | IOSTANDARD = LVTTL;
|
99 |
|
|
#NET "PMOD3<1>" LOC = "P137" | IOSTANDARD = LVTTL;
|
100 |
|
|
#NET "PMOD3<2>" LOC = "P124" | IOSTANDARD = LVTTL;
|
101 |
|
|
#NET "PMOD3<3>" LOC = "P123" | IOSTANDARD = LVTTL;
|
102 |
|
|
#NET "PMOD3<4>" LOC = "P119" | IOSTANDARD = LVTTL;
|
103 |
|
|
#NET "PMOD3<5>" LOC = "P118" | IOSTANDARD = LVTTL;
|
104 |
|
|
#NET "PMOD3<6>" LOC = "P117" | IOSTANDARD = LVTTL;
|
105 |
|
|
#NET "PMOD3<7>" LOC = "P116" | IOSTANDARD = LVTTL;
|
106 |
|
|
##PMOD4#############################################################################
|
107 |
|
|
#NET "PMOD4<0>" LOC = "P112" | IOSTANDARD = LVTTL;
|
108 |
|
|
#NET "PMOD4<1>" LOC = "P111" | IOSTANDARD = LVTTL;
|
109 |
|
|
#NET "PMOD4<2>" LOC = "P132" | IOSTANDARD = LVTTL;
|
110 |
|
|
#NET "PMOD4<3>" LOC = "P131" | IOSTANDARD = LVTTL;
|
111 |
|
|
#NET "PMOD4<4>" LOC = "P115" | IOSTANDARD = LVTTL;
|
112 |
|
|
#NET "PMOD4<5>" LOC = "P114" | IOSTANDARD = LVTTL;
|
113 |
|
|
#NET "PMOD4<6>" LOC = "P134" | IOSTANDARD = LVTTL;
|
114 |
|
|
#NET "PMOD4<7>" LOC = "P133" | IOSTANDARD = LVTTL;
|
115 |
|
|
|
116 |
|
|
#PMOD4 LVDS CONSTRAINTS#############################################################
|
117 |
|
|
#NET "P4_1_LVDS3_P" LOC = "P112" | IOSTANDARD = LVDS_33;
|
118 |
|
|
#NET "P4_2_LVDS3_N" LOC = "P111" | IOSTANDARD = LVDS_33;
|
119 |
|
|
#NET "P4_3_LVDS1_P" LOC = "P132" | IOSTANDARD = LVDS_33;
|
120 |
|
|
#NET "P4_4_LVDS1_N" LOC = "P131" | IOSTANDARD = LVDS_33;
|
121 |
|
|
#NET "P4_7_LVDS4_P" LOC = "P115" | IOSTANDARD = LVDS_33;
|
122 |
|
|
#NET "P4_8_LVDS4_N" LOC = "P114" | IOSTANDARD = LVDS_33;
|
123 |
|
|
#NET "P4_9_LVDS2_P" LOC = "P134" | IOSTANDARD = LVDS_33;
|
124 |
|
|
#NET "P4_10_LVDS2_N" LOC = "P133" | IOSTANDARD = LVDS_33;
|
125 |
|
|
|
126 |
|
|
#RASPBERRY-PI CONNECTOR###############################################################
|
127 |
|
|
NET "SYS_SPI_MOSI" LOC = "P80" | IOSTANDARD = LVTTL; #! dedicated in R1.5 - buffered to DIN pin for configuration only
|
128 |
|
|
NET "SYS_SPI_MISO" LOC = "P75" | IOSTANDARD = LVTTL;
|
129 |
|
|
NET "SYS_SPI_SCK" LOC = "P78" | IOSTANDARD = LVTTL; #! dedicated pin in R1.5 - buffered to CCLK pin for configuration only
|
130 |
|
|
NET "RP_SPI_CE0N" LOC = "P79" | IOSTANDARD = LVTTL;
|
131 |
|
|
#NET "SYS_SDA" LOC = "P98" | IOSTANDARD = LVTTL; #Shared with Arduino SDA
|
132 |
|
|
#NET "SYS_SCL" LOC = "P97" | IOSTANDARD = LVTTL; #Shared with Arduino SCL
|
133 |
|
|
#UART FROM RASPBERRY PI - As labelled in the Rpi (master) schematic
|
134 |
|
|
#NET "SYS_TX" LOC= "P83" | IOSTANDARD = LVTTL; #Pi output FPGA input #Shared with Arduino TX
|
135 |
|
|
#NET "SYS_RX" LOC= "P82" | IOSTANDARD = LVTTL; #Pi input FPGA output #Shared with Arduino RX
|
136 |
|
|
#NET "RP_GPIO_GCLK" LOC = "P95" | IOSTANDARD = LVTTL;
|
137 |
|
|
#NET "RP_GPIO_GEN2" LOC = "P81" | IOSTANDARD = LVTTL;
|
138 |
|
|
|
139 |
|
|
|
140 |
|
|
#ARDUINO HEADERS########################################################################
|
141 |
|
|
#SYS_SCL #Shared with RPI i2c
|
142 |
|
|
#SYS_SDA #Shared with RPI i2c
|
143 |
|
|
#NET "ARD_SCK" LOC= "P84" | IOSTANDARD = LVTTL; #D13
|
144 |
|
|
#NET "ARD_MISO" LOC= "P87" | IOSTANDARD = LVTTL; #D12
|
145 |
|
|
#NET "ARD_MOSI" LOC= "P51" | IOSTANDARD = LVTTL; `#D11
|
146 |
|
|
#NET "ARD_SS" LOC= "P74" | IOSTANDARD = LVTTL; #D10
|
147 |
|
|
#NET "ARD_D9_FLSH_DI" LOC= "P64" | IOSTANDARD = LVTTL; #D9
|
148 |
|
|
#NET "ARD_D8_FLSH_CS" LOC= "P38" | IOSTANDARD = LVTTL; #D8
|
149 |
|
|
|
150 |
|
|
|
151 |
|
|
|
152 |
|
|
|
153 |
|
|
|