OpenCores
URL https://opencores.org/ocsvn/udp_ip_stack/udp_ip_stack/trunk

Subversion Repositories udp_ip_stack

[/] [udp_ip_stack/] [trunk/] [contrib/] [Headers sometimes have errors/] [udp_constraints.ucf] - Blame information for rev 35

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 35 pjf
CONFIG PART = xc6vlx240tff1156-1;
2
 
3
 
4
########## ML605 Board ##########
5
NET  clk_in_p        LOC = J9   |IOSTANDARD = LVDS_25  |DIFF_TERM = TRUE;
6
NET  clk_in_n        LOC = H9   |IOSTANDARD = LVDS_25  |DIFF_TERM = TRUE;
7
 
8
Net reset         LOC = H10  |IOSTANDARD = LVCMOS15 |TIG;
9
 
10
# downgrade the Place:1153 error in the mapper
11
NET "reset" CLOCK_DEDICATED_ROUTE = FALSE;
12
 
13
#### Module LEDs_8Bit constraints
14
NET "display[0]" LOC = AC22;
15
NET "display[1]" LOC = AC24;
16
NET "display[2]" LOC = AE22;
17
NET "display[3]" LOC = AE23;
18
NET "display[4]" LOC = AB23;
19
NET "display[5]" LOC = AG23;
20
NET "display[6]" LOC = AE24;
21
NET "display[7]" LOC = AD24;
22
 
23
NET PBTX_LED                            LOC = AD21;
24
NET UDP_RX                              LOC = AH27;
25
NET DO_SECOND_TX_LED    LOC = AH28;
26
NET TX_RSLT_0                   LOC = AE21;
27
NET TX_RSLT_1                   LOC = AP24;
28
 
29
 
30
 
31
#### Module Push_Buttons_4Bit constraints
32
NET PBTX                                                LOC = H17;
33
NET PB_DO_SECOND_TX             LOC = A18;
34
NET reset_leds                          LOC = G26;
35
 
36
#### Module DIP_Switches_4Bit constraints
37
 
38
 
39
Net phy_resetn       LOC = AH13 |IOSTANDARD = LVCMOS25 |TIG;
40
 
41
Net gmii_rxd<7>      LOC = AC13 |IOSTANDARD = LVCMOS25;
42
Net gmii_rxd<6>      LOC = AC12 |IOSTANDARD = LVCMOS25;
43
Net gmii_rxd<5>      LOC = AD11 |IOSTANDARD = LVCMOS25;
44
Net gmii_rxd<4>      LOC = AM12 |IOSTANDARD = LVCMOS25;
45
Net gmii_rxd<3>      LOC = AN12 |IOSTANDARD = LVCMOS25;
46
Net gmii_rxd<2>      LOC = AE14 |IOSTANDARD = LVCMOS25;
47
Net gmii_rxd<1>      LOC = AF14 |IOSTANDARD = LVCMOS25;
48
Net gmii_rxd<0>      LOC = AN13 |IOSTANDARD = LVCMOS25;
49
 
50
Net gmii_txd<7>      LOC = AF11 |IOSTANDARD = LVCMOS25;
51
Net gmii_txd<6>      LOC = AE11 |IOSTANDARD = LVCMOS25;
52
Net gmii_txd<5>      LOC = AM10 |IOSTANDARD = LVCMOS25;
53
Net gmii_txd<4>      LOC = AL10 |IOSTANDARD = LVCMOS25;
54
Net gmii_txd<3>      LOC = AG11 |IOSTANDARD = LVCMOS25;
55
Net gmii_txd<2>      LOC = AG10 |IOSTANDARD = LVCMOS25;
56
Net gmii_txd<1>      LOC = AL11 |IOSTANDARD = LVCMOS25;
57
Net gmii_txd<0>      LOC = AM11 |IOSTANDARD = LVCMOS25;
58
 
59
Net gmii_col         LOC = AK13 |IOSTANDARD = LVCMOS25;
60
Net gmii_crs         LOC = AL13 |IOSTANDARD = LVCMOS25;
61
Net mii_tx_clk       LOC = AD12 |IOSTANDARD = LVCMOS25;
62
 
63
Net gmii_tx_en       LOC = AJ10 |IOSTANDARD = LVCMOS25;
64
Net gmii_tx_er       LOC = AH10 |IOSTANDARD = LVCMOS25;
65
Net gmii_tx_clk      LOC = AH12 |IOSTANDARD = LVCMOS25;
66
 
67
Net gmii_rx_dv       LOC = AM13 |IOSTANDARD = LVCMOS25;
68
Net gmii_rx_er       LOC = AG12 |IOSTANDARD = LVCMOS25;
69
# P20 - GCLK7
70
Net gmii_rx_clk      LOC = AP11 |IOSTANDARD = LVCMOS25;
71
 
72
 
73
 
74
NET "clk_in_p" TNM_NET = "clk_in_p";
75
TIMESPEC "TS_emac1_clk_in_p" = PERIOD "clk_in_p" 5.000 ns HIGH 50% INPUT_JITTER 50.0ps;
76
 
77
 
78
# Ethernet GTX_CLK high quality 125 MHz reference clock
79
NET "*mac_block/gtx_clk_bufg" TNM_NET = "ref_gtx_clk";
80
TIMEGRP "v6_emac_v2_1_clk_ref_gtx" = "ref_gtx_clk";
81
TIMESPEC "TS_v6_emac_v2_1_clk_ref_gtx" = PERIOD "v6_emac_v2_1_clk_ref_gtx" 8 ns HIGH 50 %;
82
 
83
# Multiplexed 1 Gbps, 10/100 Mbps output inherits constraint from GTX_CLK
84
NET "*tx_mac_aclk*" TNM_NET  = "clk_tx_mac";
85
TIMEGRP "v6_emac_v2_1_clk_ref_mux" = "clk_tx_mac";
86
TIMESPEC "TS_v6_emac_v2_1_clk_ref_mux" = PERIOD "v6_emac_v2_1_clk_ref_mux" TS_v6_emac_v2_1_clk_ref_gtx HIGH 50%;
87
 
88
# Ethernet GMII PHY-side receive clock
89
NET "gmii_rx_clk" TNM_NET = "phy_clk_rx";
90
TIMEGRP "v6_emac_v2_1_clk_phy_rx" = "phy_clk_rx";
91
TIMESPEC "TS_v6_emac_v2_1_clk_phy_rx" = PERIOD "v6_emac_v2_1_clk_phy_rx" 7.5 ns HIGH 50 %;
92
 
93
# define TIGs between unrelated clock domains
94
TIMESPEC "TS_clock_path_gtx2ref" = FROM "clock_generator_clkout0" TO "clock_generator_clkout2" TIG;
95
PIN "*bufgmux_speed_clk.I1" TIG;
96
PIN "*bufgmux_speed_clk.CE0" TIG;
97
 
98
#
99
####
100
#######
101
##########
102
#############
103
#################
104
#FIFO BLOCK CONSTRAINTS
105
 
106
# Group design elements around the Ethernet MAC to assist with timing
107
# closure in this example design. These values may be modified or
108
# removed to best suit your design.
109
#INST "*user_side_FIFO?tx_fifo_i?ramgen_l?bram18_tdp_bl?bram18_tdp_bl" LOC = "RAMB36_X6Y34";
110
#INST "*user_side_FIFO?rx_fifo_i?ramgen_l?bram18_tdp_bl?bram18_tdp_bl" LOC = "RAMB36_X6Y35";
111
#INST "*user_side_FIFO?tx_fifo_i?ramgen_u?bram18_tdp_bl?bram18_tdp_bl" LOC = "RAMB36_X6Y36";
112
#INST "*user_side_FIFO?rx_fifo_i?ramgen_u?bram18_tdp_bl?bram18_tdp_bl" LOC = "RAMB36_X6Y37";
113
 
114
###############################################################################
115
# AXI FIFO CONSTRAINTS
116
# The following constraints are necessary for proper operation of the AXI
117
# FIFO. If you choose to not use the FIFO Block level of wrapper hierarchy,
118
# these constraints should be removed.
119
###############################################################################
120
 
121
# AXI FIFO transmit-side constraints
122
# -----------------------------------------------------------------------------
123
 
124
# Group the clock crossing signals into timing groups
125
INST "*user_side_FIFO?tx_fifo_i?rd_tran_frame_tog"    TNM = "tx_fifo_rd_to_wr";
126
INST "*user_side_FIFO?tx_fifo_i?rd_retran_frame_tog"  TNM = "tx_fifo_rd_to_wr";
127
INST "*user_side_FIFO?tx_fifo_i?rd_col_window_pipe_1" TNM = "tx_fifo_rd_to_wr";
128
INST "*user_side_FIFO?tx_fifo_i?rd_addr_txfer*"       TNM = "tx_fifo_rd_to_wr";
129
INST "*user_side_FIFO?tx_fifo_i?rd_txfer_tog"         TNM = "tx_fifo_rd_to_wr";
130
INST "*user_side_FIFO?tx_fifo_i?wr_frame_in_fifo"     TNM = "tx_fifo_wr_to_rd";
131
 
132
TIMESPEC "TS_tx_fifo_rd_to_wr" = FROM "tx_fifo_rd_to_wr" TO "v6_emac_v2_1_clk_ref_mux" 8 ns DATAPATHONLY;
133
TIMESPEC "TS_tx_fifo_wr_to_rd" = FROM "tx_fifo_wr_to_rd" TO "v6_emac_v2_1_clk_ref_mux" 8 ns DATAPATHONLY;
134
 
135
# Reduce clock period to allow for metastability settling time
136
INST "*user_side_FIFO?tx_fifo_i?wr_rd_addr*"          TNM = "tx_metastable";
137
INST "*user_side_FIFO?tx_fifo_i?wr_col_window_pipe_0" TNM = "tx_metastable";
138
TIMESPEC "TS_tx_meta_protect" = FROM "tx_metastable" 5 ns DATAPATHONLY;
139
 
140
# Transmit-side AXI FIFO address bus timing
141
INST "*user_side_FIFO?tx_fifo_i?rd_addr_txfer*" TNM = "tx_addr_rd";
142
INST "*user_side_FIFO?tx_fifo_i?wr_rd_addr*"    TNM = "tx_addr_wr";
143
TIMESPEC "TS_tx_fifo_addr" = FROM "tx_addr_rd" TO "tx_addr_wr" 10 ns;
144
 
145
# AXI FIFO receive-side constraints
146
# -----------------------------------------------------------------------------
147
 
148
# Group the clock crossing signals into timing groups
149
INST "*user_side_FIFO?rx_fifo_i?wr_store_frame_tog" TNM = "rx_fifo_wr_to_rd";
150
INST "*user_side_FIFO?rx_fifo_i?rd_addr*"           TNM = "rx_fifo_rd_to_wr";
151
 
152
TIMESPEC "TS_rx_fifo_wr_to_rd" = FROM "rx_fifo_wr_to_rd" TO "v6_emac_v2_1_clk_ref_mux" 8 ns DATAPATHONLY;
153
TIMESPEC "TS_rx_fifo_rd_to_wr" = FROM "rx_fifo_rd_to_wr" TO "v6_emac_v2_1_clk_phy_rx"  8 ns DATAPATHONLY;
154
 
155
 
156
 
157
#
158
####
159
#######
160
##########
161
#############
162
#################
163
#BLOCK CONSTRAINTS
164
 
165
# Locate the Tri-Mode Ethernet MAC instance
166
INST "*v6_emac" LOC = "TEMAC_X0Y0";
167
 
168
 
169
###############################################################################
170
# PHYSICAL INTERFACE CONSTRAINTS
171
# The following constraints are necessary for proper operation, and are tuned
172
# for this example design. They should be modified to suit your design.
173
###############################################################################
174
 
175
# GMII physical interface constraints
176
# -----------------------------------------------------------------------------
177
 
178
# Set the IDELAY values on the PHY inputs, tuned for this example design.
179
# These values should be modified to suit your design.
180
INST "*v6emac_block*gmii_interface*delay_gmii_rx_dv"    IDELAY_VALUE = 22;
181
INST "*v6emac_block*gmii_interface*delay_gmii_rx_er"    IDELAY_VALUE = 22;
182
INST "*v6emac_block*gmii_interface*delay_gmii_rxd"      IDELAY_VALUE = 22;
183
 
184
# Group all IDELAY-related blocks to use a single IDELAYCTRL
185
INST "*dlyctrl"                                      IODELAY_GROUP = gmii_idelay;
186
INST "*v6emac_block*gmii_interface*delay_gmii_rx_dv" IODELAY_GROUP = gmii_idelay;
187
INST "*v6emac_block*gmii_interface*delay_gmii_rx_er" IODELAY_GROUP = gmii_idelay;
188
INST "*v6emac_block*gmii_interface*delay_gmii_rxd"   IODELAY_GROUP = gmii_idelay;
189
 
190
# The following constraints work in conjunction with IDELAY_VALUE settings to
191
# check that the GMII receive bus remains in alignment with the rising edge of
192
# GMII_RX_CLK, to within 2 ns setup time and 750 ps hold time.
193
# In addition to adjusting IDELAY_VALUE settings for your system's timing
194
# characteristics, you may wish to refine these constraints to match the GMII specification;
195
# see Answer Record 33195 on xilinx.com for details.
196
INST "gmii_rxd" TNM = "gmii_rx";
197
INST "gmii_rx_dv"  TNM = "gmii_rx";
198
INST "gmii_rx_er"  TNM = "gmii_rx";
199
TIMEGRP "gmii_rx" OFFSET = IN 2 ns VALID 2.75 ns BEFORE "gmii_rx_clk" RISING;
200
 
201
# Constrain the GMII physical interface flip-flops to IOBs
202
INST "*v6emac_block*gmii_interface*rxd_to_mac*"  IOB = force;
203
INST "*v6emac_block*gmii_interface*rx_dv_to_mac" IOB = force;
204
INST "*v6emac_block*gmii_interface*rx_er_to_mac" IOB = force;
205
INST "*v6emac_block*gmii_interface*gmii_txd_?"   IOB = force;
206
INST "*v6emac_block*gmii_interface*gmii_tx_en"   IOB = force;
207
INST "*v6emac_block*gmii_interface*gmii_tx_er"   IOB = force;
208
 
209
# Location constraints are chosen for this example design.
210
# These values should be modified to suit your design.
211
# * Note that regional clocking imposes certain requirements
212
#   on the location of the physical interface pins and the TEMAC instance.
213
#   Please refer to the Virtex-6 FPGA Embedded Tri-Mode Ethernet MAC
214
#   User Guide for additional details. *
215
 
216
# Locate the GMII physical interface pins
217
INST "gmii_txd" LOC = "BANK36";
218
INST "gmii_tx_en"  LOC = "BANK36";
219
INST "gmii_tx_er"  LOC = "BANK36";
220
INST "gmii_tx_clk" LOC = "BANK36";
221
INST "gmii_rxd" LOC = "BANK36";
222
INST "gmii_rx_dv"  LOC = "BANK36";
223
INST "gmii_rx_er"  LOC = "BANK36";
224
INST "gmii_rx_clk" LOC = "BANK36";
225
 
226
# Locate the 125 MHz reference clock buffer
227
#INST "*BUFGMUX_SPEED_CLK" LOC = "BUFGCTRL_X0Y24";

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.