21
A Regularity-Driven Fast A Regularity-Driven Fast Gridless Detailed Router for Gridless Detailed Router for High Frequency Datapath Designs High Frequency Datapath Designs By By Sabyasachi Das (Intel Corporation) Sabyasachi Das (Intel Corporation) Sunil P. Khatri (Univ. of Colorado, Boulder) Sunil P. Khatri (Univ. of Colorado, Boulder)

A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

Embed Size (px)

DESCRIPTION

A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs. By Sabyasachi Das (Intel Corporation) Sunil P. Khatri (Univ. of Colorado, Boulder). Motivation Proposed approach Extracting Net-Clusters Selecting a representative bit-slice - PowerPoint PPT Presentation

Citation preview

Page 1: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

A Regularity-Driven Fast A Regularity-Driven Fast Gridless Detailed Router for Gridless Detailed Router for High Frequency Datapath High Frequency Datapath

DesignsDesigns

ByBy

Sabyasachi Das (Intel Corporation)Sabyasachi Das (Intel Corporation)

Sunil P. Khatri (Univ. of Colorado, Boulder)Sunil P. Khatri (Univ. of Colorado, Boulder)

Page 2: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

2

OutlineOutline

• Motivation Motivation

• Proposed approachProposed approach

– Extracting Net-ClustersExtracting Net-Clusters

– Selecting a representative bit-sliceSelecting a representative bit-slice

– Routing same-bit and cross-bit netsRouting same-bit and cross-bit nets

– Propagating the routesPropagating the routes

• Advantages of our approachAdvantages of our approach

• Experimental resultsExperimental results

• Conclusions & Future WorkConclusions & Future Work

Page 3: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

3

Datapath DesignsDatapath Designs

• Datapath Designs are characterized by unique Datapath Designs are characterized by unique regularityregularity present across bit-slices present across bit-slices– One of the most critical parts in any circuitOne of the most critical parts in any circuit

– Most commonly found in Microprocessor, DSP, Most commonly found in Microprocessor, DSP, graphic ICs.graphic ICs.

• Effective use of this regularity is crucial for Effective use of this regularity is crucial for efficient design of datapathefficient design of datapath– Datapath placement techniques are availableDatapath placement techniques are available

– Not many results are available on datapath routingNot many results are available on datapath routing

Page 4: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

4

Regularity in Datapath Regularity in Datapath CircuitsCircuits

An important task is to efficiently route all the nets by An important task is to efficiently route all the nets by using the regularity inherent in datapath circuitsusing the regularity inherent in datapath circuits

Page 5: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

5

Overall Routing FlowOverall Routing Flow

Page 6: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

6

Net-Cluster ExtractionNet-Cluster Extraction

• Net-cluster is a collection of nets (spread over Net-cluster is a collection of nets (spread over multiple bit-slices), in which all nets have multiple bit-slices), in which all nets have similarsimilar connections.connections.

• Different algorithms to extract net-clusters:Different algorithms to extract net-clusters:– Footprint-driven clusteringFootprint-driven clustering

– Instance-driven clusteringInstance-driven clustering

– Cluster-mergingCluster-merging

Page 7: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

7

Footprint-driven Footprint-driven ClusteringClustering

• Footprints are of two typesFootprints are of two types::– Global footprintGlobal footprint contains the pin-names and contains the pin-names and

master-cells (of connecting instances) names.master-cells (of connecting instances) names.

– Detailed footprintDetailed footprint contains the instance names contains the instance names and the net-name.and the net-name.

• This clustering technique has two steps:This clustering technique has two steps:1.1. GroupsGroups are created from global footprint are created from global footprint

information.information.

2.2. By using Detailed footprint in each Group, net-By using Detailed footprint in each Group, net-clusters are obtained.clusters are obtained.

Page 8: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

8

Footprint-driven Footprint-driven ClusteringClustering

1.1. After Global Footprint, After Global Footprint, two Groups are obtained:two Groups are obtained: G1 = {LB[3:0], SB[3:0]}G1 = {LB[3:0], SB[3:0]} G2 = {SM[3:0]}G2 = {SM[3:0]}

2.2. After Detailed Footprint, After Detailed Footprint, three net-clusters are three net-clusters are obtained:obtained:

– From G1:From G1: NC1 = {LB[3:0]}NC1 = {LB[3:0]} NC2 = {SB[3:0]}NC2 = {SB[3:0]}

– From G2:From G2: NC3 = {SM[3:0]}NC3 = {SM[3:0]}

Page 9: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

9

Instance-driven ClusteringInstance-driven Clustering

• Uses the location of Uses the location of connecting pins (does not connecting pins (does not need the uniform naming need the uniform naming scheme).scheme).

• After instance-clustering, After instance-clustering, two net-clusters are two net-clusters are obtained (from same obtained (from same Group):Group):

NC1 = {AB, CD, EF, GH}NC1 = {AB, CD, EF, GH} NC2 = {KL, MN, RS, TV}NC2 = {KL, MN, RS, TV}

Page 10: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

10

Cluster MergingCluster Merging

• Multiple Multiple non-fullnon-full clusters clusters are merged.are merged.

• FDC found 3 clusters:FDC found 3 clusters: NC1 = {LB[3:0]}NC1 = {LB[3:0]} NC2 = {SM[1:0]}NC2 = {SM[1:0]} NC3 = {SB[3:0]}NC3 = {SB[3:0]}

• IDC found 1 cluster:IDC found 1 cluster: NC4 = {ABC, DEF}NC4 = {ABC, DEF}

• Cluster merging technique Cluster merging technique merged NC2 and NC4merged NC2 and NC4

NC-New = {ABC, DEF, NC-New = {ABC, DEF,

SM[1], SM[1], SM[0]}SM[0]}

Page 11: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

11

Selecting Representative Bit-Selecting Representative Bit-SliceSlice

• We conceptually extend We conceptually extend datapath to have an infinite datapath to have an infinite number of bit-slices.number of bit-slices.

• Then, any slice can be Then, any slice can be chosen as representative chosen as representative bit-slice for routing.bit-slice for routing.

• While routing, we need to While routing, we need to take care of:take care of:

– Same-bit netsSame-bit nets

– Backward cross-bit netsBackward cross-bit nets

– Forward cross-bit netsForward cross-bit nets

Page 12: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

12

Routing Nets in Representative Routing Nets in Representative Bit-SliceBit-Slice

• Our routing approach is a combination of pattern-Our routing approach is a combination of pattern-based routing and maze routingbased routing and maze routing

• We call our routing as We call our routing as strap-basedstrap-based routing, where routing, where a strap is defined as a straight segment, which a strap is defined as a straight segment, which can be vertical or horizontal. can be vertical or horizontal.

• Our router uses minimal memory, because it Our router uses minimal memory, because it loads the design data of only representative bit-loads the design data of only representative bit-slice.slice.

Page 13: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

13

Routing Nets in Representative Routing Nets in Representative Bit-SliceBit-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 The nets connected to topmost (Y-wise) pins are

routed first.routed first.

– Long nets are given preference.Long nets are given preference.

• Router tries to find Router tries to find direct-routesdirect-routes (only vertical or (only vertical or only horizontal strap or VTH/HTV strap) for nets.only horizontal strap or VTH/HTV strap) for nets.

• In case of conflict, rip-up and re-route technique In case of conflict, rip-up and re-route technique is used.is used.

• If strap-based router cannot find a route, maze If strap-based router cannot find a route, maze router is used.router is used.

Page 14: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

14

Routing Cross-Bit NetsRouting Cross-Bit Nets

• We model a single cross-bit net (spread over We model a single cross-bit net (spread over multiple bit-slices), as a combination of multiple multiple bit-slices), as a combination of multiple smaller sub-nets, each confined within a single smaller sub-nets, each confined within a single bit-slice.bit-slice.

• We virtually instantiate all those sub-nets into the We virtually instantiate all those sub-nets into the representative bit-slice.representative bit-slice.

• If maximum backward/forward connectivity is k, If maximum backward/forward connectivity is k, then we need to find k different routes (usually, then we need to find k different routes (usually, value of k is not very high).value of k is not very high).

Page 15: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

15

Propagating the RoutesPropagating the Routes

• After routing nets in representative bit-slice, After routing nets in representative bit-slice, similar routes are propagated to other nets in similar routes are propagated to other nets in same net-cluster.same net-cluster.

• Following two cases are handled separately:Following two cases are handled separately:– For same-bit nets: Routes are propagated For same-bit nets: Routes are propagated

identicallyidentically

– For cross-bit nets: If maximum degree of For cross-bit nets: If maximum degree of forward/backward connectivity is p, we find p forward/backward connectivity is p, we find p different routes for that net & propagate them different routes for that net & propagate them accordingly to the correct bit-slice’s net.accordingly to the correct bit-slice’s net.

Page 16: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

16

Advantages of Our Advantages of Our ApproachApproach

• Speed of RoutingSpeed of Routing: Only a portion of nets are : Only a portion of nets are routed, making it really faster.routed, making it really faster.

• Easy Incremental RoutingEasy Incremental Routing: Rip-up all the routes : Rip-up all the routes for a given net-cluster and again route for a given net-cluster and again route

them them identically. This can be done multiple identically. This can be done multiple times.times.

• Predictable RoutesPredictable Routes: Wiring parasitics are similar : Wiring parasitics are similar for different nets in a net-cluster. So, for different nets in a net-cluster. So,

timing timing estimation is also similar.estimation is also similar.

• Better Debuggability & Timing convergenceBetter Debuggability & Timing convergence: : Easy Easy to find and fix poorly routed nets.to find and fix poorly routed nets.

Page 17: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

17

Experimental Results (Circuits Experimental Results (Circuits Used)Used)

CircuitCircuit # Instance# Instance # Connections# Connections # Bits# Bits

Industry-1Industry-1 10561056 55045504 3232

Industry-2Industry-2 23682368 1267212672 3232

Industry-3Industry-3 46724672 2918429184 6464

Industry-4Industry-4 62086208 4812848128 6464

• These four industrial datapath designs are usedThese four industrial datapath designs are used

Page 18: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

18

Experimental Results (run-Experimental Results (run-time)time)

CircuitCircuit Ind. RouterInd. Router Our RouterOur Router RatioRatio

Industry-1Industry-1 7070 1212 0.170.17

Industry-2Industry-2 145145 2626 0.180.18

Industry-3Industry-3 264264 3636 0.140.14

Industry-4Industry-4 394394 4242 0.110.11

AverageAverage 0.150.15

• Our router is at least 7X faster.Our router is at least 7X faster.

Page 19: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

19

Experimental Results (wire-Experimental Results (wire-length)length)

CircuitCircuit Ind. RouterInd. Router Our RouterOur Router % Improvement% Improvement

Industry-1Industry-1 4745847458 4679046790 1.411.41

Industry-2Industry-2 9745397453 9947699476 -2.07-2.07

Industry-3Industry-3 276456276456 282569282569 -2.21-2.21

Industry-4Industry-4 589679589679 564568564568 4.254.25

AverageAverage 0.350.35

• Average gain of our method is minimal.Average gain of our method is minimal.

Page 20: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

20

Experimental Results (via-Experimental Results (via-count)count)

CircuitCircuit Ind. RouterInd. Router Our RouterOur Router % Improvement% Improvement

Industry-1Industry-1 68566856 56785678 17.1817.18

Industry-2Industry-2 2587625876 2233622336 13.6813.68

Industry-3Industry-3 3956839568 3945239452 0.280.28

Industry-4Industry-4 4456844568 4297642976 3.573.57

AverageAverage 8.688.68

• Less number of vias are used because of Less number of vias are used because of strap-based nature of our router.strap-based nature of our router.

Page 21: A Regularity-Driven Fast Gridless Detailed Router for High Frequency Datapath Designs

21

Conclusions & Future Conclusions & Future WorkWork

• Regular routing technique is very useful for fast Regular routing technique is very useful for fast automated datapath design.automated datapath design.

• In future, we plan to focus onIn future, we plan to focus on– Crosstalk issues in datapath routingCrosstalk issues in datapath routing

– Handling irregular connectivityHandling irregular connectivity