Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed...
-
Upload
arnold-webb -
Category
Documents
-
view
212 -
download
0
Transcript of Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed...
![Page 1: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/1.jpg)
Rectlinear Block Packing Using the O-tree Representation
Rectlinear Block Packing Using the O-tree Representation
Yingxin Pang Koen Lampaert
Mindspeed Technologies
Chung-Kuan Cheng
University of California, San Diego
Weize Xie
Hewlett-Packard Research Laboratories
![Page 2: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/2.jpg)
MotivationMotivation
Recent advance of sub-micron technology makes it possible to realize a big system on a single chip.
Designing such a huge VLSI layout is hard and design reuse has been attracting much interest
The integrated circuit components are not limited to rectangular blocks
Traditional algorithms designed primarily for placing rectangle blocks are no longer effective
![Page 3: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/3.jpg)
Basic StrategyBasic Strategy
Partition each rectilinear block into sub-rectangle blocks
Treat each sub-rectangle blocks as a unit block
The relationship of the sub-blocks of a rectilinear module are represented in a encoding or in additional constraints
![Page 4: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/4.jpg)
Properties of Our SolutionProperties of Our Solution
Compactness: for each feasible compact placement, there is a
feasible O-tree corresponding to it
Efficiency: the transformation form a feasible O-tree to a feasible
placement takes a linear time
![Page 5: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/5.jpg)
is a 2n-bit string which identifies the structure of the tree
is a permutation of n nodes
An O-tree is an ordered tree, which can be encoded by ),( T
T
An Example:
00110100011011, abcdefg
O-tree Representation O-tree Representation
![Page 6: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/6.jpg)
O-tree to PlacementO-tree to Placement
d
c
a
e
g
f
b
![Page 7: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/7.jpg)
Configurations Binary tree
Sequence pair
O-tree
Storage needed for individual configuration Binary tree
Sequence pair
O-tree
Transformation to a placement Binary tree
Sequence pair
O-tree
)n/2!n(O 5.12n3
))!n((O 2
)n/2!n(O 5.12n2
)nlg3(n
nlgn2
)nlg2(n
O-tree’s AdvantagesO-tree’s Advantages
)(
)(
)(2
nO
nO
nO
![Page 8: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/8.jpg)
L-shaped blocksL-shaped blocks
Type I L-shaped blocks
Type II L-shaped blocks
![Page 9: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/9.jpg)
L-admissible O-treeL-admissible O-tree
If L(Bi,Bj) is type I L-shaped block, Bi and Bj are adjacent siblings
Type I L-shaped blocks:L(B1, B2), L(B3,B4), L(B7, B8)
B8
B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
![Page 10: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/10.jpg)
L-admissible O-treeL-admissible O-tree
If L(Bi,Bj) is a type II L-shaped block If
Bi has no child No block between them in has horizontal spanning
interval overlapping with
iijj BBBB wxwx
)),,(max(jjjijj BBBBBB wxxwwx
B8B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
1110964352871
011101000101010010110011
BBBBBBBBBBB
Type II L-shaped blocks: L(B5, B6)
![Page 11: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/11.jpg)
L-admissible O-treeL-admissible O-tree
If
Bj has no child No block between them in has horizontal spanning
interval overlapping with
If
No block between them in has horizontal spanning interval overlapping with
iijj BBBB wxwx
iijj BBBB wxwx
)),,(max(iiijii BBBBBB wxxwwx
)),,(max(jjij BBBB wxxx
![Page 12: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/12.jpg)
L-admissible O-treeL-admissible O-tree
Theorem
If an O-tree is L-admissible, a minimum area placement satisfying both horizontal positioning constraints and L-shaped constraints can be built in O(n) time
![Page 13: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/13.jpg)
L-admissible O-tree to PlacementL-admissible O-tree to Placement
X-coordinate
For every type II L-shaped block L(Bi,Bj)
Place the blocks by the depth first search order, place blocks as down as possible with x-coordinates fixed
For every L-shaped block L(Bi,Bj)
)()(
0
iparentiparenti
root
wxx
x
iji BBB hyy
jiij
ijjiiijj
BBBB
BBBBBBBB
wwxxelse
wwxxwxwxif
,
![Page 14: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/14.jpg)
L-admissible O-tree to PlacementL-admissible O-tree to Placement
B8B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
B8B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
![Page 15: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/15.jpg)
Sufficiency of the L-admissible O-treeSufficiency of the L-admissible O-tree
Theorem
Any compact placement containing L-shaped blocks can be encoded with an L-admissible O-tree.
![Page 16: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/16.jpg)
Placement to L-admissible O-treePlacement to L-admissible O-tree
Partition all L-shaped blocks
Construct a horizontal constraint graph
iijji wxxBBw ),(
B8
B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
![Page 17: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/17.jpg)
Placement to L-admissible O-treePlacement to L-admissible O-tree
Generate the shortest path tree
B8
B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
![Page 18: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/18.jpg)
Placement to L-admissible O-treePlacement to L-admissible O-tree
For each type I L-shaped block L(Bi,Bj) Delete the tree edge to Bi Add an edge to Bi from parent of Bj
B8
B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
![Page 19: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/19.jpg)
Placement to L-admissible O-treePlacement to L-admissible O-tree
For each type II L-shaped block L(Bi,Bj) if Bi is compact to the left move Bj’s children to be Bi’s children else move Bi’s children to be Bj’s children
B8
B2
B3
B7
B6
B5
B4
B1
B9
B10
B11
![Page 20: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/20.jpg)
Properties of the L-admissible O-treeProperties of the L-admissible O-tree
The width of the placement has not be changed after the alignment operation
The height of the placement has not be changed after the abutment operation
The non L-admissible O-tree is redundant
No extra post process is needed
![Page 21: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/21.jpg)
Rectilinear Block PackingRectilinear Block Packing
L-partition the rectilinear blocks A rectilinear block can be represented by a set of
adjacent sub-L-shaped blocks
Admissible O-tree O-tree is admissible if it is L-admissible for all sub-L-
shaped blocks
Extend our approach to handle rectilinear blocks
![Page 22: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/22.jpg)
L-partitionL-partition
Two adjacent sub-rectangle form L-shaped
-rectangle insertion
B1
B2
B3
B1
B2
B3B3
B2
B1 B12
![Page 23: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/23.jpg)
Expandable Rectilinear BlockExpandable Rectilinear Block
![Page 24: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/24.jpg)
Rectilinear Block PackingRectilinear Block Packing
Transitivity property for alignment If a O-tree is L-admissible to two adjacent sub-L-
shaped blocks {Bi-1, Bi} and {Bi, Bi+1}, the alignment property for {Bi-1, Bi, Bi+1} can be restored by applying the moving and expanding operation
Transitivity property for abutment If a O-tree is L-admissible to two adjacent sub-L-
shaped blocks {Bi-1, Bi} and {Bi, Bi+1}, the abutment property for {Bi-1, Bi, Bi+1} can be restored by applying the lifting and expanding operation
![Page 25: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/25.jpg)
The Heuristic Optimization AlgorithmThe Heuristic Optimization Algorithm
Delete a block from the O-tree if it is a sub-block of an L-shaped block, delete the
other sub-block
Operate the tree rotation and insert the deleted blocks at the best insertion position in each O-tree
Choose the best one according to the cost function
![Page 26: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/26.jpg)
O-tree RotationO-tree Rotation
a
b
c
d
e
f
g
a
b
c
d
e
f
g
a
b
c
d
e
f
g
a
b
c
d
e
f
g
![Page 27: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/27.jpg)
An O-tree to Its Orthogonal O-treeAn O-tree to Its Orthogonal O-tree
![Page 28: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/28.jpg)
L-shaped Block Packing L-shaped Block Packing
![Page 29: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/29.jpg)
Rectilinear Block PackingRectilinear Block Packing
![Page 30: Rectlinear Block Packing Using the O-tree Representation Yingxin Pang Koen Lampaert Mindspeed Technologies Chung-Kuan Cheng University of California, San.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f295503460f94c42456/html5/thumbnails/30.jpg)
Conclusions Conclusions
Develop a simple technique to handle rectilinear block packing problem
Transforming an admissible O-tree to a placement can be realized in linear time
No post-process needed to recover the original rectilinear shape