Qos inband upgrade
AssigneeApple Inc.
InventorsGurjeet S. Saund, Deniz Balkan, Kevin C. Wong
Life of this patent
Estimating the term…
Abstract
Systems and methods for upgrading QoS levels of older transactions based on the presence of higher level QoS transactions in a given queue. A counter may be maintained to track the number of transactions in a queue that are assigned a corresponding QoS level. Each separate QoS level can have a corresponding counter. When a transaction is received by the queue, the counter corresponding to the QoS level of the transaction is incremented. When a transaction leaves the queue, the transaction is upgraded to the highest QoS level with a non-zero counter. Also, when the transaction leaves the queue, the counter corresponding to the original QoS level of the transaction is decremented.
Claims24
A link interface unit comprising:
- a queue, wherein the queue is configured to store a plurality of transactions;
- and
- control logic, wherein the control logic is coupled to the queue, and wherein the control logic is configured to:
- maintain a first counter to track a number of transactions with a first quality of service (QoS) level that are stored in the queue;
- and
- upgrade a QoS level of a given transaction to the first QoS level responsive to:
- reading the given transaction out of the queue, wherein the given transaction has a QoS level lower than the first QoS level;
- and
- determining a value of the first counter is non-zero.
A method comprising:
- selecting a first transaction for transmission out of a queue;
- upgrading a quality of service (QoS) level of the first transaction responsive to determining one or more younger transactions in the queue have a higher QoS level than the first transaction;
- and
- reading the first transaction out of the queue with the upgraded QoS level.
A method comprising:
- maintaining a plurality of counters to track a number of transactions in a queue at each quality of service (QoS) level of a plurality of QoS levels;
- and
- upgrading a given transaction to a highest QoS level with a non-zero counter responsive to reading the given transaction out of the queue.
An apparatus comprising:
- a queue, wherein the queue is configured to store a plurality of transactions;
- one or more counters, wherein each counter is configured to track a number of transactions in the queue at a corresponding quality of service (QoS) level;
- and
- wherein the apparatus is configured to upgrade a QoS level of a given transaction selected for dequeueing responsive to determining a younger transaction enqueued in the queue has a higher QoS level.
Dependencies are inferred from the claim text.