(57)【要約】【課題】外部記憶装置のデータ消去時間を短縮することができるデータ処理装置、そのデータ処理装置を備えた外部記憶装置及びデータ消去方法を提供すること【解決手段】本発明にかかるＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、パソコン１６からのデータをハードディスク１７に書き込むデータ処理装置である。ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、ＣＰＵ１２と、パソコン１６とハードディスク１７との間で伝送されるデータを一時保管するメモリ１３と、ＣＰＵ１２の制御に基づいてハードディスク１７のデータ消去用のデータを生成する擬似乱数生成器１８と、前記データ消去用のデータをバッファし、メモリ１３よりも小さな記憶容量を有するディスク消去用データ記憶部１９と、ハードディスク１７に、バッファされた前記データ消去用のデータをハードディスク１７のデータ消去完了まで順次書き込むＳＡＴＡホストコントローラ１５を備える。【選択図】図１
2013092976.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置からのデータを外部記憶装置に書き込むデータ処理装置であって、
前記データ処理装置を制御する制御部と、
前記ホスト装置と前記外部記憶装置との間で伝送されるデータを一時保管するメモリと、
前記制御部の制御に基づいて、前記外部記憶装置のデータ消去用のデータを生成するデータ生成部と、
生成された前記データ消去用のデータをバッファし、前記メモリよりも小さな記憶容量を有するバッファ部と、
前記外部記憶装置に、前記バッファ部でバッファされた前記データ消去用のデータを前記外部記憶装置のデータ消去完了まで順次書き込むインタフェースと、
を備えるデータ処理装置。
【請求項２】
前記データ処理装置は、押下されることにより処理開始信号を生成するスイッチをさらに備え、
前記制御部は、前記処理開始信号をトリガとして、前記データ生成部に前記データ消去用のデータの生成を開始させる、
請求項１に記載のデータ処理装置。
【請求項３】
前記データ処理装置に前記ホスト装置が接続されていない状態で前記スイッチが押下された場合に、前記制御部は、前記処理開始信号をトリガとして、前記データ生成部に前記データ消去用のデータの生成を開始させる、
請求項２に記載のデータ処理装置。
【請求項４】
請求項１乃至３のいずれか一項に記載のデータ処理装置を備えた外部記憶装置。
【請求項５】
ホスト装置からのデータを外部記憶装置に書き込むデータ処理装置を用いて、前記外部記憶装置のデータを消去するデータ消去方法であって、
前記外部記憶装置のデータ消去用のデータを生成し、
生成された前記データ消去用のデータを、前記ホスト装置と前記外部記憶装置との間で伝送されるデータを一時保管するメモリよりも小さな記憶容量を有するバッファ部にバッファし、
前記外部記憶装置に、前記前記バッファ部でバッファされたデータ消去用のデータを前記外部記憶装置のデータ消去完了まで順次書き込む、
データ処理装置を用いたデータ消去方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ処理装置、そのデータ処理装置を備えた外部記憶装置及びデータ消去方法に関する。
【背景技術】
【０００２】
一般的なパソコン（パーソナルコンピュータ）において、ＵＮＩＸ（登録商標）などの各ＯＳ（オペレーティングシステム）上で使用するハードディスクなどの記憶装置は、実データ領域とファイル管理領域から構成される。ファイル管理領域には、実データのファイル名、実データが記録されている位置情報などのファイル管理情報が格納されている。
【０００３】
ユーザがＯＳからの操作により記憶装置内のデータを削除する場合、ファイル管理情報の一部が変更されるだけで、削除対象の実データは消去されない。このため、ファイル管理領域のファイル管理情報を推測することによって、実データを復元することができる。
【０００４】
セキュリティ上の観点からデータ復元を防止するためデータを完全に消去する手法として、米国のＮａｔｉｏｎａｌ  Ｉｎｄｕｓｔｒｉａｌ  Ｓｅｃｕｒｉｔｙ  Ｐｒｏｇｒａｍ（ＮＩＳＰ）で定めたＤｏＤ５２２０．２２−Ｍが多くの市販ソフトウェアで用いられている。この規格は、ある文字列で記憶装置の全記憶領域を上書きした後、その文字列の補数で上書きを行い、さらにランダムな文字列で上書きするという手法である。これにより、記憶装置の記憶領域内にあるデータは完全に消去され、復元できないようにすることができる。
【０００５】
このデータ完全消去処理について、図３および図４を用いて説明する。図３は、ＵＳＢ(Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ)−ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）ブリッジコントローラの一般的なブロック図である。
【０００６】
ＵＳＢ−ＳＡＴＡブリッジコントローラ１００は、ＣＰＵ周辺回路１０１、ＣＰＵ１０２、メモリ１０３、ＵＳＢデバイスコントローラ１０４及びＳＡＴＡホストコントローラ１０５を備える。ＵＳＢデバイスコントローラ１０４は、パソコン１０６に接続されており、パソコン１０６に搭載されるＵＳＢホストコントローラとの通信を制御する。これにより、ＵＳＢデバイスコントローラ１０４は、ＵＳＢインタフェースとして機能する。ＳＡＴＡホストコントローラ１０５は、ＳＡＴＡインタフェースを持つハードディスク１０７に接続され、ハードディスク１０７との通信を制御する。これにより、ＳＡＴＡホストコントローラ１０５は、ＳＡＴＡインタフェースとして機能する。
【０００７】
図４は、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００を用いたデータ完全消去処理の処理フローである。ここで、パソコン１０６は、前述のＤｏＤ５２２０．２２−Ｍに準拠したソフトウェアの制御により、ハードディスク１０７のデータを完全消去する。
【０００８】
まず、ユーザがパソコン１０６の入力装置を操作して、パソコン１０６にハードディスク１０７のデータの全消去を指示する（ステップＳ１０１）。すると、パソコン１０６に備えられたソフトウェアが固定値データを生成する（ステップＳ１０２）。この固定値データは、全て０のデータである。後述の補数データ、ランダムデータも、パソコン１０６に備えられたソフトウェアにより生成される。なお、固定値データ、補数データ及びランダムデータは、それぞれ、ハードディスク１０７のデータを消去するためのデータ消去用のデータである。
【０００９】
固定値データの生成後、パソコン１０６は、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００へ固定値データを送信する（ステップＳ１０３）。なお、固定値データは、一旦パソコン１０６のメモリに格納されてから、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００に送信される。以下の補数データ、ランダムデータについても同様である。
【００１０】
ＵＳＢ−ＳＡＴＡブリッジコントローラ１００は、パソコン１０６が送信した固定値データを受信する（ステップＳ１０４）。次に、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００は、メモリ１０３に受信した固定値データを書き込み、格納する（ステップＳ１０５）。更に、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００は、ＳＡＴＡホストコントローラ１０５を介して、メモリ１０３内に格納したデータをハードディスク１０７へ書き込む（ステップＳ１０６）。以上のＵＳＢ−ＳＡＴＡブリッジコントローラ１００の動作は、ＣＰＵ１０２を制御するファームウエアによって実行される。なお、ファームウエアは、パソコン１０６の指示にしたがってＣＰＵ１０２の動作を制御する。
【００１１】
メモリ１０３内のデータがハードディスク１０７に送信された後、パソコン１０６は、ハードディスク１０７内の全記憶領域に固定値データが書き込まれたか否かを判定する（ステップＳ１０７）。すべての領域に固定値データが書き込まれていない場合（ステップＳ１０７のＮｏ）、パソコン１０６は、ステップＳ１０２に戻って処理を実行する。このようにして、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００及びパソコン１０６は、ハードディスク１０７内のすべての記憶領域に固定値データが書き込まれるまで、ステップＳ１０２〜１０６の処理を繰り返す。
【００１２】
パソコン１０６は、すべての記憶領域への固定値データの書き込みを終えると（ステップＳ１０７のＹｅｓ）、ソフトウェアの制御により、前述の固定値の補数データを生成する（ステップＳ１０８）。この補数データは、すべて１のデータである。そして、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００及びパソコン１０６は、固定値データと同様に、ハードディスク１０７のすべての記憶領域に補数データを書き込む（ステップＳ１０８〜Ｓ１１３）。
【００１３】
パソコン１０６は、ハードディスク１０７のすべての記憶領域への補数データの書き込みを終えたと判定すると（ステップＳ１１３のＹｅｓ）、ソフトウェアの制御により、ランダムデータを生成する（ステップＳ１１４）。ＵＳＢ−ＳＡＴＡブリッジコントローラ１００及びパソコン１０６は、固定値データ、補数データと同様の手順で、ハードディスク１０７のすべての記憶領域にランダムデータを書き込む（ステップＳ１１４〜Ｓ１１９）。
【００１４】
以上の技術では、ハードディスクのデータ消去において、パソコンなどのホストコンピュータ上のソフトウェアによるデータ消去用のデータの生成処理と、ホストコンピュータとブリッジコントローラとの間のデータ転送処理が必要である。例えば、データ消去用のデータが生成されるとき、パソコンのメモリ上に、消去コマンドでデータを転送する分の容量（例えば６４キロバイト）のメモリが確保される。パソコンは、そのメモリにデータ消去用のデータを一旦書き込んだ上で、転送する必要がある。それにより、データの生成時間及びデータ転送時間はパソコンの処理性能又は負荷に応じて長くなるため、ハードディスクのデータ消去までには長い時間を要した。
【００１５】
特許文献１では、ハードディスクのデータ消去における処理時間の短縮が可能なデータ変換装置が開示されている。特許文献１にかかるデータ変換装置は、パソコンなどのホストコンピュータから受信したデータを、データ変換装置の備える疑似乱数生成器が生成したランダムデータに置き換えて、ハードディスクへ書き込む。これにより、パソコン上でランダムデータを生成する処理が不要であるため、データ消去における処理時間を短縮することができる。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２００８−８５９８６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１７】
しかしながら、特許文献１においては、データ変換装置がハードディスクにランダムデータを書き込むとき、パソコンがデータ変換装置でランダムデータに置き換えるための元データを生成し、そのデータをデータ変換装置に転送する必要がある。このように、データ消去用のデータを生成するときには、前述の通り、パソコンのメモリにデータを書き込む時間が必要である。そのため、パソコンの処理性能又は負荷に応じてデータ生成時間及びデータ転送時間が長くなり、ハードディスクのデータ消去における処理時間が短縮できないという課題があった。
【課題を解決するための手段】
【００１８】
本発明にかかるデータ処理装置は、ホスト装置からのデータを外部記憶装置に書き込むデータ処理装置であって、前記データ処理装置を制御する制御部と、前記ホスト装置と前記外部記憶装置との間で伝送されるデータを一時保管するメモリと、前記制御部の制御に基づいて、前記外部記憶装置のデータ消去用のデータを生成するデータ生成部と、生成された前記データ消去用のデータをバッファし、前記メモリよりも小さな記憶容量を有するバッファ部と、前記外部記憶装置に、前記バッファ部でバッファされた前記データ消去用のデータを前記外部記憶装置のデータ消去完了まで順次書き込むインタフェースを備える。このような構成により、データ処理装置は、データ消去用のデータを、ホスト装置と外部記憶装置との間のデータ伝送に用いられるメモリよりも小さな記憶容量を有するバッファ部にバッファする。そして、そのバッファ部でバッファされたデータをデータ消去完了まで外部記憶装置に書き込む。そのため、外部記憶装置のデータ消去時間を短縮することができる。
【００１９】
本発明にかかるデータ消去方法は、ホスト装置からのデータを外部記憶装置に書き込むデータ処理装置を用いて、前記外部記憶装置のデータを消去するデータ消去方法であって、前記外部記憶装置のデータ消去用のデータを生成し、生成された前記データ消去用のデータを、前記ホスト装置と前記外部記憶装置との間で伝送されるデータを一時保管するメモリよりも小さな記憶容量を有するバッファ部にバッファし、前記外部記憶装置に、前記バッファ部でバッファされたデータ消去用のデータを前記外部記憶装置のデータ消去完了まで順次書き込むデータ消去方法である。このような構成により、データ処理装置は、データ消去用のデータを、ホスト装置と外部記憶装置との間のデータ伝送に用いられるメモリよりも小さな記憶容量を有するバッファ部にバッファする。そして、そのバッファ部でバッファされたデータをデータ消去完了まで外部記憶装置に書き込む。そのため、外部記憶装置のデータ消去時間を短縮することができる。
【発明の効果】
【００２０】
本発明により、外部記憶装置のデータ消去時間を短縮することができるデータ処理装置、そのデータ処理装置を備えた外部記憶装置及びデータ消去方法を提供することができる。
【図面の簡単な説明】
【００２１】
【図１】実施の形態１にかかるＵＳＢ−ＳＡＴＡブリッジコントローラのブロック図である。
【図２】実施の形態１にかかるデータ完全消去処理の処理フローの図である。
【図３】関連技術にかかるＵＳＢ−ＳＡＴＡブリッジコントローラのブロック図である。
【図４】関連技術にかかるデータ完全消去処理の処理フローの図である。
【発明を実施するための形態】
【００２２】
実施の形態１
本実施の形態にかかるＵＳＢ−ＳＡＴＡブリッジコントローラのＣＰＵは、処理開始信号をトリガとして、接続されたパソコンから独立して（コマンド発行等を受けずに）ハードディスクのデータ全消去を実行する。これにより、パソコンからのデータ出力が不要となるため、ハードディスクのデータ消去時間を短縮することができる。さらに、データ消去用のデータを、通常のメモリではなく、専用の記憶容量が小さいメモリにバッファする。これにより、ハードディスクへのデータ消去用のデータの出力時間を削減することができる。
【００２３】
以下、図面を参照して本発明の実施の形態について説明する。図１は、本実施の形態にかかるＵＳＢ−ＳＡＴＡブリッジコントローラのブロック図である。ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、ＣＰＵ周辺回路１１、ＣＰＵ１２、メモリ１３、ＵＳＢデバイスコントローラ１４、ＳＡＴＡホストコントローラ１５、擬似乱数生成器１８及びディスク消去用データ記憶部１９を備える。以上に示したＵＳＢ−ＳＡＴＡブリッジコントローラ１０の各部は、バスを介して接続され、データの伝送が可能である。
【００２４】
なお、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０はハードディスク１７のコントローラである。ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、ハードディスク１７に例えば内蔵されている。パソコン１６は、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０を介して、ハードディスク１７に接続されている。
【００２５】
ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、後述の通り、ハードディスク１７のデータを完全消去する機能を有する。さらに、パソコン１６とハードディスク１７とのデータ伝送を実行する機能も有する。
【００２６】
ＣＰＵ周辺回路１１及びＣＰＵ１２は、一般的なマイクロコンピュータであり、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０を制御する制御部として機能する。具体的には、ＣＰＵ１２は、ＳＡＴＡホストコントローラ１５、擬似乱数生成器１８等を制御する。さらに、ＣＰＵ１２は、ハードディスク１７のデータ消去のための固定値データ及び補数データを生成する。このようにして、ＣＰＵ１２は、ハードディスク１７のデータを完全消去する。この詳細については後述する。
【００２７】
さらに、ＣＰＵ１２は、ＵＳＢデバイスコントローラ１４及びＳＡＴＡホストコントローラ１５を制御することにより、パソコン１６とハードディスク１７とのデータ伝送を実行することもできる。なお、ＣＰＵ周辺回路１１には、ＣＰＵ１２を制御するファームウエアが搭載される。
【００２８】
メモリ１３は、ＵＳＢ−ＳＡＴＡ間のデータ転送におけるデータの一時保管領域及びファームウエアが使用する変数などの一時保管領域として使用される。メモリ１３は、パソコン１６とハードディスク１７とのデータ伝送に用いられるため、実用上、一般にキロバイト又はメガバイト単位の記憶容量を必要とする。パソコン１６とハードディスク１７とのデータ転送は、例えば以下の通りに実行される。パソコン１６からデータの書き込みが行われ、ＣＰＵ１２は、そのデータをメモリ１３に記憶させる。さらにＣＰＵ１２は、メモリ１３のデータを読み出して、ハードディスク１７に書き込む。このようにして、パソコン１６からハードディスク１７へのデータ転送がなされる。
【００２９】
ＵＳＢデバイスコントローラ１４は、パソコン１６と接続されており、パソコン１６に搭載されるＵＳＢホストコントローラとの通信を制御する。ＵＳＢデバイスコントローラ１４は、ＵＳＢインタフェースとして機能する。
【００３０】
ＳＡＴＡホストコントローラ１５は、ハードディスク１７と接続されており、ＳＡＴＡインタフェースを有するハードディスク１７との通信を制御する。ＳＡＴＡホストコントローラ１５は、ＳＡＴＡインタフェースとして機能する。
【００３１】
パソコン１６は、ホスト装置であり、ハードディスク１７は、パソコン１６の外部記憶装置である。ハードディスク１７には、ハードディスク１７のデータ全消去処理を実行するためのボタンスイッチ１７１が設けられている。
【００３２】
擬似乱数生成器１８は、ランダム値（乱数値）のデータを生成し、そのデータをディスク消去用データ記憶部１９に出力する。なお、固定値データ及び補数データを生成するＣＰＵ１２と、ランダムデータを生成する擬似乱数生成器１８は、ハードディスク１７のデータ消去用のデータを生成するデータ生成部として機能する。
【００３３】
ディスク消去用データ記憶部１９は、擬似乱数生成器１８から出力されたデータをバッファし、一時的に記憶する専用のメモリである。さらに、ＣＰＵ１２から出力されたデータも同様にバッファし、一時的に記憶する。
【００３４】
ディスク消去用データ記憶部１９はメモリの一種だが、メモリ１３より少ない記憶容量を有している。例えば、メモリ１３がキロバイト又はメガバイト単位の記憶容量を有するのに対し、ディスク消去用データ記憶部１９は、数バイト（例えば１〜４バイト）程度の記憶容量を有していればよい。換言すれば、ディスク消去用データ記憶部１９は、メモリ１３よりもはるかに少ないオーダー（数オーダー程度、具体的にはオーダーが４、５又はそれ以上異なる）の記憶容量を備えていればよい。
【００３５】
次に、図２に示した内蔵ファームウエアの処理フローを用いて、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０がハードディスク１７内のデータを完全消去する処理を説明する。なお、データ消去方法は、前述のＤｏＤ５２２０．２２−Ｍに基づいている。
【００３６】
まず、ユーザが、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０に対して、ハードディスク１７内のデータの完全消去を指示する（ステップＳ１）。この指示は、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０を備えるハードディスク１７のボタンスイッチ１７１を、ユーザが押下することによりなされる。ボタンスイッチ１７１の押下により、ハードディスク１７内のデータを全消去する指示の処理開始信号がＵＳＢ−ＳＡＴＡブリッジコントローラ１０のＣＰＵ１２に出力され、ＣＰＵ１２はその信号に応じて、データ全消去の処理を開始する。
【００３７】
ＣＰＵ１２は、処理開始信号をトリガとして、ディスク消去用データ記憶部１９に、固定値データ（例えばすべて０であるデータ）を書き込み、バッファさせる。これにより、ＣＰＵ１２は、固定値データを設定する（ステップＳ２）。ＣＰＵ１２は、ディスク消去用データ記憶部１９にバッファされたデータをハードディスク１７へ書き込むように、ＳＡＴＡホストコントローラ１５を設定する。これにより、ＳＡＴＡホストコントローラ１５は、順次固定値データを取得して、ハードディスク１７の記憶領域に書き込む（ステップＳ３）。
【００３８】
なお、ＣＰＵ１２は、トリガとする処理開始信号以外は、以下の処理に必要なコマンド発行を全て実行するため、図２の処理において、パソコン１６からの指示は不要である。
【００３９】
ＳＡＴＡホストコントローラ１５が、ディスク消去用データ記憶部１９にバッファされたデータをハードディスク１７に書き込んだ後、ＣＰＵ１２は、ハードディスク１７の全記憶領域に固定値データの書き込みが完了したか否かを判定する（ステップＳ４）。
【００４０】
ハードディスク１７の全記憶領域に固定値データが書き込まれていない場合（ステップＳ４のＮｏ）、ＣＰＵ１２は、再度固定値データをハードディスク１７に書き込む処理を実行する。そして、ハードディスク１７の全記憶領域に固定値データの書き込みが完了したか否かを再度判定する（ステップＳ２〜Ｓ４）。このようにして、ＣＰＵ１２は、ハードディスク１７の全記憶領域に固定値データが書き込まれるまで、固定値データの書き込み処理（ステップＳ２〜Ｓ４）を実行する。
【００４１】
ハードディスク１７の全記憶領域に固定値データが書き込まれた場合（ステップＳ４のＹｅｓ）、ＣＰＵ１２は、ディスク消去用データ記憶部１９に、先ほどの固定値データの補数値（例えばすべて１）を書き込み、バッファさせる。これにより、ＣＰＵ１２は、補数データを設定する（ステップＳ５）。ＣＰＵ１２は、ディスク消去用データ記憶部１９にバッファされたデータを、ハードディスク１７へ書き込むように、ＳＡＴＡホストコントローラ１５を設定する。これにより、ＳＡＴＡホストコントローラ１５は、順次補数データを取得して、ハードディスク１７の記憶領域に書き込む（ステップＳ６）。
【００４２】
ＳＡＴＡホストコントローラ１５がディスク消去用データ記憶部１９にバッファされたデータをハードディスク１７に書き込んだ後、ＣＰＵ１２は、ハードディスク１７の全記憶領域に補数データの書き込みが完了したか否かを判定する（ステップＳ７）。
【００４３】
ハードディスク１７の全記憶領域に補数データが書き込まれていない場合（ステップＳ７のＮｏ）、ＣＰＵ１２は、再度補数データをハードディスク１７に書き込む処理を実行する。そして、ハードディスク１７の全記憶領域に補数データの書き込みが完了したか否かを再度判定する（ステップＳ５〜Ｓ７）。このようにして、ＣＰＵ１２は、ハードディスク１７の全記憶領域に補数データが書き込まれるまで、補数データの書き込み処理（ステップＳ５〜Ｓ７）を実行する。
【００４４】
ＣＰＵ１２は、ハードディスク１７のすべての記憶領域への補数データの書き込みを終えると（ステップＳ７のＹｅｓ）、擬似乱数生成器１８を起動させる。そして、擬似乱数生成器１８の出力データを、ディスク消去用データ記憶部１９にバッファさせる。これにより、ＣＰＵ１２は、ランダムデータを設定する（ステップＳ８）。換言すれば、擬似乱数生成器１８は、処理開始信号に基づいて、ハードディスク１７のデータ消去用のランダムデータを生成する。
【００４５】
ＣＰＵ１２の制御により、ＳＡＴＡホストコントローラ１５は、前述と同様に、順次ランダムデータを取得して、ハードディスク１７の記憶領域に書き込む（ステップＳ９）。ＣＰＵ１２は、ハードディスク１７のすべての記憶領域へランダムデータの書き込みが終わるまで、ランダムデータの書き込み処理を実行する（ステップＳ８〜Ｓ１０）。以上のようにして、ＣＰＵ１２は、データ消去完了まで、固定値データ、補数データ及びランダムデータをハードディスク１７の全記憶領域に順次伝送して書き込む処理を実行する。
【００４６】
図２に示すように、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、ハードディスク１７中のデータ完全消去のためのデータ消去用のデータの生成を、すべてＵＳＢ−ＳＡＴＡブリッジコントローラ１０内部で実行する（ステップＳ２、Ｓ５、Ｓ８）。つまり、パソコン１６からＵＳＢ−ＳＡＴＡブリッジコントローラ１０へのデータの転送が不要であるため、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、データ消去用のデータの生成に関して、パソコン１６の処理性能の影響を受けない。そのため、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、以下に示す通り、安定して高速なデータ消去用のデータの生成が可能である。
【００４７】
ここで、図２に示した本件の処理フローと、図４に示した処理フローとを比較する。図４のステップＳ１０２、Ｓ１０８、Ｓ１１４において、パソコン１０６は、そのメモリ上に、書き込みコマンドで使用するデータ容量分のデータ消去用のデータを生成する。このデータ容量分のデータは、通常、キロバイト程度の単位（例えば６４キロバイト）を有するデータであるため、データ生成に時間がかかる。
【００４８】
特に、ステップＳ１１４におけるランダムデータの生成において、図１の擬似乱数生成器１８を使用した場合と同様に、コマンドごとに異なるランダムデータを生成する（一度生成したランダムデータを各コマンドで使いまわさない）場合、コマンドごとにランダムデータの生成を行わなければならない。そのため、ランダムデータの生成に特に長い時間が必要となる。
【００４９】
さらに、ステップＳ１０５、Ｓ１１１、Ｓ１１７において、ＵＳＢ−ＳＡＴＡブリッジコントローラ１００がメモリ１０３にデータ消去用のデータを書き込むときにも、パソコン１０６のメモリ上におけるデータ生成の時間と同様に時間がかかる。
【００５０】
これに対し、図２に示した処理フローのステップＳ２、Ｓ５、Ｓ８においては、データ消去用のデータは、数バイト程度の記憶容量を有するディスク消去用データ記憶部１９にバッファされる。ディスク消去用データ記憶部１９は、通常のメモリよりも非常に少ない記憶容量を有しているため、データのバッファ時間を短縮できる。図２に示した処理フローと図４に示した処理フローでは、以上の通りデータ消去用のデータの生成方法が異なる。そのため、本実施形態にかかるＵＳＢ−ＳＡＴＡブリッジコントローラ１０では、データ消去用のデータを生成する時間を短縮することができる。
【００５１】
ここで、ステップＳ８では、擬似乱数生成器１８がディスク消去用データ記憶部１９へランダムデータを出力するため、ＣＰＵ１２は、ランダムデータを生成するための初期値等の設定（例えば１６バイト）を行い、擬似乱数生成器１８を起動させる必要がある。
【００５２】
そして、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、データ消去用のデータの生成に関して、パソコン１６でのデータ生成が不要である。そのため、パソコン１６でのデータ生成にかかる時間は０であるほか、パソコン１６からＵＳＢ−ＳＡＴＡブリッジコントローラ１０へのデータ転送時間も０である。パソコン１６からコマンドＵＳＢ−ＳＡＴＡブリッジコントローラ１０へのコマンド送信等に必要な時間も０である。（ＣＰＵ１２は、パソコン１６から、データ消去の処理に関してコマンド発行等を受信する必要がないためである。）
【００５３】
以上の通り、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、データ消去用のデータの生成時間を削減する。さらに、パソコン１６からのコマンドに対する処理時間及びデータ転送時間といったオーバーヘッドがないため、データ消去用のデータのハードディスク１７への書き込み時間を短縮することができる。具体的には、ＵＳＢデバイスコントローラ１４とメモリ１３間のデータ通信速度と、ＳＡＴＡホストコントローラ１５とメモリ１３間のデータ通信速度とが等しい場合、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、図３に示したＵＳＢ−ＳＡＴＡブリッジコントローラ１００と比較して、データ消去用のデータのハードディスク１７への書き込み時間が、約半分又はそれ以下に短縮される。
【００５４】
特許文献１にかかるデータ変換装置でも、データ変換装置がデータ消去用のデータをハードディスクに出力するとき、パソコンがデータを生成し、生成したデータをデータ変換装置に転送する必要がある。そのため、データ生成時間、データ転送時間がパソコンの性能に依存して長くなり、データ消去におけるデータ転送時間が短縮できないという課題があった。この詳細については前述の通りである。
【００５５】
さらに、パソコンなどのホストコンピュータからデータ変換装置にハードディスクのデータ消去を指示する必要があるため、ディスク完全消去用のソフトウェアを備えるホストコンピュータの存在も必須であった。
【００５６】
本実施形態にかかるＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、特許文献１にかかるデータ変換装置と比較して、データ消去用のデータの生成に、パソコン１６からのデータ転送が不要である。換言すれば、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、ハードディスク１７のデータ消去用のデータをリアルタイムに生成して、ディスク消去用データ記憶部１９を介し、ＳＡＴＡホストコントローラ１５がアクセス可能なバスへデータを出力する。
【００５７】
このため、パソコン１６は、データ消去用のデータの生成処理を行うソフトウェアを備える必要はない。さらに、ハードディスク１７へ書き込むデータ消去用のデータを予めメモリ１３に格納する必要がなくなるため、ＣＰＵ１２−メモリ１３間のデータ転送時間は不要である。本実施形態にかかるＵＳＢ−ＳＡＴＡブリッジコントローラ１０で新たに設けられたディスク消去用データ記憶部１９は、前述の通り、通常のメモリよりもデータの格納時間が短くすむ。そのため、ハードディスク１７のデータ消去時間を短縮することができる。
【００５８】
さらに、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０を備えるハードディスク１７本体のボタンスイッチ１７１を押下することにより、ハードディスク１７のデータ消去処理を開始することができる。そして、ハードディスク１７へのデータ消去用のデータの書き込みは、ＣＰＵ周辺回路１１が内蔵するファームウエアの制御によって、ＳＡＴＡホストコントローラ１５が実行する。そのため、ハードディスク１７のデータ消去を指示するためのホストコンピュータは不要である。
【００５９】
まとめると、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０は、ホストコンピュータによるデータ消去用のデータの生成処理、ホストコンピュータとＵＳＢ−ＳＡＴＡブリッジコントローラとの間のデータ転送処理及びＵＳＢ−ＳＡＴＡブリッジコントローラ１０内のメモリ１３へのデータ格納処理による処理時間のオーバーヘッドをなくすことができる。そして、ハードディスク１７のデータ転送性能及びディスク容量に応じた時間で、ハードディスク１７内のデータの完全消去処理を行うことができる。
【００６０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、データを完全消去する対象は、ハードディスクだけに限らず、シリコンディスク、フラッシュメモリなどの外部記憶装置でもよい。ホスト装置は、パソコンに限らず、他のコンピュータでもよい。さらに、本発明の対象とする装置は、ＵＳＢ−ＳＡＴＡブリッジコントローラに限らず、外部記憶装置のデータを消去可能なその他のデータ処理装置でもよい。外部記憶装置のデータを完全に消去する手法は、ＤｏＤ５２２０．２２−Ｍに限らず、Ｇｕｔｍａｎｎ方式等、その他の方法を用いてもよい。
【００６１】
上記実施の形態においては、ＣＰＵ１２がディスク消去用データ記憶部１９にデータ消去用のデータをバッファして、ＳＡＴＡホストコントローラ１５がそのバッファされたデータをハードディスク１７に書き込んだ。しかし、ディスク消去用データ記憶部１９に擬似乱数生成器１８が生成したランダムデータを必ずしも記憶させる必要はなく、ＳＡＴＡホストコントローラ１５はランダムデータを直接受信して、ハードディスク１７に書き込んでもよい。なお、擬似乱数生成器１８は、上述の通り、ランダムデータを生成するための初期値等の設定に基づき、ランダムデータを出力する。
【００６２】
上記実施の形態においては、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０を備えるハードディスク１７のボタンスイッチ１７１をユーザが押下することにより、処理開始信号をＣＰＵ１２に出力した。しかし、処理開始信号のトリガとなるスイッチは、ボタンスイッチに限られない。さらに、ユーザがパソコンの入力装置を操作することによって、ハードディスク１７内のデータ全消去の指示である処理開始信号をＣＰＵ１２に出力してもよい。
【００６３】
本発明の対象とするデータ処理装置が、ＵＳＢ−ＳＡＴＡブリッジコントローラ等ではなく、ハードディスクに設けられていない場合、スイッチは、そのデータ処理装置自体に設けられていてもよい。そのデータ処理装置が他の周辺機器に設けられている場合、スイッチは、その周辺機器に設けられていてもよい。さらに、処理開始信号は、上述のようなスイッチに限らず、拡張ボックス、リモコン等による操作により出力されてもよい。
【００６４】
さらに、処理開始信号を生成するボタンスイッチ等は不要でもよい。つまり、データ処理装置のＣＰＵ（制御部）は、処理開始信号に基づかず、自動的に図２に記載したデータ消去方法を実行してもよい。
【００６５】
なお、ホストコンピュータが不要なデータ処理装置が、実施の形態に記載したデータ消去方法を実行してもよい。例えば、外部記憶装置のデータ消去専用装置が、電源投入直後又はＳＡＴＡハードディスクの認識直後から、上記実施の形態と同様の動作を実行してもよい。
【００６６】
上記実施の形態に示したＵＳＢ−ＳＡＴＡブリッジコントローラ１０の動作は、制御方法の１つとして、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０に実行させることができる。例えば、ファームウエア等の制御プログラムとして、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０に実行させることができる。また、当該制御プログラムは、ＵＳＢ−ＳＡＴＡブリッジコントローラ１０のＣＰＵ１２等が読み取り可能なように、プログラム記録媒体に記録されてもよい。
【符号の説明】
【００６７】
１０  ＵＳＢ−ＳＡＴＡブリッジコントローラ
１１  ＣＰＵ周辺回路
１２  ＣＰＵ
１３  メモリ
１４  ＵＳＢデバイスコントローラ
１５  ＳＡＴＡホストコントローラ
１６  パソコン
１７  ハードディスク
１７１  ボタンスイッチ
１８  擬似乱数生成器
１９  ディスク消去用データ記憶部
【図１】
2013092976.tif 000003
【図２】
2013092976.tif 000004
【図３】
2013092976.tif 000005
【図４】
2013092976.tif 000006