Kami: a platform for high-level parametric hardware specification and its modular verification

<jats:p>It has become fairly standard in the programming-languages research world to verify functional programs in proof assistants using induction, algebraic simplification, and rewriting. In this paper, we introduce Kami, a Coq library that enables similar expressive and modular reasoning fo...

Full description

Bibliographic Details
Main Authors: Choi, Joonwon, Vijayaraghavan, Muralidaran, Sherman, Benjamin, Chlipala, Adam, Arvind
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Language:English
Published: Association for Computing Machinery (ACM) 2021
Online Access:https://hdl.handle.net/1721.1/134865
_version_ 1826188124693200896
author Choi, Joonwon
Vijayaraghavan, Muralidaran
Sherman, Benjamin
Chlipala, Adam
Arvind
author2 Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
author_facet Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Choi, Joonwon
Vijayaraghavan, Muralidaran
Sherman, Benjamin
Chlipala, Adam
Arvind
author_sort Choi, Joonwon
collection MIT
description <jats:p>It has become fairly standard in the programming-languages research world to verify functional programs in proof assistants using induction, algebraic simplification, and rewriting. In this paper, we introduce Kami, a Coq library that enables similar expressive and modular reasoning for hardware designs expressed in the style of the Bluespec language. We can specify, implement, and verify realistic designs entirely within Coq, ending with automatic extraction into a pipeline that bottoms out in FPGAs. Our methodology, using labeled transition systems, has been evaluated in a case study verifying an infinite family of multicore systems, with cache-coherent shared memory and pipelined cores implementing (the base integer subset of) the RISC-V instruction set.</jats:p>
first_indexed 2024-09-23T07:54:39Z
format Article
id mit-1721.1/134865
institution Massachusetts Institute of Technology
language English
last_indexed 2024-09-23T07:54:39Z
publishDate 2021
publisher Association for Computing Machinery (ACM)
record_format dspace
spelling mit-1721.1/1348652023-12-08T21:11:29Z Kami: a platform for high-level parametric hardware specification and its modular verification Choi, Joonwon Vijayaraghavan, Muralidaran Sherman, Benjamin Chlipala, Adam Arvind Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory <jats:p>It has become fairly standard in the programming-languages research world to verify functional programs in proof assistants using induction, algebraic simplification, and rewriting. In this paper, we introduce Kami, a Coq library that enables similar expressive and modular reasoning for hardware designs expressed in the style of the Bluespec language. We can specify, implement, and verify realistic designs entirely within Coq, ending with automatic extraction into a pipeline that bottoms out in FPGAs. Our methodology, using labeled transition systems, has been evaluated in a case study verifying an infinite family of multicore systems, with cache-coherent shared memory and pipelined cores implementing (the base integer subset of) the RISC-V instruction set.</jats:p> 2021-10-27T20:09:33Z 2021-10-27T20:09:33Z 2017 2019-05-13T17:29:33Z Article http://purl.org/eprint/type/ConferencePaper https://hdl.handle.net/1721.1/134865 en 10.1145/3110268 Proceedings of the ACM on Programming Languages Creative Commons Attribution 4.0 International license https://creativecommons.org/licenses/by/4.0/ application/pdf Association for Computing Machinery (ACM) ACM
spellingShingle Choi, Joonwon
Vijayaraghavan, Muralidaran
Sherman, Benjamin
Chlipala, Adam
Arvind
Kami: a platform for high-level parametric hardware specification and its modular verification
title Kami: a platform for high-level parametric hardware specification and its modular verification
title_full Kami: a platform for high-level parametric hardware specification and its modular verification
title_fullStr Kami: a platform for high-level parametric hardware specification and its modular verification
title_full_unstemmed Kami: a platform for high-level parametric hardware specification and its modular verification
title_short Kami: a platform for high-level parametric hardware specification and its modular verification
title_sort kami a platform for high level parametric hardware specification and its modular verification
url https://hdl.handle.net/1721.1/134865
work_keys_str_mv AT choijoonwon kamiaplatformforhighlevelparametrichardwarespecificationanditsmodularverification
AT vijayaraghavanmuralidaran kamiaplatformforhighlevelparametrichardwarespecificationanditsmodularverification
AT shermanbenjamin kamiaplatformforhighlevelparametrichardwarespecificationanditsmodularverification
AT chlipalaadam kamiaplatformforhighlevelparametrichardwarespecificationanditsmodularverification
AT arvind kamiaplatformforhighlevelparametrichardwarespecificationanditsmodularverification