Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/valoran-m/arrakis

[mirror :-] RISC-V Simulator for education
https://github.com/valoran-m/arrakis

debugger disassembler education interpreter risc-v simulator

Last synced: about 2 months ago
JSON representation

[mirror :-] RISC-V Simulator for education

Awesome Lists containing this project

README

        



Arrakis





[Arrakis](https://en.wikipedia.org/wiki/Arrakis) is a RISC-V simulator written
in OCaml, primarly designed for education.

## โœจ Features

* Fully supported RV32IM instruction set, with [pseudo instructions](https://codeberg.org/Arrakis/arrakis/wiki/RV_Pseudo-Instructions).
* Different type of environmental calls: either [UNIX syscalls](https://codeberg.org/Arrakis/arrakis/wiki/RV_Environment-call)
(default) or
[Venus environmental calls emulation](https://codeberg.org/Arrakis/arrakis/wiki/RV_Environment-call).
* GNU `as` [assembler directives](https://codeberg.org/Arrakis/arrakis/wiki/RV_Assembler-Directives)
and syntax.
* A debugging system using breakpoints.
* Complete [documentation](https://codeberg.org/Arrakis/arrakis/wiki),
covering not only Arrakis usage but also serving as a general guide on how to
write RISC-V assembly code.

## ๐Ÿ“ฆ Installation

Since Arrakis is written in OCaml, it can be installed using
[opam](https://opam.ocaml.org/), OCaml Package Manager:

`$ opam install arrakis`

## ๐Ÿ“š Documentation

Documentation about Arrakis usage is available
[here](https://codeberg.org/Arrakis/arrakis/wiki).

## ๐Ÿงช Development

The `main` branch is currently developed using `OCaml 5.0` and `Dune 3.10`.

For contributions, please take a look at [`CONTRIBUTING.md`](./CONTRIBUTING.md).

## โš–๏ธ License

Arrakis is distributed under the [CeCILL 2.1 license](./LICENSE).