A Coq framework to support implementing, specifying, verifying, and compiling
Bluespec-style hardware components
with high developer productivity.

Overview

Kami is a Coq framework to support
implementing, specifying, verifying, and compiling
Bluespec-style hardware components
with high developer productivity. The core of the approach is modular
proofs of hardware components. We aim for specifications and proofs that
mirror the modular decomposition of a large hardware system into simpler
parts. We also intend to support techniques for machine-checked correctness
proofs of key synthesis algorithms that translate high-level hardware
designs into low-level circuit descriptions.