2-Level Minimization Classic Problem in Switching Theory Tabulation Method Transformed to “Set Covering Problem” “Set Covering Problem” is Intractable.

Slides:



Advertisements
Similar presentations
Techniques for Combinational Logic Optimization
Advertisements

FUNCTION OPTIMIZATION Switching Function Representations can be Classified in Terms of Levels Number of Levels, k, is Number of Unique Boolean (binary)
Glitches & Hazards.
CSEE 4823 Advanced Logic Design Handout: Lecture #2 1/22/15
ECE 3110: Introduction to Digital Systems
ECE C03 Lecture 31 Lecture 3 Two-Level Logic Minimization Algorithms Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
1 Combinational Logic Network design Chapter 4 (continued ….)
Quine-McCluskey (Tabular) Minimization  Two step process utilizing tabular listings to:  Identify prime implicants (implicant tables)  Identify minimal.
Chapter 3 Simplification of Switching Functions. Karnaugh Maps (K-Map) A K-Map is a graphical representation of a logic function’s truth table.
بهينه سازي با روش Quine-McCluskey
MVI Function Review Input X is p -valued variable. Each Input can have Value in Set {0, 1, 2,..., p i-1 } literal over X corresponds to subset of values.
EDA (CS286.5b) Day 15 Logic Synthesis: Two-Level.
Chapter 3 Simplification of Switching Functions
The Theory of NP-Completeness
ENEE 6441 On Quine-McCluskey Method > Goal: find a minimum SOP form > Why We Need to Find all PIs? f(w,x,y,z) = x’y’ +wxy+x’yz’+wy’z = x’y’+x’z’+wxy+wy’z.
1 Exact Two-Level Minimization of Hazard-Free Logic with Multiple Input Changes Montek Singh Tue, Oct 16, 2007.

ECE Synthesis & Verification 1 ECE 667 ECE 667 Synthesis and Verification of Digital Systems Exact Two-level Minimization Quine-McCluskey Procedure.
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.
Simplifying Boolean Expressions Using K-Map Method
Overview Part 2 – Circuit Optimization 2-4 Two-Level Optimization
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Two-Level Minimization I.
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 Design Lecture # 7 University of Tehran.
B-1 Appendix B - Reduction of Digital Logic Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles.
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.
Synthesis of Two-Level Circuits
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
Combinatorial Algorithms Unate Covering Binate Covering Graph Coloring Maximum Clique.
The covering procedure. Remove rows with essential PI’s and any columns with x’s in those rows.
1 © 2015 B. Wilkinson Modification date: January 1, 2015 Designing combinational circuits Logic circuits whose outputs are dependent upon the values placed.
Quine-McCluskey (Tabular) Minimization Two step process utilizing tabular listings to: Identify prime implicants (implicant tables) Identify minimal PI.
Optimization Algorithm
Two-Level Simplification Approaches Algebraic Simplification: - algorithm/systematic procedure is not always possible - No method for knowing when the.
ICS 252 Introduction to Computer Design Lecture 9 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
1 SOP and POS Expressions from K-maps The examples so far have all generated minimal SOP expressions. POS expressions can be formed as follows: 1.Group.
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.
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.
Chapter 6 Quine-McCluskey Method Mei Yang ECG Logic Design 1.
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.
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)
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.
Lecture 11 Timing diagrams Hazards.
Karnaugh Maps (K-Map) A K-Map is a graphical representation of a logic function’s truth table.
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
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.
Lecture # 5 University of Tehran
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 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
Technical Seminar II Implementation of
1 Digital Design Debdeep Mukhopadhyay Associate Professor Dept of Computer Science and Engineering NYU Shanghai and IIT Kharagpur.
CHAPTER 6 Quine-McCluskey Method
Computer Organisation
Plotting functions not in canonical form
CS 352 Introduction to Logic Design
ECB2212-Digital Electronics
Minimization of Switching Functions
Overview Part 2 – Circuit Optimization
Presentation transcript:

2-Level Minimization Classic Problem in Switching Theory Tabulation Method Transformed to “Set Covering Problem” “Set Covering Problem” is Intractable n -input Function Can Have 3 n /n Prime Implicants n -input Function Can Have 2 n Minterms Exponentially Complex Algorithms for Exact Solutions NOTE: Sometimes the Covering Problem is Easy to Solve (when no cyclic tables result)

Heuristic – Branch and Bound Quine-McCluskey Method is Tabulation Method Using a Branch and Bound Algorithm with Heuristic in Branch Operation for Solution of the Cyclic Cover Branch and Bound Approaches BRANCH STEP –Reduce, HALT if not Cyclic Cover –Heuristically Choose a PI –Solve Cyclic Cover in Two Ways 1)Assume Chosen PI is in the Final Cover Set 2)Assume Chosen PI is not in the Final Cover Set 3)Select Between 1) and 2) Depending on Minimal Cost BOUND STEP –If Current Solution is Better Than Previous, Return from this Level of Recursion (Note: Initially Set to Entire Set of PIs in Table) –Go to Branching Step

Branch and Bound Diagram Cyclic Cover 1 Cyclic Cover 2 Cyclic Cover 3 CC3 Solution 1 CC3 Solution 2 Initial CC1 Soln is All PIs Heuristically Choose a PI – Reduce to CC2 Initial CC2 Soln is All PIs Heuristically Choose a PI – Reduce to CC3 Initial CC3 Soln is All PIs Heuristically Choose a PI 1 – Reduce to CC3 Heuristically Choose a PI 2 – Reduce to CC3 Soln 1 Fully Reduced Equal to All PIs in CC3 – No Bounding Soln 2 Better CC3 Entire Set and Fully Reduced

Choosing Candidate PIs Choose PI With Fewest Literals –That is, One that Covers the most Minterms Select One that Covers a Minterm Covered by Very Few Other Minterms –Note if Minterm Covered by Single PI, it is EPI –This Technique Chooses One that is “Almost” an EPI Independent Set Heuristic

Find Maximum Set of Independent Rows in Cover Matrix Partition Matrix as Shown 0 CA I is Sub-Matrix of Independent Rows I = {I 1, I 2, I 3,...} 1)Choose PI in I that Covers Most Rows in A 2)Reduce Matrix Using New EPI Selection and Dominance 3)If Matrix is 0  0 Solution is Found Else Go To 1)

Exact Method – Petrick’s Method When Cyclic Cover Table is Found use Covering Clauses in POS Form Each Product Corresponds to Minterm Transform the POS to SOP Product Terms Represent Selected Primes Minimum Cover Identified by Product with Fewest Literals Finds ALL Solutions to the Cyclic Cover

Petrick’s Method Example Write Clauses as a POS Expression: We Solve this Equation

Solving the Satisfying Clause It is Easy to Find a Satisfying Argument for a SOP Expression Classic “Petrick’s Method” Transforms POS to SOP

Multi-Output Functions Minimizing Each Output Separately Usually Results in Poor Minimization –Term Sharing Occurs Only by Chance Can Use “Multi-Output Prime Implicants” –More Complex Version of Tabulation Method Can Use “Characteristic Function for Multi-Output Functions” –Utilizes Principles in Multiple-Valued Logic

Product Functions Consider x y z f1f1 f2f2 Minterms in f 1 f 2 are Minterms for Both f 1 and f 2 f 1 f 2 is a Product Function

Multi-Output Prime Implicant DEFINITION A MOPI for a set of switching functions f 1, f 2, …, f m is a product of literals which is either: 1.A Prime Implicant of One of the functions, f i, for i=1,2,…,m 2.A Prime Implicant of one of the Product Functions, f i f j …f k where i,j,k=1,2,…,m and i  j  k THEOREM The set of all MOPIs is sufficient for the determination of at least one multi-output minimized SOP.

Tagged Product Terms Could Generate Using K-map or Tabulation Method for Each Output Separately AND all Product Functions –too lengthy –instead use Tagged Product Terms Tagged Product Terms have Two Parts: 1.kernel – a product term of literals (as normal) 2.tag – appended entity to kernel that indicates which function outputs it applies to

Generating MOPIs

0-0f 1 - and 0-1-f 2 DO NOT combine –No Common Tag Elements –They WOULD Combine Under Cube Merging for Single Output Function Only Place Check Mark on Terms with COMMON Tag Outputs –EXAMPLE 000f 1 - and 001f 1 f 2 Results in 000f 1 - Being Checked ONLY

MOPI Cover Table

F is an essential row for f 1, only Column dominance, remove m 5 under f 2

MOPI Cover Table Will use Petrick’s method applied to multiple outputs

Exact Solution

Exact Solution (Cont.) Minimum Product Term: {A,B,G} f 1 ON = All MOPIs that have f 1 in Tag f 2 ON = All MOPIs that have f 2 in Tag

Hazard-Free 2-Level Minimization Tabular Method Can Be Applied To Realize 2-Level Designs That Eliminate Certain Hazards Considers Delay of Logic Circuits Example:

Hazard Types Static Hazard – Output value the same after input change 0-Hazard 1-Hazard Dynamic Hazard – Output value different after input change

Analysis of Networks with Static Hazards SOP Expression with 1-Hazard POS Expression with 0-Hazard

Elimination of Hazard Prime Implicant added to eliminate static 1-hazard

Other Hazard Classifications for More than One Input Change Logic Hazard – Hazard caused by the particular implementation. Can be eliminated by adding Pis Function Hazard – Presence of hazard due to the function realized by the output. Present for transitions in which more than one input changes. Cannot be eliminated

Tabular Approach to Hazard-Free Design Uses Minimum number of prime implicants A Network will contain no static or dynamic hazards if its 1-sets satisfy the following two conditions 1.For each pair of adjacent input states that both produce a 1 output, there is at least one 1-set that includes both input states of the pair 2.There are no 1-sets that contain exactly one pair of complementary literals

Tabular Approach Steps 1.Find prime implicants using tabular approach 2.Create prime implicant table, however, columns will be any essential single minterm & all pairs of adjacent states (these have been found in the second table of 1) See Example Handout