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.

Slides:



Advertisements
Similar presentations
FUNCTION OPTIMIZATION Switching Function Representations can be Classified in Terms of Levels Number of Levels, k, is Number of Unique Boolean (binary)
Advertisements

Glitches & Hazards.
CSEE 4823 Advanced Logic Design Handout: Lecture #2 1/22/15
K-Map Simplification COE 202 Digital Logic Design Dr. Aiman El-Maleh
ECE C03 Lecture 31 Lecture 3 Two-Level Logic Minimization Algorithms Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
ELEC Digital Logic Circuits Fall 2008 Logic Minimization (Chapter 3) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and.
Quine-McCluskey (Tabular) Minimization  Two step process utilizing tabular listings to:  Identify prime implicants (implicant tables)  Identify minimal.
بهينه سازي با روش Quine-McCluskey
EDA (CS286.5b) Day 15 Logic Synthesis: Two-Level.
Chapter 3 Simplification of Switching Functions
Gate Logic: Two Level Canonical Forms
Contemporary Logic Design Two-Level Logic © R.H. Katz Transparency No. 4-1 Chapter #2: Two-Level Combinational Logic Section 2.3, Switches and Tools.

ECE 331 – Digital System Design Karnaugh Maps and Determining a Minimal Cover (Lecture #7) The slides included herein were taken from the materials accompanying.
Logic gate level Part 3: minimizing circuits. Improving circuit efficiency Efficiency of combinatorial circuit depends on number & arrangement of its.
Overview Part 2 – Circuit Optimization 2-4 Two-Level Optimization
Two Level Logic Optimization. Two-Level Logic Minimization PLA Implementation Ex: F 0 = A + B’C’ F 1 = AC’ + AB F 2 = B’C’ + AB product term AB, AC’,
Digital Logic and Design Vishal Jethva Lecture No. 10 svbitec.wordpress.com.
2-Level Minimization Classic Problem in Switching Theory
1 Simplification of Boolean Functions:  An implementation of a Boolean Function requires the use of logic gates.  A smaller number of gates, with each.
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
The covering procedure. Remove rows with essential PI’s and any columns with x’s in those rows.
Quine-McCluskey (Tabular) Minimization Two step process utilizing tabular listings to: Identify prime implicants (implicant tables) Identify minimal PI.
Optimization Algorithm
2-Level Minimization Classic Problem in Switching Theory Tabulation Method Transformed to “Set Covering Problem” “Set Covering Problem” is Intractable.
Two-Level Simplification Approaches Algebraic Simplification: - algorithm/systematic procedure is not always possible - No method for knowing when the.
UM EECS 270 Spring 2011 – Taken from Dr.Karem Sakallah Logic Synthesis: From Specs to Circuits Implementation Styles –Random –Regular Optimization Criteria.
Computer Organization CSC 405 Quine-McKluskey Minimization.
Combinational Logic Part 2: Karnaugh maps (quick).
Chapter 6 Quine-McCluskey Method Mei Yang ECG Logic Design 1.
Copyright © 2004 by Miguel A. Marin Revised McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE DIGITAL SYSTEMS.
2-1 Introduction Gate Logic: Two-Level Simplification Design Example: Two Bit Comparator Block Diagram and Truth Table A 4-Variable K-map for each of the.
ECE2030 Introduction to Computer Engineering Lecture 8: Quine-McCluskey Method Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering.
CMPUT Computer Organization and Architecture II1 CMPUT329 - Fall 2003 Topic 5: Quine-McCluskey Method José Nelson Amaral.
1 ECE2030 Introduction to Computer Engineering Lecture 8: Quine-McCluskey Method Prof. Hsien-Hsin Sean Lee School of ECE Georgia Institute of Technology.
1 Quine-McCluskey Method. 2 Motivation Karnaugh maps are very effective for the minimization of expressions with up to 5 or 6 inputs. However they are.
Computer Engineering (Logic Circuits) (Karnaugh Map)
Chapter3: Gate-Level Minimization Part 1 Origionally By Reham S. Al-Majed Imam Muhammad Bin Saud University.
CS2100 Computer Organisation
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:
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 15: March 4, 2002 Two-Level Logic-Synthesis.
ELEC Digital Logic Circuits Fall 2015 Logic Minimization (Chapter 3) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and.
Prof. Hsien-Hsin Sean Lee
1 Example: Groupings on 3-Variable K-Maps BC F(A,B,C) = A ’ B ’ A BC F(A,B,C) = B ’ A
Key Observation Adjacencies in the K-Map
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).
Boolean Functions 1 ECE 667 ECE 667 Synthesis and Verification of Digital Circuits Boolean Functions Basics Maciej Ciesielski Univ.
ECE 301 – Digital Electronics Minimizing Boolean Expressions using K-maps, The Minimal Cover, and Incompletely Specified Boolean Functions (Lecture #6)
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
©2010 Cengage Learning SLIDES FOR CHAPTER 6 QUINE-McCLUSKEY METHOD Click the mouse to move to the next page. Use the ESC key to exit this chapter. This.
Technical Seminar II Implementation of
CHAPTER 6 Quine-McCluskey Method
Lecture 6 Quine-McCluskey Method
DeMorgan’s Theorem DeMorgan’s 2nd Theorem
Lecture #6 EGR 277 – Digital Logic
CS 352 Introduction to Logic Design
Digital Logic and Design
Chapter 6 Quine-McCluskey Method
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
Optimization Algorithm
COE 202: Digital Logic Design Combinational Logic Part 3
Minimization of Switching Functions
Overview Part 2 – Circuit Optimization
3-Variable K-map AB/C AB/C A’B’ A’B AB AB’
Presentation transcript:

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 implementation of the original to the final representation

Two-Level Networks Slide 3 Don’t Care Conditions In practice there are combinations that will never occur we may pick the most convenient assignment A BCD input is greater than 5 ABCDF ABCDF F =  m(6,7,8,9)+  d(10,11,12,13,14,15) don’t cares = 0 F=  ABC + A  B  C don’t cares = 1 F= BC + A

Two-Level Networks Slide 4 Karnaugh Map BC A0m0m1m3m2 1m4m5m7m6 ABCF BC A F = C + AB Adjacent cells are at Hamming distance 1

Two-Level Networks Slide 5 Examples F =  m(1,4,5)+  d(0) F =  m(0,3,5,6) F =  m(0,2,3,4,5,7)

Two-Level Networks Slide 6 4-variable Karnaugh Maps CD AB 00 m0m1m3m2 01 m4m5m7m6 11 m12m13m15m14 10 m8m9m11m10 F =  m(1,4,5,6,14)+  d(3,7) F =  m(0,4,5,6,9,12,13) F =  m(0,2,5,6,7,8,10,13)

Two-Level Networks Slide 7 Prime Implicants Given two logic functions f and g, if g(x) = 1 for all x such that f(x) = 1, then g contains f, denoted f ≤ g. If a logic function f contains a product c, then c is an implicant of f. Furthermore, if c is a minterm, then c is a minterm of f. A product P is a sub-product of Q, if all the literals in P also appear in Q. Let P be an implicant of a logic function f. If no other implicant Q of f is a sub-product of P, then P is a prime implicant (PI) of f.

Two-Level Networks Slide 8 Prime Implicants in K maps largest blocks (loops) of 2 i 1-cells (may include don’t care cells) Show examples

Two-Level Networks Slide 9 Minimum SOP Consider an SOP that consists of PIs. If any SOP that is obtained by removing any of the PIs does not represent the original function f, then the original SOP is an irredundant sum-of-product expression (ISOP) of f. Among the ISOPs for f, one with the minimum number of products is a minimum sum-of-product expression (MSOP). Among the MSOPs for f, one with the minimum number of literals is a exact minimum sum-of-product expression (exact MSOP) of f. Let m be a minterm of a logic function f. If only one PI of f covers m, the m is a distinguished minterm. Among all the PIs of f, if there is only one that covers m, then it is an essential prime implicant.

Two-Level Networks Slide 10 Example F =  m(2,5,6,7,10,11) F =  ABD +  ABC +  AC  D +  BC  D + A  BC (SOP) F =  ABD +  ABC +  BC  D + A  BC (ISOP) F =  ABC +  AC  D + A  BC (MSOP)

Two-Level Networks Slide 11 Quine-McCluskey (Tabular) Minimization Two step process utilizing tabular listings to: –Identify prime implicants (implicant tables) –Identify minimal cover (cover tables) All work is done in tabular form –Number of variables is not a limitation It does affect the size of the table –Basis for many computer implementations Proper organization and term identification are key factors for correct results

Two-Level Networks Slide 12 Quine-McCluskey Minimization Minterms are initially listed one per line in groups –Each group contains terms with the same number of true and complemented variables –Terms are listed in numerical order within group Terms and implicants are identified using one of three common notations –full variable form –cellular form –1,0,- form

Two-Level Networks Slide 13 Notation Forms Full variable form - variables and complements in algebraic form –hard to identify when adjacency applies –very easy to make mistakes Cellular form - terms are identified by their decimal index value –Easy to tell when adjacency applies; indexes must differ by power of two (one bit) –Implicants identified by term nos. separated by comma; differing bit pos. in () following terms

Two-Level Networks Slide 14 Notation Forms (cont.) 1,0,- form - terms are identified by their binary index value –Easier to translate to/from full variable form –Easy to identify when adjacency applies, one bit is different –- shows variable(s) dropped when adjacency is used Different forms may be mixed during the minimization

Two-Level Networks Slide 15 Example of Different Notations F(A, B, C, D) =  m(4,5,6,8,10,13) 1ABCD ABCD ABCD ABCD ABCD ABCD Full variable Cellular 1,0,-

Two-Level Networks Slide 16 Implication Table Quine-McCluskey Method –Tabular method to systematically find all prime implicants –ƒ(A,B,C,D) = Σ m(4,5,6,8,9, 10,13) + Σ d(0,7,15) –Part 1: Find all prime implicants –Step 1: Fill Column 1 with active-set and DC-set minterm indices. Group by number of true variables. Implication Table Column I NOTE: DCs are included in this step!

Two-Level Networks Slide 17 Minimization - First Pass Quine-McCluskey Method –Tabular method to systematically find all prime implicants –ƒ(A,B,C,D) = Σ m(4,5,6,8,9,10,13) + Σ d(0,7,15) –Part 1: Find all prime implicants –Step 2: Apply Adjacency - Compare elements of group with N 1's against those with N+1 1's. One bit difference implies adjacent. Eliminate variable and place in next column. E.g., 0000 vs yields vs yields -000 When used in a combination, mark with a check. If cannot be combined, mark with a star. These are the prime implicants. Repeat until nothing left. Implication Table Column I Column II

Two-Level Networks Slide 18 Minimization - Second Pass Implication Table Column I Column II 0-00 * -000 * * 10-0 * * Column III 01-- * -1-1 * Quine-McCluskey Method –Step 2 cont.: Apply Adjacency - Compare elements of group with N 1's against those with N+1 1's. One bit difference implies adjacent. Eliminate variable and place in next column. E.g., 0000 vs yields vs yields -000 When used in a combination, mark with a check. If cannot be combined, mark with a star. These are the prime implicants. Repeat until nothing left.

Two-Level Networks Slide 19 Prime Implicants Prime Implicants: X XX AB C CD A D B 00 10

Two-Level Networks Slide 20 Stage 2: find smallest set of prime implicants that cover the active-set recall that essential prime implicants must be in final expression Prime Implicants (cont.) Prime Implicants: X XX AB C CD A D B 00 10

Two-Level Networks Slide 21 rows = prime implicants columns = ON-set elements place an "X" if ON-set element is covered by the prime implicant Coverage Chart 0,4(0-00) 0,8(-000) 8,9(100-) 8,10(10-0) 9,13(1-01) 4,5,6,7(01--) 5,7,13,15(-1-1) 4XX4XX 5XX5XX 6X6X 8XXX8XXX 9XX9XX 10 X 13 X Coverage Table Note: Don’t include DCs in coverage table; they don’t have to be covered by the final logic expression!

Two-Level Networks Slide 22 Coverage Table (cont.) rows = prime implicants columns = ON-set elements place an "X" if ON-set element is covered by the prime implicant If column has a single X, than the implicant associated with the row is essential. It must appear in minimum cover 0,4(0-00) 0,8(-000) 8,9(100-) 8,10(10-0) 9,13(1-01) 4,5,6,7(01--) 5,7,13,15(-1-1) 4XX4XX 5XX5XX 6X6X 8XXX8XXX 9XX9XX 10 X 13 X 0,4(0-00) 0,8(-000) 8,9(100-) 8,10(10-0) 9,13(1-01) 4,5,6,7(01--) 5,7,13,15(-1-1) 4XX4XX 5XX5XX 6X6X 8XXX8XXX 9XX9XX 10 X 13 X Coverage Chart

Two-Level Networks Slide 23 Coverage Table (cont.) Eliminate all columns covered by essential primes 0,4(0-00) 0,8(-000) 8,9(100-) 8,10(10-0) 9,13(1-01) 4,5,6,7(01--) 5,7,13,15(-1-1) 4XX4XX 5XX5XX 6X6X 8XXX8XXX 9XX9XX 10 X 13 X

Two-Level Networks Slide 24 Coverage Table (cont.) Eliminate all columns covered by essential primes Find minimum set of rows that cover the remaining columns 0,4(0-00) 0,8(\000) 8,9(100-) 8,10(10-0) 9,13(1-01) 4,5,6,7(01--) 5,7,13,15(-1-1) 4XX4XX 5XX5XX 6X6X 8XXX8XXX 9XX9XX 10 X 13 X 0,4(0-00) 0,8(-000) 8,9(100-) 8,10(10-0) 9,13(1-01) 4,5,6,7(01--) 5,7,13,15(-1-1) 4XX4XX 5XX5XX 6X6X 8XXX8XXX 9XX9XX 10 X 13 X

Two-Level Networks Slide 25 Cover Table Reduction 1.Detection of essential rows 2.Elimination of dominated rows 3.Elimination of dominated columns 4.Detection of Pseudo-essential rows 5.repeat step 2 to 4 while reductions are possible

Two-Level Networks Slide 26 Solution Methods for Cyclic Tables Example F =  m(0,2,3,4,5,7) naïve algorithm 1.Assume that a row is in the final solution, reduce the covering, and obtain a minimum cover 2.Assume that a row is not in the final solution, reduce the covering, and obtain a minimum cover 3.select the lower from (1) and (2)

Two-Level Networks Slide 27 Branch and Bound 1.Branch a)Choose one row from the covering table. Let it be A. b)Assume A is in the final solution---find minimal cover c)Assume A is not in the final solution---find minimal cover d)Select smaller of (b) and (c) 2.Bound a)if the cost of the solution is equal to the lower bound of the cost of the minimum cover, then stop the search. b)if the solution of the current problems cannot be better than the best solution found, then stop the search.

Two-Level Networks Slide 28 Algebraic Method for Cyclic Tables mama mbmb mcmc mdmd meme P1P1 XXX P2P2 XX P3P3 XX P4P4 XX P5P5 XX P6P6 XX Let g i = 1 iff P i is present in the SOP

Two-Level Networks Slide 29 Algebraic Method for Cyclic Tables P 1 + P 5 is the MSOP