2017-09-25 21:17:55 +02:00
# DBT-RISE-RiscV
Am instruction set simulator based on DBT-RISE implementing the Risc-V ISA
2017-08-27 12:10:38 +02:00
2017-09-25 21:17:55 +02:00
**DBT-RISE-RiscV README**
2017-08-27 12:10:38 +02:00
2017-09-25 21:17:55 +02:00
This is work in progress, so use at your own risk. Goal is to implement an open-source ISS which can easily embedded e.g. into SystemC Virtual Prototypes. It used code generation to allow easy extension and adaptation of the used instruction.
The Risc-V ISS reaches about 20MIPS at an Intel Core i7-2600K.
2017-08-27 12:10:38 +02:00
2017-09-25 21:17:55 +02:00
The implementation is based on LLVM 4.0. Eclipse CDT 4.7 (Oxygen) is recommended as IDE.
2017-08-27 12:10:38 +02:00
2017-09-25 21:17:55 +02:00
DBT-RISE-RiscV uses libGIS (https://github.com/vsergeev/libGIS) as well as ELFIO (http://elfio.sourceforge.net/), both under MIT license
2017-08-27 12:10:38 +02:00
**What's missing**
2017-09-25 21:17:55 +02:00
* RV64I is only preliminary verified
* F & D standard extensions to be implemented
2017-08-27 12:10:38 +02:00
**Planned features**
2017-09-25 21:17:55 +02:00
* add platform peripherals to resemble E300 platform
* PLIC
2017-08-27 12:10:38 +02:00
* gpio
2017-09-25 21:17:55 +02:00
* ...
2017-08-27 12:10:38 +02:00
* and more
**Quick start**
* you need to have a decent compiler, make and cmake installed
2017-09-25 21:17:55 +02:00
* install LLVM 4.0 according to http://apt.llvm.org/
2017-08-27 12:10:38 +02:00
* download and install SystemC from http://accellera.org/downloads/standards/systemc
* optionally download and install SystemC Verification Library (SCV) from Accelera into the same location
* checkout source from git
* start an out-of-source build like so (e.g. when using LLVM 3.9 and bash)
```
2017-09-25 21:17:55 +02:00
cd DBT-RISE-RiscV
2017-08-27 12:10:38 +02:00
mkdir build
cd build
2017-09-25 21:17:55 +02:00
cmake ..
2017-08-27 12:10:38 +02:00
make
```
2017-09-25 21:17:55 +02:00
* if the SystemC installation is not found by cmake you can optionally specify the location by either setting the following environment variables pointing to the installation
2017-08-27 12:10:38 +02:00
- SYSTEMC_HOME
- SYSTEMC_PREFIX