+ All Categories
Home > Documents > MIN-CUT PLACEMENT WITH TERMINAL...

MIN-CUT PLACEMENT WITH TERMINAL...

Date post: 30-Aug-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
13
MIN-CUT PLACEMENT WITH TERMINAL PROPAGATION - Mayura Oak - Melonia Mendonca
Transcript
Page 1: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

MIN-CUT PLACEMENT WITH TERMINAL PROPAGATION

- Mayura Oak- Melonia Mendonca

Page 2: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Objectives:

• Brief description

• Overview of Implementation

• Implementation issues

• Results

• Future scope

Page 3: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Brief Description

• Algorithm for placement of cells which targets wirelength reduction.

• Uses partitioning for performing placement• We implemented the KL Algorithm - swap

based• 3 Types of Partitioning:

a. Depth Firstb. Breadth First without terminal propagationc. Breadth First with terminal Propagation

Page 4: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Overview of Implementation

Recursion for Depth First Partitioning:• recursive calls to self by each partition

Queue for Breadth First Partitioning:• A queue is maintained to store data for each partition such as cells and

number of cells in that partition and whether the partition was horizontal orvertical

• Each finished partition is pushed in from the back of the queue and newpartition for subpartitioning is taken from the front of the queue. Theprevious partition is deleted from the queue.

A

A1A2

A2A11A12

A A1 A2 A2

A11

A12

Page 5: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Overview of Implementation

Adding Anchor nodes for Terminal Propagation:• The Anchor nodes were added in each partition which

represented the external connection to the cells in thatconnection.

• If node 'a' has connection to external cells b, c, d whichlie on the left side of the partition, then one anchor nodewill be added to left partition and weight of the edgeconnecting a and anchor node will be sum of theweights of the edges connecting a and b,c,d.

• These anchor nodes are always locked and thus can'tbe swapped into another partition by KL.

Page 6: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Implementation Issues

• We selected KL algorithm as the partitioning algorithm because ofsimplicity of implementation and as it gives better area balance. Butthe time complexity of KL is O(n^3), thus its run time increasesexponentially as the number of cells and number of partitions. Thusunfortunately we could not perform experiments on bigger circuitssuch as ibm01.hgr

• Initially a binary tree was maintained to store all the partitions performed, and to check which of them fall outside the window, the tree was traversed till it reaches the leaves. This implementation was complex. Instead we made an array which stores x & y co-ordinates and checked it against window size constraint which was also in terms of x & y to determine whether that cell lies outside the window.

Page 7: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Results

Page 8: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Results

libboard: A vector Graphics C++ Library used for plotting. Results for p2.hgr for 8x8 grid & 50% window size:

Without Terminal Propagation (WL = 13925) With Terminal Propagation(WL = 12698)

Page 9: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Results

Run Time Analysis:

fract.hgr

Page 10: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Analysis of varying window size as a percentage of room size.

Page 11: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Results

Summary:

Page 12: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Future Scope

• Reduce run time by further optimizing thecode

• Keep bound on number of externalconnections that are considered for terminalpropagation so that they don't overpowerinternal connections

Page 13: MIN-CUT PLACEMENT WITH TERMINAL PROPAGATIONusers.ece.gatech.edu/limsk/course/ece6133/project/mincut... · 2013. 9. 29. · Brief Description • Algorithm for placement of cells which

Thank you!

Questions?


Recommended