ChiSA: Static Analysis for Lightweight Chisel Verification
Jiacai Cui, Qinlin Chen, Zhongsheng Zhan, Tian Tan, Yue Li
摘要
The growing demand for productivity in hardware development opens up new opportunities for applying programming language (PL) techniques to hardware description languages (HDLs). Chisel, a leading agile HDL, embraces this shift by leveraging modern PL features to enhance hardware design productivity. However, verification for Chisel remains a major productivity bottleneck, requiring substantial time and manual effort. To address this issue, we advocate the use of static analysis-a technique proven well-suited to agile development workflows in software-for lightweight Chisel verification.
This work establishes a theoretical foundation for Chisel static analysis. At its core is 𝜆 𝐶 , a formal core calculus of ChAIR (a Chisel-specific intermediate representation for analysis). 𝜆 𝐶 is the first formalism that captures the essence of Chisel while being deliberately minimal to ease rigorous reasoning about static analysis built on 𝜆 𝐶 . We prove key properties of 𝜆 𝐶 that reflect real hardware characteristics, which in turn offer a form of retrospective validation for its design. On the basis of 𝜆 𝐶 , we define and formalize the hardware value flow analysis (HVFA) problem, which underpins our static analyses for critical Chisel verification tasks, including bug detection and security analysis. We then propose a synchronized fixed-point solution to the HVFA problem, featuring hardware-specific treatment of the synchronous behavior of clock-driven hardware registers-the essential feature of Chisel programs. We further prove key theorems establishing the guarantees and limitations of our solution.
As a proof of concept, we develop ChiSA (30K+ LoC)-the first Chisel static analyzer that can analyze intricate hardware value flows to enable lightweight analyses for critical Chisel verification tasks such as bug detection and security analysis. To facilitate thorough evaluation of both ChiSA and future work, we provide ChiSABench (11M+ LoC), a comprehensive benchmark for Chisel static analysis.
Our evaluation on ChiSABench demonstrates that ChiSA offers an effective and significantly more lightweight approach for critical Chisel verification tasks, especially on large and complex real-world designs. For example, ChiSA identified 69 violable developer-inserted assertions in large-scale Chisel designs (9.7M+ LoC) in under 200 seconds-eight of which were recognized by developers and scheduled for future fixes-and detected all 60 information-leak vulnerabilities in the well-known TrustHub benchmark (1.1M+ LoC) in just one second-outperforming state-of-the-art Chisel approaches like ChiselTest's bounded model checking and ChiselFlow's secure type system. These results underscore the high promise of static analysis for lightweight Chisel verification. To encourage continued research and innovation, we will fully open-source ChiSA (30K+ LoC) and ChiSABench (11M+ LoC).
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
它引用的顶会 Paper11
- Gemmini: Enabling Systematic Deep-Learning Architecture Evaluation via Full-Stack IntegrationHasan Genc, Seah Kim, Alon Amid, Ameer Haj-Ali 等DAC 2021 · 被引用 325 次
- Towards Developing High Performance RISC-V Processors Using Agile MethodologyYinan Xu, Zihao Yu, Dan Tang, Guokai Chen 等MICRO 2022 · 被引用 108 次
- HyperFlow: A Processor Architecture for Nonmalleable, Timing-Safe Information Flow SecurityAndrew Ferraiuolo, Mark Zhao, Andrew C. Myers, G. Edward SuhCCS 2018 · 被引用 63 次
- Efficiently Exploiting Low Activity Factors to Accelerate RTL SimulationScott Beamer, David DonofrioDAC 2020 · 被引用 36 次
- Tai-e: A Developer-Friendly Static Analysis Framework for Java by Harnessing the Good Designs of ClassicsTian Tan, Yue LiISSTA 2023 · 被引用 26 次
相关 Paper
- Formally Verifying Arithmetic Chisel Designs for All Bit Widths at OnceWeizhi Feng, Yicheng Liu, Jiaxiang Liu, David N. Jansen 等DAC 2024
- Exploiting Sophisticated Static Analysis for VerilogQinlin Chen, Nairen Zhang, Jinpeng Wang, Jiacai Cui 等PLDI 2026
- The Essence of Verilog: A Tractable and Tested Operational Semantics for VerilogQinlin Chen, Nairen Zhang, Jinpeng Wang, Tian Tan 等OOPSLA 2023 · 被引用 10 次
- VeriSketch: Synthesizing Secure Hardware Designs with Timing-Sensitive Information Flow PropertiesArmaiti Ardeshiricham, Yoshiki Takashima, Sicun Gao, Ryan KastnerCCS 2019 · 被引用 19 次
- Hyperblock Scheduling for Verified High-Level SynthesisYann Herklotz, John WickersonPLDI 2024 · 被引用 3 次
