ICS 252 Introduction to Computer Design

Slides:



Advertisements
Similar presentations
CSEE 4823 Advanced Logic Design Handout: Lecture #2 1/22/15
Advertisements

ECE C03 Lecture 31 Lecture 3 Two-Level Logic Minimization Algorithms Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Winter 2005ICS 252-Intro to Computer Design ICS 252 Introduction to Computer Design Lecture 5-Scheudling Algorithms Winter 2005 Eli Bozorgzadeh Computer.
Two-Level Logic Synthesis -- Heuristic Method (ESPRESSO)
Logic Synthesis 2 Outline –Two-Level Logic Optimization –ESPRESSO Goal –Understand two-level optimization –Understand ESPRESSO operation.
1 Consensus Definition Let w, x, y, z be cubes, and a be a variable such that w = ax and y = a’z w = ax and y = a’z Then the cube xz is called the consensus.
Logic Synthesis Outline –Logic Synthesis Problem –Logic Specification –Two-Level Logic Optimization Goal –Understand logic synthesis problem –Understand.
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.
ICS 252 Introduction to Computer Design Fall 2006 Eli Bozorgzadeh Computer Science Department-UCI.
Winter 2014 S. Areibi School of Engineering University of Guelph
ECE 667 Synthesis and Verification of Digital Systems
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’,
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Two-Level Minimization II.
1 Chapter 5 Karnaugh Maps Mei Yang ECG Logic Design 1.
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.
Boolean Minimizer FC-Min: Coverage Finding Process Petr Fišer, Hana Kubátová Czech Technical University Department of Computer Science and Engineering.
ECE 3110: Introduction to Digital Systems Symplifying Products of sums using Karnaugh Maps.
ICS 252 Introduction to Computer Design Lecture 10 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
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.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect15: Heuristic Two Level Logic.
1 ECE2030 Introduction to Computer Engineering Lecture 8: Quine-McCluskey Method Prof. Hsien-Hsin Sean Lee School of ECE Georgia Institute of Technology.
Ahmad Almulhem, KFUPM 2010 COE 202: Digital Logic Design Combinational Logic Part 3 Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:
Two-Level Boolean Minimizer BOOM-II Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University Karlovo nam. 13,
1 Implicant Expansion Methods Used in The BOOM Minimizer Petr Fišer, Jan Hlavička Czech Technical University, Karlovo nám. 13, Prague 2
1 Gate Level Minimization EE 208 – Logic Design Chapter 3 Sohaib Majzoub.
ICS 252 Introduction to Computer Design Lecture 8- Heuristics for Two-level Logic Synthesis Winter 2005 Eli Bozorgzadeh Computer Science Department-UCI.
ICS 252 Introduction to Computer Design Lecture 8 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
CHAPTER 6 Quine-McCluskey Method
Lecture 6 Quine-McCluskey Method
Uniformed Search (cont.) Computer Science cpsc322, Lecture 6
CHAPTER 3 Simplification of Boolean Functions
ICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design
Lecture 4 Nand, Nor Gates, CS147 Circuit Minimization and
ELEC Digital Logic Circuits Fall 2014 Logic Minimization (Chapter 3)
Computer Organisation
Prof. Sin-Min Lee Department of Computer Science
Lecture 5 Topics Canonical or Standard Forms of Functions
SINGLE-LEVEL PARTITIONING SUPPORT IN BOOM-II
QUINE-McCLUSKEY METHOD
CSCE 211: Digital Logic Design
Uniformed Search (cont.) Computer Science cpsc322, Lecture 6
ICS 252 Introduction to Computer Design
CSCE 211: Digital Logic Design
Synthesis of Two Level Circuits
ICS 252 Introduction to Computer Design
CSCE 211: Digital Logic Design
CSCE 211: Digital Logic Design
EE4271 VLSI Design Logic Synthesis EE 4271 VLSI Design.
CSCE 211: Digital Logic Design
ECE 331 – Digital System Design
CHAPTER 5 KARNAUGH MAPS 5.1 Minimum Forms of Switching Functions
SYEN 3330 Digital Systems Chapter 2 – Part 5 SYEN 3330 Digital Systems.
Function Minimization Algorithms
MINTERMS and MAXTERMS Week 3
ICS 252 Introduction to Computer Design
SYEN 3330 Digital Systems Chapter 2 – Part 6 SYEN 3330 Digital Systems.
CSCE 211: Digital Logic Design
COE 202: Digital Logic Design Combinational Logic Part 3
Minimization of Switching Functions
Heuristic Minimization of Two Level Circuits
Overview Part 2 – Circuit Optimization
Heuristic Minimization of Two Level Circuits
CHAPTER 6 QUINE-McCLUSKEY METHOD
ICS 252 Introduction to Computer Design
CSCE 211: Digital Logic Design
ECE 331 – Digital System Design
Presentation transcript:

ICS 252 Introduction to Computer Design Two-Level Login Synthesis Heuristics Eli Bozorgzadeh Computer Science Department-UCI

ICS 252-Intro to Computer Design Reference Lecture note Ankur Srivastava [@ankurs] http://www.enee.umd.edu/class/enee644/ Chapter 7(7.3,7.4) of the textbook Administrative Winter 2004 ICS 252-Intro to Computer Design

Heuristic Optimization Principles Exact minimizer: guaranteed optimality PIs and/or minterms Complexity Heuristic minimizer Quality of the solution complexity [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Local Search Approach Find a staring solution Search the neighborhood Move to neighbor points Continue until a local optimal is reached Components Solution space Neighborhood structure Move strategy Action on local optimal [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

Local Search for Logic Minimization Goal: Given a Boolean function, find a SOP with minimal cost Local search: Search space: all SOP forms on given variables Solution space: all SOP forms equal to the given function Neighborhood : two SOP forms are of distance 1 if They have only one product term not in common They have only one literal not in common in this term How to find neighbors? Expansion and reduction Greedy move strategy: move to a neighbor with less cost Halt (or try again starting) at local minimum [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

Neighborhood Structure Two solutions, s and t are of distance r if there exist a sequence of (r+1) solutions ,s0, s1,…,sn s.t. s0=s, sr=t, and si and si+1 are of distance 1. xy+wy’z+w’x’y xy’+wy’z+w’x’y  x’y’+w’x’y+wy’z A local search algorithm usually is based on searching neighbors within a given distance (radius). Larger radius in general leads to more neighbors, better movement, shorter search time before reach a local optimal, but longer run-time overall and no guarantee on the quality of the local optimal [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Expand The expansion of an implicant is obtained by deleting one (or more) of its literals. A k-literal implicant can have 2k-1 expansions Literal vs. minterm Check for valid implicant Stop at prime implicant Goal: expand non-prime implicant to prime with the least literals [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example: Expand F=x’y’z’+xy’z’+x’yz’+x’y’z (xyz’:don’t care) =x’y’z’  y’z’(xy’z’ √) z’(xyz’ √, x’yz’ √) 1(x) =x’y’z’  x’z’ (x’yz’ √) x’ (x’yz x) =x’y’z  y’z(xy’z x) Questions: Where to start : unlikely to be covered by others Check validity Compare with off-set Compare with on-set and don’t care set Which literal to delete? [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Reduce The reduction of an implicant is obtained by adding one or more literals Reduction increases the cost (fanin) Why reduce f=xz’+xy’+x’y+x’z=xy’+x’z+yz’ Check for valid cover Stop at maximally reduced implicant Goal: decrease the size of implicants such that expansion may lead to a better solution [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example:reduce F=xz’+xy’+x’y+x’z No implicant can be expanded (PIs) Reduce x’y to x’yz’ Reduce xz’ to xyz’ Expand x’yz’ to yz’ F=xy’+x’z+yz’ reduction is for further expansion, one way to get out of local optimal [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design irredundant An implicant in a cover is redundant if all the minterms covered by it are contained in other implicants in the cover. [@ankurs] Winter 2004 ICS 252-Intro to Computer Design

The espresso heuristic First it applies the expand and irredundant operators to optimize the current function specification Then it uses the reduce operator to get out of local minimum This is iterated until the solution converges [@ankurs] Winter 2004 ICS 252-Intro to Computer Design