Skip to content
STIMSMITH

FIRRTL

Tool

FIRRTL is the Flexible Intermediate Representation for RTL, with an open-source Scala repository under chipsalliance/firrtl. In the provided evidence, FIRRTL appears primarily as a compiler/intermediate-representation infrastructure that supports traversal and transformation passes over digital-circuit IR, including Chiffre-based instrumentation and MorFuzz control-register coverage instrumentation.

First seen 5/27/2026
Last seen 6/6/2026
Evidence 3 chunks
Wiki v2

WIKI

Overview

FIRRTL is described by its public repository as the “Flexible Intermediate Representation for RTL.” The chipsalliance/firrtl repository is implemented in Scala and is publicly hosted on GitHub.[1]

In the provided research evidence, FIRRTL is used as a compiler/intermediate-representation infrastructure for hardware transformation. A Logic Fuzzer paper states that Chiffre leverages the FIRRTL compiler, which allows traversal and transformation over a digital circuit’s intermediate representation using passes.[2]

READ FULL ARTICLE →

NEIGHBORHOOD

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

explore full graph →

RELATIONSHIPS

3 connections
MorFuzz ← uses 100% 2e
MorFuzz uses FIRRTL pass to instrument all control registers for coverage.
Logic Fuzzer ← uses 90% 1e
Logic Fuzzer leverages FIRRTL compiler for circuit transformation during congestor insertion.
Chiffre ← uses 100% 1e
Chiffre leverages FIRRTL compiler for traversal and transformation of circuit IR.

CITATIONS

6 sources
6 citations — click to expand
[1] FIRRTL is the Flexible Intermediate Representation for RTL, and the chipsalliance/firrtl repository is implemented in Scala and hosted on GitHub. chipsalliance/firrtl
[2] Chiffre leverages the FIRRTL compiler, which supports traversal and transformation over a digital circuit intermediate representation with passes. [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[3] The Logic Fuzzer proof-of-concept used Chiffre and FIRRTL-based transformation to insert congestors into BOOM by annotating signals, and the experiment was limited to BOOM because Chiffre worked only with Chisel hardware descriptions. [PDF] Effective Processor Verification with Logic Fuzzer Enhanced Co ...
[4] MorFuzz defines a control register as a register whose value is used as a multiplexer select signal, and uses control-register coverage for comparison with DifuzzRTL. MorFuzz: Fuzzing Processor via Runtime Instruction Morphing enhanced Synchronizable Co-simulation
[5] MorFuzz implemented a FIRRTL pass to instrument all control registers; the instrumented circuits count different states triggered in each module and sum those counts as final coverage. MorFuzz: Fuzzing Processor via Runtime Instruction Morphing enhanced Synchronizable Co-simulation
[6] MorFuzz describes control-register coverage as clock-sensitive and more reflective of hardware state than other coverage matrices, while warning that high coverage does not imply the design under test is bug-free. MorFuzz: Fuzzing Processor via Runtime Instruction Morphing enhanced Synchronizable Co-simulation