Common scalable queuing and dequeuing architecture and method relative to network switch data rate
First Claim
Patent Images
1. A network switch arrangement comprising:
- an external memory for temporarily storing data packets to be forwarded by the network switch;
at least one network switch port having a predetermined data rate for receiving data packets from network nodes and transmitting data packets to said network nodes;
a data packet transmission controller associated with the at least one network switch port for controlling the transmission of data packets between the external memory and the at least one network switch port;
an external memory controller;
a state machine within the data packet transmission controller for receiving predetermined information from the external memory controller concerning the data rate of one of data packets being transmitted from the at least one network switch port and data packets being received by the at least one network switch port, and the state machine issuing a command signal based on the predetermined information; and
data path logic within the data packet transmission controller for receiving the command signal and configured to control transmission of data packets based on the received command signal, the data path logic also configured to scale a data path for transmission of data packets between the at least one network switch port and the external memory based on the predetermined data rate of the network switch port.
1 Assignment
0 Petitions
Accused Products
Abstract
A network switch arrangement and method for providing a common architecture for queuing and dequeuing of data frames as they are transferred from a switch port to an external memory and similarly retrieved from the external memory to the switch port, irrespective of the particular data rate of the port. Logic controlling the actual data path is partitioned from logic responding to port data rate information by providing a “handshaking” communication arrangement between the two logics independent of the data rate. Hence, scalability of the data path over a wide range of data rates may be achieved while maintaining a single, common logic architecture.
-
Citations
14 Claims
-
1. A network switch arrangement comprising:
-
an external memory for temporarily storing data packets to be forwarded by the network switch;
at least one network switch port having a predetermined data rate for receiving data packets from network nodes and transmitting data packets to said network nodes;
a data packet transmission controller associated with the at least one network switch port for controlling the transmission of data packets between the external memory and the at least one network switch port;
an external memory controller;
a state machine within the data packet transmission controller for receiving predetermined information from the external memory controller concerning the data rate of one of data packets being transmitted from the at least one network switch port and data packets being received by the at least one network switch port, and the state machine issuing a command signal based on the predetermined information; and
data path logic within the data packet transmission controller for receiving the command signal and configured to control transmission of data packets based on the received command signal, the data path logic also configured to scale a data path for transmission of data packets between the at least one network switch port and the external memory based on the predetermined data rate of the network switch port. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of controlling a transmitting and receiving data path for a network switch port having a predetermined data rate for receiving data packets from and transmitting data packets to network nodes, comprising the steps of:
-
writing data received at the network switch port to an external memory and reading data to be transmitted by the network switch port from the external memory via the transmitting and receiving data path;
generating a control signal to control the transmitting and receiving data path based upon the predetermined data rate of a particular data packet being received by the network switch port or transmitted from the network switch port; and
scaling the transmitting and receiving data path based upon the control signal, wherein scaling includes controlling an amount of data read from the external memory during a read burst. - View Dependent Claims (9, 10, 11, 12, 13, 14)
receiving data from a receive buffer in the network switch port;
preparing the data for storage in the external memory;
addressing one or more storage locations within the external memory in which to store the prepared data based on the control signal; and
and writing the prepared data to the one or more addressed storage locations.
-
-
12. The method according to claim 11, wherein the step of preparing the data for storage includes separating the data into one or more packets of a predetermined number of bytes.
-
13. The method according to claim 12, wherein the step of addressing one or more storage locations within the external memory includes assigning a separate storage location to each of the one or more packets.
-
14. The according to claim 9, further comprising the steps of:
-
retrieving a frame pointer addressing a specific location within the external memory;
generating an address based on the retrieved frame pointer that addresses the specific location;
retrieving data stored in the specific location from the external memory and transmitting the data over a medium attached to the network switch port at the certain defined rate.
-
Specification