Equivalence Checking of Reversible Circuits

Determining the equivalence of reversible circuits designed to meet a common specification is considered. The circuits' primary inputs and outputs must be in pure logic states but the circuits may include elementary quantum gates in addition to reversible logic gates. The specification can include don't-cares arising from constant inputs, garbage outputs, and total or partial don't-cares in the underlying target function. The paper explores well-known techniques from irreversible equivalence checking and how they can be applied in the domain of reversible circuits. Two approaches are considered. The first employs decision diagram techniques and the second uses Boolean satisfiability. Experimental results show that for both methods, circuits with up to 27,000 gates, as well as adders with more than 100 inputs and outputs, are handled in under three minutes with reasonable memory requirements.

[1]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[2]  Yusuke Matsunaga An efficient equivalence checker for combinational circuits , 1996, DAC '96.

[3]  D. Michael Miller,et al.  QMDD: A Decision Diagram Structure for Reversible and Quantum Circuits , 2006, 36th International Symposium on Multiple-Valued Logic (ISMVL'06).

[4]  Louise Trevillyan,et al.  Functional comparison of logic designs for VLSI circuits , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[5]  Eugene Goldberg On equivalence checking and logic synthesis of circuits with a common specification , 2005, ACM Great Lakes Symposium on VLSI.

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

[7]  Robert Wille,et al.  Exact Synthesis of Elementary Quantum Gate Circuits for Reversible Functions with Don't Cares , 2008, 38th International Symposium on Multiple Valued Logic (ismvl 2008).

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

[9]  J. P. Marques,et al.  GRASP : A Search Algorithm for Propositional Satisfiability , 1999 .

[10]  Robert Wille,et al.  RevLib: An Online Resource for Reversible Functions and Reversible Circuits , 2008, 38th International Symposium on Multiple Valued Logic (ismvl 2008).

[11]  Stefan Frehse,et al.  Debugging of Toffoli networks , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[12]  Sharad Malik,et al.  Limits of Using Signatures for Permutation Independent Boolean Comparison , 2002, Formal Methods Syst. Des..

[13]  C. A. J. van Eijk,et al.  Exploiting Structural Similarities in a BDD-Based Verification Method , 1994, TPCD.

[14]  D. Michael Miller,et al.  An efficient verification of quantum circuits under a practical restriction , 2008, 2008 8th IEEE International Conference on Computer and Information Technology.

[15]  Thierry Paul,et al.  Quantum computation and quantum information , 2007, Mathematical Structures in Computer Science.

[16]  Sy-Yen Kuo,et al.  An XQDD-Based Verification Method for Quantum Circuits , 2008, IEICE Trans. Fundam. Electron. Commun. Comput. Sci..

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

[18]  D. Brand Verification of large synthesized designs , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[19]  C. L. Berman,et al.  Functional comparison of logic designs for VLSI circuits , 1989, ICCAD 1989.

[20]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002, Discret. Appl. Math..

[21]  Eugene Goldberg,et al.  How Good Can a Resolution Based SAT-solver Be? , 2003, SAT.

[22]  T. Toffoli,et al.  Conservative logic , 2002, Collision-Based Computing.

[23]  John P. Hayes,et al.  Checking equivalence of quantum circuits and states , 2007, 2007 IEEE/ACM International Conference on Computer-Aided Design.

[24]  D. Michael Miller,et al.  Multiple Valued Logic: Concepts and Representations , 2008, Multiple Valued Logic.

[25]  Robert Wille,et al.  Fast exact Toffoli network synthesis of reversible logic , 2007, ICCAD 2007.

[26]  J.R. Burch,et al.  Tight integration of combinational verification methods , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[27]  Dhiraj K. Pradhan,et al.  Recursive learning: a new implication technique for efficient solutions to CAD problems-test, verification, and optimization , 1994, The IEEE International Symposium on Circuits and Systems, 2003. Tutorial Guide: ISCAS 2003..

[28]  Tommaso Toffoli,et al.  Reversible Computing , 1980, ICALP.

[29]  Pérès,et al.  Reversible logic and quantum computers. , 1985, Physical review. A, General physics.

[30]  Y. Novikov,et al.  Equivalence Checking of Dissimilar Circuits , 2003 .

[31]  Eugene Goldberg Equivalence Checking of Dissimilar Circuits II , 2004 .