Doc improved

This commit is contained in:
Éder F. Zulian
2019-02-18 11:07:08 +01:00
parent f2520db93b
commit 3b98741605
2 changed files with 57 additions and 26 deletions

View File

@@ -28,10 +28,9 @@ $ git config --global color.ui auto
```
Now clone the repository into a local folder on your computer.
Replace the occurrences of the word **user** with your own user name.
```bash
$ git clone --recursive https://user@git.eit.uni-kl.de:ems/astdm/dram.sys.git
$ git clone --recursive https://git.eit.uni-kl.de/ems/astdm/dram.sys.git
```
The *--recursive* flag tells git to initialize all submodules within the
@@ -43,7 +42,7 @@ Now you can implement, test, commit and push features into a **branch**.
When you consider your work stable enough to be merged into the master branch
it is time to open a **merge request** using the web interface.
Your changes will be reviewed and finally integrated to the master branch.
Your changes will be reviewed and finally integrated into the master branch.
After cloning go to the project directory.
@@ -53,26 +52,34 @@ $ cd dram.sys
### Dependencies
Make sure you have properly installed in your system the required libraries
and programs.
Make sure you have properly installed all the required libraries and
tools in your system.
- **General dependencies**
You can use [utils/install_deb.sh](./utils/install_deb.sh) in order to install dependencies. First
read and understand the script then execute it. Type your password if
required.
You may want to have a look on the convenience scripts that are located in the
[utils](./utils) folder.
```bash
$ bash install_deb.sh
$ cd utils
$ ls
```
- **SystemC 2.3.1 and TLM 2.0**
You can use [utils/getsysc.sh](./utils/getsysc.sh) to download and install SystemC 2.3.1
and TLM 2.0. First read and understand the script then execute it.
You can use [utils/install_deb.sh](./utils/install_deb.sh) in order to install
dependencies. First read and understand the script, then execute it. Type your
password if required.
```bash
$ bash getsysc.sh
$ ./install_deb.sh
```
- **SystemC 2.3.1a and TLM-2.0**
You can use [utils/getsysc.sh](./utils/getsysc.sh) to download and install SystemC 2.3.1a
and TLM-2.0. First read and understand the script then execute it.
```bash
$ ./getsysc.sh
```
Alternatively, the sources can be downloaded from
@@ -85,9 +92,24 @@ You can use [utils/getqwt.sh](./utils/getqwt.sh) in order to install qwt-6.1. Fi
and understand the script then execute it.
```bash
$ bash getqwt.sh
$ ./getqwt.sh
$ cd ~/qwt-6.1
$ sudo make install
```
After that add environment variables to your ~/.bashrc.
```bash
export LIBQWT_HOME=${HOME}/qwt-6.1/lib
export LIBQWT_HEADERS=${HOME}/qwt-6.1/src
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LIBQWT_HOME}
```
Remember to verify that the library and header files are located in paths you
specify. You can use the **ls** command to accomplish that.
```bash
$ ls ${HOME}/qwt-6.1/lib
$ ls ${HOME}/qwt-6.1/src
```
Further information about Qwt can be found [here](http://qwt.sourceforge.net/).
@@ -104,17 +126,17 @@ environment variables accordingly**.
# SystemC home and target architecture
export SYSTEMC_HOME=$HOME/systemc-2.3.1a
export SYSTEMC_TARGET_ARCH=linux64
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${SYSTEMC_HOME}/lib-$SYSTEMC_TARGET_ARCH
# DRAMSys libraries and headers
export LIBPYTHON_VERSION="3.5m"
export PYTHON_HOME=/usr/lib/python3.5
export PYTHON_HEADERS=/usr/include/python3.5m
export LIBQWT_HOME=/usr/local/qwt-6.1.4-svn/lib
export LIBQWT_HEADERS=/usr/local/qwt-6.1.4-svn/include
export LIBQWT_HOME=${HOME}/qwt-6.1/lib
export LIBQWT_HEADERS=${HOME}/qwt-6.1/src
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LIBQWT_HOME}
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}$LIBQWT_HOME
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${SYSTEMC_HOME}/lib-$SYSTEMC_TARGET_ARCH
```
### Coding Style
@@ -1828,7 +1850,6 @@ libraries.
export SYSTEMC_HOME=$HOME/systemc-2.3.1a
# SystemC target architecture
export SYSTEMC_TARGET_ARCH=linux64
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${SYSTEMC_HOME}/lib-linux64
# Qwt lib
export LIBQWT_HOME=$HOME/qwt-6.1/lib
@@ -1862,6 +1883,16 @@ using nodes of the Elwetritsch cluster. Of course, one can create his/her own
job scripts.
### Coverage Check
Coverage check is enabled by default and can be disabled with an environment
variable.
```bash
export DRAMSYS_DISABLE_COVERAGE_CHECK=1
```
## References
[1] TLM Modelling of 3D Stacked Wide I/O DRAM Subsystems, A Virtual Platform for Memory Controller Design Space Exploration

View File

@@ -35,11 +35,11 @@
dest=$HOME/qwt-6.1
svn checkout svn://svn.code.sf.net/p/qwt/code/branches/qwt-6.1 $dest
cd $dest
if [[ $(hostname -s) =~ ^head[0-9]+$ ]] || [[ $(hostname -s) =~ ^node[0-9]+$ ]]; then
# Elwetritsch cluster - heads or nodes
module load qt/5.5
else
qmake qwt.pro
svn up -r 2481
make
# Add env. variables to ~/.bashrc
echo "export LIBQWT_HOME=/usr/local/qwt-6.1.4-svn/lib" >> ~/.bashrc
echo "export LIBQWT_HEADERS=/usr/local/qwt-6.1.4-svn/include" >> ~/.bashrc
echo "Now go to $dest and execute \"sudo make install\"."
echo "Done."