Routing 32 34

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: