米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 株式会社日立製作所

発明の名称 外部記憶制御装置のデータ転送制御方式
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平6−12188
公開日 平成6年(1994)1月21日
出願番号 特願平4−167262
出願日 平成4年(1992)6月25日
代理人 【弁理士】
【氏名又は名称】小川 勝男
発明者 川口 勝洋 / 中村 勝憲
要約 目的


構成
LOCATE RECORD コマンドにより、データ転送量を計算する。履歴情報から上位装置と外部記憶装置のデータ処理時間を予測して、マイクロプロセッサ4はこれらの情報から先読みデータ量を決定する。磁気ディスク制御装置1は、チャネルポート2により、上位装置に接続され、デバイスインタフェースケーブルによりディスクボリューム10に接続されている。磁気ディスク制御装置1は、マイクロプロセッサ4および5、バス線6等より構成される。
特許請求の範囲
【請求項1】複数の外部記憶装置と、これらを接続し制御するデータバファを備えた外部記憶制御装置と上位装置から構成される計算機システムであり、外部記憶装置からと上位装置間に対してデータ転送を行う場合に、上位装置側のデータ処理時間と外部記憶装置側のデータ処理時間を予測して、上記転送データが上記データバファに停留する時間が最小となるように外部記憶装置と外部記憶制御装置間のデータ先読みを行う手段を備えた外部記憶制御装置において、外部記憶制御装置側のデータ先読み量を、位置決め完了後の割り込みを検出後上位装置と再接続するのに要する時間と上位装置側のデータ処理時間と外部記憶装置側のデータ処理時間の差を加味して先読みデータ量を決定し、外部記憶装置から外部記憶装置へのデータ先読みを行うことを特徴とする外部記憶制御装置のデータ転送制御方式。
【請求項2】請求項1記載の外部記憶制御装置において、上位装置と外部記憶装置間でデータ転送を行う場合に、上位装置に転送すべき残データ処理量に応じて、一旦上記上位装置と上記外部記憶制御装置の接続を切離す手段を有し、上記外部記憶制御装置と上記外部記憶装置間のデータ転送は継続してデータを先読みし、必要なデータ量をバファリング後、上記上位装置に対して接続要求を発行して、接続が許可された場合には、再び上記外部記憶制御装置と上記上位装置とのデータ転送を再開することを特徴とする外部記憶制御装置のデータ転送制御方式。
【請求項3】請求項1記載の外部記憶制御装置において、上記外部記憶装置と上記外部記憶制御装置間のデータ転送中に、上記外部記憶制御装置と上記上位装置間の結合が遅れた場合や結合できない場合には、既にバファリング済みのデータを当該外部記憶制御装置内の共用メモリにデータを退避させて、上位装置から要求があった場合には、上記共用メモリ内のデータを使いデータ転送を行うことを特徴とする外部記憶制御装置のデータ転送制御方式。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は、外部記憶制御装置のデータ転送制御方式に係わり、特に外部記憶装置から上位装置へデータ転送を行う場合のデータ先読み量を最適化することで、転送データが外部記憶制御装置内のデータバファに停留する時間を最小することにより上位装置、外部記憶制御装置のスループットを向上させるデータ転送制御方式に関する。
【0002】
【従来の技術】上位装置と外部記憶装置とのデータ転送において、上位装置と外部記憶装置とのデータ転送能力の能力差を吸収するために、外部記憶装置を制御する外部記憶制御装置内にデータバファを設け、当該データバファを介してデータ転送を行うことが一般的に行われている。特に、外部記憶装置側のデータ転送能力が上位装置側のそれに比べて著しく小さい場合には、上位装置とデータ転送を開始する前に予め、外部記憶装置と外部記憶制御装置間でデータ転送を開始してデータバファに転送データを格納しておく、いわゆるデータの先読みが行われる。
【0003】このデータ先読みに関する技術として、例えば特開昭62−92022号公報に記載される技術に、上位装置側のデータ転送レートが外部記憶制御装置側のデータ転送レートよりも大きい場合、データ転送量×データ転送レート比の分だけ先読みを行う手段がある。
【0004】データ転送に要する時間はデータ転送量/データ転送レートで決定されるため、上位装置と外部記憶制御装置のデータ転送時間を最小にするには外部記憶装置のデータ転送レートと上位装置のデータ転送レートの比率に転送すべき総データ量を乗じたデータ量を先読みのデータ量とするが最も合理的である。
【0005】ところが、近年では上位装置と外部記憶制御装置を接続するインタフェースに光ファイバ等が利用される場合があり、従来使用されているメタルケーブルよりも、飛躍的にケーブル長が延長させることが可能になっている。
【0006】このため、従来ではほぼ固定時間と考えられたコマンドチェイン時間や上位装置との再接続時間もインタフェースのケーブル長の影響が無視できなくなっている。
【0007】上位装置からの入出力命令は通常、複数のコマンドがチェインされるため、データ転送時間を計算する場合もコマンドチェイン時間を考慮にいれる必要がある。
【0008】すなわち、上記の公報に開示された技術では、かかる状況において先読みするデータ量を最適化することができない場合があり、上位装置との接続時間を最小にするという目的が達成できなくなるという問題があった。
【0009】また、データ処理量が多く、先読みできるデータ量が制御装置内のデータバファの容量に制限される場合に関しても上記の技術では対処できないという問題がある。
【0010】
【発明が解決しようとする課題】本発明では、上記の問題に鑑み、上位装置側のデータ処理時間にコマンドチェイン時間と再接続時間の要素を加味して、外部記憶装置側のデータ処理時間と比較することで、先読みするデータ量を決定することにより、前記の状況下においても、当初の目的を達成することができる手段を提供することにある。
【0011】
【課題を解決するための手段】本発明の目的は、データ転送開始以前に、上位装置側のデータ処理時間と外部記憶装置側のデータ転送時間を比較して、データ先読み量を決定する手段と、データ転送量から、先読み量の不足を予測する手段を備えることにより達成される。前記目的は、データ転送開始以前のコマンドにおいてコマンドチェイン時間を計測する手段、上位装置および外部記憶装置のデータ転送レートをプリセット情報として与える手段、上位装置に接続要求を発行してから応答があるまでの時間を計測する手段と、これらの情報を組合せデータ先読み量決定する手段によって実現される。
【0012】
【作用】データ入出力に使用されるコマンドチェインは、データ転送を開始するコマンド以前に少なくとも、特定かつ少なくとも2個のコマンドを含み、コマンドチェイン時間の計測と、データ転送量を判断できるための情報が与えられることが必要である。
【0013】例えば、磁気ディスク制御装置の場合には、DEFINE EXTENT コマンドとLOCATERECORD コマンドが、データ転送開始前に発行されるためコマンドチェイン時間の計測可能であり、LOCATE RECORD コマンドにより、処理レコード数とデータ長が与えられるため、データ転送量を予測することが可能である。
【0014】コマンドチェイン時間は、ほぼ一定間隔でコマンドの種類には依存しない。また、上位装置側のデータ転送レートも、インストール時に外部記憶制御装置の構成情報として設定されることが多い。外部記憶装置の転送レートや、データバファ容量などもプリセット情報として与えることが可能である。
【0015】上位装置に対する再接続に要する時間は、上位装置側の負荷状況に応じて変動する可能性もあるが、過去の履歴情報を持つことで、およその時間を予測することが可能である。
【0016】上記の情報を得ることができれば、正確なデータ処理時間を求めることが可能になるため、上位装置側、外部記憶装置側のデータ転送能力に応じて先読みデータ量を算出することができる。
【0017】
【実施例】本発明の実施例を磁気ディスクサブシステムを用いて説明する。
【0018】図1は、本発明の一実施例である磁気ディスクサブシステムを用いて構築される計算機システムの一例を示すブロックである。図1において、磁気ディスク制御装置1はチャネルポート2を通じて上位装置に接続され、起動検出回路3により、どのチャネルポートから起動がきたかを知ることができる。上位装置側のデータ転送の制御を主に司るマイクロプロセッサ4と下位装置側のデータ転送の制御を主に司るマイクロプロセッサ5はバス線6により接続されており、ディスクボリューム10と上位装置とのデータ転送を行うときにはマイクロプロセッサ4はマイクロプロセッサ5を選択する。バファ7はマイクロプロセッサ5がディスクボリューム10にリードライトするデータを格納するためのデータバファである。
【0019】以下、本発明の効果を図2、図3及び図4を用いて説明する。
【0020】図4は上位装置側がディスクボリューム10に対してリード動作を指示する一連のコマンド群の一例を示している。DEFINE EXTENTコマンド41は、ディスクボリューム10に対するシーク動作とライト動作の許容範囲を指定するためのコマンドである。LOCATE RECORDコマンド42は処理すべき位置付け情報とレコード数、後続のオペレーション(リードライトの種別等)を指定するためのコマンドである。このLOCATE RECORDコマンド42においてディスクボリューム10に対してシーク、セットセクタの機械的動作を伴う位置付け動作の命令が発行されるため、このコマンドで上位装置を一旦解放する。位置付けが完了した後、上位装置に対し割り込み要求を発行して再接続を行いREADDATAコマンド43がチェインされる。このコマンド数は予めLOCATE RECORD42で指定された数のコマンドだけチェインされる。したがって磁気ディスク制御装置1は何レコード分のデータを処理するかは上位装置とのデータ転送開始前に知ることが可能である。
【0021】図3の構成情報30は、上位装置のデータ転送レート情報31、ディスクボリューム10のデータ転送レート情報32および上位装置のコマンドチェイン時間(コマンドを発行する時間間隔)情報33により構成される。コマンドチェイン時間33はコマンドとコマンドの発行間隔をマイクロプロセッサ4のマイクロプログラムが DEFINE EXTENT コマンド 41と LOCATE RECORD コマンド42の間のコマンドチェイン時間を記録した情報である。また、再接続時間34は、ディスクボリューム10からのセクタ割り込みをマイクロプロセッサ5が検出してから上位装置に対して接続要求を発行して許可されるまでの時間を測定した記録であり、過去のN回分の履歴情報から構成されている。
【0022】本発明においては、先読みデータ量を最適化させるための手段を説明するため、先読みデータ量を決定するためのもとになる情報であるコマンドチェイン時間33や再接続時間34を測定する手段にそのものに関しては言及しない。
【0023】これらの情報は公知の技術により測定が可能である。
【0024】図2において、LOCATE RECORD42を受領した時に、ディスクボリューム10からデータをリードすることを検知するとそのパラメータからデータ転送処理量を計算する(ステップ101)。次に上位装置側の処理時間とディスクボリューム10側の処理時間を計算する(ステップ102)。処理時間の予測は構成情報30を用いて行われる。その結果を比較して、上位装置側の処理時間とディスクボリューム10側の処理時間の比率rがX以上(X>1)であるかを判断する(ステップ103)。X以下であれば、処理時間に大差ないと判断してステップ107に進む。X以上である場合にはステップ104に進み先読みデータ量を決定する。ステップ104では、先読みしてから上位装置に追い付かれるまでのデータ量を予測する。処理時間の比率がr、先読みするデータ量をS0とすると上位装置に追い付かれるまでに処理可能なデータ処理量Sは等比級数の和で以下のように表現することができる。
【0025】
【数1】
S=S0・(1−r*(i+1))/(1−r)
ここで、r*(i+1)はrの(i+1)乗である。iは追い付かれるまでに処理したレコード数である。(i≦log(1/S0)/logrを満足する最大整数)すなわち、i番目のレコードを上位装置に転送したあとに、上位装置と切り離して先読み処理を行わせるための判断に用いられる。
【0026】ステップ105では、ステップ101で計算したデータ量が何回の先読みを必要かを計算するためのステップである。ステップ106でマイクロプロセッサ5に先読みさせる情報を作成する。そして、ステップ107でシーク、セットセクタ命令を発行してマイクロプロセッサ4は、位置決め、先読みが終了の割り込みがあるまで他のサービスを行う。通常はセットセクタが完了するとセクタレディという割り込み信号がディスクボリューム10から上がるのでマイクロプロセッサ5はこれを契機にマイクロプロセッサ4及び上位装置との再結合を行っている。
【0027】ステップ108で、マイクロプロセッサ5がセクタレディを検出後先読み処理を開始する。ステップ104で計算したデータ量を先読みしたところでマイクロプロセッサ5はマイクロプロセッサ4に対して接続要求を発行する。この接続要求を行うタイミングはバファ7の容量を越えないように再接続時間34を考慮していつ行うかを決定する(ステップ109)。マイクロプロセッサ4はマイクロプロセッサ5からの接続要求を検出すると上位装置に対して再接続要求を発行する(ステップ110)。再接続要求が受領され、上位装置からリードコマンドが発行されるとマイクロプロセッサ4はバファ7から先読みしたデータを上位装置に転送する(ステップ111)。ステップ112では、上位装置側とディスクボリューム10の処理状態を監視して、残転送量のデータ転送方式を上位装置と結合したままで行うか、上位装置を切り離し再度先読みを実行するかを判断する。再度先読みを行う場合にはステップ113で上位装置に対して切り離し要求を発行する。上位装置を接続したまま行う場合にはステップ114でそのままデータ転送終了を待つ。以上のような制御を行えば下位装置のデータ転送能力に依存しないで上位装置側のデータ転送を行うことが可能となり、上位装置と磁気ディスク制御装置の接続することができる。
【0028】本実施例ではマイクロプロセッサ5が独立に先読みを行い、マイクロプロセッサ4および上位装置と再結合するという方式について述べたが、マイクロプロセッサ4と結合した後に先読みを開始しても良い。また、規定時間内にマイクロプロセッサ4や上位装置から応答が無かった場合、キャッシュメモリ8が使用可能状態であれば、キャッシュメモリに先読みしたデータをロードすることができるので、先読みしたデータが無駄にならない。
【0029】
【発明の効果】本発明によれば、上位装置からの入出力要求があった場合に、外部記憶装置と外部記憶制御装置間で行う先読みするデータ量を最適化できるので、転送データが制御装置内のデータバファに停留する時間を最小になり、上位装置と制御装置のスループットが向上する。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013