Multi-threaded, multi-cast switch
First Claim
Patent Images
1. A multi-stage switch comprising:
- a plurality of output circuits;
a plurality of input circuits containing cells, each of the cells being destined for at least one of the output circuits;
a plurality of pending signals, each one of the plurality of pending signals associated with one of the plurality of input circuits, for indicating a presence of a new cell at the corresponding input circuit;
a plurality of switches for receiving the cells from the input circuits and transmitting he cells to the destined ones of the output circuits; and
a scheduler circuit for causing the switches to the cells to the output circuits in essentially the same temporal order as the cells are received from the input circuits to the switches in response to plurality of pending signals.
15 Assignments
0 Petitions
Accused Products
Abstract
A multi-stage switch includes a plurality of switching elements for routing cells from input components to output components. Internal switch logic routes incoming cells to the output components in the same temporal order as they are received from the input components, and sequentially activates the switching elements to distribute the cells evenly within the switch.
75 Citations
26 Claims
-
1. A multi-stage switch comprising:
-
a plurality of output circuits;
a plurality of input circuits containing cells, each of the cells being destined for at least one of the output circuits;
a plurality of pending signals, each one of the plurality of pending signals associated with one of the plurality of input circuits, for indicating a presence of a new cell at the corresponding input circuit;
a plurality of switches for receiving the cells from the input circuits and transmitting he cells to the destined ones of the output circuits; and
a scheduler circuit for causing the switches to the cells to the output circuits in essentially the same temporal order as the cells are received from the input circuits to the switches in response to plurality of pending signals. - View Dependent Claims (2, 3, 4, 5, 6, 8, 10, 11)
a circuit for transmitting cells from the input circuits to the switches in the same temporal order as the cells were received at the input circuit. -
3. The multi-stage switch of claim 1 wherein the input circuits include
a multiplexer having a plurality of inputs for receiving data and having an output coupled to each of the switches. -
4. The multi-stage switch of claim 1 wherein the output circuits each include
a demultiplexer having an input coupled to each of the switches and having a plurality of outputs. -
5. The multi-stage switch of claim 4, further including
an encoder coupled to the queue selector circuit for translating an output of the queue selector circuit into a number. -
6. The multi-stage switch of claim 4, further including
an encoder for receiving an eight-bit signal from a queue selector circuit and encoding the signal. -
8. The multi-stage switch of claim 1 wherein the scheduler circuit includes
a queue status circuit for indicating a status associated with the input circuits; -
a queue selector circuit, coupled to the queue status circuit, for selecting a particular one of the input circuits based upon the status; and
a controller circuit, coupled to the queue selector circuit, for selecting the switches in a pre-defined sequence.
-
-
10. The multi-stage switch of claim 8 wherein the queue status circuit further includes
means for determining a status of arriving cells; - and
means for broadcasting the status.
- and
-
11. The multi-stage switch of claim 10 wherein the means for determining the status of arriving cells further includes means for determining
a source; -
a destination; and
a priority for each of the cells.
-
-
-
7. A multi-stage switch, comprising:
-
a plurality of output circuits;
a plurality of input circuits containing cells, each of the cells being destined for at least one of the output circuits;
a plurality of switches for receiving the cells from the input circuits and transmitting the cells to the destined ones of the output circuits;
a scheduler circuit for causing the switches to transmit the cells to the output circuits in essentially the same temporal order as the cells are received from the input circuits to the switches, wherein the scheduler circuit includes;
means for determining whether a cell is pending after a cell has been transmitted; and
means for transferring a pending cell to the next stage.
-
-
9. A multi-stage switch, comprising:
-
a plurality of output circuits;
a plurality of input circuits containing cells, each of the cells being destined for at least one of the output circuits;
a plurality of switches for receiving the cells from the input circuits and transmitting the cells to the destined ones of the output circuits;
a scheduler circuit for causing the switches to transmit the cells to the output circuits in essentially the same temporal order as the cells are received from the input circuits to the switches, wherein the scheduler circuit includes a queue status circuit for indicating a status associated with the input circuits;
a queue selector circuit, coupled to the queue status circuit, for selecting a particular one of the input circuits based upon the status wherein the queue selector circuit includes an input signal indicating an output port selected by a previous stage;
an input signal indicating which second-stage switch should be traversed for a given output; and
an input signaling indicating that an output queue has a cell to be transmitted to the second-stage, but that the second-stage is not active; and
a controller circuit, coupled to the queue selector circuit, for selecting the switches in a pre-defined sequence.
-
-
12. A multi-stage switch, comprising:
-
a plurality of output circuits;
a plurality of input circuits containing cells, each of the cells destined for at least one of the output circuits;
a plurality of switches for transmitting the cells from the input circuits to the destined ones of the output circuits; and
a scheduler circuit for transmitting the cells from the input circuits to the switches based upon a “
pending status” and
a “
previous status”
of cells within the input circuits.- View Dependent Claims (13, 14, 15, 16)
a multiplexer having a plurality of inputs for receiving data and having an output coupled to each of the switches. -
14. The multi-stage switch of claim 12 wherein the output circuits each include
a demultiplexer having an input coupled to each of the switches and having a plurality of outputs. -
15. The multi-stage switch of claim 12 wherein the scheduler circuit includes:
-
a queue status circuit for indicating the pending status and the previous status;
a queue selector circuit coupled to the queue status circuit for selecting a particular one of the input circuits based upon the pending status and the previous status; and
a circuit coupled to the queue selector circuit for sequentially selecting the switches.
-
-
16. The multi-stage switch of claim 15, further including
an encoder coupled to the queue selector circuit for translating an output of the queue selector circuit into a number.
-
-
17. A method of transmitting cells through a multi-stage switch, comprising:
-
queuing a plurality of cells in a plurality of input circuits, each of the cells being destined for at least one of a plurality of output circuits; and
transmitting each of the cells, through a plurality of switches, from the one of the input circuits containing that cell to the ones of the output circuits for which the cell is destined by routing the cells in essentially the same temporal order as the cells are transmitted from the input circuits to the switches. - View Dependent Claims (18, 19, 20, 21)
receiving data in a multiplexer having a plurality of inputs and having an output coupled to each of the switches. -
19. The method of claim 17, wherein transmitting includes
receiving data in a demultiplexer having an input coupled to each of the switches and having a plurality of outputs. -
20. The method of claim 17 wherein transmitting includes
indicating a status associated with the input circuits; -
selecting a particular one of the input circuits based upon the status; and
sequentially selecting the switches.
-
-
21. The method of claim 20, further including
assigning a number to the selection of the input circuit.
-
-
22. A method of transmitting cells through a multi-stage switch, comprising:
-
queuing a plurality of cells in a plurality of input circuits, each of the cells being destined for at least one of a plurality of output circuits; and
transmitting the cells through a plurality of switches from a particular one of the input circuits containing that cell to the ones of the output circuits for which the cell is destined, by routing the cells based upon a pending status and a previous status of cells within the queues of the input circuits. - View Dependent Claims (23, 24, 25, 26)
receiving data in a multiplexer having a plurality of inputs and having an output coupled to each of the switches. -
24. The method of claim 22, wherein transmitting includes
receiving data in a demultiplexer having an input coupled to each of the switches and having a plurality of outputs. -
25. The method of claim 22 wherein transmitting includes
sequentially selecting the switches. -
26. The method of claim 25, further including
assigning a number to the selection of the input circuit.
-
Specification