Templates for Toffoli Network Synthesis by Dmitri Maslov Gerhard W. Dueck Michael D. Miller.

Slides:



Advertisements
Similar presentations
Quantum Circuit Decomposition
Advertisements

Reversible Gates in various realization technologies
Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Design Representation and Fault Detection
Types of Logic Circuits
Chapter 2 Logic Circuits.
Realization of Incompletely Specified Reversible Functions Manjith Kumar Ying Wang Natalie Metzger Bala Iyer Marek Perkowski Portland Quantum Logic Group.
HMM-BASED PATTERN DETECTION. Outline  Markov Process  Hidden Markov Models Elements Basic Problems Evaluation Optimization Training Implementation 2-D.
Sequential Optimization without State Space Exploration A. Mehrota, S. Qadeer, V. Singhal, R. Brayton, A. Sangiovanni-Vincentelli, A. Aziz Presented by:
A Transformation Based Algorithm for Reversible Logic Synthesis D. Michael Miller Dmitri Maslov Gerhard W. Dueck Design Automation Conference, 2003.
Derivatives of Perkowski’s Gate k f2 g h t t De Vos gates  f1f1  A B P Q Feynman gates A B P f 2f 2  C Q R Toffoli gates Q P f 2 A C R B S D 0.
Reversible Circuit Synthesis Vivek Shende & Aditya Prasad.
Introduction to Reversible Ckts Igor Markov University of Michigan Electrical Engineering & Computer Science.
April 25, A Constructive Group Theory based Algorithm for Reversible Logic Synthesis.
Chapter 4 Logic Gates and Boolean Algebra. Introduction Logic gates are the actual physical implementations of the logical operators. These gates form.
Minimization Techniques for Reversible Logic Synthesis.
Copyright © Cengage Learning. All rights reserved.
ENEE244-02xx Digital Logic Design Lecture 7. Announcements Homework 3 due on Thursday. Review session will be held by Shang during class on Thursday.
Introduction to Quantum logic (2) Yong-woo Choi.
Introduction To Logarithms. Logarithms were originally developed to simplify complex arithmetic calculations. They were designed to transform multiplicative.
Derivative of the logarithmic function
Unit 11, Part 2: Introduction To Logarithms. Logarithms were originally developed to simplify complex arithmetic calculations. They were designed to transform.
Logic gates & Boolean Algebra. Introduction Certain components (called logic elements) of the computer combine electric pulses using a set of rules. Electric.
Boolean Algebra and Digital Circuits
Unit 11, Part 2: Introduction To Logarithms. Logarithms were originally developed to simplify complex arithmetic calculations. They were designed to transform.
REVERSIBLE LOGIC SYNTHESIS. Overview of the Presentation 1. Introduction 2. Design of a Reversible Full-adder Circuit.
1 Cost Metrics for Reversible and Quantum Logic Synthesis Dmitri Maslov 1 D. Michael Miller 2 1 Dept. of ECE, McGill University 2 Dept. of CS, University.
1 ECE 102 Engineering Computation Chapter 20 Source Transformations Dr. Herbert G. Mayer, PSU Status 9/2/2015 For use at CCUT Fall 2015.
Lecture 7 Topics –Boolean Algebra 1. Logic and Bits Operation Computers represent information by bit A bit has two possible values, namely zero and one.
Module 4.  Boolean Algebra is used to simplify the design of digital logic circuits.  The design simplification are based on: Postulates of Boolean.
Fundamentals of Electric Circuits Chapter 19
Biconditionals & Definitions. Biconditional Statement Contains the phrase “if & only if” Abbr. iff It is a conditional statement & its converse all in.
+ CS 325: CS Hardware and Software Organization and Architecture Gates and Boolean Algebra Part 2.
ACOE1611 Combinational Logic Circuits Reference: M. Mano, C. Kime, “Logic and Computer Design Fundamentals”, Chapter 2.
CSE Winter 2008 Introduction to Program Verification January 31 proofs through simplification.
05 BA2 Page 1 ECEn/CS 224 Boolean Algebra – Part 2.
ELE 523E COMPUTATIONAL NANOELECTRONICS
SOLVING LOGARITHMIC EQUATIONS Objective: solve equations with a “log” in them using properties of logarithms How are log properties use to solve for unknown.
7.4 Logarithmic Functions Write equivalent forms for exponential and logarithmic equations. Use the definitions of exponential and logarithmic functions.
Interval Notation Interval Notation to/from Inequalities Number Line Plots open & closed endpoint conventions Unions and Intersections Bounded vs. unbounded.
Generating Toffoli Networks from ESOP Expressions Yasaman Sanaee Winter 2009 University of New Brunswick.
On the Complexity of Manipulating Quantum Boolean Circuits Vincent Liew.
Chapter 2: Solving One-Step Equations & Inequalities 2.3 Simplifying Variable Expressions.
1 ECE 221 Electric Circuit Analysis I Chapter 11 Source Transformations Herbert G. Mayer, PSU Status 11/25/2014 For use at Changchun University of Technology.
Garbage in Reversible Designs of Multiple Output Functions
Lecture # 5 University of Tehran
CEC 220 Digital Circuit Design SOP and POS forms Friday, January 23 CEC 220 Digital Circuit Design Slide 1 of 17.
Quantum Cost Calculation of Reversible Circuit Sajib Mitra MS/ Department of Computer Science and Engineering University of Dhaka
WCCI, Vancouver, Canada July 20, 2006 Level Compaction in Quantum Circuits D. Maslov - University of Waterloo, Canada G. W. Dueck - University of New Brunswick,
CEC 220 Digital Circuit Design SOP and POS forms Friday, Sept 11 CEC 220 Digital Circuit Design Slide 1 of 17.
Quantum Circuit Simplification Using Templates D. Maslov - University of Victoria, Canada G. W. Dueck - UNB, Canada C. Young - University of Victoria,
1. 2 Translations Stretches Reflections Combinations 1. Function Transformations Horizontal Vertical x-axis y-axis y = x Inverse Relations FRSTFRST 3.
Circuits, Truth Tables & Boolean Algebra. Expressions Can describe circuits in terms of Boolean expression.
1 CS 352 Introduction to Logic Design Lecture 2 Ahmed Ezzat Boolean Algebra and Its Applications Ch-3 + Ch-4.
Circuit Synthesis A logic function can be represented in several different forms:  Truth table representation  Boolean equation  Circuit schematic 
A Synthesis Method for MVL Reversible Logic by 1 Department of Computer Science, University of Victoria, Canada M. Miller 1, G. Dueck 2, and D. Maslov.
1 ECE 221 Electric Circuit Analysis I Chapter 11 Source Transformations Herbert G. Mayer, PSU Status 10/28/2015.
Fundamentals of Logic Design, 7 th editionRoth/Kinney © 2014 Cengage Learning Engineering. All Rights Reserved. 1 Boolean Algebra (continued) UNIT 3.
COMP541 Combinational Logic - 3
Logic Gates and Boolean Algebra
D. Cheung – IQC/UWaterloo, Canada D. K. Pradhan – UBristol, UK
Combinational Logic Circuits
COMP541 Combinational Logic - 3
TN 221: DIGITAL ELECTRONICS 1
Fredkin/Toffoli Templates for Reversible Logic Synthesis
Hidden Markov Models Part 2: Algorithms
Logarithms and Logarithmic Functions
Introduction to Quantum logic (2)
Resolution Proofs for Combinational Equivalence
ECE 352 Digital System Fundamentals
COMP541 Combinational Logic - 3
Presentation transcript:

Templates for Toffoli Network Synthesis by Dmitri Maslov Gerhard W. Dueck Michael D. Miller

Outline - Basic definitions. - Templates as a simplification tool. - The templates: definition; classification; application. - Conclusion. IWLS 2003 Laguna Beach, CA page 1/14

Basic Definitions Definition. Multiple output Boolean function is called reversible iff: is a bijection. Examples (NOT) is reversible (Feynman gate) is reversible is not reversible. IWLS 2003 Laguna Beach, CA page 2/14

Basic Definitions NOT CNOT (Feynman) … Generalized Toffoli Toffoli In reversible logic fan-outs and feed-back conventionally are not allowed, thus any network is a cascade. IWLS 2003 Laguna Beach, CA page 3/14

Templates as a Simplification Tool As 3 gates can be rewritten by a sequence of 2, some s gates can be rewritten as a sequence of k gates (k<s). Network simplification approach. - preprocessing: find as many rewriting rules as possible. - simplify by matching rewriting rules and rewriting the circuit. IWLS 2003 Laguna Beach, CA page 4/14

Templates as a Simplification Tool Problems in such naive approach. 1.The number of rewriting rules is very large: a. For s=3, k=2 and n=3 (number of lines) the number of rewriting rules is 180. b. Many rewriting rules are redundant. c. The number of non-redundant rewriting rules only grows exponentially on n. 2. Very often a rewriting can be applied only when certain gates are moved. IWLS 2003 Laguna Beach, CA page 5/14

The Templates: Definition Observation 1. If one has a rewriting rule then the gates in it satisfy equation Observation 3. If, then Observation 2. If we have an identity then for any parameter p, is a valid rewriting rule. IWLS 2003 Laguna Beach, CA page 6/14

The Templates: Definition A size m template is a cascade of m gates which realizes the identity function. Any template of size m should be independent of smaller size templates, i.e. application of smaller templates does not decrease the number of gates in a size m template. Given G 0 G 1 …G m-1, a template of size m, its application for parameter p, is: - for IWLS 2003 Laguna Beach, CA page 7/14

The Templates: Definition How many rewriting rules are there in one template? Parameter p: m/2 choices. Starting gate i: m choices. Directions of application: 2 (forward, backward). m2m2 A B C D E F G Example. Template ABCDEFG. p=4. Starting gate B. Direction: backward. B B A A G G F F C C D D E E IWLS 2003 Laguna Beach, CA page 8/14

The Templates: Classification A class of templates can be described as one picture (in terms of the defined pictorial representation), where: - t i – always a single line; - C i – a (finite) set of lines. The following is the complete classification of templates size m=1,2,…,7 for any number of horizontal lines, n. IWLS 2003 Laguna Beach, CA page 9/14

The Templates: Classification IWLS 2003 Laguna Beach, CA page 10/14

The Templates: Classification IWLS 2003 Laguna Beach, CA page 11/14

The Templates: Application In a program realization: - use size 4 templates to move gates – moving rule. - for other templates create a hierarchy where priority is proportional to the inverse of size. - try to apply templates with higher priority first. - given a template, match it by trying both directions, starting with any gate and trying to move other gates by the moving rule. IWLS 2003 Laguna Beach, CA page 12/14

The Templates: Application IWLS 2003 Laguna Beach, CA page 13/14

Conclusion Templates are a useful simplification tool. IWLS 2003 Laguna Beach, CA page 14/14 Sometimes, it is even possible to prove optimality of the Toffoli circuit.

Templates for Toffoli Network Synthesis by Dmitri Maslov Gerhard W. Dueck Michael D. Miller