Spike
ToolSpike is a RISC-V instruction-set architecture simulator identified in the evidence as the official RISC-V reference simulator. A coverage-guided fuzzing study for instruction-set simulator verification evaluated Spike alongside other public RISC-V ISSs and reported that the fuzzing run found one Spike issue, labeled S1.
First seen 5/25/2026
Last seen 6/9/2026
Evidence 39 chunks
Wiki v6
WIKI
Spike
Spike is a RISC-V instruction-set architecture (ISA) simulator. The evidence identifies it as the “Spike RISC-V ISA simulator” and also refers to it as the official RISC-V reference simulator. Two cited repository locations appear in the provided sources: https://github.com/riscv/riscv-isa-sim in the ISS-fuzzing paper and https://github.com/riscv-software-src/riscv-isa-sim in a later bibliography.
Role in ISS verification
NEIGHBORHOOD
5 nodes · 7 edgesgraph · spike · depth=1
RELATIONSHIPS
33 connectionsTestRIG added Direct Instruction Injection to Spike emulator to use it as a reference implementation.
Spike acts as the reference model in the verification environment, predicting expected instruction results.
The paper evaluates Spike as a reference ISS and finds an error in it.
The paper describes using Spike as the reference model for co-simulation.
MorFuzz uses the spike ISA simulator as the reference model for co-simulation.
Spike is the official RISC-V ISA reference simulator implementing the RISC-V ISA.
Spike is a high-performance RISC-V emulator.
Minimally Invasive Generation of RISC-V Instruction Set Simulators from Formal ISA Models ← evaluates 100% 2e
The paper evaluates the approach using Spike as one of the target simulators
The UVM environment uses Spike as its reference model for co-simulation.
Spike is used as the reference ISA simulator for co-simulation
RISCV-DV tests are executed on Spike simulator for trace measurement.
EAVS uses Spike as its ISS/golden model component.
Spike is an instruction set simulator implementing the RISC-V ISA.
The UVM environment uses Spike as a reference model for co-simulation of vector instructions.
Spike was adapted to support the RISC-V Vector extension version 0.7.1 specification.
Spike has been extended with the Direct Instruction Injection interface for use with TestRIG.
NEMU is described as similar to Spike, both being instruction set simulators.
Spike implements the Instruction Set Simulator concept for RISC-V.
Spike acts as the golden model reference for verifying RISC-V core execution.
Spike is officially released by the RISC-V International Foundation.
Ibex Core verification uses Spike as a golden ISS reference model for co-simulation.
Spike is the RISC-V ISA simulator that implements the RISC-V ISA for simulation purposes.
Spike's handling of unordered floating-point reductions required special workarounds.
Co-simulation in RISCV-DV uses spike as one of the supported ISS tools.
Spike was extended with the Direct Instruction Injection interface to support TestRIG verification.
The synchronizable co-simulation uses Spike as the reference model.
Spike is a RISC-V ISA simulator implementing the RISC-V ISA.
The unordered floating-point reduction reference model is used instead of Spike for non-deterministic reduction results.
Spike is adapted to follow the RISC-V vector specification 0.7.1
The scoreboard directly takes information from Spike as reference
The paper incorporates Spike as a RISC-V ISS for co-simulation validation.
Spike is a RISC-V ISA simulator used for instruction set simulation.
Spike has a decoder error that was found by the fuzzer.
CITATIONS
6 sources6 citations — click to expand
[1] Spike is identified as a RISC-V ISA simulator and as the official RISC-V reference simulator. Verifying Instruction Set Simulators using Coverage-guided Fuzzing
[2] The provided sources cite Spike repository URLs at https://github.com/riscv/riscv-isa-sim and https://github.com/riscv-software-src/riscv-isa-sim. Bibliography containing Spike repository citation
[3] The coverage-guided fuzzing paper evaluated Spike as one of three publicly available RISC-V ISSs and implemented its approach on top of LLVM libFuzzer with a functional coverage metric and ISS-specific mutation procedure. Verifying Instruction Set Simulators using Coverage-guided Fuzzing
[4] The paper reports finding new errors in every considered ISS, including one error in Spike. Verifying Instruction Set Simulators using Coverage-guided Fuzzing
[5] In the evaluation table, coverage-guided fuzzing found Spike issue S1, while the RISC-V ISA tests and RISC-V Torture runs showed no Spike issues. Verifying Instruction Set Simulators using Coverage-guided Fuzzing
[6] The table reports the coverage-guided fuzzing run as taking 32,492 seconds, reaching 100% branch coverage and 100% R1/R2/R3 functional coverage, and finding ISS-under-test errors [V1..V7], Spike issue S1, and Forvis issues H1,H2. Verifying Instruction Set Simulators using Coverage-guided Fuzzing