cross link insertion for improving tolerance to
play

Cross Link Insertion for Improving Tolerance to Variations in Clock - PowerPoint PPT Presentation

Cross Link Insertion for Improving Tolerance to Variations in Clock Network Synthesis Tarun Mittal Cheng-Kok Koh School of Electrical and Computer Engineering Purdue University Presentation Flow Introduction Comparison of link


  1. Cross Link Insertion for Improving Tolerance to Variations in Clock Network Synthesis Tarun Mittal Cheng-Kok Koh School of Electrical and Computer Engineering Purdue University

  2. Presentation Flow Introduction  Comparison of link insertion schemes  Clock Network Synthesis  Experimental Results  Conclusions and Future Work 

  3. Insertion of Cross link Current approach to Clock Network Synthesis  Clock Trees  - Shorter Wiring - Unique path from source to sinks - More susceptible to process variations

  4. Insertion of Cross link Current approach to Clock Network Synthesis  Clock Trees  - Shorter Wiring - Unique path from source to sinks - More susceptible to process variations Clock Mesh  - Higher wiring cost - Many paths from source to sinks - More robust to process variations

  5. Insertion of Cross link Current approach to Clock Network Synthesis  Clock Trees  - Shorter Wiring - Unique path from source to sinks - More susceptible to process variations Clock Mesh  - Higher wiring cost - Many paths from source to sinks - More robust to process variations Cross link form a compromise between  clock trees and clock meshes

  6. Effect of cross link insertion Change in skew between source nodes u and v due to cross link addition T q u,v = α q u,v + αβ where q p q u,v =skew after link addition crosslink q u,v =skew before link addition T a v u T i l T j T b

  7. Effect of cross link insertion Change in skew between source nodes u and v due to cross link addition T q u,v = α q u,v + αβ R loop where q p q u,v =skew after link addition q u,v =skew before link addition T a v u α=R l /R loop R l T b

  8. Effect of cross link insertion Change in skew between source nodes u and v due to cross link addition T q u,v = α q u,v + αβ R u,u − R v,v where q q u,v =skew after link addition p q u,v =skew before link addition T a v u α=R l /R loop C l T b β=Cl/2(R u,u -R v,v )

  9. Comparison of Link insertion schemes  Method 1: source p - Link l 1 is inserted between two sinks u and v buf i buf j l i l j - This method of link insertion is l 1 used in [Rajaram-Hu, ISPD'05] r i r j u v T i T j Method 1

  10. Comparison of Link insertion schemes  Method 1: source p - Link l 1 is inserted between two sinks u and v buf i buf j l i l j - This method of link insertion is l 1 used in [Rajaram-Hu, ISPD'05] r i r j u v  Method 2: T i T j Method 1 - Link l 2 is inserted between two higher level internal nodes u and v source p - This method of link insertion is l 2 used in our approach buf i buf j l i l j v u r i v , r j u , T i T j Method 2

  11. Comparison of Link insertion schemes  Method 1: source p - Link l 1 is inserted between two sinks u and v buf i buf j l i l j - This method of link insertion is l 1 used in [Rajaram-Hu, ISPD'05] r i r j u v  Method 2: T i T j Method 1 - Link l 2 is inserted between two higher level internal nodes u and v source p - This method of link insertion is l 2 used in our approach buf i buf j l i l j  l 2 << l 1 satisfies α 2 <α 1 & β 2 <β 1 v u r i v , r j u , T i T j Method 2

  12. Effect of cross link on sink delays

  13. Sinks are in the same subtree source Method 1:  T - m and n have different path lengths to the end point of the q cross link p buf i - skew variability depends upon T a locality of sink node to the end crosslink r i r j point of the cross link T b T i u v m n Method 1

  14. Sinks are in the same subtree source Method 1:  T - m and n have different path lengths to the end point of the q cross link p buf i - skew variability depends upon T a locality of sink node to the end crosslink r i r j point of the cross link T b T i u v m n Method 1 source Method 2:  - m and n have nearly same path T lengths to the end point of cross q link p buf i buf j crosslink - skew variability is same for the T a v u sink nodes l r i r j T b T j T i u' v' m n Method 2

  15. Measured skew variability for both methods Range is 0 . 75ps Range is 0 . 2ps Range is 0 . 4ps Range is 0 . 06ps

  16. Sinks are in different sub-trees connected by the cross link source Method 1:  T - Different delays for sinks within a sub-tree q p - Non uniform correlation between buf i the sink pairs m and n crosslink r i T a r j T b T i m n Method 1

  17. Sinks are in different sub-trees connected by the cross link source Method 1:  T - Different delays for sinks within a sub-tree q p - Non uniform correlation between buf i the sink pairs m and n crosslink r i T a r j T b T i m n Method 1 Method 2:  source - Same delays for sinks within a sub-tree T - Uniform correlation between all q sink pairs m and n p buf i crosslink buf j T a v u l r i r j T b T j T i n m Method 2

  18. Sinks are in two disjoint sub-trees source No predictable correlation  between delays of sinks m and n due to no overlap T path q Both Method 1 and p  Method 2 are equally buf i buf j crosslink ineffective in this T a v u situation. l r i r j T b T j T i n m

  19. Clock Network Synthesis Our clock network synthesis is based on the usage  of Method 2 for cross link insertion. Problem formulation is based on ISPD'10 High  performance Clock Network Synthesis contest. Our approach to clock network synthesis consists of  3 main steps - Merging - Buffer Insertion - Link Insertion

  20. Problem Formulation Given: Sinks, Blockages and clock source location  Objective: Generate a clock network T that  connects clock source to the sinks. Constraints:  - All sink pairs with distance between them less than user specified distance are called local sink pairs. - All local sink pairs should satisfy Local clock skew constraint (LCS). - Slew at any point should be less than predefined limit S. - Buffers should not be placed in the blockages

  21. Merging General framework of Clock network synthesis is  based on the Deferred-Merge embedding approach A = Merge  s 1 ,s 2  s 2 s 1 B = Merge  s 3 ,s 4  s 3 s 0 s 4

  22. Merging General framework of Clock network synthesis is  based on the Deferred-Merge embedding approach A = Merge  s 1 ,s 2  s 2 C = Merge  A, B  s 1 B = Merge  s 3 ,s 4  s 3 s 0 s 4

  23. Merging General framework of Clock network synthesis is  based on the Deferred-Merge embedding approach A = Merge  s 1 ,s 2  s 2 C = Merge  A, B  s 1 B = Merge  s 3 ,s 4  s 3 s 0 s 4

  24. Merging General framework of Clock network synthesis is  based on the Deferred-Merge embedding approach A = Merge  s 1 ,s 2  s 2 C = Merge  A, B  s 1 B = Merge  s 3 ,s 4  s 3 s 0 s 4

  25. Merging In bottom-up phase clock tree is constructed  iteratively. locked testbuffer Slew buf i buf j violation p r i l i l j T i T j r i r j T i T j p No slew r i r j violation T i T j

  26. Buffer Insertion Slew constraints results in  the buffer insertion in clock tree. Buffers are inserted on the  stem wires. mr buf i NGSPICE simulations are used  buf i to compute the length of ms r i stem wire. r i Each buffer buf i has a l i  merging region mr bufi T i associated with it.

  27. Buffer Insertion Slew constraints results in  the buffer insertion in clock tree. blockage Buffers are inserted on the  stem wires. mr buf i NGSPICE simulations are used  buf i to compute the length of ms r i stem wire. r i Each buffer buf i has a l i  merging region mr bufi T i associated with it. Blockage avoidance is  considered

  28. Link Insertion buf i buf j crosslink v l i u l j l v l u l min r i r j T i T j

  29. Link Insertion buf i buf j crosslink l v v Step 1 l i u l min l j ms r j l v l u l min r i r j ms r i l u T i T j

  30. Link Insertion buf i buf j crosslink l v v Step 1 l i u l min l j ms r j l v l u l min r i r j ms r i l u T i T j l v +l min

  31. Link Insertion buf i buf j crosslink l v v Step 1 l i u l min l j ms r j l v l u ms u l min r i r j ms r i ms v l u T i T j l v +l min

  32. Link Insertion buf i buf j crosslink l v v Step 1 l i u l min l j ms r j l v l u ms u l min r i r j ms r i ms v l u T i T j l v +l min l j − l v ms v l i − l u Step 2 ms u buf min

  33. Link Insertion buf i buf j crosslink l v v Step 1 l i u l min l j ms r j l v l u ms u l min r i r j ms r i ms v l u T i T j l v +l min l j − l v ms v l i − l u Step 2 l j − l v +buf min ms u buf min

  34. Link Insertion buf i buf j crosslink l v v Step 1 l i u l min l j ms r j l v l u ms u l min r i r j ms r i ms v l u T i T j l v +l min l j − l v ms v buf j loc l i − l u buf i loc Step 2 l j − l v +buf min ms u buf min

  35. Merits of our design flow Our link insertion flow allows us to control the link ● length. Inserting link below the buffer helps in reducing the ● variation effects of buffer as compared to inserting above it. Cross link maximizes the reduction of the skew ● variability for the sinks in the same sub-tree Cross link improves the correlation of the sink delays ● in the two sub-trees that are connected by the cross link .

Recommend


More recommend