280 likes | 1.14k Views
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
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