Skip to content
STIMSMITH

Verilator

Tool

Verilator is an open-source SystemVerilog simulator and lint system. It compiles Verilog/SystemVerilog designs into optimized, potentially multithreaded C++/SystemC models that run faster than interpreted simulation. Verilator is used as the RTL simulation backend in several hardware-fuzzing and verification frameworks (including ProcessorFuzz, RFuzz, DirectFuzz, and FuSS), and is the basis for ongoing work on UVM testbench support via the uvm-verilator project.

First seen 5/26/2026
Last seen 7/12/2026
Evidence 55 chunks
Wiki v5

WIKI

Verilator

Overview

Verilator is an open-source SystemVerilog simulator and lint system. Its public GitHub repository is verilator/verilator. [citation: Verilator is an open-source SystemVerilog simulator and lint system]

READ FULL ARTICLE →

NEIGHBORHOOD

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

explore full graph →

RELATIONSHIPS

44 connections
The paper references Verilator used in the experimental setup.
ProcessorFuzz ← uses 100% 4e
ProcessorFuzz uses Verilator for RTL simulation of processor designs.
The paper uses Verilator to translate the Verilog RTL processor into C++ for co-simulation.
RTL Simulation implements → 100% 3e
Verilator is an open-source RTL simulator that converts hardware designs to C++ functional models
RISCSmith ← uses 100% 2e
RISCSmith uses Verilator to compile and simulate instrumented RISC-V implementations.
UVM implements → 2e
Verilator is being adopted for UVM-style verification workflows.
StimulusRL ← uses 95% 2e
StimulusRL can be integrated into Verilator-based simulation flows.
The paper uses Verilator to generate RTL-based execution models
UVM implements → 88% 2e
The article reports upstream UVM 2017 support in Verilator, indicating implementation of UVM features.
The paper uses Verilator to translate the RTL-core to C++ for co-simulation.
Antmicro ← uses 2e
Antmicro uses and develops Verilator towards full SystemVerilog support.
DiffTest-H ← compares with 100% 2e
DiffTest-H is compared against 16-thread Verilator for simulation speed.
RTL uses → 95% 2e
Verilator translates RTL (Verilog) descriptions into cycle-accurate C++ equivalents.
The paper uses Verilator to obtain a C++ description of the RTL core.
Cascade ← uses 100% 1e
Cascade uses Verilator feedback for coverage-guided fuzzing.
Register-Transfer Level (RTL) ← uses 90% 1e
Verilator is used to translate RTL designs into C++.
RFUZZ ← uses 98% 1e
RFuzz uses Verilator to simulate the DUT in its simulation-based approach.
DirectFuzz ← uses 97% 1e
DirectFuzz uses Verilator for hardware simulation, like RFuzz.
FuSS Framework ← uses 100% 1e
FuSS uses Verilator to convert hardware models into cycle-accurate software models.
cycle-accurate simulation implements → 100% 1e
Verilator implements cycle-accurate simulation of hardware designs.
HARTBREAKER ← uses 100% 1e
HARTBREAKER uses Verilator to simulate designs under test.
RTL Simulation ← uses 95% 1e
Verilator is used as a single-threaded RTL simulator
LLM4DV Framework ← uses 97% 1e
The LLM4DV framework uses Verilator for simulation and testing of DUT modules.
Constrained Randomization implements → 1e
Verilator now implements constrained randomization as introduced by Antmicro.
Satisfiability Modulo Theories uses → 1e
Verilator uses SMT solvers in the implementation of randomization constraints.
Z3 uses → 1e
Verilator uses z3 as an SMT solver for implementing randomization constraints.
cvc5 uses → 1e
Verilator uses cvc5 as an SMT solver for implementing randomization constraints.
SMT-LIB2 uses → 1e
Verilator converts SystemVerilog expressions to SMT-LIB2 as part of its constraint solving integration.
HiFuzz ← uses 100% 1e
HiFuzz is implemented on top of Verilator for RTL simulation.
ZP Cosim ← uses 97% 1e
ZP Cosim supports simulation using Verilator as a backend
XiangShan ← uses 95% 1e
XiangShan supports Verilator as a simulation backend.
RTL simulation ← uses 100% 1e
Verilator is used for RTL simulation in ProcessorFuzz.
Co-Simulation ← uses 95% 1e
Verilator is used to compile the RTL-core into C++ for integration into the co-simulation.
RTL simulation implements → 100% 1e
Verilator is an open-source tool implementing RTL simulation.
Ibex ← depends on 1e
Ibex depends on Verilator for its build process within TestRIG.
Toooba ← depends on 1e
Toooba depends on Verilator as part of its build requirements.
DeepVerifier ← uses 100% 1e
DeepVerifier uses Verilator as an RTL simulator to obtain coverage scores during training.
The paper uses Verilator as the simulation backend.
RTL-Based Execution Model (RTEM) implements → 97% 1e
Verilator generates the RTEM from Verilog RTL
UVM testbench implements → 84% 1e
The ongoing effort explicitly aims to enable UVM testbenches to run under Verilator.
uvm-verilator ← depends on 72% 1e
The repository’s purpose is to enable UVM testbenches in Verilator, implying a dependency on Verilator.
FuzzWiz ← uses 100% 1e
FuzzWiz uses Verilator to convert RTL files into C++ models.
DiFuzzRTL ← uses 100% 1e
DIFUZZRTL uses Verilator as an RTL simulator for software simulation.
The paper uses Verilator as an RTL simulator to capture coverage scores from test sequences.

CITATIONS

11 sources
11 citations — click to expand
[1] Verilator is an open-source SystemVerilog simulator and lint system, with public repository verilator/verilator. verilator/verilator
[2] Verilator compiles Verilog or SystemVerilog code into an optimized, potentially multithreaded model wrapped in a C++/SystemC module, executing faster than interpreted simulators and on par with or better than many closed-source simulators. Fuzzing IPv4 modules on FPGAs
[3] ProcessorFuzz uses Verilator as the open-source RTL simulator for all evaluated processor designs, comparing RTL trace logs against ISA trace logs. Fuzzing IPv4 modules on FPGAs
[4] RFuzz uses Verilator to simulate the DUT on the CPU side of an SoC, communicating with the fuzzer via shared-memory buffers. Fuzzing IPv4 modules on FPGAs
[5] DirectFuzz builds on RFuzz and likewise uses Verilator for hardware simulation. Fuzzing IPv4 modules on FPGAs
[6] FuSS uses Verilator to convert hardware models into cycle-accurate software models; Verilator serves as the backend due to precise modeling of synthesizable Verilog designs. FuSS: Coverage-Directed Hardware Fuzzing with Selective Symbolic Execution
[7] The Cascade artifact uses Verilator v5.006 and provides an explicit reinstall procedure if the running Verilator version produces an unknown-warning error. comsec-group/cascade-artifacts
[8] Long-running efforts led by Antmicro, Wilson Snyder, and open-source contributors enable UVM testbenches in Verilator via the uvm-verilator project, with upstream UVM 2017 support as a milestone. CHIPS Alliance SV Tools Project launch
[9] The CHIPS Alliance sv-tests suite tracks Verilator's SystemVerilog feature support and was used to track milestones such as the addition of UVM support to Verilator. CHIPS Alliance SV Tools Project launch
[10] Verilator is discussed in a survey of RISC-V processor verification alongside RVVI-Trace, RVVI-VVP, and RISCV-DV as part of the open-source verification ecosystem. Survey of Verification of RISC-V Processors
[11] A DATE 2022 cross-level processor-verification excerpt references https://www.veripool.org/verilator/ but does not provide enough surrounding detail to support stronger claims about its role in that work. Verilator project page