1 |
2 |
ZTEX |
############################################################################
|
2 |
|
|
##
|
3 |
|
|
## Xilinx, Inc. 2006 www.xilinx.com
|
4 |
|
|
## Do. Mai 22 14:50:41 2014
|
5 |
|
|
## Generated by MIG Version 3.92
|
6 |
|
|
##
|
7 |
|
|
############################################################################
|
8 |
|
|
## File name : example_top.ucf
|
9 |
|
|
##
|
10 |
|
|
## Details : Constraints file
|
11 |
|
|
## FPGA family: spartan6
|
12 |
|
|
## FPGA: xc6slx16-ftg256
|
13 |
|
|
## Speedgrade: -2
|
14 |
|
|
## Design Entry: VERILOG
|
15 |
|
|
## Design: with Test bench
|
16 |
|
|
## DCM Used: Enable
|
17 |
|
|
## No.Of Memory Controllers: 1
|
18 |
|
|
##
|
19 |
|
|
############################################################################
|
20 |
|
|
############################################################################
|
21 |
|
|
# VCC AUX VOLTAGE
|
22 |
|
|
############################################################################
|
23 |
|
|
CONFIG VCCAUX=2.5; # Valid values are 2.5 and 3.3
|
24 |
|
|
|
25 |
|
|
############################################################################
|
26 |
|
|
# DDR2 requires the MCB to operate in Extended performance mode with higher Vccint
|
27 |
|
|
# specification to achieve maximum frequency. Therefore, the following CONFIG constraint
|
28 |
|
|
# follows the corresponding GUI option setting. However, DDR3 can operate at higher
|
29 |
|
|
# frequencies with any Vcciint value by operating MCB in extended mode. Please do not
|
30 |
|
|
# remove/edit the below constraint to avoid false errors.
|
31 |
|
|
############################################################################
|
32 |
|
|
CONFIG MCB_PERFORMANCE= STANDARD;
|
33 |
|
|
|
34 |
|
|
|
35 |
|
|
##################################################################################
|
36 |
|
|
# Timing Ignore constraints for paths crossing the clock domain
|
37 |
|
|
##################################################################################
|
38 |
|
|
NET "memc?_wrapper_inst/mcb_ui_top_inst/mcb_raw_wrapper_inst/selfrefresh_mcb_mode" TIG;
|
39 |
|
|
NET "c?_pll_lock" TIG;
|
40 |
|
|
INST "memc?_wrapper_inst/mcb_ui_top_inst/mcb_raw_wrapper_inst/gen_term_calib.mcb_soft_calibration_top_inst/mcb_soft_calibration_inst/DONE_SOFTANDHARD_CAL*" TIG;
|
41 |
|
|
|
42 |
|
|
#Please uncomment the below TIG if used in a design which enables self-refresh mode
|
43 |
|
|
#NET "memc?_wrapper_inst/mcb_ui_top_inst/mcb_raw_wrapper_inst/gen_term_calib.mcb_soft_calibration_top_inst/mcb_soft_calibration_inst/SELFREFRESH_MCB_REQ" TIG;
|
44 |
|
|
|
45 |
|
|
|
46 |
|
|
############################################################################
|
47 |
|
|
## Memory Controller 3
|
48 |
|
|
## Memory Device: DDR_SDRAM->MT46V32M16XX-5B-IT
|
49 |
|
|
## Frequency: 200 MHz
|
50 |
|
|
## Time Period: 5000 ps
|
51 |
|
|
## Supported Part Numbers: MT46V32M16BN-5B-IT
|
52 |
|
|
############################################################################
|
53 |
|
|
|
54 |
|
|
############################################################################
|
55 |
|
|
# All the IO resources in an IO tile which contains DQSP/UDQSP are used
|
56 |
|
|
# irrespective of a single-ended or differential DQS design. Any signal that
|
57 |
|
|
# is connected to the free pin of the same IO tile in a single-ended design
|
58 |
|
|
# will be unrouted. Hence, the IOB cannot used as general pupose IO.
|
59 |
|
|
############################################################################
|
60 |
|
|
CONFIG PROHIBIT = N1,H1;
|
61 |
|
|
|
62 |
|
|
############################################################################
|
63 |
|
|
## Clock constraints
|
64 |
|
|
############################################################################
|
65 |
|
|
NET "memc3_infrastructure_inst/sys_clk_ibufg" TNM_NET = "SYS_CLK3";
|
66 |
|
|
TIMESPEC "TS_SYS_CLK3" = PERIOD "SYS_CLK3" 5 ns HIGH 50 %;
|
67 |
|
|
############################################################################
|
68 |
|
|
|
69 |
|
|
############################################################################
|
70 |
|
|
## I/O TERMINATION
|
71 |
|
|
############################################################################
|
72 |
|
|
NET "mcb3_dram_dq[*]" IN_TERM = NONE;
|
73 |
|
|
NET "mcb3_dram_dqs" IN_TERM = NONE;
|
74 |
|
|
NET "mcb3_dram_udqs" IN_TERM = NONE;
|
75 |
|
|
|
76 |
|
|
############################################################################
|
77 |
|
|
# Status Signals
|
78 |
|
|
############################################################################
|
79 |
|
|
|
80 |
|
|
NET "error" IOSTANDARD = LVCMOS18 ;
|
81 |
|
|
NET "calib_done" IOSTANDARD = LVCMOS18 ;
|
82 |
|
|
NET "calib_done" LOC = "B5" ;
|
83 |
|
|
NET "error" LOC = "A5" ;
|
84 |
|
|
|
85 |
|
|
############################################################################
|
86 |
|
|
# I/O STANDARDS
|
87 |
|
|
############################################################################
|
88 |
|
|
|
89 |
|
|
NET "mcb3_dram_dq[*]" IOSTANDARD = SSTL2_II ;
|
90 |
|
|
NET "mcb3_dram_a[*]" IOSTANDARD = SSTL2_II ;
|
91 |
|
|
NET "mcb3_dram_ba[*]" IOSTANDARD = SSTL2_II ;
|
92 |
|
|
NET "mcb3_dram_dqs" IOSTANDARD = SSTL2_II ;
|
93 |
|
|
NET "mcb3_dram_udqs" IOSTANDARD = SSTL2_II ;
|
94 |
|
|
NET "mcb3_dram_ck" IOSTANDARD = DIFF_SSTL2_II ;
|
95 |
|
|
NET "mcb3_dram_ck_n" IOSTANDARD = DIFF_SSTL2_II ;
|
96 |
|
|
NET "mcb3_dram_cke" IOSTANDARD = SSTL2_II ;
|
97 |
|
|
NET "mcb3_dram_ras_n" IOSTANDARD = SSTL2_II ;
|
98 |
|
|
NET "mcb3_dram_cas_n" IOSTANDARD = SSTL2_II ;
|
99 |
|
|
NET "mcb3_dram_we_n" IOSTANDARD = SSTL2_II ;
|
100 |
|
|
NET "mcb3_dram_dm" IOSTANDARD = SSTL2_II ;
|
101 |
|
|
NET "mcb3_dram_udm" IOSTANDARD = SSTL2_II ;
|
102 |
|
|
NET "mcb3_rzq" IOSTANDARD = SSTL2_II ;
|
103 |
|
|
NET "c3_sys_clk" IOSTANDARD = LVCMOS25 ;
|
104 |
|
|
NET "c3_sys_rst_i" IOSTANDARD = LVCMOS25 ;
|
105 |
|
|
############################################################################
|
106 |
|
|
# MCB 3
|
107 |
|
|
# Pin Location Constraints for Clock, Masks, Address, and Controls
|
108 |
|
|
############################################################################
|
109 |
|
|
|
110 |
|
|
NET "mcb3_dram_a[0]" LOC = "K5" ;
|
111 |
|
|
NET "mcb3_dram_a[10]" LOC = "G6" ;
|
112 |
|
|
NET "mcb3_dram_a[11]" LOC = "E3" ;
|
113 |
|
|
NET "mcb3_dram_a[12]" LOC = "F3" ;
|
114 |
|
|
NET "mcb3_dram_a[1]" LOC = "K6" ;
|
115 |
|
|
NET "mcb3_dram_a[2]" LOC = "D1" ;
|
116 |
|
|
NET "mcb3_dram_a[3]" LOC = "L4" ;
|
117 |
|
|
NET "mcb3_dram_a[4]" LOC = "G5" ;
|
118 |
|
|
NET "mcb3_dram_a[5]" LOC = "H4" ;
|
119 |
|
|
NET "mcb3_dram_a[6]" LOC = "H3" ;
|
120 |
|
|
NET "mcb3_dram_a[7]" LOC = "D3" ;
|
121 |
|
|
NET "mcb3_dram_a[8]" LOC = "B2" ;
|
122 |
|
|
NET "mcb3_dram_a[9]" LOC = "A2" ;
|
123 |
|
|
NET "mcb3_dram_ba[0]" LOC = "C3" ;
|
124 |
|
|
NET "mcb3_dram_ba[1]" LOC = "C2" ;
|
125 |
|
|
NET "mcb3_dram_cas_n" LOC = "H5" ;
|
126 |
|
|
NET "mcb3_dram_ck" LOC = "E2" ;
|
127 |
|
|
NET "mcb3_dram_ck_n" LOC = "E1" ;
|
128 |
|
|
NET "mcb3_dram_cke" LOC = "F4" ;
|
129 |
|
|
NET "mcb3_dram_dm" LOC = "J4" ;
|
130 |
|
|
NET "mcb3_dram_dq[0]" LOC = "K2" ;
|
131 |
|
|
NET "mcb3_dram_dq[10]" LOC = "M2" ;
|
132 |
|
|
NET "mcb3_dram_dq[11]" LOC = "M1" ;
|
133 |
|
|
NET "mcb3_dram_dq[12]" LOC = "P2" ;
|
134 |
|
|
NET "mcb3_dram_dq[13]" LOC = "P1" ;
|
135 |
|
|
NET "mcb3_dram_dq[14]" LOC = "R2" ;
|
136 |
|
|
NET "mcb3_dram_dq[15]" LOC = "R1" ;
|
137 |
|
|
NET "mcb3_dram_dq[1]" LOC = "K1" ;
|
138 |
|
|
NET "mcb3_dram_dq[2]" LOC = "J3" ;
|
139 |
|
|
NET "mcb3_dram_dq[3]" LOC = "J1" ;
|
140 |
|
|
NET "mcb3_dram_dq[4]" LOC = "F2" ;
|
141 |
|
|
NET "mcb3_dram_dq[5]" LOC = "F1" ;
|
142 |
|
|
NET "mcb3_dram_dq[6]" LOC = "G3" ;
|
143 |
|
|
NET "mcb3_dram_dq[7]" LOC = "G1" ;
|
144 |
|
|
NET "mcb3_dram_dq[8]" LOC = "L3" ;
|
145 |
|
|
NET "mcb3_dram_dq[9]" LOC = "L1" ;
|
146 |
|
|
NET "mcb3_dram_dqs" LOC = "H2" ;
|
147 |
|
|
NET "mcb3_dram_ras_n" LOC = "J6" ;
|
148 |
|
|
NET "c3_sys_clk" LOC = "M9" ;
|
149 |
|
|
NET "c3_sys_rst_i" LOC = "P6" ;
|
150 |
|
|
NET "mcb3_dram_udm" LOC = "K3" ;
|
151 |
|
|
NET "mcb3_dram_udqs" LOC = "N3" ;
|
152 |
|
|
NET "mcb3_dram_we_n" LOC = "C1" ;
|
153 |
|
|
|
154 |
|
|
##################################################################################
|
155 |
|
|
#RZQ is required for all MCB designs. Do not move the location #
|
156 |
|
|
#of this pin for ES devices.For production devices, RZQ can be moved to any #
|
157 |
|
|
#valid package pin within the MCB bank.For designs using Calibrated Input Termination, #
|
158 |
|
|
#a 2R resistor should be connected between RZQand ground, where R is the desired#
|
159 |
|
|
#input termination value. Otherwise, RZQ should be left as a no-connect (NC) pin.#
|
160 |
|
|
##################################################################################
|
161 |
|
|
NET "mcb3_rzq" LOC = "M4" ;
|
162 |
|
|
|