+ All Categories
Home > Documents > Floorplan Sizing 1. Floorplanning Algorithms Common Goals To minimize the total length of...

Floorplan Sizing 1. Floorplanning Algorithms Common Goals To minimize the total length of...

Date post: 14-Dec-2015
Category:
Upload: clifton-hodges
View: 225 times
Download: 1 times
Share this document with a friend
Popular Tags:
41
Floorplan Sizing 1
Transcript

Floorplan Sizing

1

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.5.1Floorplan Sizing

Shape functions

Legal shapes

w

h

w

h

Block with minimum width and height restrictions

ha*aw A Ott

en, R

.: E

ffic

ien

t F

loor

pla

n O

pti

miz

atio

n. I

nt.

Con

f. o

n C

omp

ute

r D

esig

n, 4

99-5

02, 1

983

Legal shapes

4

3.5.1Floorplan Sizing

Shape functions

w

h

Hard library block Ott

en, R

.: E

ffic

ien

t F

loor

pla

n O

pti

miz

atio

n. I

nt.

Con

f. o

n C

omp

ute

r D

esig

n, 4

99-5

02, 1

983

w

h

Discrete (h,w) values

5

3.5.1Floorplan Sizing

Corner points

52

2

5

2 5

2

5

w

h

مرتضي صاحب الزماني

6

Slicing Floorplan Sizing

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

4

2

2

4Block B:

Block A :5

5

3

3

Step 1: Construct the shape functions of the blocks

3.5.1Floorplan Sizing – Example

9

4

2

2

4Block B:

Block A :5

5

3

3

3.5.1Floorplan Sizing – Example

2

4

h

6

w2 64

5

3

Step 1: Construct the shape functions of the blocks

10

4

2

2

4Block B:

Block A :5

5

3

3

3.5.1Floorplan Sizing – Example

2

4

h

w2 64

6

3

5

Step 1: Construct the shape functions of the blocks

11

4

2

2

4Block B:

Block A :5

5

3

3

w2 6

2

4

h

4

6

hA(w)

3.5.1Floorplan Sizing – Example

Step 1: Construct the shape functions of the blocks

12

4

2

2

4Block B:

Block A :5

5

3

3

hB(w)

w2 6

2

4

h

4

6

hA(w)

3.5.1Floorplan Sizing – Example

Step 1: Construct the shape functions of the blocks

13

w2 6

2

4

h

4

6

hB(w)hA(w)

8

3.5.1Floorplan Sizing – Example

Step 2: Determine the shape function of the top-level floorplan (vertical)

14

w2 6

2

4

h

4

6

hB(w)hA(w)

8

3.5.1Floorplan Sizing – Example

Step 2: Determine the shape function of the top-level floorplan (vertical)

15

w2 6

2

4

h

4

6

w2 6

2

4

h

4

6

hB(w)hA(w)

hB(w)hA(w)

hC(w)

88

3.5.1Floorplan Sizing – Example

Step 2: Determine the shape function of the top-level floorplan (vertical)

16

w2 6

2

4

h

4

6

w2 6

2

4

h

4

6

hB(w)hA(w)

hB(w)hA(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

w2 6

2

4

h

4

6

w2 6

2

4

h

4

6

hB(w)hA(w)

hB(w)hA(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

w2 6

2

4

h

4

6

w2 6

2

4

h

4

6

hB(w)hA(w)

hB(w)hA(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

w2 6

2

4

h

4

6

w2 6

2

4

h

4

6

hA(w)hB(w) hC(w)hA(w)hB(w)

9 x 3

7 x 4

5 x 5

88

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

3.5.1Floorplan Sizing – Example

Step 3: Find the individual blocks’ dimensions and locations

w2 6

2

4

h

4

6

8

(1 )Minimum area floorplan: 5 x 5

Horizontal composition

21

w2 6

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

2 x 4 3 x 5

5 x 5

3.5.1Floorplan Sizing – Example

Step 3: Find the individual blocks’ dimensions and locations

w2 6

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

2 x 4 3 x 5

5 x 5

Resulting slicing tree

B

V

AB A

3.5.1Floorplan Sizing – Example

24

DeFer:Deferred Decision Making Enabled

Fixed-Outline Floorplanner

DAC 2008

Jackey Z. Yan Chris Chu

25

Fixed-Outline Floorplanning

26

Constraints of Ordinary Slicing Tree

A

B

C

EDHH

V

BA C V

D E

• Block orientation

• Slice line direction (H/V)• Left-right or top-bottom relative order

27

DDM in Shape/Orientation Defer the decision for subfloorplan (i.e., block) orientation until

the end

HH

V

BA C V

D E

Pick any point!

Fixed-outlineregion

A

B

C

ED

H

W

A

A

28

DDM in Relative Order The relative order (left-right / top-down) between

subfloorplans does not affect the shape curves

A B

V

BA A

V

ABB

Same shape curve

Decision on subfloorplan relative order will be made at the end to minimize HPWL

H

W

ABVH

W

BAV

V

BA

V

BA

V

B Aand

29

DDM in Slice Line Direction Two combine operators in ordinary slicing tree

AB

H

BA

A B

V

BA

AB

H

BA

A B

V

BABAand

Generalized combine operator

30

Floorplans by Generalized Slicing Tree

A B

• Block orientation

A B

A B

A BA B

AB

AB

ABAB

A

B

A

BA

BA

B

A

B

A

BA

BA

B

• Slice line direction• Left-right or top-bottom relative order

Deferred Decision Making (DDM)

31

Shape Curve Operation for

H

W

A B

)i ( Addition

Ch

Cv

)iii ( Merging

H

W

W=H

Cv

C

A B

CA B C

Ch

)ii ( Flipping

H

W

W=HCh

DeFer

Binary and source code in

− http://www.public.iastate.edu/~zijunyan/

32

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

a a a

b bc

Growth direction

2

4

6

4

6

4

©20

11

Spr

inge

r V

erla

g

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

a a a

b bc

Growth direction

2

4

6

4

6

4

©20

11

Spr

inge

r V

erla

g

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

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

Linear Ordering

37

Terminating nets New nets

Continuing nets

Cluster Growth Example

• cluster growth.ppt

38

Cluster Growth Example• Given:

(1) blocks a-e (2) linear ordering <a b d e c>.

• a: (wa = 2, ha = 3) or (wa = 3, ha = 2)

• b: (wb = 2, hb = 1) or (wb = 1, hb = 2)

• c: (wc = 2, hc = 4) or (wc = 4, hc = 2)

• d: (wd = 3, hd = 3)

• e: (we = 6, he = 1) or (we = 1, he = 6)

• Task: find a floorplan with minimum global bounding box area.

39

Growth direction

Cluster Growth Example

40

Cluster Growth Example

41


Recommended