A SnapOn Placement Tool - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

A SnapOn Placement Tool

Description:

A Snap-On. Placement Tool. Israel Waldman. Introduction. What does placement mean? ... The framework of snap-on placement tool. Partitioning package. Simulated ... – PowerPoint PPT presentation

Number of Views:67
Avg rating:3.0/5.0
Slides: 38
Provided by: DFS15
Category:
Tags: snapon | placement | tool

less

Transcript and Presenter's Notes

Title: A SnapOn Placement Tool


1
A Snap-OnPlacement Tool
  • Israel Waldman

2
Introduction
3
What does placement mean?
  • In the chip design process, after a circuit
    designer implements the RTL as a set of
    interconnected gates, we go to layout design
  • placement putting 100s of millions of
    transistors in a very small area according to
    architectural and electrical specifications(timing
    , power, reliability etc.),
  • routing connecting them.

4
What is the goal of placement?
  • The goal of placement in VLSI physical design is
    to produce a chip layout with optimized area and
    routability which also satisfies timing
    constraints.

5
What are we talking about?
  • In this paper I will tell you about a new
    placement tool, called snapon, which is based on
    multilevel hierarchical placement method.
  • It has a topdown framework that combines
    existing packages and techniques, with some
    additional ideas.
  • Experiments results show the strength of this new
    placement tool, it produces very good results on
    all the benchmarks.

6
The classical problem
  • According to what cost function the final
    placement will done

7
The classical solutions
8
The net-cut approach
  • Net An electrical connection which connects
    several cells(e.g. AND-cell ADDER-cell etc.),
    gates or transistors together.
  • Given a partitioning, a net n is not cut if and
    only if all of its terminals are located in the
    same part.
  • The net-cut at a given hierarchical level is
    defined as the total number of cut nets.

9
Net-cut approach cont.
  • In this method, the original circuit is
    partitioned into several tightly connected
    subcircuits.
  • The partitioning criteria is minimizing the
    net-cut cost.
  • The final placement will be based on that
    partitioning with addition of local placement to
    produce a legal layout.

10
Wirelength
  • In this method the criteria for placement is
    minimizing the total wirelength.
  • In order to prevent all the cells from being
    placed in the same place (zero total wirelength),
    a balancing constraint is imposed.
  • Not in the same place
  • Enable routability
  • Again, some local adjustments will be done to
    produce a legal layout.

11
Solving techniques
  • There are two main techniques to solve
  • problems involving cost function such as
  • the placement problem
  • 1)Simulated annealing
  • 2)Quadratic programming

12
Some mathematical notations
  • The placement problem is a combinatorial
    optimization problemA problem that involves the
    search for a optimum(maximum or minimum) of a
    cost function.
  • The solution space of the placement problem grows
    exponentially with the size of the problem(NP
    complete).
  • Hence, this problem is solved approximately by
    heuristic algorithmsAlgorithms that makes
    compromise trading off low computational cost
    for an approximation to the globally optimal
    solution.

13
Mathematical notations cont.
  • Most of the heuristic algorithms are greedy.
  • They start searching the solution from an
    arbitrary initial solution.
  • Then, from all the solutions that can be reached
    from the current solution, the solution with the
    lowest cost will become the current solution, and
    so on.
  • There are two major drawbacks to terminating at
    local minimum
  • 1)There is no way to determine the
    solutions proximity to the
  • global minimum.

  • 2)The quality of the result is depend upon
    the initial solution.

14
Mathematical notations cont.
  • To solve this problem we should use hill
    climbing.
  • Randomizing algorithms have this property.
  • A randomizing algorithm can accept a neighbor of
    the current solution as the next solution,
    regardless of its cost, by that we could escape
    from terminating at local minimum.

15
Simulated annealing
  • For a number of problems such as standard-cell
    placement, Simulated annealing has proven to be
    the best known algorithm in terms of solution
    quality (measured by cost function e.g.
    wirelength).
  • The SA algorithm functions like a pure
    randomizing algorithm early in the run, slowly
    switching over to a pure greedy algorithm by the
    end of the run.

16
Simulated annealing cont.
  • However, the major drawback of the SA paradigm is
    its sometimes extremely high computational cost.

17
Quadratic programming
  • In the quadratic assignment problem we are given
    a set of N objects, which have to be placed in N
    or more sites.
  • Each pair of objects has its traffic intensity,
    and each pair of sites has its traffic cost (e.g.
    distance).
  • The assignment solution should produce the
    minimum total cost.

18
Quadratic programming cont.
  • In the placement problem we can choose our sites
    to be pre-specified locations on our layout area,
    our objects to be cells or sub-circuits, our
    traffic intensities to be the number of wires
    required between components, and our distances to
    be the inter-site wire length required.
  • The quadratic algorithm is a combinatorial
    algorithm which uses heuristics, hence its
    computational cost isnt high.

19
What is a top-down framework?
20
Top-down framework
  • Since the top-down hierarchical methodology is
    one of the most effective way to solve the
    placement problem of large circuits, we use it as
    the basis for our snap-on placement tool.
  • Our methodology will be a typical top-down
    hierarchical methodology placement approach which
    is based on recursive circuit partitioning.

21
Top-down framework cont.
  • This methodology repeatedly divides a given
    circuit into sub circuits to optimize a given
    partitioning objective.
  • At each level, the given layout area is
    partitioned in both horizontal and vertical
    direction (global bins).
  • Each subcircuit is assigned to a partition
    (global bin).
  • Recursive partitioning is repeated until each
    subcircuit contains a small number of cells.

22
  • In each hierarchical level i , the placement
  • problem is to put cells into mini global
  • bins while minimizing a certain placement
  • cost ( usually the total wirelength ).

23
A new snapon placement tool
24
Merging existing tools
  • What does it mean?
  • - At the coarser placement levels, net-cut is
    chosen as the optimization objective to rapidly
    get an initial placement.
  • - Later on, wirelength becomes the optimization
    objective till the end of the global placement
    procedure.

25
Why should we merge?
  • The netcut cost which is used in the
    partitioning problem is globally consistent with
    the wirelength cost in the placement problem.
  • The partitioning problem is much easier problem
    then the placement problem. A leading partitioner
    can be faster than a good placement tool.
  • Placement experiments showed that minimizing
    netcut in each hierarchical level positively
    affects the wirelength quality of final solution.

26
How do we merge?
  • The difference between the netcut and the
    wirelength
  • objective is the cost of external nets. The
    more the external
  • nets, the bigger difference between these two
    objectives.
  • It was empirically found that if more than
    20-30 nets are external, net-cut is no longer a
    good objective in order to minimize wirelength.
  • Conclusion
  • - At each hierarchical level, we will
    decide
  • whether we should consider wirelength
    by
  • looking at the net-cut ratio at this
    level.

27
When to stop global placement?
  • Overlaps between cells exist in global placement
    since all the cells within the same global bin
    are initially placed at the bins center.
  • After global placement, final placement procedure
    will be applied
  • to remove these overlaps and make the
    placement legal.
  • Obviously, the smaller the average number of
    cells in each global
  • bin, the less effort the final placer will
    spend, on the other hand, stopping the global
    placement too late is not good either.
  • Experiments shows that appropriate stopping point
    is where
  • Navg is between 3-6.

28
SummaryA workflow based on the above
techniques
29
The framework of snap-on placement tool
  • Partitioning package

Input circuit
Control Unit
Simulated annealing package
Circuit Placement Databox
Cost Evaluator
Other packages
Output placement
30
Control unit workflow
  • At the coarser placement level, netcut is chosen
    as the optimization objective to rapidly get an
    initial placement. We use proven partitioning
    software hMetis to minimize netcut.
  • When the topdown flow reaches a certain level in
    which the number of external nets occupies
    20-30 of the number of total nets, simulated
    annealing begins to minimize wirelength on two
    dimensional placement plane.

31
Control unit workflow cont.
  • This global placement stage ends when the stop
    criterion is satisfied, i.e., the average number
    of cells per global bin is less than a certain
    number.
  • Finally, the achieved global placement is refined
    by the final placer to generate a legal placement
    as the ultimate solution.

32
Advantages
  • The workflow utilizes both netcut and wirelength
    minimizing steps.
  • Partitioning ensures that cells with high
    connectivity are put into the same cluster while
    annealing drives clusters to their appropriate
    locations.

33
Results
34
Results
  • We use hMetis partitioning package to minimize
    netcut and use simulated annealing to minimize
    the wirelength in global placement stage. As the
    final placer, we use the tool NRG.
  • Total wirelength(WL) is measured in meters and
    running time(Time) in seconds.
  • We compared the results of this approach with the
    stateofart university placement tools,
    TimberWolf v7.0 and the best known quadratic
    placement .

35
Results table
TW 7.0 Quadratic
Ours
36
Results cont.
  • This new tool produces comparable or better
    results than TimberWolf on all of MCNC
    benchmarks, it achieves much better wirelength
    (23.5) result than TimberWolf v7.0 on benchmark
    avql.
  • Its results are also comparable with one of the
    leadingedge quadratic placement tools- Force
    Quadratic method, on most of benchmarks, except
    avqs on which our approach is inferior.

37
What have we learned?
  • The placement problem was introduced to you.
  • We learned about two different mathematical
    techniques to solve this problem Simulated
    annealing and Quadratic programming.
  • We learned about two different optimization
    approaches to solve this problem wirelength and
    net-cut.
  • We have learned about a new placement tool which
    is based on top down hierarchical workflow and
    combines these two approaches to achieve
    impressive results.
Write a Comment
User Comments (0)
About PowerShow.com