Hardware Reference
In-Depth Information
the i th input VC will always ask for the i th output VC. Even if the i th output VC
is not available, the i th input VC does not have any other choice rather than waiting
for the i th output VC to become available before trying to match to it.
8.2
Lookahead VA1
The second alternative for removing VA1 from the critical path of the VC allocator,
but still allow packets to change VC in flight irrespective the VN they belong,
is called lookahead VA1 (LVA1) and works similar to the lookahead routing
computation. Instead of waiting each input VC to perform VA1, when it reaches
the frontmost position of its input VC buffer, we allow VA1 to complete beforehand.
Each input VC in parallel to the VA step performed in the previous router (or even in
parallel to the SA of the previous router) selects which output VC will ask for when
it reaches the next router; the selection is done via arbitration among the candidate
output VCs and is stored at a special field of the packet's head flit. Thus, once a
head flit of a packet reaches the frontmost position of the input VC buffer it can
immediately participate in VA2 since it already stores in one of its fields the output
VC requests, as depicted in Fig. 8.2 . In parallel to VA2, each input VC performs
VA1 for selecting the output VC that will ask for when it reaches the next router.
In lookahead VA1 each input VC is oblivious of the state of the output VCs.
Therefore, there is the possibility that the selected output VC of the head flit to be
un-available when the flit asks for it in the VA2 of the next router. In this case, the
per input VC
outVCAvailable
LVA1
nextReqVC[i]
reqPort[i]
N
VCgranted[i]
per output VC
NV:1
arb
NV
V
NV
reqVC[i]
V
prepared in the
previous router
NV:1
arb
NV
NV
total NV
NV:1 arbiters
Fig. 8.2 The organization of the VC allocator that accepts the pre-computed output VC requests
of each input VC that are directly propagated to VA2. In parallel, lookahead VA1 takes place in
parallel and saves the output VC request that will be used in the next router in the head flit of the
packet
 
Search WWH ::




Custom Search