RISC-V 汇编模拟器

RISC-V assembly simulator

我正在尝试学习 RISC-V ISA。有没有办法像在 MIPS ISA 的 MARS 中一样模拟 RISC-V 汇编代码?

听起来您正在寻找具有集成前端的 instruction-level RISC-V 模拟器,允许您交互式编辑机器代码以及查看和操作 CPU状态。我不知道 RISC-V 的任何工具都像 MARS 一样紧密集成,但您可以通过组合一些现有的 RISC-V 工具来实现近似,即:

我有幸使用 QEMU + gdb 或 gdbgui 如下:

$ qemu-system-riscv32 -S -s -kernel /path/to/myprog.elf -nographic

然后在另一个控制台中:

$ riscv64-unknown-elf-gdb /path/to/myprog.elf
(gdb) target remote localhost:1234
or
$ gdbgui -r -n -g /path/to/riscv64-unknown-elf-gdb /path/to/myprog.elf

注意:我注意到在 riscv 工具链下构建的 gdb 默认不包含对 tui 模式的支持。

注意 2:QEMU 实际上不仅仅是一个 ISA 模拟器——它模拟各种特定的 RISC-V 目标板及其附属外围设备。

如果你想要一个更高级别的图形界面工具, 你可以看看我的大学用来教授 riscv 的小工具。 它带有一个内置的汇编器和模拟器,它显示所有寄存器的内容、内存和每个周期的最小 riscv 管道的状态。

不幸的是,该项目已经很老了,github-repo 并不是真正最新的,但它仍然是开始使用 riscv 的一种便捷方式。

https://github.com/unia-sik/riscVivid

虽然使用 Spike 和 RISC-V GNU 工具链确实有效,但它远非学习 ISA 的理想选择。

我实际上花了一个夏天为 RISC-V 移植 MARS,因为没有适合初学者使用的好选择。 RARS 应该正是您要找的。

出于各种原因,一些内容已从 MARS 中删除,但我会密切关注回购协议,因此如果缺少改进,请提出问题。

Ripes:图形化的 5 级 RISC-V 流水线模拟器和汇编编辑器

rv8:用于 x86-64 的 RISC-V 模拟器

risc-v-simulator:RISC-V assembler/simulator 带 GUI

RiscVAssemblerSuite:RISC V 汇编器、反汇编器和仿真环境

TinyEMU : TinyEMU 是 RISC-V 和 x86 架构的系统模拟器

我使用 QEMU 进行仿真和秒杀,这是一个很好的链来测试几乎所有情况。 QEMU 也可以 运行 Debian.

这是我们的计算机组织 class BRISC-V Simulator

引入的一个很棒的 RISC-V 模拟器