Verification of cache coherence protocols by aggregation of distributed transactions

被引:9
|
作者
Park, S [1 ]
Dill, DL [1 ]
机构
[1] Stanford Univ, Dept Comp Sci, Stanford, CA 94305 USA
基金
美国国家航空航天局;
关键词
D O I
10.1007/s002240000093
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper presents a method to verify the correctness of protocols and distributed algorithms. The method compares a state graph of the implementation with a specification which is a state graph representing the desired abstract behavior. The steps in the specification correspond to atomic transactions, which are not atomic in the implementation. The method relies on an aggregation function, which is a type of abstraction function that aggregates the steps of each transaction in the implementation into a single atomic transaction in the specification. The key idea in defining the aggregation function is that it must complete atomic transactions which have committed but are not finished. This paper illustrates the method on a directory-based cache coherence protocol developed for the Stanford FLASH multiprocessor. The coherence protocol consisting of more than a hundred different kinds of implementation steps has been reduced to a specification with six kinds of atomic transactions. Based on the reduced behavior, it is very easy to prove crucial properties of the protocol including data consistency of cached copies at the user level. This is the first correctness proof verified by a theorem-prover for a cache coherence protocol of this complexity. The aggregation method is also used to prove that the reduced protocol satisfies a desired memory consistency model.
引用
收藏
页码:355 / 376
页数:22
相关论文
共 50 条
  • [1] Verification of Cache Coherence Protocols by Aggregation of Distributed Transactions
    S. Park
    D. L. Dill
    Theory of Computing Systems, 1998, 31 : 355 - 376
  • [2] Verification of cache coherence protocols by aggregation of distributed transactions
    Park, S.
    Dill, D.L.
    Theory of Computing Systems, 31 (04): : 355 - 376
  • [3] Verification techniques for cache coherence protocols
    Pong, F
    Dubois, M
    ACM COMPUTING SURVEYS, 1997, 29 (01) : 82 - 126
  • [4] A NEW APPROACH FOR THE VERIFICATION OF CACHE COHERENCE PROTOCOLS
    PONG, F
    DUBOIS, M
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1995, 6 (08) : 773 - 787
  • [5] Efficient Verification of Parameterized Cache Coherence Protocols
    Qu, WanXia
    Guo, Yang
    Pang, ZhengBin
    Yang, XiaoDong
    PROCEEDINGS OF THE 9TH INTERNATIONAL CONFERENCE FOR YOUNG COMPUTER SCIENTISTS, VOLS 1-5, 2008, : 154 - 159
  • [6] A simple method for parameterized verification of cache coherence Protocols
    Chou, CT
    Mannava, PK
    Park, S
    FORMAL METHODS IN COMPUTER-AIDED DESIGN, 2004, 3312 : 382 - 398
  • [7] A simple method for parameterized verification of cache coherence protocols
    Chou, CT
    Mannava, PK
    Park, S
    FORMAL METHODS IN COMPUTER-AIDED DESIGN, PROCEEDINGS, 2004, 3312 : 382 - 398
  • [8] A Novel Approach to Parameterized Verification of Cache Coherence Protocols
    Li, Yongjian
    Duan, Kaiqiang
    Lv, Yi
    Pang, Jun
    Cai, Shaowei
    PROCEEDINGS OF THE 34TH IEEE INTERNATIONAL CONFERENCE ON COMPUTER DESIGN (ICCD), 2016, : 560 - 567
  • [9] Deadlock Verification of Cache Coherence Protocols and Communication Fabrics
    Verbeek, Freek
    Yaghini, Pooria M.
    Eghbal, Ashkan
    Bagherzadeh, Nader
    IEEE TRANSACTIONS ON COMPUTERS, 2017, 66 (02) : 272 - 284
  • [10] Exact and efficient verification of parameterized cache coherence protocols
    Emerson, EA
    Kahlon, V
    CORRECT HARDWARE DESIGN AND VERIFICATION METHODS, PROCEEDINGS, 2003, 2860 : 247 - 262