Advertisement

Integrating Formal Verification with Murφ of Distributed Cache Coherence Protocols in FAME Multiprocessor System Design

  • Ghassan Chehaibar
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3235)

Abstract

Flexible Architecture for Multiple Environments (FAME) is Bull architecture for large symmetrical multiprocessors based on Intel’s Itanium(r) 2 family, which is used in Bull NovaScale(r) servers series. A key point in the development of this distributed shared memory architecture is the definition of its cache coherence protocol. This paper reports experiences and results of integrating formal verification of FAME cache coherence protocol, on 4 successive versions of this architecture. The goal is to find protocol definition bugs (not implementation) in the early phases of the design, focusing on: cache coherency, data integrity and deadlock-freeness properties. We have performed modeling and verification using Murφ tool and language, because of its easiness of use and its efficient state reduction techniques. The analysis of the results shows that this approach is cost-effective, and in spite of the state explosion problem, it has helped us in finding hard-to-simulate protocol bugs, before the implementation is far ahead.

Keywords

Formal Verification Cache Coherence State Explosion Cache Coherence Protocol Error Trace 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Bull NovaScale® servers, http://www.bull.com/novascale/index.html
  2. 2.
    Chehaibar, G., Garavel, H., Mounier, L., Tawbi, N., Zulian, F.: Specification and Verification of the PowerScale Bus Arbitration Protocol: An Industrial Experiment with LOTOS. In: Proc. of FORTE/PSTV 1996, pp. 435–450 (1996)Google Scholar
  3. 3.
    Dill, D.L., Drexler, A.J., Hu, A.J., Yang, C.H.: Protocol Verification as a Hardware Design Aid. In: IEEE International Conference on Computer Design: VLSI in Computers and Processors, pp. 522–525. IEEE Computer Society, Los Alamitos (1992)Google Scholar
  4. 4.
    FAME Architecture, Statement of Direction, http://www.bull.com/download/whitepapers/fame.pdf
  5. 5.
    Fisler, K., Girault, C.: Modelling and Model Checking a Distributed Shared Memory Consistency Protocol. In: Desel, J., Silva, M. (eds.) ICATPN 1998. LNCS, vol. 1420, pp. 84–103. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  6. 6.
    Gharachorloo, K., Lenoski, D., Laudon, J., Gibbons, P., Gupta, A., Hennessy, J.: Memory Consistency and Event Ordering in Scalable Shared-Memory Multiprocessors. In: Proc. of the 17th Annual International Symposium on Computer Architecture, pp. 15–26 (1990)Google Scholar
  7. 7.
    Hennessy, J., Heinrich, M., Gupta, A.: Cache-Coherent Distributed Shared Memory: Perspectives on Its Development and Future Challenges. Proc. of the IEEE 87(3), 418–429 (1999) (Special issue on Distributed Shared Memory)CrossRefGoogle Scholar
  8. 8.
    McMillan, K.L., Schwalbe, J.: Formal Verification of the Gigamax Cache Consistency Protocol. In: Proc. ISSM Int’l Conf. Parallel and Distributed Computing (1991)Google Scholar
  9. 9.
    Murϕ description language and verifier, http://sprout.stanford.edu/dill/murphi.html
  10. 10.
    NASA Formal Methods Guidebook. Formal Methods, Specification and Verification Guidebook for Software and Computer Systems. Volume I: Planning and Technology Insertion. Release 2.0, [NASA/TP-98-208193] 88 pages (1998)Google Scholar
  11. 11.
    Norris Ip, C., Dill, D.L.: Better Verification through Symmetry. Formal Methods in System Design 9(1/2), 41–75 (1996)CrossRefGoogle Scholar
  12. 12.
    Paramarcos, M., Patel, J.: A Low-Overhead Coherence Solution for Multiprocessors with Private Cache Memories. In: Proc. of 11th Int’l Symp. Computer Architecture, pp. 348–354 (1984)Google Scholar
  13. 13.
    Pong, F., Dubois, M.: A New Approach for the Verification of Cache Coherence Protocols. IEEE Transactions on Parallel and Distributed Systems 6(8), 773–787 (1995)CrossRefGoogle Scholar
  14. 14.
    Pong, F., Dubois, M.: Verification Techniques for Cache Coherence Protocols. ACM Computing Surveys 29(1), 82–126 (1997)CrossRefGoogle Scholar
  15. 15.
    Roucairol, G.: Using Formal Verification Methods in an Industrial Environment for a Decade, Conclusions and Perspectives. In: Keynote at FLOC 1999, Trento (1999)Google Scholar
  16. 16.
    Stern, U., Dill, D.L.: A New Scheme for Memory-Efficient Probabilistic Verification. In: Proc. of FORTE/PSTV 1996, pp. 333–348 (1996)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2004

Authors and Affiliations

  • Ghassan Chehaibar
    • 1
  1. 1.BULLPlatforms Hardware R&DLes Clayes Sous BoisFrance

Personalised recommendations