Linköping University: Students Alumni Trade and Industry/Society Internal Search

Verification of Cache Coherence Protocols wrt. Trace Filters

Parosh Aziz Abdulla
Mohamed Faouzi Atig
Zeinab Ganjei
Ahmed Rezine and Yunyun Zhu

Formal Methods in Computer-Aided Design (FMCAD) 2015

We address the problem of parameterized verification of cache coherence protocols for hardware accelerated transactional memories. In this setting, transactional memories leverage on the versioning capabilities of the underlying cache coherence protocol. The length of the transactions, their number, and the number of manipulated variables (i.e., cache lines) are parameters of the verification problem. Caches in such systems are finite-state automata communicating via broadcasts and shared variables. We augment our system with filters that restrict the set of possible executable traces according to existing conflict resolution policies. We show that the verification of coherence for parameterized cache protocols with filters can be reduced to systems with only a finite number of cache lines. For verification, we show how to account for the effect of the adopted filters in a symbolic backward reachability algorithm based on the framework of constrained monotonic abstraction. We have implemented our method and used it to verify transactional memory coherence protocols with respect to different conflict resolution policies.

[AFGR15] Parosh Aziz Abdulla, Mohamed Faouzi Atig, Zeinab Ganjei, Ahmed Rezine and Yunyun Zhu, "Verification of Cache Coherence Protocols wrt. Trace Filters", Formal Methods in Computer-Aided Design (FMCAD) 2015
( ! ) perl script by Giovanni Squillero with modifications from Gert Jervan   (v3.1, p5.2, September-2002-)