Patent ID: 6141728
Filing Date: 2000-10-31
Classification: G06F

Abstract:
In a cache system comprising a cache buffer including a plurality of cache segments, each cache segment organized into a plurality of data block locations for storing data, and a cache manager for storing data into and retrieving data from said segments, a method of managing data transfer into and out of the segments, comprising the steps of:(a) maintaining a cache list comprising a plurality of entries each including information identifying: (1) a corresponding cache segment, and (2) a set of consecutive data blocks stored in the cache segment; and(b) in response to a request for transfer of a consecutive set of one or more data blocks out of the cache buffer, the requested set including a starting data block, performing steps including:(1) traversing the cache list to locate entries identifying the starting data block from among any of the data blocks stored in the cache segment, and consecutive data blocks successively following the starting data block without interruption, identifying as a missing data block the first data block in said succession, including said starting data block, not identified in any entry; and(2) providing cache information including:(i) cache hit status comprising: (1) a full hit if the missing data block is not in the requested set; (2) a miss if the missing data block is the starting data block in the requested set; or (3) a partial hit otherwise; and(ii) identity of said missing data block in case of a full or a partial hit;wherein, said cache status information can be used by the cache manager to transfer data out of the cache buffer.