Proof Assistants At the Hardware-Software Interface
summary
A working FPGA testbed implements a verified Internet of Things light bulb with an Ethernet card, a processor and software stack written in calk and proved with a Coq library comi and Bedrock compiler; a RISC‑V style spec (a small Haskell subset) anchors correctness so an infinite family of optimized processors (any number of cores, cache sizes) is proved to match the spec. Spectre-style timing leaks are addressed by a machine‑code symbolic executor that verifies Salsa20 compiled by GCC and by a new blue spec/KOICA clocking approach that preserves cycle‑by‑cycle timing. Industry uptake begins via a startup product line.
AI-written summary · about
chapters (28)
- 0:00Intro
- 2:26Specification?
- 3:36Key Layers of End-to-End Proof
- 4:32Outline
- 6:33An Open Instruction Set
- 12:06Many Interpretations of Parameter Functions
- 13:03Surprising Hardware Security Vulnerabilities
- 15:22The Naive Solution - Turning Off Speculation
- 16:01Community Response?
- 18:37Programming: Software vs. Hardware
- 21:41Threads & Shared Memory A Convenient (?) Fiction
- 23:00Surprise: Not an "Array", a Distributed System!
- 23:54A Cartoon View of Digital Hardware Design
- 26:21Bluespec-Style Hardware Coding
- 27:53Rules & Schedules
- 29:31Bluespec-Style Modularity
- 30:18A La Process Calculus
- 31:11Stepwise Refinement
- 32:17Proved for a Multicore Processor & Memory Sys.
- 32:55Disappearing Specs
- 37:01Less Leaky Software
- 37:30Two Main Approaches to HW/SW Timing Security
- 42:28Proved for a Simple Processor
- 43:34Beware the Demonic Scheduler!
- 44:33Ask the Developer for a Tree Scheduler
- 46:38Enclaves: Goals & Nongoals
- 48:07Phrasing Security
- 48:50Conclusion
related talks
24mStrong Formal Verification For RISC V: From Instruction Set Manual To RTL
21mThe New Verification Ecosystem that Supports RISC-V Verification fo...
09mBreaking the RISC-V Processor Customization Barrier with Formal Verification
21mMaking Concurrent Hardware Verification Sequential
57mResearch on Different Time Horizons (and an Example with Machine-Checked Proofs)
11mDemo: More Than Point Tools: RISC-V Solutions
29mTowards Formally Verified Just-In-Time Compilation
31mFormal Specification
