EEL 3705 / 3705L Digital Logic Design

Slides:



Advertisements
Similar presentations
Techniques for Combinational Logic Optimization
Advertisements

Chapter 3 Gate-Level Minimization
Prof. Sin-Min Lee Department of Computer Science
Gate-Level Minimization
ECE 3110: Introduction to Digital Systems Simplifying Sum of Products using Karnaugh Maps.
Chapter 3 Simplification of Switching Functions. Karnaugh Maps (K-Map) A K-Map is a graphical representation of a logic function’s truth table.
ECE C03 Lecture 21 Lecture 2 Two Level Minimization Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Chapter 3 Simplification of Switching Functions
Gate Logic: Two Level Canonical Forms

Simplifying Boolean Expressions Using K-Map Method
1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
1 © 2015 B. Wilkinson Modification date: January 1, 2015 Designing combinational circuits Logic circuits whose outputs are dependent upon the values placed.
ECE 2110: Introduction to Digital Systems PoS minimization Don’t care conditions.
UM EECS 270 Spring 2011 – Taken from Dr.Karem Sakallah Logic Synthesis: From Specs to Circuits Implementation Styles –Random –Regular Optimization Criteria.
Circuit Minimization. It is often uneconomical to realize a logic directly from the first logic expression that pops into your head. Canonical sum and.
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 Chapter #4 Review.
Karnaugh Maps (K-Map) A K-Map is a graphical representation of a logic function’s truth table.
C.S.Choy39 TERMINOLOGY Minterm –product term containing all input variables of a function in either true or complementary form Maxterm – sum term containing.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
CHAPTER 7 MULTI-LEVEL GATE CIRCUITS / NAND AND NOR GATES
CHAPTER 3 Simplification of Boolean Functions
Lecture 3: Incompletely Specified Functions and K Maps
Lecture 4 Nand, Nor Gates, CS147 Circuit Minimization and
ECE 2110: Introduction to Digital Systems
Computer Organisation
Lecture 5 Topics Canonical or Standard Forms of Functions
Lecture #6 EGR 277 – Digital Logic
ECE 3110: Introduction to Digital Systems
Plotting functions not in canonical form
Dr. Clincy Professor of CS
COMP211 Computer Logic Design Lecture 3. Combinational Logic 2
ECE 2110: Introduction to Digital Systems
EEL 3705 / 3705L Digital Logic Design
EEL 3705 / 3705L Digital Logic Design
ECE 331 – Digital System Design
EEL 3705 / 3705L Digital Logic Design
E- Lesson: Karnaugh Maps (K-Map ).
EEL 3705 / 3705L Digital Logic Design
Lecture 3: Incompletely Specified Functions and K Maps
Lecture 4 Sums of Product Circuits Simplification
Instructor: Alexander Stoytchev
BASIC & COMBINATIONAL LOGIC CIRCUIT
Instructor: Alexander Stoytchev
Digital Logic & Design Dr. Waseem Ikram Lecture 12.
Digital Logic & Design Dr. Waseem Ikram Lecture 13.
CHAPTER 5 KARNAUGH MAPS 5.1 Minimum Forms of Switching Functions
CSE 370 – Winter 2002 – Logic minimization - 1
ECE 331 – Digital System Design
Combinatorial Logic Circuit
Karnaugh Maps Introduction Venn Diagrams 2-variable K-maps
ECE 331 – Digital System Design
SYEN 3330 Digital Systems Chapter 2 – Part 5 SYEN 3330 Digital Systems.
Dr. Clincy Professor of CS
COE 202: Digital Logic Design Combinational Logic Part 3
Instructor: Alexander Stoytchev
Minimization of Switching Functions
CS Chapter 3 (3A and ) – Part 3 of 5
Dr. Clincy Professor of CS
Instructor: Alexander Stoytchev
Instructor: Alexander Stoytchev
Overview Part 2 – Circuit Optimization
Instructor: Alexander Stoytchev
Karnaugh maps Last time we saw applications of Boolean logic to circuit design. The basic Boolean operations are AND, OR and NOT. These operations can.
Laws & Rules of Boolean Algebra
Chapter 2 Digital Design and Computer Architecture, 2nd Edition
Lecture 3: Incompletely Specified Functions and K Maps
Circuit Simplification and
Presentation transcript:

EEL 3705 / 3705L Digital Logic Design Fall 2006 Instructor: Dr. Michael Frank Module #5: Combinational Logic Optimization (Thanks to Dr. Perry for the slides) 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Wednesday, October 4, 2006 Administrivia: Midterm #1 grades posted, handing papers back today Averages: 96%, 89%, 96% (98.5 points overall) This week’s lab: “Top secret code display” (w. K-maps) Design project #1: Due this Friday!! Test your designs at end of lab period, or in TA office hours Don’t delay writing the large required amount of documentation! Homework assignment #3: To be posted very soon, watch for it. Plan for today: Go over midterm solutions briefly Start in on next lecture topic, 3.5: Techniques for Combinational Logic Optimization Emphasis on use of Karnaugh maps 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Topic 3.5: Techniques for Combinational Logic Optimization 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Topic 3.5 – Minimizing Circuits Subtopics: 3.5.1. Simplification using Boolean identities Not covering in depth this semester in lecture 3.5.2. Karnaugh Maps (CIO #5) Focus of this lecture 3.5.3. Don’t care conditions 3.5.4. The Quine-McCluskey Method 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Goals of Circuit Minimization (1) Minimize the number of primitive Boolean logic gates needed to implement the circuit. Ultimately, this also roughly minimizes the number of transistors, the chip area, and the cost. Also roughly minimizes the energy expenditure among traditional irreversible circuits. This will be our focus. (2) It is also often useful to minimize the number of combinational stages or logical depth of the circuit. This roughly minimizes the delay or latency through the circuit, the time between input and output. Note: Goals (1) and (2) are often conflicting! In the real world, a designer may have to analyze and optimize some complex trade-off between logic complexity and latency. 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Minimizing DNF Expressions Using DNF (or CNF) expressions guarantees that you can always find some circuit that implements any desired Boolean function. However, the resulting circuit may be far larger than is really required! We would like to find the smallest sum-of-products expression that is equivalent to a given function. This will yield a fairly small circuit. However, circuits of other forms (not either CNF or DNF) might be even smaller for complex functions. 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Simplification of Switching Functions Chapter 3 Simplification of Switching Functions 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Karnaugh Maps (K-Map) A K-Map is a graphical representation of a logic function’s truth table 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Relationship to Venn Diagrams 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Relationship to Venn Diagrams 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Relationship to Venn Diagrams b 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Relationship to Venn Diagrams b 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Relationship to Venn Diagrams 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Two-Variable K-Map 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Note: The bit sequences must always be ordered using a Gray code! 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Note: The bit sequences must always be ordered using a Gray code! 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Note: The bit sequences must always be ordered using a Gray code! Edges are adjacent 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Four-variable K-Map Note: The bit sequences must be ordered using a Gray code! Note: The bit sequences must be ordered using a Gray code! 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Four-variable K-Map 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Four-variable K-Map Edges are adjacent Edges are adjacent 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Plotting Functions on the K-map SOP Form 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Canonical SOP Form using shorthand notation Three Variable Example 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Plot 1’s (minterms) of switching function 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Plot 1’s (minterms) of switching function 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Four-variable K-Map Example 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Simplification of Switching Functions using K-MAPS Karnaugh Maps (K-Map) Simplification of Switching Functions using K-MAPS 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Terminology/Definition Literal A variable or its complement Logically adjacent terms Two minterms are logically adjacent if they differ in only one variable position Ex: and m6 and m2 are logically adjacent Note: Or, logically adjacent terms can be combined 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Terminology/Definition Implicant Product term that could be used to cover minterms of a function Prime Implicant An implicant that is not part of another implicant Essential Prime Implicant A prime implicant that covers at least one minterm that is not contained in another prime implicant Cover A minterm that has been used in at least one group 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Guidelines for Simplifying Functions Each square on a K-map of n variables has n logically adjacent squares. (i.e. differing in exactly one variable) When combing squares, always group in powers of 2m , where m=0,1,2,…. In general, grouping 2m variables eliminates m variables. 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Guidelines for Simplifying Functions Group as many squares as possible. This eliminates the most variables. Make as few groups as possible. Each group represents a separate product term. You must cover each minterm at least once. However, it may be covered more than once. 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

K-map Simplification Procedure Plot the K-map Circle all prime implicants on the K-map Identify and select all essential prime implicants for the cover. Select a minimum subset of the remaining prime implicants to complete the cover. Read the K-map 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Example Use a K-Map to simplify the following Boolean expression 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 1: Plot the K-map 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 2: Circle ALL Prime Implicants 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 3: Identify Essential Prime Implicants PI EPI PI 1 1 EPI 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 4: Select minimum subset of remaining Prime Implicants to complete the cover. PI EPI 1 1 EPI 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 5: Read the map. 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Solution 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Example Use a K-Map to simplify the following Boolean expression 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 1: Plot the K-map 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 2: Circle Prime Implicants Wrong!! We really should draw A circle around all four 1’s 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 3: Identify Essential Prime Implicants EPI EPI Wrong!! We really should draw A circle around all four 1’s 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 4: Select Remaining Prime Implicants to complete the cover. EPI EPI 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 5: Read the map. 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Solution Since we can still simplify the function this means we did not use the largest possible groupings. 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 2: Circle Prime Implicants Right! 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 3: Identify Essential Prime Implicants EPI 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 5: Read the map. 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Solution 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Special Cases 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example 1 1 1 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Four Variable Examples 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Example Use a K-Map to simplify the following Boolean expression 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Four-variable K-Map 1 1 1 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Four-variable K-Map 1 1 1 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Four-variable K-Map 1 1 1 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Example Use a K-Map to simplify the following Boolean expression D=Don’t care (i.e. either 1 or 0) 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Four-variable K-Map 1 d 1 1 1 d 1 d 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Four-variable K-Map 1 d 1 1 1 d 1 d 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Five Variable K-Maps 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Five variable K-map Use two four variable K-maps A=1 A=0 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Use Two Four-variable K-Maps A=0 map A=1 map 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Five variable example 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Use Two Four-variable K-Maps A=0 map A=1 map 1 1 1 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Use Two Four-variable K-Maps A=0 map A=1 map 1 1 1 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Five variable example 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Plotting POS Functions 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

K-map Simplification Procedure Plot the K-map for the function F Circle all prime implicants on the K-map Identify and select all essential prime implicants for the cover. Select a minimum subset of the remaining prime implicants to complete the cover. Read the K-map Use DeMorgan’s theorem to convert F to F in POS form 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Example Use a K-Map to simplify the following Boolean expression 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 1: Plot the K-map of F 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 2: Circle ALL Prime Implicants 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 3: Identify Essential Prime Implicants PI EPI PI 1 1 EPI 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 4: Select minimum subset of remaining Prime Implicants to complete the cover. PI EPI 1 1 EPI 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

Three-Variable K-Map Example Step 5: Read the map. 1 1 1 1 1 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 Solution 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006

M. Frank, EEL3705 Digital Logic, Fall 2006 TPS Quiz 9/17/2018 M. Frank, EEL3705 Digital Logic, Fall 2006