Presentation is loading. Please wait.

Presentation is loading. Please wait.

Constrained Floorplanning Using Network Flows Teng Wang 05/04/2004.

Similar presentations


Presentation on theme: "Constrained Floorplanning Using Network Flows Teng Wang 05/04/2004."— Presentation transcript:

1 Constrained Floorplanning Using Network Flows Teng Wang twang@ecs.umass.edu 05/04/2004

2 Outline Constrained Modern Floorplanning Problem (CMFP) Bound-feasibility check BFS/IBFS/CBFS Algorithm Postprocessing Experimental Results

3 Modern Floorplanning Problem Classic Floorplanning Problem:  A set of modules (height, width)  A connectivity matrix  Objective: minimize area, wire length, etc. Modern Floorplanning Problem – Kahng, 2000  Bounding rectangle is fixed  Modules can be rectilinear  “Round” blocks are preferred Constrained Modern Floorplanning Problem (CMFP):  Approximate relative positions of the modules are known

4 Design Flow Steps: 1.Bound-feasibility check 2.Floorplanning algorithm 3.Postprocessing 4.Connectivity check

5 CMFP Inputs  A H x W bounding box  A set of modules center point bounds required area Theroem1: CMFP is NP-hard Outputs For each, assign units of area

6 Bound-Feasibility Bound-Feasibility: N is the set of modules, for any subset T of N

7 Bound-Feasibility Check Theorem2: If the max flow of G is equal to, then the input is bound-feasible Theorem3: The complexity of the algorithm is O(n 2 logn) and O(n 5 logn) in worst case G

8 Min-Cost Max-Flow Algorithm Problem: A module could be assigned to regions that are not adjacent. Solution: A min-cost max-flow algorithm  Maintaining maximum flow of G,  Minimize, where c e is the cost assigned to the edge of G, f e is the flow of e. This encourages assigning the connected regions to a module.

9 BFS BFS: assign an integer cost to each edge Complexity: O(n 2 log 2 n) and O(n 6 logn) in the worst case Problem: two modules compete for a region in the same priority 0 2 1 1 2 1 RG: Region Graph

10 IBFS – Improved BFS IBFS: assign a fractional cost to each edge Complexity: the same as BFS

11 CBFS – Compromise BFS CBFS: a region splits into several subregions, one subregion for each module that competes for this region. Assign different cost for different subregions Complexity: O(n 2 log 2 n) and O(n 8 logn) in the worst case

12 Postprocessing Postprocessing: make modules connected and assign an area to each module A module m has a subgraph of RG, with vertices that correspond to regions assigned to m Module m is connected if and only if its subgraph is connected A floorplan is connected => each module is connected Graph connectivity doesn’t imply geometric connectivity

13 Experiments Implementations: Java and C++ Benchmarks: ami33, ami49 and n300a An initial step to obtain initial module positions

14 Experimental Results - I IDI1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 BMami33 ami49 Ratio1.41.51.61.71.81.41.51.61.71.8 Regions 298338393414426448469508542564 Benchmarks ID I1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 MaxFlow32505870672034384846 BFS92135566 511 IBFS79311293545 CBFS0000000000 Number of disconnected regions

15 Experimental Results - II ID I1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 BFS3(8)3(5)3(2)3(4)3(9)3(7)4(1)3(7)4(1)3(7) IBFS3(3)3(1)3(2) 3(1)3(4)3(3)3(2) 3(4) CBFS7(4)8(1)8(3) 8(4)8(5)8(2)8(1)8(3) Max number of modules assigned to a region (number of such regions) ID I1I1 I2I2 I3I3 I4I4 I5I5 I6I6 I7I7 I8I8 I9I9 I 10 Avg No of Sides12.513.514.615.316.11414.514.915.315.8 Average Number of the sides of modules (IBFS) ami33ami49 Sweep Plane5.1135.337 Min-Cost Max-Flow0.10.11 Postprocessing0.4460.495 Total5.695.843 Breakdown of runtime (s) No of modules3366132264 16643116747284 Runtime vs Input size(s)

16 END Thank you!


Download ppt "Constrained Floorplanning Using Network Flows Teng Wang 05/04/2004."

Similar presentations


Ads by Google