(57)【特許請求の範囲】
【請求項１】
上位装置との転送経路と、
外部記憶装置との転送経路を独立に持ち、
前記上位装置と前記外部記憶装置の転送はメモリを介して行い、
かつ、前記上位装置と接続するチャネルアダプタと前記メモリのキャッシュ管理を行うキャッシュ管理部とを有する外部記憶制御装置において、
前記チャネルアダプタは、前記上位装置から前記キャッシュ管理部を使用する命令を受け取った時、前記キャッシュ管理部がビジー状態の場合、前記受け取った命令を保留し、前記上位装置との結合状態を切り離すことを特徴とした外部記憶制御装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、上位装置とであるチャネル転送と、外部記憶装置との転送の経路が、時間的に独立に動作する非同期転送を行うディスク制御装置等の外部記憶制御装置に関する。
【０００２】
【従来の技術】
従来の磁気ディスク制御装置では、チャネル転送とディスク転送の経路が時間的に独立に動作する非同期転送を行うため、データ転送は全て制御装置内のメモリを介して行われる。つまり、データのライトは、まず書こうとするトラックのデータを磁気ディスク装置であるデバイスからメモリ上に展開し、書きたい部分をライトし、データのリードは、読もうとするトラックのデータをデバイスからメモリ上に展開し、読みたい部分だけをリードする。
【０００３】
また、キャッシュ管理の手法として、一度メモリ上に展開されたデータはある期間そのまま記憶され、再度、同じデータにリードまたはライトのアクセスがくると、メモリ上のデータを使ってそのままリードまたはライトをする。
【０００４】
メモリにデータが展開されているかどうかは、キャッシュを管理するモジュール（ＣＦＥ）が常に情報を持っている。
上位装置からリードまたはライトのＩ／Ｏ（命令）がくると、チャネルアダプタ（ＣＡ）は、キャッシュ管理モジュールＣＦＥに、これからアクセスするトラックがメモリ上に展開されているかどうか問い合わせる。キャッシュ管理モジュールＣＦＥは、自分の持っているキャッシュ情報を検索しそのトラックがあるかどうか調べ、チャネルアダプタＣＡに報告する。報告を受けたチャネルアダプタＣＡは、メモリ上にデータがあればメモリ上のデータをリードまたはライトし、メモリ上にデータがない場合にはデバイスからメモリにデータが展開されるのを待ち、リードまたはライトをする。
【０００５】
このため従来の装置では、キャッシュ管理モジュールＣＦＥはつねにチャネルアダプタＣＡに対する短時間の応答を保証するために、一度に行う処理を制限して設計を進めて来た。
【０００６】
また、ライト動作の場合、メモリに書かれたデータが実デバイスに書かれるまでにはある時間差があるため、その間、データを保証しなければならない。
そこで、メモリ上にデータを書くことで実デバイスにデータを書いたのと同等の信頼性を得るために、以下のようなことをしている。
【０００７】
図３は、従来例の説明図であり、通常のライト動作を示す。図３においては、上位装置１とディスク制御装置２とデバイスであるディスク装置３が設けてあり、ディスク制御装置２には、大容量のバッテリバックアップのないメモリ２３（ＳＳ：Ｓｈａｒｅｄ  Ｓｔｏｒａｇｅ）と小容量であるがバッテリバックアップされた不揮発性のメモリ２４（ＮＶＳ：Ｎｏｎｖｏｌａｔｉｌｅ  Ｓｔｏｒａｇｅ）が設けてある。なお、図３の▲１▼〜▲３▼はライト動作を示す。
【０００８】
まず、データを書く前にデバイス３から１トラックもしくは２トラック分のデータが制御装置内のメモリ２３に展開される▲１▼。そして、実際のライト動作では、メモリ２３（ＳＳ）上のデータを書き換え、さらに、メモリ２４（ＮＶＳ）にもデータを書く▲２▼。その後、ディスク装置３へのデータの書き込みはメモリ２４から行われる▲３▼。
【０００９】
しかし、ライト動作が連続した場合などでいつまでも、メモリ２４からディスク装置３に書き戻しされずにいると、メモリ２４（ＮＶＳ）上にデータがたまり、最終的には、メモリ２４がいっぱいになってしまう。
【００１０】
これが、「Ｉｎｓｕｆｆｉｃｉｅｎｔ  ＮＶＳ」の状態で、これ以降のライト動作では、メモリ２４を使わずメモリ２３上にデータを書くライトスルー「Ｗｒｉｔｅ  Ｔｈｒｏｕｇｈ」動作をすることになる。
【００１１】
【発明が解決しようとする課題】
上記従来のものにおいては次のような課題があった。
高機能化したディスク制御装置では、活性保守作業のためや、キャッシュ管理モジュールＣＦＥ内部テーブルの再構築などのため、キャッシュ管理モジュールＣＦＥが長時間ビジー（ＢＵＳＹ）となる処理は避けられなくなる。このため、キャッシュ管理モジュールＣＦＥからチャネルアダプタＣＡへの応答が長時間待たされる場合が発生していた。
【００１２】
また、メモリ２４がいっぱいになってライトスルー動作を行うと、信頼性向上のためメモリ２３とディスク装置３とにすぐにデータを書く２度の書き込み動作が必要となり、制御が複雑になり、システムスループットが悪化するという問題があった。
【００１３】
本発明は、上記従来の課題を解決し、キャッシュ管理モジュールＣＦＥがビジー状態にあったらチャネルアダプタＣＡは速やかに今の動作を保留し、上位装置から別のＩ／ＯをチャネルアダプタＣＡに出すことができるようにすることを目的とする。
【００１４】
【課題を解決するための手段】
図１は本発明の原理説明図であり、図１中、１は上位装置、２ａは外部記憶制御装置、３ａは外部記憶装置、２１はチャネルアダプタ、２２はデバイスアダプタ、２３はメモリ、２４は不揮発性のメモリ、２５ａはキャッシュ管理部、２６ａは資源管理部を示す。
【００１５】
本発明は上記の課題を解決するため、次のように構成した。
上位装置１との転送経路と、外部記憶装置３ａとの転送経路を独立に持ち、前記上位装置１と前記外部記憶装置３ａの転送はメモリ２３、２４を介して行い、かつ、前記上位装置１と接続するチャネルアダプタ２１と前記メモリ２３のキャッシュ管理を行うキャッシュ管理部２５ａとを有する外部記憶制御装置２ａにおいて、前記チャネルアダプタ２１は、前記上位装置１から前記キャッシュ管理部２５ａを使用する命令を受け取った時、前記キャッシュ管理部２５ａがビジー状態の場合、前記受け取った命令を保留し、前記上位装置１との結合状態を切り離すようにする。
【００１７】
【作用】
上記構成に基づく本発明の作用を説明する。
外部記憶制御装置２ａのキャッシュ管理部２５ａがビジー状態の場合、キャッシュ管理部２５ａからの応答をひたすら待つのではなく速やかに、今の動作を一時停止し、上位装置１と切り離すようにする。それにより、上位装置１からは別の命令を外部記憶制御装置２ａに出すことが出来る。
【００１９】
【実施例】
以下、本発明の実施例を図面に基づいて説明する。
§１：非同期転送型ディスク制御装置の説明
図２は、本発明の実施例の説明図であり、ディスク制御装置全体を示している。なお図１、図３と同じものは同じ符号で示してある。図２に示すように、非同期転送型のディスク制御装置２は、上位装置１と外部記憶装置であるディスク装置３と接続されている。
【００２０】
ディスク制御装置２には、内部バスで接続されたチャネルアダプタ（ＣＡ）２１、デバイスアダプタ（ＤＡ）２２、メモリ（ＳＳ）２３、不揮発性のメモリ（ＮＶＳ）２４、キャッシュ管理モジュール（ＣＦＥ）２５、資源管理モジュール（ＲＭ）２６が設けてある。
【００２１】
チャネルアダプタ２１は、上位装置１の複数のチャネルと接続されたチャネル経路を持ち、チャネルからデータを受け取り、それをメモリ２３、２４上に書き込んだり、メモリ２３に書かれたデータを上位装置１に転送するものである。
【００２２】
デバイスアダプタ２２は、外部記憶装置であるディスク装置３にメモリ２３、２４のデータを書き込んだり、ディスク装置３から読み出したデータをメモリ２３に書き込み等を行うものである。
【００２３】
メモリ２３は、揮発性メモリであり、大容量であるがバッテリバックアップのないメモリである。
メモリ２４は、不揮発性のメモリであり、例えば小容量であるがバッテリバックアップされたものである。
【００２４】
キャッシュ管理モジュール２５は、メモリ２３にデータが展開されているか  どうかの情報を管理するものである。
資源管理モジュール２６は、ディスク制御装置２全体の資源の管理を行うものである。
【００２５】
ディスク制御装置２では、上位装置１からリードまたはライトの命令（Ｉ／Ｏ）がくると、チャネルアダプタ２１は、キャッシュ管理モジュール２５にアクセスするトラックがメモリ２３上に展開されているかどうか問い合わせる。
【００２６】
キャッシュ管理モジュール２５は、自分の持っているキャッシュ情報を検索し、そのトラックがあるかどうかを調べ、チャネルアダプタ２１に報告する。
報告を受けたチャネルアダプタ２１は、メモリ上にデータがあればメモリ上のデータをリードまたはライトし、メモリ上にデータがない場合にはディスク装置３からメモリにデータが展開されるのを待ち、リードまたはライトする。
【００２７】
§２：キャッシュ管理モジュール（ＣＦＥ）がビジーの場合の説明
キャッシュ管理モジュール２５が、活性保守作業のためや、内部のテーブルの再構築などの別の処理でビジー（使用中）状態になっていた場合のディスク制御装置２の動作を説明する。
【００２８】
▲１▼：チャネルアダプタ２１は、上位装置１のチャネルより、リードまたはライトの命令（Ｉ／Ｏ）を受け付ける。
▲２▼：チャネルアダプタ２１は、受け付けた命令のトラックがメモリ２３上に存在するかキャッシュ管理モジュール２５に問い合わせる。
【００２９】
▲３▼：キャッシュ管理モジュール２５からの応答はビジーであった。
▲４▼：チャネルアダプタ２１は、いまの命令はそのまま保留（例えば資源管理モジュールに保留）にしたまま、命令を出してきたチャネルとは切り離れる。
【００３０】
▲５▼：このため、そのチャネルアダプタ２１とのチャネルパスは空き、複数のチャネルからの命令を受け付ける状態になる。
▲６▼：キャッシュ管理モジュール２５がビジーでなくなると、キャッシュ管理モジュール２５は、資源管理モジュール２６にビジーでなくなったことを伝える。
【００３１】
▲７▼：資源管理モジュール２６は、キャッシュ管理モジュール２５が空いたので先程保留した命令を再び開始する。
このように、キャッシュ管理モジュール２５の応答待ちで処理を遅らせ、１つのチャネルと長時間結合することがなく、すぐに別の命令を受け付けることができる。
【００３９】
【発明の効果】
以上説明したように、本発明によれば次のような効果がある。
▲１▼：キャッシュ管理モジュール２５がビジー状態の場合、キャッシュ管理モジュール２５からの応答をいつまでも待つのではなく速やかに、今の動作を一時停止し、上位装置１と切り離すようにするため、上位装置１からは別の命令をディスク制御装置２に出すことが出来る。従って、ディスク制御装置２は、キャッシュ管理モジュール２５を使用しない別の処理を受け付けることができる。
【図面の簡単な説明】
【図１】本発明の原理説明図である。
【図２】実施例の説明図である。
【図３】従来例の説明図である。
【符号の説明】
１  上位装置
２ａ  外部記憶制御装置
３ａ  外部記憶装置
２１  チャネルアダプタ
２２  デバイスアダプタ
２３  メモリ
２４  不揮発性のメモリ
２５ａ  キャッシュ管理部
２６ａ  資源管理部
【図１】
0003594202.tif 000002
【図２】
0003594202.tif 000003
【図３】
0003594202.tif 000004