Apparatus and methods for managing packets in a broadband data stream
First Claim
1. A method for reading packets in a data stream, comprising the steps of:
- receiving long cell requests and short cell requests;
storing said long cell requests in a set of long cell request queues;
storing said short cell requests in a set of short cell request queues;
selectively pairing a long cell request in one of said set of long cell request queues and a short cell request in one of said set of short cell request queues to obtain an optimized pair of cell requests at each read cycle;
retrieving packet cells corresponding to said optimized pair of cell requests from a set of memory banks at each read cycle;
reordering said packet cells in a first data buffer; and
sending said packet cells in a sequential order.
6 Assignments
0 Petitions
Accused Products
Abstract
An exemplary method for writing packets in a data stream comprises the steps of dividing a packet into long packet cells and short packet cells, storing the long packet cells in a set of long cell queues and the short packet cells in a set of short cell queues, selectively pairing a long packet cell in one of the set of long cell queues with a short packet cell in one of the set of short cell queues to obtain an optimized pair of packet cells at each write cycle, and sequentially writing the optimized pair of packet cells at each write cycle to a set of memory banks. An exemplary method for reading packets in a data stream comprises the steps of receiving long cell requests and short cell requests, storing the long cell requests in a set of long cell request queues, storing the short cell requests in a set of short cell request queues, selectively pairing a long cell request in one of the set of long cell request queues and a short cell request in one of the set of short cell request queues to obtain an optimized pair of cell requests at each read cycle, retrieving packet cells corresponding to the optimized pair of cell requests from a set of memory banks at each read cycle, reordering the packet cells in a first data buffer, and sending the packet cells in a sequential order.
47 Citations
8 Claims
-
1. A method for reading packets in a data stream, comprising the steps of:
-
receiving long cell requests and short cell requests;
storing said long cell requests in a set of long cell request queues;
storing said short cell requests in a set of short cell request queues;
selectively pairing a long cell request in one of said set of long cell request queues and a short cell request in one of said set of short cell request queues to obtain an optimized pair of cell requests at each read cycle;
retrieving packet cells corresponding to said optimized pair of cell requests from a set of memory banks at each read cycle;
reordering said packet cells in a first data buffer; and
sending said packet cells in a sequential order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
assigning a tag number to each cell request, said tag number associating said cell request to a long cell request queue or a short cell request queue; and
reordering said packet cells based on said tag number.
-
-
3. The method of claim 1, wherein said reordering step includes the steps of:
-
storing said packet cells in said first data buffer; and
organizing said packet cells in a sequential order in said first data buffer.
-
-
4. The method of claim 3, wherein said organizing step includes the step of using a tag number index to reorder said packet cells in said sequential order.
-
5. The method of claim 1, further comprising the steps of:
-
organizing multiple packets comprising packet cells in a second data buffer; and
sending said multiple packets as a frame.
-
-
6. The method of claim 5, wherein said multiple packets include packets of a first size and packets of a second size and said multiple packets are organized and sent as a frame.
-
7. The method of claim 1, further comprising the steps of:
-
monitoring said long cell request queues and said short cell request queues; and
retrieving a packet cell corresponding to a stale cell request out of order after said stale cell request remains in a respective cell request queue for a predetermined amount of time.
-
-
8. The method of claim 7, further comprising the steps of:
-
maintaining a cell request index;
calculating an index difference between a top long cell request and a top short cell request based on said cell request index; and
determining a stale cell request based on said index difference.
-
Specification