Arrakis is a RISC-V simulator written in OCaml, primarly designed for education.
- Fully supported RV32IM instruction set, with pseudo instructions.
- Different type of environmental calls: either UNIX syscalls (default) or Venus environmental calls emulation.
- GNU
as
assembler directives and syntax. - A debugging system using breakpoints.
- Complete documentation, covering not only Arrakis usage but also serving as a general guide on how to write RISC-V assembly code.
Since Arrakis is written in OCaml, it can be installed using opam, OCaml Package Manager:
$ opam install arrakis
Documentation about Arrakis usage is available here.
The main
branch is currently developed using OCaml 5.0
and Dune 3.10
.
For contributions, please take a look at CONTRIBUTING.md
.
Arrakis is distributed under the CeCILL 2.1 license.