210 likes | 386 Views
Graph Coloring. Vertex Coloring problem in VLSI routing. Share a track. Standard cells. channels. Share a track. Minimize channel width- assign horizontal Metal wires to tracks.. (min # of tracks = min channel width. Vertex Coloring problem in VLSI routing. Standard cells. 1. 2. 3.
E N D
Vertex Coloring problem in VLSI routing Share a track Standard cells channels Share a track Minimize channel width- assign horizontal Metal wires to tracks.. (min # of tracks = min channel width
Vertex Coloring problem in VLSI routing Standard cells 1 2 3 channels 4 5 Minimize channel width- assign horizontal Metal wires to tracks.. (min # of tracks = min channel width
Vertex=wire edge=overlapped wirescolor = track R 1 B R 4 2 5 B 3 G CHORDAL GRAPH
Vertex Coloring problem in register allocation Share a register channels TIME increasing Share a register Minimize # of registers: assign variable (lifetimes) to registers (min # of registers )
Clique paritioning: edges are connected if there is no conflict (no overlapping wires, no overlapping lifetimes) R 1 B R 4 2 5 B 3 G COMPLEMENT OF CHORDAL GRAPH IS COMPARABILITY GRAPH
Clique paritioning: example R 4 1 B R 2 5 B 3 G
Garey & Johnson Text • Instance: graph G=(V,E), positive integer K<=|V|. • Question: is G K-colorable ? • Solvable in polynomial time for K=2, NP-complete for K>=3. • General problem solvable in polynomial time for comparability graphs, chordal graphs, and others.
Also same for clique partitioning • Graph G=(V,E), K<=|V| • Question : can vertices of G be partitioned into k<=K disjoint sets V1, V2,…Vk such that for 1<=i<=k the subgraph induced by Vi is a complete graph?
In our application, our graphs are always chordal ! (in channel routing problem) a b c d a b d c ?
Register allocation in loopscoloring of a circular arc graphwhich is NP-complete a b d c ? c ? LOOP- variable c is defined in loop iteration i and used in the next loop iteration i+1 LOOP Time increasing
Channel routing is still a hard problem due to the vertical constraints Which we cannot accommodate in our graph theory formulation (which Only looks at horizontal constraints i.e. horizontal intervals) top down view
Berge’s Algorithm(contract-connect) for Vertex Coloring a Consider a,b c e a d b c c e e d b a d b
Consider a,b a c c e e d b d b a a c c e e d b d b a
Consider a,b a c c e e d b d b a be a c a e c e c c e d b a d b SMALLEST Complete graph d be d be a
Consider a,b be a a c e c e d b d be
B c R Ra ad G eb Ra Ge Bc Ge d b a c e Rd Gb d b