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