Patent ID: 7869453

Claim:
A method for transferring data packets from a peripheral module to a memory via a memory-controller, the method comprising the steps of: allocating the memory in a plurality of segments, wherein each segment is assigned a classification from a variety of classifications; the memory controller receiving from the peripheral module to transmit a first data packet, wherein the first data packet comprises a first assigned classification from the variety of classifications; the memory controller receiving a request from the peripheral module to transmit a second data packet, wherein the second data packet comprises a second assigned classification from the variety of classifications, the second classification different from the first classification; the memory-controller determining whether there is space available in the memory to store the first data packet in a memory segment of the first classification; the memory-controller determining whether there is space available in the memory to store the second data packet in a memory segment of the second classification; the memory-controller sending an acknowledgement to the peripheral module, the acknowledgement indicating that the peripheral module can transmit the first data packet; the memory-controller sending an acknowledgement to the peripheral module, the acknowledgement indicating that the peripheral module can transmit the second data packet; the memory-controller receiving the first and second data packets from the peripheral module; if there is space available in the memory segments of the first and second classifications, storing the first and second data packets in the memory; and if there is space available in the memory segment of the second classification, but no space available in the memory segment of the first classification, the memory controller storing the second data packet and discarding the first data packet.