Академический Документы
Профессиональный Документы
Культура Документы
Slicing floorplan is not P-admissible. Why? A P-admissible floorplan representation: Sequence- Pair.
1
Positive locus: Union of right-up locus and left-down locus. Negative locus: union of up-left locus and down-right locus.
Geometrical Information
No pair of positive (negative) loci cross each other, i.e., loci are linearly ordered. Sequence-Pair (+, -): + (-) is the module permutation representing the order of positive (negative) loci. E.g., (+, -) = (abdecf, cbfade). x is after (before) x in both + and - x is right (left) to x. x is after (before) x in + and before (after) x in - xis below (above) x.
structure and ic layout applications, ICCAD96. A meta-grid, named the bounded-sliceline grid (BSG), is a topology defined on a plane. UBSG={Vi,j | i,j : integers, i+j : even} {Hi,j|i,j : integers, i+j : odd} where Vi,j={ (x,y) | x = i , j-1 < y < j+1 } Hi,j={ (x,y) | i-1 < x < i+1 , y = j }
Y Y Y X X
` ` `
b b b a a
c c c
e e e d d
b b b
UU U
WW W
WW f f f f W
g g g R R
VV V
&& &
&
h h h
WW W
i i i
QQ Q
WW W W
WW
f f f
d d d
R R R
g g g
WW W
RR R 2
22
22 2
pq pq pq
pq
WW W
g g 3 3 3 3 g
Y Y Y
5 5 4 5 4
TT T S WW W W SS S
r r r
fY fY fY
fY
6 6 6
WW W
W
8 8 7 8 7
s s s
s
'
)) t t t t @ @ @ @ 9 9 9 22 2 2 9 )
) (( ( (
cg cg cg
cg
A A A
u u u
B B B
a a a a
C C C
D D D
9 9 9 9
22 2
22 2
'
! ! !
"#
A A A
22 2
EF EF EF
EF
A@ A@ A@
A@
00 22 2 2 0
7 7 7
D@ D@ D@
D@
1 1 1
1 1 1
G G G
H8 H8 H8
H8
% % %
% $
$ $
AI AI AI
AI
$ $ $
P P P
P 22 2 2
22 2
'' '
'
Theoretical Results
For a BSG of dimension pxq to contain a globally optimal packing for n modules, both p and q must be larger than or equal to n. If p or q is less than n, there exists an instance of n modules that does not have any room assignment to lead to a globally optimal packing. The given BSG is P-admissible if its dimension is nxn or larger. The size of the solution space implied by a BSG of dimension nxn is C(n2,n)x(n!).
9
Solution Perturbation
Given n modules, use the BSG of dimension rxr, where rxr must be larger than n. (Problem: how to determine r? Experiments show that a fairly good packing can be obtained unless r is close to n0.5.) Employ the simulated annealing technique. - Arbitrarily swap the contents of two rooms. - Arbitrarily rotate a module. (Not mentioned in the paper.)
10
O-Tree Encoding
(00110100011011,adbcegf) with Depth-First-Search
12
13
y j = 0 | (max k ( i ) y k + hk )
Vertical O-Tree:
14
15
Gv(B-compact)
CG2OT
V-O-tree
OT2OCG
Gh(L-compact)
CG2OT
H-O-tree...
All compactions are monotone because modules are either moved down or left. Therefore, convergence of the above iteration is assured and we can get an admissible O-tree.
16
Solution Perturbation
a Select a module Bi in the O-tree (T,). b Delete Bi from the O-tree (T,). c Insert Bi in the position with the best cost value among all possible inserting positions in (T,) as an external node. d Perform a-c on it orthogonal O-tree.
Given any O-tree with n nodes, the number of possible inserting position as external nodes is 2n-1.
17
18
19
20
21
Keep location constraints for the sub-modules. - E.g., keep the right sub-module as the left child in the B*-tree. Align sub-modules, if necessary. Treat the sub-modules of a modules as a whole during perturbations.
22
23
Orientation
A corner block can be vertically (encoded as 0) or horizontally (encoded as 1) oriented:
A vertical T-junction
A horizontal T-junction
25
Attached T-junctions
We need to know the number of attached Tjunctions to uniquely define a floorplan.
The following floorplans have the same corner block and orientation, but they have different number of attached T-junctions. D A B C D 2 attached T-junctions D A B C D 1 attached T-junction D A B C D 0 attached T-junction
26
S = (dacb) Note: there is no need to include the orientation and L = (010) # of attached T-junctions of the last corner T = (000) block in L and T.
27
d g
c f
a b
e
c f
c f
g b
e g b e c f g b
c f
c f
e c f g
28
c f
c f f
Advantages
A topological representation (independent of the block size). O(n(3+lg n)) to encode a CBL. O(n!23n-3/n1.5) solution space. O(n) time to construct the CBL from a pair of polar graphs (which specifies a floorplan). O(n) time to construct the polar graphs from a CBL. O(n) time to construct a packing from a pair of polar graphs.
30
Solution Perturbation
Employ the simulated annealing technique. Perturbation operations:
Randomly exchange 2 modules in S. Randomly complement a bit in L. Randomly complement a bit in T. Rotate a module by 90, 180 or 270. Reflect a module horizontally or vertically. Randomly choose an alternate shape for a soft module.
31
32
Other Issues
Considering placement constraints
Range constraints (ISPD-99) Boundary constraints (ASPDAC-01) Symmetry constraints (DAC-99)