Cross-bar switch employing a multiple entry point FIFO
First Claim
Patent Images
1. An apparatus comprising:
- a set of input ports to receive data packets;
a set of sink ports coupled to said set of input ports to receive and forward said data packets; and
a set of data rings coupling said set of input ports and said set of sink ports.
3 Assignments
0 Petitions
Accused Products
Abstract
A cross-bar switch includes a set of input ports for receiving data packets and a set of sink ports for transmitting the received packets to identified targets. A set of data rings couples the input ports to the sink ports. Each sink port utilizes the set of data rings to simultaneously accept multiple data packets targeted to the same destination—creating a non-blocking cross-bar switch. Sink ports are also each capable of supporting multiple targets—providing the cross-bar switch with implicit multicast capability.
-
Citations
38 Claims
-
1. An apparatus comprising:
-
a set of input ports to receive data packets;
a set of sink ports coupled to said set of input ports to receive and forward said data packets; and
a set of data rings coupling said set of input ports and said set of sink ports. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A cross-bar switch comprising:
-
a set of input ports to receive data packets from a communications link;
a set of sink ports coupled to said set of input ports to receive said data packets from said set of input ports; and
a set of data rings coupling each sink port in said set of sink ports to each input port in said set of input ports. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. An cross-bar switch comprising:
-
a set of input ports to receive data packets from a communications link;
a set of sink ports coupled to said set of input ports to receive said data packets from said set of input ports; and
a set of data rings coupling each sink port in said set of sink ports to each input port in said set of input ports, wherein each sink port in said set of sink ports snoops data packets on each data ring in said set of data rings. - View Dependent Claims (23, 24)
-
-
25. A method for transferring data packets to targets, said method comprising the steps of:
-
(a) receiving a set of data packets;
(b) transferring said set of data packets to a set of data rings, wherein a set of sink ports is coupled to said set of data rings;
(c) a sink port in said set of sink ports, determining whether to accept data packets in said set of data packets, based on a set of criteria; and
(d) said sink port, collecting data for data packets accepted by said sink port. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. An apparatus for transferring data packets to targets, said apparatus comprising:
-
receiving means for receiving a set of data packets;
a set of sink ports coupled to said receiving means to receive said set of data packets from said receiving means, each sink port in said set of sink ports including;
determining means for determining whether to accept data packets in said set of data packet, based on a set of criteria; and
storage means for storing data for packets accepted by said sink port; and
data ring means for coupling said receiving means to said set of sink ports.
-
-
37. A cross-bar switch comprising:
-
a set of input ports to receive data packets from a communications link;
a set of sink ports coupled to said set of input ports to receive said data packets from said set of input ports, wherein each sink port in said set of sink ports includes;
a ring interface coupled to said set of data rings to receive data from said data packets, a storage buffer coupled to said ring interface to receive and store said data, and an output port coupled to said storage buffer to receive said data from said storage buffer and transmit said data on a communications link; and
a set of data rings coupling each sink port in said set of sink ports to each input port in said set of input ports, wherein each sink port in said set of sink ports snoops data packets on each data ring in said set of data rings.
-
-
38. A method for transferring data packets to targets, said method comprising the steps of:
-
(a) receiving a set of data packets;
(b) transferring said set of data packets to a set of data rings, wherein a set of sink ports is coupled to said set of data rings;
(c) a sink port in said set of sink ports, determining whether to accept data packets in said set of data packets, based on a set of criteria, wherein said step (c) includes the steps of;
(1) said sink port, determining whether a data packet includes a destination address in a predetermined set of destination addresses, and (2) said sink port, determining whether to accept said data packet based on additional criteria in said set of criteria;
(d) said sink port, collecting data for data packets accepted by said sink port;
(e) said sink port, issuing a rejection signal if said sink port determines not to accept said data packet in said step (c)(2); and
(f) said sink port transmitting said data packets collected in said step (d), wherein said step (c) and said step (d) are performed by each sink port in said set of sink ports.
-
Specification