mirror of
git://projects.qi-hardware.com/xue.git
synced 2025-04-21 12:27:27 +03:00
unzipped 2 files
This commit is contained in:
167
sim/verilog/micron_mobile_ddr/readme.txt
Normal file
167
sim/verilog/micron_mobile_ddr/readme.txt
Normal file
@@ -0,0 +1,167 @@
|
||||
Disclaimer of Warranty:
|
||||
-----------------------
|
||||
This software code and all associated documentation, comments or other
|
||||
information (collectively "Software") is provided "AS IS" without
|
||||
warranty of any kind. MICRON TECHNOLOGY, INC. ("MTI") EXPRESSLY
|
||||
DISCLAIMS ALL WARRANTIES EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
|
||||
TO, NONINFRINGEMENT OF THIRD PARTY RIGHTS, AND ANY IMPLIED WARRANTIES
|
||||
OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE. MTI DOES NOT
|
||||
WARRANT THAT THE SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT THE
|
||||
OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE.
|
||||
FURTHERMORE, MTI DOES NOT MAKE ANY REPRESENTATIONS REGARDING THE USE OR
|
||||
THE RESULTS OF THE USE OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS,
|
||||
ACCURACY, RELIABILITY, OR OTHERWISE. THE ENTIRE RISK ARISING OUT OF USE
|
||||
OR PERFORMANCE OF THE SOFTWARE REMAINS WITH YOU. IN NO EVENT SHALL MTI,
|
||||
ITS AFFILIATED COMPANIES OR THEIR SUPPLIERS BE LIABLE FOR ANY DIRECT,
|
||||
INDIRECT, CONSEQUENTIAL, INCIDENTAL, OR SPECIAL DAMAGES (INCLUDING,
|
||||
WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION,
|
||||
OR LOSS OF INFORMATION) ARISING OUT OF YOUR USE OF OR INABILITY TO USE
|
||||
THE SOFTWARE, EVEN IF MTI HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES. Because some jurisdictions prohibit the exclusion or
|
||||
limitation of liability for consequential or incidental damages, the
|
||||
above limitation may not apply to you.
|
||||
|
||||
Copyright 2008 Micron Technology, Inc. All rights reserved.
|
||||
|
||||
Getting Started:
|
||||
----------------
|
||||
Unzip the included files to a folder.
|
||||
Compile mobile_ddr.v and tb.v using a verilog simulator.
|
||||
Simulate the top level test bench tb.
|
||||
Or, if you are using the ModelSim simulator, type "do tb.do" at the prompt.
|
||||
|
||||
File Descriptions:
|
||||
------------------
|
||||
mobile_ddr.v --mobile ddr model
|
||||
mobile_ddr_mcp.v --structural wrapper for mobile_ddr multi-chip package model
|
||||
128Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model
|
||||
256Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model
|
||||
512Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model
|
||||
1024Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model
|
||||
2048Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model
|
||||
readme.txt --This file
|
||||
tb.v --Test bench
|
||||
tb.do --File that compiles and runs the above files
|
||||
|
||||
Defining the Density (part size):
|
||||
-------------------------
|
||||
The verilog compiler directive "`define" may be used to choose between on of the
|
||||
densities supported by the mobile ddr model. Allowable densities are listed in
|
||||
the *.vh file. The density is used to select a set of bank, row, column, and timing
|
||||
parameters for the mobile ddr model. The following are examples of defining
|
||||
the density.
|
||||
|
||||
simulator command line
|
||||
--------- ------------
|
||||
ModelSim vlog +define+den512Mb mobile_ddr.v
|
||||
VCS vcs +define+den512Mb mobile_ddr.v
|
||||
NC-Verilog ncverilog +define+den512Mb mobile_ddr.v
|
||||
|
||||
|
||||
Defining the Speed Grade:
|
||||
-------------------------
|
||||
The verilog compiler directive "`define" may be used to choose between
|
||||
multiple speed grades supported by the mobile ddr model. Allowable speed
|
||||
grades are listed in the mobile_ddr_parameters.vh file and begin with the
|
||||
letters "sg". The speed grade is used to select a set of timing
|
||||
parameters for the mobile ddr model. The following are examples of defining
|
||||
the speed grade.
|
||||
|
||||
simulator command line
|
||||
--------- ------------
|
||||
ModelSim vlog +define+sg75 mobile_ddr.v
|
||||
VCS vcs +define+sg75 mobile_ddr.v
|
||||
NC-Verilog ncverilog +define+sg75 mobile_ddr.v
|
||||
|
||||
|
||||
Defining the Organization:
|
||||
--------------------------
|
||||
The verilog compiler directive "`define" may be used to choose between
|
||||
multiple organizations supported by the mobile ddr model. Valid
|
||||
organizations include "x16" and "x32", and are listed in the
|
||||
mobile_ddr_parameters.vh file. The organization is used to select the amount
|
||||
of memory and the port sizes of the mobile ddr model. The following are
|
||||
examples of defining the organization.
|
||||
|
||||
vlog +define+x16 mobile_ddr.v
|
||||
simulator command line
|
||||
--------- ------------
|
||||
ModelSim vlog +define+x16 mobile_ddr.v
|
||||
VCS vcs +define+x16 mobile_ddr.v
|
||||
NC-Verilog ncverilog +define+x16 mobile_ddr.v
|
||||
|
||||
All combinations of speed grade and organization are considered valid
|
||||
by the mobile ddr model even though a Micron part may not exist for every
|
||||
combination.
|
||||
|
||||
Allocating Memory:
|
||||
------------------
|
||||
An associative array has been implemented to reduce the amount of
|
||||
static memory allocated by the mobile ddr model. The number of
|
||||
entries in the associative array is controlled by the part_mem_bits
|
||||
parameter, and is equal to 2^part_mem_bits. For example, if the
|
||||
part_mem_bits parameter is equal to 10, the associative array will be
|
||||
large enough to store 1024 write data transfers to unique addresses.
|
||||
The following are examples of setting the MEM_BITS parameter to 8.
|
||||
|
||||
simulator command line
|
||||
--------- ------------
|
||||
ModelSim vsim -Gpart_mem_bits=8 mobile_ddr
|
||||
VCS vcs -pvalue+part_mem_bits=8 mobile_ddr.v
|
||||
NC-Verilog ncverilog +defparam+mobile_ddr.part_mem_bits=8 mobile_ddr.v
|
||||
|
||||
It is possible to allocate memory for every address supported by the
|
||||
mobile ddr model by using the verilog compiler directive "`define FULL_MEM".
|
||||
This procedure will improve simulation performance at the expense of
|
||||
system memory. The following are examples of allocating memory for
|
||||
every address.
|
||||
|
||||
Simulator command line
|
||||
--------- ------------
|
||||
ModelSim vlog +define+FULL_MEM mobile_ddr.v
|
||||
VCS vcs +define+FULL_MEM mobile_ddr.v
|
||||
NC-Verilog ncverilog +define+FULL_MEM mobile_ddr.v
|
||||
|
||||
|
||||
Reduced Page Mode:
|
||||
------------------
|
||||
Mobile DDR 256Mb, 512Mb, and 1024Mb part may be built with the reduced page size
|
||||
architecture. This part is accessed with the +define+RP designator. RP
|
||||
parts have one extra row bit and one less column bit effectively cutting
|
||||
the page size in half but doubling the number of rows keeping total part
|
||||
size the same.
|
||||
|
||||
Part Size Valid RP Designators
|
||||
--------- --------------------
|
||||
256Mb +define+RP
|
||||
512Mb +define+RP
|
||||
1024Mb +define+RP
|
||||
|
||||
Simulator command line
|
||||
--------- ------------
|
||||
ModelSim vlog +define+RP mobile_ddr.v
|
||||
VCS vcs +define+RP mobile_ddr.v
|
||||
NC-Verilog ncverilog +define+RP mobile_ddr.v
|
||||
|
||||
Multi-Chip Package Model:
|
||||
-------------------------
|
||||
The 1024Mb model can be supported in a Multi Chip Package, that allows
|
||||
multiple die models in one structural package. The number of ranks and
|
||||
chip selects of the mcp can be configured by using the `DUAL_RANK define
|
||||
on the simulator call line. The currently supported configurations are
|
||||
listed below:
|
||||
|
||||
Package Configuration Valid MCP Designator
|
||||
--------------------- --------------------
|
||||
2 Chip Selects, 2 Die +define+DUAL_RANK
|
||||
2 Chip Selects, 1 Die (default)
|
||||
|
||||
The single rank mcp is the default. In order to simulate the DUAL_RANK
|
||||
model, the define needs to be added:
|
||||
|
||||
Simulator command line
|
||||
--------- ------------
|
||||
ModelSim vlog +define+DUAL_RANK mobile_ddr.v mobile_ddr_mcp.v
|
||||
VCS vcs +define+DUAL_RANK mobile_ddr.v mobile_ddr_mcp.v
|
||||
NC-Verilog ncverilog +define+DUAL_RANK mobile_ddr.v mobile_ddr_mcp.v
|
||||
|
||||
Reference in New Issue
Block a user