or
Bookmark and Share
Disk drive with cache having adaptively aged segments
   
Document Number
US Patent 5890213
Issued Date
March 30, 1999
Link
Inventors
Map
Abstract
A method provides for adaptively aging cache segments in a segmented cache in a disk drive. The disk drive receives commands via an intelligent interface from a host. The drive has a magnetic disk. The cache employs a cache control structure including cache parameters, wherein each segment has a scan count of the number of scans of a segment and an access type, and wherein the cache parameters include a maximum number of misses to indicate the maximum number of times a segment will be scanned without a cache hit. A scan count is maintained for each segment while processing commands from the host. The maximum number of misses is adaptively adjusted based on the access type of the cache segments. The scan count for a segment is compared to the maximum number of misses to determine if the segment should be aged out.
Drawing
Disk drive with cache having adaptively aged segments - US Patent 5890213 Drawing
Drawing from US Patent 5890213
Tags:
Description:
Amusing 0%
Clever 0%
Complex 0%
Efficient 0%
Historic 0%
Important 0%
Innovative 0%
Interesting 0%
Practical 0%
Simple 0%
Number of Claims:
20
Comments:
no comments yet
Owner
Published
March 30, 1999
Application Number
08/984,114
Filed
December 3, 1997
US Classification
711/113   711/133 711/136
Int'l Classification
G06F   12/08   (20060101)   G06F   12/12   (20060101)   G06F   3/06   (20060101)  
Parent Case
REFERENCE TO RELATED APPLICATION This application is a continuation of parent application Ser. No. 08/864,525 filed May 28, 1997, titled "DISK DRIVE CACHE SYSTEM" in the names of M. Hicken, S. Howe, D. Sokolov, T. Swatosh, and J. Williams, and assigned to the assignee hereof. The entire disclosure of the parent application, including the appendices thereof (Appendix Listings 1, 2, 3, 4, and 5), is hereby incorporated by reference herein.
USPTO Field of Search
711/113   711/133   711/136  
Related Patents
6018789 - Disk drive with cache segment providing adaptively managed chunks - Owned by Western Digital Corporation (Irvine, CA)

The disk drive provides a method of adaptively managing a cache segment divided into chunks by defining an unavailable data type to be stored in an element of a chunk array which indicates that the chunk is not available, and defining an available data type to be stored in an element of the chunk array that indicates the chunk is available and that indicates the number of consecutive chunks that are available. The disk drive also computes a number of chunks needed to fit the request length and scans the chunk array to find a first available element whose available data type meets a predetermined criteria for the number of chunks needed to fit the request length.

6141728 - Embedded cache manager - Owned by Quantum Corporation (Milpitas, CA)

A method for managing data blocks in a cache buffer defining date block segments, and for automatically transferring data into and out of the cache buffer. A cache list comprises a plurality of entries each including information identifying a corresponding cache segment, and a set of consecutive data blocks stored in the cache segment. Providing cache status for a requested set of date blocks includes traversing the cache list to locate entries identifying the starting data block in the requested set, and consecutive data blocks successively following the starting data block without interruption, and identifying as a missing data block the first data block in said succession, including said starting data block, not identified in any entry. The missing data block is used to provide status: a full hit if the missing data block is not in the requested set; a miss if the missing data block is the starting data block in the requested set, or a partial hit otherwise. In response to a write command for a new set of data, the cache list is traversed to locate all entries identifying sets of data blocks overlapping the new set. If a located entry identifies a set of data blocks fully overlapping the new set, there is a full hit. If no entry is located, there is miss. Otherwise, there is a partial hit. The new set can be automatically transferred into a predesignated buffer area selected by the cache manager.

6799186 - SLA monitor calendar buffering - Owned by International Business Machines Corporation (Armonk, NY)

The invention provides a method for increasing the efficiency of accessing interdependent data by caching the relevant data in multiple cache buffers. A user may input a preference for an amount of a first level of information and a refresh time period for the first level of information. A user may also input a preference for an amount of a second level of information and a refresh time period for the second level of information. The first level of information and at least one reference to the second level of information may be cached in a first buffer. The second level of information may be cached in a second buffer. The first level of information, along with a reference to the second level of information, and the second level of information may be refreshed based upon user preferences. Upon request for the interdependent data, the first level of data may be retrieved. The reference to the second level of data may be determined and then the second level of data may be retrieved based on the given reference.

7464218 - Method for improving data throughput for a data storage device - Owned by Seagate Technology LLC (Scotts Valley, CA)

A method for improving throughput performance of a data storage device by executing an execution critical write-back data priority routine programmed into a controller of the data storage device. The method includes, determining a write-back data aging threshold limit; identifying and executing a pending command; recognizing write-back data exceeding the aging threshold limit as an ending position aged data execution command; determining a read/write head following an execution of a pending command; determining a latency portion of the aged data execution command based on the determined head position; ascertaining a total execution time for each of a plurality of commands based on the determined head position; selecting from the plurality of commands an additional command executable within the determined latency portion; and executing both the additional command and the aged data execution command following execution of the pending command, when the total execution time of the aged data execution command is unaffected.

6487638 - System and method for time weighted access frequency based caching for memory controllers - Owned by Dell Products, L.P. (Round Rock, TX)

A system and method for replacing cached data for a computer system utilizing one or more storage devices is disclosed. The storage devices are divided into a plurality of areas or bins. Each bin is preferably the same size. A Bin Access Table (BAT) is an array stored in memory that contains a frequency value for each bin corresponding to the number of times that the bin has been accessed during a predetermined time period. The BAT also contains a time stamp for each bin corresponding to the time that the bin was last accessed. A hot spot algorithm is used to calculate a hot spot factor or value hsf(x) for each bin based on its associated frequency value listed in the BAT. The frequency values may be weighted based on the time the bin was last accessed. Each line in cache will therefore correspond to a specific bin for which a time weighted hotspot factor hsf(x) has been calculated. These time weighted hot spot values are be stored in a hot spot table. When data is retrieved from a storage in response to a cache miss, a memory controller, such as a processor or RAID controller, will compare the hotspot factor hsf(a) of the bin associated with the new data to the lowest time weighted hotspot factor hsf(z) in the hot spot table. If the time weighted hsf(z) is greater than hsf(a), then this indicates that bin (z), the bin with the lowest time weighted hotspot factor, is accessed more frequently than bin (a), the bin containing the retrieved data. Thus if the time weighted hsf(z) is greater than hsf(a), then the cache line containing data from bin (z) will not be replaced. If hsf(a) is greater than the time weighted hsf(z) then the new data will replace the cached data from bin (z). The BAT table is updated after the I/O access.

Claims
Description
About| FAQs| Terms & Disclaimer| Link to Us| Contact Us