Patent ID: 8228930

Claim:
For routing data packets, having one or more data units, between a set of router inputs and a set of router outputs, an interconnection network router arrangement comprising: an array of sub-switches having a plurality of sub-switch inputs and a plurality of sub-switch outputs, the sub-switch capable of selectively transferring a data unit from the sub-switch inputs to the sub-switch outputs, the sub-switch outputs of at least some of the sub-switches configured to send the data unit to a sub-switch input of other sub-switches; at the sub-switch inputs, a memory circuit for storing the data unit before the data unit is transferred to a sub-switch output; at the sub-switch outputs, a memory circuit for storing the data unit after the data unit is transferred from the sub-switch inputs and before the data unit is sent to a router output; a plurality of shared interconnection resources, each resource having a communicative connection to respective inputs of at least two sub-switches, to direct at least one data unit from one of multiple virtual channels to a sub-switch input; a virtual channel memory circuit configured and arranged to provide the multiple virtual channels for each router input; a speculative arbitration circuit; and a nonspeculative arbitration circuit, wherein the speculative arbitration circuit and the nonspeculative arbitration circuit provide a grant for use of a shared resource and a nonspeculative grant is given priority over a speculative grant.