1 / 29

Deferred Decision Making Enabled Fixed-Outline Floorplanner

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.

Download Presentation

Deferred Decision Making Enabled Fixed-Outline Floorplanner

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Deferred Decision Making Enabled Fixed-Outline Floorplanner Jackey Z. Yan and Chris Chu DAC 2008

  2. Outline • Introduction • Generalized slicing tree • Enumerative packing • Block swapping and mirroring • Overview of the algorithm • Experimental results • Conclusion

  3. 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.

  4. 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.

  5. 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.

  6. 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.

  7. 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.

  8. 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.

  9. 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.

  10. 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:

  11. 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.

  12. 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

  13. Enumerative packing • The curves from all slicing tree structures are merged into one curve that captures all possible slicing layouts.

  14. 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.

  15. Enumeration by Dynamic Programming

  16. 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.

  17. 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.

  18. 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

  19. 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.

  20. 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.

  21. Overview of the algorithm • DeFer has five steps: • 1. Partitioning Step • 2. Combining Step • 3. Back-tracing Step • 4. Swapping Step • 5. Compacting Step

  22. 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.

  23. 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.

  24. 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

  25. 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.

  26. 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.

  27. Experimental Results

  28. Experimental Results

  29. 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.

More Related