(57)【要約】【課題】  ＳＳＤなどＮＡＮＤフラッシュを利用する媒体には、「予備領域」がある。従来、コントローラはエラーが多数発生したセクタを含むブロックを不良ブロックと見なし、予備領域のブロックを不良ブロックと代替することで、媒体の初期容量を保つ。予備領域が無くなる際が媒体の寿命とされてた。【解決手段】  媒体の初期容量から、ＳＭＡＲＴ情報に含まれる代替、代替処理待ち、回復不可能なセクタの総数などの値を計算する。実際に使用可能な容量をユーザに示す方法により、寿命を延ばす又は寿命の定義をコントロールすることを特徴とする。【選択図】  図６
2013149112.tif 000002
【特許請求の範囲】
【請求項１】
予備領域を有する記憶媒体の管理方法において、
前記記憶媒体の初期容量、予備領域容量およびＳＭＡＲＴ情報を特定し、
前記初期容量および前記予備領域容量に対して、前記ＳＭＡＲＴ情報に基づいて、前記記憶媒体のうち、障害発生領域に関して前記予備領域を用いて実際に利用可能な容量を特定し、
特定された利用可能な容量を用いて、前記記憶媒体の使用可能領域の容量を特定することを特徴とする記憶媒体の管理方法。
【請求項２】
請求項１に記載の記憶媒体の管理方法において、
特定された前記ＳＭＡＲＴ情報を用いて、前記障害発生領域について、前記予備領域における代替領域、代替処理待ち領域および回復不可能領域を特定して、前記利用可能な容量を特定することを特徴とする記憶媒体の管理方法。
【請求項３】
請求項１または２のいずれかに記載の記憶媒体の管理方法において、
前記ＳＭＡＲＴ情報に含まれるReallocated Sectors Count、(C5) Current Pending Sector Count、(C6) Off-Line Scan Uncorrectable Sector Countを用いて、前記利用可能な容量を特定することを特徴とする記憶媒体の管理方法。
【請求項４】
請求項１乃至３のいずれかに記載の記憶媒体の管理方法において、
前記予備領域の容量が残っておらず、前記利用可能な容量が予め定めた最小領域以下の場合、予め定められた機能を実行することを特徴とする記憶媒体の管理方法。
【請求項５】
請求項４に記載の記憶媒体の管理方法において、
前記予め定められた機能は、最小領域以上の場合に比較してより制限された機能であることを特徴とする記憶媒体の管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、媒体使用可能領域の制御方法に関するものである。その中でも特に、ＳＳＤ（Solid State Drive）などＮＡＮＤフラッシュを利用する媒体の技術に関する。
【背景技術】
【０００２】
上述したＳＳＤ等の媒体においては、記憶領域では故障などによりいわゆる寿命が存在する。この故障、寿命の問題を解決するために、いくつか技術が提案されている。例えば、特開２００７−２１３６７０号公報（特許文献１）がある。この公報には、「ハードディスク装置が故障しやすい状況にあるか否かを、ＳＭＡＲＴ機能に設定する基準値と実測値の数値比較によって判定し、データのバックアップをとる。」と記載されている。また、特開２０１０−４９５８１号公報（特許文献２）がある。この公報には、「特定のホスト機器とストレージ機器との間において取得したログデータから、使用限界予想時間を算出し、個々の業務に最適なストレージを選択する。」と記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２１３６７０号公報
【特許文献２】特開２０１０−４９５８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＳＳＤなどＮＡＮＤフラッシュを利用する媒体には、「予備領域」がある。従来、コントローラはエラーが多数発生したセクタを含むブロックを不良ブロックと見なし、予備領域のブロックを不良ブロックと代替することで、媒体の初期容量を保つ。予備領域が無くなる際が媒体の寿命とされていた。
【０００５】
しかしながら、従来技術においては、この予備領域の存在を考慮して管理を行っていなかった。このため、実態に即した管理が十分でない、との課題が存在した。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明ではＳＭＡＲＴ情報（Self-Monitoring, Analysis and Reporting Technology）を利用して、「予備領域」への代替を判断、制御することで、記憶媒体の管理を行うものである。より詳細には、本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、「媒体の初期容量から、ＳＭＡＲＴ情報に含まれる代替、代替処理待ち、回復不可能なセクタの総数などの値を計算する。実際に使用可能な容量をユーザに示す方法により、寿命を延ばす又は寿命の定義をコントロールすること」を特徴とする。また、この寿命を延ばす、定義をコントロールとは、予備領域の容量が残っておらず、利用可能な容量が予め定めた最小領域以下の場合、当該記憶媒体に対して特定の機能を実行するものである。例えば、機能（書き込み等）をより制限してもよい。
【発明の効果】
【０００７】
媒体の初期容量を保つ為、媒体の予備領域が無くなる際が寿命とされていたが、実際に使用可能な容量を示すことにより、媒体の寿命を延ばす、寿命をコントロールする、寿命になった際の振舞い（ライトプロテクト、リードオンリーなど）を指定することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態における媒体使用可能領域制御装置の構成図の例である。
【図２】本発明の一実施形態で用いる媒体のメモリ内の記憶領域の一部であるＩｄｅｎｔｉｆｙ  Ｄｅｖｉｃｅ（Ｅｃｈ）情報テーブルの例である。
【図３】本発明の一実施形態で用いる媒体のメモリ内の記憶領域の一部であるＳＭＡＲＴ情報テーブルの例である。
【図４】本発明の一実施形態で用いる媒体のメモリ内の記憶領域の一部である最小領域以下の場合の動作情報テーブルの例である。
【図５】本発明の一実施形態における予備領域の残容量を条件とする場合の、媒体の制御モジュール部の処理を説明するフローチャートの例である。
【図６】本発明の一実施形態における予備領域と使用可能領域の残容量を条件とする場合の、媒体の制御モジュール部の処理を説明するフローチャートの例である。
【図７】本発明の一実施形態における使用可能領域の残容量を条件とする場合の、媒体の制御モジュール部の処理を説明するフローチャートの例である。
【発明を実施するための形態】
【０００９】
以下、本発明の一実施形態を図面を用いて説明する。
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
図１は、本実施例の媒体使用可能領域制御装置の構成図の例である。
【００１０】
本制御装置は、プロセッサ１００、キーボードやマウスなどの入力装置１１０、表示画面などの出力装置１２０、ｅＳＡＴＡ（external Serial ATA）やＵＳＢなどのインターフェースで接続される媒体アダプタ１４０、媒体１５０をデータバス１３０に接続して構成される。
【００１１】
媒体１５０は、データの読み書きを行うコントローラ１６０、媒体使用可能領域を制御する制御モジュール１８０と記憶領域１９０を持つメモリ１７０からなり、ハードディスクやＳＳＤなどの記憶媒体である。図１は、媒体アダプタ１４０と媒体１５０は外付けとしているが、ＰＣや組込み機器のようなホストデバイスに内蔵してもよい。また、バックアップをとる場合に、複数媒体構成にしてもよい。
【００１２】
コントローラ１６０は、制御モジュール１８０で行われる命令に対して、記憶領域１９０から必要な情報の読み出しと書き込みを行う。媒体使用可能領域を制御するパラメータの初期設定には、ベンダがプロセッサ１００にある出荷設定ソフトウェアを起動し、データバス１３０と媒体アダプタ１４０を経由して媒体１５０にアクセスする。制御モジュール１８０の命令に従い、入力装置１１０からパラメタ入力を行い、出力装置１２０に表示される結果を確認する。
【００１３】
制御モジュール１８０は、使用する媒体の限界値を定める機能の最小領域設定１８１、最小領域に達した際の動作を定める最小領域以下の場合の動作入力１８２、当該動作を実行する最小領域以下の場合の動作制御１８３、使用する媒体の現在使用可能な容量を計算する使用可能領域算出１８４の機能からなる。なお、これら各機能は、コンピュータプログラムに従ってＣＰＵの如き演算手段が演算を実行することでも実現可能である。
【００１４】
記憶領域１９０は、例えば記憶媒体のファイルやフラッシュメモリのような、電源オフでもデータが保持可能な領域であり、ＡＴＡデバイスで標準装備されているＩｄｅｎｔｉｆｙ  Ｄｅｖｉｃｅ２００、ハードディスクやＳＳＤの障害の早期発見や故障の予測を目的とするＳＭＡＲＴ情報２１０、ベンダが独自に設定する使用する媒体の限界値である最小領域２２０、ベンダが独自に設定する最小領域に達した際の動作を定める最小領域以下の場合の動作２３０、使用する媒体の現在使用可能な予備領域の容量を計算した結果の予備領域容量算出結果２４０、使用する媒体の現在使用可能な容量を計算した結果の使用可能領域容量算出結果２５０からなる。
なお、図１では、コントローラ１６０、メモリ１７０は独立して記載されているが、それぞれの機能を一つに纏めてもよい。
【００１５】
図２は、図１記述のＩｄｅｎｔｉｆｙ  Ｄｅｖｉｃｅ情報２００であり、制御モジュール１８０が、使用可能領域算出１８４に必要となる情報で、ＡＴＡデバイスで標準装備されている情報とベンダが独自に設定する情報である。
【００１６】
Ｉｄｅｎｔｉｆｙ  Ｄｅｖｉｃｅ情報２００には、シリアル番号２０１、ファームウェア２０２、モデル番号２０３、製品の容量として表示されている媒体初期容量の４８−ｂｉｔ  ＬＢＡ（媒体の初期容量）２０４、不良ブロックと代替するユーザには知られていない部分の初期予備領域であるベンダ独自（初期の予備領域サイズ）２０５を含む。
【００１７】
図３は、図１記述のＳＭＡＲＴ情報２１０であり、ハードディスクやＳＳＤの障害の早期発見や故障の予測を目的とする情報で、制御モジュール１８０が、使用可能領域算出１８４のパラメタとなる不良セクタ容量情報である。
ＳＭＡＲＴ情報２１０には、代替処理済のセクタ数２１１、代替処理保留中のセクタ数２１２、回復不可能セクタ数２１３を含む。
【００１８】
代替処理保留中のセクタ数２１２は、ハードディスクのファームウェアがヘッド電流などの条件を変えてリードを数回試みてもＮＧのセクタで、リフレッシュして書き込みすれば蘇る可能性があるセクタである。
回復不可能セクタ数２１３は、代替処理済のセクタ数２１１の領域を使い切った後に、カウントされるセクタである。
【００１９】
図４は、図１記述の最小領域以下の場合の動作２３０であり、使用する媒体の現在使用可能な予備領域の容量を計算した結果の予備領域容量算出結果２４０、もしくは使用する媒体の現在使用可能な容量を計算した結果の使用可能領域容量算出結果２５０の条件によって、制御モジュール１８０が実行する動作情報である。
【００２０】
最小領域以下の場合の動作２３０は、容量を現状以上に増やさずにデータの参照のみを可能とするライトプロテクト（リードオンリー）２３１、引続きデータの書き込みを可能とする為のデータ削除２３２、媒体が取り外しされた状態にするアンマウント２３３、データ保護の為のバックアップ２３４のメニューからなる。
【００２１】
データ削除２３２では、ファイル毎、フォルダ毎に保存フラグや優先順位フラグを設け、データコントロールしてもよい。削除する容量について、予め削除する容量を設定したり、次に書き込むファイルのサイズによって、削除する容量を決めてもよい。
【００２２】
バックアップ２３４は、記憶領域１９０に予めバックアップ領域を確保したり、複数の媒体構成にすることによって、実装してもよい。また、バックアップ媒体が何も記録されていない場合のみ、バックアップ可能としてもよい。バックアップ媒体に既にデータが記録されている場合、ユーザが追記書込みを意図しない場合もあるためである。
【００２３】
次に、本実施形態における予備領域の判定について、図５を用いて説明する。本ケースは、製品の容量として表示されている媒体初期容量の図２の４８−ｂｉｔ  ＬＢＡ（媒体の初期容量）２０４と、不良ブロックと代替するユーザには知られていない部分の初期予備領域である図２のベンダ独自（初期の予備領域サイズ）２０５が、それぞれ別のものとされている場合である。
【００２４】
ステップ３００において、予備領域の判定を開始する。本処理開始のタイミングはユーザによる媒体の接続の際、データの書き込みの際、媒体が関連するソフトウェアの起動の際やソフトウェアにより表示されるボタンの押下の際である。
【００２５】
ステップ３０１において、初期予備領域を図２のベンダ独自（初期の予備領域サイズ）２０５より、ＳＭＡＲＴ情報（不良セクタ）を図３の代替処理済のセクタ数２１１より取得する。
【００２６】
ステップ３０２において、制御モジュール１８０の使用可能領域算出１８４機能は、ステップ３０１で取得したパラメータを用いて、使用する媒体の現在使用可能な予備領域容量の算出を行う。ベンダ独自（初期の予備領域サイズ）２０５から、代替処理済のセクタ数２１１に媒体のセクタサイズを掛けたものを、引き算することによって、算出し、予備領域容量算出結果２４０に保存する。
ステップ３０３において、ステップ３０２で算出した予備領域容量算出結果２４０をエクスプローラのディスクの管理に表示する。別途ソフトウェアなどで表示してもよい。
【００２７】
ステップ３０４において、ステップ３０２で算出した予備領域容量算出結果２４０が、０以上であるかどうかを判定する。また、予備領域が残っているか否かで処理を変えてもよい。
０以上の場合は（すなわち、残っている場合、以下同様）、ステップ３０６において、終了する。
０未満の場合（すなわち、残っていない場合、以下同様）は、ステップ３０５に進む。
【００２８】
ステップ３０５において、図４に記載の最小領域以下の場合の動作２３０のいずれかを実行して、ステップ３０６に進み、終了する。
【００２９】
次に、本実施形態における予備領域と使用可能領域の判定について、図６を用いて説明する。本ケースは、製品の容量として表示されている媒体初期容量の４８−ｂｉｔ  ＬＢＡ（媒体の初期容量）２０４と、不良ブロックと代替するユーザには知られていない部分の初期予備領域であるベンダ独自（初期の予備領域サイズ）２０５が、それぞれ別のものとされているが、両方の値の合算値を使用できる場合である。  ステップ３１０において、予備領域と使用可能領域の判定を開始する。本処理開始のタイミングはユーザによる媒体の接続の際、データの書き込みの際、媒体が関連するソフトウェアの起動の際やソフトウェアにより表示されるボタンの押下の際である。
【００３０】
ステップ３１１において、媒体初期容量を図２の４８−ｂｉｔ  ＬＢＡ（媒体の初期容量）２０４より、初期予備領域を図２のベンダ独自（初期の予備領域サイズ）２０５より、ＳＭＡＲＴ情報（不良セクタ）を図３の代替処理済のセクタ数２１１、代替処理保留中のセクタ数２１２、回復不可能セクタ数２１３より取得する。
【００３１】
ステップ３１２において、制御モジュール１８０の使用可能領域算出１８４機能は、ステップ３１１で取得したパラメータを用いて、使用する媒体の現在使用可能な予備領域容量の算出を行う。ベンダ独自（初期の予備領域サイズ）２０５から、代替処理済のセクタ数２１１に媒体のセクタサイズを掛けたものを、引き算することによって算出し、予備領域容量算出結果２４０に保存する。
【００３２】
また、ステップ３１１で取得したパラメータを用いて、使用する媒体の現在使用可能な使用可能領域容量の算出を行う。４８−ｂｉｔ  ＬＢＡ（媒体の初期容量）２０４とベンダ独自（初期の予備領域サイズ）２０５を足した値から、代替処理済のセクタ数２１１、代替処理保留中のセクタ数２１２、回復不可能セクタ数２１３の足した値に媒体のセクタサイズを掛けたものを、引き算することによって算出し、使用可能領域容量算出結果２５０に保存する。
【００３３】
不良セクタの算出において、代替処理保留中のセクタ数２１２は、ハードディスクのファームウェアがヘッド電流などの条件を変えてリードを数回試みてもＮＧのセクタで、リフレッシュして書き込みすれば蘇る(再度利用)可能性があるセクタであり、媒体管理の運用状況に応じて、考慮しないオプションとしてもよい。
【００３４】
ステップ３１３において、ステップ３１２で算出した使用可能領域容量算出結果２５０をエクスプローラのディスクの管理に表示する。エクスプローラには、通常、円グラフで使用領域と空き領域の合計値が表示されるが、使用可能領域とは、この使用領域と空き領域を合計した、壊れたセクタを含まない部分をいう。また、使用領域と空き領域のそれぞれの内訳を表示してもよい。別途ソフトウェアなどで表示してもよい。
【００３５】
ステップ３１４において、ステップ３１２で算出した予備領域容量算出結果２４０が、０以上であるかどうかを判定する。また、予備領域が残っているか否かで処理を変えてもよい。なお、本実施形態での判断は「０」を基準としているが、「０」以外であっても構わない。例えば、数ｂｉｔなど実質的に利用が困難な数値としても構わない。
０以上の場合は、ステップ３１７において、終了する。
０未満の場合は、ステップ３１５に進む。
【００３６】
ステップ３１５において、ステップ３１２で算出した使用可能領域容量算出結果２５０が、図４に記載の最小領域２２０の値以下であるかどうかを判定する。
最小領域２２０の値以上の場合は、ステップ３１７において、終了する。
最小領域２２０の値以下の場合は、ステップ３１６に進む。
【００３７】
ステップ３１６において、図４に記載の最小領域以下の場合の動作２３０のいずれかを実行して、ステップ３１７に進み、終了する。
【００３８】
次に、本実施形態における使用可能領域の判定について、図７を用いて説明する。本ケースは、不良ブロックと代替するユーザには知られていない部分の初期予備領域であるベンダ独自（初期の予備領域サイズ）２０５の概念が無く、媒体初期容量が媒体の全体の容量の場合である。
【００３９】
ステップ３２０において、使用可能領域の判定を開始する。本処理開始のタイミングはユーザによる媒体の接続の際、データの書き込みの際、媒体が関連するソフトウェアの起動の際やソフトウェアにより表示されるボタンの押下の際である。
【００４０】
ステップ３２１において、媒体初期容量を図２の４８−ｂｉｔ  ＬＢＡ（媒体の初期容量）２０４より、ＳＭＡＲＴ情報（不良セクタ）を図３の代替処理保留中のセクタ数２１２、回復不可能セクタ数２１３より取得する。
【００４１】
ステップ３２２において、制御モジュール１８０の使用可能領域算出１８４機能は、ステップ３２１で取得したパラメータを用いて、使用する媒体の現在使用可能な使用可能領域容量の算出を行う。４８−ｂｉｔ  ＬＢＡ（媒体の初期容量）２０４から、代替処理保留中のセクタ数２１２、回復不可能セクタ数２１３の足した値に媒体のセクタサイズを掛けたものを、引き算することによって算出し、使用可能領域容量算出結果２５０に保存する。
【００４２】
不良セクタの算出において、代替処理保留中のセクタ数２１２は、ハードディスクのファームウェアがヘッド電流などの条件を変えてリードを数回試みてもＮＧのセクタで、リフレッシュして書き込みすれば蘇る可能性があるセクタであり、媒体管理の運用状況に応じて、考慮しないオプションとしてもよい。
【００４３】
ステップ３２３において、ステップ３２２で算出した使用可能領域容量算出結果２５０をエクスプローラのディスクの管理に表示する。エクスプローラには、通常、円グラフで使用領域と空き領域の合計値が表示されるが、使用可能領域とは、この使用領域と空き領域を合計した、壊れたセクタを含まない部分をいう。また、使用領域と空き領域のそれぞれの内訳を表示してもよい。別途ソフトウェアなどで表示してもよい。
【００４４】
ステップ３２４において、ステップ３１２で算出した使用可能領域容量算出結果２５０が、０以上であるかどうかを判定する。
０以上の場合は、ステップ３２６において、終了する。
０未満の場合は、ステップ３２５に進む。
【００４５】
ステップ３２５において、図４に記載の最小領域以下の場合の動作２３０のいずれかを実行して、ステップ３２６に進み、終了する。
【００４６】
図５、図６を使い分ける場合は、ベンダが独自にどのフローにするかプログラムに組み込んでコントロールする。図７は、図２のベンダ独自（初期の予備領域サイズ）２０５がＮＵＬＬの場合に、自動的に振り分けられる。
【符号の説明】
【００４７】
１００  プロセッサ
１１０  入力装置
１２０  出力装置
１３０  データバス
１４０  媒体アダプタ
１５０  媒体
１６０  コントローラ
１７０  メモリ
１８０  制御モジュール
１９０  記憶領域
【図１】
2013149112.tif 000003
【図２】
2013149112.tif 000004
【図３】
2013149112.tif 000005
【図４】
2013149112.tif 000006
【図５】
2013149112.tif 000007
【図６】
2013149112.tif 000008
【図７】
2013149112.tif 000009