Experience with Chisel in designing a scalable, manufacturable cache directory
summary
Implements a synthesizable pipeline cache directory for multi‑CPU coherency using Chisel and generating FIRRTL, verifies with Python UVM over cocotb using both Verilator and Icarus, and targets Skywater 130nm for manufacturability while planning ASAP7 migration (SRAM modeling blocks that). Adds a custom field‑condition and UVM monitor to keep simulations alive ~100 cycles and emit tickle files for GTKWave, finds and helps fix a reproducible Verilator bug.
AI-written summary · about
chapters (11)
- 0:00Chisel cache directory project
- 1:03Speaker background
- 2:06Design requirements and challenges
- 2:50Chisel design flow and verification
- 4:13Synthesis feasibility and tech choices
- 4:37Code quality and debugging challenges
- 6:01Open source EDA contributions
- 7:03Debugging assertions and waveforms
- 8:09Unsolved challenges and future work
- 9:14Conclusion and tooling impact
- 10:19Q&A
related talks
40mFPGA Design with Chisel
26mRaising the level of abstraction in digital design with Chisel3 and FIRRTL
22mOld School cache coherence-a snooping system for a multicore processor based on CVA6
17mA reusable verification, emulation and validation flow for ASIC design
22mBOOM v2: An Open Source Out Of Order RISC V Core
14mAn Open-Source CVA6S+ High-Performance, Cache-Coherent Cluster for 64b Automotive MPUs
21mKeynote: Software Drives Hardware, lessons learned and future directions
22mDemo: From Blueprint to Reality: Navigating SoC Tradeoffs, IP, and Ecosystem
