Abstract
Abstract microarchitectural models of communication fabrics present a challenge for verification. Due to the presence of deep pipelining, a large number of queues and distributed control, the state space of such models is usually too large for enumeration by protocol verification tools such as Murphi. On the other hand, we find that state-of-the-art rtl model checkers such as abc have poor performance on these models since there is very little opportunity for localization and most of the recent capacity advances in rtl model checking have come from better ways of discarding the irrelevant parts of the model. In this work we explore a new approach for verifying these models where we capture a model at a high level of abstraction by requiring that it be described using a small set of well-defined microarchitectural primitives. We exploit the high level structure present in this description, to automatically strengthen some classes of properties, in order to make them 1-step inductive, and then use an rtl model checker to prove them. In some cases, even if we cannot make the property inductive, we can dramatically reduce the number and complexity of lemmas that are needed to make the property inductive.
Chapter PDF
Similar content being viewed by others
References
Baumgartner, J., et al.: Scalable conditional equivalence checking: An automated invariant-generation based approach. In: FMCAD 2009, pp. 120–127 (2009)
Benveniste, A., et al.: The synchronous language twelve years later. Proc. of the IEEE 91(1), 64–83 (2003)
Berkeley Logic Synthesis Group, http://www.eecs.berkeley.edu/~alanmi/abc/
Chatterjee, S., Kishinevsky, M., Ogras, U.Y.: Quick formal modeling of communication fabrics to enable verification. In: HLDVT 2010 (to appear, 2010)
Colom, J.M., Silva, M.: Convex geometry and semiflows in P/T nets. In: Proc. of Appl. and Theory of Petri Nets, 79–112 (1991)
Corman, T.H., et al.: Introduction to Algorithms, 2nd edn. MIT Press, Cambridge (1990)
Dally, W.J., Towles, B.: Principles and Practices of Interconnection Networks. Morgan Kaufmann, San Francisco (2004)
Hoare, C.A.R.: An axiomatic basis for computer programming. Comm. of the ACM 12(10), 576580–576583 (1969)
Jhala, R., McMillan, K.L.: Microarchitecture Verification by Compositional Model Checking. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 396–410. Springer, Heidelberg (2001)
Kaivola, R., et al.: Replacing Testing with Formal Verification in Intel Core i7 Processor Execution Engine Validation. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 414–429. Springer, Heidelberg (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chatterjee, S., Kishinevsky, M. (2010). Automatic Generation of Inductive Invariants from High-Level Microarchitectural Models of Communication Fabrics. In: Touili, T., Cook, B., Jackson, P. (eds) Computer Aided Verification. CAV 2010. Lecture Notes in Computer Science, vol 6174. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14295-6_29
Download citation
DOI: https://doi.org/10.1007/978-3-642-14295-6_29
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-14294-9
Online ISBN: 978-3-642-14295-6
eBook Packages: Computer ScienceComputer Science (R0)