deferred decision making enabled fixed outline floorplanner n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Deferred Decision Making Enabled Fixed-Outline Floorplanner PowerPoint Presentation
Download Presentation
Deferred Decision Making Enabled Fixed-Outline Floorplanner

Loading in 2 Seconds...

play fullscreen
1 / 29

Deferred Decision Making Enabled Fixed-Outline Floorplanner - PowerPoint PPT Presentation


  • 169 Views
  • Uploaded on

Deferred Decision Making Enabled Fixed-Outline Floorplanner. Jackey Z. Yan and Chris Chu. DAC 2008. Outline. Introduction Generalized slicing tree Enumerative packing Block swapping and mirroring Overview of the algorithm Experimental results Conclusion. Introduction.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Deferred Decision Making Enabled Fixed-Outline Floorplanner' - sheila-bentley


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
outline
Outline
  • Introduction
  • Generalized slicing tree
  • Enumerative packing
  • Block swapping and mirroring
  • Overview of the algorithm
  • Experimental results
  • Conclusion
introduction
Introduction
  • Floorplanning has become a very crucial step in modern VLSI designs.
  • A good floorplan solution definitely has a positive impact on the placement, routing and even manufacturing.
  • Fixed-outline floorplanning has been shown to be much more difficult, compared with classical outline-free floorplanning.
introduction1
Introduction
  • This paper presents a fast, high-quality fixed-outline floorplanner called DeFer.
  • It can handle both hard and soft modules.
  • Deferring the decisions on these four factors:
  • Subfloorplan Orientation
  • Subfloorplan Order
  • Slice Line Direction
  • Slicing Tree Structure
  • Traditional SA based approaches specify these factors at an early step.
generalized slicing tree
Generalized slicing tree
  • An ordinary slicing tree

The parent tree node of two child subfloorplans A and B can be labeled ‘H’(‘V’) to specify that A and B are separated by a horizontal(vertical) slice line.

generalized slicing tree1
Generalized slicing tree
  • A new operator: ⊕ to incorporate both ‘H’ and ‘V’ slice line directions.
  • Do not differentiate the ‘top-bottom’ or ‘left-right’ order between the two child subfloorplans any more.
generalized slicing tree2
Generalized slicing tree
  • The decisions on Subfloorplan Orientation, Subfloorplan Order and Slice Line Direction are deferred.
  • Each parent node in the slicing tree represents all 16 slicing layouts between two child subfloorplans.
generalized slicing tree3
Generalized slicing tree
  • Each subfloorplan layout property is captured by its associated shape curve.
  • Develop three steps to combine two child curves A and B into one parent curve C.
generalized slicing tree4
Generalized slicing tree
  • Given two child shape curves corresponding to two child subfloorplan, the new operations can be applied to combine these two curves into one parent curve.
  • Considering the trade-off between runtime and solution quality, DeFer keeps at most 1000 points for each shape curve.
enumerative packing
Enumerative packing
  • Enumerate all slicing tree structures and then enumerate all permutations of the modules.
  • The complete slicing tree structures for 3 to 6 modules:
enumerative packing1
Enumerative packing
  • For each slicing tree structure, different permutations of the modules should also be considered.
  • For example, in tree T4a:
  • Four modules A, B, C, D can be mapped to leaves 1-2-3-4.
  • Order A-B-C-D and A-C-B-D derive two different layouts
  • But order A-B-C-D and B-A-C-D are the same in T4a.
enumerative packing2
Enumerative packing

After pruning such redundancy, we have 12 non-redundant permutations in T4a, 3 in T4b.

A-B-C-D B-C-A-D

A-B-D-C B-C-D-A

A-C-B-D B-D-A-C

A-C-D-B B-D-C-A

A-D-B-C C-D-A-B

A-D-C-B C-D-B-A

A-B-C-D

A-C-B-D

A-D-B-C

enumerative packing3
Enumerative packing
  • The curves from all slicing tree structures are merged into one curve that captures all possible slicing layouts.
enumeration by dynamic programming
Enumeration by Dynamic Programming
  • The shape curve for a set of modules can be defined recursively by:
  • S(M) is a shape curve capturing all slicing layouts among modules M, MERGE() operates on shape curves from different sets.
  • The previously generated curves can be reused for building up the curves of larger subsets of modules, many redundant computations are eliminated.
extension of ep at high level
Extension of EP at High-Level
  • For example, after the partitioning step, subcircuit A contains a big hard macro.
  • No matter how hard EP explores various packing layouts within A or B, there is always a large deadspace Q.
extension of ep at high level1
Extension of EP at High-Level
  • Apply EP on a set of subfloorplans.
  • If the total area of big hard macros in one subfloorplan is more than 55% of this subfloorplan area, DeFer would apply EP to further explore the various slicing tree structures of that subfloorplan.
block swapping and mirroring
Block swapping and mirroring
  • Rough swapping: treat all internal modules to be at the center of their subfloorplan outline in calculating the HPWL.
  • Detailed swapping: use the actual center coordinates of each module in calculating the HPWL.
  • Mirroring
block swapping and mirroring1
Block swapping and mirroring
  • The importance of Rough swapping:
  • Try to swap two subfloorplans A and B
  • Modules C and D are highly connected by netcd.
  • The coordinates of C and D are still unknown.
block swapping and mirroring2
Block swapping and mirroring
  • If we randomly specify the positions of C and D in (a), then we may swap A and B to gain better wirelength.
  • If C and D are specified in the positions in (b), then we may not swap them.
  • The best is to assume C, D and all modules inside subfloorplans A and B are at the centers of A and B, such that the right decision can be made based on neto.
  • First apply Rough swapping from top-down, followed by Detailed swapping and Mirroring to further optimize the wirelength.
overview of the algorithm
Overview of the algorithm
  • DeFer has five steps:
  • 1. Partitioning Step
  • 2. Combining Step
  • 3. Back-tracing Step
  • 4. Swapping Step
  • 5. Compacting Step
overview of the algorithm1
Overview of the algorithm
  • 1. Partitioning Step:
  • Divide one original circuit into several small subcircuits.
  • hMetis is called to perform a recursive bi-sectioning on the circuit, until every subcircuit contains less than or equal to maxN modules.
  • maxN=10 by default.
overview of the algorithm2
Overview of the algorithm
  • 2. Combining Step:
  • Apply the Enumerative Packing to explore all slicing packing layouts within the subcircuit.
  • An associated shape curve representing these possible layouts for each subcircuit is produced.
  • DeFer traverses from bottom-up constructing a shape curve for every tree node.
overview of the algorithm3
Overview of the algorithm
  • 3. Back-tracing Step:
  • Once the final shape curve is available, choose the points fitting into the fixed outline.
  • DeFer chooses K points at most (K=11 by default).
  • If m>K, K points are chosen.
  • If 0<m<=K, all m points are chosen.
  • If m=0, DeFer still chooses at most K points near the upper-right corner of the fixed outline, but try to compact them into the fixed outline in Step 5.
  • Back-tracing can be propagated from the top to the bottom level.

m points

overview of the algorithm4
Overview of the algorithm
  • 4. Swapping Step:
  • Make decisions on the subfloorplan order.
  • Rough Swapping
  • Detailed Swapping
  • Mirroring

The left-right or top-bottom order of two child subfloorplans would not change the dimension of their parent floorplan outline, but it may improve the interconnections.

overview of the algorithm5
Overview of the algorithm
  • 5. Compacting Step:
  • Compacting all modules to the center of the fixed outline, such that the wirelength is further reduced.
  • If previous floorplan is outside of the fixed outline, instead of compacting to the center, DeFer compacts them to the lower-left corner.
  • If it still fails, then DeFer would restart from Step 1, try another run. By default DeFer attempts 5 runs at most.
conclusion
Conclusion
  • This paper proposed a fast, high-quality fixed-outline floorplanner DeFer.
  • DeFer over-performs all other state-of-the-art floorplanners in every aspect.
  • In the future, DeFer can be integrated into placement tools to handle large-scale mixed-size designs.