Skip to main content
Log in

A Scalable Parallel Algorithm for Reachability Analysis of Very Large Circuits

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

Abstract

This paper presents a scalable method for parallelizing symbolic reachability analysis on a distributed-memory environment of workstations. We have developed an adaptive partitioning algorithm that significantly reduces space requirements. The memory balance is maintained by dynamically repartitioning the state space throughout the computation. A compact BDD representation allows coordination by shipping BDDs from one machine to another. This representation allows for different variable orders in the sending and receiving processes. The algorithm uses a distributed termination protocol, with none of the memory modules preserving a complete image of the set of reachable states. No external storage is used on the disk. Rather, we make use of the network, which is much faster.

We implemented our method on a standard, loosely-connected environment of workstations, using a high-performance model checker. Initial performance evaluation of several large circuits shows that our method can handle models too large to fit in the memory of a single node. The partitioning algorithm achieves reduction in space, which is linear in the number of workstations employed. A corresponding decrease in space requirements is measured throughout the reachability analysis. Our results show that the relatively slow network does not become a bottleneck, and that computation time is kept reasonably small.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. P. Arunachalam and H. Oregon, “Distributed binary decision diagrams for verification of large circuits,” in Proceedings of the IEEE International Conference on Computer Design, IEEE Computer Society Press, 1996, pp. 365-370.

  2. S. Basonov, “Parallel implementation of BDD on DSM systems,” M.Sc. Thesis, Computer Science Department, Technion, 1998.

  3. I. Beer, S. Ben-David, C. Eisner, and A. Landver, “Rulebase: An industry-oriented formal verification tool,” in 33rd Design Automation Conference, 1996, pp. 655-660.

  4. I. Beer, S. Ben-David, and A. Landver, “On-the-fly model checking of RCTL formulas,” in Proc. of the 10th International Conference on Computer Aided Verification, LNCS, Vol. 818, Springer-Verlag, Berlin, 1998, pp. 184-194.

    Google Scholar 

  5. A.D. Birrell and B.J. Nelson, “Implementing remote procedure calls,” in Proceedings of the ACM Symposium on Operating System Principles, Bretton Woods, NH, 1983, p. 3. Association for Computing Machinery.

  6. R.E. Bryant, “Graph-based algorithms for boolean function manipulation,” IEEE Transactions on Computers, Vol. C-35, No. 8, pp. 677-691, 1986.

    Google Scholar 

  7. G. Cabodi, P. Camurati, and S. Quer, “Improving the efficient of BDD-based operators by means of partitioning,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 18, No. 5, pp. 545-556, 1999.

    Google Scholar 

  8. G. Cabodi, P. Camurati, and S. Quer, “Improved reachability analysis of large FSM,” in Proceedings of the IEEE International Conference on Computer Aided Design, IEEE Computer Society Press, Los Alamitos, CA, 1996, pp. 354-360.

    Google Scholar 

  9. O. Coudert, J.C. Madre, and C. Berthet, “Verifying temporal properties of sequential machines without building their state diagrams,” in R. Kurshan and E.M. Clarke (Eds.), Workshop on Computer Aided Verification, DIMACS, LNCS, Vol. 531, Springer-Verlag, New Brunswick, NJ, 1990, pp. 23-32.

    Google Scholar 

  10. R. Fraer, G. Kamhi, B. Ziv, M.Y. Vardi, and L. Fix, “Prioritized traversal: Efficient reachability analysis for verification and falsification,” in Proc. of the 12th International Conference on Computer Aided Verification, Springer-Verlag, 2000.

  11. J. Jain, J. Bitner, J.A. Abraham, and D.S. Fussel, “Functional partitioning for verification and related problems,” in Proc. Brown/MIT VLSI Conference, 1992, pp. 210-226.

  12. K.L. McMillan, Symbolic Model Checking: An Approach to the State Explosion Problem. Kluwer Academic Publishers, New York, 1993.

    Google Scholar 

  13. A. Narayan, A. Isles, J. Jain, R. Brayton, and A.L. Sangiovanni-Vincentelli, “Reachability analysis using partitioned-ROBDDs,” in Proceedings of the IEEE International Conference on Computer Aided Design, IEEE Computer Society Press, Los Alamitos, CA, 1997, pp. 388-393.

    Google Scholar 

  14. A. Narayan, J. Jain, M. Fujita, and A.L. Sangiovanni-Vincentelli, “Partitioned-ROBDDs,” in Proceedings of the IEEE International Conference on Computer Aided Design, IEEE Computer Society Press, Los Alamitos, CA, 1996, pp. 547-554.

    Google Scholar 

  15. R.K. Ranjan, J.V. Sanghavi, R.K. Brayton, and A. Sangiovanni-Vincentelli, “Binary decision diagrams on network of workstations,” in Proceedings of the IEEE International Conference on Computer Design, IEEE Computer Society Press, Los Alamitos, CA, 1996, pp. 358-364.

    Google Scholar 

  16. U. Stern and D.L. Dill, “Parallelizing the murphy verifier,” in Proc. of the 9th International Conference on Computer Aided Verification, LNCS, Vol. 1254, Springer-Verlag, Berlin, 1997, pp. 256-267.

    Google Scholar 

  17. T. Stornetta and F. Brewer, “Implementation of an efficient parallelBDDpackage,” in 33rd Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, 1996.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Heyman, T., Geist, D., Grumberg, O. et al. A Scalable Parallel Algorithm for Reachability Analysis of Very Large Circuits. Formal Methods in System Design 21, 317–338 (2002). https://doi.org/10.1023/A:1020373206491

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1020373206491

Navigation