(57)【特許請求の範囲】
【請求項１】
ハードディスクとの間でデータを実際に授受するときの実データ転送時間を、該ハードディスクにおいて連続して区切られたブロック単位で計測する転送時間計測手段と、
前記転送時間計測手段によって計測された実データ転送時間に関する情報を記憶する転送時間情報記憶手段と、
前記転送時間情報記憶手段に記憶された情報に基づいて、あるブロックにデータを記憶するか否かの判断を行い、前記判断が肯定的であれば該データを該ブロックに書き込み、前記判断が否定的であれば該データを該ブロックに書き込まずに該ブロックに連続する次のブロックに対して前記判断を行う、という処理を繰り返すデータ転送制御手段とを具備することを特徴とするハードディスク制御装置。
【請求項２】
前記転送時間情報記憶手段は、前記実データ転送時間に関する情報として、実データ転送時間自体を記憶することを特徴とする請求項１記載のハードディスク制御装置。
【請求項３】
前記転送時間情報記憶手段は、前記実データ転送時間に関する情報として、実データ転送時間が予め設定された基準値より小さいか、大きいかを示す２値化フラグを記憶することを特徴とする請求項１記載のハードディスク制御装置。
【請求項４】
前記データ転送制御手段によってブロック単位でデータを書き込む毎に、前記転送時間計測手段によって計測される現在の実データ転送時間に応じて、前記転送時間情報記憶装置に記憶している前記実データ転送時間に関する情報を更新する更新手段を具備することを特徴とする請求項１ないし３のいずれかに記載のハードディスク制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ハードディスクドライブを用いる機器に適用して好適なハードディスク制御装置に関する。
【０００２】
【従来の技術】
ハードディスクドライブは、近年、大容量化、小型化が進み、大量のデータを取り扱うコンピュータや、デジタル複写機における主な大容量外部記憶装置として用いられている。一般に、ハードディスクドライブは、半導体メモリに比べると、そのメカニズムに起因して、データの読み出し速度／書き込み速度が遅いので、使用目的に応じて、データ転送速度に関する仕様を考慮する必要がある。特に、一定時間内に一定量のデータを出力しなければならない同期システム、例えば、読み取った画像を複数部連続してコピーする複写機や、通信カラオケ等の動画・音楽再生機器においては、システムを効率よく（高速で）動作させるためには、ハードディスクドライブのデータ転送速度が重要な要素となる。
【０００３】
【発明が解決しようとする課題】
ところで、ハードディスクでは、ディスクの回転数、記録密度から理論的な最大データ転送速度が算出できる。また、一般的なデータ転送時間は、シーク時間＋回転待ち時間＋最大転送速度での転送時間から算出できる。しかしながら、実動作においては、上記時間に加えて、エラー処理時間（リトライの時間や欠陥セクタの交代処理の時間）が加わり、理論的な転送時間より長くなる。
【０００４】
このため、上述した複写機のような同期システムの場合には、上記エラー処理時間を見込んでシステムを設計する必要があり、転送速度の速いハードディスクドライブを用いるか、システム全体の速度を下げる必要があった。しかしながら、このようなシステム設計は、コストアップにつながり、性能低下につながるという問題があった。
【０００５】
この発明は上述した事情に鑑みてなされたもので、エラー処理時間を含めたデータ転送時間を自動検出することにより、ハードディスクドライブをシステムに対して最適な条件で使用できるハードディスク制御装置を提供することを目的としている。
【０００６】
上述した問題点を解決するために、請求項１記載の発明では、ハードディスクとの間でデータを実際に授受するときの実データ転送時間を、該ハードディスクにおいて連続して区切られたブロック単位で計測する転送時間計測手段と、前記転送時間計測手段によって計測された実データ転送時間に関する情報を記憶する転送時間情報記憶手段と、前記転送時間情報記憶手段に記憶された情報に基づいて、あるブロックにデータを記憶するか否かの判断を行い、前記判断が肯定的であれば該データを該ブロックに書き込み、前記判断が否定的であれば該データを該ブロックに書き込まずに該ブロックに連続する次のブロックに対して前記判断を行う、という処理を繰り返すデータ転送制御手段とを具備することを特徴とする。
【０００７】
また、請求項２記載の発明では、請求項１記載のハードディスク制御装置において、前記転送時間情報記憶手段は、前記実データ転送時間に関する情報として、実データ転送時間自体を記憶することを特徴とする。
【０００８】
また、請求項３記載の発明では、請求項１記載のハードディスク制御装置において、前記転送時間情報記憶手段は、前記実データ転送時間に関する情報として、実データ転送時間が予め設定された基準値より小さいか、大きいかを示す２値化フラグを記憶することを特徴とする。
【０００９】
また、請求項４記載の発明では、請求項１ないし３のいずれかに記載のハードディスク制御装置において、前記データ転送制御手段によってブロック単位でデータを書き込む毎に、前記転送時間計測手段によって計測される現在の実データ転送時間に応じて、前記転送時間情報記憶装置に記憶している前記実データ転送時間に関する情報を更新する更新手段を具備することを特徴とする。
【００１０】
この発明によれば、転送時間計測手段は、ハードディスクとの間でデータを実際に授受するときの実データ転送時間を所定のブロック単位で計測する。転送時間情報記憶手段は、転送時間計測手段によって計測された実データ転送時間に関する情報を記憶する。データ転送制御手段は、転送時間情報記憶手段に記憶された情報に基づいて、所定のブロックにデータを記憶するか否かを判断し、この判断が肯定的であれば該データを該ブロックに書き込み、この判断が否定的であれば該データを該ブロックに書き込まずに該ブロックに連続する次のブロックに対してこの判断を行う、という処理を繰り返す。したがって、データ転送に先だって、エラー処理時間を含めた実データ転送時間を自動検出することが可能になり、ハードディスクドライブをシステムに対して最適な条件で使用することが可能となる。
【００１１】
【発明の実施の形態】
次に図面を参照してこの発明の実施形態について説明する。なお、以下の説明では、本ハードディスク制御装置を複写機に適用した場合について説明する。
【００１２】
Ａ．第１の実施形態の構成
図１は本発明の第１の実施形態によるハードディスク制御装置の構成を示すブロック図である。図において、１は、ＣＰＵ（中央処理装置）により構成される処理判断装置であり、ハードディスクドライブ５に対するデータ転送を制御する。該処理判断装置１は、データ転送を制御するために、実際のデータ転送に先だって、ハードディスクドライブ１における、エラー処理時間を含めた実データ転送時間を計測する時間計測装置２と、該時間計測装置２によって計測された実データ転送時間を、所定のブロック単位で記憶する転送時間記憶装置３とを備えている。
【００１３】
上記時間計測装置２は、本実施形態では、処理判断装置１によるソフトウエアまたはＣＰＵの内部タイマによって実現されており、上記転送時間記憶装置３は、ＲＡＭ（ランダムアクセスメモリ）等の半導体メモリで構成されている。また、上記所定のブロック単位としては、ハードディスクドライブにおける区切り単位であるセクタを使用しており、例えば２５６セクタ（１セクタ＝２５６バイトまたは５１２バイト）としている。
【００１４】
上記時間計測装置２は、処理判断装置１の制御に従って、実際のシステム動作に先だって、上記所定のブロック単位で、実際にハードディスクドライブ５に対してデータの読み出し／書き込みを行うことにより、各ブロック毎の実データ転送時間を計測する。また、転送時間記憶装置３は、上記時間計測装置２によって計測された実データ転送時間を、図２に示すように、上記所定のブロック単位（２５６セクタ単位）で記憶する。図２において、各升目が２５６セクタのブロックに相当し、各ブロックの上段がブロック番号、下段が実データ転送時間（ｍｓｅｃ）である。
【００１５】
次に、データ転送装置４は、データを実際に処理するシステム（図示略）とハードディスクドライブ５との間で、上述した処理判断装置１による制御に従って、上記所定のブロック単位（例えば２５６セクタ）で転送する。ハードディスクドライブ５は、一般的な装置を用いており、上記データ転送装置４からのコマンドに応じて、データの読み出し／書き込みを行う。
【００１６】
また、該ハードディスクドライブ５は、初期化したハードディスクに欠陥セクタがある場合には、図３または図４に示す方式で連続的にセクタを割り付ける処理を行う。図３に示す方式は、セクタスリップ処理といい、欠陥セクタがあると、該欠陥セクタを飛び越えて、同一トラック内で、それ以降のセクタを順に後方にずらすようになっている。
【００１７】
また、図４に示す方式は、交代シリンダ割り付け処理といい、上記セクタスリップ処理により欠陥シリンダの数がトラック内のスペアセクタ数を越えた場合、越えた分のセクタを、別のシリンダ（交代シリンダ）内のあるセクタに割り付けるようになっている。この場合、セクタは、物理的に連続にならないので、回転待ち時間や、シーク時間が発生し、データ転送時間が大となる。したがって、どのシリンダのどのセクタに割り付けられるかによっては、データ転送時間が大きくなりすぎ、システ全体の動作が遅くなるという場合がある。
【００１８】
そこで、上述した処理判断装置１は、実際のデータ転送においては、上記転送時間記憶装置３に記憶されているブロック単位の実データ転送時間と、システムで要求される要求データ転送時間（以下、基準値）とを比較し、実データ転送時間が要求データ転送時間より短い場合にのみ、そのブロックを使用するようにしている。言い換えると、上述したように、欠陥セクタが存在する場合などにおいて、実データ転送時間が要求データ転送時間より長くなる場合には、そのブロックは使用されないので、システム全体の動作を低下させることがない。
【００１９】
Ｂ．第１の実施形態の動作
次に、上述した第１の実施形態によるハードディスク制御装置の動作について説明する。
【００２０】
（１）転送時間計測処理
ここで、図５は、本第１の実施形態によるハードディスク制御装置の転送時間計測処理を示すフローチャートである。図示する転送時間計測処理は、例えば、システムである複写機に電源を投入したときなどに実行され、実際のデータ転送に先だって、ハードディスクの各ブロックにおける実データ転送時間を計測する処理である。複写機に電源が投入されると、処理判断装置１は、まず、ステップＳａ１で、ハードディスクドライブのブロックを示す変数ｉを「０」に初期化する。次に、ステップＳａ２において、タイマーをリセットする。該タイマは、ブロック単位で、ハードディスクドライブ５のデータ転送時間を計測するためのものである。そして、ステップＳａ３で、上記タイマによる計時をスタートさせる。
【００２１】
次に、ステップＳａ４において、データ転送装置４によって、ハードディスクドライブ５からｉ番目のブロックに対する２５６セクタ分のデータを読み込む。実際には、データ転送装置４を介して、ハードディスクドライブ５に対して、ｉ番目のブロックに対するデータ読み込みコマンドを送出する。そして、ハードディスクドライブ５からのデータを待つ。
【００２２】
処理判断装置１は、データ転送装置４を介して、ハードディスクドライブ５から２５６セクタ分のｉ番目のブロックにおけるデータを受信すると、ステップＳａ５において、タイマによる計時をストップする。したがって、タイマは、２５６セクタ単位における、データ読み込み開始指示送出から実際にデータを受信するまでの時間、すなわち実データ転送時間を表すことになる。次に、ステップＳａ６において、上記タイマにより計測した実データ転送時間を、転送時間記憶装置３のｉ番目に記憶する。
【００２３】
次に、ステップＳａ７において、変数ｉを「１」だけインクリメントし、ステップＳａ８において、ハードディスクドライブ５の全ブロックに対して実データ転送時間を計測したか否かを判断する。そして、全ブロックに対して計測が終了していなければ、ステップＳａ８における判断結果が「ＮＯ」となり、ステップＳａ２に戻る。
【００２４】
以下、全ブロックに対する実データ転送時間の計測が終了するまで、各ブロック毎に、データの読み込みコマンドを送出し、実データ転送時間を計測し、転送時間記憶装置３に順次書き込む。この結果、転送時間記憶装置３には、ハードディスクドライブ５における全ブロックの実データ転送時間が記憶されることになる。
【００２５】
（２）実際のデータ転送処理
ここで、図６は、本第１の実施形態によるハードディスク制御装置における実際のデータ転送処理を示すフローチャートである。図示するデータ転送処理は、例えば、複写機においては、読み取った画像を一旦ハードディスクドライブに記憶し、該記憶した画像を読み出して所定の出力装置により出力する場合など、データ転送時毎に実行される処理である。処理判断装置１は、まず、ステップＳｂ１において、変数ｉを「０」に初期化する。次に、ステップＳｂ２において、転送時間記憶装置３に記憶されている、ｉ番目のブロックにおける実データ転送時間と、予めシステム設計上設定されている基準値（例えば、５０ｍｓｅｃ）とを比較し、実データ転送時間＜基準値であるか否かを判断する。
【００２６】
そして、実データ転送時間が基準値以上である場合、すなわち、欠陥セクタ等があり、システムで要求されている転送時間を満足できない場合には、ステップＳｂ２における判断結果は「ＮＯ」となり、ステップＳｂ３に進み、変数ｉを「１」だけインクリメントし、ステップＳｂ２へ戻る。この結果、当該ブロックは使用されない。図２に示す例では、４番目のブロック、１６番目のブロックがこれに該当する。
【００２７】
一方、実データ転送時間が基準値より小さく、システムで要求されている転送時間を満足している場合には、ステップＳｂ２における判断結果は「ＹＥＳ」となり、ステップＳｂ４に進む。ステップＳｂ４では、ハードディスクドライブ５のｉ番目のブロックにデータを書き込む。そして、ステップＳｂ５で、全データの書き込みが終了したか否かを判断し、まだ終了していなければ、ステップＳｂ３に戻り、変数ｉをインクリメントし、上述したステップＳｂ２〜Ｓｂ５を繰り返し実行し、転送時間記憶装置３において、基準値より小さい実データ転送時間が格納されているブロックに対してのみデータを書込み、全てのデータを書込むと、当該処理を終了する。
【００２８】
このように、欠陥セクタ等が存在し、実データ転送時間がシステムで要求されている転送時間を満足できない場合には、そのブロックを使用しないようにすることで、特別に高速なハードディスクドライブを用いたり、システム全体の速度を低下させることなく、現在のハードディスクドライブをシステムに対して最適な条件で使用できる。言い換えると、低速なハードディスクドライブでも使用することができる。
【００２９】
Ｃ．第２の実施形態の構成
次に、図７は、本発明の第２の実施形態によるハードディスク制御装置の構成を示すブロック図である。なお、図１に対応する部分には同一の符号を付けて説明を省略する。図において、転送時間記憶装置６は、実際のデータ転送に先だって、時間計測装置２によって計測した各ブロック毎の実データ転送時間を、図８に示すように、「０」または「１」の状態をとるフラグで記憶しており、転送時間記憶装置６のメモリ容量を低減することを可能にしている。「０」は実データ時間がシステムが要求する転送時間より大である場合、「１」は実データ転送時間がシステムが要求する転送時間より小である場合である。図８において、各升目が２５６セクタのブロックに相当し、各ブロックの上段がブロック番号、下段がフラグである。すなわち、本第２の実施形態では、各ブロックの実データ転送時間を計測する転送時間計測処理において、実データ転送時間と基準値とを予め比較し、該比較結果に応じて、各ブロック毎に上記フラグを記憶するようにしている。
【００３０】
Ｄ．第２の実施形態の動作
次に、上述した第２の実施形態によるハードディスク制御装置の動作について説明する。
【００３１】
（１）転送時間計測処理
ここで、図９は、本第２の実施形態によるハードディスク制御装置の転送時間計測処理を示すフローチャートである。システムである複写機に電源が投入されると、処理判断装置１は、まず、ステップＳｃ１で、ハードディスクドライブのブロックを示す変数ｉを「０」に初期化する。次に、ステップＳｃ２において、タイマーをリセットし、ステップＳｃ３で、上記タイマによる計時をスタートさせる。
【００３２】
次に、ステップＳｃ４において、データ転送装置４によって、ハードディスクドライブ５からｉ番目のブロックに対する２５６セクタ分のデータを読み込む。実際には、データ転送装置４を介して、ハードディスクドライブ５に対して、ｉ番目のブロックに対するデータ読み込みコマンドを送出する。そして、ハードディスクドライブ５からのデータを待つ。
【００３３】
処理判断装置１は、データ転送装置４を介して、ハードディスクドライブ５から２５６セクタ分のｉ番目のブロックにおけるデータを受信すると、ステップＳｃ５において、タイマによる計時をストップする。したがって、タイマは、ｉ番目のブロックに対する実データ転送時間を表すことになる。次に、ステップＳｃ６において、上記ｉ番目のブロックにおける実データ転送時間と、予めシステム設計上設定されている基準値（例えば、５０ｍｓｅｃ）とを比較し、実データ転送時間＜基準値であるか否かを判断する。
【００３４】
そして、実データ転送時間が基準値より小さく、システムで要求されている転送時間を満足している場合には、ステップＳｃ７に進み、転送時間記憶装置６のｉ番目のブロックに「１」を書き込む。一方、実データ転送時間が基準値より大きく、欠陥セクタ等によってシステムで要求されている転送時間を満足できない場合には、ステップＳｃ８に進み、転送時間記憶装置６のｉ番目のブロックに「０」を書き込む。図８に示す例では、４番目のブロック、１６番目のブロックがこれに該当する。
【００３５】
次に、ステップＳｃ９において、変数ｉを「１」だけインクリメントし、ステップＳｃ１０において、ハードディスクドライブ５の全ブロックに対して実データ転送時間を計測したか否かを判断する。そして、全ブロックに対して計測が終了していなければ、ステップＳｃ１０における判断結果が「ＮＯ」となり、ステップＳｃ２に戻る。
【００３６】
以下、全ブロックに対する実データ転送時間の計測が終了するまで、各ブロック毎に、データの読み込みコマンドを送出し、実データ転送時間を計測し、該計測した実データ転送時間と予めシステム設計上設定されている基準値（例えば、５０ｍｓｅｃ）とを比較し、システムで要求されている転送時間を満足している場合には、転送時間記憶装置６のｉ番目のブロックに「１」を書き込み、欠陥セクタ等によってシステムで要求されている転送時間を満足できない場合には、転送時間記憶装置６のｉ番目のブロックに「０」を書き込む。この結果、転送時間記憶装置３には、ハードディスクドライブ５における全ブロックの実データ転送時間が満足しているかを示すフラグが記憶されることになる。
【００３７】
（２）実際のデータ転送処理
ここで、図１０は、本第２の実施形態によるハードディスク制御装置における実際のデータ転送処理を示すフローチャートである。処理判断装置１は、まず、ステップＳｄ１において、変数ｉを「０」に初期化し、ステップＳｄ２において、転送時間記憶装置３に記憶されている、ｉ番目のブロックにおけるフラグが「１」であるか否か、すなわちシステムで要求されている転送時間を満足しているか否かを判断する。
【００３８】
そして、フラグが「０」である場合、すなわち、欠陥セクタ等があり、システムで要求されている転送時間を満足できない場合には、ステップＳｄ２における判断結果は「ＮＯ」となり、ステップＳｄ３に進み、変数ｉを「１」だけインクリメントし、ステップＳｄ２へ戻る。図８に示す例では、４番目のブロックおよび１６番目のブロックがこれに該当する。
【００３９】
一方、フラグが「１」である場合、すなわち、実データ転送時間がシステムで要求されている転送時間を満足している場合には、ステップＳｄ４で、ハードディスクドライブ５のｉ番目のブロックにデータを書き込む。そして、ステップＳｄ５で、全データの書き込みが終了したか否かを判断し、まだ終了していなければ、ステップＳｄ３に戻り、変数ｉをインクリメントし、上述したステップＳｄ２〜Ｓｄ５を繰り返し実行し、転送時間記憶装置６において、「１」が格納されているブロックに対してのみデータを書込み、全てのデータを書込むと、当該処理を終了する。
【００４０】
Ｅ．第３の実施形態
次に、本発明の第３の実施形態について説明する。本第３の実施形態では、上述した第２の実施形態による実データ転送時間の管理に加えて、データ転送の都度、実データ転送時間を測定し、図７に示す転送時間記憶装置６のフラグを更新するようにしている。なお、本第３の実施形態によるハードディスク制御装置の構成は、図７に示す構成と同一であるので説明を省略する。
【００４１】
Ｆ．第３の実施形態の動作
次に、上述した第３の実施形態によるハードディスク制御装置の動作について説明する。なお、転送時間計測処理については、前述した第２の実施形態と同一であるので説明を省略する。ここで、図１１は本第３の実施形態によるハードディスク制御装置における実際のデータ転送処理を示すフローチャートである。
【００４２】
実際のデータ転送処理において、処理判断装置１は、まず、ステップＳｅ１において、変数ｉを「０」に初期化し、ステップＳｅ２において、タイマをリセットする。次に、ステップＳｅ３で、転送時間記憶装置３に記憶されている、ｉ番目のブロックにおけるフラグが「１」であるか否か、すなわちシステムで要求されている転送時間を満足しているか否かを判断する。
【００４３】
そして、フラグが「０」である場合、すなわち、欠陥セクタ等があり、システムで要求されている転送時間を満足できない場合には、ステップＳｅ９に進み、変数ｉを「１」だけインクリメントし、ステップＳｅ１０に進む。図８に示す例では、４番目のブロックおよび１６番目のブロックがこれに該当する。ステップＳｅ１０では、全データの書き込みが終了したか否かを判断し、まだ終了していなければ、ステップＳｅ２へ戻り、次のブロックのデータ転送に進む。
【００４４】
一方、フラグが「１」である場合、すなわち、実データ転送時間がシステムで要求されている転送時間を満足している場合には、ステップＳｅ４で、タイマをスタートし、ステップＳｅ５で、ハードディスクドライブ５のｉ番目のブロックにデータを書き込む。次に、ステップＳｅ６で、タイマによる計時をストップする。したがって、タイマは、ｉ番目のブロックに対する現在の実データ転送時間を表すことになる。次に、ステップＳｅ７において、上記ｉ番目のブロックにおける現在の実データ転送時間と、予めシステム設計上設定されている基準値（例えば、５０ｍｓｅｃ）とを比較し、実データ転送時間＜基準値であるか否かを判断する。
【００４５】
そして、現在の実データ転送時間が基準値より小さく、システムで要求されている転送時間を満足している場合には、そのままステップＳｅ９に進み、変数ｉを「１」だけインクリメントし、ステップＳｅ１０で、全データの書き込みが終了したか否かを判断し、まだ終了していなければ、ステップＳｅ２へ戻る。すなわち、現在の実データ転送時間が基準値より小さい場合には、転送時間記憶装置６のフラグを更新することなく、次のブロックのデータ転送に進む。
【００４６】
一方、経時変化により欠陥等が生じ、現在の実データ転送時間が基準値より大きくなった場合には、ステップＳｅ８に進み、転送時間記憶装置６のｉ番目のブロックのフラグを「０」に更新する。そして、ステップＳｅ９，Ｓｅ１０と進み、ステップＳｅ２に戻る。
【００４７】
以下、ステップＳｅ２〜Ｓｅ１０を繰り返し実行し、転送時間記憶装置６において、「１」が格納されているブロックに対してのみデータを書込み、かつそのときの実データ転送時間を計測し、該現在の実データ転送時間が基準値より大となっていると、転送時間記憶装置６の対応するブロックのフラグを「０」に更新し、次回から使用しないようにする。そして、全てのデータを書込むと、当該処理を終了する。
【００４８】
このように、本第３の実施形態によれば、データ転送の都度、転送時間記憶装置６のフラグを更新するようにしたので、ハードディスクドライブの経時変化による劣化等で生じる転送時間の低下にも対応できる。なお、上述した第３の実施形態では、上述した第２の実施形態に対して、データ転送の都度、図７に示す転送時間記憶装置６のフラグを更新するようにしたが、前述した第１の実施形態に対して適用してもよく、この場合、実データ転送時間そのものを更新すればよい。
【００４９】
なお、上述した実施形態では、実データ転送時間を測定する際、ハードディスクドライブ５に対してデータの読み込みを行ったが、これに限らず、データの書込みを行うようにしてもよい。また、実データ転送時間が基準値より大きいブロックの個数を所定時間毎にチェックし、該個数が所定個数を越えた場合には、ハードディスクドライブの交換を促すようにしてもよい。また、上述した実施形態では、１つのハードディスクドライブに対してのみ説明したが、複数のハードディスクドライブを搭載したシステムに適用してもよいことは言うまでもない。
【００５０】
【発明の効果】
以上、説明したように、この発明によれば、ハードディスクとの間でデータを実際に授受するときの実データ転送時間を、転送時間計測手段によって、所定のブロック単位で計測し、転送時間情報記憶手段に記憶しておき、実際のデータ転送においては、データ転送制御手段によって、転送時間情報記憶手段に記憶された情報に基づいて所定のブロックにデータを記憶するか否かを判断し、この判断が肯定的であれば該データを該ブロックに書き込み、この判断が否定的であれば該データを該ブロックに書き込まずに該ブロックに連続する次のブロックに対してこの判断を行う、という処理を繰り返すようにしたので、欠陥セクタの発生による交代セクタへの移動や、リトライの発生による、みかけ上のデータ転送速度の低下を予め検出することができ、ハードディスクドライブをシステムに対して最適な条件で使用できるという利点が得られる。例えば、低速なハードディスクドライブを使用しても、システムの速度を該ハードディスクドライブの性能限界までアップすることができるという利点がある。
【図面の簡単な説明】
【図１】本発明の第１の実施形態によるハードディスク制御装置の構成を示すブロック図である。
【図２】本第１の実施形態の転送時間記憶装置３に記憶される各ブロックの実データ転送時間を示す概念図である。
【図３】ハードディスクドライブに欠陥セクタがある場合に該欠陥セクタの使用を回避するためのセクタスリップ処理を説明するための概念図である。
【図４】ハードディスクドライブに欠陥セクタがある場合に該欠陥セクタの使用を回避するための交代シリンダ割り付け処理を説明するための概念図である。
【図５】本第１の実施形態によるハードディスク制御装置の転送時間計測処理を示すフローチャートである。
【図６】本第１の実施形態によるハードディスク制御装置における実際のデータ転送処理を示すフローチャートである。
【図７】本発明の第２の実施形態によるハードディスク制御装置の構成を示すブロック図である。
【図８】本第２の実施形態の転送時間記憶装置６に記憶される、各ブロックの実データ転送時間がシステムが要求する転送時間を満足しているか否かを示すフラグを示す概念図である。
【図９】本第２の実施形態によるハードディスク制御装置の転送時間計測処理を示すフローチャートである。
【図１０】本第２の実施形態によるハードディスク制御装置における実際のデータ転送処理を示すフローチャートである。
【図１１】本発明の第３の実施形態によるハードディスク制御装置における実際のデータ転送処理を示すフローチャートである。
【符号の説明】
１  処理判断装置（データ転送制御手段、更新手段）
２  時間計測装置（転送時間計測手段）
３，６  転送時間記憶装置（転送時間情報記憶手段）
４  データ転送装置（データ転送制御手段）
【図１】
0003584599.tif 000002
【図２】
0003584599.tif 000003
【図３】
0003584599.tif 000004
【図４】
0003584599.tif 000005
【図５】
0003584599.tif 000006
【図６】
0003584599.tif 000007
【図７】
0003584599.tif 000008
【図８】
0003584599.tif 000009
【図９】
0003584599.tif 000010
【図１０】
0003584599.tif 000011
【図１１】
0003584599.tif 000012