Patent EP0203601A2 successfully refreshed from Google Patents.
← Back to Patent Explorer
EP0203601A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Cache system adopting an LRU system, and magnetic disk controller incorporating it

Assignee: Toshiba Corp
•
Filing: 1986-05-28
•
Granted: —
•
Expires: 2006-05-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract According to a magnetic disk controller incorporating a disk cache system, an arbitrary LRU value and a resident bit for inhibiting replacement of a corresponding block are added to a read/write command. Each entry of a directory memory (35 1 ) has a disk block address field, an LRU counter for storing the arbitrary LRU value, a write command receiving bit field representing non- writing of write data in the disk unit, the write data being accessed by the host system, a resident bit field for inhibiting replacement of the corresponding block, and a disk drive identifier field (LUN) representing the corresponding magnetic disk drive unit (10, through 10 4 ). The LRU setting value added to the read/write command is registered in the LRU counter field of the entry corresponding to the block to be replaced. If the number of data is smaller than a maximum number of blocks to be written in the disk unit, writing is performed for the corresponding block in the cache memory. The resident bit of the entry to be replaced is set/reset in response to the read instruction. If a read error occurs, the cache block to be replaced is divided into subunits on the basis of a sector next to that the number of which is read, a start sector fo the disk area data which is to be transferred to the host system, and a last sector thereof. A transfer start cache address, the number of transfer sectors, and a data transfer direction control code are produced for each one of the subunits of the cache block to be replaced. The directory memory is commonly used by a plurality fo magnetic disk units.

Inventors

  • 👤 Akihiko Furuya
  • 👤 Kouiti Kanamaru
  • 👤 Junichi Inoue

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-10-30 13:13
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0866; G06F12/12; G06F12/121; G06F12/126; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F2212/00; G06F2212/31; G06F2212/312; G06F3/0628; G06F3/0655; G06F3/0656

Claims Analysis

Total Claims: 14
Claim 1
Independent Claim 195 words
A cache system having a cache memory for storing a plurality of cache blocks and adopting an LRU (Least Recently Used) scheme as a replacement algorithm for the cache blocks, characterized in that there are provided: a directory memory (35 1 ) having fields storing, in respective entries corresponding to respective cache blocks of said cache memory, designation information for blocks registered in said cache memory and LRU counter fields indicating resident status in said cache memory of these blocks; command issuing means (28) for issuing a read/write command to which an arbitrary LRU setting value and designation information for a read/write target block are appended; directory search means (35 2 ) for searching whether the read/write target block is registered in said cache memory by comparing the registered block designation information of respective entries with the read/write designation information; and registering means (27) for registering the arbitrary LRU setting value (93) appended to the read/write command in a hit entry of said directory memory when hit occurs, and in the LRU counter field of an entry corresponding to the cache block in which the read/write target block is registered when a miss hit occurs.
Claim 2
Dependent Claim 195 words
A cache system having a cache memory for storing a plurality of cache blocks and adopting an LRU (Least Recently Used) scheme as a replacement algorithm for the cache blocks, characterized in that there are provided: a directory memory (35 1 ) having fields storing, in respective entries corresponding to respective cache blocks of said cache memory, designation information for blocks registered in said cache memory and LRU counter fields indicating resident status in said cache memory of these blocks; command issuing means (28) for issuing a read/write command to which an arbitrary LRU setting value and designation information for a read/write target block are appended; directory search means (35 2 ) for searching whether the read/write target block is registered in said cache memory by comparing the registered block designation information of respective entries with the read/write designation information; and registering means (27) for registering the arbitrary LRU setting value (93) appended to the read/write command in a hit entry of said directory memory when hit occurs, and in the LRU counter field of an entry corresponding to the cache block in which the read/write target block is registered when a miss hit occurs.
Claim 3
Dependent Claim 126 words
A system according to claim 1, characterized by further comprising: a first register (61) for storing a start address of a directory memory entry corresponding to a hit cache block if cache hit occurs as a result of directory search, the start address being stored together with a cache hit flag, an off state of the cache hit flag rendering said search means to detect a cache miss; and a second register (62) for storing a start address of a directory memory entry having a largest LRU value, the read/write target block being registered in the cache block corresponding to the entry specified by the address stored in said second register, when cache miss being detected and no empty space being found in said cache memory.
Claim 4
Dependent Claim 99 words
A system according to claim 2, characterized in that said registering means checks said first register, initializes an LRU value of the directory memory entry accessed in response to an address of said first register, in accordance with the arbitrary LRU value appended to the read/write command when cache hit is detected, and initializes an unregistered entry of said directory memory, or an LRU value of the directory memory entry accessed by an address of said second register, in accordance with the arbitrary LRU value appended to the read/write command when cache miss is detected in a read mode.
Claim 5
Dependent Claim 177 words
A cache system according to claim 1, characterized in that said directory memory (35 1 ) includes, in an entry corresponding to each cache block in said cache memory, a field for storing a specified data of a disk block registered in said cache memory, and a field for storing data representing incompletion of write data specified by a host system on said disk unit, and characterized in that there is further provided write instruction execution control means (27, 28, 34, 38, 39) for, if cache hit is detected and an instruction from said host system is a specified disk write instruction, accessing said directory memory to determine if the number of entries whose incompletion-of-writing data storing fields are set exceeds a predetermined number, and when the number of entries is smaller than the predetermined number, inhibiting writing of the write data in said disk unit, writing the write data specified by the write instruction in a corresponding block in said cache memory, and setting the incompletion-of-writing data storing field of the entry in said directory memory.
Claim 6
Dependent Claim 82 words
A system according to claim 4, characterized in that said write instruction execution control means writes, when the number of entries in which the incompletion-of-writing data storing fields are set exceeds the predetermined number, the write data in the corresponding block in said cache memory, and said disk unit (10), writes in said disk unit at least contents of said cache memory which are accessed by entries, the number of which exceeds the predetermined number, and resets the incompletion-of-writing data storing field.
Claim 7
Dependent Claim 59 words
A system according to claim 4, characterized by further comprising means for searching, upon power failure, incompletion-of-writing data in respective entries of said directory memory, and for writing data stored in the cache block of said cache memory corresponding to the entry in which the incompletion-of-writing data field is set, into the corresponding disk block of said disk unit.
Claim 8
Dependent Claim 42 words
A system according to claim 4, characterized in that the number of entries whose incompletion-of-writing data storing field are set is set to be a maximum number of entries for allowing writing in said disk unit in a backup operation upon failure.
Claim 9
Dependent Claim 43 words
A system according to claim 5, characterized in that the number of entries whose incompletion-of- storing data fields are set is set to be a maximum number of entries for allowing writing in said disk unit in a backup operation upon power failure.
Claim 10
Dependent Claim 214 words
A system according to claim 1, characterized in that said directory memory includes, in an entry corresponding to each cache block in said cache memory, a field for storing a specified data of a disk block registered in said cache memory, a field for storing data representing incompletion of write data specified by a host system on said disk unit, and a field for storing data for inhibiting replacement of a block specified by a host system, and characterized in that there is further provided read instruction execution control means (27, 28, 34, 38, 39) for, if cache miss is detected by said directory search means and an instruction from said host system is a disk read instruction, accessing said directory memory to determine an entry to be replaced among the entries whose replacement inhibiting data storing fields are reset, writing, if the incompletion-of-writing data storing field of said entry to be replaced is set, data of the corresponding block in said cache memory in said disk unit and thereafter writing the read data in the corresponding block and transferring the read data to said host system, resetting the incompletion-of-writing data storing field of the entry to be replaced, and setting/ resetting the replacement inhibiting data storing field in response to the read instruction.
Claim 11
Dependent Claim 41 words
A system according to claim 9, characterized in that the disk read instruction includes control data for setting/resetting the replacement inhibiting data storing field of the entry to be replaced when cache miss is detected in the disk read request mode.
Claim 12
Dependent Claim 390 words
A magnetic disk controller incorporating the cache system of claim 1, characterized by further comprising: determining means (35) for determining if data requested on the basis of the disk access request from said host system is stored in said cache memory (33); cache operation designation data storage means (45) 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 (27) for reading a sector number stored in an ID field of a sector earliest read, at a given moment, when a read miss is determined by said determining means upon a read request from said host system; cache operation designation data producing means (27) 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 (45), said cache operation designation data producing means (27) being adapted, in case of a read miss; to produce the cache operation designation data for each one of subunits obtained such that the cache block to be replaced is divided by a cache memory address corresponding to a sector next to that read by said sector number reading means (27), a cache address corresponding to a start sector of a disk area, data of which is to be transferred to said host system, and a cache memory address corresponding to a last sector thereof; and to sequentially store the cache operation designation data respectively corresponding to the subunits of said cache block in said cache operation designation data storage means, the cache operation designation data including, as a transfer start cache address, the cache address corresponding to the sector next to that the number of which is read by said reading means (27) being adapted to serve as start cache operation designation data; and data transfer means (27, 21, 34) for reading out the cache operation designation data from said cache operation designation data storage means (45) in an order starting from the start cache operation designation data, and for performing data transfer operation on the basis of the readout data.
Claim 13
Dependent Claim 206 words
A controller according to claim 11, characterized in that the data representing the data transfer direction and the necessity or lack of necessity of data transfer to said host system presents five modes, consisting of: i) a mode used for read hit, in which the contents of said cache memory (33) are transferred to said host system and said magnetic disk unit is not accessed; ii) a mode for read miss, in which said magnetic disk unit is read-accessed, the read data is transferred to said host system and, at the same time, is written in said cache memory; iii) a mode for read miss, in which data of a disk area not accessed by said host system must be read so that the read data from said magnetic disk unit is written in said cache memory but is not transferred to said host system; iv) a mode for write hit, in which the write data from said host system is transferred to said magnetic disk unit and, at the same time, is written in said cache memory; and v) a mode for write miss, in which the data from said host system is not written in said cache memory but in said magnetic disk unit.
Claim 14
Dependent Claim 78 words
A magnetic disk controller incorporating the cache memory of claim 1 and provided with a common cache memory used for a plurality of magnetic disk drive units, characterized in that said directory memory (35 1 ) has a disk drive identifier field (LUN) in each entry corresponding to each cache block in said cache memory, the disk drive identifier field (LUN) being adapted to represent the plurality of magnetic disk units (10 1 through 1 0 4 ).

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag