Download presentation
Presentation is loading. Please wait.
1
Multi-Layer Channel Routing Complexity and Algorithms
Rajat K. Pal
2
Multi-Layer Channel Routing
Chapter 4 A General Framework for Track Assignment in Multi-Layer Channel Routing Presented By- Sumaya Kazary Std. ID:
3
TAH Basics The Algorithm TAH assigns intervals to tracks from top to bottom in the presence of Vertical constraints. In the first iteration, the algorithm assigns a set of non-overlapping intervals to the top most track. Then it delete the nets corresponding to these intervals from the channel. In the second iteration, it assigns a set of non-overlapping intervals to the second track. The iterative process continues till all the nets are assigned to tracks in the channel.
4
Some Notations & a few definitions
dmax→channel density. vmax→the length of the longest path in the VCG. idvi→ indegree of vertex vi in the VCG. dpvi →length of the longest path from a source to vi. htvi → length of the longest path from a sink vertex to vi. spvi →span of a net ni. zdvi→ zonal density of a vertex v . 7 6 5 2 4 1 3 I2 I7 I5 I1 I3 I4 I6
5
For the following channel TOP: 3 1 3 0 0 5 6 0 3 0 0
BOTTOM: The routing solution using TAH framework for VH routing is 3 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6
6
The TAH Algorithm
8
Density of this channel is dmax = 4.
3 1 3 5 6 3 I2 I7 I5 I1 I3 I4 I6 1 2 4 2 4 1 5 7 7 6 The Channel contains total 7 nets. Density of this channel is dmax = 4.
9
7 6 5 2 4 1 3 1 2 3 4 5 7 6 VCG HNCG(G*) Vmax =4
10
In the TAH algorithm ,for each iteration, certain no
In the TAH algorithm ,for each iteration, certain no. of intervals are assigned in a track from top to bottom. In each iteration ,it computes a clique such that there is no overlapped interval is present & assign it to a track. At the beginning, it compares the channel density (dmax) and the longest path in the VCG(vmax). Two cases may arise:- dmax>vmax dmax≤vmax
11
Executing the Algorithm Steps: S1={3,6,7}
Iteration-1 As, dmax=vmax=4. So case II and S3={6} [As S3={vi| htvi=vmax}] Step E for vertex 6 < od6,1,sp6> is <1,1,4>. So , Step F limitvi=max(dmax,vmax)-htvi+1 wt:<f(t),ht,zd,sp> limit3=4-3+1=2>t .So,f(1)3=(1-1+1)÷(2-1+1)=1/2. limit6=4-4+1=1=t. So,f(1)6=1-1+1=1. limit7=4-1+1=4>t. So,f(1)7=(1-1+1)÷(4-1+1)=1/4. Now, ht3=3,ht6=4 ,ht7=1; zd3=4,zd6=3,zd7=3 and sp3=8,sp6=4, sp7=2 So, :<1/2,3,4,8> 6:<1,4,3,4> 7: <1/4,1,3,2> 7 6 5 2 4 1 3 C1={6}. So,C2={6}.
12
Step G In step E, span usage (spvi) by a net was maximized, now it is checked with minimizing, so the weights are <odvi, 1, -spvi>. In this case,6:<1, 1, -4> . So, again let’s pick C3 = {6}. Step H similar to step F, so, C4 = {6} So net 6 is assigned to track 1. Now, HNCG & VCG are rearranged excluding node 6 and its adjacent edges.
13
Density of this channel is dmax = 4.
3 1 3 5 6 3 I3 I1 I2 I7 I5 I4 1 2 4 2 4 1 5 7 7 6 Density of this channel is dmax = 4.
14
1 2 3 4 5 7 7 5 2 4 1 3 VCG HNCG(G*) Vmax =3
15
Executing the Algorithm Steps: S1={3,5,7}
Iteration-2 Now , dmax>vmax. So case I. and S2={1,2,3,4} Step A Now, S1 S2={3} for vertex 3 < cn3,1,sp3> is <1,1,8>. So , Step B limitvi=max(dmax,vmax)-htvi+1 wt:<f(t),zd,ht,sp> limit3=4-3+1=2=t .So,f(2)3=2-2+1=1. zd3=4, ht3=3, sp3=8 limit5=4-3+1=2=t. So,f(2)5=2-2+1=1. zd5=3, ht5=3, sp5=1 limit7=4-1+1=4>t. So,f(2)7=(2-1+1)÷(4-1+1)=1/2. zd7=2, ht7=1, sp7=2 So, 3:<1,4,3,8>; 5:<1,3,3,1> 7: <1/2,2,1,2> 7 5 2 4 1 3 C1={3}. So,C2={3}.
16
Step C In step A, span usage (spvi) by a net was maximized, now it is checked with minimizing, so the weights are <cnvi, 1, -spvi>. In this case,3:<1, 1, -8> . So, again let’s pick C3 = {3}. Step D Similar to step F, so, C4 = {3} So net 3 is assigned to track 2. Now, again HNCG & VCG are re-arranged excluding node 3 and its adjacent edges. And iteration 3 is proceed.
17
Density of this channel is dmax = 3.
1 3 5 6 3 I1 I2 I7 I5 I4 1 2 4 2 4 1 5 7 7 6 Density of this channel is dmax = 3.
18
Now again dmax=vmax i.e.,case II
1 2 4 5 7 7 5 2 4 1 VCG HNCG(G*) Vmax =3 Now again dmax=vmax i.e.,case II
19
Now the final routing solution using TAH framework for VH routing is
3 1 3 5 6 3 1 2 4 2 4 1 5 7 7 6
20
Time complexity For initial part ,time complexity--
To compute the HNCG & G* is O(n+e). To compute the VCG is O(n). To compute the span of every interval is O(n). htvi and dpvi is computed by 1 scan of VCG needs O(n). So,for initial part, it takes time O(n+e). Each iteration part takes O(n+e). If total track=k, then total time complexity of the algorithm is O(k(n+e)).
21
Thank You
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.