(57)【要約】【課題】テープ媒体の走行速度を最適に調整する技術を提供すること【解決手段】テープ媒体の走行速度を複数段階に切り替え可能なテープドライブは、上位装置との間のデータの転送速度を算出し、該転送速度に応じて定速モードと切替モードとの間でテープ媒体の走行速度の調整モードを選択する。切替モードでは、第１走行速度でデータ書込み中にバッファメモリの空き容量が、走行速度切替中に上位装置から受信するであろうデータ量に等しくなったとき、又は第１走行速度でデータ読出し中にバッファメモリに記憶されるデータ容量が、走行速度の切替中に上位装置へ送信するであろうデータ量に等しくなったとき、テープドライブは読み書きを中止して、走行速度を第１走行速度より一段階速い第２走行速度に切り替える。
2010004936.tif 000002
【特許請求の範囲】
【請求項１】
テープ媒体の走行速度を調整するための走行速度調整装置であって、
ネットワークを介して上位装置からデータを受信する受信手段と、
受信した前記データを一時的に記憶するバッファメモリと、  
前記テープ媒体をその長手方向に、設定可能な複数段階のテープ媒体の走行速度のうち設定された走行速度で走行させる走行手段と、
前記バッファメモリ内の前記データを、前記テープ媒体の走行方向に沿って形成されたトラック上に書き込む書込み手段と、
前記上位装置と前記走行速度調整装置との間のデータの転送速度である第１転送速度を算出する転送速度算出手段と、
前記バッファメモリと前記テープ媒体間のデータの転送速度である第２転送速度が前記第１転送速度より遅くなるような、前記走行手段に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、前記テープ媒体を走行させる際の速度を常に前記第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを前記第１転送速度に応じて定めるモード選択テーブルを参照して、算出した前記第１転送速度に対応する調整モードを選択するモード選択手段と、
前記切替モードの選択に応答して、データ書込み開始の際に前記第１走行速度を前記走行手段に設定する走行速度設定手段と、
前記切替モードの選択に応答して、前記テープ媒体の走行速度を、前記第１走行速度から前記第２走行速度へ切り替えるのに要する所要時間を取得する所要時間取得手段と、
前記所要時間と前記第１転送速度とから、前記走行速度を切り替えている間に前記上位装置から受信するデータの量を閾値として算出する閾値算出手段と、
前記切替モードにおいて前記第１走行速度でデータを書き込み中に前記バッファメモリに記憶可能なデータの空き容量を監視し、該空き容量が前記閾値と等しくなった場合に第１切替通知を出力する監視手段と、
前記第１切替通知に応答して、前記書込み手段の動作を中止させて、前記走行手段に前記第２走行速度を設定する速度調整手段と、
を含む、走行速度調整装置。
【請求項２】
前記走行速度調整装置は、前記バッファメモリに受信した前記データを記憶する前に、該データを圧縮する圧縮手段を更に含み、前記転送速度算出手段は、時間間隔Ｔの間に前記バッファメモリに記憶されたデータ量Ｖから、前記第１転送速度をＶ／Ｔとして算出する、請求項１に記載の走行速度調整装置。
【請求項３】
前記監視手段は、更に、前記切替モードにおいて前記第２走行速度でデータを書き込み中に前記バッファメモリに記憶可能なデータの空き容量を監視し、該空き容量が前記バッファメモリのサイズに等しくなった場合に第２切替通知を出力し、前記速度調整手段は、更に、前記第２切替通知に応答して、前記書込み手段の動作を中止させて、前記走行手段に前記第１走行速度を設定する、請求項１に記載の走行速度調整装置。
【請求項４】
前記所要時間は、前記テープ媒体の走行を一旦止めるのに要する時間、位置合わせのために前記テープ媒体を巻き戻すのに要する時間、及び前記テープ媒体の走行方向を元の走行方向へ戻し、かつ走行速度を前記第２走行速度へ変更するのに要する時間を含む、請求項１に記載の走行速度調整装置。
【請求項５】
前記走行速度調整装置は、前記走行手段に設定可能な前記複数段階の走行速度の各々を、該走行速度が前記走行手段に設定される場合の前記第２転送速度に関連付けるテーブルを記憶する記憶装置を更に含み、前記走行速度設定手段は、前記テーブルを参照して、前記走行手段に設定する走行速度を決定する、請求項１に記載の走行速度調整装置。
【請求項６】
前記走行速度調整装置は、前記バッファメモリに記憶された前記データに対し、該データを前記走行速度調整装置において管理するための管理情報を付加する管理情報付加手段と、前記バッファメモリに記憶された前記データに対し、エラー訂正処理を行うためのエラー訂正情報を付加する訂正情報付加手段とを更に含み、前記第２転送速度は、時間間隔Ｔの間に、前記管理情報付加手段及び前記訂正情報付加手段による処理を完了して前記テープ媒体へ転送されたデータ量Ｖから、Ｖ／Ｔとして算出された転送速度である、請求項５に記載の走行速度調整装置。
【請求項７】
テープ媒体の走行速度を調整するための走行速度調整装置であって、
前記テープ媒体をその長手方向に、設定可能な複数段階のテープ媒体の走行速度のうち設定された走行速度で走行させる走行手段と、
前記テープ媒体の走行方向に沿って形成されたトラック上に記録されたデータを読み出す読出し手段と、
読み出された前記データを一時的に記憶するバッファメモリと、  
前記バッファメモリ内の前記データを、ネットワークを介して上位装置へ送信する送信手段と、
前記上位装置と前記走行速度調整装置との間のデータの転送速度である第１転送速度を算出する転送速度算出手段と、
前記バッファメモリと前記テープ媒体との間のデータの転送速度である第２転送速度が前記第１転送速度より遅くなるような、前記走行手段に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、前記テープ媒体を走行させる際の速度を常に前記第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを前記第１転送速度に応じて定めるモード選択テーブルを参照して、算出した前記第１転送速度に対応する調整モードを選択するモード選択手段と、
前記切替モードの選択に応答して、前記テープ媒体の走行速度を、前記第１走行速度から前記第２走行速度へ切り替えるのに要する所要時間を取得する所要時間取得手段と、
前記所要時間と前記第１転送速度とから、前記走行速度を切り替えている間に前記上位装置へ送信するデータの量を閾値として算出する閾値算出手段と、
前記切替モードにおいて前記第１走行速度でデータを読み出し中に前記バッファメモリに記憶されているデータの容量を監視し、該容量が前記閾値と等しくなった場合に第１切替通知を出力する監視手段と、
前記第１切替通知に応答して、前記読出し手段の動作を中止させて、前記走行手段に前記第２走行速度を設定する速度調整手段と、
を含む、走行速度調整装置。
【請求項８】
前記テープ媒体は、圧縮されたデータを記録し、前記走行速度調整装置は、前記上位装置へ送信する前に、前記バッファメモリから読み出した前記データを伸張する伸張手段を更に含み、前記転送速度算出手段は、時間間隔Ｔの間に前記バッファメモリから前記伸張手段へ転送されたデータ量Ｖから、前記第１転送速度をＶ／Ｔとして算出する、請求項７に記載の走行速度調整装置。
【請求項９】
前記所要時間は、前記テープ媒体の走行を一旦止めるのに要する時間、位置合わせのために前記テープ媒体を巻き戻すのに要する時間、及び前記テープ媒体の走行方向を元の走行方向へ戻し、かつ走行速度を前記第２走行速度へ変更するのに要する時間を含む、請求項７に記載の走行速度調整装置。
【請求項１０】
前記走行速度調整装置は、データ読出し開始の際に、前記第２走行速度を前記走行手段に設定する走行速度設定手段を更に含み、前記監視手段は、更に、前記切替モードにおいて前記第２走行速度でデータを読出し中に前記バッファメモリに記憶されているデータの容量を監視し、該データの容量が前記バッファメモリのサイズに等しくなったことに応答して第２切替通知を更に出力し、前記速度調整手段は、更に、前記第２切替通知に応答して、前記読出し手段の動作を中止させ、前記走行手段に前記第１走行速度を設定する、請求項７に記載の走行速度調整装置。
【請求項１１】
前記走行速度調整装置は、前記走行手段に設定可能な前記複数段階の走行速度の各々を、該走行速度が前記走行手段に設定される場合の前記第２転送速度に関連付けるテーブルを記憶する記憶装置を更に含み、前記走行速度設定手段は、前記テーブルを参照して、前記走行手段に設定する走行速度を決定する、請求項１０に記載の走行速度調整装置。
【請求項１２】
前記走行速度調整装置は、前記バッファメモリに記憶された前記データに対し、エラー訂正処理を行うエラー訂正手段を更に含み、前記テーブルに記憶される前記第２転送速度は、時間間隔Ｔの間に、前記テープ媒体から前記バッファメモリに読み出され、かつ前記エラー訂正手段による処理を完了したデータ量Ｖから、Ｖ／Ｔとして算出された転送速度である、請求項１１に記載の走行速度調整装置。
【請求項１３】
テープ媒体の走行速度を複数段階に切り替え可能なテープドライブ装置で実行される、走行速度調整方法であって、
ネットワークを介して上位装置からデータを受信するステップと、
受信した前記データをバッファメモリに一時的に記憶するステップと、
前記テープ媒体をその長手方向に走行させるステップと、  
前記バッファメモリ内の前記データを、前記テープ媒体の走行方向に沿って形成されたトラック上に書き込むステップと、
前記上位装置と前記テープドライブ装置との間のデータの転送速度である第１転送速度を算出するステップと、
前記バッファメモリと前記テープ媒体との間のデータの転送速度である第２転送速度が前記第１転送速度より遅くなるような、前記テープドライブ装置に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、前記テープ媒体を走行させる際の速度を常に前記第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを前記第１転送速度に応じて定めるモード選択テーブルを参照して、算出した前記第１転送速度に対応する調整モードを選択するステップと、
前記切替モードの選択に応答して、データ書込み開始の際に前記第１走行速度を前記テープドライブ装置に設定するステップと、
前記切替モードの選択に応答して、前記テープ媒体の走行速度を、前記第１走行速度から前記第２走行速度へ切り替えるのに要する所要時間を取得するステップと、  
前記所要時間と前記第１転送速度とから、前記走行速度を切り替える間に前記上位装置から受信するデータの量を閾値として算出するステップと、
前記切替モードにおいて前記第１走行速度でデータ書込み中に前記バッファメモリに記憶可能なデータの空き容量が前記閾値と等しいか否かを監視するステップと、
前記空き容量が前記閾値と等しくなったとの監視結果に応答して、前記データの書込みを中止して、前記テープ媒体の走行速度を、前記第２走行速度に切り替えるステップと
を含む、走行速度調整方法。
【請求項１４】
テープ媒体の走行速度を複数段階に切り替え可能なテープドライブ装置で実行される、走行速度調整方法であって、
前記テープ媒体をその長手方向に走行させるステップと、
前記テープ媒体の走行方向に沿って形成されたトラック上に記録されたデータを読み出すステップと、
読み出された前記データをバッファメモリに一時的に記憶するステップと、  
前記バッファメモリ内の前記データを、ネットワークを介して上位装置へ送信するステップと、
前記上位装置と前記テープドライブ装置との間のデータの転送速度である第１転送速度を算出するステップと、
前記バッファメモリと前記テープ媒体との間のデータの転送速度である第２転送速度が前記第１転送速度より遅くなるような、前記テープドライブ装置に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、前記テープ媒体を走行させる際の速度を常に前記第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを前記第１転送速度に応じて定めるモード選択テーブルを参照して、算出した前記第１転送速度に対応する調整モードを選択するステップと、
前記切替モードの選択に応答して、前記テープ媒体の走行速度を、前記第１走行速度から前記第２走行速度へ切り替えるのに要する所要時間を取得するステップと、
前記所要時間と前記第１転送速度とから、前記走行速度を切り替える間に前記上位装置へ送信するデータの量を閾値として算出するステップと、
前記切替モードの選択において前記第１走行速度でデータを読み出し中に前記バッファメモリに記憶されているデータの容量が前記閾値と等しいか否かを監視するステップと、
前記データの容量が前記閾値と等しくなったとの監視結果に応答して、前記データの読出しを中止して、前記テープ媒体の走行速度を、前記第２走行速度に切り替えるステップと
を含む、走行速度調整方法。
【請求項１５】
テープ媒体の走行速度を複数段階に切り替え可能なテープドライブ装置で実行される、走行速度調整プログラムであって、前記走行速度調整プログラムは前記テープドライブ装置に、
ネットワークを介して上位装置からデータを受信するステップと、
受信した前記データをバッファメモリに一時的に記憶するステップと、
前記テープ媒体をその長手方向に走行させるステップと、  
前記バッファメモリ内の前記データを、前記テープ媒体の走行方向に沿って形成されたトラック上に書き込むステップと、
前記上位装置と前記テープドライブ装置との間のデータの転送速度である第１転送速度を算出するステップと、
前記バッファメモリと前記テープ媒体との間のデータの転送速度である第２転送速度が前記第１転送速度より遅くなるような、前記走テープドライブ装置に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、前記テープ媒体を走行させる際の速度を常に前記第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを前記第１転送速度に応じて定めるモード選択テーブルを参照して、算出した前記第１転送速度に対応する調整モードを選択するステップと、
前記切替モードの選択に応答して、データ書込み開始の際に前記第１走行速度を前記テープドライブ装置に設定するステップと、
前記切替モードの選択に応答して、前記テープ媒体の走行速度を、前記第１走行速度から前記第２走行速度へ切り替えるのに要する所要時間を取得するステップと、  
前記所要時間と前記第１転送速度とから、前記走行速度を切り替える間に前記上位装置から受信するデータの量を閾値として算出するステップと、
前記切替モードにおいて前記第１走行速度でデータ書込み中に前記バッファメモリに記憶可能なデータの空き容量が前記閾値と等しいか否かを監視するステップと、
前記空き容量が前記閾値と等しくなったとの監視結果に応答して、前記データの書込みを中止して、前記テープ媒体の走行速度を、前記第２走行速度に切り替えるステップと
を実行させる走行速度調整プログラム。
【請求項１６】
テープ媒体の走行速度を複数段階に切り替え可能なテープドライブ装置で実行される、走行速度調整プログラムであって、前記走行速度調整プログラムは前記テープドライブ装置に、
前記テープ媒体をその長手方向に走行させるステップと、
前記テープ媒体の走行方向に沿って形成されたトラック上に記録されたデータを読み出すステップと、
読み出された前記データをバッファメモリに一時的に記憶するステップと、  
前記バッファメモリ内の前記データを、ネットワークを介して上位装置へ送信するステップと、
前記上位装置と前記テープドライブ装置間のデータの転送速度である第１転送速度を算出するステップと、
前記バッファメモリと前記テープ媒体間のデータの転送速度である第２転送速度が前記第１転送速度より遅くなるような、前記テープドライブ装置に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、前記テープ媒体を走行させる際の速度を常に前記第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを前記第１転送速度に応じて定めるモード選択テーブルを参照して、算出した前記第１転送速度に対応する調整モードを選択するステップと、
前記切替モードの選択に応答して、前記テープ媒体の走行速度を、前記第１走行速度から前記第２走行速度へ切り替えるのに要する所要時間を取得するステップと、
前記所要時間と前記第１転送速度とから、前記走行速度を切り替える間に前記上位装置へ送信するデータの量を閾値として算出するステップと、
前記切替モードにおいて前記第１走行速度でデータを読み出し中に前記バッファメモリに記憶されているデータの容量が前記閾値と等しいか否かを監視するステップと、
前記データの容量が前記閾値と等しくなったとの監視結果に応答して、前記データの読出しを中止して、前記テープ媒体の走行速度を、前記第２走行速度に切り替えるステップと
を実行させる走行速度調整プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テープドライブ装置におけるテープ媒体の走行速度の調整方法に関し、特にリニア記録方式のテープ媒体を用いるテープドライブ装置において、テープ媒体の走行速度を最適に調整する技術に関する。
【背景技術】
【０００２】
一般に、テープドライブ装置は、データ書込み時には、上位装置から送られてきたデータを一旦バッファメモリに蓄積し、その後バッファメモリから蓄積されたデータを読み出してテープ媒体に書き込む。同様にデータ読出し時は、テープドライブ装置は、テープ媒体から読み出したデータを一旦バッファメモリに蓄積し、その後バッファメモリから蓄積されたデータを読み出して上位装置へ送信する。このデータの書込みや読出しは、ヘッドをテープ媒体に対して相対的に移動させることにより行われる。従って、テープドライブ装置では、テープ媒体とバッファメモリ間のデータの転送速度は、テープ媒体の走行速度に比例する。  【０００３】
従来のテープドライブ装置では、システム全体のパフォーマンスの観点から上位装置を待たせることがないように、テープ媒体の走行速度として、上位装置との間のデータの転送速度とテープ媒体との間のデータの転送速度とが等しくなるような走行速度を設定可能であればその走行速度を、なければ上位装置との間のデータの転送速度よりもテープ媒体との間のデータ転送速度が速くなるような設定可能な走行速度を、選択し設定していた。しかしテープ媒体の走行速度として、上位装置との間のデータの転送速度よりもテープ媒体との間のデータの転送速度の方が速くなるような走行速度を設定する場合、データ書込みの時はバッファメモリが空になるとき、データ読出し時はバッファメモリが一杯になるとき、バックヒッチが発生していた。【０００４】
バックヒッチ（Ｂaｃｋｈiｔｃｈ）とは、適正な書込み又は読出しポジションにテープ媒体を再位置合わせするために、テープ媒体の走行速度を減速して一旦停止し、所定の位置まで戻る動作のことをいう。バックヒッチは、テープ媒体に負担をかけるため、その回数は可能な限り少なくすることが望ましい。例えば、テープドライブ装置に常に、上位装置との間のデータの転送速度とテープ媒体との間のデータ転送速度が等しくなるような走行速度を設定可能であれば、バックヒッチは発生しない。しかし、任意の値をとり得る上位装置との間のデータの転送速度とテープ媒体との間のデータの転送速度が等しくなるような走行速度を常に設定可能とするためには、テープ媒体の走行速度を１００段階程度に切り替え可能にする必要がある。しかしこれは現実的な方法ではない。これは次の理由による。【０００５】
データ読出し時のエラーレートは、読出し時のテープ媒体の走行速度と、読み出すデータの書込み時のテープ媒体の走行速度の双方に依存することが知られている。そのため、テープ媒体の走行速度を１００段階程度切り替え可能とすると、各走行速度について、データ読出し時のエラーレートが仕様に定められた値を満たすことを検証するためには、１００００通りの組み合わせで検証を行う必要があるからである。【０００６】
データ転送効率の低下を防ぎ、バックヒッチによるテープ媒体のダメージを通常再生と同程度に収めるための従来技術として、例えば特許文献１が存在する。特許文献１は、データ再生時にバッファメモリのデータ量をモニタして、データ読出速度よりも上位コンピュータの要求するデータ転送速度が低くなった場合に、データ再生速度を下げるために磁気テープの走行速度を段階的に下げる指示を出力する磁気記録再生装置を開示する。【０００７】
また、特許文献１に開示される技術の更なる改良技術として、特許文献２が存在する。特許文献２は、テープドライブ装置の再生速度を複数段階が切り替え可能とされ、記憶手段のメモリ領域のうち、グループを格納可能な状態にあるメモリ領域数とグループを外部機器へ転送可能な状態にあるメモリ領域数が判定され、それぞれの個数に応じて再生速度の切り替えが行われるデータ再生装置を開示する。また、特許文献２は、特許文献１において、再生速度の遷移時にデータの取りこぼしが発生する又は発生する可能性が高いときには結果的にバックヒッチが起きてしまうことを問題とし、再生速度遷移中にとりこぼしたデータをＥＣＣ（Ｃ２パリティ又はＣ３パリティ）により補償することにより、再生速度の遷移時に結果的に生じるバックヒッチ動作をなくす技術を開示する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０００−３４８４３２
【特許文献２】特開２００７−４２１５９
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献２に開示される技術を、ＰＬＬ(Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ)を一定とし、テープ媒体の走行速度が一定になるように制御するテープドライブ装置に適用しても、走行速度の遷移時のバックヒッチをなくすことはできない。なぜなら、このようなテープドライブ装置は、ＰＬＬ及びテープ媒体の走行速度が一定であることを前提にデータの書込み及び読出し処理を行うため、テープ媒体の走行速度を変更する際には、データの書込み及び読出し処理を一旦中止する必要から必ずバックヒッチが発生するからである。【００１０】
なお、ＰＬＬ及びテープ媒体の走行速度が一定であることを前提とするのは、テープ媒体のトラックの位置と記録線密度が許容範囲内であることを保証するためである。テープドライブ装置、特にリニア記録方式のテープドライブ装置では、トラックが外れると隣接トラックのデータを上書きするおそれがある。また、記録線密度の許容範囲から逸脱してデータがテープ媒体に記録されると、読出し時にデータを読み出せないおそれがある。そのため、上記テープドライブ装置では、ＰＬＬ及びテープ媒体の走行速度が一定であることを前提としてデータの書込み及び読み出しを行うことにより、テープ媒体のトラックの位置と記録線密度が許容範囲内であることを保証しているのである。【００１１】
そこで本発明は、上記の課題、即ち、テープ媒体の走行速度を変更する際にデータの書込み及び読出し処理を一旦中止するテープドライブ装置において、上位装置との間のデータ転送効率の低下を防止しつつ、バックヒッチ回数の低減を図ることの可能な走行速度調整方法、走行速度調整装置、走行速度調整プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本出願の発明者は、上位装置とテープドライブ装置との間のデータの転送速度である第１転送速度によって、バックヒッチの回数がより少なくなるテープ媒体の走行速度の調整モードが異なることを見出した。そこで、本出願の発明者は、上述した従来技術のように、テープ媒体の走行速度の調整モードを１つに固定せずに、これを第１転送速度に応じて選択する構成を採用した。即ち、上記目的を達成する本発明は、次のようなテープ媒体の走行速度を調整するための走行速度調整装置によって実現される。この走行速度調整装置は、ネットワークを介して上位装置からデータを受信する受信手段と、受信したデータを一時的に記憶するバッファメモリと、テープ媒体をその長手方向に走行させる走行手段と、バッファメモリ内のデータを、テープ媒体の走行方向に沿って形成されたトラック上に書き込む書込み手段とを備える、テープ媒体の走行速度を複数段階に切り替え可能なテープドライブ装置において、更に以下の手段を備えることによって実現される。【００１３】
即ち、上位装置とテープドライブ装置間のデータの転送速度である第１転送速度を算出する転送速度算出手段、バッファメモリとテープ媒体間のデータの転送速度である第２転送速度が第１転送速度より遅くなるような、走行手段に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、テープ媒体を走行させる際の速度を常に第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを第１転送速度に応じて定めるモード選択テーブルを参照して、算出した第１転送速度に対応する調整モードを選択するモード選択手段、切替モードの選択に応答して、データ書込み開始の際に第１走行速度を走行手段に設定する走行速度設定手段、切替モードの選択に応答して、テープ媒体の走行速度を、第１走行速度から第２走行速度へ切り替えるのに要する所要時間を取得する所要時間取得手段、取得した所要時間と第１転送速度とから、走行速度を切り替える間に上位装置から受信するデータの量を閾値として算出する閾値算出手段、切替モードにおいて、第１走行速度でデータ書込み中にバッファメモリに記憶可能なデータの空き容量を監視し、該空き容量が閾値と等しくなった場合に第１切替通知を出力する監視手段、及び第１切替通知に応答して、書込み手段の動作を中止させて、走行手段に第２走行速度を設定する速度調整手段。【００１４】
好ましくは、上記走行速度調整装置は、バッファメモリに受信したデータを記憶する前に、該データを圧縮する圧縮手段を更に含む。そして上記転送速度算出手段は、時間間隔Ｔの間にバッファメモリに記憶されたデータ量Ｖから、第１転送速度をＶ／Ｔとして算出する。【００１５】
また好ましくは、上記監視手段は、更に、切替モードにおいて第２走行速度でデータを書き込み中にバッファメモリに記憶可能なデータの空き容量を監視し、該空き容量がバッファメモリのサイズに等しくなった場合に第２切替通知を出力する。そして上記速度調整手段は、更に、第２切替通知に応答して、書込み手段の動作を中止して、走行手段に第１走行速度を設定する。【００１６】
また好ましくは、上記所要時間は、テープ媒体の走行を一旦止めるのに要する時間、位置合わせのためにテープ媒体を巻き戻すのに要する時間、及びテープ媒体の走行方向を元の走行方向へ戻し、かつ走行速度を第２走行速度へ変更するのに要する時間を含む。【００１７】
また好ましくは、上記走行速度調整装置は、走行手段に設定可能な複数の走行速度の各々を、該走行速度が走行手段に設定される場合の第２転送速度に関連付けるテーブルを記憶する記憶装置を更に含む。そして上記走行速度設定手段は、上記テーブルを参照して、走行手段に設定する走行速度を決定する。【００１８】
更に好ましくは、上記走行速度調整装置は、バッファメモリに記憶されたデータに対し、該データを上記走行速度調整装置において管理するための管理情報を付加する管理情報付加手段と、バッファメモリに記憶されたデータに対し、エラー訂正処理を行うためのエラー訂正情報を付加する訂正情報付加手段とを更に含む。そして、上記テーブル内の上記第２転送速度は、時間間隔Ｔの間に、管理情報付加手段及び訂正情報付加手段による処理を完了してテープ媒体へ転送されたデータ量Ｖから、Ｖ／Ｔとして算出された転送速度である。【００１９】
上記目的を達成する本発明はまた、次のようなテープ媒体の走行速度を調整するための走行速度調整装置によって実現される。この走行速度調整装置は、テープ媒体をその長手方向に走行させる走行手段と、テープ媒体の走行方向に沿って形成されたトラック上に記録されたデータを読み出す読出し手段と、読み出されたデータを一時的に記憶するバッファメモリと、バッファメモリ内のデータを、ネットワークを介して上位装置へ送信する送信手段とを備える、テープ媒体の走行速度を複数段階に切り替え可能なテープドライブ装置において、更に以下の手段を備えることによって実現される。【００２０】
即ち、上位装置とテープドライブ装置間のデータの転送速度である第１転送速度を算出する転送速度算出手段、バッファメモリとテープ媒体間のデータの転送速度である第２転送速度が第１転送速度より遅くなるような、走行手段に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、テープ媒体を走行させる際の速度を常に第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを第１転送速度に応じて定めるモード選択テーブルを参照して、算出した第１転送速度に対応する調整モードを選択するモード選択手段、切替モードの選択に応答して、テープ媒体の走行速度を、第１走行速度から第２走行速度へ切り替えるのに要する所要時間を取得する所要時間取得手段、取得した所要時間と第１転送速度とから、走行速度を切り替える間に上位装置へ送信するデータの量を閾値として算出する閾値算出手段、切替モードにおいて、第１走行速度でデータを読み出し中に、バッファメモリに記憶されているデータの容量を監視し、該容量が前記閾値と等しくなった場合に第１切替通知を出力する監視手段、及び第１切替通知に応答して、読出し手段の動作を中止させて、走行手段に第２走行速度を設定する速度調整手段。【００２１】
好ましくは、テープ媒体は、圧縮されたデータを記録し、上記走行速度調整装置は、上位装置へ送信する前に、バッファメモリから読み出したデータを伸張する伸張手段を更に含む。そして、上記転送速度算出手段は、時間間隔Ｔの間にバッファメモリから伸張手段へ転送されたデータ量Ｖから、第１転送速度をＶ／Ｔとして算出する。【００２２】
また好ましくは、上記所要時間は、テープ媒体の走行を一旦止めるのに要する時間、位置合わせのためにテープ媒体を巻き戻すのに要する時間、及びテープ媒体の走行方向を元の走行方向へ戻し、かつ走行速度を第２走行速度へ変更するのに要する時間を含む。【００２３】
また好ましくは、走行速度調整装置は、データ読出し開始の際に、第２走行速度を走行手段に設定する走行速度設定手段を更に含む。なお、第２走行速度は、第２転送速度が第１転送速度より速くなるような、走行手段に設定可能な１以上の走行速度のうち、一番遅い走行速度でもある。そして上記監視手段は、切替モードにおいて第２走行速度でデータを読出し中にバッファメモリに記憶されているデータの容量を監視し、該データの容量がバッファメモリのサイズに等しくなった場合に第２切替通知を更に出力する。そして上記速度調整手段は、更に、第２切替通知に応答して、読出し手段の動作を中止して、上記走行手段に第１走行速度を設定する。【００２４】
更に好ましくは、上記走行速度調整装置は、上記走行手段に設定可能な複数の走行速度の各々を、該走行速度が上記走行手段に設定される場合の第２転送速度に関連付けるテーブルを記憶する記憶装置を更に含む。そして、上記走行速度設定手段は、上記テーブルを参照して、上記走行手段に設定する走行速度を決定する。【００２５】
更にまた好ましくは、上記走行速度調整装置は、バッファメモリに記憶されたデータに対し、エラー訂正処理を行うエラー訂正手段を更に含む。そして上記テーブルに記録される第２転送速度は、時間間隔Ｔの間に、テープ媒体からバッファメモリに読み出され、かつ、エラー訂正手段による処理を完了したデータ量Ｖから、Ｖ／Ｔとして算出された転送速度である。【００２６】
以上、テープ媒体の走行速度を調整するための走行速度調整装置として本発明を説明したが、本発明はテープ媒体の走行速度を複数段階に切り替え可能なテープドライブ装置で実行される、テープ媒体の走行速度調整方法、走行速度調整プログラムとして把握することもできる。
【発明の効果】
【００２７】
本発明によれば、テープ媒体の走行速度を変更する際にデータの書込み及び読出し処理を一旦中止するテープドライブ装置において、テープ媒体の走行速度を調整する調整モードとして、切替モードと定速モードのうちバックヒッチ回数がより少なくなるモードが、上位装置との間のデータ転送速度である第１転送速度に応じて選択される。ここで、切替モードとは、テープ媒体の走行速度を、テープ媒体との間のデータ転送速度である第２転送速度が第１転送速度より遅くなるような第１走行速度と、第１走行速度よりも一段階速い、即ち、第２転送速度が第１転送速度より速くなる第２走行速度との間で切り替えるモードである。また、定速モードとは、テープ媒体を走行させる際の速度を常に第２走行速度とするモードである。上述した従来技術にでは、テープ媒体の走行速度を調整する調整方法、即ち、調整モードは、常に一定であったが、本願発明では、第１転送速度に応じて、最適な調整モードが選択されるので、従来よりバックヒッチ回数の低減を図ることが可能となる。しかも、本発明によれば、テープ媒体の走行速度の遷移時においても、上位装置からのデータを受信できること又は上位装置へデータを送信できることが保証されるので、上位装置との間のデータ転送効率の低下を防止しつつ、バックヒッチ回数の低減を図ることが可能となる。本発明のその他の効果については、各実施の形態の記載から理解される。
【図面の簡単な説明】
【００２８】
【図１】本発明を適用可能なテープドライブ装置１００のハードウェア構成の一例を示す。
【図２】(a)は、本実施形態に係るテープ媒体３００における記録領域の構成の一例を示す。（ｂ）は、バンド３０５の構成の一例を示す。（ｃ）は、データセット３２０の構成の一例を示す。
【図３】本発明の実施形態に係る制御部１５０の機能構成の一例を示す。
【図４】従来のテープドライブ装置と本発明を適用したテープドライブ装置における、上位装置との間の転送速度とバックヒッチ回数との関係を示すグラフである。
【図５】より大きいバッファメモリを備える、従来のテープドライブ装置と本発明を適用したテープドライブ装置における、上位装置との間の転送速度とバックヒッチ回数との関係を示すグラフである。
【図６】（ａ）は、本実施形態に係るモード選択テーブルの一例を示す。（ｂ）は、本実施形態にかかる対応テーブルの一例を示す。（ｃ）は、本実施形態に係る所要時間テーブルの一例を示す。
【図７】テープ媒体３００の走行速度の切替時における、読書きヘッド１２０のテープ媒体３００上の軌跡の一例を示す。
【図８】（ａ）は、データ書込み時における、第２走行速度への切替時のバッファメモリの状態の一例を示す。（ｂ）は、データ書込み時における、第１走行速度への切替時のバッファメモリの状態の一例を示す。
【図９】（ａ）は、データ読出し時における、第１走行速度への切替時のバッファメモリの状態の一例を示す。（ｂ）は、データ読出し時における、第２走行速度への切替時のバッファメモリの状態の一例を示す。
【図１０】データ書込み時における、本発明の実施形態に係る制御部１５０の走行速度調整処理の流れの一例を示すフローチャートを示す。
【図１１】データ読出し時における、本発明の実施形態に係る制御部１５０の走行速度調整処理の流れの一例を示すフローチャートを示す。
【発明を実施するための形態】
【００２９】
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。
【００３０】
以下では、Ｌｉｎｅａｒ Ｔａｐｅ Ｏｐｅｎ(ＬＴＯ)規格に従うテープドライブ装置を例に本発明を説明する。なお、ＬＴＯ規格とは、Ｈｅｗｌｅｔｔ−Ｐａｃｋａｒｄ社、ＩＢＭ 社、Ｓｅａｇａｔｅ Ｔｅｃｈｎｏｌｏｇｙ社の３社が共同で開発したオープンフォーマットの規格である。
【００３１】
図１は、本発明の実施の形態が適用されるＬＴＯ規格に従うテープドライブ装置１００のハードウェア構成の一例を示した図である。このテープドライブ装置１００は、通信インタフェース１０５と、バッ１ファメモリ１１０と、記録チャネル１１５と、読書き部１２０と、位置決め部１２５と、モータドライバ１３０と、モータ１３５と、制御部１５０とを含む。本実施形態に係るテープドライブ装置１００は更に、圧縮・伸張部１４０とエラー訂正処理部１４５も含む。
【００３２】
通信インタフェース１０５は、上位装置２００との通信を行う。例えば通信インタフェース１０５は、上位装置２００から、テープ媒体３００へのデータの書き込みを指示する書込みコマンド及び書き込むべきユーザデータを受信する。また通信インタフェース１０５は、上位装置２００から、テープ媒体３００からのデータ読出しを指示する読出しコマンドを受信する。
【００３３】
テープドライブ装置１００と上位装置２００とは、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）インターフェース、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワークを介して接続される。また、テープドライブ装置１００と上位装置２００とは、専用線またはインターネット等のネットワークを介して接続されてもよい。あるいは、テープドライブ装置１００は、ＳＣＳＩインターフェース、ＬＡＮ等の通信インターフェースによってパーソナルコンピュータ等の情報処理装置に接続され、情報処理装置を介して上位装置２００に接続されてもよい。  
【００３４】
バッファメモリ１１０は、テープ媒体３００に書き込むべきデータ、また、テープ媒体から読み出したデータを一時的に蓄積するメモリである。例えばバッファメモリ１１０は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）によって構成される。本実施形態に係るバッファメモリ１１０は、ＬＴＯ規格に従うテープドライブ装置１００で扱う単位データであるデータセットのサイズ、すなわち約２メガバイトの大きさのセグメントに分けられ使用される。
【００３５】
記録チャネル１１５は、バッファメモリ１１０に蓄積されたデータをテープ媒体３００に書き出すため、またはテープ媒体３００から読み出されたデータをバッファメモリ１１０に一時的に蓄積するために用いられる通信経路である。
【００３６】
読書き部（読書きヘッド）１２０は、データ読書き素子を有し、テープ媒体３００へのデータの書込み及びテープ媒体３００からのデータの読出しを行う。本実施形態に係る読書き部１２０はまたサーボ読取り素子を有し、テープ媒体３００に設けられたサーボトラックから信号を読み取る。
【００３７】
位置決め部１２５は、テープ媒体３００の短手方向（幅方向）に読書き部１２０の移動を指示する。リール１３７ａ及び１３７ｂは、回転することによって、リール１３７ａからリール１３７ｂの方向へ、又はリール１３７ｂからリール１３７ａの方向へテープ媒体３００を移動させる。モータドライバ１３０はモータ１３５を駆動し、モータ１３５はリール１３７ａ及び１３７ｂの回転を制御することによって、テープ媒体３００をその長手方向に走行させる。なお、以下では、位置決め部１２５、モータドライバ１３０、及びモータ１３５をまとめて走行部１３９とよぶ。本発明に係る走行部１３９は、テープ媒体３００の走行速度を複数段階に切り替え可能である。
【００３８】
圧縮・伸張部１４０は、データ書込み時において、通信インタフェース１０５においてデータが受信されると、該データがバッファメモリ１１０に記憶される前に、受信データを圧縮する。圧縮・伸張部１４０により圧縮されたデータは、データセット単位でバッファメモリ１１０のセグメントに格納される。また、圧縮・伸張部１４０は、データ読出し時において、テープ媒体３００から読み出された圧縮データがバッファメモリ１１０に記憶されると、該データが通信インタフェース１０５を介してホスト装置２００へ送信される前に、圧縮データを伸張する。
【００３９】
制御部１５０は、テープドライブ装置１００の全体の制御を行う。即ち、制御部１５０は、通信インタフェース１０５で受信したコマンドに従って、データのテープ媒体３００への書き込み及びテープ媒体３００からのデータの読出しを制御する。また、制御部１５０は、走行部１３９を制御して、テープ媒体３００の走行速度を調整する。本発明に係る制御部１５０は、走行部１３９に、適切なタイミングでかつ適切なテープ媒体３００の走行速度を設定することにより、上位装置２００との間のデータ転送効率の低下を防止しつつ、バックヒッチ回数の低減を図る。制御部１５０による走行速度調整の詳細は後述する。
【００４０】
本実施形態に係る制御部１５０はまた、データ書込み時において、バッファメモリ１１０に記憶された各セグメントのデータに対し、ＤａｔａＳｅｔＩｎｆｏｒｍａｔｉｏｎ Ｔａｂｌｅ(ＤＳＩＴ)と呼ばれる、データセットの内容を示す管理情報を作成し、該管理情報を対応するデータと同じセグメントに格納する。なお、データ読出し時において、各セグメントのデータに付加された管理情報は、上位装置２００へは転送されない。
【００４１】
上記制御部１５０は、ＣＰＵ１５２、ＲＡＭ１５４、ＲＯＭ１５６により実現される。ここでＲＯＭ１５６は、テープドライブ装置１００の起動時にＣＰＵ１５２が実行するブートプログラムや、本発明に係る走行速度調整プログラムを含む、起動後に制御部１５０に上記機能を提供させるためのプログラムを格納する。そして、ＣＰＵ１５２はこれらのプログラムを、ＲＡＭ１５４を用いて実行する。
【００４２】
エラー訂正処理部１４５は、データ書込み時において、バッファメモリ１１０に記憶された各セグメントのデータに対し、誤り訂正符号（以下、ＥＣＣという）を計算し、計算したＥＣＣをデータセットに付加する。エラー訂正処理部１４５はまた、データ読出し時において、バッファメモリ１１０に記憶された各セグメントのデータに対し、該データに付加されているＥＣＣを用いてエラー訂正処理を行う。
【００４３】
図２は、本実施形態に係るテープ媒体３００における記録領域の構成の一例を示す。テープ媒体３００は、図２（ａ）に示すように、ＢＯＴ（Ｂｅｇｉｎｎｉｎｇ  Ｏｆ  Ｔａｐｅ）からＥＯＴ（Ｅｎｄ  Ｏｆ  Ｔａｐｅ）へのテープ媒体３００の長手方向に沿って配列された複数のバンド３０５を有する。そして、複数のバンド３０５のそれぞれの両側には、データの書込み位置またはデータの読出し位置を制御するためのサーボトラック３１０が長手方向に沿って設けられている。
【００４４】
バンド３０５は、図２（ｂ）に示すように、テープ媒体３００の長手方向に沿って配列された複数のデータトラック３１５を有する。データタトラック３１５は、テープ媒体３００の長手方向に沿って複数のデータセット３２０を有する。データセット３２０は、図２（ｃ）に示すように、上位装置２００から送られてきたユーザデータ３２５と管理情報ＤＳＩＴ３３０を有する。本実施形態に係るデータセット３２０はまた、上述したエラー訂正処理部１４５により計算されたＥＣＣ３３５が付加される。
【００４５】
図３は、本実施形態に係る制御部１５０の機能構成の一例を示した図である。上述したように本実施形態に係る制御部１５０は、通常のテープドライブ装置の制御部の機能に加え、上位装置２００との間のデータ転送効率の低下を防止しつつ、バックヒッチ回数の低減を図るために、テープ媒体３００の走行速度の調整機能を有する。そのような、走行速度調整機能を有する制御部１５０は、転送速度算出部４００と、モード選択部４０５と、走行速度設定部４１０と、所要時間取得部４１５と、閾値算出部４２０と、監視部４２５と、速度調整部４３０と、記憶部４３５と、バッファ４４０とを含む。
【００４６】
転送速度算出部４００は、上位装置２００とテープドライブ装置１００間のデータの転送速度である第１転送速度を算出する。データ書込み時における第１転送速度の算出は、一例として、単位時間ｔの間に通信インタフェース１０５において受信されるデータ量ｖからｖ/ｔとして求めてよい。これに代えて、テープドライブ装置１００が上位装置２００から受信したデータに圧縮処理を施す場合、転送速度算出部４００は、時間間隔ｔの間にバッファメモリ１１０に記憶された圧縮後のデータの量Ｖから、第１転送速度をＶ／ｔとして算出してもよい。あるいは、転送速度算出部４００は、単位時間ｔの間に通信インタフェース１０５において受信されるデータ量ｖと、圧縮率Ｃとを用いて、第１転送速度をｖ/Ｃ/ｔとして求めてもよい。
【００４７】
同様に、データ読出し時における第１転送速度の算出は、一例として、単位時間ｔの間に通信インタフェース１０５において送信されるデータ量ｖからｖ/ｔとして求めてよい。これに代えて、テープドライブ装置１００がテープ媒体３００から読み出したデータに伸張処理を施す場合、転送速度算出部４００は、時間間隔ｔの間にバッファメモリ１１０から圧縮・伸張部へ送られたデータの量Ｖから、第１転送速度をＶ／ｔとして算出してもよい。あるいは、転送速度算出部４００は、単位時間ｔの間に通信インタフェース１０５から送信されるデータ量ｖと、圧縮率Ｃとを用いて、第１転送速度をｖ/Ｃ/ｔとして求めてもよい。転送速度算出部４００により算出された第１転送速度は、後述するモード選択部４０５へ渡される。
【００４８】
モード選択部４０５は、バッファメモリ１１０とテープ媒体３００間のデータの転送速度である第２転送速度が第１転送速度より遅くなるような、走行部１３９に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度と、該第１走行速度よりも一段階速い走行速度である第２走行速度との間で走行速度を切り替える切替モード、及び、テープ媒体３００を走行させる際の速度を常に第２走行速度とする定速モードのうちバックヒッチ回数がより少なくなるモードを第１転送速度に応じて定めるモード選択テーブルを参照して、算出された第１転送速度に対応する調整モードを選択する。ここで、第２走行速度は、第２転送速度が第１転送速度より速くなるような、走行部１３９に設定可能な１以上の走行速度のうち、一番遅い走行速度でもあることに留意されたい。モード選択部４０５による選択結果は、転送速度算出部４００により算出された第１転送速度とともに、後述する走行速度設定部４１０、及び、切替モードが選択された場合は所要時間取得部４１５へ渡される。更に、モード選択部４０５による選択結果は、監視部４２５へ渡される。
【００４９】
ここで、図４及び図５を参照して、第１転送速度に応じて、バックヒッチ回数がより少なくなるテープ媒体３００の走行速度の調整モードが異なることを説明する。図４及び図５は、上位装置２００との間の転送速度ごとのバックヒッチ回数を示す図である。いずれの図においても、横軸は、上位装置２００とテープドライブ装置１００間のデータ転送速度である第１転送速度を示し、縦軸は一定期間内のバックヒッチの回数を示す。また、図中、点線は、テープ媒体３００の走行速度を第２走行速度に保つ定速モードに固定してテープドライブ装置１００を動作させた場合のデータを示す。一点鎖線は、テープ媒体３００の走行速度をバッファメモリ１１０の監視結果に応じて第１走行速度と第２走行速度との間で適宜切り替える切替モードに固定してテープドライブ装置１００を動作させた場合のデータを示す。
【００５０】
図４をみると、第１転送速度によって、バックヒッチの回数がより少ない調整モードが、定速モードと切替モードとの間で入れ替わっているのが分かる。例えば、３１．２ＭＢ／ｓから３４．８ＭＢ／ｓまでは、切替モードのほうがバックヒッチの回数が少ない。一方、３４．８ＭＢ／ｓから４８ＭＢ／ｓまでは、定速モードのほうがバックヒッチの回数が少ない。そこで本発明では、第１転送速度に応じて、バックヒッチ回数がより少なくなる方の調整モードを選択する構成を採用する。本発明に係るテープドライブ装置１００のデータが、図４において実線で示される。本発明を適用することで、定速モードで動作させるテープドライブ装置１００では第１転送速度が３１．２ＭＢ／ｓの時にバックヒッチの回数が２７回であったものを、０回に減らすことができる。また、第１転送速度が３１．２ＭＢ／ｓ〜４９ＭＢ／ｓの間のバックヒッチ回数のピーク値は、定速モードで動作させるテープドライブ装置１００では２７回であり、また、切替モードで動作させるテープドライブ装置１００では２５回であるが、本発明を適用することで、このピーク値を２２回に減らすことができる。但し、図４に示されるように、第１転送速度が４９ＭＢ／ｓ以上では、バックヒッチの回数は常に定速モードのほうが少ない。
【００５１】
図５は、図４に示すデータを取得したテープドライブ装置１００のバッファメモリ１１０よりも容量の大きいバッファメモリ１１０を備えるテープドライブ装置１００を用いて得られたデータを示す。図５を見ると、第１転送速度が３０ＭＢ／ｓから１６０ＭＢ／ｓの間で、バックヒッチ回数がより少なくなる調整モードが、定速モードと切替モードとの間で繰り返し入れ替わっているのが分かる。そこで本発明を適用することにより、第１転送速度が３０ＭＢ／ｓから１１０ＭＢ／ｓの間に見られる３つのバックヒッチ回数のピーク値をいずれも半減させることができる。このように、本発明を適用することで、バックヒッチ回数の低減を図ることが可能となるが、その効果の程度は、テープドライブ装置１００が備えるバッファメモリ１１０の容量にも依存する。
【００５２】
なお、モード選択部４０５が参照するモード選択テーブル４３６は、後述する記憶部４３５に予め格納される。そこで次に、記憶部４３５に格納されるモード選択テーブル４３６の作成方法について説明する。上述したように、モード選択テーブル４３６は、切替モードと定速モードのうち、バックヒッチ回数がより少なくなるモードを第１転送速度に応じて定めるテーブルである。  図６（ａ）は、モード選択テーブル４３６の一例を示す。図６（ａ）に示すモード選択テーブル４３６は、ある幅をもつ第１転送速度ごと、選択すべき調整モードを対応付ける。図４に示すデータを例に説明すると、３１．２ＭＢ／ｓ以上３４．８ＭＢ／ｓ未満の第１転送速度には、切替モードに対応付け、３４．８ＭＢ／ｓ以上４８ＭＢ／ｓ未満の第１転送速度には、定速モードを対応付けるといった具合である。これに代えて、モード選択テーブルは、切替モード（又は定速モード）を選択すべき第１転送速度の範囲をリストしたものでもよい。
【００５３】
どのような形式のモード選択テーブル４３６であれ、モード選択テーブル４３６を作成するためには、バックヒッチ回数のより少ない調整モードが定速モードと切替モードとの間で入れ替わる、まさにその時の第１転送速度の値を求める必要がある。そのような第１転送速度の値は、１つは、図４や図５において、点線と一点鎖線が交わるときの第１転送速度Ｃ１、Ｃ２、…であり、１つは、バックヒッチ回数が０となるときの第１転送速度Ｅ１、Ｅ２、…である。第１転送速度Ｃ１、Ｃ２、…、及び、第１転送速度Ｅ１、Ｅ２、…、が求まると、例えば、第１転送速度Ｃ１以上第１転送速度Ｅ１未満の第１転送速度は定速モードに対応付け、第１転送速度Ｅ１以上第１転送速度Ｃ１未満の第１転送速度は切替モードに対応付けというように、以下同様にしてモード選択テーブル４３６を作成できる。
【００５４】
そこで、第１転送速度Ｃ１、Ｃ２、…、を求めることを考える。最初に、第１転送速度をV1、第１走行速度Vcに対応する第２転送速度をV2(Vc)、第２走行速度Vnに対応する第２転送速度をV2(Vn)、バッファメモリ１１０の容量をVb、データトラック３１５一本の容量をVｔ、走行速度を切り替える間にバッファメモリ１１０から読み出される、又は書き込まれる容量をVaとする。なお、データ書き込み又は読み出し中、第１転送速度V1は一定であるとする。
【００５５】
まず定速モードにおけるバックヒッチ回数を求める。データの読み出し時を例にすると、定速モードでは、第２走行速度Vnで走行するテープ媒体３００は、バッファメモリ１１０が一杯になると停止し、停止した状態でバッファメモリ１１０が空になるのを待つ。そのため、定速モードでは、１サイクル、即ち、バッファメモリ１１０が一杯になるまでの時間Vb/(V2(Vn)-V1)と、一杯になったバッファメモリ１１０が空になるまでの時間Vb/ V1とを足した時間の間に、テープ媒体３００の走行停止によるバックヒッチが１回発生する。よって、定速モードにおける、１本のデータトラック３１５を読み出すのにかかる時間(Vｔ/V1)内に発生するバックヒッチの回数Ｘは、次式より求められる。
X=(Vｔ/V1)/(Vb/(V2(Vn)-V1)+ Vb/ V1)-(1)
【００５６】
次に切替モードにおけるバックヒッチ回数を求める。同様にデータの読み出し時を例にすると、切替モードでは、第２走行速度Vnで走行するテープ媒体３００は、バッファメモリ１１０が一杯になると走行速度を第１走行速度Vcに切り替える。そして第１走行速度Vcで走行するテープ媒体３００は、バッファメモリ１１０が空になる少し手前、即ちバッファメモリ１１０の容量がVb-Vaになった時点で、走行速度を第２走行速度Vnに切り替える。そのため、切替モードでは、１サイクル、即ち、バッファメモリ１１０が一杯になるまでの時間Vb/(V2(Vn)-V1)と、一杯になったバッファメモリ１１０がほぼ空になるまでの時間(Vb- Va)/ (V1-V2(Vc))とを足した時間の間に、テープ媒体３００の走行速度切替によるバックヒッチが２回発生する。よって、切替モードにおける、１本のデータトラック３１５を読み出すのにかかる時間(Vｔ/V1)内に発生するバックヒッチの回数Ｘは、次式より求められる。
X=2*(Vｔ/V1)/(Vb/(V2(Vn)- V1)+ (Vb-Va)/ (V1- V2(Vc)))-(2)
【００５７】
なお、本発明に係るテープドライブ装置１００は、バッファメモリ１１０に格納されるデータの容量が、走行速度を切り替える間にバッファメモリ１１０から読み出されるであろう容量Vaになるタイミングで、第１走行速度Vcから第２走行速度Vnへ走行速度を切り替える。これにより本発明に係るテープドライブ装置１００は、上位装置２００との間のデータ転送効率の低下を防止する。容量Vaの算出方法の詳細は後述するが、当然ながら容量Vaは、第１転送速度に比例する。
【００５８】
最終的に求めるべき、バックヒッチ回数が少ない調整モードが切り替わるまさにその時の第１転送速度Ｃ１、Ｃ２、…は、上式（１）と（２）の右辺がそれぞれ等しいとして計算することにより求められる。ところで、第１転送速度と第２転送速度とが等しくなるような走行速度を設定可能であれば、バックヒッチは発生しない。従って、もう１つの求めるべき第１転送度Ｅ１、Ｅ２、…は、次のようにして求められる。切替モードにおいては、第１転送速度V1が、第１走行速度Vcに対応する第２転送速度V2(Vc)、又は第２走行速度Vnに対応する第２転送速度V2(Vn)と等しくなるときにバックヒッチ回数が０となる。また定速モードにおいては、第１転送速度V1が、第２走行速度Vnに対応する第２転送速度V2(Vn)に近づくにつれて、バックヒッチ回数も０に近づく。
【００５９】
ところで、バックヒッチ回数Ｘを求める上式（１）及び（２）は、第１転送速度V1は一定であるとの前提の下成り立つ式である。そこで次に、第１転送速度V1が一定でない場合に、バックヒッチ回数Ｘを求めることを考える。最初に、第１転送速度V1が、データトラック３１５の先頭での第１転送速度V1_1から、データトラック３１５の末尾での第１転送速度V1_2まで一様に変化する場合を考える。この場合、データトラック３１５一本を読み出すのにかかる時間ＴはVt/((V1_1+V1_2)/2)である。そこで、上式（１）及び（２）においてV1が時間ｔによって変動する関数V1(t)であると考えて、ｔが0から上記Ｔの範囲で、上式（１）及び（２）をそれぞれ丸ごと積分する。結果、速度が一様に変化する場合のバックヒッチ回数Ｘが求まる。あとは、第１転送速度V1は一定であるとした場合と同様の方法で、バックヒッチ回数が少ない調整モードが切り替わるまさにその時の第１転送速度を求めることができる。  
【００６０】
第１転送速度V1が一様に変動する場合であれば、第１転送速度V1が徐々に変動する場合も急激に変動する場合も違いはない。但し、第１転送速度V1の変動により、第１走行速度Vcと第２走行速度Vnが変わる場合は、第１走行速度Vcと第２走行速度Vnも、時間ｔによって変動する関数Vc(t)、Vn(t)であると考えて、上式（１）及び（２）をそれぞれ丸ごと積分する必要がある。例えば、時刻txで第１転送速度V1が第２転送速度V2(Vn)より大きくなるとすると、0≦t＜txでは、Vn(t)は変動前の第２走行速度Vnを返し、tx≦t＜Ｔでは、Vn(t)は変動前の第２走行速度Vnよりも一段階速い走行速度を返すとして積分する。
【００６１】
第１転送速度V1が一定の幅を持って大きくなったり小さくなったりする場合も、第１転送速度V1が一様に変化する場合と同様の方法により、バックヒッチ回数が少ない調整モードが切り替わるまさにその時の第１転送速度を求めることができる。但しこの場合、データトラック３１５一本を読み出すのにかかる時間ＴはVｔ/V1となる。
【００６２】
このように、第１転送速度V1が一定であるか否かに関わらず、モード選択テーブル４３６を作成することが可能である。第１転送速度V1が一定でない場合にも対応するテープドライブ装置１００では、記憶装部４３５は、第１転送速度V1が一定である場合、第１転送速度V1が一様に変化する場合、第１転送速度V1が一定の幅で変化する場合のそれぞれについてのモード選択テーブル４３６を格納する。そして、転送速度算出部４００は、第１転送速度V1を定期的に算出し、その履歴から今後の第１転送速度V1の変化を予測する。転送速度算出部４００より予測結果を受け取ったモード選択部４０５は、予測結果に基づき適切なモード選択テーブル４３６を選択し、該モード選択テーブル４３６を参照して、算出された第１転送速度に対応する調整モードを選択する。
【００６３】
記憶装置４３５は、図１に示すＲＯＭ１５６により実現され、上述したモード選択テーブル４３６の他に、対応テーブル４３７及び所要時間テーブル４３８を予め記憶する。対応テーブル４３７は、走行部１３９に設定可能な複数段階の走行速度の各々を、該走行速度が走行部１３９に設定された際の第２転送速度に関連付けるテーブルである（図６（ｂ）参照）。テープドライブ装置１００では、データの書込みや読出しは、読書きヘッド１２０をテープ媒体３００に対して相対的に移動させることにより行われる。従って、第２転送速度は、テープ媒体３００の走行速度に比例し、テープ媒体３００の走行速度を調整することによって調整可能である。
【００６４】
なお、上述したように本実施例に係る制御部１５０は、データ書込み時には管理情報付加部としても機能し、バッファメモリ１１０に記憶された各セグメントのデータに対し、ＤＳＩＴ３３０を作成する。また、本実施例に係るテープドライブ装置１１０はエラー訂正処理部１４５を有し、エラー訂正処理部１４５は、データ書込み時において、バッファメモリ１１０に記憶された各セグメントのデータに対し、エラー訂正情報ＥＣＣ３３５を付加する。同様にエラー訂正処理部１４５は、データ読出し時において、バッファメモリ１１０に記憶された各セグメントのデータに対し、エラー訂正情報ＥＣＣ３３５を用いたエラー訂正処理を行う。
【００６５】
従って、時間間隔ｔの間に、管理情報付加部としての制御部１５０による処理及びエラー訂正処理部１４５による処理を完了して、バッファメモリ１１０からテープ媒体３００へ転送されたデータ量ＶからＶ／ｔとして求めた値を、対応テーブル４３７に記録する第２転送速度として使用してもよい。同様に、時間間隔ｔの間に、テープ媒体３００からバッファメモリ１１０に読み出され、かつエラー訂正処理部１４５による処理を完了したデータ量ＶからＶ／ｔとして求めた値を、対応テーブル４３７に記録する第２転送速度として、使用してもよい。この場合、後述する速度調整部４３０による走行速度の調整をより正確に行うことが可能となる。但し、エラー訂正処理はハードウェアによって実行されるため、その処理にかかる時間は無視しても問題ない。一方、マイクロコードによって実行される管理情報付加の処理は一定の時間を要する。しかし、圧縮・伸張処理、エラー訂正処理、管理情報付加処理を含むデータ読出し、書込みの一連の処理は、データセット単位でパイプライン方式により平行して行われるため、いずれかの処理がボトルネックになることはなく、これら処理にかかる時間を無視しても問題はない。
【００６６】
所要時間テーブル４３８は、第１走行速度から該第１走行速度よりも一段階速い第２走行速度へ切り替えるのに要する所要時間を、第１走行速度及び第２走行速度に関連付けるテーブルである（図６（ｃ）参照）。走行速度切り替えのための所要時間は、テープ媒体３００の走行を一旦止めるのに要する時間、位置合わせのためにテープ媒体３００を巻き戻すのに要する時間、及びテープ媒体の走行方向を元の走行方向へ戻し、かつ第２走行速度へ変更するのに要する時間を含む。
【００６７】
図７を参照して、所要時間テーブル４３８に格納される所要時間の算出方法を具体的に説明する。図７は、走行速度を、第１走行速度Ｖｃから該走行速度よりも一段階速い第２走行速度Ｖｎへ変更するまでの、読書きヘッド１２０のテープ媒体３００上の軌跡を示す図である。矢印（１）は、走行速度Ｖｃで走行中のテープ媒体３００が減速を開始してから一旦停止するまでの軌跡である。矢印（１）の移動に要する時間ｔ１は、加速度をＡとすると、ｔ１＝Ｖｃ／Ａである。矢印（２）は、テープ媒体３００が停止した後巻き戻しのために進行方向とは逆方向へ進み、その後テープ媒体３００の走行速度が速度Ｖｂになるまでの軌跡である。矢印（２）の移動に要する時間ｔ２は、加速度をＡとすると、ｔ２＝Ｖｂ／Ａである。矢印（３）は、テープ媒体３００が速度Ｖｂで走行し、読書きヘッド１２０が減速開始時の位置Ｐに戻るまでの軌跡である。矢印（３）の移動に要する時間ｔ３は、加速度をＡとすると、ｔ３＝｛（Ｖｃ／２）＊（Ｖｃ／Ａ）−（Ｖｂ／２）＊（Ｖｂ／Ａ）｝／Ｖｂである。
【００６８】
矢印（４）は、目標の走行速度Ｖｎで走行するテープ媒体３００の走行が安定した後に読書きヘッド１２０が書込み又は読出し開始位置Ｑに辿り付くために、テープ媒体３００を速度Ｖｂで走行させ、調整に必要な距離を巻き戻すまで軌跡である。矢印（４）の移動に要する時間を、時間ｔ４とする。なお、読み出し開始位置Ｑは、常に減速開始位置Ｐよりも手前となる。これは、減速が必要であると判断されてから、実際に減速を開始するまでにタイムラグがあること、また、読み出しは、減速が必要であると判断された時点の位置又はその若干手前より開始されるからである。一方、書き込み開始位置Ｑは、減速開始位置Ｐよりも手前となるとは限らない。これは、実際に減速を開始するまでにタイムラグがあることは書き込み時でも同様であるが、書き込みは、減速が必要であると判断された時点の位置の少し先から開始されるからである。但しその位置は、実測により一定の傾向を掴むことができる。
【００６９】
矢印（５）は、逆方向に速度Ｖｂで進むテープ媒体３００を止め、その後テープ媒体３００の走行速度が進行方向に速度Ｖｎになるまでの軌跡である。矢印（５）の移動に要する時間ｔ５は、加速度をＡとすると、ｔ5＝Ｖｎ／Ａ＋Ｖｂ／Ａである。矢印（６）は、走行速度Ｖｎで走行するテープ媒体３００の走行が安定するまでの軌跡である。矢印（６）の移動に要する時間を、時間ｔ６とする。
【００７０】
以上より、最終的に所要時間Ｔｒは、式Ｔｒ＝Ｖｃ／Ａ＋Ｖｂ／Ａ＋｛（Ｖｃ／２）＊（Ｖｃ／Ａ）−（Ｖｂ／２）＊（Ｖｂ／Ａ）｝／Ｖｂ＋ｔ４＋Ｖｎ／Ａ＋Ｖｂ／Ａ＋ｔ６により求められる。なお、減速及び加速時の加速度Ａの絶対値は常に同じであり、本実施例に係るテープドライブ装置１００では、ハードウェア に実装されているモータ１３５が出せるトルクとテープ媒体３００の質量、半径を基に実施可能な範囲の加速度Ａが定義され使用されているものとする。また、ｔ６の値は、テープドライブ装置１００の安定挙動の観点から定義される固定値であり、テープ媒体３００が定速走行を開始した後サーボトラックから十分な情報を得て、該情報を基に読書き部１２０の位置の調整が完了するまでの時間を勘案して定められる。本実施例では、加速度Ａ及びｔ６の各値は、予め記憶部４３５に記憶されるものとする
【００７１】
一方、ｔ４の値は、図７において、矢印（４）の距離と、矢印（５）のうちの逆方向に進んだ距離とを足したものが、減速開始位置Ｐと書込み又は読出し開始位置Ｑとの差に相当する距離ｓと、矢印（５）のうち順方向に進んだ距離と、矢印（６）の距離とを足したものに等しいとすることにより、Ｖｂを用いて表現することができる（加速度Ａ、時間ｔ６は、上述したように予め定められる値であり既知とする）。また、Ｖｂの値は、一例として、バックヒッチのパフォーマンスをよくするために、所要時間Ｔｒを求める上式の右辺が最小になるようなＶｂとして求めることができる。ｔ４はＶｂを用いて表すことができるので、Ｖｂが求まることでｔ４も求まる。このように、走行部１３９に設定可能な走行速度ごとに、第１走行速度から第２走行速度への切り替えに要する所要時間を予め計算しておき、所要時間テーブル４３８として記憶部４３５に予め格納しておく。
【００７２】
走行速度設定部４１０は、モード選択部４０５による切替モードの選択に応答して、データ書込み開始時及びデータ読出し開始時において、走行部１３９に設定可能な複数の走行速度から所定の走行速度を選択し、選択した走行速度を走行部１３９に設定する。ここで所定の走行速度とは、データ書込み開始時は第１走行速度である。また、データ読出し開始時は、所定の走行速度とは第２走行速度である。また、走行速度設定部４１０は、定速モードの選択に応答して、データ書込み又はデータ読込みいずれの場合であってもその開始の際、第２走行速度を走行部１３９に設定する。走行速度設定部４１０は、モード選択部４０５から、モードの選択結果と第１転送速度の値を受け取ると、一例として、対応テーブル４３７を参照して、受け取った第１転送速度に対応する現在の第１走行速度及び第２走行速度を決定し、上述した所定の走行速度を決定する。なお、走行速度設定部４１０は、決定した現在の第１走行速度及び第２走行速度４４１を、図１に示すＲＡＭ１５４により実現されるバッファ４４０に格納する。
【００７３】
所要時間取得部４１５は、モード選択部４０５による切替モードの選択に応答して、テープ媒体３００の走行速度を、第１走行速度から該第１走行速度よりも一段階速い第２走行速度へ切り替えるのに要する所要時間を所要時間テーブル４３８から取得する。なお、所要時間取得部４１５は、現在の第１走行速度及び第２走行速度の各値を、バッファ４４０から取得する。所要時間取得部４１５より取得された所要時間は、モード選択部４０５から受け取った第１転送速度の値とともに、後述する閾値算出部４２０へ渡される。
【００７４】
閾値算出部４２０は、データ書込み時には、所要時間取得部４１５から受け取った第１転送速度と所要時間とから、走行速度を切り替える間に上位装置２００から受信すると考えられるデータの量、即ち第１転送速度に所要時間を掛けた値を第１閾値として算出する。同様に、閾値算出部４２０は、データ読出し時には、所要時間取得部４１５から受け取った第１転送速度と所要時間とから、走行速度を切り替える間に上位装置２００へ送信すると考えられるデータの量、即ち第１転送速度に所要時間を掛けた値を第２閾値として算出する。閾値算出部４２０により算出された第１閾値及び第２閾値は、後述する監視部４２５へ渡される。
【００７５】
監視部４２５は、切替モードにおいて、第１走行速度でデータを書込み中に、バッファメモリ１１０に記憶可能なデータの空き容量を監視し、該空き容量が閾値算出部４２０から受け取った第１閾値と等しくなった場合に第１切替通知を出力する。監視部４２５はまた、切替モードにおいて、第２走行速度でデータを書込み中に、バッファメモリ１１０に記憶可能なデータの空き容量がバッファメモリ１１０の本来のサイズに等しくなった場合に、更に第２切替通知を出力する。
【００７６】
同様に、監視部４２５は、切替モードにおいて、第１走行速度でデータを読出し中に、バッファメモリ１１０に記憶されているデータの容量を監視し、該容量が閾値算出部４２０から受け取った第２閾値と等しくなった場合に第１切替通知を出力する。監視部４２５はまた、切替モードにおいて、第２走行速度でデータを読出し中に、バッファメモリ１１０に記憶されているデータの容量がバッファメモリ１１０の本来のサイズに等しくなった場合に、更に第２切替通知を出力する。
【００７７】
監視部４２５はまた、定速モードにおいて、第２走行速度でデータを書込み中に、バッファメモリ１１０に記憶可能なデータの空き容量がバッファメモリ１１０の本来のサイズに等しくなった場合に、第３切替通知を出力する。そして監視部４２５は、定速モードにおいて、バッファメモリ１１０に記憶されているデータの容量がバッファメモリ１１０の本来のサイズに等しくなった場合に、更に第４切替通知を出力する。
【００７８】
同様に、監視部４２５は、定速モードにおいて、第２走行速度でデータを読出し中に、バッファメモリ１１０に記憶されているデータの容量がバッファメモリ１１０の本来のサイズに等しくなった場合に、第３切替通知を出力する。そして監視部４２５は、定速モードにおいて、バッファメモリ１１０に記憶可能なデータの空き容量がバッファメモリ１１０の本来のサイズに等しくなった場合に、第４切替通知を出力する。
【００７９】
速度調整部４３０は、データ書込み時及びデータ読出し時において、第１切替通知に応答して、読書きヘッド１４０の動作を中止させて、走行部１３９に第２走行速度を設定する。また、速度調整部４３０は、データ書込み時及びデータ読出し時において、第２切替通知に応答して、読書きヘッド１４０の動作を中止させて、走行部１３９に第１走行速度を設定する。速度調整部４３０は更に、データ書込み時及びデータ読出し時において、第３切替通知に応答して、読書きヘッド１４０の動作を中止させる。また、速度調整部４３０は、データ書込み時及びデータ読出し時において、第４切替通知に応答して、走行部１３９に第２走行速度を設定する。なお、速度調整部４３０は、現在の第１走行速度及び第２走行速度の各値を、バッファ４４０から取得する。
【００８０】
図８は、切替モードでデータを書き込む際の、速度調整部４３０による走行速度切り替え時のバッファメモリ１１０の状態を示す図である。図８において、矩形はバッファメモリ１１０の記憶容量を示し、斜線部は、データがまだ記憶されていない空き容量を示す。上述したように、切替モードにおいてデータの書込みを開始する場合、テープドライブ装置１００には、上位装置２００との間の転送速度よりもテープ媒体３００との間の転送速度のほうが遅くなるような第１走行速度が設定される。そのため、データ書込み当初は、バッファメモリ１１０には、上位装置２００から送られたデータが溜まっていく。そこで、速度調整部４３０は、図８（ａ）に示すように、バッファメモリ１１０の空き容量が、走行速度切り替え中に上位装置２００から受信すると考えられるデータの量に等しくなるタイミングで、走行速度を一段階速い第２走行速度へ切り替える。
【００８１】
ここで一段階速い第２走行速度とは、上述したように、上位装置２００との間の転送速度よりもテープ媒体３００との間の転送速度のほうが速くなるような走行速度である。そのため第２走行速度に切り替えた後は、バッファメモリ１１０に溜まっていたデータが次々とテープ媒体３００に書き出されていく。そこで、速度調整部４３０は、図８（ｂ）に示すように、バッファメモリ１１０の空き容量が、バッファメモリ１１０の本来の容量に等しくなるタイミングで、走行速度を一段階遅い速度、即ち第１走行速度へ切り替える。このように本発明に係るテープドライブ装置１００は、切替モードにおいて、テープ媒体３００の走行速度を、第１走行速度と第２走行速度の間で繰り返し切り替えることにより、上位装置２００との間のデータ転送効率の低下を防止する。
【００８２】
図９は、切替モードでデータを読み出す際の、速度調整部４３０による走行速度切り替え時のバッファメモリ１１０の状態を示す図である。図９において、矩形はバッファメモリ１１０の記憶容量を示し、斜線部は、まだデータが記憶されていない空き容量を示す。上述したように、切替モードにおいてデータの読出しを開始する場合、テープドライブ装置１００には、上位装置２００との間の転送速度よりもテープ媒体３００との間の転送速度のほうが速くなるような第２走行速度が設定される。そのため、データ読出し当初は、バッファメモリ１１０には、テープ媒体３００から読み出されたデータが溜まっていく。そこで、速度調整部４３０は、図９（ａ）に示すように、バッファメモリ１１０に記憶されているデータの容量が、バッファメモリ１１０の本来の容量に等しくなるタイミングで、走行速度を一段階遅い第１走行速度へ切り替える。
【００８３】
ここで一段階遅い第１走行速度とは、上述したように、上位装置２００との間の転送速度よりもテープ媒体３００との間の転送速度のほうが遅くなるような走行速度である。そのため第１走行速度に切り替えた後は、バッファメモリ１１０に溜まっていたデータが次々と上位装置２００へ送信されていく。そこで、速度調整部４３０は、図９（ｂ）に示すように、バッファメモリに記憶されているデータの容量が、走行速度切り替え中に上位装置２００へ送信すると考えられるデータの量に等しくなるタイミングで、走行速度を一段階速い第２走行速度へ切り替える。このように本発明に係るテープドライブ装置１００は、切替モードにおいて、テープ媒体３００の走行速度を、第１走行速度と第２走行速度の間で繰り返し切り替えることにより、上位装置２００との間のデータ転送効率の低下を防止する。
【００８４】
次に、図１０及び図１１のフローチャートを参照して、本実施形態に係るテープドライブ装置１００の走行速度調整のための動作を説明する。図１０は、データ書込み時において、テープドライブ装置１００において実行される速度調整処理の流れの一例を示す。図１０において、処理はデータ書込み開始により開始し、テープドライブ装置１００は、上位装置２００との間のデータの転送速度、即ち第１転送速度を算出する（ステップ７００）。次に、テープドライブ装置１００は、テープ媒体３００の走行速度の調整モードの判定を行う（ステップ７０５）。そしてテープドライブ装置１００は、ステップ７１０において、判定されたモードが切替モードであるか否か判定する。
【００８５】
定速モードと判定した場合（ステップ７１０：ＮＯ）、テープドライブ装置１００は、従来の定速モードに従って、テープ媒体３００の走行速度の調整を行う（ステップ７１５）。即ち、テープドライブ装置１００は、テープ媒体３００を走行させるときは、第２転送速度が第１転送速度よりも速くなるような、テープドライブ装置１００に設定可能な１以上の走行速度のうち、一番遅い走行速度である第２走行速度で常に走行させ、バッファメモリ１１０が空になったらバッファメモリ１１０がデータで満杯になるまでテープ媒体３００を停止させる。テープドライブ装置１００は、かかる一連の処理を、データ書込みが終了するまで繰り返す。一方、切替モードと判定した場合（ステップ７１０：ＹＥＳ）、テープドライブ装置１００は、第２転送速度が第１転送速度よりも遅くなるような、テープドライブ装置１００に設定可能な１以上の走行速度のうち、一番速い走行速度である第１走行速度を（ステップ７２０）。
【００８６】
次にテープドライブ装置１００は、現在の走行速度、即ち第１走行速度から該第１走行速度よりも一段階速い走行速度である第２走行速度へ切り替えるのに要する所要時間を取得する（ステップ７２５）。そして、テープドライブ装置１００は、第１転送速度と求めた所要時間とに基づいて、走行速度を第１走行速度から第２走行速度へ切り替える間に、上位装置２００から受信すると考えら得るデータの量を閾値として算出する（ステップ７３０）。
【００８７】
テープドライブ装置１００は、第１走行速度でデータをテープ媒体３００に書き込むのと平行して、バッファメモリ１１０に記憶可能なデータの空き容量を監視する（ステップ７３５）。そして、テープドライブ装置１００は、空き容量が閾値に等しいか否か判定する（ステップ７４０）。空き容量が閾値に等しくない場合（ステップ７４０：ＮＯ）、処理はステップ７３５に戻って、テープドライブ装置１００は、バッファメモリ１１０の監視を続ける。
【００８８】
一方、ステップ７４０において空き容量が閾値に等しくなった場合、テープドライブ装置１００は、テープ媒体３００の走行速度を、現在の走行速度より一段階速い第２走行速度へ切り替える（ステップ７４５）。速度切替後、テープドライブ装置１００は引き続きバッファメモリ１１０を監視し（ステップ７５０）、バッファメモリ１１０の空き容量がバッファメモリ１１０の本来のサイズに等しいか否か判定する（ステップ７５５）。
【００８９】
空き容量がバッファメモリ１１０のサイズに等しくない場合（ステップ７５５：ＮＯ）、処理はステップ７５０に戻り、テープドライブ装置１００はバッファメモリ１１０の監視を続ける。一方、空き容量がバッファメモリ１１０のサイズに等しくなった場合（ステップ７５５：ＹＥＳ）、テープドライブ装置１００は、テープ媒体３００の走行速度を、現在の走行速度より一段階遅い第１走行速度へ切り替える（ステップ７６０）。そして、処理はステップ７３５へ戻り、テープドライブ装置１００は、ステップ７３５乃至ステップ７６０の一連の処理を、データ書込みが終了するまで繰り返す。
【００９０】
図１１は、データ読出し時において、テープドライブ装置１００において実行される速度調整処理の流れの一例を示す。図１１において、処理はデータ読出し開始により開始し、テープドライブ装置１００は、上位装置２００との間のデータの転送速度、即ち第１転送速度を算出する（ステップ８００）。次に、テープドライブ装置１００は、テープ媒体３００の走行速度の調整モードの判定を行う（ステップ８０５）。そしてテープドライブ装置１００は、ステップ８１０において、判定されたモードが切替モードであるか否か判定する。
【００９１】
定速モードと判定した場合（ステップ８１０：ＮＯ）、テープドライブ装置１００は、従来の定速モードに従って、テープ媒体３００の走行速度の調整を行う（ステップ８１５）。即ち、テープドライブ装置１００は、テープ媒体３００を走行させるときは、第２転送速度が第１転送速度よりも速くなるような、テープドライブ装置１００に設定可能な１以上の走行速度のうち、一番遅い走行速度である第２走行速度で常に走行させ、バッファメモリ１１０がデータで満杯になったらバッファメモリ１１０が空になるまでテープ媒体３００を停止させる。テープドライブ装置１００は、かかる一連の処理を、データ書込みが終了するまで繰り返す。一方、切替モードと判定した場合（ステップ８１０：ＹＥＳ）、テープドライブ装置１００は、テープ媒体３００との間のデータの転送速度、即ち第２転送速度が第１転送速度よりも速くなるような、テープドライブ装置１００に設定可能な１以上の走行速度のうち、一番遅い走行速度である第２走行速度を走行部１３９に設定する（ステップ８２０）。
【００９２】
次にテープドライブ装置１００は、現在の走行速度、即ち第２走行速度よりも一段階遅い走行速度である第１走行速度について、テープ媒体３００の走行速度を第１走行速度から第２走行速度へ切り替えるのに要する所要時間を取得する（ステップ８２５）。そして、テープドライブ装置１００は、第１転送速度と求めた所要時間とに基づいて、走行速度を第１走行速度から第２走行速度へ切り替える間に、上位装置２００へ送信すると考えら得るデータの量を閾値として算出する（ステップ８３０）。
【００９３】
次にテープドライブ装置１００は、第２走行速度でデータをテープ媒体３００から読み出すのと平行して、バッファメモリ１１０に記憶されているデータの占有容量を監視する（ステップ８３５）。そして、テープドライブ装置１００は、占有容量がバッファメモリ１１０の本来のサイズに等しいか否か判定する（ステップ８４０）。占有容量がバッファメモリ１１０のサイズに等しくない場合（ステップ８４０：ＮＯ）、処理はステップ８３５に戻って、テープドライブ装置１００は、バッファメモリ１１０の監視を続ける。
【００９４】
一方、ステップ８４０において占有容量がバッファメモリ１１０のサイズに等しくなった場合、テープドライブ装置１００は、テープ媒体３００の走行速度を、現在の走行速度より一段階遅い第１走行速度へ切り替える（ステップ８４５）。速度切替後、テープドライブ装置１００は引き続きバッファメモリ１１０を監視し（ステップ８５０）、バッファメモリ１１０の占有容量が閾値に等しいか否か判定する（ステップ８５５）。
【００９５】
占有容量が閾値に等しくない場合（ステップ８５５：ＮＯ）、処理はステップ８５０に戻り、テープドライブ装置１００はバッファメモリ１１０の監視を続ける。一方、占有容量が閾値に等しくなった場合（ステップ８５５：ＹＥＳ）、テープドライブ装置１００は、テープ媒体３００の走行速度を、現在の走行速度より一段階速い第２走行速度へ切り替える（ステップ８６０）。そして、処理はステップ８３５へ戻り、テープドライブ装置１００は、ステップ８３５乃至ステップ８６０の一連の処理を、データ書込みが終了するまで繰り返す。
【００９６】
以上、実施形態を用いて本発明の説明をしたが、本発明の技術範囲は上記実施形態に記載の範囲には限定されない。例えば、本発明を適用するテープドライブ装置１００は、上位装置２００から送られてくるデータを暗号化した後テープ媒体３００に書き込み、また、テープ媒体３００から読み出したデータを復号した後、上位装置２００へ送信するものであってもよい。この場合、データ書込み時には、第１転送速度を、時間間隔ｔの間にバッファメモリ１１０に記憶された暗号化後のデータの量Ｖから、Ｖ／ｔとして算出してもよい。同様に、データ読出し時には、第１転送速度を、時間間隔ｔの間にバッファメモリ１１０から読み出され復号されたデータの量Ｖから、Ｖ／ｔとして算出してもよい。但し、データの暗号化・復号処理は、データの圧縮・伸張処理やエラー訂正処理と同様にハードウェアによって実行されるため、その処理にかかる時間は無視しても問題ない。このように上記の実施形態に、種々の変更または改良を加えることが可能であることが当業者に明らかである。従って、そのような変更または改良を加えた形態も当然に本発明の技術的範囲に含まれる。  
【図１】
2010004936.tif 000003
【図２】
2010004936.tif 000004
【図３】
2010004936.tif 000005
【図４】
2010004936.tif 000006
【図５】
2010004936.tif 000007
【図６】
2010004936.tif 000008
【図７】
2010004936.tif 000009
【図８】
2010004936.tif 000010
【図９】
2010004936.tif 000011
【図１０】
2010004936.tif 000012
【図１１】
2010004936.tif 000013
【国際調査報告】
2010004936.tif 000014
2010004936.tif 000015
2010004936.tif 000016
2010004936.tif 000017