Download presentation
Presentation is loading. Please wait.
Published byAlvaro Gedney Modified over 9 years ago
1
A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs By Sabyasachi Das (Intel Corporation) Sunil P. Khatri (Univ. of Colorado, Boulder)
2
2 Outline MotivationMotivation Proposed approachProposed approach –Extracting Net-Clusters –Selecting a representative bit-slice –Routing same-bit and cross-bit nets –Propagating the routes Advantages of our approachAdvantages of our approach Experimental resultsExperimental results Conclusions & Future WorkConclusions & Future Work
3
3 Datapath Designs Datapath Designs are characterized by unique regularity present across bit-slicesDatapath Designs are characterized by unique regularity present across bit-slices –One of the most critical parts in any circuit –Most commonly found in Microprocessor, DSP, graphic ICs. Effective use of this regularity is crucial for efficient design of datapathEffective use of this regularity is crucial for efficient design of datapath –Datapath placement techniques are available –Not many results are available on datapath routing
4
4 Regularity in Datapath Circuits An important task is to efficiently route all the nets by using the regularity inherent in datapath circuits
5
5 Overall Routing Flow
6
6 Net-Cluster Extraction Net-cluster is a collection of nets (spread over multiple bit-slices), in which all nets have similar connections.Net-cluster is a collection of nets (spread over multiple bit-slices), in which all nets have similar connections. Different algorithms to extract net-clusters:Different algorithms to extract net-clusters: –Footprint-driven clustering –Instance-driven clustering –Cluster-merging
7
7 Footprint-driven Clustering Footprints are of two types:Footprints are of two types: –Global footprint contains the pin-names and master-cells (of connecting instances) names. –Detailed footprint contains the instance names and the net-name. This clustering technique has two steps:This clustering technique has two steps: 1.Groups are created from global footprint information. 2.By using Detailed footprint in each Group, net- clusters are obtained.
8
8 Footprint-driven Clustering 1.After Global Footprint, two Groups are obtained: G1 = {LB[3:0], SB[3:0]} G2 = {SM[3:0]} 2.After Detailed Footprint, three net-clusters are obtained: –From G1: NC1 = {LB[3:0]} NC2 = {SB[3:0]} –From G2: NC3 = {SM[3:0]}
9
9 Instance-driven Clustering Uses the location of connecting pins (does not need the uniform naming scheme).Uses the location of connecting pins (does not need the uniform naming scheme). After instance-clustering, two net-clusters are obtained (from same Group):After instance-clustering, two net-clusters are obtained (from same Group): NC1 = {AB, CD, EF, GH} NC2 = {KL, MN, RS, TV}
10
10 Cluster Merging Multiple non-full clusters are merged.Multiple non-full clusters are merged. FDC found 3 clusters:FDC found 3 clusters: NC1 = {LB[3:0]} NC2 = {SM[1:0]} NC3 = {SB[3:0]} IDC found 1 cluster:IDC found 1 cluster: NC4 = {ABC, DEF} Cluster merging technique merged NC2 and NC4Cluster merging technique merged NC2 and NC4 NC-New = {ABC, DEF, SM[1], SM[0]}
11
11 Selecting Representative Bit-Slice We conceptually extend datapath to have an infinite number of bit-slices.We conceptually extend datapath to have an infinite number of bit-slices. Then, any slice can be chosen as representative bit-slice for routing.Then, any slice can be chosen as representative bit-slice for routing. While routing, we need to take care of:While routing, we need to take care of: –Same-bit nets –Backward cross-bit nets –Forward cross-bit nets
12
12 Routing Nets in Representative Bit-Slice Our routing approach is a combination of pattern- based routing and maze routingOur routing approach is a combination of pattern- based routing and maze routing We call our routing as strap-based routing, where a strap is defined as a straight segment, which can be vertical or horizontal.We call our routing as strap-based routing, where a strap is defined as a straight segment, which can be vertical or horizontal. Our router uses minimal memory, because it loads the design data of only representative bit- slice.Our router uses minimal memory, because it loads the design data of only representative bit- slice.
13
13 Routing Nets in Representative Bit-Slice The router routes nets in a sequential manner:The router routes nets in a sequential manner: – The nets connected to topmost (Y-wise) pins are routed first. – Long nets are given preference. Router tries to find direct-routes (only vertical or only horizontal strap or VTH/HTV strap) for nets.Router tries to find direct-routes (only vertical or only horizontal strap or VTH/HTV strap) for nets. In case of conflict, rip-up and re-route technique is used.In case of conflict, rip-up and re-route technique is used. If strap-based router cannot find a route, maze router is used.If strap-based router cannot find a route, maze router is used.
14
14 Routing Cross-Bit Nets We model a single cross-bit net (spread over multiple bit-slices), as a combination of multiple smaller sub-nets, each confined within a single bit-slice.We model a single cross-bit net (spread over multiple bit-slices), as a combination of multiple smaller sub-nets, each confined within a single bit-slice. We virtually instantiate all those sub-nets into the representative bit-slice.We virtually instantiate all those sub-nets into the representative bit-slice. If maximum backward/forward connectivity is k, then we need to find k different routes (usually, value of k is not very high).If maximum backward/forward connectivity is k, then we need to find k different routes (usually, value of k is not very high).
15
15 Propagating the Routes After routing nets in representative bit-slice, similar routes are propagated to other nets in same net-cluster.After routing nets in representative bit-slice, similar routes are propagated to other nets in same net-cluster. Following two cases are handled separately:Following two cases are handled separately: –For same-bit nets: Routes are propagated identically –For cross-bit nets: If maximum degree of forward/backward connectivity is p, we find p different routes for that net & propagate them accordingly to the correct bit-slice’s net.
16
16 Advantages of Our Approach Speed of Routing: Only a portion of nets are routed, making it really faster.Speed of Routing: Only a portion of nets are routed, making it really faster. Easy Incremental Routing: Rip-up all the routes for a given net-cluster and again route them identically. This can be done multiple times.Easy Incremental Routing: Rip-up all the routes for a given net-cluster and again route them identically. This can be done multiple times. Predictable Routes: Wiring parasitics are similar for different nets in a net-cluster. So, timing estimation is also similar.Predictable Routes: Wiring parasitics are similar for different nets in a net-cluster. So, timing estimation is also similar. Better Debuggability & Timing convergence: Easy to find and fix poorly routed nets.Better Debuggability & Timing convergence: Easy to find and fix poorly routed nets.
17
17 Experimental Results (Circuits Used) Circuit # Instance # Connections # Bits Industry-11056550432Industry-223681267232 Industry-346722918464 Industry-462084812864 These four industrial datapath designs are used These four industrial datapath designs are used
18
18 Experimental Results (run-time) Circuit Ind. Router Our Router Ratio Industry-170120.17Industry-2145260.18 Industry-3264360.14 Industry-4394420.11 Average0.15 Our router is at least 7X faster. Our router is at least 7X faster.
19
19 Experimental Results (wire-length) Circuit Ind. Router Our Router % Improvement Industry-147458467901.41Industry-29745399476-2.07 Industry-3276456282569-2.21 Industry-45896795645684.25 Average0.35 Average gain of our method is minimal. Average gain of our method is minimal.
20
20 Experimental Results (via-count) Circuit Ind. Router Our Router % Improvement Industry-16856567817.18Industry-2258762233613.68 Industry-339568394520.28 Industry-444568429763.57 Average8.68 Less number of vias are used because of strap-based nature of our router. Less number of vias are used because of strap-based nature of our router.
21
21 Conclusions & Future Work Regular routing technique is very useful for fast automated datapath design.Regular routing technique is very useful for fast automated datapath design. In future, we plan to focus onIn future, we plan to focus on –Crosstalk issues in datapath routing –Handling irregular connectivity
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.