Checking Cache-Coherence Protocols with TLA+
- 116 Downloads
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.
Unable to display preview. Download preview PDF.
- 1.Alpha Architecture Committee, Alpha Architecture Reference Manual, 3rd ed., Digital Press, Boston, 1998.Google Scholar
- 2.Intel Corporation, IA-64 System Architecture, Vol. 2 of Intel IA-64 Architecture Software Developers Manual. Intel, 2000.Google Scholar
- 3.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.Google Scholar
- 4.L. Lamport, “The temporal logic of actions,” ACM Transactions on Programming Languages and Systems, Vol. 16, No. 3, pp. 872–923, 1994.Google Scholar
- 5.L. Lamport, Specifying Systems, Addison-Wesley, 2002.Google Scholar
- 6.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.Google Scholar
- 7.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.Google Scholar