(57)【要約】【課題】ＡＶサーバーのように複数台のＨＤＤを用いてデータを蓄積する場合において、複数のコマンドが同時期に発行された場合の処理が迅速にできるようにする。【解決手段】複数台のハードディスクドライブを用いてデータを蓄積するデータ蓄積装置への書込み又は読み出しの制御を行う場合に、データの複数台のハードディスクドライブへの書込み及び／又は読出しを指示するコマンドとして、少なくとも第１のコマンドと第２のコマンドを連続して受信した場合に、複数台のハードディスクドライブに対して、第１のコマンドに対応した指示と第２のコマンドに対応した指示を行うようにし、それぞれのハードディスクドライブで、第１のコマンドに対応した指示が完了すると、それぞれのハードディスクドライブ毎に設定した個別のタイミングで、第２のコマンドに対応した指示を行うようにした。【選択図】図６
2007200433.tif 000002
【特許請求の範囲】
【請求項１】
複数台のハードディスクドライブを用いてデータを蓄積するデータ蓄積装置において、
データの前記複数台のハードディスクドライブへの書込み及び／又は読出しを指示するコマンドを受信するコマンド受信部と、
前記コマンド受信部で少なくとも第１のコマンドと第２のコマンドを連続して受信した場合に、前記複数台のハードディスクドライブを構成するそれぞれのハードディスクドライブで、前記第１のコマンドに対応した指示が完了すると、それぞれのハードディスクドライブごとに設定した個別のタイミングで、前記第２のコマンドに対応した指示を行う制御部とを備えたことを特徴とする
データ蓄積装置。
【請求項２】
請求項１に記載のデータ蓄積装置において、
前記複数台のハードディスクドライブ毎に、前記各コマンドに対応した指示を蓄積する保持部を設けて、
前記各保持部に対応したハードディスクドライブで、別の指示が実行中の場合に入力した指示を前記保持部に蓄積させ、実行中の指示が終了すると、前記保持部に蓄積された指示をハードディスクドライブに転送して実行させることを特徴とする
データ蓄積装置。
【請求項３】
請求項１に記載のデータ蓄積装置において、
前記それぞれのコマンドごとにタイムアウト時間を設定し、それぞれのコマンドごとの処理が規定されたタイムアウト時間内に処理できない場合に、対応したタイムアウト処理を行うことを特徴とする
データ蓄積装置。
【請求項４】
複数台のハードディスクドライブを用いてデータを蓄積するデータ蓄積装置への書込み又は読み出しの制御を行うデータ蓄積装置の制御方法において、
データの複数台のハードディスクドライブへの書込み及び／又は読出しを指示するコマンドとして、少なくとも第１のコマンドと第２のコマンドを連続して受信した場合に、複数台のハードディスクドライブに対して、第１のコマンドに対応した指示と第２のコマンドに対応した指示を行うようにし、
それぞれのハードディスクドライブで、前記第１のコマンドに対応した指示が完了すると、それぞれのハードディスクドライブ毎に設定した個別のタイミングで、前記第２のコマンドに対応した指示を行うことを特徴とする
データ蓄積装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＨＤＤ（ハードディスクドライブ）を用いてストリームデータを蓄積する装置及びその装置に適用される制御方法に関する。
【背景技術】
【０００２】
近年、放送局やポストプロダクションでは、ストリームデータであるビデオデータやオーディオデータなどのＡＶ（オーディオ・ビデオ）データを蓄積するストレージとして、複数台のＨＤＤを搭載して大容量を実現したＨＤＤアレイユニットが使用されている。
【０００３】
例えば、放送局で編集システムや送出システムとして用いられるＡＶサーバーでも、こうしたＨＤＤアレイユニットが使用されている。ＡＶサーバーは、ＡＶデータ入出力用の複数の入出力ポートを有し、これらの入出力ポートとＨＤＤアレイユニットとの間で高速にＡＶデータを転送する。
【０００４】
このＡＶサーバーは、２４時間３６５日連続稼動することを前提とし、且つ、番組のオンエア時に映像や音声が途切れたり遅れたりすることは許されないことから、高い動作信頼性及びリアルタイム性が要求される。
【０００５】
ところが、ＨＤＤは、動作信頼性やリアルタイム性（レスポンス性能）はあまり高くないデバイスである。そこで、ＡＶサーバーでは、ＨＤＤアレイユニットを、冗長性を持たせたＲＡＩＤ（Redundant Arrays of Inexpensive Disks）構成とした上で、さらに様々な障害に対する対応機能がサポートされている。そうした対応機能としては、例えば、パリティによるデータの補正、リビルド（Rebuild）によるデータの再構築、データのリアサイン処理（或るＨＤＤに応答遅延が発生しても他のＨＤＤでそのＨＤＤのデータを補正して出力すること）、スペアＨＤＤの搭載によるＭＴＴＲ（Mean Time To Repair）の短縮等が挙げられる。
【０００６】
特許文献１には、ＲＡＩＤ構成とされたＡＶデータを格納するデータ記録再生装置の一例についての記載がある。
【特許文献１】特開２００５−１８２６５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、ストリームデータであるＡＶデータをＡＶサーバーから読み出して再生させる際には、ＡＶデータを途切れなく再生できるようにするために、ＡＶデータの実時間内に読出し処理が間に合うようにする必要があり、外部からコマンドを受信した場合に、そのコマンドに対する処理時間が短い程、好ましい。しかしながら、ＨＤＤが用意されたストレージ部には、同時期に複数のコマンドが連続して来る場合があり、そのような場合には、コマンドの処理に時間がかかる問題があった。
【０００８】
図７は、複数のコマンドが同時に発行された場合の、ＲＡＩＤ構成のＨＤＤアレイユニットでの従来の処理の一例を示した図である。この例では、１４台のＨＤＤで構成されたＨＤＤアレイユニットの例としてあり、第１コマンドと第２コマンドとが同時に発行されたとする。第１コマンドについては、例えばあるデータの書込みを指示するコマンドであり、第２コマンドについては、例えばあるデータの読み出しを指示するコマンドであるとする。このとき、ＨＤＤアレイユニットを制御する制御部では、最初に第１コマンドを各ＨＤＤに対して送り、それぞれのコマンドに対する処理（書込み処理）Ｃａ１〜Ｃａ１４を実行させる。各ＨＤＤは、データ書込みのためのシーク時間などの処理時間が、それぞれのドライブの状態により異なるため、異なった時間となり、最も処理時間がかかった処理（図７の例では処理Ｃａ２）が完了した段階で、次のコマンドである第２コマンドを各ＨＤＤに対して送る。この第２コマンドが各ＨＤＤに対して送られることで、それぞれのコマンドに対する処理（読み出し処理）Ｃｂ１〜Ｃｂ１４を実行させる。
【０００９】
この第２のコマンドの発行時にも、データ読み出しのためのシーク時間などの処理時間が、それぞれのドライブの状態により異なるため、異なった時間となり、最も処理時間がかかった処理（図７の例では処理Ｃｂ１）が完了した段階で、第２コマンド処理終了となる。
【００１０】
このように複数のコマンドが同時期に重なると、各コマンドが順に処理されることになり、コマンドの処理が完了するのに時間がかかる問題があった。特に、ＡＶデータを記録するＡＶサーバーの場合には、データ再生時に、ＡＶデータの実時間内に読出し処理が完了できるように非常に高い時間制御を行う必要があり、コマンドに対する処理の遅れは極力防ぐ必要がある。
【００１１】
本発明は、上述の点に鑑み、例えばＡＶサーバーのように複数台のＨＤＤを用いてデータを蓄積する場合において、複数のコマンドが同時期に発行された場合の処理が迅速にできるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、複数台のハードディスクドライブを用いてデータを蓄積するデータ蓄積装置への書込み又は読み出しの制御を行う場合に、データの複数台のハードディスクドライブへの書込み及び／又は読出しを指示するコマンドとして、少なくとも第１のコマンドと第２のコマンドを連続して受信した場合に、複数台のハードディスクドライブを構成するそれぞれのハードディスクドライブで、第１のコマンドに対応した指示が完了すると、それぞれのハードディスクドライブ毎に設定した個別のタイミングで、第２のコマンドに対応した指示を行うようにしたものである。
【００１３】
本発明によれば、複数台のハードディスクドライブ内の１台ごとのハードディスクドライブで、第１のコマンドに対応した指示が完了してから個別のタイミングで、第２のコマンドに対応した指示を行うようにしたことで、それぞれのハードディスクドライブごとに待ち時間なく最短の時間で処理されることになり、総合的に処理時間が短縮する。
【発明の効果】
【００１４】
本発明によれば、複数のコマンドが同時期に発生しても、それぞれのハードディスクドライブごとに待ち時間なく最短の時間で処理されることになり、総合的に処理時間が短縮する。従って、例えばＡＶデータのようなストリームデータを記録し再生するような場合における処理の遅延を効果的に防止でき、ＡＶサーバーとして読み出されるデータの遅延を防止した好適な制御ができる。
【発明を実施するための最良の形態】
【００１５】
以下、放送局で用いられるＡＶサーバーのストレージに、本発明の一実施の形態を適用した例について、図１〜図６を用いて具体的に説明する。
図１は、本実施の形態を適用したＡＶサーバーのストレージ部の構成を示すブロック図である。このストレージ部１には、ＦＣ（ファイバチャネル：Fibre Channel）コントローラ２と、記録再生処理系３と、キャッシュメモリ４と、ＨＤＤコントローラ５と、ＣＰＵ６と、ＤＲＡＭ７と、不揮発性ＳＲＡＭ８とが設けられている。記録再生処理系３とＨＤＤコントローラ５とは、ＰＣＩ−Ｘ規格のバス９によって接続されている。
【００１６】
また、このストレージ部１には、１５台のＨＤＤ１０（ＨＤＤ１０（１）〜１０（１５））が搭載される。これらのＨＤＤ１０のうち、１０台のＨＤＤ１０（１）〜１０（１０）はＡＶデータ用のＨＤＤであり、４台のＨＤＤ１０（１１）〜１０（１４）はエラー訂正用のＨＤＤであり、残りの１台のＨＤＤ１０（１５）はスペア用のＨＤＤである。
【００１７】
これらのＨＤＤ１０としては、ＨＤＤの製造メーカーが標準品（コンピュータの外部記憶装置等の用途のＨＤＤ）として製造・販売しているものが使用される。
【００１８】
ＦＣコントローラ２は、外部との間で、ファイバチャンネル経由でＡＶデータを授受するためのインターフェースである。記録再生処理系３は、プログラム可能なＬＳＩであるＦＰＧＡで構成されており、ＨＤＤ１０に記録させるＡＶデータや、ＨＤＤ１０から再生されたＡＶデータを処理する。
【００１９】
キャッシュメモリ４は、ＡＶデータをバッファリングするためのＤＩＭＭ（Dual Inline Memory Module）規格のＳＤＲＡＭである。ＨＤＤコントローラ５は、例えばＨＤＤ１０としてＳＡＴＡ（シリアルＡＴＡ）に対応したＨＤＤを使用する場合には、ＳＡＴＡコントローラである。
【００２０】
ＣＰＵ６は、ストレージ部１全体を制御する。ＤＲＡＭ７は、ＣＰＵ６のメインメモリである。コマンドを一時的に格納するコマンドキュー（後述）についても、このＤＲＡＭ７が使用される。不揮発性ＳＲＡＭ８は、ＣＰＵ６がログデータを保存するために用いられるほか、ＨＤＤ情報テーブルなどを格納するために用いられる。
【００２１】
ストレージ部１へのＡＶデータの記録（書込み）時には、ＦＣコントローラ２で受信したＡＶデータが、記録再生処理系３に送られる。記録再生処理系３は、このＡＶデータからエラー訂正符号（リードソロモン符号）を生成する。そして、この符号を付加したＡＶデータを、ＡＶデータ用の各ＨＤＤ１０（１）〜１０（１０）に記録させるための１０系統のデータ（ＡＶデータの部分）と、エラー訂正用のＨＤＤ１０（１１）〜１０（１４）に記録させるための４系統のデータ（リードソロモン符号の部分）とにストライピングする。そして、その合計１４系統のデータを、キャッシュメモリ４でバッファリングしながら、ＨＤＤコントローラ５を介してＨＤＤ１０（１）〜１０（１４）に送って、ＨＤＤ１０（１）〜１０（１４）に分散してデータを記録させるＲＡＩＤ構成としてある。ＨＤＤコントローラ５には、１台のＨＤＤ１０ごとに、それぞれのＨＤＤへの指示を格納するＨＤＤコマンドキュー（後述）についても用意してある。
【００２２】
ストレージ部１からのＡＶデータの再生（読出し）時には、各ＨＤＤ１０（１）〜１０（１４）から読み出されたＡＶデータ及びリードソロモン符号が、ＨＤＤコントローラ５を介して記録再生処理系３に送られる。記録再生処理系３は、これらのデータ及び符号を、キャッシュメモリ４でバッファリングしながら、デストライピングする（ストライピングする前の状態に戻す）を行う。そして、リードソロモン符号を用いてＡＶデータのエラー訂正を行い、エラー訂正したＡＶデータをＦＣコントローラ２から外部に送信する。
【００２３】
また、記録再生処理系３は、データの再生時にＨＤＤ１０（１）〜１０（１４）のうちのいずれかのＨＤＤに故障または応答遅延が発生すると、リビルドを開始する。すなわち、ＨＤＤ１０（１）〜１０（１４）のうちの故障したＨＤＤ内のデータを、残りのＨＤＤ１０（１）〜１０（１４）から読み出したデータからリードソロモン符号を用いて復元し、その復元したデータをスペア用のＨＤＤ１０（１５）に記録する。
【００２４】
図２は、図１のストレージ部１を用いて放送局内に設置されるＡＶサーバーのシステム構成を示す図である。このＡＶサーバーでは、複数のストレージ部１と、複数の入出力プロセッサ部１１と、中継用端末１２とが、ＦＣ（ファイバチャネル：Fibre Channel）スイッチ１３によって接続される。また、各入出力プロセッサ部１１と、中継用端末１２と、管理用端末１４と、メンテナンス用端末１５とが、イーサネット１６（イーサネット：Ethernetは登録商標）によって接続されている。
【００２５】
入出力プロセッサ部１１は、複数（例えば６つ）の入出力ポートを有しており、ＳＤＩ（Serial Digital Interface）等の同期系の伝送フォーマットや、あるいは非同期系の伝送フォーマットで、外部との間でＡＶデータを入出力する。
【００２６】
入出力プロセッサ部１１は、入出力ポートに入力したＡＶデータを、所定の符号化方式でエンコード（圧縮）して、ＦＣスイッチ１３経由でストレージ部１に転送する。また、入出力プロセッサ部１１は、ストレージ部１からＦＣスイッチ１３経由で転送されたデータを、デコード（伸張）して入出力ポートから出力する。
【００２７】
なお、一般的なＡＶサーバーの入出力プロセッサ部の構成は周知であり、本例を適用するＡＶサーバーの入出力プロセッサ部の構成はそうした一般的なものであってよいので、その詳細説明は省略する。
【００２８】
中継用端末１２は、ネットワーク１７によって複数台の編集用端末１８と接続されており、ストレージ部１と編集用端末１８との間のＡＶデータの授受と、入出力プロセッサ部１１や管理用端末１４と編集用端末１８との間の情報の授受とを中継する。
【００２９】
管理用端末１４は、ストレージ部１内におけるＡＶデータの記憶アドレスやそのＡＶデータのファイル名・属性等の情報を保持し、イーサネット１６経由での入出力プロセッサ部１１や中継用端末１２からの要求に応じて、これらの情報を入出力プロセッサ部１１や中継用端末１２に送る。
【００３０】
メンテナンス用端末１５は、メンテナンス要員が操作する端末であり、各ストレージ部１や各入出力プロセッサ部１１が生成・保存したログデータを表示させてＡＶサーバーの状態を分析したり、ストレージ部１内のＨＤＤの故障時に表示される警告に基づいてＨＤＤの交換等を決定する。また、メンテナンス用端末１５は、後述するようなストレージ部１内のＨＤＤ情報テーブルを更新するためにも使用される。
【００３１】
次に、本例のストレージ部１におけるコマンドの伝送状態から見た構成例を、図３を参照して説明する。ＣＰＵ６には、外部（入出力プロセッサなど）からデータの書込みや読み出しを指示するコマンドが供給されると、ＣＰＵ６内のコマンドキュー６ａに格納され、その格納されたコマンドに対応した指示が、各ＨＤＤ１０（１）〜１０（１４）に対して行われる。コマンドキュー６ａには、複数のコマンドを格納することができる。このコマンドの格納状態に応じて、ＣＰＵ６内に用意された２つのタイマ（第１タイマ６ｂ及び第２タイマ６ｃ）の動作が制御される。２つのタイマを使用した処理については、フローチャートを用いた後述する動作説明で述べる。
【００３２】
ＣＰＵ６内のコマンドキュー６ａに外部から転送されたコマンドが格納されると、ＨＤＤコントローラ５を介して各ＨＤＤ１０（１）〜１０（１４）に対して、コマンドに対応した動作指示が個別に行われる。このとき、ＨＤＤコントローラ５には、１台のＨＤＤ１０（１）〜１０（１４）ごとに個別にコマンド（動作指示）を記憶するＨＤＤコマンドキュー５ａ〜５ｎを備え、それぞれのＨＤＤコマンドキュー５ａ〜５ｎが、対応した各ＨＤＤ１０（１）〜１０（１４）の状態に応じてコマンドを格納する。
【００３３】
次に、このようなコマンドの発行に応じた動作例を、図４及び図５のフローチャートを参照して説明する。まず、外部からＣＰＵ６に書込みコマンド又は読み出しコマンドが転送された際の動作例を、図４のフローチャートに示す。ＣＰＵ６は、コマンドの入力待ち状態で（ステップＳ１１）、コマンドが入力したか否か判断し（ステップＳ１２）、コマンドの入力があると、現在各ＨＤＤに対して実行中のコマンドがあるか否か判断する（ステップＳ１３）。実行中のコマンドがない場合には、第１タイマ（図３）を起動させる（ステップＳ１４）。実行中のコマンドがある場合には、第２タイマ（図３）を起動させる（ステップＳ１５）。その後、それぞれのＨＤＤコマンドキュー５ａ〜５ｎに、入力したコマンドに応じた指令のコマンドを発行させ（ステップＳ１６）、ステップＳ１１の入力待ちに戻る。
【００３４】
また、ステップＳ１２でコマンドの入力がないと判断した場合に、第１タイマのカウント時間が決められた時間を越えたか否か判断し（ステップＳ１７）、越えた場合には、最初に入力したコマンド（以下第１コマンドと称する）の処理が終了しているか否か判断する（ステップＳ１８）。ここで、終了している場合にはステップＳ１１の入力待ちに戻る。終了していない場合には、第１コマンドの処理時間がタイムアウトとし、その時点で処理を中断させ、その時点で処理されたデータだけを使用して再生又は記録を行うタイムアウト処理を行い（ステップＳ１９）、ステップＳ１１の入力待ちに戻る。
【００３５】
また、ステップＳ１７の判断で、第１タイマのカウント時間が決められた時間を越えていないと判断した場合には、第２タイマのカウント時間が決められた時間を越えたか否か判断し（ステップＳ２０）、越えた場合には、２番目に入力したコマンド（以下第２コマンドと称する）の処理が終了しているか否か判断する（ステップＳ２１）。ここで、終了している場合にはステップＳ１１の入力待ちに戻る。終了していない場合には、第２コマンドの処理時間がタイムアウトとし、その時点で処理を中断させ、その時点で処理されたデータだけを使用して再生又は記録を行うタイムアウト処理を行い（ステップＳ２２）、ステップＳ１１の入力待ちに戻る。
【００３６】
そして、ステップＳ２０で、第２タイマのカウント時間が決められた時間を越えていないと判断した場合には、全てのＨＤＤでＨＤＤコマンドキューが終了したか否か判断し（ステップＳ２３）、終了していない場合にはステップＳ１１の入力待ちに戻る。終了した場合には、第１コマンドについての処理が、全てのＨＤＤで終了したか否か判断し（ステップＳ２４）、終了した場合には第１コマンドを終了処理し（ステップＳ２５）、ステップＳ１１の入力待ちに戻る。終了していない場合には、第２コマンドについての処理が、全てのＨＤＤで終了したか否か判断し（ステップＳ２６）、終了した場合には第２コマンドを終了処理し（ステップＳ２７）、いずれの場合もステップＳ１１の入力待ちに戻る。
【００３７】
次に、ＨＤＤコントローラ５に用意されたＨＤＤ毎に個別に用意された各ＨＤＤコマンドキュー５ａ〜５ｎでの動作例を、図５のフローチャートを参照して説明する。ＣＰＵ６側からのコマンドの入力待ち状態で（ステップＳ３１）、コマンドが入力したか否か判断し（ステップＳ３２）、コマンドの入力があると、該当するＨＤＤで現在実行中のコマンドがあるか否か判断する（ステップＳ３３）。この判断で、現在実行中のコマンドがない場合には、そのままコマンドをＨＤＤに送り、コマンドに対応した読出し又は書込みの処理を実行させ（ステップＳ３４）、ステップＳ３１の入力待ちに戻る（ステップＳ３６）。また、ステップＳ３３で実行中のコマンドがある場合には、そのコマンドを自己のＨＤＤコマンドキューに蓄積させ（ステップＳ３５）、ステップＳ３１の入力待ちに戻る（ステップＳ３６）。
【００３８】
そして、ステップＳ３２で、コマンド入力がない状態であると判断した場合には、現在のＨＤＤの動作が終了したか否か判断する（ステップＳ３７）。ここで終了してない場合にはステップＳ１１の入力待ちに戻る。ステップＳ３７でＨＤＤの動作が終了したと判断した場合には、現在、ＨＤＤコマンドキューにコマンドが蓄積されているか否か判断する（ステップＳ３８）。ここで、ＨＤＤコマンドキューにコマンドが蓄積されている場合には、その蓄積されたコマンドを、対応したＨＤＤに発行させて（ステップＳ３９）、ステップＳ３１の入力待ちに戻る。ＨＤＤコマンドキューにコマンドが蓄積されていない場合には、そのままステップＳ３１の入力待ちに戻る。
【００３９】
このようにコマンドの処理が行われることで、複数のコマンドが同時期に連続してストレージ部１に入力された場合には、例えば図６に示すように処理される。即ち、第１コマンドと第２コマンドとが同時に発行されて、ストレージ部１に入力したとする。ここでは第１コマンドについては、例えばあるデータの書込みを指示するコマンドであり、第２コマンドについては、例えばあるデータの読み出しを指示するコマンドであるとする。このとき、ストレージ部１内のＣＰＵ６では、ＨＤＤコントローラ５を介して各ＨＤＤ１０（１）〜１０（１４）に対して第１コマンドを送り、それぞれの各ＨＤＤ１０（１）〜１０（１４）で第１コマンドに対する処理（書込み処理）Ｃａ１〜Ｃａ１４を実行させる。続いてＣＰＵ６は、ＨＤＤコントローラ５に第２コマンドについても送る。このとき、第２コマンドについては、各ＨＤＤに対応したＨＤＤコマンドキューに保持され、それぞれのＨＤＤごとに第１コマンドの処理が終了するタイミングまで待機する。そして、第１コマンドの処理が終了すると、それぞれ個別のタイミングで、ＨＤＤコマンドキューに保持された第２コマンドがＨＤＤに送られて、第１コマンドに対する処理Ｃａ１〜Ｃａ１４に続いて、第２コマンドに対する処理Ｃｂ１〜Ｃｂ１４が実行される。
【００４０】
従って、従来例として説明した図７と比較すると判るように、第１コマンドの処理が終了してから第２コマンドの処理が開始されるまでの待ち時間がなく、第１コマンドの処理に時間がかかるＨＤＤと第２コマンドの処理に時間がかかるＨＤＤとが同一でない限りは、２つのコマンドの処理が完了するまでの時間を短縮することができる。このため、特に本例のようなＡＶデータを記録するＡＶサーバーの場合には、記録や再生の処理を、その記録や再生する実時間内に完了させる必要があるが、複数の処理が同時に行われるような場合であっても、実時間内に処理が完了する可能性が高くなり、ＡＶサーバーとしての信頼性が向上する。
【００４１】
また、このように各コマンドの処理を、連続したタイミングで順に行う構成としたが、それぞれのコマンドの最大の処理時間を規定するタイムアウト時間の処理については、それぞれのコマンドごとに個別に判断するようにしたので、適正なタイムアウト処理が可能である。
【００４２】
なお、図６の例では、同時期に入力する２つのコマンドによる処理として、ＨＤＤへの書込み（記録）と、ＨＤＤからの読出し（再生）とを同時に行う例について説明したが、例えば２種類のデータの書込みが同時にある場合や、２種類のデータの読出しが同時にある場合にも適用可能である。
【００４３】
また、図３に示した構成では、ＨＤＤコントローラ５内に、各ＨＤＤに対応して個別に指示の保持手段であるＨＤＤコマンドキュー５ａ〜５ｎを設けて、そのＨＤＤコマンドキューでコマンドを一時蓄積させるようにしたが、ＣＰＵ６などの他の制御部側で各ＨＤＤの動作状態を監視して、その監視状態に応じて、それぞれのＨＤＤごとに個別に設定したタイミングでコマンド（指示）を送るようにしてもよい。
【００４４】
また、ここまでの説明では、２つのコマンドが同時期に発生した場合の処理について説明したが、３つ以上のコマンドが同時期に重なって発行された場合にも、同様に個別のＨＤＤごとに順次処理タイミングを設定するようにして処理時間を短縮してもよい。この場合には、例えば各コマンドキューに蓄積できるコマンド数を対応して増やせば、対処可能である。
【００４５】
また、上述した実施の形態の例では合計１５台のＨＤＤを搭載するストレージ部に適用しているが、これとは異なる台数のＨＤＤを搭載するストレージ部や、ＡＶデータ用，エラー訂正用，スペア用のＨＤＤの台数がそれぞれ１０台，４台，１台以外であるストレージ部にも本発明を適用してよい。
【００４６】
また、以上の例でＡＶサーバー用のストレージに本発明を適用しているが、それ以外のデータを記憶し読み出すＨＤＤを記憶手段として使用した装置にも適用可能である。
【図面の簡単な説明】
【００４７】
【図１】本発明の一実施の形態を適用したＡＶサーバーのストレージ部の構成を示すブロック図である。
【図２】本発明の一実施の形態によるＡＶサーバーのシステム構成を示すシステム図である。
【図３】本発明の一実施の形態によるコマンド伝送状態から見た構成例を示す説明図である。
【図４】本発明の一実施の形態によるコマンドキューの動作例を示すフローチャートである。
【図５】本発明の一実施の形態による各ＨＤＤのコマンドキューの動作例を示すフローチャートである。
【図６】本発明の一実施の形態による複数コマンドの処理例を示すタイムチャートである。
【図７】従来の複数コマンドの処理例を示すタイムチャートである。
【符号の説明】
【００４８】
１  ストレージ部、  ２  ＦＣコントローラ、  ３  記録再生処理系、  ４  キャッシュメモリ、  ５  ＨＤＤコントローラ、  ５ａ〜５ｎ  ＨＤＤコマンドキュー、６  ＣＰＵ、  ６ａ  コマンドキュー、  ７  ＤＲＡＭ、  ８  不揮発性ＳＲＡＭ、  ９  バス、  １０（１）〜１０（１５）  ＨＤＤ、  １１  入出力プロセッサ部、  １５  メンテナンス用端末
【図１】
2007200433.tif 000003
【図２】
2007200433.tif 000004
【図３】
2007200433.tif 000005
【図４】
2007200433.tif 000006
【図５】
2007200433.tif 000007
【図６】
2007200433.tif 000008
【図７】
2007200433.tif 000009