Presentation is loading. Please wait.

Presentation is loading. Please wait.

3.3 Multi-Layer V i+1 H i Channel Routing Presented by Zulfiquer Md. Mizanur Rhaman Student # 100705008p.

Similar presentations


Presentation on theme: "3.3 Multi-Layer V i+1 H i Channel Routing Presented by Zulfiquer Md. Mizanur Rhaman Student # 100705008p."— Presentation transcript:

1 3.3 Multi-Layer V i+1 H i Channel Routing Presented by Zulfiquer Md. Mizanur Rhaman Student # 100705008p

2 Horizontal Constraint Graph (HCG) Horizontal constraint graph can be represented using an HCG, HC = (V, E), where a vertex v corresponds to interval I i of the net n i in the channel. An edge { v i, v j } in HCG indicates that the corresponding intervals I i and I j are horizontally constrained and are not assignable to the same track.

3 Horizontal Constraint Graph (HCG) 2 1 43 5 6 8 7

4 Vertical Constraint Graph (VCG) The VCG, VC = (V, E) is constructed to represented the vertical constraint. Here a vertex corresponds to the interval I i of the net n i in the channel. The directed edge in the VCG indicates that the net n i has to connect a top terminal and the net n j has to connect a bottom terminal at the same column position.

5 Vertical Constraint Graph (VCG) 3 47 2 1 58 6

6 Multi-Layer 3D View 3-Layer VHV Channel Router Vertical Layer (Top) Vertical Layer (Bottom) Horizontal Layer Layer 1 Layer 2 Layer 3 Via Connection

7 When 2-layer model has no solution! If Vertical Constraint Graph (VCG) has a cycle, there is no feasible solution under 2 layer no- dogleg Manhattan routing model 1 0 4 0 4 0 1 0 I4I4 I1I1 1 4

8 Solution in VHV Routing Any Vertical Constraint (n i, n j ) can be resolved by routing vertical wire segments of n i and n j in two separate vertical layers on either side of horizontal layer We never have more than two net terminals in a single column Hence, only horizontal constraint remains in VHV model Therefore the novel algorithms MCC1 or MCC2 can be used in VHV model

9 Routing Channels in 3D VHV Routing Channels 2 1 2 1

10 Channel Density d max 3130 05603008 0 15787604242 3 72 54 1 8 6 -- Local Density of a column is the maximum number of nets passing through the column. -- Channel Density of a channel is the maximum of all local densities -- d max is the maximum local density which is the lower bound on the number of tracks required. d max = 4 Local density at col.1 = 1

11 Multiple Horizontal Layers Multiple Horizontal Layers can reduce routing area If there are i horizontal layers H 1, H 2,.., H i, and channel density is d max, then minimum number of track required per horizontal layer is :

12 Multiple Horizontal Layers (Contd.) d max nets in a column must be distributed in i horizontal layers.

13 What does V i+1 H i mean? Total number of vertical layers is one more than total number of horizontal layers Each horizontal layer is sandwiched between 2 vertical layers Vertical Layer Horizontal Layer 4 Vertical Layers and 3 Horizontal Layers, Channel Density 4

14 Benefit of V i+1 H i

15 Application of MCC1 / MCC2 in Multilayer Channel Routing Problem Compute Minimum Clique Cover for Horizontal Non-constraint Graph (HNCG) There are d max cliques of the minimum clique cover. Assign d max cliques arbitrarily to i horizontal layers. Maximum number of tracks per horizontal layer is

16 Illustration of MCC1/MCC2 Applied to Multilayer CRP 7 1 3 5 6 4 2 Clique Cover CC={C1, C2,C3, C4} where C1: {5, 1, 4} C2: {2, 7} C3: {3} C4: {6}

17 Illustration of MCC1/MCC2 Applied to Multilayer CRP (Contd.) Place nets of same clique in the same track in any horizontal layer I7I7 I1I1 I4I4 I2I2 5 I3I3 I6I6 I5I5 352174 6 3 0 2 617

18 Application of MCC1 / MCC2 in Multilayer Channel Routing Vertical Wire Layout Suppose that two nets n g and n h that are members of two separate cliques C p and C q respectively, are laid out in the same horizontal layer H r Suppose has n g terminal on the top and n h has terminal at the bottom Then there are two possible cases Case 1: C p is assigned to the track above that of Cq Case 2: C p is assigned to the track below that of Cq

19 Vertical Wire Layout : Case 1 In this case both the vertical wire segments are assigned to the same vertical layer V r just below the horizontal layer H r ngng nhnh HrHr VrVr

20 Vertical Wire Layout : Case 2 In this case, vertical wire segments of n g and n h are assigned to vertical layers V r and V r+1 respectively (above and below the horizontal layer H r ) ngng nhnh V r+1 VrVr HrHr

21 Application of MCC1 / MCC2 in Multilayer Channel Routing (Contd.) In this manner, all vertical constraints in a channel are resolved The result is a (2i+1)-layer V i+1 H i routing solution using tracks

22 If there is a column spanned by no nets! For example leftmost column has terminal 0 spanned by no other net I7I7 I1I1 I4I4 I2I2 5 I3I3 I6I6 I5I5 3621740

23 The result is increase in running time of MCC1 Running time of MCC1 is O(n+e) where n is the number of nets and e is the size of HNCG If HNCG is sparse e = O(n) But for introduction of node ‘0’, e = O(n 2 ) Thus, if there is a column spanned by no other net, running time of MCC1 becomes O(n+O(n 2 )) = O(n 2 ) 7 3 5 6 4 2 1 0

24 Preprocessing of MCC1 We can split the net list at each such un- spanned column For example the net list {4,2,1,3,0,6,7,5} should be split into {4,2,1,3} and {6,7,5} MCC1 should be run independently on each of the splits Since HNCG for each split is now sparse i.e. has size O(n), MCC1 now runs in O(n)

25 MCC2 performs better than MCC1 Runs in O(nlogn) time Is independent of size of HNCG

26 Any Question Please ?


Download ppt "3.3 Multi-Layer V i+1 H i Channel Routing Presented by Zulfiquer Md. Mizanur Rhaman Student # 100705008p."

Similar presentations


Ads by Google