EP2390791B1

Credit management when resource granularity is larger than credit granularity

Abstract

This record has no abstract on file.

EP2390791B1, drawing sheet 1
Sheet 1 of 7

Term

3.2 yearsleft in the term

Expires 9 December 2029.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

13 claims: 9 independent, 4 dependent

  1. 1
    An apparatus comprising:a receiver (14) comprising a credit management unit (26) configured to manage flow control credits for an interface (20) to which the receiver is coupled during use, wherein each packet received on the interface comprises a header and optionally data, and wherein the header is measured in terms of one or more header credits for flow control on the interface, and wherein data is measured in terms of one or more data credits for flow control on the interface, each data credit representing a fixed number of data bytes;and a buffer memory (16) coupled to the receiver and configured to store packet headers and packet data corresponding to packets that are received on the interface by the receiver;and characterized in that the credit management unit (26) is configured to dynamically adjust a first amount of the buffer memory used to store packet headers and a second amount of the buffer memory used to store the packet data responsive to a size of the packet data in one or more received packets, and wherein the credit management unit (26) is configured to free data credits and header credits to a transmitter (12) on the interface responsive to the dynamic adjustments, and wherein the credit management unit (26) is configured to increase the first amount and decrease the second amount, and wherein the credit management unit (26) is configured to withhold one or more data credits corresponding to a consumed packet and to instead free one or more header credits to effect the modification at the transmitter (12).
  2. 3
    The apparatus as recited in claims 1 or 2 wherein the credit management unit (26) is configured to increase the first amount and decrease the second amount responsive to receiving one or more packets having packet data smaller in size than a first threshold.
  3. 4
    The apparatus as recited in any of claims 1-3 wherein the credit management unit (26) is configured to decrease the first amount and increase the second amount, and wherein the credit management unit (20) is configured to withhold one or more header credits corresponding to a consumed packet and to instead free one or more data credits to effect the adjustment at the transmitter (12).
  4. 6
    The apparatus as recited in any of claims 1-5 wherein the credit management unit (26) is configured to perform an opposite adjustment than a most recently performed adjustment responsive to receiving one or more packets having packet data larger in size than a first threshold and smaller in size than a second threshold.
  5. 7
    The apparatus as recited in any of claims 1-6 wherein the credit management unit (26) is configured to determine a minimum size of the first amount and a maximum size of the first amount, and wherein the credit management unit is configured to limit the dynamic modification of the first amount and the second amount based on the minimum size and the maximum size.
  6. 8
    A method, in a receiver (14) configured to manage flow control credits for an interface (20) to which the receiver is coupled during use, wherein each packet received on the interface (20) comprises a header and optionally data, and wherein the header is measured in terms of a header credit for flow control on the interface (20), and wherein data is measured in terms of one or more data credits for flow control on the interface (20), each data credit representing a fixed number of data bytes, the method comprising:dynamically increasing a first amount of the header credits and decreasing a second amount of the data credits responsive to a size of the packet data in one or more received packets;and freeing data credits and header credits to a transmitter (12) on the interface (12) responsive to the dynamic adjustments, wherein the freeing comprises withholding one or more data credits corresponding to a consumed packet and instead freeing one or more header credits to effect the adjustment at the transmitter (12).
  7. 10
    The method as recited in claims 8 or 9 further comprising:dynamically decreasing the first amount and increasing the second amount;and the freeing comprises withholding one or more header credits corresponding to a consumed packet and instead freeing one or more data credits to effect the adjustment at the transmitter (12).
  8. 12
    The method as recited in any of claims 8-11 further comprising performing an opposite adjustment than a most recently performed adjustment responsive to receiving one or more packets having packet data larger in size than a first threshold and smaller in size than a second threshold.
  9. 13
    The method as recited in any of claims 8-12 further comprising:determining a minimum size of the first amount and a maximum size of the first amount;and limiting the dynamic modification of the first amount and the second amount based on the minimum size and the maximum size.