Boolean Algebra and Logic Gates

Similar documents
Chapter 2. Boolean Algebra and Logic Gates

Lecture (05) Boolean Algebra and Logic Gates

Boolean Algebra. BME208 Logic Circuits Yalçın İŞLER

Chap-2 Boolean Algebra

Gate Level Minimization Map Method

2.1 Binary Logic and Gates

Chapter 2 Boolean algebra and Logic Gates

Lecture (04) Boolean Algebra and Logic Gates

Lecture (04) Boolean Algebra and Logic Gates By: Dr. Ahmed ElShafee


Combinational Logic & Circuits

2.6 BOOLEAN FUNCTIONS

IT 201 Digital System Design Module II Notes

Chapter 2. Boolean Expressions:

Binary logic. Dr.Abu-Arqoub

Menu. Algebraic Simplification - Boolean Algebra EEL3701 EEL3701. MSOP, MPOS, Simplification

CS8803: Advanced Digital Design for Embedded Hardware

Gate-Level Minimization. BME208 Logic Circuits Yalçın İŞLER

Combinational Circuits

Lecture 4: Implementation AND, OR, NOT Gates and Complement

Unit-IV Boolean Algebra

Objectives: 1- Bolean Algebra. Eng. Ayman Metwali

Combinational Logic Circuits

DIGITAL CIRCUIT LOGIC UNIT 7: MULTI-LEVEL GATE CIRCUITS NAND AND NOR GATES

Gate Level Minimization

Chapter 3. Gate-Level Minimization. Outlines

CONTENTS CHAPTER 1: NUMBER SYSTEM. Foreword...(vii) Preface... (ix) Acknowledgement... (xi) About the Author...(xxiii)

Variable, Complement, and Literal are terms used in Boolean Algebra.

1. Mark the correct statement(s)

Software Engineering 2DA4. Slides 2: Introduction to Logic Circuits

Chapter 3. Boolean Algebra and Digital Logic

Boolean algebra. June 17, Howard Huang 1

Gate-Level Minimization

X Y Z F=X+Y+Z

Experiment 3: Logic Simplification

SWITCHING THEORY AND LOGIC CIRCUITS

Assignment (3-6) Boolean Algebra and Logic Simplification - General Questions

Announcements. Chapter 2 - Part 1 1

ELCT201: DIGITAL LOGIC DESIGN

UNIT-4 BOOLEAN LOGIC. NOT Operator Operates on single variable. It gives the complement value of variable.

Summary. Boolean Addition

Review. EECS Components and Design Techniques for Digital Systems. Lec 05 Boolean Logic 9/4-04. Seq. Circuit Behavior. Outline.

Circuit analysis summary

R.M.D. ENGINEERING COLLEGE R.S.M. Nagar, Kavaraipettai

Bawar Abid Abdalla. Assistant Lecturer Software Engineering Department Koya University

2008 The McGraw-Hill Companies, Inc. All rights reserved.

Boolean Logic CS.352.F12

Bawar Abid Abdalla. Assistant Lecturer Software Engineering Department Koya University

Chapter 2: Combinational Systems

BOOLEAN ALGEBRA. 1. State & Verify Laws by using :

Lecture 5. Chapter 2: Sections 4-7

Introduction to Computer Architecture


ELCT201: DIGITAL LOGIC DESIGN

Philadelphia University Faculty of Information Technology Department of Computer Science. Computer Logic Design. By Dareen Hamoudeh.

DIGITAL ELECTRONICS. Vayu Education of India

ENGINEERS ACADEMY. 7. Given Boolean theorem. (a) A B A C B C A B A C. (b) AB AC BC AB BC. (c) AB AC BC A B A C B C.

UNIT 2 BOOLEAN ALGEBRA

Gate-Level Minimization

DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

Logic and Computer Design Fundamentals. Chapter 2 Combinational Logic Circuits. Part 3 Additional Gates and Circuits

CS February 17

Gate-Level Minimization

Experiment 4 Boolean Functions Implementation

Gate-Level Minimization. section instructor: Ufuk Çelikcan

3. The high voltage level of a digital signal in positive logic is : a) 1 b) 0 c) either 1 or 0

Chapter 2 Combinational Logic Circuits

SYNERGY INSTITUTE OF ENGINEERING & TECHNOLOGY,DHENKANAL LECTURE NOTES ON DIGITAL ELECTRONICS CIRCUIT(SUBJECT CODE:PCEC4202)

Digital Logic Design. Outline

數位系統 Digital Systems 朝陽科技大學資工系. Speaker: Fuw-Yi Yang 楊伏夷. 伏夷非征番, 道德經察政章 (Chapter 58) 伏者潛藏也道紀章 (Chapter 14) 道無形象, 視之不可見者曰夷

UNIT II. Circuit minimization

Code No: 07A3EC03 Set No. 1

EE292: Fundamentals of ECE

Combinational Logic. Prof. Wangrok Oh. Dept. of Information Communications Eng. Chungnam National University. Prof. Wangrok Oh(CNU) 1 / 93

Contents. Chapter 3 Combinational Circuits Page 1 of 34

Presented By :- Alok Kumar Lecturer in ECE C.R.Polytechnic, Rohtak

Code No: R Set No. 1

Computer Science. Unit-4: Introduction to Boolean Algebra

B.Tech II Year I Semester (R13) Regular Examinations December 2014 DIGITAL LOGIC DESIGN

QUESTION BANK FOR TEST

Digital Logic Design Exercises. Assignment 1

This presentation will..

Computer Organization

Boolean Algebra & Digital Logic

TWO-LEVEL COMBINATIONAL LOGIC

Chap.3 3. Chap reduces the complexity required to represent the schematic diagram of a circuit Library

VALLIAMMAI ENGINEERING COLLEGE. SRM Nagar, Kattankulathur DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING EC6302 DIGITAL ELECTRONICS

Code No: R Set No. 1

Digital Logic Design (CEN-120) (3+1)

Combinational Logic II

Henry Lin, Department of Electrical and Computer Engineering, California State University, Bakersfield Lecture 7 (Digital Logic) July 24 th, 2012

Number Systems UNIT. Learning Objectives. 1.0 Introduction

MGU-BCA-205- Second Sem- Core VI- Fundamentals of Digital Systems- MCQ s. 2. Why the decimal number system is also called as positional number system?

Midterm Exam Review. CS 2420 :: Fall 2016 Molly O'Neil

Standard Forms of Expression. Minterms and Maxterms

CHAPTER-2 STRUCTURE OF BOOLEAN FUNCTION USING GATES, K-Map and Quine-McCluskey

Designing Computer Systems Boolean Algebra

Chapter 2 Combinational

01 Introduction to Digital Logic. ENGR 3410 Computer Architecture Mark L. Chang Fall 2006

CS6201 DIGITAL PRINCIPLES AND SYSTEM DESIGN Lecture Notes

Transcription:

Boolean Algebra and Logic Gates Binary logic is used in all of today's digital computers and devices Cost of the circuits is an important factor Finding simpler and cheaper but equivalent circuits can reduce the overall cost Mathematical methods that simplify circuits rely primarily on Boolean algebra Explore basic vocabulary and a brief foundation in Boolean algebra Optimize simple circuits Understand software tools which optimize very large circuits 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 1

Basic Definitions A set of elements is any collection of objects usually having a common property If S is a set x S means that x is a member of the set S y S means that y is not a member of the set S A = {1, 2, 3, 4} indicates that the elements of set A are the numbers 1, 2, 3, and 4 A binary operator defined on a set S of elements is a rule that assigns, to each pair of elements from S, a unique element from S a * b = c : * is a binary operator if it specifies a rule for finding c from the pair (a, b) and also if a, b, c S * is not a binary operator if a, b S, and if c S 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 2

Basic Definitions Postulates form the basic assumptions to deduce rules, theorems, and properties 1. Closure: A set S is closed with respect to a binary operator if, for every pair of elements of S, the binary operator specifies a rule for obtaining a unique element of S 2. Associative law: A binary operator * on a set S is said to be associative whenever: (x * y) * z = x * (y * z) for all x, y, z, S 3. Commutative law: A binary operator * on a set S is said to be commutative whenever: x * y = y * x for all x, y S 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 3

Basic Definitions 4. Identity element: A set S is said to have an identity element with respect to a binary operation * on S if there exists an element e S with the property that: e * x = x * e = x for every x S 5. Inverse: A set S having the identity element e with respect to a binary operator * is said to have an inverse whenever, for every x S, there exists an element y S such that: x * y = e 6. Distributive law: If * and are two binary operators on a set S, * is said to be distributive over whenever: x * (y z) = (x * y) (x * z) 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 4

Field of Real Numbers The binary operator + defines addition The additive identity is 0 The additive inverse defines subtraction The binary operator defines multiplication The multiplicative identity is 1 For a 0, the multiplicative inverse of a = 1/a defines division: a 1 / a = 1 The only distributive law applicable is that of over + : a (b + c) = (a b) +(a c) 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 5

Boolean Algebra Boolean algebra (George Boole) is an algebraic structure defined by a set of elements, B, together with two binary operators, + and, satisfying the following postulates (E.V. Huntington): 1a. The structure is closed with respect to the operator + 1b. The structure is closed with respect to the operator 2a. The element 0 is an identity element with respect to +: x + 0 = 0 + x = x 2b. The element 1 is an identity element with respect to : x 1 = 1 x = x 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 6

Boolean Algebra 3a. The structure is commutative with respect to +: x + y = y + x 3b. The structure is commutative with respect to : x y = y x 4a. The operator is distributive over +: x (y + z) = (x y) + (x z) 4b. The operator + is distributive over : x + (y z) = (x + y) (x + z) 5. For every element x B, there exists an element x' B (called the complement of x) such that: (a) x + x' = 1 and (b) x x' = 0 6. There exists at least two elements x, y B such that x y 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 7

Differences between Boolean and Ordinary (Real Field) Algebra Ordinary (Real Field) Algebra Huntington postulates do not include the associative law but can be derived for both operators The distributive law of + over, x + (y z) = (x + y) (x + z), is valid for Boolean algebra, but not for ordinary algebra Boolean algebra does not have additive or multiplicative inverses; no subtraction or division operations Postulate 5 defines an operator called the complement that is not available in ordinary algebra Ordinary algebra deals with the real numbers, which constitute an infinite set of elements Boolean algebra deals with the as yet undefined set of elements, B, but in the two-valued Boolean algebra (what we will be using), B is defined as a set with only two elements, 0 and 1 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 8

Differences between Boolean and Ordinary (Real Field) Algebra The choice of the symbols + and is intentional Operations are similar but not identical Know the difference between elements (0 and 1) and variables (ie. x and y) which are just symbols To have a Boolean algebra, we must show: the elements of the set B the rules of operation for the two binary operators the set of elements, B, together with the two operators, satisfy the six Huntington postulates Will use Two-valued Boolean Algebra 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 9

Two-Valued Boolean Algebra Defined on a set of two elements, B = {0, 1}, with rules for the two binary operators + and Same as AND, OR, and NOT operations Must show that Huntington postulates are valid for the set B = {0, 1}, with the two binary operators + and 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 10

Two-Valued Boolean Algebra 1. That the structure is closed with respect to the two operators since the result of each operation is either 1 or 0 and 1, 0 B 2. From the tables: (a) 0 + 0 = 0 0 + 1 = 1 + 0 = 1 (b) 1 1 = 1 1 0 = 0 1 = 0 This establishes the two identity elements, 0 for + and 1 for 3. The commutative laws apply from the symmetry of the binary operator tables 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 11

Two-Valued Boolean Algebra 4(a). The distributive law x (y + z) = (x y) + (x z) can be shown to hold by forming a truth table of all possible values of x, y, and z 4(b). The distributive law of + over can be shown to hold by means of a truth table just as in (a) 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 12

Two-Valued Boolean Algebra 5. From the complement table: (a) x + x' = 1, since: 0 + 0' = 0 + 1 = 1 and 1 + 1' = 1 + 0 = 1 (b) x x' = 0, since: 0 0' = 0 1 = 0 and 1 1' = 1 0 = 0 6. Postulate 6 is satisfied since two-valued Boolean algebra has two elements, 1 and 0, with 1 0 Two-valued Boolean algebra has been defined and is equivalent to binary logic shown earlier 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 13

Duality Principle of Boolean Algebra Duality principle states that every algebraic expression deducible from the postulates of Boolean algebra remain valid if the operators and identity elements are interchanged Interchange OR and AND operators and replace 1's by 0's and 0's by 1's 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 14

Basic Theorems and Postulates of Boolean Algebra Basic relationships in Boolean algebra Listed in pairs; dual of each other Proofs in the text book 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 15

Operator Precedence for Boolean Algebra In the following order: Parentheses, NOT, AND, and OR Like BEDMAS, but E is complement, DM is AND, and AS is OR Example: (x + y)': OR is done first, then complement x'y': Each variable is complemented, then ANDed 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 16

Boolean Functions Boolean algebra is an algebra that deals with binary variables and logic operations A Boolean function described by an algebraic expression consists of binary variables, the constants 0 and 1, and the logic operation symbols For a given value of the binary variables, the function can be equal to either 1 or 0 Example: F 1 = x + y'z F 1 is 1 when x = 1 or if both y' and z are equal to 1 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 17

Boolean Functions A Boolean function can be represented in a truth table F 1 = x + y'z Number of rows is 2 n n is the number of variables in the function Binary combinations are obtained from the binary numbers by counting from 0 through 2 n-1 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 18

Boolean Functions A Boolean function can be transformed from an algebraic expression into a circuit diagram composed of logic gates connected in a particular structure Rather than listing each combination of inputs and outputs, it indicates how to compute the logic value of each output from the logic values of the inputs Example: F 1 = x + y'z 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 19

Boolean Functions A Boolean function can only be represented in a truth table in one way In algebraic form it can be expressed in a variety of ways all of which have equivalent logic Expression used will dictate the interconnection of gates Conversely the interconnection of gates will dictate the logic expression By manipulating a Boolean expression according to the rules of Boolean algebra, it is sometimes possible to obtain a simpler expression for the same function reduce the number of gates in the circuit and the number of inputs to the gate can significantly reduce the cost of a circuit 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 20

Boolean Functions F 2 = x'y'z + x'yz + xy' 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 21

Boolean Functions F 2 = x'y'z + x'yz + xy' = x'z(y' + y) + xy' = x'z + xy' Verify with truth table 1st circuit had 3 terms, 8 literals 2nd circuit has 2 terms, 4 literals 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 22

Algebraic Manipulation 1 and 2 are the duals of each other 3 from postulate 4b: x + yz = (x + y)(x+ z) 4 and 5 are together known as the consensus theorem 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 23

Complement of a Function The generalized form of DeMorgan's theorems states that the complement of a function is obtained by interchanging AND and OR operators and complementing each literal: (A + B + C + D +... + F)' = A'B'C'D'...F' (ABCD...F)' = A' + B' + C' + D' +... + F' 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 24

Complement of a Function Find the complement of: F 1 = x'yz' + x'y'z and F 2 = x(y'z' + yz): (A + B + C + D +... + F)' = A'B'C'D'...F' (ABCD...F)' = A' + B' + C' + D' +... + F' 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 25

Complement of a Function A simpler procedure for deriving the complement of a function is to take the dual of the function and complement each literal: F 1 = x'yz' + x'y'z The dual of F 1 :(x' + y + z')(x' + y' + z) Complement each literal: (x + y' + z)(x+ y + z') = F' 1 F 2 = x(y'z' + yz) The dual of F 2 : x + (y' + z')(y+ z) Complement each literal: x' + (y + z)(y' + z') = x' + yy' + yz' + y'z + zz' = F' 2 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 26

Minterms A binary variable may appear in normal (x) or complement form (x') Two binary variables x and y combined with an AND operation There are four possible combinations: x'y', x'y, xy', and xy Each of these four AND terms is called a minterm, or a standard product n variables can be combined to form 2 n minterms Each minterm is obtained from an AND term of the n variables each variable being primed if the corresponding bit of the binary number (0 to 2 n -1) is a 0 and unprimed if a 1 A symbol for each minterm is of the form m j, where the subscript j denotes the decimal equivalent of the binary number of the minterm designated 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 27

Maxterms In a similar fashion, n variables forming an OR term, with each variable being primed or unprimed, provide 2 n maxterms, or a standard sum Each maxterm is obtained from an OR term of the n variables each variable being unprimed if the corresponding bit of the binary number (0 to 2 n -1) is a 0 and primed if a 1 A symbol for each maxterm is of the form M j, where the subscript j denotes the decimal equivalent of the binary number of the maxterm designated 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 28

Minterms and Maxterms Each minterm is the complement of its corresponding maxterm and vice versa 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 29

Minterms and Maxterms A Boolean function can be expressed algebraically from a truth table by forming a minterm for each combination of the variables that produces a 1 and then taking the OR of all those terms Sum of minterms Example: f 1 = x'y'z + xy'z' + xyz = m 1 + m 4 + m 7 f 2 = x'yz + xy'z + xyz' + xyz = m 3 + m 5 + m 6 + m 7 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 30

Minterms and Maxterms Complement of a Boolean function may be produced by creating a sum of minterms from the truth table outputs which are 0 f ' 1 = x'y'z' + x'yz' + x'yz + xy'z + xyz' Take complement: f 1 = (x + y + z)(x + y' + z)(x' + y + z')(x' + y' + z) = M 0 M 2 M 3 M 5 M 6 Generate f 2 from 0 outputs on table: f 2 = (x + y + z)(x + y + z')(x + y' + z)(x' + y + z) = M 0 M 1 M 2 M 4 Any Boolean function can be expressed as a product of maxterms Boolean functions expressed as a sum of minterms or product of maxterms are said to be in canonical form 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 31

Sum of Minterms The minterms whose sum defines the Boolean function are those which give the 1's of the function in a truth table If the function is not in this form (one or more variables missing from each minterm) it can be ANDed with an expression such as (x + x') F = A + B'C A= A(B + B') = AB + AB' A= AB(C + C') + AB'(C + C') = ABC + ABC' + AB'C + AB'C' B'C = B'C(A + A') = AB'C + A'B'C F = A + B'C = ABC + ABC' + AB'C + AB'C' + AB'C + A'B'C Remove duplicate minterms and rearrange F = A'B'C + AB'C' + AB'C + ABC' + ABC = m 1 + m 4 + m 5 + m 6 + m 7 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 32

Sum of Minterms Sometimes convenient to express the function in a briefer notation: F(A, B, C) = (1, 4, 5, 6, 7) Alternative procedure: Read minterms (1 outputs) directly from truth table 1, 4, 5, 6, 7 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 33

Product of Maxterms Can also express functions as a product of maxterms If the function is not in this form, use distributive law: x + yz = (x + y)(x + z) Missing variable(s), x for example, term is ORed with xx' F= xy+ x'z= (xy + x')(xy + z) = (x + x')(y+ x')(x+ z)(y + z) = (x' + y)(x+ z)(y+ z) OR each term with missing variables: x' + y = x' + y + zz' = (x' + y + z)(x' + y + z') x + z = x + z + yy' = (x + y + z)(x + y' + z) y + z = y + z + xx' = (x + y + z)(x' + y + z) 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 34

Product of Maxterms Remove duplicate maxterms and rearrange F= (x + y + z)(x + y' + z)(x' + y + z)(x' + y + z') = M 0 M 2 M 4 M 5 Sometimes convenient to express the function in a briefer notation: F(x, y, z) = (0, 2, 4, 5) Alternative procedure: Read maxterms (0 outputs) directly from truth table 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 35

Conversion between Canonical Forms The complement of a function expressed as the sum of minterms equals the sum of minterms missing from the original function F(A, B, C) = (1, 4, 5, 6, 7) F'(A, B, C) = (0, 2, 3) = m 0 + m 2 + m 3 F = (m 0 + m 2 + m 3 )' = m' 0 m' 2 m' 3 = M 0 M 2 M 3 = (0, 2, 3) The maxterm with subscript j is a complement of the minterm with the same subscript j and vice versa m' j = M j 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 36

Conversion between Canonical Example: F = xy + x'z Forms Derive truth table Minterms have 1 output F(x, y, z) = (1, 3, 6, 7) Maxterms have 0 output F(x, y, z) = (0, 2, 4, 5) 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 37

Standard Forms The two canonical forms of Boolean algebra are basic forms generated from a truth table Very seldom used since each minterm or maxterm must contain all the variables which generates the most literals Another way is the standard form Terms that form the function may contain one, two, or any number of literals Two types: Sum of products Products of sums 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 38

Sum of Products Boolean expression containing AND terms (product terms) with one or more literals each The sum denotes the ORing of these terms F 1 = y' + xy + x'yz' Input complements are assumed to be available 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 39

Product of Sums Boolean expression containing OR terms (sum terms) with one or more literals each The product denotes the ANDing of these terms F 2 = x(y' + z)(x' + y + z') 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 40

Non-Standard Form May be expressed in a nonstandard form Neither a sum of products or product of sums F 3 = AB + C(D + E) (a) requires two AND gates, two OR gates and is 3 levels Using distributive law to remove the parentheses: F 3 = AB + C(D + E) = AB + CD + CE (b) requires three AND gates, one OR gate, and is 2 levels 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 41

Other Logic Operations 2 2n functions for n binary variables When n = 2, there are 16 possible Boolean functions AND and OR are only 2 of the 16 functions Three categories: 1. Two functions that produce a constant 0 or 1 2. Four functions with unary operations: complement and transfer 3. Ten functions with binary operators that define eight different operations: AND, OR, NAND, NOR, exclusive-or, equivalence, inhibition, and implication 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 42

Other Logic Operations 16 Functions of Two Variables 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 43

Other Logic Operations 16 Functions of Two Variables 16 Functions of Two Variables Typically don't use constants and transfers as they can be optimized out of a function Inhibition and implication are seldom used in computer logic AND, OR and complement have been used in Boolean algebra NOR is the complement of OR (not-or) NAND is the complement of AND (not-and) Exclusive-OR (XOR) is 1 when x and y differ in value Equivalence is the complement of XOR (XNOR), is 1 when x and y are the same 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 44

Digital Logic Gates - Inverter Small circle (referred to as a bubble) designates the logic complement Requires 2 transistors Triangle symbol designates a buffer circuit or transfer function Used for power amplification of the signal and is equivalent to two inverters connected in cascade 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 45

Digital Logic Gates - OR/NOR OR requires 6 transistors NOR is complement of OR; bubble at output Requires 4 transistors; desirable 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 46

Digital Logic Gates - AND/NAND AND requires 6 transistors NAND is complement of AND; bubble at output Requires 4 transistors; faster than NOR; more desirable 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 47

Digital Logic Gates - XOR/XNOR XOR requires 12 transistors XNOR is complement of XOR; bubble at output Requires 12 transistors; function is desirable 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 48

Extension to Multiple Inputs A gate can be extended to have multiple inputs if the binary operation it represents is commutative and associative AND, OR, XOR, and XNOR can be easily extended NAND and NOR functions are commutative, but not associative For now, we define the multiple NOR (or NAND) gate as a complemented OR (or AND) gate: x y z = (x + y + z)' x y z = (xyz)' 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 49

Positive and Negative Logic High-level H representing logic 1 defines a positive logic system Low-level L representing logic 1 defines a negative logic system It is the designers choice 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 50

Positive and Negative Logic To switch between positive and negative logic: Invert the input and outputs (switch 0's and 1's) This produces the dual of a function All AND operations are converted to OR operations and vice versa Use polarity indicator (triangular bubble) 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 51

Integrated Circuits An integrated circuit (IC) is fabricated on a die of a silicon semiconductor crystal, called a chip, containing the electronic components for constructing digital gates We will not cover the process for creating chips The various gates are interconnected inside the chip to form the required circuit The chip is mounted in a ceramic or plastic container, and connections are welded to external pins Number of pins may range from 8 to several thousand Data sheets contain descriptions and information about the ICs ICs usually have some identification printed on them 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 52

Levels of Integration Small-scale integration (SSI): Contain less than 10 independent gates which are connected directly to the pins in the package. Medium-scale integration (MSI): Contain 10 to 1000 gates that perform specific elementary digital operations Decoders, adders, multiplexers, registers, and counters Large-scale integration (LSI): Contain thousands of gates Processors, memory chips, and programmable logic devices Very large-scale integration (VLSI): Contain millions of gates Large memory arrays and complex microcomputers 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 53

Digital Logic Families Each logic family has its own basic electronic circuit upon which more complex digital circuits and components are developed Many different logic families: 1. TTL transistor-transistor logic In use for 50 years 2. ECL emitter-coupled logic High-speed operation 3. MOS metal-oxide semiconductor High component density 4. CMOS complementary MOS Low power; dominant family 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 54

Digital Logic Families Important parameters distinguishing logic families: 1. Fan-out: Number of standard loads that the output can drive without impairing its normal operation 2. Fan-in: Number of inputs available 3. Power dissipation: Power consumed that must be available from the power supply 4. Propagation delay: Average transition delay time for a signal to propagate from input to output 5. Noise margin: Maximum external noise voltage added to an input signal that does not cause an undesirable change in the output 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 55

Computer-Aided Design (CAD) VLSI circuits contain millions of transistors Systems are very complex Use CAD to aid in development and verification Electronic Design Automation (EDA) are specific to the VLSI area Cover all necessary steps to design and build a circuit Various targets: 1. Application-specific integrated circuit (ASIC) 2. Field-programmable gate array (FPGA) 3. Programmable logic device (PLD) 4. Full-custom IC Choice based on market and unit costs 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 56

Hardware Description Languages (HDLs) Resembles a computer programming language Oriented to describing digital hardware functionality Two leading types: Verilog and VHDL Can be abstract (no reference to specific hardware) allows designer to devote attention to higher level details HDL-based models are simulated to check and verify its functionality before fabrication EDA tools have been developed to synthesize the logic described by an HDL model 2018 Roberto Muscedere Images 2013 Pearson Education Inc. 57