Zero skew clock routing
Download
1 / 28

Zero Skew Clock Routing - PowerPoint PPT Presentation

Zero Skew Clock Routing ECE 556 Project Proposal John Thompson Kurt Ting Simon Wong Overview Problem definition Nearest neighbor Zero-skew tree construction Algorithm Benchmarks Problem Definition

Related searches for Zero Skew Clock Routing

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha

Download Presentation

Zero Skew Clock Routing

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Zero Skew Clock Routing

ECE 556 Project Proposal

John Thompson

Kurt Ting

Simon Wong


Overview

  • Problem definition

  • Nearest neighbor

  • Zero-skew tree construction

  • Algorithm

  • Benchmarks


Problem Definition

  • Given a set S of sink locations, and given a connection topology G, construct a zero skew clock tree T(S) with topology G and having minimum cost…


Nearest Neighbor

  • Use Delaunay Triangulation to find the pair of points with shortest separating distance.

  • These are the points that will be connected next…


Delaunay Triangulation

  • A Delaunay triangulation of a vertex set is a triangulation of the vertex set with the property that no vertex in the vertex set falls in the interior of the circumcircle (circle that passes through all three vertices) of any triangle in the triangulation.


Original vertex set

Delaunay Triangulation

Delaunay Triangulation


Delaunay Triagulation

  • Dual of Voronoi Diagram


Voronoi Diagram

  • N is the set of all sites S.

  • The Voronoi polygon vor(S) of a site SN is defined to be the region consisting of the points in Rd whose nearest neighbor in N is S.

  • Voronoi Diagram is the set of all vor(S).

Vor(S)


Construction of Vonoroi Diagram

  • Partition N into subsets N1, N2 of equal sizes by median x-coordinates


Construction of Vonoroi Diagram

  • Construct Vor(N1) and Vor(N2) recursively


Construction of Vonoroi Diagram

  • Construct Vor(N1) and Vor(N2) recursively


Construction of Vonoroi Diagram

  • Construct dividing chain


Construction of Vonoroi Diagram

  • Discard all edges of Vor(N2) that lie to the left of dividing line, and the same for Vor(N1)

  • The result is Vor(N) is the Voronoi Diagram of the entire set


Approximation of Manhattan Segments

  • Use n points on a Manhattan Segment to represent it in Delaunay Triagulation


Zero-Skew Tree Construction

  • Use a clustering-based optimization algorithm

  • Algorithm steps

    • Find center

    • Embedding

    • Local Embedding


CL Find Center

  • Step 1:

    • K := S

  • Step 2:

    • Stop once the root node has been reached. Otherwise, construct the nearest-neighbor graph G(K,E) on K, and sort edges in E by their weights in non-decreasing order.

  • Step 3:

    • Take the smallest weight edge (v1, v2) from E, and delete the edge from E. Calculate segment for v from v1, v2. Delete v1, v2 from K, add v to K. If the capacitance of a subtree becomes too large, insert a buffer…


CL Find Center

Pick K pairs of Near Neighbor for Manhattan Segment Calculation


Calculating Manhattan Segments

  • Three cases

    • From two points

    • From a point and a segment

    • From two segments

  • The general case is from two segments


Manhattan Segment Construction from Two Parallel Manhattan Segments


Manhattan Segment Construction from Two Perpendicular Manhattan Segments


Merging Segments

Segments after merging

Manhattan Segments after Find Center


Simple Buffer Insertion Heuristic


Embedding

  • Step 1:

    • Determine the center vc on the segment for vc by selecting the nearest point to the root vr. Route from vr to vc.

  • Step 2:

    • Local embedding on vc…


Embedding

VR

VC

Manhattan Segments after Find Center

Determine Center Vc From Vr


Local Embedding

  • Step 1:

    • If v has no child, return…

  • Step 2:

    • Let v1 and v2 be children of v. Then determine the point vi on the segment for vi so as to satisfy the zero-skew merge equations. Route from v to vi…

  • Step 3:

    • Perform local embedding on v1 and v2…


Embedding

VR

VR

VC

Local Embedding for VC & remaining segments

Final Routing Tree


Benchmarks

  • UCLA MCNC clock benchmark 1.0 suite

    • Originally from Jackson’s (et al.) “Clock routing for high performance ICs” paper…

  • UCLA IBM clock benchmark 1.0 suite

    • Originally R. S. Tsay’s benchmarks used in his “Exact zero skew” paper…

  • UCLA ISCAS clock benchmark 1.0


References

  • Masato Edahiro; “A Clustering-Based Optimization Algorithm in Zero-Skew Routings”; 1993

  • Ting-Hai Chao, Yu-Chin Hsu, and Jan-Ming Ho; “Zero Skew Clock Net Routing”; 1992

  • Ting-Hai Chao, Yu-Chin Hsu, Jan-Ming Ho, and Kenneth D. Boese; “Zero Skew Clock Routing with Minimum Wirelength”; 1992

  • Yu Chen, Andrew B. Kahng, Gang Qu, and Alexander Zelikovsky; “The Associative-Skew Clock Routing Problem”; 1999


ad
  • Login