Abstract
We have a great deal of experience using the specification language TLA+ and its model checker TLC to analyze protocols designed at Digital and Compaq (both now part of HP). The tools and techniques we have developed apply equally well to software and hardware designs. In this paper, we describe our experience using TLA+ and TLC to verify cache-coherence protocols.
Similar content being viewed by others
References
Alpha Architecture Committee, Alpha Architecture Reference Manual, 3rd ed., Digital Press, Boston, 1998.
Intel Corporation, IA-64 System Architecture, Vol. 2 of Intel IA-64 Architecture Software Developers Manual. Intel, 2000.
K. Gharachorloo, M. Sharma, S. Steely, and S. Van Doren, “Architecture and design of AlphaServer GS320,” in Proceedings of the 9th International Conference on Architectural Support for Programming Languages and Operating Systems, 2000, pp. 13–24.
L. Lamport, “The temporal logic of actions,” ACM Transactions on Programming Languages and Systems, Vol. 16, No. 3, pp. 872–923, 1994.
L. Lamport, Specifying Systems, Addison-Wesley, 2002.
S. Tasiran, Y. Yu, B. Batson, and S. Kreider, “Using formal specifications to monitor and guide simulation: Verifying the cache coherence engine of the Alpha 21364 microprocessor,” in Proceedings of the 3rd IEEE Workshop on Microprocessor Test and Verification, Common Challenges and Solutions, 2002.
Y. Yu, P. Manolios, and L. Lamport, “Model checking TLA+ specifications,” in L. Pierre and T. Kropf (Ed.), Correct Hardware Design and Verification Methods, Vol. 1703 of Lecture Notes in Computer Science, Springer-Verlag, 1999, pp. 54–66.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Joshi, R., Lamport, L., Matthews, J. et al. Checking Cache-Coherence Protocols with TLA+ . Formal Methods in System Design 22, 125–131 (2003). https://doi.org/10.1023/A:1022969405325
Issue Date:
DOI: https://doi.org/10.1023/A:1022969405325