Integrating observability don't cares in all-solution SAT solvers

All-solution Boolean satisfiability (SAT) solvers are engines employed to find all the possible solutions to a SAT problem. Their applications are found throughout the EDA industry in fields such as formal verification, circuit synthesis and automatic test pattern generation. Typically, these engines iteratively find each solution by calling a standard SAT solving procedure. Each solution is minimized using different post processing techniques and the problem is constrained to prevent recurring solutions. In this work, instead of applying post processing techniques, the objective is to minimize the size of the solution "on the fly" during the all-solution SAT solving process. This is achieved by allowing the solver to exploit the structural circuit observability don't cares (ODC) arising from the problem. The solver makes decisions such that the number of ODCs is maximized in each solution thus leading to an overall smaller number of iterations. Through extensive experiments, it is demonstrated that integrating ODC techniques within an all-solution SAT solver results in increased performance and more compact solutions

[1]  Kenneth L. McMillan,et al.  Applying SAT Methods in Unbounded Symbolic Model Checking , 2002, CAV.

[2]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[3]  Edmund M. Clarke,et al.  SAT-based algorithms for logic minimization , 2003, Proceedings 21st International Conference on Computer Design.

[4]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[5]  Tracy Larrabee,et al.  Test pattern generation using Boolean satisfiability , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  Tiziano Villa,et al.  Efficient solution of language equations using partitioned representations , 2005, Design, Automation and Test in Europe.

[7]  In-Cheol Park,et al.  SAT-based unbounded symbolic model checking , 2005, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[8]  Sean Safarpour,et al.  Managing Circuit Don't Cares in Boolean Satisfiability , 2005 .

[9]  Rolf Drechsler,et al.  Managing don't cares in Boolean satisfiability , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[10]  Zijiang Yang,et al.  Dynamic detection and removal of inactive clauses in SAT with application in image computation , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[11]  M. Ganai,et al.  Efficient SAT-based unbounded symbolic model checking using circuit cofactoring , 2004, ICCAD 2004.

[12]  Rolf Drechsler,et al.  Debugging sequential circuits using Boolean satisfiability , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[13]  M. K. Iyer,et al.  SATORI - A Fast Sequential SAT Engine for Circuits , 2003, ICCAD 2003.

[14]  Robert K. Brayton,et al.  SAT-based complete don't-care computation for network optimization , 2005, Design, Automation and Test in Europe.

[15]  E. Clarke,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).