A general compositional approach to verifying hierarchical cache coherence protocols

Update Item Information
Publication Type technical report
School or College College of Engineering
Department Computing, School of
Program Advanced Research Projects Agency
Creator Gopalakrishnan, Ganesh
Other Author Chen, Xiaofang
Title A general compositional approach to verifying hierarchical cache coherence protocols
Date 2006-11-26
Description Modern chip multiprocessor (CMP) cache coherence protocols are extremely complex and error prone to design. Modern symbolic methods are unable to provide much leverage for this class of examples. In [1], we presented a method to verify hierarchical and inclusive versions of these protocols using explicit state enumeration tools. We circumvented state explosion by employing a meta-circular assume/guarantee technique in which a designer can model check abstracted versions of the original protocol and claim that the real protocol is correct. The abstractions were justified in the same framework (hence the meta-circular approach). In this paper, we present how our work can be extended to hierarchical non-inclusive protocols which are inherently much harder to verify, both from the point of having more corner cases, and having insufficient information in higher levels of the protocol hierarchy to imply the sharing states of cache lines at lower levels. Two methods are proposed. The first requires more manual effort, but allows our technique in [1] to be applied unchanged, barring a guard strengthening expression that is computed based on state residing outside the cluster being abstracted. The second requires less manual effort, can scale to deeper hierarchies of protocol implementations, and uses history variables which are computed much more modularly. This method also relies on the meta-circular definition framework. A non-inclusive protocol that could not be completely model checked even after visiting 1.5 billion states was verified using two model checks of roughly 0.25 billion states each.
Type Text
Publisher University of Utah
Subject Hierarchical cache coherence protocols; Verification
Subject LCSH Cache memory
Language eng
Bibliographic Citation Chen, Xiaofang; Gopalakrishnan, Ganesh (2006). A general compositional approach to verifying hierarchical cache coherence protocols. UUCS-06-014.
Series University of Utah Computer Science Technical Report
Relation is Part of ARPANET
Rights Management ©University of Utah
Format Medium application/pdf
Format Extent 169,917 bytes
Source University of Utah School of Computing
ARK ark:/87278/s6gj02gg
Setname ir_uspace
ID 705986
Reference URL https://collections.lib.utah.edu/ark:/87278/s6gj02gg
Back to Search Results