Alan Mishchenko Satrajit Chatterjee Robert Brayton UC Berkeley

Slides:



Advertisements
Similar presentations
Recording Synthesis History for Sequential Verification Robert Brayton Alan Mishchenko UC Berkeley.
Advertisements

FRAIGs - A Unifying Representation for Logic Synthesis and Verification - Alan Mishchenko, Satrajit Chatterjee, Roland Jiang, Robert Brayton ERL Technical.
Combining Technology Mapping and Retiming EECS 290A Sequential Logic Synthesis and Verification.
1 FRAIGs: Functionally Reduced And-Inverter Graphs Adapted from the paper “FRAIGs: A Unifying Representation for Logic Synthesis and Verification”, by.
DAG-Aware AIG Rewriting Alan Mishchenko, Satrajit Chatterjee, Robert Brayton Department of EECS, University of California Berkeley Presented by Rozana.
Reinventing The Wheel: Developing a New Standard-Cell Synthesis Flow Alan Mishchenko University of California, Berkeley.
Logic Synthesis Primer
Wenlong Yang Lingli Wang State Key Lab of ASIC and System Fudan University, Shanghai, China Alan Mishchenko Department of EECS University of California,
Faster Logic Manipulation for Large Designs Alan Mishchenko Robert Brayton University of California, Berkeley.
Electrical and Computer Engineering Archana Rengaraj ABC Logic Synthesis basics ECE 667 Synthesis and Verification of Digital Systems Spring 2011.
05/04/06 1 Integrating Logic Synthesis, Tech mapping and Retiming Presented by Atchuthan Perinkulam Based on the above paper by A. Mishchenko et al, UCAL.
Combinational and Sequential Mapping with Priority Cuts Alan Mishchenko Sungmin Cho Satrajit Chatterjee Robert Brayton UC Berkeley.
Enumeration of Irredundant Circuit Structures Alan Mishchenko Department of EECS UC Berkeley UC Berkeley.
Cut-Based Inductive Invariant Computation Michael Case 1,2 Alan Mishchenko 1 Robert Brayton 1 Robert Brayton 1 1 UC Berkeley 2 IBM Systems and Technology.
1 Stephen Jang Kevin Chung Xilinx Inc. Alan Mishchenko Robert Brayton UC Berkeley Power Optimization Toolbox for Logic Synthesis and Mapping.
Wenlong Yang Lingli Wang State Key Lab of ASIC and System Fudan University, Shanghai, China Alan Mishchenko Department of EECS University of California,
1 Area-Efficient FPGA Logic Elements: Architecture and Synthesis Jason Anderson and Qiang Wang 1 IEEE/ACM ASP-DAC Yokohama, Japan January 26-28,
A Semi-Canonical Form for Sequential Circuits Alan Mishchenko Niklas Een Robert Brayton UC Berkeley Michael Case Pankaj Chauhan Nikhil Sharma Calypto Design.
Global Delay Optimization using Structural Choices Alan Mishchenko Robert Brayton UC Berkeley Stephen Jang Xilinx Inc.
Sequential Equivalence Checking for Clock-Gated Circuits Hamid Savoj Robert Brayton Niklas Een Alan Mishchenko Department of EECS University of California,
Reducing Structural Bias in Technology Mapping
Synthesis for Verification
Technology Mapping into General Programmable Cells
Power Optimization Toolbox for Logic Synthesis and Mapping
Mapping into LUT Structures
Delay Optimization using SOP Balancing
Faster Logic Manipulation for Large Designs
Enhancing PDR/IC3 with Localization Abstraction
SAT-Based Logic Optimization and Resynthesis
Robert Brayton Alan Mishchenko Niklas Een
Logic Synthesis Primer
A. Mishchenko S. Chatterjee1 R. Brayton UC Berkeley and Intel1
Magic An Industrial-Strength Logic Optimization, Technology Mapping, and Formal Verification System Alan Mishchenko UC Berkeley.
A Semi-Canonical Form for Sequential AIGs
Applying Logic Synthesis for Speeding Up SAT
Versatile SAT-based Remapping for Standard Cells
Integrating an AIG Package, Simulator, and SAT Solver
A Boolean Paradigm in Multi-Valued Logic Synthesis
Synthesis for Verification
Standard-Cell Mapping Revisited
The Synergy between Logic Synthesis and Equivalence Checking
Faster Logic Manipulation for Large Designs
LUT Structure for Delay: Cluster or Cascade?
SAT-Based Area Recovery in Technology Mapping
Polynomial Construction for Arithmetic Circuits
Alan Mishchenko University of California, Berkeley
SAT-Based Optimization with Don’t-Cares Revisited
Scalable and Scalably-Verifiable Sequential Synthesis
Improvements to Combinational Equivalence Checking
Integrating Logic Synthesis, Technology Mapping, and Retiming
Alan Mishchenko UC Berkeley
Alan Mishchenko UC Berkeley (With many thanks to Donald Knuth,
Reinventing The Wheel: Developing a New Standard-Cell Synthesis Flow
Alan Mishchenko UC Berkeley (With many thanks to Donald Knuth for
Integrating an AIG Package, Simulator, and SAT Solver
Introduction to Logic Synthesis
Improvements in FPGA Technology Mapping
Recording Synthesis History for Sequential Verification
Delay Optimization using SOP Balancing
Reinventing The Wheel: Developing a New Standard-Cell Synthesis Flow
Magic An Industrial-Strength Logic Optimization, Technology Mapping, and Formal Verification System Alan Mishchenko UC Berkeley.
Innovative Sequential Synthesis and Verification
Robert Brayton Alan Mishchenko Niklas Een
Word-Level Aspects of ABC
Illustrative Example p p Lookup Table for Digits of h g f e ) ( d c b
SAT-based Methods: Logic Synthesis and Technology Mapping
Fast Min-Register Retiming Through Binary Max-Flow
Robert Brayton Alan Mishchenko Niklas Een
Alan Mishchenko Department of EECS UC Berkeley
Integrating AIG Package, Simulator, and SAT Solver
Presentation transcript:

Alan Mishchenko Satrajit Chatterjee Robert Brayton UC Berkeley DAG-Aware AIG Rewriting A Fresh Look at Technology-Independent Combinational Logic Synthesis Alan Mishchenko Satrajit Chatterjee Robert Brayton UC Berkeley

Overview Motivation Previous work Example Experiments Conclusions

Motivation for Improved Synthesis Traditional combinational tech-independent synthesis suboptimal complicated hard to implement slow We propose to replace it with synthesis that is suboptimal, but simple easier to implement fast

Previous Work Per Bjesse and Arne Boralv, "DAG-aware circuit compression for formal verification", ICCAD 2004 Pre-compute all two-level subgraphs group them into equivalence classes by functionality For each node in the topological order Rewrite the subgraph rooted at a node, as long as area (the number of nodes) does not increase Account for logic sharing (DAG-aware) (Optional) Iterate until no improvement

Illustration   Rewriting subgraphs Pre-computing subgraphs Consider function f = abc Rewriting subgraphs Rewriting node A a b c A Subgraph 1 b c a A Subgraph 2 a b c Subgraph 1 b c a Subgraph 2 a c b Subgraph 3  Rewriting node B b c a B Subgraph 2 a b c B Subgraph 1  a b c In both cases 1 node is saved

Proposed Approach First, we introduce two concepts NPN-classes of Boolean functions k-feasible cuts in the network

NPN-Classes of Boolean Functions Definition. Two functions belong to the same NPN-class (are NPN-equivalent) if one of them can be derived from the other by permuting inputs, complementing inputs, and complementing the output Example 1: F = ab + c G = ac + b Example 2: F = ab + c F = ab Example 3: F = ab + c H = a(b+c) = a + bc NPN-equivalent Not NPN-equivalent NPN-equivalent

Average number of cuts per node k-Feasible Cuts Definition. A set of nodes C is a k-feasible cut for a node n if (1) all the paths from the primary inputs (PIs) to node n pass through at least one node in C, (2) the number of nodes in C does not exceed k n p k a b s c PIs: a, b, c 3-feasible cuts of n: C1 = { p, k } C2 = { a, b, s } k Average number of cuts per node 4 6 5 20 80 7 150 Not 3-feasible cuts of n: C3 = { p, b, c } C4 = { a, b, s, c }

Proposed Approach Pre-compute AIGs with non-redundant structure for all NPN-classes of 4-variable functions The total number (222) Appear in benchmark circuits (~100) Account for 99% of area implement in rewriting (~40) For each node in the topological order Compute all 4-input cuts (on average, 6 cuts per node) Match each cut into its NPN class (a hash table lookup) Try all structural implementations of the class, choose the best If the area (and delay!) does not increase, accept the change

Example of Rewriting (s27.blif) 3 levels 3 levels 4 nodes 3 nodes  The number of AIG nodes is reduced. The number of AIG levels is the same.

Experimental Results These cost functions are “apples” and “oranges” Cost functions for technology-independent synthesis The number of factored form literals (the previous work) The number of AIG nodes and levels (the proposed work) These cost functions are “apples” and “oranges” For fairness, the comparison is done after mapping Using MCNC benchmarks (vs. SIS and MVSIS) Using IWLS 2005 benchmarks (vs. MVSIS) ABC mapper for standard cells and FPGAs is used

Experimental Setup ABC script “resyn2” “b; rw; rf; b; rw; rwz; b; rfz; rwz; b” (performs 10 rewriting passes over the network) b (balance) tries to reduce delay without increasing area rw/rf (rewrite/refactor) tries to reduce area without increasing delay rwz/rfz the same as above, but allow for zero-cost replacements MVSIS “mvsis.rugged” SIS “script.delay” and “script.rugged + speed_up” Runtimes are measured on 1.6GHz CPU

Experimental Results (MCNC)

IWLS 2005: Benchmark statistics

IWLS 2005: Standard-Cell Mapping

IWLS 2005: FPGA Mapping (k=5)

Conclusions Introduced ABC Presented DAG-aware AIG rewriting Showed promising experimental results Future work AIG rewriting with larger cut size Sequential AIG rewriting