BTrees: A New Representation for NonSlicing Floorplans - PowerPoint PPT Presentation

1 / 52
About This Presentation
Title:

BTrees: A New Representation for NonSlicing Floorplans

Description:

Handles hard, pre-placed, soft and rectilinear modules. directly and ... pre-placed module bi cannot be packed to its fixed position ... Pre-placed Modules ... – PowerPoint PPT presentation

Number of Views:53
Avg rating:3.0/5.0
Slides: 53
Provided by: Vlsi5
Category:

less

Transcript and Presenter's Notes

Title: BTrees: A New Representation for NonSlicing Floorplans


1
B-Trees A New Representation forNon-Slicing
Floorplans
  • Yun-Chih Chang, Yao-Wen Chang,
  • Guang-Ming Wu, and Shu-Wei Wu

Department of Computer and Information
Science National Chiao Tung University Hsinchu,
Taiwan, ROC
2
Outline
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
3
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
4
Introduction
  • Floorplanning becomes more critical due to
    hierarchical design and IP modules.
  • Need an efficient, flexible, and effective
    representation for floorplans.
  • Two types of floorplans slicing structure and
    non-slicing structure.

3
1
4
5
2
6
7
5
Floorplan Representations
  • Slicing Floorplans
  • Binary tree Otten, DAC82
  • Normalized Polish expression Wong and Liu,
    DAC86
  • Non-slicing Floorplans
  • Sequence pair Murata et al., ICCAD95
  • Bounding slicing grid Nakatake et al., ICCAD96
  • O-tree Guo, Cheng, and Yoshimura, DAC99

6
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
7
Contributions
Introduce the B-tree representation for
non-slicing floorplans.
8
Characteristics of B-trees
  • Efficiency
  • Is based on ordered binary tree, fast and easy
    for implementation.
  • Needs no constraint graphs for area cost
    evaluation.
  • Evaluates area cost incrementally.
  • Only needs to transform from a B-tree to
    placement during processing, except for handling
    soft modules.
  • Effectiveness
  • Results in smaller silicon area.
  • Flexibility
  • Handles hard, pre-placed, soft and rectilinear
    modulesdirectly and efficiently.

9
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
10
The O-tree Representation
  • Compacts modules to left and bottom
  • Represents by an arbitrary ordered tree
  • Needs sequence encoding

b10
b5
b6
1
0
0
1
1
0
b3
n1
n0
n5
b1
b4
b2
0
1
0
1
0
1
0
1
1
1
0
0
n2
n9
n10
n8
n6
n7
1
0
1
b9
b0
0
n11
n3
b8
b11
0
1
b7
n4
(001001101011000011110011, b0 b7 b8 b11 b9 b10
b1 b2 b3 b4 b5 b6)
11
Limitation of the O-tree
  • Can insert only at external positions, due to the
    overhead in encoding sequence.
  • May deviate from the optimal during solution
    perturbations.

n1
n5
n0
n6
n2
n9
n10
n7
n8
n11
n3
n4
12
The B-tree Construction
n0
b10
b5
b6
b3
b1
n1
n7
b4
b2
n2
n5
n8
b0
b9
n3
n6
n9
n11
b8
b11
b7
n4
n10
1-1 correspondence
13
The B-tree Representation
  • Apply the Depth-First Search (DFS) to construct
    the tree.
  • left child gt adjacent, bottom-most module on
    the right
  • right child gt module above and adjacent with
    the same x-coordinate.
  • x-coordinates can be determinated by the tree
    structure.
  • y-coordinates?

b1
x1x0
b0
b7
(x0,y0)
x7x0w0
14
Contour Structure
  • Reduce the complexity of computing a y-coordinate
    to O(1) time.
  • First introduced in the O-tree.

horizontal contour
b10
vertical contour
b3
b1
b4
b0
b9
b8
b11
b7
15
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
16
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
17
Pre-placed Modules
n0
n1
n1
n7
b2
n5
n2
n2
n5
n8
n3
n3
n6
n9
n11
n4
n10
D6 b1, b2
18
Pre-placed Modules
n0
n1
n1
n7
b2
n5
n5
n8
n6
n3
n3
n9
n11
n2
n4
n10
D6 b1, b2
19
Pre-placed Modules
n0
b2
b10
b5
b3
b1
b4
b6
b0
b9
b8
b11
b7
D6 b1, b2
20
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
21
Soft Modules
  • Step1 Change the shape of the inserted soft
    module
  • Step2 Change the shapes of other soft modules

surplus space
b10
b5
b6
b3
b1
b4
b2
b0
b0
b9
b8
b11
b7
22
Soft Modules
  • Step1 Change the shape of the inserted soft
    module
  • Step2 Change the shape of other soft modules

b10
b0
b9
b8
b11
b7
23
Soft Modules
  • Step1 Change the shape of the inserted soft
    module
  • Step2 Change the shapes of other soft modules

b5
b10
b6
b3
b1
surplus space
b4
b2
b2
b0
b9
b8
b11
b7
24
Soft Modules
  • Step1 Change the shape of the inserted soft
    module
  • Step2 Change the shape of other soft modules

b5
b10
b6
b3
b1
b2
b4
b0
b9
b8
b11
b7
25
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
26
Rectilinear Modules
  • A rectilinear module can be partitioned into
    rectangular sub-modules.

b5
b4
b6
b3
b2
b7
b1
27
Orientations of L-Shaped Module
  • An L-shaped module has four orientationsafter
    rotation.

28
Location Constraint
  • Location Constraint Keep b2 as b1s left child
    in the B-tree.

0
b2
1
2
b1
b1
b3
1
b3
b2
b4
b4
0
2
Location Constraint
29
Fixing Mis-aligned Sub-Modules
  • Mis-aligned sub-modules do not conform to the
    shape of their original module.

b2
1
b3
b4
0
2
30
Fixing Mis-aligned Sub-Modules
  • Mis-aligned sub-modules do not conform to the
    shape of their original module.

b2
1
b3
b4
0
2
31
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
32
Algorithm
  • Based on the simulated annealing method.
  • Flow

Initialize a B-tree
Perturb the B-tree
no
Meet termination conditions?
yes
Stop!
33
Perturbations
  • Four types of perturbations
  • --Op1 Rotates a module.
  • --Op2 Moves a module to another place.
  • --Op3 Swaps two modules.
  • --Op4 Removes a soft module and inserts it into
    the best internal or external
    positions.
  • Needs deletion and insertion for Op2 Op4.

34
Deletion
  • Three cases for deletion
  • -- Case1 A leaf node.

O(1)
35
Deletion (contd)
  • Case2 A node with one child.

O(1)
36
Deletion (contd)
  • Case3 A node with two children.

37
Deletion (contd)
  • Case3 A node with two children.

h
O(h)
38
Insertion
  • Three types of positions
  • -- Inseparable position Between two nodes
    associated with two sub-modules of a rectilinear
    module.
  • -- Internal position Between two nodes in a
    B-tree, but is not an inseparable one.
  • -- External position Pointed by a NULL pointer.

0
Rectilinear module
1
2
5
3
6
4
39
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
40
Experimental Results
  • Implemented two algorithms
  • Iterative, deterministic algorithm to compare
    with O-tree.
  • Simulated annealing algorithmto further improve
    the results.
  • Consumes 60 less memory, runs 4.5 times faster,
    uses 1.4 less area.

41
Resulting Placement for Ami49
49 rectangles dead space 3.6
42
Experimental Results on Rectilinear Modules
  • Achieves near optimum areas.

43
Resulting Placement for Test5
10 rectangular, 10 L-shaped, and 10 T-shaped
modules dead space 5
44
Introduction
Our Contributions
Pre-placed Modules
Representations
Operations
Soft Modules
Algorithm
Rectilinear Modules
Experimental results
Conclusion
45
Conclusion
  • Have introduced the binary-tree based B-tree
    representation for non-slicing floorplans.
  • Have shown the efficiency, flexibility, and
    effectiveness of the B-tree.
  • Minimizes the gap between the representations for
    slicing and non-slicing floorplans.
  • Applies to interconnect-driven floorplanning.

46
Acknowledgements
  • Thank Prof. Chunk-Kuan Cheng and Dr. Pei-Ning Guo
    for providing us with the O-tree package and the
    benchmark circuits.

47
Thank you for your attention
48
(No Transcript)
49
(No Transcript)
50
Question1
  • How do you handle timing?

51
Question2
  • Whats the difference between the O-tree and the
    B-tree?

52
Question3
  • The Location constraint for rectilinear modules
    is only a necessary condition. Is it possible to
    make it a necessary and sufficient condition?
Write a Comment
User Comments (0)
About PowerShow.com