effect of bdd optimization on synthesis of reversible and ...€¦ · – low-power design...

Post on 14-Oct-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Effect of BDD Optimization Effect of BDD Optimization on Synthesis of Reversible

d Q L iand Quantum Logic

Robert Wille, Rolf Drechsler,

Institute of Computer Science University of Bremen, GermanyUniversity of Bremen, Germany{rwille,drechsle}@informatik.uni-bremen.de

Outline• Motivation and Background• Motivation and Background

• BDD-based Synthesis

• Exploiting BDD-optimization

– Shared Nodes

– Complement EdgesComplement Edges

– Reordering

• Experimental Results

Conclusions

2

• Conclusions

Reversible Logic• Applications in • Applications in

– Quantum ComputingLow Power Design– Low-Power Design

– Optical ComputingDNA C ti– DNA Computing

– …1

1

1

1

Toffoli gate

1 0

3

Toffoli gate

Quantum Logic

• Is inherently reversible• Signals represented by qubits• Signals represented by qubits

(i.e. non-Boolean values)• Value of each qubit is restricted to 0 1 V or V

NOT P f i i

• Value of each qubit is restricted to 0, 1, V0 or, V1

1

0

• NOT: Peforms inversion• CNOT: controled inversion• V: ‘square root’ of NOT

11

10

1V

11

1V0 • V: square root of NOT

• V+: inverse of V VV1 0 V1

V+1 V0

4

Synthesis ProblemGi R f ti t T k Fi d t k • Given: Rev. function to be synthesized

• Task: Find network (i.e. a cascade of gates)

• Previous Work:No fanouts, no feedback

• Often rely on truth table (or similar) descriptionOnly applicable to small functions

5

Outline• Motivation and Background• Motivation and Background

• BDD-based Synthesis

• Exploiting BDD-optimization

– Shared Nodes

– Complement EdgesComplement Edges

– Reordering

• Experimental Results

Conclusions

6

• Conclusions

Binary Decision Diagrams (BDDs)

• Data structure for efficient representation and manipulation of Boolean functions

• Rooted, directed, acyclic graph, which consists of g ap , o s s s odecision nodes and two terminal nodes (leafs)

• Each decision node is labeled by a Boolean variable and has two child nodes (low and high)

7

nodes (low and high)

BDD-based Synthesis #1

1. Build BDD for function f using existing techniques2. Substitute each BDD node by a cascade of gates

8

BDD-based Synthesis #2

9

Example (XOR function)

10

BDD-based Synthesis #3

• Linear worst case behavior regarding run-time g gand space requirements

• Resulting circuits are bounded by BDD size

BDD optimization can be exploited

11

Outline• Motivation and Background• Motivation and Background

• BDD-based Synthesis

• Exploiting BDD-optimization

– Shared Nodes

– Complement EdgesComplement Edges

– Reordering

• Experimental Results

Conclusions

12

• Conclusions

Shared Nodes• Used to represent a sub formula more than once• Used to represent a sub-formula more than once• Need to preserve node values

(requires additional line)(requires additional line)

13

Complement Edges• Allows to represent a function as well as its p

negation by a single node only

14

Reordering

Can be directly yapplied (no further (no further adjustments)

15

Outline• Motivation and Background• Motivation and Background

• BDD-based Synthesis

• Exploiting BDD-optimization

– Shared Nodes

– Complement EdgesComplement Edges

– Reordering

• Experimental Results

Conclusions

16

• Conclusions

Experimental Setup

• Implemented on the top of CUDD • Benchmarks from RevLib (www revlib org) and • Benchmarks from RevLib (www.revlib.org) and

LGSynth package

• Objectives: – Circuit linesCircuit lines– Number of Toffoli gates– Quantum Cost Quantum Cost – Run-time (often negligible)

17

Results (selected)

18

RMRLS G t t l @ TCAD 2006

Comparison to Previous Work

• RMRLS: Gupta et al. @ TCAD, 2006• RMS: Maslov et al. @ TODAES, 2007

• Significant run-time for both RMRLS and RMS• Most of the functions aborted after 500 CPU

19

seconds

Outline• Motivation and Background• Motivation and Background

• BDD-based Synthesis

• Exploiting BDD-optimization

– Shared Nodes

– Complement EdgesComplement Edges

– Reordering

• Experimental Results

Conclusions

20

• Conclusions

Conclusions• BDD-based synthesis has been introducedy

• Effect of BDD optimizationEffect of BDD optimization– Shared Nodes: Always yields better results– Compl. Edges: Better results in most casesCompl. Edges: Better results in most cases– Orderings: Best results with exact ordering,

but Sifting also yields good circuitsg y g

• Comparison to Previous Work: Comparison to Previous Work: – Larger functions can be handled– Significant improvements in quantum cost

21

Significant improvements in quantum cost– More circuit lines needed

Effect of BDD Optimization Effect of BDD Optimization on Synthesis of Reversible

d Q L iand Quantum Logic

Robert Wille, Rolf Drechsler,

Institute of Computer Science University of Bremen, GermanyUniversity of Bremen, Germany{rwille,drechsle}@informatik.uni-bremen.de

top related