The Simulation Semantics of Synthesisable Verilog
Andreas Lööw
Abstract
Despite numerous previous formalisation projects targeting Verilog, the semantics of Verilog defined by the Verilog standard – Verilog’s simulation semantics – has thus far eluded definitive mathematical formalisation. Previous projects on formalising the semantics have made good progress but no previous project provides a formalisation that can be used to execute or formally reason about real-world hardware designs. In this paper, we show that the reason for this is that the Verilog standard is inconsistent both with Verilog practice and itself. We pinpoint a series of problems in the Verilog standard that we have identified in how the standard defines the semantics of the subset of Verilog used to describe hardware designs, that is, the synthesisable subset of Verilog. We show how the most complete Verilog formalisation to date inherits these problems and how, after we repair these problems in an executable implementation of the formalisation, the repaired implementation can be used to execute real-world hardware designs. The existing formalisation together with the repairs hence constitute the first formalisation of Verilog’s simulation semantics compatible with real-world hardware designs. Additionally, to make the results of this paper accessible to a wider (nonmathematical) audience, we provide a visual formalisation of Verilog’s simulation semantics.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 886cdcfc-42cf-4432-b92d-9ae72e7fc4d2Cited by top-tier papers4
- ChiSA: Static Analysis for Lightweight Chisel VerificationJiacai Cui, Qinlin Chen, Zhongsheng Zhan, Tian Tan et al.POPL 2026
- A Mechanised, Bidirectional Type System for Bit-Width Determination in SystemVerilogGabriel Desfrene, Quentin Corradi, Michalis Pardalos, John WickersonCAV 2026
- Exploiting Sophisticated Static Analysis for VerilogQinlin Chen, Nairen Zhang, Jinpeng Wang, Jiacai Cui et al.PLDI 2026
- VeriEQ: Finding Verilog Simulators and Synthesizers Bugs with Equivalence Circuit TransformationZhen Yan, Yuanliang Chen, Fuchen Ma, Zehong Yu et al.OOPSLA 2026
Builds on1
Related papers
- Revamping Verilog Semantics for Foundational VerificationJoonwon Choi, Jaewoo Kim, Jeehoon KangOOPSLA 2025 · 1 citation
- CirFix: automatically repairing defects in hardware design codeHammad Ahmad, Yu Huang, Westley WeimerASPLOS 2022 · 23 citations
- VerilogCoder: Autonomous Verilog Coding Agents with Graph-based Planning and Abstract Syntax Tree (AST)-based Waveform Tracing ToolChia-Tung Ho, Haoxing Ren, Brucek KhailanyAAAI 2025 · 108 citations
- RTL-Repair: Fast Symbolic Repair of Hardware Design CodeKevin Laeufer, Brandon Fajardo, Abhik Ahuja, Vighnesh Iyer et al.ASPLOS 2024 · 14 citations
- CraftRTL: High-quality Synthetic Data Generation for Verilog Code Models with Correct-by-Construction Non-Textual Representations and Targeted Code RepairMingjie Liu, Yun-Da Tsai, Wenfei Zhou, Haoxing RenICLR 2025
