Skip to content
STIMSMITH

RFUZZ

Tool

RFUZZ is a Rust-based public research platform described by its GitHub repository as “coverage-directed fuzzing for RTL.” ProcessorFuzz places RFUZZ in the hardware-fuzzing/RTL-verification context and reports a 97% runtime overhead for RFUZZ in a comparison of prior approaches.

First seen 5/26/2026
Last seen 7/15/2026
Evidence 54 chunks
Wiki v4

WIKI

Overview

RFUZZ is a public research platform for coverage-directed fuzzing of RTL hardware designs. The ekiwi/rfuzz GitHub repository describes the project as “coverage-directed fuzzing for RTL research platform.” The repository metadata identifies Rust as the primary language and lists 114 stars, 14 forks, and an update timestamp of 2026-03-30. [RFUZZ GitHub repository]

Technical context

READ FULL ARTICLE →

NEIGHBORHOOD

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

explore full graph →

RELATIONSHIPS

47 connections
Multiplexer Select Coverage uses → 100% 4e
RFUZZ uses multiplexer select coverage to guide the fuzzer to explore new design paths.
Mux Toggle Coverage uses → 100% 4e
RFUZZ uses mux toggle coverage as its coverage metric.
Cascade ← compares with 100% 4e
Cascade is evaluated against RFUZZ on multiplexer select coverage
Yosys uses → 95% 3e
RFUZZ was adapted using Yosys passes to support Verilog
DiFuzzRTL ← compares with 100% 3e
DIFUZZRTL is compared against RFuzz, the state-of-the-art RTL fuzzer, showing 40x faster execution and 6.4x faster state exploration.
RFuzz Paper ← introduces 98% 2e
The RFuzz paper introduces the RFuzz hardware fuzzing tool.
Mux Coverage Instrumentation uses → 98% 2e
RFuzz uses mux coverage instrumentation as hardware coverage feedback for AFL.
Hardware fuzzing uses → 95% 2e
RFUZZ is a hardware fuzzing tool targeting RTL designs
AFL uses → 100% 2e
RFuzz uses AFL as its underlying fuzzing engine with mux coverage as feedback.
The paper mentions RFUZZ as a related hardware fuzzing work.
multiplexer toggle coverage implements → 90% 2e
RFUZZ implements multiplexer toggle coverage for hardware fuzzing.
RTL Fuzzing implements → 97% 2e
RFuzz implements RTL fuzzing for hardware designs.
Multiplexer Select Coverage implements → 100% 2e
RFUZZ uses multiplexer select coverage to guide the fuzzer to explore new paths.
coverage metric uses → 100% 2e
RFUZZ uses multiplexer select coverage as its coverage metric.
The paper mentions RFUZZ as a related hardware fuzzer.
Mutation-based Fuzzing implements → 100% 2e
RFUZZ uses mutation-based coverage-directed fuzzing on RTL.
ProcessorFuzz ← compares with 85% 2e
RFuzz is cited as related hardware fuzzing research.
Chisel HDL implements → 90% 2e
RFUZZ is coupled to Chisel HDL.
multiplexer toggle coverage implements → 90% 2e
RFUZZ uses multiplexer toggle coverage as its hardware coverage metric.
Mux-Coverage Guided Fuzzing implements → 100% 2e
RFuzz implements mux-coverage guided fuzzing as its core coverage technique.
input-stimuli fuzzing implements → 100% 2e
RFUZZ is an input-stimuli fuzzing tool adapted from American Fuzzy Lop for hardware verification.
hardware fuzzing implements → 100% 2e
RFUZZ is a hardware fuzzer that applies a modified version of AFL to fuzz hardware.
Multiplexer Select Coverage evaluates → 100% 2e
RFUZZ aims at maximizing multiplexer select coverage.
The paper evaluates RFUZZ as a baseline for comparison.
Cascade: CPU fuzzing via intricate program generation ← compares with 100% 2e
The paper compares Cascade against RFUZZ on multiplexer select coverage
HWFuzz ← compares with 70% 1e
RFUZZ is mentioned as a prior coverage-directed hardware fuzzing approach that HWFuzz advances beyond.
FPGA Acceleration uses → 90% 1e
RFUZZ combines fuzzing with FPGA acceleration for hardware verification.
The paper discusses RFUZZ as related work in input-stimuli fuzzing and distinguishes it from Logic Fuzzer.
The paper mentions RFUZZ as a related fuzzing approach for hardware verification.
American Fuzzy Lop uses → 100% 1e
RFUZZ adapted the American Fuzzy Lop framework for hardware testing.
Coverage-based Greybox Fuzzing implements → 85% 1e
RFUZZ is a hardware fuzzer that instruments processor RTL for coverage-guided fuzzing.
ProcessorFuzz ← mentions 90% 1e
ProcessorFuzz paper mentions RFUZZ as a prior work with high instrumentation overhead.
DirectFuzz ← compares with 98% 1e
DirectFuzz is experimentally compared against RFUZZ
Chisel HDL uses → 95% 1e
RFUZZ is tightly coupled to Chisel HDL
Coverage-Guided Fuzzing implements → 87% 1e
Its methodology is explicitly coverage-directed.
Fine-Grained Code Analysis for Processor Fuzzing ← compares with 80% 1e
The paper compares its approach against RFUZZ in a related work table.
multiplexer toggle coverage uses → 90% 1e
RFUZZ uses multiplexer toggle coverage for hardware fuzzing.
JQF uses → 90% 1e
RFUZZ uses JQF as its fuzzing engine.
The FuzzWiz paper compares its approach with RFUZZ in a related work table.
TheHuzz compares with → 90% 1e
RFUZZ is compared with TheHuzz; RFUZZ only operates on select signals of MUXes while TheHuzz captures more behaviors.
CPU fuzzing implements → 100% 1e
RFUZZ is a state-of-the-art CPU fuzzer.
Verilator uses → 98% 1e
RFuzz uses Verilator to simulate the DUT in its simulation-based approach.
FPGA-Accelerated Fuzzing implements → 95% 1e
RFuzz implements an FPGA-accelerated approach by synthesizing the DUT on FPGA.
direct-memory-access (DMA) uses → 95% 1e
RFuzz uses DMA to communicate between the fuzzer and the synthesized DUT on FPGA.
DirectFuzz ← extends 97% 1e
DirectFuzz built upon RFuzz and implements directed fuzzing.
Mux Coverage evaluates → 90% 1e
RFUZZ introduced MUX coverage as a coverage metric for hardware fuzzing.
The paper mentions RFUZZ as a related hardware fuzzing approach combining fuzzing with FPGA acceleration.

CITATIONS

4 sources
4 citations — click to collapse
[1] RFUZZ is described by its public GitHub repository as a coverage-directed fuzzing platform for RTL research; the repository metadata lists Rust as the language, 114 stars, 14 forks, and an update timestamp of 2026-03-30. ekiwi/rfuzz
[2] ProcessorFuzz places RFUZZ in the broader context of hardware fuzzing for RTL verification and explains that software-style coverage metrics such as basic-block and branch coverage are not well suited for hardware fuzzing. ProcessorFuzz: Processor Fuzzing with Control and Status Registers Guidance
[3] ProcessorFuzz identifies multiplexer toggle coverage and register coverage as hardware-tailored coverage metrics intended to guide fuzzers toward uncovered processor FSM states using hardware-intrinsic information. ProcessorFuzz: Processor Fuzzing with Control and Status Registers Guidance
[4] ProcessorFuzz reports 97% runtime overhead for RFUZZ. ProcessorFuzz: Processor Fuzzing with Control and Status Registers Guidance