×

Adaptive read-ahead disk cache

  • US 5,809,560 A
  • Filed: 10/13/1995
  • Issued: 09/15/1998
  • Est. Priority Date: 10/13/1995
  • Status: Expired due to Term
First Claim
Patent Images

1. A method for buffering read requests from a bus master to a data storage device using a cache system, said bus master having a bus master address output for requesting data and a bus master data input for receiving data corresponding to said bus master address output, said data storage device having a data storage device address input for receiving a data storage device address and a data storage device data output for providing data corresponding to said data storage device address input, said cache system having a bus master address input coupled to said bus master address output, a bus master data output coupled to said bus master data input, a data storage device address output coupled to said data storage address input, and a data storage device data input coupled to said data storage device data output, said cache system having a real cache with a real cache data buffer, a real cache address buffer and a real cache status buffer, the read cache address buffer having a plurality of entries for storing real cache addresses, said cache system having a virtual cache with only a virtual cache address buffer and a virtual cache status buffer, said cache system buffering data associated with said bus master address, said method comprising the steps of:

  • storing said bus master address output in only said virtual cache address buffer if said bus master address output is not found in either of said real cache address buffer and said virtual cache address buffer;

    filling said real cache data buffer with data responsive to said bus master address from said data storage device if said bus master address is found only in said virtual cache address buffer;

    providing data responsive to sad bus master address directly from said bus master to said data storage device without placing said data in said real cache data buffer if said address is not found in said real cache address buffer or said virtual cache address buffer;

    updating said real cache address buffer and said real cache status buffer if said bus master address is found only in said virtual cache address buffer;

    detecting a hit in one of sad real cache address buffer entres if said bus master address output matches a real cache address; and

    providing data from said real cache data buffer associated with said bit to said bus master.

View all claims
  • 4 Assignments
Timeline View
Assignment View
    ×
    ×