NvmeWrite now using 8 simultaineous writes.
[DuneNvme.git] / source / DuneNvme / src / DuneNvmeTestTop.xdc
1 ###############################################################################\r
2 #       DuneNvmeTestTop.xdc     Constraints for DuneNvmeTestTop on a KCU105\r
3 #       T.Barnaby,      Beam Ltd.       2020-02-23\r
4 ###############################################################################\r
5 #\r
6 \r
7 # System timings\r
8 #create_clock -period 5.000 -name sys_clk_p -waveform {0.000 2.500} [get_ports sys_clk_p]\r
9 create_clock -period 10.000 -name pci_clk [get_ports pci_clk_p]\r
10 create_clock -period 10.000 -name nvme_clk [get_ports nvme_clk_p]\r
11 \r
12 # Asyncronous resets\r
13 set_false_path -from [get_ports sys_reset]\r
14 set_false_path -from [get_ports pci_reset_n]\r
15 #set_false_path -through [get_nets boot_reset]\r
16 #set_false_path -through [get_nets reset_n]\r
17 #set_false_path -through [get_nets sys_reset_buf_n]\r
18 \r
19 # PCIe Host\r
20 #set_false_path -through [get_pins pcie_host0/inst/pcie3_ip_i/inst/pcie3_uscale_top_inst/pcie3_uscale_wrapper_inst/PCIE_3_1_inst/CFGMAX*]\r
21 set_false_path -through [get_pins pcie_host0/inst/pcie3_ip_i/U0/pcie3_uscale_top_inst/pcie3_uscale_wrapper_inst/PCIE_3_1_inst/CFGMAX*]\r
22 set_false_path -through [get_nets pcie_host0/inst/cfg_max*]\r
23 set_false_path -to [get_pins -hier *sync_reg[0]/D]\r
24 \r
25 set_false_path -to [get_ports -filter NAME=~leds*]\r
26 \r
27 # General settings\r
28 set_property CONFIG_VOLTAGE 1.8 [current_design]\r
29 set_property CFGBVS GND [current_design]\r
30 set_property BITSTREAM.GENERAL.COMPRESS TRUE [current_design]\r
31 \r
32 # PCIe Host interface\r
33 set_property PACKAGE_PIN K22 [get_ports pci_reset_n]\r
34 set_property PULLUP true [get_ports pci_reset_n]\r
35 set_property IOSTANDARD LVCMOS18 [get_ports pci_reset_n]\r
36 set_property LOC GTHE3_COMMON_X0Y1 [get_cells pci_clk_buf0]\r
37 \r
38 # CPU Reset\r
39 set_property PACKAGE_PIN AN8 [get_ports sys_reset]\r
40 set_property PULLUP false [get_ports sys_reset]\r
41 set_property IOSTANDARD LVCMOS18 [get_ports sys_reset]\r
42 \r
43 # LED's\r
44 set_property IOSTANDARD LVCMOS18 [get_ports {leds[0]}]\r
45 set_property IOSTANDARD LVCMOS18 [get_ports {leds[1]}]\r
46 set_property IOSTANDARD LVCMOS18 [get_ports {leds[2]}]\r
47 set_property IOSTANDARD LVCMOS18 [get_ports {leds[3]}]\r
48 set_property IOSTANDARD LVCMOS18 [get_ports {leds[4]}]\r
49 set_property IOSTANDARD LVCMOS18 [get_ports {leds[5]}]\r
50 set_property IOSTANDARD LVCMOS18 [get_ports {leds[6]}]\r
51 set_property IOSTANDARD LVCMOS18 [get_ports {leds[7]}]\r
52 set_property DRIVE 12 [get_ports {leds[0]}]\r
53 set_property DRIVE 12 [get_ports {leds[1]}]\r
54 set_property DRIVE 12 [get_ports {leds[2]}]\r
55 set_property DRIVE 12 [get_ports {leds[3]}]\r
56 set_property DRIVE 12 [get_ports {leds[4]}]\r
57 set_property DRIVE 12 [get_ports {leds[5]}]\r
58 set_property DRIVE 12 [get_ports {leds[6]}]\r
59 set_property DRIVE 12 [get_ports {leds[7]}]\r
60 set_property SLEW SLOW [get_ports {leds[0]}]\r
61 set_property SLEW SLOW [get_ports {leds[1]}]\r
62 set_property SLEW SLOW [get_ports {leds[2]}]\r
63 set_property SLEW SLOW [get_ports {leds[3]}]\r
64 set_property SLEW SLOW [get_ports {leds[4]}]\r
65 set_property SLEW SLOW [get_ports {leds[5]}]\r
66 set_property SLEW SLOW [get_ports {leds[6]}]\r
67 set_property SLEW SLOW [get_ports {leds[7]}]\r
68 set_property PACKAGE_PIN AP8 [get_ports {leds[0]}]\r
69 set_property PACKAGE_PIN H23 [get_ports {leds[1]}]\r
70 set_property PACKAGE_PIN P20 [get_ports {leds[2]}]\r
71 set_property PACKAGE_PIN P21 [get_ports {leds[3]}]\r
72 set_property PACKAGE_PIN N22 [get_ports {leds[4]}]\r
73 set_property PACKAGE_PIN M22 [get_ports {leds[5]}]\r
74 set_property PACKAGE_PIN R23 [get_ports {leds[6]}]\r
75 set_property PACKAGE_PIN P23 [get_ports {leds[7]}]\r
76 \r
77 # PCIe Nvme0 interface\r
78 set_property PACKAGE_PIN H11 [get_ports nvme_reset_n]\r
79 set_property PULLUP true [get_ports nvme_reset_n]\r
80 set_property IOSTANDARD LVCMOS18 [get_ports nvme_reset_n]\r
81 #set_property LOC GTHE3_COMMON_X0Y1 [get_cells nvme_clk_buf0]\r
82 \r
83 set_property PACKAGE_PIN K6 [get_ports {nvme_clk_p}]\r
84 set_property PACKAGE_PIN K5 [get_ports {nvme_clk_n}]\r