Temporal Floorplanning Using the Ttree Formulation - PowerPoint PPT Presentation

1 / 45
About This Presentation
Title:

Temporal Floorplanning Using the Ttree Formulation

Description:

... (RFU): a device that can be reconfigured during program execution, say an FPGA ... There exist additional temporal ordering requirements among RFUOPs ... – PowerPoint PPT presentation

Number of Views:49
Avg rating:3.0/5.0
Slides: 46
Provided by: Tai66
Category:

less

Transcript and Presenter's Notes

Title: Temporal Floorplanning Using the Ttree Formulation


1
Temporal Floorplanning Using the T-tree
Formulation
  • Ping-Hung Yuh1, Chia-Lin Yang1,
  • Yao-Wen Chang2

1 Dept. of Computer Science Information
Engineering 2 Dept. of Electrical
Engineering National Taiwan University, Taiwan
2
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Reachability of T-tree
  • Experimental Results
  • Conclusion

3
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Reachability of T-tree
  • Experimental Results
  • Conclusion

4
Reconfigurable System
  • Reconfigurable functional unit (RFU) a device
    that can be reconfigured during program
    execution, say an FPGA
  • RFUOP (RFU operation) operations executed on RFU

RFUOP 2
RFUOP 2
RFU
5
Reconfiguration Issues
  • Given a set of RFUOPs
  • When to load?
  • How to allocate?
  • There exist additional temporal ordering
    requirements among RFUOPs
  • Need an efficient and effective topological
    representation for modules
  • Need an efficient algorithm to find a solution to
    meet our requirements

6
Previous Work
  • Component graph-based approach
  • Teich et al. in Proc. PDPTA, 1999
  • Use the graph-theoretical approach
  • Assume no data dependency
  • Fekete et al. in Proc. DATE, 2001
  • Consider the RFUOPs ordering
  • Absolute-coordinate based approach
  • Bazargan et al. in IEEE Design Test of
    Computers, 2000
  • 2D bin-packing and 3D placer
  • Topological representation based approach
  • Yuh et al. in Proc. ASPDAC, 2004
  • Use three transitive closure graphs (TCGs) to
    represent a temporal placement

7
Our Contribution
  • Introduce the T-tree representation
  • A T-tree is a 3-ary tree to represent a temporal
    placement

na
nb
nd
nf
ne
nc
8
Our Contribution (contd)
  • First work to use a tree-based representation to
    handle the temporal floorplanning/placement
    problem
  • Three advantages compared with the recent
    state-of-the-art representation
  • Faster operations (O(n) time per operation, n
    of modules)
  • More efficient packing method
  • Smaller solution space
  • Consider fixed-outline floorplanning

9
Temporal Floorplanning
  • Given a set of tasks V, treat a task vi as a 3D
    box with width (x-coordinate), height
    (y-coordinate) and duration (t-coordinate)
  • Find a placement ?, an assignment of for each
    vi , , such that no two boxes
    overlap and satisfy all precedence constraints
  • Precedence constraint the temporal relations
    among tasks to guarantee the correct execution
  • Optimize a predefined cost metric
  • Area x Execution time (Volume)
  • Wirelength
  • Communication overhead
  • Reconfiguration overhead

Height
Duration
Width
10
Communication Overhead and Reconfiguration
Overhead
  • Communication overhead
  • The overhead between two data-dependent tasks
  • Reconfiguration overhead
  • The overhead when a task is loaded into an RFU

11
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Reachability of T-tree
  • Experimental Results
  • Conclusion

12
The T-tree Representation
  • A 3-ary tree representation for temporal
    floorplanning/placement problem
  • The T-tree keeps the geometric information as
    follows
  • Child j is the left child of parent i tj ti
    Ti
  • Child k is the middle child of parent i tk
    ti, yk gt yi
  • Child l is the right child of parent i tl ti,
    yl yi

13
An Example
na
nb
nd
nf
ne
nc
The corresponding T-tree
A placement
14
From a Placement to a T-tree
  • A placement is compacted iff no module can be
    moved along its X-, Y- or T- directions to the
    origin while other modules are fixed
  • Construct T-tree recursively based on the DFS
    order

na
nb
nd
nf
ne
nc
15
From a T-tree to a Placement
  • The t-coordinate can be obtained from the
    structure of T-tree
  • The original T-tree can be decomposed into
    several binary trees

T-tree H1
Decompose
na
nb
nd
nf
ne
nc
16
From a T-tree to a Placement (contd)
  • Pack each node in one binary tree in the DFS
    order
  • Apply the contour data structure for each binary
    tree to compute the y-coordinate
  • Maintain a list L to store all tasks whose t- and
    y-coordinates are already determined
  • The x-coordinate of task vi maxxk the
    projections of vi and vk are overlapped on Y-T
    plane the for k L

Binary trees
B1 B2 B3
1
4
5
nf
nd
6
2
ne
3
17
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Reachability of T-tree
  • Experimental Results
  • Conclusion

18
Precedence Constraint
  • To maintain the temporal orderings among tasks,
    all the precedence constraints must be satisfied
  • If there exists a precedence constraint between
    task vj and task vi, vj is guaranteed to satisfy
    the precedence constraint if node nj is in the
    left sub-tree of node ni
  • If nj is in the left sub-tree of ni
  • vj starts after vi finishes
  • If nj is in the middle or right sub-tree of ni
  • vj may not execute after vi

ni
nj
nj
nj
tj tj
tj tj
tj tj Ti
19
Set Definition
  • Each node nk is associated with two sets
  • Ik set of tasks that must be executed before vk
  • Ok set of tasks that must be executed after vk
  • For example

ve must be executed after vb va must be executed
after vbvd must be executed before vb
Ib vdOb ve, va
20
Feasibility Detection
  • Use Simulated Annealing
  • Perform feasibility detection after each
    perturbation
  • If task vk violates the precedence constraint,
    perform tree-reconstruction by moving node nk to
    the left sub-tree of node np, with vp in has the
    latest ending time in Ik
  • Guarantee to satisfy the precedence constraint
    after each perturbation
  • Problem Tree-reconstruction overhead

21
Tree-reconstruction Overhead Reduction
  • Idea avoid the operations that will definitely
    violate the precedence constraint
  • Derive a heuristic for operations based on two
    observations

22
Two Observations
  • Observation 1 ne can only choose a node or a
    position in nbs left sub-tree for operations to
    satisfy the precedence constraint
  • Observation 2 nb cannot choose a node or a
    position in the sub-tree rooted by ne in order
    not to violate the precedence constraint

ve must be executed after vb
23
Node Selection
  • Number nodes in the DFS order starting from its
    right child
  • Each node nk is associated with two values,
    DFS_down and DFS_up
  • DFS_down the DFS number of the nps left child
    where task vp has the latest ending time in Ik
  • DFS_up the DFS number of node nq where task vq
    has the least starting time in Ok
  • Heuristically choose a node in the range
    DFS_down, DFS_up)

1
4
2
5
3
8
6
7
ve must be executed after vbnbs DFS_down 1
DFS_up 5nes DFS_down 5 DFS_up
9
24
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Reachability of T-tree
  • Experimental Results
  • Conclusion

25
Fixed-outline Floorplanning
  • In practice, RFU is often chosen first, and thus
    the available area is fixed
  • Let Wf/Hf and Wp/Hp denote the width and height
    of a reconfigurable device and a placement,
    respectively
  • A feasible placement of fixed-outline
    floorplanning must satisfy the outline
    constraint that is, Wp Wf and Hp Hf
  • Two ways for handling the fixed-outline
    floorplanning problem
  • Guide the perturbation with outline-violation
    probability
  • Add extra penalty cost in the cost function

26
Two Methods for Fixed-outline Floorplanning
  • Guide the tree perturbation with
    outline-violation probability p
  • p k/n, where k is the of outline-violated
    placements in last n iterations
  • If p is large, increase the probability of
    placing a task along the t-coordinate to fit into
    the desire outline
  • If p is small, increase the probability of
    placing a task along the x- or y- coordinate to
    minimize the execution time
  • Modify the cost function
  • Add the excessive volume into the cost function
    as the penalty cost
  • Consider the smaller excessive volume of two
    orthogonal placements

27
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Reachability of T-tree
  • Experimental Results
  • Conclusion

28
Reachability of T-tree
  • Two placements are said to be equivalent if they
    have the same
  • Topology of T-tree
  • Labeling of each node
  • Orientation of each task
  • Three steps to transform a T-tree H1 to another
    T-tree H2
  • Make H1 the same topology as H2
  • Get the correct label for each node
  • Get the correct orientation for each task

29
Making H1 the Same Topology of H2
  • Find a left-skew T-tree H0 to which both H1 and
    H2 can be transformed via a series of operations,
    and the operation is reversible
  • Transform H1 to H2 with H0 as an intermediate
    solution

H2
H0
H1
30
Tree Transformation Process step 1
  • Recursively move the rightmost leaf to the
    leftmost external position and reverse this
    process
  • Need at most 2n-2 moves to obtain the correct
    topology
  • Perform at most n-1 swaps to obtain the correct
    labeling
  • Perform at most n rotations to get the correct
    orientation
  • Theorem It needs at most 4n-3 operations to
    transform a T-tree to another T-tree

Move
Move
Move
31
Tree Transformation Process step 2
  • Recursively move the rightmost leaf to the
    leftmost external position and reverse this
    process
  • Need at most 2n-2 moves to obtain the correct
    topology
  • Perform at most n-1 swaps to obtain the correct
    labeling
  • Perform at most n rotations to get the correct
    orientation
  • Theorem It needs at most 4n-3 operations to
    transform a T-tree to another T-tree

Swap
Swap
32
Tree Transformation Process step 3
  • Recursively move the rightmost leaf to the
    leftmost external position and reverse this
    process
  • Need at most 2n-2 moves to obtain the correct
    topology
  • Perform at most n-1 swaps to obtain the correct
    labeling
  • Perform at most n rotations to get the correct
    orientation
  • Theorem It needs at most 4n-3 operations to
    transform a T-tree to another T-tree

At most 3 rotations
33
Tree Transformation Process
  • Recursively move the rightmost leaf to the
    leftmost external position and reverse this
    process
  • Need at most 2n-2 moves to obtain the correct
    topology
  • Perform at most n-1 swaps to obtain the correct
    labeling
  • Perform at most n rotations to get the correct
    orientation
  • Theorem It needs at most 4n-3 operations to
    transform a T-tree to another T-tree

H1
H2
34
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Reachability of T-tree
  • Experimental Results
  • Conclusion

35
Experimental Results
  • The algorithm was implemented in C and ran on
    SUN Blade 2000
  • Conducted three experiments
  • Volume, overhead and wirelength optimizations
    with 3D-MCNC
  • Volume, overhead and wirelength optimizations
    with 3D-GSRC
  • The fixed-outline experiment with 3D-n100
  • Compared with 3D-subTCG (ASPDAC-2004)
  • The 3D extension of Transitive Closure Graph
    (TCG)
  • Use three transitive closure graphs (one for each
    dimension) to represent a 3D placement

36
3D-MCNC Benchmark Statistics
  • Circuits were the same as those in Yuh et al,
    ASPDAC 2004

37
Results on 3D-MCNC-1 Benchmarks
  • Two sets of 3D-MCNC (3D-MCNC-1, 3D-MCNC-2)
    benchmarks with different precedence constraints

38
Results on 3D-MCNC-2 Benchmarks
T-tree can obtain smaller deadspace (15.61 vs.
12.8) in less running time
39
3D-GSRC Benchmark Statistics
  • 3D extension of 2D GSRC benchmarks

40
Results on 3D-GSRC Benchmarks
T-tree performs even better for larger circuits
41
Results for Fixed-outline Floorplanning
  • Adopted 3D-n100 with various outline widths and
    heights

Our approach for fixed-outline floorplanning is
effective
42
Resulting Placement for 3D-ami49
  • Resulting placement with precedence constraints
    and volume, wirelength and overhead optimization

43
Outline
  • Introduction
  • The T-tree Formulation
  • Temporal Floorplanning Algorithm
  • Fixed-outline Floorplanning
  • Solution Space and Reachability
  • Experimental Results
  • Conclusion

44
Conclusion
  • Presented the first tree-based representation for
    temporal floorplanning/placement problem
  • Proposed the T-tree and demonstrated its
    efficiency and effectiveness
  • Showed superior properties of the T-tree
  • Smaller solution space
  • The solution space is well-structured
  • Future work
  • Module sizing
  • Task preemption

45
Thank Youfor yourattention
Write a Comment
User Comments (0)
About PowerShow.com