Hardware Reference
In-Depth Information
VA
outVCAvailable
V
SA
update VCs
Credit Counters
V
valid
data
ready
update
Input #0
valid
data
update
Output
valid
data
Input #N-1
Fig. 7.1 Multiple inputs connect to a single output, with multiple parallel queues on each side,
one for each VC
required per output VC are stored locally at the output of the switching module, but
refer to state of the VC buffers at the other side of the link.
Each input can receive the flit of only one VC in each clock cycle. Therefore, it
is enough for each input to try to send to the output at most one flit from a selected
input VC. To support this rate of outgoing traffic per input the switching module
consists of two levels of multiplexing. In the first level (per input) a multiplexer
selects one VC from all input VCs, while, in the second level (at the output), the
selected input VCs are multiplexed to the output. If we need a large rate of outgoing
flits per input, multiple VCs of the same input should be able to reach the output
multiplexer.
7.1.1
State Variables Required Per-Input and Per-Output VC
Similar to wormhole routers, the inputs and the outputs of the switching module
should be enhanced with some extra state variables that allow scheduling, both at
the VC-level and at the physical port level, to be performed and combined to the
flow control mechanism of the input and the output channels.
First of all, the state needed involves the flow control mechanism. In the examples
used in this chapter we adopt the credit-based flow control. Therefore, at the output
of the switching module a set of credit counters is used; one for each VC. The
maximum value of each counter is equal to the maximum number of positions
available per VC at the output VC buffers. The credit counters produce the necessary
ready signals for each VC, e.g., ready Œi D 1 when creditCounter Œi > 0.Oncea
flit from an input VC leaves the output of the switching module (or when it knows
that it has gained access to the output) it consumes one credit by the corresponding
 
Search WWH ::




Custom Search