SINGLE-LEVEL PARTITIONING SUPPORT IN BOOM-II

Slides:



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

1 of 14 1 /23 Flexibility Driven Scheduling and Mapping for Distributed Real-Time Systems Paul Pop, Petru Eles, Zebo Peng Department of Computer and Information.
Universal logic design algorithm and its application to the synthesis of two-level switching circuits §H.-J.Mathony §IEEE Proceedings 1989.
EE 4271 VLSI Design1 Logic Synthesis. Starts from RTL description in HDL or Boolean expressions Outputs a standard cell netlist EE 4271 VLSI Design2.
Pseudorandom Testability – Study of the Effect of the Generator Type Petr Fišer, Hana Kubátová Czech Technical University in Prague Dept. of Computer Science.
Two-Level Logic Synthesis -- Heuristic Method (ESPRESSO)
Logic Synthesis 2 Outline –Two-Level Logic Optimization –ESPRESSO Goal –Understand two-level optimization –Understand ESPRESSO operation.
Combining Technology Mapping and Retiming EECS 290A Sequential Logic Synthesis and Verification.
Finite State Machine State Assignment for Area and Power Minimization Aiman H. El-Maleh, Sadiq M. Sait and Faisal N. Khan Department of Computer Engineering.
1 of 10 April 25, 2001 Minimizing System Modification in an Incremental Design Approach Paul Pop, Petru Eles, Traian Pop, Zebo Peng Department of Computer.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 7: February 11, 2008 Static Timing Analysis and Multi-Level Speedup.
Layout-based Logic Decomposition for Timing Optimization Yun-Yin Lien* Youn-Long Lin Department of Computer Science, National Tsing Hua University, Hsin-Chu,
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 15: March 18, 2009 Static Timing Analysis and Multi-Level Speedup.
1 of 14 1 / 18 An Approach to Incremental Design of Distributed Embedded Systems Paul Pop, Petru Eles, Traian Pop, Zebo Peng Department of Computer and.
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Two-Level Minimization II.
1 A Flexible Minimization and Partitioning Method Petr Fišer, Jan Hlavička Czech Technical University in Prague
Flexible Two-Level Boolean Minimizer BOOM ‑ II and Its Applications Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical.
Two-Level Simplification Approaches Algebraic Simplification: - algorithm/systematic procedure is not always possible - No method for knowing when the.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
How Much Randomness Makes a Tool Randomized? Petr Fišer, Jan Schmidt Faculty of Information Technology Czech Technical University in Prague
Boolean Minimizer FC-Min: Coverage Finding Process Petr Fišer, Hana Kubátová Czech Technical University Department of Computer Science and Engineering.
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.
CMPUT Computer Organization and Architecture II1 CMPUT329 - Fall 2003 Topic 5: Quine-McCluskey Method José Nelson Amaral.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect15: Heuristic Two Level Logic.
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.
Two-Level Boolean Minimizer BOOM-II Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University Karlovo nam. 13,
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 23: April 20, 2015 Static Timing Analysis and Multi-Level Speedup.
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
Survey of the Algorithms in the Column-Matching BIST Method Survey of the Algorithms in the Column-Matching BIST Method Petr Fišer, Hana Kubátová Department.
Output Grouping Method Based on a Similarity of Boolean Functions Petr Fišer, Pavel Kubalík, Hana Kubátová Czech Technical University in Prague Department.
Logic Gates M. AL-Towaileb1. Introduction Boolean algebra is used to model the circuitry of electronic devices. Each input and each output of such a device.
1 Implicant Expansion Methods Used in The BOOM Minimizer Petr Fišer, Jan Hlavička Czech Technical University, Karlovo nám. 13, Prague 2
Boolean Functions 1 ECE 667 ECE 667 Synthesis and Verification of Digital Circuits Boolean Functions Basics Maciej Ciesielski Univ.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect10: Two-level Logic Minimization.
Output Grouping-Based Decomposition of Logic Functions Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University.
Multiple-Vector Column-Matching BIST Design Method Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 20: April 4, 2011 Static Timing Analysis and Multi-Level Speedup.
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.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect18: Multi Level Logic Minimization.
Advanced Algorithms Analysis and Design
Lecture #6 EGR 277 – Digital Logic
GC211Data Structure Lecture2 Sara Alhajjam.
CS137: Electronic Design Automation
Computer Science cpsc322, Lecture 14
ESE535: Electronic Design Automation
Encoding CNFs to Enhance Component Analysis
ICS 252 Introduction to Computer Design
LPSAT: A Unified Approach to RTL Satisfiability
Objective of This Course
EE4271 VLSI Design Logic Synthesis EE 4271 VLSI Design.
Digital Logic & Design Dr. Waseem Ikram Lecture 13.
SAT-Based Area Recovery in Technology Mapping
CH7 Multilevel Gate Network
Sungho Kang Yonsei University
Resolution Proofs for Combinational Equivalence
Hierarchical Search on DisCSPs
Heuristic Minimization of Two Level Circuits
Canonical Computation without Canonical Data Structure
Heuristic Minimization of Two Level Circuits
ICS 252 Introduction to Computer Design
Hierarchical Search on DisCSPs
Canonical Computation without Canonical Data Structure
Mixed-Mode BIST Based on Column Matching
SAT-based Methods: Logic Synthesis and Technology Mapping
Fast Min-Register Retiming Through Binary Max-Flow
Fast Boolean Minimizer for Completely Specified Functions
CS137: Electronic Design Automation
Presentation transcript:

SINGLE-LEVEL PARTITIONING SUPPORT IN BOOM-II Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University

Outline Motivation Single-Level Partitioning Constraint-Driven Minimization BOOM-II & Its Modifications Experimental Results Conclusions

Motivation Typical logic synthesis process: Perform two-level minimization Then do the decomposition, independently on the previous phase Then apply other criteria (low power, DFT)  Two-level minimization is performed independently on the following phases – can misguide the solution

Single-Level Partitioning Two-level AND-OR network The issue: limited number of inputs/outputs in real devices Solution: divide the circuit into stand-alone blocks, while reducing number of their inputs In praxis, not all the inputs are needed to generate values of particular outputs  it is possible

Constraint-Driven Minimization Two-level Partitioning - divide circuit into blocks - keep the number of inputs minimal Design for Testability - reduce the cone size Load Balancing - divide circuit into blocks - reduce the number of branchings ???

BOOM-II Heuristic two-level Boolean minimizer Composition of two minimizers - BOOM - FC-Min BOOM is suitable for functions with a large number of inputs FC-Min is suitable for functions with a large number of outputs Iterative minimization – both the minimizers are being alternated

BOOM-II

BOOM: CD-Search Generates an irredundant set of implicants covering the on-set of a single-output function Implicants are being constructed top-down, i.e., by reducing a universal hypercube until it becomes an implicant - by adding literals to a term Greedy heuristic

BOOM: CD-Search Literals to be added to a term are being selected using a scoring function - frequency of occurrence For partitioning: the frequency of the literal that is already included in the processed block is multiplied by the CD-Search partitioning force

BOOM: IE, IR Implicant Expansion - expands implicants to PIs - no modification Implicant Reduction - reduces PIs to group implicants - no modification

FC-Min: Find Cover Generates a cover of the on-set Determines the number of product terms in the solution, not their structure It is not dependent on input literals – cannot be modified However - it strictly defines what terms would be shared among what output variables - it determines what outputs would be grouped together

FC-Min: Implicant Generation Generates implicants from the cover Purely deterministic – cannot be modified

FC-Min: Implicant Expansion Expands implicants to reduce no. of literals Can be influenced - literals of variables included in other blocks are removed first

CP Solution The essential phase Finds an irredundant set of implicants Constructs the final solution A greedy incremental heuristic, based on a scoring function To apply partitioning, additional weights are assigned to the implicants, the weights modify the scoring function

Experimental Results Boolean function: 50 inputs, 40 outputs, into 4 blocks no partitioning with partitioning Sum of # of inputs 200 114 Branchings 150 67 Maximum load 4 Average load 2.34 GEs 2375.5 2874.5 Block 0 inputs 50 30 Block 1 inputs Block 2 inputs 26 Block 3 inputs 28

Conclusions Constraint-Driven two-level minimization support in BOOM-II was presented Partitioning Design for testability Low power design …