COMP541 Combinational Logic - 3

Slides:



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

Combinational Circuits
1 COMP541 Combinational Logic Montek Singh Jan 16, 2007.
1 COMP541 Combinational Logic - 2 Montek Singh Jan 18, 2007.
Contemporary Logic Design Two-Level Logic © R.H. Katz Transparency No. 3-1 Chapter #2: Two-Level Combinational Logic Section 2.1, Logic Functions.
1 COMP541 Combinational Logic - II Montek Singh Aug 27, 2014.
CSCE 211: Digital Logic Design
Chapter 2: Boolean Algebra and Logic Functions
Chapter 2 Combinational Systems And / Or / Not. TRIAD PRINCIPLE: Combinational is about And / Or / Not combinations As well as equivalent functions. It.
Lecture 17: Digital Design Today’s topic –Intro to Boolean functions Reminders –HW 4 due Wednesday 10/8/2014 (extended) –HW 5 due Wednesday 10/15/2014.
Combinational Logic 1.
Lecture 22: 11/19/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
Chapter 2 Two- Level Combinational Logic. Chapter Overview Logic Functions and Switches Not, AND, OR, NAND, NOR, XOR, XNOR Gate Logic Laws and Theorems.
Lecture 3. Combinational Logic 1 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System Education & Research.
Chapter 2 Digital Design and Computer Architecture, 2 nd Edition Chapter 2 David Money Harris and Sarah L. Harris.
LOGIC CIRCUITLOGIC CIRCUIT. Goal To understand how digital a computer can work, at the lowest level. To understand what is possible and the limitations.
1 COMP541 Combinational Logic - 3 Montek Singh Jan 23, 2012.
1 COMP541 Combinational Logic - II Montek Singh Jan 18, 2012.
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION
1 COMP541 Combinational Logic - 3 Montek Singh Jan 21, 2015.
Homework Reading Machine Projects Labs
Boolean Algebra & Logic Gates
Digital Logic.
COMP541 Combinational Logic - 3
COSC3330 Computer Architecture Lecture 2. Combinational Logic
Morgan Kaufmann Publishers
Lecture 4 Nand, Nor Gates, CS147 Circuit Minimization and
Chapter 2: Boolean Algebra and Logic Functions
COMP541 Combinational Logic - II
14:332:231 DIGITAL LOGIC DESIGN Boolean Algebra
ECE 2110: Introduction to Digital Systems
CS 105 Digital Logic Design
ECE 3110: Introduction to Digital Systems
Complement of a Function
Computer Organization and Design Transistors & Logic - II
Digital Logic.
Basic Digital Logic Systems
Princess Sumaya University
Circuit analysis summary
TN 221: DIGITAL ELECTRONICS 1
Boolean algebra Last time we talked about Boolean functions, Boolean expressions, and truth tables. Today we’ll learn how to how use Boolean algebra to.
ECE 331 – Digital System Design
Digital Logic and Design
Karnaugh Maps (K-Maps)
Boolean Algebra Why study Boolean Algebra?
Modified from John Wakerly Lecture #2 and #3
Lecture 4 Sums of Product Circuits Simplification
BASIC & COMBINATIONAL LOGIC CIRCUIT
Instructor: Alexander Stoytchev
CSE 370 – Winter Combinational Logic - 1
CSE 370 – Winter 2002 – Logic minimization - 1
Combinatorial Logic Circuit
Functions Computers take inputs and produce outputs, just like functions in math! Mathematical functions can be expressed in two ways: We can represent.
January 19 W’05 Yutao He 4532B Boelter Hall CSM51A/EEM16-Sec.1 W’05
Digital Systems Design
COMP541 Combinational Logic - II
Chapter 2 Introduction to Logic Circuits
Dr. Clincy Professor of CS
From now on: Combinatorial Circuits:
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
COMP541 Combinational Logic - II
COMP541 Combinational Logic - 3
ECE 352 Digital System Fundamentals
Chapter 2 Digital Design and Computer Architecture, 2nd Edition
CSE 370 – Winter Number syst.; Logic functions- 1
Circuit Simplification and
Lecture 2: Combinational Logic Design
Presentation transcript:

COMP541 Combinational Logic - 3 Montek Singh Sep 13, 2017

Today’s Topics Synthesis: Schematic drawing conventions from truth table to logic implementation Schematic drawing conventions Non-Boolean values “Don’t Cares”, or X values “Floating values”, or Z values

Mechanically Go From Truth Table to Function

From Truth Table to Logic Equation Consider a truth table Standard sum-of-products implementation OR of all product terms that are 1 For each row where output is 1 write the minterm called “ON-set minterm” OR all of these minterms

Standard Forms Not necessarily simplest F Definitions: But it is a systematic way to go from truth table to function Definitions: “Literal”: a single variable, complemented or not  Ā “Product terms”: AND of literals  ĀBZ “Sum terms”: OR of product terms  X + Ā This is logical product and sum, not arithmetic

Definition: Minterm Product term in which all variables appear once (complemented or not) each minterm is 1 in exactly one row, 0 elsewhere

Number of Minterms For n variables, there will be 2n minterms Like binary numbers from 0 to 2n-1 Often numbered same way (often in decimal)

Maxterms Sum term in which all variables appear once (complemented or not) each maxterm is 0 in exactly one row, 1 elsewhere

Minterm related to Maxterm Minterm and maxterm with same subscripts are complements Example

Implementation: Sum of Minterms OR all of the minterms of truth table row with a 1 “ON-set minterms” F = m0 + m2 + m5 + m7

More General: Sum of Products Simplifying sum-of-minterms can yield a sum of products difference is that each term need not be a minterm i.e., terms do not need to have all variables Ex: Implementation is still AND-OR but products may contain fewer literals simplifies to:

Two-Level Implementation Sum of products has 2 levels of gates ANDs followed by an OR equivalently: NANDs followed by a NAND

More Levels of Gates? What’s best? Hard to answer More gate delays (more on this later) But maybe we only have 2-input gates So multi-input ANDs and ORs have to be decomposed

Complement of a Function Definition: 1s & 0s swapped in truth table Mechanical way to derive algebraic form Take the dual Recall: Interchange AND and OR, and 1s & 0s Complement each literal

Complement of F Not surprisingly, just sum of the other minterms sum of “OFF-set minterms” Example: F = m0 + m2 + m5 + m7 F’ = m1 + m3 + m4 + m6 simplifies to:

Product of Maxterms Recall that maxterm is true except for its own case So M1 is only false for 001

Product of Maxterms Can express F as AND of all rows that should evaluate to 0 i.e., product of OFF-set Maxterms! why? a row in which F=0 (OFF-set)… … has a Maxterm that is 0 which makes the product 0 or

Complement of F Can express F’s complement similarly: or product of ON-set Maxterms! why? a row in which F=1 (ON-set)… … has a Maxterm that is 0 which makes F’ zero or

More General: Product of Sums Simplifying product-of-Maxterms can yield a product of sums difference is that each term need not be a Maxterm i.e., terms do not need to have all variables Ex: Implementation is still OR-AND but each sum may contain fewer literals simplifies to: HOW??  homework problem (hint: distributive property)

From Equations to Gates Simply parse the Boolean equation and replace each operator with a gate AND, OR, NOT gates parentheses indicate hierarchy Example:

Recap Working (so far) with AND, OR, and NOT Algebraic identities Algebraic simplification Minterms and maxterms Can now synthesize gate-level implementation from truth table

Drawing Style Indicate inputs and outputs using arrows or: inputs at left/top, outputs at right/bottom If possible, gates should flow from left to right or: top to bottom Straight wires best or: keep bends at a minimum (preferably 90 deg) Connections: wires always connect at a “T” junction a dot at a wire crossing indicates connection wire crossing without a dot means no connection

Circuit Schematic Rules (cont.) Wire connections A dot where wires cross indicates a connection Wires crossing without a dot make no connection Wires always connect at a T junction

Multiple Output Circuits: Example Output asserted corresponding to most significant TRUE input Example: Priority Encoder Hardware

Example: Priority Encoder Hardware (contd.) Y3 has 8 minterms, Y2 has 4 minterms, Y1 has 2 minterms and Y0 has 1 without simplification: 15 AND gates + 3 OR gates with simplification, a much smaller circuit (method discussed later)

Values that are not 0’s and 1’s Don’t Cares (X) Floating values (Z)

X values X is neither 1 nor 0 Unknown Don’t Care Illegal typically used to represent “unknown” or “illegal” values Unknown e.g., an uninitialized value in a simulator in hardware most flipflops will wake up to a 1 or a 0 value but could be different each time it wakes up Don’t Care an output specified as X means “don’t care” i.e., left unspecified: whatever comes out is okay Illegal e.g., contention at output two gates fighting

Actually: Several Meanings of X When used to specify an input value Means: “Don’t Care”: this particular input variable’s value does not matter when determining the output Example: Output F is 1 when the inputs A, B, C are 1X1 Means F = AC // B is a Don’t Care Unknown/uninitialized signal If a simulator cannot determine the value of a signal, it will display it as X Other values that depend on this signal may also become X Contention (illegal input value) Sometimes a simulator will use X to denote the value of a node that is being pulled both to 0 and to 1 Example: Outputs of two gates are shorted; or a gate has p-transistor and n-transistor network simultaneously on!

Don’t Cares (X) More compact representation! Example: Priority Encoder Hardware

Z values Also neither 1 nor 0 Could be undesirable: but actually “floating” i.e., the output is neither connected to 0 (ground) nor to 1 (power supply) Could be undesirable: actual voltage is highly susceptible to noise e.g., neighboring wires/gates could easily influence value Could be by design: useful in buses, memories, multiplexers, etc. usually one gate drives a wire to a 1 or 0 all others “float” their outputs example: tristate buffers/inverters cover in next lecture tristate buffer

Next Detour Back to combinational logic overview of transistors common building blocks