Top Banner
Floorplan Sizing 1
41

Floorplan Sizing 1. Floorplanning Algorithms Common Goals To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

Dec 14, 2015

Download

Documents

Clifton Hodges
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

Floorplan Sizing

1

Page 2: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 3: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 4: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 5: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

5

3.5.1Floorplan Sizing

Corner points

52

2

5

2 5

2

5

w

h

Page 6: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

6

Slicing Floorplan Sizing

Page 7: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 8: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 9: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 10: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 11: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 12: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 13: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 14: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 15: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 16: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 17: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 18: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 19: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 20: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 21: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 22: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 23: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

23

2 x 4 3 x 5

5 x 5

Resulting slicing tree

B

V

AB A

3.5.1Floorplan Sizing – Example

Page 24: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

24

DeFer:Deferred Decision Making Enabled

Fixed-Outline Floorplanner

DAC 2008

Jackey Z. Yan Chris Chu

Page 25: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

25

Fixed-Outline Floorplanning

Page 26: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 27: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 28: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 29: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 30: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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)

Page 31: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 32: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

DeFer

Binary and source code in

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

32

Page 33: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 34: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 35: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 36: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 37: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

Linear Ordering

37

Terminating nets New nets

Continuing nets

Page 38: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

Cluster Growth Example

• cluster growth.ppt

38

Page 39: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

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

Page 40: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

Cluster Growth Example

40

Page 41: Floorplan Sizing 1. Floorplanning Algorithms Common Goals  To minimize the total length of interconnect, subject to an upper bound on the floorplan area.

Cluster Growth Example

41