Zero Skew Clock Routing

730 Views

Download Presentation
## Zero Skew Clock Routing

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

**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 SN 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**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