Patent ID: 8046559

Claim:
A device, comprising: a plurality of memory rank queues, wherein each of the plurality of memory rank queues is operable to store all pending memory requests targeting addresses within a corresponding memory rank in a memory; track a number of banks of the memory rank being targeted by all stored memory requests in the memory rank queue; and track the age of each stored memory request in the memory rank queue using an aging counter; and a memory request scheduler to schedule at least a minimum burst number of memory requests within one of the plurality of memory rank queues to be sent to the memory when at least the minimum burst number has been reached in the one of the plurality of memory rank queues; schedule at least one memory request to be sent to the memory when the age of the at least one memory request exceeds an aging threshold; and schedule the memory requests in one of the plurality of memory rank queues up to a maximum burst number of memory requests prior to scheduling the memory requests in another of the plurality of memory rank queues.