Overview
Dromajo is a RISC-V RV64GC emulator designed for RTL co-simulation. Its public repository is chipsalliance/dromajo, and the repository metadata identifies the project language as C++.
As an emulator for the RISC-V RV64GC ISA, Dromajo implements ISA simulation in a form intended to be used alongside RTL in co-simulation flows.
ProcessorFuzz finding
The HOST 2023 ProcessorFuzz paper reports a confirmed Dromajo simulator issue, listed as Bug 7 / issue #46. The table description states that Dromajo performed Physical Memory Protection (PMP) checks and raised exceptions on violations even when no PMP entries were set.
The paper's detailed bug discussion says the RISC-V privileged specification requires the effective privilege mode for implicit page-table accesses to be supervisor mode. ProcessorFuzz observed that Dromajo accessed page tables at user-mode privilege level when executing user-mode programs. The authors further reported that Dromajo performed PMP checks in user mode when no PMP entries were set, which they characterize as violating the RISC-V privileged specification in two counts.
Verification implications
Because Dromajo is used as an ISA-level emulator in RTL co-simulation contexts, findings such as the ProcessorFuzz PMP/page-table issue show that the simulator itself can be part of the verification target: a divergence may indicate either an RTL design bug or a reference-simulator/modeling bug, depending on the failing behavior.