cad of vlsi systems intro cntd 4.pdf

Upload: altisin

Post on 14-Apr-2018

244 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    1/27

    CAD of VLSI Systems

    ntro uct on ont ..

    Virendra Sin hIndian Institute of Science

    Ban [email protected]

    E0-285: CAD of VLSI Systems

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    2/27

    CAD of VLSI Systems

    z Design of VLSI Systemsz Com lex s stem

    z Need systematic methodology

    z Can be automated

    z ou an e very arge es gns

    Aug 17, 2010 E0-285@SERC 2

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    3/27

    Design Domains (Y - Chart)

    e ava ora oma n ruc ura oma n

    System

    Al orithms Processors

    Reg. Transfers

    Logic

    ALU, RAM, ..

    Gates, FFs, ..

    Transistor Layout

    Cell Layout

    Module Layout

    Floorplan

    Aug 17, 2010 E0-285@SERC 3

    Physical Domain

    a s ,

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    4/27

    Algorithms

    z ost y ntracta e pro ems

    z Exact Algorithms

    z Branch and Bound

    z Dynamic Programmingz Greedy Algorithms

    z Soft computing techniques

    Ant colony optimization Tabu search etc..

    Aug 17, 2010 E0-285@SERC 4

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    5/27

    Algorithms

    z

    A Graph G(V, E) is a pair (V, E), where V is a setand E is a relation on V

    -

    vertices

    z Undirected Graph edges are unordered pairs

    Aug 17, 2010 E0-285@SERC 5

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    6/27

    rc ec ura yn es s

    Computation: Differential Equation Solver

    xl = x + dx

    ul = u 3*x*u*dx 3* *dx

    c = xl < a

    Data Flow Graph (DFG): represent operation and data

    Aug 17, 2010 E0-285@SERC 6

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    7/27

    a a ow rap

    1 2

    x

    3

    udx

    3 y

    u dx x dx

    * * +6 8 10

    dx ya

    xl

    * +

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    8/27

    Graph Representation

    1 2a

    1 2 3 4

    1 0 1 1 1

    4 3

    bed 2 0 0 1 0

    3 0 0 0 1

    4 0 0 0 0

    Aug 17, 2010 E0-285@SERC 8

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    9/27

    Graph Representation

    1 2a

    2 3 41

    4 3

    bed

    32

    43

    4

    Aug 17, 2010 E0-285@SERC 9

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    10/27

    Graph Algorithms

    Shortest Path Algorithms Longest Path Algorithms

    Traveling Salesman Problem

    ax ma ques

    Graph Colouring

    Vertex Covering

    Aug 17, 2010 E0-285@SERC 10

    n mum pann ng ree

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    11/27

    Graph Algorithms

    z

    Mostly intractable problemsz Approximate algorithms

    z ranc an oun

    z

    Dynamic Programming

    z Soft computing techniques Genetic Al orithms Ant colony optimization Tabu search etc..

    Aug 17, 2010 E0-285@SERC 11

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    12/27

    Graph Algorithms

    z Shortest Path algorithmsz Di kstras al orithm

    110 100

    Greedy algorithm

    Make local decision reedil

    52

    Gives shortest path from asource node 3 420

    60

    Aug 17, 2010 E0-285@SERC 12

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    13/27

    Dijkstras Algorithms

    1Iter. S V-S w D[2] D[3] D[4] D[5]

    52

    30

    , , , -

    1 {1,2} {3,4,5} 2 10 60 30 100

    5010

    60 2 {1,2,4} {3,5} 4 10 50 30 90

    20 3 {1,2,4,3} {5} 3 10 50 30 60

    4 {1,2,4,3,5} 5 10 50 30 60

    Aug 17, 2010 E0-285@SERC 13

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    14/27

    Dijkstras Algorithms

    z Begin

    z S = {1}52

    10 10030

    z or = o n o

    D[i] = C [1,i] initializez = - 3 4

    10 60

    Choose a vertex w in V-S s.t. D[w] is minimum Add w to S

    or eac ver ex v n - o D[v] = Min{D[v], D[w]+C[w,v]}

    z end

    Aug 17, 2010 E0-285@SERC 14

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    15/27

    Floyds Algorithms

    zAll Pair Shortest Path algorithmsz Flo ds al orithm

    Make local decision and refine it later

    Gives shortest ath for all airs

    1 2 32

    3

    Aug 17, 2010 E0-285@SERC 15

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    16/27

    Floyds Algorithms

    1 2 322

    3

    5

    1 2 3

    1 0 8 5

    1

    2

    0 8 5

    3 0 8

    3 2 0 3 2 0

    Aug 17, 2010 E0-285@SERC 16

    A0[i,j] A 1[i,j]

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    17/27

    Floyds Algorithms

    1 2 322

    3

    5

    1 2 3

    1 0 8 5 1

    2

    0 7 5

    3 0 8

    3 5 2 0 3 5 2 0

    Aug 17, 2010 E0-285@SERC 17

    A2[i,j] A 3[i,j]

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    18/27

    Floyds Algorithmsz Be in

    z S = {1}z For I = 2 to n do 1 2 3

    2

    2

    3

    A[I,j] = C [i,j] initializez

    For I = 1 to n do

    5

    ,

    z For k = 1 to n-1 do begin

    For i = 1 to n do

    For j = 1 to n do If A[I,k]+A[k,j] < A[I,j] then A[I,j] = A[I,k]+A[k,j] =

    Aug 17, 2010 E0-285@SERC 18

    ,

    z end

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    19/27

    Spanning Tree

    z ree ree a connec s a e ver ces

    z Cost of a spanning tree is sum of edges

    z Minimum Spanning Tree (MST)

    z Prims AlgorithmGreedy algoritthm

    Start from an intial node U = {1}

    rows , one e ge a a meAt each step, it finds a shortest edge (u,v) that

    connects U and V-U and adds v to V-U from U

    Aug 17, 2010 E0-285@SERC 19

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    20/27

    Prims Algorithm

    1 1

    423

    15 5 42

    3

    15

    5 6

    3

    6

    2 2

    5 6

    3

    Aug 17, 2010 E0-285@SERC 20

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    21/27

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    22/27

    Kruskals Algorithm

    z Start with a graph t = (V,) only verticesz

    z As algorithm progresses,

    Have collection of connected componentsz To build progressively larger connected

    component

    Examine edges for E in order of increasing cost If the edge connects two vertices in two differentconnected component, tthen add edge to T

    Aug 17, 2010 E0-285@SERC 22

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    23/27

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    24/27

    Vertex Covering Problem

    z Vertex Covering of an undirected graph G

    is a subset of the vertices s.t. each edge in

    as a eas one e ge n a su se

    z Heuristic Select vertex with largest degree Deletion of a vertex corresponds to the removal

    of vertex itself and all edges incident to it

    Aug 17, 2010 E0-285@SERC 24

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    25/27

    Vertex Covering Problem

    1 2 3 4 5

    1 2 3 4 5

    1 2 1 2

    Aug 17, 2010 E0-285@SERC 25

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    26/27

    Graph Colouring Problem

    z rap co our ng pro em o an un rec egraph G is a labeling of vertices such that

    -same label

    number of colours

    scan of vertex set where vertices arecoloured one at a time

    Aug 17, 2010 E0-285@SERC 26

  • 7/27/2019 CAD of VLSI Systems intro cntd 4.pdf

    27/27

    Aug 17, 2010 E0-285@SERC 27