JPH07121444A - 補助記憶装置 - Google Patents
補助記憶装置Info
- Publication number
- JPH07121444A JPH07121444A JP5263854A JP26385493A JPH07121444A JP H07121444 A JPH07121444 A JP H07121444A JP 5263854 A JP5263854 A JP 5263854A JP 26385493 A JP26385493 A JP 26385493A JP H07121444 A JPH07121444 A JP H07121444A
- Authority
- JP
- Japan
- Prior art keywords
- data
- buffer memory
- memory
- writing
- disk
- 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.)
- Pending
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】データ書き込み中に電源障害が発生した場合
に、特定のデータを書き込み保証することができ、かつ
高速なアクセスが可能なキャッシュメモリの容量を十分
に保持できる補助記憶装置を低コストで提供すること。 【構成】バッファメモリ13に記憶したデータをディス
ク14に記憶する際に電源障害が生じた場合には、電源
障害が復旧した後に不揮発性メモリ13aに一時的に記
憶したデータのみをディスク14に書き込む復旧処理を
行う。
に、特定のデータを書き込み保証することができ、かつ
高速なアクセスが可能なキャッシュメモリの容量を十分
に保持できる補助記憶装置を低コストで提供すること。 【構成】バッファメモリ13に記憶したデータをディス
ク14に記憶する際に電源障害が生じた場合には、電源
障害が復旧した後に不揮発性メモリ13aに一時的に記
憶したデータのみをディスク14に書き込む復旧処理を
行う。
Description
【0001】
【産業上の利用分野】本発明は、バッファメモリとして
揮発性メモリ及び不揮発性メモリを備えた補助記憶装置
に関する。
揮発性メモリ及び不揮発性メモリを備えた補助記憶装置
に関する。
【0002】
【従来の技術】従来、ディスク装置に代表される補助記
憶装置に対するアクセスを高速化するために、CPUと
ディスク装置との橋渡し役を担うバッファメモリを用い
ることが多い。
憶装置に対するアクセスを高速化するために、CPUと
ディスク装置との橋渡し役を担うバッファメモリを用い
ることが多い。
【0003】このバッファメモリは、CPUがディスク
装置から読み込むデータを一時的に蓄えておき、再読み
込みする際にはこのバッファメモリから読み出すように
動作するキャッシュメモリ(cashe memory)として一般
的に知られている。なお、この場合には、スタティック
RAM(SRAM)のように高速なアクセス可能なメモ
リチップが用いられる。
装置から読み込むデータを一時的に蓄えておき、再読み
込みする際にはこのバッファメモリから読み出すように
動作するキャッシュメモリ(cashe memory)として一般
的に知られている。なお、この場合には、スタティック
RAM(SRAM)のように高速なアクセス可能なメモ
リチップが用いられる。
【0004】また、このバッファメモリは、上記キャッ
シュメモリとしてアクセスの高速化を図るだけでなく、
データ書き込み時のライトバッファ(write buffer)と
しても用いられている。
シュメモリとしてアクセスの高速化を図るだけでなく、
データ書き込み時のライトバッファ(write buffer)と
しても用いられている。
【0005】例えば、特開昭64−66727号公報に
は、ディスク装置にライトバッファの役割を持つ不揮発
性メモリを設け、電源異常が発生して書き込み未完に終
わったデータについては、電源回復後に不揮発性メモリ
を用いた再書き込みを行うことによりデータの書き込み
を保証するディスクアクセス制御方式が開示されてい
る。
は、ディスク装置にライトバッファの役割を持つ不揮発
性メモリを設け、電源異常が発生して書き込み未完に終
わったデータについては、電源回復後に不揮発性メモリ
を用いた再書き込みを行うことによりデータの書き込み
を保証するディスクアクセス制御方式が開示されてい
る。
【0006】しかしながら、上記従来技術によると、再
書き込み時に必要となるデータ等を全て不揮発性メモリ
上に保持する必要があるため、大量の不揮発性メモリが
必要となり、また書き込み未完であると認識された全て
のデータがディスク装置に再書き込みされるため、電源
異常回復後の再書き込みに長時間を要するという問題が
ある。
書き込み時に必要となるデータ等を全て不揮発性メモリ
上に保持する必要があるため、大量の不揮発性メモリが
必要となり、また書き込み未完であると認識された全て
のデータがディスク装置に再書き込みされるため、電源
異常回復後の再書き込みに長時間を要するという問題が
ある。
【0007】このため、特開平4−138540号公報
においては、メインメモリの一部を電池バックアップ付
きの揮発性メモリで構成することにより低コストで電源
異常に対応できるメモリバックアップ方法が開示されて
いる。
においては、メインメモリの一部を電池バックアップ付
きの揮発性メモリで構成することにより低コストで電源
異常に対応できるメモリバックアップ方法が開示されて
いる。
【0008】しかし、上記従来技術は、あくまでも書き
込み時のデータ保護という観点からなされたものであ
り、キャッシュメモリとしての読み込み時の高速なアク
セスを考慮したものではない。このため、電池によりバ
ックアップがされない揮発性メモリ上の対象ファイルに
ついては、高速なアクセスができないことになる。
込み時のデータ保護という観点からなされたものであ
り、キャッシュメモリとしての読み込み時の高速なアク
セスを考慮したものではない。このため、電池によりバ
ックアップがされない揮発性メモリ上の対象ファイルに
ついては、高速なアクセスができないことになる。
【0009】したがって、上記従来技術を用いて高速ア
クセス可能な対象ファイルを多くするには、キャッシュ
メモリとして稼動する電池バックアップ付きの揮発性メ
モリ部分の容量を大きくする必要があるため、バックア
ップを行う電池が必要となってしまう。
クセス可能な対象ファイルを多くするには、キャッシュ
メモリとして稼動する電池バックアップ付きの揮発性メ
モリ部分の容量を大きくする必要があるため、バックア
ップを行う電池が必要となってしまう。
【0010】
【発明が解決しようとする課題】このように、上記従来
技術を用いたとしても、書き込み時の電源異常に伴うデ
ータ保護と、読み出し時の高速アクセス性という両者の
要求を同時に満足することができない。
技術を用いたとしても、書き込み時の電源異常に伴うデ
ータ保護と、読み出し時の高速アクセス性という両者の
要求を同時に満足することができない。
【0011】そこで、本発明では上記問題を解決し、デ
ータ書き込み中に電源障害が発生した場合に、特定のデ
ータを書き込み保証することができ、かつ高速なアクセ
スが可能なキャッシュメモリの容量を十分に保持できる
補助記憶装置を低コストで提供することを目的とする。
ータ書き込み中に電源障害が発生した場合に、特定のデ
ータを書き込み保証することができ、かつ高速なアクセ
スが可能なキャッシュメモリの容量を十分に保持できる
補助記憶装置を低コストで提供することを目的とする。
【0012】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、データを記憶する主記憶部と、バッファ
メモリとを具備し、前記主記憶部にデータを書き込む際
及び前記主記憶部からデータを読み出す際に該データを
一時的に前記バッファメモリに記憶する補助記憶装置に
おいて、前記バッファメモリは、不揮発性メモリからな
る第1の記憶手段と、揮発性メモリからなる第2の記憶
手段とを具備し、前記主記憶部に対してデータを書き込
む際に、特定のデータは前記第1の記憶手段に選択的に
記憶するとともに、電源障害が生じた場合は前記第1の
記憶手段に記憶されたデータのみを該電源障害が復旧し
た後に前記主記憶部に書き込むことにより復旧処理を行
う制御手段を具備したことを特徴とする。
め、本発明は、データを記憶する主記憶部と、バッファ
メモリとを具備し、前記主記憶部にデータを書き込む際
及び前記主記憶部からデータを読み出す際に該データを
一時的に前記バッファメモリに記憶する補助記憶装置に
おいて、前記バッファメモリは、不揮発性メモリからな
る第1の記憶手段と、揮発性メモリからなる第2の記憶
手段とを具備し、前記主記憶部に対してデータを書き込
む際に、特定のデータは前記第1の記憶手段に選択的に
記憶するとともに、電源障害が生じた場合は前記第1の
記憶手段に記憶されたデータのみを該電源障害が復旧し
た後に前記主記憶部に書き込むことにより復旧処理を行
う制御手段を具備したことを特徴とする。
【0013】
【作用】本発明によれば、バッファメモリに記憶したデ
ータを主記憶部に記憶する際に電源障害が生じた場合に
は、電源障害が復旧した後に第1の記憶手段に一時的に
記憶したデータのみを主記憶部に書き込む復旧処理を行
う。これにより、特定のデータを選択的に書き込み保証
するとともに、迅速な復旧処理を行うことができる。
ータを主記憶部に記憶する際に電源障害が生じた場合に
は、電源障害が復旧した後に第1の記憶手段に一時的に
記憶したデータのみを主記憶部に書き込む復旧処理を行
う。これにより、特定のデータを選択的に書き込み保証
するとともに、迅速な復旧処理を行うことができる。
【0014】また、主記憶部にデータを書き込む際及び
主記憶部からデータを読み出す際には、第1の記憶手段
及び第2の記憶手段からなるバッファメモリに対して該
データを一時的に記憶するため、キャッシュメモリの容
量を十分に保持することができる。
主記憶部からデータを読み出す際には、第1の記憶手段
及び第2の記憶手段からなるバッファメモリに対して該
データを一時的に記憶するため、キャッシュメモリの容
量を十分に保持することができる。
【0015】ここで、第1の記憶手段を使用するか第2
の記憶手段を使用するかの決定を選択情報を用いて行う
ことにより、ユーザが書き込みを保証するか否かをデー
タ毎に判断することができる。
の記憶手段を使用するかの決定を選択情報を用いて行う
ことにより、ユーザが書き込みを保証するか否かをデー
タ毎に判断することができる。
【0016】また、第1の記憶手段を使用するか第2の
記憶手段を使用するかの決定を主記憶部のアドレス情報
にしたがって決定することにより、ユーザがバッファメ
モリの選択を行なわなくても、特定のデータを書き込み
保証することができる。
記憶手段を使用するかの決定を主記憶部のアドレス情報
にしたがって決定することにより、ユーザがバッファメ
モリの選択を行なわなくても、特定のデータを書き込み
保証することができる。
【0017】
【実施例】以下、本発明に係る補助記憶装置の一実施例
としてディスク装置を例にとり図面を参照して説明す
る。
としてディスク装置を例にとり図面を参照して説明す
る。
【0018】図1は、本発明に係るディスク装置の全体
構成を示すブロック図である。
構成を示すブロック図である。
【0019】図1に示すように、このディスク装置11
は、制御部12とバッファメモリ13とディスク装置1
4とデータバス15とから構成される。
は、制御部12とバッファメモリ13とディスク装置1
4とデータバス15とから構成される。
【0020】制御部12は、ディスク14に対する書き
込み制御及びディスク14からの読み出し制御を行うも
のであり、いずれの場合にもバッファメモリ13を介し
て制御する。
込み制御及びディスク14からの読み出し制御を行うも
のであり、いずれの場合にもバッファメモリ13を介し
て制御する。
【0021】具体的には、データバス15からディスク
14に書き込みを行うライトデータを受信したならば、
該ライトデータに付与されたディスク14の格納場所に
関するアドレス情報を参照して、該ライトデータは不揮
発性メモリ(以下「NVRAM」と言う。)をバッファ
メモリとして用いる書き込み保証付きデータか否かを判
断し、書き込み保証付きデータである場合にはNVRA
Mを介してディスク14の所定の位置にデータを格納す
るよう制御する。
14に書き込みを行うライトデータを受信したならば、
該ライトデータに付与されたディスク14の格納場所に
関するアドレス情報を参照して、該ライトデータは不揮
発性メモリ(以下「NVRAM」と言う。)をバッファ
メモリとして用いる書き込み保証付きデータか否かを判
断し、書き込み保証付きデータである場合にはNVRA
Mを介してディスク14の所定の位置にデータを格納す
るよう制御する。
【0022】また、データの読み出し指示を受けたなら
ば、バッファメモリ13上に存在するデータについては
該バッファメモリ13から、バッファメモリ13上にな
いデータについてはディスク14からバッファメモリ1
3を介して該当データをデータバス15に送出するよう
制御する。
ば、バッファメモリ13上に存在するデータについては
該バッファメモリ13から、バッファメモリ13上にな
いデータについてはディスク14からバッファメモリ1
3を介して該当データをデータバス15に送出するよう
制御する。
【0023】バッファメモリ13は、同じデータを複数
回読み出す場合にはディスク14の代わりに該バッファ
メモリ13から読み出すことによりアクセスを高速化す
るとともに、ディスク14にライトデータを格納する場
合には書き込み中のデータを保護するために使用される
ものであり、揮発性メモリ13b(以下「RAM13
b」という)及びNVRAM13aから構成される。
回読み出す場合にはディスク14の代わりに該バッファ
メモリ13から読み出すことによりアクセスを高速化す
るとともに、ディスク14にライトデータを格納する場
合には書き込み中のデータを保護するために使用される
ものであり、揮発性メモリ13b(以下「RAM13
b」という)及びNVRAM13aから構成される。
【0024】揮発性メモリ13bは、電源停止に際して
メモリ内容がリフレッシュされるメモリであり、高速ア
クセス可能なSRAMや集積度が高く経済的なダイナミ
ックRAM(DRAM)がメモリチップとして用いられ
る。
メモリ内容がリフレッシュされるメモリであり、高速ア
クセス可能なSRAMや集積度が高く経済的なダイナミ
ックRAM(DRAM)がメモリチップとして用いられ
る。
【0025】NVRAM13aは、電源停止に際しても
メモリ内容が保持できるメモリであり、SRAMを電池
でバックアップしたもの等が用いられる。
メモリ内容が保持できるメモリであり、SRAMを電池
でバックアップしたもの等が用いられる。
【0026】ディスク14は、ディスク装置の主体をな
すものであり、ライトデータをディスク上に保持する。
ここで用いるディスクは、磁気ディスクや光ディスク等
各種のものが用いられる。
すものであり、ライトデータをディスク上に保持する。
ここで用いるディスクは、磁気ディスクや光ディスク等
各種のものが用いられる。
【0027】次に、上記構成を持つディスク装置11の
制御部12が行う全体処理について図2を用いて説明す
る。
制御部12が行う全体処理について図2を用いて説明す
る。
【0028】図2に示すように、ディスク装置11では
入出力要求の有無を確認し(S201)、入出力要求が
なければバッファメモリ13に書き込み未完のデータが
存在するか否かを確認する(S202)。そして、書き
込み未完のデータが存在する場合には所定量の当該デー
タをディスク14に掃き出す(S203)。
入出力要求の有無を確認し(S201)、入出力要求が
なければバッファメモリ13に書き込み未完のデータが
存在するか否かを確認する(S202)。そして、書き
込み未完のデータが存在する場合には所定量の当該デー
タをディスク14に掃き出す(S203)。
【0029】以上の処理を入出力要求があるまで繰り返
し、バッファメモリ13上に滞留する書き込み未完のデ
ータをディスク14に掃き出す。
し、バッファメモリ13上に滞留する書き込み未完のデ
ータをディスク14に掃き出す。
【0030】なお、不揮発性メモリ13aからディスク
14に書き込みを行っている間に電源障害が発生し、デ
ィスク14に対する書き込みが正常に終了していない場
合にも、電源回復後上記処理によりディスク14に再書
き込みされる。
14に書き込みを行っている間に電源障害が発生し、デ
ィスク14に対する書き込みが正常に終了していない場
合にも、電源回復後上記処理によりディスク14に再書
き込みされる。
【0031】また、入出力要求待ち状態(S201)に
おいて、入出力要求が発生した場合には、書き込み要求
か読み出し要求かを確認し(S204)、読み出し要求
である場合には、後述するバッファメモリを介した読み
出し処理(S205)を行った後、入出力要求待ち状態
(S201)に移行する。
おいて、入出力要求が発生した場合には、書き込み要求
か読み出し要求かを確認し(S204)、読み出し要求
である場合には、後述するバッファメモリを介した読み
出し処理(S205)を行った後、入出力要求待ち状態
(S201)に移行する。
【0032】一方、書き込み要求である場合には、該デ
ータが書き込まれるディスク14のアドレスを参照して
書き込み保証を行うか否かを確認する(S206)。
ータが書き込まれるディスク14のアドレスを参照して
書き込み保証を行うか否かを確認する(S206)。
【0033】この書き込み保証とは、受信データを蓄え
たバッファメモリ13からディスク14に書き込み中に
電源異常が発生した場合においても、電源回復後に該バ
ッファメモリに蓄えた内容を再書き込みすることによ
り、ディスク14に対するデータの書き込みを保証する
ことを言う。
たバッファメモリ13からディスク14に書き込み中に
電源異常が発生した場合においても、電源回復後に該バ
ッファメモリに蓄えた内容を再書き込みすることによ
り、ディスク14に対するデータの書き込みを保証する
ことを言う。
【0034】この書き込み保証を行う場合には、NVR
AM13aを用いた保証付き書き込み処理(S207)
を行った後、入出力要求待ち状態(S201)に移行す
る。一方、書き込み保証を行わない場合には、RAM1
3b又はNVRAM13aの空きエリアを用いた保証な
し書き込み処理(S208)を行った後、入出力要求待
ち状態(S201)に移行する。
AM13aを用いた保証付き書き込み処理(S207)
を行った後、入出力要求待ち状態(S201)に移行す
る。一方、書き込み保証を行わない場合には、RAM1
3b又はNVRAM13aの空きエリアを用いた保証な
し書き込み処理(S208)を行った後、入出力要求待
ち状態(S201)に移行する。
【0035】上記一連の処理を行うことにより、入出力
要求がない場合にはキャッシュ13上のデータをディス
ク14に掃き出すとともに、読み出し要求があった場合
には高速アクセス可能なバッファメモリとして動作し、
書き込み要求があった場合には所定のデータについてデ
ータ保護を行うライトバッファとして機能することがで
きる。
要求がない場合にはキャッシュ13上のデータをディス
ク14に掃き出すとともに、読み出し要求があった場合
には高速アクセス可能なバッファメモリとして動作し、
書き込み要求があった場合には所定のデータについてデ
ータ保護を行うライトバッファとして機能することがで
きる。
【0036】次に、上記各処理のうち、ディスク14に
対する書き込み処理(S203)、読み出し処理(S2
05)、保証付き書き込み処理(S207)及び保証な
し書き込み処理(S208)について、詳細に説明す
る。
対する書き込み処理(S203)、読み出し処理(S2
05)、保証付き書き込み処理(S207)及び保証な
し書き込み処理(S208)について、詳細に説明す
る。
【0037】図3は、ディスク14に対する掃き出し処
理(S203)の流れを示すフローチャートである。
理(S203)の流れを示すフローチャートである。
【0038】図3に示すように、データバス15から書
き込みデータを受信したならば、まずディスク14に対
する書き込みデータがNVRAM13a上にあるか否か
を確認し(S301)、書き込みデータが存在する場合
にはディスク14に当該データを格納する(S30
3)。
き込みデータを受信したならば、まずディスク14に対
する書き込みデータがNVRAM13a上にあるか否か
を確認し(S301)、書き込みデータが存在する場合
にはディスク14に当該データを格納する(S30
3)。
【0039】次に、RAM13b上に書き込みデータが
存在するか否かを確認し(S302)、書き込みデータ
存在する場合には、ディスク14に当該データを格納す
る(S303)。
存在するか否かを確認し(S302)、書き込みデータ
存在する場合には、ディスク14に当該データを格納す
る(S303)。
【0040】そして、書き込みを完了したデータについ
ては、読み込み時に高速アクセス可能なキャッシュデー
タの役割を果たすため、データの属性を読み込みデータ
に変更して書き込み未完のデータと区別する(S30
4)。なお、データの属性を変更する代わりに、従来法
で一般に用いられるフラグ等を用いることもできる。
ては、読み込み時に高速アクセス可能なキャッシュデー
タの役割を果たすため、データの属性を読み込みデータ
に変更して書き込み未完のデータと区別する(S30
4)。なお、データの属性を変更する代わりに、従来法
で一般に用いられるフラグ等を用いることもできる。
【0041】以上の処理を行うことにより、NVRAM
13a及びRAM13b上の書き込みデータをディスク
14に掃き出すことができる。
13a及びRAM13b上の書き込みデータをディスク
14に掃き出すことができる。
【0042】なお、ディスク14に対して書き込み途中
に電源異常が発生し、書き込み未完に終わったデータの
うちNVRAM上のものについては保持されるため、上
記処理により、再書き込みが実行できることになる。
に電源異常が発生し、書き込み未完に終わったデータの
うちNVRAM上のものについては保持されるため、上
記処理により、再書き込みが実行できることになる。
【0043】図4は、読み出し処理の流れを示すフロー
チャートである。
チャートである。
【0044】図4に示すように、ディスク装置11に対
して読み出し要求が行われたならば、読み出す対象とな
るデータがバッファメモリ13上に存在するか否かを確
認し(S401)、バッファメモリ13上に存在する場
合には該バッファメモリ13から該当するデータを読み
出し(S409)てデータバス15に送出する。
して読み出し要求が行われたならば、読み出す対象とな
るデータがバッファメモリ13上に存在するか否かを確
認し(S401)、バッファメモリ13上に存在する場
合には該バッファメモリ13から該当するデータを読み
出し(S409)てデータバス15に送出する。
【0045】一方、バッファメモリ上に当該データがな
い場合には、ディスク14上のデータを読み出すことに
なるが、このデータをキャッシュできるエリアがバッフ
ァメモリ13上に確保できるか否かを調べる必要があ
る。
い場合には、ディスク14上のデータを読み出すことに
なるが、このデータをキャッシュできるエリアがバッフ
ァメモリ13上に確保できるか否かを調べる必要があ
る。
【0046】そこで、まずRAM13bに空きエリアが
存在するか否かを調べ(S402)、空きエリアがある
場合にはRAM13bをバッファメモリとして採用し、
ディスク14から該当データを読み込んだ後(S40
3)に該データをデータバス15に送出する(S40
9)。
存在するか否かを調べ(S402)、空きエリアがある
場合にはRAM13bをバッファメモリとして採用し、
ディスク14から該当データを読み込んだ後(S40
3)に該データをデータバス15に送出する(S40
9)。
【0047】これに対して、RAM13bに空きがない
場合には、さらにNVRAM13aにおける空きエリア
の有無を調べ(S404)、NVRAM13aにも空き
エリアが存在しない場合には、バッファメモリ13上に
読み込みデータが存在するか否かを調べる(S40
5)。
場合には、さらにNVRAM13aにおける空きエリア
の有無を調べ(S404)、NVRAM13aにも空き
エリアが存在しない場合には、バッファメモリ13上に
読み込みデータが存在するか否かを調べる(S40
5)。
【0048】ここで、読み込みデータを調べる理由は、
バッファメモリ13上に存在する書き込みデータは、書
き込み未完のデータであり破棄できないためである。
バッファメモリ13上に存在する書き込みデータは、書
き込み未完のデータであり破棄できないためである。
【0049】このバッファメモリ13上に読み込みデー
タが存在する場合には、利用度が最も低いと考えられる
最も古い読み込みデータを無効にする(S407)とと
もに、該エリアにデータを読み込んだ後(S408)デ
ータバス15に送出する(S409)。
タが存在する場合には、利用度が最も低いと考えられる
最も古い読み込みデータを無効にする(S407)とと
もに、該エリアにデータを読み込んだ後(S408)デ
ータバス15に送出する(S409)。
【0050】ところで、バッファメモリ13上に読み込
みデータがない場合には、この時点でバッファメモリ1
3が満杯状態であることを意味するため、図3において
説明した掃き出し処理(S406)を行って空きエリア
を確保した後に、S402に移行する。
みデータがない場合には、この時点でバッファメモリ1
3が満杯状態であることを意味するため、図3において
説明した掃き出し処理(S406)を行って空きエリア
を確保した後に、S402に移行する。
【0051】上記処理を行うことにより、読み込みデー
タは必ずバッファメモリ13上にキャッシュされること
になる。
タは必ずバッファメモリ13上にキャッシュされること
になる。
【0052】図5は、保証付き書き込み処理(S20
7)の流れを示すフローチャートである。
7)の流れを示すフローチャートである。
【0053】図5に示すように、データ書き込みアドレ
スがNVRAM13aに対応するものである場合には、
NVRAM13aにデータをキャッシュすることにな
る。
スがNVRAM13aに対応するものである場合には、
NVRAM13aにデータをキャッシュすることにな
る。
【0054】具体的には、まず同じデータ名を持つもの
が複数存在すると錯誤が生じるため、該データがバッフ
ァメモリ13上にキャッシュされているか否かを確認し
(S501)、存在する場合にはバッファメモリ上の当
該データを無効にする(S502)。
が複数存在すると錯誤が生じるため、該データがバッフ
ァメモリ13上にキャッシュされているか否かを確認し
(S501)、存在する場合にはバッファメモリ上の当
該データを無効にする(S502)。
【0055】次に、NVRAM13a上に当該データを
キャッシュできる空きエリアが存在するか否かを確認し
(S503)、空きエリアが存在する場合にはNVRA
M13aにデータを読み込む(S507)。
キャッシュできる空きエリアが存在するか否かを確認し
(S503)、空きエリアが存在する場合にはNVRA
M13aにデータを読み込む(S507)。
【0056】これに対して、NVRAM13a上に空き
エリアがない場合には、図4に示す読み出し処理と同様
に、NVRAM13a上に読み込みデータがあるか否か
を確認し(S504)、読み込みデータがあるならば最
も古い読み込みデータを無効にして(S506)該当箇
所にデータを書き込む(S507)。
エリアがない場合には、図4に示す読み出し処理と同様
に、NVRAM13a上に読み込みデータがあるか否か
を確認し(S504)、読み込みデータがあるならば最
も古い読み込みデータを無効にして(S506)該当箇
所にデータを書き込む(S507)。
【0057】また、NVRAM13a上に読み込みデー
タがない場合には、この時点でNVRAM13a、図3
において説明したディスク14に対する掃き出し処理
(S505)を行って空きエリアを確保した後に、S5
03に移行する。
タがない場合には、この時点でNVRAM13a、図3
において説明したディスク14に対する掃き出し処理
(S505)を行って空きエリアを確保した後に、S5
03に移行する。
【0058】上記処理を行うことにより、特定のアドレ
ス情報を持つデータは必ずNVRAM13a上にキャッ
シュされることになる。
ス情報を持つデータは必ずNVRAM13a上にキャッ
シュされることになる。
【0059】図6は、保証なし書き込み処理(S20
8)の流れを示すフローチャートである。
8)の流れを示すフローチャートである。
【0060】図6に示すように、書き込み保証を行わな
い場合には、NVRAM13a及びRAM13bを区別
する必要がないため、図5に示すNVRAM13aに対
する処理をバッファメモリ13を用いた処理に代替えす
ることにより実現することができる。
い場合には、NVRAM13a及びRAM13bを区別
する必要がないため、図5に示すNVRAM13aに対
する処理をバッファメモリ13を用いた処理に代替えす
ることにより実現することができる。
【0061】この保証なし書き込み処理(S208)及
び保証付き書き込み処理(S207)を行うことによ
り、全ての書き込みデータがバッファメモリ13上にキ
ャッシュされるため、書き込みを完了した後は該データ
を高速にアクセスすることが可能となる。
び保証付き書き込み処理(S207)を行うことによ
り、全ての書き込みデータがバッファメモリ13上にキ
ャッシュされるため、書き込みを完了した後は該データ
を高速にアクセスすることが可能となる。
【0062】上述してきた一連の処理を行うことによ
り、データ書き込み中に電源障害が発生した場合でも、
特定のアドレス情報を有するデータについては書き込み
を保証することができ、かつバッファメモリとしての高
速なアクセスを保持することが可能となる。
り、データ書き込み中に電源障害が発生した場合でも、
特定のアドレス情報を有するデータについては書き込み
を保証することができ、かつバッファメモリとしての高
速なアクセスを保持することが可能となる。
【0063】なお、上記実施例においては、特定のアド
レス情報を持つデータについて書き込み保証を行うこと
としたが、データにNVRAM13a又はRAM13b
のいずれかを選択したかを示す選択情報を用いることに
より、特定の情報について書き込み保証を行うことも可
能である。
レス情報を持つデータについて書き込み保証を行うこと
としたが、データにNVRAM13a又はRAM13b
のいずれかを選択したかを示す選択情報を用いることに
より、特定の情報について書き込み保証を行うことも可
能である。
【0064】また、上記実施例においては、NVRAM
13aとRAM13bとを同様に取り扱うこととした
が、RAM13bとして集積度が高く低価格なダイナミ
ックRAM(DRAM)を用いることもできるため、十
分なRAMを装着したことを前提とすることもできる。
この場合には、図4に示す読み出し処理において、S4
04において行うNVRAM13aの空きエリアの確認
処理等が不要となる。
13aとRAM13bとを同様に取り扱うこととした
が、RAM13bとして集積度が高く低価格なダイナミ
ックRAM(DRAM)を用いることもできるため、十
分なRAMを装着したことを前提とすることもできる。
この場合には、図4に示す読み出し処理において、S4
04において行うNVRAM13aの空きエリアの確認
処理等が不要となる。
【0065】上述してきたように、本実施例では、不揮
発性メモリ(NVRAM13a)と揮発性メモリ(RA
M13b)とをバッファメモリ13としてディスク装置
11に装着して、データのアドレス情報を用いてキャッ
シュ制御するように構成したので、データ書き込み中に
電源障害が発生した場合には特定のアドレス情報を有す
るデータをNVRAM13aを用いて書き込み保証する
ことができる。
発性メモリ(NVRAM13a)と揮発性メモリ(RA
M13b)とをバッファメモリ13としてディスク装置
11に装着して、データのアドレス情報を用いてキャッ
シュ制御するように構成したので、データ書き込み中に
電源障害が発生した場合には特定のアドレス情報を有す
るデータをNVRAM13aを用いて書き込み保証する
ことができる。
【0066】なお、特定のアドレス情報を有するデータ
のみをNVRAM13aにキャッシュするように構成し
たため、電源回復時に掃き出し処理を迅速に行うことが
できる。
のみをNVRAM13aにキャッシュするように構成し
たため、電源回復時に掃き出し処理を迅速に行うことが
できる。
【0067】また、バッファメモリ13として、NVR
AM13aのみならずRAM13bについても使用でき
るため、十分なキャッシュ容量を保持することができ
る。
AM13aのみならずRAM13bについても使用でき
るため、十分なキャッシュ容量を保持することができ
る。
【0068】さらに、バッファメモリ13全てを不揮発
性メモリ13aで構成する場合に比して低コストでディ
スク装置11を構成することができる。
性メモリ13aで構成する場合に比して低コストでディ
スク装置11を構成することができる。
【0069】なお、本実施例においては、バッファメモ
リ13をディスク装置11内に組み込んだ場合について
示したが、本発明はこれに限定されるものではなく、バ
ッファメモリ13を計算機本体側及び外付けとして構成
することもできる。
リ13をディスク装置11内に組み込んだ場合について
示したが、本発明はこれに限定されるものではなく、バ
ッファメモリ13を計算機本体側及び外付けとして構成
することもできる。
【0070】
【発明の効果】以上詳細に説明したように、本発明によ
れば、不揮発性メモリ及び揮発性メモリをバッファメモ
リとして補助記憶装置に装着し、読み込み時には該バッ
ファメモリをキャッシュメモリとして、また書き込み時
にはライトバッファとして動作するように構成したので
下記に示す利点がある。
れば、不揮発性メモリ及び揮発性メモリをバッファメモ
リとして補助記憶装置に装着し、読み込み時には該バッ
ファメモリをキャッシュメモリとして、また書き込み時
にはライトバッファとして動作するように構成したので
下記に示す利点がある。
【0071】1)データ書き込み中に電源障害が発生し
た場合には、不揮発性メモリ上に保持した特定のデータ
を書き込み保証することができ、かつキャッシュメモリ
の容量を十分に保持することが可能となる。
た場合には、不揮発性メモリ上に保持した特定のデータ
を書き込み保証することができ、かつキャッシュメモリ
の容量を十分に保持することが可能となる。
【0072】2)不揮発性メモリのみでバッファメモリ
を構成する場合に比して、バッファメモリを安価に構成
することが可能となる。
を構成する場合に比して、バッファメモリを安価に構成
することが可能となる。
【0073】3)書き込み途中で電源異常が発生して書
き込み未完に終わったデータを、電源回復後に書き込む
際に、不揮発性メモリ上に保持した特定のデータのみを
書き込むため、復旧処理を迅速に行うことが可能とな
る。
き込み未完に終わったデータを、電源回復後に書き込む
際に、不揮発性メモリ上に保持した特定のデータのみを
書き込むため、復旧処理を迅速に行うことが可能とな
る。
【0074】4)バッファメモリとして不揮発性メモリ
及び揮発性メモリを利用できるため、バッファメモリの
容量を十分に保持することが可能となる。
及び揮発性メモリを利用できるため、バッファメモリの
容量を十分に保持することが可能となる。
【0075】5)第2の発明では、重要度及び機密性等
のデータ特性に応じて、使用するバッファメモリをデー
タ毎に選択することが可能となる。
のデータ特性に応じて、使用するバッファメモリをデー
タ毎に選択することが可能となる。
【0076】6)第3の発明では、データに付加したア
ドレス情報に基づいてバッファメモリを制御するため、
使用するバッファメモリをデータ毎に選択する動作を省
き、バッファメモリをトランスペアレントに構築するこ
とが可能となる。
ドレス情報に基づいてバッファメモリを制御するため、
使用するバッファメモリをデータ毎に選択する動作を省
き、バッファメモリをトランスペアレントに構築するこ
とが可能となる。
【図面の簡単な説明】
【図1】 本発明の一実施例であるディスク装置の構成
を示すブロック図。
を示すブロック図。
【図2】 図1に示す制御部が行う全体処理の流れを示
すフローチャート。
すフローチャート。
【図3】 図2に示す掃き出し処理の流れを示すフロー
チャート。
チャート。
【図4】 図2に示す読み出し処理の流れを示すフロー
チャート。
チャート。
【図5】 図2に示す保証付き書き込み処理の流れを示
すフローチャート。
すフローチャート。
【図6】 図2に示す保証なし書き込み処理の流れを示
すフローチャート。
すフローチャート。
11 ディスク装置、 12 制御部、 13 バッフ
ァメモリ、13a 不揮発性メモリ、 13b 揮発性
メモリ、 14 ディスク、15 データバス
ァメモリ、13a 不揮発性メモリ、 13b 揮発性
メモリ、 14 ディスク、15 データバス
Claims (3)
- 【請求項1】データを記憶する主記憶部と、バッファメ
モリとを具備し、前記主記憶部にデータを書き込む際及
び前記主記憶部からデータを読み出す際に該データを一
時的に前記バッファメモリに記憶する補助記憶装置にお
いて、 前記バッファメモリは、 不揮発性メモリからなる第1の記憶手段と、 揮発性メモリからなる第2の記憶手段とを具備し、 前記主記憶部に対してデータを書き込む際に、特定のデ
ータは前記第1の記憶手段に選択的に記憶するととも
に、電源障害が生じた場合は前記第1の記憶手段に記憶
されたデータのみを該電源障害が復旧した後に前記主記
憶部に書き込むことにより復旧処理を行う制御手段を具
備したことを特徴とする補助記憶装置。 - 【請求項2】前記制御手段は、データの書き込み時に与
えられる選択情報にしたがって、該データを前記第1の
記憶手段に書き込むか、前記第2の記憶手段に書き込む
かを決定することを特徴とする請求項1記載の補助記憶
装置。 - 【請求項3】前記制御手段は、データの書き込み時に与
えられる前記主記憶部のアドレス情報にしたがって、該
データを前記第1の記憶手段に書き込むか、前記第2の
記憶手段に書き込むかを決定することを特徴とする請求
項1記載の補助記憶装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5263854A JPH07121444A (ja) | 1993-10-21 | 1993-10-21 | 補助記憶装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5263854A JPH07121444A (ja) | 1993-10-21 | 1993-10-21 | 補助記憶装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07121444A true JPH07121444A (ja) | 1995-05-12 |
Family
ID=17395159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5263854A Pending JPH07121444A (ja) | 1993-10-21 | 1993-10-21 | 補助記憶装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07121444A (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005242708A (ja) * | 2004-02-26 | 2005-09-08 | Matsushita Electric Ind Co Ltd | ファイル修復方法、およびファイル記録装置 |
JP2009146168A (ja) * | 2007-12-14 | 2009-07-02 | Omron Corp | Plc用の部品実装基板 |
US7631142B2 (en) | 2006-04-28 | 2009-12-08 | Kabushiki Kaisha Toshiba | Method and apparatus for selectively storing data into cache or nonvolatile memory |
US7861040B2 (en) | 2006-12-28 | 2010-12-28 | Konica Minolta Business Technologies, Inc. | Memory apparatus, cache control method, and cache control program |
EP2518767A2 (en) | 2011-04-29 | 2012-10-31 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
KR20120140202A (ko) | 2011-06-16 | 2012-12-28 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 기억 장치 및 반도체 장치 |
US8897049B2 (en) | 2011-05-13 | 2014-11-25 | Semiconductor Energy Laboratories Co., Ltd. | Semiconductor device and memory device including semiconductor device |
US9043561B2 (en) | 2012-05-02 | 2015-05-26 | Semiconductor Energy Laboratory Co., Ltd. | Storage device |
US9093136B2 (en) | 2010-12-28 | 2015-07-28 | Semiconductor Energy Laboratory Co., Ltd. | Signal processing circuit comprising memory cell |
US9230648B2 (en) | 2011-04-15 | 2016-01-05 | Semiconductor Energy Laboratory Co., Ltd. | Memory device |
JP2016009273A (ja) * | 2014-06-23 | 2016-01-18 | キヤノン株式会社 | 情報処理装置および情報処理方法、およびコンピュータプログラム |
US9859268B2 (en) | 2011-05-17 | 2018-01-02 | Semiconductor Energy Laboratory Co., Ltd. | Content addressable memory |
-
1993
- 1993-10-21 JP JP5263854A patent/JPH07121444A/ja active Pending
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005242708A (ja) * | 2004-02-26 | 2005-09-08 | Matsushita Electric Ind Co Ltd | ファイル修復方法、およびファイル記録装置 |
US7631142B2 (en) | 2006-04-28 | 2009-12-08 | Kabushiki Kaisha Toshiba | Method and apparatus for selectively storing data into cache or nonvolatile memory |
US7861040B2 (en) | 2006-12-28 | 2010-12-28 | Konica Minolta Business Technologies, Inc. | Memory apparatus, cache control method, and cache control program |
JP2009146168A (ja) * | 2007-12-14 | 2009-07-02 | Omron Corp | Plc用の部品実装基板 |
KR20180134815A (ko) | 2010-12-28 | 2018-12-19 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 반도체 장치 |
US9093136B2 (en) | 2010-12-28 | 2015-07-28 | Semiconductor Energy Laboratory Co., Ltd. | Signal processing circuit comprising memory cell |
US9230648B2 (en) | 2011-04-15 | 2016-01-05 | Semiconductor Energy Laboratory Co., Ltd. | Memory device |
EP2518767A2 (en) | 2011-04-29 | 2012-10-31 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
US9111795B2 (en) | 2011-04-29 | 2015-08-18 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device with capacitor connected to memory element through oxide semiconductor film |
KR20120122912A (ko) | 2011-04-29 | 2012-11-07 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 반도체 장치 |
US10910404B2 (en) | 2011-04-29 | 2021-02-02 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
US9773810B2 (en) | 2011-04-29 | 2017-09-26 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
US10388670B2 (en) | 2011-04-29 | 2019-08-20 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
US8897049B2 (en) | 2011-05-13 | 2014-11-25 | Semiconductor Energy Laboratories Co., Ltd. | Semiconductor device and memory device including semiconductor device |
US9859268B2 (en) | 2011-05-17 | 2018-01-02 | Semiconductor Energy Laboratory Co., Ltd. | Content addressable memory |
KR20120140202A (ko) | 2011-06-16 | 2012-12-28 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 기억 장치 및 반도체 장치 |
US9043561B2 (en) | 2012-05-02 | 2015-05-26 | Semiconductor Energy Laboratory Co., Ltd. | Storage device |
JP2016009273A (ja) * | 2014-06-23 | 2016-01-18 | キヤノン株式会社 | 情報処理装置および情報処理方法、およびコンピュータプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI590049B (zh) | 記憶體裝置與其操作方法 | |
JP4948793B2 (ja) | バッドブロック管理部を含むフラッシュメモリシステム | |
JP4836647B2 (ja) | 不揮発性キャッシュメモリを用いる記憶装置とその制御方法 | |
US20080028132A1 (en) | Non-volatile storage device, data storage system, and data storage method | |
US20080250188A1 (en) | Memory Controller, Nonvolatile Storage, Nonvolatile Storage System, and Memory Control Method | |
KR930010981A (ko) | 플래시메모리를 사용한 기억장치 | |
JPH11126488A (ja) | フラッシュメモリを複数使用した外部記憶装置のデータ記憶制御方法及び装置 | |
KR930022379A (ko) | 메모리 카드 장치 | |
JPH07121444A (ja) | 補助記憶装置 | |
KR20100052518A (ko) | 기억 장치 및 파일 시스템 | |
KR20030065355A (ko) | 기억장치, 데이터 처리 방법 및 데이터 처리 프로그램 | |
KR20080045833A (ko) | 플래쉬 메모리 관리 방법 및 이를 이용하는 플래쉬 메모리시스템 | |
JP2009116465A (ja) | 記憶装置及びメモリ制御方法 | |
JP2006338083A (ja) | メモリコントローラ | |
JPH01235075A (ja) | ディスクメモリ制御装置 | |
JPH04311219A (ja) | データバックアップ方式 | |
JPH0520196A (ja) | デイスク・キヤツシユ制御装置 | |
JPH0793101A (ja) | データバックアップ装置 | |
JPH04137077A (ja) | メモリカードにおけるデータ記録方法およびメモリカードシステム | |
JPH0217550A (ja) | マルチプロセッサシステムの障害処理方式 | |
US7996598B2 (en) | Memory management module | |
JP3166659B2 (ja) | 記憶装置 | |
JPH0644139A (ja) | ディスクキャッシュシステムおよびそのページ置き換え制御方法 | |
US5594909A (en) | File I/O control device writing blocks to faster device first and canceling exclusive lock as each block is written | |
JPH07244614A (ja) | メモリアクセス方式 |