(57)【要約】【課題】データの漏洩防止とともに、消去作業の高速化を図ることができるデータ記憶装置、及びデータ消去方法を提供する。【解決手段】上位装置から書込コマンドを受信した場合に、書込対象データを記録媒体の記憶領域に記憶させるとともに、記憶領域の状態が管理されるグループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けたテーブルであって、初期状態では各ビット情報が消去状態に設定されている管理テーブルのビット情報のうち、書込対象データが記憶される記憶領域が属するグループのビット情報を記憶状態に更新する。上位装置から消去コマンドを受信した場合に、ビット情報が記憶状態に更新されているグループに属する記憶領域を所定のデータで上書きさせるとともに、記憶状態に更新されているビット情報を消去状態に更新する。【選択図】図１
2011013979.tif 000002
【特許請求の範囲】
【請求項１】
記憶領域の状態が所定のグループ単位で管理される記録媒体と、
前記グループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部と、
上位装置から書込対象データの書き込みを指示する書込コマンドを受信した場合に、当該書込対象データを前記記録媒体に転送して記憶領域に記憶させる転送制御部と、
前記書込対象データが記憶される記憶領域が属するグループのビット情報を、データが記憶されたことを示す記憶状態に更新する主制御部と、を備え、
前記転送制御部は、前記上位装置から初期化を指示する消去コマンドを受信した場合に、前記記録媒体に所定のデータを転送してビット情報が前記記憶状態に更新されているグループに属する記憶領域を上書きさせ、
前記主制御部は、前記記憶状態に更新されているビット情報を前記消去状態に更新することを特徴とするデータ記憶装置。
【請求項２】
前記管理テーブル記憶部は、フラッシュメモリであり、
前記消去状態のビット情報は１であり、前記記憶状態のビット情報は０であることを特徴とする請求項１に記載のデータ記憶装置。
【請求項３】
前記記録媒体は、ディスク状の磁気記録媒体であり、
前記管理テーブルでは、前記グループを示す指標として、前記磁気記録媒体のシリンダ番号の上位複数のビット情報を用いることを特徴とする請求項１又は２に記載のデータ記憶装置。
【請求項４】
前記記録媒体は、ディスク状の磁気記録媒体であり、
前記管理テーブルでは、前記グループを示す指標として、前記磁気記録媒体のヘッド番号のビット情報とトラック番号の上位複数のビット情報とを用いることを特徴とする請求項１又は２に記載のデータ記憶装置。
【請求項５】
前記記録媒体は、ディスク状の磁気記録媒体であり、
前記管理テーブルでは、前記グループを示す指標として、前記磁気記録媒体の物理的近傍の複数トラックをまとめたグループであるセルの番号、又はその上位複数のビット情報を用いることを特徴とする請求項１又は２に記載のデータ記憶装置。
【請求項６】
上位装置から書込対象データの書き込みを指示する書込コマンドを受信した場合に、記憶領域の状態が所定のグループ単位で管理される記録媒体に前記書込対象データを転送して記憶領域に記憶させる書込ステップと、
前記グループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部の前記管理テーブルのビット情報のうち、前記書込対象データが記憶される記憶領域が属するグループのビット情報をデータが記憶されたことを示す記憶状態に更新する記憶状態更新ステップと、
前記上位装置から初期化を指示する消去コマンドを受信した場合に、前記記録媒体に所定のデータを転送してビット情報が前記記憶状態に更新されているグループに属する記憶領域を上書きさせる消去ステップと、
前記記憶状態に更新されているビット情報を前記消去状態に更新する消去状態更新ステップと、
を含んだことを特徴とするデータ消去方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ記憶装置、及びデータ消去方法に関する。
【背景技術】
【０００２】
従来から、コンピュータの記憶装置としてＨＤＤなどの磁気ディスク装置が広く用いられている。磁気ディスク装置の記憶容量は年々増大しており、ＴＢ（テラバイト）の記憶容量を有するものも存在する。
【０００３】
また近年、磁気ディスク装置の再利用可が進められており、修理や廃棄のおりに個人情報や秘密情報が漏洩しないように、再利用対象の磁気ディスク装置に記憶されているデータを第３者から読み出せない状態にすることが求められている。
【０００４】
このような要求に応える手法として、再利用対象の磁気ディスク装置に記憶されているデータを意味をなさないデータで上書きすることにより消去する方法があるが、磁気ディスク装置の大容量化に伴い、消去作業に膨大な時間がかかってしまうという問題がある。
【０００５】
このため、例えば、データセクタ単位にアクセス履歴を記録する管理テーブルを設け、ホストからのライト指示により管理テーブルにライト履歴を記録し、ホストから消去コマンドが指定されたとき、管理テーブルのライト履歴のみ消去する手法が提案されている。この手法によれば、管理テーブルのライト履歴を消去するだけで、再利用対象の磁気ディスク装置に記憶されているデータを第３者から読み出せない状態にすることができ、消去作業の高速化を図ることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−２１６１４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記の従来技術では、再利用対象の磁気ディスク装置にデータそのものが残ってしまうため、漏洩防止としては不十分である。
【０００８】
開示の技術は、上記に鑑みてなされたものであって、データの漏洩防止とともに、消去作業の高速化を図ることができるデータ記憶装置、及びデータ消去方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本願の開示するデータ記憶装置は、一つの態様において、記憶領域の状態が所定のグループ単位で管理される記録媒体と、前記グループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部と、上位装置から書込対象データの書き込みを指示する書込コマンドを受信した場合に、当該書込対象データを前記記録媒体に転送して記憶領域に記憶させる転送制御部と、前記書込対象データが記憶される記憶領域が属するグループのビット情報を、データが記憶されたことを示す記憶状態に更新する主制御部と、を備え、前記転送制御部は、前記上位装置から初期化を指示する消去コマンドを受信した場合に、前記記録媒体に所定のデータを転送してビット情報が前記記憶状態に更新されているグループに属する記憶領域を上書きさせ、前記主制御部は、前記記憶状態に更新されているビット情報を前記消去状態に更新することを特徴とする。
【００１０】
また、本願の開示するデータ消去方法は、他の態様において、上位装置から書込対象データの書き込みを指示する書込コマンドを受信した場合に、記憶領域の状態が所定のグループ単位で管理される記録媒体に前記書込対象データを転送して記憶領域に記憶させる書込ステップと、前記グループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部の前記管理テーブルのビット情報のうち、前記書込対象データが記憶される記憶領域が属するグループのビット情報をデータが記憶されたことを示す記憶状態に更新する記憶状態更新ステップと、前記上位装置から初期化を指示する消去コマンドを受信した場合に、前記記録媒体に所定のデータを転送してビット情報が前記記憶状態に更新されているグループに属する記憶領域を上書きさせる消去ステップと、前記記憶状態に更新されているビット情報を前記消去状態に更新する消去状態更新ステップと、を含んだことを特徴とする。
【発明の効果】
【００１１】
本願の開示するデータ記憶装置、及びデータ消去方法の一つの態様によれば、データの漏洩防止とともに、消去作業の高速化を図ることができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例１のＨＤＤ装置の構成例を示すブロック図である。
【図２】図２は、実施例１の磁気記録媒体の例を示す模式図である。
【図３】図３は、実施例１のシリンダ番号のデータ構造の例を示す図である。
【図４】図４は、実施例１の管理テーブルの例を示す図である。
【図５】図５は、実施例１のＨＤＤ装置で行われる書き込み処理例を示すフローチャートである。
【図６】図６は、実施例１のＨＤＤ装置で行われる消去処理例を示すフローチャートである。
【図７】図７は、実施例２のＨＤＤ装置の構成例を示すブロック図である。
【図８】図８は、実施例２のヘッド番号及びトラック番号のデータ構造の例を示す図である。
【図９】図９は、実施例２の管理テーブルの例を示す図である。
【図１０】図１０は、実施例２のＨＤＤ装置で行われる消去処理例を示すフローチャートである。
【図１１】図１１は、実施例３のＨＤＤ装置の構成例を示すブロック図である。
【図１２】図１２は、実施例３の磁気記録媒体の例を示す模式図である。
【図１３】図１３は、実施例３のセル番号のデータ構造の例を示す図である。
【図１４】図１４は、実施例３のＨＤＤ装置で行われる消去処理例を示すフローチャートである。
【図１５】図１５は、実施例４のＨＤＤ装置の構成例を示すブロック図である。
【図１６】図１６は、実施例４の論理アドレスのデータ構造の例を示す図である。
【図１７】図１７は、実施例４の管理テーブルの例を示す図である。
【図１８】図１８は、実施例４のＨＤＤ装置で行われる消去処理例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下に、本願に開示するデータ記憶装置、及びデータ消去方法の実施例を図面に基づいて詳細に説明する。なお、この実施例により本願に開示するデータ記憶装置、及びデータ消去方法が限定されるものではない。例えば、以下の実施例では、データ記憶装置としてＨＤＤ（Hard Disk Drive）装置を例にとり説明するが、これに限定されるものではない。
【００１４】
初めに、以下の各実施例のＨＤＤ装置の概要について説明する。
【００１５】
以下の各実施例のＨＤＤ装置は、管理テーブルを用いて、データを記憶する磁気記録媒体の記憶領域の状態を所定のグループ単位で管理する。この管理テーブルには、記憶領域の状態が管理されるグループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報が対応付けられている。
【００１６】
そして、以下の各実施例のＨＤＤ装置は、データの書き込みが指示されると、指示されたデータを磁気記録媒体の記憶領域に記憶させるとともに、当該データが記憶される記憶領域が属するグループのビット情報を記憶状態に更新する。
【００１７】
さらに、以下の各実施例のＨＤＤ装置は、データの初期化が指示されると、ビット情報が記憶状態に更新されているグループに属する記憶領域に記憶されたデータを所定のデータで上書きし、所定のデータで上書きされる記憶領域が属するグループのビット情報を消去状態に更新する。
【００１８】
このように、以下の各実施例のＨＤＤ装置は、管理テーブルを用いて磁気記録媒体の記憶領域の状態を管理しているため、データの初期化が指示された際に、データが記憶されたことがある記憶領域のみを初期化することができ、データの漏洩防止とともに、消去作業の高速化を図ることができる。
【実施例１】
【００１９】
実施例１では、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体のシリンダ番号の上位複数のビット情報を用いる例について説明する。なお実施例１では、シリンダ数、ヘッド数、及びセクタ数の３つのパラメータを用いてハードディスクにアクセスするＣＨＳ（Cylinder/Head/Sector）モデルのＨＤＤ装置を例にとり説明する。
【００２０】
まず、実施例１のＨＤＤ装置の構成について説明する。
【００２１】
図１は、実施例１のＨＤＤ装置１の構成の一例を示すブロック図である。図１に示すように、ＨＤＤ装置１は、パーソナルコンピュータ（ＰＣ：Personal Computer）等の上位装置２とホストインタフェース３を介して接続されている。そして、ＨＤＤ装置１は、磁気記録媒体１０と、フラッシュメモリ１５と、転送制御部２０と、バッファメモリ２５と、リードチャネル３０と、ヘッドＩＣ３５と、ヘッド４０と、ＲＯＭ４５と、ＲＡＭ５０と、主制御部５５と、サーボ制御部６０と、ＶＣＭ６５と、ＳＰＭ７０とを備える。
【００２２】
磁気記録媒体１０は、金属またはガラス製などの円盤（ディスク）状の基板に磁性膜が形成されており、データを記憶する記憶領域の状態が所定のグループ単位で管理される。
【００２３】
図２は、実施例１の磁気記録媒体１０の一例を示す図であり、２枚のディスクの記録面をそれぞれ分離して４面として表現した模式図となっている。実施例１のＨＤＤ装置１は、前述したようにＣＨＳモデルであり、図２に示す例では、各記録面に対応したヘッド番号（Ｈｅａｄ０〜３）、物理シリンダ番号（ＣｙｌｉｎｄｅｒＭ、Ｎ、…）、及びディスクの回転によって順次走査されるセクタ番号（図示省略）により、データの記録位置（記憶領域）が特定される。なお、実施例１では、磁気記録媒体１０の記憶領域の状態は、複数のシリンダを１グループとするグループ単位で管理される。
【００２４】
図１に戻り、フラッシュメモリ１５は、不揮発性のメモリであり、磁気記録媒体１０の論理アドレスと物理アドレスとを対応付けた変換テーブルなどを記憶する。なお、フラッシュメモリ１５は、パラレル型、シリアル型のいずれであってもよい。そして、フラッシュメモリ１５は、管理テーブル記憶部１６を含む。
【００２５】
管理テーブル記憶部１６は、磁気記録媒体１０の記憶領域の状態が管理されるグループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けた管理テーブルを記憶する。なお、この管理テーブルは、装置出荷にあたり各ビット情報が、データが書き込まれていないことを示す消去状態に更新されるため、初期状態では各ビット情報が消去状態に設定されている。また、この管理テーブルは、磁気記録媒体１０にデータが記憶される場合に、当該データが記憶される記憶領域が属するグループのビット情報が、データが記憶されたことを示す記憶状態に更新される。
【００２６】
ここで、実施例１の管理テーブルについて具体的に説明する。実施例１の管理テーブルは、磁気記録媒体１０の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体１０のシリンダ番号の上位複数のビット情報を用いる。図３は、磁気記録媒体１０のシリンダ番号のデータ構造の一例を示す図であり、図４は、実施例１の管理テーブルの一例を示す図である。
【００２７】
例えば、磁気記録媒体１０の記憶容量を１ＴＢ（１１２Ｂｙｔｅ）、セクタサイズを５１２Ｂｙｔｅとすると、磁気記録媒体１０の論理アドレスの最大値は、１６進表記で０ｘ７４６ａ５２８８（１ＴＢ／５１２Ｂｙｔｅ）となる。また、磁気記録媒体１０の最内周のセクタ数を６４、最外周のセクタ数を１２８、記録面を図２に示すように４面とすると、磁気記録媒体１０のシリンダ数の最大値は、数式（１）に示す通り、１６進表記で０ｘ４ｄ９ｃ３７となる。
シリンダ数の最大値＝０ｘ７４６ａ５２８８／４／｛（６４＋１２８）／２｝＝０ｘ４ｄ９ｃ３７      …（１）
【００２８】
従って、この例では、磁気記録媒体１０のシリンダ番号を示すビット数は、図３に示すように、２３ビット必要である。そして、図４に示す管理テーブルでは、図３に示すシリンダ番号の下位５ビット（０〜４ビット目）分のシリンダ、即ち、３２のシリンダを１グループとし、このグループを示す指標（インデックス）としてシリンダ番号の上位１８ビット（５〜２２ビット目）の値を用いている。
【００２９】
詳細に説明すると、図４に示す管理テーブルでは、インデックスの上位１５ビット（シリンダ番号の８〜２２ビット目）の値を行、残りの３ビット（シリンダ番号の５〜７ビット目）の値を列として、インデックスで示されるグループに属する記憶領域の状態を管理する。例えば、図４に示す管理テーブルにおいて、行の値が０ｘ００００で列の値が０のビット情報は、０ｘ００００００〜０ｘ００００１ｆのシリンダの状態を管理している。
【００３０】
また、図４に示す例では、消去状態のビット情報は“１”であり、記憶状態のビット情報は“０”となっている。つまり、図４に示す管理テーブルでは、０ｘ０００３８０〜０ｘ０００３９ｆ、０ｘ０００４ａ０〜０ｘ０３ｆｆ３ｆ、及び０ｘ０３ｆｆ６０〜０ｘ４ｄ９ｃｆｆのシリンダには、データが記憶されていないことが示されている。同様に、図４に示す管理テーブルでは、０ｘ００００００〜０ｘ０００３７ｆ、０ｘ０００３ａ０〜０ｘ０００４９ｆ、及び０ｘ０３ｆｆ４０〜０ｘ０３ｆｆ５ｆのシリンダには、データが記憶されたことがあることが示されている。
【００３１】
なお、図４に示す管理テーブルでは、図３に示すシリンダ番号の下位５ビット分のシリンダを１グループとしたが、グループの単位（サイズ）はこれに限定されるものではない。但し、近年のＨＤＤ装置では、磁気記録媒体の記録密度を略一定に保つために、磁気記録媒体の記憶領域をゾーンに分割し、記録速度を変更しており、このゾーンの切り替わりでは、クロックやフィルタなどの回路定数を切り替える必要があるため、グループ化にあたってはゾーン境界をまたがないようにすることが望ましい。なお、図４に示す管理テーブルでは、図３に示すシリンダ番号の下位１７ビット分のシリンダを１ゾーンとし、このゾーンを示すゾーン番号としてシリンダ番号の上位６ビットの値を用いている。
【００３２】
また、図４に示す例では、インデックスの上位１５ビットの値を管理テーブルの行、残りの３ビットの値を管理テーブルの列としたが、管理テーブルはこれに限定されるものではなく、例えば、インデックスの上位１４ビットの値を管理テーブルの行、残りの４ビットの値を管理テーブルの列としてもよい。
【００３３】
図１に戻り、転送制御部２０は、上位装置２と磁気記録媒体１０との間のデータ転送を制御するものであり、例えば、ＨＤＣ（ハードディスクコントローラ）などにより実現できる。例えば、転送制御部２０は、上位装置２から書込対象データの書き込みを指示する書込コマンドを受信した場合に、当該書込対象データを磁気記録媒体１０に転送して記憶領域に記憶させる。
【００３４】
また例えば、転送制御部２０は、上位装置２から初期化を指示する消去コマンドを受信した場合に、磁気記録媒体１０に所定のデータを転送してビット情報が記録状態（即ち、“０”）に更新されているグループに属する記憶領域を上書きさせる。従って、転送制御部２０は、図４に示す例の場合、０ｘ００００００〜０ｘ０００３７ｆ、０ｘ０００３ａ０〜０ｘ０００４９ｆ、及び０ｘ０３ｆｆ４０〜０ｘ０３ｆｆ５ｆのシリンダに所定のデータを上書きさせる。なお、所定のデータは、いずれのデータでもよく、例えば、“００”でもよいし、“ｆｆ”でもよいし、“００”と“ｆｆ”を繰り返してもよいし、乱数でもよい。
【００３５】
そして、転送制御部２０は、Ｉ／Ｆ制御部２１と、バッファ制御部２２と、フォーマット制御部２３とを含む。
【００３６】
Ｉ／Ｆ制御部２１は、上位装置２とホストインタフェース３を介して接続され、上位装置２との間の通信を制御する。バッファ制御部２２は、フラッシュメモリ１５及びバッファメモリ２５を制御する。バッファメモリ２５には、バッファ制御部２２により上位装置２と磁気記録媒体１０との間で転送されるデータなどが一時的に記憶される。
【００３７】
フォーマット制御部２３は、上位装置２と磁気記録媒体１０との間で転送されるデータのエラーチェックなどを行う。例えば、フォーマット制御部２３は、データ書き込み時には、Ｉ／Ｆ制御部２１を介して上位装置２からデータを受け付け、かかるデータにエラー訂正コード等を追加して、後述のリードチャネル３０へ出力する。また例えば、フォーマット制御部２３は、データ読み出し時には、リードチャネル３０からデータを受け付け、必要に応じてかかるデータのエラー訂正を行い、バッファ制御部２２へ出力する。
【００３８】
リードチャネル３０は、上位装置２と磁気記録媒体１０との間で転送されるデータをＡＤ変換したり、変調および復調したりする。例えば、リードチャネル３０は、データの書き込み時には、フォーマット制御部２３から入力されたデータをコード変調したりする。また例えば、リードチャネル３０は、データの読み出し時には、後述のヘッドＩＣ３５から出力されるデータ信号を増幅し、ＡＤ変換および復調などの所定の処理を施す。
【００３９】
ヘッドＩＣ３５は、図示せぬプリアンプを備えており、データの読み出し時に、後述のヘッド４０によって磁気記録媒体１０から読み出されたデータの信号を前置増幅する。ヘッド４０は、回転する磁気記録媒体１０の上を浮上しながら、磁気記録媒体１０に書込対象データを書き込んで記憶させたり、磁気記録媒体１０に記憶されているデータを読み出したりする。
【００４０】
ＲＯＭ（Read Only Memory）４５は、ファームウェアプログラムなどの所定の制御プログラムや種々の制御用のデータを記憶する。ＲＡＭ（Random Access Memory）５０は、後述の主制御部５５のワークメモリとして利用され、ＲＯＭ４５に記憶された制御プログラムや制御用のデータなどが展開される。
【００４１】
主制御部５５は、ＲＯＭ４５に記憶された制御プログラムなどに基づいて、ＨＤＤ装置１の各部を制御するものであり、ＭＰＵ（Micro Processing Unit）、ＣＰＵ（Central Processing Unit）などにより実現できる。具体的には、主制御部５５は、上位装置２からＩ／Ｆ制御部２１を介して通知される書込コマンド、消去コマンド、及び読出コマンドなどの各種コマンドを解析し、解析したコマンドの内容に応じてＨＤＤ装置１の各部を制御し、磁気記録媒体１０のデータの読み書きを統括制御する。
【００４２】
また、主制御部５５は、バッファ制御部２２を介してフラッシュメモリ１５を制御できる。例えば、転送制御部２０により書込対象データが磁気記録媒体１０に転送され記憶領域に記憶される場合には、主制御部５５は、管理テーブル記憶部１６に記憶された管理テーブルのビット情報のうち、書込対象データが記憶される記憶領域が属するグループのビット情報を記憶状態（即ち、“０”）に更新する。
【００４３】
また例えば、転送制御部２０により所定のデータが磁気記録媒体１０に転送され、ビット情報が記録状態（即ち、“０”）に更新されているグループに属する記憶領域が上書きされる場合には、主制御部５５は、管理テーブル記憶部１６に記憶された管理テーブルのビット情報のうち、記録状態に更新されているビット情報を消去状態（即ち、“１”）に更新する。従って、主制御部５５は、図４に示す例の場合、０ｘ００００００〜０ｘ０００３７ｆ、０ｘ０００３ａ０〜０ｘ０００４９ｆ、及び０ｘ０３ｆｆ４０〜０ｘ０３ｆｆ５ｆのシリンダが属するグループのビット情報を“０”から“１”に更新する。
【００４４】
なお、フラッシュメモリには、データの更新を繰り返すと物理的な劣化が進むという特性があるが、装置出荷後から磁気記録媒体１０に記憶されているデータの消去が行われるまでの間に行われる管理テーブルのビット情報の更新は、消去状態から記憶状態への更新１回のみなので、フラッシュメモリの劣化の問題はほぼ生じない。
【００４５】
サーボ制御部６０は、主制御部５５からの指示に従って、後述のＶＣＭ６５及びＳＰＭ７０を駆動する。ＶＣＭ６５は、サーボ制御部６０によって駆動されるヘッド駆動機構であり、ヘッド４０に接続された図示せぬアームを磁気記録媒体１０上で回動させる。ＳＰＭ７０は、サーボ制御部６０によって駆動される機構であり、磁気記録媒体１０を回転させる。
【００４６】
なお、Ｉ／Ｆ制御部２１、バッファ制御部２２、フォーマット制御部２３、リードチャネル３０、ヘッドＩＣ３５、ＲＯＭ４５、ＲＡＭ５０、主制御部５５、及びサーボ制御部６０は、共有バス７５と接続され、共有バス７５を介して各部間における種々のデータの受け渡しが行われる。
【００４７】
次に、実施例１のＨＤＤ装置の動作について説明する。
【００４８】
図５は、実施例１のＨＤＤ装置１で行われる書き込み（Ｗｒｉｔｅ）処理の手順の流れの一例を示すフローチャートである。
【００４９】
まず、転送制御部２０は、上位装置２から送られてくる書込コマンドを受信し、主制御部５５へ通知する（ステップＳ１００）。詳細には、転送制御部２０は、書込コマンドとともに、書込対象データ及び当該書込対象データの書き込み先を示す磁気ディスク１０の論理アドレスなどを受信し、書込コマンド及び論理アドレスなどを主制御部５５に通知し、書込対象データをバッファメモリ２５に記憶させる。
【００５０】
続いて、主制御部５５は、フラッシュメモリ１５に記憶されている変換テーブルを参照して、磁気ディスク１０の論理アドレスを物理アドレスに変換する（ステップＳ１０２）。
【００５１】
続いて、主制御部５５は、変換した物理アドレスから、書込対象データが書き込まれるシリンダ及びセクタ、並びにデータの書き込みに用いるヘッド４０を決定する（ステップＳ１０４）。
【００５２】
続いて、主制御部５５は、サーボ制御部６０を制御して、ステップＳ１０４で決定されたヘッド４０をＶＣＭ６５に選択させる（ステップＳ１０６）。
【００５３】
続いて、主制御部５５は、サーボ制御部６０を制御して、ステップＳ１０６で選択されたヘッド４０をＶＣＭ６５により移動させ、ステップＳ１０４で決定されたシリンダへのシークを開始する（ステップＳ１０８）。
【００５４】
続いて、主制御部５５は、管理テーブル記憶部１６に記憶されている管理テーブルを参照し、書込対象データが書き込まれるシリンダのインデックスから特定されるビット情報が‘１’であるか否かを確認する（ステップＳ１１０）。
【００５５】
そして、主制御部５５は、ビット情報が‘１’である場合には（ステップＳ１１０でＹｅｓ）、‘０’に更新する（ステップＳ１１２）。なお、ビット情報が‘１’でない場合（‘０’である場合）には、ステップＳ１１２の処理は行われない（ステップＳ１１０でＮｏ）。
【００５６】
続いて、主制御部５５は、シークの完了を待機し（ステップＳ１１４でＮｏ）、シークが完了すると（ステップＳ１１４でＹｅｓ）、ヘッドＩＣ３５を介して、ステップＳ１０４で決定されたセクタをサーチする（ステップＳ１１６）。
【００５７】
続いて、転送制御部２０は、バッファメモリ２５に記憶された書込対象データを、リードチャネル３０、ヘッドＩＣ３５、及びヘッド４０を介して磁気記録媒体１０に転送して、サーチされたセクタに記憶させる（ステップＳ１１８）。
【００５８】
続いて、主制御部５５は、書込対象データの書き込みが完了した場合には（ステップＳ１２０でＹｅｓ）、処理を終了し、書込対象データの書き込みが完了していない場合には（ステップＳ１２０でＮｏ）、ステップＳ１０２に進む。
【００５９】
図６は、実施例１のＨＤＤ装置１で行われる消去（Ｅｒａｓｅ）処理の手順の流れの一例を示すフローチャートである。
【００６０】
まず、転送制御部２０は、上位装置２から送られてくる消去コマンドを受信し、主制御部５５へ通知する（ステップＳ２００）。
【００６１】
続いて、主制御部５５は、インデックスを示す変数であるＩｎｄｅｘの値を０に初期化する（ステップＳ２０２）。
【００６２】
続いて、主制御部５５は、管理テーブル記憶部１６に記憶されている管理テーブルを参照し、Ｉｎｄｅｘが示すインデックスにより特定されるビット情報が‘１’であるか否かを確認する（ステップＳ２０４）。ここで、ビット情報が‘１’である場合には（ステップＳ２０４でＹｅｓ）、ステップＳ２２４に進む。
【００６３】
続いて、主制御部５５は、ビット情報が‘１’でない場合（‘０’である場合）には（ステップＳ２０４でＮｏ）、シリンダ番号を示す変数であるＣｙｌｉｎｄｅｒの値をＩｎｄｅｘ＊２ｍに設定する（ステップＳ２０６）。なお、２ｍは、１グループ分のシリンダ数を示す値であり、実施例１では、ｍは５となる。
【００６４】
続いて、主制御部５５は、ヘッド番号を示す変数であるＨｅａｄの値を０に初期化する（ステップＳ２０８）。
【００６５】
続いて、主制御部５５は、サーボ制御部６０を制御して、Ｈｅａｄが示すヘッド４０をＶＣＭ６５に選択させる（ステップＳ２１０）。
【００６６】
続いて、主制御部５５は、サーボ制御部６０を制御して、ステップＳ２１０で選択されたヘッド４０をＶＣＭ６５により移動させ、Ｃｙｌｉｎｄｅｒが示すシリンダへのシークを開始する（ステップＳ２１２）。
【００６７】
続いて、転送制御部２０は、シークが完了すると、所定のデータをリードチャネル３０、ヘッドＩＣ３５、及びヘッド４０を介して磁気記録媒体１０に転送して、シークされたシリンダに記憶させる（ステップＳ２１４）。
【００６８】
続いて、主制御部５５は、Ｈｅａｄの値をインクリメントする（ステップＳ２１６）。そして、主制御部５５は、インクリメントしたＨｅａｄの値がＨｅａｄ＿Ｎｕｍよりも小さい場合には（ステップＳ２１８でＹｅｓ）、ステップＳ２１０〜ステップＳ２１６の処理を繰り返す。なお、Ｈｅａｄ＿Ｎｕｍは、ヘッド数を示す値であり、実施例１では、その値は４となる。
【００６９】
続いて、主制御部５５は、Ｈｅａｄの値がＨｅａｄ＿Ｎｕｍ以上になると（ステップＳ２１８でＮｏ）、Ｃｙｌｉｎｄｅｒの値をインクリメントする（ステップＳ２２０）。そして、主制御部５５は、インクリメントしたＣｙｌｉｎｄｅｒの値が（Ｉｎｄｅｘ＋１）＊２ｍよりも小さい場合には（ステップＳ２２２でＹｅｓ）、ステップＳ２０８〜ステップＳ２２０の処理を繰り返す。なお、（Ｉｎｄｅｘ＋１）＊２ｍは、Ｉｎｄｅｘにより特定されるインデックスが示すグループに属するシリンダのシリンダ番号の最大値を示す値である。
【００７０】
続いて、主制御部５５は、Ｃｙｌｉｎｄｅｒの値が（Ｉｎｄｅｘ＋１）＊２ｍ以上になると（ステップＳ２２２でＮｏ）、Ｉｎｄｅｘの値をインクリメントする（ステップＳ２２４）。そして、主制御部５５は、インクリメントしたＩｎｄｅｘの値がＩｎｄｅｘ＿Ｍａｘ以下の場合には（ステップＳ２２６でＹｅｓ）、ステップＳ２０４〜ステップＳ２２４の処理を繰り返す。なお、Ｉｎｄｅｘ＿Ｍａｘは、インデックスの最大値を示す値である。
【００７１】
続いて、主制御部５５は、Ｉｎｄｅｘの値がＩｎｄｅｘ＿Ｍａｘを越えると（ステップＳ２２６でＮｏ）、管理テーブル記憶部１６に記憶されている管理テーブルの各ビット情報のうち、その値が‘０’であるビット情報の値を‘１’に更新する（ステップＳ２２８）。
【００７２】
上述してきたように、本実施例１によれば、管理テーブルを用いて磁気記録媒体の記憶領域の状態を管理しているため、データの初期化が指示された際に、データが記憶されたことがある記憶領域のみを初期化することができ、データの漏洩防止とともに、消去作業の高速化を図ることができる。
【００７３】
一般に、再利用対象のＨＤＤ装置は、ユーザの期待に沿わないため返品や譲渡されるもの、故障と誤解されたものなどが多いため、記憶領域を全て使用する前のものが多く、本手法が特に有効である。
【００７４】
また、本実施例１によれば、管理テーブルをフラッシュメモリ上に記憶させているため、書き込み処理中に電源等が落ちた場合であっても管理テーブルに矛盾が生じることを防止でき、磁気記録媒体上に管理テーブルを記憶する場合のように、スループットの低下を起こすこともない。
【００７５】
また、本実施例１によれば、インデックス及びグループのサイズに設定するシリンダ番号のビット数に応じて管理テーブルのサイズを設定できるので、用途に合わせ自由度が増すという利点がある。例えば、グループのサイズを大きくすれば、管理テーブルのサイズを小さくでき、また例えば、グループのサイズを小さくすれば、磁気記録媒体の状態を細かく管理することができる。
【００７６】
なお、消去処理を行う前に、管理テーブル中の消去状態を示すビット数から、消去処理の所要時間を計算しユーザに通知するようにしてもよい。
【実施例２】
【００７７】
上述の実施例１では、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、シリンダ番号の上位複数のビット情報を用いる例について説明した。ところで、近年のＨＤＤ装置は記録密度を高度に最適化しており磁気記録媒体の記録面毎にトラック密度が異なるため、シリンダという概念を持たずにヘッド番号順にＬＢＡ（Logical Block Addressing）を割り当て、各媒体面のトラック番号とヘッド番号とで物理位置を決定する場合がある。
【００７８】
そこで、実施例２では、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体のヘッド番号のビット情報とトラック番号の上位複数のビット情報とを用いる例について説明する。なお、以下では、実施例１との相違点の説明を主に行い、実施例１と同様の機能を有する構成要素については、実施例１と同様の名称・符号を付し、その説明を省略する。
【００７９】
まず、実施例２のＨＤＤ装置の構成について説明する。
【００８０】
図７は、実施例２のＨＤＤ装置１０１の構成の一例を示すブロック図である。図７に示すＨＤＤ装置１０１は、磁気記録媒体１１０、フラッシュメモリ１１５の管理テーブル記憶部１１６、及び主制御部１５５が、実施例１のＨＤＤ装置１と相違する。従って、以下では、実施例１と実施例２の主要な相違点である磁気記録媒体１１０、及び管理テーブル記憶部１１６について説明する。なお、主制御部１５５については、ＨＤＤ装置の構成での説明を省略し、後述のＨＤＤ装置の動作で説明する。
【００８１】
磁気記録媒体１１０は、データを記憶する記憶領域の状態が所定のグループ単位で管理される。なお、実施例２では、磁気記録媒体１１０の記憶領域の状態は、複数のトラックを１グループとするグループ単位で管理される。
【００８２】
管理テーブル記憶部１１６は、磁気記録媒体１１０の記憶領域の状態が管理されるグループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けた管理テーブルを記憶する。
【００８３】
ここで、実施例２の管理テーブルについて具体的に説明する。実施例２の管理テーブルは、磁気記録媒体１１０の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体１１０のヘッド番号のビット情報とトラック番号の上位複数のビット情報とを用いる。図８は、磁気記録媒体１１０のヘッド番号及びトラック番号のデータ構造の一例を示す図であり、図９は、実施例２の管理テーブルの一例を示す図である。
【００８４】
磁気記録媒体１１０のヘッド番号を示すビット数は、図８に示すように、２ビットであり、トラック番号を示すビット数は、図８に示すように、２３ビットである。そして、図９に示す管理テーブルでは、図８に示すトラック番号の下位７ビット（０〜６ビット目）分のトラック、即ち、１２８のトラックを１グループとし、このグループを示す指標（インデックス）としてヘッド番号の２ビット（０〜１ビット目）、及びトラック番号の上位１６ビット（７〜２２ビット目）の値を用いている。
【００８５】
詳細に説明すると、図９に示す管理テーブルでは、ヘッド番号の２ビット、及びインデックスの上位１３ビット（トラック番号の１０〜２２ビット目）の値を行、残りの３ビット（トラック番号の７〜９ビット目）の値を列として、インデックスで示されるグループに属する記憶領域の状態を管理する。なお、図９に示す管理テーブルの行の５桁の値のうち、上位１桁の値がヘッド番号の２ビットの値であり、下４桁の値がインデックスの上位１３ビットの値となっている。例えば、図９に示す管理テーブルにおいて、行の値が０ｘ０００００で列の値が０のビット情報は、ヘッド番号が０のヘッドに対応する記録面の０ｘ００００００〜０ｘ００００８ｆのトラックの状態を管理している。
【００８６】
また、図９に示す例では、消去状態のビット情報は“１”であり、記憶状態のビット情報は“０”となっている。つまり、図９に示す管理テーブルでは、ヘッド番号０に対応する記録面の０ｘ００１２００〜０ｘ００１２７ｆ、及び０ｘ００１６８０〜０ｘ４ｆｆｆｆｆのトラック、並びにヘッド番号１〜３に対応する各記録面の全トラックには、データが記憶されていないことが示されている。同様に、図９に示す管理テーブルでは、ヘッド番号０に対応する記録面の０ｘ００００００〜０ｘ００１１ｆｆ、及び０ｘ００１２８０〜０ｘ００１６８ｆのトラックには、データが記憶されたことがあることが示されている。
【００８７】
次に、実施例２のＨＤＤ装置の動作について説明する。なお、実施例２のＨＤＤ装置１０１で行われる書き込み（Ｗｒｉｔｅ）処理は、図５に示すフローチャートのシリンダをトラックに置き換えたものと同様であるため、説明を省略する。
【００８８】
図１０は、実施例２のＨＤＤ装置１０１で行われる消去（Ｅｒａｓｅ）処理の手順の流れの一例を示すフローチャートである。
【００８９】
ステップＳ３００〜ステップＳ３０４までの処理は、図６に示す消去処理のステップＳ２００〜Ｓ２０４までの処理と同様である。なお、ステップＳ３０４において、ビット情報が‘１’である場合には（ステップＳ３０４でＹｅｓ）、ステップＳ３２０に進む。
【００９０】
続いて、主制御部１５５は、ビット情報が‘１’でない場合（‘０’である場合）には（ステップＳ３０４でＮｏ）、ヘッド番号を示す変数であるＨｅａｄの値をＩｎｄｅｘ／２（ｎ＋ｍ）に設定する（ステップＳ３０６）。なお、ｎは、トラック番号のうちインデックスに使用されるビット数であり、ｍは、トラック番号のうちグループに使用されるビット数である。つまり、ｎ＋ｍは、トラック番号のビット数を示しており、実施例２では、ｎは１６、ｍは７である。
【００９１】
続いて、主制御部１５５は、トラック番号を示す変数であるＴｒｋの値をＩｎｄｅｘ＊２ｍに設定する（ステップＳ３０８）。なお、２ｍは、１グループ分のトラック数を示す値である。
【００９２】
続いて、主制御部１５５は、サーボ制御部６０を制御して、Ｈｅａｄが示すヘッド４０をＶＣＭ６５に選択させる（ステップＳ３１０）。
【００９３】
続いて、主制御部１５５は、サーボ制御部６０を制御して、ステップＳ３１０で選択されたヘッド４０をＶＣＭ６５により移動させ、Ｔｒｋが示すトラックへのシークを開始する（ステップＳ３１２）。
【００９４】
続いて、転送制御部２０は、シークが完了すると、所定のデータをリードチャネル３０、ヘッドＩＣ３５、及びヘッド４０を介して磁気記録媒体１１０に転送して、シークされたトラックに記憶させる（ステップＳ３１４）。
【００９５】
続いて、主制御部１５５は、Ｔｒｋの値をインクリメントする（ステップＳ３１６）。そして、主制御部１５５は、インクリメントしたＴｒｋの値が（Ｉｎｄｅｘ＋１）＊２ｍよりも小さい場合には（ステップＳ３１８でＹｅｓ）、ステップＳ３１０〜ステップＳ３１６の処理を繰り返す。なお、（Ｉｎｄｅｘ＋１）＊２ｍは、Ｉｎｄｅｘにより特定されるインデックスが示すグループに属するトラックのトラック番号の最大値を示す値である。
【００９６】
続いて、主制御部１５５は、Ｔｒｋの値が（Ｉｎｄｅｘ＋１）＊２ｍ以上になると（ステップＳ３１８でＮｏ）、Ｉｎｄｅｘの値をインクリメントする（ステップＳ３２０）。
【００９７】
以降のステップＳ３２２〜ステップＳ３２４までの処理は、図６に示す消去処理のステップＳ２２６〜Ｓ２２８までの処理と同様である。
【００９８】
本実施例２のように、ＨＤＤ装置がシリンダという概念を持たない場合であっても、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体のヘッド番号のビット情報とトラック番号の上位複数のビット情報とを用いることにより、磁気記録媒体の記憶領域の状態を管理できる。従って、本実施例２のＨＤＤ装置においても、データの初期化が指示された際に、データが記憶されたことがある記憶領域のみを初期化することができ、データの漏洩防止とともに、消去作業の高速化を図ることができる。
【実施例３】
【００９９】
上述の実施例１では、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、シリンダ番号の上位複数のビット情報を用いる例について説明した。ところで、近年のＨＤＤ装置は記録密度を高度に最適化しており磁気記録媒体の記録面毎にトラック密度が異なるため、複数の記録面にまたがって複数のトラックを略同間隔にグループ化したセル構造を採用してＬＢＡを割り当て、物理位置を決定する場合がある。
【０１００】
そこで、実施例３では、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体のセル番号の上位複数のビット情報を用いる例について説明する。なお、以下では、実施例１との相違点の説明を主に行い、実施例１と同様の機能を有する構成要素については、実施例１と同様の名称・符号を付し、その説明を省略する。
【０１０１】
まず、実施例３のＨＤＤ装置の構成について説明する。
【０１０２】
図１１は、実施例３のＨＤＤ装置２０１の構成の一例を示すブロック図である。図１１に示すＨＤＤ装置２０１は、磁気記録媒体２１０、フラッシュメモリ２１５の管理テーブル記憶部２１６、及び主制御部２５５が、実施例１のＨＤＤ装置１と相違する。従って、以下では、実施例１と実施例３の主要な相違点である磁気記録媒体２１０、及び管理テーブル記憶部２１６について説明する。なお、主制御部２５５については、ＨＤＤ装置の構成での説明を省略し、後述のＨＤＤ装置の動作で説明する。
【０１０３】
磁気記録媒体２１０は、データを記憶する記憶領域の状態が所定のグループ単位で管理される。なお、実施例３では、磁気記録媒体２１０の記憶領域の状態は、複数のセルを１グループとするグループ単位で管理される。なお、セルとは、物理的近傍の複数トラックを複数の記録面にまたがってまとめたグループである。
【０１０４】
図１２は、実施例３の磁気記録媒体２１０の一例を示す図であり、４面の記録面をドーナツ状に分割して表現したセル断面の模式図となっている。図１２に示す例では、１セルあたりのトラック数が１２８に設定されており、各セルの終端部（Ｈｅａｄ３に対応する記録面）には、７トラック分の交代領域が用意されている。なお、交代領域の場所は、各記録面に分散してもよい。また、図１２に示す例では、内周のゾーンほど、１トラックあたりのセクタ数を減少させており、最外周のＺｏｎｅ０では、１トラックあたりのセクタ数が６４に設定され、Ｚｏｎｅ０よりも内周のＺｏｎｅ１では、１トラックあたりのセクタ数が６３に設定されている。
【０１０５】
管理テーブル記憶部２１６は、磁気記録媒体２１０の記憶領域の状態が管理されるグループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けた管理テーブルを記憶する。特に、実施例３の管理テーブルは、磁気記録媒体２１０の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体２１０のセル番号の上位複数のビット情報を用いる。
【０１０６】
図１３は、磁気記録媒体２１０のセル番号のデータ構造の一例を示す図である。図１３に示すように、磁気記録媒体２１０のセル番号を示すビット数は１９ビットである。そして、実施例３の管理テーブルでは、図１３に示すセル番号の下位２ビット（０〜１ビット目）分のセル、即ち、４のセルを１グループとし、このグループを示す指標（インデックス）としてセル番号の上位１７ビット（２〜１８ビット目）の値を用いている。
【０１０７】
なお、磁気記録媒体２１０の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体２１０のセル番号の全てのビット情報を用いるようにしてもよい。この場合、セルそのものがグループになる。
【０１０８】
次に、実施例３のＨＤＤ装置の動作について説明する。なお、実施例３のＨＤＤ装置２０１で行われる書き込み（Ｗｒｉｔｅ）処理は、図５に示すフローチャートのシリンダをセルに置き換えたものと同様であるため、説明を省略する。
【０１０９】
図１４は、実施例３のＨＤＤ装置２０１で行われる消去（Ｅｒａｓｅ）処理の手順の流れの一例を示すフローチャートである。
【０１１０】
ステップＳ４００〜ステップＳ４０４までの処理は、図６に示す消去処理のステップＳ２００〜Ｓ２０４までの処理と同様である。なお、ステップＳ４０４において、ビット情報が‘１’である場合には（ステップＳ４０４でＹｅｓ）、ステップＳ４１６に進む。
【０１１１】
続いて、主制御部２５５は、ビット情報が‘１’でない場合（‘０’である場合）には（ステップＳ４０４でＮｏ）、セル番号を示す変数であるＣｅｌｌの値をＩｎｄｅｘ／２ｍに設定する（ステップＳ４０６）。なお、２ｍは、１グループ分のセル数を示す値である。
【０１１２】
続いて、主制御部２５５は、サーボ制御部６０を制御して、Ｃｅｌｌが示すセルへのシークを開始する（ステップＳ４０８）。
【０１１３】
続いて、転送制御部２０は、シークが完了すると、所定のデータをリードチャネル３０、ヘッドＩＣ３５、及びヘッド４０を介して磁気記録媒体２１０に転送して、シークされたセルに記憶させる（ステップＳ４１０）。
【０１１４】
続いて、主制御部２５５は、Ｃｅｌｌの値をインクリメントする（ステップＳ４１２）。そして、主制御部２５５は、インクリメントしたＣｅｌｌの値が（Ｉｎｄｅｘ＋１）＊２ｍよりも小さい場合には（ステップＳ４１４でＹｅｓ）、ステップＳ４０８〜ステップＳ４１２の処理を繰り返す。なお、（Ｉｎｄｅｘ＋１）＊２ｍは、Ｉｎｄｅｘにより特定されるインデックスが示すグループに属するセルのセル番号の最大値を示す値である。
【０１１５】
続いて、主制御部２５５は、Ｃｅｌｌの値が（Ｉｎｄｅｘ＋１）＊２ｍ以上になると（ステップＳ４１４でＮｏ）、Ｉｎｄｅｘの値をインクリメントする（ステップＳ４１６）。
【０１１６】
以降のステップＳ４１８〜ステップＳ４２０までの処理は、図６に示す消去処理のステップＳ２２６〜Ｓ２２８までの処理と同様である。
【０１１７】
本実施例３のように、ＨＤＤ装置がセル構造を採用している場合であっても、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体のセル番号、又はその上位複数のビット情報を用いることにより、磁気記録媒体の記憶領域の状態を管理できる。従って、本実施例３のＨＤＤ装置においても、データの初期化が指示された際に、データが記憶されたことがある記憶領域のみを初期化することができ、データの漏洩防止とともに、消去作業の高速化を図ることができる。
【実施例４】
【０１１８】
上述の実施例１では、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、シリンダ番号の上位複数のビット情報を用いる例について説明したが、実施例４では、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、論理アドレスの上位複数のビット情報を用いる例について説明する。なお、以下では、実施例１との相違点の説明を主に行い、実施例１と同様の機能を有する構成要素については、実施例１と同様の名称・符号を付し、その説明を省略する。
【０１１９】
まず、実施例４のＨＤＤ装置の構成について説明する。
【０１２０】
図１５は、実施例４のＨＤＤ装置３０１の構成の一例を示すブロック図である。図１５に示すＨＤＤ装置３０１は、フラッシュメモリ３１５の管理テーブル記憶部３１６、及び主制御部３５５が、実施例１のＨＤＤ装置１と相違する。従って、以下では、実施例１と実施例４の主要な相違点である管理テーブル記憶部３１６について説明する。なお、主制御部３５５については、ＨＤＤ装置の構成での説明を省略し、後述のＨＤＤ装置の動作で説明する。
【０１２１】
管理テーブル記憶部３１６は、磁気記録媒体１０の記憶領域の状態が管理されるグループを示す指標毎に、当該グループに属する記憶領域の状態を示すビット情報を対応付けた管理テーブルを記憶する。
【０１２２】
ここで、実施例４の管理テーブルについて具体的に説明する。実施例４の管理テーブルは、磁気記録媒体１０の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体１０の論理アドレス（ＬＢＡ）を用いる。図１６は、磁気記録媒体１０の論理アドレスのデータ構造の一例を示す図であり、図１７は、実施例４の管理テーブルの一例を示す図である。
【０１２３】
図１６に示すように、磁気記録媒体１０の論理アドレスを示すビット数は２４ビットである。そして、図１７に示す管理テーブルでは、図１６に示す論理アドレスの下位５ビット（０〜４ビット目）分の論理アドレスで特定される記憶領域を１グループとし、このグループを示す指標（インデックス）として論理アドレスの上位１９ビット（５〜２３ビット目）の値を用いている。
【０１２４】
詳細に説明すると、図１７に示す管理テーブルでは、インデックスの上位１６ビット（論理アドレスの８〜２３ビット目）の値を行、残りの３ビット（論理アドレスの５〜７ビット目）の値を列として、インデックスで示されるグループに属する記憶領域の状態を管理する。
【０１２５】
なお、図１７に示す管理テーブルでは、記録面毎に管理テーブルを設けているが、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）構成のように、各記録面の使用領域が一致する場合には、管理テーブルを各記録面で共用するようにしてもよい。このようにすると、管理テーブルのサイズをより小さくできる。
【０１２６】
次に、実施例４のＨＤＤ装置の動作について説明する。なお、実施例４のＨＤＤ装置３０１で行われる書き込み（Ｗｒｉｔｅ）処理は、図５に示すフローチャートと同様であるため、説明を省略する。
【０１２７】
図１８は、実施例４のＨＤＤ装置３０１で行われる消去（Ｅｒａｓｅ）処理の手順の流れの一例を示すフローチャートである。
【０１２８】
ステップＳ５００〜ステップＳ５０４までの処理は、図６に示す消去処理のステップＳ２００〜Ｓ２０４までの処理と同様である。なお、ステップＳ５０４において、ビット情報が‘１’である場合には（ステップＳ５０４でＹｅｓ）、ステップＳ５１０に進む。
【０１２９】
続いて、主制御部３５５は、ビット情報が‘１’でない場合（‘０’である場合）には（ステップＳ５０４でＮｏ）、論理アドレスを示す変数であるＬＢＡの値をＩｎｄｅｘ／２ｍに設定する（ステップＳ５０６）。なお、２ｍは、１グループ分の論理アドレス数を示す値である。
【０１３０】
続いて、転送制御部２０は、所定のデータをリードチャネル３０、ヘッドＩＣ３５、及びヘッド４０を介して磁気記録媒体１０に転送して、ＬＢＡが示すセクタから２ｍ分のセクタに記憶させる（ステップＳ５０８）。
【０１３１】
続いて、主制御部３５５は、Ｉｎｄｅｘの値をインクリメントし（ステップＳ５１０）、インクリメントしたＩｎｄｅｘの値がＩｎｄｅｘ＿Ｍａｘ以下の場合には（ステップＳ５１２でＹｅｓ）、ステップＳ５０４〜ステップＳ５１０の処理を繰り返す。
【０１３２】
続いて、転送制御部２０は、Ｉｎｄｅｘの値がＩｎｄｅｘ＿Ｍａｘを越えると（ステップＳ５１２でＮｏ）、所定のデータをリードチャネル３０、ヘッドＩＣ３５、及びヘッド４０を介して磁気記録媒体１０に転送して、交代されたセクタ（交代領域）に記憶させる（ステップＳ５１４）。
【０１３３】
続いて、主制御部３５５は、管理テーブル記憶部３１６に記憶されている管理テーブルの各ビット情報のうち、その値が‘０’であるビット情報の値を‘１’に更新する（ステップＳ５１６）。
【０１３４】
本実施例４のように、磁気記録媒体の記憶領域の状態が管理されるグループを示す指標として、磁気記録媒体の論理アドレスの上位複数のビット情報を用いることにより、磁気記録媒体の記憶領域の状態を管理できる。従って、本実施例４のＨＤＤ装置においても、データの初期化が指示された際に、データが記憶されたことがある記憶領域のみを初期化することができ、データの漏洩防止とともに、消去作業の高速化を図ることができる。
【０１３５】
なお、実施例４では、管理テーブルをＨＤＤ装置に保持させたが、上位装置に保持させるようにしてもよい。このようにすると、上位装置側で磁気記録媒体の記憶領域の状態を管理できるので、既存のＨＤＤ装置に対してもデータの漏洩防止とともに、消去作業の高速化を図ることができる。
【０１３６】
また、上位装置にＨＤＤ装置が組み込まれ、組み込まれたＨＤＤ装置に初期データが記憶された後（例えば、上位装置であるＰＣにＯＳがプリインストールされた後）に、管理テーブルの各ビット情報を消去状態に更新するようにしてもよい。このようにすると、機密保護の必要のないＯＳやシステムデータについては消去処理を省略し、個人情報が含まれうるユーザデータが記憶された領域に絞り込んで初期化を行うことができ、更に消去作業を高速化することができる。
【符号の説明】
【０１３７】
１、１０１、２０１、３０１  ＨＤＤ装置
２  上位装置
３  ホストインタフェース
１０、１１０、２１０  磁気記録媒体
１５、１１５、２１５、３１５  フラッシュメモリ
１６、１１６、２１６、３１６  管理テーブル記憶部
２０  転送制御部
２１  Ｉ／Ｆ制御部
２２  バッファ制御部
２３  フォーマット制御部
２５  バッファメモリ
３０  リードチャネル
３５  ヘッドＩＣ
４０  ヘッド
４５  ＲＯＭ
５０  ＲＡＭ
５５、１５５、２５５、３５５  主制御部
６０  サーボ制御部
６５  ＶＣＭ
７０  ＳＰＭ
７５  共有バス
【図１】
2011013979.tif 000003
【図２】
2011013979.tif 000004
【図３】
2011013979.tif 000005
【図４】
2011013979.tif 000006
【図５】
2011013979.tif 000007
【図６】
2011013979.tif 000008
【図７】
2011013979.tif 000009
【図８】
2011013979.tif 000010
【図９】
2011013979.tif 000011
【図１０】
2011013979.tif 000012
【図１１】
2011013979.tif 000013
【図１２】
2011013979.tif 000014
【図１３】
2011013979.tif 000015
【図１４】
2011013979.tif 000016
【図１５】
2011013979.tif 000017
【図１６】
2011013979.tif 000018
【図１７】
2011013979.tif 000019
【図１８】
2011013979.tif 000020
【手続補正書】
【提出日】平成22年9月13日(2010.9.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
記憶領域を有する記録媒体と、
所定のグループを示す指標毎に、当該所定のグループの記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部と、
上位装置から、前記記録媒体にデータの書き込みを指示する書込コマンドを受信した場合に、記憶領域に記憶するためのデータを前記記憶媒体に転送する転送制御部と、
前記所定のグループのビット情報を、データを有する記憶領域であることを示す記憶状態に更新する主制御部と、を備え、
前記転送制御部は、前記上位装置から、前記記録媒体の初期化を指示する消去コマンドを受信した場合に、記憶領域に上書きするための所定のデータを前記記憶媒体に転送し、
前記主制御部は、前記記憶状態に更新されているビット情報を前記消去状態に更新することを特徴とするデータ記憶装置。
【請求項２】
前記管理テーブル記憶部は、フラッシュメモリであり、
前記消去状態のビット情報は１であり、前記記憶状態のビット情報は０であることを特徴とする請求項１に記載のデータ記憶装置。
【請求項３】
前記記録媒体は、ディスク状の磁気記録媒体であり、
前記管理テーブルでは、前記所定のグループを示す指標として、前記磁気記録媒体のシリンダ番号の上位複数のビット情報を用いることを特徴とする請求項１又は２に記載のデータ記憶装置。
【請求項４】
前記記録媒体は、ディスク状の磁気記録媒体であり、
前記管理テーブルでは、前記所定のグループを示す指標として、前記磁気記録媒体のヘッド番号のビット情報とトラック番号の上位複数のビット情報とを用いることを特徴とする請求項１又は２に記載のデータ記憶装置。
【請求項５】
前記記録媒体は、ディスク状の磁気記録媒体であり、
前記管理テーブルでは、前記所定のグループを示す指標として、前記磁気記録媒体の物理的近傍の複数トラックをまとめたグループであるセルの番号、又はその上位複数のビット情報を用いることを特徴とする請求項１又は２に記載のデータ記憶装置。
【請求項６】
上位装置から、記録媒体にデータの書き込みを指示する書込コマンドを受信した場合に、記憶領域に記憶するためのデータを前記記憶媒体に転送する転送ステップと、
所定のグループを示す指標毎に、当該所定のグループの記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部のビット情報のうち、前記所定のグループのビット情報を、データを有する記憶領域であることを示す記憶状態に更新する更新ステップと、
前記上位装置から、前記記録媒体の初期化を指示する消去コマンドを受信した場合に、記憶領域に上書きするための所定のデータを前記記憶媒体に転送する転送ステップと、
前記記憶状態に更新されているビット情報を前記消去状態に更新する更新ステップと、
を含んだことを特徴とするデータ消去方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
本願の開示するデータ記憶装置は、一つの態様において、記憶領域を有する記録媒体と、所定のグループを示す指標毎に、当該所定のグループの記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部と、上位装置から、前記記録媒体にデータの書き込みを指示する書込コマンドを受信した場合に、記憶領域に記憶するためのデータを前記記憶媒体に転送する転送制御部と、前記所定のグループのビット情報を、データを有する記憶領域であることを示す記憶状態に更新する主制御部と、を備え、前記転送制御部は、前記上位装置から、前記記録媒体の初期化を指示する消去コマンドを受信した場合に、記憶領域に上書きするための所定のデータを前記記憶媒体に転送し、前記主制御部は、前記記憶状態に更新されているビット情報を前記消去状態に更新することを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
また、本願の開示するデータ消去方法は、他の態様において、上位装置から、記録媒体にデータの書き込みを指示する書込コマンドを受信した場合に、記憶領域に記憶するためのデータを前記記憶媒体に転送する転送ステップと、所定のグループを示す指標毎に、当該所定のグループの記憶領域の状態を示すビット情報を対応付けたテーブルであって、各ビット情報が初期状態ではデータが書き込まれていないことを示す消去状態に設定されている管理テーブルを記憶する管理テーブル記憶部のビット情報のうち、前記所定のグループのビット情報を、データを有する記憶領域であることを示す記憶状態に更新する更新ステップと、前記上位装置から、前記記録媒体の初期化を指示する消去コマンドを受信した場合に、記憶領域に上書きするための所定のデータを前記記憶媒体に転送する転送ステップと、前記記憶状態に更新されているビット情報を前記消去状態に更新する更新ステップと、を含んだことを特徴とする。