Abstract
Avoiding deadlock is crucial to interconnection networks. In ’87, Dally and Seitz proposed a necessary and sufficient condition for deadlock-free routing. This condition states that a routing function is deadlock-free if and only if its channel dependency graph is acyclic. We formally define and prove a slightly different condition from which the original condition of Dally and Seitz can be derived. Dally and Seitz prove that a deadlock situation induces cyclic dependencies by reductio ad absurdum. In contrast we introduce the notion of a waiting graph from which we explicitly construct a cyclic dependency from a deadlock situation. Moreover, our proof is structured in such a way that it only depends on a small set of proof obligations associated to arbitrary routing functions and switching policies. Discharging these proof obligations is sufficient to instantiate our condition for deadlock-free routing on particular networks. Our condition and its proof have been formalized using the ACL2 theorem proving system.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Borrione, D., Helmy, A., Pierre, L., Schmaltz, J.: A formal approach to the verification of networks on chip. In: EURASIP Journal on Embedded Systems, 2009(Article ID 548324), 14 pp. doi:10.1155/2009/548324 (2009)
Boyer, R.S., Strother Moore, J.: The addition of bounded quantification and partial functions to a computational logic and its theorem prover. J. Autom. Reason. 4(2), 117–172 (1988)
Boyer, R.S., Strother Moore, J.: A Computation Logic Handbook. Academic Press (1988)
Chen, R.C.: Deadlock prevention in message switched networks. In: ACM 74: Proceedings of the 1974 Annual Conference, pp. 306–310. ACM, New York, NY, USA (1974)
Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT Press and McGraw Hill (1990)
Dally, W.J., Seitz, C.L.: Deadlock-free message routing in multiprocessor interconnection networks. IEEE Trans. Comput. 36(5), 547–553 (1987)
Dally, W.J., Towles, B.: Principles and Practices of Interconnection Networks. Morgan Kaufmann (2004)
Duato, J.: A necessary and sufficient condition for deadlock-free adaptive routing in wormhole networks. IEEE Trans. Parallel Distrib. Syst. 6(10), 1055–1067 (1995)
Duato, J., Yalamanchili, S., Ni, L.: Interconnection Networks: an Engineering Approach. IEEE Computer Society Press, Los Alamitos, CA, USA (1997)
Fleury, E., Fraigniaud, P.: A general theory for deadlock avoidance in wormhole-routed networks. IEEE Trans. Parallel Distrib. Syst. 9(7), 626–638 (1998)
Kaufmann, M., Strother Moore, J.: An industrial strengh theorem prover of a logic based on common lisp. IEEE Trans. Softw. Eng. 23(4), 203–213 (1997)
Kaufmann, M., Strother Moore, J.: Structured theory development for a mechanized logic. J. Autom. Reason. 26(2), 161–203 (1997)
Kaufmann, M., Manolios, P., Strother Moore, J.: ACL2 Computer-Aided Reasoning: an Approach. Kluwer Academic Press (2000)
Manolios, P., Strother Moore, J.: Partial functions in ACL2. J. Autom. Reason. 31(2), 107–127 (2003)
Ni, L.M., Mckinley, P.K.: A survey of wormhole routing techniques in direct networks. IEEE Comput. 26, 62–76 (1993)
Ray, S.: Quantification in tail-recursive function definitions. In: Manolios, P., Wilding, M. (eds.) Proceedings of the 6th International Workshop on the ACL2 Theorem Prover and its Applications (ACL2 2006). ACM International Conference Series, vol. 205, pp. 95–98. ACM, Seattle, WA (2006)
Schmaltz, J., Borrione, D.: Towards a formal theory of on chip communications in the ACL2 logic. In: Proceedings of the Sixth International Workshop on the ACL2 Theorem Prover and its Applications, part of FloC’06, 14–15 August 2006. ACM, Seattle, WA (2006)
Schmaltz, J., Borrione, D.: A functional formalization of on chip communications. Form. Asp. Comput. 20, 241–258 (2008)
Schwiebert, L., Jayasimha, D.N.: A universal proof technique for deadlock-free routing in interconnection networks. In: 7th Annual ACM Symposium on Parallel Algorithms and Architectures, pp. 175–184 (1995)
Verbeek, F., Schmaltz, J.: Formal validation of deadlock prevention in networks-on-chips. In: Ray, S., Russinoff, D. (eds.) Eighth International Workshop on the ACL2 Theorem Prover and its Application, pp. 135–145, 11–12 May 2009. Northeastern University, Boston MA, USA. ACM (2009)
Verbeek, F., Schmaltz, J.: Formal specification of networks-on-chips: deadlock and evacuation. In: Proc. of Design, Automation, and Test in Europe (DATE’10), pp. 1701–1706 (2010)
Author information
Authors and Affiliations
Corresponding author
Additional information
This research is supported by NWO/EW project Formal Validation of Deadlock Avoidance Mechanisms (FVDAM) under grant no. 612.064.811.
Rights and permissions
About this article
Cite this article
Verbeek, F., Schmaltz, J. Proof Pearl: A Formal Proof of Dally and Seitz’ Necessary and Sufficient Condition for Deadlock-Free Routing in Interconnection Networks. J Autom Reasoning 48, 419–439 (2012). https://doi.org/10.1007/s10817-010-9206-x
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10817-010-9206-x