Download presentation
Presentation is loading. Please wait.
Published byLiani Agusalim Modified over 5 years ago
1
Optimal Non-Manhattan Bubble Sort Channel Router
Sean Pieper ECE556 Final Project
2
Non-Manhattan Routing
can use +/- 45 degree paths “X” routing requires one track and no extra columns No need for VCG or HCG Use Vertical and Horizontal Constraint Graphs (VCG and HCG) If VCG has a cycle, need to add extra columns and rows.
3
How to cash in: Constrain problem to two-terminal nets Each net crosses the channel Rename terminals so that top is numbered in order Bottom can now be viewed as a permutation of the top 58324 43258 12345 53412 At each track: swap adjacent wires that are out of order with respect to each other For N terminals, this router requires N columns and at most N tracks
4
Better idea: Sort Routing
Swap router only allows wires to move one column per track We have horizontal tracks available, so this is an artificial constraint Bubble sort will move tracks horizontally
5
Optimize it: At each new track, can sort left or right
Left sort moves tracks left rapidly, right sort moves tracks right Previous example would take 9 layers with only right sort Want to use optimal combination of left and right sort steps
6
Breadth first search: Ordering of left and right sorts does not matter: Full tree has redundant nodes Collapse redundant nodes to get DAG Remove redundant paths from DAG Order dependent tree DAG Vector of Vectors
7
Code flow: Parse input file: use hashtable to accelerate renaming of pins All leaves generated Expand main vector Expand Left sub-vectors Not sorted Perform one right sort step Perform one left sort step Check for sorted leaf Done When a sorted leaf is found, the number of left and right steps that generated it is returned. This uniquely identifies the sequence of intermediate routing steps Generate ASCII art of routing
8
Sample Output: | | | | | / / | | | | | | | | | | | | o---o | | | | | | | | 1 | | | | / / | | | | | | | | | | | | | | | | | | / / | \ / | | | | o---o | | o---o | \ | 2 | | | / / | | | / / | | / \ | | / / | | | | | | | | | | / | o o | | o---o | o---o | 3 / / / / | | | / / | | / / | | \ \ \ \ \ \ \ | | \ \ | \ \ | o o | o---o o---o 4 | \ \ \ \ \ \ \ | | \ \ | \ \
9
Performance Results:
10
Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.