記録装置、記録方法
【課題】リードアフターライトによりリライトされたデータが、再度リライトされるような非効率的な結果ができるだけ避けられるようにする。
【解決手段】複数の記録ヘッドごとに対応して磁気テープに形成される複数のトラックを、それぞれ所定数に分割した分割領域を設定し、この分割領域ごとのエラーレートを検出する。そして、この分割領域ごとのエラーレートの検出結果に基づいて、記録エラーの発生可能性が低いとされる分割領域を決定する。リライトすべきデータは、この決定された分割領域内に挿入するようにして記録データを作成し、この記録データを磁気テープに記録させるようにする。
【解決手段】複数の記録ヘッドごとに対応して磁気テープに形成される複数のトラックを、それぞれ所定数に分割した分割領域を設定し、この分割領域ごとのエラーレートを検出する。そして、この分割領域ごとのエラーレートの検出結果に基づいて、記録エラーの発生可能性が低いとされる分割領域を決定する。リライトすべきデータは、この決定された分割領域内に挿入するようにして記録データを作成し、この記録データを磁気テープに記録させるようにする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、テープ状記録媒体に対して情報記録を行う記録装置、記録方法に関するものである。
【背景技術】
【0002】
デジタルデータを、テープ状記録媒体の1種である磁気テープに記録/再生することのできる装置として、いわゆるテープストリーマドライブが知られている。このようなテープストリーマドライブは、メディアであるテープカセットのテープ長にもよるが、例えば数十〜数百ギガバイト程度の膨大な記録容量を有することが可能である。このため、コンピュータ本体のハードディスク等のメディアに記録されたデータをバックアップするなどの用途に広く利用されている。また、データサイズの大きい画像データ等の保存に利用する場合にも好適とされている。
【0003】
このようなテープストリーマドライブでは、回転ドラムに所定のラップ角で磁気テープを巻装させた状態でテープを走行させるとともに、回転ドラムを回転させて、回転ドラム上の磁気ヘッドを用いてヘリカルスキャン方式で記録/再生走査を行なうことで高密度記録を可能にしている。従って周知のように、磁気テープ上には、その長手方向に対して所定の傾き角度を有するようにして形成されるトラックが連続するようにしてデータが記録されていくことになる。
【0004】
ところで、上記したようなテープストリーマドライブにおいては、磁気テープに記録されるデータのフォーマットとして、例えば次のようにして規定されたものが知られている。
先ず、1つのトラックは、所定複数のブロック(Block)といわれるデータ(区分データ)が連続することにより形成される。このブロックはヘッダ及びこれに続くユーザデータとパリティのエリアとから成る。
また、グループという固定長のデータ単位が規定される。グループは、所定複数の連続するトラックに記録されるデータの集合により形成されるデータ単位であって、テープストリーマドライブにおけるデータの記録再生単位として扱われる。例えば記録時におけるエラー訂正符号の付加、又は再生時におけるエラー訂正処理は、このグループで完結するようになっている。
【0005】
また、このようなテープストリーマドライブでは、記録時においてリードアフターライト(RAW:Read After Write)という動作を実行するようにされている。RAWの手順としては、先ず、磁気テープへのデータの記録が正常に行われたか否かについて、例えばエラーレートなどの検出結果に基づいて判定する。このデータの記録が正常に行われたか否かについての判定は、例えばブロック単位で行うようにされている。そして、記録が正常に行われなかったとして記録エラーの判定結果が得られた場合には、リライトを行うようにされる。つまり、そのブロックのデータを、再度、別の位置に記録し直す。
【0006】
このRAWとしてのリライトの動作であるが、当初は、記録エラーと判定されたブロックのデータを含めた1トラック分のデータ単位で行うようにされていた。しかしながら、トラック単位によるリライトの動作では、リライトに伴ってダミーデータ(無効データ)として扱われる領域がトラック単位で生じる。このために、リライトにより、磁気テープにおける記録可能容量を相当に消費してしまうという問題を抱えていた。
【0007】
そこで、例えば特許文献1として示すようにして、RAWとしてのリライトの動作について、トラック単位で記録を行うのではなく、記録エラーであるとして判定されたブロックのみについて実行するようにした構成が先に提案されている。この場合、リライトすべきブロック単位のデータを含むトラックにおいて、リライトのデータ以外のブロックは、新規に記録すべきデータとなるようにされている。このようにしてリライトが行われることで、ダミーデータのトラックが生じないようにされるために、磁気テープの記録可能容量の大幅な節約が可能になる。また、特許文献1では、ブロック単位でのリライトを行うのにあたって、各ブロックが属するグループを特定するための仕組みも提供するようにしている。これにより、例えば或るグループを成すとされるリライトのデータ(ブロック)が、例えば磁気テープ上で、次のグループを形成するとされるブロック群の中に混在するような状態で記録されたとしても、データ読み出しに際して、ブロックの適正な論理的配列によってグループ単位のデータを形成できる。
【0008】
【特許文献1】特開2003−272311号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
ところで、上記したRAWの動作は、記録エラーであるとして判定されたデータを新たに書き直すまでにとどまっており、特に、書き直されるデータが記録エラーにならないようにするための配慮はされていない。このために、リライトにより書き直されたデータが再び記録エラーであると判定されて、さらにリライトが行われることになる可能性が相応の高さで存在する。
特許文献1の技術のようにして、ブロック単位によりデータを書き直すようにしてRAWを行うようにすれば、トラック単位でデータの書き直しを行う場合よりも、大幅に磁気テープの記録可能容量を節約できる。しかしながら、リライトしたデータが再びリライトされるような現象が或る程度以上発生すると、記録可能容量の節約効果が低減することになってしまい好ましくない。
そこで本発明としては、リライトしたデータが再びリライトされる可能性をできるだけ小さくして、記録可能容量の節約効果が有効に発揮されるようにすることを目的とする。
【課題を解決するための手段】
【0010】
そこで本発明は上記した課題を考慮して、記録装置として次のように構成する。
つまり、第1〜第nの記録ヘッドと、記録データとして、複数の区分データから成るトラック単位の記録データを形成するデータ形成手段と、このデータ形成手段により形成されたトラック単位の記録データを、第1〜第nの記録ヘッドによりテープ状記録媒体に対して記録していくもので、第1〜第nの記録ヘッドごとに対応した第1〜第nのヘッド対応トラックが循環的にテープ状記録媒体に形成されていくようにする記録手段と、この記録手段によりテープ状記録媒体に記録されたデータについて、再度記録すべきか否かの判定を、区分データを最小単位として行う再度記録判定手段と、テープ状記録媒体に記録されたデータのエラーレートを検出するのにあたり、第1〜第nのヘッド対応トラックから成る循環単位記録領域を、ヘッド対応トラック単位及び区分データ単位とに基づいて所定規則により分割した分割領域ごとのエラーレートを検出する領域エラーレート検出手段と、この領域エラーレート検出手段により検出された分割領域ごとのエラーレートに基づいて、再度記録判定手段により再度記録すべきこととした再度記録対象データについての、循環単位記録領域における記録位置を決定する記録位置決定手段と、この記録位置決定手段により決定された記録位置となるようにして、再度記録対象データを含むトラック単位の記録データがデータ形成手段により形成されるようにして制御する制御手段とを備えることとした。
【0011】
上記構成では、テープ状記録媒体に対するデータ(情報)の記録を、第1〜第nの記録ヘッドにより行うようにされている。つまり、複数の記録ヘッドを用いた記録を行う。そして、これら第1〜第nの記録ヘッドによるテープ状記録媒体への記録は、第1〜第nの記録ヘッドごとに対応する第1〜第nのヘッド対応トラックが循環的に形成されていくようにして行われるようにされている。また、1つのトラックは、複数の区分データにより形成され、テープ状記録媒体に記録されたデータについての再度記録は、上記区分データを最小単位として行うようにされる。
そのうえで、本願発明では、テープ状記録媒体上における上記第1〜第nのヘッド対応トラックから成るとされる領域を循環単位記録領域とし、さらに、この循環単位記録領域を、トラック単位及び区分データ単位とに基づいて所定規則により分割して分割領域とする。そして、この分割領域ごとのエラーレートを検出した結果に基づいて、再度記録すべきデータについての循環単位記録領域における記録位置を決定する。この記録位置決定は、分割領域のエラーレートの検出結果を基とするので、エラーレートが小さいとされる分割領域を考慮して記録位置を決定できる。これにより、再度記録したデータが記録エラーとなる可能性が低くなる。
【発明の効果】
【0012】
上記のようにして本願発明では、再度記録したデータについて、さらに再度記録される可能性を低くすることが可能となり、その分のテープ状記録媒体の記録可能容量の節約が有効に図られることになる。
【発明を実施するための最良の形態】
【0013】
図1は、本発明の実施の形態としての記録装置に対応するテープストリーマドライブの構成例を示している。
この図に示すテープストリーマドライブ10は、ここでは図示していないテープカセットの磁気テープ3に対して、ヘリカルスキャン方式により記録/再生を行うようにされている。
この図において回転ドラム11には、4つの記録ヘッドHR1、HR2、HR3、HR4と、同じく4つの再生ヘッドHW1、HW2、HW3、HW4が設けられる。
記録ヘッドHR1、HR2、HR3、HR4は、回転ドラム11において、90°の回転角となる関係で順次配置されるようになっている。アジマス角は、HR1、HR3の組が同じで、HR2、HR4の組が同じとされたうえで、HR1、HR3の組と、HR2、HR4の組との間では互いに異なる(逆アジマスとなる)ように設定されている。
また、再生ヘッドHW1、HW2、HW3、HW4も、回転ドラム11において、90°の回転角となる関係で順次配置されるようになっている。また、各再生ヘッドの回転角的な位置としては、再生ヘッドHW1が、記録ヘッドHR1、HR2の間に位置し、再生ヘッドHW2が、記録ヘッドHR2、HR3の間に位置し、再生ヘッドHW3が、記録ヘッドHR3、HR4の間に位置し、再生ヘッドHW4が、記録ヘッドHR4、HR1の間に位置するように配置される。
なお、これらの記録ヘッドによりテープ状記録媒体に形成されるトラック、及び再生ヘッドによるトラックの読み出しがどのようになるのかについては、後述する。
【0014】
回転ドラム11はドラムモータ14Aにより回転されると共に、テープカセットから引き出された磁気テープ3が巻き付けられる。また、磁気テープ3は、キャプスタンモータ14B及び図示しないピンチローラにより送られる。また磁気テープ3は上述したようにリール2A,2Bに巻装されているが、リール2A,2Bはそれぞれリールモータ14C、14Dによりそれぞれ順方向及び逆方向に回転される。
ローディングモータ14Eは、図示しないローディング機構を駆動し、磁気テープ3の回転ドラム11へのローディング/アンローディングを実行する。
イジェクトモータ28はテープカセットの装填機構を駆動するモータであり、挿入されたテープカセットの着座およびテープカセットの排出動作を実行させる。
【0015】
ドラムモータ14A、キャプスタンモータ14B、リールモータ14C、14D、ローディングモータ14E、イジェクトモータ28はそれぞれメカドライバ17からの電力印加により回転駆動される。メカドライバ17はサーボコントローラ16からの制御に基づいて各モータを駆動する。サーボコントローラ16は各モータの回転速度制御を行って通常の記録再生時の走行や高速再生時のテープ走行、早送り、巻き戻し時のテープ走行などを実行させる。
なおEEP−ROM18にはサーボコントローラ16が各モータのサーボ制御に用いる定数等が格納されている。
【0016】
サーボコントローラ16が各モータのサーボ制御を実行するために、ドラムモータ14A、キャプスタンモータ14B、Tリールモータ14C、Sリールモータ14DにはそれぞれFG(周波数発生器)が設けられており、各モータの回転情報が検出できるようにしている。即ちドラムモータ14Aの回転に同期した周波数パルスを発生させるドラムFG29A、キャプスタンモータ14Bの回転に同期した周波数パルスを発生させるキャプスタンFG29B、Tリールモータ14Cの回転に同期した周波数パルスを発生させるTリールFG29C、Sリールモータ14Dの回転に同期した周波数パルスを発生させるSリールFG29Dが形成され、これらの出力(FGパルス)がサーボコントローラ16に供給される。
【0017】
サーボコントローラ16はこれらのFGパルスに基づいて各モータの回転速度を判別することで、各モータの回転動作について目的とする回転速度との誤差を検出し、その誤差分に相当する印加電力制御をメカドライバ17に対して行うことで、閉ループによる回転速度制御を実現することができる。従って、記録/再生時の通常走行や、高速サーチ、早送り、巻き戻しなどの各種動作時に、サーボコントローラ16はそれぞれの動作に応じた目標回転速度により各モータが回転されるように制御を行うことができる。
また、サーボコントローラ16はインターフェイスコントローラ/ECCフォーマター22(以下、IF/ECCコントローラという)を介してシステム全体の制御処理を実行するシステムコントローラ15と双方向に接続されている。
【0018】
このテープストリーマドライブ10においては、データの入出力にSCSIインターフェイス20が用いられている。例えばデータ記録時にはホストコンピュータ40から、固定長のレコード(record)という伝送データ単位によりSCSIインターフェイス20を介して逐次データが入力され、SCSIバッファコントローラ26を介して圧縮/伸長回路21に供給される。SCSIバッファコントローラ26はSCSIインターフェイス20のデータ転送を制御するようにされている。SCSIバッファメモリ27はSCSIインターフェイス20の転送速度を得るために、SCSIバッファコントローラ26に対応して備えられるバッファ手段とされる。またSCSIバッファコントローラ26は、後述するリモートメモリインターフェイス30に対して所要のコマンドデータを供給するとともに、リモートメモリインターフェイス30に対する動作クロックの生成も行う。
なお、このようなテープストリーマドライブシステムにおいては、可変長のデータの集合単位によってホストコンピュータ40よりデータが伝送されるモードも存在する。
【0019】
圧縮/伸長回路21では、入力されたデータについて必要があれば、所定方式によって圧縮処理を施すようにされる。圧縮/伸長回路21の出力は、IF/ECCコントローラ22に供給されるが、IF/ECCコントローラ22においてはその制御動作によって圧縮/伸長回路21の出力をバッファメモリ23に一旦蓄積する。このバッファメモリ23に蓄積されたデータはIF/ECCコントローラ22の制御によって、最終的にグループ(Group)という磁気テープの40トラック分に相当する固定長の単位としてデータを扱うようにされ、このデータに対してECCフォーマット処理が行われる。
【0020】
ECCフォーマット処理としては、記録データについて誤り訂正コードを付加すると共に、磁気記録に適合するようにデータについて変調処理を行って、チャンネルエンコーダ/デコーダ13に供給する。チャンネルエンコーダ/デコーダ13では、入力されたデータについて、記録ヘッドに応じたチャンネル分配などの処理を実行して、チャンネルごとにRF処理部19に供給する。
RF処理部19では供給された記録データに対して増幅、記録イコライジング等の処理を施して記録信号を生成し、チャンネル振り分けに応じて、記録ヘッドHR1,HR2,HR3,HR4に供給する。これにより記録ヘッドHR1,HR2,HR3,HR4から磁気テープ3に対するデータの記録が行われることになる。
【0021】
また、データ再生動作について簡単に説明すると、磁気テープ3の記録データが再生ヘッドHR1,HR2,HR3,HR4によりRF再生信号として読み出され、その再生出力はRF処理部19からチャンネルエンコーダ/デコーダ13を介することで、再生イコライジング、再生クロック生成、2値化、デコード(例えばビタビ復号)などが行われる。
このようにして読み出された信号はIF/ECCコントローラ22に供給されて、まず誤り訂正処理等が施される。そしてバッファメモリ23に一時蓄積され、所定の時点で読み出されて圧縮/伸長回路21に供給される。
圧縮/伸長回路21では、システムコントローラ15の判断に基づいて、記録時に圧縮/伸長回路21により圧縮が施されたデータであればここでデータ伸長処理を行い、非圧縮データであればデータ伸長処理を行わずにそのままパスして出力される。
圧縮/伸長回路21の出力データはSCSIバッファコントローラ26、SCSIインターフェイス20を介して再生データとしてホストコンピュータ40に出力される。
【0022】
SRAM24,フラッシュROM25は、システムコントローラ15が各種処理に用いるデータが記憶される。
フラッシュROM25は、例えばシステムコントローラ15が各種処理に用いる、定数等をはじめとしたデータが記憶される。システムコントローラ15が実行すべきプログラムや、その他ファームウェアなどとしての各種データも記憶させることができる。
またSRAM24は、例えばMIC(リモートメモリチップ4、接触型メモリ104)から読み出されたデータ、MICに書き込むデータ、テープカセット単位で設定されるモードデータ、各種フラグデータなどを保持するメモリ領域として利用される。また、システムコントローラ15が演算結果などを一時保持させる作業領域としても利用することができる。
【0023】
なお、SRAM24,フラッシュROM25は、システムコントローラ15を構成するマイクロコンピュータの内部メモリとして構成してもよく、またバッファメモリ23の領域の一部をワークメモリとして用いる構成としてもよい。
【0024】
図1に示すように、テープストリーマドライブ10とホストコンピュータ40間は上記のようにSCSIインターフェイス20を用いて情報の相互伝送が行われるが、システムコントローラ15に対してはホストコンピュータ40がSCSIコマンドを用いて各種の通信を行うことになる。
なお、例えばIEEE1394インターフェイスなどをはじめ、SCSI以外のデータインターフェイスが採用されても構わない。
また、先に本出願人は、テープカセットに磁気テープの管理情報等を記憶可能な不揮発性メモリを設け、テープストリーマドライブにより、この不揮発性メモリに接触式/若しくは非接触式でアクセスするための構成も提案している。本実施の形態としては、このようなテープストリーマドライブの構成を採っていても構わないものである。
【0025】
図2は、上記テープストリーマドライブ10によって磁気テープ3に記録されるトラックの構造を示している。
各トラックは、記録ヘッドによりいわゆるアジマスベタ記録によりトラック幅TWのトラックとして形成されていく。本実施の形態では、図1にて説明したようにして、回転ドラム11に対して記録ヘッドHR1,HR2、HR3、HR4(第1〜第nの記録ヘッド:n=4)が設けられている。そのうえで、記録時の磁気テープ3の走行方向と、回転ドラム11の回転方向が、それぞれ図1に示す矢印a、bによる方向であるとすると、回転ドラム11が1回転するのに応じては、図2に示すようにして、記録ヘッドHR1の走査により形成されるヘッド対応トラックTK−A、記録ヘッドHR2の走査により形成されるヘッド対応トラックTK−B、記録ヘッドHR3の走査により形成されるヘッド対応トラックTK−C、記録ヘッドHR4の走査により形成されるヘッド対応トラックTK−Dが、磁気テープ3上で連続するようにして形成されることになる。つまり、本実施の形態としては、回転ドラム11が1回転していくごとに、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dの順で、トラックが循環的に記録されるものとしてみることができる。
【0026】
そして、隣接するトラック同志は互いに+アジマスと−アジマスとで逆アジマスの関係となるようにされている。これをヘッド対応トラックTK−A、TK−B、TK−C、TK−Dとしてみれば、
ヘッド対応トラック[TK−A、TK−B]
ヘッド対応トラック[TK−B、TK−C]
ヘッド対応トラック[TK−C、TK−D]
ヘッド対応トラック[TK−D、TK−A]
の各組において、互いに逆アジマスとなっている。これは、先に説明した記録ヘッドHR1,HR2、HR3、HR4のアジマス角の設定と対応する。
【0027】
再生時には再生ヘッドHR1,HR2,HR3,HR4によりトラックが走査される。このとき、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dと、再生ヘッドHR1,HR2,HR3,HR4とは、同じアジマス角で対応させるようにする。つまり、記録ヘッドHW1,HW3により記録されたヘッド対応トラックTK−A、TK−Cの組は、再生ヘッドHR1,HR3の組により再生することになる。また、記録ヘッドHW2,HW4により記録されたヘッド対応トラックTK−A、TK−Cの組は、再生ヘッドHR2,HR4の組により再生することになる。このときには、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dに対して、それぞれ、再生ヘッドHR1、HR2,HR3,HR4が対応するようにして再生を行うことになる場合もあるし、再生ヘッドHR3,HR4,HR1、HR2が対応するようにして再生を行うことになる場合もある。ただし、後述するRAW(Read After Write)としてのエラーレート検出のためのデータ読み出しとしては、記録ヘッドと再生ヘッドの位置関係から、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dに対して、それぞれ、再生ヘッドHR1、HR2,HR3,HR4が対応するようにして再生を行うことになる。
また、再生ヘッドHR1,HR2,HR3,HR4のヘッド幅HWはトラック幅TWよりも広い幅とされているが、いわゆるアジマス効果により、隣接トラックからのクロストークは防止される。
【0028】
本実施の形態が対応するテープフォーマットでは、一対の隣接するトラックにより1フレームを形成する。例えば、ヘッド対応トラックTK−A、TK−Bの組と、ヘッド対応トラックTK−C、TK−Dの組(あるいはトラックTK−B、TK−Cの組と、トラックTK−D、TK−Aの組の関係であってもよい)により、それぞれ1フレームが形成される。また、20フレーム(40トラック)が1グループといわれる単位となる。グループは最小記録単位とされる。従って、ストリーミングといわれる1回の記録動作は、最小でグループごとに行われることになる。
【0029】
また、各トラック内のデータフォーマットは図3に示される。
1つのトラックは、例えば0〜95のフラグメントID(Fragment ID)が順次与えられた96のブロックの集合から成る。このブロックは所定のデータサイズによる固定長とされる。
【0030】
ブロックのデータ構造を図4に示す。
ブロックは、この図に示すようにして、先頭の16バイトのヘッダエリアと、これに続く127×2=256バイトのデータエリアと、12×2=24バイトのC1パリティエリアとから成る。C1パリティはブロック内のデータに対するするエラー訂正符号となる。ここでの詳しい説明は省略するが、本実施の形態のフォーマットでは、C2,C3パリティも規定される。C2パリティは、トラック単位で完結し、C3パリティはグループ単位で完結するエラー訂正符号である。
【0031】
図4に示すブロックのヘッダエリアにおいて、先ず先頭2バイト(Hi,j,0,0/Hi,j,0,1)の領域にはフラグメントIDが格納される。
このフラグメントIDには、図3に示したように、トラック内において連続して配置されるブロックごとに連番が付されるようにして0〜95のいずれかの値が格納されることになる。
【0032】
また、第3バイト(Hi,j,1,0)の上位4ビットには、Lower 4-bit of ATN(Absolute Track Number)の値が格納される。つまり、現ブロックが属するトラックについての絶対トラックナンバの値として、その下位4ビットが示される。
また、第3バイト(Hi,j,1,0)の下位4ビットにはエリアIDが格納される。エリアIDは、実際に設定される値により、例えば現ブロックが属する領域が、デバイス領域、リファレンス領域、システム領域、データ領域、及びEOD(End Of Data) 領域の何れであるのかが示される。
【0033】
第4バイト〜第6バイト(Hi,j,1,1〜Hi,j,2,1)の3バイトの領域は、論理アドレスの領域とされる。そして、第4バイトの上位4ビットには、論理アドレスとして、Lower 4-bit of Group Numberの値が格納される。Lower 4-bit of Group Numberは、現ブロックが論理的に属するとされるグループを示すグループナンバの値のうち、下位4ビットが示されている。
論理アドレスの領域において、残る第4バイトの下位4ビットと、第5バイト及び第6バイトから成る領域には、論理アドレスとしてデータIDの値が格納される。データIDは、現ブロックが論理的に属するとされるグループ内における、論理的なデータ位置を示す。
【0034】
第7バイト及び第8バイト(Hi,j,3,0/Hi,j,3,1)の2バイトの領域にはWrite Session Numberの値が格納される。
【0035】
続く第9バイト〜第14バイト(Hi,j,4,0/Hi,j,6,1)の6バイトの領域は、ID Information(Sub Code)の領域とされる。このID Informationに対しては、フォーマットによって規定される所定規則に従って、所定複数種類のうちのデータの何れか1種類が格納されることになる。
【0036】
上記ID Informationとして格納される情報種別の例を、図5に示す。
この図によると、ID Informationとして格納される値は、現ブロックのデータブロックナンバ(フラグメントID)の下位4ビット(Lower 4-bit of Data Block Number)の値に応じて、以下のように定義されている。
【0037】
Lower 4-bit of Data Block Number=0000の場合には、ID Informationには、現ブロックが属するパーティションを識別するためのPartition Numberを格納することとしている。
また、Lower 4-bit of Data Block Number=0001の場合には、現ブロックについてのデータフォーマット(Data Format)を格納することとしている。
Lower 4-bit of Data Block Number=0010の場合には、現ブロックを含むトラックのATN(Absolute Track Number)を格納することとしている。
Lower 4-bit of Data Block Number=0011の場合には、Appned ATNの値を格納することとしている。
【0038】
Lower 4-bit of Data Block Number=0100の場合には、Base Group Numberの値を格納することとしている。このBase Group Numberの値は、磁気テープ上における物理的位置として現ブロックが属するグループを示す。
【0039】
Lower 4-bit of Data Block Number=0101の場合には、Record Countを格納するようにされる。Record Countとは、現ブロックが何番目のレコードであるのかを示す。
Lower 4-bit of Data Block Number=0110の場合には、Separator 1 Countを格納する。
Lower 4-bit of Data Block Number=0111の場合には、Separator 2 Countを格納する。
【0040】
Lower 4-bit of Data Block Number=1000の場合には、LATNPG(Last ATN of the Previous Group)を格納する。ここでいう「Previous Group」とは、現ブロックが論理的に属しているとされる現グループより1つ前のグループである。そしてLATNPGは、この「Previous Group」を論理的に形成しているデータが記録されたトラックのうち、最後のトラックを示す値となる。
Lower 4-bit of Data Block Number=1001の場合には、GIT size of the current Basic Groupが格納される。
Lower 4-bit of Data Block Number=1010〜1111までの場合は、未定義とされている。
【0041】
このようにして、データブロックナンバに応じて、ID Informationに格納される情報の種類は異なる。そして、その種類がデータブロックナンバの下位4ビットに対応していることで、16ブロックにつき1回の割合で、ID Informationの各情報がブロックに割り与えられるようにして格納されることになる。
本実施の形態の場合、1トラックは96ブロックであるから、96/16=6で示されるように、ID Informationとして図5に示した各情報は、1トラックにおいて6回繰り返されるようにして記録されることになる。
そして、このID Informationとして格納される各情報が示す内容は、原則として、現ブロックを含むトラックを形成する全ブロックに共通となる。これにより、ID Informationの各情報が、上記のようにして16ブロックに1回の割合でしか格納されていないとしても、その情報は、現トラックを形成するブロックの全てに適用してよいことになるから、ID Informationの内容に基づいて適正に記録データを管理できることになる。
また、各ブロックに全種類のID Informationの情報を格納する必要も無くなるから、各ブロックのID Informationのサイズも6バイトで収まることになる。つまり、ブロックのヘッダエリアのデータサイズをこれ以上増加させずに、その分データエリアのサイズを確保することで、冗長度ができるだけ低くなるようにしている。つまり、単位データ量あたりにおけるユーザデータの記録可能容量ができるだけ有効に取れるようにしているものである。
【0042】
本実施の形態のテープストリーマドライブ10のシステムでは、リードアフターライト(RAW:Read After Write)といわれる動作が実行可能とされているが、参考として、本実施の形態のRAWの基本動作に対して従来となるRAWの動作例を図6及び図7により説明しておく。
【0043】
図6は、同一とされるグループ内においてRAWが行われる場合を模式的に示している。
ここで、例えばブロック内のID Informationが示すグループがGroup(N)であるとして、フレームナンバ1から順次トラックに対してメインデータを記録しているものとする。フレームとは、前述もしたように連続する2トラックにより形成されるもので、ここでは、隣接する+アジマストラック(+Az)と−アジマストラック(−Az)とにより1フレームが形成されているものとする。
【0044】
そして、ここで図示するようにして、フレーム6を記録した時点で、フレーム6の+アジマストラック(+Az)において一部記録エラーが発生したとする。
これに応じて、RAWが実行されるのではあるが、テープストリーマドライブ側が読み出しを行って記録エラーを検出し、リライトを開始するまでには或る程度の期間を要する。このため、リライトは、記録エラーが発生したトラック以降においても或る程度記録が進行した後において実行されることになる。この図では、フレーム6にて記録エラーが発生した後において、フレーム9まで記録し終えたところで、リライトが開始されている。
そして、この場合のリライト動作としては、上記フレーム9に続けて、改めてフレーム6からトラック単位でデータを記録し直していくことになる。このようにしてリライトが行われる結果、ダミーとして使用されなくなるデータは、記録エラーの発生したフレーム6と、これに続くフレーム7,8,9の4フレーム分となる。
【0045】
また、図7には、グループの変化位置近傍でRAWによるリライトを行った場合の例が模式的に示されている。
この場合には、先ずGroup(N)を順次記録しており、Group(N)のフレーム19のプラスアジマストラック(+Az)において一部記録エラーが発生した状態が示されている。そして、この場合には、この後において、Group(N)の最終フレームであるフレーム20を記録し、さらに、次のGroup(N+1)のフレーム1,2,3を記録終了した段階でリライトが開始されている。この場合、リライトは、Group(N)のフレーム19から開始され、続けて、Group(N)のフレーム20を記録したら、次のGroup(N+1)のフレーム1から順次記録を行っていくことになる。
この場合のダミーデータは、記録エラーの発生したGroup(N)のフレーム19と、これに続くGroup(N)のフレーム20、Group(N+1)のフレーム1,2,3の5フレームとなる。
【0046】
ところで、上記図6及び図7に示したようなRAWの動作では、例えば次のような問題がある。
図6及び図7からも分かるように、RAW動作は記録エラーが発生してからリライトを開始するまでに相応の時間差があるために、その間は記録動作が進行する。そのうえで、リライト動作はトラック単位により、記録エラーのトラック(フレーム)から改めてデータ記録を再開するという手順で実行される。
このため、記録エラーが発生したトラックは、たとえエラーがトラック内の一部であるとしても、トラック全体がダミーデータとして扱われることになってしまう。
また、記録エラーの発生したトラックに続けて記録されたトラックについてエラーが発生していなかったとしても、リライトが行われた後は、ダミーデータとして扱われてしまうことになる。
このようにして従来においては、記録エラーの発生した部位のデータサイズに比較して、リライトの動作に伴ってダミーデータとなるデータサイズが大きく、それだけデータの記録可能容量を大幅に消費してしまっているということがいえる。
【0047】
また、特に図7に示すようにして、グループの境界付近においてリライトが行われた場合、グループごとにトラックが連続せずに、一部が入れ替わるような状態も発生する可能性がある。
従来においては、図5に示したID InformationにおけるGroup Numberのみに依存して、現トラックがどのグループに属しているのかを判断している。ID Informationの各情報は、例えば16ブロックに1回の割合でしか格納されていない情報であることから、読み出しがうまくいかないような場合もある。このような場合には、例えばグループの境界のトラックを正確に認識することが困難となって、適正な記録再生動作を妨げる可能性がある。
【0048】
そこで、本実施の形態としては、トラック単位によりリライトを行うのではなく、ブロック単位によりリライトを行う構成を採ることとしている。この点について、図8及び図9を参照して説明する。
図8には、磁気テープ上に記録されるメインデータが模式的に示されている。この図に示すメインデータは、1つの枠が1つのブロックに対応する。そして、図において縦方向に並ぶ1列分のブロックの集合により、1トラックが形成されている。また、ブロック内に付されている0〜kの数は、ブロックごとに付されるデータID(Data ID)を示している。データIDは、前述もしたように、グループ内において、ブロックに対して順に付されるIDナンバである。
また、メインデータの下側には、ID InformationのBase Group Numberにより示されるグループを示している。
【0049】
この場合には、Group(N-1)としての最終ブロックkを記録し、これに続けてGroup(N)のブロック0から記録が開始されている。そして、図示するようにして、例えば連続する3つのブロックデータD1について記録エラーが発生したとする。この場合にも、RAWの動作として、このブロックデータD1について読み出しを行って記録エラーを検出し、リライト動作が開始されるまでには或る程度の時間を要する。そしてこの場合には、図のようにして、例えば記録エラーが発生したブロックデータD1の位置から7トラック先のトラックにおいて、再度、ブロックデータD1のリライトを行うようにしている。
この図8は、同じグループのブロック群が集合している範囲内においてリライトが行われる場合を示している。
【0050】
また、リライトがグループの境界付近で行われる場合の例を図9に示す。
例えばこの図に示すようにして、Group(N)に属するとされるブロックを書き込んでいる途中で、連続する2ブロックのブロックデータD2について記録エラーが発生したとする。そして、この場合には、Group(N)に属する最終ブロックkの書き込みが終了し、さらに次のGroup(N+1)に属するブロックデータを書き込んでいる途中で、RAWによるブロックデータD2のリライトが発生している。
この場合にも図示するようにして、リライトは、トラック単位で書き換えるのではなく、記録エラーとなったブロックのみについて行われるようになっている。
【0051】
なお、先に図4により説明したフォーマットによると、例えば図8において、記録エラーとなったブロックデータD1と、リライトによって書き込まれたブロックデータD1とは、同じデータIDを有していることになる。これに対して、記録エラーとなったブロックデータD1のフラグメントIDと、リライトによって書き込まれたブロックデータD1のフラグメントIDは、実際に記録されるトラック上の位置に応じて異なる値が書き込まれるべきものとなる。
この点については、図9に示すようにして、リライトがグループをまたいで行われるような場合にも同様である。
また、ブロック単位でデータがリライトされることに応じて、現グループとその前のグループとの境界はトラックである必要はないこととしている。つまり、図8及び図9に示すように、或るトラックの途中において、Group(N)の最終ブロックkが書き込まれたとすると、以降のトラックの残りの領域に対しては、次のGroup(N+1)の開始ブロック0からデータを書き込んでよいこととしている。
【0052】
ところで、上記のようしてブロック単位でリライトが行われることを許可するフォーマットとしていることによっては、特に図9により示したようにして、或る1つのグループに属するとされるブロック群の中に、その1つ前のグループに属するブロックが混在するような記録状態となる可能性がある。また、1トラックにおいて、前後のグループのブロックの境界が存在する状態となる可能性もある。つまり、トラック単位で見た場合には、異なる複数のグループに属するとされるブロックが混在するようにして記録されるという状態が生じ得る。
このような記録状態となる可能性があることを考慮すれば、1つのトラックを形成するブロック単位により、各ブロックが属するとされるグループが何れであるのかを特定できるようにする必要がある。
【0053】
本実施の形態としては、このために、先に図4に示したブロックのヘッダの構造としている。つまり、論理アドレスとして、データIDだけではなく、Lower 4-bit of Group Numberを規定している。このLower 4-bit of Group Numberを利用しての記録データの管理について、図10を参照して説明する。
【0054】
この図においては、例えばGroup(N)に属するブロックについてのリライトが行われたことで、示す2つのトラックc,dにおいて、Group(N)に属するブロックと、Group(N+1)に属するブロックの両者が混在して記録されている状態となっている。
【0055】
また、この図においては、トラックごとに記録されるID InformationのBase Group Numberが示すグループナンバが示されている。本実施の形態の場合には、Base Group Numberによっては、図10にも示すようにして、必ず連続するトラックの集合によって1つのグループナンバを示すようにされている。逆に言えば、連続するトラックにおいて、前後のグループナンバが入れ替わるようにしてBase Group Numberの値が格納されることはない。
また、Base Group Numberは、次のグループのブロックが記録されているトラックがあるとしても、Base Group Numberが示すグループに属するとされるブロックの記録が終了するまでは、現グループのグループナンバを示すようにされる。
図10の場合であれば、Base Group Numberが示すグループナンバとして、Group(N)は、磁気テープ上において最後のGroup(N)のブロックが物理的に記録される、トラックdまでを必ず含むべきことになる。なお、この場合には、Base Group Numberによっては、トラックdに続くトラックeまでがGroup(N)として扱われている。
本実施の形態において、Base Group Numberは、トラック単位により、ブロックが属するグループナンバを示すものであり、磁気テープ上において物理的に設定されたグループの範囲を示すものとなる。従って、図10からも分かるように、Base Group Numberが示すグループナンバは、各ブロックが論理的に属すべきグループと異なっていてもよいものとされている。
【0056】
そして、図10に示す各ブロックに格納されるLower 4-bit of Group Numberには、論理的にそのブロックが属するとされるグループのナンバが格納されることになる。
【0057】
このようにして、ID InformationとしてのBase Group Numberと共に、Lower 4-bit of Group Numberを規定すれば、例えば、以下の式により各ブロックが属するとされるグループを一意的に認識することができる。
If (Base Group Number[3:0] == Lower 4-bit of Group Number[3:0]){
ブロックのグループナンバ= Base Group Number;
} else if (Base Group Number[3:0] + 1) == Lower 4-bit of Group Number[3:0]){
ブロックのグループナンバ= Base Group Number + 1
} else {
不明
}
ただし、各ブロックは、2グループ離れた位置に記録されることはない。つまり、Group(N)に属するブロックは、ID InformationのBase Group Numberが示すGroup(N-1) またはGroup(N-1)としてのトラックに記録されるものとする。
【0058】
上記式に基づいて、ブロックの属するグループが特定される例を、再度図10を参照して説明する。
例えばテープストリーマドライブ10により、トラックaを再生しているとする。このトラックaは、Group(N)に属するブロックk−2,k−1,kに続いて、次のGroup(N+1)のブロック0,1,2,3,4が記録されている。
このトラックaのID InformationのBase Group Numberは、Group(N)であることを示している。そして、このトラックdのブロックk−2,k−1,kに関しては、各Lower 4-bit of Group Numberは、Group(N)の下位4ビットを示していることになる。従って、これらの各ブロックk−2,k−1,kのBase Group Numberの下位4ビットと、Lower 4-bit of Group Numberとは一致することになるから、これらのブロックk−2,k−1,kは、Group(N)に属するブロックであるということが特定されることになる。
【0059】
これに対して、トラックaのブロック0,1,2,3,4の各Lower 4-bit of Group Numberは、Group(N)ではなく、Group(N+1)の下位4ビットを示していることになる。これに対して、トラックaのID InformationのBase Group Numberは、Group(N)を示している。従って、この場合には、Base Group NumberとLower 4-bit of Group Numberとは一致していないことになる。
上記式に依れば、このようにしてLower 4-bit of Group Numberが、Base Group Numberと一致していないブロックについては、Base Group Number+1で表される値のグループに属するものであることとして決定することとしている。そして、トラックaのブロック0,1,2,3,4については、この規則が適用されるので、Base Group Number+1=Group(N)+1=Group(N+1)ということになって、Group(N+1)に属するものであるとして決定できることになる。
【0060】
以下、同様にして上記式に従うことで、次のトラックbを形成するブロックは、全てGroup(N+1)に属するものであるとして決定される。
また、さらに次のトラックc,dについては、リライトによって挿入されたブロックは、Group(N)のブロックであることが決定され、残るブロックはGroup(N+1)に属するものであることが決定される。
さらに、トラックdに続くトラックeを形成するブロックについても、全てGroup(N+1)に属するものであるとして決定することができる。
【0061】
このようにして、本実施の形態では、トラックにおける各ブロックごとに、どのグループに論理的に属するデータであるのかについて正確に特定することができる。そして、このようにして決定されたブロックごとのデータを、例えばメモリ上でデータID順に配列し直すことで、例えば図11に示すようにして、論理的なブロックの配列によって1グループを形成することができる。
【0062】
そのうえで、本実施の形態としては上記のようにしてブロックを最小単位としてデータのリライトを行うのにあたり、以降説明するようにして、リライトすべきデータ(リライトデータ)を記録するトラック、及びトラック内のブロック位置を決定したうえで、データ記録を実行していくようにされる。
【0063】
このために、先ず、本実施の形態では、図12に示すようにして磁気テープ3上のデータ記録領域を設定するようにされる。
図12においては、磁気テープ上に記録されるデータ(メインデータ)を模式的に示している。この図においても、1つの枠が1つのブロックに対応し、図において縦方向に並ぶ1列分のブロックの集合によって1つのトラックを形成するものとする。ここでは説明を簡単にするため、1トラックが8ブロックにより形成されるものとしてみている。従って、この場合において1トラックを形成するブロックごとに対応するフラグメントID(Fragment ID)としては、トラック走査方向に沿って0,1,2,3,4,5,6,7の値が割り振られることになる。
【0064】
そして、図12では、上記のようにして8ブロックにより形成されるトラックとして、トラック(ヘッド対応トラック)TK−A、TK−B、TK−C、TK−Dが示される。つまり、図2にて説明したように、回転ドラム11が1回転するごとに磁気テープ3上に形成される、4本1組のヘッド対応トラックの連続領域(循環単位記録領域)が示される。また、この図では、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dごとに対応して、各トラックを記録(走査)する記録ヘッドの符号と、RAW時において各トラックを再生(走査)する再生ヘッドの符号とを示している。
【0065】
このようにしてヘッド対応トラックTK−A、TK−B、TK−C、TK−Dから成る循環単位記録領域について、図12では、ヘッド対応トラックごとにおいて、連続する2つのブロックにより形成される領域単位により分割している。例えば、ヘッド対応トラックTK−Aは、セグメントID=[0,1]、セグメントID=[2,3]、セグメントID=[4,5]、セグメントID=[6,7]の組による連続する2ブロック単位により4つに分割している。同様にして、ヘッド対応トラックTK−B、TK−C、TK−Dについても、連続する2ブロック単位により4つに分割している。なお、トラック走査方向に沿った領域区分として、ここでは、各ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dで共通に、セグメントID=[0,1]の2ブロックの領域を第1走査エリア、セグメントID=[2,3]の2ブロックの領域を第2走査エリア、セグメントID=[4,5]の2ブロックの領域を第3走査エリア、セグメントID=[6,7]の2ブロックの領域を第4走査エリアということにしている。
本実施の形態では、このようにして分割される領域単位について、リライト対応分割領域ということにする。このようにして、1トラックごとに、2ブロック単位による4つのリライト対応分割領域を設定することで、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dから成る循環単位記録領域全体としては、16のリライト対応分割領域により分割されることになる。
つまり、本実施の形態では、回転ドラムが1回転するのに応じて複数の記録ヘッドにより形成されるヘッド対応トラックの組である循環単位記録領域を、所定数の連続するブロックからなる領域単位であるリライト対応分割領域により、分割、区分するようにされる。
【0066】
そして、上記のようにして循環単位記録領域についての分割設定を行ったうえで、RAWによるエラーレート検出としては、次のようにして行うようにされる。
まず、本実施の形態のRAWでは、図8〜図10などにより説明したブロック単位でのリライトを可能とするために、磁気テープ3から読み出したデータについて、ブロック単位によるエラーレート検出を実行していくようにされる。そして、エラーレートが一定以上となって記録エラーであるとして検出されたブロックのデータをリライトすべきデータとして決定する。
そのうえで本実施の形態では、上記のようにしてブロック単位でのエラーレート検出を実行していきながら、そのエラーレート検出結果を利用して、図12に示したリライト対応分割領域ごとの単位でみた場合のエラーレート(分割領域エラーレート)も検出するようにされる。
【0067】
上記のようにして検出される分割領域エラーレートは、例えば図13に示すような構造で示されるエラーレート検出テーブルにより保持、管理される。このエラーレート検出テーブルは、循環単位記録領域を成すヘッド対応トラックTK−A、TK−B、TK−C、TK−Dと、これらのヘッド対応トラックを4分割した第1〜第4走査エリアとのマトリクスによる16のセルを有する。これらのセルが、図12に示したリライト対応分割領域に対応する。例えばヘッド対応トラックTK−A・第1走査エリアにより示されるセルは、ヘッド対応トラックTK−Aの第1走査エリア(Segment ID=0,1)のリライト対応分割領域に対応する。
そして、これらのセルに対して、対応するリライト対応分割領域ごとに検出されたエラーレート(分割領域エラーレート)の値を格納するようにされる。循環単位記録領域(ヘッド対応トラックTK−A、TK−B、TK−C、TK−D)は、回転ドラム11が一回転するごとに繰り返し形成されるので、RAWにおける分割領域エラーレートの検出も、循環単位記録領域ごとの繰り返しとなる。これに応じて、図13に示すエラーレート検出テーブルに格納される分割領域エラーレートの内容も、循環単位記録領域ごとの読み出しが繰り返されるのに応じて更新されていくものとなる。
【0068】
なお、リライト対応分割領域ごとのエラーレートは、そのリライト対応分割領域を形成するブロックごとに検出されるエラーレートに基づいて得るようにすればよい。例えば、リライト対応分割領域を形成する全ブロックのエラーレートの平均値をリライト対応分割領域のエラーレートとすることが考えられる。あるいは、リライト対応分割領域を形成する全ブロックのエラーレートのうちから最大値若しくは最小値をリライト対応分割領域のエラーレートとすることも考えられる。あるいは、リライト対応分割領域を形成する全ブロックのエラーレート値についての出現分布などの結果に基づいて、リライト対応分割領域のエラーレートを決定することも考えられる。つまり、リライト対応分割領域ごとのエラーレート検出は、実際のエラーレート算出の処理能力や、実際に必要とされるエラーレートの信頼性などを考慮して、適切とされるアルゴリズムが設定されるようにすればよい。
【0069】
そして、本実施の形態では、このようにしてエラーレート検出テーブルの情報として得られる分割領域エラーレートに基づいて、下記のようにして、リライトすべきデータを書き込むべき位置を決定するようにされる。
これまでの説明から理解されるように、図13のエラーレート検出テーブルは、回転ドラム11が一回転することによって形成される記録領域である、循環単位記録領域におけるリライト対応分割領域ごとのエラーレートの分布を示すものとみることができる。このことから、エラーレート検出テーブルを参照することで、循環単位記録領域において、エラーレートが高いとされる領域部分と、エラーレートが低いとされる領域部分の分布について、リライト対応分割領域を最小単位として認識することが可能になるといえる。そして、本実施の形態では、エラーレートが低いと認識したリライト対応分割領域のブロックを使用して、データのリライトを実行するようにされる。
【0070】
具体的な一例を図14に示す。図14は、磁気テープ上に記録されるデータを、トラックとブロック構造の関係により示すものであり、1つの枠がブロックに対応し、縦方向に配列される8つのブロックにより1トラックを形成するものとしている。図の左側において、縦方向に示される0〜7の数は、1トラックごとにおけるブロック番号(Segment ID)を示す。また、ブロックの番号(Segment ID)とともに、第1〜第4走査エリアの区分も示す。また、図の上側においてはトラックごとが対応する循環単位記録領域内のトラック位置として、ヘッド対応トラックTK−A,TK−B,TK−C,TK−Dの何れであるのかを示している。
ここで、RAWにおけるエラーレート検出処理の結果として、図に示す1ブロック分のデータD1について、記録エラーであることが検出されたとする。この記録エラーであると検出されたデータD1は、循環単位記録領域においては、ヘッド対応トラックTK−AのSegment ID=3のブロックのデータとして記録されたものである。
【0071】
記録エラーであることが検出された上記データD1は、しかるべきタイミングでリライトされるべきことになる。
これまでにも述べたように、RAWにおいては、或る記録データについて記録エラーが検出されてから、この記録データについての磁気テープへの実際のリライトが実行されるまでには、或る程度の時間間隔を有するが、データD1の記録位置は、記録エラーの検出からリライトのための記録データ生成が実行されるまでの過程において、所定タイミングで得られているエラーレート検出テーブル内の分割領域エラーレートの値に基づいて決定するようにされる。
【0072】
ここで、リライトすべきデータの記録位置として、リライトのデータを挿入すべき対象の分割領域エラーレート(リライト対象分割領域)を決定するためのアルゴリズムについては、多様に考えられるものであり、本願発明の下では特に限定されない。例えば、エラーレート検出テーブルにおいて、分割領域エラーレートが最も低いとされるリライト対応分割領域から順に、リライトのデータを挿入すべき分割領域エラーレートとして優先的に選択していくことが考えられる。また、エラーレート検出テーブルにおける分割領域エラーレートの分布を二次元的(平面的に)にとらえて、エラーレートが低いものとしてみることのできる分布領域に対応するとされる、リライト対応分割領域から優先して、リライト対象分割領域を選択していくことも考えられる。
また、リライト対象分割領域の決定にあたっては、そのときに更新された最新のエラーレート検出テーブルを参照すればよいのであるが、例えば、ある一定の過去までのエラーレート検出テーブルの内容を、所定の規則に従って統計化した情報を構築して保持するようにして、この統計情報によって、リライト対象分割領域を決定するように構成することも考えられる。
【0073】
そして、図14の場合においては、エラーレート検出テーブルに基づいて、ヘッド対応トラックTK−Cにおける第4走査エリアを、データD1のためのリライト位置(リライト対象分割領域)として選択決定したものとする。この決定結果に従って、本実施の形態のテープストリーマドライブ10は、ヘッド対応トラックTK−Cとなるトラックにおける第4走査エリアを形成するブロックに対して、リライト用のデータD1を挿入するようにして、磁気テープに対する記録を行うようにされる。なお、この場合には、データD1が1ブロックサイズとされている。そこで、この場合には、データD1を第4走査エリアにおけるSegment ID=6のブロックに挿入することとしている。なお、データD1の挿入は、同じ第4走査エリアにおける他のブロックであるSegment ID=7としてもよい。本実施の形態としては、リライトすべきこととなったブロック単位ごとのデータについて、エラーレート対応分割領域内の何れのブロックに割り当てるのかについては、各種の条件などを考慮して所定の規則を設定すればよいものであり、特に限定されるべきものではない。
【0074】
一般に、磁気テープに記録されるデータの品質は一様ではなく各種の要因によって、物理的な記録位置によってばらつきのあることが分かっている。
要因となることの例として、本実施の形態のようにして複数の記録ヘッドを備える構成では、回転ヘッドに対する記録ヘッドの取り付け位置の誤差を挙げることができる。この誤差によっては、磁気テープに記録されるトラックの幅(トラックピッチ)について、記録ヘッドごとに対応した一定のばらつきを生じる。これにより、例えばある記録ヘッドに対応して形成されるトラックのピッチが狭くなるような状態となる場合がある。周知のようにして、トラックピッチが狭くなるほど記録データの品質が劣化する。このために、特定の記録ヘッドに対応するトラックについて、定常的にデータ品質が劣るような状態となることがある。
また、記録ヘッドの付着物によっても、ある特定の記録ヘッドに対応するトラックについて定常的にデータ品質が劣る状態を生じる。
また、磁気テープ自体が傷んでいる場合にも、その箇所においてデータ品質が劣化する。
さらに、磁気テープと記録ヘッドとの関係も記録データ品質のばらつきの原因となる。本実施の形態のテープストリーマドライブ10のようにして、ヘリカルスキャンにより磁気テープに対してデータを記録していく構成では、磁気テープに対して記録ヘッド(回転ドラム)が物理的に摺接するようにして磁界印加を行うことでデータ記録を実行していく。このような磁気テープと記録ヘッドの物理的関係により、形成されるトラックが磁気テープ上で直線にならずに、S字的な歪みを生じる場合がある。このような状態でアジマスベタ記録が行われていく結果、トラックピッチに誤差などが生じて、これによる記録データ品質の劣化を生じることなる。
また、磁気テープは、或る所定のテンションがかけられた状態で、所定の巻き付け角度により回転ドラムに対して巻き付けられるようにされるが、このとき、いわゆるエアフィルムなどといわれるように磁気テープの巻き付け始められる箇所では、記録ヘッドと磁気テープとの間に薄い空気の層が形成されてしまうような現象を生じることがある。また、テンションむらにより、ある巻き付け角度に対応する位置にて記録ヘッドと磁気テープとの圧着度が不十分になるような状態も生じる。このような現象は、例えばトラック方向(ヘッド走査方向)における記録データ品質の劣化を招く。
このようにして、磁気テープに対して記録されるデータについては、磁気テープ上の物理的な位置によって品質にばらつきが生じる。また、上記のようにして挙げた例によると、データ品質のばらつきは、トラック間で生じる要素もあれば、1トラックにおけるヘッド走査方向において生じる要素も存在する。また、記録ヘッドの回転などに応じて定常的、循環的に生じる要因もあれば、特に規則性を有することなく出現する要素もある。
【0075】
リライトするデータの位置を決めるための最も単純なアルゴリズムとしては、RAWにより或るデータの記録エラーが検出されてリライトすべきであるとの指示が得られたタイミングで、順次生成される記録データのシーケンスに対して、単純に、そのリライトすべきデータをブロック単位により再挿入する処理を行うこととすればよい。そして、このようにして生成された記録データにより、磁気テープ3に対してトラックを形成していくようにして記録を実行させる。
この場合、上記したようなアルゴリズムでは、リライトすべきデータが、どのトラックにおけるどのブロック位置に挿入されるようにして記録されるのかについては、そのリライトすべきデータについて記録エラーを検出したタイミングに依存するものであり、不定となる。リライトすべきデータの挿入位置が不定であるということは、換言すれば、記録エラーとなる可能性の高い位置を避けて記録するような配慮はされていないということであり、リライトを行ったデータが再び記録エラーとなってリライトが必要になる可能性を一定以下とすることが困難であるといえる。
【0076】
これに対して、本実施の形態としては、エラーレート検出テーブルに基づいて、例えばエラーレートが低いとされるリライト対応分割領域を選択決定することで、リライトの位置を決定していくこととしている。これにより、本実施の形態としては、上記の場合と比較して、リライトしたデータが再び記録エラーとなる可能性を低くすることができる。
また、本実施の形態のエラーレート検出テーブルは、循環単位記録領域を基として作成されている。この循環単位記録領域は、複数の記録ヘッドごとに対応して形成される複数のトラックを組としている。このことから、本実施の形態としては、例えば特定の記録ヘッドに対応して定常的に生じるとされるトラック間でのエラーレートのばらつきなどに対応して、相応に高い信頼性でもってリライト位置を決定することが可能となっている。また、1トラックが走査エリアで分割されていることで、トラックごとの走査方向におけるエラーレートの定常的なばらつきに対応できることになる。
また、本実施の形態のエラーレート検出テーブルは、RAWの進行により循環単位記録領域についてのエラーレート検出が行われるごとに応じて更新されるものであることから、ランダムに、あるいは回転ドラム2回転以上の比較的長いとされる周期性を有して現れるような、記録の進行に応じたエラーレートの変化にも対応して、リライトの位置を決定することができるようになっている。
【0077】
このようして、本実施の形態では、エラーレート検出テーブルに基づいて、リライトすべきデータの位置を決定して、リライトされたデータが再度リライトされる可能性を低くするようにされている。本実施の形態では、このような基本的な動作に加えて、次のようなデータ記録も実行するようにされる。
【0078】
エラーレート検出テーブルは循環単位記録領域に対応していることから、循環単位記録領域を形成するヘッド対応トラック(TK−A,TK−B,TK−C,TK−D)単位でみたエラーレートの状況も示しているということがいえる。また、このことは、回転ヘッド11に備えられる記録ヘッド(HR1、HR2、HR3、HR4)ごとの良否の程度を示しているということにもなる。
そこで、本実施の形態では、エラーレート検出テーブルの内容に基づいて、記録ヘッドの不良を検出するようにもされる。つまり、1つのトラックは、第1〜第4走査エリアの4つの領域に分割されているが、これらの領域のエラーレート(分割領域エラーレート)の状況が一定の条件を満たしているときに、記録ヘッドが不良であると判定するようにされる。一例としては、例えば、そのトラックにおける第1〜第4走査エリアの4つの領域のうち、2以上の領域において一定以下のエラーレートが検出されたのであれば、その記録ヘッドは不良であると判定することなどが考えられる。
【0079】
そして、このようにして不良であると判定された記録ヘッドによっては、有効とされる(正常に再生されることが期待される)データを記録しないようにされる。具体的には、例えば図15に示すようにしてデータを記録する。
図15には、回転ヘッド11の一回転分により磁気テープに記録される、ヘッド対応トラックTK−A,TK−B,TK−C,TK−Dのデータをブロック単位により示している。なお、この図においても、1トラックはSegment ID=0〜7で示される8つのブロックからなるものとする。
ここでは、記録ヘッドHR1から記録を開始するものとすると、データは、ヘッド対応トラックTK−A,TK−B,TK−C,TK−Dの順で記録されていき、各トラックにおいては、Segment ID=0〜7のブロック順で記録が行われていくことになる。
【0080】
そして、この場合においては、記録ヘッドHR1,HR2,HR3,HR4のうち、不良であるとして判定されたものは記録ヘッドHR3であることとする。この場合のヘッド対応トラックTK−A,TK−B,TK−C,TK−Dに対するデータの記録は、図示するようにして、先ず、記録ヘッドHR1に対応するヘッド対応トラックTK−AのセグメントID=0〜7の8ブロックに対して、順次データD0〜D7を記録する。次の記録ヘッドHR2に対応するトラックTK−Bについては、セグメントID=0〜7の8ブロックに対して、データD7に続くデータD8〜D15を記録する。
そして、不良であるとして判定された記録ヘッドHR3に対応するヘッド対応トラックTK−Cについては、ヘッド対応トラックTK−Bと同様にして、セグメントID=0〜7の8ブロックに対して、データD8〜D15を記録する。
次の、記録ヘッドHR4に対応するヘッド対応トラックTK−Dについては、セグメントID=0〜7の8ブロックに対して、データD15に続くデータD16〜D23を記録する。
【0081】
このようにして、本実施の形態では、不良と判定された記録ヘッドにより記録されるデータについては、他の不良ではない記録ヘッドにより記録されるデータと同じデータを記録するようにしている。この場合の規則としては、1つ前のトラックと同じデータを不良と判定された記録ヘッドにより記録することとしている。なお、不良であるとして判定された記録ヘッドが2以上で、かつ、これらの記録ヘッドにより記録されるトラックが連続する場合には、不良と判定された記録ヘッドのうちで先頭となる記録ヘッドにより記録されるトラックの、物理的に1つ前のトラックと同じデータを、これらの不良の記録ヘッドにより記録するようにされる。
但し、確認のために述べておくと、データとしての内容は同一となるようにされているが、例えば、図4,図5などに示した構造のヘッダにおいて、実際に記録される絶対トラックや、実際にそのトラックが属するとされるグループなどを示す情報については、必要に応じて変更される。これにより、トラック単位若しくはグループ単位での適正な記録データの管理が可能になる。
【0082】
この場合、不良と判定された記録ヘッドにより記録されるデータの実内容は、他の不良ではない記録ヘッドによっても記録されている。従って、例えば図15の場合であれば不良と判定された記録ヘッドHR3により記録されたヘッド対応トラックTK−CのデータD8〜D15は、物理的にその1つ前のヘッド対応トラックTK−Bから正常に再生することが期待されるものであり、データ読み出し結果について特に問題はないようにされている。逆にいえば、不良と判定された記録ヘッドHR3により記録されるデータそのものとしては、本来的に正常再生することを期待されていない無効なデータとしてみることができる。
上記した観点からすると、不良と判定された記録ヘッドによっては、特にデータ内容について有効な意味を持たないダミーデータを記録してもよいということがいえる。しかしながら、本実施の形態のようにして、とりあえずは、内容的に意味のあるデータを記録しておくことで、なんらかの事情により、記録ヘッドHR3の不良性が回復したような場合には、データD8〜D15の再生信頼性が高くなることが期待される。
【0083】
図16は、これまでに説明した本実施の形態としての記録時の手順を示すフローチャートであり、これまでに説明したRAWの手順を含む。この図に示す処理は、例えばフラッシュROM25に記憶されているプログラムを、例えばシステムコントローラ15がSRAMに展開して実行することで実現される処理としてみることができる。また、このようなプログラムは、所定のリムーバブルの記憶媒体などに記憶させて保存しておき、必要に応じてプログラムのインストールに利用することができる。
【0084】
図16に示す処理においては、先ず、ステップS101により1トラック分のデータを新規に書き込み開始するための指示が発生される。これに応じて、ステップS102以降による、1トラックのデータを書き込むための処理が開始される。
ステップS102においては、エラーレート検出テーブルを参照する。なお、RAWとしての再生ヘッドによる記録データの読み出しと、読み出したデータについてのエラーレート検出、及びこのエラーレート検出結果を利用した、エラーレート検出テーブルへの分割領域エラーレートの書き込み(エラーレート検出テーブルの更新)は、ここでは図示していないが、図16の処理と併行して継続的に実行されているものとする。
また、エラーレートの検出はIF/ECCコントローラ22にて行われ、このエラーレートの検出結果をシステムコントローラ15が取り込んで、データをリライトすべきか否かの判定を行うようにされる。また、エラーレート検出テーブルは、上記のようにしてシステムコントローラ15が取り込んだエラーレートの検出結果を利用して各リライト対応分割領域に応じた分割領域エラーレートを求めて書き込みを実行していくことで更新されるものとなる。
【0085】
ステップS103では、上記ステップS102としてのエラーレート検出テーブルの参照結果に基づいて、今回のトラックのデータ書き込みに使用する記録ヘッドは、不良であるか否かの判定を行う。この判定基準については、前述したとおりである。
このステップS103において、今回のトラックのデータ書き込みに使用する記録ヘッドは不良であるとして肯定の判別結果が得られた場合には、ステップS110に進む。ステップS110においては、図15にて説明したようにして、1トラック前と同じデータを記録データとして作成する。そして、ステップS111の処理によって、この記録データを磁気テープ3に書き出すための制御処理を実行する。このときには、例えば、今回のトラックのデータ書き込みに使用する記録ヘッドに対して適切に記録データの信号が供給されるようにチャンネルエンコーダ/デコーダ13における信号切り換えなどの制御を行う。
【0086】
一方、ステップS103において、今回のトラックのデータ書き込みに使用する記録ヘッドは不良ではないとして否定の判別結果が得られた場合には、ステップS104に進む。
ステップS104においては、現時点において、リライトすべきブロックが有るか否かについての判定を行う。つまり、これまでのRAWにより記録エラーであると判定されたブロックのデータについてリライトが実行されるのを待機しているものがあるか否かについて判別する。
このステップS104において否定の判別結果が得られたのであれば、ステップS109に進む。ステップS109においては、リライトすべきデータを含まずに、新規なブロックデータのみにより1トラック分の記録データを作成する。そして、ステップS111により、磁気テープに対する書き出しを行う。
【0087】
これに対して、ステップS104にてリライトすべきデータが有るとして肯定の判別結果が得られた場合には、ステップS105以降の処理に進む。
ステップS105においては、エラーレート検出テーブルを参照し、次のステップS106により、リライト対応分割領域のうちから、実際にリライトを実行する対象となるリライト対応分割領域である、リライト対象分割領域を選択決定する。ここでのリライト対象分割領域の選択をどのようにして実行するのかについては、先に図14の説明において例を挙げたアルゴリズムなどを採用すればよい。
【0088】
続くステップS107では、上記ステップS106にて選択決定したリライト対象分割領域が、今回書込対象となっているトラック(ヘッド対応トラック)に存在するか否かについての判別を行う。
ステップS106によるリライト対象分割領域の選択は、1循環単位記録領域のエラーレート検出に基づいて得られたエラーレート検出テーブルの内容に基づいて実行されるもので、このときに選択候補となるヘッド対応トラックは、循環単位記録領域を形成する全てであり、今回書込対象となっているヘッド対応トラックのみではない。このために、今回の書込対象となっているトラックと、ステップS106にて選択されたリライト対象分割領域とについて、同じヘッド対応トラックにはならない可能性がある。そこで、ステップS107による判定を行って、今回書込対象となっているトラックに対して、リライトするブロックデータを挿入可能か否かの確認を行うようにされる。
【0089】
ステップS107において、今回書込対象となっているトラック(ヘッド対応トラック)には、リライト対象分割領域は存在していないとして否定の判別結果が得られた場合には、今回書込対象となっているトラックに対してリライトするデータを挿入することはすべきでない。そこで、この場合にいは、ステップS109に進み、新規の書き込みデータにより1トラック分の記録データを生成し、ステップS111にて磁気テープ3への書き出しを実行する。
これに対して、ステップS107において、今回書込対象となっているトラック(ヘッド対応トラック)にはリライト対象分割領域が存在するとして肯定の判別結果が得られた場合には、今回書込対象となっているトラックに対してリライトするデータを挿入できることになる。
そこで、この場合にはステップS108に進んで、リライトするデータを含めるようにして、1トラック分の記録データを作成する。このときには、リライトすべきブロック単位のデータは、ステップS106にて選択されたリライト対象分割領域内に含まれるようにされる。また、リライト対象分割領域内におけるどの位置に対して、リライトすべきブロック単位のデータを挿入するのかについては、前述もしたように、各種の条件に応じて予め決めた所定の規則に従って決定すればよい。
そして、ステップS108により作成された1トラック分のデータを、ステップS111により磁気テープに対して書き出す。
この図16に示す手順を、1トラックのデータ記録ごとに実行していくようにされる。
【0090】
ところで、上記図16の処理の流れからも分かるように、本実施の形態では、ステップS105、S106によりエラーレート検出テーブルを参照してリライト対象分割領域の選択決定を行って後に、ステップS108にてリライトのデータを挿入した記録データを作成して磁気テープへの記録を行っている。つまり、本実施の形態では、過去のエラーレートの検出結果を利用して、将来的に記録エラーが生じないとされる、リライトすべきデータの記録位置を推定しているものと考えることができる。従って、実際にリライトすべきデータを磁気テープに記録しているときには、リライトすべきデータの記録位置を決定したときとはエラーレートの発生状況が異なっている可能性がある。このため、リライトを行った位置のエラーレートがかえって高くなって、再度記録エラーとなる可能性は存在することになる。しかしながら、エラーレートの発生状況は或る程度の継続性があることが通常であり、何ら推定を行わずにリライトの位置を決定する場合と比較すれば、リライトしたデータが再度記録エラーとなる可能性は大幅に小さくできるものである。
【0091】
また、例えば図8以降の説明では、1トラックを形成するブロック数を8としているが、これは説明を簡単なものとするための配慮であって、実際においては、図3などにより説明したようにして、1トラックは96ブロック、あるいはそれ以上の所定ブロック数から成るものである。従って、リライト対応分割領域を形成するブロック数としても、実際の1トラックのブロック数に応じて異なってくるものである。
また、これまでの説明では、リライト対応分割領域としては、1トラックごとに対応して4分割している例を示しているが、分割数については特に限定しない。また、1トラックにおけるリライト対応分割領域については、必ずしも同数のブロック数により形成される必要はない。本願発明の概念の下では、リライト対応分割領域を形成するブロック数は最小で1となる。
また、本願発明は、実施の形態として説明した構成のテープストリーマドライブ10のみに限定されるものではなく、ブロックに相当するデータの集合によりトラックが形成されるべきことが規定されるフォーマットに対応するのであれば、適用が可能である。
【図面の簡単な説明】
【0092】
【図1】本発明の実施の形態に対応するテープストリーマドライブの構成例を示すブロック図である。
【図2】磁気テープに記録されるトラックのフォーマットを示す説明図である。
【図3】トラックのデータ構造を模式的に示す説明図である。
【図4】ブロックのデータ構造を示す図である。
【図5】ID Informationに格納される情報の定義内容を示す図である。
【図6】従来におけるリライト動作例を示す説明図である。
【図7】従来におけるリライト動作例を示す説明図である。
【図8】実施の形態において前提となるリライト動作例を示す説明図である。
【図9】実施の形態において前提となるリライト動作例を示す説明図である。
【図10】ブロックごとのグループ特定のための処理を説明するための説明図である。
【図11】論理的にブロックが集合されて形成されるグループの構造例を示す説明図である。
【図12】実施の形態における磁気テープ上の記録領域設定例を示す図である。
【図13】エラーレート検出テーブルの構造例を示す図である。
【図14】実施の形態としてのリライト動作例を示す図である。
【図15】実施の形態としての、不良記録ヘッドに対応したデータ記録動作例を示す図である。
【図16】実施の形態としてのRAWの動作を含む記録時の手順を示すフローチャートである。
【符号の説明】
【0093】
3 磁気テープ、10 テープストリーマドライブ、11 回転ドラム、13 チャンネルエンコーダ/デコーダ 14A ドラムモータ、14B キャプスタンモータ、14C Tリールモータ、14D Sリールモータ、14E ローディングモータ、再生ヘッド、15 システムコントローラ、16 サーボコントローラ、17 メカドライバ、19 RF処理部、20 SCSIインターフェイス、21 圧縮/伸長回路、22 IFコントローラ/ECCフォーマター、23 バッファメモリ、HR1,HR2,HR3,HR4 記録ヘッド、HW1,HW2,HW3,HW4 再生ヘッド
【技術分野】
【0001】
本発明は、テープ状記録媒体に対して情報記録を行う記録装置、記録方法に関するものである。
【背景技術】
【0002】
デジタルデータを、テープ状記録媒体の1種である磁気テープに記録/再生することのできる装置として、いわゆるテープストリーマドライブが知られている。このようなテープストリーマドライブは、メディアであるテープカセットのテープ長にもよるが、例えば数十〜数百ギガバイト程度の膨大な記録容量を有することが可能である。このため、コンピュータ本体のハードディスク等のメディアに記録されたデータをバックアップするなどの用途に広く利用されている。また、データサイズの大きい画像データ等の保存に利用する場合にも好適とされている。
【0003】
このようなテープストリーマドライブでは、回転ドラムに所定のラップ角で磁気テープを巻装させた状態でテープを走行させるとともに、回転ドラムを回転させて、回転ドラム上の磁気ヘッドを用いてヘリカルスキャン方式で記録/再生走査を行なうことで高密度記録を可能にしている。従って周知のように、磁気テープ上には、その長手方向に対して所定の傾き角度を有するようにして形成されるトラックが連続するようにしてデータが記録されていくことになる。
【0004】
ところで、上記したようなテープストリーマドライブにおいては、磁気テープに記録されるデータのフォーマットとして、例えば次のようにして規定されたものが知られている。
先ず、1つのトラックは、所定複数のブロック(Block)といわれるデータ(区分データ)が連続することにより形成される。このブロックはヘッダ及びこれに続くユーザデータとパリティのエリアとから成る。
また、グループという固定長のデータ単位が規定される。グループは、所定複数の連続するトラックに記録されるデータの集合により形成されるデータ単位であって、テープストリーマドライブにおけるデータの記録再生単位として扱われる。例えば記録時におけるエラー訂正符号の付加、又は再生時におけるエラー訂正処理は、このグループで完結するようになっている。
【0005】
また、このようなテープストリーマドライブでは、記録時においてリードアフターライト(RAW:Read After Write)という動作を実行するようにされている。RAWの手順としては、先ず、磁気テープへのデータの記録が正常に行われたか否かについて、例えばエラーレートなどの検出結果に基づいて判定する。このデータの記録が正常に行われたか否かについての判定は、例えばブロック単位で行うようにされている。そして、記録が正常に行われなかったとして記録エラーの判定結果が得られた場合には、リライトを行うようにされる。つまり、そのブロックのデータを、再度、別の位置に記録し直す。
【0006】
このRAWとしてのリライトの動作であるが、当初は、記録エラーと判定されたブロックのデータを含めた1トラック分のデータ単位で行うようにされていた。しかしながら、トラック単位によるリライトの動作では、リライトに伴ってダミーデータ(無効データ)として扱われる領域がトラック単位で生じる。このために、リライトにより、磁気テープにおける記録可能容量を相当に消費してしまうという問題を抱えていた。
【0007】
そこで、例えば特許文献1として示すようにして、RAWとしてのリライトの動作について、トラック単位で記録を行うのではなく、記録エラーであるとして判定されたブロックのみについて実行するようにした構成が先に提案されている。この場合、リライトすべきブロック単位のデータを含むトラックにおいて、リライトのデータ以外のブロックは、新規に記録すべきデータとなるようにされている。このようにしてリライトが行われることで、ダミーデータのトラックが生じないようにされるために、磁気テープの記録可能容量の大幅な節約が可能になる。また、特許文献1では、ブロック単位でのリライトを行うのにあたって、各ブロックが属するグループを特定するための仕組みも提供するようにしている。これにより、例えば或るグループを成すとされるリライトのデータ(ブロック)が、例えば磁気テープ上で、次のグループを形成するとされるブロック群の中に混在するような状態で記録されたとしても、データ読み出しに際して、ブロックの適正な論理的配列によってグループ単位のデータを形成できる。
【0008】
【特許文献1】特開2003−272311号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
ところで、上記したRAWの動作は、記録エラーであるとして判定されたデータを新たに書き直すまでにとどまっており、特に、書き直されるデータが記録エラーにならないようにするための配慮はされていない。このために、リライトにより書き直されたデータが再び記録エラーであると判定されて、さらにリライトが行われることになる可能性が相応の高さで存在する。
特許文献1の技術のようにして、ブロック単位によりデータを書き直すようにしてRAWを行うようにすれば、トラック単位でデータの書き直しを行う場合よりも、大幅に磁気テープの記録可能容量を節約できる。しかしながら、リライトしたデータが再びリライトされるような現象が或る程度以上発生すると、記録可能容量の節約効果が低減することになってしまい好ましくない。
そこで本発明としては、リライトしたデータが再びリライトされる可能性をできるだけ小さくして、記録可能容量の節約効果が有効に発揮されるようにすることを目的とする。
【課題を解決するための手段】
【0010】
そこで本発明は上記した課題を考慮して、記録装置として次のように構成する。
つまり、第1〜第nの記録ヘッドと、記録データとして、複数の区分データから成るトラック単位の記録データを形成するデータ形成手段と、このデータ形成手段により形成されたトラック単位の記録データを、第1〜第nの記録ヘッドによりテープ状記録媒体に対して記録していくもので、第1〜第nの記録ヘッドごとに対応した第1〜第nのヘッド対応トラックが循環的にテープ状記録媒体に形成されていくようにする記録手段と、この記録手段によりテープ状記録媒体に記録されたデータについて、再度記録すべきか否かの判定を、区分データを最小単位として行う再度記録判定手段と、テープ状記録媒体に記録されたデータのエラーレートを検出するのにあたり、第1〜第nのヘッド対応トラックから成る循環単位記録領域を、ヘッド対応トラック単位及び区分データ単位とに基づいて所定規則により分割した分割領域ごとのエラーレートを検出する領域エラーレート検出手段と、この領域エラーレート検出手段により検出された分割領域ごとのエラーレートに基づいて、再度記録判定手段により再度記録すべきこととした再度記録対象データについての、循環単位記録領域における記録位置を決定する記録位置決定手段と、この記録位置決定手段により決定された記録位置となるようにして、再度記録対象データを含むトラック単位の記録データがデータ形成手段により形成されるようにして制御する制御手段とを備えることとした。
【0011】
上記構成では、テープ状記録媒体に対するデータ(情報)の記録を、第1〜第nの記録ヘッドにより行うようにされている。つまり、複数の記録ヘッドを用いた記録を行う。そして、これら第1〜第nの記録ヘッドによるテープ状記録媒体への記録は、第1〜第nの記録ヘッドごとに対応する第1〜第nのヘッド対応トラックが循環的に形成されていくようにして行われるようにされている。また、1つのトラックは、複数の区分データにより形成され、テープ状記録媒体に記録されたデータについての再度記録は、上記区分データを最小単位として行うようにされる。
そのうえで、本願発明では、テープ状記録媒体上における上記第1〜第nのヘッド対応トラックから成るとされる領域を循環単位記録領域とし、さらに、この循環単位記録領域を、トラック単位及び区分データ単位とに基づいて所定規則により分割して分割領域とする。そして、この分割領域ごとのエラーレートを検出した結果に基づいて、再度記録すべきデータについての循環単位記録領域における記録位置を決定する。この記録位置決定は、分割領域のエラーレートの検出結果を基とするので、エラーレートが小さいとされる分割領域を考慮して記録位置を決定できる。これにより、再度記録したデータが記録エラーとなる可能性が低くなる。
【発明の効果】
【0012】
上記のようにして本願発明では、再度記録したデータについて、さらに再度記録される可能性を低くすることが可能となり、その分のテープ状記録媒体の記録可能容量の節約が有効に図られることになる。
【発明を実施するための最良の形態】
【0013】
図1は、本発明の実施の形態としての記録装置に対応するテープストリーマドライブの構成例を示している。
この図に示すテープストリーマドライブ10は、ここでは図示していないテープカセットの磁気テープ3に対して、ヘリカルスキャン方式により記録/再生を行うようにされている。
この図において回転ドラム11には、4つの記録ヘッドHR1、HR2、HR3、HR4と、同じく4つの再生ヘッドHW1、HW2、HW3、HW4が設けられる。
記録ヘッドHR1、HR2、HR3、HR4は、回転ドラム11において、90°の回転角となる関係で順次配置されるようになっている。アジマス角は、HR1、HR3の組が同じで、HR2、HR4の組が同じとされたうえで、HR1、HR3の組と、HR2、HR4の組との間では互いに異なる(逆アジマスとなる)ように設定されている。
また、再生ヘッドHW1、HW2、HW3、HW4も、回転ドラム11において、90°の回転角となる関係で順次配置されるようになっている。また、各再生ヘッドの回転角的な位置としては、再生ヘッドHW1が、記録ヘッドHR1、HR2の間に位置し、再生ヘッドHW2が、記録ヘッドHR2、HR3の間に位置し、再生ヘッドHW3が、記録ヘッドHR3、HR4の間に位置し、再生ヘッドHW4が、記録ヘッドHR4、HR1の間に位置するように配置される。
なお、これらの記録ヘッドによりテープ状記録媒体に形成されるトラック、及び再生ヘッドによるトラックの読み出しがどのようになるのかについては、後述する。
【0014】
回転ドラム11はドラムモータ14Aにより回転されると共に、テープカセットから引き出された磁気テープ3が巻き付けられる。また、磁気テープ3は、キャプスタンモータ14B及び図示しないピンチローラにより送られる。また磁気テープ3は上述したようにリール2A,2Bに巻装されているが、リール2A,2Bはそれぞれリールモータ14C、14Dによりそれぞれ順方向及び逆方向に回転される。
ローディングモータ14Eは、図示しないローディング機構を駆動し、磁気テープ3の回転ドラム11へのローディング/アンローディングを実行する。
イジェクトモータ28はテープカセットの装填機構を駆動するモータであり、挿入されたテープカセットの着座およびテープカセットの排出動作を実行させる。
【0015】
ドラムモータ14A、キャプスタンモータ14B、リールモータ14C、14D、ローディングモータ14E、イジェクトモータ28はそれぞれメカドライバ17からの電力印加により回転駆動される。メカドライバ17はサーボコントローラ16からの制御に基づいて各モータを駆動する。サーボコントローラ16は各モータの回転速度制御を行って通常の記録再生時の走行や高速再生時のテープ走行、早送り、巻き戻し時のテープ走行などを実行させる。
なおEEP−ROM18にはサーボコントローラ16が各モータのサーボ制御に用いる定数等が格納されている。
【0016】
サーボコントローラ16が各モータのサーボ制御を実行するために、ドラムモータ14A、キャプスタンモータ14B、Tリールモータ14C、Sリールモータ14DにはそれぞれFG(周波数発生器)が設けられており、各モータの回転情報が検出できるようにしている。即ちドラムモータ14Aの回転に同期した周波数パルスを発生させるドラムFG29A、キャプスタンモータ14Bの回転に同期した周波数パルスを発生させるキャプスタンFG29B、Tリールモータ14Cの回転に同期した周波数パルスを発生させるTリールFG29C、Sリールモータ14Dの回転に同期した周波数パルスを発生させるSリールFG29Dが形成され、これらの出力(FGパルス)がサーボコントローラ16に供給される。
【0017】
サーボコントローラ16はこれらのFGパルスに基づいて各モータの回転速度を判別することで、各モータの回転動作について目的とする回転速度との誤差を検出し、その誤差分に相当する印加電力制御をメカドライバ17に対して行うことで、閉ループによる回転速度制御を実現することができる。従って、記録/再生時の通常走行や、高速サーチ、早送り、巻き戻しなどの各種動作時に、サーボコントローラ16はそれぞれの動作に応じた目標回転速度により各モータが回転されるように制御を行うことができる。
また、サーボコントローラ16はインターフェイスコントローラ/ECCフォーマター22(以下、IF/ECCコントローラという)を介してシステム全体の制御処理を実行するシステムコントローラ15と双方向に接続されている。
【0018】
このテープストリーマドライブ10においては、データの入出力にSCSIインターフェイス20が用いられている。例えばデータ記録時にはホストコンピュータ40から、固定長のレコード(record)という伝送データ単位によりSCSIインターフェイス20を介して逐次データが入力され、SCSIバッファコントローラ26を介して圧縮/伸長回路21に供給される。SCSIバッファコントローラ26はSCSIインターフェイス20のデータ転送を制御するようにされている。SCSIバッファメモリ27はSCSIインターフェイス20の転送速度を得るために、SCSIバッファコントローラ26に対応して備えられるバッファ手段とされる。またSCSIバッファコントローラ26は、後述するリモートメモリインターフェイス30に対して所要のコマンドデータを供給するとともに、リモートメモリインターフェイス30に対する動作クロックの生成も行う。
なお、このようなテープストリーマドライブシステムにおいては、可変長のデータの集合単位によってホストコンピュータ40よりデータが伝送されるモードも存在する。
【0019】
圧縮/伸長回路21では、入力されたデータについて必要があれば、所定方式によって圧縮処理を施すようにされる。圧縮/伸長回路21の出力は、IF/ECCコントローラ22に供給されるが、IF/ECCコントローラ22においてはその制御動作によって圧縮/伸長回路21の出力をバッファメモリ23に一旦蓄積する。このバッファメモリ23に蓄積されたデータはIF/ECCコントローラ22の制御によって、最終的にグループ(Group)という磁気テープの40トラック分に相当する固定長の単位としてデータを扱うようにされ、このデータに対してECCフォーマット処理が行われる。
【0020】
ECCフォーマット処理としては、記録データについて誤り訂正コードを付加すると共に、磁気記録に適合するようにデータについて変調処理を行って、チャンネルエンコーダ/デコーダ13に供給する。チャンネルエンコーダ/デコーダ13では、入力されたデータについて、記録ヘッドに応じたチャンネル分配などの処理を実行して、チャンネルごとにRF処理部19に供給する。
RF処理部19では供給された記録データに対して増幅、記録イコライジング等の処理を施して記録信号を生成し、チャンネル振り分けに応じて、記録ヘッドHR1,HR2,HR3,HR4に供給する。これにより記録ヘッドHR1,HR2,HR3,HR4から磁気テープ3に対するデータの記録が行われることになる。
【0021】
また、データ再生動作について簡単に説明すると、磁気テープ3の記録データが再生ヘッドHR1,HR2,HR3,HR4によりRF再生信号として読み出され、その再生出力はRF処理部19からチャンネルエンコーダ/デコーダ13を介することで、再生イコライジング、再生クロック生成、2値化、デコード(例えばビタビ復号)などが行われる。
このようにして読み出された信号はIF/ECCコントローラ22に供給されて、まず誤り訂正処理等が施される。そしてバッファメモリ23に一時蓄積され、所定の時点で読み出されて圧縮/伸長回路21に供給される。
圧縮/伸長回路21では、システムコントローラ15の判断に基づいて、記録時に圧縮/伸長回路21により圧縮が施されたデータであればここでデータ伸長処理を行い、非圧縮データであればデータ伸長処理を行わずにそのままパスして出力される。
圧縮/伸長回路21の出力データはSCSIバッファコントローラ26、SCSIインターフェイス20を介して再生データとしてホストコンピュータ40に出力される。
【0022】
SRAM24,フラッシュROM25は、システムコントローラ15が各種処理に用いるデータが記憶される。
フラッシュROM25は、例えばシステムコントローラ15が各種処理に用いる、定数等をはじめとしたデータが記憶される。システムコントローラ15が実行すべきプログラムや、その他ファームウェアなどとしての各種データも記憶させることができる。
またSRAM24は、例えばMIC(リモートメモリチップ4、接触型メモリ104)から読み出されたデータ、MICに書き込むデータ、テープカセット単位で設定されるモードデータ、各種フラグデータなどを保持するメモリ領域として利用される。また、システムコントローラ15が演算結果などを一時保持させる作業領域としても利用することができる。
【0023】
なお、SRAM24,フラッシュROM25は、システムコントローラ15を構成するマイクロコンピュータの内部メモリとして構成してもよく、またバッファメモリ23の領域の一部をワークメモリとして用いる構成としてもよい。
【0024】
図1に示すように、テープストリーマドライブ10とホストコンピュータ40間は上記のようにSCSIインターフェイス20を用いて情報の相互伝送が行われるが、システムコントローラ15に対してはホストコンピュータ40がSCSIコマンドを用いて各種の通信を行うことになる。
なお、例えばIEEE1394インターフェイスなどをはじめ、SCSI以外のデータインターフェイスが採用されても構わない。
また、先に本出願人は、テープカセットに磁気テープの管理情報等を記憶可能な不揮発性メモリを設け、テープストリーマドライブにより、この不揮発性メモリに接触式/若しくは非接触式でアクセスするための構成も提案している。本実施の形態としては、このようなテープストリーマドライブの構成を採っていても構わないものである。
【0025】
図2は、上記テープストリーマドライブ10によって磁気テープ3に記録されるトラックの構造を示している。
各トラックは、記録ヘッドによりいわゆるアジマスベタ記録によりトラック幅TWのトラックとして形成されていく。本実施の形態では、図1にて説明したようにして、回転ドラム11に対して記録ヘッドHR1,HR2、HR3、HR4(第1〜第nの記録ヘッド:n=4)が設けられている。そのうえで、記録時の磁気テープ3の走行方向と、回転ドラム11の回転方向が、それぞれ図1に示す矢印a、bによる方向であるとすると、回転ドラム11が1回転するのに応じては、図2に示すようにして、記録ヘッドHR1の走査により形成されるヘッド対応トラックTK−A、記録ヘッドHR2の走査により形成されるヘッド対応トラックTK−B、記録ヘッドHR3の走査により形成されるヘッド対応トラックTK−C、記録ヘッドHR4の走査により形成されるヘッド対応トラックTK−Dが、磁気テープ3上で連続するようにして形成されることになる。つまり、本実施の形態としては、回転ドラム11が1回転していくごとに、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dの順で、トラックが循環的に記録されるものとしてみることができる。
【0026】
そして、隣接するトラック同志は互いに+アジマスと−アジマスとで逆アジマスの関係となるようにされている。これをヘッド対応トラックTK−A、TK−B、TK−C、TK−Dとしてみれば、
ヘッド対応トラック[TK−A、TK−B]
ヘッド対応トラック[TK−B、TK−C]
ヘッド対応トラック[TK−C、TK−D]
ヘッド対応トラック[TK−D、TK−A]
の各組において、互いに逆アジマスとなっている。これは、先に説明した記録ヘッドHR1,HR2、HR3、HR4のアジマス角の設定と対応する。
【0027】
再生時には再生ヘッドHR1,HR2,HR3,HR4によりトラックが走査される。このとき、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dと、再生ヘッドHR1,HR2,HR3,HR4とは、同じアジマス角で対応させるようにする。つまり、記録ヘッドHW1,HW3により記録されたヘッド対応トラックTK−A、TK−Cの組は、再生ヘッドHR1,HR3の組により再生することになる。また、記録ヘッドHW2,HW4により記録されたヘッド対応トラックTK−A、TK−Cの組は、再生ヘッドHR2,HR4の組により再生することになる。このときには、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dに対して、それぞれ、再生ヘッドHR1、HR2,HR3,HR4が対応するようにして再生を行うことになる場合もあるし、再生ヘッドHR3,HR4,HR1、HR2が対応するようにして再生を行うことになる場合もある。ただし、後述するRAW(Read After Write)としてのエラーレート検出のためのデータ読み出しとしては、記録ヘッドと再生ヘッドの位置関係から、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dに対して、それぞれ、再生ヘッドHR1、HR2,HR3,HR4が対応するようにして再生を行うことになる。
また、再生ヘッドHR1,HR2,HR3,HR4のヘッド幅HWはトラック幅TWよりも広い幅とされているが、いわゆるアジマス効果により、隣接トラックからのクロストークは防止される。
【0028】
本実施の形態が対応するテープフォーマットでは、一対の隣接するトラックにより1フレームを形成する。例えば、ヘッド対応トラックTK−A、TK−Bの組と、ヘッド対応トラックTK−C、TK−Dの組(あるいはトラックTK−B、TK−Cの組と、トラックTK−D、TK−Aの組の関係であってもよい)により、それぞれ1フレームが形成される。また、20フレーム(40トラック)が1グループといわれる単位となる。グループは最小記録単位とされる。従って、ストリーミングといわれる1回の記録動作は、最小でグループごとに行われることになる。
【0029】
また、各トラック内のデータフォーマットは図3に示される。
1つのトラックは、例えば0〜95のフラグメントID(Fragment ID)が順次与えられた96のブロックの集合から成る。このブロックは所定のデータサイズによる固定長とされる。
【0030】
ブロックのデータ構造を図4に示す。
ブロックは、この図に示すようにして、先頭の16バイトのヘッダエリアと、これに続く127×2=256バイトのデータエリアと、12×2=24バイトのC1パリティエリアとから成る。C1パリティはブロック内のデータに対するするエラー訂正符号となる。ここでの詳しい説明は省略するが、本実施の形態のフォーマットでは、C2,C3パリティも規定される。C2パリティは、トラック単位で完結し、C3パリティはグループ単位で完結するエラー訂正符号である。
【0031】
図4に示すブロックのヘッダエリアにおいて、先ず先頭2バイト(Hi,j,0,0/Hi,j,0,1)の領域にはフラグメントIDが格納される。
このフラグメントIDには、図3に示したように、トラック内において連続して配置されるブロックごとに連番が付されるようにして0〜95のいずれかの値が格納されることになる。
【0032】
また、第3バイト(Hi,j,1,0)の上位4ビットには、Lower 4-bit of ATN(Absolute Track Number)の値が格納される。つまり、現ブロックが属するトラックについての絶対トラックナンバの値として、その下位4ビットが示される。
また、第3バイト(Hi,j,1,0)の下位4ビットにはエリアIDが格納される。エリアIDは、実際に設定される値により、例えば現ブロックが属する領域が、デバイス領域、リファレンス領域、システム領域、データ領域、及びEOD(End Of Data) 領域の何れであるのかが示される。
【0033】
第4バイト〜第6バイト(Hi,j,1,1〜Hi,j,2,1)の3バイトの領域は、論理アドレスの領域とされる。そして、第4バイトの上位4ビットには、論理アドレスとして、Lower 4-bit of Group Numberの値が格納される。Lower 4-bit of Group Numberは、現ブロックが論理的に属するとされるグループを示すグループナンバの値のうち、下位4ビットが示されている。
論理アドレスの領域において、残る第4バイトの下位4ビットと、第5バイト及び第6バイトから成る領域には、論理アドレスとしてデータIDの値が格納される。データIDは、現ブロックが論理的に属するとされるグループ内における、論理的なデータ位置を示す。
【0034】
第7バイト及び第8バイト(Hi,j,3,0/Hi,j,3,1)の2バイトの領域にはWrite Session Numberの値が格納される。
【0035】
続く第9バイト〜第14バイト(Hi,j,4,0/Hi,j,6,1)の6バイトの領域は、ID Information(Sub Code)の領域とされる。このID Informationに対しては、フォーマットによって規定される所定規則に従って、所定複数種類のうちのデータの何れか1種類が格納されることになる。
【0036】
上記ID Informationとして格納される情報種別の例を、図5に示す。
この図によると、ID Informationとして格納される値は、現ブロックのデータブロックナンバ(フラグメントID)の下位4ビット(Lower 4-bit of Data Block Number)の値に応じて、以下のように定義されている。
【0037】
Lower 4-bit of Data Block Number=0000の場合には、ID Informationには、現ブロックが属するパーティションを識別するためのPartition Numberを格納することとしている。
また、Lower 4-bit of Data Block Number=0001の場合には、現ブロックについてのデータフォーマット(Data Format)を格納することとしている。
Lower 4-bit of Data Block Number=0010の場合には、現ブロックを含むトラックのATN(Absolute Track Number)を格納することとしている。
Lower 4-bit of Data Block Number=0011の場合には、Appned ATNの値を格納することとしている。
【0038】
Lower 4-bit of Data Block Number=0100の場合には、Base Group Numberの値を格納することとしている。このBase Group Numberの値は、磁気テープ上における物理的位置として現ブロックが属するグループを示す。
【0039】
Lower 4-bit of Data Block Number=0101の場合には、Record Countを格納するようにされる。Record Countとは、現ブロックが何番目のレコードであるのかを示す。
Lower 4-bit of Data Block Number=0110の場合には、Separator 1 Countを格納する。
Lower 4-bit of Data Block Number=0111の場合には、Separator 2 Countを格納する。
【0040】
Lower 4-bit of Data Block Number=1000の場合には、LATNPG(Last ATN of the Previous Group)を格納する。ここでいう「Previous Group」とは、現ブロックが論理的に属しているとされる現グループより1つ前のグループである。そしてLATNPGは、この「Previous Group」を論理的に形成しているデータが記録されたトラックのうち、最後のトラックを示す値となる。
Lower 4-bit of Data Block Number=1001の場合には、GIT size of the current Basic Groupが格納される。
Lower 4-bit of Data Block Number=1010〜1111までの場合は、未定義とされている。
【0041】
このようにして、データブロックナンバに応じて、ID Informationに格納される情報の種類は異なる。そして、その種類がデータブロックナンバの下位4ビットに対応していることで、16ブロックにつき1回の割合で、ID Informationの各情報がブロックに割り与えられるようにして格納されることになる。
本実施の形態の場合、1トラックは96ブロックであるから、96/16=6で示されるように、ID Informationとして図5に示した各情報は、1トラックにおいて6回繰り返されるようにして記録されることになる。
そして、このID Informationとして格納される各情報が示す内容は、原則として、現ブロックを含むトラックを形成する全ブロックに共通となる。これにより、ID Informationの各情報が、上記のようにして16ブロックに1回の割合でしか格納されていないとしても、その情報は、現トラックを形成するブロックの全てに適用してよいことになるから、ID Informationの内容に基づいて適正に記録データを管理できることになる。
また、各ブロックに全種類のID Informationの情報を格納する必要も無くなるから、各ブロックのID Informationのサイズも6バイトで収まることになる。つまり、ブロックのヘッダエリアのデータサイズをこれ以上増加させずに、その分データエリアのサイズを確保することで、冗長度ができるだけ低くなるようにしている。つまり、単位データ量あたりにおけるユーザデータの記録可能容量ができるだけ有効に取れるようにしているものである。
【0042】
本実施の形態のテープストリーマドライブ10のシステムでは、リードアフターライト(RAW:Read After Write)といわれる動作が実行可能とされているが、参考として、本実施の形態のRAWの基本動作に対して従来となるRAWの動作例を図6及び図7により説明しておく。
【0043】
図6は、同一とされるグループ内においてRAWが行われる場合を模式的に示している。
ここで、例えばブロック内のID Informationが示すグループがGroup(N)であるとして、フレームナンバ1から順次トラックに対してメインデータを記録しているものとする。フレームとは、前述もしたように連続する2トラックにより形成されるもので、ここでは、隣接する+アジマストラック(+Az)と−アジマストラック(−Az)とにより1フレームが形成されているものとする。
【0044】
そして、ここで図示するようにして、フレーム6を記録した時点で、フレーム6の+アジマストラック(+Az)において一部記録エラーが発生したとする。
これに応じて、RAWが実行されるのではあるが、テープストリーマドライブ側が読み出しを行って記録エラーを検出し、リライトを開始するまでには或る程度の期間を要する。このため、リライトは、記録エラーが発生したトラック以降においても或る程度記録が進行した後において実行されることになる。この図では、フレーム6にて記録エラーが発生した後において、フレーム9まで記録し終えたところで、リライトが開始されている。
そして、この場合のリライト動作としては、上記フレーム9に続けて、改めてフレーム6からトラック単位でデータを記録し直していくことになる。このようにしてリライトが行われる結果、ダミーとして使用されなくなるデータは、記録エラーの発生したフレーム6と、これに続くフレーム7,8,9の4フレーム分となる。
【0045】
また、図7には、グループの変化位置近傍でRAWによるリライトを行った場合の例が模式的に示されている。
この場合には、先ずGroup(N)を順次記録しており、Group(N)のフレーム19のプラスアジマストラック(+Az)において一部記録エラーが発生した状態が示されている。そして、この場合には、この後において、Group(N)の最終フレームであるフレーム20を記録し、さらに、次のGroup(N+1)のフレーム1,2,3を記録終了した段階でリライトが開始されている。この場合、リライトは、Group(N)のフレーム19から開始され、続けて、Group(N)のフレーム20を記録したら、次のGroup(N+1)のフレーム1から順次記録を行っていくことになる。
この場合のダミーデータは、記録エラーの発生したGroup(N)のフレーム19と、これに続くGroup(N)のフレーム20、Group(N+1)のフレーム1,2,3の5フレームとなる。
【0046】
ところで、上記図6及び図7に示したようなRAWの動作では、例えば次のような問題がある。
図6及び図7からも分かるように、RAW動作は記録エラーが発生してからリライトを開始するまでに相応の時間差があるために、その間は記録動作が進行する。そのうえで、リライト動作はトラック単位により、記録エラーのトラック(フレーム)から改めてデータ記録を再開するという手順で実行される。
このため、記録エラーが発生したトラックは、たとえエラーがトラック内の一部であるとしても、トラック全体がダミーデータとして扱われることになってしまう。
また、記録エラーの発生したトラックに続けて記録されたトラックについてエラーが発生していなかったとしても、リライトが行われた後は、ダミーデータとして扱われてしまうことになる。
このようにして従来においては、記録エラーの発生した部位のデータサイズに比較して、リライトの動作に伴ってダミーデータとなるデータサイズが大きく、それだけデータの記録可能容量を大幅に消費してしまっているということがいえる。
【0047】
また、特に図7に示すようにして、グループの境界付近においてリライトが行われた場合、グループごとにトラックが連続せずに、一部が入れ替わるような状態も発生する可能性がある。
従来においては、図5に示したID InformationにおけるGroup Numberのみに依存して、現トラックがどのグループに属しているのかを判断している。ID Informationの各情報は、例えば16ブロックに1回の割合でしか格納されていない情報であることから、読み出しがうまくいかないような場合もある。このような場合には、例えばグループの境界のトラックを正確に認識することが困難となって、適正な記録再生動作を妨げる可能性がある。
【0048】
そこで、本実施の形態としては、トラック単位によりリライトを行うのではなく、ブロック単位によりリライトを行う構成を採ることとしている。この点について、図8及び図9を参照して説明する。
図8には、磁気テープ上に記録されるメインデータが模式的に示されている。この図に示すメインデータは、1つの枠が1つのブロックに対応する。そして、図において縦方向に並ぶ1列分のブロックの集合により、1トラックが形成されている。また、ブロック内に付されている0〜kの数は、ブロックごとに付されるデータID(Data ID)を示している。データIDは、前述もしたように、グループ内において、ブロックに対して順に付されるIDナンバである。
また、メインデータの下側には、ID InformationのBase Group Numberにより示されるグループを示している。
【0049】
この場合には、Group(N-1)としての最終ブロックkを記録し、これに続けてGroup(N)のブロック0から記録が開始されている。そして、図示するようにして、例えば連続する3つのブロックデータD1について記録エラーが発生したとする。この場合にも、RAWの動作として、このブロックデータD1について読み出しを行って記録エラーを検出し、リライト動作が開始されるまでには或る程度の時間を要する。そしてこの場合には、図のようにして、例えば記録エラーが発生したブロックデータD1の位置から7トラック先のトラックにおいて、再度、ブロックデータD1のリライトを行うようにしている。
この図8は、同じグループのブロック群が集合している範囲内においてリライトが行われる場合を示している。
【0050】
また、リライトがグループの境界付近で行われる場合の例を図9に示す。
例えばこの図に示すようにして、Group(N)に属するとされるブロックを書き込んでいる途中で、連続する2ブロックのブロックデータD2について記録エラーが発生したとする。そして、この場合には、Group(N)に属する最終ブロックkの書き込みが終了し、さらに次のGroup(N+1)に属するブロックデータを書き込んでいる途中で、RAWによるブロックデータD2のリライトが発生している。
この場合にも図示するようにして、リライトは、トラック単位で書き換えるのではなく、記録エラーとなったブロックのみについて行われるようになっている。
【0051】
なお、先に図4により説明したフォーマットによると、例えば図8において、記録エラーとなったブロックデータD1と、リライトによって書き込まれたブロックデータD1とは、同じデータIDを有していることになる。これに対して、記録エラーとなったブロックデータD1のフラグメントIDと、リライトによって書き込まれたブロックデータD1のフラグメントIDは、実際に記録されるトラック上の位置に応じて異なる値が書き込まれるべきものとなる。
この点については、図9に示すようにして、リライトがグループをまたいで行われるような場合にも同様である。
また、ブロック単位でデータがリライトされることに応じて、現グループとその前のグループとの境界はトラックである必要はないこととしている。つまり、図8及び図9に示すように、或るトラックの途中において、Group(N)の最終ブロックkが書き込まれたとすると、以降のトラックの残りの領域に対しては、次のGroup(N+1)の開始ブロック0からデータを書き込んでよいこととしている。
【0052】
ところで、上記のようしてブロック単位でリライトが行われることを許可するフォーマットとしていることによっては、特に図9により示したようにして、或る1つのグループに属するとされるブロック群の中に、その1つ前のグループに属するブロックが混在するような記録状態となる可能性がある。また、1トラックにおいて、前後のグループのブロックの境界が存在する状態となる可能性もある。つまり、トラック単位で見た場合には、異なる複数のグループに属するとされるブロックが混在するようにして記録されるという状態が生じ得る。
このような記録状態となる可能性があることを考慮すれば、1つのトラックを形成するブロック単位により、各ブロックが属するとされるグループが何れであるのかを特定できるようにする必要がある。
【0053】
本実施の形態としては、このために、先に図4に示したブロックのヘッダの構造としている。つまり、論理アドレスとして、データIDだけではなく、Lower 4-bit of Group Numberを規定している。このLower 4-bit of Group Numberを利用しての記録データの管理について、図10を参照して説明する。
【0054】
この図においては、例えばGroup(N)に属するブロックについてのリライトが行われたことで、示す2つのトラックc,dにおいて、Group(N)に属するブロックと、Group(N+1)に属するブロックの両者が混在して記録されている状態となっている。
【0055】
また、この図においては、トラックごとに記録されるID InformationのBase Group Numberが示すグループナンバが示されている。本実施の形態の場合には、Base Group Numberによっては、図10にも示すようにして、必ず連続するトラックの集合によって1つのグループナンバを示すようにされている。逆に言えば、連続するトラックにおいて、前後のグループナンバが入れ替わるようにしてBase Group Numberの値が格納されることはない。
また、Base Group Numberは、次のグループのブロックが記録されているトラックがあるとしても、Base Group Numberが示すグループに属するとされるブロックの記録が終了するまでは、現グループのグループナンバを示すようにされる。
図10の場合であれば、Base Group Numberが示すグループナンバとして、Group(N)は、磁気テープ上において最後のGroup(N)のブロックが物理的に記録される、トラックdまでを必ず含むべきことになる。なお、この場合には、Base Group Numberによっては、トラックdに続くトラックeまでがGroup(N)として扱われている。
本実施の形態において、Base Group Numberは、トラック単位により、ブロックが属するグループナンバを示すものであり、磁気テープ上において物理的に設定されたグループの範囲を示すものとなる。従って、図10からも分かるように、Base Group Numberが示すグループナンバは、各ブロックが論理的に属すべきグループと異なっていてもよいものとされている。
【0056】
そして、図10に示す各ブロックに格納されるLower 4-bit of Group Numberには、論理的にそのブロックが属するとされるグループのナンバが格納されることになる。
【0057】
このようにして、ID InformationとしてのBase Group Numberと共に、Lower 4-bit of Group Numberを規定すれば、例えば、以下の式により各ブロックが属するとされるグループを一意的に認識することができる。
If (Base Group Number[3:0] == Lower 4-bit of Group Number[3:0]){
ブロックのグループナンバ= Base Group Number;
} else if (Base Group Number[3:0] + 1) == Lower 4-bit of Group Number[3:0]){
ブロックのグループナンバ= Base Group Number + 1
} else {
不明
}
ただし、各ブロックは、2グループ離れた位置に記録されることはない。つまり、Group(N)に属するブロックは、ID InformationのBase Group Numberが示すGroup(N-1) またはGroup(N-1)としてのトラックに記録されるものとする。
【0058】
上記式に基づいて、ブロックの属するグループが特定される例を、再度図10を参照して説明する。
例えばテープストリーマドライブ10により、トラックaを再生しているとする。このトラックaは、Group(N)に属するブロックk−2,k−1,kに続いて、次のGroup(N+1)のブロック0,1,2,3,4が記録されている。
このトラックaのID InformationのBase Group Numberは、Group(N)であることを示している。そして、このトラックdのブロックk−2,k−1,kに関しては、各Lower 4-bit of Group Numberは、Group(N)の下位4ビットを示していることになる。従って、これらの各ブロックk−2,k−1,kのBase Group Numberの下位4ビットと、Lower 4-bit of Group Numberとは一致することになるから、これらのブロックk−2,k−1,kは、Group(N)に属するブロックであるということが特定されることになる。
【0059】
これに対して、トラックaのブロック0,1,2,3,4の各Lower 4-bit of Group Numberは、Group(N)ではなく、Group(N+1)の下位4ビットを示していることになる。これに対して、トラックaのID InformationのBase Group Numberは、Group(N)を示している。従って、この場合には、Base Group NumberとLower 4-bit of Group Numberとは一致していないことになる。
上記式に依れば、このようにしてLower 4-bit of Group Numberが、Base Group Numberと一致していないブロックについては、Base Group Number+1で表される値のグループに属するものであることとして決定することとしている。そして、トラックaのブロック0,1,2,3,4については、この規則が適用されるので、Base Group Number+1=Group(N)+1=Group(N+1)ということになって、Group(N+1)に属するものであるとして決定できることになる。
【0060】
以下、同様にして上記式に従うことで、次のトラックbを形成するブロックは、全てGroup(N+1)に属するものであるとして決定される。
また、さらに次のトラックc,dについては、リライトによって挿入されたブロックは、Group(N)のブロックであることが決定され、残るブロックはGroup(N+1)に属するものであることが決定される。
さらに、トラックdに続くトラックeを形成するブロックについても、全てGroup(N+1)に属するものであるとして決定することができる。
【0061】
このようにして、本実施の形態では、トラックにおける各ブロックごとに、どのグループに論理的に属するデータであるのかについて正確に特定することができる。そして、このようにして決定されたブロックごとのデータを、例えばメモリ上でデータID順に配列し直すことで、例えば図11に示すようにして、論理的なブロックの配列によって1グループを形成することができる。
【0062】
そのうえで、本実施の形態としては上記のようにしてブロックを最小単位としてデータのリライトを行うのにあたり、以降説明するようにして、リライトすべきデータ(リライトデータ)を記録するトラック、及びトラック内のブロック位置を決定したうえで、データ記録を実行していくようにされる。
【0063】
このために、先ず、本実施の形態では、図12に示すようにして磁気テープ3上のデータ記録領域を設定するようにされる。
図12においては、磁気テープ上に記録されるデータ(メインデータ)を模式的に示している。この図においても、1つの枠が1つのブロックに対応し、図において縦方向に並ぶ1列分のブロックの集合によって1つのトラックを形成するものとする。ここでは説明を簡単にするため、1トラックが8ブロックにより形成されるものとしてみている。従って、この場合において1トラックを形成するブロックごとに対応するフラグメントID(Fragment ID)としては、トラック走査方向に沿って0,1,2,3,4,5,6,7の値が割り振られることになる。
【0064】
そして、図12では、上記のようにして8ブロックにより形成されるトラックとして、トラック(ヘッド対応トラック)TK−A、TK−B、TK−C、TK−Dが示される。つまり、図2にて説明したように、回転ドラム11が1回転するごとに磁気テープ3上に形成される、4本1組のヘッド対応トラックの連続領域(循環単位記録領域)が示される。また、この図では、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dごとに対応して、各トラックを記録(走査)する記録ヘッドの符号と、RAW時において各トラックを再生(走査)する再生ヘッドの符号とを示している。
【0065】
このようにしてヘッド対応トラックTK−A、TK−B、TK−C、TK−Dから成る循環単位記録領域について、図12では、ヘッド対応トラックごとにおいて、連続する2つのブロックにより形成される領域単位により分割している。例えば、ヘッド対応トラックTK−Aは、セグメントID=[0,1]、セグメントID=[2,3]、セグメントID=[4,5]、セグメントID=[6,7]の組による連続する2ブロック単位により4つに分割している。同様にして、ヘッド対応トラックTK−B、TK−C、TK−Dについても、連続する2ブロック単位により4つに分割している。なお、トラック走査方向に沿った領域区分として、ここでは、各ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dで共通に、セグメントID=[0,1]の2ブロックの領域を第1走査エリア、セグメントID=[2,3]の2ブロックの領域を第2走査エリア、セグメントID=[4,5]の2ブロックの領域を第3走査エリア、セグメントID=[6,7]の2ブロックの領域を第4走査エリアということにしている。
本実施の形態では、このようにして分割される領域単位について、リライト対応分割領域ということにする。このようにして、1トラックごとに、2ブロック単位による4つのリライト対応分割領域を設定することで、ヘッド対応トラックTK−A、TK−B、TK−C、TK−Dから成る循環単位記録領域全体としては、16のリライト対応分割領域により分割されることになる。
つまり、本実施の形態では、回転ドラムが1回転するのに応じて複数の記録ヘッドにより形成されるヘッド対応トラックの組である循環単位記録領域を、所定数の連続するブロックからなる領域単位であるリライト対応分割領域により、分割、区分するようにされる。
【0066】
そして、上記のようにして循環単位記録領域についての分割設定を行ったうえで、RAWによるエラーレート検出としては、次のようにして行うようにされる。
まず、本実施の形態のRAWでは、図8〜図10などにより説明したブロック単位でのリライトを可能とするために、磁気テープ3から読み出したデータについて、ブロック単位によるエラーレート検出を実行していくようにされる。そして、エラーレートが一定以上となって記録エラーであるとして検出されたブロックのデータをリライトすべきデータとして決定する。
そのうえで本実施の形態では、上記のようにしてブロック単位でのエラーレート検出を実行していきながら、そのエラーレート検出結果を利用して、図12に示したリライト対応分割領域ごとの単位でみた場合のエラーレート(分割領域エラーレート)も検出するようにされる。
【0067】
上記のようにして検出される分割領域エラーレートは、例えば図13に示すような構造で示されるエラーレート検出テーブルにより保持、管理される。このエラーレート検出テーブルは、循環単位記録領域を成すヘッド対応トラックTK−A、TK−B、TK−C、TK−Dと、これらのヘッド対応トラックを4分割した第1〜第4走査エリアとのマトリクスによる16のセルを有する。これらのセルが、図12に示したリライト対応分割領域に対応する。例えばヘッド対応トラックTK−A・第1走査エリアにより示されるセルは、ヘッド対応トラックTK−Aの第1走査エリア(Segment ID=0,1)のリライト対応分割領域に対応する。
そして、これらのセルに対して、対応するリライト対応分割領域ごとに検出されたエラーレート(分割領域エラーレート)の値を格納するようにされる。循環単位記録領域(ヘッド対応トラックTK−A、TK−B、TK−C、TK−D)は、回転ドラム11が一回転するごとに繰り返し形成されるので、RAWにおける分割領域エラーレートの検出も、循環単位記録領域ごとの繰り返しとなる。これに応じて、図13に示すエラーレート検出テーブルに格納される分割領域エラーレートの内容も、循環単位記録領域ごとの読み出しが繰り返されるのに応じて更新されていくものとなる。
【0068】
なお、リライト対応分割領域ごとのエラーレートは、そのリライト対応分割領域を形成するブロックごとに検出されるエラーレートに基づいて得るようにすればよい。例えば、リライト対応分割領域を形成する全ブロックのエラーレートの平均値をリライト対応分割領域のエラーレートとすることが考えられる。あるいは、リライト対応分割領域を形成する全ブロックのエラーレートのうちから最大値若しくは最小値をリライト対応分割領域のエラーレートとすることも考えられる。あるいは、リライト対応分割領域を形成する全ブロックのエラーレート値についての出現分布などの結果に基づいて、リライト対応分割領域のエラーレートを決定することも考えられる。つまり、リライト対応分割領域ごとのエラーレート検出は、実際のエラーレート算出の処理能力や、実際に必要とされるエラーレートの信頼性などを考慮して、適切とされるアルゴリズムが設定されるようにすればよい。
【0069】
そして、本実施の形態では、このようにしてエラーレート検出テーブルの情報として得られる分割領域エラーレートに基づいて、下記のようにして、リライトすべきデータを書き込むべき位置を決定するようにされる。
これまでの説明から理解されるように、図13のエラーレート検出テーブルは、回転ドラム11が一回転することによって形成される記録領域である、循環単位記録領域におけるリライト対応分割領域ごとのエラーレートの分布を示すものとみることができる。このことから、エラーレート検出テーブルを参照することで、循環単位記録領域において、エラーレートが高いとされる領域部分と、エラーレートが低いとされる領域部分の分布について、リライト対応分割領域を最小単位として認識することが可能になるといえる。そして、本実施の形態では、エラーレートが低いと認識したリライト対応分割領域のブロックを使用して、データのリライトを実行するようにされる。
【0070】
具体的な一例を図14に示す。図14は、磁気テープ上に記録されるデータを、トラックとブロック構造の関係により示すものであり、1つの枠がブロックに対応し、縦方向に配列される8つのブロックにより1トラックを形成するものとしている。図の左側において、縦方向に示される0〜7の数は、1トラックごとにおけるブロック番号(Segment ID)を示す。また、ブロックの番号(Segment ID)とともに、第1〜第4走査エリアの区分も示す。また、図の上側においてはトラックごとが対応する循環単位記録領域内のトラック位置として、ヘッド対応トラックTK−A,TK−B,TK−C,TK−Dの何れであるのかを示している。
ここで、RAWにおけるエラーレート検出処理の結果として、図に示す1ブロック分のデータD1について、記録エラーであることが検出されたとする。この記録エラーであると検出されたデータD1は、循環単位記録領域においては、ヘッド対応トラックTK−AのSegment ID=3のブロックのデータとして記録されたものである。
【0071】
記録エラーであることが検出された上記データD1は、しかるべきタイミングでリライトされるべきことになる。
これまでにも述べたように、RAWにおいては、或る記録データについて記録エラーが検出されてから、この記録データについての磁気テープへの実際のリライトが実行されるまでには、或る程度の時間間隔を有するが、データD1の記録位置は、記録エラーの検出からリライトのための記録データ生成が実行されるまでの過程において、所定タイミングで得られているエラーレート検出テーブル内の分割領域エラーレートの値に基づいて決定するようにされる。
【0072】
ここで、リライトすべきデータの記録位置として、リライトのデータを挿入すべき対象の分割領域エラーレート(リライト対象分割領域)を決定するためのアルゴリズムについては、多様に考えられるものであり、本願発明の下では特に限定されない。例えば、エラーレート検出テーブルにおいて、分割領域エラーレートが最も低いとされるリライト対応分割領域から順に、リライトのデータを挿入すべき分割領域エラーレートとして優先的に選択していくことが考えられる。また、エラーレート検出テーブルにおける分割領域エラーレートの分布を二次元的(平面的に)にとらえて、エラーレートが低いものとしてみることのできる分布領域に対応するとされる、リライト対応分割領域から優先して、リライト対象分割領域を選択していくことも考えられる。
また、リライト対象分割領域の決定にあたっては、そのときに更新された最新のエラーレート検出テーブルを参照すればよいのであるが、例えば、ある一定の過去までのエラーレート検出テーブルの内容を、所定の規則に従って統計化した情報を構築して保持するようにして、この統計情報によって、リライト対象分割領域を決定するように構成することも考えられる。
【0073】
そして、図14の場合においては、エラーレート検出テーブルに基づいて、ヘッド対応トラックTK−Cにおける第4走査エリアを、データD1のためのリライト位置(リライト対象分割領域)として選択決定したものとする。この決定結果に従って、本実施の形態のテープストリーマドライブ10は、ヘッド対応トラックTK−Cとなるトラックにおける第4走査エリアを形成するブロックに対して、リライト用のデータD1を挿入するようにして、磁気テープに対する記録を行うようにされる。なお、この場合には、データD1が1ブロックサイズとされている。そこで、この場合には、データD1を第4走査エリアにおけるSegment ID=6のブロックに挿入することとしている。なお、データD1の挿入は、同じ第4走査エリアにおける他のブロックであるSegment ID=7としてもよい。本実施の形態としては、リライトすべきこととなったブロック単位ごとのデータについて、エラーレート対応分割領域内の何れのブロックに割り当てるのかについては、各種の条件などを考慮して所定の規則を設定すればよいものであり、特に限定されるべきものではない。
【0074】
一般に、磁気テープに記録されるデータの品質は一様ではなく各種の要因によって、物理的な記録位置によってばらつきのあることが分かっている。
要因となることの例として、本実施の形態のようにして複数の記録ヘッドを備える構成では、回転ヘッドに対する記録ヘッドの取り付け位置の誤差を挙げることができる。この誤差によっては、磁気テープに記録されるトラックの幅(トラックピッチ)について、記録ヘッドごとに対応した一定のばらつきを生じる。これにより、例えばある記録ヘッドに対応して形成されるトラックのピッチが狭くなるような状態となる場合がある。周知のようにして、トラックピッチが狭くなるほど記録データの品質が劣化する。このために、特定の記録ヘッドに対応するトラックについて、定常的にデータ品質が劣るような状態となることがある。
また、記録ヘッドの付着物によっても、ある特定の記録ヘッドに対応するトラックについて定常的にデータ品質が劣る状態を生じる。
また、磁気テープ自体が傷んでいる場合にも、その箇所においてデータ品質が劣化する。
さらに、磁気テープと記録ヘッドとの関係も記録データ品質のばらつきの原因となる。本実施の形態のテープストリーマドライブ10のようにして、ヘリカルスキャンにより磁気テープに対してデータを記録していく構成では、磁気テープに対して記録ヘッド(回転ドラム)が物理的に摺接するようにして磁界印加を行うことでデータ記録を実行していく。このような磁気テープと記録ヘッドの物理的関係により、形成されるトラックが磁気テープ上で直線にならずに、S字的な歪みを生じる場合がある。このような状態でアジマスベタ記録が行われていく結果、トラックピッチに誤差などが生じて、これによる記録データ品質の劣化を生じることなる。
また、磁気テープは、或る所定のテンションがかけられた状態で、所定の巻き付け角度により回転ドラムに対して巻き付けられるようにされるが、このとき、いわゆるエアフィルムなどといわれるように磁気テープの巻き付け始められる箇所では、記録ヘッドと磁気テープとの間に薄い空気の層が形成されてしまうような現象を生じることがある。また、テンションむらにより、ある巻き付け角度に対応する位置にて記録ヘッドと磁気テープとの圧着度が不十分になるような状態も生じる。このような現象は、例えばトラック方向(ヘッド走査方向)における記録データ品質の劣化を招く。
このようにして、磁気テープに対して記録されるデータについては、磁気テープ上の物理的な位置によって品質にばらつきが生じる。また、上記のようにして挙げた例によると、データ品質のばらつきは、トラック間で生じる要素もあれば、1トラックにおけるヘッド走査方向において生じる要素も存在する。また、記録ヘッドの回転などに応じて定常的、循環的に生じる要因もあれば、特に規則性を有することなく出現する要素もある。
【0075】
リライトするデータの位置を決めるための最も単純なアルゴリズムとしては、RAWにより或るデータの記録エラーが検出されてリライトすべきであるとの指示が得られたタイミングで、順次生成される記録データのシーケンスに対して、単純に、そのリライトすべきデータをブロック単位により再挿入する処理を行うこととすればよい。そして、このようにして生成された記録データにより、磁気テープ3に対してトラックを形成していくようにして記録を実行させる。
この場合、上記したようなアルゴリズムでは、リライトすべきデータが、どのトラックにおけるどのブロック位置に挿入されるようにして記録されるのかについては、そのリライトすべきデータについて記録エラーを検出したタイミングに依存するものであり、不定となる。リライトすべきデータの挿入位置が不定であるということは、換言すれば、記録エラーとなる可能性の高い位置を避けて記録するような配慮はされていないということであり、リライトを行ったデータが再び記録エラーとなってリライトが必要になる可能性を一定以下とすることが困難であるといえる。
【0076】
これに対して、本実施の形態としては、エラーレート検出テーブルに基づいて、例えばエラーレートが低いとされるリライト対応分割領域を選択決定することで、リライトの位置を決定していくこととしている。これにより、本実施の形態としては、上記の場合と比較して、リライトしたデータが再び記録エラーとなる可能性を低くすることができる。
また、本実施の形態のエラーレート検出テーブルは、循環単位記録領域を基として作成されている。この循環単位記録領域は、複数の記録ヘッドごとに対応して形成される複数のトラックを組としている。このことから、本実施の形態としては、例えば特定の記録ヘッドに対応して定常的に生じるとされるトラック間でのエラーレートのばらつきなどに対応して、相応に高い信頼性でもってリライト位置を決定することが可能となっている。また、1トラックが走査エリアで分割されていることで、トラックごとの走査方向におけるエラーレートの定常的なばらつきに対応できることになる。
また、本実施の形態のエラーレート検出テーブルは、RAWの進行により循環単位記録領域についてのエラーレート検出が行われるごとに応じて更新されるものであることから、ランダムに、あるいは回転ドラム2回転以上の比較的長いとされる周期性を有して現れるような、記録の進行に応じたエラーレートの変化にも対応して、リライトの位置を決定することができるようになっている。
【0077】
このようして、本実施の形態では、エラーレート検出テーブルに基づいて、リライトすべきデータの位置を決定して、リライトされたデータが再度リライトされる可能性を低くするようにされている。本実施の形態では、このような基本的な動作に加えて、次のようなデータ記録も実行するようにされる。
【0078】
エラーレート検出テーブルは循環単位記録領域に対応していることから、循環単位記録領域を形成するヘッド対応トラック(TK−A,TK−B,TK−C,TK−D)単位でみたエラーレートの状況も示しているということがいえる。また、このことは、回転ヘッド11に備えられる記録ヘッド(HR1、HR2、HR3、HR4)ごとの良否の程度を示しているということにもなる。
そこで、本実施の形態では、エラーレート検出テーブルの内容に基づいて、記録ヘッドの不良を検出するようにもされる。つまり、1つのトラックは、第1〜第4走査エリアの4つの領域に分割されているが、これらの領域のエラーレート(分割領域エラーレート)の状況が一定の条件を満たしているときに、記録ヘッドが不良であると判定するようにされる。一例としては、例えば、そのトラックにおける第1〜第4走査エリアの4つの領域のうち、2以上の領域において一定以下のエラーレートが検出されたのであれば、その記録ヘッドは不良であると判定することなどが考えられる。
【0079】
そして、このようにして不良であると判定された記録ヘッドによっては、有効とされる(正常に再生されることが期待される)データを記録しないようにされる。具体的には、例えば図15に示すようにしてデータを記録する。
図15には、回転ヘッド11の一回転分により磁気テープに記録される、ヘッド対応トラックTK−A,TK−B,TK−C,TK−Dのデータをブロック単位により示している。なお、この図においても、1トラックはSegment ID=0〜7で示される8つのブロックからなるものとする。
ここでは、記録ヘッドHR1から記録を開始するものとすると、データは、ヘッド対応トラックTK−A,TK−B,TK−C,TK−Dの順で記録されていき、各トラックにおいては、Segment ID=0〜7のブロック順で記録が行われていくことになる。
【0080】
そして、この場合においては、記録ヘッドHR1,HR2,HR3,HR4のうち、不良であるとして判定されたものは記録ヘッドHR3であることとする。この場合のヘッド対応トラックTK−A,TK−B,TK−C,TK−Dに対するデータの記録は、図示するようにして、先ず、記録ヘッドHR1に対応するヘッド対応トラックTK−AのセグメントID=0〜7の8ブロックに対して、順次データD0〜D7を記録する。次の記録ヘッドHR2に対応するトラックTK−Bについては、セグメントID=0〜7の8ブロックに対して、データD7に続くデータD8〜D15を記録する。
そして、不良であるとして判定された記録ヘッドHR3に対応するヘッド対応トラックTK−Cについては、ヘッド対応トラックTK−Bと同様にして、セグメントID=0〜7の8ブロックに対して、データD8〜D15を記録する。
次の、記録ヘッドHR4に対応するヘッド対応トラックTK−Dについては、セグメントID=0〜7の8ブロックに対して、データD15に続くデータD16〜D23を記録する。
【0081】
このようにして、本実施の形態では、不良と判定された記録ヘッドにより記録されるデータについては、他の不良ではない記録ヘッドにより記録されるデータと同じデータを記録するようにしている。この場合の規則としては、1つ前のトラックと同じデータを不良と判定された記録ヘッドにより記録することとしている。なお、不良であるとして判定された記録ヘッドが2以上で、かつ、これらの記録ヘッドにより記録されるトラックが連続する場合には、不良と判定された記録ヘッドのうちで先頭となる記録ヘッドにより記録されるトラックの、物理的に1つ前のトラックと同じデータを、これらの不良の記録ヘッドにより記録するようにされる。
但し、確認のために述べておくと、データとしての内容は同一となるようにされているが、例えば、図4,図5などに示した構造のヘッダにおいて、実際に記録される絶対トラックや、実際にそのトラックが属するとされるグループなどを示す情報については、必要に応じて変更される。これにより、トラック単位若しくはグループ単位での適正な記録データの管理が可能になる。
【0082】
この場合、不良と判定された記録ヘッドにより記録されるデータの実内容は、他の不良ではない記録ヘッドによっても記録されている。従って、例えば図15の場合であれば不良と判定された記録ヘッドHR3により記録されたヘッド対応トラックTK−CのデータD8〜D15は、物理的にその1つ前のヘッド対応トラックTK−Bから正常に再生することが期待されるものであり、データ読み出し結果について特に問題はないようにされている。逆にいえば、不良と判定された記録ヘッドHR3により記録されるデータそのものとしては、本来的に正常再生することを期待されていない無効なデータとしてみることができる。
上記した観点からすると、不良と判定された記録ヘッドによっては、特にデータ内容について有効な意味を持たないダミーデータを記録してもよいということがいえる。しかしながら、本実施の形態のようにして、とりあえずは、内容的に意味のあるデータを記録しておくことで、なんらかの事情により、記録ヘッドHR3の不良性が回復したような場合には、データD8〜D15の再生信頼性が高くなることが期待される。
【0083】
図16は、これまでに説明した本実施の形態としての記録時の手順を示すフローチャートであり、これまでに説明したRAWの手順を含む。この図に示す処理は、例えばフラッシュROM25に記憶されているプログラムを、例えばシステムコントローラ15がSRAMに展開して実行することで実現される処理としてみることができる。また、このようなプログラムは、所定のリムーバブルの記憶媒体などに記憶させて保存しておき、必要に応じてプログラムのインストールに利用することができる。
【0084】
図16に示す処理においては、先ず、ステップS101により1トラック分のデータを新規に書き込み開始するための指示が発生される。これに応じて、ステップS102以降による、1トラックのデータを書き込むための処理が開始される。
ステップS102においては、エラーレート検出テーブルを参照する。なお、RAWとしての再生ヘッドによる記録データの読み出しと、読み出したデータについてのエラーレート検出、及びこのエラーレート検出結果を利用した、エラーレート検出テーブルへの分割領域エラーレートの書き込み(エラーレート検出テーブルの更新)は、ここでは図示していないが、図16の処理と併行して継続的に実行されているものとする。
また、エラーレートの検出はIF/ECCコントローラ22にて行われ、このエラーレートの検出結果をシステムコントローラ15が取り込んで、データをリライトすべきか否かの判定を行うようにされる。また、エラーレート検出テーブルは、上記のようにしてシステムコントローラ15が取り込んだエラーレートの検出結果を利用して各リライト対応分割領域に応じた分割領域エラーレートを求めて書き込みを実行していくことで更新されるものとなる。
【0085】
ステップS103では、上記ステップS102としてのエラーレート検出テーブルの参照結果に基づいて、今回のトラックのデータ書き込みに使用する記録ヘッドは、不良であるか否かの判定を行う。この判定基準については、前述したとおりである。
このステップS103において、今回のトラックのデータ書き込みに使用する記録ヘッドは不良であるとして肯定の判別結果が得られた場合には、ステップS110に進む。ステップS110においては、図15にて説明したようにして、1トラック前と同じデータを記録データとして作成する。そして、ステップS111の処理によって、この記録データを磁気テープ3に書き出すための制御処理を実行する。このときには、例えば、今回のトラックのデータ書き込みに使用する記録ヘッドに対して適切に記録データの信号が供給されるようにチャンネルエンコーダ/デコーダ13における信号切り換えなどの制御を行う。
【0086】
一方、ステップS103において、今回のトラックのデータ書き込みに使用する記録ヘッドは不良ではないとして否定の判別結果が得られた場合には、ステップS104に進む。
ステップS104においては、現時点において、リライトすべきブロックが有るか否かについての判定を行う。つまり、これまでのRAWにより記録エラーであると判定されたブロックのデータについてリライトが実行されるのを待機しているものがあるか否かについて判別する。
このステップS104において否定の判別結果が得られたのであれば、ステップS109に進む。ステップS109においては、リライトすべきデータを含まずに、新規なブロックデータのみにより1トラック分の記録データを作成する。そして、ステップS111により、磁気テープに対する書き出しを行う。
【0087】
これに対して、ステップS104にてリライトすべきデータが有るとして肯定の判別結果が得られた場合には、ステップS105以降の処理に進む。
ステップS105においては、エラーレート検出テーブルを参照し、次のステップS106により、リライト対応分割領域のうちから、実際にリライトを実行する対象となるリライト対応分割領域である、リライト対象分割領域を選択決定する。ここでのリライト対象分割領域の選択をどのようにして実行するのかについては、先に図14の説明において例を挙げたアルゴリズムなどを採用すればよい。
【0088】
続くステップS107では、上記ステップS106にて選択決定したリライト対象分割領域が、今回書込対象となっているトラック(ヘッド対応トラック)に存在するか否かについての判別を行う。
ステップS106によるリライト対象分割領域の選択は、1循環単位記録領域のエラーレート検出に基づいて得られたエラーレート検出テーブルの内容に基づいて実行されるもので、このときに選択候補となるヘッド対応トラックは、循環単位記録領域を形成する全てであり、今回書込対象となっているヘッド対応トラックのみではない。このために、今回の書込対象となっているトラックと、ステップS106にて選択されたリライト対象分割領域とについて、同じヘッド対応トラックにはならない可能性がある。そこで、ステップS107による判定を行って、今回書込対象となっているトラックに対して、リライトするブロックデータを挿入可能か否かの確認を行うようにされる。
【0089】
ステップS107において、今回書込対象となっているトラック(ヘッド対応トラック)には、リライト対象分割領域は存在していないとして否定の判別結果が得られた場合には、今回書込対象となっているトラックに対してリライトするデータを挿入することはすべきでない。そこで、この場合にいは、ステップS109に進み、新規の書き込みデータにより1トラック分の記録データを生成し、ステップS111にて磁気テープ3への書き出しを実行する。
これに対して、ステップS107において、今回書込対象となっているトラック(ヘッド対応トラック)にはリライト対象分割領域が存在するとして肯定の判別結果が得られた場合には、今回書込対象となっているトラックに対してリライトするデータを挿入できることになる。
そこで、この場合にはステップS108に進んで、リライトするデータを含めるようにして、1トラック分の記録データを作成する。このときには、リライトすべきブロック単位のデータは、ステップS106にて選択されたリライト対象分割領域内に含まれるようにされる。また、リライト対象分割領域内におけるどの位置に対して、リライトすべきブロック単位のデータを挿入するのかについては、前述もしたように、各種の条件に応じて予め決めた所定の規則に従って決定すればよい。
そして、ステップS108により作成された1トラック分のデータを、ステップS111により磁気テープに対して書き出す。
この図16に示す手順を、1トラックのデータ記録ごとに実行していくようにされる。
【0090】
ところで、上記図16の処理の流れからも分かるように、本実施の形態では、ステップS105、S106によりエラーレート検出テーブルを参照してリライト対象分割領域の選択決定を行って後に、ステップS108にてリライトのデータを挿入した記録データを作成して磁気テープへの記録を行っている。つまり、本実施の形態では、過去のエラーレートの検出結果を利用して、将来的に記録エラーが生じないとされる、リライトすべきデータの記録位置を推定しているものと考えることができる。従って、実際にリライトすべきデータを磁気テープに記録しているときには、リライトすべきデータの記録位置を決定したときとはエラーレートの発生状況が異なっている可能性がある。このため、リライトを行った位置のエラーレートがかえって高くなって、再度記録エラーとなる可能性は存在することになる。しかしながら、エラーレートの発生状況は或る程度の継続性があることが通常であり、何ら推定を行わずにリライトの位置を決定する場合と比較すれば、リライトしたデータが再度記録エラーとなる可能性は大幅に小さくできるものである。
【0091】
また、例えば図8以降の説明では、1トラックを形成するブロック数を8としているが、これは説明を簡単なものとするための配慮であって、実際においては、図3などにより説明したようにして、1トラックは96ブロック、あるいはそれ以上の所定ブロック数から成るものである。従って、リライト対応分割領域を形成するブロック数としても、実際の1トラックのブロック数に応じて異なってくるものである。
また、これまでの説明では、リライト対応分割領域としては、1トラックごとに対応して4分割している例を示しているが、分割数については特に限定しない。また、1トラックにおけるリライト対応分割領域については、必ずしも同数のブロック数により形成される必要はない。本願発明の概念の下では、リライト対応分割領域を形成するブロック数は最小で1となる。
また、本願発明は、実施の形態として説明した構成のテープストリーマドライブ10のみに限定されるものではなく、ブロックに相当するデータの集合によりトラックが形成されるべきことが規定されるフォーマットに対応するのであれば、適用が可能である。
【図面の簡単な説明】
【0092】
【図1】本発明の実施の形態に対応するテープストリーマドライブの構成例を示すブロック図である。
【図2】磁気テープに記録されるトラックのフォーマットを示す説明図である。
【図3】トラックのデータ構造を模式的に示す説明図である。
【図4】ブロックのデータ構造を示す図である。
【図5】ID Informationに格納される情報の定義内容を示す図である。
【図6】従来におけるリライト動作例を示す説明図である。
【図7】従来におけるリライト動作例を示す説明図である。
【図8】実施の形態において前提となるリライト動作例を示す説明図である。
【図9】実施の形態において前提となるリライト動作例を示す説明図である。
【図10】ブロックごとのグループ特定のための処理を説明するための説明図である。
【図11】論理的にブロックが集合されて形成されるグループの構造例を示す説明図である。
【図12】実施の形態における磁気テープ上の記録領域設定例を示す図である。
【図13】エラーレート検出テーブルの構造例を示す図である。
【図14】実施の形態としてのリライト動作例を示す図である。
【図15】実施の形態としての、不良記録ヘッドに対応したデータ記録動作例を示す図である。
【図16】実施の形態としてのRAWの動作を含む記録時の手順を示すフローチャートである。
【符号の説明】
【0093】
3 磁気テープ、10 テープストリーマドライブ、11 回転ドラム、13 チャンネルエンコーダ/デコーダ 14A ドラムモータ、14B キャプスタンモータ、14C Tリールモータ、14D Sリールモータ、14E ローディングモータ、再生ヘッド、15 システムコントローラ、16 サーボコントローラ、17 メカドライバ、19 RF処理部、20 SCSIインターフェイス、21 圧縮/伸長回路、22 IFコントローラ/ECCフォーマター、23 バッファメモリ、HR1,HR2,HR3,HR4 記録ヘッド、HW1,HW2,HW3,HW4 再生ヘッド
【特許請求の範囲】
【請求項1】
第1〜第nの記録ヘッドと、
記録データとして、複数の区分データから成るトラック単位の記録データを形成するデータ形成手段と、
上記データ形成手段により形成されたトラック単位の記録データを、上記第1〜第nの記録ヘッドによりテープ状記録媒体に対して記録していくもので、上記第1〜第nの記録ヘッドごとに対応した第1〜第nのヘッド対応トラックが循環的に上記テープ状記録媒体に形成されていくようにする記録手段と、
上記記録手段によりテープ状記録媒体に記録されたデータについて、再度記録すべきか否かの判定を、上記区分データを最小単位として行う再度記録判定手段と、
テープ状記録媒体に記録されたデータのエラーレートを検出するのにあたり、上記第1〜第nのヘッド対応トラックから成る循環単位記録領域を、上記ヘッド対応トラック単位及び区分データ単位とに基づいて所定規則により分割した分割領域ごとのエラーレートを検出する領域エラーレート検出手段と、
上記領域エラーレート検出手段により検出された上記分割領域ごとのエラーレートに基づいて、上記再度記録判定手段により再度記録すべきこととした再度記録対象データについての、上記循環単位記録領域における記録位置を決定する記録位置決定手段と、
上記記録位置決定手段により決定された記録位置となるようにして、再度記録対象データを含む上記トラック単位の記録データがデータ形成手段により形成されるようにして制御する制御手段と、
を備えることを特徴とする記録装置。
【請求項2】
上記領域エラーレート検出手段が検出対象とする上記分割領域は、上記第1〜第nのヘッド対応トラックを、それぞれ所定数の区分データから成る単位で分割するようにして形成したものである、
ことを特徴とする請求項1に記載の記録装置。
【請求項3】
上記領域エラーレート検出手段の検出結果に基づいて、上記第1〜第nのヘッド対応トラック単位でのデータ品質の良否を判定する良否判定手段をさらに備え、
上記制御手段は、上記第1〜第nの記録ヘッドのうちで、上記良否判定手段によりデータ品質が良好でないと判定されたトラックに対応する記録ヘッドによっては、有効なデータの記録が行われないように制御する、
ことを特徴とする請求項1に記載の記録装置。
【請求項4】
上記制御手段は、
上記良否判定手段によりデータ品質が良好でないと判定されたヘッド対応トラックに対応する記録ヘッドにより記録されるトラック単位の記録データについて、上記良否判定手段によりデータ品質が良好でないと判定されていない他のヘッド対応トラックに対応する記録ヘッドにより記録すべきトラック単位の記録データと同じ内容が、上記データ形成手段により形成されるようにして制御する、
ことを特徴とする請求項3に記載の記録装置。
【請求項5】
記録データとして、複数の区分データから成るトラック単位の記録データを形成するデータ形成手順と、
上記データ形成手順により形成されたトラック単位の記録データを、第1〜第nの記録ヘッドによりテープ状記録媒体に対して記録していくもので、上記第1〜第nの記録ヘッドごとに対応した第1〜第nのヘッド対応トラックが循環的に上記テープ状記録媒体に形成されていくようにする記録手順と、
上記記録手順によりテープ状記録媒体に記録されたデータについて、再度記録すべきか否かの判定を、上記区分データを最小単位として行う再度記録判定手順と、
テープ状記録媒体に記録されたデータのエラーレートを検出するのにあたり、上記第1〜第nのヘッド対応トラックから成る循環単位記録領域を、上記ヘッド対応トラック単位及び区分データ単位とに基づいて所定規則により分割した分割領域ごとのエラーレートを検出する領域エラーレート検出手順と、
上記領域エラーレート検出手順により検出された上記分割領域ごとのエラーレートに基づいて、上記再度記録判定手順により再度記録すべきこととした再度記録対象データについての、上記循環単位記録領域における記録位置を決定する記録位置決定手順と、
上記記録位置決定手順により決定された記録位置となるようにして、再度記録対象データを含む上記トラック単位の記録データがデータ形成手順により形成されるようにして制御する制御手順と、
を実行することを特徴とする記録方法。
【請求項1】
第1〜第nの記録ヘッドと、
記録データとして、複数の区分データから成るトラック単位の記録データを形成するデータ形成手段と、
上記データ形成手段により形成されたトラック単位の記録データを、上記第1〜第nの記録ヘッドによりテープ状記録媒体に対して記録していくもので、上記第1〜第nの記録ヘッドごとに対応した第1〜第nのヘッド対応トラックが循環的に上記テープ状記録媒体に形成されていくようにする記録手段と、
上記記録手段によりテープ状記録媒体に記録されたデータについて、再度記録すべきか否かの判定を、上記区分データを最小単位として行う再度記録判定手段と、
テープ状記録媒体に記録されたデータのエラーレートを検出するのにあたり、上記第1〜第nのヘッド対応トラックから成る循環単位記録領域を、上記ヘッド対応トラック単位及び区分データ単位とに基づいて所定規則により分割した分割領域ごとのエラーレートを検出する領域エラーレート検出手段と、
上記領域エラーレート検出手段により検出された上記分割領域ごとのエラーレートに基づいて、上記再度記録判定手段により再度記録すべきこととした再度記録対象データについての、上記循環単位記録領域における記録位置を決定する記録位置決定手段と、
上記記録位置決定手段により決定された記録位置となるようにして、再度記録対象データを含む上記トラック単位の記録データがデータ形成手段により形成されるようにして制御する制御手段と、
を備えることを特徴とする記録装置。
【請求項2】
上記領域エラーレート検出手段が検出対象とする上記分割領域は、上記第1〜第nのヘッド対応トラックを、それぞれ所定数の区分データから成る単位で分割するようにして形成したものである、
ことを特徴とする請求項1に記載の記録装置。
【請求項3】
上記領域エラーレート検出手段の検出結果に基づいて、上記第1〜第nのヘッド対応トラック単位でのデータ品質の良否を判定する良否判定手段をさらに備え、
上記制御手段は、上記第1〜第nの記録ヘッドのうちで、上記良否判定手段によりデータ品質が良好でないと判定されたトラックに対応する記録ヘッドによっては、有効なデータの記録が行われないように制御する、
ことを特徴とする請求項1に記載の記録装置。
【請求項4】
上記制御手段は、
上記良否判定手段によりデータ品質が良好でないと判定されたヘッド対応トラックに対応する記録ヘッドにより記録されるトラック単位の記録データについて、上記良否判定手段によりデータ品質が良好でないと判定されていない他のヘッド対応トラックに対応する記録ヘッドにより記録すべきトラック単位の記録データと同じ内容が、上記データ形成手段により形成されるようにして制御する、
ことを特徴とする請求項3に記載の記録装置。
【請求項5】
記録データとして、複数の区分データから成るトラック単位の記録データを形成するデータ形成手順と、
上記データ形成手順により形成されたトラック単位の記録データを、第1〜第nの記録ヘッドによりテープ状記録媒体に対して記録していくもので、上記第1〜第nの記録ヘッドごとに対応した第1〜第nのヘッド対応トラックが循環的に上記テープ状記録媒体に形成されていくようにする記録手順と、
上記記録手順によりテープ状記録媒体に記録されたデータについて、再度記録すべきか否かの判定を、上記区分データを最小単位として行う再度記録判定手順と、
テープ状記録媒体に記録されたデータのエラーレートを検出するのにあたり、上記第1〜第nのヘッド対応トラックから成る循環単位記録領域を、上記ヘッド対応トラック単位及び区分データ単位とに基づいて所定規則により分割した分割領域ごとのエラーレートを検出する領域エラーレート検出手順と、
上記領域エラーレート検出手順により検出された上記分割領域ごとのエラーレートに基づいて、上記再度記録判定手順により再度記録すべきこととした再度記録対象データについての、上記循環単位記録領域における記録位置を決定する記録位置決定手順と、
上記記録位置決定手順により決定された記録位置となるようにして、再度記録対象データを含む上記トラック単位の記録データがデータ形成手順により形成されるようにして制御する制御手順と、
を実行することを特徴とする記録方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2007−80459(P2007−80459A)
【公開日】平成19年3月29日(2007.3.29)
【国際特許分類】
【出願番号】特願2005−270498(P2005−270498)
【出願日】平成17年9月16日(2005.9.16)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成19年3月29日(2007.3.29)
【国際特許分類】
【出願日】平成17年9月16日(2005.9.16)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]