Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Snap-On Placement Tool Israel Waldman. Introduction.

Similar presentations


Presentation on theme: "A Snap-On Placement Tool Israel Waldman. Introduction."— Presentation transcript:

1 A Snap-On Placement 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 100’s 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 snap­on, which is based on multilevel hierarchical placement method. It has a top­down 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 sub­circuits. 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 problem:A 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 algorithms:Algorithms 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 solution’s 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 isn’t 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 mi*ni global bins while minimizing a certain placement cost ( usually the total wirelength ).

23 A new snap­on 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 net­cut 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 net­cut in each hierarchical level positively affects the wirelength quality of final solution.

26 How do we merge? The difference between the net­cut 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 bin’s 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 Summary A workflow based on the above techniques

29 The framework of snap-on placement tool Partitioning package Partitioning package Simulated annealing package Other packages Input circuit CircuitPlacementDatabox Output placement ControlUnit CostEvaluator The cost evaluator calculates the placement cost and sends information to control unit. Pre–designed packages are available software packages or functional units using relevant techniques. The placement data box contains all the placement circuit information (standard cells, I/O pads, netlist etc.) and current status of the placement. The control unit initializes and masters the operation of the placement workflow.It reads current status and cost of the placement and determines which specific pre- designed package should be used at any specific time.

30 Control unit workflow At the coarser placement level, net­cut is chosen as the optimization objective to rapidly get an initial placement. We use proven partitioning software hMetis to minimize net­cut. When the top­down 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 net­cut 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 We use hMetis partitioning package to minimize net­ cut 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 state­of­art university placement tools, TimberWolf v7.0 and the best known quadratic placement.

35 Results table TW 7.0 Quadratic Ours TimeWLTimeWLTimeWLCircuit 960.95370.872210.99Prim1 5543.661523.7212523.72Prm2 7341.842841.7821641.88 Biomed 352514.48128314.6925214.34Ind2 428744.70160545.1876644.67Ind3 50945.1517414.91130186.13Avqs 56325.2120315.38155976.81Avql

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 leading­edge 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.


Download ppt "A Snap-On Placement Tool Israel Waldman. Introduction."

Similar presentations


Ads by Google