Prof. Hsien-Hsin Sean Lee

Slides:



Advertisements
Similar presentations
K-Map Simplification COE 202 Digital Logic Design Dr. Aiman El-Maleh
Advertisements

Based on slides by: Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. ECE/CS 352: Digital System Fundamentals Lecture 8 – Systematic Simplification.
ECE 301 – Digital Electronics Karnaugh Maps (Lecture #7) The slides included herein were taken from the materials accompanying Fundamentals of Logic Design,
Gate-Level Minimization. Digital Circuits The Map Method The complexity of the digital logic gates the complexity of the algebraic expression.
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.
ENGIN112 L13: Combinational Design Procedure October 1, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 13 Combinational Design Procedure.
CS 151 Digital Systems Design Lecture 13 Combinational Design Procedure.

Computer Engineering (Logic Circuits) (Karnaugh Map)
Introduction Gate-level minimization refers to the design task of finding an optimal gate-level implementation of Boolean functions describing a digital.
ECE 331 – Digital System Design Karnaugh Maps and Determining a Minimal Cover (Lecture #7) The slides included herein were taken from the materials accompanying.
ECE 301 – Digital Electronics Karnaugh Maps and Determining a Minimal Cover (Lecture #8) The slides included herein were taken from the materials accompanying.
بهينه سازي با نقشة کارنو Karnaugh Map. 2  Method of graphically representing the truth table that helps visualize adjacencies 2-variable K-map 3-variable.
SYEN 3330 Digital Systems Jung H. Kim Chapter SYEN 3330 Digital Systems Chapter 2 – Part 5.
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
Digital Logic and Design Vishal Jethva Lecture No. 10 svbitec.wordpress.com.
Lecture 3: Incompletely Specified Functions and K Maps CSE 140: Components and Design Techniques for Digital Systems Fall 2014 CK Cheng Dept. of Computer.
1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each.
Department of Computer Engineering
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC. K-Map (1)  Karnaugh Mapping is used to minimize the number of logic gates that are required in a digital circuit.
The covering procedure. Remove rows with essential PI’s and any columns with x’s in those rows.
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.
ECE 3110: Introduction to Digital Systems Symplifying Products of sums using Karnaugh Maps.
Combinational Logic Part 2: Karnaugh maps (quick).
Two Level Networks. Two-Level Networks Slide 2 SOPs A function has, in general many SOPs Functions can be simplified using Boolean algebra Compare the.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 2 – Combinational Logic Circuits Part 2.
Converting to Minterms Form
ECE2030 Introduction to Computer Engineering Lecture 8: Quine-McCluskey Method Prof. Hsien-Hsin Sean Lee School of Electrical and 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 ECE2030 Introduction to Computer Engineering Lecture 8: Quine-McCluskey Method Prof. Hsien-Hsin Sean Lee School of ECE Georgia Institute of Technology.
Computer Engineering (Logic Circuits) (Karnaugh Map)
Chapter3: Gate-Level Minimization Part 1 Origionally By Reham S. Al-Majed Imam Muhammad Bin Saud University.
Chapter 3 The Karnaugh Map
CS2100 Computer Organisation
07 KM Page 1 ECEn/CS 224 Karnaugh Maps. 07 KM Page 2 ECEn/CS 224 What are Karnaugh Maps? A simpler way to handle most (but not all) jobs of manipulating.
CHAPTER 3: PRINCIPLES OF COMBINATIONAL LOGIC
Ahmad Almulhem, KFUPM 2010 COE 202: Digital Logic Design Combinational Logic Part 3 Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:
Lecture 11 Combinational Design Procedure
Karnaugh Mapping Digital Electronics. Karnaugh Mapping or K-Mapping This presentation will demonstrate how to Create and label two, three, & four variable.
Conversion from one number base to another Binary arithmetic Equation simplification DeMorgan’s Laws Conversion to/from SOP/POS Reading equations from.
ECE2030 Introduction to Computer Engineering Lecture 6: Canonical (Standard) Forms Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering.
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC
THE K-MAP.
1 Example: Groupings on 3-Variable K-Maps BC F(A,B,C) = A ’ B ’ A BC F(A,B,C) = B ’ A
 Seattle Pacific University EE Logic System DesignKMaps-1 Two-Level Simplification All Boolean expressions can be represented in two- level forms.
CSE 140: Components and Design Techniques for Digital Systems Lecture 3: Incompletely Specified Functions and K Maps CK Cheng Dept. of Computer Science.
ECE/CS 352 Digital System Fundamentals1 ECE/CS 352 Digital Systems Fundamentals Spring 2001 Chapter 2 – Part 5 Tom Kaminski & Charles R. Kime.
Digital Logic (Karnaugh Map). Karnaugh Maps Karnaugh maps (K-maps) are graphical representations of boolean functions. One map cell corresponds to a row.
Karnaugh Maps (K maps).
CEC 220 Digital Circuit Design More Karnaugh Maps Monday, February 02 CEC 220 Digital Circuit Design Slide 1 of 11.
ECE 301 – Digital Electronics Minimizing Boolean Expressions using K-maps, The Minimal Cover, and Incompletely Specified Boolean Functions (Lecture #6)
In some Boolean functions there are some input terms that will never occur, for example in BCD code there are sex invalid combinations 1010,1011,1100,
1 EENG 2710 Chapter 3 Simplification of Switching Functions.
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC:K-Map. K-Map (1)  Karnaugh Map provides a systematic method for simplifying Boolean expressions and may produce.
Technical Seminar II Implementation of
CHAPTER 3 Simplification of Boolean Functions
Lecture 3: Incompletely Specified Functions and K Maps
Lecture 4 Nand, Nor Gates, CS147 Circuit Minimization and
Digital Logic and Design
Lecture 3: Incompletely Specified Functions and K Maps
Chapter 3 Gate-level Minimization.
Lecture 6 Karnaugh maps (K-maps) K-maps with “don’t cares”
COE 202: Digital Logic Design Combinational Logic Part 3
Overview Part 2 – Circuit Optimization
3-Variable K-map AB/C AB/C A’B’ A’B AB AB’
Lecture 3: Incompletely Specified Functions and K Maps
Presentation transcript:

ECE2030 Introduction to Computer Engineering Lecture 7: Simplification using K-map Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering Georgia Tech

Hamming Distance The count of bits different in two binary patterns Examples: Dh(1001, 0101) = 2 Dh(0xADF4, 0x9FE3) = ?? Unit-Distance Codes Reduce errors during transmission such as rotary positional sensor E.g. Gray Code

Gray Code Construction 000 001 011 010 110 111 101 100 1 1 00 01 11 10 1 1 1 10 11 01 00 1 100 101 111 110 010 011 001 000

Gray Code Binary Encoding Gray Code Encoding Decimal b3 b2 b1 b0 g3 g2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Rotary Position Sensor

Karnaugh Map (K-Map) A graphical map method to simplify Boolean function up to 6 variables A diagram made up of squares Each square represents one minterm (or maxterm) of a given Boolean function

Karnaugh Map Examples Note that the Hamming Distance between adjacent columns or adjacent rows (including cyclic ones) must be 1 for simplification purposes

Karnaugh Map Adjacent columns or rows allow grouping of minterms (maxterms) for simplification

Implicant Definition In K-map, an Implicant is A product term is an Implicant of a Boolean function if the function has an output 1 for all minterms of the product term. In K-map, an Implicant is bubble covers only 1 (bubble size must be a power of 2) CD 00 01 11 10 1 AB

Prime Implicant Definition In K-map, a Prime Implicant (PI) is If the removal of any literal from an implicant I results in a product term that is not an implicant of the Boolean function, then I is an Prime Implicant. Examples BCD is an implicant, but CD or BD or BC do not imply a 1 in this function; BCD is a PI B’C’D is an implicant, but B’C’ is not an implicant, thus B’C’D is not a PI In K-map, a Prime Implicant (PI) is bubble that is expanded as big as possible (bubble size must be a power of 2) CD 00 01 11 10 1 AB

Essential Prime Implicant Definition If a minterm of a Boolean function is included in only one PI, then this PI is an Essential Prime Implicant. In K-map, an Essential Prime Implicant is Bubble that contains a 1 covered only by itself and no other PI bubbles CD 00 01 11 10 1 AB

Non-Essential Prime Implicant Definition A Non-Essential Prime Implicant is a PI that is not an Essential PI. In K-map, an Non-Essential Prime Implicant is A 1 covered by more than one PI bubble CD 00 01 11 10 1 AB

Simplification for SOP Form K-Map for the given Boolean function Identify all Essential Prime Implicants for 1’s in the K-map Identify non-Essential Prime Implicants in the K-map for the 1’s which are not covered by the Essential Prime Implicants Form a sum-of-products (SOP) with all Essential Prime Implicants and the necessary non-Essential Prime Implicants to cover all 1’s

Example for SOP Identify all the essential PIs for 1’s Identify the non-essential PIs to cover 1’s Form an SOP based on the selected PIs BC 00 01 11 10 1 A

Example for SOP Identify all the essential PIs for 1’s Identify the non-essential PIs to cover 1’s Form an SOP based on the selected PIs CD 00 01 11 10 1 AB

Example for SOP Identify all the essential PIs for 1’s Identify the non-essential PIs to cover 1’s Form an SOP based on the selected PIs CD 00 01 11 10 1 AB

Prime Implicants All the prior definitions apply to ‘0’ (or maxterm) as well Consider these implicants imply a ‘0’ output

Simplification for POS Form K-Map for the given Boolean function Identify all Essential Prime Implicants for 0’s in the K-map Identify non-Essential Prime Implicants in the K-map for the 0’s which are not covered by the Essential Prime Implicants Form a product-of-sums (POS) with all Essential Prime Implicants and the necessary non-Essential Prime Implicants to cover all 0’s

Example for POS Identify all the essential PIs for 0’s Identify the non-essential PIs to cover 0’s Form an POS based on the selected PIs BC 00 01 11 10 1 A

Example for POS Identify all the essential PIs for 0’s Identify the non-essential PIs to cover 0’s Form an POS based on the selected PIs CD 00 01 11 10 1 AB

Don’t Care Condition  X Don’t care (X) Those input combinations which are irrelevant to the target function (i.e. If the input combination signals can be guaranteed never occur) Can be used to simplify Boolean equations, thus simply logic design In K-map Use X to express Don’t Care in the map Don’t care can be bubbled as 1 or 0 depending on SOP or POS simplification to result into bigger bubble

Don’t Care Example  BCD to Gray Code BCD stands for Binary Coded Decimal Each digit of a decimal number is represented by one code BCD only encodes from 0 to 9 Require 4 bits Only use 10 out of 16 encoding space BCD-coded input Gray Code Output Decimal b3 b2 b1 b0 g3 g2 g1 g0 1 2 3 4 5 6 7 8 9 10 X 11 12 13 14 15

BCD to Gray Code (Do not use Don’ Care) BCD stands for Binary Coded Decimal Each digit of a decimal number is represented by one code BCD only encodes from 0 to 9 Require 4 bits Only use 10 out of 16 encoding space BCD-coded input Gray Code Output Decimal b3 b2 b1 b0 g3 g2 g1 g0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

What g2 is? g2 = F(b3, b2, b1, b0)

Example: g2 of BCD-to-Gray Without using Don’t Care Take Don’t Care into account b1b0 b1b0 00 01 11 10 1 b3b2 00 01 11 10 1 X b3b2

Another Example of Don’t Care (SOP) CD 00 01 11 10 1 X AB

Another Example of Don’t Care (POS) CD 00 01 11 10 1 X AB

Use Karnaugh Map in B5 or B6 2 K-maps are to be constructed (2 submaps) Consider one submap is on top of the other Cells that occupy the same relative position in 2 maps are considered adjacent Bubble can be constructed in vertical dimension when stacking up 2 maps In B6 4 K-maps are to be constructed (4 submaps) Similar to B5 , yet another dimension needs to be considered

Karnaugh Map Example in B5 CD CD 00 01 11 10 1 00 01 11 10 1 AB AB E = 0 E = 1

Karnaugh Map Example in B6 YZ YZ 00 01 11 10 1 00 01 11 10 1 WX WX U,V=0,0 U,V=0,1 YZ YZ 00 01 11 10 1 X 00 01 11 10 1 WX WX U,V=1,0 U,V=1,1

Minimal SOP and POS w/ Don’t care Could lead to different function if the same x is treated as 1 in SOP but as 0 in POS. Even though the final Boolean functions could be different, but for those ones with non-don’t care square, correct functionality was maintained. 1 x B A F = Ā (SOP) F = B (POS) F = Ā (POS)

Use Karnaugh Map in B5 or B6 It is getting hard and complicated Eye-ball simplification on several submaps is error-prone, leading to sub-optimal results Do we have a better algorithm? Quine-McCluskey Method