JP2001166993A - 記憶制御装置およびキャッシュメモリの制御方法 - Google Patents

記憶制御装置およびキャッシュメモリの制御方法

Info

Publication number
JP2001166993A
JP2001166993A JP35359599A JP35359599A JP2001166993A JP 2001166993 A JP2001166993 A JP 2001166993A JP 35359599 A JP35359599 A JP 35359599A JP 35359599 A JP35359599 A JP 35359599A JP 2001166993 A JP2001166993 A JP 2001166993A
Authority
JP
Japan
Prior art keywords
cache
management information
storage
data
memory
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
Application number
JP35359599A
Other languages
English (en)
Inventor
Rie Tanaka
利恵 田中
Atsushi Ishikawa
篤 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP35359599A priority Critical patent/JP2001166993A/ja
Publication of JP2001166993A publication Critical patent/JP2001166993A/ja
Priority to US10/313,383 priority patent/US6799244B2/en
Priority to US10/748,553 priority patent/US7111134B2/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements

Abstract

(57)【要約】 【課題】 ライトキャッシュ付きの記憶制御装置の処理
性能を向上させる。 【解決手段】 複数のディスク装置3000とホストコ
ンピュータ1000との間に介在し、両者間で授受され
るリードデータ/ライトデータを一時的に保持する不揮
発性のキャッシュ2400を備えた記憶制御装置200
0において、キャッシュ2400上のユーザデータの管
理情報を、キャッシュ2400内のキャッシュ内管理情
報領域2420と、より高速なアクセスが可能な揮発性
のローカルメモリ2210内のローカルメモリ内管理情
報領域2221に2元管理し、正常時の管理情報の参照
は高速なローカルメモリ内管理情報領域2221から実
施し、障害時には不揮発性のキャッシュ内管理情報領域
2420からローカルメモリ内管理情報領域2221に
管理情報を復元することにより、信頼性を落とすことな
くキャッシュ2400のアクセス処理の高速化を図る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、記憶制御技術およ
びキャッシュメモリの制御技術に関し、特に、ユーザデ
ータを一時的に格納する不揮発なキャッシュメモリを搭
載する記憶制御装置等に適用して有効な技術に関する。
【0002】
【従来の技術】最近の市場動向として、記憶装置の高性
能化、大容量化、低価格化の要求が高まっており、RA
ID(Redundant Array of Ine
xpensive Disks)の技術が重視されてい
る。RAIDにおいては、複数のディスク装置をアレイ
状に構成し、データ書き込み時には、書き込みデータに
加えて冗長データを書き込みデータを格納したディスク
装置とは異なるディスク装置へ書き込むことで、アレイ
構成内の任意のディスク装置の故障に対しても他のディ
スク装置のデータと前記冗長データから該障害ディスク
装置上のデータを修復可能とすることによって、ディス
ク装置のデータの保全性の向上を図っている。しかし、
RAIDは、データの保全性が向上する反面、上記冗長
データ生成/書き込みのための処理時間が増大し、ホス
トからのライト性能が大幅に劣化する。
【0003】このため、従来では、RAID支援にあた
っては、ライトキャッシュの技術が不可欠となってい
る。ライトキャッシュとは、コントローラ内に搭載され
た、データを一時的に書き込むキャッシュであり、ホス
トからのライト要求では、このキャッシュに書き込みを
行った時点で、ホストに終了報告を返す。そして、ホス
トのI/O処理とは非同期に冗長データの生成、ライト
データおよび冗長データのディスク装置への格納を行う
ことにより書き込み処理時の性能低下を防いでいる。
【0004】
【発明が解決しようとする課題】上記従来技術は、冗長
データの生成/ライトデータおよび冗長データのディス
ク装置への書き込みをホストI/Oとは同期させずに非
同期に行う技術であり、この技術は、応答性能は向上す
るが、制御装置の処理性能自体を向上させるものではな
い。
【0005】また、ライトキャッシュを用いると、デー
タをキャッシュ上に書き込んだ時点でホストに終了報告
をするため、キャッシュ上にディスク装置に未反映のホ
ストデータが存在する。従って、突発的な電源断等の障
害発生時のユーザデータロストを防ぐため、このライト
キャッシュは、不揮発である必要がある。この際、ユー
ザデータだけでなく、このユーザデータを管理する管理
情報もこのライトキャッシュ上または他の不揮発メモリ
上に格納しておく必要がある。
【0006】このライトキャッシュおよび不揮発メモリ
は、一般的にプロセッサ外部に位置する。このため、ラ
イトキャッシュおよび不揮発メモリに対するプロセッサ
からのアクセスは、プロセッサ内部にあるローカルメモ
リへのアクセスに比べると極めて低速である。このこと
は処理性能の低下を招いている。
【0007】本発明の目的は、キャッシュメモリを備え
た記憶制御装置において、信頼性を低下させることな
く、キャッシュメモリの制御に伴う処理時間を削減し、
記憶制御装置としての処理性能を向上させることにあ
る。
【0008】本発明の他の目的は、キャッシュメモリを
備えた記憶制御装置において、ライト性能だけでなくリ
ード性能についても同様に向上させることにある。
【0009】本発明の他の目的は、信頼性を維持しつつ
ライトキャッシュ等のキャッシュメモリの制御に伴う処
理時間を短縮し、キャッシュメモリを経由したデータ転
送の処理速度を向上させることが可能なキャッシュメモ
リの制御技術を提供することにある。
【0010】
【課題を解決するための手段】本発明は、上位装置と記
憶装置との間に介在し、上位装置と記憶装置との間にお
けるデータの授受を制御するとともに、データを一時的
に格納するキャッシュメモリを備えた記憶制御装置にお
いて、キャッシュメモリに格納されたデータの管理情報
は、不揮発性の第1の記憶手段と、第1の記憶手段より
もアクセス動作が高速な第2の記憶手段に多重に格納さ
れ、管理情報の参照は第2の記憶手段に対して実行さ
れ、管理情報の更新は第1および第2の記憶手段に対し
て実行されるようにしたものである。
【0011】また、本発明は、データの転送経路に介在
し、データを一時的に保持するキャッシュメモリの制御
方法において、キャッシュメモリに格納されたデータの
管理情報を、不揮発性の第1の記憶手段と、第1の記憶
手段よりもアクセス動作が高速な第2の記憶手段に多重
に格納し、管理情報の参照は第2の記憶手段に対して実
行し、管理情報の更新は第1および第2の記憶手段に対
して実行するものである。
【0012】より具体的には、一例として、ホストコン
ピュータとディスク等の記憶装置の間に位置し、ホスト
コンピュータの指示に基づいて記憶装置の制御、または
RAID制御を伴う記憶装置制御を行う、独立型または
ホスト一体型、またはデバイス一体型の記憶制御装置に
おいて、当該記憶制御装置は、ユーザデータを一時的に
格納しておく不揮発性のキャッシュ機構を持ち、当該キ
ャッシュ上のユーザデータの管理情報を、低速であるが
不揮発なメモリ上と、高速であるが揮発するメモリ上に
2元管理するものである。そして、正常時の管理情報の
参照は、高速な揮発メモリから行うことにより高速化を
図る。突発的な電源断等の障害発生時には、不揮発メモ
リ上のユーザデータ/管理情報によりデータ消失を防
ぎ、信頼性を向上させる。
【0013】これらの制御機能を実現すべく、記憶制御
装置の制御論理として、ユーザデータの管理情報を低速
な不揮発メモリ上と高速な揮発メモリ上に2重書きする
手段と、正常時には当該管理情報を高速な揮発メモリか
ら参照する手段と、突発的な電源断等の障害発生時に
は、当該管理情報を不揮発メモリから参照する手段と、
当該参照情報を揮発メモリ上に復元する手段を設ける。
【0014】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照しながら詳細に説明する。
【0015】なお、以下の本実施の形態に示した構成
は、あくまで一例であり、別の構成による実現も可能で
ある。
【0016】図1は、本発明の一実施の形態である記憶
制御装置およびキャッシュメモリの制御方法をディスク
アレイ装置に適用した場合の構成の一例を示す概念図で
ある。
【0017】図1において、1000はデータ処理を行
う中央処理装置としてのホストコンピュータ、2000
はディスク装置の制御を行う記憶制御装置、3000は
ホストデータを格納するディスク装置である。ここで、
記憶制御装置2000は、ホストバスに直結したスロッ
トに差し込みホスト筐体内に組み込む構成、記憶制御装
置として独立した筐体に組み込む構成、ディスク装置を
組み込んだ筐体として実現する構成のいずれの構成でも
よい。
【0018】一例として、複数のディスク装置3000
はディスクアレイを構成し、記憶制御装置2000のR
AID制御により、ホストコンピュータ1000から受
領したユーザデータおよび当該ユーザデータから生成さ
れた冗長データが複数のディスク装置3000に分散し
て格納される。
【0019】記憶制御装置2000は、ホストコンピュ
ータ1000とのプロトコル制御を行うホストI/F制
御部2100、コントローラ全体を制御するマイクロプ
ロセッサ(以下、プロセッサと称す)2200、データ
の転送を実行するデータ転送制御部2300、ホストコ
ンピュータ1000とディスク装置3000との間のデ
ータ転送時に、リードデータおよびライトデータ等のユ
ーザデータの一時的な格納に用いられる不揮発性のキャ
ッシュメモリ(以下、キャッシュと称す)2400、各
ディスク装置3000とのプロトコル制御を行うDRV
I/F制御部2500より構成する。
【0020】プロセッサ2200に内部には、ローカル
メモリ2210を内蔵している。
【0021】キャッシュ2400の内容について、図2
を用いて説明する。キャッシュ2400は、ユーザデー
タ領域2410、当該ユーザデータを管理するためのキ
ャッシュ内管理情報領域2420とから構成される。ユ
ーザデータ領域2410には、実際のユーザデータが一
時的に格納され、キャッシュ内管理情報領域2420に
は、当該ユーザデータを管理する上で必要な、データ属
性(ライトデータ/リードデータ)、ホストコンピュー
タ1000が指定する当該ユーザデータの論理アドレ
ス、空きエリア情報、キャッシュ記憶内容の置き換えに
おける優先順位の管理情報等の情報が格納されている。
本実施の形態では、管理情報領域をキャッシュ内に置い
たが不揮発メモリであれば、他のメモリを用いても構わ
ない。
【0022】ローカルメモリ2210の内容について、
図3を用いて説明する。ローカルメモリ2210は、上
述のキャッシュ内管理情報領域2420と同等の情報を
格納しているローカルメモリ内管理情報領域2221、
記憶制御装置2000の全体を制御するマイクロプログ
ラムを格納しているプログラム領域2222とからな
る。本実施の形態では、管理情報領域をローカルメモリ
2210内に置いたが高速であれば、他のメモリを用い
ても構わない。
【0023】プロセッサ2200は、逐次プログラム領
域をデコードしながら実行し、記憶制御装置2000を
制御している。また、プロセッサ2200は、ユーザデ
ータ領域2410に格納されているデータの管理情報を
キャッシュ内管理情報領域2420とローカルメモリ内
管理情報領域2221に2重書きして2元管理してい
る。
【0024】ここで、ローカルメモリ2210は、プロ
セッサ2200の内部に位置しているため、プロセッサ
からのアクセスは高速に行える。これに比べキャッシュ
2400は、外部メモリにあたるため、プロセッサ22
00からのアクセスは極めて低速となる。近年、後述の
PCIバスの発展によりポスティッド・ライト方式が採
用されキャッシュ2400等の外部メモリに対してもラ
イト(更新)速度は内部メモリ(ローカルメモリ221
0)並みに高速化が図られているが、リード速度は、内
部メモリの方がはるかに高速である。従って、データの
管理情報の参照は、キャッシュ内管理情報領域2420
を参照するよりローカルメモリ内管理情報領域2221
の方を参照する方がメモリアクセスにかかるオーバヘッ
ドを削減できる。
【0025】図4に、一例として、PCIバス4000
を用いて、プロセッサ2200と、ホストI/F制御部
2100、配下のデータ転送制御部2300、キャッシ
ュ2400、DRVI/F制御部2500を制御する場
合の接続構成例を示す。この場合、プロセッサ2200
内には、ローカルメモリ2210のプログラム領域22
22に格納されたマイクロプログラムにて動作するマイ
クロプロセッサユニット(MPU)2201、MPU2
201と外部との間におけるPCIバスI/Fを実現す
るバスコントローラ2202が設けられている。
【0026】上述のポスティッド・ライトでは、たとえ
ばMPU2201からバスコントローラ2202を経由
したキャッシュ2400に対するデータライトに際して
は、バスコントローラ2202に対するデータライト完
にて、MPU2201でのデータライト処理が完結する
ため、キャッシュ2400でのライト完了を待つ必要が
なく、外部への高速なデータライトが可能となる。これ
に対して、外部のキャッシュ2400等からのからMP
U2201へのデータリード処理では、キャッシュ24
00のアクセス速度に依存するため高速なデータリード
(キャッシュ2400のキャッシュ内管理情報領域24
20の参照等)が期待できない。
【0027】そこで、本実施の形態の場合には、キャッ
シュ2400のキャッシュ内管理情報領域2420の参
照する代わりに、等価な管理情報を保持するローカルメ
モリ2210のローカルメモリ内管理情報領域2221
を参照することで、キャッシュ2400の制御の高速化
を実現する。
【0028】次に、本実施の形態における、ディスクサ
ブシステムでの、ホストコンピュータ1000からのI
/O処理について図1、図2、図3、図6を用いて説明
する。ホストコンピュータ1000からの書き込み処理
について説明する。
【0029】ホストコンピュータ1000からの書き込
み要求時、プロセッサ2200は、ホストI/F制御部
2100により、書き込み論理データを受領し、当該デ
ータをデータ転送制御部2300を通じてユーザデータ
領域2410に書き込み、ホストコンピュータ1000
に終了を報告する。このキャッシュ上のユーザデータ領
域2410への書き込みを行うためには、空きエリアを
検索する必要がある。この検索においては、プロセッサ
2200は低速なキャッシュ内管理情報領域2420で
はなく高速なローカルメモリ内管理情報領域2221を
用いて検索する。空きエリアが見つかれば、当該エリア
にデータを書き込み、キャッシュ内管理情報領域242
0とローカルメモリ内管理情報領域2221の両方を更
新する。この更新は、プロセッサ2200が両方を更新
しても構わないし、プロセッサ2200の指示によりデ
ータ転送制御部2300がキャッシュ内管理情報領域2
420とローカルメモリ内管理情報領域2221に自動
的に2重書きしても構わない。
【0030】このようにキャッシュ2400上のデータ
の管理情報を参照する場合には、高速なローカルメモリ
2210から参照し、更新する場合にはキャッシュ24
00とローカルメモリ2210の両方を更新する。前述
のようにキャッシュ2400のリードアクセス速度が極
めて低速(たとえばローカルメモリ2210の20倍程
度)であるのに対し、キャッシュ2400のライトアク
セス速度は、ポスティッド・ライトの採用によりローカ
ルメモリ並みのため、この方式は有用である。
【0031】すなわち、キャッシュ2400の管理情報
をローカルメモリ2210にも2重書きするためのオー
バヘッドの増加より、当該管理情報をキャッシュリード
からローカルメモリリードに変更することによるオーバ
ヘッドの削減の方がはるかに大きい。
【0032】上記は、ホストコンピュータ1000から
キャッシュ2400への書き込み処理について説明した
が、本実施の形態によれば、この後、ホストコンピュー
タ1000とは非同期に行われる冗長データの生成、ラ
イトデータおよび冗長データのディスク装置3000へ
の書き込みにおいても同様にオーバヘッドの削減が図れ
る。例えば、ライトデータのディスク装置3000への
書き込みにおいては、ユーザデータ領域2410上のラ
イトデータの検索が必要であり、またライトデータのデ
ィスク装置3000への書き込み位置決定のために当該
データの論理アドレスの参照が必要である。これらのデ
ータ管理情報の参照をすべて高速なローカルメモリ内管
理情報領域2221から行うことによりオーバヘッドを
削減し、記憶制御装置2000におけるキャッシュ24
00を経由したデータ転送速度等の高速化による処理性
能の向上を実現することができる。
【0033】また、この高速化はホストコンピュータ1
000からの読み込み処理においても同様に図ることが
できる。例えば、ホストコンピュータ1000から要求
されたデータがユーザデータ領域2410上に存在する
か否か(ヒット/ミス)判定するためには管理情報の参
照が必要である。また、ユーザデータ領域2410上に
存在しない場合には、ディスク装置3000からユーザ
データ領域2410に読み込むために、ユーザデータ領
域2410の空きエリアを検索する必要があり、やはり
管理情報の参照が必要である。
【0034】このように、それが読み込み処理であれ、
書き込み処理であれ、ホストコンピュータ1000とデ
ィスク装置3000間のデータ転送を制御するプロセッ
サ2200のオーバヘッドの多くは、ユーザデータ領域
2410上のデータを管理する管理情報(2420およ
び2221)の参照、更新である。本実施の形態は、こ
の内、従来、特出して低速であった参照処理のオーバヘ
ッドを削減する方式であり、あらゆるアクセス形態にお
いても大幅にオーバヘッドの削減を実現し、記憶制御装
置2000の高速化を図ることができる。上述のホスト
I/O処理の一例を図6のフローチャートにまとめて示
す。
【0035】次に、突発的な電源断等の障害時の復旧方
式について図1、図2、図3、図5を用いて説明する。
【0036】突発的な電源断等の障害によりプロセッサ
2200への電源供給が停止した場合、一般にプロセッ
サ内部メモリであるローカルメモリ2210は揮発メモ
リであり、ローカルメモリ2210内の情報は全て失わ
れる。これに対し、キャッシュ2400は不揮発メモリ
であり、ユーザデータ領域2410、キャッシュ内管理
情報領域2420ともに情報は保持される。
【0037】ここで、障害が回復し、電源の再投入が実
施されると、まずプロセッサ2200は、情報が失われ
てしまったローカルメモリ内管理情報領域2221の情
報を復元するため、キャッシュ内管理情報領域2420
内の情報を用いてローカルメモリ内管理情報領域222
1を復元する。この復元はプロセッサ2200が自ら行
っても構わないし、プロセッサ2200の指示により、
データ転送制御部2300が行っても構わない。
【0038】この復元処理をしている間は、ホストコン
ピュータ1000からのI/O処理を一時止めておく
(ホストコンピュータ1000からの要求を受けつけな
くても構わないし、要求は受けつけキューイングのみは
行い、実行のみを止めても構わない)か、または、デー
タの管理情報の参照は、キャッシュ内管理情報領域24
20から参照することで対応可能である。
【0039】ローカルメモリ内管理情報領域2221の
復元が完了すれば、これまでどおりのI/O処理を実行
する。上述の電源投入時の一連の処理を図5のフローチ
ャートに例示する。
【0040】このように、正常時はあたかも揮発するロ
ーカルメモリ2210でキャッシュ2400上のユーザ
データを管理しているように見せながらも障害時には不
揮発のキャッシュ2400上のキャッシュ内管理情報領
域2420の管理情報等を用いてデータ消失を防ぎ、信
頼性を低下させることなくキャッシュ2400を経由し
たデータ転送速度等の高速化を図ることができる。
【0041】以上説明したように、本実施の形態の記憶
制御装置およびキャッシュメモリの制御方法によれば、
ライトキャッシュを備えた記憶制御装置において、デー
タの信頼性を落とすことなく、キャッシュ上のユーザデ
ータに対するアクセス管理のオーバヘッドを大幅に削減
できるようになり、あらゆるアクセス形態においても記
憶制御装置の処理性能を向上することができる。
【0042】以上本発明者によってなされた発明を実施
の形態に基づき具体的に説明したが、本発明は前記実施
の形態に限定されるものではなく、その要旨を逸脱しな
い範囲で種々変更可能であることはいうまでもない。
【0043】
【発明の効果】本発明の記憶制御装置によれば、キャッ
シュメモリを備えた記憶制御装置において、信頼性を低
下させることなく、キャッシュメモリの制御に伴う処理
時間を削減し、記憶制御装置としての処理性能を向上さ
せることができる、という効果が得られる。
【0044】本発明の記憶制御装置によれば、キャッシ
ュメモリを備えた記憶制御装置において、ライト性能だ
けでなくリード性能についても同様に向上させることが
できる、という効果が得られる。
【0045】本発明のキャッシュメモリの制御方法によ
れば、信頼性を維持しつつライトキャッシュ等のキャッ
シュメモリの制御に伴う処理時間を短縮し、キャッシュ
メモリを経由したデータ転送の処理速度を向上させるこ
とができる、という効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施の形態である記憶制御装置およ
びキャッシュメモリの制御方法をディスクアレイ装置に
適用した場合の構成の一例を示す概念図である。
【図2】本発明の一実施の形態である記憶制御装置およ
びキャッシュメモリの制御方法におけるキャッシュメモ
リ内の情報内容の一例を示す概念図である。
【図3】本発明の一実施の形態である記憶制御装置およ
びキャッシュメモリの制御方法におけるローカルメモリ
内の情報内容の一例を示す概念図である。
【図4】本発明の一実施の形態である記憶制御装置およ
びキャッシュメモリの制御方法が適用されるディスクア
レイ装置においてマイクロプロセッサと外部との情報の
授受をPCIバスを用いて行う場合の構成の一例を示す
概念図である。
【図5】本発明の一実施の形態である記憶制御装置およ
びキャッシュメモリの制御方法の作用の一例を示すフロ
ーチャートである。
【図6】本発明の一実施の形態である記憶制御装置およ
びキャッシュメモリの制御方法の作用の一例を示すフロ
ーチャートである。
【符号の説明】
1000…ホストコンピュータ(上位装置)、2000
…記憶制御装置、2100…ホストI/F制御部、22
00…マイクロプロセッサ、2201…マイクロプロセ
ッサユニット(MPU)、2202…バスコントロー
ラ、2210…ローカルメモリ、2221…ローカルメ
モリ内管理情報領域(第2の記憶領域)、2222…プ
ログラム領域、2300…データ転送制御部、2400
…キャッシュメモリ、2410…ユーザデータ領域、2
420…キャッシュ内管理情報領域(第1の記憶領
域)、2500…DRVI/F制御部、3000…ディ
スク装置(記憶装置)、4000…PCIバス。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 上位装置と記憶装置との間に介在し、前
    記上位装置と前記記憶装置との間におけるデータの授受
    を制御するとともに、前記データを一時的に格納するキ
    ャッシュメモリを備えた記憶制御装置であって、 前記キャッシュメモリに格納された前記データの管理情
    報は、不揮発性の第1の記憶手段と、前記第1の記憶手
    段よりもアクセス動作が高速な第2の記憶手段に多重に
    格納され、 前記管理情報の参照は前記第2の記憶手段に対して実行
    され、前記管理情報の更新は前記第1および第2の記憶
    手段に対して実行されることを特徴とする記憶制御装
    置。
  2. 【請求項2】 請求項1記載の記憶制御装置において、
    前記キャッシュメモリは不揮発性記憶媒体で構成され、
    前記第1の記憶手段は前記不揮発性記憶媒体の一部に設
    定され、前記第2の記憶手段は、前記記憶制御装置の動
    作を制御するマイクロプロセッサの制御プログラムが格
    納されるローカルメモリの一部に設定されることを特徴
    とする記憶制御装置。
  3. 【請求項3】 請求項1または2記載の記憶制御装置に
    おいて、前記記憶制御装置における障害停止後の再起動
    時に、前記第1の記憶手段に保持されている健全な前記
    管理情報を前記第2の記憶手段に複写して稼働を再開す
    ることを特徴とする記憶制御装置。
  4. 【請求項4】 データの転送経路に介在し、前記データ
    を一時的に保持するキャッシュメモリの制御方法であっ
    て、 前記キャッシュメモリに格納された前記データの管理情
    報を、不揮発性の第1の記憶手段と、前記第1の記憶手
    段よりもアクセス動作が高速な第2の記憶手段に多重に
    格納し、前記管理情報の参照は前記第2の記憶手段に対
    して実行し、前記管理情報の更新は前記第1および第2
    の記憶手段に対して実行することを特徴とするキャッシ
    ュメモリの制御方法。
  5. 【請求項5】 請求項4記載のキャッシュメモリの制御
    方法において、前記キャッシュメモリを不揮発性記憶媒
    体で構成し、前記第1の記憶手段を前記不揮発性記憶媒
    体の一部に設定し、前記第2の記憶手段を、前記キャッ
    シュメモリの動作を制御するマイクロプロセッサの制御
    プログラムが格納されるローカルメモリの一部に設定す
    ることを特徴とするキャッシュメモリの制御方法。
JP35359599A 1999-12-13 1999-12-13 記憶制御装置およびキャッシュメモリの制御方法 Pending JP2001166993A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP35359599A JP2001166993A (ja) 1999-12-13 1999-12-13 記憶制御装置およびキャッシュメモリの制御方法
US10/313,383 US6799244B2 (en) 1999-12-13 2002-12-06 Storage control unit with a volatile cache and a non-volatile backup cache for processing read and write requests
US10/748,553 US7111134B2 (en) 1999-12-13 2003-12-29 Subsystem and subsystem processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35359599A JP2001166993A (ja) 1999-12-13 1999-12-13 記憶制御装置およびキャッシュメモリの制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005357304A Division JP2006099802A (ja) 2005-12-12 2005-12-12 記憶制御装置およびキャッシュメモリの制御方法

Publications (1)

Publication Number Publication Date
JP2001166993A true JP2001166993A (ja) 2001-06-22

Family

ID=18431912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35359599A Pending JP2001166993A (ja) 1999-12-13 1999-12-13 記憶制御装置およびキャッシュメモリの制御方法

Country Status (2)

Country Link
US (2) US6799244B2 (ja)
JP (1) JP2001166993A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7032068B2 (en) 2002-02-04 2006-04-18 Nec Corporation Disk cache management method of disk array device
JP2006227688A (ja) * 2005-02-15 2006-08-31 Hitachi Ltd ストレージシステム
JP2013222434A (ja) * 2012-04-19 2013-10-28 Nec Corp キャッシュ制御装置、キャッシュ制御方法、及びそのプログラム

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4209108B2 (ja) * 2001-12-20 2009-01-14 株式会社日立製作所 記憶装置の制御方法およびこの方法に用いる記憶装置、ディスクアレイ装置、及びディスクコントローラ
US7103724B2 (en) * 2002-04-01 2006-09-05 Intel Corporation Method and apparatus to generate cache data
JP2003345528A (ja) * 2002-05-22 2003-12-05 Hitachi Ltd 記憶システム
US7170890B2 (en) 2002-12-16 2007-01-30 Zetera Corporation Electrical devices with improved communication
US7649880B2 (en) 2002-11-12 2010-01-19 Mark Adams Systems and methods for deriving storage area commands
US7742473B2 (en) * 2002-11-12 2010-06-22 Mark Adams Accelerator module
JP2006506847A (ja) 2002-11-12 2006-02-23 ゼテーラ・コーポレイシヨン 通信プロトコル、システムおよび方法
US8005918B2 (en) * 2002-11-12 2011-08-23 Rateze Remote Mgmt. L.L.C. Data storage devices having IP capable partitions
US20040160975A1 (en) * 2003-01-21 2004-08-19 Charles Frank Multicast communication protocols, systems and methods
JP4252828B2 (ja) * 2003-03-19 2009-04-08 株式会社日立製作所 キャッシュ制御方法、ノード装置、プログラム
US7177782B2 (en) * 2004-06-18 2007-02-13 Lenovo (Singapore) Pte. Ltd. Methods and arrangements for capturing runtime information
US7702850B2 (en) 2005-03-14 2010-04-20 Thomas Earl Ludwig Topology independent storage arrays and methods
US7620981B2 (en) * 2005-05-26 2009-11-17 Charles William Frank Virtual devices and virtual bus tunnels, modules and methods
US7743214B2 (en) * 2005-08-16 2010-06-22 Mark Adams Generating storage system commands
US8819092B2 (en) 2005-08-16 2014-08-26 Rateze Remote Mgmt. L.L.C. Disaggregated resources and access methods
US9270532B2 (en) 2005-10-06 2016-02-23 Rateze Remote Mgmt. L.L.C. Resource command messages and methods
US7634585B2 (en) * 2005-11-04 2009-12-15 Sandisk Corporation In-line cache using nonvolatile memory between host and disk device
WO2007056669A2 (en) * 2005-11-04 2007-05-18 Sandisk Corporation Enhanced first level storage cache using nonvolatile memory
US20070106842A1 (en) * 2005-11-04 2007-05-10 Conley Kevin M Enhanced first level storage caching methods using nonvolatile memory
US7924881B2 (en) 2006-04-10 2011-04-12 Rateze Remote Mgmt. L.L.C. Datagram identifier management
US7613876B2 (en) * 2006-06-08 2009-11-03 Bitmicro Networks, Inc. Hybrid multi-tiered caching storage system
US8301833B1 (en) 2007-06-01 2012-10-30 Netlist, Inc. Non-volatile memory module
US8874831B2 (en) 2007-06-01 2014-10-28 Netlist, Inc. Flash-DRAM hybrid memory module
US8904098B2 (en) 2007-06-01 2014-12-02 Netlist, Inc. Redundant backup using non-volatile memory
US8615678B1 (en) 2008-06-30 2013-12-24 Emc Corporation Auto-adapting multi-tier cache
US8250310B2 (en) * 2008-07-31 2012-08-21 International Business Machines Corporation Assigning data to NVRAM of shared access hybrid hard drives
JP5448496B2 (ja) * 2009-02-19 2014-03-19 キヤノン株式会社 情報処理装置及びその制御方法
CN101866307A (zh) * 2010-06-24 2010-10-20 杭州华三通信技术有限公司 一种基于镜像技术的数据存储方法及装置
WO2012117451A1 (en) * 2011-03-03 2012-09-07 Hitachi, Ltd. Storage controller and method of controlling storage controller
US10198350B2 (en) 2011-07-28 2019-02-05 Netlist, Inc. Memory module having volatile and non-volatile memory subsystems and method of operation
US10838646B2 (en) 2011-07-28 2020-11-17 Netlist, Inc. Method and apparatus for presearching stored data
US10380022B2 (en) 2011-07-28 2019-08-13 Netlist, Inc. Hybrid memory module and system and method of operating the same
US9229809B2 (en) 2011-09-11 2016-01-05 Microsoft Technology Licensing Llc Nonvolatile media journaling of verified data sets
US8456972B2 (en) 2011-09-12 2013-06-04 Microsoft Corporation Efficient access to storage devices with usage bitmaps
US10216651B2 (en) 2011-11-07 2019-02-26 Nexgen Storage, Inc. Primary data storage system with data tiering
CN102981783A (zh) * 2012-11-29 2013-03-20 浪潮电子信息产业股份有限公司 一种基于Nand Flash的Cache加速方法
US10372551B2 (en) 2013-03-15 2019-08-06 Netlist, Inc. Hybrid memory system with configurable error thresholds and failure analysis capability
US9436600B2 (en) 2013-06-11 2016-09-06 Svic No. 28 New Technology Business Investment L.L.P. Non-volatile memory storage for multi-channel memory system
US10248328B2 (en) 2013-11-07 2019-04-02 Netlist, Inc. Direct data move between DRAM and storage on a memory module
CN103761051B (zh) * 2013-12-17 2016-05-18 北京同有飞骥科技股份有限公司 一种基于持续数据多输入输出流并发写入性能优化方法
US20150262696A1 (en) * 2014-03-12 2015-09-17 Kabushiki Kaisha Toshiba Memory system and control method of memory system
JP5977778B2 (ja) * 2014-03-27 2016-08-24 京セラドキュメントソリューションズ株式会社 情報処理装置およびメモリー管理方法
JP2023002309A (ja) * 2021-06-22 2023-01-10 株式会社日立製作所 ストレージシステム及びデータ管理方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60179857A (ja) * 1984-02-28 1985-09-13 Fujitsu Ltd キヤツシユ装置の制御方式
JPH03260851A (ja) * 1990-03-12 1991-11-20 Fujitsu Ltd ディスク制御装置
JPH04245352A (ja) * 1991-01-31 1992-09-01 Hitachi Ltd 制御装置の制御方法
JPH04273516A (ja) * 1991-02-28 1992-09-29 Toshiba Corp 磁気ディスク装置
JPH04284552A (ja) * 1991-03-14 1992-10-09 Fujitsu Ltd キャッシュメモリ搭載装置のデータリカバリ方式
JPH06222988A (ja) * 1992-12-17 1994-08-12 Internatl Business Mach Corp <Ibm> 記憶装置制御装置およびデータ保存方法
JPH07141117A (ja) * 1993-11-16 1995-06-02 Fujitsu Ltd ディスク制御装置の制御方法
JPH08221215A (ja) * 1995-02-16 1996-08-30 Fujitsu Ltd 外部記憶制御装置
JPH08221210A (ja) * 1995-02-16 1996-08-30 Fujitsu Ltd ディスク制御装置
JPH10222424A (ja) * 1997-02-06 1998-08-21 Fujitsu Ltd データキャッシュ制御方法
JPH10254643A (ja) * 1997-03-14 1998-09-25 Hitachi Ltd 記憶装置システム
JPH11288387A (ja) * 1998-12-11 1999-10-19 Fujitsu Ltd ディスクキャッシュ装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4916605A (en) 1984-03-27 1990-04-10 International Business Machines Corporation Fast write operations
DE3686291T2 (de) 1985-05-29 1993-03-11 Toshiba Kawasaki Kk Cache-anordnung mit einem lru-verfahren und magnetscheibensteuereinrichtung mit einer solchen anordnung.
US5133060A (en) * 1989-06-05 1992-07-21 Compuadd Corporation Disk controller includes cache memory and a local processor which limits data transfers from memory to cache in accordance with a maximum look ahead parameter
US5291442A (en) * 1990-10-31 1994-03-01 International Business Machines Corporation Method and apparatus for dynamic cache line sectoring in multiprocessor systems
JPH0628108A (ja) 1992-07-09 1994-02-04 Hitachi Ltd データ記憶システム
FR2707774B1 (fr) * 1993-07-15 1995-08-18 Bull Sa Procédé de gestion cohérente des échanges entre des niveaux d'une hiérarchie de mémoires à au moins trois niveaux.
JPH0756694A (ja) 1993-08-19 1995-03-03 Fuji Xerox Co Ltd ディスクアレイ装置
JP3579910B2 (ja) 1993-10-27 2004-10-20 ソニー株式会社 記録再生装置
US5642506A (en) * 1994-12-14 1997-06-24 International Business Machines Corporation Method and apparatus for initializing a multiprocessor system
US6009498A (en) * 1995-02-16 1999-12-28 Fujitsu Limited Disk control unit for holding track data in cache memory
US5778426A (en) 1995-10-23 1998-07-07 Symbios, Inc. Methods and structure to maintain a two level cache in a RAID controller and thereby selecting a preferred posting method
US6336161B1 (en) * 1995-12-15 2002-01-01 Texas Instruments Incorporated Computer configuration system and method with state and restoration from non-volatile semiconductor memory
US5829013A (en) * 1995-12-26 1998-10-27 Intel Corporation Memory manager to allow non-volatile memory to be used to supplement main memory
US5819087A (en) * 1996-07-19 1998-10-06 Compaq Computer Corporation Flash ROM sharing between processor and microcontroller during booting and handling warm-booting events
JP2000089916A (ja) * 1998-09-11 2000-03-31 Fujitsu Ltd ファイル制御装置
US6233680B1 (en) * 1998-10-02 2001-05-15 International Business Machines Corporation Method and system for boot-time deconfiguration of a processor in a symmetrical multi-processing system
JP2000132450A (ja) * 1998-10-29 2000-05-12 Mitsubishi Electric Corp データ制御装置及びデータ制御方法
JP3966636B2 (ja) * 1999-02-18 2007-08-29 富士通株式会社 監視制御システム
US6463507B1 (en) * 1999-06-25 2002-10-08 International Business Machines Corporation Layered local cache with lower level cache updating upper and lower level cache directories
US6304946B1 (en) 1999-07-01 2001-10-16 Emc Corporation System and method for optimizing cache write backs to disks
US6550019B1 (en) * 1999-11-04 2003-04-15 International Business Machines Corporation Method and apparatus for problem identification during initial program load in a multiprocessor system
CA2403044A1 (en) * 2000-03-22 2001-09-27 Interwoven Inc. Method and apparatus for storing changes to file attributes without having to store an additional copy of the file contents
JP4060552B2 (ja) * 2001-08-06 2008-03-12 株式会社日立製作所 記憶装置システム、および、記憶装置システムの構成方法
US7024532B2 (en) * 2001-08-09 2006-04-04 Matsushita Electric Industrial Co., Ltd. File management method, and memory card and terminal apparatus that make use of the method
JP4189171B2 (ja) * 2002-05-24 2008-12-03 株式会社日立製作所 ディスク制御装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60179857A (ja) * 1984-02-28 1985-09-13 Fujitsu Ltd キヤツシユ装置の制御方式
JPH03260851A (ja) * 1990-03-12 1991-11-20 Fujitsu Ltd ディスク制御装置
JPH04245352A (ja) * 1991-01-31 1992-09-01 Hitachi Ltd 制御装置の制御方法
JPH04273516A (ja) * 1991-02-28 1992-09-29 Toshiba Corp 磁気ディスク装置
JPH04284552A (ja) * 1991-03-14 1992-10-09 Fujitsu Ltd キャッシュメモリ搭載装置のデータリカバリ方式
JPH06222988A (ja) * 1992-12-17 1994-08-12 Internatl Business Mach Corp <Ibm> 記憶装置制御装置およびデータ保存方法
JPH07141117A (ja) * 1993-11-16 1995-06-02 Fujitsu Ltd ディスク制御装置の制御方法
JPH08221215A (ja) * 1995-02-16 1996-08-30 Fujitsu Ltd 外部記憶制御装置
JPH08221210A (ja) * 1995-02-16 1996-08-30 Fujitsu Ltd ディスク制御装置
JPH10222424A (ja) * 1997-02-06 1998-08-21 Fujitsu Ltd データキャッシュ制御方法
JPH10254643A (ja) * 1997-03-14 1998-09-25 Hitachi Ltd 記憶装置システム
JPH11288387A (ja) * 1998-12-11 1999-10-19 Fujitsu Ltd ディスクキャッシュ装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7032068B2 (en) 2002-02-04 2006-04-18 Nec Corporation Disk cache management method of disk array device
JP2006227688A (ja) * 2005-02-15 2006-08-31 Hitachi Ltd ストレージシステム
US8612716B2 (en) 2005-02-15 2013-12-17 Hitachi, Ltd. Storage system having partition size set in accordance with drive type
US8832380B2 (en) 2005-02-15 2014-09-09 Hitachi, Ltd. Storage system having cache partition size set based on drive type
JP2013222434A (ja) * 2012-04-19 2013-10-28 Nec Corp キャッシュ制御装置、キャッシュ制御方法、及びそのプログラム
US9268700B2 (en) 2012-04-19 2016-02-23 Nec Corporation Cache control device, cache control method, and program thereof

Also Published As

Publication number Publication date
US20040210717A1 (en) 2004-10-21
US20030084245A1 (en) 2003-05-01
US7111134B2 (en) 2006-09-19
US6799244B2 (en) 2004-09-28

Similar Documents

Publication Publication Date Title
JP2001166993A (ja) 記憶制御装置およびキャッシュメモリの制御方法
US20200034304A1 (en) Techniques to perform power fail-safe caching without atomic metadata
US20110010499A1 (en) Storage system, method of controlling storage system, and method of controlling control apparatus
JP2010211734A (ja) 不揮発性メモリを用いた記憶装置
JP2005301419A (ja) ディスクアレイ装置およびそのデータ処理方法
KR100388338B1 (ko) 캐시 메모리의 제어 방법, 컴퓨터 시스템, 하드 디스크드라이브 장치 및 하드 디스크 제어 장치
US20100115310A1 (en) Disk array apparatus
JP2010152747A (ja) ストレージシステム、ストレージのキャッシュ制御方法、及びキャッシュ制御プログラム
JP7318367B2 (ja) ストレージ制御装置及びストレージ制御プログラム
JP2006099802A (ja) 記憶制御装置およびキャッシュメモリの制御方法
JP6652647B2 (ja) ストレージシステム
JP5977430B2 (ja) ストレージシステム、ストレージシステムの制御方法及びストレージコントローラ
JP2012128645A (ja) メモリシステム
JP2002099390A (ja) ディスク制御装置
JP2004213470A (ja) ディスクアレイ装置及びディスクアレイ装置におけるデータ書き込み方法
JPH08115257A (ja) 磁気ディスク制御装置
JP3256329B2 (ja) ディスクアレイ装置及びその制御方法
JP3186725B2 (ja) ディスクアレイ制御装置、ディスクアレイ制御システム、その方法及びプログラムを記憶した記憶媒体
JP2003122644A (ja) 計算機及びその記憶装置
JPH09212424A (ja) ディスクキャッシュ及びディスクキャッシュ方法
TW201418984A (zh) 保護碟資料完整性的方法及實現其之電腦程式產品
JP3335919B2 (ja) ディスクキャッシュ制御装置
JPH07328072A (ja) キャッシュ制御方法および情報処理装置
JP4724253B2 (ja) データ記憶システムおよびキャッシュデータの一貫性保証方法
JPH10340215A (ja) データバックアップ方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050905

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051011

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060314