Claims
- 1. A device for managing packets in a data stream, comprising:
a write request control unit operable to divide a received packet into a plurality of packet cells, the packet cells including one or more long cells and one or more short cells, the write request control unit operable to selectively pair a long cell with a short cell; an access control unit operable to store pointers to the long cells in a long cell queue and pointers to the short cells in a short cell queue during a write cycle, the access control unit operable to store a long cell and short cell pair into a memory in accordance with the pointers in the long cell queue and the short cell queue.
- 2. The device of claim 1, wherein the write request control unit selectively pairs a long cell with a short cell to achieve an optimized performance order.
- 3. The device of claim 2, wherein the access control unit includes a write index for every long and short cell pointer, the access control unit operable to suspend the optimized performance order whenever a difference in the write index of top long and short cell pointers exceeds a predetermined threshold.
- 4. The device of claim 3, wherein the access control unit services pointers of stale cells in the long cell queue and the short cell queue when the difference in the write index of top long and short cell pointers has exceeded the predetermined threshold.
- 5. The device of claim 1, wherein the access control unit writes the packet cells into sequential banks of the memory.
- 6. The device of claim 1, further comprising:
a read request control unit operable to receive transmit cell requests during a read cycle, the read request control unit operable to provide a long request and a short request to the access control unit, the access control unit operable to store the long request and the short request in the long cell queue and the short cell queue.
- 7. The device of claim 6, wherein the read request control unit is operable to selectively pair a long request with a short request.
- 8. The device of claim 7, wherein the read request control unit selectively pairs a long request with a short request to achieve an optimized performance order.
- 9. The device of claim 8, wherein the access control unit includes a request index for every long and short request, the access control unit operable to suspend the optimized performance order whenever a difference in the read index of top long and short requests exceeds a predetermined threshold.
- 10. The device of claim 9, wherein the access control unit services pointers of stale requests in the long cell queue and the short cell queue when the difference in the write index of top long and short requests has exceeded the predetermined threshold.
- 11. A method for managing packets in a data stream, comprising:
dividing a packet into one or more packet cells, the packet cells including one or more long cells and one or more short cells; selectively pairing a long cell with a short cell; storing pointers to the long cells in a long cell queue during a write cycle; storing pointers to a short cell in a short cell queue during the write cycle; storing the long and short cell pair into a memory in accordance with the pointers in the long cell queue and the short cell queue.
- 12. The method of claim 11, further comprising:
establishing an optimized performance order for the long cell and the short cell; determining whether the optimized performance order is to be suspended; processing stale long and short cell pointers in response to the optimized performance order being suspended.
- 13. The method of claim 11, further comprising:
receiving transmit cell requests during a read cycle, the transmit cell requests including one or more long requests and one or more short requests; selectively pairing a long request with a short request; storing the long and short request pair in the long cell queue and the short cell queue; retrieving the long and short cell pair from the memory in accordance with the long and short request pair in the long cell queue and the short cell queue.
- 14. The method of claim 13, further comprising:
establishing an optimized performance order for the long request and the short request; determining whether the optimized performance order is to be suspended; processing stale long and short requests in response to the optimized performance order being suspended.
- 15. The method of claim 11, wherein the long and short cell pair is stored in sequential banks of the memory.
- 16. A system for managing packets in a data stream, comprising:
a packet manager operable to divide a received packet into a plurality of packet cells, the packet cells including one or more long cells and one or more short cells, the packet manager operable to selectively pair a long cell with a short cell, the packet manager operable to store pointers to the long cells in a long cell queue and pointers to the short cells in a short cell queue during a write cycle, the packet manager operable to store a long cell and short cell pair in accordance with the pointers in the long cell queue and the short cell queue.
- 17. The system of claim 16, further comprising:
a packet scheduler operable to receive packet identification information from the packet manager, the packet scheduler operable to generate instructions to schedule transmission of the packet for the packet manager.
- 18. The system of claim 17, wherein the instructions generated by the packet scheduler include dropping the packet as a result of congestion.
- 19. The system of claim 17, wherein the packet scheduler is operable to modify the packet identification information to include a time slot designation for transmission of the packet.
- 20. The system of claim 18, wherein the packet manager is operable to transmit the packet at the time slot designation in accordance with the instructions generated by the packet scheduler.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of U.S. application Ser. No. 09/737,916 filed Dec. 15, 2000, entitled “Apparatus and Methods for Managing Packets in a Broadband Data Stream” which 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.
Continuations (1)
|
Number |
Date |
Country |
Parent |
09737916 |
Dec 2000 |
US |
Child |
10828380 |
Apr 2004 |
US |