Presented By Anna Fariha Roll : SN – 213 MS, 1 st Semester Session: 2010-11 Boolean Matching.

Slides:



Advertisements
Similar presentations
Switching circuits Composed of switching elements called “gates” that implement logical blocks or switching expressions Positive logic convention (active.
Advertisements

Three Special Functions
Prof. Sin-Min Lee Department of Computer Science
1 Recursive Learning Madhurima Maddela. ELEC /26/052 Decision Tree Traditionally used to branch and bound in the search space to generate test.
Class Presentation on Binary Moment Diagrams by Krishna Chillara Base Paper: “Verification of Arithmetic Circuits using Binary Moment Diagrams” by.
A Diagnostic Test Generation System Yu Zhang Vishwani D. Agrawal Auburn University, Auburn, Alabama USA Nov. 3rdITC
Spring 07, Feb 13 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Binary Decision Diagrams Vishwani D. Agrawal James.
A Transformation Based Algorithm for Reversible Logic Synthesis D. Michael Miller Dmitri Maslov Gerhard W. Dueck Design Automation Conference, 2003.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
Fall 2006, Oct. 31, Nov. 2 ELEC / Lecture 10 1 ELEC / (Fall 2006) Low-Power Design of Electronic Circuits Power Analysis:
08/07/041 CSE-221 Digital Logic Design (DLD) Lecture-8:
Exploiting Symmetry in SAT-Based Boolean Matching for Heterogeneous FPGA Technology Mapping Yu Hu 1, Victor Shih 2, Rupak Majumdar 2 and Lei He 1 1 Electrical.
Spring 07, Feb 8 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Logic Equivalence Vishwani D. Agrawal James J.
EE290A 1 Retiming of AND- INVERTER graphs with latches Juliet Holwill 290A Project 10 May 2005.
Boolean Matching in Logic Synthesis. Equivalence of Functions Equivalence of two functions defined under l Negation of input variables l Permutation of.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 3 – Combinational Logic Design Part 1 –
ECE 667 Synthesis and Verification of Digital Systems
Chapter 3 Combinational Logic Design
Lecture 3. Boolean Algebra, Logic Gates
Fast Spectral Transforms and Logic Synthesis DoRon Motter August 2, 2001.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 3 – Combinational Logic Design Part 1 –
Emerging Logic Devices
Combinational Logic Design
Overview Part 1 – Design Procedure 3-1 Design Procedure
Functional Timing Analysis Made Fast and General Presenter: Yi-Ting Chung Advisor: Jie-Hong Roland Jiang 03/09/2012 Graduate Institute of Electronics Engineering,
Lecture 3: Incompletely Specified Functions and K Maps CSE 140: Components and Design Techniques for Digital Systems Fall 2014 CK Cheng Dept. of Computer.
BOOLEAN FUNCTION PROPERTIES
CPSC 171 Introduction to Computer Science Boolean Logic, Gates, & Circuits.
Faster Logic Manipulation for Large Designs Alan Mishchenko Robert Brayton University of California, Berkeley.
Boolean Algebra and Logic Gates CE 40 B 18 June 2003.
1 Logic Gates Digital Computer Logic Kashif Bashir WWW:
Literature Review: A New Decomposition Algorithm for Threshold Synthesis and Generalization of Boolean Functions Paper by José L. Subirats, José M. Jerez,
Combinational Logic Design BIL- 223 Logic Circuit Design Ege University Department of Computer Engineering.
Dr. Eng. Farag Elnagahy Office Phone: King ABDUL AZIZ University Faculty Of Computing and Information Technology CPCS 222.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 3 – Combinational Logic Design Part 1 –
1 A Novel Synthesis Algorithm for Reversible Circuits Mehdi Saeedi, Mehdi Sedighi*, Morteza Saheb Zamani {msaeedi, msedighi, aut.ac.ir.
Linear Algebra. Circuits The circuits in computers and other input devices have inputs, each of which is either a 0 or 1, the output is also 0s and 1s.
Weikang Qian. Outline Intersection Pattern and the Problem Motivation Solution 2.
Kuo-Hua Wang, Chung-Ming Chan, Jung-Chang Liu Dept. of CSIE Fu Jen Catholic University Slide: Chih-Fan Lai Simulation and SAT-Based Boolean Matching for.
ICS 252 Introduction to Computer Design Lecture 12 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
EE 5900 Advanced Algorithms for Robust VLSI CAD, Spring 2009 Combinational Circuits.
CHAPTER 1 SETS, FUNCTIONs, ELEMENTARY LOGIC & BOOLEAN ALGEBRAs
CSE 140: Components and Design Techniques for Digital Systems Lecture 3: Incompletely Specified Functions and K Maps CK Cheng Dept. of Computer Science.
1 Boolean Satisfiability (SAT) Class Presentation By Girish Paladugu.
New Canonical Form for Fast Boolean Matching in Logic Synthesis and Verification Afshin Abdollahi and Massoud Pedram Department of Electrical Engineering.
Binary Decision Diagrams Prof. Shobha Vasudevan ECE, UIUC ECE 462.
November 25Asian Test Symposium 2008, Nov 24-27, Sapporo, Japan1 Sequential Circuit BIST Synthesis using Spectrum and Noise from ATPG Patterns Nitin Yogi.
Speaker: Nansen Huang VLSI Design and Test Seminar (ELEC ) March 9, 2016 Simulation-Based Equivalence Checking.
Lecture 1 Gunjeet kaur Dronacharya group of institutions.
Reducing Structural Bias in Technology Mapping
Boolean Algebra & Logic Gates
Digital Logic.
Lecture 3: Incompletely Specified Functions and K Maps
Chih-Fan Lai1, J.-H. Roland Jiang1, and Kuo-Hua Wang2
EI205 Lecture 5 Dianguang Ma Fall 2008.
CSCI-100 Introduction to Computing
CHAPTER 3 SETS AND BOOLEAN ALGEBRA
ECE 331 – Digital System Design
Emerging Logic Devices
Faster Logic Manipulation for Large Designs
Lecture 3: Incompletely Specified Functions and K Maps
Faster Logic Manipulation for Large Designs
CSE140 HW2 Preparation Xinyuan Wang 04/20/2018.
Fast Computation of Symmetries in Boolean Functions Alan Mishchenko
Chapter 3 – Combinational Logic Design
Design Example “Date of Birth Problem”
Combinational Circuits
Combinational Circuits
Lecture 3: Incompletely Specified Functions and K Maps
Presentation transcript:

Presented By Anna Fariha Roll : SN – 213 MS, 1 st Semester Session: Boolean Matching

Dept of CSE, University of Dhaka2 Presentation Outline  Equivalence of Functions  Negation of Input Variables  Permutation of Input Variables  Negation of Output  Classes of Functional Equivalence  Boolean Matching  Boolean Matching Algorithms  Boolean Signature  Signature of Function  Unateness Property  Symmetry Property  Size of On-Set  Signature of Variables  Cofactor Signature  Cofactor Statistics and Component Signature  Single Fault Propagation Weight Signature and Partner Patterns  Flow Chart for Boolean Matching Algorithm using Boolean Signature  Application of Boolean Matching

Dept of CSE, University of Dhaka3 Considered under three cases:  Negation of Input Variables.  Permutation of Input Variables.  Negation of Output. 3 Equivalence of Functions

Dept of CSE, University of Dhaka4 n X = {x 1, x 2, x 3,…, x n }  Set of Boolean input variables. n f (X) and g (X)  Denotes two Boolean functions of X. n  (X)  Maps each x i to itself or its complement. n If g (X) = f (  (X))  Then we say f (X) and g (X) are equivalent functions. 4 Negation of Input Variables (1/2)

Dept of CSE, University of Dhaka5 Example:  X = {x 1, x 2, x 3 }  f (X) = x 1 + x 2 + x 3  g (X)= x 1 + x 2 + x 3   Mapping: x 1 x 2 x 3  g (X) = f (  (X) ), so f (X) and g (X) are equivalent functions.

Dept of CSE, University of Dhaka6 6 Permutation of Input Variables (1/2) n X = {x 1, x 2, x 3,…, x n }  Set of Boolean input variables. n f (X) and g (X)  Denotes two Boolean functions of X. n  (X)  Maps each x i to any x i. n If g (X) = f (  (X))  Then we say f (X) and g (X) are equivalent functions.

Dept of CSE, University of Dhaka7 Permutation of Input Variables (2/2) Example:  X = {x 1, x 2, x 3 }  f (X) = x 1 x 3 + x 2 + x 3 x 1  g (X)= x 3 x 2 + x 1 + x 2 x 3   Mapping: x 1 x 3 x 2 x 1 x 3 x 2  g (X) = f (  (X) ), so f (X) and g (X) are equivalent functions.

Dept of CSE, University of Dhaka8 8 Negation of Output n X = {x 1, x 2, x 3,…, x n }  Set of Boolean input variables. n f (X) and g (X)  Denotes two Boolean functions of X. n If g (X) = f (X) or g (X) = f (X)  Then we say f(X) and g(X) are equivalent functions. n Example:  X = {x 1, x 2, x 3 }  f (X) = x 1 x 2 x 3  g (X)= x 1 + x 2 + x 3  g (X) = f (X), so f (X) and g (X) are equivalent functions.

Dept of CSE, University of Dhaka9  N-equivalent  Equivalent under input Negation.  P-equivalent  Equivalent under input Permutation.  NP-equivalent  Equivalent under input Negation, input Permutation.  NPN-equivalent  Equivalent under input Negation, input Permutation, output Negation. 9 Classes of Functional Equivalence

Dept of CSE, University of Dhaka10 Boolean matching is defined as the problem of determining whether a Boolean function can be functionally equivalent to another one under a permutation of its inputs and complementation of some of its inputs or complementation of itself.

Dept of CSE, University of Dhaka11 n X = {x 1, x 2, x 3,…, x n }  Set of Boolean input variables. n Y = {y 1,y 2, y 3,…, y n }  Set of Boolean input variables. n f (X)  Denotes Boolean function of X. n g (Y)  Denotes Boolean function of Y. n  (X) (mapping from X to Y)  Maps each x i to a unique y j or y j. g (Y) = f (  (X) ) (or f (  (X) ) 11 Boolean Matching (2/2) Total number of mappings 2 n x n! x 2

Dept of CSE, University of Dhaka12  Canonical Forms  Burch et al. -“Efficient Boolean Function Matching”.  Wu et al. -“Efficient Boolean Matching Algorithm for Cell Libraries”.  Debnath et al. - “Fast Boolean Matching Under Permutation Using Representative”.  Ciric et al. - “Efficient Canonical Form for Boolean Matching of Complex Functions in Large Libraries”.  Hinsberger et al. - “Boolean Matching for Large Libraries”.  Based on  Truth table of the function.  Table look-up.  Drawbacks  Space complexity.  Applicable for library cells with seven or fewer input variables.

Dept of CSE, University of Dhaka13  Boolean Signatures  Mohnke et al. - “Permutation and Phase Independent Boolean Comparison”.  Based on  Signature of function.  Signature of variable.  Signatures invariant to  Input permutation.  Input negation.  Output negation.  Signature used as necessary condition for equivalence.  Drawbacks:  Fails to conclude a unique correspondence of variables of the benchmark circuits.

Dept of CSE, University of Dhaka14  Signature Based Canonical Form  Abdollahi – “Symmetry Detection and Boolean Matching Utilizing a Signature-Based Canonical Form of Boolean Functions”.  Based on  Generalized signatures.  Variable symmetries.  Handles combinational functions.  No limitation on the number of input variables.  Spectral Methods  Clarke et al. – “Spectral Transforms for Large Boolean Functions With Applications to Technology Mapping”.  Miller - "A Spectral Method for Boolean Function Matching“.

Dept of CSE, University of Dhaka15  Signature of function.  Signature of variable.  Signatures invariant to  Input permutation.  Input negation.  Output negation.  Signature used as necessary condition for equivalence. 15 Boolean Signature

Dept of CSE, University of Dhaka16 l Unateness Property. l Symmetry Property. l Size of On-Set. 16 Signature of Function

Dept of CSE, University of Dhaka17 Example g(X) = x 1 x 2 x 4 + x 1 x 2 x 5 + x 1 x 3 x 6 + x 1 x 3 x 7  Total variables  n = 7 (x 1, x 2, x 3, x 4, x 5, x 6, x 7 ).  Binate variables (having both complemented and uncomplented values)  b = 3 (x 1, x 2, x 3 ).  Unate variables (having either of the complemented or uncomplented values)  u = 4 (x 4, x 5, x 6 x 7 ).  u = n – b. 17 Unateness Property (1/2)

Dept of CSE, University of Dhaka18  Matched functions must have the same number of unate variables.  Speed-up of phase assignment  Transforming negative unate variables to positive ones by adding inverters.  All unate variables being positive unate  Phase assignment required for binate variables only.  Speed-up of permutation  Unate variables not being associated to binate variables. 18 Unateness Property (2/2)

Dept of CSE, University of Dhaka19 Symmetry Property (1/2)  Symmetry Set  A set of variables that are pair wise interchangeable without affecting the logic functionality.  Symmetry Class  A symmetry class is an ensemble of symmetry sets with the same cardinality.  Matched functions having the same symmetry classes.  Variables in different symmetry sets not being associated.

Dept of CSE, University of Dhaka20 Symmetry Property (2/2) Example g (X) = x 1 x 2 x 3 + x 4 x 5 + x 6 x 7  3 Symmetry Sets 1.{x 1, x 2, x 3 } 2.{x 4, x 5 } 3.{x 6, x 7 }  2 Symmetry Classes 1.C 3 = {{x 1, x 2, x 3 }} 2.C 2 = {{x 4, x 5 }, {x 6, x 7 }}  Signature [|C 1 |, |C 2 |, |C 3 |, |C 4 |, |C 5 |, |C 6 |, |C 7 |] = [0,2,1,0,0,0,0]

Dept of CSE, University of Dhaka21  Set of minterms for which a function f (X) evaluates to 1.  Matched functions must have the same size of on - set.  Size of on-set, onsize (f), is denoted by |f|.  Computed on Ordered Binary Decision Diagram (ROBDD).  Output complementation changes the satisfy count of an n-input function f from |f| to 2 n - |f|. 21 Size of On-Set

Dept of CSE, University of Dhaka22  Cofactor Signature.  Cofactor Statistics and Component Signature.  Single Fault Propagation Weight Signature (SFP) and Partner Patterns. 22 Signature of Variables

Dept of CSE, University of Dhaka23  Cofactor signature of a variable x t for function f : onsize (x t  f x t ) : 0-branch : 1-branch xtxt x t  f x t Cofactor Signature

Dept of CSE, University of Dhaka24 l A sorted list of onsize (x t x j  f x t x j ) for all x t in the input set xtxjfxtxjxtxjfxtxj 01 xtxt xjxj 24 Cofactor Statistics and Component Signature

Dept of CSE, University of Dhaka25 l (onsize (x t  f x t  f x t ), onsize (x t  f x t  f x t ), onsize (f x t  f x t ) ) xtxt xtxt xtxt xtxt Single Fault Propagation Weight Signature and Partner Patterns

Dept of CSE, University of Dhaka26 Flow Chart for Boolean Matching Algorithm using Boolean Signature Function f and g Compute Signatures of Functions Equal? Not Matched No Compute Signatures of variables Yes Equal? Equivalence of f and g ? Matched Not Matched Not Matched Yes No

Dept of CSE, University of Dhaka27  Technology Mapping  Matching of complex gates.  Exploiting implicit don’t care.  Logic Verification  When input correspondence is not given.  Verify correctness of a logic circuit.  Logic Synthesis  Cell library binding process. 27 Application of Boolean Matching

Dept of CSE, University of Dhaka28 Boolean matching is based on exact equivalence checking techniques that find a match whenever possible. Various kinds of algorithms exist for Boolean matching. An overview of Boolean Signature based algorithm is discussed.

Dept of CSE, University of Dhaka29 [1] L. Benini and G. De Micheli, “A survey of Boolean matching techniques for library binding,” ACM Trans. Design Automation of Electronic Systems, vol. 2, no. 3, pp. 193–226, July [2] J. R. Burch and D. E. Long, “Efficient Boolean function matching,” in Proc. Int. Conf. on Computer-Aided Design, pp. 408–411, Nov [3] Q. Wu, C. Y. R. Chen, and J. M. Acken, “Efficient Boolean matching algorithm for cell libraries,” Proc. IEEE Int. Conf. on Computer Design, pp. 36–39, Oct [4] D. Debnath and T. Sasao, “Fast Boolean matching under permutation using representative,” Proc. ASP Design Automation Conf., pp. 359–362, Jan [5] J. Ciric and C. Sechen, “Efficient canonical form for Boolean matching of complex functions in large libraries,” IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 22, no. 5, pp. 535–544, May [6] D. Debnath and T. Sasao, “Efficient computation of canonical form for Boolean matching in large libraries,” Proc. ASP Design Automation Conf., pp. 591–596, Jan [7] U. Hinsberger and R. Kolla, “Boolean matching for large libraries,” Proc. Design Automation Conf., pp. 206–211, [8] J. Mohnke and S. Malik, “Permutation and phase independent Boolean comparison,” Integration - the VLSI journal, 16: pp , [9] E.M. Clarke et al., "Spectral Transforms for Large Boolean Functions with Applications to Technology Mapping", Proc. Design Automation Conference, pp , [10] D.M.Miller, "A Spectral Method for Boolean Function Matching", Proc. European Design and Test Conference, pp. 602, [11] A. Abdollahi and M. Pedram, "Symmetry Detection and Boolean Matching Utilizing a Signature-Based Canonical Form of Boolean Functions,“ Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions, pp 1128 – 1137, on June [12]

Dept of CSE, University of Dhaka30 ?