Routing Routing definitions : 1. Pin – input or output of the logical circuit; 2. Connection – a pair of contacts that have been connected with each other; 3. Net – a number of logical circuit contacts that must be connected with each other. Is divided into connections; 4. Wire Segment – part of wire that is used as part of the connection; 5. Routing Switch – programmable switch that is used to connect segments; 6. Track – conductor that passes throughout the routing channel. Consists of several segments; 7. Routing Channel – number of tracks between the logical circuits. Segment Pin LB LB Switch Track Channel LB LB Conflicts in routing LB A B 1 2 3 LB LB LB LB 1 2 3 LB LB C LB LB LB 1 2 3 LB LB Routing strategy Routing resources are divided into routing areas. Global Router makes each connection correspond to one routing area. o Divides the connections of several contacts into single connections. o Each single sonnection is made to correspond to some certain channel. Detailed Router realises connections within the respective areas. o Makes each connection to correspond with a wire segment that enables its realisation Routing is NP – Complete Row Based arcitecture Row-based LB LB LB LB LB LB LB LB LB LB LB LB LB LB LB LB LB LB LB Routing in row-based FPGA c1 c2 c4 c3 Mask programmable array c1 c2 c1 c3 c3 c2 c4 c4 c1 c3 c3 c2 c4 c4 Totally segmented c1 c2 Not segmented c1 c2 c1 c3 c3 c2 c4 c4 Routing with segmentation c1 c2 c4 c3 1-segment routing c1 c2 c1 c3 c3 c2 c4 c4 c1 c3 c3 c2 c4 c4 2-segment routing c1 c2 Parameters used in routing c1 c2 c3 c4 c5 1 2 3 1 2 3 4 2,9 1,5 x0 6,1,1 5 6,7,1 6 7 8 9 10 Which is the first free vertical on the first, second and third track routing in given step How many segments it takes to realise the connections (accumulative) On which track is the connection realised Example of routing c1 c2 c3 c4 c5 Track 1 2 3 1 2 3 4 5 6 7 1,21 2,9 3,8 6,1,1 1,5 x0 2,5 1 1,6,1 3,4 1 6,7,N 6,1,7 1,7,7 1,15 Finally 21 ja 22 N,6,7 N,7,7 2,22 6,N,N 2,19 Finally 22 ja 23 3,8 1,16 1,6,7 9 3,20 3,20 10 N,N,N 1,21 N,N,N 3,20 2,11 Finally 21 2,8 1,1,7 N,7,N 2,20 3,17 6,7,1 8 N,N,7 N,6,N N,7,N 2,18 N,N,7 N,N,N 2,21 2,21 3,19 N,N,N N,N,N N,N,N Solution This routing used the least number of segments (19) The smallest number of switches is on the track and it is the fastest. c1 c2 c3 c4 c5 Track 1 2 3 1 2 3 4 5 6 7 8 9 10 Diminishing the number of switches may disable routing. c1 c2 c3 c4 c5 Track 1 2 3 1 2 3 4 5 6 7 8 9 10 Switches removed x0 3,5 1,1,9 2,9 1,N,9 1,17 N,N,9 Routing is not possible Possibility of routing 100% The location of plunge depends on the segmentation of the channel. 50% Density of the channel Symmetrical Array LB LB LB LB LB LB LB LB LB Interconnection resourcees LB CB LB Connection arrays CB SB CB CLK Connections between neighbours LB LB CB Long lines Lengths of connections 0 0 1 2 3 40 1 1 2 2 3 3 4 0 1 2 3 44 0 0 1 2 3 40 1 1 2 2 3 3 4 0 1 2 3 44 0 0 1 2 3 40 1 1 2 2 3 3 4 0 1 2 3 44 0 0 0 1 2 3 40 1 1 2 2 3 3 4 0 1 2 3 44 1 2 0 4 2 4 3 0 3 1 2 0 4 3 1 1 2 4 3 Global router 0,0 L 0,1 C 1,1 S 2,1 C 2,2 L 2 L C L 1 C S C 0 L C L 0 1 2 Detailed router L 2 L C S C 1 C C 0 L L 0 1 2 0 2 1 L 0,0 L C 0,1 C S 1,1 C 2,1 L 2,2 S S S C C C C C C C C Cost Function Shows the number of possibilities left for realising the connection at any stage of routing. LB 3 1 2 3 LB LB 2 LB LB 1 2 3 LB LB 1 LB LB LB 1 2 3 LB LB SB and CB architectures Problems : 1. What is the effect of CB on routing. 2. What is the effect of SB on routing. 3. How are the possibilities of SB and CB connected with routing. 4. How are the possibilities of SB and CB connected with the number of lines necessary for 100% routing 5. How are the possibilities of SB and CB connected with the sum number of keys that would guarantee 100% routing. Switch Block (SB) Fs=6 Connection Block (CB) LB LB Fc=2
© Copyright 2026 Paperzz