Upload
neha-pachauri
View
224
Download
0
Embed Size (px)
Citation preview
7/30/2019 Routing 32 34
1/52
Dr.Abhijit RAsatiEEEDepartment,BITS,Pilani
7/30/2019 Routing 32 34
2/52
Routing:
7/30/2019 Routing 32 34
3/52
Routing problem:
Size Complexity:Shape Complexity: m ng omp ex y:
7/30/2019 Routing 32 34
4/52
Maze routing algorithm:
(1) Lee Algorithm:BFS: begins at root node and explores all neighboring nodes
2 Souk u 's Al orithm: Im rovement over basic Lee al orithm
(3) Hadlock's Algorithm: Improvement over basic Lee algorithm
7/30/2019 Routing 32 34
5/52
Routing Constraints
Number of routing layersArea minimization eome r ca
Timing
7/30/2019 Routing 32 34
6/52
Finding coarse grid capacity:
L=Number of layers
h=Height of channelW=Wire width
=
7/30/2019 Routing 32 34
7/52
Let,
L=2 h=18 W=3 S=3 then
channel capacity=(218)/(3+3)
7/30/2019 Routing 32 34
8/52
Global Routing for Gate Arrays:
Constraints:
Minimization of wire lengthsMinimization of path lengths
7/30/2019 Routing 32 34
9/52
Global routing for Standard Cell:
Global Routing used to-
Minimize channel heightdo not have predetermined capacity
Assi nment of feed-throu h
predetermined capacitiesHigh Performance (Minimize wire and path length)
7/30/2019 Routing 32 34
10/52
Lees Maze Algorithm:
Consider a sin le 2 oint net in a lane that ma contain obstaclesOne point source the other target
7/30/2019 Routing 32 34
11/52
Define a fine grid:
Grid overlaid on laneEach grid square is where one wire can crossSize of the grid squares is the minimum wire pitch
7/30/2019 Routing 32 34
12/52
Wave propagation Phase:
Be in at source, find cells at distance '1',Find cells at distance 2The ith wave front always contains all cells at Manhattan distance i
Propagate the wave till target cell also gets labeled.
7/30/2019 Routing 32 34
13/52
Backtracking Phase:
Go back along path in grid
7/30/2019 Routing 32 34
14/52
Reducing the number of bends?
7/30/2019 Routing 32 34
15/52
Length=10
7/30/2019 Routing 32 34
16/52
Note: In many practical situations the shortest path may not be more
.
Label clearance Phase:
7/30/2019 Routing 32 34
17/52
Running time is proportional to the number of cells searched in filling
.
Speed up of filling phase or wave propagation phase Lee algorithm can
e o a ne us ng:
Starting point selection.
Double fan out.
Framing: Artificial boundary
7/30/2019 Routing 32 34
18/52
Starting point selection:
Double fan out:
7/30/2019 Routing 32 34
19/52
Framing: Artificial boundary
The frame can be 10-20% larger than the bounding box containingS and T.
.
Total number of bits=12
7/30/2019 Routing 32 34
20/52
Ackers coding scheme:
Reduces the memory requirement.
Fillin se uences that reduce memor re uirement. a Se uence
1,2,3, 1,2,3. . . . (b) Sequence 1,1, 2,2, 1,1, 2,2 . . . .
7/30/2019 Routing 32 34
21/52
For sequence 1,2,3, 1,2,3. . . .:
{1, 2, 3, blocked, empty}= 3-bits
For se uence 1 1 2 2 1 1 2 2 . . . .:
{1, 2, blocked, empty}= 2-bits
, .
7/30/2019 Routing 32 34
22/52
Weighted Lee Algorithm:
7/30/2019 Routing 32 34
23/52
7/30/2019 Routing 32 34
24/52
7/30/2019 Routing 32 34
25/52
TerminalsTerminals
ViaVia
Upper boundaryUpper boundary
TracksTracks DoglegDogleg
Lower boundaryLower boundary
TrunksTrunks BranchesBranches
The splitting of horizontal segments of a net is called doglegging.
7/30/2019 Routing 32 34
26/52
Basic Left-Edge Algorithm (Unconstrained Left Edge Algorithm):
Segments of nets to be connected are sorted in the increasing order oftheir left end points from the left edge of the channel.
7/30/2019 Routing 32 34
27/52
Left edge Sequence: 3,1,2,4
7/30/2019 Routing 32 34
28/52
Sequence: 6,1,3,5,4,2
Trunk part of nets overlaps (cant be placed on some track).
7/30/2019 Routing 32 34
29/52
Left edge Sequence: 6,1,3,5,4,2
7/30/2019 Routing 32 34
30/52
Vertical constraint:
If a net i has a in at the to in a column then in on the
bottom of channel in the same column introduces an edge (i,j).
7/30/2019 Routing 32 34
31/52
Constrained Left Edge Algorithm:
Sequence: 6,1,3,5,4,2
Segments corresponding to a net can be placed in a track only if itsescen en s ave a rea y een ass gne .
7/30/2019 Routing 32 34
32/52
Left edge Sequence: 6,1,3,5,4,2
7/30/2019 Routing 32 34
33/52
Dogleg Router:
Eight different routing sequences are:
. op e o om r g . op e o om e
3. top right bottom right 4. top right bottom left5. bottom left top left 6. bottom left top right
7. bottom right top left 8. bottom right top right
t l ft b tt i ht
7/30/2019 Routing 32 34
34/52
top left bottom right
7/30/2019 Routing 32 34
35/52
Deutch Dogleg Algorithm:
7/30/2019 Routing 32 34
36/52
(a) Solution using constrained left edge algorithm:
a=
7/30/2019 Routing 32 34
37/52
(b) Solution using Deutch dogleg algorithm:
7/30/2019 Routing 32 34
38/52
o. of tracks without spliting = 4
No. of vias without spliting = 10No. of tracks with spliting = 3 =.
7/30/2019 Routing 32 34
39/52
7/30/2019 Routing 32 34
40/52
Standard cell Over the Cell Routing (OTC):
.The channels have almost disappeared giving rise to channel-lessstandard cell designs.
7/30/2019 Routing 32 34
41/52
Cell Models
Based on the locations of the terminals there are four major classes of
cell models :
Boundary Terminal Models (BTM)
The Center Terminal Models(CTM)The Middle Terminal Model MTMThe Target Based Cell Mode(TBC)
7/30/2019 Routing 32 34
42/52
Boundary Terminal Models (BTM):
7/30/2019 Routing 32 34
43/52
Centre Terminal Models (CTM):
Th Middl T i l M d l (MTM)
7/30/2019 Routing 32 34
44/52
The Middle Terminal Model (MTM):
7/30/2019 Routing 32 34
45/52
The Target Based Cell Model (TBC):
- - .
T l th ll t
7/30/2019 Routing 32 34
46/52
Two layer over the cell routers:
Following is example of OTC algorithm using CTM cell model.
7/30/2019 Routing 32 34
47/52
River routing:
.
7/30/2019 Routing 32 34
48/52
Pins are located along a boundary
7/30/2019 Routing 32 34
49/52
Pins are located along a boundary.
Starting terminal AssignmentNet orderingPath SearchingCorner Minimization
7/30/2019 Routing 32 34
50/52
Startin terminal Assi nment:
Net ordering:Path Searching:
Starting terminal Assignment:
7/30/2019 Routing 32 34
51/52
Starting terminal Assignment:
et ordering:
Switchbox Routing:
7/30/2019 Routing 32 34
52/52
Switchbox Routing: