No public description

PiperOrigin-RevId: 666855646
Change-Id: Ida90796507b8da3a2339942af6c9d551e8483439
1 file changed
tree: 407a91792766df5ad82bc4ec4ee57f5a1f1d9f80
  1. cheriot/
  2. .bazeliskrc
  3. .bazelrc
  4. BUILD
  5. CODE_OF_CONDUCT.md
  6. CONTRIBUTING.md
  7. deps.bzl
  8. LICENSE
  9. README.md
  10. repos.bzl
  11. riscv_dep_repos.bzl
  12. riscv_repos.bzl
  13. SECURITY.md
  14. WORKSPACE
README.md

MPACT-Cheriot

MPACT-Cheriot is an implementation of an instruction set simulator for the CherIoT instruction set architecture created using the MPACT-Sim simulator tools framework and reusing code from MPACT-RiscV. Additional information and codegen tools can be found at https://cheriot.org

There are three main targets in cheriot/BUILD:

  • mpact_cheriot

    This is the standalone simulator target. It implements a simple command line assembly level debug interface that is accessed by passing the command line option ‘-i’ or ‘-interactive’.

  • renode_mpact_cheriot

    This produces a shared object, a ‘.so’ file, that can be used together with ReNode, and that is loaded from MpactCheriotCPU.cs plugin file that can be found in mpact_sim:/util/renode/renode_cs. A debug interface can be made available on a socket that you can connect to with telnet or putty. This allows you to step, set breakpoints/watchpoints, etc. while running an application on ReNode.

  • cheriot_test_rig

    This produces an executable suitable for running with TestRIG and comparing against the sail cheriot implementation. For more on that, see the TestRIG documentation.

Building

Bazel

MPACT-Sim utilizes the Bazel build system. The easiest way to install bazel is to use Bazelisk, a wrapper for Bazel that automates selecting and downloading the right version of bazel. Use brew install bazelisk on macOS, choco install bazelisk on Windows, and on linux, download the Bazelisk binary, add it to your PATH, then alias bazel to the bazelisk binary.

Java

MPACT-Sim depends on Java, so a reasonable JRE has to be installed. For macOS, run brew install java, on linux sudo apt install default-jre, and on Windows follow the appropriate instructions at java.com.

Build and Test

To build the mpact-sim libraries, use the command bazel build ...:all from the top level directory. To run the tests, use the command bazel test ...:all