A Qt-based RISC-V CPU simulator for teaching computer architecture, with a WebAssembly build that runs in the browser.
mortbopet/Ripes
A visual RISC-V computer architecture simulator and assembly editor for studying how processors execute code.
- Stars
- 3,474
- Forks
- 388
- Open issues
- 88
- Last commit
- 4 days ago
What is it?
Ripes is a graphical simulator for the RISC-V instruction set architecture, paired with an assembly code editor. Users write or load assembly, compile C code, and step through execution while watching the internal state of the simulated processor.
The simulator covers multiple microarchitectures based on the RV32IMC and RV64IMC instruction sets, and lets users configure cache designs to see how they affect performance. It also shows how a processor interacts with memory-mapped I/O, making it useful for understanding the link between software and hardware.
Ripes is written in C++ with Qt and can be built with CMake. Prebuilt binaries are available for Linux, Windows and macOS, and a version runs in the browser through WebAssembly.
Key features
- 01Visual simulation of RISC-V processor execution, including pipelined microarchitectures.
- 02Integrated assembly editor with C compilation support.
- 03Configurable cache models for observing performance effects.
- 04Memory-mapped I/O support for studying processor-device interaction.
- 05Runs on Linux, Windows and macOS, and in the browser via WebAssembly.
Use cases
- Teaching computer architecture and processor design courses.
- Exploring how C and assembly code map to machine instructions.
- Comparing how cache configurations affect program behavior.
- Learning how memory-mapped I/O works at the processor level.
Quick start
- 1
Download the AppImage or Windows/Mac build from the Releases page
- 2
On Linux, make the AppImage executable
chmod a+x <AppImage file> - 3
Run the file to start Ripes
Things to know
- Building from source requires Qt 6.5.0 or newer with Qt Charts, plus CMake.
- Windows users may need the Microsoft C++ runtime installed separately.
In collections
Topics
FAQ
- What is Ripes?
- A visual RISC-V computer architecture simulator and assembly editor for studying how processors execute code. Ripes is a graphical simulator for the RISC-V instruction set architecture, paired with an assembly code editor. Users write or load assembly, compile C code, and step through execution while watching the internal state of the simulated processor.
- Is Ripes free to use? What license does it have?
- Ripes is open source under the MIT license. Check the license terms before using it in commercial products.
- Is Ripes still maintained?
- Actively maintained. The last commit to Ripes was on Nov 3, 2026.
- What can I use Ripes for?
- Teaching computer architecture and processor design courses. Exploring how C and assembly code map to machine instructions. Comparing how cache configurations affect program behavior. Learning how memory-mapped I/O works at the processor level.
- How do I install Ripes?
- Download the AppImage or Windows/Mac build from the Releases page On Linux, make the AppImage executable: chmod a+x <AppImage file> Run the file to start Ripes
- Where can I get Ripes?
- The source code and installation instructions are on GitHub: https://github.com/mortbopet/Ripes
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A lightweight, cross-platform C/C++ and GNU Assembly IDE built on Qt, successor to Dev-C++ 7.
An electronic circuit simulator that runs in the browser, letting you build and simulate analog and digital circuits interactively.
An interactive browser guide to the ESP32-S3 with 32 labs, live simulators, a pinout, a firmware code reader and a datasheet section.
A browser-based robotics simulator that runs Ev3dev-style code for educational robots, so you can practice without owning a robot.
A teaching operating system with about 2,000 lines of C and RISC-V assembly, designed so students can read all of its code.