Skip to content
STIMSMITH

Efficient Cross-Level Processor Verification using Coverage-guided Fuzzing

Paper

A technical paper on applying coverage-guided fuzzing to processor verification, with AFL-based mutation extensions for RISC-V instruction streams and a post-processing step that clusters mismatch-triggering test vectors.

First seen 5/25/2026
Last seen 8/8/2026
Evidence 27 chunks
Wiki v2

WIKI

Efficient Cross-Level Processor Verification using Coverage-guided Fuzzing

Overview

Efficient Cross-Level Processor Verification using Coverage-guided Fuzzing is a paper about using coverage-guided fuzzing for processor verification. The available evidence identifies the work by title and shows that its implementation builds on AFL-style fuzzing, including a comparison between Vanilla AFL and an Enhanced AFL configuration. [paper-title] [afl-results]

READ FULL ARTICLE →

NEIGHBORHOOD

No graph connections found for this entity yet. It may appear in future ingestion runs.

explore full graph →

RELATIONSHIPS

50 connections
Virtual Coverage uses → 95% 6e
The paper employs virtual coverage where coverage from one core acts as virtual coverage for the other.
VexRiscv evaluates → 100% 6e
The paper evaluates its approach using VexRiscv as the device under test.
AFL uses → 100% 6e
The paper uses AFL as the baseline coverage-guided fuzzer and extends it with custom mutations.
Mann-Whitney U Test uses → 100% 5e
The paper uses the Mann-Whitney U Test to statistically analyze fuzzing results.
Co-Simulation uses → 100% 4e
The paper uses a co-simulation setting with an ISS as reference model for the RTL processor.
Coverage-guided Fuzzing uses → 100% 4e
The paper leverages state-of-the-art coverage-guided fuzzing techniques to generate processor-level input stimuli.
RISC-V uses → 100% 4e
The paper uses RISC-V as the target ISA for its processor verification case study.
Processor-level Input Stimuli Generation uses → 100% 4e
The paper uses coverage-guided fuzzing to generate processor-level input stimuli.
Register Value Comparison uses → 100% 4e
The paper uses register value comparison to detect functional mismatches between the ISS and RTL core.
Verilator uses → 100% 3e
The paper uses Verilator to translate the RTL core to C++ for co-simulation.
Post-processing Test Vector Clustering introduces → 100% 3e
The paper introduces post-processing test vector clustering to group test vectors that reveal the same bug.
Niklas Bruns authored by → 100% 3e
Niklas Bruns is listed as an author of the paper.
Vladimir Herdt authored by → 100% 3e
Vladimir Herdt is listed as an author of the paper.
Daniel Große authored by → 100% 3e
Daniel Große is listed as an author of the paper.
Rolf Drechsler authored by → 100% 3e
Rolf Drechsler is listed as an author of the paper.
RISC-V VP uses → 100% 3e
The paper uses RISC-V VP's ISS as the reference model in the co-simulation.
Fast Exploration Mutation introduces → 100% 3e
The paper introduces the Fast Exploration mutation as a custom mutation procedure for processor verification.
Enhanced Havoc Mutation introduces → 100% 3e
The paper introduces the Enhanced Havoc mutation as a custom mutation procedure for processor verification.
CSR Testing uses → 90% 3e
The paper incorporates CSR testing capabilities into its fuzzing approach.
riscv-dv compares with → 70% 3e
The paper mentions RISCV-DV as a related constraint-based RISC-V verification tool.
Test Vector uses → 100% 2e
Test vectors are generated by the fuzzer and used as instruction streams for co-simulation.
Execution Controller introduces → 95% 2e
The paper introduces the Execution Controller to prevent infinite loops and detect mismatches between processor cores.
Genesys-Pro compares with → 70% 2e
The paper mentions Genesys-Pro as a related model-based test generator for processor verification.
RV32IM uses → 100% 2e
The paper uses the RV32IM configuration of VexRiscv in its case study.
RISC-V ISA Tests compares with → 70% 2e
The paper mentions RISC-V ISA Tests as a related baseline verification approach.
Symbolic Execution mentions → 90% 2e
The paper mentions symbolic execution as a related formal method for test case generation.
Model-based Test Generation mentions → 90% 2e
The paper mentions model-based test generators as a related approach in processor verification.
Cross-Level Processor Verification introduces → 100% 2e
The paper proposes a novel cross-level approach for processor verification at the RTL.
Co-simulation uses → 100% 2e
The paper uses a co-simulation setting with an ISS as reference model for the RTL processor under test.
Constraint Satisfaction Problem mentions → 90% 2e
The paper mentions CSP as a technique used in related model-based test generation approaches.
Coverage-guided Fuzzing introduces → 100% 2e
The paper proposes leveraging coverage-guided fuzzing for processor verification.
Translation Buffer introduces → 100% 2e
The paper introduces the Translation Buffer technique to transform fuzzer test vectors into deterministic endless instruction streams.
Execution Controller introduces → 100% 2e
The paper introduces the Execution Controller technique to prevent infinite loops and detect mismatches between processor cores.
Translation Buffer introduces → 100% 2e
The Translation Buffer is a novel component introduced in the paper to transform test vectors into instruction streams.
Cross-Level Verification uses → 100% 2e
The paper proposes a cross-level verification approach for processors.
Execution Controller introduces → 100% 2e
The Execution Controller is introduced as a key component for detecting mismatches and preventing infinite loops.
RV32IM evaluates → 100% 2e
The paper evaluates its approach on the RV32IM configuration of VexRiscv.
RFUZZ compares with → 80% 2e
The paper mentions RFUZZ as a related approach combining fuzzing with FPGA acceleration.
SpinalFuzz compares with → 80% 2e
The paper mentions SpinalFuzz as a related fuzzer for SpinalHDL designs.
Instruction Set Simulator uses → 100% 2e
An ISS is used as a reference model for the RTL processor under test.
RISC-V Torture Test Generator compares with → 70% 2e
The paper mentions RISC-V Torture Test Generator as a related verification tool.
SpinalFuzz mentions → 90% 2e
The paper mentions SpinalFuzz as a related fuzzing tool for SpinalHDL designs.
The paper compares its approach with the cross-level co-simulation approach from this related work.
The paper mentions this related work on coverage-guided fuzzing for ISS verification.
Fuzzing Hardware Like Software mentions → 90% 2e
The paper mentions this work as a related fuzzing approach for hardware.
Translation Buffer introduces → 95% 2e
The paper introduces the Translation Buffer component to transform fuzzer test vectors into endless instruction streams.
SystemC TLM uses → 100% 1e
The paper embeds the RTL-core and ISS into a common SystemC TLM testbench.
Stimulus Generation uses → 100% 1e
The paper uses coverage-guided fuzzing to generate processor-level input stimuli.
Directed Test Suites mentions → 90% 1e
The paper mentions semi hand-written directed test suites as baseline verification approaches for RISC-V.
RTL processor verification uses → 100% 1e
The paper targets RTL processor verification as its main application domain.

LINKED ENTITIES

37 links
Register Value Comparison USES Extracted graph relationship
Niklas Bruns AUTHORED_BY Extracted graph relationship
Vladimir Herdt AUTHORED_BY Extracted graph relationship
Daniel Große AUTHORED_BY Extracted graph relationship
Rolf Drechsler AUTHORED_BY Extracted graph relationship
Cross-Level Processor Verification INTRODUCES Extracted graph relationship
Coverage-guided Fuzzing USES Extracted graph relationship
Co-Simulation USES Extracted graph relationship
Instruction Set Simulator USES Extracted graph relationship
RISC-V USES Extracted graph relationship
AFL USES Extracted graph relationship
VexRiscv EVALUATES Extracted graph relationship
RISC-V VP USES Extracted graph relationship
Verilator USES Extracted graph relationship
SystemC TLM USES Extracted graph relationship
Translation Buffer INTRODUCES Extracted graph relationship
Execution Controller INTRODUCES Extracted graph relationship
Fast Exploration Mutation INTRODUCES Extracted graph relationship
Enhanced Havoc Mutation INTRODUCES Extracted graph relationship
Post-processing Test Vector Clustering INTRODUCES Extracted graph relationship
Virtual Coverage USES Extracted graph relationship
CSR Testing USES Extracted graph relationship
Mann-Whitney U Test USES Extracted graph relationship
RV32IM USES Extracted graph relationship
Processor-level Input Stimuli Generation USES Extracted graph relationship
Mutation-Based Fuzzing USES Extracted graph relationship
RFUZZ COMPARES_WITH Extracted graph relationship
SpinalFuzz COMPARES_WITH Extracted graph relationship
Endless Instruction Stream Generation COMPARES_WITH Extracted graph relationship
Constraint Satisfaction Problem-based Test Generation COMPARES_WITH Extracted graph relationship
Model-Based Test Generation COMPARES_WITH Extracted graph relationship
Bayesian Network Coverage-Directed Test Generation COMPARES_WITH Extracted graph relationship
Symbolic Execution for Test Generation COMPARES_WITH Extracted graph relationship
RISC-V Torture Test Generator COMPARES_WITH Extracted graph relationship
RISC-V ISA Tests COMPARES_WITH Extracted graph relationship
riscv-dv COMPARES_WITH Extracted graph relationship
Genesys-Pro COMPARES_WITH Extracted graph relationship