JPS60217444A - Control method for disk cache device - Google Patents
Control method for disk cache deviceInfo
- Publication number
- JPS60217444A JPS60217444A JP59072750A JP7275084A JPS60217444A JP S60217444 A JPS60217444 A JP S60217444A JP 59072750 A JP59072750 A JP 59072750A JP 7275084 A JP7275084 A JP 7275084A JP S60217444 A JPS60217444 A JP S60217444A
- Authority
- JP
- Japan
- Prior art keywords
- data
- control area
- block
- bind
- blocks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明はディスクキャッシュ装置の制御方法に係υ、特
に高い応答性を要求するシステムに使用するに適したデ
ィスクキャッシュ装置の制御方法に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Application of the Invention] The present invention relates to a method of controlling a disk cache device, and particularly to a method of controlling a disk cache device suitable for use in a system requiring high responsiveness.
ディスクキャッシュ装置の機能には、次の二つが存在す
る。第1は、CPUとディスクメモリとの間でデータの
受渡しを行いながら、CPUのディスクメモリへのアク
セスに対する応答時間を平均的に短縮する機能である。The disk cache device has the following two functions. The first function is to shorten the average response time for CPU access to disk memory while exchanging data between the CPU and disk memory.
又、第2は、ディスクメモリ上の領域を指定して、その
領域のデータが常にキャッシュメモリ上に存在する様に
制御することにより、当該指定領域のアクセスに対して
は高速の応答を保証する機能である。Second, by specifying an area on the disk memory and controlling the data in that area so that it always exists in the cache memory, a high-speed response is guaranteed for access to the specified area. It is a function.
一方、ディスクキャッシュ装置は制御装置とキャッシュ
メモリとに構造的に分離することができるが、キャッシ
ュメモリとして必要なハードウェアは、メモリ容散を4
メガバイトとした場合、現在使用可能な64キロビツト
メモリを使用してもデータだけで五百個、信頼性回路I
As)その他周辺回路を含めると約−子細のICが必要
となる。即ち、大量のICを使用するために装置の信頼
性が問題となる。On the other hand, a disk cache device can be structurally separated into a control device and a cache memory, but the hardware required for the cache memory
In terms of megabytes, even if the currently available 64 kilobit memory is used, there will be only 500 pieces of data, and the reliability circuit I
As) If other peripheral circuits are included, approximately 100% of the IC will be required. That is, since a large number of ICs are used, reliability of the device becomes a problem.
ディスクキャッシュ装置では、キャッシュメモリ内のデ
ータの管理を、一定の大きさのブロックを単位として行
っているが、従来のディスクキャッシュ装置では、障害
を検出したブロックに対するアクセスを行わないように
して障害に対処していた。しかしこの方法では、前述し
たディスクキャッシュ装置の第2の機能、即ちディスク
メモリ上特定の領域のデータを常に保持しているときに
、キャッシュメモリの当該記憶領域に障害が生じた場合
、高速応答を保証することが不可能となる。Disk cache devices manage data in cache memory in units of blocks of a fixed size, but conventional disk cache devices prevent failures by not accessing blocks where a failure has been detected. I was dealing with it. However, with this method, the second function of the disk cache device mentioned above, that is, when data in a specific area of the disk memory is always retained, if a failure occurs in the storage area of the cache memory, a high-speed response is provided. It becomes impossible to guarantee.
又、この様な障害が発生した場合、回復の手段として、
キャッシュメモリ上で当該記憶領域全体を移動すること
が考えられるが、このとき保持すべきデータの全てが一
度消失するため、性能低下の影響が著しい。また、当該
記憶領域の大きさと障害の位置(ブロック番号)関係に
よっては、移動そのものが不可能なことがある。しかも
、前記した様に、ディスクキャッシュ装置では大量のI
Cを使用するため、この様な事態の発生する確率は、決
して低くはないのである。In addition, if such a failure occurs, as a means of recovery,
It is conceivable to move the entire storage area on the cache memory, but in this case all the data to be held will be lost at once, resulting in a significant drop in performance. Further, depending on the relationship between the size of the storage area and the location (block number) of the failure, the movement itself may not be possible. Moreover, as mentioned above, disk cache devices require a large amount of I/O.
Since C is used, the probability of such a situation occurring is not low.
本発明は、上記した従来技術の欠点に鑑みなされたもの
で、キャッシュメモリ上で特定のデータを常に保持して
いる領域に障害が生じた場合、直ちに回復させて、上記
特定のデータの高速応答を保障する様にしたディスクキ
ャッシュ装置の制御方法を提供することを目的としてい
る。The present invention was devised in view of the above-mentioned drawbacks of the prior art, and when a failure occurs in the area that always holds specific data on the cache memory, it is possible to immediately recover the area and provide high-speed response of the specific data. The purpose of this invention is to provide a method for controlling a disk cache device that ensures the following.
本発明のディスクキャッシュ装置の制御方法は、次の様
なものである。即ち、ディスクメモリに記憶されたデー
タには、キャッシュメモリに記憶されると書き換えを行
なわないバインド制御領域・コデータと書き換えを行な
うI4U制御領域のデータが存在する。そして、キャッ
シュメモリは、ブロックと呼ばれる単位でデータを記憶
するが、バインド制御領域のデータを記憶するブロック
に障害が生じた場合、直ちにLRU制御領域のデータを
記憶していたブロックをバインド制御領域のデータを記
憶するブロックに変更し、システムを回復させて、高速
応答を可能にするものである。The method of controlling a disk cache device according to the present invention is as follows. That is, the data stored in the disk memory includes bind control area/codata that is not rewritten once it is stored in the cache memory, and data in the I4U control area that is rewritten. Cache memory stores data in units called blocks, but if a failure occurs in a block that stores data in the bind control area, the block that stores data in the LRU control area is immediately replaced with the block that stores data in the bind control area. It changes the blocks that store data, recovers the system, and enables high-speed response.
具体的には、あらかじめバインド制御領域のデータを記
するブロックを一定の基準で順序づけ、同様にL几U制
御領域のデータを記憶するブロックを一定の基準で順序
うけておく。そして、バインド制御領域のデータを記憶
するブロックに障害が生じた場合、当該ブロックを上記
順序づけがら切シ離す。同様に、L几U制御領域のデー
タを記憶するブロックの心太容量を一定の基準に従って
、上記関係づけから切り離す。次に、切シ離されたLR
U制御領域のデータを記憶されたブロックを、新たにバ
インド制御領域のデータを記憶するブロックとして順序
づけるものである。Specifically, blocks that store data in the bind control area are ordered in advance based on a certain standard, and blocks that store data in the L/U control area are similarly ordered based on a certain standard. If a failure occurs in a block that stores data in the bind control area, the block is separated in the above order. Similarly, the core capacity of the block that stores data in the L/U control area is separated from the above relationship according to a certain standard. Next, the separated LR
The block in which the data of the U control area is stored is ordered as a block in which the data of the bind control area is newly stored.
以下添付の図面に示す実施例にょシ、更に詳細に本発明
について説明する。The present invention will be described in more detail below with reference to embodiments shown in the accompanying drawings.
第1図は本発明の方法を実行するディスクキャッシュ装
置の一実施例を示すブロック図である。FIG. 1 is a block diagram showing an embodiment of a disk cache device that executes the method of the present invention.
同図において、CPU1ooはディスクメモリ200と
制御装置300を介して接続され、制御装置300はキ
ャッシュメモリ400,500゜600,700に接続
されている。CPUI 00と制御装置300は信号線
10と制御線30によって接続され、ディスクメモリ2
00と制御装置300は信号線20と制御線40によっ
て接続されている。制御装置300と各キャッシュメモ
リ400〜700は、制御信号バス50とデータバス6
0とアドレスバス70によって接続されている。In the figure, a CPU 1oo is connected to a disk memory 200 via a control device 300, and the control device 300 is connected to cache memories 400, 500, 600, and 700. CPUI 00 and control device 300 are connected by signal line 10 and control line 30, and disk memory 2
00 and the control device 300 are connected by a signal line 20 and a control line 40. The control device 300 and each cache memory 400 to 700 are connected to a control signal bus 50 and a data bus 6.
0 by an address bus 70.
ディスクメモリ200は、100メガバイトの記憶容量
を有している。又、各キャッシュメモリ400〜700
は、それぞれ独立したボードで構成され、それぞれ1メ
ガバイトの記憶容量を有している。Disk memory 200 has a storage capacity of 100 megabytes. In addition, each cache memory 400 to 700
consists of independent boards, each with a storage capacity of 1 megabyte.
第2図(a)は、ディスクメモリ200の記憶領域を示
し、第2図tb)はキャンシュメモリ400〜700の
記憶領域を示し、第2図(C)は制御装置300内のデ
ィレクトリを示している。FIG. 2(a) shows the storage area of the disk memory 200, FIG. 2(tb) shows the storage area of the cache memories 400 to 700, and FIG. There is.
第1図に示すキャッシュメモリ装置において、キャッシ
ュメモリ400〜700はブロックという単位でデータ
を管理するが、このブロックの一単位を8キロバイトと
すると、キャッシュメモリ400〜700で構成される
4メガバイトのキャッシュメモリには512個のブロッ
クが存在することになる。従って、本来第2図(b)に
示すキャッシュメモリには、実際には512個のプoツ
クが存在し、第2図(c)に示すポインタl−IJには
512個のブロックに対応する512個の管理情報が格
納されることになる。しかし、第2図(1)、(b)、
tc)に示す様に、この実施例では、簡単のため、キャ
ッシュメモリのブロック数をブロックa −hの8個と
し、ディレクトリの数もこれに応じてディレクトリ1〜
8の8個としている。In the cache memory device shown in FIG. 1, the cache memories 400 to 700 manage data in units called blocks. If one unit of this block is 8 kilobytes, a 4 megabyte cache consisting of the cache memories 400 to 700 There will be 512 blocks in memory. Therefore, there are actually 512 blocks in the cache memory shown in FIG. 2(b), and the pointer l-IJ shown in FIG. 2(c) corresponds to 512 blocks. 512 pieces of management information will be stored. However, Fig. 2 (1), (b),
As shown in tc), in this embodiment, for simplicity, the number of blocks in the cache memory is set to 8 blocks a to h, and the number of directories is also changed accordingly.
8 of 8.
ディレクトリ1〜8は、第2図(C)に示す様に、管理
するブロックのブロック番号a −hを格納する部分と
、各ディレクトリ1〜8の番号を指示するポインタから
構成され、キャッシュメモリ400〜700の対応ブロ
ックを管理する。As shown in FIG. 2(C), the directories 1 to 8 are composed of a part for storing the block numbers a to h of the blocks to be managed, and a pointer indicating the number of each directory 1 to 8, and are stored in the cache memory 400. ~700 corresponding blocks are managed.
第2図(a)に示す様に、ディスクメモリ200の記憶
領域には、一度キャッシュメモリ400〜700に記憶
されると書き換えをしないバインド制御領域と、倒産で
もキャッシュメモリ400〜700上で書き換えを行な
うLRU制御領域とが存在する。キャッシュメモリ40
0〜700に記憶されたバインド制御領域のデータはデ
ィレクトリ1〜3によって管理され、各ディレクト1〜
3のポインタは、キャッシュメモリ400〜700中に
記憶されたデータのディスクメモリ200中のアドレス
順序(アドレスの小嘔い方が先になる)を示す。キャッ
シュメモリ400〜700に記憶されたLRU制御領域
のデータはディレクトリ4〜8によって管理され、各1
” (Lクト9.1〜8のボーrンタは、キャッシュメ
モリ400〜700中に記憶されたデータがアクセスさ
れた順序関係を示す。即ち、ディレクト1〜3のポイン
タは、管理するキャッシュメモリ400〜700内のデ
ータのディスクメモリ200上のアドレス順序をディレ
クトリ1〜3の11論席関係〒示千ものであふ〜V、デ
ィレクトリ4〜8のディスクは、管理するキャッシュメ
モリ400〜700内のデータのアクセス順序をディレ
クトリ4〜8の順序関係で示すものである。As shown in FIG. 2(a), the storage area of the disk memory 200 includes a bind control area that cannot be rewritten once stored in the cache memories 400 to 700, and a bind control area that cannot be rewritten on the cache memories 400 to 700 even if the cache memory 400 to 700 goes bankrupt. There is an LRU control area to be used. cache memory 40
The data in the bind control area stored in 0 to 700 is managed by directories 1 to 3, and each directory 1 to 700 is
The pointer 3 indicates the address order in the disk memory 200 of the data stored in the cache memories 400 to 700 (the smaller address comes first). Data in the LRU control area stored in cache memories 400 to 700 is managed by directories 4 to 8, and one
(The directors 9.1 to 8 indicate the order in which data stored in the cache memories 400 to 700 are accessed. In other words, the pointers of directories 1 to 3 point to the managed cache memory 400. The address order of the data in ~700 on the disk memory 200 is the 11-discuss relationship between directories 1~3. The access order of directories 4 to 8 is shown in the order relationship of directories 4 to 8.
尚、この実施例では、簡単のためディレクトリ1〜8内
のポインタは、片方向のみの順序関係を示すものとする
。又、ディレクトリ1〜8は、2ワードで構成され、第
2図(C)に示す実施例では2X8=16ワ一ド分必袂
となる。しかし、実際には、前記した様に512個のブ
ロックに対応して512個のブレレフトリが必要とされ
るため、2X512=1024ワ一ド分必袂になる。又
、このディレクトリ1〜8は、高速゛な操作が要求嘔れ
るため、制御装置300内に設けられている。In this embodiment, for the sake of simplicity, it is assumed that pointers in directories 1 to 8 indicate an order relationship in only one direction. Directories 1 to 8 are composed of 2 words, and in the embodiment shown in FIG. 2(C), 2×8=16 words are required. However, in reality, as mentioned above, 512 blocks correspond to 512 blocks, so 2×512=1024 words are required. The directories 1 to 8 are provided in the control device 300 because high-speed operations are required.
第1図に示すCPUl00からデータの読み出し命令が
出力されると、キャッシュメモリ400〜700上に該
尚データが存在する場合にはキャッシュメモリ400〜
700からデータが転送され、該当データが存在しない
場合にはディスクメモリ200からCPUl00にデー
タを転送するとともに、キャッシュメモリ400〜70
0の一つのブロックにこのデータを書き込む。データを
新たにキャッシュメモリ400〜700に書き込む場合
には、LL(、U制御領域のデータについては、キャッ
シュメモリ400〜700中の最も古くアクセスされた
ブロックに書き込むことが望ましい。When a data read command is output from the CPU 100 shown in FIG.
Data is transferred from the disk memory 200 to the CPU 700, and if the corresponding data does not exist, the data is transferred from the disk memory 200 to the CPU100, and the data is transferred from the cache memory 400 to 70.
Write this data in one block of 0. When newly writing data to the cache memories 400 to 700, it is desirable to write data in the LL (, U control area) to the oldest accessed block in the cache memories 400 to 700.
本実施例においては、これを実現するのが、前記したデ
ィレクトリ4〜8のポインタによる関係づけである。In this embodiment, this is achieved by associating the directories 4 to 8 with the pointers described above.
第3図は、ディレクトリ1〜8の構成を示す図である。FIG. 3 is a diagram showing the structure of directories 1 to 8.
図示する様に、ディレクトリは2ワードで構成され、1
ワード目には、当該ディレクトリによって管理されるデ
ータが書き込まれているキャッシュメモリ400〜70
0上のフロック番号が書き込まれる。2ワード目には、
前記したティレフト91〜8間の順序関係を示すポイン
タ(第7〜第16ビツト)の他に、各稲の情報を書き込
むための複数ピットが存在する。2ワード目の第1ビツ
トDEは、当該ディレクトリが管理するデータが有効で
あることを示すピットであシ、ピットDEが1″のとき
有効であることを示す。又、第2ビツトBBは、当該デ
ィレクトリが管理するデータが書き込まれているキャッ
シュメモリ400〜700上のブロックに障害があるこ
とを示すピットで、ピットBBが1″のとき障害がある
ことを示す。第4ビツトENDは、当該ディレクトリが
管理するデータがバインド制御領域のデータかLRU制
御領域のデータかを示すピットで、ピットBNDが1″
のときバインド制御領域のデータであることを示し、パ
0”のときI4U制御領域のデータであることを示す。As shown in the figure, the directory consists of two words, one
The word number is a cache memory 400 to 70 in which data managed by the directory is written.
Flock numbers above 0 are written. In the second word,
In addition to the pointers (7th to 16th bits) indicating the order relationship among the till lefts 91 to 8 described above, there are a plurality of pits for writing information about each rice. The first bit DE of the second word is a pit indicating that the data managed by the directory is valid, and indicates that the data is valid when the pit DE is 1''.The second bit BB is A pit indicates that there is a failure in a block on the cache memory 400 to 700 in which data managed by the directory is written, and a pit BB of 1'' indicates that there is a failure. The fourth bit END is a pit indicating whether the data managed by the directory is data in the bind control area or data in the LRU control area, and the pit BND is 1''.
When it is 0'', it indicates that the data is in the bind control area, and when it is 0'', it indicates that it is data in the I4U control area.
第4図(a)、(b)、(C)は、LRU制御領域にお
けるデータを管理する場合のディスクメモリ200の記
憶領域及びキャッシュメモリ400〜700の記憶領域
及びディレクトリ4〜8の内容を示す図である。第4図
(a)に示す様に、データD、 E、F、B、Cがディ
スクメモリ200内に記憶されており、これらのデータ
が第4図(b)に示す様にキャッシュメモリ400〜7
00内のブロックd+ e+ f+ go ”に記憶さ
れているとする。今、キャッシュメモリ400〜700
でデータがF、E、D、C,Bのj@番にアクセスされ
たとすると、第4図(C)に示す様に、ディレクトリ5
(新)→4→6→7→8(旧)という一連のポインタの
指示によね、データB −Fのアクセス順序が保持され
る。そして、最も新しくアクセスされたディレクトリ番
号を示すポインタLTOPは5を指示し、更に最も古く
アクセスされたディレクトリ番号を示すポインタLBO
TTOMには8が指示逼れる。FIGS. 4(a), (b), and (C) show the storage area of the disk memory 200, the storage area of the cache memories 400 to 700, and the contents of directories 4 to 8 when managing data in the LRU control area. It is a diagram. As shown in FIG. 4(a), data D, E, F, B, and C are stored in the disk memory 200, and these data are stored in the cache memories 400 to 400 as shown in FIG. 4(b). 7
Assume that the cache memory is stored in block d+e+f+go'' in block 00.Currently, cache memory 400 to 700
If data is accessed at j@ numbers of F, E, D, C, and B, the directory 5 is accessed as shown in Figure 4 (C).
The access order of data B to F is maintained by the series of pointer instructions (new) → 4 → 6 → 7 → 8 (old). The pointer LTOP indicating the most recently accessed directory number indicates 5, and the pointer LBO indicating the oldest accessed directory number.
8 is specified in TTOM.
CPU100からデータC,D、E、Fのいずれか一つ
のデータの読み出し命令が出力され、データC,D、E
、Fの関係づけを変更する場合、及びCPU100から
データC,D、B、F以外のLRU制御領域に記憶され
ているデータの読み出し命令が出力され、キャッシュメ
モリ400〜700上のデータを書き換える必要が生じ
た場合には、ディレクトリ4〜8のポインタを書き挟え
ることにより、新たな新旧関係を表現することが可能で
ある。A read command for any one of data C, D, E, and F is output from the CPU 100, and the data C, D, and E are read.
, F, and when the CPU 100 outputs a command to read data stored in the LRU control area other than data C, D, B, and F, it is necessary to rewrite the data on the cache memories 400 to 700. If this occurs, it is possible to express a new old-new relationship by writing pointers to directories 4 to 8.
す400〜700の各ブロックd−hl/m障害はなく
、データB−Fは全て有効であるとしている。It is assumed that there is no failure in each block d-hl/m from 400 to 700, and that all data B-F are valid.
従って、第3図に示すディレクトリ4〜8のピッ)DE
はt 1pr、ピットBBはOnとなる。また、ディレ
クトリ4〜8はLRU制御を行なうため、第3図に示す
ピッ)BNDは“0”である。Therefore, the pins DE in directories 4 to 8 shown in FIG.
is t 1pr, and pit BB is turned on. Further, since the directories 4 to 8 perform LRU control, BND shown in FIG. 3 is "0".
第5図(a)、(b)、(C)は、ノ(インド制御領域
に記憶されたデータを管理する場合のディスクメモリ2
00の記憶領域及びキャッシュメモリ400〜700の
記憶領域及びディレクトリ1〜3の内容を示す図でおる
。前記した様に、ディスクメモリ200上のバインド制
御領域のデータy、z、wは、キャッシュメモリ400
〜700のブロックal bl Cに一度記憶されると
、他のデータで置き換えられることはない。又、一般に
ディスクメモリ200上のバインド制御領域のメモリ容
量と同一のメモリ容量がキャッシュメモリ400〜70
0上に確保されている。)くインド制御領域のデータY
、Z、Wは、第5図(b)に示−+mV−kキッシュメ
モリ400〜フ00のプロツクa、b、Cに書き込まれ
ている。ブロックa。FIGS. 5(a), (b), and (C) show disk memory 2 when managing data stored in the Indian control area.
2 is a diagram showing the storage area of 00, the storage areas of cache memories 400 to 700, and the contents of directories 1 to 3. As mentioned above, the data y, z, and w in the bind control area on the disk memory 200 are stored in the cache memory 400.
~700 Once stored in block al bl C, it will not be replaced by any other data. Additionally, generally the memory capacity of the bind control area on the disk memory 200 is the same as that of the cache memories 400 to 70.
It is secured above 0. ) Indian control area data Y
, Z, and W are written in blocks a, b, and C of the -+mV-k quiche memories 400 to 00 shown in FIG. block a.
b、cに記憶されたデータY、Z、Wを管理するディレ
クトリ1〜3は、前記したLRU制御領域のディレクト
リ4〜8と同一であるが、第3図に示すビットBNDが
u IIIであることと、各ポインタが指示するポイン
タ) IJの意味が異なっている。即ち、前記した様に
LRU制御領域のデータを管理するディレクトリ4〜8
では、アクセスの新旧関係を指示していたが、バインド
制御領域を管理するディレクトリ1〜3は、各ディレク
トリ1〜3が管理するデータのディスクメモリ200に
おけるアドレス順序(アドレスの小さい方が先になる)
を示す。即ち、第5図(a)に示す様に、バインド制御
領域のデータは、Y、Z、Wのアドレス順に記憶されて
いるため、第5図(C)に示す様にデータYを管理する
ディレクトリ1のポインタにはデータZを管理するディ
レクトリ2を指示し7、ディレクトリ2のポインタはデ
ータWを管理するディレクトリ3を指示し、ディレクト
リ3のポインタはディレクトリ1を指示する。ポインタ
BTOPには、最も小さいアドレスに記憶されたデータ
Yを管理するディレクトリ1が指示され、ポインタBB
OTOMには、最も大きいアドレスに記憶されたデータ
Wを管理するディレクトリ3が指示される。Directories 1 to 3 that manage data Y, Z, and W stored in b and c are the same as directories 4 to 8 of the LRU control area described above, but the bit BND shown in FIG. 3 is u III. (and the pointer each pointer points to) The meanings of IJ are different. That is, as described above, directories 4 to 8 manage data in the LRU control area.
In the above, the new and old access relationships were indicated, but the directories 1 to 3 that manage the bind control area are arranged in the order of addresses in the disk memory 200 of the data managed by each directory 1 to 3 (the smaller address comes first). )
shows. That is, as shown in FIG. 5(a), since the data in the bind control area is stored in the address order of Y, Z, and W, the directory for managing data Y is stored as shown in FIG. 5(c). The pointer 1 points to directory 2 that manages data Z 7 , the pointer of directory 2 points to directory 3 that manages data W, and the pointer of directory 3 points to directory 1 . Pointer BTOP indicates directory 1 that manages data Y stored at the smallest address, and pointer BB
A directory 3 that manages data W stored at the largest address is specified in OTOM.
前記した様に、ディスクメモリ200のバインド制御領
域の記憶容量と同一記憶容量がキャッシュメモリ400
〜700上に確保されているため、上記の様なアドレス
順の順序づけを行なうことなく、キャッシュメモリ40
0〜700上のブロックにデータをディスクメモリ20
0のアドレス順に記憶することは可能である。しかし、
バインド制御領域のデータについて、この様なアドレス
順の順序づけを行なうことは、バインド制御領域のデー
タを記憶するキャッシュメモリ400〜700内のブロ
ックa、b、cに障害が生じた場合、その回復に有効な
手段となる。As mentioned above, the storage capacity of the cache memory 400 is the same as the storage capacity of the bind control area of the disk memory 200.
~700, therefore, the cache memory 40
Data in blocks above 0-700 disk memory 20
It is possible to store in address order of 0. but,
Sequencing the data in the bind control area in this way is useful for recovery when a failure occurs in blocks a, b, c in the cache memories 400 to 700 that store data in the bind control area. It is an effective method.
第6図は本発明のディスクキャッシュ装置の制御方法を
実行する制御装置300の一例を示すブロック図である
。制御装置300は、図示する様に内部動作を制御する
マイクロプロセッサ310、ディレクトリや制御に必要
なデータを保持する几AM320、CPUインターフェ
ース330、ティスフィンターフエース3401メモリ
インターフエース350と、各要素間の連絡を行うため
の2本の内部バス360,370、入力バス380と出
力バス390とにより構成される。FIG. 6 is a block diagram showing an example of a control device 300 that executes the disk cache device control method of the present invention. As shown in the figure, the control device 300 includes a microprocessor 310 that controls internal operations, a memory module 320 that holds directories and data necessary for control, a CPU interface 330, a processor interface 3401, a memory interface 350, and interfaces between each element. It is composed of two internal buses 360 and 370 for communication, an input bus 380 and an output bus 390.
第7図(a)、(b)、(C)は、キャッシュメモリ4
00〜700のブロックbに障害が生じたことを仮定し
て、その回復処理を行なう場合のディスクメモリ200
とキャッシュメモリ400す
〜700とディレクトリ1〜8の動作内容をへ図である
。又、第8図(a)、(b)は上記回復処理の動作内容
を示すフローチャートである。FIGS. 7(a), (b), and (C) show the cache memory 4.
Disk memory 200 when performing recovery processing assuming that a failure has occurred in block b from 00 to 700
This is a diagram showing the operation contents of cache memories 400 to 700 and directories 1 to 8. Further, FIGS. 8(a) and 8(b) are flowcharts showing the operation contents of the recovery process.
通常の動作状態においては、前記した様に、キャッシュ
メモリ400〜700のブロックa −hは図示する様
にデータY−Fを記憶しており、データY、Z、Wはバ
インド制御領域のデータであり、データB、C,D、E
、FはLRU制御領域のデータである。In normal operating conditions, as described above, blocks a to h of cache memories 400 to 700 store data Y to F as shown in the figure, and data Y, Z, and W are data in the bind control area. Yes, data B, C, D, E
, F is data in the LRU control area.
ここで、キャッシュメモリ400〜700のブロックb
に障害が生じ、データZを記憶しておくことが不可能に
なったとすると、キャッシュ制御装置300は第8図(
a)、(b)に示すフローチャートに従った動作を行う
。即ち、ステップS1から83までは、LRU制御領域
の最旧にアクセスされたブロックを管理するディレクト
リを、ディレクトリ4〜8のポインタによる関係づけか
ら取り外し、取り外されたディレクトリが管理するブロ
ックを自由にする操作を示す。即ち、ステップS1では
ポインタLBOTTOMの内容をレジスタSVDBTM
に書き込む。即ち、第7図(a)。Here, block b of cache memory 400 to 700
Suppose that a failure occurs and it becomes impossible to store data Z, the cache control device 300 operates as shown in FIG.
The operations are performed according to the flowcharts shown in a) and (b). That is, from steps S1 to 83, the directory that manages the oldest accessed block in the LRU control area is removed from the relationship by the pointer of directories 4 to 8, and the blocks managed by the removed directory are freed. Demonstrate operation. That is, in step S1, the contents of the pointer LBOTTOM are stored in the register SVDBTM.
write to. That is, FIG. 7(a).
(b)、(C)に示す例ではポインタLBOTTOMの
内容が8であるため、レジスタSVDBTMに8を書き
込む。次に、ステップS2では、レジスタSVDBTM
の内容と同じ内容のディレクトリ4〜8のポインタを捜
がし、レジスタLBOTTOM にそのディレクトリ番
号をいれる。第7図(a)。In the examples shown in (b) and (C), the content of the pointer LBOTTOM is 8, so 8 is written to the register SVDBTM. Next, in step S2, register SVDBTM
It searches for pointers to directories 4 to 8 that have the same contents as , and stores the directory number in register LBOTTOM. Figure 7(a).
(b)、(C)に示す例では、レジスタSVDBTMの
内容は8であり、ポインタの内容が8であるデイレクト
リはディレクトリ7であるため、ポインタLBOTTO
M に7を曹き込む。ステップS3においては、ステッ
プS2で捜がしたディレクトリのポインタにポインタL
’I’OPの内容を書き込む。In the examples shown in (b) and (C), the content of register SVDBTM is 8, and the directory whose pointer content is 8 is directory 7, so the pointer LBOTTO
Add 7 to M. In step S3, a pointer L is set to the pointer of the directory searched in step S2.
Write the contents of 'I'OP.
第7図(a)、(b)、(c)に示す例では、ディレク
トリ7のポインタにポインタLTOPの内容5を書き込
む。以上によシ最旧より1度だけ新しくにアクセスされ
たブロックを、最旧にアクセスされたものとして関係づ
けることが完了する。In the example shown in FIGS. 7(a), (b), and (c), the contents 5 of the pointer LTOP are written to the pointer of the directory 7. As described above, it is completed that a block that has been accessed just once more recently than the oldest block is associated as the block that has been accessed the oldest.
ステップS4から814までは、バインド制御領域のデ
ータを管理するブロックのうち、障害が生じたブロック
を管理するディレクトリを、ディレクトリ1〜3の関係
づけから切シ離し、更にステップ81〜S3の処理で自
由になったブロックを、バインド制御領域のデータを管
理するブロックとして新たに関係づける処理を行なうも
のである。即ち、ステップS4では、障害の生じたブロ
ックが、バインド制御領域のデータのうち、最も小さい
アドレス(ディスクメモリ200のアドレス)に記憶さ
れているデータを記憶しているブロックか否かを判断す
る。そして、YESの場合には、ステップS5でCPU
100のTOPフラグに”1”をセットする。これは、
障害の生じたブロックが、バインド制御領域のアドレス
のウチ、最も小さいアドレスに記憶されているデータを
記憶している場合、この障害が生じたブロックを不使用
とし、ステップ81〜S3で自由にしたブロックを新た
にバインド制御領域のテークを記憶するブロックとして
用いるため、ポインタBTOPの内容を書き換える必要
が生じる。そのことを一時的に記憶しておく処理である
。ステップS6では、同様に障害の生じたブロックが、
バインド制御領域のアドレス(ディスクメモリ200の
アドレス)うち、最も大きいアドレスに記憶されている
データを記憶しているか否かを判断する。そして、YE
Sの場合には、ステップS7でCPU100のBOTT
OMフラグに“1#をセットする。この処理も、障害の
生じたブロックが、バインド制御領域のアドレスのうち
、最も大きいアドレスに記憶されているデータを記憶し
ているブロックである場合、この障害が生じたブロック
を不使用とし、ステップ81〜S3で自由にしたブロッ
クを新たにバインド制御領域のテークを記憶するブロッ
クとして用いるため、ポインタBBOTTOM の内容
を吾き換える必要が生じる。そのことを一時的に記憶し
ておく処理である。第7図(a)、(b)。From steps S4 to 814, the directory that manages the failed block among the blocks that manage data in the bind control area is separated from the relationship between directories 1 to 3, and further, in the processing from steps 81 to S3, Processing is performed to newly associate the freed block as a block that manages data in the bind control area. That is, in step S4, it is determined whether the block in which the failure has occurred is a block that stores data stored at the smallest address (address of disk memory 200) among the data in the bind control area. If YES, in step S5 the CPU
Set the TOP flag of 100 to "1". this is,
If the faulty block stores data stored at the smallest address in the bind control area, the faulty block is made unused and freed in steps 81 to S3. Since the block is used as a new block for storing the take of the bind control area, it is necessary to rewrite the contents of the pointer BTOP. This is a process that temporarily stores this information. In step S6, similarly, the block where the fault has occurred is
It is determined whether data stored in the largest address among the addresses of the bind control area (addresses of the disk memory 200) is stored. And YE
In the case of S, in step S7, the CPU 100's BOTT
Set "1#" to the OM flag. This process also applies if the faulty block is a block that stores data stored at the largest address among the addresses in the bind control area. In order to disable the block where the error occurred and use the block freed in steps 81 to S3 as a new block for storing the take of the bind control area, it is necessary to change the contents of the pointer BBOTTOM. This is the process of storing the information in detail.FIGS. 7(a) and (b).
(C)に示す例では、障害の生じたブロックはブロック
bであシ、バインド制御領域のテークを記憶するブロッ
クの上限でも下限でもないため、TOPフラグ及びBO
TTOMフラグに1“1″がセットされることはない。In the example shown in (C), the faulty block is block b, which is neither the upper limit nor the lower limit of blocks that store takes in the bind control area, so the TOP flag and BO
The TTOM flag is never set to 1 "1".
ステップS8においては、ポインタの内容が障害の生じ
たブロックのディレクトリ番号に等しいディレクトリを
捜がし、該当するディレクトリのポインタにレジスタS
VDBTMの内容を書き込む。In step S8, a directory whose contents of the pointer are equal to the directory number of the block where the failure has occurred is searched for, and the pointer of the corresponding directory is set in the register S.
Write the contents of VDBTM.
第7図(a)、(b)、(C)に示す例では、障害の生
じたディレクトリの番号は2であるためディレクトリ1
が選択され、ディレクトリ1のポインタにレジスタSV
DBTMの内容8が讐き込まれる。これによって、障害
の生じたブロック2がバインド制御領域のデータを管理
するディレクトリの関係づけからはずされ、ステップ8
1〜S3の処理で自由になったブロックhを管理するデ
ィレクトリ8がバインド制御領域のテークを管理するデ
ィレクトリとして関係づけられる。In the examples shown in FIGS. 7(a), (b), and (C), the number of the failed directory is 2, so directory 1
is selected and register SV is set to the pointer of directory 1.
Content 8 of DBTM is inserted. As a result, the failed block 2 is removed from the association of the directory that manages data in the bind control area, and step 8
The directory 8 that manages the block h freed in the processing of steps 1 to S3 is associated as the directory that manages the take of the bind control area.
ステップS9においては、障害の生じたブロックを管理
するディレクトリのポインタの内容が、ステップ8でバ
インド制御領域のデータを管理するディレクトリとして
関係づけされたディレクトリ(レジスタSVDBTMの
内容が指示するディレクトリ)のポインタに書き込まれ
る。第7図(a)。In step S9, the content of the pointer of the directory that manages the failed block is changed to the pointer of the directory associated in step 8 as the directory that manages data in the bind control area (the directory indicated by the content of register SVDBTM). will be written to. Figure 7(a).
(b)、(C)に示す例では、障害の生じたブロックb
を管理するディレクトリ2のポインタの内容3が、関係
づけされたディレクトリ8のポインタに書き込まれる。In the examples shown in (b) and (C), the faulty block b
The content 3 of the pointer of the directory 2 that manages the is written to the pointer of the associated directory 8.
この処理によって、ブロックhを管理するディレクトリ
8が、ディレクトリ1→8→3の順序で完全に関係づけ
られたことになる。Through this process, directory 8 that manages block h is completely associated in the order of directories 1→8→3.
ステップ810においては、ステップS8で選択された
ディレクトリのビットBNDに11”がセットされ、ビ
ットDEにII Ojlがセットされる。In step 810, bit BND of the directory selected in step S8 is set to 11'', and bit DE is set to II Ojl.
第7図(a)、(b)、(C)に示す例では、ディレク
トリ8のビットBNDが1′1”にセットされ、ビット
DEが“0”にセットされる。これによって、ディレク
トリ8がL几U制御領域のデータを管理するディレクト
リからバインド制御領域のデータを管理するディレクト
リに変更されたことになる。In the example shown in FIGS. 7(a), (b), and (C), bit BND of directory 8 is set to 1'1" and bit DE is set to "0". As a result, directory 8 This means that the directory that manages data in the L⇠U control area has been changed to the directory that manages data in the bind control area.
ステップSllにおいては、BOTTOMフラグに“1
″がセットされているか否かを判断し、′1″がセット
されている場合には、ステップ812でポインタBBO
TOMの内容をレジスタSVDBTMの内容に書き換え
る。ステップ813においては、TOPフラグに11”
がセットされているか否を判断し、1″がセットされて
いる場合には、ステップ814でポインタBTOPの内
容をレジスタSVDBTMの内容に書き換える。第7図
(a)、(b)、(c)に示す例では、BTTOMフラ
グにもTOPフラグにも1”がセットされていないため
、ステップ812,814の処理は実行されない。ステ
ップ811〜814の処理によって、バインド制御領域
のデータのうち、最も小さいアドレス(ディスクメモリ
200のアドレス)に記憶されているデータを管理する
ディレクトリの番号がポインタBTOPに書き込まれ、
最も大きいアドレス(ディスクメモリ200のアドレス
)に記憶されているデータを管理するディレクトリの番
号がBBOTTOMに書き込まれることになる。In step Sll, the BOTTOM flag is set to “1”.
” is set, and if “1” is set, the pointer BBO is set in step 812.
Rewrite the contents of TOM with the contents of register SVDBTM. In step 813, the TOP flag is set to 11".
If 1'' is set, the contents of pointer BTOP are rewritten to the contents of register SVDBTM in step 814. FIGS. 7(a), (b), and (c) In the example shown in FIG. 1, neither the BTTOM flag nor the TOP flag is set to 1'', so the processes of steps 812 and 814 are not executed. Through the processing in steps 811 to 814, the number of the directory that manages the data stored at the smallest address (address of the disk memory 200) among the data in the bind control area is written to the pointer BTOP,
The number of the directory that manages the data stored at the largest address (address of the disk memory 200) will be written to BBOTTOM.
本芙施例では、不良ブロックの代替えとして、現在最旧
にアクセスされたブロックを使用する例を示したが、L
RU制御領域のデータを記憶するブロック中のどれを選
ぶかは任意である。In this example, we have shown an example of using the block that was currently accessed the oldest as a replacement for a bad block.
It is arbitrary to select which block among the blocks to store data in the RU control area.
以上の説明から明らかな様に、本発明によれば、キャッ
シュメモリ上で特定のデータを常に保持しているバイン
ド制御領域に障害が生じfc、場合、障害が生じたバイ
ンド制御領域のブロックのかわシにデータの書き換えを
行なわないLRU制御領域のブロックを新たにバインド
制御領域のブロックとして用いることにより、直ちに回
復させ、上記特定領域のデータの高速応答を保障するこ
とが可能になる。As is clear from the above description, according to the present invention, if a failure occurs in the bind control area that always holds specific data on the cache memory, fc, the block in the bind control area where the failure occurs is replaced. By newly using a block of the LRU control area in which data is not rewritten as a new block of the bind control area, it is possible to immediately recover the data and ensure high-speed response of the data in the specific area.
第1図は本発明の対象であるディスクキャッシュ装置を
示すブロック図、第2図(a)は第1図に示すディスク
メモリの記憶領域を示す図、第2図(b)は第1図に示
すキャッシュメモリの記憶領域を示す図、第2図(C)
は第1図に示す制御装置内のポインタ) IJを示す図
、第3図はディレクトリの詳細を示す図、第4図(a)
は第1図にすディスクメモリの記憶領域を示す図、第4
図(b)は第1図に示すキャッシュメモリの記憶領域を
示す図、第4図(C)は第1図に示す制御装置内のディ
レクトリを示す図、第5図(a)は第1図に示すディス
クメモリの記憶領域を示す図、第5図(b)は第1図に
示すキャッシュメモリの記憶領域を示す図、第5図(C
)は第1図に示す制御装置内のポインタ) IJを示す
図、第6図は第1図に示す制御装置の詳細を示すブロッ
ク図、第7図(a)は第1図に示すディスクメモリの記
憶領域を示す図、第7図(b)は第1図に示すキャッシ
ュメモリの記憶領域を示す図、第7図(C)は第1図に
示す制御装置内のポインタ) IJを示す図、第8図(
a)、(b)は本発明の一実施例の動作を示すフローチ
ャートである。
100・・・CPU、200・・・ディスクメモリ、3
00・・・制御装置、400〜700・・・キャッシュ
メモリ、C,B、D、E、F、W、Y、Z・・・データ
、a−h・・・ブロック、1〜8・・・ディレクトリ。
代理人 弁理士 秋本正実
(σノ むj52 [≧]
ディ又フ
も3図
<(1) も4図
ティスフ
ナイスワ
十イ人つ
晧8図
(aツ
キ8図
(b)FIG. 1 is a block diagram showing a disk cache device that is the object of the present invention, FIG. 2(a) is a diagram showing the storage area of the disk memory shown in FIG. 1, and FIG. FIG. 2(C) is a diagram showing the storage area of the cache memory shown in FIG.
is a pointer in the control device shown in Fig. 1) A diagram showing IJ, Fig. 3 is a diagram showing details of the directory, and Fig. 4 (a)
Figure 1 shows the storage area of the disk memory, and Figure 4 shows the storage area of the disk memory.
Figure 5(b) is a diagram showing the storage area of the cache memory shown in Figure 1, Figure 4(C) is a diagram showing the directory in the control device shown in Figure 1, and Figure 5(a) is the diagram shown in Figure 1. 5(b) is a diagram showing the storage area of the disk memory shown in FIG. 1, FIG. 5(b) is a diagram showing the storage area of the cache memory shown in FIG.
) is a pointer in the control device shown in FIG. 1) A diagram showing IJ, FIG. 6 is a block diagram showing details of the control device shown in FIG. 1, and FIG. 7(a) is a disk memory shown in FIG. 1. 7(b) is a diagram showing the storage area of the cache memory shown in FIG. 1, and FIG. 7(C) is a diagram showing the pointer (IJ) in the control device shown in FIG. 1. , Figure 8 (
Figures a) and (b) are flowcharts showing the operation of an embodiment of the present invention. 100...CPU, 200...Disk memory, 3
00...Control device, 400-700...Cache memory, C, B, D, E, F, W, Y, Z...Data, a-h...Block, 1-8... directory. Agent Patent Attorney Masami Akimoto (σノmuj52 [≧] Dimatafu also figure 3 < (1) also figure 4 Tisfunaiswa tenuijintsuki figure 8 (a Tsuki figure 8 (b)
Claims (1)
ッシュメモリ上に記憶し、CPUからのデータ読み出し
命令に対して高速応答を可能にしたディスクキャッシュ
装置において、キャッシュメモリ上でデータ書き換えを
行なわないバインド制御領域のデータを記憶するブロッ
クを一定の基準で順序づけ、キャッシュメモリ上でデー
タ書き換えを行なうLRU制御領域のテークを記憶する
ブロックを一定の基準で順序づけ、バインド制御領域の
テークを記憶するブロックに障害が発生したとき、障害
の発生したブロックを上記関係づけから切シ離し、更に
LRU制御領域のブロック’k 一定の基準に従って上
記関係づけから切シ離し、次に切#)離されたLRU制
御領域のデータを記憶するブロックを新たにバインド制
御領域のテークを記憶するブロックとして関係づけるこ
とを特徴とするディスクキャッシュ装置の制御方法。 2、上記バインド制御領域のデータを記憶するブロック
を順序づける一定の基準は、ディスクメモリ上のデータ
アトシス順であることを特徴とする特許請求の範囲第1
項記載のディスクキャッシュ装置の制御方法。 3、上記LRU制御領域のデータを記憶するブロックを
順序づける一定の基準は、テークのCPUによるアクセ
ス順であることを特徴とする特許請求の範囲第1項記載
のディスクキャッシュ装置の制御方法。 4、上記LRU制御領域のブロックを関係づけから切り
離す一定の基準は、CPUによって最も古くアクセスさ
れたデータであることを特徴とする特許請求の範囲第1
項記載のディスクキャラ・ツユ装置の制御方法。[Claims] 1. In a disk cache device that stores data on a disk memory in the cache memory via a control device and enables high-speed response to a data read command from a CPU, The blocks that store data in the bind control area where data will not be rewritten are ordered based on a certain standard, and the blocks that store the data in the LRU control area where data is rewritten on the cache memory are ordered based on a certain standard, and the blocks that store data in the bind control area where data is not rewritten are ordered based on a certain standard. When a failure occurs in a block that stores the block 'k' in the LRU control area, the block in which the failure occurred is disconnected from the above relationship, and then the block 'k in the LRU control area is disconnected from the relationship according to certain criteria, and then the block is disconnected from the relationship. A method for controlling a disk cache device, comprising associating a block storing data in a separated LRU control area as a new block storing take in a bind control area. 2. Claim 1, wherein the certain standard for ordering the blocks that store data in the bind control area is the order of data atomicity on the disk memory.
A method for controlling a disk cache device described in Section 1. 3. The method of controlling a disk cache device according to claim 1, wherein the certain standard for ordering the blocks storing data in the LRU control area is the order of access by the take CPU. 4. Claim 1, characterized in that the certain criterion for separating the blocks of the LRU control area from the relationship is the data that was accessed the oldest by the CPU.
A method of controlling the disc character/tsuyu device described in section 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59072750A JPS60217444A (en) | 1984-04-13 | 1984-04-13 | Control method for disk cache device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59072750A JPS60217444A (en) | 1984-04-13 | 1984-04-13 | Control method for disk cache device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60217444A true JPS60217444A (en) | 1985-10-31 |
JPH0353661B2 JPH0353661B2 (en) | 1991-08-15 |
Family
ID=13498337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59072750A Granted JPS60217444A (en) | 1984-04-13 | 1984-04-13 | Control method for disk cache device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60217444A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6394351A (en) * | 1986-10-08 | 1988-04-25 | Nec Corp | Cache memory control system |
-
1984
- 1984-04-13 JP JP59072750A patent/JPS60217444A/en active Granted
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6394351A (en) * | 1986-10-08 | 1988-04-25 | Nec Corp | Cache memory control system |
Also Published As
Publication number | Publication date |
---|---|
JPH0353661B2 (en) | 1991-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5983312A (en) | Simultaneously writing to and erasing two commonly numbered sectors | |
KR950000550B1 (en) | Semiconductor memory unit | |
US7418436B2 (en) | Information processing apparatus, memory management apparatus, memory management method, and information processing method | |
US4053752A (en) | Error recovery and control in a mass storage system | |
JP2856621B2 (en) | Batch erase nonvolatile memory and semiconductor disk device using the same | |
US6591335B1 (en) | Fault tolerant dual cache system | |
KR100742849B1 (en) | Data storage, data processing system, data processing method and data processing apparatus | |
JP3122222B2 (en) | Memory card device | |
EP0386719B1 (en) | Partial store control circuit | |
CA1222062A (en) | Method for protecting volatile primary store in a staged storage system by circularly journaling updates into finite nonvolatile local memory | |
JPH07121444A (en) | Auxiliary storage device | |
JPS60217444A (en) | Control method for disk cache device | |
EP1804166B1 (en) | Memory device and information processing apparatus | |
JP3313576B2 (en) | Memory access control method and device | |
JPH0210446A (en) | Buffer storage device | |
JPS60142759A (en) | Error detection system of lru deciding storage device | |
JP2713528B2 (en) | Uninterrupted expansion of storage capacity | |
JPH08137753A (en) | Disk cache device | |
JPH11250031A (en) | Programmable logic and information processing device | |
JPH0552538B2 (en) | ||
JP3362031B2 (en) | Method for writing / erasing storage device | |
JPS61127050A (en) | Memory control system | |
JPH06259337A (en) | Data protection method | |
JPH0475152A (en) | nonvolatile memory system | |
JPH04326436A (en) | Cache controller |