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

Subversion Repositories or1k_soc_on_altera_embedded_dev_kit

[/] [or1k_soc_on_altera_embedded_dev_kit/] [trunk/] [soc/] [bench/] [MT46V16M16/] [readme.txt] - Blame information for rev 12

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 12 xianfeng
Disclaimer of Warranty:
2
-----------------------
3
This software code and all associated documentation, comments or other
4
information (collectively "Software") is provided "AS IS" without
5
warranty of any kind. MICRON TECHNOLOGY, INC. ("MTI") EXPRESSLY
6
DISCLAIMS ALL WARRANTIES EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
7
TO, NONINFRINGEMENT OF THIRD PARTY RIGHTS, AND ANY IMPLIED WARRANTIES
8
OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE. MTI DOES NOT
9
WARRANT THAT THE SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT THE
10
OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE.
11
FURTHERMORE, MTI DOES NOT MAKE ANY REPRESENTATIONS REGARDING THE USE OR
12
THE RESULTS OF THE USE OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS,
13
ACCURACY, RELIABILITY, OR OTHERWISE. THE ENTIRE RISK ARISING OUT OF USE
14
OR PERFORMANCE OF THE SOFTWARE REMAINS WITH YOU. IN NO EVENT SHALL MTI,
15
ITS AFFILIATED COMPANIES OR THEIR SUPPLIERS BE LIABLE FOR ANY DIRECT,
16
INDIRECT, CONSEQUENTIAL, INCIDENTAL, OR SPECIAL DAMAGES (INCLUDING,
17
WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION,
18
OR LOSS OF INFORMATION) ARISING OUT OF YOUR USE OF OR INABILITY TO USE
19
THE SOFTWARE, EVEN IF MTI HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
20
DAMAGES. Because some jurisdictions prohibit the exclusion or
21
limitation of liability for consequential or incidental damages, the
22
above limitation may not apply to you.
23
 
24
Copyright 2003 Micron Technology, Inc. All rights reserved.
25
 
26
Getting Started:
27
----------------
28
Unzip the included files to a folder.
29
Compile ddr.v and tb.v using a verilog simulator.
30
Simulate the top level test bench tb.
31
Or, if you are using the ModelSim simulator, type "do tb.do" at the prompt.
32
 
33
File Descriptions:
34
------------------
35
ddr.v               -ddr component model
36
ddr_dimm.v          -structural wrapper that instantiates ddr components
37
ddr_parameters.vh   -file that contains all parameters used by the model
38
readme.txt          -this file
39
tb.v                -component test bench
40
subtest.vh          -example test included by the test bench.
41
tb.do               -compiles and runs the component model and test bench
42
 
43
Defining the Speed Grade:
44
-------------------------
45
The verilog compiler directive "`define" may be used to choose between
46
multiple speed grades supported by the ddr model.  Allowable speed
47
grades are listed in the ddr_parameters.vh file and begin with the
48
letters "sg".  The speed grade is used to select a set of timing
49
parameters for the ddr model.  The following are examples of defining
50
the speed grade.
51
 
52
    simulator   command line
53
    ---------   ------------
54
    ModelSim    vlog +define+sg5 ddr.v
55
    VCS         vcs +define+sg5 ddr.v
56
    NC-Verilog  ncverilog +define+sg5 ddr.v
57
 
58
Defining the Organization:
59
--------------------------
60
The verilog compiler directive "`define" may be used to choose between
61
multiple organizations supported by the ddr model.  Valid
62
organizations include "x4", "x8", "x16", and "x32", and are listed in the
63
ddr_parameters.vh file.  The organization is used to select the amount
64
of memory and the port sizes of the ddr model.  The following are
65
examples of defining the organization.
66
 
67
    simulator   command line
68
    ---------   ------------
69
    ModelSim    vlog +define+x8 ddr.v
70
    VCS         vcs +define+x8 ddr.v
71
    NC-Verilog  ncverilog +define+x8 ddr.v
72
 
73
All combinations of speed grade and organization are considered valid
74
by the ddr model even though a Micron part may not exist for every
75
combination.
76
 
77
Allocating Memory:
78
------------------
79
An associative array has been implemented to reduce the amount of
80
static memory allocated by the DDR model.  The number of
81
entries in the associative array is controlled by the part_mem_bits
82
parameter, and is equal to 2^part_mem_bits.  For example, if the
83
part_mem_bits parameter is equal to 10, the associative array will be
84
large enough to store 1024 write data transfers to unique addresses.
85
The following are examples of setting the part_mem_bits parameter to 8.
86
 
87
    simulator   command line
88
    ---------   ------------
89
    ModelSim    vsim -Gpart_mem_bits=8 ddr
90
    VCS         vcs -pvalue+part_mem_bits=8 ddr.v
91
    NC-Verilog  ncverilog +defparam+ddr.part_mem_bits=8 ddr.v
92
 
93
It is possible to allocate memory for every address supported by the
94
ddr model by using the verilog compiler directive "`define FULL_MEM".
95
This procedure will improve simulation performance at the expense of
96
system memory.  The following are examples of allocating memory for
97
every address.
98
 
99
    Simulator   command line
100
    ---------   ------------
101
    ModelSim    vlog +define+FULL_MEM ddr.v
102
    VCS         vcs +define+FULL_MEM ddr.v
103
    NC-Verilog  ncverilog +define+FULL_MEM ddr.v
104
 
105
Defining the Number of Ranks on a DIMM:
106
--------------------------------------
107
The verilog compiler directive "`define" may be used to choose between
108
single rank and dual rank DIMM configurations.  The default is single
109
rank if nothing is defined.  Dual rank configuration can be selected by
110
defining "DUAL_RANK" when the ddr_dimm is compiled.  The following are
111
examples of defining a dual rank DIMM configuration.
112
 
113
    simulator   command line
114
    ---------   ------------
115
    ModelSim    vlog +define+DUAL_RANK ddr_dimm.v
116
    VCS         vcs +define+DUAL_RANK ddr_dimm.v
117
    NC-Verilog  ncverilog +define+DUAL_RANK ddr_dimm.v
118
 
119
 
120
Defining the Buffering for a DIMM:
121
---------------------------------
122
The verilog compiler directive "`define" may be used to choose between
123
registered and unregistered DIMM configurations.  The default is
124
unregistered if nothing is defined.  Registered configuration can be
125
selected by defining "RDIMM" when the ddr_dimm is compiled.  The
126
following are examples of defining a registered DIMM configuration.
127
 
128
    simulator   command line
129
    ---------   ------------
130
    ModelSim    vlog +define+RDIMM ddr_dimm.v
131
    VCS         vcs +define+RDIMM ddr_dimm.v
132
    NC-Verilog  ncverilog +define+RDIMM ddr_dimm.v
133
 
134
 
135
Defining the ECC for a DIMM:
136
---------------------------
137
The verilog compiler directive "`define" may be used to choose between
138
ECC and nonECC DIMM configurations.  The default is nonECC if nothing
139
is defined.  ECC configuration can be selected by defining "ECC" when
140
the ddr_dimm is compiled.  The following are examples of defining an
141
ECC DIMM configuration.
142
 
143
    simulator   command line
144
    ---------   ------------
145
    ModelSim    vlog +define+ECC ddr_dimm.v
146
    VCS         vcs +define+ECC ddr_dimm.v
147
    NC-Verilog  ncverilog +define+ECC ddr_dimm.v
148
 
149
 
150
All combinations of ranks, buffering, and ECC are considered valid by
151
the ddr_dimm model even though a Micron part may not exist for every
152
combination.

powered by: WebSVN 2.1.0

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