Patent ID: 8850085
Filing Date: 2014-09-30
Classification: G06F

Abstract:
1. A method for managing bandwidth of a bus connecting a peripheral device to a host system, comprising: sending, by the peripheral device and over the bus, a first request to the host system, wherein the first request comprises a first read request identifying requested data to be read from a memory of the host system; incrementing, in response to sending the first read request, a pending read counter by an amount corresponding to the requested data; receiving, in response to sending the first read request, at least a portion of the requested data from the host system; decrementing, in response to receiving the at least the portion of the requested data, the pending read counter by an amount corresponding to the at least the portion of the requested data; comparing the counter and a threshold to obtain a result; selecting, based on the result, a scheme from a plurality of schemes for managing the bandwidth of the bus, wherein the scheme specifies a ratio of read requests and write requests to be sent on the bus; and sending, based on the scheme, a second request, wherein the second request is one selected from a group consisting of a write request and a second read request, wherein the write request comprises data to be written to the memory of the host system.