source: XOpenSparcT1/trunk/Xilinx/dram.veo @ 6

Revision 6, 8.9 KB checked in by pntsvt00, 13 years ago (diff)

versione iniziale opensparc

Line 
1//*****************************************************************************
2// DISCLAIMER OF LIABILITY
3//
4// This file contains proprietary and confidential information of
5// Xilinx, Inc. ("Xilinx"), that is distributed under a license
6// from Xilinx, and may be used, copied and/or disclosed only
7// pursuant to the terms of a valid license agreement with Xilinx.
8//
9// XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION
10// ("MATERIALS") "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
11// EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING WITHOUT
12// LIMITATION, ANY WARRANTY WITH RESPECT TO NONINFRINGEMENT,
13// MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE. Xilinx
14// does not warrant that functions included in the Materials will
15// meet the requirements of Licensee, or that the operation of the
16// Materials will be uninterrupted or error-free, or that defects
17// in the Materials will be corrected. Furthermore, Xilinx does
18// not warrant or make any representations regarding use, or the
19// results of the use, of the Materials in terms of correctness,
20// accuracy, reliability or otherwise.
21//
22// Xilinx products are not designed or intended to be fail-safe,
23// or for use in any application requiring fail-safe performance,
24// such as life-support or safety devices or systems, Class III
25// medical devices, nuclear facilities, applications related to
26// the deployment of airbags, or any other applications that could
27// lead to death, personal injury or severe property or
28// environmental damage (individually and collectively, "critical
29// applications"). Customer assumes the sole risk and liability
30// of any use of Xilinx products in critical applications,
31// subject only to applicable laws and regulations governing
32// limitations on product liability.
33//
34// Copyright 2007, 2008 Xilinx, Inc.
35// All rights reserved.
36//
37// This disclaimer and copyright notice must be retained as part
38// of this file at all times.
39//*****************************************************************************
40//   ____  ____
41//  /   /\/   /
42// /___/  \  /   Vendor             : Xilinx
43// \   \   \/    Version            : 3.6
44//  \   \        Application        : MIG
45//  /   /        Filename           : dram.veo
46// /___/   /\    Date Last Modified : $Date: 2010/06/09 18:13:34 $
47// \   \  /  \   Date Created       : Wed May 2 2007
48//  \___\/\___\
49//
50// Purpose     : Template file containing code that can be used as a model
51//               for instantiating a CORE Generator module in a HDL design.
52// Revision History:
53//*****************************************************************************
54
55// The following must be inserted into your Verilog file for this
56// core to be instantiated. Change the instance name and port connections
57// (in parentheses) to your own signal names.
58
59//----------- Begin Cut here for INSTANTIATION Template ---// INST_TAG
60
61 dram # (
62    .BANK_WIDTH(2),   
63                                       // # of memory bank addr bits.
64    .CKE_WIDTH(1),   
65                                       // # of memory clock enable outputs.
66    .CLK_WIDTH(2),   
67                                       // # of clock outputs.
68    .COL_WIDTH(10),   
69                                       // # of memory column bits.
70    .CS_NUM(1),   
71                                       // # of separate memory chip selects.
72    .CS_WIDTH(1),   
73                                       // # of total memory chip selects.
74    .CS_BITS(0),   
75                                       // set to log2(CS_NUM) (rounded up).
76    .DM_WIDTH(8),   
77                                       // # of data mask bits.
78    .DQ_WIDTH(64),   
79                                       // # of data width.
80    .DQ_PER_DQS(8),   
81                                       // # of DQ data bits per strobe.
82    .DQS_WIDTH(8),   
83                                       // # of DQS strobes.
84    .DQ_BITS(6),   
85                                       // set to log2(DQS_WIDTH*DQ_PER_DQS).
86    .DQS_BITS(3),   
87                                       // set to log2(DQS_WIDTH).
88    .ODT_WIDTH(1),   
89                                       // # of memory on-die term enables.
90    .ROW_WIDTH(13),   
91                                       // # of memory row and # of addr bits.
92    .ADDITIVE_LAT(0),   
93                                       // additive write latency.
94    .BURST_LEN(4),   
95                                       // burst length (in double words).
96    .BURST_TYPE(0),   
97                                       // burst type (=0 seq; =1 interleaved).
98    .CAS_LAT(3),   
99                                       // CAS latency.
100    .ECC_ENABLE(0),   
101                                       // enable ECC (=1 enable).
102    .APPDATA_WIDTH(128),   
103                                       // # of usr read/write data bus bits.
104    .MULTI_BANK_EN(1),   
105                                       // Keeps multiple banks open. (= 1 enable).
106    .TWO_T_TIME_EN(1),   
107                                       // 2t timing for unbuffered dimms.
108    .ODT_TYPE(1),   
109                                       // ODT (=0(none),=1(75),=2(150),=3(50)).
110    .REDUCE_DRV(0),   
111                                       // reduced strength mem I/O (=1 yes).
112    .REG_ENABLE(0),   
113                                       // registered addr/ctrl (=1 yes).
114    .TREFI_NS(7800),   
115                                       // auto refresh interval (ns).
116    .TRAS(40000),   
117                                       // active->precharge delay.
118    .TRCD(15000),   
119                                       // active->read/write delay.
120    .TRFC(105000),   
121                                       // refresh->refresh, refresh->active delay.
122    .TRP(15000),   
123                                       // precharge->command delay.
124    .TRTP(7500),   
125                                       // read->precharge delay.
126    .TWR(15000),   
127                                       // used to determine write->precharge.
128    .TWTR(7500),   
129                                       // write->read delay.
130    .HIGH_PERFORMANCE_MODE("TRUE"),   
131                              // # = TRUE, the IODELAY performance mode is set
132                              // to high.
133                              // # = FALSE, the IODELAY performance mode is set
134                              // to low.
135    .SIM_ONLY(0),   
136                                       // = 1 to skip SDRAM power up delay.
137    .DEBUG_EN(0),   
138                                       // Enable debug signals/controls.
139                                       // When this parameter is changed from 0 to 1,
140                                       // make sure to uncomment the coregen commands
141                                       // in ise_flow.bat or create_ise.bat files in
142                                       // par folder.
143    .CLK_PERIOD(5000),   
144                                       // Core/Memory clock period (in ps).
145    .DLL_FREQ_MODE("HIGH"),   
146                                       // DCM Frequency range.
147    .CLK_TYPE("SINGLE_ENDED"),   
148                                       // # = "DIFFERENTIAL " ->; Differential input clocks ,
149                                       // # = "SINGLE_ENDED" -> Single ended input clocks.
150    .NOCLK200(0),   
151                                       // clk200 enable and disable.
152    .RST_ACT_LOW(1)     
153                                       // =1 for active low reset, =0 for active high.
154)
155u_dram (
156    .ddr2_dq                   (ddr2_dq),
157    .ddr2_a                    (ddr2_a),
158    .ddr2_ba                   (ddr2_ba),
159    .ddr2_ras_n                (ddr2_ras_n),
160    .ddr2_cas_n                (ddr2_cas_n),
161    .ddr2_we_n                 (ddr2_we_n),
162    .ddr2_cs_n                 (ddr2_cs_n),
163    .ddr2_odt                  (ddr2_odt),
164    .ddr2_cke                  (ddr2_cke),
165    .ddr2_dm                   (ddr2_dm),
166    .sys_clk                   (sys_clk),
167    .idly_clk_200              (idly_clk_200),
168    .sys_rst_n                 (sys_rst_n),
169    .phy_init_done             (phy_init_done),
170    .rst0_tb                   (rst0_tb),
171    .clk0_tb                   (clk0_tb),
172    .app_wdf_afull             (app_wdf_afull),
173    .app_af_afull              (app_af_afull),
174    .rd_data_valid             (rd_data_valid),
175    .app_wdf_wren              (app_wdf_wren),
176    .app_af_wren               (app_af_wren),
177    .app_af_addr               (app_af_addr),
178    .app_af_cmd                (app_af_cmd),
179    .rd_data_fifo_out          (rd_data_fifo_out),
180    .app_wdf_data              (app_wdf_data),
181    .app_wdf_mask_data         (app_wdf_mask_data),
182    .ddr2_dqs                  (ddr2_dqs),
183    .ddr2_dqs_n                (ddr2_dqs_n),
184    .ddr2_ck                   (ddr2_ck),
185    .ddr2_ck_n                 (ddr2_ck_n)
186);
187
188// INST_TAG_END ------ End INSTANTIATION Template ---------
189
190// You must compile the wrapper file dram.v when simulating
191// the core, dram. When compiling the wrapper file, be sure to
192// reference the XilinxCoreLib Verilog simulation library. For detailed
193// instructions, please refer to the "CORE Generator Help".
194
Note: See TracBrowser for help on using the repository browser.