An RV32IM processor written in Hardcaml.
The project is organized as follows:
hard— All things related to the hardware implementationarty— Build tooling and top module for the Arty A7-100T FPGAcpu— Hardware agnostic CPU implementationbin— Simulation, verification, and circuit compilation toolinglib— CPU implementation
soft— Software to use the CPUbootloader— Shared library for the bootloaderoffchip— Utilities for interacting with the CPU from the host operating systembootloader_client— Bootloader command interface
onchip— Code meant to run on the CPUbootloader_server— The bootloader server that runs on the CPU and waits for commands from the host- Various test programs that can be loaded by the bootloader to run on the CPU
slib— A standard library for programs running on the CPU