Fixing Design Errors with Counterexamples and Resynthesis

In this work we propose a new error-correction framework, called CoRe, which uses counterexamples, or bug traces, generated in verification to automatically correct errors in digital designs. CoRe is powered by two innovative resynthesis techniques, goal-directed search (GDS) and entropy-guided search (EGS), which modify the functionality of internal circuit's nodes to match the desired specification. We evaluate our solution to designs and errors arising during combinational equivalence-checking, as well as simulation-based verification of digital systems. Compared with previously proposed techniques, CoRe is more powerful in that: (1) it can fix a broader range of error types because it does not rely on specific error models; (2) it derives the correct functionality from simulation vectors, hence not requiring golden netlists; and (3) it can be applied to a range of verification flows, including formal and simulation-based.

[1]  Leena Singh,et al.  System-on-a-Chip Verification: Methodology and Techniques , 2000 .

[2]  Roderick Bloem,et al.  Finding and Fixing Faults , 2005, CHARME.

[3]  Sy-Yen Kuo,et al.  Locating logic design errors via test generation and don't-care propagation , 1992, Proceedings EURO-DAC '92: European Design Automation Conference.

[4]  M. Marek-Sadowska,et al.  Logic synthesis for engineering change , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  Magdy S. Abadir,et al.  Logic design verification via test generation , 1988, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[7]  Rolf Drechsler,et al.  Debugging sequential circuits using Boolean satisfiability , 2004, ICCAD 2004.

[8]  Ibrahim N. Hajj,et al.  Design error diagnosis and correction via test vector simulation , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Alberto L. Sangiovanni-Vincentelli,et al.  Multiple-Valued Minimization for PLA Optimization , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[10]  Andreas Veneris,et al.  Design diagnosis using Boolean satisfiability , 2004 .

[11]  Shih-Chieh Chang,et al.  Design and design automation of rectification logic for engineering change , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[12]  Olivier Coudert,et al.  Automating the diagnosis and the rectification of design errors with PRIAM , 1989, ICCAD 1989.

[13]  Robert K. Brayton,et al.  Automating Logic Rectification by Approximate SPFDs , 2007, 2007 Asia and South Pacific Design Automation Conference.

[14]  Robert K. Brayton,et al.  Using simulation and satisfiability to compute flexibilities in Boolean networks , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[15]  Hiroshi Sawada,et al.  CAD transactions best paper a ward "SPFD: a new method to express functional flexibility" , 2002, IEEE Circuits and Systems Magazine.

[16]  Ibrahim N. Hajj,et al.  ACCORD : Automatic Catching and Correction of Logic Design Errors in Combinational Circuits , 1992, Proceedings International Test Conference 1992.

[17]  Shi-Yu Huang,et al.  AutoFix: a hybrid tool for automatic logic rectification , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..