Symbolic Execution of Digital Hardware Designs: A Systematic Map of Path-Conditioned Design Execution

Summary

A systematic map and critical survey of path-conditioned symbolic execution for digital hardware designs, with RTL at the center. The survey uses a strict five-part operational test: a qualifying work executes a design or documented derived representation with symbolic hardware values, constructs predicates for alternatives distinguished by that design representation over control and, for sequential designs, time, uses feasibility to choose or reconstruct execution, and makes that mechanism load-bearing in its result. A derived or HLS representation must document a semantic bridge adequate to the design-level claim; paths that fork only in an external testbench do not qualify.

The map distinguishes classical, concolic, and selective-hybrid execution. Symbolic simulation, STE, BMC, trace-only search, and generic synthesizable-source analysis are treated as adjacent rather than silently folded into the topic. The survey explains hardware path semantics, semantic bridges, scaling mechanisms, evidence strength, and the contract needed to interpret a test, exploit, coverage result, mismatch, or bounded conclusion.

Reading list

The works below anchor the mechanism and evidence synthesis. The complete map and every exclusion decision are in the survey record.

Foundations and classical execution

PaperWhatVenue · YearNotes
Building SystemC Waiting State AutomataScheduler-aware symbolic paths and trace compositionVECoS · 2011notes
Hardware Verification Using Software AnalyzersVerilog-to-C execution separated from BMC and abstract interpretationISVLSI · 2015notes
Generating High Coverage Tests for SystemC Designs Using Symbolic ExecutionKLEE extended with SystemC scheduling, signals, datatypes, and clocksASP-DAC · 2016notes
Automatic Generation of High-Coverage Tests for RTL Designs Using Software Techniques and ToolsVerilator-to-C++ execution with RTL witness replayICIEA · 2016notes
End-to-End Automated Exploit Generation for Validating the Security of Processor DesignsBackward cycle-level execution and replayed processor exploitsMICRO · 2018notes
EISec: Exhaustive Information Flow Security of Hardware Intellectual Property Utilizing Symbolic ExecutionGate-netlist path execution for information-flow witnessesAsianHOST · 2022notes
Sylvia: Countering the Path Explosion Problem in the Symbolic Execution of Hardware DesignsSolver-checked composition of independent RTL path fragmentsFMCAD · 2023notes
SEIF: Augmented Symbolic Execution for Information Flow in Hardware DesignsStatic-flow landmarks guide replayable RTL security witnessesHASP · 2023notes

Concolic and selective-hybrid execution

PaperWhatVenue · YearNotes
Scalable Test Generation by Interleaving Concrete and Symbolic ExecutionOne time-indexed HDL trace with a solver-targeted diversionVLSID · 2014notes
Directed Test Generation Using Concolic Testing on RTL ModelsTarget-aware CFG guidance for concrete/symbolic RTL searchDATE · 2018notes
Scalable Concolic Testing of RTL ModelsHardware-aware contribution analysis and state reuseIEEE TC · 2021notes
FuSS: Coverage-Directed Hardware Fuzzing with Selective Symbolic ExecutionFuzzer prefix, Verilated state snapshot, and local symbolic suffixACM TECS · 2025notes
AutoVeriFix+: High-Correctness RTL Generation via Trace-Aware Causal Fix and Semantic Redundancy PruningConcolic branch refinement inside an LLM RTL repair workflowarXiv · 2026notes

HLS and cross-level contracts

PaperWhatVenue · YearNotes
Hardware/Software Co-verification Using Path-based Symbolic ExecutionCoupled hardware/software paths with explicit interface assumptionsarXiv · 2020notes
Processor Verification Using Symbolic Execution: A RISC-V Case-StudyVerilated RTL and ISS co-execution at retirement boundariesDATE · 2023notes
Using Symbolic Execution to Analyze the Hardware TCP ProtocolHLS datatypes, streams, and timing with source-level claimsM.S. thesis · 2024notes
Comparing Methods for the Cross-Level Verification of SystemC Peripherals With Symbolic ExecutionStandalone and reference-coupled SystemC executionIEEE TCAD · 2026notes