Binary Decision Diagrams

Size: px
Start display at page:

Download "Binary Decision Diagrams"

Transcription

1 Binary Decision Diagrams Sungho Kang Yonsei University

2 Outline Representing Logic Function Design Considerations for a BDD package Algorithms 2

3 Why BDDs BDDs are Canonical (each Boolean function has its own unique BDD, modulo ordering of variables) So two functions are identical if and only if their BDDs are identical BDDs are compact in many cases, compared to SOP Parity trees, adders, control logic (linear vs exponential) However multipliers are bad, and a few others 3

4 Why not SOP and POS The two-level representations of some functions are too large to be practical (e.g. XOR) Passing from SOP to POS and vice versa is difficult Taking the complement is difficult Taking the AND/OR of two sums of products is difficult Since SOP and POS are not canonical forms, answering the equivalence question for two functions is difficult Furthermore, deciding whether a product of sums is satisfiable is NP-complete 4

5 BDDs as MUX Circuits y 2 y 3 y 1 S = x 12 y + x 13 y = x 1 ( x 23 x + x 2 ) + x 12 x y = x + x = x y = x y + x y = x + x , ,

6 BDD Examples f (, 10) = 0 f (, 10) = 1 6

7 Effect of Variable Ordering f = abc + b d + c d 6 nodes vs. 4 nodes optimal a b c d b c a d 7

8 BDDs vs Decision Tree A decision tree is just the result of recursive Boolean expansion 2 decision tree nodes merge into 1 if they are isomorphic A decision tree node is redundant if its two children are identical 8

9 Formal Definition A BDD is a directed acyclic graph representing a multiple output switching function F The function of the terminal node is the constant function 1 The function of an edge is the function of the head node, unless the edge has the complement attribute, in which case the function of the edge is the complement of the function of the node The function of a node v in V is given by l(v)f T +l(v) f E where l(v) is label of v and f T (f E ) is the function of the T(E) edge The function of φ Φ is the function of its outgoing edge 9

10 Formal Definition An edge with (without) the attribute is called a complement (regular) edge BDDs are canonical if All internal nodes are descendents of some node in Φ There are no isomorphic subgraphs For every node, f T F E 10

11 ROBDD Reduced Ordered BDD Iteration of applying identification of isomorphic subgraphs and removal of redundant nodes Two functions are equivalent if they have the same BDD The size of the BDD is exponential in the number of variables in the worst case(e.g. multiplier) However BDDs are well-behaved for many functions that are not amenable to two-level representations The logical AND and OR of BDDs have the same complexity (polynomial in the size of the operands) Complementation is inexpensive Both satisfiability and tautology can be solved in constant time Indeed f is a tautology iff its BDD consists of the terminal node 1 11

12 ROBDD Covering problems can be solved in time linear in the size of BDD representing the constraints BDD sizes depend on the ordering Finding a good ordering is not always simple There are functions for which SOP or POS representations are mode compact than BDDs Unfortunately, many constraint functions of covering problems fall into this category In some cases SOP/POS forms are closer to the final implementation of a circuit For instance, if we want to implement a PLA, we need to generate at some point a SOP or POS form 12

13 Building (RO)BDDs 1 Order variables 2 Recursively cofactor the given SOP, in the specified order, until the cofactors become constants or single variables; 3 Merge any pair of equivalent nodes; 4 Delete any node which has identical child nodes; 5 Repeat the merge and delete steps, until neither applies to any node 13

14 Building (RO)BDDs f = ab f = a+b f a = b, f a = 0 f a = 1, f a = b f ab = 1, f a b = 0 f ab = 1, f a b = 0 14

15 Building (RO)BDDs f = abc + b d + c d f b = ac+c d, f b = d+c d f bc =a, f b c =d, f bc =d, f b c =d Each node of the BDD corresponds to one of the cofactors of the given function Each path corresponds to a minimum satisfying assignment: 15

16 BDDs are Efficient If the BDDs of functions f and g are available, then the following may be checked in constant time: f=0? (hard with SOP) f=1? (hard with SOP) f=g? (hard with SOP or POS) f=g? (hard with SOP or POS) 16

17 BDD for Linear Inequality F = abc F a = bc F a = 0 F ab =c F ab = 0 F a b = 0 F a b = 0 F = abcd 17

18 BDD for Linear Inequality... Linear growth: n variable BDD requires 2n nodes, whereas SOP grows quadratically 18

19 BDD for Linear Inequality d? Isomorphic subgraphs Linear growth: n variable BDD requires 2n nodes, 19

20 Growth of Parity Function? 20

21 Growth of Parity Function? 21

22 BDDs for FSMs BDDs can compactly represent huge sets Widely used to represent the set of reachable states of a Finite State Machine Used in every phase of synthesis and verification of sequential circuits 22

23 BDDs for Large Sets A set of m objects can be represented by a boolean function of n= log 2 (m) variables This function has a unique BDD For n=5, S(x 1,, x n ) represents 20 objects, but,... For n=6, S(x 1,, x n ) represents 40 objects Every added variable doubles the number of minterms 23

24 BDDs for Large Sets Every added variable doubles the number of minterms S = x 1 (x 2 +x 2 x 3 ) + x 1 x 2 = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 5 minterms When n = 4, 10 minterms 24

25 Design Consideration of BDD Package Shared BDD Two equivalent functions can be represented by the same BDD Unique Table Dictionary of functions represented in the DAG Best implemented as a hash table Strong Canonicity Checking for equivalence just requires checking that the pointers in the DAG associated with the functions are identical Attributed Edges Regular edge and complement edge Computed Table As a speed improvement, keep a table of recently computed functions Memory Management and Dynamic Re-Ordering Garbage collection 25

26 Shared BDDs Every node represents a Boolean function d... b c b c d 26

27 BDD Manipulation To implement operators like ITE efficiently, we need to understand to important data structures: The unique table (insures BDD is reduced) The computed table (insures that an operation like ITE(F,G,H) is never repeated) 27

28 BDD Data Structure f i=2, l=1 Node 2, variable x i = x 1 Node 3, variable x i = x 2 i=3, l=2 i=4, l=2 f = x 1 x 2 + x 1 x 2 x 3 n i=5, l=3 L T E

29 BDD Graph Data Structure Node i represents a Boolean function f f = x l(i) f xl(i) + x l(i) f xl(i) (label(i),j 0,j 1 ) (v,f v,f v ) Splitting variable v = x i l( 1) l( 2) K l( i) K l( j ) K l( j ) K 0 1 j 0 j 1 To avoid searching this (often large) data structure, we use a Hash Table 29

30 BDD Graph Data Structure BDD data structures are compact: ~22 bytes/node 10 6 nodes gives about 22MB However storage is still the main issue Spaceout on 1GB machines common Dynamic reordering necessary 30

31 Insuring Uniqueness Internally, each node is represented by a triple: (label(i),j 0,j 1 ) (v,f v,f v ) The label of the node is a variable of the function (the same at each level of the DAG) The children (j 0, j 1 ) of node i represent the cofactors of the node function Each triple is stored in memory and is never duplicated 31

32 The Unique Table i x l(i) = variable at level i Reduction rules insure that each triple is j 0 j 1 unique Hashing Function Key Node l( 1) l( 2) K l( i) K l( j ) K l( j ) K 0 1 j 0 j K i K j K j K

33 The Computed Table Similar to Unique Table, except: The hash key becomes the 4-tuple (ITE, F, G, H) The size of the table is fixed in advance, so that the computed table can fill up, and new table entries start replacing older entries This makes the Computed Table a cache, instead of a hash table 33

34 ITE Operator ITE(F,G,H) = FG + F H ITE(0,0,0) = 0 0 ITE(F,G,0) = FG AND(F,G) ITE(F,G,0) = 0 F>G ITE(F,1,0) = F F ITE(F,0,G) = F G F<G ITE(1,G,0) = G G ITE(F,G,G) = F G XOR(F,G) ITE(F,1,G) = F+G OR(F,G) ITE(F,0,G ) = (F+G) NOR(F,G) ITE(F,G,G ) = (F G) XNOR(F,G) ITE(G,0,1) = G NOT(G) ITE(F,1,G ) = F+G F G ITE(F,0,1) = F NOT(F) ITE(F,G,0) = F +G F G ITE(F,G,1) = (FG) NAND(F,G) ITE(1,1,1) =

35 The ITE Operator ITE can represent all 16 functions of 2 variables ITE(F,G,H) = FG + F H ITE(F,G,0) = FG ITE(F,1,G) = F+G ITE(F,G,0) = 0 ITE(F,0,G) = F G ITE(F,G,G) = F G ITE(F,G,G ) = (F G) AND(F,G) OR(F,G) F>G F<G XOR(F,G) XNOR(F,G) 35

36 ITE Operator ITE(F,G,H) = FG + F H = v (FG + F H) v + v (FG + F H) v = v (F v G v + F v H v ) + v (F v G v + F v H v ) = (v, ITE (F v, G v, H v ), ITE(F v, G v, H v ) ) positive cofactor negative cofactor Terminal cases ITE(1,F,G) = ITE(0,G,F) = ITE(F,1,0) = ITE(G,F,F) = F 36

37 ITE Operator Key Data structure that stores an item in a location of a table identified by its key The key is the triple(v, G, H) that identifies a node in the DAG Hashing function Maps the key into the location in the table The mapping is not one-to-one Possible collision Collision Chain All colliding entries are kept in linked list 37

38 Top Variables f i=2, l=1 Top variable of f is x 1. g i=3, l=2 i=4, l=2 i=5, l=3 Top variable of g is x

39 ITE Algorithm ITE(F,G,H) { (result, terminal_case) = TERMINAL_CASE(F,G,H) if (terminal_case) { return(result) (result, in_computed_table) = COMPUTED_TABLE_HASH_ENTRY(F,G,H) } if (in_computed_table) { return(result) } v = TOP_VARIABLE(F,G,H) T = ITE(Fv, Gv, Hv) E = ITE(Fv, Gv, Hv ) if (T=E) return(t) R = FIND_ADD_UNIQUE_TABLE(v, T, E) INSERT_COMPUTED_TABLE ( (F,G,H), R) RETURN (R) } 39

40 ITE Application I = ITE(F,G,H) = (a, ITE(F a,g a,h a ), ITE(F a,g a,h a ) ) = (a, ITE(1,C,H), ITE(B,0,H) ) = (a, C, (b, ITE(B b,0 b,h b ), ITE(B b,0 b,h b ) ) ) = (a, C, (b, ITE(1,0,1), ITE(0,0,D) ) ) = (a, C, (b,0,d) ) 40

41 BDD Proliferation Larger Base Boolean Algebras,which have more constants (ADDs, MTBDDs do matrix algebra) Edge Attribution Complement dots (ROCBDDs) Numerical Values (EVBDDs) Reduction Rule Variants Zero Suppressed BDDs (ZBDDs do Large sets) Binary Moment Diagrams (BMDs do multipliers) 41

42 ROCBDDs In BDDs (ROBDDs) no two distinct nodes represent the same function In ROCBDDs (reduced, ordered, complemented) no two nodes have the same or complementary functions This magic is worked with a complement dot edge attribute and a transformation of some sub-bdds to a standard form 2X (best case) reduction possible 42

43 Shared BDDs with Complement Arcs b b a b a b? Note: Left Child is always complement of right child, so use complement pointers (2X size reduction) 43

44 Example of Complement Dots (a b) a b 1 (a b c) a b c 1 Can appear only on 0-edges (E-edges) or outputs Function evaluates to 1 on paths with even # of 44

45 Complementation Rules R1 : f = xf x + x f x f = (f ) = (xf x + x f x ) R4 : f = xf x + x f x = (f ) = ( (xf x + x f x ) ) = ((x +f x )(x+f x )) = (xf x + x f x + f x f x ) = (xf x + x f x + f x f x (x + x) ) = (xf x + x f x ) R1 R2 R3 R4 Positive cofactor on left 45

46 Complementation Rules Complementation rules (for canonicity): 1-edge (T-edge, +cofactor) must be regular If complemented function needed on 1-edge, replace appropriate right subgraph with corresponding left subgraph 46

47 Conditioning of ITE Cells If we could identify all triple that give the same result, we could map all of them into the same entry of the computed table In general, finding all such triples is too expensive, but there are special cases that can be identified with very little effort Two arguments are the same function ITE(F,F,G) Two arguments are one of the complement of the other ITE(F,G,F ) One or more arguments are constants ITE(F,G,0) These checks can be performed in constant time 47

48 ITE_CONSTANT Algorithm ITE_CONSTANT (F,G,H) { (result, terminal_case) = TERMINAL_CASE(F,G,H) if (terminal_case) { return(result) } (result, in_computed_table)=computed_table_hash_entry(f,g,h) if (in_computed_table) { return(result) } v = TOP_VARIABLE(F,G,H) T = ITE_CONSTANT(Fv, Gv, Hv) if ( T 0 and T 1) return non_constant E = ITE_CONSTANT(Fv, Gv, Hv ) if (T E) return non_constant INSERT_COMPUTED_TABLE ( (F,G,H), T) return T } 48

49 Example 1 f=abd+ab d+a c+a c d =a(bd+b d)+a (c+c d) =a(b d)+a (c+d) BDD with complement edges 49

50 Example 1 - continued f=abd+ab d+a c+a c d =a(bd+b d)+a (c+c d) ROBDD with complement edges Rule 4 Rule 4 Rule 4 50

51 Example 1 -continued f=abd+ab d+a c+a c d ROBDD with complement edges Count path parity of complement dots to decide function value f f f f f f ( 11,,, 1) = 0 ( 10,,, 0) = 0 ( 10,,, 1) = 1 ( 0,, 1, ) = 1 ( 0,, 0, 1) = 1 ( 011,,, ) = 1 (1 dot: odd parity ) (3 dots: odd parity ) (2 dots: even parity ) (2 dots: even parity ) (2 dots: even parity ) (2 dots: even parity ) 51

52 Example 2 - continued F = a + b c G = b c + d H = b + c + d I = (F,G,H) =(a, ITE(F,G,H), ITE(F a, G a, H a ) ) = (a, ITE(1,G,H), ITE(p,G, H)) = (a, G, (b,ite(0,d,1),ite(c,q,r) ) ) Cofactor commutes = (a, G, (b,1,ite(c,q,r) ) ) with complementation = (a, G, (b,1,(c,ite(1,1,d),ite(0,d,1)))) = (a, G, (b,1,(c,1,1))) = (a, G, (b,1,1)) = (a,g,1) 52

53 Example 2 - continued F = G = b + cd G = b c + d H = b + c + d Note: (b,1,p) identified as F, and (b,1,c) as q by Procedure FIND_OR_ADD_UNIQUE_TABLE I = ITE(F,F,H)=ITE(F,1,H)=ITE(H,1,F) = (a,ite(h a,1,f a ),ITE( H a,1, F a )) = (a,(b,ite(1,1,1),ite(0,1,p)),(b,ite(1,1,1),ite(c,1,p))) = (a,(b,1,p),(b,1,(c,ite(1,1,d),ite(0,1,0)))) = (a,f,(b,1,(c,1,0))) = (a,f,(b,1,c)) = (a,f,q) 53

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Logic Circuits Design Seminars WS2010/2011, Lecture 2 Ing. Petr Fišer, Ph.D. Department of Digital Design Faculty of Information Technology Czech Technical University in Prague

More information

BDD Based Upon Shannon Expansion

BDD Based Upon Shannon Expansion Boolean Function Manipulation OBDD and more BDD Based Upon Shannon Expansion Notations f(x, x 2,, x n ) - n-input function, x i = or f xi=b (x,, x n ) = f(x,,x i-,b,x i+,,x n ), b= or Shannon Expansion

More information

Reduced Ordered Binary Decision Diagrams

Reduced Ordered Binary Decision Diagrams Reduced Ordered Binary Decision Diagrams Lecture #13 of Advanced Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling & Verification E-mail: katoen@cs.rwth-aachen.de June 5, 2012 c JPK Switching

More information

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Literature Some pointers: H.R. Andersen, An Introduction to Binary Decision Diagrams, Lecture notes, Department of Information Technology, IT University of Copenhagen Tools: URL:

More information

Symbolic Model Checking with ROBDDs

Symbolic Model Checking with ROBDDs Symbolic Model Checking with ROBDDs Lecture #13 of Advanced Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling & Verification E-mail: katoen@cs.rwth-aachen.de December 14, 2016 c JPK Symbolic

More information

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: Lintao Zhang Announcement Project proposals due

More information

Chapter 2 Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part 1 Gate Circuits and Boolean Equations Charles Kime & Thomas Kaminski 2008 Pearson Education, Inc. Overview Part 1 Gate

More information

Binary Decision Diagrams. Graphs. Boolean Functions

Binary Decision Diagrams. Graphs. Boolean Functions Binary Decision Diagrams Graphs Binary Decision Diagrams (BDDs) are a class of graphs that can be used as data structure for compactly representing boolean functions. BDDs were introduced by R. Bryant

More information

QuIDD-Optimised Quantum Algorithms

QuIDD-Optimised Quantum Algorithms QuIDD-Optimised Quantum Algorithms by S K University of York Computer science 3 rd year project Supervisor: Prof Susan Stepney 03/05/2004 1 Project Objectives Investigate the QuIDD optimisation techniques

More information

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Binary Decision Diagrams (BDDs) are a class of graphs that can be used as data structure for compactly representing boolean functions. BDDs were introduced by R. Bryant in 1986.

More information

Binary Decision Diagrams and Symbolic Model Checking

Binary Decision Diagrams and Symbolic Model Checking Binary Decision Diagrams and Symbolic Model Checking Randy Bryant Ed Clarke Ken McMillan Allen Emerson CMU CMU Cadence U Texas http://www.cs.cmu.edu/~bryant Binary Decision Diagrams Restricted Form of

More information

211: Computer Architecture Summer 2016

211: Computer Architecture Summer 2016 211: Computer Architecture Summer 2016 Liu Liu Topic: Storage Project3 Digital Logic - Storage: Recap - Review: cache hit rate - Project3 - Digital Logic: - truth table => SOP - simplification: Boolean

More information

Equivalence Checking of Sequential Circuits

Equivalence Checking of Sequential Circuits Equivalence Checking of Sequential Circuits Sanjit Seshia EECS UC Berkeley With thanks to K. Keutzer, R. Rutenbar 1 Today s Lecture What we know: How to check two combinational circuits for equivalence

More information

Reduced Ordered Binary Decision Diagrams

Reduced Ordered Binary Decision Diagrams Reduced Ordered Binary Decision Diagrams Lecture #12 of Advanced Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling & Verification E-mail: katoen@cs.rwth-aachen.de December 13, 2016 c JPK

More information

This form sometimes used in logic circuit, example:

This form sometimes used in logic circuit, example: Objectives: 1. Deriving of logical expression form truth tables. 2. Logical expression simplification methods: a. Algebraic manipulation. b. Karnaugh map (k-map). 1. Deriving of logical expression from

More information

Heuristic Minimization of Two Level Circuits

Heuristic Minimization of Two Level Circuits Heuristic Minimization of Two Level Circuits Sungho Kang Yonsei University Outline Local Search Checking for Equivalence and Tautology Choosing the Right Direction Identifying Essential Implicants 2 Local

More information

Computational Boolean Algebra. Pingqiang Zhou ShanghaiTech University

Computational Boolean Algebra. Pingqiang Zhou ShanghaiTech University Computational Boolean Algebra Pingqiang Zhou ShanghaiTech University Announcements Written assignment #1 is out. Due: March 24 th, in class. Programming assignment #1 is out. Due: March 24 th, 11:59PM.

More information

Logic BIST. Sungho Kang Yonsei University

Logic BIST. Sungho Kang Yonsei University Logic BIST Sungho Kang Yonsei University Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2 Built In Self Test Test/ Normal Input Pattern

More information

Midterm1 Review. Jan 24 Armita

Midterm1 Review. Jan 24 Armita Midterm1 Review Jan 24 Armita Outline Boolean Algebra Axioms closure, Identity elements, complements, commutativity, distributivity theorems Associativity, Duality, De Morgan, Consensus theorem Shannon

More information

Multi-Terminal Multi-Valued Decision Diagrams for Characteristic Function Representing Cluster Decomposition

Multi-Terminal Multi-Valued Decision Diagrams for Characteristic Function Representing Cluster Decomposition 22 IEEE 42nd International Symposium on Multiple-Valued Logic Multi-Terminal Multi-Valued Decision Diagrams for Characteristic Function Representing Cluster Decomposition Hiroki Nakahara, Tsutomu Sasao,

More information

Binary Decision Diagrams Boolean Functions

Binary Decision Diagrams Boolean Functions Binary Decision Diagrams Representation of Boolean Functions BDDs, OBDDs, ROBDDs Operations Model-Checking over BDDs 72 Boolean functions:b = {0,1}, f :B B B Boolean Functions Boolean expressions: t ::=

More information

Title. Citation Information Processing Letters, 112(16): Issue Date Doc URLhttp://hdl.handle.net/2115/ Type.

Title. Citation Information Processing Letters, 112(16): Issue Date Doc URLhttp://hdl.handle.net/2115/ Type. Title Counterexamples to the long-standing conjectur Author(s) Yoshinaka, Ryo; Kawahara, Jun; Denzumi, Shuhei Citation Information Processing Letters, 112(16): 636-6 Issue Date 2012-08-31 Doc URLhttp://hdl.handle.net/2115/50105

More information

Lecture 6: Manipulation of Algebraic Functions, Boolean Algebra, Karnaugh Maps

Lecture 6: Manipulation of Algebraic Functions, Boolean Algebra, Karnaugh Maps EE210: Switching Systems Lecture 6: Manipulation of Algebraic Functions, Boolean Algebra, Karnaugh Maps Prof. YingLi Tian Feb. 21/26, 2019 Department of Electrical Engineering The City College of New York

More information

Reduced Ordered Binary Decision Diagram with Implied Literals: A New knowledge Compilation Approach

Reduced Ordered Binary Decision Diagram with Implied Literals: A New knowledge Compilation Approach Reduced Ordered Binary Decision Diagram with Implied Literals: A New knowledge Compilation Approach Yong Lai, Dayou Liu, Shengsheng Wang College of Computer Science and Technology Jilin University, Changchun

More information

13th International Conference on Relational and Algebraic Methods in Computer Science (RAMiCS 13)

13th International Conference on Relational and Algebraic Methods in Computer Science (RAMiCS 13) 13th International Conference on Relational and Algebraic Methods in Computer Science (RAMiCS 13) Relation Algebras, Matrices, and Multi-Valued Decision Diagrams Francis Atampore and Dr. Michael Winter

More information

CHAPTER III BOOLEAN ALGEBRA

CHAPTER III BOOLEAN ALGEBRA CHAPTER III- CHAPTER III CHAPTER III R.M. Dansereau; v.. CHAPTER III-2 BOOLEAN VALUES INTRODUCTION BOOLEAN VALUES Boolean algebra is a form of algebra that deals with single digit binary values and variables.

More information

CHAPTER III BOOLEAN ALGEBRA

CHAPTER III BOOLEAN ALGEBRA CHAPTER III- CHAPTER III CHAPTER III R.M. Dansereau; v.. CHAPTER III-2 BOOLEAN VALUES INTRODUCTION BOOLEAN VALUES Boolean algebra is a form of algebra that deals with single digit binary values and variables.

More information

Chapter 2 Biconditional Logic

Chapter 2 Biconditional Logic Chapter 2 Biconditional Logic In this chapter, we present Biconditional Binary Decision Diagrams (BBDDs), a novel canonical representation form for Boolean functions. BBDDs are binary decision diagrams

More information

MC9211 Computer Organization

MC9211 Computer Organization MC92 Computer Organization Unit : Digital Fundamentals Lesson2 : Boolean Algebra and Simplification (KSB) (MCA) (29-2/ODD) (29 - / A&B) Coverage Lesson2 Introduces the basic postulates of Boolean Algebra

More information

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS 1) Given the two binary numbers X = 1010100 and Y = 1000011, perform the subtraction (a) X -Y and (b) Y - X using 2's complements. a) X = 1010100

More information

Boolean decision diagrams and SAT-based representations

Boolean decision diagrams and SAT-based representations Boolean decision diagrams and SAT-based representations 4th July 200 So far we have seen Kripke Structures 2 Temporal logics (and their semantics over Kripke structures) 3 Model checking of these structures

More information

1188 IEEE TRANSACTIONS ON COMPUTERS, VOL. 55, NO. 9, SEPTEMBER 2006

1188 IEEE TRANSACTIONS ON COMPUTERS, VOL. 55, NO. 9, SEPTEMBER 2006 1188 IEEE TRANSACTIONS ON COMPUTERS, VOL. 55, NO. 9, SEPTEMBER 2006 Taylor Expansion Diagrams: A Canonical Representation for Verification of Data Flow Designs Maciej Ciesielski, Senior Member, IEEE, Priyank

More information

COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS

COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS QUALITATIVE ANALYIS METHODS, OVERVIEW NET REDUCTION STRUCTURAL PROPERTIES COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS LINEAR PROGRAMMING place / transition invariants state equation

More information

Polynomial Methods for Component Matching and Verification

Polynomial Methods for Component Matching and Verification Polynomial Methods for Component Matching and Verification James Smith Stanford University Computer Systems Laboratory Stanford, CA 94305 1. Abstract Component reuse requires designers to determine whether

More information

Hardware Design I Chap. 2 Basis of logical circuit, logical expression, and logical function

Hardware Design I Chap. 2 Basis of logical circuit, logical expression, and logical function Hardware Design I Chap. 2 Basis of logical circuit, logical expression, and logical function E-mail: shimada@is.naist.jp Outline Combinational logical circuit Logic gate (logic element) Definition of combinational

More information

Chapter 2 Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part 1 Gate Circuits and Boolean Equations Charles Kime & Thomas Kaminski 2008 Pearson Education, Inc. (Hyperlinks are active

More information

CSE140: Components and Design Techniques for Digital Systems. Logic minimization algorithm summary. Instructor: Mohsen Imani UC San Diego

CSE140: Components and Design Techniques for Digital Systems. Logic minimization algorithm summary. Instructor: Mohsen Imani UC San Diego CSE4: Components and Design Techniques for Digital Systems Logic minimization algorithm summary Instructor: Mohsen Imani UC San Diego Slides from: Prof.Tajana Simunic Rosing & Dr.Pietro Mercati Definition

More information

The Separation Problem for Binary Decision Diagrams

The Separation Problem for Binary Decision Diagrams The Separation Problem for Binary Decision Diagrams J. N. Hooker Joint work with André Ciré Carnegie Mellon University ISAIM 2014 Separation Problem in Optimization Given a relaxation of an optimization

More information

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits EE40 Lec 15 Logic Synthesis and Sequential Logic Circuits Prof. Nathan Cheung 10/20/2009 Reading: Hambley Chapters 7.4-7.6 Karnaugh Maps: Read following before reading textbook http://www.facstaff.bucknell.edu/mastascu/elessonshtml/logic/logic3.html

More information

Boolean Algebra. Sungho Kang. Yonsei University

Boolean Algebra. Sungho Kang. Yonsei University Boolean Algebra Sungho Kang Yonsei University Outline Set, Relations, and Functions Partial Orders Boolean Functions Don t Care Conditions Incomplete Specifications 2 Set Notation $09,3/#0,9 438 v V Element

More information

Principles of Computer Architecture. Appendix B: Reduction of Digital Logic. Chapter Contents

Principles of Computer Architecture. Appendix B: Reduction of Digital Logic. Chapter Contents B-1 Principles of Computer Architecture Miles Murdocca and Vincent Heuring Appendix B: Reduction of Digital Logic B-2 Chapter Contents B.1 Reduction of Combinational Logic and Sequential Logic B.2 Reduction

More information

Chapter 2 Boolean Algebra and Logic Gates

Chapter 2 Boolean Algebra and Logic Gates Ch1: Digital Systems and Binary Numbers Ch2: Ch3: Gate-Level Minimization Ch4: Combinational Logic Ch5: Synchronous Sequential Logic Ch6: Registers and Counters Switching Theory & Logic Design Prof. Adnan

More information

Anand Raghunathan MSEE 348

Anand Raghunathan MSEE 348 ECE 595Z: Digital VLSI Design Automation, Spring 2012 2012 Anand Raghunathan 1 ECE 595Z Digital Systems Design Automation Module 2 (Lectures 3-5) : Advanced Boolean Algebra Lecture 5 Anand Raghunathan

More information

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing IT 204 Section 3.0 Boolean Algebra and Digital Logic Boolean Algebra 2 Logic Equations to Truth Tables X = A. B + A. B + AB A B X 0 0 0 0 3 Sum of Products The OR operation performed on the products of

More information

Slide Set 3. for ENEL 353 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary

Slide Set 3. for ENEL 353 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary Slide Set 3 for ENEL 353 Fall 2016 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Fall Term, 2016 SN s ENEL 353 Fall 2016 Slide Set 3 slide

More information

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams An Introduction and Some Applications Manas Thakur PACE Lab, IIT Madras Manas Thakur (IIT Madras) BDDs 1 / 25 Motivating Example Binary decision tree for a truth table Manas Thakur

More information

Chapter 2 Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part 2 Circuit Optimization Goal: To obtain the simplest implementation for a given function Optimization is a more formal

More information

Advanced Digital Design with the Verilog HDL, Second Edition Michael D. Ciletti Prentice Hall, Pearson Education, 2011

Advanced Digital Design with the Verilog HDL, Second Edition Michael D. Ciletti Prentice Hall, Pearson Education, 2011 Problem 2-1 Recall that a minterm is a cube in which every variable appears. A Boolean expression in SOP form is canonical if every cube in the expression has a unique representation in which all of the

More information

Administrative Notes. Chapter 2 <9>

Administrative Notes. Chapter 2 <9> Administrative Notes Note: New homework instructions starting with HW03 Homework is due at the beginning of class Homework must be organized, legible (messy is not), and stapled to be graded Chapter 2

More information

EEE130 Digital Electronics I Lecture #4

EEE130 Digital Electronics I Lecture #4 EEE130 Digital Electronics I Lecture #4 - Boolean Algebra and Logic Simplification - By Dr. Shahrel A. Suandi Topics to be discussed 4-1 Boolean Operations and Expressions 4-2 Laws and Rules of Boolean

More information

UNIT 4 MINTERM AND MAXTERM EXPANSIONS

UNIT 4 MINTERM AND MAXTERM EXPANSIONS UNIT 4 MINTERM AND MAXTERM EXPANSIONS Spring 2 Minterm and Maxterm Expansions 2 Contents Conversion of English sentences to Boolean equations Combinational logic design using a truth table Minterm and

More information

Representations of All Solutions of Boolean Programming Problems

Representations of All Solutions of Boolean Programming Problems Representations of All Solutions of Boolean Programming Problems Utz-Uwe Haus and Carla Michini Institute for Operations Research Department of Mathematics ETH Zurich Rämistr. 101, 8092 Zürich, Switzerland

More information

L6: Two-level minimization. Reading material

L6: Two-level minimization. Reading material L6: Two-level minimization Reading material de Micheli pp. 269-343 p. 2 - Advanced Logic Design L6 - Elena Dubrova Formulation of the two-level minimization problem input: a Boolean function f(x,x 2,...,x

More information

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for? Computer Engineering and Networks Overview Discrete Event Systems Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two circuits

More information

On the Sizes of Decision Diagrams Representing the Set of All Parse Trees of a Context-free Grammar

On the Sizes of Decision Diagrams Representing the Set of All Parse Trees of a Context-free Grammar Proceedings of Machine Learning Research vol 73:153-164, 2017 AMBN 2017 On the Sizes of Decision Diagrams Representing the Set of All Parse Trees of a Context-free Grammar Kei Amii Kyoto University Kyoto

More information

EECS150 - Digital Design Lecture 19 - Combinational Logic Circuits : A Deep Dive

EECS150 - Digital Design Lecture 19 - Combinational Logic Circuits : A Deep Dive EECS150 - Digital Design Lecture 19 - Combinational Logic Circuits : A Deep Dive March 30, 2010 John Wawrzynek Spring 2010 EECS150 - Lec19-cl1 Page 1 Boolean Algebra I (Representations of Combinational

More information

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function Question Paper Digital Electronics (EE-204-F) MDU Examination May 2015 1. (a) represent (32)10 in (i) BCD 8421 code (ii) Excess-3 code (iii) ASCII code (b) Design half adder using only NAND gates. ( c)

More information

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30) Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural

More information

Decision Procedures for Satisfiability and Validity in Propositional Logic

Decision Procedures for Satisfiability and Validity in Propositional Logic Decision Procedures for Satisfiability and Validity in Propositional Logic Meghdad Ghari Institute for Research in Fundamental Sciences (IPM) School of Mathematics-Isfahan Branch Logic Group http://math.ipm.ac.ir/isfahan/logic-group.htm

More information

2009 Spring CS211 Digital Systems & Lab CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS

2009 Spring CS211 Digital Systems & Lab CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS What will we learn? 2 Logic functions and circuits Boolean Algebra Logic gates and Synthesis CAD tools and VHDL Read Section 2.9 and 2.0 Terminology 3 Digital

More information

Exercises - Solutions

Exercises - Solutions Chapter 1 Exercises - Solutions Exercise 1.1. The first two definitions are equivalent, since we follow in both cases the unique path leading from v to a sink and using only a i -edges leaving x i -nodes.

More information

Chapter 7 Logic Circuits

Chapter 7 Logic Circuits Chapter 7 Logic Circuits Goal. Advantages of digital technology compared to analog technology. 2. Terminology of Digital Circuits. 3. Convert Numbers between Decimal, Binary and Other forms. 5. Binary

More information

Linear Algebra, Boolean Rings and Resolution? Armin Biere. Institute for Formal Models and Verification Johannes Kepler University Linz, Austria

Linear Algebra, Boolean Rings and Resolution? Armin Biere. Institute for Formal Models and Verification Johannes Kepler University Linz, Austria Linear Algebra, Boolean Rings and Resolution? Armin Biere Institute for Formal Models and Verification Johannes Kepler University Linz, Austria ACA 08 Applications of Computer Algebra Symbolic Computation

More information

Part 1: Digital Logic and Gates. Analog vs. Digital waveforms. The digital advantage. In real life...

Part 1: Digital Logic and Gates. Analog vs. Digital waveforms. The digital advantage. In real life... Part 1: Digital Logic and Gates Analog vs Digital waveforms An analog signal assumes a continuous range of values: v(t) ANALOG A digital signal assumes discrete (isolated, separate) values Usually there

More information

L9: Galois Fields. Reading material

L9: Galois Fields. Reading material L9: Galois Fields Reading material Muzio & Wesselkamper Multiple-valued switching theory, p. 3-5, - 4 Sasao, Switching theory for logic synthesis, pp. 43-44 p. 2 - Advanced Logic Design L9 - Elena Dubrova

More information

Basing Decisions on Sentences in Decision Diagrams

Basing Decisions on Sentences in Decision Diagrams Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence Basing Decisions on Sentences in Decision Diagrams Yexiang Xue Department of Computer Science Cornell University yexiang@cs.cornell.edu

More information

Chapter-2 BOOLEAN ALGEBRA

Chapter-2 BOOLEAN ALGEBRA Chapter-2 BOOLEAN ALGEBRA Introduction: An algebra that deals with binary number system is called Boolean Algebra. It is very power in designing logic circuits used by the processor of computer system.

More information

Boolean Algebra, Gates and Circuits

Boolean Algebra, Gates and Circuits Boolean Algebra, Gates and Circuits Kasper Brink November 21, 2017 (Images taken from Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc.) Outline Last week: Von

More information

BOOLEAN ALGEBRA INTRODUCTION SUBSETS

BOOLEAN ALGEBRA INTRODUCTION SUBSETS BOOLEAN ALGEBRA M. Ragheb 1/294/2018 INTRODUCTION Modern algebra is centered around the concept of an algebraic system: A, consisting of a set of elements: ai, i=1, 2,, which are combined by a set of operations

More information

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT 1 Algebraic Methods In an algebraic system Boolean constraints are expressed as a system of algebraic equations or inequalities which has a solution if and only if the constraints are satisfiable. Equations

More information

Prove that if not fat and not triangle necessarily means not green then green must be fat or triangle (or both).

Prove that if not fat and not triangle necessarily means not green then green must be fat or triangle (or both). hapter : oolean lgebra.) Definition of oolean lgebra The oolean algebra is named after George ool who developed this algebra (854) in order to analyze logical problems. n example to such problem is: Prove

More information

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS Hussain Al-Asaad Department of Electrical & Computer Engineering University of California One Shields Avenue, Davis, CA 95616-5294

More information

Lecture 5: NAND, NOR and XOR Gates, Simplification of Algebraic Expressions

Lecture 5: NAND, NOR and XOR Gates, Simplification of Algebraic Expressions EE210: Switching Systems Lecture 5: NAND, NOR and XOR Gates, Simplification of Algebraic Expressions Prof. YingLi Tian Feb. 15, 2018 Department of Electrical Engineering The City College of New York The

More information

Simplification of Boolean Functions. Dept. of CSE, IEM, Kolkata

Simplification of Boolean Functions. Dept. of CSE, IEM, Kolkata Simplification of Boolean Functions Dept. of CSE, IEM, Kolkata 1 Simplification of Boolean Functions: An implementation of a Boolean Function requires the use of logic gates. A smaller number of gates,

More information

Fault Collapsing in Digital Circuits Using Fast Fault Dominance and Equivalence Analysis with SSBDDs

Fault Collapsing in Digital Circuits Using Fast Fault Dominance and Equivalence Analysis with SSBDDs Fault Collapsing in Digital Circuits Using Fast Fault Dominance and Equivalence Analysis with SSBDDs Raimund Ubar, Lembit Jürimägi (&), Elmet Orasson, and Jaan Raik Department of Computer Engineering,

More information

Model Checking for Propositions CS477 Formal Software Dev Methods

Model Checking for Propositions CS477 Formal Software Dev Methods S477 Formal Software Dev Methods Elsa L Gunter 2112 S, UIU egunter@illinois.edu http://courses.engr.illinois.edu/cs477 Slides based in part on previous lectures by Mahesh Vishwanathan, and by Gul gha January

More information

ELCT201: DIGITAL LOGIC DESIGN

ELCT201: DIGITAL LOGIC DESIGN ELCT2: DIGITAL LOGIC DESIGN Dr. Eng. Haitham Omran, haitham.omran@guc.edu.eg Dr. Eng. Wassim Alexan, wassim.joseph@guc.edu.eg Lecture 4 Following the slides of Dr. Ahmed H. Madian محرم 439 ه Winter 28

More information

Unit 3 Session - 9 Data-Processing Circuits

Unit 3 Session - 9 Data-Processing Circuits Objectives Unit 3 Session - 9 Data-Processing Design of multiplexer circuits Discuss multiplexer applications Realization of higher order multiplexers using lower orders (multiplexer trees) Introduction

More information

L4: Karnaugh diagrams, two-, and multi-level minimization. Elena Dubrova KTH / ICT / ES

L4: Karnaugh diagrams, two-, and multi-level minimization. Elena Dubrova KTH / ICT / ES L4: Karnaugh diagrams, two-, and multi-level minimization Elena Dubrova KTH / ICT / ES dubrova@kth.se Combinatorial system a(t) not(a(t)) A combinatorial system has no memory - its output depends therefore

More information

Circuits. Lecture 11 Uniform Circuit Complexity

Circuits. Lecture 11 Uniform Circuit Complexity Circuits Lecture 11 Uniform Circuit Complexity 1 Recall 2 Recall Non-uniform complexity 2 Recall Non-uniform complexity P/1 Decidable 2 Recall Non-uniform complexity P/1 Decidable NP P/log NP = P 2 Recall

More information

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits.

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits. CS211 Computer Architecture Digital Logic l Topics l Transistors (Design & Types) l Logic Gates l Combinational Circuits l K-Maps Figures & Tables borrowed from:! http://www.allaboutcircuits.com/vol_4/index.html!

More information

Minimization techniques

Minimization techniques Pune Vidyarthi Griha s COLLEGE OF ENGINEERING, NSIK - 4 Minimization techniques By Prof. nand N. Gharu ssistant Professor Computer Department Combinational Logic Circuits Introduction Standard representation

More information

EC-121 Digital Logic Design

EC-121 Digital Logic Design EC-121 Digital Logic Design Lecture 2 [Updated on 02-04-18] Boolean Algebra and Logic Gates Dr Hashim Ali Spring 2018 Department of Computer Science and Engineering HITEC University Taxila!1 Overview What

More information

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits Chris Calabro January 13, 2016 1 RAM model There are many possible, roughly equivalent RAM models. Below we will define one in the fashion

More information

Binary Decision Diagrams

Binary Decision Diagrams Binar Decision Diagrams Ma 3, 2004 1 Overview Boolean functions Possible representations Binar decision trees Binar decision diagrams Ordered binar decision diagrams Reduced ordered binar decision diagrams

More information

Models of Sequential Systems

Models of Sequential Systems Models of Sequential Systems Sungho Kang Yonsei University Outline Introduction to Finite State Machines Synthesis of Finite State Machines FSMs : Definition, Notation, and Examples FSM Minimization of

More information

Chapter 2: Boolean Algebra and Logic Gates

Chapter 2: Boolean Algebra and Logic Gates Chapter 2: Boolean Algebra and Logic Gates Mathematical methods that simplify binary logics or circuits rely primarily on Boolean algebra. Boolean algebra: a set of elements, a set of operators, and a

More information

Ex: Boolean expression for majority function F = A'BC + AB'C + ABC ' + ABC.

Ex: Boolean expression for majority function F = A'BC + AB'C + ABC ' + ABC. Boolean Expression Forms: Sum-of-products (SOP) Write an AND term for each input combination that produces a 1 output. Write the input variable if its value is 1; write its complement otherwise. OR the

More information

Binary decision diagrams for security protocols

Binary decision diagrams for security protocols for Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 4 czerwca 2012 roku 1 2 3 4 Infrastructure with Intruder Threat template 5 References BDD definition Definition An BDD G

More information

CTL Model Checking. Wishnu Prasetya.

CTL Model Checking. Wishnu Prasetya. CTL Model Checking Wishnu Prasetya wishnu@cs.uu.nl www.cs.uu.nl/docs/vakken/pv Background Example: verification of web applications à e.g. to prove existence of a path from page A to page B. Use of CTL

More information

ELCT201: DIGITAL LOGIC DESIGN

ELCT201: DIGITAL LOGIC DESIGN ELCT2: DIGITAL LOGIC DESIGN Dr. Eng. Haitham Omran, haitham.omran@guc.edu.eg Dr. Eng. Wassim Alexan, wassim.joseph@guc.edu.eg Lecture 2 Following the slides of Dr. Ahmed H. Madian ذو الحجة 438 ه Winter

More information

Counter Examples to the Conjecture on the Complexity of BDD Binary Operations

Counter Examples to the Conjecture on the Complexity of BDD Binary Operations TCS -TR-A-11-52 TCS Technical Report Counter Examples to the Conjecture on the Complexity of BDD Binary Operations by Ryo Yoshinaka, Jun Kawahara, Shuhei Denzumi, Hiroki Arimura and Shin-ichi Minato Division

More information

Total Time = 90 Minutes, Total Marks = 50. Total /50 /10 /18

Total Time = 90 Minutes, Total Marks = 50. Total /50 /10 /18 University of Waterloo Department of Electrical & Computer Engineering E&CE 223 Digital Circuits and Systems Midterm Examination Instructor: M. Sachdev October 23rd, 2007 Total Time = 90 Minutes, Total

More information

Linear Cofactor Relationships in Boolean Functions

Linear Cofactor Relationships in Boolean Functions 1 Linear Cofactor Relationships in Boolean Functions Jin S. Zhang 1 Malgorzata Chrzanowska-Jeske 1 Alan Mishchenko 2 Jerry R. Burch 3 1 Department of ECE, Portland State University, Portland, OR 2 Department

More information

Chapter 2 Boolean Algebra and Logic Gates

Chapter 2 Boolean Algebra and Logic Gates Chapter 2 Boolean Algebra and Logic Gates The most common postulates used to formulate various algebraic structures are: 1. Closure. N={1,2,3,4 }, for any a,b N we obtain a unique c N by the operation

More information

Ch 2. Combinational Logic. II - Combinational Logic Contemporary Logic Design 1

Ch 2. Combinational Logic. II - Combinational Logic Contemporary Logic Design 1 Ch 2. Combinational Logic II - Combinational Logic Contemporary Logic Design 1 Combinational logic Define The kind of digital system whose output behavior depends only on the current inputs memoryless:

More information

CS470: Computer Architecture. AMD Quad Core

CS470: Computer Architecture. AMD Quad Core CS470: Computer Architecture Yashwant K. Malaiya, Professor malaiya@cs.colostate.edu AMD Quad Core 1 Architecture Layers Building blocks Gates, flip-flops Functional bocks: Combinational, Sequential Instruction

More information

DIGITAL ELECTRONICS & it0203 Semester 3

DIGITAL ELECTRONICS & it0203 Semester 3 DIGITAL ELECTRONICS & it0203 Semester 3 P.Rajasekar & C.M.T.Karthigeyan Asst.Professor SRM University, Kattankulathur School of Computing, Department of IT 8/22/2011 1 Disclaimer The contents of the slides

More information

Logic and Computer Design Fundamentals. Chapter 2 Combinational Logic Circuits. Part 1 Gate Circuits and Boolean Equations

Logic and Computer Design Fundamentals. Chapter 2 Combinational Logic Circuits. Part 1 Gate Circuits and Boolean Equations Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part Gate Circuits and Boolean Equations Charles Kime & Thomas Kaminski 28 Pearson Education, Inc. (Hperlinks are active in

More information

UNIVERSITI TENAGA NASIONAL. College of Information Technology

UNIVERSITI TENAGA NASIONAL. College of Information Technology UNIVERSITI TENAGA NASIONAL College of Information Technology BACHELOR OF COMPUTER SCIENCE (HONS.) FINAL EXAMINATION SEMESTER 2 2012/2013 DIGITAL SYSTEMS DESIGN (CSNB163) January 2013 Time allowed: 3 hours

More information