Btor2MLIR: A Format and Toolchain for Hardware Verification

09/16/2023
by   Joseph Tafese, et al.
0

Formats for representing and manipulating verification problems are extremely important for supporting the ecosystem of tools, developers, and practitioners. A good format allows representing many different types of problems, has a strong toolchain for manipulating and translating problems, and can grow with the community. In the world of hardware verification, and, specifically, the Hardware Model Checking Competition (HWMCC), the Btor2 format has emerged as the dominating format. It is supported by Btor2Tools, verification tools, and Verilog design tools like Yosys. In this paper, we present an alternative format and toolchain, called Btor2MLIR, based on the recent MLIR framework. The advantage of Btor2MLIR is in reusing existing components from a mature compiler infrastructure, including parsers, text and binary formats, converters to a variety of intermediate representations, and executable semantics of LLVM. We hope that the format and our tooling will lead to rapid prototyping of verification and related tools for hardware verification.

READ FULL TEXT
research
02/29/2020

A Compiler Infrastructure for FPGA and ASIC Development

This whitepaper proposes a unified framework for hardware design tools t...
research
09/11/2018

Benchmarking of Java Verification Tools at the Software Verification Competition (SV-COMP)

Empirical evaluation of verification tools by benchmarking is a common m...
research
07/02/2019

GTIRB: Intermediate Representation for Binaries

GTIRB is an intermediate representation for binary analysis and transfor...
research
04/21/2020

Towards a Hardware DSL Ecosystem : RubyRTL and Friends

For several years, hardware design has been undergoing a surprising revi...
research
07/04/2019

Integration of the Static Analysis Results Interchange Format in CogniCrypt

Background - Software companies increasingly rely on static analysis too...
research
06/20/2020

fault: A Python Embedded Domain-Specific Language For Metaprogramming Portable Hardware Verification Components

While hardware generators have drastically improved design productivity,...
research
08/11/2020

Cooperative Verification via Collective Invariant Generation

Software verification has recently made enormous progress due to the dev...

Please sign up or login with your details

Forgot password? Click here to reset