LLHD: a multi-level intermediate representation for hardware description languages
Fabian Schuiki, Andreas Kurth, Tobias Grosser, Luca Benini
Abstract
Modern Hardware Description Languages (HDLs) such as SystemVerilog or VHDL are, due to their sheer complexity, insufficient to transport designs through modern circuit design flows. Instead, each design automation tool lowers HDLs to its own Intermediate Representation (IR). These tools are monolithic and mostly proprietary, disagree in their implementation of HDLs, and while many redundant IRs exists, no IR today can be used through the entire circuit design flow. To solve this problem, we propose the LLHD multi-level IR. LLHD is designed as simple, unambiguous reference description of a digital circuit, yet fully captures existing HDLs. We show this with our reference compiler on designs as complex as full CPU cores. LLHD comes with lowering passes to a hardware-near structural IR, which readily integrates with existing tools. LLHD establishes the basis for innovation in HDLs and tools without redundant compilers or disjoint IRs. For instance, we implement an LLHD simulator that runs up to 2.4× faster than commercial simulators but produces equivalent, cycle-accurate results. An initial vertically-integrated research prototype is capable of representing all levels of the IR, implements lowering from the behavioural to the structural IR, and covers a sufficient subset of SystemVerilog to support a full CPU design.
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 4bcca41d-e07c-4211-a04e-f331ce2997ffCited by top-tier papers11
- A compiler infrastructure for accelerator generatorsRachit Nigam, Samuel Thomas, Zhijing Li, Adrian SampsonASPLOS 2021 · 54 citations
- Formal verification of high-level synthesisYann Herklotz, James D. Pollard, Nadesh Ramanathan, John WickersonOOPSLA 2021 · 29 citations
- Database Technology for the Masses: Sub-Operators as First-Class EntitiesMaximilian Bandle, Jana GicevaVLDB 2021 · 19 citations
- HIR: An MLIR-based Intermediate Representation for Hardware Accelerator DescriptionKingshuk Majumder, Uday BondhugulaASPLOS 2023 · 12 citations
- The Essence of Verilog: A Tractable and Tested Operational Semantics for VerilogQinlin Chen, Nairen Zhang, Jinpeng Wang, Tian Tan et al.OOPSLA 2023 · 10 citations
Related papers
- IRDL: an IR definition language for SSA compilersMathieu Fehr, Jeff Niu, River Riddle, Mehdi Amini et al.PLDI 2022 · 13 citations
- ChatCPU: An Agile CPU Design and Verification Platform with LLMXi Wang, Gwok-Waa Wan, Sam-Zaak Wong, Layton Zhang et al.DAC 2024 · 31 citations
- Polymorphic Blocks: Unifying High-level Specification and Low-level Control for Circuit Board DesignRichard Lin, Rohit Ramesh, Connie Chi, Nikhil Jain et al.UIST 2020 · 12 citations
- ScaleHLS: A New Scalable High-Level Synthesis Framework on Multi-Level Intermediate RepresentationHanchen Ye, Cong Hao, Jianyi Cheng, Hyunmin Jeong et al.HPCA 2022 · 77 citations
- Hestia: An Efficient Cross-Level Debugger for High-Level SynthesisRuifan Xu, Jin Luo, Yawen Zhang, Yibo Lin et al.MICRO 2024 · 4 citations
