K-CIRCT: A Layered, Composable, and Executable Formal Semantics for CIRCT Hardware IRs
Jianhong Zhao, Jinhui Kang, Yongwang Zhao

TL;DR
This paper presents K-CIRCT, a layered formal semantics framework for CIRCT, enabling rigorous hardware verification and simulation of RISC-V processors within an open-source hardware design environment.
Contribution
It introduces the first formal semantics for CIRCT in { extbackslash}K, structured into multiple layers for different dialects, enhancing verification and extensibility.
Findings
Achieved full-rule coverage in semantics validation.
Successfully modeled RISC-V processor in CIRCT semantics.
Demonstrated practical applicability with riscv-mini design.
Abstract
CIRCT, an open-source EDA framework akin to LLVM for software, is a foundation for various hardware description languages. Despite its crucial role, CIRCT's lack of formal semantics challenges necessary rigorous hardware verification. Thus, this paper introduces K-CIRCT, the first formal semantics in {\K} for a substantial CIRCT subset adequate for simulating a RISC-V processor. Our semantics are structured into multiple layers: (1) MLIR static semantics, which covers fundamental MLIR concepts across domains; (2) CIRCT common semantics, featuring a generic hardware model that captures key hardware features across dialects; and (3) composable and extensible semantics for specific dialects, formalized individually using a unified approach. This approach has been applied to formalize CIRCT core dialects. We validated our semantics through full-rule coverage tests and assessed its…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Computational Techniques and Applications · Neural Networks and Applications · Distributed and Parallel Computing Systems
