Professional Documents
Culture Documents
Igor Markov
University of Michigan
Electrical Engineering & Computer Science
Outline
Historical motivation
Arbitrary computations via reversible
Rev. ckts: basic definitions & examples
Recent implementations in CMOS
Reversible synthesis & other EDA tasks
Novel motivations for reversible circuits
Historical Motivation
Implementing Arbitrary
Computations via Reversible
trivial encoder
bijection f
trivial decoder
Constructive
procedure
argument
Adds variables
result
?
?
Definitions
N bits at input
N bits at output
Every input & output bit-string possible
Bijection
Additional restriction: no fanout
NOT gate
Examples
x
x
y
CNOT gate
x y
yx z
Toffoli gate
y
zxy
x y z x
y z
0 0 0 0
0 0
0 0 1 0
0 1
zxy
0 1 0 0
1 1
0 1 1 0
1 0
1 0 0 1
0 0
1 0 1 1
0 1
1 1 0 1
1 1
1 1 1 1
1 0
zxy xy=z y
Implementations in CMOS
B. Desoete and
A. De Vos
A reversible
carry-look-ahead
adder using
control gates,
Integration, the
VLSI Journal,
vol. 33 (2002),
pp. 89-104
384 transistors
no power rails
Straightforward
Equivalence checking
New Motivation:
Inherently Reversible Applications
Information is re-coded,
but none is lost or added
Bit-permutations
Butterfly operation from FFT
Reversibility implied
by quantum mechanics
A conventional reversible gate,
can be extended by linearity,
e.g., a quantum inverter is just
01
10
Thank you!