Patent ID: 8234478

Claim:
A method for processing a read operation received by an intermediary cache coupled to one or more clients and to an external memory, the method comprising: receiving a read command from a client, wherein the read command includes a corresponding memory address for data being requested by the read command; determining a row in one bank of multiple banks within a data cache associated with the read command based on the corresponding memory address; determining that a cache line within the row is available for the requested data; reserving the cache line until the requested data is stored in the cache line to ensure that when the requested data is retrieved from the external memory the cache line is available for storing the requested data; scheduling a write access that stores the requested data in the cache line; receiving, from memory logic associated with the external memory, a write command that includes a specific clock cycle at which the memory logic is to transmit the requested data from the external memory to the reserved cache line; and prioritizing the write command received from the memory logic over additional read commands and write commands received from the one or more clients.