Patent ID: 6754744
Filing Date: 2004-06-22
Classification: H04L

Abstract:
A process of handling packet data in a packet buffer, said process comprising:storing free pointers in a plurality of free pointer queues, with each of said plurality free pointer queues in a form of a linked list; retrieving free pointers from each of the plurality of free pointer queues and storing in a prefetch memory to provide a throughput of at least one free pointer per clock cycle; receiving a data packet; retrieving two free pointers from the prefetch memory; storing a first free pointer of said two free pointers in a start pointer register connoting a start of the data packet and storing a second free pointer of said two free pointers in an assembly linked list; supplying one free pointer for each middle data element of the data packet, until an end of packet portion is reached; linking said start of the data packet with an end of packet portion of a previously received packet in an output queue memory; reading out a data element of said data packet from said output queue memory when selected by a transmission scheduler and releasing a pointer of the data element to one of said plurality of free pointer queues; and releasing all pointers of a packet to one of said plurality of free pointer queues within one cycle when the packet is dropped; wherein said all free pointers linking free queues and all pointers linking data elements reside in at least one pointer memory.