Go to file
Eyck Jentzsch fede5b2af1 Changed SystemC model to model a platform in a system. Added dedicated
UART Terminal connected via tlm_signals
2018-07-12 15:27:36 +02:00
.settings Adapted generated code to support translation block linking 2018-05-15 18:50:11 +02:00
cmake Adapted plugin behavior obeying availabiltiy of instrumentation 2018-04-06 02:45:11 +02:00
dbt-core@34abe11e78 Updated DBT-RISE library 2018-07-11 17:44:42 +02:00
etc Adapted generated code to support translation block linking 2018-05-15 18:50:11 +02:00
external Updated CMake settings 2018-03-28 10:29:45 +02:00
html Fixed transaction linking and gpio visualization 2017-11-27 00:15:20 +01:00
riscv Changed SystemC model to model a platform in a system. Added dedicated 2018-07-12 15:27:36 +02:00
riscv.sc Changed SystemC model to model a platform in a system. Added dedicated 2018-07-12 15:27:36 +02:00
sc-components@019a04132a Changed SystemC model to model a platform in a system. Added dedicated 2018-07-12 15:27:36 +02:00
softfloat Added RV32D extension 2018-04-24 15:33:21 +02:00
.clang-format Added clang-format formatting 2017-09-25 22:29:21 +02:00
.cproject Adapted generated code to support translation block linking 2018-05-15 18:50:11 +02:00
.gitignore Moved to cmake4eclipse builder 2018-04-06 01:44:07 +02:00
.gitmodules Fixed submodules spec 2017-09-25 21:24:01 +02:00
.project Updated Eclipse project name 2018-04-09 20:05:18 +02:00
CMakeLists.txt Fixed missing check for unset CMAKE_BUILD_TYPE 2018-07-10 18:25:14 +02:00
LICENSE Initial commit 2017-08-27 13:04:48 +02:00
README.md Added use of CCI and support of LLVM 5.0 2018-03-27 19:49:11 +02:00
build.sh Moved to cmake4eclipse builder 2018-04-06 01:44:07 +02:00
conanfile.txt Updated SystemC CCI to 1.0 2018-07-11 19:19:41 +02:00
cycles.txt Made plugin call configurable 2018-04-24 23:12:07 +02:00
simple-system.json Changed SystemC model to model a platform in a system. Added dedicated 2018-07-12 15:27:36 +02:00

README.md

DBT-RISE-RISCV

Am instruction set simulator based on DBT-RISE implementing the RISC-V ISA

DBT-RISE-RISCV README

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 30MIPS running on Intel Core i7-2600K.

The implementation is based on LLVM 4.0. Eclipse CDT 4.7 (Oxygen) is recommended as IDE.

DBT-RISE-RISCV uses libGIS (https://github.com/vsergeev/libGIS) as well as ELFIO (http://elfio.sourceforge.net/), both under MIT license

What's missing

  • F & D standard extensions for 32bit to be implemented
  • MACF &D standard extensions for 64bit to be implemented and verified

Planned features

  • add platform peripherals beyond programmers view to resemble E300 platform
    • QSPI
    • PWM
    • ...
  • and more

Quick start

    pip install conan
  • setup conan to use the minres repo:
    conan remote add minres https://api.bintray.com/conan/minres/conan-repo
    conan remote add bincrafters https://api.bintray.com/conan/bincrafters/public-conan
  • checkout source from git
  • start an out-of-source build:
    cd DBT-RISE-RiscV
    mkdir build
    cd build
    cmake ..
    cmake --build .
  • if you encounter issues when linking wrt. c++11 symbols you might have run into GCC ABI incompatibility introduced from GCC 5.0 onwards. You can fix this by adding '-s compiler.libcxx=libstdc++11' to the conan call or changing compiler.libcxx to
compiler.libcxx=libstdc++11

in $HOME/.conan/profiles/default