aboutsummaryrefslogtreecommitdiff
path: root/constraints/constraints.srcs/constrs_1/imports/kintex7/top.xdc
blob: 733f6d153db5d4bf0d7c134a787a5e1ae01ea570 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Define the top level system clock of the design
create_clock -period 10 -name sysClk [get_ports sysClk]

# Define the clocks for the GTX blocks
create_clock -name gt0_txusrclk_i -period 12.8 [get_pins mgtEngine/ROCKETIO_WRAPPER_TILE_i/gt0_ROCKETIO_WRAPPER_TILE_i/gtxe2_i/TXOUTCLK]
create_clock -name gt2_txusrclk_i -period 12.8 [get_pins mgtEngine/ROCKETIO_WRAPPER_TILE_i/gt2_ROCKETIO_WRAPPER_TILE_i/gtxe2_i/TXOUTCLK]
create_clock -name gt4_txusrclk_i -period 12.8 [get_pins mgtEngine/ROCKETIO_WRAPPER_TILE_i/gt4_ROCKETIO_WRAPPER_TILE_i/gtxe2_i/TXOUTCLK]
create_clock -name gt6_txusrclk_i -period 12.8 [get_pins mgtEngine/ROCKETIO_WRAPPER_TILE_i/gt6_ROCKETIO_WRAPPER_TILE_i/gtxe2_i/TXOUTCLK]

# IO delays
set_input_delay -clock sysClk 0.0 [get_ports or1200_clmode]
set_input_delay -clock sysClk 0.0 [get_ports or1200_pic_ints]
set_input_delay -clock sysClk 3.0 [get_ports DataIn_pad_0_i[*]]
set_input_delay -clock sysClk 3.0 [get_ports LineState_pad_0_i[*]]
set_input_delay -clock sysClk 3.0 [get_ports RxActive_pad_0_i]
set_input_delay -clock sysClk 3.0 [get_ports RxError_pad_0_i]
set_input_delay -clock sysClk 3.0 [get_ports RxValid_pad_0_i]
set_input_delay -clock sysClk 3.0 [get_ports TxReady_pad_0_i]
set_input_delay -clock sysClk 3.0 [get_ports VStatus_pad_0_i[*]]
set_input_delay -clock sysClk 3.0 [get_ports usb_vbus_pad_0_i]
set_input_delay -clock sysClk 3.0 [get_ports DataIn_pad_1_i[*]]
set_input_delay -clock sysClk 3.0 [get_ports LineState_pad_1_i[*]]
set_input_delay -clock sysClk 3.0 [get_ports RxActive_pad_1_i]
set_input_delay -clock sysClk 3.0 [get_ports RxError_pad_1_i]
set_input_delay -clock sysClk 3.0 [get_ports RxValid_pad_1_i]
set_input_delay -clock sysClk 3.0 [get_ports TxReady_pad_1_i]
set_input_delay -clock sysClk 3.0 [get_ports VStatus_pad_1_i[*]]
set_input_delay -clock sysClk 3.0 [get_ports usb_vbus_pad_1_i]
set_input_delay -clock sysClk 0.0 [get_ports reset]

set_output_delay -clock sysClk 0.0 [get_ports or1200_pm_out[*]]
set_output_delay -clock sysClk 0.0 [get_ports TermSel_pad_0_o]
set_output_delay -clock sysClk 0.0 [get_ports TxValid_pad_0_o]
set_output_delay -clock sysClk 0.0 [get_ports VControl_Load_pad_0_o]
set_output_delay -clock sysClk 0.0 [get_ports XcvSelect_pad_0_o]
set_output_delay -clock sysClk 0.0 [get_ports TermSel_pad_1_o]
set_output_delay -clock sysClk 0.0 [get_ports TxValid_pad_1_o]
set_output_delay -clock sysClk 0.0 [get_ports VControl_Load_pad_1_o]
set_output_delay -clock sysClk 0.0 [get_ports XcvSelect_pad_1_o]
set_output_delay -clock sysClk 0.0 [get_ports OpMode_pad_0_o[*]]
set_output_delay -clock sysClk 0.0 [get_ports OpMode_pad_1_o[*]]
set_output_delay -clock sysClk 0.0 [get_ports SuspendM_pad_0_o]
set_output_delay -clock sysClk 0.0 [get_ports SuspendM_pad_1_o]
set_output_delay -clock sysClk 0.0 [get_ports VControl_pad_0_o[*]]
set_output_delay -clock sysClk 0.0 [get_ports VControl_pad_1_o[*]]
set_output_delay -clock sysClk 0.0 [get_ports phy_rst_pad_0_o]
set_output_delay -clock sysClk 0.0 [get_ports phy_rst_pad_1_o]
set_output_delay -clock sysClk 0.0 [get_ports DataOut_pad_0_o[*]]
set_output_delay -clock sysClk 0.0 [get_ports DataOut_pad_1_o[*]]

# Timing exceptions
set_false_path -from [get_ports GTPRESET_IN]

# Multi-cycle paths for ALU:
set_multicycle_path -through [get_pins cpuEngine/or1200_cpu/or1200_alu/*] 2
set_multicycle_path -through [get_pins cpuEngine/or1200_cpu/or1200_alu/*] 1 -hold