Method and system to reduce interconnect latency
AssigneeCorning Incorporated
InventorsFrancois G Abel, Alan F Benner, Richard R Grzybowski, Brewster Roe Hemenway, Jr., Ilias Iliadis, Rajaram Krishnamurthy, Ronald P Luijten, Cyriel Minkenberg
Life of this patent
Estimating the term…
Abstract
A method and system for reducing arbitration latency employs speculative transmission (STX) without prior arbitration in combination with routing fabric scheduled arbitration. Packets are sent from source locations to a routing fabric through scheduled arbitration, and also through speculative arbitration, to non-contentiously allocate outputs that were not previously reserved in the routing fabric to the speculatively transmitted packets.
Claims19
A method for transmitting data packets with and without prior grant of access from a plurality of inputs to a plurality of outputs of a routing fabric, the transmission method comprising the steps of:
- if a prior grant of access is present, sending at least one data packet according to the prior grant of access;
- and
- if no prior grant of access is present:
- selecting a data packet to transmit speculatively;
- and
- simultaneously issuing a speculative request that includes an output identifier of the selected data packet and sending the selected packet to the routing fabric, wherein the speculatively issued request is resolved against other requests, resulting in a transmission grant issued to the routing fabric synchronously with the arrival of the speculatively issued data packet transmitted such that a switch state for the routing fabric is set just in time to allow unimpeded passage of the data packet across the fabric.
A system for transmitting data packets with and without prior grant of access from a plurality of inputs to a plurality of outputs of a routing fabric, comprising:
- means for sending at least one data packet according to the result of a prior grant of access, if a prior grant of access is present;
- and
- means for selecting a data packet to transmit speculatively, and simultaneously issuing a speculative request that includes an output identifier of the selected data packet and sending the selected packet to the routing fabric, if no prior grant of access is present,
- wherein a request speculatively issued to the routing fabric is resolved against other requests, resulting in a transmission grant that is issued to the routing fabric synchronously with the arrival of the speculatively issued data packet such that the switch state is set just in time to allow unimpeded passage of the data packet across the fabric.
A system for managing the flow of information units among plural locations, comprising:
- a plurality of inputs for receiving requests for access to a switching fabric to transmit information units from source locations to destination locations, said requests including requests for grant of access prior to transmission for some transmissions and requests for speculative access for transmission without prior grant for other transmissions, and each said requests including indication of a destination location to which to transfer an associated information unit;
- an arbiter for determining a conflict-free allocation of the switching fabric resources for a group or subgroup of the requests for transmission after prior granted access;
- and
- a speculative request arbiter for receiving said speculative access requests for transmission without prior grant, at a time in which the determined group is to be next applied to the switching fabric, and granting or denying said received request based on the determined allocation.
A method for transmitting data packets with and without prior grant of access from a plurality of inputs to a plurality of outputs of a routing fabric, the transmission method comprising the steps of:
- if a prior grant of access is present, sending at least one data packet according to the prior grant of access;
- and
- if no prior grant of access is present:
- selecting a data packet to transmit speculatively;
- and
- simultaneously issuing a speculative request that includes an output identifier of the selected data packet and sending the selected packet to the routing fabric;
- and
- for every time slot, matching inputs to outputs of the routing fabric according to a prior arbitration result;
- and
- for every unmatched output, in a time slot in which the matched inputs and outputs are to be applied to the routing fabric, selecting one issued speculative request, if present, according to a selection policy;
- and
- adding input-output mapping for each winning speculative request to the current prior arbitration result to be applied to the routing fabric.
Dependencies are inferred from the claim text.