Download presentation
Presentation is loading. Please wait.
Published byClifton Hodges Modified over 9 years ago
1
Floorplan Sizing 1
2
Floorplanning Algorithms Common Goals To minimize the total length of interconnect, subject to an upper bound on the floorplan area or To simultaneously optimize both wire length and area 2
3
3 3.5.1Floorplan Sizing Shape functions Legal shapes w h w h Block with minimum width and height restrictions ha*aw Aha*aw A Otten, R.: Efficient Floorplan Optimization. Int. Conf. on Computer Design, 499-502, 1983 Legal shapes
4
4 3.5.1Floorplan Sizing Shape functions w h Hard library block Otten, R.: Efficient Floorplan Optimization. Int. Conf. on Computer Design, 499-502, 1983 w h Discrete (h,w) values
5
5 3.5.1Floorplan Sizing Corner points 5 2 2 5 25 2 5 w h
6
مرتضي صاحب الزماني 6 Slicing Floorplan Sizing
7
Floorplan Sizing Algorithm: finds the minimum floorplan area for a given slicing floorplan in polynomial time. For non-slicing floorplans, the problem is NP-hard. Construct the shape functions of all individual blocks Bottom up: Determine the shape function of the top-level floorplan from the shape functions of the individual blocks Top down: From the corner point (minimum top-level floorplan area), trace back to each block’s shape function −Find that block’s dimensions and location 7
8
8 4 2 2 4 Block B: Block A: 5 5 3 3 Step 1: Construct the shape functions of the blocks 3.5.1Floorplan Sizing – Example
9
9 4 2 2 4 Block B: Block A: 5 5 3 3 3.5.1Floorplan Sizing – Example 2 4 h 6 w 26 4 5 3 Step 1: Construct the shape functions of the blocks
10
10 4 2 2 4 Block B: Block A: 5 5 3 3 3.5.1Floorplan Sizing – Example 2 4 h w 26 4 6 3 5 Step 1: Construct the shape functions of the blocks
11
11 4 2 2 4 Block B: Block A: 5 5 3 3 w 26 2 4 h 4 6 hA(w)hA(w) 3.5.1Floorplan Sizing – Example Step 1: Construct the shape functions of the blocks
12
12 4 2 2 4 Block B: Block A: 5 5 3 3 hB(w)hB(w) w 26 2 4 h 4 6 hA(w)hA(w) 3.5.1Floorplan Sizing – Example Step 1: Construct the shape functions of the blocks
13
13 w 26 2 4 h 4 6 hB(w)hB(w) hA(w)hA(w) 8 3.5.1Floorplan Sizing – Example Step 2: Determine the shape function of the top- level floorplan (vertical)
14
14 w 26 2 4 h 4 6 hB(w)hB(w) hA(w)hA(w) 8 3.5.1Floorplan Sizing – Example Step 2: Determine the shape function of the top- level floorplan (vertical)
15
15 w 26 2 4 h 4 6 w 26 2 4 h 4 6 hB(w)hB(w) hA(w)hA(w) hB(w)hB(w) hA(w)hA(w) hC(w)hC(w) 88 3.5.1Floorplan Sizing – Example Step 2: Determine the shape function of the top- level floorplan (vertical)
16
16 w 26 2 4 h 4 6 w 26 2 4 h 4 6 hB(w)hB(w) hA(w)hA(w) hB(w)hB(w) hA(w)hA(w) hC(w)hC(w) 5 x 5 88 3.5.1Floorplan Sizing – Example Step 2: Determine the shape function of the top- level floorplan (vertical)
17
17 w 26 2 4 h 4 6 w 26 2 4 h 4 6 hB(w)hB(w) hA(w)hA(w) hB(w)hB(w) hA(w)hA(w) hC(w)hC(w) 3 x 9 4 x 7 5 x 5 88 3.5.1Floorplan Sizing – Example Step 2: Determine the shape function of the top- level floorplan (vertical)
18
18 w 26 2 4 h 4 6 w 26 2 4 h 4 6 hB(w)hB(w) hA(w)hA(w) hB(w)hB(w) hA(w)hA(w) hC(w)hC(w) 3 x 9 4 x 7 5 x 5 88 Minimimum top-level floorplan with vertical composition 3.5.1Floorplan Sizing – Example Step 2: Determine the shape function of the top- level floorplan (vertical)
19
19 w 26 2 4 h 4 6 w 26 2 4 h 4 6 hA(w)hA(w) hB(w)hB(w)hC(w)hC(w) hA(w)hA(w) hB(w)hB(w) 9 x 3 7 x 4 5 x 5 8 8 3.5.1Floorplan Sizing – Example Minimimum top-level floorplan with horizontal composition Step 2: Determine the shape function of the top- level floorplan (vertical)
20
20 3.5.1Floorplan Sizing – Example Step 3: Find the individual blocks’ dimensions and locations w 26 2 4 h 4 6 8 (1) Minimum area floorplan: 5 x 5 Horizontal composition
21
21 w 26 2 4 h 4 6 (1) Minimum area floorplan: 5 x 5 (2) Derived block dimensions : 2 x 4 and 3 x 5 8 3.5.1Floorplan Sizing – Example Step 3: Find the individual blocks’ dimensions and locations Horizontal composition
22
22 2 x 43 x 5 5 x 5 3.5.1Floorplan Sizing – Example Step 3: Find the individual blocks’ dimensions and locations w 26 2 4 h 4 6 (1) Minimum area floorplan: 5 x 5 (2) Derived block dimensions : 2 x 4 and 3 x 5 8 Horizontal composition
23
23 2 x 43 x 5 5 x 5 Resulting slicing tree B V A BA 3.5.1Floorplan Sizing – Example
24
24 DeFer: Deferred Decision Making Enabled Fixed-Outline Floorplanner DAC 2008 Jackey Z. Yan Chris Chu
25
25 Fixed-Outline Floorplanning
26
26 Constraints of Ordinary Slicing Tree A B C ED H H V BA C V D E Block orientation Slice line direction (H/V) Left-right or top-bottom relative order
27
27 DDM in Shape/Orientation Defer the decision for subfloorplan (i.e., block) orientation until the end H H V BA CV D E Pick any point! Fixed-outline region A B C E D H W A A
28
28 DDM in Relative Order The relative order (left-right / top-down) between subfloorplans does not affect the shape curves AB V BA A V AB B Same shape curve Decision on subfloorplan relative order will be made at the end to minimize HPWL H W ABV H W BAV V BA V BA V BA and
29
29 DDM in Slice Line Direction Two combine operators in ordinary slicing tree A B H BA AB V BA A B H BA AB V BA BA and Generalized combine operator
30
30 Floorplans by Generalized Slicing Tree AB Block orientation Slice line direction Left-right or top-bottom relative order Deferred Decision Making (DDM)
31
31 Shape Curve Operation for H W A B ( i ) Addition C h C v ( iii ) Merging H W W=H C v C AB C ABC C h ( ii ) Flipping H W W=H C h
32
DeFer Binary and source code in −http://www.public.iastate.edu/~zijunyan/ 32
33
Cluster Growth Cluster growth: Iteratively add blocks to the cluster until all blocks are assigned −Merged either horizontally, vertically, or diagonally with the cluster. Only the different orientations of the blocks (instead of the shape/aspect ratio) are taken into account 33 w h w h w h aaa b b c Growth direction 2 4 6 4 6 4 © 2011 Springer Verlag
34
Cluster Growth Cluster growth: Blocks b and c are placed so that the increase to the floorplan’s dimensions is minimum. Linear ordering to minimize total wirelength of connections between blocks 34 w h w h w h aaa b b c Growth direction 2 4 6 4 6 4 © 2011 Springer Verlag
35
Linear Ordering Linear-ordering algorithms often invoked to produce initial placement solutions for iterative-improvement placement algorithms. Linear-ordering objective: Arrange blocks in a single row so as to minimum total wirelength of connections Initial block: −Either randomly −Or based on number of connections to others 35
36
Linear Ordering Categories of nets for a block: Terminating nets: −have no other incident blocks that are unplaced. New nets −have no pins on any block from the partially- constructed ordering. Continuing nets −have at least one pin on a block from the partially-constructed ordering and at least one pin on an unordered block. 36
37
Linear Ordering 37 … Terminating netsNew nets Continuing nets
38
Cluster Growth Example cluster growth.ppt 38
39
Cluster Growth Example Given: (1)blocks a-e (2)linear ordering. a: (w a = 2, h a = 3) or (w a = 3, h a = 2) b: (w b = 2, h b = 1) or (w b = 1, h b = 2) c: (w c = 2, h c = 4) or (w c = 4, h c = 2) d: (w d = 3, h d = 3) e: (w e = 6, h e = 1) or (w e = 1, h e = 6) Task: find a floorplan with minimum global bounding box area. 39 Growth direction
40
Cluster Growth Example 40
41
Cluster Growth Example 41
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.