Two-phase arbitration mechanism for shared optical links
First Claim
1. A method for arbitration in an arbitration domain, comprising:
- receiving, by each node of a plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, wherein the plurality of nodes in the arbitration domain each use a shared data channel to send data to a set of receiving nodes, wherein the arbitration request to each receiving node of the plurality of nodes in the arbitration domain is transmitted via a first arbitration waveguide of an arbitration network, wherein the arbitration domain comprises the plurality of nodes that are configured to transmit on the shared data channel, and wherein each sending node is a node in the plurality of nodes having data to transmit on the shared data channel;
by each node of the plurality of nodes in the arbitration domain, independently assigning a time slot to each sending node, wherein the time slot is assigned according to a plurality of priorities pre-assigned to the plurality of nodes in the arbitration domain;
for each time slot;
sending, from the arbitration domain, a switch request to a receiving node designated by the sending node, wherein the receiving node is in the set of receiving nodes, wherein the switch request is transmitted via a second arbitration waveguide of the arbitration network;
wherein the switch request is sent by a column node of the plurality of nodes in the arbitration domain, and wherein the column node is assigned to the column connected to the receiving node; and
sending, by the sending node, data to the receiving node via the shared data channel during the time slot.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for arbitration in an arbitration domain. The method includes: receiving, by each node of a plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, where the plurality of nodes in the arbitration domain each use a shared data channel to send data to a set of receiving nodes; assigning, by each node in the arbitration domain, consecutive time slots to each sending node based on a plurality of priorities assigned to the plurality of nodes in the arbitration domain; for each time slot: sending, from the arbitration domain, a switch request to a receiving node designated by the sending node, where the receiving node is in the set of receiving nodes; and sending, by the sending node, data to the receiving node via the shared data channel during the time slot.
42 Citations
17 Claims
-
1. A method for arbitration in an arbitration domain, comprising:
- receiving, by each node of a plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, wherein the plurality of nodes in the arbitration domain each use a shared data channel to send data to a set of receiving nodes, wherein the arbitration request to each receiving node of the plurality of nodes in the arbitration domain is transmitted via a first arbitration waveguide of an arbitration network, wherein the arbitration domain comprises the plurality of nodes that are configured to transmit on the shared data channel, and wherein each sending node is a node in the plurality of nodes having data to transmit on the shared data channel;
by each node of the plurality of nodes in the arbitration domain, independently assigning a time slot to each sending node, wherein the time slot is assigned according to a plurality of priorities pre-assigned to the plurality of nodes in the arbitration domain;
for each time slot;
sending, from the arbitration domain, a switch request to a receiving node designated by the sending node, wherein the receiving node is in the set of receiving nodes, wherein the switch request is transmitted via a second arbitration waveguide of the arbitration network;
wherein the switch request is sent by a column node of the plurality of nodes in the arbitration domain, and wherein the column node is assigned to the column connected to the receiving node; and
sending, by the sending node, data to the receiving node via the shared data channel during the time slot. - View Dependent Claims (2, 3, 4, 5, 6, 7)
- receiving, by each node of a plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, wherein the plurality of nodes in the arbitration domain each use a shared data channel to send data to a set of receiving nodes, wherein the arbitration request to each receiving node of the plurality of nodes in the arbitration domain is transmitted via a first arbitration waveguide of an arbitration network, wherein the arbitration domain comprises the plurality of nodes that are configured to transmit on the shared data channel, and wherein each sending node is a node in the plurality of nodes having data to transmit on the shared data channel;
-
8. A system for arbitration in an arbitration domain, comprising:
- a set of receiving nodes comprising a receiving node configured to receive data;
an arbitration domain comprising a plurality of nodes having a shared data channel to send the data to the set of receiving nodes, wherein the plurality of nodes in the arbitration domain is configured to;
receive, by each node of the plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, wherein the arbitration domain comprises the plurality of nodes that are configured to transmit on the shared data channel, and wherein each sending node is a node in the plurality of nodes having data to transmit on the shared data channel;
by each node of the plurality of nodes in the arbitration domain;
independently assign a time slot to each sending node, wherein the time slot is assigned according to a plurality of priorities pre-assigned to the plurality of nodes in the arbitration domain;
for each time slot;
send, from the arbitration domain, a switch request to the receiving node designated by the sending node;
wherein the switch request is sent by a column node of the plurality of nodes in the arbitration domain, and wherein the column node is assigned to the column connected to the receiving node; and
send, by the sending node, the data to the receiving node via the shared data channel during the time slot, a first arbitration waveguide of an arbitration network configured to transmit the arbitration request from each sending node of the plurality of nodes in the arbitration domain to each receiving node of the plurality of nodes in the arbitration domain; and
a second arbitration waveguide of the arbitration network configured to transmit the switch request. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
- a set of receiving nodes comprising a receiving node configured to receive data;
-
16. An integrated circuit, comprising:
- a set of receiving nodes comprising a receiving node configured to receive data;
an arbitration domain comprising a plurality of nodes having a shared data channel to send the data to the set of receiving nodes, wherein the plurality of nodes in the arbitration domain is configured to;
receive, by each node of the plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, wherein the arbitration domain comprises the plurality of nodes that are configured to transmit on the shared data channel, and wherein each sending node is a node in the plurality of nodes having data to transmit on the shared data channel;
by each node of the plurality of nodes in the arbitration domain;
independently assign a time slot to each sending node, wherein the time slot is assigned according to a plurality of priorities pre-assigned to the plurality of nodes in the arbitration domain;
for each time slot;
send, from the arbitration domain, a switch request to the receiving node designated by the sending node;
wherein the switch request is sent by a column node of the plurality of nodes in the arbitration domain, and wherein the column node is assigned to the column connected to the receiving node; and
send, by the sending node, the data to the receiving node via the shared data channel during the time slot, a first arbitration waveguide of an arbitration network configured to transmit the arbitration request from each sending node of the plurality of nodes in the arbitration domain to each receiving node of the plurality of nodes in the arbitration domain; and
a second arbitration waveguide of the arbitration network configured to transmit the switch request. - View Dependent Claims (17)
- a set of receiving nodes comprising a receiving node configured to receive data;
Specification