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.
- 2. The method of claim 1, wherein said reordering step includes the steps of: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.
RELATED APPLICATIONS
This application relates to an application entitled “Apparatus and Methods for Scheduling Packets in a Broadband Data Stream” filed on Dec. 15, 2000 bearing Ser. No. 09/737,917, an application entitled “Apparatus and Methods for Processing Packets in a Broadband Data Stream” filed on Sep. 13, 2000 bearing Ser. No. 09/661,244, and an application entitled “Apparatus and Methods for Establishing Virtual Private Networks in a Broadband Network” filed on Mar. 8, 2001 bearing Ser. No. 09/803,090. These related applications are hereby incorporated by reference for all purposes.
US Referenced Citations (5)
Number |
Name |
Date |
Kind |
5144622 |
Takiyasu et al. |
Sep 1992 |
A |
5303236 |
Kunimoto et al. |
Apr 1994 |
A |
6118759 |
Ohyoshi et al. |
Sep 2000 |
A |
6266325 |
Ishioka et al. |
Jul 2001 |
B1 |
6275472 |
Yamaguchi et al. |
Aug 2001 |
B1 |
Non-Patent Literature Citations (3)
Entry |
U.S. patent application Ser. No. 09/661,244, filed Sep. 13, 2000; “Apparatus and Methods for Processing Packets In a Broadband Data Stream”; Inventors: Rob Liston et al. |
U.S. patent application Ser. No. 09/737,917, filed Dec. 15, 2000; “Apparatus and Method for Scheduling Packets In a Broadband Data Stream”; Inventors: Glenn Gracon et al. |
U.S. patent application Ser. No. 09/803,090, filed Mar. 8, 2001; “Apparatus and Method for Establishing Virtual Private Networks In a Broadband Network”; Inventors: Michael Kazban et al. |