Readme file updated with information about dramSys configuration
This commit is contained in:
145
README.md
145
README.md
@@ -5,8 +5,7 @@ Generic DRAM controller simulator and debug tools related to it.
|
|||||||
|
|
||||||
# Basic Setup
|
# Basic Setup
|
||||||
|
|
||||||
In a terminal window execute the commands that follow (the '$' symbolizes the
|
In a terminal window execute the commands that follow.
|
||||||
terminal prompt).
|
|
||||||
|
|
||||||
Go to your home directory.
|
Go to your home directory.
|
||||||
|
|
||||||
@@ -33,7 +32,7 @@ In case of doubts about which repository you should clone ask your supervisor.
|
|||||||
$ git clone https://<user>@git.rhrk.uni-kl.de/<user>/dram.vp.system.git
|
$ git clone https://<user>@git.rhrk.uni-kl.de/<user>/dram.vp.system.git
|
||||||
```
|
```
|
||||||
|
|
||||||
Go to the projetct directory.
|
Go to the project directory.
|
||||||
|
|
||||||
```
|
```
|
||||||
$ cd dram.vp.system
|
$ cd dram.vp.system
|
||||||
@@ -78,10 +77,130 @@ $ qmake ../dramSys/dramSys.pro
|
|||||||
$ make
|
$ make
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### DRAMSys Configuration
|
||||||
|
|
||||||
# DRAMSys Resources
|
The **dramSys** executable supports one argument which is a XML file that
|
||||||
|
contains configurable aspects of the desired simulation. If no argument is
|
||||||
|
passed through the command line a default configuration file will be loaded.
|
||||||
|
|
||||||
The simulator's configuration is done via some files. You can find such configuration files in the directory below and its sub-directories.
|
The XML code below shows a typical simulation configuration:
|
||||||
|
|
||||||
|
```
|
||||||
|
<simulation>
|
||||||
|
<simconfig>
|
||||||
|
<Debug value="1" />
|
||||||
|
<DatabaseRecording value="1" />
|
||||||
|
<PowerAnalysys value="1" />
|
||||||
|
</simconfig>
|
||||||
|
<memspecs>
|
||||||
|
<memspec src="../resources/configs/memspecs/WideIO.xml"></memspec>
|
||||||
|
</memspecs>
|
||||||
|
<addressmappings>
|
||||||
|
<addressmapping src="../resources/configs/amconfigs/am_wideio.xml"></addressmapping>
|
||||||
|
</addressmappings>
|
||||||
|
<memconfigs>
|
||||||
|
<memconfig src="../resources/configs/memconfigs/fifo.xml"/>
|
||||||
|
</memconfigs>
|
||||||
|
|
||||||
|
<tracesetups>
|
||||||
|
<tracesetup id="fifo">
|
||||||
|
<device clkMhz="200">voco2.stl</device>
|
||||||
|
</tracesetup>
|
||||||
|
</tracesetups>
|
||||||
|
</simulation>
|
||||||
|
```
|
||||||
|
|
||||||
|
Some configuration fields reference other XML files which contain more
|
||||||
|
specialized chunks of the configuration, e.g. memory specification and address
|
||||||
|
mapping.
|
||||||
|
|
||||||
|
The XML configuration files are parsed by the program and the configuration
|
||||||
|
details extracted are assigned to the correspondent attributes of the internal
|
||||||
|
configuration structure.
|
||||||
|
|
||||||
|
|
||||||
|
#### Configuration File Sections
|
||||||
|
|
||||||
|
The main configuration file is divided into self-contained sections, each of
|
||||||
|
these sections is a set of logically related configuration aspects for the
|
||||||
|
simulation.
|
||||||
|
|
||||||
|
The list below, which is not intended to be exhaustive, present the
|
||||||
|
configuration sections and possible configuration fields.
|
||||||
|
|
||||||
|
- Simulator configuration
|
||||||
|
- Database recording
|
||||||
|
- Power analysis
|
||||||
|
- Debug mode
|
||||||
|
|
||||||
|
- Memory specification
|
||||||
|
- Memory ID: JEDEC_256Mb_WIDEIO_SDR-200_128bit,
|
||||||
|
MICRON_4Gb_DDR4-2400_8bit_A, ...
|
||||||
|
- Memory type: WIDEIO_SD, DDR4, ...
|
||||||
|
|
||||||
|
- Memory Architecture Specification
|
||||||
|
- Width
|
||||||
|
- Number of Banks
|
||||||
|
- Number of Ranks
|
||||||
|
- Number of Columns
|
||||||
|
- Number of Rows
|
||||||
|
- Data Rate
|
||||||
|
- Burst Length
|
||||||
|
|
||||||
|
- Memory Timing Specification (memory dependent)
|
||||||
|
- Clock in MHz
|
||||||
|
- RC
|
||||||
|
- RCD
|
||||||
|
- RL
|
||||||
|
- RP
|
||||||
|
- RFC
|
||||||
|
- RAS
|
||||||
|
- WL
|
||||||
|
- AL
|
||||||
|
- DQSCK
|
||||||
|
- RTP
|
||||||
|
- WR
|
||||||
|
- XP
|
||||||
|
- XPDLL
|
||||||
|
- XS
|
||||||
|
- XSDLL
|
||||||
|
- REFI
|
||||||
|
- CL
|
||||||
|
- TAW
|
||||||
|
- RRD
|
||||||
|
- CCD
|
||||||
|
- WTR
|
||||||
|
- CKE
|
||||||
|
- CKESR
|
||||||
|
|
||||||
|
- Memory Power Specification
|
||||||
|
|
||||||
|
- Address Mapping
|
||||||
|
- Length: address length in bits
|
||||||
|
- Row: bits used for the row
|
||||||
|
- Bank: bits used for the bank
|
||||||
|
- Column: bits used for the column
|
||||||
|
|
||||||
|
- Memory Configuration
|
||||||
|
- Bankwise Logic
|
||||||
|
- Open Page Policy
|
||||||
|
- Maximum Number of Transactions
|
||||||
|
- Scheduler
|
||||||
|
- Capacitor size
|
||||||
|
- Powerdown Mode
|
||||||
|
- Powerdown Timeout
|
||||||
|
- Chip seed
|
||||||
|
- CSV file
|
||||||
|
- Storage Mode value
|
||||||
|
|
||||||
|
|
||||||
|
Some attributes are self-explanatory while others require some previous
|
||||||
|
knowhow of memory technologies or some knowledge of the simulator source code.
|
||||||
|
|
||||||
|
## DRAMSys Resources
|
||||||
|
|
||||||
|
Some resources of the simulator are available in the **resources** directory
|
||||||
|
its sub-directories.
|
||||||
|
|
||||||
```
|
```
|
||||||
$ cd /projects/dram.vp.system/dram/resources
|
$ cd /projects/dram.vp.system/dram/resources
|
||||||
@@ -89,9 +208,15 @@ $ cd /projects/dram.vp.system/dram/resources
|
|||||||
|
|
||||||
A short description of the content each directory follows.
|
A short description of the content each directory follows.
|
||||||
|
|
||||||
* resources
|
- **resources**
|
||||||
* configs - XML files used for configurate specific details of the simulation.
|
- **configs**: XML files used for configure specific details of the simulation.
|
||||||
* scripts - useful tools.
|
- am_configs: address mapping configuration
|
||||||
* simulations - global configs for simulations: debug mode, power analysis and database recording. Some specific configuration files are referenced in the global configuration file.
|
- memconfigs: memory configuration
|
||||||
* traces - trace files for simulations. They contain accesses to memory in certain known scenarios.
|
- memspecs: configuration related to the memory technology
|
||||||
|
- simconfigs: simulator configuration
|
||||||
|
- **scripts**: useful tools like address scrambler, trace analyser, database
|
||||||
|
creator, etc.
|
||||||
|
- **simulations**: global configuration
|
||||||
|
- **traces**: trace files for simulations. They contain accesses to memory
|
||||||
|
in certain known scenarios.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user