Match and replace - A functional ECO engine for multi-error circuit rectification

Functional ECO has been an indispensible technique in modern VLSI design flow. This paper proposes an ECO engine in a two-phase approach: a matching phase for rectification pair identification and a replacement phase for pair selection and patch minimization. The rectification pair identification algorithm explores rectification pairs between the original circuit and the golden circuit. The rectification pair selector determines final patches through a linear-time heuristic. A gate-recycle process performs patch minimization for final refinement. The experiments show that this ECO engine outperforms a state-of-the-art interpolation-based engine in both patch quality and runtime.

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

[2]  Igor L. Markov,et al.  Fixing Design Errors with Counterexamples and Resynthesis , 2007, 2007 Asia and South Pacific Design Automation Conference.

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

[4]  Jianwen Zhu,et al.  Toward Automated ECOs in FPGAs , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[5]  Andreas Kuehlmann,et al.  Equivalence checking using cuts and heaps , 1997, DAC.

[6]  Shih-Chieh Chang,et al.  Spare Cells With Constant Insertion for Engineering Change , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[7]  Yao-Wen Chang,et al.  TRECO: dynamic technology remapping for timing engineering change orders , 2010, ASP-DAC 2010.

[8]  Ruchir Puri,et al.  DeltaSyn: An efficient logic difference optimizer for ECO synthesis , 2009, 2009 IEEE/ACM International Conference on Computer-Aided Design - Digest of Technical Papers.

[9]  Jie-Hong Roland Jiang,et al.  BooM: A decision procedure for boolean matching with abstraction and dynamic learning , 2010, Design Automation Conference.

[10]  Malgorzata Marek-Sadowska,et al.  ECO-Map: Technology remapping for post-mask ECO using simulated annealing , 2008, 2008 IEEE International Conference on Computer Design.

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

[12]  Iris Hui-Ru Jiang,et al.  Matching-based minimum-cost spare cell selection for design changes , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[13]  R. Brayton,et al.  FRAIGs: A Unifying Representation for Logic Synthesis and Verification , 2005 .

[14]  Niklas Een,et al.  MiniSat v1.13 - A SAT Solver with Conflict-Clause Minimization , 2005 .

[15]  Qi Zhu,et al.  SAT sweeping with local observability don't-cares , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[16]  Yu-Min Kuo,et al.  Engineering change using spare cells with constant insertion , 2007, 2007 IEEE/ACM International Conference on Computer-Aided Design.

[17]  Thomas Kropf,et al.  Efficient design error correction of digital circuits , 2000, Proceedings 2000 International Conference on Computer Design.

[18]  Shih-Chieh Chang,et al.  Logic Synthesis for Engineering Change , 1999, 32nd Design Automation Conference.

[19]  Jie-Hong Roland Jiang,et al.  A robust functional ECO engine by SAT proof minimization and interpolation techniques , 2010, 2010 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[20]  Shao-Lun Huang,et al.  A robust ECO engine by resource-constraint-aware technology mapping and incremental routing optimization , 2011, 16th Asia and South Pacific Design Automation Conference (ASP-DAC 2011).