skip to main content
10.1145/1233501.1233679acmconferencesArticle/Chapter ViewAbstractPublication PagesiccadConference Proceedingsconference-collections
Article

Improvements to combinational equivalence checking

Published:05 November 2006Publication History

ABSTRACT

The paper explores several ways to improve the speed and capacity of combinational equivalence checking based on Boolean satisfiability (SAT). State-of-the-art methods use simulation and BDD/SAT sweeping on the input side (i.e. proving equivalence of some internal nodes in a topological order), interleaved with attempts to run SAT on the output (i.e. proving equivalence of the output to constant 0). This paper improves on this method by (a) using more intelligent simulation, (b) using CNF-based SAT with circuit-based decision heuristics, and (c) interleaving SAT with low-effort logic synthesis. Experimental results on public and industrial benchmarks demonstrate substantial reductions in runtime, compared to the current methods. In several cases, the new solver succeeded in solving previously unsolved problems.

References

  1. M. Abramovici, M. A. Breuer, and A. D. Friedman, Digital Systems testing and Testable Design, Computer Science Press, 1990.Google ScholarGoogle Scholar
  2. Berkeley Logic Synthesis and Verification Group, ABC: A system for sequential synthesis and verification, Release 51205. http://www.eecs.berkeley.edu/~alanmi/abc/Google ScholarGoogle Scholar
  3. P. Bjesse and A. Boralv, "DAG-aware circuit compression for formal verification", Proc. ICCAD '04, pp. 42--49. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. D. Brand. "Verification of large synthesized designs." Proc. ICCAD '93, pp. 534--537. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. R. Brayton and C. McMullen, "The decomposition and factorization of Boolean expressions," Proc. ISCAS '82, pp. 29--54.Google ScholarGoogle Scholar
  6. R. Brayton, G. Hachtel, A. Sangiovanni-Vincentelli, "Multilevel logic synthesis", Proc. IEEE, Vol. 78, Feb.1990.Google ScholarGoogle Scholar
  7. R. E. Bryant, "Graph-based algorithms for Boolean function manipulation," IEEE TC, Vol. C-35(8), Aug 1986, pp. 677--691. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. R. E. Bryant, S. K. Lahiri, and S. A. Seshia, "Modeling and verifying systems using a logic of counter arithmetic with lambda expressions and uninterpreted functions", Proc. CAV '02, LNCS, Vol. 2404, pp. 78--92. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. Chatterjee, A. Mishchenko, R. Brayton, X. Wang, and T. Kam, "Reducing structural bias in technology mapping", Proc. ICCAD '05, pp. 519--526. http://www.eecs.berkeley.edu/~alanmi/publications/2005/iccad05_map.pdf Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. CSAT: UCSB circuit SAT solver: http://cadlab.ece.ucsb.edu/downloads/CSAT.htmGoogle ScholarGoogle Scholar
  11. A. Darringer, W. H. Joyner, Jr., C. L. Berman, L. Trevillyan, "Logic synthesis through local transformations," IBM J. of Research and Development, Vol. 25(4), 1981, pp 272--280.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. N. Een, "Description of Cadence MiniSat", SAT-Race 2006. http://fmv.jku.at/sat-race-2006/Google ScholarGoogle Scholar
  13. N. Een and N. Sörensson, "An extensible SAT-solver", Proc. SAT '03, pp. 502--518. http://www.cs.chalmers.se/Cs/Research/FormalMethods/MiniSat/Google ScholarGoogle Scholar
  14. N. Een and N. Sörensson, "MiniSat: A SAT solver with conflict-clause minimization ". Proc. SAT '05.Google ScholarGoogle Scholar
  15. N. Een and N. Sörensson, "Translating pseudo-Boolean constraints into SAT". Vol. 2 (2006), pp. 1--26. http://jsat.ewi.tudelft.nl/content/volume2/JSAT2_1_Een.pdfGoogle ScholarGoogle Scholar
  16. C. A. J. van Eijk. "Sequential equivalence checking based on structural similarities", IEEE TCAD, Vol. 19(7), 2000, pp. 814--819.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. K. Ganai, P. Ashar, A. Gupta, L. Zhang, and S. Malik, "Combining strengths of circuit-based and CNF-based algorithms for a high-performance SAT solver", Proc. DAC '02, pp. 747--750. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. L. Hellerman, "A catalog of three-variable Or-Inverter and And-Inverter logical circuits", IEEE Trans. Electron. Comput., Vol. EC-12, June 1963, pp. 198--223.Google ScholarGoogle ScholarCross RefCross Ref
  19. H. S. Jin, M. Awedh, and F. Somenzi, "CirCUs: A Satisfiability Solver Geared towards Bounded Model Checking". Proc. CAV '04, pp. 519--522.Google ScholarGoogle Scholar
  20. A. Kuehlmann, A. Srinivasan, D. P. LaPotin, "Verity - A formal verification program for custom CMOS circuits", IBM J. of Research and Development, 1995, Vol. 39(1/2), pp 149--165. http://www.research.ibm.com/journal/rd/391/kuehlmann.pdf Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. A. Kuehlmann, V. Paruthi, F. Krohm, and M. K. Ganai, "Robust boolean reasoning for equivalence checking and functional property verification", IEEE Trans. CAD, Vol. 21(12), 2002, pp. 1377--1394.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. A. Kuehlmann, "Dynamic transition relation simplification for bounded property checking". Proc. ICCAD '04, pp. 50--57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. F. Lu, L. Wang, K. Cheng, R. Huang. "A circuit SAT solver with signal correlation guided learning". Proc. DATE '03, pp. 892--897. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. F. Lu, L.-C. Wang, K.-T. Cheng, J. Moondanos and Z. Hanna, "A signal correlation guided ATPG solver and its applications for solving difficult industrial cases", Proc. DAC '03, pp. 668--673. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. F. Lu and K. T. Cheng, "Sequential equivalence checking based on K-th invariants and circuit SAT solving", Proc. HLDVT Workshop '05, pp. 45--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Y. Matsunaga, "An efficient equivalence checker for combinational circuits", Proc. DAC '96, pp. 629--634. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. A. Mishchenko, S. Chatterjee, R. Jiang, and R. K. Brayton, "FRAIGs: A unifying representation for logic synthesis and verification". ERL Technical Report, EECS Dept., UC Berkeley, March 2005. http://www.eecs.berkeley.edu/~alanmi/publications/2005/tech05_fraigs.pdfGoogle ScholarGoogle Scholar
  28. A. Mishchenko, J. S. Zhang, S. Sinha, J. R. Burch, R. Brayton, and M. Chrzanowska-Jeske, "Using simulation and satisfiability to compute flexibilities in Boolean networks", IEEE Trans. CAD, May 2006, Vol. 25(5), pp. 743--755. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. A. Mishchenko, S. Chatterjee, and R. Brayton, "DAG-aware AIG rewriting: A fresh look at combinational logic synthesis", Proc. DAC '06, pp. 532--536. http://www.eecs.berkeley.edu/~alanmi/publications/2006/dac06_rwr.pdf Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. A. Mishchenko, S. Chatterjee, R. Brayton, and P. Pan, "Integrating logic synthesis, technology mapping, and retiming", ERL Technical report, April 2006. http://www.eecs.berkeley.edu/~alanmi/publications/2006/tech06_int.pdfGoogle ScholarGoogle Scholar
  31. I.-H. Moon and C. Pixley, "Non-miter-based combinational equivalence checking by comparing BDDs with different variable orders". Proc. FMCAD '04, pp. 144--158.Google ScholarGoogle Scholar
  32. J. Moondanos, C.-J. H. Seger, Z. Hanna, and D. Kaiss, "CLEVER: Divide and conquer Combinational Logic Equivalence VERification with false negative elimination", Proc. CAV '01, pp. 131--143. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. M. Moskewicz, C. Madigan, Y. Zhao, L. Zhang, S. Malik. "Chaff: Engineering an efficient SAT solver". Proc. DAC '01, pp. 530--535. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. MVSIS Group. MVSIS: Multi-Valued Logic Synthesis System. UC Berkeley. http://www.cad.eecs.berkeley.edu/mvsisGoogle ScholarGoogle Scholar
  35. Ya. Novikov and R. Brinkmann, "Foundations of hierarchical SAT-solving". ZIB -Report 05-38, August 2005. Konrad-Zuse-Zentrum für Informationstechnik Berlin, Germany. http://www.zib.de/Publications/Reports/ZR-05-38.pdfGoogle ScholarGoogle Scholar
  36. E. Sentovich et al. "SIS: A system for sequential circuit synthesis." Technical Report, UCB/ERI, M92/41, ERL, Dept. of EECS, UC Berkeley, 1992.Google ScholarGoogle Scholar
  37. L. G. e Silva, L. M. Silveira, and J. P. Marques-Silva, "Algorithms for solving Boolean satisfiability in combinational circuits". Proc. DATE '99, pp. 526--530.Google ScholarGoogle Scholar
  38. J. P. Marques-Silva and L. G. e Silva, "Solving satisfiability in combinational circuits". IEEE Design and Test of Computers 2003, Vol. 20(4), pp. 16--21.Google ScholarGoogle Scholar
  39. G. L. Smith, R. J. Bahnsen, H. Halliwell, "Boolean comparison of hardware and flowcharts". IBM J. of Research and Development, Vol. 26(1), 1982, pp. 106--116.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. A. Solar-Lezama, R. Rabbah, R. Bodik, K. Ebcioglu, "Programming by sketching for bit-streaming programs", ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '05), Chicago, IL, June 2005, pp 281--294. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. M. N. Velev, "Efficient translation of Boolean formulas to CNF in formal verification of microprocessors", Proc. ASP-DAC '04, January 2004, pp. 310--315. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. J. S. Zhang, A. Mishchenko, R. Brayton, and M. Chrzanowska-Jeske, "Symmetry detection for large boolean functions using circuit representation, simulation, and satisfiability", Proc. DAC '06, pp. 532--536. http://www.eecs.berkeley.edu/~alanmi/publications/2006/dac06_sym.pdf Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. CEC benchmarks used: http://www.eecs.berkeley.edu/~alanmi/cecGoogle ScholarGoogle Scholar

Index Terms

  1. Improvements to combinational equivalence checking

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            ICCAD '06: Proceedings of the 2006 IEEE/ACM international conference on Computer-aided design
            November 2006
            147 pages
            ISBN:1595933891
            DOI:10.1145/1233501

            Copyright © 2006 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 5 November 2006

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • Article

            Acceptance Rates

            Overall Acceptance Rate457of1,762submissions,26%

            Upcoming Conference

            ICCAD '24
            IEEE/ACM International Conference on Computer-Aided Design
            October 27 - 31, 2024
            New York , NY , USA

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader