Xué video camera
Sign in or create your account | Project List | Help
Xué video camera Git Source Tree
Root/
| 1 | 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 2008 Micron Technology, Inc. All rights reserved. |
| 25 | |
| 26 | Getting Started: |
| 27 | ---------------- |
| 28 | Unzip the included files to a folder. |
| 29 | Compile mobile_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 | mobile_ddr.v --mobile ddr model |
| 36 | mobile_ddr_mcp.v --structural wrapper for mobile_ddr multi-chip package model |
| 37 | 128Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model |
| 38 | 256Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model |
| 39 | 512Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model |
| 40 | 1024Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model |
| 41 | 2048Mb_mobile_ddr_parameters.vh --File that contains all parameters used by the model |
| 42 | readme.txt --This file |
| 43 | tb.v --Test bench |
| 44 | tb.do --File that compiles and runs the above files |
| 45 | |
| 46 | Defining the Density (part size): |
| 47 | ------------------------- |
| 48 | The verilog compiler directive "`define" may be used to choose between on of the |
| 49 | densities supported by the mobile ddr model. Allowable densities are listed in |
| 50 | the *.vh file. The density is used to select a set of bank, row, column, and timing |
| 51 | parameters for the mobile ddr model. The following are examples of defining |
| 52 | the density. |
| 53 | |
| 54 | simulator command line |
| 55 | --------- ------------ |
| 56 | ModelSim vlog +define+den512Mb mobile_ddr.v |
| 57 | VCS vcs +define+den512Mb mobile_ddr.v |
| 58 | NC-Verilog ncverilog +define+den512Mb mobile_ddr.v |
| 59 | |
| 60 | |
| 61 | Defining the Speed Grade: |
| 62 | ------------------------- |
| 63 | The verilog compiler directive "`define" may be used to choose between |
| 64 | multiple speed grades supported by the mobile ddr model. Allowable speed |
| 65 | grades are listed in the mobile_ddr_parameters.vh file and begin with the |
| 66 | letters "sg". The speed grade is used to select a set of timing |
| 67 | parameters for the mobile ddr model. The following are examples of defining |
| 68 | the speed grade. |
| 69 | |
| 70 | simulator command line |
| 71 | --------- ------------ |
| 72 | ModelSim vlog +define+sg75 mobile_ddr.v |
| 73 | VCS vcs +define+sg75 mobile_ddr.v |
| 74 | NC-Verilog ncverilog +define+sg75 mobile_ddr.v |
| 75 | |
| 76 | |
| 77 | Defining the Organization: |
| 78 | -------------------------- |
| 79 | The verilog compiler directive "`define" may be used to choose between |
| 80 | multiple organizations supported by the mobile ddr model. Valid |
| 81 | organizations include "x16" and "x32", and are listed in the |
| 82 | mobile_ddr_parameters.vh file. The organization is used to select the amount |
| 83 | of memory and the port sizes of the mobile ddr model. The following are |
| 84 | examples of defining the organization. |
| 85 | |
| 86 | vlog +define+x16 mobile_ddr.v |
| 87 | simulator command line |
| 88 | --------- ------------ |
| 89 | ModelSim vlog +define+x16 mobile_ddr.v |
| 90 | VCS vcs +define+x16 mobile_ddr.v |
| 91 | NC-Verilog ncverilog +define+x16 mobile_ddr.v |
| 92 | |
| 93 | All combinations of speed grade and organization are considered valid |
| 94 | by the mobile ddr model even though a Micron part may not exist for every |
| 95 | combination. |
| 96 | |
| 97 | Allocating Memory: |
| 98 | ------------------ |
| 99 | An associative array has been implemented to reduce the amount of |
| 100 | static memory allocated by the mobile ddr model. The number of |
| 101 | entries in the associative array is controlled by the part_mem_bits |
| 102 | parameter, and is equal to 2^part_mem_bits. For example, if the |
| 103 | part_mem_bits parameter is equal to 10, the associative array will be |
| 104 | large enough to store 1024 write data transfers to unique addresses. |
| 105 | The following are examples of setting the MEM_BITS parameter to 8. |
| 106 | |
| 107 | simulator command line |
| 108 | --------- ------------ |
| 109 | ModelSim vsim -Gpart_mem_bits=8 mobile_ddr |
| 110 | VCS vcs -pvalue+part_mem_bits=8 mobile_ddr.v |
| 111 | NC-Verilog ncverilog +defparam+mobile_ddr.part_mem_bits=8 mobile_ddr.v |
| 112 | |
| 113 | It is possible to allocate memory for every address supported by the |
| 114 | mobile ddr model by using the verilog compiler directive "`define FULL_MEM". |
| 115 | This procedure will improve simulation performance at the expense of |
| 116 | system memory. The following are examples of allocating memory for |
| 117 | every address. |
| 118 | |
| 119 | Simulator command line |
| 120 | --------- ------------ |
| 121 | ModelSim vlog +define+FULL_MEM mobile_ddr.v |
| 122 | VCS vcs +define+FULL_MEM mobile_ddr.v |
| 123 | NC-Verilog ncverilog +define+FULL_MEM mobile_ddr.v |
| 124 | |
| 125 | |
| 126 | Reduced Page Mode: |
| 127 | ------------------ |
| 128 | Mobile DDR 256Mb, 512Mb, and 1024Mb part may be built with the reduced page size |
| 129 | architecture. This part is accessed with the +define+RP designator. RP |
| 130 | parts have one extra row bit and one less column bit effectively cutting |
| 131 | the page size in half but doubling the number of rows keeping total part |
| 132 | size the same. |
| 133 | |
| 134 | Part Size Valid RP Designators |
| 135 | --------- -------------------- |
| 136 | 256Mb +define+RP |
| 137 | 512Mb +define+RP |
| 138 | 1024Mb +define+RP |
| 139 | |
| 140 | Simulator command line |
| 141 | --------- ------------ |
| 142 | ModelSim vlog +define+RP mobile_ddr.v |
| 143 | VCS vcs +define+RP mobile_ddr.v |
| 144 | NC-Verilog ncverilog +define+RP mobile_ddr.v |
| 145 | |
| 146 | Multi-Chip Package Model: |
| 147 | ------------------------- |
| 148 | The 1024Mb model can be supported in a Multi Chip Package, that allows |
| 149 | multiple die models in one structural package. The number of ranks and |
| 150 | chip selects of the mcp can be configured by using the `DUAL_RANK define |
| 151 | on the simulator call line. The currently supported configurations are |
| 152 | listed below: |
| 153 | |
| 154 | Package Configuration Valid MCP Designator |
| 155 | --------------------- -------------------- |
| 156 | 2 Chip Selects, 2 Die +define+DUAL_RANK |
| 157 | 2 Chip Selects, 1 Die (default) |
| 158 | |
| 159 | The single rank mcp is the default. In order to simulate the DUAL_RANK |
| 160 | model, the define needs to be added: |
| 161 | |
| 162 | Simulator command line |
| 163 | --------- ------------ |
| 164 | ModelSim vlog +define+DUAL_RANK mobile_ddr.v mobile_ddr_mcp.v |
| 165 | VCS vcs +define+DUAL_RANK mobile_ddr.v mobile_ddr_mcp.v |
| 166 | NC-Verilog ncverilog +define+DUAL_RANK mobile_ddr.v mobile_ddr_mcp.v |
| 167 | |
| 168 |
Branches:
master
