Abdullah Aldahami (11074595) Jan 29, 2010 1.  This paper propose a new resynthesis algorithm for FPGA area reduction.  The existing resynthesis techniques.

Slides:



Advertisements
Similar presentations
TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
Advertisements

You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
Advanced Piloting Cruise Plot.
Feichter_DPG-SYKL03_Bild-01. Feichter_DPG-SYKL03_Bild-02.
Chapter 6 Cost and Choice. Copyright © 2001 Addison Wesley LongmanSlide 6- 2 Figure 6.1 A Simplified Jam-Making Technology.
© 2008 Pearson Addison Wesley. All rights reserved Chapter Seven Costs.
Chapter 1 The Study of Body Function Image PowerPoint
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 5 Author: Julia Richards and R. Scott Hawley.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Appendix 01.
1 Copyright © 2010, Elsevier Inc. All rights Reserved Fig 2.1 Chapter 2.
By D. Fisher Geometric Transformations. Reflection, Rotation, or Translation 1.
Chapter 1 Image Slides Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination.
and 6.855J Cycle Canceling Algorithm. 2 A minimum cost flow problem , $4 20, $1 20, $2 25, $2 25, $5 20, $6 30, $
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Title Subtitle.
My Alphabet Book abcdefghijklm nopqrstuvwxyz.
0 - 0.
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
Addition Facts
Year 6 mental test 5 second questions
ZMQS ZMQS
SYMMETRIC CRYPTOSYSTEMS Symmetric Cryptosystems 6/05/2014 | pag. 2.
Robust Window-based Multi-node Technology- Independent Logic Minimization Jeff L.Cobb Kanupriya Gulati Sunil P. Khatri Texas Instruments, Inc. Dept. of.
Richmond House, Liverpool (1) 26 th January 2004.
BT Wholesale October Creating your own telephone network WHOLESALE CALLS LINE ASSOCIATED.
Data Structures: A Pseudocode Approach with C
ABC Technology Project
Chapter 9 -- Simplification of Sequential Circuits.
3 Logic The Study of What’s True or False or Somewhere in Between.
VOORBLAD.
15. Oktober Oktober Oktober 2012.
Quadratic Inequalities
1 Breadth First Search s s Undiscovered Discovered Finished Queue: s Top of queue 2 1 Shortest path from s.
Factor P 16 8(8-5ab) 4(d² + 4) 3rs(2r – s) 15cd(1 + 2cd) 8(4a² + 3b²)
Squares and Square Root WALK. Solve each problem REVIEW:
1..
© 2012 National Heart Foundation of Australia. Slide 2.
Understanding Generalist Practice, 5e, Kirst-Ashman/Hull
Chapter 5 Test Review Sections 5-1 through 5-4.
SIMOCODE-DP Software.
GG Consulting, LLC I-SUITE. Source: TEA SHARS Frequently asked questions 2.
Addition 1’s to 20.
25 seconds left…...
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.
Januar MDMDFSSMDMDFSSS
Week 1.
Analyzing Genes and Genomes
We will resume in: 25 Minutes.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Figure Essential Cell Biology (© Garland Science 2010)
Essential Cell Biology
Intracellular Compartments and Transport
A SMALL TRUTH TO MAKE LIFE 100%
1 Unit 1 Kinematics Chapter 1 Day
PSSA Preparation.
Essential Cell Biology
Mani Srivastava UCLA - EE Department Room: 6731-H Boelter Hall Tel: WWW: Copyright 2003.
How Cells Obtain Energy from Food
Immunobiology: The Immune System in Health & Disease Sixth Edition
Energy Generation in Mitochondria and Chlorplasts
Murach’s OS/390 and z/OS JCLChapter 16, Slide 1 © 2002, Mike Murach & Associates, Inc.
CpSc 3220 Designing a Database
 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,
Presentation transcript:

Abdullah Aldahami ( ) Jan 29,

 This paper propose a new resynthesis algorithm for FPGA area reduction.  The existing resynthesis techniques consider only single-output Boolean functions and the combinational portion of a circuit.  The new technique consider multi-output functions and retiming, and develop effective algorithms that incorporate recent improvements to SAT-based Boolean matching. 2

 Resynthesis: is a technique that rewrites circuit structures while maintaining the functionalities of transition and output functions to reduce area.  Programmable Logic Block (PLB) consists of a network of interconnected non-programmable and programmable logic devices. 3

4 2.1 SAT-Based Boolean Matching (BM) for MIMO Functions  First, describing the MIMO resynthesis algorithm for combinational blocks.  Using SAT-based Boolean matching to determine whether a Boolean function f can be implemented using a specific logic block.  Extending algorithms to allow multi-output logic functions and multi-output programmable logic blocks (PLBs).

5 2.2 Combinational Resynthesis Algorithm In MIMO resynthesis, there is a risk that a substitution will introduce a combinational cycle in the circuit. This problem does not occur if resynthesis is limited to MISO logic blocks. To avoid this scenario, substitutions for MIMO logic blocks are tested prior to Boolean matching.

6 Figure 1: A MIMO extracted from IWLS’05 benchmark circuit (a) Before resynthesis (b) After resynthesis

7 (a) Before resynthesis  Considering the MIMO, logic block consisting of nodes 1, 2 and 4 (shaded portion) in Figure 1(a).  MIMO resynthesis can introduce new reverse paths to the circuit; there is a path 3 ~ 5 outside the logic block before resynthesis.

8 (b) After resynthesis  Depending on the logic implemented, Boolean matching may determine that this logic block can be implemented by a two node logic block (6 and 7, in Figure 1(b)) saving one LUT.  After resynthesis, a new path 5 ~ 3 is created inside the logic block. Together, these paths form a combinational cycle.

9 (b) After resynthesis  For each input/output node pair in i and out j, connectivity tests are performed inside and outside the logic block. If there is a path out j ; in i outside the logic block and a path in i ; out j inside the new logic block, this resynthesis step is discarded and the Boolean matching is not performed.

10 Figure 2: (Case 1) Classical Retiming without Duplication (a) Original logic block(b) Backward retimed logic block (c) Combinationally resynthesized logic block (d) Forward retimed resynthesized logic block. Combinational Resynthesis Algorithm

Figure 3: (Case 2) Peripheral Retiming without Duplication. (a) Original logic block (b) Peripheral retimed logic block (c) Combinationally resynthesized logic block (with no feasible forward retiming) (d) Combinationally resynthesized logic block (with feasible forward retiming) (e) Forward retimed resynthesized logic block. 11

Figure 3: (Case 2) Peripheral Retiming without Duplication. (a) Original logic block  Classical retiming, which requires a non-negative number of registers during retiming, cannot be performed.  The registers between two LUTs cannot be moved either forward or backward by classical retiming. 12

Figure 3: (Case 2) Peripheral Retiming without Duplication. (b) Peripheral retimed logic block  In this case, a peripheral retiming can be used to maximize the combinational portion of the logic block.  The peripheral retiming may result in a negative number of registers at the peripheral edges of a logic block (the one driving output out 2 ) 13

Figure 3: (Case 2) Peripheral Retiming without Duplication. (c) Combinationally resynthesized logic block (with no feasible forward retiming)  It is possible that combinational resynthesis will create an infeasible solution.  There is no way to recover the negative edge using a local forward retiming. 14

Figure 3: (Case 2) Peripheral Retiming without Duplication. (d) Combinationally resynthesized logic block (with feasible forward retiming) (e) Forward retimed resynthesized logic block.  This resynthesis step is discarded to guarantee the existence of a valid forward retiming. 15

16 Figure 4: (Case 3) Peripheral Retiming with Duplication. (a) Original logic block(b) Logic block after duplication (c) Peripheral retimed logic block(d) Combinationally resynthesized logic block (e) Forward retimed resynthesized logic block(f) The final result after merging LUTs.

Figure 4: (Case 3) Peripheral Retiming with Duplication. (a) Original logic block  The inputs are duplicated for each input with different numbers of registers in multiple paths to the output. 17

Figure 4: (Case 3) Peripheral Retiming with Duplication. (b) Logic block after duplication  Here, there are two paths from x2 to output, where the numbers of registers are 1 and 0, respectively, so: x2 is duplicated to x12 and x02.  All LUTs driven by the duplicated inputs are also duplicated. 18

Figure 4: (Case 3) Peripheral Retiming with Duplication. (c) Peripheral retimed logic block  Duplication enables peripheral retiming 19

Figure 4: (Case 3) Peripheral Retiming with Duplication. (d) Combinationally resynthesized logic block  The combinational portion can be resynthesized.  One LUT is saved. 20

Figure 4: (Case 3) Peripheral Retiming with Duplication. (e) Forward retimed resynthesized logic block (f) The final result after merging LUTs 21

22 Figure 5: Programmable Logic Block (PLB) templates used in resynthesis.  The algorithms have been implemented using the Open Access Gear (OAGear) package.  The SAT-based Boolean matcher is implemented in C++ and uses theminiSAT2.0 package.  The results using the biggest 20 Microelectronics Center of North Carolina (MCNC) benchmarks, including 10 combinational and 10 sequential applications.

23  Compares the MISO and MIMO resynthesis for the 10 combinational applications.  The MIMO resynthesis reduces area by 0.09% (up to 0.4%) with 15× runtime overhead compared to the MISO resynthesis on average.  MIMO reduces area by 0.4% compared to MISO for “misex3”.  Compared to ABC, the resynthesis considering multi-outputs reduces area by up to 1.41% for “spla”.

24  Compared to the ABC mapper, sequential resynthesis reduces area by 5.07% (up to 15.91% for “s298”) on average.  Compared to the combinational version, the sequential resynthesis reduces area by 0.7% (up to 10% for “s298”) with 2× runtime overhead.

25  New resynthesis algorithm was proposed that considers multi- output logic blocks and retiming.  The resynthesis considering multi-output Boolean functions reduces area by up to 0.4% compared to the one considering single-output Boolean functions  The sequential resynthesis reduces area by 10% compared to combinational resynthesis when both consider multi-output functions.  The proposed resynthesis reduces area by up to 16% compared to the best existing academic technology mapper, Berkeley ABC.

26