Skip to content
STIMSMITH

Cache Coherency Protocol

Concept

A cache coherency protocol is a set of rules and state-machine logic that maintains data consistency across the caches of multiple processors or agents in a shared-memory system. Such protocols are inherently asynchronous, concurrent, and distributed, which makes their design and verification difficult and has motivated the use of formal methods to prove properties such as deadlock-freedom, eventual consensus, and fairness.

First seen 6/21/2026
Last seen 6/21/2026
Evidence 1 chunks
Wiki v1

WIKI

Overview

A cache coherency protocol is the set of rules, messages, and state transitions that keep the values cached by multiple processing agents consistent with each other and with main memory. In multi-core and many-core systems, private caches at each core can hold copies of the same memory line; without coordination, different cores could observe different values for the same address. The protocol prevents such divergence by dictating how and when cached copies may be loaded, modified, shared, or invalidated.

Nature and Challenges

READ FULL ARTICLE →

NEIGHBORHOOD

No graph connections found for this entity yet. It may appear in future ingestion runs.

explore full graph →

RELATIONSHIPS

1 connections
Suresh Chips and Semiconductor ← uses 88% 1e
Suresh Chips and Semiconductor implements cache coherency protocols for multi-core RISC-V designs.

CITATIONS

9 sources
9 citations — click to expand
[1] Cache coherency protocols are by nature asynchronous, concurrent, and distributed, which makes classical validation by testing difficult and motivates formal verification. Modeling a Cache Coherence Protocol with the Guarded Action Language
[2] Essential properties to prove for cache coherence protocols include absence of deadlocks, eventual consensus, and fairness. Modeling a Cache Coherence Protocol with the Guarded Action Language
[3] Cache coherence protocols consist of N symmetric cache agents, where N is an unbounded parameter, making deadlock-freedom verification a parameterized verification problem. Using Flow Specifications of Parameterized Cache Coherence Protocols for Verifying Deadlock Freedom
[4] A system-wide deadlock (s-deadlock) is a state in which the entire system gets blocked and is unable to make any transition; this concept is consistent with Murphi's internal definition of deadlock. Using Flow Specifications of Parameterized Cache Coherence Protocols for Verifying Deadlock Freedom
[5] Flow specifications (message sequence diagrams) can be used to construct invariants stronger than s-deadlock, enabling efficient bounded abstractions for parameterized verification. Using Flow Specifications of Parameterized Cache Coherence Protocols for Verifying Deadlock Freedom
[6] The German and Flash cache coherence protocols have been successfully verified using flow-based parameterized verification techniques. Using Flow Specifications of Parameterized Cache Coherence Protocols for Verifying Deadlock Freedom
[7] The Tera-Scale ARchitecture (TSAR) uses a Distributed Hybrid Cache Coherence Protocol (DHCCP) that has been modeled with the Guarded Action Language. Modeling a Cache Coherence Protocol with the Guarded Action Language
[8] In RISC-V RTL design, cache coherency protocols (for multi-core) and memory consistency models such as RVWMO require meticulous RTL state machine design. Inside RISC-V: Navigating the RTL Design & Verification Landscape
[9] Suresh Chips and Semiconductor works on RISC-V RTL design and verification, treating the core as verification IP (VIP) using a layered testbench with UVM sequences, a Bus Functional Model, and a scoreboard. Inside RISC-V: Navigating the RTL Design & Verification Landscape