Skip to main content

Progressive Generation of Canonical Irredundant Sums of Products Using a SAT Solver

  • Chapter
  • First Online:
Advanced Logic Synthesis

Abstract

We present an algorithm that progressively generates canonical irredundant Sums Of Products (SOPs) for completely- and incompletely-specified Boolean functions using a satisfiability (SAT) solver. The progressive generation allows for real time monitoring and early termination, as well as for generation of partial SOPs for incremental applications. On the other hand, canonicity brings independence of the original representation and often yields smaller and more regular SOPs that lead to smaller circuits after algebraic factoring. Also, canonicity is key in applications such as constraint solving and random assignment generation, which traditionally rely on methods based on Binary Decision Diagram (BDD). However, in contrast with BDDs, our algorithm can relax canonicity to improve speed and scalability. In general, our method is more scalable for benchmarks with many structurally isomorphic outputs. It also improves the quality of results up to 10%, in terms of the SOP size, compared to a state-of-the-art BDD-based method. Experiments with global circuit restructuring using SAT-based SOPs show that area-delay product can be improved up to 27%, compared to global restructuring using BDD-based SOPs.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. L. Amarù, P.E. Gaillardon, A. Burg, G. De Micheli, Data compression via logic synthesis, in Proceedings of the Asia and South Pacific Design Automation Conference, Yokohama (2014), pp. 628–33

    Google Scholar 

  2. Berkeley Logic Synthesis and Verification Group, Berkeley, Calif.: ABC: A system for sequential synthesis and verification, http://www.eecs.berkeley.edu/~alanmi/abc/

  3. R.K. Brayton, G.D. Hachtel, C.T. McMullen, A.L. Sangiovanni Vincentelli, Logic Minimization Algorithms for VLSI Synthesis (Kluwer Academic, Boston, 1984)

    Book  MATH  Google Scholar 

  4. K. Chang, V. Bertacco, I.L. Markov, A. Mishchenko, Logic synthesis and circuit customization using extensive external don’t-cares. ACM Trans. Des. Autom. Electron. Syst. 15(3), 1–24 (2010)

    Article  Google Scholar 

  5. C. Condrat, P. Kalla, S. Blair, Logic synthesis for integrated optics, in Proceedings of the 21st ACM Great Lakes Symposium on VLSI, Lausanne (2011), pp. 13–18

    Google Scholar 

  6. O. Coudert, Two-level logic minimization: An overview. Integr. VLSI J. 17(2), 97–140 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  7. O. Coudert, J.C. Madre, H. Fraisse, H. Touati, Implicit prime cover computation: An overview, in Proceedings of the Synthesis and Simulation Meeting and International Interchange, Nara (1993)

    Google Scholar 

  8. N. Eén, N. Sörensson, An extensible SAT-solver, in Proceedings of the International Conference on Theory and Applications of Satisfiability Testing, vol. 2919 (Springer, Berlin, 2003), pp. 502–18

    Google Scholar 

  9. A. Ghosh, S. Devadas, A.R. Newton, Test generation and verification for highly sequential circuits. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 10(5), 652–67 (1991)

    Article  Google Scholar 

  10. A.F. Gobi, W. Pedrycz, Fuzzy modelling through logic optimization. Int. J. Approx. Reason. 45(3), 488–510 (2007)

    Article  MATH  Google Scholar 

  11. J.H.R. Jiang, C.C. Lee, A. Mishchenko, C.Y.R. Huang, To SAT or not to SAT: Scalable exploration of functional dependency. IEEE Trans. Comput. C-59(4), 457–67 (2010)

    Article  MATH  MathSciNet  Google Scholar 

  12. D.E. Knuth, Fascicle 6: Satisfiability, in The Art of Computer Programming, vol. 19 (Addison-Wesley, Reading, 2015)

    Google Scholar 

  13. V.N. Kravets, Application of a key-value paradigm to logic factoring. Proc. IEEE 103(11), 2076–92 (2015)

    Article  Google Scholar 

  14. R.R. Lee, J.H.R. Jiang, W.L. Hung, Bi-decomposing large Boolean functions via interpolation and satisfiability solving, in Proceedings of the 45th Design Automation Conference, Anaheim, CA (2008), pp. 636–41

    Google Scholar 

  15. H.P. Lin, J.H.R. Jiang, R.R. Lee, To SAT or not to SAT: Ashenhurst decomposition in a large scale, in Proceedings of the International Conference on Computer Aided Design, San Jose, CA (2008), pp. 32–37

    Google Scholar 

  16. E.J. McCluskey, Minimization of Boolean functions. Bell Syst. Tech. J. 35(6), 1417–44 (1956)

    Article  MathSciNet  Google Scholar 

  17. K.L. McMillan, Interpolation and SAT-based model checking, in Proceedings of the International Conference on Computer Aided Verification, vol. 2725 (Springer, Berlin, 2003), pp. 1–13

    Google Scholar 

  18. S. Minato, Fast generation of irredundant sum-of-products forms from binary decision diagrams, in Proceedings of Synthesis and Simulation Meeting and International Interchange, Kobe (1992), pp. 64–73

    Google Scholar 

  19. A. Mishchenko, R.K. Brayton, SAT-based complete don’t-care computation for network optimization, in Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, Munich (2005), pp. 412–17

    Google Scholar 

  20. A. Mishchenko, R. Brayton, S. Jang, V.N. Kravets, Delay optimization using SOP balancing, in Proceedings of the International Conference on Computer Aided Design, San Jose, CA (2011), pp. 375–82

    Google Scholar 

  21. A. Morgado, J.P.M. Silva, Good learning and implicit model enumeration, in Proceedings of the 17th IEEE International Conference on Tools with Artificial Intelligence, Hong Kong (2005), pp. 131–36

    Google Scholar 

  22. A. Nadel, Generating diverse solutions in SAT, in Proceedings of the International Conference on Theory and Applications of Satisfiability Testing, Ann Arbor, MI (2011), pp. 287–301

    Google Scholar 

  23. A. Nadel, V. Ryvchin, Bit-vector optimization, in Proceedings of the 22nd International Conference on Tools and Algorithms for the Construction and Analysis of Systems, Eindhoven (2016), pp. 851–67

    Google Scholar 

  24. A. Petkovska, A. Mishchenko, M. Soeken, G. De Micheli, R. Brayton, P. Ienne, Fast generation of lexicographic satisfiable assignments: Enabling canonicity in SAT-based applications, in Proceedings of the International Conference on Computer Aided Design, Austin, TX (2016)

    Google Scholar 

  25. J. Rajski, J. Vasudevamurthy, The testability-preserving concurrent decomposition and factorization Boolean expressions. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 11(6), 778–93 (1992)

    Article  Google Scholar 

  26. R.L. Rudell, A.L. Sangiovanni-Vincentelli, Multiple-valued minimization for PLA optimization. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 6(5), 727–50 (1987)

    Article  Google Scholar 

  27. S. Sapra, M. Theobald, E.M. Clarke, SAT-based algorithms for logic minimization, in Proceedings of the 21st IEEE International Conference on Computer Design, San Jose, CA (2003), p. 510

    Google Scholar 

  28. The EPFL Combinational Benchmark Suite, Multi-output PLA benchmarks, http://lsi.epfl.ch/benchmarks

  29. G.S. Tseitin, On the complexity of derivation in propositional calculus, in Automation of Reasoning 2: Classical Papers on Computational Logic 1967–1970, Symbolic Computation, ed. by J. Siekmann, G. Wrightson (Springer, Berlin, 1983), pp. 466–83

    Chapter  Google Scholar 

  30. A.K. Verma, P. Brisk, P. Ienne, Iterative layering: Optimizing arithmetic circuits by structuring the information flow, in Proceedings of the International Conference on Computer Aided Design, San Jose, CA (2009), pp. 797–804

    Google Scholar 

  31. J. Yuan, A. Aziz, C. Pixley, K. Albin, Simplifying Boolean constraint solving for random simulation-vector generation. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 23(3), 412–420 (2004)

    Article  Google Scholar 

Download references

Acknowledgements

This work is partly supported by NSF/NSA grant “Enhanced equivalence checking in cryptoanalytic applications” at University of California, Berkeley, and partly by SRC contract 2710.001 “SAT-based Methods for Scalable Synthesis and Verification”.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ana Petkovska .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Petkovska, A., Mishchenko, A., Novo, D., Owaida, M., Ienne, P. (2018). Progressive Generation of Canonical Irredundant Sums of Products Using a SAT Solver. In: Reis, A., Drechsler, R. (eds) Advanced Logic Synthesis. Springer, Cham. https://doi.org/10.1007/978-3-319-67295-3_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-67295-3_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-67294-6

  • Online ISBN: 978-3-319-67295-3

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics