The Open-Source BlackParrot-BedRock Cache Coherence System
Mark Unruh Wyse

TL;DR
This paper presents the open-source BedRock cache coherence protocol and three implementations within the BlackParrot RISC-V multicore processor, demonstrating the feasibility and challenges of integrating programmable coherence engines in modern shared-memory systems.
Contribution
It introduces the BedRock protocol with simplified states and provides three diverse cache coherence directory implementations, including a programmable engine, for performance and flexibility analysis.
Findings
BedRock reduces implementation complexity by eliminating transient states.
Programmable coherence directories are feasible within multicore processors.
Hybrid designs offer a balance between performance and flexibility.
Abstract
This dissertation revisits the topic of programmable cache coherence engines in the context of modern shared-memory multicore processors. First, the open-source BedRock cache coherence protocol is described. BedRock employs the canonical MOESIF coherence states and reduces implementation burden by eliminating transient coherence states from the protocol. The protocol's design complexity, concurrency, and verification effort are analyzed and compared to a canonical directory-based invalidate coherence protocol. Second, the architecture and microarchitecture of three separate cache coherence directories implementing the BedRock protocol within the BlackParrot 64-bit RISC-V multicore processor, collectively called BlackParrot-BedRock (BP-BedRock), are described. A fixed-function coherence directory engine implementation provides a baseline design for performance and area comparisons. A…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsWireless Body Area Networks
