Skip to content
/ kami Public

A Platform for High-Level Parametric Hardware Specification and its Modular Verification

License

Notifications You must be signed in to change notification settings

mit-plv/kami

Folders and files

NameName
Last commit message
Last commit date

Latest commit

3ab0943 · Sep 23, 2024
Nov 25, 2022
Sep 23, 2024
Mar 18, 2020
Apr 1, 2020
Mar 18, 2020
Dec 15, 2021
Nov 1, 2020
Jul 20, 2017
Jan 19, 2020
Nov 1, 2020
Jun 13, 2017

Repository files navigation

Kami: A Platform for High-Level Parametric Hardware Specification and Its Modular Verification

Directory content

  • ./: Contains the source code for syntax, semantics, theorems/properties and proof automation for Kami.
  • Lib: Contains the generic library files that we developed for Kami, extending the standard Coq library, e.g. bit-vectors, decidable finite maps with strings as keys, etc.
  • Ex: Contains basic examples and tutorials.
  • Ext: Files needed to extract designs developed in Kami into Bluespec
    • Ocaml: Contains the files to pretty-print the OCaml code extracted from Coq.

Requirements

To Verify Kami modules

  • Coq 8.12.x with $PATH containing the standard Coq binaries

To Generate Bluespec programs

  • OCaml 4.0.4 (with $PATH containing the standard OCaml binaries)
  • Batteries Library for OCaml (2.5.2)

To Run Bluespec code (i.e. simulation)

To Run Bluespec code on FPGAs

  • Vivado 2015.4 (with $PATH containing the Bluespec binaries)
  • Xilinx Virtex-7 VC707 Evaluation Kit FPGA