VLSI layouts of fully connected generalized and pyramid networks with locality exploitation
DCFirst Claim
1. A two-dimensional layout of hierarchical routing network implemented in a non-transitory medium comprising:
- a total of a×
b blocks with one side of said layout having the size of “
a”
blocks and the other side of said layout having the size of “
b”
blocks where a≧
1 and b≧
1, andsaid routing network comprising a total of N1 inlet links and a total of N2 outlet links and y hierarchical stages where y≧
1, N1>
1 and N2>
1 wherein eitherN2=N1×
p2, N1=(a×
b)×
p, and said each block comprising at most p inlet links and at most p×
p2 outlet links;
orN1=N2×
p1, N2=(a×
b)×
p, and said each block comprising at most p outlet links and at most p×
p1 inlet links, where p≧
1, p1≧
1 and p2≧
1, andsaid each stage comprising at least one switch of size d×
d, where d≧
2 and each said switch of size d×
d having d incoming links and d outgoing links; and
said each block may not be comprising the same number of said inlet links and may not be comprising the same number of said out links;
said each block may not be comprising the same number of said stages;
said each stage may not be comprising the same number of switches; and
said each switch in said each stage may not be of the same size d,Said inlet links directly connected to one or more said incoming links, and said outgoing links directly connected to one or more said outlet links,said incoming links and outgoing links in each switch in said each stage of said each block comprising a plurality of forward connecting links connected from switches in lower stage to switches in the immediate succeeding higher stage, and also comprising a plurality of backward connecting links connected from switches in higher stage to switches in the immediate preceding lower stage; and
said forward connecting links comprising a plurality of straight links connected from a switch in a stage in a block to a switch in another stage in the same block and also comprising a plurality of cross links connected from a switch in a stage in a block to a switch in another stage in a different block, andsaid backward connecting links comprising a plurality of straight links connected from a switch in a stage in a block to a switch in another stage in the same block and also comprising a plurality of cross links connected from a switch in a stage in a block to a switch in another stage in a different block; and
said all cross links are connected as either vertical or horizontal links between switches in two different said blocks.
1 Assignment
Litigations
0 Petitions
Accused Products
Abstract
VLSI layouts of generalized multi-stage and pyramid networks for broadcast, unicast and multicast connections are presented using only horizontal and vertical links with spacial locality exploitation. The VLSI layouts employ shuffle exchange links where outlet links of cross links from switches in a stage in one sub-integrated circuit block are connected to inlet links of switches in the succeeding stage in another sub-integrated circuit block so that said cross links are either vertical links or horizontal and vice versa. Furthermore the shuffle exchange links are employed between different sub-integrated circuit blocks so that spacially nearer sub-integrated circuit blocks are connected with shorter links compared to the shuffle exchange links between spacially farther sub-integrated circuit blocks. In one embodiment the sub-integrated circuit blocks are arranged in a hypercube arrangement in a two-dimensional plane. The VLSI layouts exploit the benefits of significantly lower cross points, lower signal latency, lower power and full connectivity with significantly fast compilation. The VLSI layouts with spacial locality exploitation presented are applicable to generalized multi-stage and pyramid networks, generalized folded multi-stage and pyramid networks, generalized butterfly fat tree and pyramid networks, generalized multi-link multi-stage and pyramid networks, generalized folded multi-link multi-stage and pyramid networks, generalized multi-link butterfly fat tree and pyramid networks, generalized hypercube networks, and generalized cube connected cycles networks for speedup of s≧1. The embodiments of VLSI layouts are useful in wide target applications such as FPGAs, CPLDs, pSoCs, ASIC placement and route tools, networking applications, parallel & distributed computing, and reconfigurable computing.
26 Citations
20 Claims
-
1. A two-dimensional layout of hierarchical routing network implemented in a non-transitory medium comprising:
- a total of a×
b blocks with one side of said layout having the size of “
a”
blocks and the other side of said layout having the size of “
b”
blocks where a≧
1 and b≧
1, andsaid routing network comprising a total of N1 inlet links and a total of N2 outlet links and y hierarchical stages where y≧
1, N1>
1 and N2>
1 wherein eitherN2=N1×
p2, N1=(a×
b)×
p, and said each block comprising at most p inlet links and at most p×
p2 outlet links;
orN1=N2×
p1, N2=(a×
b)×
p, and said each block comprising at most p outlet links and at most p×
p1 inlet links, where p≧
1, p1≧
1 and p2≧
1, andsaid each stage comprising at least one switch of size d×
d, where d≧
2 and each said switch of size d×
d having d incoming links and d outgoing links; andsaid each block may not be comprising the same number of said inlet links and may not be comprising the same number of said out links;
said each block may not be comprising the same number of said stages;
said each stage may not be comprising the same number of switches; and
said each switch in said each stage may not be of the same size d,Said inlet links directly connected to one or more said incoming links, and said outgoing links directly connected to one or more said outlet links, said incoming links and outgoing links in each switch in said each stage of said each block comprising a plurality of forward connecting links connected from switches in lower stage to switches in the immediate succeeding higher stage, and also comprising a plurality of backward connecting links connected from switches in higher stage to switches in the immediate preceding lower stage; and said forward connecting links comprising a plurality of straight links connected from a switch in a stage in a block to a switch in another stage in the same block and also comprising a plurality of cross links connected from a switch in a stage in a block to a switch in another stage in a different block, and said backward connecting links comprising a plurality of straight links connected from a switch in a stage in a block to a switch in another stage in the same block and also comprising a plurality of cross links connected from a switch in a stage in a block to a switch in another stage in a different block; and said all cross links are connected as either vertical or horizontal links between switches in two different said blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
- a total of a×
-
16. A hierarchical network implemented in a non-transitory medium comprising a plurality of sub-networks arranged in a two dimensional layout of rows and columns, said each sub-network comprising a plurality of inlet links and a plurality of outlet links, and said each sub-network further comprising a plurality of stages, and said plurality of stages in a said sub-network comprising a plurality of multiplexers where each said multiplexer may be different size of d:
- 1, where d>
=1;a first multiplexer of said plurality of multiplexers in a first stage of said plurality of stages of a first sub-network of said plurality of sub-networks having inputs connected from, hereinafter “
incoming links”
, the output of either a second multiplexer of said plurality of multiplexers in said first stage of said plurality of stages of said first sub-network of said plurality of sub-networks or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages in said first sub-network of said plurality of sub-networks, or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages of a second sub-network of said plurality of sub-networks, or from one of said outlet links;a first multiplexer of said plurality of multiplexers in a first stage of said plurality of stages of a first sub-network of said plurality of sub-networks having output connected to, hereinafter “
outgoing links”
, one of the inputs of either a second multiplexer of said plurality of multiplexers in said first stage of said plurality of stages of said first sub-network of said plurality of sub-networks or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages in said first sub-network of said plurality of sub-networks, or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages of a second sub-network of said plurality of sub-networks, or from one of said outlet links;said plurality of multiplexers in a first stage of said plurality of stages may be different in number from said plurality of multiplexers in a second stage of said plurality of stages; said plurality of stages in a first of said plurality of sub-networks may be different in number from said plurality of stages in a second of said plurality of sub-networks; said each row of said two dimensional layout may not have the same number of said plurality of subnetworks; said each column of said two dimensional layout may not have the same number of said plurality of subnetworks; said each sub-network may not have the same number of said inlet links and said each sub-network may not have the same number of said outlet links; one or more of said incoming links and said outgoing links between any two said sub-networks are connected either as horizontal wires or as vertical wires.
- 1, where d>
-
17. A method for setting up one or more new multicast connections in a network comprising a plurality of sub-networks arranged in a two dimensional layout of rows and columns, said each sub-network comprising a plurality of inlet links and a plurality of outlet links, and said each sub-network further comprising a plurality of stages, and said plurality of stages in a said sub-network comprising a plurality of multiplexers where each said multiplexer may be different size of d>
- =1;
a first multiplexer of said plurality of multiplexers in a first stage of said plurality of stages of a first sub-network of said plurality of sub-networks having inputs connecting from, hereinafter “
incoming links”
, the output of either a second multiplexer of said plurality of multiplexers in said first stage of said plurality of stages of said first sub-network of said plurality of sub-networks or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages in said first sub-network of said plurality of sub-networks, or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages of a second sub-network of said plurality of sub-networks, or from one of said outlet links;a first multiplexer of said plurality of multiplexers in a first stage of said plurality of stages of a first sub-network of said plurality of sub-networks having output connecting to, hereinafter “
outgoing links”
, one of the inputs of either a second multiplexer of said plurality of multiplexers in said first stage of said plurality of stages of said first sub-network of said plurality of sub-networks or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages in said first sub-network of said plurality of sub-networks, or a second multiplexer of said plurality of multiplexers in a second stage of said plurality of stages of a second sub-network of said plurality of sub-networks, or from one of said outlet links;said plurality of multiplexers in a first stage of said plurality of stages may be different in number from said plurality of multiplexers in a second stage of said plurality of stages; said plurality of stages in a first of said plurality of sub-networks may be different in number from said plurality of stages in a second of said plurality of sub-networks; said each row of said two dimensional layout may not have the same number of said plurality of subnetworks; said each column of said two dimensional layout may not have the same number of said plurality of subnetworks; said each sub-network may not have the same number of said inlet links and said each sub-network may not have the same number of said outlet links; one or more of said incoming links and said outgoing links between any two said sub-networks are connected either as horizontal wires or as vertical wires, said method comprising; receiving a multicast connection at said one of inlet links; fanning out said multicast connection through one or more of the multiplexers having said inlet link as input, to set up said multicast connection to a plurality of outlet links, wherein said plurality of outlet links are specified as destinations of said multicast connection, wherein multiplexers are available in one or more sub-networks including the sub-network having said inlet link and sub-networks having said outlet links with said multiplexers belonging to one or more said stages of said sub-networks and also the straight links or cross links are available which are connecting said multiplexers of said all sub-networks; wherein a connection exists through said network and said method further comprising; checking if any of said plurality of multiplexers is used to setup more than one said multicast connections and, if necessary, changing said connection to pass through another plurality of said multiplexers of said stages of said sub-networks, act hereinafter “
rearranging connection”
. - View Dependent Claims (18, 19, 20)
- =1;
Specification