RISC-V装配模拟器

hyp*_*003 3 mips risc riscv

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

sai*_*009 9

Ripes:图形 5 级 RISC-V 流水线模拟器和装配编辑器

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

risc-v-simulator : 带有 GUI 的 RISC-V 汇编器/模拟器

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

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


小智 7

听起来您正在寻找带有集成前端的指令级RISC-V仿真器,它允许您以交互方式编辑机器代码以及查看和操作CPU状态.我不知道任何与MARS紧密集成的RISC-V工具,但您可以通过组合一些现有的RISC-V工具来实现近似,即:

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

$ qemu-system-riscv32 -S -s -kernel /path/to/myprog.elf -nographic
Run Code Online (Sandbox Code Playgroud)

然后在另一个控制台:

$ 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
Run Code Online (Sandbox Code Playgroud)

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

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


小智 6

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

我实际上花了一个夏天的时间来为 RISC-V 移植 MARS,因为对于初学者来说没有一个好的选择。RARS应该正是您正在寻找的。

由于各种原因,从 MARS 中删除了一些内容,但我确实密切关注 repo,因此如果缺少改进,请提出问题。