Integrating Logic Synthesis, Technology Mapping, and Retiming

Slides:



Advertisements
Similar presentations
Address comments to FPGA Area Reduction by Multi-Output Sequential Resynthesis Yu Hu 1, Victor Shih 2, Rupak Majumdar 2 and Lei He 1 1.
Advertisements

FRAIGs - A Unifying Representation for Logic Synthesis and Verification - Alan Mishchenko, Satrajit Chatterjee, Roland Jiang, Robert Brayton ERL Technical.
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Sequential Synthesis.
Clock Skewing EECS 290A Sequential Logic Synthesis and Verification.
RTL Hardware Design by P. Chu Chapter 161 Clock and Synchronization.
Combining Technology Mapping and Retiming EECS 290A Sequential Logic Synthesis and Verification.
EE290A 1 Retiming of AND- INVERTER graphs with latches Juliet Holwill 290A Project 10 May 2005.
Continuous 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.
ECE Synthesis & Verification 1 ECE 667 ECE 667 Synthesis and Verification of Digital Systems Retiming.
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.
ABC: A System for Sequential Synthesis and Verification BVSRC Berkeley Verification and Synthesis Research Center Robert Brayton, Niklas Een, Alan Mishchenko,
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.
ELEC692 VLSI Signal Processing Architecture Lecture 3
1 Stephen Jang Kevin Chung Xilinx Inc. Alan Mishchenko Robert Brayton UC Berkeley Power Optimization Toolbox for Logic Synthesis and Mapping.
Research Roadmap Past – Present – Future Robert Brayton Alan Mishchenko Logic Synthesis and Verification Group UC Berkeley.
1 WireMap FPGA Technology Mapping for Improved Routability Stephen Jang, Xilinx Inc. Billy Chan, Xilinx Inc. Kevin Chung, Xilinx Inc. Alan Mishchenko,
A Semi-Canonical Form for Sequential Circuits Alan Mishchenko Niklas Een Robert Brayton UC Berkeley Michael Case Pankaj Chauhan Nikhil Sharma Calypto Design.
Retiming EECS 290A Sequential Logic Synthesis and Verification.
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
Alan Mishchenko UC Berkeley
Delay Optimization using SOP Balancing
James D. Z. Ma Department of Electrical and Computer Engineering
Robert Brayton Alan Mishchenko Niklas Een
New Directions in the Development of ABC
Alan Mishchenko Satrajit Chatterjee Robert Brayton UC Berkeley
Logic Synthesis Primer
Anne Pratoomtong ECE734, Spring2002
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
Integrated Retiming and Mapping for Sequential Optimization
Integrating an AIG Package, Simulator, and SAT Solver
Synthesis for Verification
SmartOpt An Industrial Strength Framework for Logic Synthesis
Standard-Cell Mapping Revisited
The Synergy between Logic Synthesis and Equivalence Checking
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
Jun Chen and Changbo Long
CS184a: Computer Architecture (Structures and Organization)
Integrating an AIG Package, Simulator, and SAT Solver
Improvements in FPGA Technology Mapping
Canonical Computation without Canonical Data Structure
Recording Synthesis History for Sequential Verification
Delay Optimization using SOP Balancing
Timing Analysis and Optimization of Sequential Circuits
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
Fast Min-Register Retiming Through Binary Max-Flow
Robert Brayton Alan Mishchenko Niklas Een
Integrating AIG Package, Simulator, and SAT Solver
Alan Mishchenko Robert Brayton UC Berkeley
Presentation transcript:

Integrating Logic Synthesis, Technology Mapping, and Retiming Alan Mishchenko Robert Brayton Satrajit Chatterjee UC Berkeley

Outline Mapping: from combinational to sequential Experimental results Handling sequential circuits during mapping Generalizing arrival times for sequential circuits Computing sequential arrival times (optional) Computing sequential cuts (with choices) Selecting the minimum-delay sequential mapping Performing final retiming Experimental results

Sequential Mapping Consider the sequential circuit as a cyclic combinational circuit Find a cutset breaking all loops From now on, disregard latches (registers), but keep them as labels on edges between the nodes Compute sequential arrival times Iteration over the circuit (in topological order from the cutset) (optional) Use sequential cuts for the computation of sequential arrival times Find the final mapping Perform the final retiming

Sequential Arrival Times Combinational arrival times, a(v) a(v) = minM, a match of v ( max[ a(ui) +  Muiv | uiCM] Sequential arrival times, l(v) (given clock period ) l(v) = minM, a match of v ( max[ l(ui) - di + Muiv | uidiCM] u1 u2 u3 v v u1 u2 u3 d1 = 1 d2 = 0 d3 = 2

Computing Sequential Arrival Times for each node v in N do if (v is a PI) l(v) = 0; else l(v) = -; done = false; while ( done == false ) do done = true; for each non-PI node v in N do tmp = minM, a match of v ( max[ l(ud) - d + Muv | ud  CM] ) if ( l(v) < tmp ) l(v) = tmp; done = false; if ( v is a PO and l(v) >  ) return failure; return success; // bound has settled Note: clock cycle time f is given all k-cuts and matches have been pre-computed for the FRAIG

Theorem Theorem: Circuit S can be retimed to a clock period  iff the l-value of each PO is less than or equal to .

Illustration of Iterative Sequential Arrival Time Computation b c i1 i2 f 2 d = 1 f = 2 -1 1 Converged 1 3 1

Convergence Theorem. If the nodes are relaxed in a topological order, the algorithm stops in at most |U| + 1 iterations, where U is a cut which breaks all loops.

Final Retiming Define Theorem: r is a legal retiming and can achieve a clock period less than  + D where D is the largest combinational delay of a node. c(v) = l(v) / f is called the continuous retiming lag of node v by Pan

Example of c-Retiming wr(euv) = r(v) + w(euv) – r(u) b c i1 i2 f 2 f = 2 2 2 1 2 3 1 1 1.5 0.5 sequential arrival times c-lags retime lags new latch positions. 1 1 3

Overall View of Integration Flow

Experimental Results No retiming Retiming, no choices mapping (M) integrated choices and mapping (MC) Retiming, no choices mapping followed by retiming (M+R) integrated mapping and retiming (MR) Retiming and choices mapping with choices followed by retiming (MC+R) integrated choices, mapping, and retiming (MCR) FPGA 1.0 .96 .97 .82 .95 .74 SC 1.0 .95 .96 .84 .91 .76

IWLS 2005: Benchmark statistics

Integration for FPGAs (k = 5) Note: integrated results (MR and MCR) are significantly better than consecutive results (M+R and MC+R).

Integration for SCs (mcnc.genlib)

Conclusions Introduced a combination of synthesis/mapping/retiming based on detecting and using multiple circuit structures generalizing combinational tech-mapping to work with sequential circuits implementing retiming with initial state computation using AIGs as a unifying circuit representation The clock period is provably the smallest one (constant-delay model) reduction of 25% for both FPGAs and SCs, compared to only tech-mapping The approach is highly scalable because global minimization is achieved by a sequence of simple local transformations The results of integration can be efficiently verified Future work making the integration flow work incrementally minimizing registers after retiming recovering area for sequential circuits improving convergence speed of iterative procedures generating structural choices for sequential networks integrating with place and route adding verification capabilities