Hardware Reference
In-Depth Information
Fig. 3.8 The output includes
one credit counter for each
output that gets updated by a
separate update signal. A
credit is consumed when a flit
passes the output multiplexer
using the valid signal that is
de-multiplexed to the selected
output port
credit counters
update[N-1]
outAvailable
-
+
update[0]
ready
arb
outPort
Out#0
valid
data
Out#N-1
Fig. 3.9 The two
multiplexers can service more
inputs in parallel but the
distribution of the flits to their
destined output requires an
additional distribution
network of multiplexers
B 0
0
A 2
A 2
1
C 1
B 0
A 2
A 2
2
C 1
time
Switch
Distribute
3.3.2
Adding More Switching Elements
Using one arbiter and one multiplexer for switching packets to many outputs limits
the throughput seen at each output since at most one flit per cycle is dequeued from
all inputs. We can increase the throughput of the whole switching module by adding
more datapath logic, as shown in Fig. 3.9 . In this case, the router is able to deliver
two independent flits to any two available outputs. The internal datapath of the
router now consists of two arbiters and multiplexers that prepare two output results.
The flits that appear at the output of the multiplexers may belong to any output.
Therefore, we need to add additional multiplexers that distributed the intermediate
results to their correct output. In order for this circuit to operate correctly we need to
guarantee beforehand that the intermediate results are heading to a different output.
This means that the arbiters of the two multiplexers need to communicate and grant
only the requests that refer to different outputs. This inter-arbiter communication
serializes the allocation operation and limits the effectiveness of the switching
element. This problem is solved if we fully unroll the datapath and provide a
separate multiplexer per output that can connect directly to all inputs. The operation
of the unrolled-datapath architecture is described in detail in the following section.
 
Search WWH ::




Custom Search