Mesh architecture for synchronous cross-connects
First Claim
1. A synchronous cross-connect switch, comprising:
- a mesh architecture including a plurality of inputs for receiving one or more data samples presented to the cross-connect switch, the mesh architecture comprising a plurality of nodes operatively interconnected with one another using one or more half-duplex links, each of the nodes comprising;
a receiver for receiving at least one data sample presented to the node;
a transmitter for transmitting at least one data sample from the node;
an input time-slot-interchanger (TSI) operatively coupled to at least a first half-duplex link and to the receiver, the input TSI being configurable to selectively reorder one or more data samples received by the receiver;
an output TSI operatively coupled to at least a second half-duplex link and to the transmitter, the output TSI being configurable to selectively reorder one or more data samples to be transmitted by the transmitter; and
a controller operatively coupled to the receiver and transmitter, the controller being configured to selectively route a data sample to at least one of;
(i) an output of the cross-connect switch; and
(ii) an adjacent node in the mesh architecture;
wherein the controller comprises at least one processor operative to;
(i) precompute one or more routing sequences, the routing sequences reducing a routing in the mesh architecture to a one-to-one routing within each of one or more time-slots associated with the node;
(ii) reorder the one or more data samples within one or more source nodes in accordance with the precomputed routing sequences;
(iii) route the one or more data samples from the one or more source nodes to one or more corresponding destination nodes through the mesh;
(iv) reorder the one or more data samples within the destination nodes, whereby the data samples are transmitted during a correct time-slot; and
(v) partition the one or more time-slots associated with the nodes into a plurality of segments, each of the segments including a same number of nodes, each of the nodes including a subset of the one or more time-slots such that the one or more time-slots are distributed across the plurality of segments;
wherein the reordering of the data samples within one or more source nodes, the routing of the data samples from one or more source nodes to one or more destination nodes, and the reordering of the data samples within the destination nodes are performed substantially in parallel within each of the plurality of segments.
6 Assignments
0 Petitions
Accused Products
Abstract
A synchronous cross-connect switch for routing data samples from a source node to a destination node comprises a mesh architecture including a plurality of inputs for receiving one or more of the data samples presented to the cross-connect switch. The mesh architecture includes a plurality of nodes operatively interconnected with one another using one or more half-duplex links. Each of the nodes further includes a receiver and a transmitter. Each node further includes an input time-slot-interchanger (TSI) operatively coupled to a first half-duplex link and to the receiver, the input TSI being configurable to selectively reorder one or more data samples received by the receiver, and an output TSI operatively coupled to a second half-duplex link and to the transmitter, the output TSI being configurable to selectively reorder one or more data samples to be transmitted by the transmitter. A controller operatively coupled to the receiver and to the transmitter is configured to selectively route a data sample to at least one of an output of the cross-connect switch and an adjacent node in the mesh architecture in a conflict-free manner.
34 Citations
23 Claims
-
1. A synchronous cross-connect switch, comprising:
-
a mesh architecture including a plurality of inputs for receiving one or more data samples presented to the cross-connect switch, the mesh architecture comprising a plurality of nodes operatively interconnected with one another using one or more half-duplex links, each of the nodes comprising; a receiver for receiving at least one data sample presented to the node; a transmitter for transmitting at least one data sample from the node; an input time-slot-interchanger (TSI) operatively coupled to at least a first half-duplex link and to the receiver, the input TSI being configurable to selectively reorder one or more data samples received by the receiver; an output TSI operatively coupled to at least a second half-duplex link and to the transmitter, the output TSI being configurable to selectively reorder one or more data samples to be transmitted by the transmitter; and a controller operatively coupled to the receiver and transmitter, the controller being configured to selectively route a data sample to at least one of;
(i) an output of the cross-connect switch; and
(ii) an adjacent node in the mesh architecture;wherein the controller comprises at least one processor operative to;
(i) precompute one or more routing sequences, the routing sequences reducing a routing in the mesh architecture to a one-to-one routing within each of one or more time-slots associated with the node;
(ii) reorder the one or more data samples within one or more source nodes in accordance with the precomputed routing sequences;
(iii) route the one or more data samples from the one or more source nodes to one or more corresponding destination nodes through the mesh;
(iv) reorder the one or more data samples within the destination nodes, whereby the data samples are transmitted during a correct time-slot; and
(v) partition the one or more time-slots associated with the nodes into a plurality of segments, each of the segments including a same number of nodes, each of the nodes including a subset of the one or more time-slots such that the one or more time-slots are distributed across the plurality of segments;
wherein the reordering of the data samples within one or more source nodes, the routing of the data samples from one or more source nodes to one or more destination nodes, and the reordering of the data samples within the destination nodes are performed substantially in parallel within each of the plurality of segments. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of routing one or more data samples through a cross-connect switch, the cross-connect switch including a plurality of nodes operatively coupled in a mesh arrangement, each of the nodes including one or more time-slots associated therewith, the method comprising the steps of:
-
precomputing one or more routing sequences, the routing sequences reducing a routing in the mesh to a one-to-one routing within each of the time-slots; reordering the data samples within one or more source nodes in accordance with the precomputed routing sequences; routing the data samples from the one or more source nodes to one or more corresponding destination nodes through the mesh arrangement; and reordering the data samples within the destination nodes, whereby the data samples are transmitted during a correct time-slot; wherein the step of routing the data samples from the one or more source nodes to the one or more corresponding destination nodes comprises the steps of; routing the data samples in a first dimension in parallel in accordance with the precomputed routing sequences to determine corresponding destination nodes; routing the data samples in a second dimension in parallel, whereby the data samples are routed to intended nodes in the first dimension; and routing the data samples in the first dimension in parallel whereby each of the data samples are routed to the corresponding destination nodes. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A method of routing one or more data samples through a cross-connect switch, the cross-connect switch including a plurality of nodes operatively coupled in a mesh arrangement, each of the nodes including one or more time-slots associated therewith, the method comprising the steps of:
-
precomputing one or more routing sequences, the routing sequences reducing a routing in the mesh to a one-to-one routing within each of the time-slots; reordering the data samples within one or more source nodes in accordance with the precomputed routing sequences; routing the data samples from the one or more source nodes to one or more corresponding destination nodes through the mesh arrangement; reordering the data samples within the destination nodes, whereby the data samples are transmitted during a correct time-slot; and partitioning the one or more time-slots associated with the plurality of nodes into a plurality of segments, each of the segments including a same number of nodes, each of the nodes including a subset of the one or more time-slots such that the one or more time-slots are distributed across the plurality of segments; wherein the steps of reordering the data samples within one or more source nodes, routing the data samples from the one or more source nodes to one or more corresponding destination nodes, and reordering the data samples within the destination nodes are performed substantially in parallel within each of the plurality of segments.
-
-
14. An integrated circuit including at least one synchronous cross-connect switch, the at least one synchronous cross-connect switch comprising:
-
a mesh architecture including a plurality of inputs for receiving one or more data samples presented to the cross-connect switch, the mesh architecture comprising a plurality of nodes operatively interconnected with one another using one or more half-duplex links, each of the nodes comprising; a receiver; a transmitter; an input time-slot-interchanger (TSI) operatively coupled to at least a first half-duplex link and to the receiver, the input TSI being configurable to selectively reorder one or more data samples received by the receiver; an output TSI operatively coupled to at least a second half-duplex link and to the transmitter, the output TSI being configurable to selectively reorder one or more data samples to be transmitted by the transmitter; and a controller operatively coupled to the receiver and transmitter, the controller being configured to selectively route a sample to at least one of;
(i) an output of the cross-connect switch;
(ii) and an adjacent node in the mesh architecture;wherein the controller comprises at least one processor operative to;
(i) precompute one or more routing sequences, the routing sequences reducing a routing in the mesh architecture to a one-to-one routing within each of one or more time-slots associated with the node;
(ii) reorder the one or more data samples within one or more source nodes in accordance with the precomputed routing sequences;
(iii) route the one or more data samples from the one or more source nodes to one or more corresponding destination nodes through the mesh;
(iv) reorder the one or more data samples within the destination nodes, whereby the data samples are transmitted during a correct time-slot; and
(v) partition the one or more time-slots associated with the nodes into a plurality of segments, each of the segments including a same number of nodes, each of the nodes including a subset of the one or more time-slots such that the one or more time-slots are distributed across the plurality of segments;
wherein the reordering of the data samples within one or more source nodes, the routing of the data samples from one or more source nodes to one or more destination nodes, and the reordering of the data samples within the destination nodes are performed substantially in parallel within each of the plurality of segments. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A synchronous cross-connect switch, comprising:
-
a distributed mesh architecture including a plurality of inputs for receiving one or more data samples presented to the cross-connect switch, the distributed mesh architecture comprising a plurality of segments, each of the segments including a plurality of nodes associated therewith, the nodes in each of the segments being operatively interconnected with one another using one or more half-duplex links, each of the nodes comprising; a plurality of receivers, at least one of the plurality of receivers being configured to receive a data sample presented to the node; a plurality of transmitters, at least one of the plurality of transmitters being configured to transmit a data sample from the node; an input time-slot-interchanger (TSI) operatively coupled to at least a first half-duplex link and to the receiver, the input TSI being configurable to selectively reorder one or more data samples received by the at least one receiver; an output TSI operatively coupled to at least a second half-duplex link and to the transmitter, the output TSI being configurable to selectively reorder one or more data samples to be transmitted by the at least one transmitter; and a controller operatively coupled to the plurality of receivers and to the plurality of transmitters, the controller being configured to selectively route a data sample to at least one of;
(i) an output of the cross-connect switch;
(ii) an adjacent node in a same segment in the mesh architecture; and
(iii) an adjacent node in an adjacent segment in the mesh architecture;wherein the controller comprises at least one processor operative to;
precompute one or more routing sequences, the routing sequences reducing a routing in the distributed mesh architecture to a one-to-one routing within each of one or more time-slots associated with the node;
reorder the one or more data samples within one or more source nodes in accordance with the precomputed routing sequences;
route the one or more data samples from the one or more source nodes to one or more corresponding destination nodes through the mesh;
route the data samples in a first dimension in parallel in accordance with the precomputed routing sequences to determine the corresponding destination nodes;
route the data samples in a second dimension in parallel whereby the data samples are routed to intended nodes in the first dimension;
route the data samples in the first dimension in parallel whereby each of the data samples are routed to the corresponding destination nodes; and
reorder the one or more data samples within the destination nodes whereby the data samples are transmitted during a correct time-slot. - View Dependent Claims (21, 22)
-
-
23. A synchronous cross-connect switch, comprising:
-
a mesh architecture including a plurality of inputs for receiving one or more data samples presented to the cross-connect switch, the mesh architecture comprising a plurality of nodes operatively interconnected with one another using one or more half-duplex links, each of the nodes comprising; a receiver for receiving at least one data sample presented to the node; a transmitter for transmitting at least one data sample from the node; an input time-slot-interchanger (TSI) operatively coupled to at least a first half-duplex link and to the receiver, the input TSI being configurable to selectively reorder one or more data samples received by the receiver; an output TSI operatively coupled to at least a second half-duplex link and to the transmitter, the output TSI being configurable to selectively reorder one or more data samples to be transmitted by the transmitter; and a controller operatively coupled to the receiver and transmitter, the controller comprising at least one processor operative to;
precompute one or more routing sequences, the routing sequences reducing a routing in the mesh architecture to a one-to-one routing within each of one or more time-slots associated with the node;
reorder the one or more data samples within one or more source nodes in accordance with the precomputed routing sequences;
route the one or more data samples from the one or more source nodes to one or more corresponding destination nodes through the mesh by routing the data samples in a first dimension in parallel in accordance with the precomputed routing sequences to determine the corresponding destination nodes, routing the data samples in a second dimension in parallel whereby the data samples are routed to intended nodes in the first dimension, and routing the data samples in the first dimension in parallel whereby each of the data samples are routed to the corresponding destination nodes; and
reorder the one or more data samples within the destination nodes whereby the data samples are transmitted during a correct time-slot.
-
Specification