KU College of Engineering Elec 204: Digital Systems Design

Slides:



Advertisements
Similar presentations
KU College of Engineering Elec 204: Digital Systems Design
Advertisements

Boolean Algebra and Reduction Techniques
Overview Part 1 – Gate Circuits and Boolean Equations
Boolean Algebra and Combinational Logic
ECE 331 – Digital System Design
SYEN 3330 Digital SystemsJung H. Kim Chapter SYEN 3330 Digital Systems Chapter 2 – Part 4.
1 EE 365 Combinational-Circuit Synthesis. 2 Combinational-Circuit Analysis Combinational circuits -- outputs depend only on current inputs (not on history).
Chapter 3 Simplification of Switching Functions
Circuit Optimization Goal: To obtain the simplest implementation for a given function Optimization is a more formal approach to simplification that is.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 2 – Combinational.
Example: Given a 4-bit input combination N=N 3 N 2 N 1 N 0, this function produces a 1 output for N=1,2,3,5,7,11,13, and 0 otherwise.  According to the.
ECE 331 – Digital System Design Multi-level Logic Circuits and NAND-NAND and NOR-NOR Circuits (Lecture #8) The slides included herein were taken from the.
EET 1131 Unit 5 Boolean Algebra and Reduction Techniques
Computer Engineering (Logic Circuits) (Karnaugh Map)
EECC341 - Shaaban #1 Lec # 7 Winter Combinational Circuit Minimization Canonical sum and product logic expressions do not provide a circuit.
Overview Part 2 – Circuit Optimization 2-4 Two-Level Optimization
Boolean Algebra and Digital Circuits
ECE 331 – Digital System Design
1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 2 – Combinational.
1 Chapter 5 Karnaugh Maps Mei Yang ECG Logic Design 1.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
Department of Computer Engineering
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 2 – Combinational Logic Circuits Part 2.
1 Digital Logic Design Week 5 Simplifying logic expressions.
1 EE121 John Wakerly Lecture #4 Combinational-Circuit Synthesis ABEL.
Optimization Algorithm
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. Circuit Optimization Logic and Computer Design Fundamentals.
ECE 2110: Introduction to Digital Systems PoS minimization Don’t care conditions.
1 ENGR 254 Lecture DeMorgan Symbol Equivalence.
Boolean Algebra Combinational-Circuit Analysis We analyze a combinational logic circuit by obtaining a formal description of its logic function. Once.
Circuit Minimization. It is often uneconomical to realize a logic directly from the first logic expression that pops into your head. Canonical sum and.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 2 – Combinational Logic Circuits Part 2.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 2 – Combinational Logic Circuits Part 2.
Chapter3: Gate-Level Minimization Part 1 Origionally By Reham S. Al-Majed Imam Muhammad Bin Saud University.
Unit 1 Minimization Techniques and Logic Gates. Introduction to Digital Systems Analog devices and systems process time-varying signals that can take.
ECE 3110: Introduction to Digital Systems Combinational-Circuit Synthesis.
ECE 3110: Introduction to Digital Systems
Boolean Algebra and Reduction Techniques
ECE 3110: Introduction to Digital Systems Chapter #4 Review.
Digital Design: Principles and Practices Chapter 4 Combinational Logic Design Principles.
CS151 Introduction to Digital Design Chapter Map Simplification.
Sum-of-Products (SOP)
Karnaugh Maps (K-Maps)
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Logic Design Dr. Oliver Faust.
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC
KARNAUGH MAP A Karnaugh map (K Map) is a pictorial method used to minimize boolean expressions without having to use boolean algebra theorems and equation.
C.S.Choy39 TERMINOLOGY Minterm –product term containing all input variables of a function in either true or complementary form Maxterm – sum term containing.
1 Gate Level Minimization EE 208 – Logic Design Chapter 3 Sohaib Majzoub.
Digital Logic (Karnaugh Map). Karnaugh Maps Karnaugh maps (K-maps) are graphical representations of boolean functions. One map cell corresponds to a row.
BOOLEAN ALGEBRA LOGIC GATES. Introduction British mathematician George Boole( ) was successful in finding the link between logic and mathematics.
ECE 301 – Digital Electronics Minimizing Boolean Expressions using K-maps, The Minimal Cover, and Incompletely Specified Boolean Functions (Lecture #6)
Based on slides by:Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. ECE/CS 352: Digital System Fundamentals Lecture 7 – Karnaugh Maps.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
Boolean or, Switching Algebra. Switching Algebra The two-valued Boolean algebra is also called “Switching algebra” by engineers and computer scientists.
1 CS 352 Introduction to Logic Design Lecture 4 Ahmed Ezzat Multi-level Gate Circuits and Combinational Circuit Design Ch-7 + Ch-8.
Digital Systems Design 1 Signal Expressions Multiply out: F = ((X + Y)  Z) + (X  Y  Z) = (X  Z) + (Y  Z) + (X  Y  Z)
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 2 – Combinational Logic Circuits Part 2.
ECE 2110: Introduction to Digital Systems
ECE 2110: Introduction to Digital Systems
CSC205 Jeffrey N. Denenberg Lecture #5
ECE 2110: Introduction to Digital Systems
ECE 3110: Introduction to Digital Systems
ECE/CS 352 Digital Systems Fundamentals
Karnaugh Maps (K-Maps)
SYEN 3330 Digital Systems Chapter 2 – Part 4 SYEN 3330 Digital Systems.
Optimization Algorithm
Overview Part 2 – Circuit Optimization
Laws & Rules of Boolean Algebra
Presentation transcript:

KU College of Engineering Elec 204: Digital Systems Design Signal Expressions Multiply out: F = ((X + Y¢) × Z) + (X¢ × Y × Z¢) = (X × Z) + (Y¢ × Z) + (X¢ × Y × Z¢) KU College of Engineering Elec 204: Digital Systems Design

New circuit, same function Sum of Products KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Product of Sums Form KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Sum-of-products form AND-OR NAND-NAND KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Product-of-sums form OR-AND NOR-NOR KU College of Engineering Elec 204: Digital Systems Design

Shortcut: Symbol substitution KU College of Engineering Elec 204: Digital Systems Design

Different circuit, same function KU College of Engineering Elec 204: Digital Systems Design

Combinational-Circuit Analysis Combinational circuits -- outputs depend only on current inputs (not on history). Kinds of combinational analysis: exhaustive (truth table) algebraic (expressions) simulation / test bench Write functional description in HDL Define test conditions / test vectors Compare circuit output with functional description (or known-good realization) Repeat for “random” test vectors KU College of Engineering Elec 204: Digital Systems Design

Combinational-Circuit Design Sometimes you can write an equation or equations directly using “logic” (the kind in your brain). Example (alarm circuit): Corresponding circuit: KU College of Engineering Elec 204: Digital Systems Design

Alarm-circuit transformation Sum-of-products form Useful for programmable logic devices “Multiply out”: KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design row N3 N2 N1 N0 F 0 0 0 0 0 0 1 0 0 0 1 1 2 0 0 1 0 1 3 0 0 1 1 1 4 0 1 0 0 0 5 0 1 0 1 1 6 0 1 1 0 0 7 0 1 1 1 1 8 1 0 0 0 0 9 1 0 0 1 0 10 1 0 1 0 0 11 1 0 1 1 1 12 1 1 0 0 0 13 1 1 0 1 1 14 1 1 1 0 0 15 1 1 1 1 0 Brute-force design Truth table --> canonical sum (sum of minterms) Example: prime-number & 1 detector 4-bit input, N3N2N1N0 F = SN3N2N1N0(1,2,3,5,7,11,13) KU College of Engineering Elec 204: Digital Systems Design

Minterm list --> canonical sum Recall T10 KU College of Engineering Elec 204: Digital Systems Design

Algebraic simplification Theorem T10 Reduce number of gates and gate inputs KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Resulting circuit KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Circuit Optimization Goal: To obtain the simplest implementation for a given function Optimization is a more formal approach to simplification that is performed using a specific procedure or algorithm Optimization requires a cost criterion to measure the simplicity of a circuit Two distinct cost criteria we will use: Literal cost (L) Gate input cost (G) and cost with NOTs (GN) KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Literal Cost Literal – a variable or it complement Literal cost – the number of literal appearances in a Boolean expression corresponding to the logic circuit diagram Examples: F = BD + AB’C + AC’D’ L = 8 F = BD + AB’C + AB’D’ + ABC’ L = F = (A + B)(A + D)(B + C +D’)(B’ + C’ + D) L = Which solution is best? 11 10 2nd Literal Cost = 11 3rd Literal Cost = 10 The first solution is best KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Gate Input Cost Gate input costs - the number of inputs to the gates in the implementation corresponding exactly to the given equation or equations. (G - inverters not counted, GN - inverters counted) For SOP and POS equations, it can be found from the equation(s) by finding the sum of: all literal appearances the number of terms excluding terms consisting only of a single literal,(G) and optionally, the number of distinct complemented single literals (GN). Example: F = BD + AB’C + AC’D’ G = 11, GN = 14 F = BD + AB’C + AB’D’ + ABC’ G = , GN = F = (A + B)(A + D)(B + C +D’)(B’ + C’ + D) G = , GN = Which solution is best? 15 19 G = 15, GN = 18 (second value includes inverter inputs) G = 14, GN = 17 1st solution is best 14 17 KU College of Engineering Elec 204: Digital Systems Design

Cost Criteria (continued) GN = G + 2 = 9 GN(gate input count with NOTs) adds the inverter inputs Example 1: F = A + B C + B’C’ L = 5 L (literal count) counts the AND inputs and the single literal OR input. G = L + 2 = 7 G (gate input count) adds the remaining OR gate inputs A B C F KU College of Engineering Elec 204: Digital Systems Design

Cost Criteria (continued) B C F Example 2: F = A B C + A’B’C’ L = 6 G = 8 GN = 11 F = (A + C’ )( B’ + C)( A’ + B) L = 6 G = 9 GN = 12 Same function and same literal cost But first circuit has better gate input count and better gate input count with NOTs Select it! F A B C KU College of Engineering Elec 204: Digital Systems Design

Boolean Function Optimization Minimizing the gate input (or literal) cost of a (a set of) Boolean equation(s) reduces circuit cost. We choose gate input cost. Boolean Algebra and graphical techniques are tools to minimize cost criteria values. Some important questions: When do we stop trying to reduce the cost? Do we know when we have a minimum cost? Treat optimum or near-optimum cost functions for two-level (SOP and POS) circuits first. Introduce a graphical technique using Karnaugh maps (K-maps, for short) KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Karnaugh Maps (K-map) A K-map is a collection of squares Each square represents a minterm The collection of squares is a graphical representation of a Boolean function Adjacent squares differ in the value of one variable Alternative algebraic expressions for the same function are derived by recognizing patterns of squares The K-map can be viewed as A reorganized version of the truth table A topologically-warped Venn diagram as used to visualize sets in algebra of sets KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Some Uses of K-Maps Provide a means for: Finding optimum or near optimum SOP and POS standard forms, and two-level AND/OR and OR/AND circuit implementations for functions with small numbers of variables Visualizing concepts related to manipulating Boolean expressions, and Demonstrating concepts used by computer-aided design programs to simplify large circuits KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Two Variable Maps A 2-variable Karnaugh Map: Note that minterm m0 and minterm m1 are “adjacent” and differ in the value of the variable y Similarly, minterm m0 and minterm m2 differ in the x variable. Also, m1 and m3 differ in the x variable as well. Finally, m2 and m3 differ in the value of the variable y y = 0 y = 1 x = 0 m 0 = 1 = x = 1 2 = 3 = y x KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design K-Map and Truth Tables The K-Map is just a different form of the truth table. Example – Two variable function: We choose a,b,c and d from the set {0,1} to implement a particular function, F(x,y). Function Table K-Map Input Values (x,y) Function Value F(x,y) 0 0 a 0 1 b 1 0 c 1 1 d y = 0 y = 1 x = 0 a b x = 1 c d KU College of Engineering Elec 204: Digital Systems Design

K-Map Function Representation F = x y = 0 y = 1 x = 0 x = 1 1 Example: F(x,y) = x For function F(x,y), the two adjacent cells containing 1’s can be combined using the Minimization Theorem: x y ) , ( F = + KU College of Engineering Elec 204: Digital Systems Design

K-Map Function Representation G = x+y y = 0 y = 1 x = 0 1 x = 1 Example: G(x,y) = x + y For G(x,y), two pairs of adjacent cells containing 1’s can be combined using the Minimization Theorem: ( ) ( ) y x xy ) , ( G + = Duplicate x y KU College of Engineering Elec 204: Digital Systems Design