Cache system used in a magnetic disk controller adopting an LRU system
First Claim
1. A magnetic disk controller incorporating a cache memory, comprising:
- determining means for determining if data requested on the basis of a disk access request from a host system is stored in said cache memory;
cache operation designation data storage means for storing cache operation designation data consisting of a cache memory address, the number of transfer sectors, a data transfer direction, and data representing necessity or lack of necessity of data transfer to said host system;
sector number reading means for reading a sector number stored in an ID field of a current read sector when a read miss is determined by said determining means upon a disk access request from said host system;
cache operation designation data producing means for producing the cache operation designation data on the basis of contents of the disk access request from said host system and a determination result from said determining means, and for storing the cache operation designation data in said cache operation designation data storage means, said cache operation designation data producing means, in the case of a read miss, to produce the cache operation designation data for each one of a plurality of subunits of a cache block to be replaced according to a cache memory address corresponding to a sector adjacent to the sector whose number is ready by said sector number reading means, a cache address corresponding to a start sector of a disk area from which data is to be transferred to said host system, and a cache memory address corresponding to a last sector from which data is to be transferred to said host system; and
to sequentially store the cache operation designation data corresponding to the subunits of said cache block in said cache operation designation data storage means, the cache operation designation data including, a cache memory address corresponding to the sector adjacent to the sector whose number is read by said reading means, said cache memory address serving as start cache operation designation data; and
data transfer means for reading out the cache operation designation data from said cache operation designation data storage means in an order starting from the start cache operation designation data, and for performing data transfer operation on the basis of the readout data.
0 Assignments
0 Petitions
Accused Products
Abstract
A magnetic disk controller incorporating a cache memory which employs an LRU (Least Recently Used) scheme in a replacement algorithm of cache blocks and comprising a directory memory whose entries have LRU counter fields, a host system issuing a read/write command to which an arbitrary LRU settling value is appended, a directory search circuit, and a microprocessor. The directory search circuit searches the directory memory in response to the read/write command issued from the host system. The microprocessor stores the LRU setting value appended to the read/write command in the LRU counter field of the hit entry of the directory memory or of the entry corresponding to the repalacement target cache block, in response to the search result of the directory search circuit.
112 Citations
3 Claims
-
1. A magnetic disk controller incorporating a cache memory, comprising:
-
determining means for determining if data requested on the basis of a disk access request from a host system is stored in said cache memory; cache operation designation data storage means for storing cache operation designation data consisting of a cache memory address, the number of transfer sectors, a data transfer direction, and data representing necessity or lack of necessity of data transfer to said host system; sector number reading means for reading a sector number stored in an ID field of a current read sector when a read miss is determined by said determining means upon a disk access request from said host system; cache operation designation data producing means for producing the cache operation designation data on the basis of contents of the disk access request from said host system and a determination result from said determining means, and for storing the cache operation designation data in said cache operation designation data storage means, said cache operation designation data producing means, in the case of a read miss, to produce the cache operation designation data for each one of a plurality of subunits of a cache block to be replaced according to a cache memory address corresponding to a sector adjacent to the sector whose number is ready by said sector number reading means, a cache address corresponding to a start sector of a disk area from which data is to be transferred to said host system, and a cache memory address corresponding to a last sector from which data is to be transferred to said host system; and
to sequentially store the cache operation designation data corresponding to the subunits of said cache block in said cache operation designation data storage means, the cache operation designation data including, a cache memory address corresponding to the sector adjacent to the sector whose number is read by said reading means, said cache memory address serving as start cache operation designation data; anddata transfer means for reading out the cache operation designation data from said cache operation designation data storage means in an order starting from the start cache operation designation data, and for performing data transfer operation on the basis of the readout data. - View Dependent Claims (2)
-
-
3. A cache memory, having a plurality of cache blocks, in a magnetic disk controller used in common by a plurality of magnetic disk drive units, comprising:
-
a directory memory, having entries respectively corresponding to the cache blocks in said cache memory, and fields in which directory data are stored including disk block addresses of disks blocks stored in said cache blocks respectively corresponding to entries and disk drive identifiers representing the respective magnetic disk drive units; directory search means for determining whether a target disk block is stored in said cache memory by comparing directory data in each entry of said directory memory with target disk block designation data, in response to a read/write command including the target disk block designation data comprising the disk drive identifier and a disk logical address; and storing means for storing the directory data in a directory memory entry corresponding to one of the cache blocks to be replaced, on the basis of a search result of said directory search means and the read/write command.
-
Specification