1 ################################################################################
2 # clkin, reset, uart pins...
3 ################################################################################
5 set_property LOC J19 [get_ports {clk200_p}]
6 set_property IOSTANDARD DIFF_SSTL15 [get_ports {clk200_p}]
9 set_property LOC H19 [get_ports {clk200_n}]
10 set_property IOSTANDARD DIFF_SSTL15 [get_ports {clk200_n}]
12 ################################################################################
13 # P2 header used as UART
14 ################################################################################
16 #set_property -dict { PACKAGE_PIN H5 IOSTANDARD LVCMOS33 } [get_ports { p2_io1_n }];
17 #set_property -dict { PACKAGE_PIN J5 IOSTANDARD LVCMOS33 } [get_ports { p2_io1_p }];
19 set_property -dict { PACKAGE_PIN J2 IOSTANDARD LVCMOS33 } [get_ports { uart_tx }];
21 set_property -dict { PACKAGE_PIN K2 IOSTANDARD LVCMOS33 } [get_ports { uart_rx }];
23 ################################################################################
25 ################################################################################
28 set_property LOC M15 [get_ports {ddram_a[0]}]
29 set_property SLEW FAST [get_ports {ddram_a[0]}]
30 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[0]}]
33 set_property LOC L21 [get_ports {ddram_a[1]}]
34 set_property SLEW FAST [get_ports {ddram_a[1]}]
35 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[1]}]
38 set_property LOC M16 [get_ports {ddram_a[2]}]
39 set_property SLEW FAST [get_ports {ddram_a[2]}]
40 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[2]}]
43 set_property LOC L18 [get_ports {ddram_a[3]}]
44 set_property SLEW FAST [get_ports {ddram_a[3]}]
45 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[3]}]
48 set_property LOC K21 [get_ports {ddram_a[4]}]
49 set_property SLEW FAST [get_ports {ddram_a[4]}]
50 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[4]}]
53 set_property LOC M18 [get_ports {ddram_a[5]}]
54 set_property SLEW FAST [get_ports {ddram_a[5]}]
55 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[5]}]
58 set_property LOC M21 [get_ports {ddram_a[6]}]
59 set_property SLEW FAST [get_ports {ddram_a[6]}]
60 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[6]}]
63 set_property LOC N20 [get_ports {ddram_a[7]}]
64 set_property SLEW FAST [get_ports {ddram_a[7]}]
65 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[7]}]
68 set_property LOC M20 [get_ports {ddram_a[8]}]
69 set_property SLEW FAST [get_ports {ddram_a[8]}]
70 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[8]}]
73 set_property LOC N19 [get_ports {ddram_a[9]}]
74 set_property SLEW FAST [get_ports {ddram_a[9]}]
75 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[9]}]
78 set_property LOC J21 [get_ports {ddram_a[10]}]
79 set_property SLEW FAST [get_ports {ddram_a[10]}]
80 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[10]}]
83 set_property LOC M22 [get_ports {ddram_a[11]}]
84 set_property SLEW FAST [get_ports {ddram_a[11]}]
85 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[11]}]
88 set_property LOC K22 [get_ports {ddram_a[12]}]
89 set_property SLEW FAST [get_ports {ddram_a[12]}]
90 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[12]}]
93 set_property LOC N18 [get_ports {ddram_a[13]}]
94 set_property SLEW FAST [get_ports {ddram_a[13]}]
95 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[13]}]
98 set_property LOC N22 [get_ports {ddram_a[14]}]
99 set_property SLEW FAST [get_ports {ddram_a[14]}]
100 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[14]}]
103 set_property LOC J22 [get_ports {ddram_a[15]}]
104 set_property SLEW FAST [get_ports {ddram_a[15]}]
105 set_property IOSTANDARD SSTL15 [get_ports {ddram_a[15]}]
108 set_property LOC L19 [get_ports {ddram_ba[0]}]
109 set_property SLEW FAST [get_ports {ddram_ba[0]}]
110 set_property IOSTANDARD SSTL15 [get_ports {ddram_ba[0]}]
113 set_property LOC J20 [get_ports {ddram_ba[1]}]
114 set_property SLEW FAST [get_ports {ddram_ba[1]}]
115 set_property IOSTANDARD SSTL15 [get_ports {ddram_ba[1]}]
118 set_property LOC L20 [get_ports {ddram_ba[2]}]
119 set_property SLEW FAST [get_ports {ddram_ba[2]}]
120 set_property IOSTANDARD SSTL15 [get_ports {ddram_ba[2]}]
123 set_property LOC H20 [get_ports {ddram_ras_n}]
124 set_property SLEW FAST [get_ports {ddram_ras_n}]
125 set_property IOSTANDARD SSTL15 [get_ports {ddram_ras_n}]
128 set_property LOC K18 [get_ports {ddram_cas_n}]
129 set_property SLEW FAST [get_ports {ddram_cas_n}]
130 set_property IOSTANDARD SSTL15 [get_ports {ddram_cas_n}]
133 set_property LOC L16 [get_ports {ddram_we_n}]
134 set_property SLEW FAST [get_ports {ddram_we_n}]
135 set_property IOSTANDARD SSTL15 [get_ports {ddram_we_n}]
138 set_property LOC A19 [get_ports {ddram_dm[0]}]
139 set_property SLEW FAST [get_ports {ddram_dm[0]}]
140 set_property IOSTANDARD SSTL15 [get_ports {ddram_dm[0]}]
143 set_property LOC G22 [get_ports {ddram_dm[1]}]
144 set_property SLEW FAST [get_ports {ddram_dm[1]}]
145 set_property IOSTANDARD SSTL15 [get_ports {ddram_dm[1]}]
148 set_property LOC D19 [get_ports {ddram_dq[0]}]
149 set_property SLEW FAST [get_ports {ddram_dq[0]}]
150 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[0]}]
151 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[0]}]
154 set_property LOC B20 [get_ports {ddram_dq[1]}]
155 set_property SLEW FAST [get_ports {ddram_dq[1]}]
156 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[1]}]
157 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[1]}]
160 set_property LOC E19 [get_ports {ddram_dq[2]}]
161 set_property SLEW FAST [get_ports {ddram_dq[2]}]
162 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[2]}]
163 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[2]}]
166 set_property LOC A20 [get_ports {ddram_dq[3]}]
167 set_property SLEW FAST [get_ports {ddram_dq[3]}]
168 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[3]}]
169 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[3]}]
172 set_property LOC F19 [get_ports {ddram_dq[4]}]
173 set_property SLEW FAST [get_ports {ddram_dq[4]}]
174 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[4]}]
175 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[4]}]
178 set_property LOC C19 [get_ports {ddram_dq[5]}]
179 set_property SLEW FAST [get_ports {ddram_dq[5]}]
180 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[5]}]
181 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[5]}]
184 set_property LOC F20 [get_ports {ddram_dq[6]}]
185 set_property SLEW FAST [get_ports {ddram_dq[6]}]
186 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[6]}]
187 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[6]}]
190 set_property LOC C18 [get_ports {ddram_dq[7]}]
191 set_property SLEW FAST [get_ports {ddram_dq[7]}]
192 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[7]}]
193 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[7]}]
196 set_property LOC E22 [get_ports {ddram_dq[8]}]
197 set_property SLEW FAST [get_ports {ddram_dq[8]}]
198 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[8]}]
199 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[8]}]
202 set_property LOC G21 [get_ports {ddram_dq[9]}]
203 set_property SLEW FAST [get_ports {ddram_dq[9]}]
204 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[9]}]
205 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[9]}]
208 set_property LOC D20 [get_ports {ddram_dq[10]}]
209 set_property SLEW FAST [get_ports {ddram_dq[10]}]
210 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[10]}]
211 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[10]}]
214 set_property LOC E21 [get_ports {ddram_dq[11]}]
215 set_property SLEW FAST [get_ports {ddram_dq[11]}]
216 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[11]}]
217 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[11]}]
220 set_property LOC C22 [get_ports {ddram_dq[12]}]
221 set_property SLEW FAST [get_ports {ddram_dq[12]}]
222 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[12]}]
223 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[12]}]
226 set_property LOC D21 [get_ports {ddram_dq[13]}]
227 set_property SLEW FAST [get_ports {ddram_dq[13]}]
228 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[13]}]
229 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[13]}]
232 set_property LOC B22 [get_ports {ddram_dq[14]}]
233 set_property SLEW FAST [get_ports {ddram_dq[14]}]
234 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[14]}]
235 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[14]}]
238 set_property LOC D22 [get_ports {ddram_dq[15]}]
239 set_property SLEW FAST [get_ports {ddram_dq[15]}]
240 set_property IOSTANDARD SSTL15 [get_ports {ddram_dq[15]}]
241 set_property IN_TERM UNTUNED_SPLIT_50 [get_ports {ddram_dq[15]}]
244 set_property LOC F18 [get_ports {ddram_dqs_p[0]}]
245 set_property SLEW FAST [get_ports {ddram_dqs_p[0]}]
246 set_property IOSTANDARD DIFF_SSTL15 [get_ports {ddram_dqs_p[0]}]
249 set_property LOC B21 [get_ports {ddram_dqs_p[1]}]
250 set_property SLEW FAST [get_ports {ddram_dqs_p[1]}]
251 set_property IOSTANDARD DIFF_SSTL15 [get_ports {ddram_dqs_p[1]}]
254 set_property LOC E18 [get_ports {ddram_dqs_n[0]}]
255 set_property SLEW FAST [get_ports {ddram_dqs_n[0]}]
256 set_property IOSTANDARD DIFF_SSTL15 [get_ports {ddram_dqs_n[0]}]
259 set_property LOC A21 [get_ports {ddram_dqs_n[1]}]
260 set_property SLEW FAST [get_ports {ddram_dqs_n[1]}]
261 set_property IOSTANDARD DIFF_SSTL15 [get_ports {ddram_dqs_n[1]}]
264 set_property LOC K17 [get_ports {ddram_clk_p}]
265 set_property SLEW FAST [get_ports {ddram_clk_p}]
266 set_property IOSTANDARD DIFF_SSTL15 [get_ports {ddram_clk_p}]
269 set_property LOC J17 [get_ports {ddram_clk_n}]
270 set_property SLEW FAST [get_ports {ddram_clk_n}]
271 set_property IOSTANDARD DIFF_SSTL15 [get_ports {ddram_clk_n}]
274 set_property LOC H22 [get_ports {ddram_cke}]
275 set_property SLEW FAST [get_ports {ddram_cke}]
276 set_property IOSTANDARD SSTL15 [get_ports {ddram_cke}]
279 set_property LOC K19 [get_ports {ddram_odt}]
280 set_property SLEW FAST [get_ports {ddram_odt}]
281 set_property IOSTANDARD SSTL15 [get_ports {ddram_odt}]
284 set_property LOC K16 [get_ports {ddram_reset_n}]
285 set_property SLEW FAST [get_ports {ddram_reset_n}]
286 set_property IOSTANDARD LVCMOS15 [get_ports {ddram_reset_n}]
288 ################################################################################
290 ################################################################################
292 set_property -dict { PACKAGE_PIN G3 IOSTANDARD LVCMOS33 } [get_ports { led0 }];
293 set_property -dict { PACKAGE_PIN H3 IOSTANDARD LVCMOS33 } [get_ports { led1 }];
294 set_property -dict { PACKAGE_PIN G4 IOSTANDARD LVCMOS33 } [get_ports { led2 }];
295 set_property -dict { PACKAGE_PIN H4 IOSTANDARD LVCMOS33 } [get_ports { led3 }];
297 ###############################################################################
299 ###############################################################################
301 set_property -dict { PACKAGE_PIN T19 IOSTANDARD LVCMOS33 } [get_ports { spi_flash_cs_n }];
302 set_property -dict { PACKAGE_PIN P22 IOSTANDARD LVCMOS33 } [get_ports { spi_flash_mosi }];
303 set_property -dict { PACKAGE_PIN R22 IOSTANDARD LVCMOS33 } [get_ports { spi_flash_miso }];
304 set_property -dict { PACKAGE_PIN P21 IOSTANDARD LVCMOS33 } [get_ports { spi_flash_wp_n }];
305 set_property -dict { PACKAGE_PIN R21 IOSTANDARD LVCMOS33 } [get_ports { spi_flash_hold_n }];
308 ################################################################################
310 ################################################################################
312 set_property INTERNAL_VREF 0.750 [get_iobanks 34]
313 set_property CONFIG_MODE SPIx4 [current_design]
314 set_property BITSTREAM.CONFIG.SPI_BUSWIDTH 4 [current_design]
315 set_property BITSTREAM.CONFIG.OVERTEMPPOWERDOWN ENABLE [current_design]
316 set_property CONFIG_VOLTAGE 3.3 [current_design]
317 set_property CFGBVS VCCO [current_design]
318 set_property BITSTREAM.CONFIG.SPI_FALL_EDGE YES [current_design]
319 set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design]
320 set_property BITSTREAM.CONFIG.EXTMASTERCCLK_EN Div-1 [current_design]
322 ################################################################################
324 ################################################################################
327 create_clock -name clk200_p -period 5.0 [get_nets clk200_p]
329 ################################################################################
330 # False path constraints
331 ################################################################################
334 set_false_path -quiet -through [get_nets -hierarchical -filter {mr_ff == TRUE}]
336 set_false_path -quiet -to [get_pins -filter {REF_PIN_NAME == PRE} -of_objects [get_cells -hierarchical -filter {ars_ff1 == TRUE || ars_ff2 == TRUE}]]
338 set_max_delay 2 -quiet -from [get_pins -filter {REF_PIN_NAME == C} -of_objects [get_cells -hierarchical -filter {ars_ff1 == TRUE}]] -to [get_pins -filter {REF_PIN_NAME == D} -of_objects [get_cells -hierarchical -filter {ars_ff2 == TRUE}]]