まず、本実施例1にかかる記憶装置の特徴を従来の技術と比較して説明する。図1は、本実施例1にかかる記憶装置の特徴を説明するための説明図である。なお、本実施例1では、記憶媒体(例えば、磁気ディスク)に対して物理フォーマットを行った場合の各セクタサイズを1024バイトとして説明するがこれに限定されるものではない。
従来の記憶装置では、記憶媒体に対して物理フォーマットを行い、不良セクタ(エラーレイトが基準値以上、エラー訂正不能となるセクタ)を検出した場合には、この不良セクタに対してスリッピング処理を行い、不良セクタを使用不可としていた。具体的には、図1の1段目において、N+1番目のセクタが不良セクタとして検出された場合には、かかるN+1番目のセクタを使用不可とし、N+2番目以降のセクタの番号を1ずつずらして利用していた(図1の2段目参照)。
しかしながら、上述した従来の技術では、物理フォーマット実行時に検出した不良セクタに対してスリッピング処理を行い、かかる不良セクタを使用不可とするため、不要セクタの増加に伴って、記憶媒体上の使用可能容量が著しく減少してしまう、あるいは転送速度の低下を招くという問題があった。
一方、本実施例1にかかる記憶装置は、記憶媒体に対して物理フォーマットを行い、不良セクタを検出した場合には、正常なセクタ(以下、標準セクタ)に対する記録密度よりも低い記録密度によって不良セクタにデータを記憶させる。通常の記録密度によってデータを書き込んだ場合にエラーレイトが基準値以上となる不良セクタであっても、記録密度を下げることによってデータを適切に記憶することができるようになるため、記憶容量が通常のセクタよりも低い正常なセクタ(以下、救済セクタ)として不良セクタを再利用することができる(図1の3段目参照)。
本実施例1にかかる記憶装置は、不良セクタにデータを記憶させる場合に、データを記録させるための記録クロック数を低い値に調整する。以下、不良セクタにデータを記憶させるための記録クロック数を調整記録クロック数と表記する。
標準セクタにデータを記録する場合の記録クロック数(以下、標準記録クロック数)をF1とし、調整記録クロック数をF2とすると、
F2=F1/M
によって表すことができる。また、標準記録クロック数F1によって標準セクタに記録されるデータの容量をD1バイトとし、調整記録クロック数F2によって不良セクタ(救済セクタ)に記録されるデータの容量をD2バイトとすると、
D2=D1/M
によって表すことができる。
ここで、上記した数式に含まれるMは記録クロック数の減衰比を表し、減衰比Mが大きくなるほど、調整記録クロック数の値が低くなり、救済セクタに記憶されるデータの容量が小さくなる。この減衰比Mには、2のn乗(nは正の整数)となる数値が代入される。
例えば、物理フォーマットによって各標準セクタのサイズが1024に設定されており、減衰比Mが2に設定されている場合には、救済セクタに512バイトのデータが記憶されることになる。
このように、本実施例1にかかる記憶装置は、不良セクタを検出した場合に、調整記録クロック数によって不良セクタ(救済セクタ)にデータを記憶させるので、不良セクタを有効に利用することができ、不良セクタによる記憶容量の低減を最小限に抑えることができる。また、救済セクタの記録密度は、標準セクタの記録密度と比較して低いので、SNR(S/N比)が大幅に向上する。
また、本実施例1にかかる記憶装置は、救済セクタに記憶されたデータに基づいてCRC(Cyclic Redundancy Check)冗長ビットおよびECC(Error Correcting Code)冗長ビットを算出するので、救済セクタに付加されるCRC冗長ビットおよびECC冗長ビットのビット長を標準セクタのデータに付加されるCRC情報ビットおよびECC冗長ビットと比較して大幅に削減することができる。
なお、標準セクタに記憶されたデータを再生する場合の再生クロック数(以下、標準再生クロック数)は、標準記録クロック数F1と同じとなり、救済セクタに記憶されたデータを再生する場合の再生クロック数(以下、調整再生クロック数)は、かかる救済セクタにデータが記録された調整記録クロック数F2と同じとなる。
つぎに、救済セクタに記憶されたデータに対するCRC冗長ビット/ECC冗長ビットの付加とデータ生成のプロセスについて説明する。図2は、救済セクタに記憶されたデータに対するCRC冗長ビット/ECC冗長ビットの付加およびデータ生成のプロセスを示す図である。なお、図2では一例として、標準セクタが記憶するデータのサイズを1024バイトとし、救済セクタが記憶するデータのサイズを512バイトとする。
図2の1段目に示すように、記憶装置は、救済セクタに記録する512バイトのユーザデータ(A)を基にして、CRC冗長ビット(B)およびECC冗長ビット(C)を計算する(本来ならば、標準セクタに記録する1024バイトのユーザデータを基にしてCRC冗長ビットおよびECC冗長ビットが計算される)。
そして、図2の2段目に示すように、記憶装置は、当該記憶装置に内蔵された記録用バッファメモリ内においてユーザデータ(A)とCRC冗長ビット(B)とECC冗長ビット(C)とを結合する。
続いて、図2の3段目に示すように、記憶装置は、減衰比Mを2に設定し、標準記録クロック数F1の半分の記録クロック数となる調整記録クロック数F2によって、CRC冗長ビット(B)およびECC冗長ビット(C)が付加されたユーザデータ(A)を救済セクタに記録する。
救済セクタに記憶されたユーザデータの再生を行う場合には、図2の4段目に示すように、救済セクタに記憶されたユーザデータ(A)とCRC冗長ビット(B)とECC冗長ビット(C)とを記憶装置に内蔵された再生用バッファメモリに読出してユーザデータ(A)のエラー訂正を行った後にかかるユーザデータ(A)の前後に出力されたユーザデータと結合する。
つぎに、記憶媒体上の標準セクタと救済セクタとのデータ結合について説明する。図3は、標準セクタと救済セクタとのデータ結合を説明するための説明図である。なお、図3では一例として、標準セクタが記憶するデータのサイズを1024バイトとし、救済セクタが記憶するデータのサイズを512バイトとする。
図3に示すように、512バイトのデータを記憶する救済セクタ(N+1番目のセクタ)の前後に1024バイトのデータを記憶する標準セクタ(N番目のセクタおよびN+2番目のセクタ)が結合されている場合には、記憶装置は、擬似的に各セクタが512バイトごとに分割しているものとしてデータの記録および再生を行う。すなわち、1024バイトのデータを記憶する1つの標準セクタを、512バイトのデータを記憶するセクタ2つとして取り扱う。このように、記憶装置は、各セクタが記憶するデータを擬似的に512バイトとして取り扱うことで、記憶媒体に対するデータの記録および再生に関する処理を単純にすることができる。
ところで、上述した救済セクタに関する情報は、交代処理管理テーブルとして、記憶媒体上に記憶される。図4は、本実施例1にかかる交代処理管理テーブルのデータ構造の一例を示す図である。同図に示すように、この交代処理管理テーブルは、不良セクタ識別番号と、処理方法指定データと、減衰比とを備える。
このうち、不良セクタ識別番号は、記憶媒体上の不良セクタの位置を識別するデータである。処理方法指定データは、不良セクタ識別番号によって識別される不良セクタに対して行った処理の内容を示すデータが記憶される。この処理方法指定データが救済処理の場合には、不良セクタに対して救済処理が行われ、かかる不良セクタが救済セクタとして利用されていることになる。また、処理方法指定データがスリッピング処理の場合には、不良セクタに対してスリッピング処理が行われ、かかる不良セクタに対するデータの記録が不可能となる。減衰比は、救済処理を行った場合の減衰比Mのデータを示す。
つぎに、本実施例1にかかる記憶装置の構成について説明する。図5は、本実施例1にかかる記憶装置の構成を示す機能ブロック図である。同図に示すように、この記憶装置100は、記憶媒体101と、ヘッド102と、ライトチャンネル103と、リードチャンネル104と、バッファメモリ105と、入出力制御IF部106と、不良セクタ検出部107と、処理判定制御部108と、交代処理管理テーブル更新制御部109と、コントローラ110とを備えて構成される。
記憶媒体101は、ガラス、アルミ等の金属、または樹脂製の薄い円盤(ディスク)に磁性体あるいは光学的変化を記録特性とする材料を成膜した記憶媒体である。以下記憶装置100は、記憶媒体101の磁性体の磁化状態を変化させることにより、データの記録や消去を行うものとする。記憶媒体101は、物理フォーマットが行われることによって、所定バイトごとに区切られたセクタが形成される(例えば、図1参照)。また、記憶媒体101は、所定の記憶領域に交代処理管理テーブル(図4参照)を記憶する。
ヘッド102は、減衰比に応じた記録クロック数(標準記録クロック数あるいは調整記録クロック数)によって記憶媒体101に対するデータの記録を行い、減衰比に応じた再生クロック数(標準再生クロック数あるいは調整再生クロック数)によって記憶媒体101に記憶されたデータを再生するヘッドである。
ライトチャンネル103は、記憶媒体101に記録するデータを取得した場合に、取得したデータをヘッド102に出力する処理部である。リードチャンネル104は、記憶媒体101から再生されたデータをヘッド102から取得した場合に、取得したデータを記憶装置100内の各種処理部に出力する処理部である。
バッファメモリ105は、記憶媒体101に記録・再生されるデータを一時的に記憶する記憶部であり、図2に示した記録用バッファメモリおよび再生用バッファメモリに対応する。入出力制御IF部106は、ホストコンピュータ(図示略)との間でデータ通信を行う処理部である。
不良セクタ検出部107は、コントローラ110によって記憶媒体101に対する物理フォーマットが行われた場合に、試験用のデータを標準記録クロック数によって記憶媒体101に記録し、不良セクタを検出する処理部である。
不良セクタ検出部107が不良セクタを検出する方式はどのような方式を用いてもよい。例えば、不良セクタ検出部107は、試験用のデータを各標準セクタに記録し、各標準セクタから試験用のデータを再生する場合のエラーレイトを検出する。そして、不良セクタ検出部107は、検出したエラーレイトが基準値以上となる標準セクタを不良セクタとして検出し、検出した不良セクタの識別番号(不良セクタ識別番号)を処理判定制御部108に出力する。あるいはエラー訂正不能である場合も不良セクタとして検出し、本発明の処理を実行する。以下、不良セクタ検出部107は、エラーレイトを基にして不良セクタを検出する場合を示すが、エラー訂正不能である場合も、不良セクタとして検出してもよい。
処理判定制御部108は、不良セクタに対して救済処理を行うかスリッピング処理を行うかを判定する処理部である。ここで、救済処理とは、調整記録クロック数によって不良セクタにデータを記録することによって、不良セクタの記録密度を下げ、不良セクタを救済セクタとして利用するための処理である。
一方、スリッピング処理は、不良セクタを使用不可とするための処理である。処理判定制御部108は、不良セクタ識別番号および不良セクタ識別番号に対応する不良セクタの判定結果をコントローラ110および交代処理管理テーブル更新制御部109に出力する。なお、判定結果が救済処理の場合には、救済処理に対応する減衰比Mの値もあわせて出力する。
交代処理管理テーブル更新制御部109は、処理判定制御部108から取得するデータ(不良セクタ識別番号、判定結果、減衰比M(判定結果が救済処理の場合のみ))に基づいて、記憶媒体101に記憶された交代処理管理テーブルを更新する処理部である。なお、記憶媒体101に記録された交代処理管理テーブルは、標準記録クロック数によって記録されているものとする。
コントローラ110は、記憶装置100全体を制御する処理部であり、各種の処理(記憶媒体101に対するデータの記録・再生、物理フォーマット、図2および図3において説明した処理)を実行する。また、コントローラ110は、処理判定制御部108から出力される判定結果に基づいて、救済処理あるはスリッピング処理を記憶媒体101の不良セクタに対して実行する。さらに、コントローラ110は、記憶媒体101に記憶された交代処理管理テーブルに基づいて、記憶媒体に記憶されたデータを再生する場合の再生クロック数を調整し、調整した再生クロック数(標準再生クロック数あるいは調整再生クロック数)によって記憶媒体101に記憶されたデータを再生する。
なお、コントローラ110は、標準セクタあるいは救済セクタなどにデータを記憶させる場合に、記憶対象となるデータからCRC冗長ビット、ECC冗長ビットを算出し、算出した各冗長ビットをデータに付加してセクタに記憶させる。
つぎに、本実施例1にかかる記憶装置100の処理手順について説明する。図6は、本実施例1にかかる記憶装置100の処理手順を示すフローチャートである。同図に示すように、記憶装置100は、コントローラ110が標準セクタのセクタサイズを決定して物理フォーマットを実行し(ステップS101)、不良セクタ検出部107が不良セクタを検出する(ステップS102)。
そして、処理判定制御部108は、減衰比の上限値および初期値を設定する(ステップS103)。ステップS103において、処理判定制御部108は、ステップS101において設定された標準セクタのセクタサイズを基にして減衰比の上限を設定する。具体的に処理判定制御部108は、標準セクタのサイズ=512バイト×2n(nは正の整数)を満たす2nを減衰比の上限値として設定する。例えば、標準セクタのサイズが1024の場合には、処理判定制御部108は、減衰比の上限値を2に設定する(512×21=1024)。このように減衰比の上限値を設定することで、救済セクタには少なくとも512バイトのデータが記録されることになる。なお、処理判定制御部108は、減衰比の初期値に1を設定する。
続いて、コントローラ110は、試験用のデータを不良セクタに記録し(ステップS104)、処理判定制御部108は、試験用のデータが適切に不良セクタに記録されたか否かを判定する(ステップS105)。ステップS105において、処理判定制御部108は、試験用のデータを不良セクタに記録した後、かかる不良セクタに記録されたデータを再生する場合のエラーレイトを検出し、検出したエラーレイトが規定値未満である場合に、試験用のデータが適切に記録されたと判定する。
処理判定制御部108が、試験用のデータが適切に記録されたと判定した場合には(ステップS106,Yes)、交代処理管理テーブル更新制御部109が交代処理に関するデータを交代処理管理テーブルに記録する(ステップS107)。具体的に、ステップS107において、交代処理管理テーブル更新制御部109は、救済処理を行った不良セクタ(救済セクタ)の不良セクタ識別番号、処理方法指定データ(この場合は、救済処理)、減衰比を記憶媒体101上の交代処理管理テーブルに記録する。
一方、処理判定制御部108が、試験用のデータが適切に記録されていないと判定した場合には(ステップS106,No)、現在設定されている減衰比が上限値以上か否かを判定し(ステップS108)、上限値未満である場合には(ステップS109,No)、減衰比を変更し(ステップS110)、ステップS104に移行する。ステップS110において、処理判定制御部108は、現在設定されている減衰比に2を乗算したものを変更後の減衰比とする。
処理判定制御部108が、現在設定されている減衰比が上限値以上であると判定した場合には(ステップS109,Yes)、コントローラ110がスリッピング処理を行い(ステップS111)、交代処理管理テーブル更新制御部109がスリッピング処理に関するデータを交代処理管理テーブルに記録する(ステップS112)。具体的に、ステップS112において、交代処理管理テーブル更新制御部109は、スリッピング処理を行った不良セクタの不良セクタ識別番号、処理方式指定データ(この場合は、スリッピング処理)を記憶媒体101上の交代処理管理テーブルに記録する。
このように、処理判定制御部108が、減衰比を変更し、コントローラ110が調整記録クロック数によって不良セクタを救済するので、不良セクタを有効に利用することができる。
上述してきたように、本実施例1にかかる記憶装置100は、不良セクタ検出部107が不良セクタを検出した場合に、処理判定制御部108が不良セクタに対して救済処理を実行するか否かを判定する。そして、救済処理を実行する場合に、処理判定制御部108が減衰比を調整し、交代処理管理テーブル更新制御部109が交代処理管理テーブルに各種情報を記録し、コントローラ110が交代処理管理テーブルに基づいて救済セクタに対するデータの記録および再生を実行するので、不良セクタを有効に利用することができ、不良セクタによる記憶容量の低減を最小限に抑えることができる。
次に、本実施例2にかかる記憶装置の特徴を従来の技術と比較して説明する。図7は、本実施例2にかかる記憶装置の特徴を説明するための説明図である。なお、本実施例2では、記憶媒体(例えば、磁気ディスク)に対して物理フォーマットを行った場合の各セクタサイズを1024バイトとして説明するがこれに限定されるものではない。
従来の記憶装置は、ユーザ使用時(記憶媒体に対する物理フォーマットが完了し、ユーザデータの記録再生を記憶媒体に対して実行している時)に記憶媒体から不良セクタを検出した場合には、不良セクタに記憶されたデータをリプレイスセクタ領域(予め、記憶媒体上に確保され、不良セクタに記録されたデータを退避させる領域)に記憶させて不良セクタに記憶されたデータを救済した後に、不良セクタを使用不可としていた(図7の2段目参照)。
しかしながら、上述した従来の技術では、ユーザ使用時に検出した不良セクタを使用不可とするため、不良セクタの増加に伴って、記憶媒体上の使用可能領域が著しく減少してしまうという問題があった。
一方、本実施例2にかかる記憶装置は、ユーザ使用時に不良セクタを検出した場合には、正常なセクタ(以下、標準セクタ)に対する記録密度よりも低い記録密度によって不良セクタにデータを記憶させ、かかる不良セクタに記憶できない残りのデータのみをリプレイスセクタ領域に記憶させる。例えば、不良セクタの記録密度を下げ、不良セクタに512バイトのデータを記憶させる場合には、残りの512バイトをリプレイスセクタ領域に記憶させる(図7の3段目参照)。以下、記録密度を下げることによって、リプレイス対象となるデータの一部分を記憶する不良セクタをリプレイス救済セクタと表記する。
本実施例2にかかる記憶装置は、不良セクタにデータ(リプレイス対象となるデータの一部)を記憶される場合に、データを記憶させるための記録クロック数を低い値に調整する。以下、不良セクタにデータを記憶させるための記録クロック数を(実施例1と同様に)調整記録クロック数と表記する。
標準セクタにデータを記録する場合の記録クロック数(以下、標準記録クロック数)をF1とし、調整記録クロック数をF2とすると、
F2=F1/M
によって表すことができる。また、標準記録クロック数F1によって標準セクタに記録されるデータの容量をD1バイトとし、調整記録クロック数F2によって不良セクタ(リプレイス救済セクタ)に記録されるデータの容量をD2バイトとすると、
D2=D1/M
によって表すことができる。
ここで、上記した数式に含まれるMは記録クロック数の減衰比を表し、減衰比Mが大きくなるほど、調整記録クロック数の値が低くなり、リプレイス救済セクタに記憶されるデータの容量が小さくなる。この減衰比Mには、2のn乗(nは正の整数)となる数値が代入される。
例えば、各標準セクタのサイズが1024に設定されており、減衰比が2に設定されている場合には、リプレイス救済セクタに512バイトのデータが記憶され、リプレイスセクタ領域に512バイトのデータが記憶されることになる(リプレイスセクタ領域には標準記録クロック数によってデータが記憶される)。
このように、本実施例2にかかる記憶装置は、ユーザ使用時に不良セクタを検出した場合に、調整記録クロック数によって不良セクタ(リプレイス救済セクタ)にデータを記憶させ、残りのデータをリプレイスセクタ領域に記憶させるので、ユーザ使用時に不良セクタを検出した場合であっても、不良セクタを有効に利用することができ、リプレイスセクタ領域の記憶容量を節約することができる。
なお、標準セクタに記憶されたデータを再生する場合の再生クロック数(以下、標準再生クロック数)は、標準記録クロック数F1と同じとなり、リプレイス救済セクタに記憶されたデータを再生する場合の再生クロック数(以下、調整再生クロック数)は、かかるリプレイス救済セクタにデータが記録された調整記録クロック数F2と同じとなる。
つぎに、リプレイス救済セクタおよびリプレイスセクタ領域に記憶されたデータに対するCRC冗長ビット/ECC冗長ビットの付加とデータ生成のプロセスについて説明する。図8は、リプレイス救済セクタおよびリプレイスセクタ領域に記憶されたデータにCRC冗長ビット/ECC冗長ビットの付加とデータ生成のプロセスを示す図である。なお、図8では一例として、標準セクタが記憶するデータのサイズを1024バイトとし、リプレイス救済セクタが記憶するデータのサイズを512バイトとする。
図8の1段目左側に示すように、記憶装置は、リプレイス救済セクタに記憶する512バイトのユーザデータ(A)を基にして、CRC冗長ビット(B)およびECC冗長ビット(C)を計算する(本来ならば、標準セクタに記録する1024バイトのユーザデータを基にしてCRC冗長ビットおよびECC冗長ビットが計算される)。
そして、図8の2段目左側に示すように、記憶装置は、当該記憶装置に内蔵された記録用バッファメモリ内においてユーザデータ(A)とCRC冗長ビット(B)とECC冗長ビット(C)とを結合する。
続いて、図8の3段目左側に示すように、記憶装置は、減衰比Mを2に設定し、標準記録クロック数F1の半分の記録クロック数となる調整記録クロック数F2によって、CRC冗長ビット(B)およびECC冗長ビット(C)が付加されたユーザデータ(A)をリプレイス救済セクタに記録する。
リプレイス救済セクタに記憶されたユーザデータ(A)の再生を行う場合には、図8の4段目左側に示すように、リプレイス救済セクタに記憶されたユーザデータ(A)とCRC冗長ビット(B)とECC冗長ビット(C)とを記憶装置に内蔵された再生用バッファメモリに読出してユーザデータ(A)のエラー訂正を行った後にリプレイスセクタ領域に記憶されたユーザデータ(D)とカップリングを行う。
一方、図8の1段目右側に示すように、記憶装置は、リプレイスセクタ領域に記憶する512バイトのユーザデータ(D)を基にして、CRC冗長ビット(E)およびECC冗長ビット(F)を計算する(本来ならば、標準セクタに記録する1024バイトのユーザデータを基にしてCRC冗長ビットおよびECC冗長ビットが計算される)。
そして、図8の2段目右側に示すように、記憶装置は、当該記憶装置に内蔵された記録用バッファメモリ内においてユーザデータ(D)とCRC冗長ビット(E)とECC冗長ビット(F)を結合する。
続いて、図8の3段目右側に示すように、記憶装置は、標準記録クロック数F1によって、CRC冗長ビット(E)およびECC冗長ビット(F)が付加されたユーザデータ(D)をリプレイスセクタ領域に記録する。
リプレイスセクタ領域に記憶されたユーザデータ(D)の再生を行う場合には、図8の4段目右側に示すように、リプレイスセクタ領域に記憶されたユーザデータ(D)とCRC冗長ビット(E)とECC冗長ビット(F)とを記憶装置に内蔵された再生用バッファメモリに読み出してユーザデータ(D)のエラー訂正を行った後にリプレイス救済セクタに記憶されたユーザデータ(A)とカップリングを行う。
ここで、リプレイス救済セクタに記憶されたユーザデータ(A)とリプレイスセクタ領域に記憶されたユーザデータ(D)とのデータ結合について説明する。図9は、リプレイス救済セクタに記憶されたユーザデータ(A)とリプレイスセクタ領域に記憶されたユーザデータ(D)とのデータ結合を示す図である。同図に示すように、まず、リプレイス救済セクタのユーザデータ(A)およびリプレイスセクタ領域のユーザデータ(D)を再生用バッファメモリ内で結合(カップリング)する(リプレイス救済セクタおよびリプレイスセクタ領域からユーザデータを読み出す方式は図8を参照)。
そしてリプレイス救済セクタのセクタ番号がN+1の場合には、セクタ番号Nの標準セクタとセクタ番号N+2の標準セクタとの間に、再生用バッファメモリ内のユーザデータ(A)およびユーザデータ(D)を結合させる。
また、512バイトのデータを記憶するリプレイス救済セクタの前後に1024バイトのデータを記憶する標準セクタが結合されている場合には、記憶装置は、擬似的に各セクタが512バイトごとに分割しているものとしてデータの記録および再生を行う。すなわち、1024バイトのデータを記憶する1つの標準セクタを、512バイトのデータを記憶するセクタ2つとして取り扱う。このように、記憶装置は、各セクタが記憶するデータを擬似的に512バイトとして取り扱うことで、記憶媒体に対するデータの記録および再生に関する処理を単純にすることができる。
なお、図7から図9では、標準セクタに1024バイトのデータが記憶され、減衰比2によってリプレイス救済セクタにデータを記憶させていたが、標準セクタにSバイトのデータが記憶され、減衰比がMである場合には、リプレイス救済セクタにはS/Mバイトのデータが記憶され、残りの(S−S/M)バイトのデータがリプレイスセクタ領域に記憶される。
ところで、上述したリプレイス救済セクタに関する情報は、交代処理管理テーブルとして、記憶媒体上に記憶される。図10は、本実施例2にかかる交代処理管理テーブルのデータ構造の一例を示す図である。同図に示すように、この交代処理管理テーブルは、不良セクタ識別番号と、処理方法指定データと、リプレイスセクタ識別番号と、減衰比とを備える。
このうち、不良セクタ識別番号は、記憶媒体上の不良セクタの位置を識別するデータである。処理方法指定データは、不良セクタ識別番号によって識別される不良セクタに対して行った処理の内容を示すデータが記憶される。この処理方法指定データが部分リプレイス処理の場合には、不良セクタに対して部分的なリプレイスが行われたことになる。また、処理方法指定データがフルリプレイス処理の場合には、不良セクタに記憶されたデータが全てリプレイスセクタ領域に記憶されたことになる。リプレイスセクタ識別番号は、リプレイス先のセクタの識別番号を示す。減衰比は、部分リプレイス処理を行った場合の減衰比Mの値を示す。
図11は、部分リプレイス処理を説明するための説明図である。なお、図11では一例として、標準セクタが記憶するデータのサイズを1024バイトとし、リプレイス救済セクタが記憶するデータのサイズを512バイト(減衰比2)とする。
図11に示すように、セクタ番号N+1において不良セクタを検出し、部分リプレイス処理を実行する場合には、減衰比2の調整記録クロック数によって512バイトのデータを不良セクタ(リプレイス救済セクタ)に記録し、残りの512バイトのデータを標準記録クロック数によってリプレイスセクタに記憶させる。
図12は、フルリプレイス処理を説明するための説明図である。なお、図12では一例として、標準セクタが記憶するデータのサイズを1024バイトとする。同図に示すように、セクタ番号N+1において不良セクタを検出し、フルリプレイス処理を実行する場合には、1024バイトのデータを512バイトごとに分割し、分割した各512バイトのデータを連続するリプレイスセクタに記憶させる。
このように、フルリプレイス処理を行う場合に1024バイトのデータをそのままリプレイスセクタに記憶させるのではなく、512バイトごとにデータを分割することによって、記憶媒体上に記憶されたデータを仮想的に512バイトごとに読み出す処理(512バイト対応エミュレーション)を容易に行うことができる。
つぎに、本実施例2にかかる記憶装置の構成について説明する。図13は、本実施例2にかかる記憶装置の構成を示す機能ブロック図である。同図に示すように、この記憶装置200は、記憶媒体201と、ヘッド202と、ライトチャンネル203と、リードチャンネル204と、バッファメモリ205と、入出力制御IF206と、不良セクタ検出部207と、処理判定制御部208と、交代処理管理テーブル更新制御部209と、コントローラ210とを備えて構成される。
ここで、記憶媒体201、ヘッド202、ライトチャンネル203、リードチャンネル204、バッファメモリ205、入出力制御IF206に関する説明は、実施例1に示した記憶装置100の記憶媒体101、ヘッド102、ライトチャンネル103、リードチャンネル104、バッファメモリ105、入出力制御IF106と同様であるため説明を省略する。
また、不良セクタ検出部207、処理判定制御部208、交代処理管理テーブル更新制御部209、コントローラ210は、実施例1に示した記憶装置100の不良セクタ検出部107、処理判定制御部108、交代処理管理テーブル更新制御部109、コントローラ110と同等の処理(救済処理、スリッピング処理)を基本処理として実行し、さらに、実施例2にかかる記憶装置200の特徴部分となる処理をさらに追加して実行する。以下において、不良セクタ検出部207、処理判定制御部208、交代処理管理テーブル更新制御部209、コントローラ210の処理を順に説明するが、実施例1の記憶装置100の各構成要素107〜110と重複する説明は省略する。
不良セクタ検出部207は、ユーザ使用時において、コントローラ210によって記憶媒体201に対するデータの記録および再生が行われる場合に、記憶媒体上のセクタのエラーレイト、エラー訂正不能に基づいて不良セクタを検出する処理部である。
不良セクタ検出部207が不良セクタを検出する方式はどのような方式を用いてもよい。例えば、不良セクタ検出部207は、各標準セクタからユーザデータを再生する場合のエラーレイトを検出し、検出したエラーレイトが基準値以上、エラー訂正不能となる標準セクタを不良セクタとして検出し、検出した不良セクタの識別番号(不良セクタ識別番号)を処理判定制御部208に出力する。
処理判定制御部208は、不良セクタに対して部分リプレイス処理を行うかフルリプレイス処理を行うかを判定する処理部である。ここで、部分リプレイス処理とは、調整記録クロック数によって不良セクタにデータを記録し、不良セクタに収まりきらない残りのデータをリプレイスセクタ領域に記憶させる処理である(図11参照)。
一方、フルリプレイス処理は、不良セクタに記憶されたデータを512バイトごとに分割し、分割したデータを連続するリプレイスセクタに記憶させる処理である(図12参照)。処理判定制御部208は、不良セクタ識別番号および不良セクタ識別番号に対応する不良セクタの判定結果およびリプレイスセクタ識別番号をコントローラ210および交代処理管理テーブル更新制御部209に出力する。なお、判定結果が部分リプレイス処理の場合には、部分リプレイス処理に対応する減衰比Mの値もあわせて出力する。
交代処理管理テーブル更新制御部209は、処理判定制御部208から取得するデータ(不良セクタ識別番号、判定結果、リプレイスセクタ識別番号、減衰比(判定結果が部分リプレイス処理の場合のみ))に基づいて、記憶媒体201に記憶された交代処理管理テーブルを更新する処理部である。なお、記憶媒体201に記憶された交代処理管理テーブルは、標準記録クロック数によって記録されているものとする。
コントローラ210は、記憶装置200全体を制御する処理部であり、各種の処理(記憶媒体201に対するデータの記録・再生など)を実行する。また、コントローラ210は、処理判定制御部208から出力される判定結果に基づいて、部分リプレイス処理あるいはフルリプレイス処理を実行する。さらに、コントローラ210は、記憶媒体201に記憶された交代処理管理テーブルに基づいて、記憶媒体に記憶されたデータを再生する場合の再生クロック数を調整し、調整した再生クロック数(標準再生クロック数あるいは調整再生クロック数)によって記憶媒体201に記憶されたデータを再生する。
つぎに、本実施例2にかかる記憶装置200の処理手順について説明する。図14は、本実施例2にかかる記憶装置200の処理手順を示すフローチャートである。同図に示すように、記憶装置200は、コントローラ210が記憶媒体201上の交代処理管理テーブルを取得し(ステップS201)、各不良セクタ毎に減衰比を設定する(ステップS202)。
そして、コントローラ210は、記憶媒体201にユーザデータを記録し(ステップS203)、不良セクタ検出部207は、ユーザデータが適切に記録されたか否かを判定し(ステップS204)、ユーザデータが適切に記録されている場合には(ステップS205,Yes)、そのまま処理を終了する。
一方、ユーザデータが適切に記録されていない場合には(ステップS205,No)、処理判定制御部208が減衰比の上限値および初期値を設定する(ステップS206)。ステップS206において、処理判定制御部208は、標準セクタのサイズ=512バイト×2n(nは正の整数)を満たす2nを減衰比の上限値として設定する。例えば、標準セクタのサイズが1012の場合には、処理判定制御部208は、減衰比の上限値を2に設定する(512×21=1024)。このように減衰比の上限値を設定することで、リプレイス救済セクタには少なくとも512バイトのデータが記録されることになる。なお、処理判定制御部208は、減衰比の初期値に1を設定する。
続いて、コントローラ210は、ユーザデータを不良セクタに記録し(ステップS207)、処理判定制御部208は、ユーザデータが適切に不良セクタに記録されたか否かを判定する(ステップS208)。ステップS208において、処理判定制御部208は、ユーザデータを不良セクタに記録した後、かかる不良セクタに記録されたデータを再生する場合のエラーレイトを検出し、検出したエラーレイトが規定値未満である場合に、ユーザデータが適切に記録されたと判定する。
処理判定制御部208が、ユーザデータが適切に記録されたと判定した場合には(ステップS209,Yes)、部分リプレイス処理を実行する(ステップS210)。ステップS210において、コントローラ210が部分リプレイス処理を実行する場合には、調整記録クロック数によってリプレイス救済セクタにユーザデータを記録し、記録できなかった残りのデータをリプレイスセクタ領域に記録する。
そして、交代処理管理テーブル更新制御部209が部分リプレイス処理に関するデータを交代処理管理テーブルに登録する(ステップS211)。具体的に、ステップS211において、交代処理管理テーブル更新制御部209は、部分リプレイス処理を行った不良セクタ(リプレイス救済セクタ)の不良セクタ識別番号、処理方式指定データ(この場合は、部分リプレイス処理)、リプレイスセクタ識別情報、減衰比の情報を記憶媒体201上の交代処理管理テーブルに記録する。
一方、処理判定制御部208が、ユーザデータが適切に記録されていないと判定した場合には(ステップS209,No)、現在設定されている減衰比が上限値以上か否かを判定し(ステップS212)、上限値未満である場合には(ステップS213,No)、減衰比を変更し(ステップS214)、ステップS207に移行する。ステップS214において、処理判定制御部208は、現在設定されている減衰比に2を乗算したものを変更後の減衰比とする。
処理判定制御部208が、現在設定されている減衰比が上限値以上であると判定した場合には(ステップS213,Yes)、フルリプレイス処理を行い(ステップS215)、交代処理管理テーブル更新制御部209がフルリプレイス処理に関するデータを交代処理管理テーブルに記憶する(ステップS216)。ステップS216において、交代処理管理テーブル更新制御部209は、フルリプレイス処理を行った不良セクタのセクタ識別番号、処理方式指定データ(この場合は、フルリプレイス処理)を記憶媒体201上の交代処理管理テーブルに記録する。
このように、処理判定制御部208が、減衰比を変更し、コントローラ210が調整クロック数によって不良セクタの一部を利用し、残りのデータをリプレイスセクタ領域に記録するので、記憶媒体上の限られた資源を有効に活用することができる。
上述してきたように、本実施例2にかかる記憶装置200は、ユーザ使用時に不良セクタ検出部207が不良セクタを検出した場合に、処理判定制御部208が不良セクタに対して部分リプレイス処理あるいはフルリプレイス処理を実行するか否かを判定する。そして、部分リプレイス処理を実行する場合に、処理判定制御部208が減衰比を調整し、交代処理管理テーブル更新制御部209が交代処理管理テーブルに各種情報を記録し、コントローラ210がリプレイス救済セクタに調整記録クロック数によってデータを記録し、残りのデータをリプレイスセクタ領域に記録するので、不良セクタを有効に利用することができ、不良セクタによる記憶容量の低減を最小限に抑えることができる。
また、本実施例2にかかる記憶装置200は、処理判定制御部208がフルリプレイス処理を実行すると判定した場合に、リプレイス対象となるデータを512バイトごとに分割し、分割した各データを連続するリプレイスセクタに記録するので、512バイト対応のエミュレーションを効率よく実行することができる。
ところで、上述した実施例1および2の説明では、標準セクタのサイズを1024として説明しているが、これに限定されるものではなく、2048バイト、4096バイト、8192バイトなど、512×2n(nは正の整数)バイトでもよい。
標準セクタサイズが2048バイトで、OS(Operating System)の規定のセクタサイズを512バイトとすれば、処理判定制御部108,208は、減衰比Mを2あるいは4に設定することができる。
(標準セクタが2048バイト、減衰比Mが2の場合)
標準セクタのサイズが2048であり、減衰比Mを2に設定した場合には、調整記録クロック数によって、不良セクタ(救済セクタ、リプレイス救済セクタ)に1024バイトのデータを記憶させる。また、コントローラ210は、リプレイスセクタ領域のセクタサイズが1024となるように物理フォーマットを予め行い、リプレイスセクタには標準記録クロック数によって1024バイトのデータを記録する。なお、リプレイスセクタ領域から仮想的にデータを分割して読み出す場合(エミュレーションを実行する場合)には、コントローラ210は、リプレイスセクタに1024バイト記録されている場合でも、512バイトごとにデータを読み出す。
(標準セクタが2048 バイト、減衰比Mが4の場合)
標準セクタのサイズが2048であり、減衰比Mを4に設定した場合には、調整記録クロック数によって、不良セクタ(救済セクタ、リプレイス救済セクタ)に512バイトのデータを記憶させる。また、コントローラ210は、リプレイスセクタ領域のセクタサイズが512となるように物理フォーマットを予め行い、リプレイスセクタには標準記録クロック数によって1536バイトのデータを記録する。1536バイトのデータをリプレイスセクタに記録する場合には、1536バイトのデータを512バイトごとに分割し、分割した512バイトのデータを連続するリプレイスセクタに記録する。なお、リプレイスセクタ領域から仮想的にデータを分割して読み出す場合(エミュレーションを実行する場合)には、コントローラ210は、リプレイスセクタに1536バイト記録されている場合でも、512バイトごとにデータを読み出す。
なお、標準セクタが4096バイトで、OSの規定セクタサイズが512バイトとすれば、処理判定制御部108,208は、減衰比Mを2、4または8に設定することができる。
図15は、標準セクタのサイズが1024、2048、4096バイトの場合に、減衰比2,4,8をそれぞれ設定した場合の救済セクタ、リプレイス救済セクタ、リプレイスセクタにそれぞれ記憶されるデータサイズの関係を示す図である。
例えば、図15の一段目では、標準セクタが1024バイト、減衰比が1である場合についての関係が示されている。同段において、合格バイト数が1024である場合には、1024バイトのデータがセクタに記憶されスリッピング処理が行われない旨が示されている。また、同段において、リプレイス救済セクタに512バイトのデータ記録されている場合には、リプレイスセクタに512バイトのデータが記録される。図15に関するその他の説明は省略する。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例1、2以外にも、種々の異なる形態において実施されてもよいものである。そこで、以下では実施例3として本発明に含まれる他の実施例を説明する。
(1)交代処理管理テーブルを不揮発性メモリに記憶
上記の実施例1、2では交代処理管理テーブル(図4および図10参照)を記憶媒体上に記憶させていたが、これに限定されるものではなく、記憶装置内の不揮発性メモリに交代処理管理テーブルを記憶させることができる。図16は、その他の実施例にかかる記憶装置の構成を示す機能ブロック図(1)である。
図16に示すように、この記憶装置300は、記憶媒体301と、ヘッド302と、ライトチャンネル303と、リードチャンネル304と、バッファメモリ305と、入出力制御IF部306と、不良セクタ検出部307と、処理判定制御部308と、交代処理管理テーブル更新制御部309と、コントローラ310と、不揮発性メモリ311とを備えて構成される。
このうち、記憶媒体301、ヘッド302、ライトチャンネル303、リードチャンネル304、バッファメモリ305、入出力制御IF部306、不良セクタ検出部307、処理判定制御部308、コントローラ310に関する説明は、図13に示した記憶媒体201、ヘッド202、ライトチャンネル203、リードチャンネル204、バッファメモリ205、入出力制御IF部206、不良セクタ検出部207、処理判定制御部208、コントローラ210と同様であるため説明を省略する。
交代処理管理テーブル更新制御部309は、不揮発性メモリ311に記憶された交代処理管理テーブルを更新する処理部である。交代処理管理テーブル更新制御部309は、処理判定制御部308から取得するデータ(不良セクタ識別番号、判定結果、減衰比M(判定結果が救済処理あるいは部分リプレイス処理の場合のみ)、リプレイスセクタ識別番号(部分リプレイス処理あるいはフルリプレイス処理の場合のみ))に基づいて、交代処理管理テーブルを更新する処理部である。
図17は、不揮発性メモリ311に記憶される交代処理管理テーブルのデータ構造の一例を示す図である。同図に示すように、この交代処理管理テーブルは、不良セクタ識別番号と、処理方法指定データと、リプレイスセクタ識別番号と、減衰比とを備える。
このうち、不良セクタ識別番号は、記憶媒体上の不良セクタの位置を識別するデータである。処理方法指定データは、不良セクタ識別番号によって識別される不良セクタに対して行った処理の内容を示すデータが記憶される。この処理方法指定データが救済処理の場合には、不良セクタに対して救済処理が行われ、かかる不良セクタが救済セクタとして利用されていることになる。また、処理方法指定データがスリッピング処理の場合には、不良セクタに対してスリッピング処理が行われ、かかる不良セクタに対するデータの記録が不可能となる。
また、処理方法指定データが部分リプレイス処理の場合には、不良セクタに対して部分的なリプレイスが行われたことになる。また、処理方法指定データがフルリプレイス処理の場合には、不良セクタに記憶されたデータが全てリプレイスセクタ領域に記憶されたことになる。リプレイスセクタ識別番号は、リプレイス先のセクタの識別番号を示す。減衰比は、救済処理および部分リプレイス処理を行った場合の減衰比Mの値を示す。
このように、不揮発性メモリ311に交代処理管理テーブルを記憶させることによって、記憶媒体に交代処理管理テーブルを記憶させている場合よりも高速に交代処理管理テーブルにアクセスすることができ、記憶装置の処理効率を向上させることができる。
(2)交代処理管理テーブルを着脱可能な不揮性メモリ(ユーザキー)に記憶
上記の実施例1、2では交代処理管理テーブル(図4および図10参照)を記憶媒体上に記憶させていたが、これに限定されるものではなく、記憶装置に対して着脱可能な不揮発性メモリに交代処理管理テーブルを記憶させることができる。図18は、その他の実施例にかかる記憶装置の構成を示す機能ブロック図(2)である。
図18に示すように、この記憶装置400は、記憶媒体401と、ヘッド402と、ライトチャンネル403と、リードチャンネル404と、バッファメモリ405と、入出力制御IF部406と、不良セクタ検出部407と、処理判定制御部408と、交代処理管理テーブル更新制御部409と、コントローラ410と、ユーザキー照合部411と、メモリ接続端子412とを備えて構成される。なお、ユーザキー(不揮発性メモリ)420は、記憶装置を識別する記憶装置名識別子と、かかる記憶装置に対応する交代処理管理テーブルとを対応付けて記憶している。
図19は、ユーザキー420に記憶されるデータのデータ構造の一例を示す図である。同図に示すように、ユーザキー420は、記憶装置名識別子と交代処理管理テーブルとを対応付けて記憶している。なお、交代処理管理テーブルのデータ構造は、図17に示した交代処理管理テーブルと同様であるため説明を省略する。ユーザキー420は、各記憶装置ごとの交代処理管理テーブルを記憶している。
図18の説明に戻ると、記憶媒体401、ヘッド402、ライトチャンネル403、リードチャンネル404、バッファメモリ405、入出力制御IF部406、不良セクタ検出部407、処理判定制御部408、コントローラ410に関する説明は、図13に示した記憶媒体201、ヘッド202、ライトチャンネル203、リードチャンネル204、バッファメモリ205、入出力制御IF部206、不良セクタ検出部207、処理判定制御部208、コントローラ210と同様であるため説明を省略する。
交代処理管理テーブル更新制御部409は、ユーザキー420に記憶された交代処理管理テーブルを更新する処理部である。具体的に、交代処理管理テーブル更新制御部409は、処理判定制御部408から取得するデータ(不良セクタ識別番号、判定結果、減衰比M(判定結果が救済処理あるいは部分リプレイス処理の場合のみ)、リプレイスセクタ識別番号(部分リプレイス処理あるいはフルリプレイス処理の場合のみ))に基づいて、交代処理管理テーブル(記憶装置400に対応する交代処理管理テーブル)を更新する処理部である。
なお、交代処理管理テーブル更新制御部409は、ユーザキー420に記憶された記憶装置400の記憶装置名識別子に対応する交代処理管理テーブルにアクセスし、かかる交代処理管理テーブルを順次更新する。
ユーザキー照合部411は、記憶装置400の記憶装置名識別子(ユーザキー照合部411が保持しているものとする)とユーザキー420に記憶された記憶装置名識別子とを比較して、各記憶装置名識別子が一致するか否かを判定する処理部である。ユーザキー照合部411は、記憶装置400の記憶装置名識別子とユーザキー420に記憶された記憶装置名識別子とが一致しない場合には、ユーザキー420に記録されたデータが記憶装置400に送信されることを禁止する。なお、ユーザキー照合部411は、記憶装置400の記憶装置名識別子とユーザキー420に記憶された記憶装置名識別子とが一致しない場合に、記憶装置400の起動を禁止してもよい。
メモリ接続端子412は、ユーザキー420を記憶装置400に接続するための接続端子である。ユーザキー420がメモリ接続端子412に接続されることによって、記憶装置400は、ユーザキー420に記憶された交代処理管理テーブルなどにアクセスすることができる。
つぎに、記憶装置400の物理フォーマット処理の処理手順について説明する。図20は、記憶装置400の物理フォーマット処理の処理手順を示すフローチャートである。同図に示すように、記憶装置400は、コントローラ410が標準セクタのセクタサイズを決定して物理フォーマットを実行し(ステップS301)、記憶装置名識別子をユーザキー420に登録し(ステップS302)、不良セクタ検出部407が不良セクタを検出する(ステップS303)。
そして、処理判定制御部408は、減衰比の上限値および初期値を設定する(ステップS304)。ステップS304において、処理判定制御部408は、ステップS301において設定された標準セクタのセクタサイズを基にして減衰比の上限を設定する。具体的に処理判定制御部408は、標準セクタのサイズ=512バイト×2n(nは正の整数)を満たす2nを減衰比の上限値として設定する。例えば、標準セクタのサイズが1012の場合には、処理判定制御部408は、減衰比の上限値を2に設定する(512×21=1024)。このように減衰比の上限値を設定することで、救済セクタには少なくとも512バイトのデータが記録されることになる。なお、処理判定制御部408は、減衰比の初期値に1を設定する。
続いて、コントローラ410は、試験用のデータを不良セクタに記録し(ステップS305)、処理判定制御部408は、試験用のデータが適切に不良セクタに記録されたか否かを判定する(ステップS306)。ステップS306において、処理判定制御部408は、試験用のデータを不良セクタに記録した後、かかる不良セクタに記録されたデータを再生する場合のエラーレイトを検出し、検出したエラーレイトが規定値未満である場合に、試験用のデータが適切に記録されたと判定する。
処理判定制御部408が、試験用のデータが適切に記録されたと判定した場合には(ステップS307,Yes)、交代処理管理テーブル更新制御部409が交代処理に関するデータを記憶装置名識別子と対応付けてユーザキー420の交代処理管理テーブルに記録する(ステップS308)。具体的に、ステップS308において、交代処理管理テーブル更新制御部409は、救済処理を行った不良セクタ(救済セクタ)の不良セクタ識別番号、処理方法指定データ(この場合は、救済処理)、減衰比をユーザキー420上の交代処理管理テーブルに記録する。
一方、処理判定制御部408が、試験用のデータが適切に記録されていないと判定した場合には(ステップS307,No)、現在設定されている減衰比が上限値以上か否かを判定し(ステップS309)、上限値未満である場合には(ステップS310,No)、減衰比を変更し(ステップS311)、ステップS305に移行する。ステップS311において、処理判定制御部408は、現在設定されている減衰比に2を乗算したものを変更後の減衰比とする。
処理判定制御部408が、現在設定されている減衰比が上限値以上であると判定した場合には(ステップS310,Yes)、コントローラ410がスリッピング処理を行い(ステップS312)、交代処理管理テーブル更新制御部409がスリッピング処理に関するデータをユーザキー420上の交代処理管理テーブルに記録する(ステップS313)。具体的に、ステップS313において、交代処理管理テーブル更新制御部409は、スリッピング処理を行った不良セクタの不良セクタ識別番号、処理方式指定データ(この場合は、スリッピング処理)をユーザキー420上の交代処理管理テーブルに記録する。
つぎに、記憶装置400のリプレイス処理の処理手順について説明する。図21は、記憶装置400のリプレイス処理の処理手順を示すフローチャートである。同図に示すように、記憶装置400は、ユーザキー照合部411がユーザキーに記憶された記憶装置名識別子と記憶装置400の記憶装置名識別子とが一致するか否かを判定し(ステップS401)、記憶装置名識別子が一致しない場合には(ステップS402,No)、非照合通知をコントローラ410に出力し(ステップS403)、ユーザキー420に記憶された交代処理管理テーブルの送信を禁止する(ステップS404)。
一方、記憶装置名識別子が一致する場合には(ステップS402,Yes)、コントローラ410がユーザキー420上の交代処理管理テーブルを取得し(ステップS405)、各不良セクタ毎に減衰比を設定する(ステップS406)。
そして、コントローラ410は、記憶媒体401にユーザデータを記録し(ステップS407)、不良セクタ検出部407は、ユーザデータが適切に記録されたか否かを判定し(ステップS408)、ユーザデータが適切に記録されている場合には(ステップS409,Yes)、そのまま処理を終了する。
一方、ユーザデータが適切に記録されていない場合には(ステップS409,No)、処理判定制御部408が減衰比の上限値および初期値を設定する(ステップS410)。ステップS410において、処理判定制御部408は、標準セクタのサイズ=512バイト×2n(nは正の整数)を満たす2nを減衰比の上限値として設定する。例えば、標準セクタのサイズが1012の場合には、処理判定制御部408は、減衰比の上限値を2に設定する(512×21=1024)。このように減衰比の上限値を設定することで、リプレイス救済セクタには少なくとも512バイトのデータが記録されることになる。なお、処理判定制御部408は、減衰比の初期値に1を設定する。
続いて、コントローラ410は、ユーザデータを不良セクタに記録し(ステップS411)、処理判定制御部408は、ユーザデータが適切に不良セクタに記録されたか否かを判定する(ステップS412)。ステップS412において、処理判定制御部408は、ユーザデータを不良セクタに記録した後、かかる不良セクタに記録されたデータを再生する場合のエラーレイトを検出し、検出したエラーレイトが規定値未満である場合に、ユーザデータが適切に記録されたと判定する。
処理判定制御部408が、ユーザデータが適切に記録されたと判定した場合には(ステップS413,Yes)、部分リプレイス処理を実行する(ステップS414)。ステップS414において、コントローラ410が部分リプレイス処理を実行する場合には、調整記録クロック数によってリプレイス救済セクタにユーザデータを記録し、記録できなかった残りのデータをリプレイスセクタ領域に記録する。
そして、交代処理管理テーブル更新制御部409が部分リプレイス処理に関するデータを交代処理管理テーブルに登録する(ステップS415)。具体的に、ステップS415において、交代処理管理テーブル更新制御部409は、部分リプレイス処理を行った不良セクタ(リプレイス救済セクタ)の不良セクタ識別番号、処理方式指定データ(この場合は、部分リプレイス処理)、リプレイスセクタ識別情報、減衰比の情報をユーザキー420上の交代処理管理テーブルに記録する。
一方、処理判定制御部408が、ユーザデータが適切に記録されていないと判定した場合には(ステップS413,No)、現在設定されている減衰比が上限値以上か否かを判定し(ステップS416)、上限値未満である場合には(ステップS417,No)、減衰比を変更し(ステップS418)、ステップS411に移行する。ステップS418において、処理判定制御部408は、現在設定されている減衰比に2を乗算したものを変更後の減衰比とする。
処理判定制御部408が、現在設定されている減衰比が上限値以上であると判定した場合には(ステップS417,Yes)、フルリプレイス処理を行い(ステップS419)、交代処理管理テーブル更新制御部409がフルリプレイス処理に関するデータを交代処理管理テーブルに登録する(ステップS420)。ステップS420において、交代処理管理テーブル更新制御部409は、フルリプレイス処理を行った不良セクタのセクタ識別番号、処理方式指定データ(この場合は、フルリプレイス処理)をユーザキー420上の交代処理管理テーブルに記録する。
このように、ユーザキー420に交代処理管理テーブルを記憶させることによって新たなセキュリティ対策を実現できる。すなわち、記憶媒体401に対するデータの記録および再生を行う場合に必須となる交代処理管理テーブルが個人キーとなり、かかる個人キーを有しない第三者が不正に記憶装置を起動させた場合であっても、記憶媒体401に記憶されたデータを再生できないからである。
なお、ユーザキーに記憶された交代処理管理テーブルと記憶装置400とが対応していない場合には、記憶装置400のデータを破壊する危険がある。これを防止するために、ユーザキー420が初めて記憶装置に接続された場合に、ユーザキー照合部411が保持する記憶装置名識別子をユーザキー420に登録する。なお、記憶装置400とユーザキー420とをセットで販売する場合、ユーザキー420に予め記憶装置名識別子および交代処理管理テーブルを記憶させておけば便利である。また、記憶装置400は、ユーザキー420に記録されるデータの暗号化を行っても良い。
(3)交代処理管理テーブルをPC端末のPCメインボード上の不揮発メモリに記憶
上記の実施例1、2では交代処理管理テーブル(図4および図10参照)を記憶媒体上に記憶させていたが、これに限定されるものではなく、記憶装置に接続されたユーザ端末のPCメインボード上の不揮発メモリに記憶させてもよい。図22は、その他の実施例にかかる記憶装置の構成を示す機能ブロック図(3)である。
図22に示すように、この記憶装置500は、記憶媒体501と、ヘッド502と、ライトチャンネル503と、リードチャンネル504と、バッファメモリ505と、入出力制御IF部506と、不良セクタ検出部507と、処理判定制御部508と、交代処理管理テーブル更新制御部509と、コントローラ510とを備えて構成される。また、PC端末600は、PCメインボード610を備え、このPCメインボード610は、交代処理管理テーブルを記憶する不揮発性メモリ610aを有する。なお、PC端末600のその他の構成は、一般的な端末装置と同様であるため説明を省略する。
図22に示す、記憶媒体501、ヘッド502、ライトチャンネル503、リードチャンネル504、バッファメモリ505、入出力制御IF部506、不良セクタ検出部507、処理判定制御部508、コントローラ510に関する説明は、図13に示した記憶媒体201、ヘッド202、ライトチャンネル203、リードチャンネル204、バッファメモリ205、入出力制御IF部206、不良セクタ検出部207、処理判定制御部208、コントローラ210と同様であるため説明を省略する。
交代処理管理テーブル更新制御部509は、不揮発性メモリ610aに記憶された交代処理管理テーブルを更新する処理部である。具体的に、交代処理管理テーブル更新制御部509は、処理判定制御部508から取得するデータ(不良セクタ識別番号、判定結果、減衰比M(判定結果が救済処理あるいは部分リプレイス処理の場合のみ)、リプレイスセクタ識別番号(部分リプレイス処理あるいはフルリプレイス処理の場合のみ))に基づいて、交代処理管理テーブル(記憶装置500に対応する交代処理管理テーブル)を更新する処理部である。
図22に示す記憶装置500において、物理フォーマットを行った場合(PC端末600側で物理フォーマットを行った場合)には、物理フォーマット時に作成される交代処理管理テーブルをPC端末600の不揮発メモリ610aに記憶させる。この実施の形態では、記憶装置単体の価格を通常通りに維持し、通常の使い方をしたい場合に適用できる。PCメインボード610のメインコントローラ(図示略)とコントローラ510との間で交代処理管理テーブルを送受信し、記憶媒体501に対するデータの記録および再生を実行する。本提案では、記憶装置500をPC端末600から取り外しても、交代処理管理テーブルはPC端末600に存在するため、記憶装置500単体でのユーザデータの再生は極めて困難となり、記憶媒体501に記録されたデータの信頼性を向上させることができる。
(4)記憶装置出荷時に物理フォーマットを実施し、交代処理管理テーブルをユーザ端末のPCメインボード上の不揮発メモリに記憶
上記の実施例1、2では交代処理管理テーブル(図4および図10参照)を記憶媒体上に記憶させていたが、これに限定されるものではなく、記憶装置の出荷時に物理フォーマットを行い、記憶装置に接続されたユーザ端末のPCメインボード上の不揮発メモリに交代処理管理テーブルを記憶させてもよい。図23は、その他の実施例にかかる記憶装置の構成を示す機能ブロック図(4)である。
図23に示すように、この記憶装置700は、記憶媒体701と、ヘッド702と、ライトチャンネル703と、リードチャンネル704と、バッファメモリ705と、入出力制御IF部706と、不良セクタ検出部707と、処理判定制御部708と、交代処理管理テーブル更新制御部709と、コントローラ710と、初期交代処理管理テーブル記憶メモリ711とを備えて構成される。また、PC端末800は、PCメインボード810を備え、このPCメインボード810は、交代処理管理テーブルを記憶する不揮発性メモリ810aを有する。なお、PC端末800のその他の構成は、一般的な端末装置と同様であるため説明を省略する。
図23に示す、記憶媒体701、ヘッド702、ライトチャンネル703、リードチャンネル704、バッファメモリ705、入出力制御IF部706、不良セクタ検出部707、処理判定制御部708、コントローラ710に関する説明は、図13に示した記憶媒体201、ヘッド202、ライトチャンネル203、リードチャンネル204、バッファメモリ205、入出力制御IF部206、不良セクタ検出部207、処理判定制御部208、コントローラ210と同様であるため説明を省略する。
交代処理管理テーブル更新制御部709は、記憶装置700の出荷時に物理フォーマットが行われた場合に、かかる物理フォーマットによって作成される交代処理管理テーブルを初期交代処理管理テーブル記憶メモリ711に記憶する。そして、交代処理管理テーブル更新制御部709は、PC端末800が記憶装置700に接続された場合に、初期交代処理管理テーブル記憶メモリ711に記憶された交代処理管理テーブルをPC端末800に出力し、不揮発メモリ810aに記憶させる。PC端末800接続後、ユーザ使用時において変更される交代処理管理テーブルのデータは、交代処理管理テーブル更新制御部709によって、PC端末800に順次出力され、不揮発性メモリ810aに記憶された交代処理管理テーブルが更新される。
(5)交代処理管理テーブルを着脱可能な不揮発メモリ(ユーザキー)に記憶し、PC端末がユーザキーの照合を実施
上記の実施例1、2では交代処理管理テーブル(図4および図10参照)を記憶媒体上に記憶させていたが、これに限定されるものではなく、着脱可能な不揮発性メモリ(ユーザキー)に交代処理管理テーブルを記憶させ、ユーザキーの照合をPC端末が実行してもよい。図24は、その他の実施例にかかる記憶装置の構成を示す機能ブロック図(5)である。
図24に示すように、この記憶装置900は、記憶媒体901と、ヘッド902と、ライトチャンネル903と、リードチャンネル904と、バッファメモリ905と、入出力制御IF部906と、不良セクタ検出部907と、処理判定制御部908と、交代処理管理テーブル更新制御部909と、コントローラ910と、初期交代処理管理テーブル記憶メモリ911とを備えて構成される。
また、PC端末1000は、PCメインボード1010およびメモリ接続端子1020を備え、このPCメインボード1010は、ユーザキー1030を照合するユーザキー照合部1010aを有する。なお、PC端末1000のその他の構成は、一般的な端末装置と同様であるため説明を省略する。また、ユーザキー1030に記憶されるデータのデータ構造は、図19に示したデータ構造と同様であるため説明を省略する。
図24に示す、記憶媒体901、ヘッド902、ライトチャンネル903、リードチャンネル904、バッファメモリ905、入出力制御IF部906、不良セクタ検出部907、処理判定制御部908、コントローラ910に関する説明は、図13に示した記憶媒体201、ヘッド202、ライトチャンネル203、リードチャンネル204、バッファメモリ205、入出力制御IF部206、不良セクタ検出部207、処理判定制御部208、コントローラ210と同様であるため説明を省略する。
交代処理管理テーブル更新制御部909は、記憶装置900の出荷時に物理フォーマットが行われた場合に、かかる物理フォーマットによって作成される交代処理管理テーブルを初期交代処理管理テーブル記憶メモリ911に記憶する。そして、交代処理管理テーブル更新制御部909は、PC端末1000が記憶装置900に接続された場合に、初期交代処理管理テーブル記憶メモリ911に記憶された交代処理管理テーブルをPC端末1000に出力し、ユーザキー1030に記憶させる。PC端末1000接続後、ユーザ使用時において変更される交代処理管理テーブルのデータは、交代処理管理テーブル更新制御部909によって、PC端末1000に順次出力され、ユーザキー1030に記憶された交代処理管理テーブルが更新される。
ユーザキー照合部1010aは、記憶装置900の記憶装置名識別子(ユーザキー照合部1010aが保持しているものとする)とユーザキー1030に記憶された記憶装置名識別子とを比較して、各記憶装置名識別子が一致するか否かを判定する処理部である。ユーザキー照合部1010aは、記憶装置900の記憶装置名識別子とユーザキー1030に記憶された記憶装置名識別子とが一致しない場合には、ユーザキー1030に記録されたデータが記憶装置900に送信されることを禁止する。なお、ユーザキー照合部1010aは、記憶装置900の記憶装置名識別子とユーザキー1030に記憶された記憶装置名識別子とが一致しない場合に、記憶装置900の起動を禁止してもよい。
メモリ接続端子1020は、ユーザキー1030をPC端末1000に接続するための接続端子である。ユーザキー1030がメモリ接続端子1020に接続されることによって、記憶装置900は、PC端末1000を介して、ユーザキー1030に記憶された交代処理管理テーブルなどにアクセスすることができる。
(6)本発明の記憶装置をシンクライアントシステムに適用
上記の実施例1、2に記載した記憶装置をシンクライアントシステム(クライアント装置が記憶装置を保持せず、サーバ装置に備えられた記憶装置を利用するシステム)に適応することもできる。図25は、シンクライアントシステムを構成するサーバ装置およびクライアント装置の構成を示す機能ブロック図である。
図25に示すように、このシンクライアントシステムでは、サーバ装置1100およびクライアント装置1200がインターネット50を介して接続されている。サーバ装置1100は、クライアント装置1200に種々のサービスを提供するサーバ装置である。同図に示すように、このサーバ装置1100は、記憶媒体1101と、ヘッド1102と、ライトチャンネル1103と、リードチャンネル1104と、バッファメモリ1105と、通信制御IF部1106と、不良セクタ検出部1107と、処理判定制御部1108と、交代処理管理テーブル更新制御部1109と、HDDコントローラ1110と、初期交代処理管理テーブル記憶メモリ1111と、ユーザキー照合部1112と、識別子付与部1113と、サーバメインコントローラ1114とを備えて構成される。
このうち、記憶媒体1101、ヘッド1102、ライトチャンネル1103、リードチャンネル1104、バッファメモリ1105、不良セクタ検出部1107、処理判定制御部1108、HDDコントローラ1110に関する説明は、図13に示した記憶媒体201、ヘッド202、ライトチャンネル203、リードチャンネル204、バッファメモリ205、不良セクタ検出部207、処理判定制御部208、コントローラ210と同様であるため説明を省略する。
通信制御IF部1106は、所定の通信プロトコルによってクライアント装置1200とデータ通信を行う処理部である。
交代処理管理テーブル更新制御部1109は、記憶媒体1101に対して物理フォーマットが行われた場合に、かかる物理フォーマットによって作成される交代処理管理テーブルを初期交代処理管理テーブル記憶メモリ1111に記憶する処理部である。そして、交代処理管理テーブル更新制御部1109が、初めてサーバ装置1100がクライアント装置1200とのデータ通信が開始された場合に、初期交代処理管理テーブル記憶メモリ1111に記憶された交代処理管理テーブルをクライアント装置1200に出力し、ユーザキー1220に記憶させる。この間、初期交代処理管理テーブル記憶メモリ1111を参照し、記憶装置のデータにアクセス可能である。クライアント装置1200とのデータ通信を開始後、ユーザ使用時において変更される交代処理管理テーブルのデータは、交代処理管理テーブル更新制御部1109によって、クライアント装置1200に順次出力され、ユーザキー1220に記憶された交代処理管理テーブルが更新されるとともに初期交代処理管理テーブル記憶メモリ1111も更新される。交代処理管理テーブル更新制御部1109は、ユーザキー1220に交代処理管理データが送信された後、ユーザからサーバとの接続を中止するコードがサーバ1100に送信されると初期交代処理管理テーブル記憶メモリ1111を初期化する。
また、交代処理管理テーブル更新制御部1109は、変更前の交代処理管理テーブルと変更後の交代処理管理テーブルとを比較して、更新された部分のデータのみをクライアント装置1200に出力することも可能である。そのために初期交代処理管理テーブル記憶メモリ1111は更新された差分データを一時記憶する記憶部を併せえ備えている。このように、更新された部分のみをクライアント装置1200に出力することによって、インターネット50の帯域を圧迫することなくクライアント装置1200との間で効率のよいデータ通信が可能となる。
ユーザキー照合部1112は、記憶媒体1101に対応する記憶装置名識別子(ユーザキー照合1112が保持しているものとする)とユーザキー1220に記憶された記憶装置名識別子とを比較して、各記憶装置名識別子が一致するか否かを判定する処理部である。ユーザキー照合部1112は、ユーザキー照合部1112が保持する記憶装置名識別子とユーザキー1220に記憶された記憶装置名識別子とが一致しない場合には、ユーザキー1220に記録されたデータがサーバ装置1100に送信されることを禁止する。なお、ユーザキー照合部1112は、自身の記憶装置名識別子とユーザキー1220に記憶された記憶装置名識別子とが一致しない場合に、サーバ装置1100の起動を禁止してもよい。
識別子付与部1113は、交代処理管理テーブル更新制御部1109が交代処理管理テーブルをクライアント装置1200に出力する場合に、ユーザデータと交代処理管理テーブルとを区別するための識別子を付加する処理部である。サーバメインコントローラ1114は、サーバ装置1100全体を制御する処理部であり、クライアント装置1200からのサービス要求に応答して、各種のサービスを提供する。
クライアント装置1200は、サーバ装置1100から各種のサービス提供を受け付けるクライアント装置であり、通信制御IF部1210と、分別制御部1211と、PCメインコントローラ1212と、ユーザキー管理部1213と、メモリ接続端子1214とを備えて構成される。
通信制御IF部1210は、所定の通信プロトコルによってサーバ装置1100とデータ通信を行う処理部である。分別制御部1211は、サーバ装置1100から送信されるデータの識別子に基づいて、送信されたデータがユーザデータか交代処理管理テーブルかを判定し、分別する処理部である。分別制御部1211は、サーバ装置1100から送信されたデータがユーザデータであると判定した場合には、ユーザデータをPCメインコントローラ1212に出力し、各種の処理を実行させる。
一方、分別制御部1211は、サーバ装置1100から送信されたデータが交代処理管理テーブルであると判定した場合には、送信されたデータをユーザキー管理部1213に出力する。
PCメインコントローラ1212は、クライアント装置1200全体を制御する処理部であり、サーバ装置から送信されるユーザデータに基づいて、各種の処理を実行する。ユーザキー管理部1213は、メモリ接続端子1214に接続されたユーザキー1220を管理する処理部であり、交代処理管理テーブルの更新データを取得した場合に、ユーザキー1220に記憶された交代処理管理テーブルを更新する。また、サーバ装置1100から交代処理管理テーブルの要求を受け付けた場合には、ユーザキー1220に記憶された交代処理管理テーブルをサーバ装置1100に送信する。
また、ユーザキー管理部1213は、交代処理管理テーブル更新制御部1109と協働し、交代処理管理テーブルの更新データがユーザキー1220に完全に反映されるまで、ユーザキー1220が取り外せないようにロックする。
(7)リムーバルディスク装置に本発明を適用
上記の実施例1、2に記載した発明を着脱可能なリムーバルディスクを備えたリムーバルディスク装置にも適用することができる。図26は、リムーバルディスク装置の構成を示す機能ブロック図(1)である。同図に示すように、このリムーバルディスク装置1300は、リムーバル記憶媒体1301と、光学ヘッド1302と、ライトチャンネル1303と、リードチャンネル1304と、バッファメモリ1305と、入出力制御IF部1306と、不良セクタ検出部1307と、処理判定制御部1308と、交代処理管理テーブル更新制御部1309と、コントローラ1310と、ユーザキー照合部1311と、メモリ接続端子1312とを備えて構成される。
このうち、リムーバル記憶媒体1301は、リムーバルディスク1300から着脱可能な記憶媒体であり、例えば、光ディスクなどに対応する。ここでは、リムーバル記憶媒体1301を光ディスクとして説明するがこれに限定されるものではない。光学ヘッド1302は、リムーバル記憶媒体1301に対してデータの記録・再生を行うヘッドである。なお、リムーバル記憶媒体1301には予め、リムーバル記憶媒体1301を識別する媒体識別子が所定の記憶領域に記憶されており、かかる媒体識別子は、光学ヘッド1302を介してユーザキー照合部1311に出力される。
なお、ライトチャンネル1303、リードチャンネル1304、バッファメモリ1305、入出力制御IF部1306、不良セクタ検出部1307、処理判定制御部1308、コントローラ1310に関する説明は、図13に示したライトチャンネル203、リードチャンネル204、バッファメモリ205、入出力制御IF部206、不良セクタ検出部207、処理判定制御部208、コントローラ210と同様であるため説明を省略する。
交代処理管理テーブル更新制御部1309は、ユーザキー1313に記憶された交代処理管理テーブルを更新する処理部である。具体的に、交代処理管理テーブル更新制御部1309は、処理判定制御部1308から取得するデータ(不良セクタ識別番号、判定結果、減衰比M(判定結果が救済処理あるいは部分リプレイス処理の場合のみ)、リプレイスセクタ識別番号(部分リプレイス処理あるいはフルリプレイス処理の場合のみ))に基づいて、交代処理管理テーブル(記憶装置1300に対応する交代処理管理テーブル)を更新する処理部である。
なお、交代処理管理テーブル更新制御部1309は、ユーザキー1313に記憶されたリムーバルディスク装置1300の記憶装置名識別子および媒体識別子に対応する交代処理管理テーブルにアクセスし、かかる交代処理管理テーブルを順次更新する。
ここで、リムーバルディスク装置1300に利用されるユーザキーのデータ構造について説明する。図27は、リムーバルディスク装置1300に利用されるユーザキーのデータ構造の一例を示す図である。
図27に示すように、ユーザキー1313は、リムーバルディスク装置を識別する装置名識別子と、リムーバル記憶媒体1301を識別する媒体識別子と、交代処理管理テーブルとを対応付けて記憶している。なお、交代処理管理テーブルは、図17に示した交代処理管理テーブルと同様である。ユーザキー1313は、単一の交代処理管理テーブルだけではなく、複数のリムーバルディスク装置1300およびリムーバル記憶媒体1301に対応する複数の交代処理管理テーブルを記憶する。
図26の説明に戻ると、ユーザキー照合部1311は、リムーバルディスク装置1300の記憶装置名識別子、リムーバル記憶媒体1301の媒体識別子(ユーザキー照合部1311が保持しているものとする)とユーザキー1313に記憶された記憶装置名識別子、媒体識別子とを比較して、各データが一致するか否かを判定する処理部である。ユーザキー照合部1311は、各データが一致しない場合には、ユーザキー1313に記録されたデータがリムーバルディスク装置1300に送信されることを禁止する。なお、ユーザキー照合部1311は、各データが一致しない場合に、リムーバルディスク装置1300の起動を禁止してもよい。
このように、ユーザキー照合部1311が、記憶装置名識別子、媒体識別子を基にしてユーザキーの照合を行うので、リムーバル記憶媒体1301に対するセキュリティを向上させることができる。
メモリ接続端子1312は、ユーザキー1313をリムーバルディスク装置1300に接続するための接続端子である。ユーザキー1313がメモリ接続端子1312に接続されることによって、リムーバルディスク装置1300は、ユーザキー1313に記憶された交代処理管理テーブルなどにアクセスすることができる。
本提案では、ユーザキー1313とリムーバルディスク装置1300とリムーバル記憶媒体1301とが対応していない場合、リムーバル記憶媒体1301のデータを破壊する可能性が高い。これを防止するために、ユーザキー照合部1311にリムーバルディスク装置1300の記憶装置名識別子、媒体識別子を登録し、ユーザがリムーバルディスク装置1300を購入後、初期起動時にユーザキー1313にユーザキー照合部1311が記憶装置名識別子、媒体識別子をユーザキー1313に登録する。次回から、ユーザキー1313がリムーバルディスク装置1300に接続されると、ユーザキー照合部1311によって照合が行われ、リムーバルディスク装置1300が起動する。
また、リムーバルディスク装置1300と、ユーザキー1313とがセットで販売される場合には、予め、装置名識別子などをユーザキー1313に登録しておくとよい。さらに、ユーザが利用するリムーバル記憶媒体1301に媒体識別子を予め記憶させておき、ユーザキー1313にも媒体識別子を記憶させておくこともできる。
ところで、リムーバル記憶媒体1301の媒体識別子をユーザが登録することができる。ユーザ自らが媒体識別子をリムーバル記憶媒体1301に登録する場合には、ユーザがユーザキー1313をメモリ接続端子1312に接続し、リムーバルディスク装置1300の装置名識別子と、ユーザキー1313に記憶された装置名識別子とがユーザキー照合部1311によって比較される。そして、各装置名識別子が一致する場合に、ユーザキー照合部1311は、ユーザが所望する媒体識別子を取得し、取得した媒体識別子をリムーバル記憶媒体1301に記憶させるとともに、ユーザキーにかかる媒体識別子を記録する。
(8)本発明を適用したリムーバルディスク装置にPC端末を接続し、PC端末側でユーザキーの照合を実施
上記の実施例1、2に記載した発明を着脱可能なリムーバルディスクを備えたリムーバルディスク装置にも適用し、リムーバルディスク装置に接続されたPC端末側でユーザキーの照合を実施してもよい。図28は、リムーバルディスク装置の構成を示す機能ブロック図(2)である。同図に示すように、このリムーバルディスク装置1400は、リムーバル記憶媒体1401と、光学ヘッド1402と、ライトチャンネル1403と、リードチャンネル1404と、バッファメモリ1405と、入出力制御IF部1406と、不良セクタ検出部1407と、処理判定制御部1408と、交代処理管理テーブル更新制御部1409と、コントローラ1410とを備えて構成される。また、PC端末1500は、PCメインボード1510を備え、このPCメインボード1510は、ユーザキー1520に記憶されたデータを照合するユーザキー照合部1510aを有する。なお、PC端末1500のその他の構成は、一般的な端末装置と同様であるため説明を省略する。
図28に示す、リムーバル記憶媒体1401、光学ヘッド1402、ライトチャンネル1403、リードチャンネル1404、バッファメモリ1405、入出力制御IF部1406、不良セクタ検出部1407、処理判定制御部1408、コントローラ1410は、図26に示したリムーバル記憶媒体1301、光学ヘッド1302、ライトチャンネル1303、リードチャンネル1304、バッファメモリ1305、入出力制御IF部1306、不良セクタ検出部1307、処理判定制御部1308、コントローラ1310と同様であるため説明を省略する。
交代処理管理テーブル更新制御部1409は、ユーザキー1520に記憶された交代処理管理テーブルを更新する処理部である。具体的に、交代処理管理テーブル更新制御部1409は、処理判定制御部1408から取得するデータ(不良セクタ識別番号、判定結果、減衰比M(判定結果が救済処理あるいは部分リプレイス処理の場合のみ)、リプレイスセクタ識別番号(部分リプレイス処理あるいはフルリプレイス処理の場合のみ))に基づいて、交代処理管理テーブル(リムーバルディスク装置1400に対応する交代処理管理テーブル)を更新する処理部である。
ユーザキー照合部1510aは、リムーバルディスク装置1400の記憶装置名識別子、リムーバル記憶媒体1401の媒体識別子(ユーザキー照合部1510aが保持しているものとする)とユーザキー1520に記憶された記憶装置名識別子、媒体識別子とを比較して、各データが一致するか否かを判定する処理部である。ユーザキー照合部1510aは、各データが一致しない場合には、ユーザキー1520に記録されたデータがリムーバルディスク装置1500に送信されることを禁止する。なお、ユーザキー照合部1510aは、各データが一致しない場合に、リムーバルディスク装置1400の起動を禁止してもよい。
メモリ接続端子1511は、ユーザキー1520をPC端末1500に接続するための接続端子である。ユーザキー1520がメモリ接続端子1511に接続されることによって、リムーバルディスク装置1400は、PC端末1500を介してユーザキー1520に記憶された交代処理管理テーブルなどにアクセスすることができる。
ユーザキー1520に記憶されるデータのデータ構造は、図26に示したユーザキー1313と同様であるため説明を省略する。
ところで、上記実施例で説明した各種の処理は、予め用意されたプログラムを記憶装置(コンピュータ)で実行することによって実現することができる。図5を用いて説明すると、ROM(図示略)などの記憶メモリに上記した各種の処理を実現する各種のプログラムが記憶されており、コントローラ110がROMに記録された各種のプログラムを読み出して実行することにより、上述した各種の処理部の機能(救済処理、スリッピング処理、部分リプレイス処理、フルリプレイス処理など)を実現する各種プロセスが起動される。
なお、各種プログラムは、必ずしも最初からROMに記憶させておく必要はない。たとえば、コンピュータに挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータに接続される「他のコンピュータ(またはサーバ)」などに各種プログラムを記憶しておき、コンピュータがこれらから各種プログラムを読み出して実行するようにしてもよい。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPU(あるいはMCU(Micro Controller Unit)、MPU(Micro Processing Unit))および当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(付記1)記憶媒体上の記憶領域を所定バイトのセクタに分割するフォーマットを行い当該セクタに対してデータを記憶させる記憶装置であって、
前記セクタからエラーレイトが基準値以上、エラー訂正不能となる不良セクタを検出する不良セクタ検出部と、
前記不良セクタ検出部によって検出された不良セクタに対して、前記セクタに記憶させるデータの記録密度よりも低い記録密度によってデータを記憶させる記憶制御部と、
を備えたことを特徴とする記憶装置。
(付記2)前記記憶制御部は、前記不良セクタに対してデータを記憶させる場合に、前記セクタにデータを記憶させる場合の記録クロック数よりも記録クロック数を減少させて前記不良セクタにデータを記憶させることを特徴とする付記1に記載の記憶装置。
(付記3)前記不良セクタに記憶させるデータに基づいてCRC(Cyclic Redundancy Check)冗長ビットおよびECC(Error Correcting Code)冗長ビットを算出し、当該CRC冗長ビットおよびECC冗長ビットを前記不良セクタに記憶されたデータに付加する冗長ビット算出制御部をさらに備えたことを特徴とする付記2に記載の記憶装置。
(付記4)前記記憶制御部は、前記不良セクタに対するデータの記憶結果に応じて前記記録クロック数を調整することを特徴とする付記2に記載の記憶装置。
(付記5)前記記憶制御部は、前記セクタに記憶するデータと同容量のデータを前記不良セクタに記憶させる場合に、当該不良セクタに記憶できない残りのデータを前記不良セクタとは異なる記憶領域となるリプレイスセクタに記憶させることを特徴とする付記1に記載の記憶装置。
(付記6)前記記憶媒体は、前記不良セクタにデータを記憶させる場合に使用した記録クロック数と当該不良セクタを識別する不良セクタ識別情報と当該不良セクタに対して行った処理内容とを対応付けた情報を交代処理管理テーブルとして記憶することを特徴とする付記5に記載の記憶装置。
(付記7)前記不良セクタにデータを記憶させる場合に使用した記録クロック数と当該不良セクタを識別する不良セクタ識別情報と当該不良セクタに対して行った処理内容とを対応付けた情報を交代処理管理テーブルとして記憶する交代処理管理テーブル記憶部をさらに備えたことを特徴とする付記5に記載の記憶装置。
(付記8)記憶媒体上の記憶領域を所定バイトのセクタに分割するフォーマットを行い当該セクタにデータを記憶させる記憶装置に対して着脱可能に接続されるメモリであって、
前記記憶装置は、
前記セクタからエラーレイトが基準値以上、エラー訂正不能となる不良セクタを検出し、当該不良セクタに対して、前記セクタにデータを記憶させる場合の記録クロック数よりも記録クロック数を減少させてデータを記録し、
前記メモリは、
前記不良セクタにデータを記憶させる記録クロック数と前記不良セクタを識別する不良セクタ識別情報とを対応付けた交代処理管理テーブルを記憶することを特徴とするメモリ。
(付記9)前記交代処理管理テーブルは、前記記憶装置を識別する記憶装置識別情報と対応付けられていることを特徴とする付記8に記載のメモリ。
(付記10)記憶媒体上の記憶領域を所定バイトのセクタに分割するフォーマットを行い当該セクタに対してデータを記憶させる記憶装置に接続される端末装置であって、
前記記憶装置は、
前記セクタからエラーレイトが基準値以上、エラー訂正不能となる不良セクタを検出し、当該不良セクタに対して、前記セクタにデータを記憶させる場合の記録クロック数よりも記録クロック数を減少させてデータを記録し、
前記端末装置は、
前記不良セクタにデータを記憶される記録クロック数と前記不良セクタを識別する不良セクタ識別情報とを対応付けた交代処理管理テーブルを記憶する記憶部
を備えたことを特徴とする端末装置。
(付記11)前記記憶部は、前記記憶装置を識別する記憶装置識別情報と前記交代処理管理テーブルとを対応付けて記憶し、前記記憶部に記憶された記憶装置識別情報に基づいて、前記交代処理管理テーブルを前記記憶装置に出力するか否かを判定する判定部をさらに備えたことを特徴とする付記10に記載の端末装置。
(付記12)通信回線を介してクライアント端末に各種のサービスを提供するサーバ装置であって、
前記サーバ装置は、記憶媒体上の記憶領域を所定バイトのセクタに分割するフォーマットを行い当該セクタにデータを記憶させる記憶装置を保持し、
前記記憶装置は、前記セクタからエラーレイトが基準値以上、エラー訂正不能となる不良セクタを検出し、当該不良セクタに対して、前記セクタにデータを記憶させる場合の記録クロック数よりも記録クロック数を減少させてデータを記録し、
前記不良セクタにデータを記憶させる記録クロック数と前記不良セクタを識別する不良セクタ識別情報とを対応付けた交代処理管理テーブルを一時的に記憶する一時記憶部と、
前記一時記憶部に記憶された前記交代処理管理テーブルを前記クライアント端末に出力する出力部と
を備えたことを特徴とするサーバ装置。
(付記13)前記出力部による前記交代処理管理テーブルの出力が完了した後に、前記一時記憶部の記憶する前記交代処理管理テーブルを削除する削除部をさらに備えたことを特徴とする付記12に記載のサーバ装置。
(付記14)前記出力部は、ユーザデータと前記交代処理管理テーブルとを区別するための識別情報を前記交代処理管理テーブルに付加し、前記クライアント端末に出力することを特徴とする付記12に記載のサーバ装置。
(付記15)前記出力部は、前記交代処理管理テーブルが更新された場合に、更新された交代処理管理テーブルと前記一時記憶部に記憶された交代処理管理テーブルとを比較し、比較した交代処理管理テーブルの一致しない部分のデータのみを前記クライアント端末に出力することを特徴とする付記12に記載のサーバ装置。
(付記16)前記出力部は、前記記憶装置において、リプレイス処理が発生した場合に、リプレイス対象となるデータが記憶されるリプレイスセクタを識別するリプレイスセクタ識別情報を前記交代処理管理テーブルに含めて前記クライアント端末に出力することを特徴とする付記12に記載のサーバ装置。
(付記17)前記記憶装置は、前記クライアント端末に出力された交代処理管理テーブルを当該クライアント端末から取得し、取得した交代処理管理テーブルに基づいて前記記憶媒体に対するデータの記憶および読出しを実行することを特徴とする付記12に記載のサーバ装置。
(付記18)各種のサービスを提供するサーバ装置と当該サーバ装置から各種のサービスを享受するクライアント端末からなるサーバクライアントシステムであって、
前記サーバ装置は、
記憶媒体上の記憶領域を所定バイトのセクタに分割するフォーマットを行い当該セクタにデータを記憶させる記憶装置を保持し、
前記記憶装置は、前記セクタからエラーレイトが基準値以上、エラー訂正不能となる不良セクタを検出し、当該不良セクタに対して、前記セクタにデータを記憶させる場合の記録クロック数よりも記録クロック数を減少させてデータを記録し、
前記不良セクタにデータを記憶させる記録クロック数と前記不良セクタを識別する不良セクタ識別情報とを対応付けた交代処理管理テーブルを一時的に記憶する一時記憶部と、
前記一時記憶部に記憶された前記交代処理管理テーブルを前記クライアント端末に出力する出力部と
を備えたことを特徴とするサーバクライアントシステム。
(付記19)所定バイトのセクタに分割され当該セクタにデータを記憶する記憶媒体であって、
前記セクタに記憶したデータのエラーレイトが基準値以上、エラー訂正不能となる不良セクタを有する場合に、当該不良セクタに対するデータの記憶時に使用された記録クロック数を含んだ交代処理管理テーブルを保持することを特徴とする記憶媒体。
(付記20)記憶媒体上の記憶領域を所定バイトのセクタに分割するフォーマットを行い当該セクタに対してデータを記憶させる記憶装置を制御する制御装置であって、
前記セクタからエラーレイトが基準値以上、エラー訂正不能となる不良セクタを検出する不良セクタ検出部と、
前記不良セクタ検出部によって検出された不良セクタに対して、前記セクタに記憶させるデータの記録密度よりも低い記録密度によってデータを記憶させる記憶制御部と、
を備えたことを特徴とする制御装置。