Abstract
In recent years, research in the domain of reversible circuit design has attracted significant attention leading to many different approaches e.g. for synthesis, optimization, simulation, verification, and test. The open source toolkit RevKit is an attempt to make these developments publicly available to other researchers. For this purpose, a modular and extendable framework has been provided which easily enables the addition of new methods and tools.
In this paper, we introduce the functionality as well as the internals of RevKit. We provide examples and use cases showing how to apply RevKit and its components in order to create and execute customized design flows. Furthermore, we demonstrate how the architecture and the design concepts of RevKit can be exploited to easily develop new or improved methods for reversible circuit design.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Landauer, R.: Irreversibility and Heat Generation in the Computing Process. IBM Journal of Research and Development 5(3), 183–191 (1961)
Bennett, C.H.: Logical Reversibility of Computation. IBM Journal of Research and Development 17(6), 525–532 (1973)
Desoete, B., DeVos, A.: A reversible carry-look-ahead adder using control gates. Integration 33(1-2), 89–104 (2002)
Shor, P.W.: Algorithms for Quantum Computation: Discrete Logarithms and Factoring. In: Symp. on Foundations of Computer Science, pp. 124–134. IEEE Computer Society (November 1994)
Nielsen, M.A., Chuang, I.L.: Quantum Computation and Quantum Information. Cambridge University Press, New York (2000)
Vandersypen, L.M.K., Steffen, M., Breyta, G., Yannoni, C.S., Sherwood, M.H., Chuang, I.L.: Nature 414, 883–887 (2001)
Cuykendall, R., Andersen, D.R.: Reversible optical computing circuits. Optical Letters 12(7), 542–544 (1987)
Thapliyal, H., Srinivas, M.B.: The need of DNA computing: Reversible designs of adders and multipliers using Fredkin gate. In: Proceedings of SPIE, vol. 6050 (December 2005)
Merkle, R.C.: Reversible electronic logic using switches. Nanotechnology 4(1), 21–40 (1993)
Toffoli, T.: Reversible Computing. In: de Bakker, J.W., van Leeuwen, J. (eds.) ICALP 1980. LNCS, vol. 85, pp. 632–644. Springer, Heidelberg (1980)
Fredkin, E., Toffoli, T.: Conservative logic. Int’l. Journal of Theoretical Physics 21(3), 219–253 (1982)
Peres, A.: Reversible logic and quantum computers. Phys. Rev. A 32(6), 3266–3276 (1985)
Shende, V., Prasad, A., Markov, I., Hayes, J.: Synthesis of reversible logic circuits. IEEE Trans. on CAD 22(6), 710–722 (2003)
Maslov, D., Dueck, G.W., Miller, D.M.: Toffoli network synthesis with templates. IEEE Trans. on CAD 24(6), 807–817 (2005)
Wille, R., Drechsler, R.: BDD-based synthesis of reversible logic for large functions. In: Design Automation Conference, pp. 270–275. ACM (July 2009)
Viamontes, G.F., Markov, I.L., Hayes, J.P.: Quantum Circuit Simulation. Springer, Heidelberg (2009)
Viamontes, G.F., Markov, I.L., Hayes, J.P.: Checking equivalence of quantum circuits and states. In: Int’l Conf. on Computer-Aided Design, pp. 69–74. IEEE (November 2007)
Gay, S.J., Nagarajan, R., Papanikolaou, N.: QMC: A Model Checker for Quantum Systems. In: Gupta, A., Malik, S. (eds.) CAV 2008. LNCS, vol. 5123, pp. 543–547. Springer, Heidelberg (2008)
Wille, R., Große, D., Miller, D.M., Drechsler, R.: Equivalence Checking of Reversible Circuits. In: Int’l. Symp. on Multiple-Valued Logic, 324–330. IEEE Computer Society (May 2009)
Polian, I., Fiehn, T., Becker, B., Hayes, J.P.: A Family of Logical Fault Models for Reversible Circuits. In: Asian Test Symposium, pp. 422–427. IEEE Computer Society (December 2005)
Patel, K.N., Hayes, J.P., Markov, I.L.: Fault testing for reversible circuits. IEEE Trans. on CAD 23(8), 1220–1230 (2004)
Gupta, P., Agrawal, A., Jha, N.K.: An Algorithm for Synthesis of Reversible Logic Circuits. IEEE Trans. on CAD of Integrated Circuits and Systems 25(11), 2317–2330 (2006)
Wille, R., Große, D., Teuber, L., Dueck, G.W., Drechsler, R.: RevLib: An Online Resource for Reversible Functions and Reversible Circuits. In: Int’l Symp. on Multiple-Valued Logic, pp. 220–225 (May 2008)
Miller, D.M., Maslov, D., Dueck, G.W.: A transformation based algorithm for reversible logic synthesis. In: Design Automation Conference, pp. 318–323. ACM (June 2003)
Maslov, D., Dueck, G.W., Miller, D.M.: Techniques for the synthesis of reversible Toffoli networks. ACM Trans. Design Autom. Electr. Syst. 12(4), 42:1–42:28 (2007)
Soeken, M., Wille, R., Drechsler, R.: Hierarchical synthesis of reversible circuits using positive and negative Davio decomposition. In: Int’l Design and Test Workshop, pp. 143–148 (December 2010)
Wille, R., Große, D., Dueck, G.W., Drechsler, R.: Reversible Logic Synthesis with Output Permutation. In: Int’l Conf. on VLSI Design, pp. 189–194. IEEE (January 2009)
Fazel, K., Thornton, M., Rice, J.: ESOP-based Toffoli Gate Cascade Generation. In: IEEE Pacific Rim Conf. on Communications, Computers and Signal Processing, pp. 206–209. IEEE (August 2007)
Große, D., Wille, R., Dueck, G.W., Drechsler, R.: Exact Multiple-Control Toffoli Network Synthesis With SAT Techniques. IEEE Trans. on CAD 28(5), 703–715 (2009)
Soeken, M., Wille, R., Dueck, G.W., Drechsler, R.: Window optimization of reversible and quantum circuits. In: Int’l Symp. on Design and Diagnostics of Electronic Circuits and Systems, pp. 341–345 (April 2010)
Wille, R., Soeken, M., Drechsler, R.: Reducing the number of lines in reversible circuits. In: Design Automation Conference, pp. 647–652. ACM (June 2010)
Miller, D.M., Wille, R., Drechsler, R.: Reducing reversible circuit cost by adding lines. In: Int’l Symp. on Multiple-Valued Logic, pp. 217–222 (May 2010)
Barenco, A., Bennett, C.H., Cleve, R., DiVincenzo, D.P., Margolus, N., Shor, P., Sleator, T., Smolin, J.A., Weinfurter, H.: Elementary gates for quantum computation. Phys. Rev. A 52(5), 3457–3467 (1995)
Maslov, D., Dueck, G.: Improved quantum cost for n-bit toffoli gates. Electronics Letters 39(25), 1790–1791 (2003)
Pérez, F., Granger, B.E.: Ipython: A system for interactive scientific computing. Computing in Science and Engineering 9(3), 21–29 (2007)
Somenzi, F.: CUDD: CU Decision Diagram Package Release 2.3.1. University of Colorado at Boulder (2001), CUDD, vlsi.colorado.edu/~fabio/CUDD/
Haedicke, F., Frehse, S., Fey, G., Große, D., Drechsler, R.: metaSMT: Focus on Your Application not on Solver Integration. In: Int’l Workshop on Design and Implementation of Formal Tools and Systems (November 2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Soeken, M., Frehse, S., Wille, R., Drechsler, R. (2012). RevKit: An Open Source Toolkit for the Design of Reversible Circuits. In: De Vos, A., Wille, R. (eds) Reversible Computation. RC 2011. Lecture Notes in Computer Science, vol 7165. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29517-1_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-29517-1_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-29516-4
Online ISBN: 978-3-642-29517-1
eBook Packages: Computer ScienceComputer Science (R0)