Logical-Depth-Oriented Reversible Logic Synthesis

32
IWLS 2011 Logical-Depth-Oriented Reversible Logic Synthesis Mona Arabzadeh, Morteza Saheb Zamani, Mehdi Sedighi and Mehdi Saeedi Email: {m.arabzadeh, szamani, msedighi, msaeedi}@ aut.ac.ir Amirkabir University of Technology Tehran, Iran Quantum Design Automation Lab Computer Engineering and Information Technology Department

Transcript of Logical-Depth-Oriented Reversible Logic Synthesis

Page 1: Logical-Depth-Oriented Reversible Logic Synthesis

IWLS 2011

Logical-Depth-Oriented Reversible Logic Synthesis Mona Arabzadeh, Morteza Saheb Zamani, Mehdi Sedighi and

Mehdi Saeedi

Email: {m.arabzadeh, szamani, msedighi, msaeedi}@ aut.ac.ir

Amirkabir University of TechnologyTehran, Iran

Quantum Design Automation Lab Computer Engineering and Information Technology Department

Page 2: Logical-Depth-Oriented Reversible Logic Synthesis

Contents

Basic Concepts2

Proposed synthesis method4

Introduction31

Previous work33

Conclusion6

Experimental results35

June 3, 2011 2

IWLS 2011

Page 3: Logical-Depth-Oriented Reversible Logic Synthesis

Introduction

Circuit depth

Quantum technologychallenges

Number of input qubits

June 3, 2011 3

IWLS 2011

Limited in the current technologiesLimited due to qubit decoherence

Page 4: Logical-Depth-Oriented Reversible Logic Synthesis

Introduction

TimeComplexity

Depth: A parameter to consider the execution time of a circuit: Number of Logical levels Gates that can be performed in parallel consider as one Logical Level

SpaceComplexity

Ancillae: Helper qubits which are added to the circuit to reduce Circuit Depth

June 3, 2011 4

IWLS 2011

Page 5: Logical-Depth-Oriented Reversible Logic Synthesis

“Parallel quantum computation and quantum codes”, SIAM Journal on computing, 2001 [2]

June 3, 2011

IWLS 2011

5

NCEfficient parallel class in

classical computation

QNC

Quantum analog of the class NC

Logarithmic depth

circuits by adding ancillae

Page 6: Logical-Depth-Oriented Reversible Logic Synthesis

Boolean Reversible circuits

Parallel synthesis of Boolean

reversible circuits

June 3, 2011 6

IWLS 2011

Applications in quantum computing

Page 7: Logical-Depth-Oriented Reversible Logic Synthesis

Basic Concepts Boolean reversible function

n-input, n-output,

Unique output assignment

Example: a 3-input, 3-output

• function: 2,7,0,1,6,3,4,5

June 3, 2011

IWLS 2011

7

f3 f2f1a3a2a1

2 0 1 0 0 0 0 0

7 1 1 1 1 1 0 0

0 0 0 0 2 0 1 0

1 1 0 0 3 1 1 0

6 0 1 1 4 0 0 1

3 1 1 0 5 1 0 1

4 0 0 1 6 0 1 1

5 1 0 1 7 1 1 1

Page 8: Logical-Depth-Oriented Reversible Logic Synthesis

Basic Concepts Permutation function:

Every permutation function can be written uniquely, except for the order, as a product of disjoint cycles

June 3, 2011

IWLS 2011

8

f3 f2f1a3a2a1

1 1 00 0 0 0 0

7 1 1 1 1 1 0 0

4 0 0 12 0 1 0

000 0 3 1 1 0

6 0 1 1 4 0 0 1

3 1 1 0 5 1 0 1

20 106 0 1 1

5 1 0 1 7 1 1 1

1

7

53

02

4

6F = (0,1,7,5,3) (2,4,6)

Page 9: Logical-Depth-Oriented Reversible Logic Synthesis

Basic Concepts Reversible gate

Various reversible gates

CmNOT gates

• NOT, CNOT, C2NOT (Toffoli), …

– Positive controls

– Negative controls

Controlled-V

Controlled-V+

IWLS 2011

June 3, 2011 9

Page 10: Logical-Depth-Oriented Reversible Logic Synthesis

Basic Concepts Elementary gates:

NOT, CNOT, controlled-V, and controlled-V+

Quantum cost: The number of elementary gates required for simulating a

given gate

Reversible circuit: A set of reversible gates

IWLS 2011

June 3, 2011 10

Page 11: Logical-Depth-Oriented Reversible Logic Synthesis

Reversible circuits: SynthesisIWLS 2011

June 3, 2011

High-levelDescription

Gate-level circuits

Physical Implementation

11

4

26

7

5

3

0

1

Page 12: Logical-Depth-Oriented Reversible Logic Synthesis

Previous work: “Synthesis of Reversible Logic Circuits”, TCAD, 2003. [12]

Decomposes every cycle with length larger than two to a set of pairs of disjoint cycles with length two :Transposition

(b0, b1, b2, …, bk) = (b0, b1 )(bk-1, bk)(b0, b2, b3, …, bk-1 )

Synthesizes each disjoint transposition pair (a, b)(c, d) using πκ0 π -1 circuit

June 3, 2011

IWLS 2011

12

π κ0 π -12n - 42n - 32n - 22n - 1

2n - 32n - 42n - 12n - 2

abcd

badc

Page 13: Logical-Depth-Oriented Reversible Logic Synthesis

Previous work: “Reversible circuit synthesis using a cycle-based approach”, JETC, 2010. [9]

k-cycle-based synthesis algorithm: set of cycles of length less than 6

The k-cycle method consists of two main parts:

Synthesis of Seven Building Blocks (Elementary Cycles):

• a pair of 2-cycles

• a single 3-cycle

• a pair of 3-cycles

• a single 5-cycle

• a pair of 5-cycles

• a pair of 4-cycles

• a single 2-cycle (4-cycle)

followed by a single 4-cycle (2-cycle)

IWLS 2011

13June 3, 2011

Cycle (2,2)

Cycle (3,3)

Cycle (3)

Cycle (5)

Cycle (5,5) Cycle (4,4)

Cycle (4,2)

Page 14: Logical-Depth-Oriented Reversible Logic Synthesis

Previous work: “Reversible circuit synthesis using a cycle-based approach”, JETC, 2010. [9]

k-cycle-based synthesis algorithm: set of cycles of length less than 6

The k-cycle method consists of two main parts:

Decomposition: • A given k-cycle should be decomposed into a set of elementary cycles

• It was shown that an arbitrary permutation can be decomposed into a set of elementary cycles:

IWLS 2011

14June 3, 2011

ElementaryCycle

ElementaryCycle

ElementaryCycle

ElementaryCycle

Page 15: Logical-Depth-Oriented Reversible Logic Synthesis

Parallel Cycle-Based Synthesis Method

June 3, 2011

IWLS 2011

15

Goal: To find distinct subsets in input specification To perform them in parallel

Page 16: Logical-Depth-Oriented Reversible Logic Synthesis

Parallel Structure

June 3, 2011

IWLS 2011

16

Adding 2n ancillae

Copying the input qubits to the ancillae

Distributing disjoint cycles in 3 subsets

Using cycle-based synthesis method for each subset

Transferring the output to the main qubits

Parallel Structure

Steps

Parallel Structure

Steps

2

1

3

5

4

Page 17: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

17

Adding 2n ancillae1

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 18: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

18

Copying the input qubits to the ancillae2

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 19: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

Distributing disjoint cycles in 3 subsets3

19

F = (1,3)(7,10)(0,4)(6,15)(2,8)(5,13)

(1,3)(7,10)

(0,4)(6,15)

(2,8)(5,13)

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 20: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

20

Using cycle-based synthesis method for each subset4

F = (1,3)(7,10)(0,4)(6,15)(2,8)(5,13)

(0,4)(6,15)

(2,8)(5,13)

(1,3)(7,10)

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 21: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

21

Using cycle-based synthesis method for each subset4

F = (1,3)(7,10)(0,4)(6,15)(2,8)(5,13)

(0,4)(6,15)

(2,8)(5,13)

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 22: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

22

Using cycle-based synthesis method for each subset4

F = (1,3)(7,10)(0,4)(6,15)(2,8)(5,13)

(2,8)(5,13)

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 23: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

23

Using cycle-based synthesis method for each subset4

F = (1,3)(7,10)(0,4)(6,15)(2,8)(5,13)

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 24: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

24

F = (1,3)(7,10)(0,4)(6,15)(2,8)(5,13)

Transferring the output to the main qubits5

0

0000

0

0

0

G

GGGG

G

G

G

S1

S2

S3

Page 25: Logical-Depth-Oriented Reversible Logic Synthesis

Cycle-Based Synthesis Three main differences with [9]:

June 3, 2011

IWLS 2011

25

Sequential-Cycle Structure

Cycle Operating Interval

Using Negative Controls

To improve Quantum Cost

and Depth

Page 26: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

26

Cycle-Based Synthesis

Π-1

Structure in [9], [12]

Sequential-Cycle Structure

Page 27: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

27

Cycle-Based Synthesis

Cycle Operating Interval Example

Page 28: Logical-Depth-Oriented Reversible Logic Synthesis

June 3, 2011

IWLS 2011

28

Cycle-Based Synthesis

Using Negative Controls:

Elementary Cycle Length Total cost Cost/Length Cost/Length

[9]

(2,2) 4 32n-66 8n-16.5 8.5n-16

(3) 3 30n-80 10n-26.6 10.7n-27.3

(3,3) 6 36n-60 6n-10 6.3n-15.3

(4,2) 6 48n-152 8n-25.3 8.3n-20.3

(4,4) 8 52n-136 6.5n-17 7n-15.7

(5) 5 58n-140 11.6n-28 12n-26

(5,5) 10 56n-92 5.6n-9.2 6.4n-5.4

Page 29: Logical-Depth-Oriented Reversible Logic Synthesis

Experimental Results

June 3, 2011

IWLS 2011

29

Benchmark n Garbage QC Depth QC [9] Depth [9] Imp. QC Imp. Depth

hwb8 8 16 7400 2316 6940 6205 -6.6 62.6

hwb9 9 18 15376 4800 16173 14312 4.9 66.4

hwb10 10 20 38388 11787 35618 31908 -7.7 63.0

hwb11 11 22 89434 27079 90745 81440 1.4 66.7

hwb12 12 24 208992 64727 198928 184210 -5.0 64.8

hwb13 13 26 431054 131166 436305 397147 1.2 66.9

nth_prime7 7 14 3108 1651 3172 2782 2.0 40.6

nth_prime9 9 18 17744 15202 17975 15767 1.2 3.5

nth_prime10 10 20 43026 14446 40301 35511 -6.7 59.3

nth_prime11 11 22 93548 40316 95433 85093 1.9 52.6

nth_prime12 12 24 217294 140507 208227 187006 -4.3 24.8

nth_prime13 13 26 469422 281129 474660 431644 1.1 34.8

Average -1.3 50.5

Page 30: Logical-Depth-Oriented Reversible Logic Synthesis

Future Directions Working on the improvement of the resulting

synthesized circuits

By Better distribution algorithm • In terms of depth or quantum cost

By developing level compaction algorithms

June 3, 2011

IWLS 2011

30

Page 31: Logical-Depth-Oriented Reversible Logic Synthesis

Conclusions

June 3, 2011

IWLS 2011

31

A Boolean reversible logic synthesis method withlogical-depth optimization is proposed

Cycle representation was chosen to distinct parallelsubsets in input specification

The cycle-based synthesis method equipped withdepth-consideration was used

The number of logical levels can be improved by upto 67% by adding 2n ancillae with less than 2%increase in the quantum cost on average

Page 32: Logical-Depth-Oriented Reversible Logic Synthesis

IWLS 2011

Questions …