A new approach for selecting inputs of logic functions during debug

Debugging logic functions involves finding the function of some of the internals nodes such that their functionality becomes correct, according to the given specification. In some cases, different new inputs are required for those internal nodes to be able to correct the functionality. In this paper, we propose an efficient method for selecting inputs of internal nodes during debug such that correction is guaranteed. Our method has a new different approach for debugging that focuses on finding the inputs of the functions without explicitly trying to find the new functions. This is done by iteratively solving SAT problems until we find the inputs. Our experimental results on ITC'99 benchmarks show the efficiency and effectiveness of our approach. The results show more than 30% reduction in the number of SAT problems to be solved as well as more than 85% reduction in debug time, on average, compared to the previous methods.

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

[2]  Masahiro Fujita,et al.  Error Model Free Automatic Design Error Correction of Complex Processors Using Formal Methods , 2012, 2012 IEEE 21st Asian Test Symposium.

[3]  Rolf Drechsler,et al.  Automatic Fault Localization for Property Checking , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  Masahiro Fujita,et al.  Partial synthesis through sampling with and without specification , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[5]  Masahiro Fujita,et al.  Automatic Rectification of Processor Design Bugs Using a Scalable and General Correction Model , 2014, IEICE Trans. Inf. Syst..

[6]  Masahiro Fujita,et al.  Debugging processors with advanced features by reprogramming LUTs on FPGA , 2013, 2013 International Conference on Field-Programmable Technology (FPT).

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

[8]  Masahiro Fujita,et al.  A debugging method for gate level circuit designs by introducing programmability , 2013, 2013 IFIP/IEEE 21st International Conference on Very Large Scale Integration (VLSI-SoC).

[9]  Masahiro Fujita,et al.  A New Approach for Debugging Logic Circuits without Explicitly Debugging Their Functionality , 2016, 2016 IEEE 25th Asian Test Symposium (ATS).

[10]  Andreas G. Veneris Fault diagnosis and logic debugging using Boolean satisfiability , 2003, Proceedings. 4th International Workshop on Microprocessor Test and Verification - Common Challenges and Solutions.

[11]  Joao Marques-Silva,et al.  Automated Design Debugging With Maximum Satisfiability , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[12]  Robert K. Brayton,et al.  ABC: An Academic Industrial-Strength Verification Tool , 2010, CAV.

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

[14]  Igor L. Markov,et al.  Automatic error diagnosis and correction for RTL designs , 2007, 2007 IEEE International High Level Design Validation and Test Workshop.