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.

Slides:



Advertisements
Similar presentations
Abdullah Aldahami ( ) Jan 29,  This paper propose a new resynthesis algorithm for FPGA area reduction.  The existing resynthesis techniques.
Advertisements

Complexity Classes: P and NP
Exploiting Symmetry in SAT-Based Boolean Matching for Heterogeneous FPGA Technology Mapping Yu Hu 1, Victor Shih 2, Rupak Majumdar 2 and Lei He 1 1 Electrical.
Node Optimization. Simplification Represent each node in two level form Use espresso to minimize each node Several simplification procedures which vary.
June 6, Using Negative Edge Triggered FFs to Reduce Glitching Power in FPGA Circuits Tomasz S. Czajkowski and Stephen D. Brown Department of Electrical.
Design, Synthesis and Evaluation of Heterogeneous FPGA with Mixed LUTs and Macro-Gates Yu Hu 1, Satyaki Das 2, Steve Trimberger 2, and Lei He 1 1. Electrical.
DSD 2007 Concurrent Error Detection for FSMs Designed for Implementation with Embedded Memory Blocks of FPGAs Andrzej Krasniewski Institute of Telecommunications.
Combining Technology Mapping and Retiming EECS 290A Sequential Logic Synthesis and Verification.
TH EDA NTHU-CS VLSI/CAD LAB 1 Re-synthesis for Reliability Design Shih-Chieh Chang Department of Computer Science National Tsing Hua University.
Exploiting Symmetry in SAT-Based Boolean Matching for Heterogeneous FPGA Technology Mapping Yu Hu 1, Victor Shih 2, Rupak Majumdar 2 and Lei He 1 1 Electrical.
Address comments to Robust FPGA Resynthesis Based on Fault-Tolerant Boolean Matching Yu Hu 1, Zhe Feng 1, Lei He 1 and Rupak Majumdar 2.
Rajeev K. Ranjan Advanced Technology Group Synopsys Inc. On the Optimization Power of Retiming and Resynthesis Transformations Joint work with: Vigyan.
An Efficient Chiplevel Time Slack Allocation Algorithm for Dual-Vdd FPGA Power Reduction Yan Lin 1, Yu Hu 1, Lei He 1 and Vijay Raghunathan 2 1 EE Department,
Yu Hu1, Satyaki Das2 Steve Trimberger2, and Lei He1
Continuous Retiming EECS 290A Sequential Logic Synthesis and Verification.
Rajeev K. Ranjan Advanced Technology Group Synopsys Inc. Using Combinational Verification for Sequential Circuits Joint work with: Vigyan Singhal, Cadence.
DAG-Aware AIG Rewriting Alan Mishchenko, Satrajit Chatterjee, Robert Brayton Department of EECS, University of California Berkeley Presented by Rozana.
 Y. Hu, V. Shih, R. Majumdar and L. He, “Exploiting Symmetries to Speedup SAT-based Boolean Matching for Logic Synthesis of FPGAs”, TCAD  Y. Hu,
03/08/2005 © J.-H. Jiang1 Retiming and Resynthesis EECS 290A – Spring 2005 UC Berkeley.
Optimality Study of Logic Synthesis for LUT-Based FPGAs Jason Cong and Kirill Minkovich VLSI CAD Lab Computer Science Department University of California,
FPGA Technology Mapping. 2 Technology mapping:  Implements the optimized nodes of the Boolean network to the target device library.  For FPGA, library.
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.
FORMAL VERIFICATION OF ADVANCED SYNTHESIS OPTIMIZATIONS Anant Kumar Jain Pradish Mathews Mike Mahar.
Combinational and Sequential Mapping with Priority Cuts Alan Mishchenko Sungmin Cho Satrajit Chatterjee Robert Brayton UC Berkeley.
ISSS 2001, Montréal1 ISSS’01 S.Derrien, S.Rajopadhye, S.Sur-Kolay* IRISA France *ISI calcutta Combined Instruction and Loop Level Parallelism for Regular.
FPGA PLB Evaluation using Quantified Boolean Satisfiability Andrew C. Ling M.A.Sc. Candidate University of Toronto Deshanand P. Singh Ph.D. Altera Corporation.
Timing-Driven Routing for FPGAs Based on Lagrangian Relaxation
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
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.
ATS Exploiting Free LUT Entries to Mitigate Soft Errors in SRAM- based FPGAs Keheng Huang, Yu Hu, Xiaowei Li Institute of Computing Technology Chinese.
March 28, Glitch Reduction for Altera Stratix II devices Tomasz S. Czajkowski PhD Candidate University of Toronto Supervisor: Professor Stephen D.
Optimality FPGA Technology Mapping: A Study of Optimality Andrew C. Ling M.A.Sc. Candidate University of Toronto Deshanand P. Singh Ph.D. Altera Corporation.
In-Place Decomposition for Robustness in FPGA Ju-Yueh Lee, Zhe Feng, and Lei He Electrical Engineering Dept., UCLA Presented by Ju-Yueh Lee Address comments.
IPR: In-Place Reconfiguration for FPGA Fault Tolerance Zhe Feng 1, Yu Hu 1, Lei He 1 and Rupak Majumdar 2 1 Electrical Engineering Department 2 Computer.
Retiming EECS 290A Sequential Logic Synthesis and Verification.
Chandrasekhar 1 MAPLD 2005/204 Reduced Triple Modular Redundancy for Tolerating SEUs in SRAM based FPGAs Vikram Chandrasekhar, Sk. Noor Mahammad, V. Muralidharan.
Fault-Tolerant Resynthesis for Dual-Output LUTs Roy Lee 1, Yu Hu 1, Rupak Majumdar 2, Lei He 1 and Minming Li 3 1 Electrical Engineering Dept., UCLA 2.
Sequential Equivalence Checking for Clock-Gated Circuits Hamid Savoj Robert Brayton Niklas Een Alan Mishchenko Department of EECS University of California,
Chih-Fan Lai1, J.-H. Roland Jiang1, and Kuo-Hua Wang2
A New Logic Synthesis, ExorBDS
Robust FPGA Resynthesis Based on Fault-Tolerant Boolean Matching
Synthesis for Verification
Power Optimization Toolbox for Logic Synthesis and Mapping
Delay Optimization using SOP Balancing
James D. Z. Ma Department of Electrical and Computer Engineering
Incremental Placement Algorithm for Field Programmable Gate Arrays
Alan Mishchenko Satrajit Chatterjee Robert Brayton UC Berkeley
Applying Logic Synthesis for Speeding Up SAT
Leakage-Aware FPGA Re-synthesis
A Boolean Paradigm in Multi-Valued Logic Synthesis
SAT-Based Area Recovery in Technology Mapping
Alan Mishchenko University of California, Berkeley
SAT-Based Optimization with Don’t-Cares Revisited
Scalable and Scalably-Verifiable Sequential Synthesis
FPGA Logic Synthesis using Quantified Boolean Satisfiability
FPGA Glitch Power Analysis and Reduction
Integrating Logic Synthesis, Technology Mapping, and Retiming
Research Status of Equivalence Checking at Zhejiang University
Improvements in FPGA Technology Mapping
Yu Hu1, Satyaki Das2, Steve Trimberger2, and Lei He1
Off-path Leakage Power Aware Routing for SRAM-based FPGAs
Recording Synthesis History for Sequential Verification
Delay Optimization using SOP Balancing
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
Fast Min-Register Retiming Through Binary Max-Flow
Robert Brayton Alan Mishchenko Niklas Een
A Random Access Scan Architecture to Reduce Hardware Overhead
Presentation transcript:

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 Electrical Engineering Dept., UCLA 2 Computer Science Dept., UCLA Presented by Yu Hu

Outline Background and Motivation Combinational Resynthesis with MIMO Blocks Sequential Resynthesis Experimental Results Conclusion and Future Work

Background Area-optimal Technology Mapping for LUT-based FPGAs is NP-Hard [Farrahi, TCAD’94] Post-mapping resynthesis is effective to reduce area (LUT#) [Ling, DAC’05] Area reduction Fault tolerance, power optimization, physical-aware optimization, and many others.

Boolean Matching Based Resynthesis Attempt to re-map a logic block to reduce LUT# BM can be used to handle both homogenous and heterogeneous PLBs (Source: Andrew Ling, University of Toronto, DAC'05)

Overall Flow of BM-based Resynthesis Multi-iterations of block-based Boolean Matching (Source: Andrew Ling, University of Toronto, DAC'05)

Limitations of Existing Work Considering single-output logic blocks Considering combinational portion of the circuit A larger solution space can be explored and area could be reduced if  Multiple-output logic blocks are considered  FF boundaries are eliminated

Motivation Example – Retiming Resynthesis is restricted by FF boundaries … Retiming creates chances for resynthesis 2-LUT network

Motivation Example – MISO Resynthesis 2-LUT network Function of O 2 has to be preserved … Only 1-LUT reduction

Motivation Example – MIMO Resynthesis 2-LUT network 60% area reduction is obtained by sequential MIMO resynthesis!

Major Contributions Present a Boolean matching based resynthesis algorithm considering multi-output logic blocks Propose a sequential resynthesis technique  Reduce area by up to 10% compared to combinational resynthesis, when both using MIMO blocks

Outline Background and Motivation Combinational Resynthesis with MIMO Blocks  SAT-based Boolean Matching for Multiple Output Functions  Resynthesis Algorithm  Experimental Results Sequential Resynthesis Experimental Results Conclusion and Future Work

Existing Boolean Matching for MISO 2-LUT fg ? Formulate the sub-problem of resynthesis to Boolean matching (BM)  BM: Can function f be implemented in circuit g ?  Resynthesis: Is there a configuration to g so that for all inputs to g, f is equivalent to g ? (Source: Andrew Ling, University of Toronto, DAC'05)

SAT-BM for Multi-Output Functions G LUT [i 1, i 2, F] = ( i 1 + i 2 + ¬L 0 + F) ( i 1 + i 2 + L 0 + ¬ F) ( i 1 + ¬ i 2 + ¬L 1 + F) ( i 1 + ¬ i 2 + L 1 + ¬ F) (¬ i 1 + i 2 + ¬L 2 + F) (¬ i 1 + i 2 + L 2 + ¬ F) (¬ i 1 + ¬ i 2 + ¬L 3 + F) (¬ i 1 + ¬ i 2 + L 3 + ¬ F) G = G LUT1 [x 1, x 2, F 2 ] · G LUT2 [F 2, x 3, F 1 ] Configuration bits are encoded as SAT literals Characteristic function

SAT-BM for Multi-Output Functions G = G LUT1 [x 1, x 2, F 2 ] · G LUT2 [F 2, x 3, F 1 ] Replicated SAT Problem: G expand = G[X/000, F 1 /0, F 2 /0] · G[X/001, F 1 /0, F 2 /0] G[X/010, F 1 /1, F 2 /0] · G[X/011, F 1 /0, F 2 /0] G[X/100, F 1 /1, F 2 /0] · G[X/101, F 1 /0, F 2 /0] G[X/110, F 1 /1, F 2 /1] · G[X/111, F 1 /1, F 2 /1] The solution of this SAT problem corresponds to the Boolean matching results SAT!

Unique Problem of MIMO Synthesis MIMO-resynthesis can generate new path in the block The new path might cause combinational cycles Conservative solution: detect combinational cycles and discard resynthesis solutions with cycles Combinational cycle! PI PO False path?

Experimental Settings Implementation in OAGear  SAT-BM uses miniSAT biggest MCNC benchmarks are tested  10 combinational  10 sequential  mapped with 4-LUTs by Berkeley ABC Resynthesis settings  One traversal is performed  Blocks with up to 10 inputs are considered Results are verified by ABC equivalency checkers

Experimental Settings – PLB templates All three possible structures for PLBs with up to 10 inputs and less than 4 4-LUTs [Ling, DAC’05] All intermediate wires are treated as the outputs in MIMO resynthesis

Combinational Resynthesis: MISO vs. MIMO MIMO does not out-perform MISO significantly, probably due to  Rejecting “false paths” introduced by MIMO resynthesis  Narrow PLB templates  Small block size and LUT size  No iterations of re-synthesis

Outline Background and Motivation Combinational Resynthesis with MIMO Blocks Sequential Resynthesis Experimental Results Conclusion and Future Work

Structure Impact on Sequential Resynthesis The structure of a logic block decides the sequential resynthesis strategies Retiming  Classic retiming All edges have non-negative weights after retiming  Peripheral retiming Result in negative number of FFs at peripheral edges Logic Duplication  Allow duplication  Not allow duplication

Case I: Classic Retiming w/o Duplication Step1: backward retiming Step2: combinational resynthesis Step3: forward retiming

Case II: Peripheral Retiming w/o Duplication Step1: peripheral retiming Step2: combinational resynthesis Step3: check feasibility of forward retiming Brorrow FFs from outside. A resynthesis solution w/ feasible retiming

Case II: Peripheral Retiming w/o Duplication Step4: forward retiming

Case III: Retiming w/ Duplication FF not movable! FF# = 1 FF# = 0 Duplication is required to enable retiming!

Case III: Peripheral Retiming w/ Duplication FF not movable! Identical configuration for LUT-c and LUT-d.

Duplication or Not? – A Sufficient and Necessary Condition An acyclic block is feasible for retiming w/o duplication iff [Brayton, TCAD’91] a. All input-output paths have the same FF# b. There exist numbers α i and β j for input i and output j, s.t. FF# in (i,j) path is equal to (α i +β j ) α 1 +β 1 α 2 +β 1 α 3 +β 1 α 4 +β 1 * * α 3 +β 2 α 4 +β * * 0 0 = α 1 = 1, α 2 = 0, α 3 = 1, α 4 = 1, β 1 = 0, β 2 = -1 α 1 α 2 α 3 α 4 β 1 β 2

Duplication or Not? – A Sufficient and Necessary Condition An acyclic block is feasible for retiming w/o duplication iff [Brayton, TCAD’91] a. All input-output paths have the same FF# b. There exist numbers α i and β j for input i and output j, s.t. FF# in (i,j) path is equal to (α i +β j )  Time complexity  O(e min(m,n))  Negligible for small block  Classic or peripheral retiming?  Classic retiming iff there exist non-negative α i and β j

Can We Accept Every Single Resynthesis? – Feasibility Checking for Sequential Resynthesis Initial State Computation  Filter out some of the rewriting steps so that an equivalent initial state for the synthesized machine can be computed from a given initial state of the original machine.  Rewriting invariant [Brayton, IWLS’07]  Can be reduced to a SAT problem Clock Period Preservation  A New Retiming-based Technology Mapping Algorithm for LUT-based FPGAs [Pan, FPGA’98]  Sequential arrival time: l-values

Experimental Results – Sequential vs. Combinational Resynthesis Seq-resynthesis obtains up to 9% area reduction Factors to affect seq-resynthesis  Sequential structure  All factors in combinational resynthesis

Outline Background and Motivation Combinational Resynthesis with MIMO Blocks  SAT-based Boolean Matching for Multiple Output Functions  Resynthesis Algorithm Sequential Resynthesis Conclusion and Future Work

Conclusions and Future Work Proposed a new resynthesis considering both MIMO blocks and retiming Results indicate that sequential resynthesis obtains more gain than MIMO resynthesis Future work  PLBs from [Ling, DAC’05] are optimal only for MISO, and we will develop new PLB structures for MIMO re- synthesis  Study the resynthesis for heterogeneous FPGAs

Thanks FPGA Area Reduction by Multi-Output Sequential Resynthesis Yu Hu, Victor Shih, Rupak Majumdar and Lei He