(57)【要約】【課題】データ管理方法及びこれを用いるデータ保存システムを提供する。【解決手段】データ保存装置及びその制御方法に係り、特に、複数の保存装置を利用してアクセス性能向上のためにデータ保存位置を管理する方法及び装置に関する。該データ保存位置管理方法は、受信されるコマンドによって、第１保存装置でアクセスされた記録領域別のアクセス頻度を算出する段階、算出された領域別のアクセス頻度が初期設定された臨界頻度を超える第１保存装置の記録領域に保存されたデータを第２保存装置にコピーする段階、及びコピーした第２保存装置の記録領域についての位置情報で、コピーされるデータを提供する第１保存装置の記録領域についての位置情報を代替させる段階を含むことを特徴とする。【選択図】図５
2010033578.tif 000002
【特許請求の範囲】
【請求項１】
受信されるコマンドによって、第１保存装置でアクセスされた記録領域別のアクセス頻度を算出する段階と、
前記算出された領域別のアクセス頻度が初期設定された臨界頻度を超える第１保存装置の記録領域に保存されたデータを、第２保存装置にコピーする段階と、
前記コピーした第２保存装置の記録領域についての位置情報で、前記コピーされるデータを提供する第１保存装置の記録領域についての位置情報を代替させる段階とを含むことを特徴とするデータ管理方法。
【請求項２】
前記第２保存装置は、前記第１保存装置よりアクセス速度が速い保存装置であることを特徴とする請求項１に記載のデータ管理方法。
【請求項３】
前記第１保存装置及び第２保存装置は、不揮発性保存装置を含むことを特徴とする請求項１に記載のデータ管理方法。
【請求項４】
前記第１保存装置は、ハードディスクドライブを含むことを特徴とする請求項１に記載のデータ管理方法。
【請求項５】
前記第２保存装置は、不揮発性半導体メモリ装置を含むことを特徴とする請求項１に記載のデータ管理方法。
【請求項６】
前記コマンドは、リードコマンドを含むことを特徴とする請求項１に記載のデータ管理方法。
【請求項７】
前記位置情報を代替させる段階は、前記コピーされる記録領域に含まれた論理ブロックアドレスを、前記第２保存装置のコピーした記録領域に対応するように再割り当てし、位置情報を代替させることを特徴とする請求項１に記載のデータ管理方法。
【請求項８】
前記アクセス頻度は、前記第１保存装置に割り当てられた論理ブロックアドレスでアクセスされる頻度を示すアクセスリストを利用して算出し、前記アクセスリストは、アクセス開始位置を示す論理ブロックアドレス情報フィールド、アクセス範囲を示すセクタ数情報フィールド、及び反復されたアクセス回数を示すヒットカウント情報フィールドから構成された複数個の単位アクセス情報セットを含むことを特徴とする請求項１に記載のデータ管理方法。
【請求項９】
前記アクセスリストは、前記第１保存装置で実行されたコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットが前記アクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させ、そうではない場合には、前記実行されたコマンドに指定された論理ブロックアドレス情報及びセクタ数情報を含む新たな単位アクセス情報セットを、前記アクセスリストに追加する方式で生成することを特徴とする請求項８に記載のデータ管理方法。
【請求項１０】
前記新たな単位アクセス情報セットは、前記実行されたコマンドに指定された論理ブロックアドレス情報、セクタ数情報、及び初期化されたヒットカウント情報を含むことを特徴とする請求項９に記載のデータ管理方法。
【請求項１１】
前記アクセスリストに書き込まれた単位アクセス情報セットの個数が初期設定された第１臨界値に達している場合に、前記アクセスリストに含まれた単位アクセス情報セットのうち、ヒットカウント情報が初期設定された第２臨界値を超える単位アクセス情報セットに指定された第１保存装置の記録領域に保存されたデータを、前記第１保存装置よりアクセス速度が速い第２保存装置にコピーし、前記コピーされた記録領域に含まれた論理ブロックアドレスを、前記第２保存装置のコピーした記録領域に対応するように再割り当てすることを特徴とする請求項９に記載のデータ管理方法。
【請求項１２】
前記コピーされた記録領域に含まれた論理ブロックアドレスを、前記第２保存装置のコピーした記録領域に対応するように再割り当てした後に、前記アクセスリストに書き込まれた単位アクセス情報セットを削除して初期化させることを特徴とする請求項１１に記載のデータ管理方法。
【請求項１３】
請求項１ないし請求項１２のうち、いずれか１項に記載の方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【請求項１４】
記録方式が異なる第１保存装置及び第２保存装置と、
前記第１保存装置で、コマンドに基づいてアクセスされた記録領域別のアクセス頻度を示すアクセスリストを生成するアクセスリスト生成部と、
前記算出されたアクセスリストに基づいて、アクセス頻度が初期設定された臨界頻度を超える記録領域に保存されたデータを、前記複数の保存装置に含まれた第２保存装置にコピーし、前記コピーした第２保存装置の記録領域についての位置情報で、前記コピーされるデータを提供する第１保存装置の記録領域についての位置情報を代替させるコントローラとを含むことを特徴とするデータ保存システム。
【請求項１５】
前記第２保存装置は、前記第１保存装置よりアクセス速度が速い保存装置であることを特徴とする請求項１４に記載のデータ保存システム。
【請求項１６】
前記第１保存装置及び第２保存装置は、不揮発性保存装置を含むことを特徴とする請求項１４に記載のデータ保存システム。
【請求項１７】
前記第１保存装置は、ハードディスクドライブを含むことを特徴とする請求項１４に記載のデータ保存システム。
【請求項１８】
前記第２保存装置は、不揮発性半導体メモリ装置を含むことを特徴とする請求項１４に記載のデータ保存システム。
【請求項１９】
前記アクセスリスト生成部は、アクセス開始位置を示す論理ブロックアドレス情報フィールド、アクセス範囲を示すセクタ数情報フィールド、及び反復されたアクセス回数を示すヒットカウント情報フィールドを含む複数個の単位アクセス情報セットを含むアクセスリストを生成させ、前記第１保存装置で実行されたコマンドに指定された論理ブロックアドレス範囲を含む単位アクセス情報セットが前記アクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させ、そうではない場合には、前記実行されたコマンドに指定された論理ブロックアドレス範囲に基づいて、新たな単位アクセス情報セットを前記アクセスリストに追加させることを特徴とする請求項１４に記載のデータ保存システム。
【請求項２０】
前記新たな単位アクセス情報セットは、前記実行されたコマンドに指定された論理ブロックアドレス情報、セクタ数情報、及び初期化されたヒットカウント情報を含むことを特徴とする請求項１９に記載のデータ保存システム。
【請求項２１】
前記コントローラは、前記アクセスリストに書き込まれた単位アクセス情報セットの個数が初期設定された第１臨界値に達している場合に、前記アクセスリストに含まれた単位アクセス情報セットのうち、ヒットカウント情報が初期設定された第２臨界値を超える単位アクセス情報セットで指定される記録領域に保存されたデータを、前記第２保存装置にコピーし、前記コピーした第２保存装置の記録領域についての位置情報で、前記コピーされるデータを提供する第１保存装置の記録領域についての位置情報を代替させることを特徴とする請求項１４に記載のデータ保存システム。
【請求項２２】
前記コントローラは、前記記録領域についての位置情報を代替させてから、前記アクセスリストに書き込まれた単位アクセス情報セットを削除して初期化させることを特徴とする請求項２１に記載のデータ保存システム。
【請求項２３】
第１メモリ装置から読み取るデータのアドレスを受信する段階と、
前記受信されたアドレスの頻度についての情報を含むリストを生成する段階と、
前記リストに含まれたアドレスの頻度が所定の臨界値を超える場合に、前記臨界値を超える頻度を有するアドレスに対応して第１保存装置に保存されているデータを第２保存装置にコピーする段階とを含むことを特徴とするデータ管理方法。
【請求項２４】
所定の条件を満足するとき、現在のリストを代替する新たなリストを生成する段階をさらに含むことを特徴とする請求項２３に記載のデータ管理方法。
【請求項２５】
前記所定の条件は、アドレスが受信される時間区間であることを特徴とする請求項２４に記載のデータ管理方法。
【請求項２６】
それぞれのメモリ装置で実行する複数のプログラムに対応する複数のリストを生成する段階をさらに含むことを特徴とする請求項２３に記載のデータ管理方法。
【請求項２７】
現在受信されたアドレスが第２メモリ装置に位置していると判断されるとき、前記第２メモリ装置から現在受信されたアドレスに対応するデータを読み取る段階をさらに含むことを特徴とする請求項２３に記載のデータ管理方法。
【請求項２８】
第１メモリ装置から読み取るデータのアドレスを受信する段階と、
前記受信されたアドレスの頻度を判断する段階と、
前記判断された頻度が所定の臨界値を超えるアドレスに対応する第１メモリ装置のデータを第２保存装置にコピーする段階とを含むことを特徴とするデータ管理方法。
【請求項２９】
現在受信されたアドレスが第２メモリ装置に位置していると判断されるとき、前記第２メモリ装置から現在受信されたアドレスに対応するデータを読み取る段階をさらに含むことを特徴とする請求項２８に記載のデータ管理方法。
【請求項３０】
第１メモリ装置から読み取るデータのアドレスを受信する段階と、
他のアドレスが所定個数受信される場合に、頻度についての情報を含むリストを生成する段階と、
前記他のアドレスが所定個数受信され、アドレスの頻度が所定の臨界値を超える場合に、前記所定の臨界値を超える頻度を有するアドレスに対応する第１メモリ装置のデータを第２メモリ装置にコピーする段階とを含むことを特徴とするデータ管理方法。
【請求項３１】
前記リストの情報をディスプレイする段階と、
前記ディスプレイされた情報によって、前記他のアドレスの所定個数及び前記臨界値を変更させる段階をさらに含むことを特徴とする請求項３０に記載のデータ管理方法。
【請求項３２】
第１メモリ装置から読み取るデータのアドレスを受信する段階と、
第１メモリ装置及び第２メモリ装置の関係を示すリスト及び読み取るデータのアクセス情報によって、第２メモリ装置からデータを読み取る段階とを含むことを特徴とするデータ管理方法。
【請求項３３】
第１メモリ装置及び第２メモリ装置と、
前記第１メモリ装置から読み取るデータのアドレスを受信し、第１メモリ装置及び第２メモリ装置の関係を示すリスト及び読み取るデータのアクセス情報によって、第２メモリ装置からデータを読み取るコントローラとを含むことを特徴とするデータ保存システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ保存装置、記録媒体及びデータ保存システムに係り、特に、複数の保存装置を利用してデータを管理する方法及び装置に関する。
【背景技術】
【０００２】
一般的に、データ保存装置の一つであるハードディスクドライブ（ＨＤＤ）は、磁気ヘッドによって、ディスクに記録されたデータを再生したり、またはディスクにユーザデータを記録することによって、コンピュータシステム運用に寄与している。なお、本発明に関連した先行技術としては、以下の特許文献１，２がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−０２６４５３号公報
【特許文献２】特開平０８−１３７６２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ハードディスクドライブは、半導体メモリに比べてデータ保存容量は大きいが、データ処理速度が相対的に遅いという短所がある。従って、このような短所を補完するための技術開発が必要となってきている。
【０００５】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、記録媒体でのアクセスされる頻度に基づいて、データ保存位置を再構成することが可能な、新規かつ改良されたデータ管理方法及びデータ保存システムを提供することにある。また、本発明の目的とするところは、データ管理方法を遂行するプログラムコードが記録された記録媒体を提供するところにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある観点によれば、受信されるコマンドによって、第１保存装置でアクセスされた記録領域別のアクセス頻度を算出する段階、前記算出された領域別のアクセス頻度が初期設定された臨界頻度を超える第１保存装置の記録領域に保存されたデータを第２保存装置にコピーする段階、及び前記コピーした第２保存装置の記録領域についての位置情報で、前記コピーされるデータを提供する第１保存装置の記録領域についての位置情報を代替させる段階を含むことを特徴とするデータ管理方法が提供される。
【０００７】
また、前記第２保存装置は、前記第１保存装置よりアクセス速度が速い保存装置であってもよい。
【０００８】
また、前記第１保存装置及び第２保存装置は、不揮発性保存装置を含むものであってもよい。
【０００９】
また、前記第１保存装置は、ハードディスクドライブを含むものであってもよい。
【００１０】
また、前記第２保存装置は、不揮発性半導体メモリ装置を含むものであってもよい。
【００１１】
また、前記位置情報を代替させる段階は、前記コピーされる記録領域に含まれた論理ブロックアドレスを、前記第２保存装置のコピーした記録領域に対応するように再割り当てして位置情報を代替させるものであってもよい。
【００１２】
前記アクセス頻度は、前記第１保存装置に割り当てられた論理ブロックアドレスでアクセスされる頻度を示すアクセスリストを利用して算出し、前記アクセスリストは、アクセス開始位置を示す論理ブロックアドレス情報フィールド、アクセス範囲を示すセクタ数情報フィールド及び反復されたアクセス回数を示すヒットカウント情報フィールドから構成された複数個の単位アクセス情報セットを含むものであってもよい。
【００１３】
また、前記アクセスリストは、前記第１保存装置で実行されたコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットが前記アクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させ、そうではない場合には、前記実行されたコマンドに指定された論理ブロックアドレス情報及びセクタ数情報を含む新たな単位アクセス情報セットを、前記アクセスリストに追加する方式で生成するものであってもよい。
【００１４】
また、前記新たな単位アクセス情報セットは、前記実行されたコマンドに指定された論理ブロックアドレス情報、セクタ数情報、及び初期化されたヒットカウント情報を含むものであってもよい。
【００１５】
また、前記アクセスリストに書き込まれた単位アクセス情報セットの個数が初期設定された第１臨界値に達している場合に、前記アクセスリストに含まれた単位アクセス情報セットのうち、ヒットカウント情報が初期設定された第２臨界値を超える単位アクセス情報セットに指定された第１保存装置の記録領域に保存されたデータを、前記第１保存装置よりアクセス速度が速い第２保存装置にコピーし、前記コピーされた記録領域に含まれた論理ブロックアドレスを、前記第２保存装置のコピーした記録領域に対応するように再割り当てするものであってもよい。
【００１６】
また、前記コピーされた記録領域に含まれた論理ブロックアドレスを、前記第２保存装置のコピーした記録領域に対応するように再割り当てした後に、前記アクセスリストに書き込まれた単位アクセス情報セットを削除して初期化させるものであってもよい。
【００１７】
また、上記課題を解決するために、本発明の別の観点によれば、第１メモリ装置から読み取るデータのアドレスを受信する段階、前記受信されたアドレスの頻度についての情報を含むリストを生成する段階、及び前記リストに含まれたアドレスの頻度が所定の臨界値を超える場合に、前記臨界値を超える頻度を有するアドレスに対応して第１保存装置に保存されているデータを第２保存装置にコピーする段階を含むことを特徴とするデータ管理方法が提供される。
【００１８】
また、所定の条件を満足するとき、現在のリストを代替する新たなリストを生成する段階をさらに含むものであってもよい。
【００１９】
また、前記所定の条件は、アドレスが受信される時間区間であってもよい。
【００２０】
また、それぞれのメモリ装置で実行する複数のプログラムに対応する複数のリストを生成する段階をさらに含むものであってもよい。
【００２１】
また、現在受信されたアドレスが第２メモリ装置に位置していると判断されるとき、前記第２メモリ装置から現在受信されたアドレスに対応するデータを読み取る段階をさらに含むものであってもよい。
【００２２】
また、上記課題を解決するために、本発明の別の観点によれば、第１メモリ装置から読み取るデータのアドレスを受信する段階、前記受信されたアドレスの頻度を判断する段階、及び前記判断された頻度が所定の臨界値を超えるアドレスに対応する第１メモリ装置のデータを第２保存装置にコピーする段階を含むことを特徴とするデータ管理方法が提供される。
【００２３】
また、現在受信されたアドレスが第２メモリ装置に位置していると判断されるとき、前記第２メモリ装置から現在受信されたアドレスに対応するデータを読み取る段階をさらに含むものであってもよい。
【００２４】
また、上記課題を解決するために、本発明の別の観点によれば、第１メモリ装置から読み取るデータのアドレスを受信する段階、他のアドレスが所定の個数受信される場合に、頻度についての情報を含むリストを生成する段階、及び前記他のアドレスが所定個数受信され、アドレスの頻度が所定の臨界値を超える場合に、前記所定の臨界値を超える頻度を有するアドレスに対応する第１メモリ装置のデータを第２メモリ装置にコピーする段階を含むことを特徴とするデータ管理方法が提供される。
【００２５】
また、前記リストの情報をディスプレイする段階、及び前記ディスプレイされた情報によって、前記他のアドレスの所定個数及び前記臨界値を変更させる段階をさらに含むものであってもよい。
【００２６】
また、上記課題を解決するために、本発明の別の観点によれば、第１メモリ装置から読み取るデータのアドレスを受信する段階、及び第１メモリ装置及び第２メモリ装置間の関係を示すリスト及び読み取るデータのアクセス情報によって、第２メモリ装置からデータを読み取る段階を含むことを特徴とするデータ管理方法が提供される。
【００２７】
また、上記課題を解決するために、本発明の別の観点によれば、記録方式が異なる複数の保存装置、前記複数の保存装置に含まれた第１保存装置で、コマンドに基づいてアクセスされた記録領域別のアクセス頻度を示すアクセスリストを生成するアクセスリスト生成部、及び前記算出されたアクセスリストに基づいて、アクセス頻度が初期設定された臨界頻度を超える記録領域に保存されたデータを、前記複数の保存装置に含まれた第２保存装置にコピーし、前記コピーした第２保存装置の記録領域についての位置情報で、前記コピーされるデータを提供する第１保存装置の記録領域についての位置情報を代替させるコントローラを含むことを特徴とするデータ保存システムが提供される。
【００２８】
また、前記第２保存装置は、前記第１保存装置よりアクセス速度が速い保存装置であってもよい。
【００２９】
また、前記第１保存装置及び第２保存装置は、不揮発性保存装置を含むものであってもよい。
【００３０】
また、前記第１保存装置は、ハードディスクドライブを含むものであってもよい。
【００３１】
また、前記第２保存装置は、不揮発性半導体メモリ装置を含むものであってもよい。
【００３２】
また、前記アクセスリスト生成部は、アクセス開始位置を示す論理ブロックアドレス情報フィールド、アクセス範囲を示すセクタ数情報フィールド及び反復されたアクセス回数を示すヒットカウント情報フィールドを含む複数個の単位アクセス情報セットを含むアクセスリストを生成させ、前記第１保存装置で実行されたコマンドに指定された論理ブロックアドレス範囲を含む単位アクセス情報セットが前記アクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させ、そうではない場合には、前記実行されたコマンドに指定された論理ブロックアドレス範囲に基づいて、新たな単位アクセス情報セットを前記アクセスリストに追加させるものであってもよい。
【００３３】
また、前記新たな単位アクセス情報セットは、前記実行されたコマンドに指定された論理ブロックアドレス情報、セクタ数情報、及び初期化されたヒットカウント情報を含むものであってもよい。
【００３４】
また、前記コントローラは、前記アクセスリストに書き込まれた単位アクセス情報セットの個数が初期設定された第１臨界値に達している場合に、前記アクセスリストに含まれた単位アクセス情報セットのうち、ヒットカウント情報が初期設定された第２臨界値を超える単位アクセス情報セットで指定される記録領域に保存されたデータを前記第２保存装置にコピーし、前記コピーした第２保存装置の記録領域についての位置情報で、前記コピーされるデータを提供する第１保存装置の記録領域についての位置情報を代替させるものであってもよい。
【００３５】
また、前記コントローラは、前記記録領域についての位置情報を代替させてから、前記アクセスリストに書き込まれた単位アクセス情報セットを削除して初期化させるものであってもよい。
【００３６】
また、上記課題を解決するために、本発明の別の観点によれば、第１メモリ装置及び第２メモリ装置、及び前記第１メモリ装置から読み取るデータのアドレスを受信し、第１メモリ装置及び第２メモリ装置間の関係を示すリスト及び読み取るデータのアクセス情報によって、第２メモリ装置からデータを読み取るコントローラを含むことを特徴とするデータ保存システムが提供される。
【００３７】
また、上記課題を解決するために、本発明の別の観点によれば、前記データ管理方法をコンピュータで実行させるためのプログラムコードを記録したコンピュータで読み取り可能な記録媒体が提供される。
【発明の効果】
【００３８】
本発明によれば、データ保存システムで、第１保存装置に割り当てられたアクセス頻度が高い論理ブロックアドレスを、第１保存装置よりアクセス速度が速い第２保存装置に移動させることによって、データ保存システムでのアクセス速度を向上させることができる。
【００３９】
一例として、ハードディスクドライブで、ディスクに割り当てられていた論理ブロックアドレスのうち、アクセス頻度が比較的高い論理ブロックアドレスをアクセス速度が速い他の保存装置に移動させることによって、ハードディスクドライブでのアクセス速度を向上させることができる。
【００４０】
特に、ホスト装置とは独立的に保存装置自体で使用頻度が高い論理ブロックアドレスを収集し、アクセス速度が速い補助保存装置（第２保存装置）に移動させることによって、ホスト装置とは別個に、保存装置の性能を向上させることができる。
【図面の簡単な説明】
【００４１】
【図１】本発明の一実施形態によるデータ保存システムの構成図である。
【図２】本発明の一実施形態によるハードディスクドライブの電気的な回路構成図である。
【図３】本発明が適用されるディスクドライブのヘッドディスクアセンブリの平面図である。
【図４】本発明によるアクセスリストの構造を説明するための図面である。
【図５】本発明の一実施形態によるデータ管理方法のフローチャートである。
【図６】本発明の一実施形態によるデータ保存システムでのライトコマンド実行方法のフローチャートである。
【図７】本発明の他の実施形態によるデータ保存システムでのライトコマンド実行方法のフローチャートである。
【図８】本発明の一実施形態によるデータ保存システムでのリードコマンド実行方法のフローチャートである。
【図９Ａ】本発明の一実施形態による図１の構成手段の多様な結合方式を示す図面である。
【図９Ｂ】本発明の一実施形態による図１の構成手段の多様な結合方式を示す図面である。
【図９Ｃ】本発明の一実施形態による図１の構成手段の多様な結合方式を示す図面である。
【図１０】本発明の他の実施形態によるディスプレイ装置を有するデータ保存システムの構成図である。
【図１１】本発明の他の実施形態によるディスプレイ装置を有するデータ保存システムの構成図である。
【発明を実施するための形態】
【００４２】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００４３】
本発明、本発明の動作上の利点及び本発明の実施によって達成される目的を十分に理解するためには、本発明の望ましい実施形態を例示する添付図面及び図面に記載された内容を参照せねばならない。
【００４４】
以下、添付された図面を参照しつつ、本発明の望ましい実施形態について詳細に説明することにする。
【００４５】
図１は、本発明の一実施形態によるデータ保存システムの構成図である。図１に図示されたように、本発明の一実施形態によるデータ保存システム１７０は、ホスト装置１１０、コントローラ１２０、アクセスリスト生成部１３０、第１保存装置１４０及び第２保存装置１５０を含む。
【００４６】
ここで、コントローラ１２０は、中央処理装置（ＣＰＵ）１２０−１とメモリ１２０−２とから構成される。中央処理装置１２０−１は、データ保存システムを総括的に制御する手段であって、命令語の解析や資料の演算、比較のような一連の処理を制御する手段である。メモリ１２０−２には、データ保存システムを制御するのに必要なプログラム及びデータらが保存されており、特に、図５ないし図８のフローチャートを実行させるためのプログラム及びデータも保存されている。
【００４７】
第１保存装置１４０及び第２保存装置１５０は、電源が遮断されても記録媒体に保存されたデータを失わない不揮発性保存装置であり、第１保存装置１４０及び第２保存装置１５０の記録方式は異なる。本発明の一実施形態では、保存容量は大きいが、記録速度が比較的遅い保存装置を第１保存装置１４０に設定し、第１保存装置より記録速度が速い保存装置を第２保存装置１５０に設定した。本発明の一実施形態によれば、第１保存装置１４０は、ハードディスクドライブとして設定でき、第２保存装置１５０は、不揮発性半導体メモリ装置として設定できる。本発明の一実施形態では、説明の便宜のために、データ保存システムに２個の保存装置が含まれると限定して説明しているが、本発明はこれに限定されず、３個以上の複数の保存装置を含むように設計することができることは、いうまでもない事実である。
【００４８】
アクセスリスト生成部１３０は、第１保存装置で実行されたコマンドに基づいて、アクセスされた記録領域のアクセス頻度を示す単一または複数のアクセスリストを生成する。アクセスリスト生成部１３０はま、た論理ブロックアドレス（ＬＢＡ：logical block address）リスト情報ブロックであると称されることもあり、頻繁に使われたＬＢＡについての情報データを生成することができる。アクセスリスト生成部１３０は、複数の保存装置のうち、第１保存装置１３０に対するリードまたは／及びライトコマンドによるアクセスヒットレート（hit rate）に基づいた頻度情報を含むアクセスリストを生成することができる。アクセスリストに基づいて、ＬＢＡのヒットレートが所定の臨界レベルを超える条件と、アクセスリストに異なるＬＢＡが所定個数含まれている条件とをいずれも満足させるか、または一つ以上の条件を満足する場合に、コントローラ１２０は、リード／ライト動作速度を向上させるために、アクセスされる保存装置が第１保存装置１４０から第２保存装置１５０にスイッチングされるように制御する。
【００４９】
図１に図示されたように、アクセスリスト生成部１３０は、複数のアクセスリスト４００を含むことができる。例えば、複数のアクセスリストは、コンピュータシステムで同時に作動する複数のプログラムに相応してアクセス頻度を示すように使われうる。すなわち、１つのアクセスリストは、ワード（word）プログラムと関連したＬＢＡのアクセス頻度に対応でき、他のアクセスリストは、スプレッドシート（spread sheet）プログラムと関連したＬＢＡのアクセス頻度に対応できる。また、特定条件を満足する場合に、古くなったアクセスリストを代替し、新たなアクセスリストを生成することができる。ここで、特定条件は、一例として、１つのプログラムが終了し、他のプログラムが始まる条件、所定の時間区間が経過する条件、コンピュータシステムの他の条件またはアクセスリストが満足する条件が含まれうる。コントローラは、それぞれのヒットカウントフィールドの変更間の時間区間を測定するタイマを含むことができ、タイマは、アクセスリストの変更、代替のような条件を検出するのに利用されうる。
【００５０】
図４は、アクセスリスト生成部１３０によって生成されたアクセスリスト４００を示している。図４を参照すれば、アクセスリスト４００は、複数（Ｎ）のアクセス情報セットＬ（１）〜Ｌ（ｉ）を含むことができる。図４に図示されたように、それぞれの単位アクセス情報セットは、アクセス開始位置を示す論理ブロックアドレス（ＬＢＡ）情報フィールドＦ１、アクセス範囲（領域）を示すセクタ数情報フィールドＦ２、及び反復されたアクセス回数を示すヒットカウント情報フィールド（Ｆ３）から構成されうる。単位アクセス情報セットは、上記で言及したフィールド以外の追加的な情報フィールドを含むこともできる。アクセスリストで許容することができる単位アクセス情報セットの個数を初期設定値として決定でき、図４では、任意のＮ個と設定した。
【００５１】
アクセスリスト生成部１３０は、第１保存装置１４０で実行されたコマンドに指定された論理ブロックアドレス情報と、セクタ数情報に相応するアクセス領域とを含む単位アクセス情報セットがアクセスリストに存在する場合には、当該単位アクセス情報セットのフィールドＦ３に保存されたヒットカウント情報を増加させ、そうではない場合には、実行されたコマンドに指定された論理ブロックアドレス情報及びセクタ数情報に基づいて、新たな単位アクセス情報セットをアクセスリストに追加する。ここで、新たな単位アクセス情報セットのフィールドＦ１には、コマンドに指定された論理ブロックアドレス情報を保存し、フィールドＦ２には、コマンドに指定されたセクタ数情報を保存し、フィールドＦ３には、初期化されたヒットカウント情報に該当する「１」を保存する。
【００５２】
上記でのアクセスリストは、リードコマンドとライトコマンドとによって実行されたアクセス頻度をいずれも反映するように設計でき、場合によっては、リードコマンドによって実行されたアクセス頻度だけを反映するように設計することもできる。
【００５３】
コントローラ１２０の中央処理装置１２０−１は、アクセスリスト生成部１３０で生成されたアクセスリストに基づいて、アクセス頻度が初期設定された臨界頻度を超える単位アクセス情報セットに指定された第１保存装置１４０の記録領域に保存されたデータを、データが保存されていない第２保存装置１５０の任意の記録領域にコピーし、コピーした第２保存装置１５０の記録領域についての位置情報で、コピーしたデータを提供する第１保存装置の記録領域についての位置情報を代替させる位置情報マッピングリストを作成し、メモリ１２０−２に保存する。
【００５４】
図２は、本発明の一実施形態によるハードディスクドライブ２００を示す。図２に図示されたように、本発明の一実施形態によるハードディスクドライブ２００は、プリアンプ２１０、書き込み／読み取りチャンネル２２０、コントローラ２３０、アクセスリスト生成部２４０、第２保存装置２５０、ホストインターフェース２６０及びボイスコイルモータ（ＶＣＭ）駆動部２７０を含む。
【００５５】
ここで、第２保存装置２５０は、不揮発性メモリ装置であって、アクセス速度がハードディスクドライブより速いメモリ装置でもって設定する。第２保存装置２５０は、一例として、半導体不揮発性メモリであるフラッシュメモリ、ＰＲＡＭ（phase change ＲＡＭ）、ＦＲＡＭ（ferroelectric ＲＡＭ）、ＭＲＡＭ（magnetic ＲＡＭ）などが利用されうる。
【００５６】
図２には、たとえ第２保存装置２５０がハードディスクドライブ２００に内蔵されているとしても、ホストインターフェース２６０を介してハードディスクドライブ２００と分離させることもできる。また、第２保存装置２５０は、図１のコントローラ１２０に連結させることもできる。
【００５７】
ハードディスクドライブ２００の記録媒体であるディスク１２には、論理ブロックアドレスが割り当てられており、第２保存装置２５０の記録媒体に論理ブロックアドレスが割り当てられうる。場合によっては、ディスク１２にのみ論理ブロックアドレスを割り当て、第２保存装置２５０には、論理ブロックアドレスを割り当てないこともある。
【００５８】
図２及び図４を参照すれば、アクセスリスト生成部２４０は、ホストインターフェース２６０を介して受信されるコマンドに基づいて、ディスク１２で記録領域別にアクセスされる頻度を示すアクセスリスト４００を生成することができる。図４に図示されたように、アクセスリストは、複数個の単位アクセス情報セットから構成され、単位アクセス情報セットは、アクセス開始位置を示す論理ブロックアドレス情報フィールドＦ１、アクセス範囲を示すセクタ数情報フィールドＦ２、及び反復されたアクセス回数を示すヒットカウント情報フィールドＦ３から構成されうる。
【００５９】
アクセスリスト生成部１３０は、ディスク１２をアクセスするコマンドに指定された論理ブロックアドレス情報と、セクタ数情報に相応するアクセス領域とを含む単位アクセス情報セットがアクセスリストに存在する場合には、当該単位アクセス情報セットのフィールドＦ３に保存されたヒットカウント情報を増加させ、そうではない場合には、当該コマンドに指定された論理ブロックアドレス情報及びセクタ数情報に基づいて、新たな単位アクセス情報セットをアクセスリストに追加する。ここで、新たな単位アクセス情報セットのフィールドＦ１には、コマンドに指定された論理ブロックアドレス情報を保存し、フィールドＦ２には、コマンドに指定されたセクタ数情報を保存し、フィールドＦ３には、初期化されたヒットカウント情報に該当する「１」を保存する。
【００６０】
図２を参照すれば、コントローラ２３０は、ハードディスクドライブ２００を総括的に制御し、デジタル信号プロセッサ（ＤＳＰ：digital signal processor）、マイクロプロセッサ、マイクロコントローラなどによって具現されうる。コントローラ２３０は、ホストインターフェース２６０を介してホスト装置から受信されるコマンドによって、ディスク１２から情報を読み取ったり、またはディスク１２に情報を記録するために、書き込み／読み取りチャンネル２２０を制御する。
【００６１】
そして、コントローラ２３０は、ボイスコイル２６に駆動電流を供給するＶＣＭ駆動部２７０にさらに結合されている。コントローラ２３０は、ＶＣＭの励起及び変換器１６の動きを制御するために、ＶＣＭ駆動部２７０に制御信号を供給する。
【００６２】
特に、コントローラ２３０は、アクセスリスト生成部２４０で生成されたアクセスリストに含まれた少なくとも一つ以上の単位アクセス情報セットのアクセス頻度が、第１臨界値（例えば、初期設定基準アクセス頻度）に達しているか、または超えているかを判断し、少なくとも一つ以上の単位アクセス情報セットのアクセス頻度が第１臨界値に達しているか、または超えている単位アクセス情報セットに指定された論理ブロックアドレス範囲に対応するディスク１２の記録領域に保存されたデータを第２保存装置２５０にコピーし、コピーした第２保存装置２５０の記録領域についての位置情報で、コピーされるディスク１２の記録領域についての位置情報を代替させるための位置情報マッピングリストを作成する。
【００６３】
位置情報マッピングリストによって、アクセス頻度が高いディスク１２の記録領域に割り当てられた論理ブロックアドレスは、第２保存装置２５０の記録領域に再割り当てされる。
それにより、図２の構成によるハードディスクドライブのリードモード及びライトモード動作を説明することになる。
【００６４】
まず、ハードディスクドライブ２００のリードモード動作について説明する。リードコマンドが受信されれば、コントローラ２３０は、受信されたリードコマンドで指定する論理ブロックアドレスが、第２保存装置２５０またはディスク１２のうち、どこに割り当てられているかを判断する。
【００６５】
リードコマンドで指定する論理ブロックアドレスが第２保存装置２５０に割り当てられている場合には、コントローラ２３０は、第２保存装置２５０から論理ブロックアドレスが指定する記録領域に保存されているデータを読み取り、ホストインターフェース２６０を介してホスト装置に伝送する。
【００６６】
そして、リードコマンドで指定する論理ブロックアドレスがディスク１２に割り当てられている場合には、コントローラ２３０は、当該論理ブロックアドレスが位置情報マッピングリストに含まれた論理ブロックアドレスであるか否かを確認する。
【００６７】
もし位置情報マッピングリストに含まれた論理ブロックアドレスである場合には、位置情報マッピングリストで当該論理ブロックアドレスにマッピングされている第２保存装置２５０の記録領域からデータを読み取り、ホストインターフェース２６０を介してホスト装置に出力する。
【００６８】
しかし、リードコマンドで指定する論理ブロックアドレスがディスク１２に割り当てられており、位置情報マッピングリストに含まれていない場合には、コントローラ２３０は、リードコマンドで指定する論理ブロックアドレスに対応するディスク１２の記録領域に変換器１６を移動させるように制御する。その後、変換器１６は、ディスク１２の記録領域から電気的な信号を感知し、この感知された電気的な信号を、プリアンプ２１０で信号処理に容易なように増幅させる。その後、書き込み／読み取りチャンネル回路２２０で、ディスク１２から読み取った信号をデジタル信号に符号化させ、ストリームデータに変換してホストインターフェース２６０を介してホスト装置に伝送する。
【００６９】
コントローラ２３０は、リードコマンドを実行してから、ディスク１２からデータを読み取った場合には、リードコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とを含む単位アクセス情報セットがアクセスリストに存在するか否かを判断する。コントローラ２３０は、リードコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在しない場合には、当該リードコマンドに基づいた新たな単位アクセス情報セットをアクセスリストに追加する。しかし、リードコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を変更または増加させる。アクセスリストに新たな単位アクセス情報セットを追加したり、または存在する単位アクセス情報セットのヒットカウント情報を増加させる方法を、「ホット」ヒットレート法と称する。「ホット」ヒットレート法によれば、新たな単位アクセス情報セットをアクセスリストに追加したり、または当該ＬＢＡが頻繁に要求されたり、または「ホット」ヒットレートに該当するとき、存在する単位アクセス情報セットのヒットカウントフィールドが増加されうる。
【００７０】
次に、図２を参照しつつ、ハードディスクドライブのライトモード動作について説明する。
ライトコマンドが受信されれば、コントローラ２３０は、受信されたライトコマンドで指定する論理ブロックアドレスが、第２保存装置２５０またはディスク１２のうち、どこに割り当てられているかを判断する。
【００７１】
ライトコマンドで指定する論理ブロックアドレスが第２保存装置２５０に割り当てられている場合には、コントローラ２３０は、ホストインターフェース２６０を介して受信されるデータをライトコマンドで指定する論理ブロックアドレスに対応する第２保存装置２５０の記録領域に記録する。
【００７２】
そして、ライトコマンドで指定する論理ブロックアドレスが、ディスク１２に割り当てられている場合には、コントローラ２３０は、当該論理ブロックアドレスが位置情報マッピングリストに含まれた論理ブロックアドレスであるか否かを確認する。
【００７３】
もし位置情報マッピングリストに含まれた論理ブロックアドレスである場合には、位置情報マッピングリストで当該論理ブロックアドレスにマッピングされている第２保存装置２５０の記録領域に、ホストインターフェース２６０を介して受信されるデータを記録する。
【００７４】
しかし、ライトコマンドで指定する論理ブロックアドレスがディスク１２に割り当てられており、位置情報マッピングリストに含まれていない場合には、コントローラ２３０は、ライトコマンドで指定する論理ブロックアドレスに対応するディスク１２の記録領域に変換器１６を移動させるように制御する。その後、ホストインターフェース２６０から受信されるデータを書き込み／読み取りチャンネル２２０で、ディスク１２の記録チャンネルに適したバイナリデータストリームに変換させた後に、プリアンプ２１０によって増幅された記録電流で、変換器１６を介してディスク１２に記録する。
【００７５】
アクセスリストは、リードコマンドとライトコマンドとによって実行されたアクセス頻度をいずれも反映するように設計でき、場合によっては、リードコマンドによって実行されたアクセス頻度のみを反映するように設計できる。
【００７６】
もしリードコマンドによって実行されたアクセス頻度だけをアクセスリストに反映するようにハードディスクドライブを設計する場合には、ライトコマンドによるアクセス頻度は反映しない。
【００７７】
しかし、ライトコマンドによって実行されたアクセス頻度もアクセスリストに反映するようにハードディスクドライブを設計する場合に、コントローラ２３０は、次の通りアクセスリストに反映する。
【００７８】
コントローラ２３０は、ライトコマンドによってディスク１２にデータを記録してから、ライトコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在しない場合には、実行されたライトコマンドに基づいた新たな単位アクセス情報セットをアクセスリストに追加する。しかし、ライトコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させる。
【００７９】
ハードディスクドライブでリードモードまたはライトモードを実行した後に、コントローラ２３０は、アクセスリスト生成部２３０で生成されたアクセスリストに基づいて、アクセス頻度が初期設定された臨界頻度を超える単位アクセス情報セットで指定されたディスク１２の記録領域に保存されたデータを第２保存装置２５０にコピーし、このコピーした第２保存装置２５０の記録領域についての位置情報で、コピーしたデータを提供するディスク１２の記録領域についての位置情報を代替させる位置情報マッピングリストを作成する。従って、位置情報マッピングリストは、ディスク１２に割り当てられていた論理ブロックアドレスのうち、アクセス頻度が比較的高い論理ブロックアドレスを第２保存装置１５０に移動させるようにマッピング処理されたリストである。
【００８０】
図３は、本発明が適用されるハードディスクドライブのＨＤＡ（head disk assembly）１０の構成を示している。
【００８１】
ヘッドディスク・アセンブリ１０は、スピンドルモータ１４によって回転する少なくとも１つの磁気ディスク１２を含んでいる。ヘッドディスク・アセンブリ１０は、ディスク１２表面に隣接するように位置した変換器１６をさらに含んでいる。
【００８２】
変換器１６は、それぞれのディスク１２の磁界を感知して磁化させることによって、回転するディスク１２で情報を読み取ったり記録できる。典型的に変換器１６は、各ディスク１２の表面に結合されている。たとえ単一の変換器１６として図示されて説明されているとしても、これは、ディスク１２を磁化させるための記録用変換器と、ディスク１２の磁界を感知するための分離された読み取り用変換器とからなっていると理解されねばならない。読み取り用変換器は、磁気抵抗（ＭＲ：magneto-resistive）素子から構成されうる。変換器１６は、一般的にヘッド（head）と呼ばれもする。
【００８３】
変換器１６は、スライダ２０に統合されうる。スライダ２０は、変換器１６とディスク１２表面との間に空気ベアリング（air bearing）を生成する構造によってなっている。スライダ２０は、ヘッドジンバルアセンブリ２２に結合されている。ヘッドジンバル・アセンブリ２２はボイスコイル２６を有するアクチュエータアーム２４に付着している。ボイスコイル２６は、ＶＣＭ
３０を特定するように、マグネチック・アセンブリ２８に隣接するように位置している。ボイスコイル２６に供給される電流は、ベアリング・アセンブリ３２に対して、アクチュエータアーム２４を回転させるトルクを発生させる。アクチュエータアーム２４の回転は、ディスク１２の表面を横切って変換器１６を移動させるのである。
【００８４】
情報は、典型的にディスク１２の環状トラック内に保存される。各トラック３４は、一般的に複数のセクタを含んでいる。各セクタは、データフィールド（data field）と識別フィールド（identification field）とを含んでいる。識別フィールドは、セクタ及びトラック（シリンダ）を識別するグレイコード（gray code）から構成されている。ディスク１２の記録可能な領域には、論理ブロックアドレス情報が割り当てられている。ハードディスクドライブで論理ブロックアドレス情報は、シリンダ／ヘッド／セクタ情報に変換され、ディスク１２の記録領域が指定される。変換器１６は、他のトラック３４にある情報を読み取ったり記録するために、ディスク１２の表面を横切って移動する。
【００８５】
図５は、コントローラ１２０の制御によって実行される本発明の一実施形態によるデータ管理方法のフローチャートを示す。
【００８６】
図１ないし図５を参照すれば、ホスト装置１１０からコマンドがコントローラ１２０に受信されれば、コントローラ１２０の中央処理装置１２０−１でコマンドを解析し、受信されたコマンドがアクセス関連コマンドであるか否かを判断する（Ｓ５０１）。アクセス関連コマンドの例としては、ライトコマンドまたはリードコマンドがある。
【００８７】
段階５０１（Ｓ５０１）の判断結果、アクセス関連コマンドが受信された場合に、中央処理装置１２０−１は、アクセスする保存装置を検索する（Ｓ５０２）。細部的に、中央処理装置１２０−１は、受信されたアクセス関連コマンドに指定された論理ブロックアドレス情報とセクタ数情報に対応する記録領域との位置がどの保存装置に含まれているかを検索する。中央処理装置１２０−１は、保存装置検索時に、メモリ１２０−２に保存されている位置情報マッピングリストも参照する。すなわち、アクセスする論理ブロックアドレス情報が第１保存装置１４０の記録領域に割り当てられているか、または第２保存装置１５０の記録領域に割り当てられているかを判断する。もし第２保存装置１５０に割り当てられている場合には、第２保存装置１５０をアクセスする保存装置として決定する。しかし、第１保存装置１４０に割り当てられている場合には、当該論理ブロックアドレス情報が位置情報マッピングリストに含まれているか否かを判断する。位置情報マッピングリストは、第１保存装置１４０に割り当てられていた論理ブロックアドレスのうち、アクセス頻度が比較的高い論理ブロックアドレスを第２保存装置１５０に移動させるように、マッピング処理するリストである。
【００８８】
もし第１保存装置１４０の記録領域にだけ論理ブロックアドレスを割り当て、第２保存装置１５０の記録領域には、論理ブロックアドレスを割り当てていない場合には、中央処理装置１２０−１は、位置情報マッピングリストにアクセスする論理ブロックアドレス情報が含まれていれば、第２保存装置１５０をアクセスする保存装置として決定し、そうではない場合には、第１保存装置１４０をアクセスする保存装置として決定することもできる。
【００８９】
次に、アクセスする保存装置として決定された保存装置の記録領域で受信されたコマンドを実行する（Ｓ５０３）。すなわち、受信されたコマンドがライトコマンドである場合には、アクセスする保存装置として決定された保存装置で、ライトコマンドに指定された論理ブロックアドレスに対応する記録領域にライトを実行する。そして、受信されたコマンドがリードコマンドである場合には、アクセスする保存装置として決定された保存装置で、リードコマンドで指定された論理ブロックアドレスに対応する記録領域からデータを読み取る。
【００９０】
段階５０３によってコマンドを実行した後に、コマンドが実行された保存装置が第１保存装置であるか否かを判断する（Ｓ５０４）。
【００９１】
段階５０４（Ｓ５０４）の判断結果、第１保存装置１４でコマンドを実行した場合には、コマンドによるアクセス情報をアクセスリストに反映する（Ｓ５０５）。アクセスリストは、前述のように、図４に図示されたような仕様を有する。第１保存装置１４０で実行されたコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とを含む単位アクセス情報セットがアクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させる。しかし、第１保存装置１４０で実行されたコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とを含む単位アクセス情報セットがアクセスリストに存在しない場合には、実行されたコマンドに指定された論理ブロックアドレス情報及びセクタ数情報を含む新たな単位アクセス情報セットをアクセスリストに追加し、このとき、ヒットカウント情報は、初期値である「１」に設定する。
【００９２】
次に、アクセスリストに基づいて、アクセス頻度が基準頻度を超える単位アクセス情報セットに指定された領域に保存されたデータを、データが保存されていない第２保存装置１５０の記録領域に移して書き込むコピー処理を実行する（Ｓ５０６）。細部的に、中央処理装置１２０−１は、アクセスリストに書き込まれた単位アクセス情報セットの個数が第１臨界値に達している場合に、アクセスリストに含まれた単位アクセス情報セットのうち、ヒットカウント情報が第２臨界値を超える単位アクセス情報セットに指定された第１保存装置１４０の記録領域に保存されたデータを、第１保存装置１４０よりアクセス速度が速い第２保存装置１５０にコピーするように制御する。ここで、第１臨界値及び第２臨界値は、それぞれ初期設定値でもって製品仕様に適するように製品設計段階で決定できる。
【００９３】
その後、コピー処理された領域についての位置情報マッピングリストを作成する（Ｓ５０７）。すなわち、中央処理装置１２０−１は、コピー処理された論理ブロックアドレスに対応する第１保存装置１４０に割り当てられた位置情報を、第２保存装置１５０でのコピーされた位置情報にマッピング処理するマッピングリストを作成し、メモリ１２０−２に保存する。
【００９４】
従って、第１保存装置１４０に割り当てられたアクセス頻度が高い「ホット」論理ブロックアドレスＬＢＡを、第１保存装置１４０よりアクセス速度が速い第２保存装置１５０に移動させることによって、データ保存システムでのアクセス速度を向上させることができる。
【００９５】
次に、本発明の一実施形態によるデータ管理方法について、ライトモード及びリードモードに分けて具体的に説明する。
【００９６】
アクセス頻度リストをリードコマンドとライトコマンドとによって実行されたアクセス頻度をいずれも反映する場合と、リードコマンドによって実行されたアクセス頻度だけを反映する場合とに分けて説明する。
【００９７】
まず、リードコマンドによって実行されたアクセス頻度だけを反映してアクセスリストを生成する場合のライトコマンド実行方法について、図６を参照しつつ説明する。
【００９８】
ホスト装置１１０からコマンドがコントローラ１２０に受信されれば、コントローラ１２０の中央処理装置１２０−１でコマンドを解析し、受信されたコマンドがライトコマンドであるか否かを判断する（Ｓ６０１）。
【００９９】
段階６０１（Ｓ６０１）の判断結果、ライトコマンドが受信された場合に、中央処理装置１２０−１は、ライトコマンドに指定された論理ブロックアドレス情報及びセクタ数情報による論理ブロックアドレスが割り当てられた保存装置を検索する（Ｓ６０２）。すなわち、アクセスする記録領域が第１保存装置１４０または第２保存装置１５０のうち、いずれの保存装置に割り当てられているかを判断する。もし第２保存装置１５０に割り当てられている場合には、第２保存装置１５０をアクセスする保存装置として決定する。しかし、第１保存装置１４０に割り当てられている場合には、当該論理ブロックアドレス情報が位置情報マッピングリストに含まれているか否かを判断する。位置情報マッピングリストは、第１保存装置１４０に割り当てられていた論理ブロックアドレスのうち、リードコマンドによるアクセス頻度が比較的高い論理ブロックアドレスを、第２保存装置１５０に移動させるようにマッピングするリストである。
【０１００】
その後、受信されたライトコマンドと共に受信されるデータをアクセスする保存装置として決定された保存装置で、ライト処理を実行する（Ｓ６０３）。すなわち、ＬＢＡに対応する保存領域が第２保存装置１５０に含まれている場合には、第２保存装置１５０をアクセスしてライト処理を実行する。反対に、ＬＢＡに対応する保存領域が第１保存装置１４０に含まれている場合には、第１保存装置１４０をアクセスしてライト処理を実行する。
【０１０１】
前述のように、ライトコマンドに指定されたＬＢＡに対応する保存領域が第１保存装置１４０に含まれている場合、当該ＬＢＡが位置情報マッピングリストに含まれているか否かを判断できる。位置情報マッピングリストは、第１保存装置１４０に割り当てられたＬＢＡに対するアクセス頻度を含むように設計できる。かような位置情報マッピングリストは、第１保存装置１４０から比較的高いアクセス頻度を有する一つ以上のＬＢＡを第２保存装置１５０に移動させるマッピングリストとして使われうる。
【０１０２】
次に、リードコマンドとライトコマンドとによって実行されたアクセス頻度をいずれも反映してアクセスリストを生成する場合のライトコマンド実行方法について、図７を参照しつつ説明する。
【０１０３】
図７の段階７０１（Ｓ７０１）〜段階７０３（Ｓ７０３）は、図６の段階６０１（Ｓ６０１）〜段階６０３（Ｓ６０３）と同一であるので、重複説明は避ける。
【０１０４】
段階７０３（Ｓ７０３）によってライトコマンドを実行した後に、ライトコマンドが実行された保存装置が第１保存装置であるか否かを判断する（Ｓ７０４）。
【０１０５】
段階７０４（Ｓ７０４）の判断結果、第１保存装置でライトコマンドを実行した場合には、実行されたライトコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とを含む単位アクセス情報セットがアクセスリストに存在するか否かを判断する（Ｓ７０５）。
【０１０６】
段階７０５（Ｓ７０５）の判断結果、ライトコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在しない場合には、当該ライトコマンドに基づいた新たな単位アクセス情報セットをアクセスリストに追加する（Ｓ７０６）。すなわち、ライトコマンドに指定された論理ブロックアドレス情報、及びセクタ数情報と初期値「１」に設定されたヒットカウント情報とから構成された新たな単位アクセス情報セットをアクセスリストに追加する。
【０１０７】
しかし、段階７０５（Ｓ７０５）の判断結果、ライトコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させる（Ｓ７０７）。すなわち、ライトコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とを含む単位アクセス情報セットのヒットカウント情報を単位ステップである「１」ほど増加させる。
【０１０８】
段階７０６（Ｓ７０６）または段階７０７（Ｓ７０７）を実行してから、アクセスリストに書き込まれた単位アクセス情報セットの個数が第１臨界値に達しているか否かを判断する（Ｓ７０８）。第１臨界値は、初期設定値として、製品仕様に適するように製品設計段階で決定できる。
【０１０９】
段階７０８（Ｓ７０８）の判断結果、アクセスリストに書き込まれた単位アクセス情報セットの個数が第１臨界値に達していない場合には、アクセス頻度を判断するのに十分なアクセスリストが作成された状態と見ることができないので段階を終了する。
【０１１０】
しかし、段階７０８（Ｓ７０８）の判断結果、アクセスリストに書き込まれた単位アクセス情報セットの個数が第１臨界値に達している場合には、アクセスリストに含まれた単位アクセス情報セットのうち、ヒットカウント情報が第２臨界値を超える単位アクセス情報セットに指定されたアクセス領域に保存されたデータを、第１保存装置１４０よりアクセス速度が速い第２保存装置１５０のデータが保存されていない記録領域にコピーする（Ｓ７０９）。第２臨界値は、初期設定値として製品仕様に適するように製品設計段階で決定できる。
【０１１１】
その後、コピー処理された領域の位置情報マッピングリストを作成する（Ｓ７１０）。細部的に、コピーされる第１保存装置１４０の記録領域に割り当てられた位置情報を、コピーする第２保存装置１５０の記録領域に割り当てられた位置情報で代替するマッピングリストを作成し、メモリ１２０−２に保存する。
【０１１２】
図８は、本発明の一実施形態によるリードモードでのデータ管理方法のフローチャートである。
【０１１３】
図１及び図８を参照しつつ、本発明の一実施形態によるリードモードでのデータ管理方法について説明する。
【０１１４】
ホスト装置１１０からコマンドがコントローラ１２０に受信されれば、コントローラ１２０の中央処理装置１２０−１でコマンドを解析し、受信されたコマンドがリードコマンドであるか否かを判断する（Ｓ８０１）。
【０１１５】
段階８０１（Ｓ８０１）の判断結果、リードコマンドが受信された場合に、中央処理装置１２０−１は、リードコマンドに指定された論理ブロックアドレス情報及びセクタ数情報による論理ブロックアドレスが割り当てられた保存装置を検索する（Ｓ８０２）。保存装置を検索する方法は、前記で詳細に説明したので、重複説明を避けることにする。
【０１１６】
次に、検索された保存装置で、リードコマンドで指定する領域に保存されたデータを読み取る（Ｓ８０３）。
【０１１７】
段階８０３（Ｓ８０３）によってリードコマンドを実行した後に、リードコマンドが実行された保存装置が第１保存装置であるか否かを判断する（Ｓ８０４）。
【０１１８】
段階８０４（Ｓ８０４）の判断結果、第１保存装置でリードコマンドを実行した場合には、実行されたリードコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とを含む単位アクセス情報セットがアクセスリストに存在するか否かを判断する（Ｓ８０５）。
【０１１９】
段階８０５（Ｓ８０５）の判断結果、リードコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在しない場合には、当該リードコマンドに基づいた新たな単位アクセス情報セットをアクセスリストに追加する（Ｓ８０６）。すなわち、リードコマンドに指定された論理ブロックアドレス情報、及びセクタ数情報と初期値「１」に設定されたヒットカウント情報とから構成された新たな単位アクセス情報セットをアクセスリストに追加する。
【０１２０】
しかし、段階８０５（Ｓ８０５）の判断結果、リードコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とが含まれた単位アクセス情報セットがアクセスリストに存在する場合には、当該単位アクセス情報セットのヒットカウント情報を増加させる（Ｓ８０７）。すなわち、リードコマンドに指定された論理ブロックアドレス情報と、セクタ数情報によるアクセス領域とを含む単位アクセス情報セットのヒットカウント情報を単位ステップである「１」ほど増加させる。
【０１２１】
段階８０６（Ｓ８０６）または段階８０７（Ｓ８０７）を実行してから、アクセスリストに書き込まれた単位アクセス情報セットの個数が第１臨界値に達しているか否かを判断する（Ｓ８０８）。
【０１２２】
段階８０８（Ｓ８０８）の判断結果、アクセスリストに書き込まれた単位アクセス情報セットの個数が第１臨界値に達していない場合には、アクセス頻度を判断するのに十分なアクセスリストが作成された状態と見ることができないので、段階を終了する。
【０１２３】
しかし、段階８０８（Ｓ８０８）の判断結果、アクセスリストに書き込まれた単位アクセス情報セットの個数が第１臨界値に達している場合には、アクセスリストに含まれた単位アクセス情報セットのうち、ヒットカウント情報が第２臨界値を超える単位アクセス情報セットに指定された記録領域に保存されたデータを、第１保存装置１４０よりアクセス速度が速い第２保存装置１５０のデータが保存されていない記録領域にコピーする（Ｓ８０９）。
【０１２４】
その後、コピー処理された領域の位置情報マッピングリストを作成する（Ｓ８１０）。細部的に、コピーされる第１保存装置１４０の記録領域に割り当てられた位置情報を、コピーする第２保存装置１５０の記録領域に割り当てられた位置情報で代替するマッピングリストを作成し、メモリ１２０−２に保存する。
【０１２５】
マッピングリストは、次のコマンドによって、保存領域をアクセスするところに使われうる。
【０１２６】
前述のように、図１のデータ保存システムは、第１保存装置１４０をハードディスクドライブに設定し、第２保存装置１５０をハードディスクドライブに内蔵した。しかし、第２保存装置１５０をハードディスクドライブと分離されるように設計することができ、また、多様な結合方式で構成手段を配置できる。
【０１２７】
図９Ａ〜９Ｃは、図１の構成手段の多様な結合による実施形態を示している。
【０１２８】
図９Ａに図示されているように、本発明の一実施形態によれば、コントローラ１２０とアクセスリスト生成部１３０とをホスト装置１１０内に設け、第２保存装置１５０は、第１保存装置１４０内に設けるように設計できる。
【０１２９】
図９Ｂに図示されているように、本発明の他の実施形態によれば、第１保存装置１４０をホスト装置１１０内に設け、第２保存装置１５０を分離し、通信ターミナル、またはＵＳＢのようなライン、または無線通信ターミナルを利用し、ホストインターフェースに連結させることができる。
【０１３０】
そして、図９Ｃに図示されたように、本発明のさらに他の実施形態によれば、第１保存装置１４０及び第２保存装置１５０のうち、１つの保存装置または２個の保存装置いずれも分離し、コントローラ１２０に連結させることができ、場合によっては、有線または無線の結合ターミナルを介して、分離されたホスト装置１１０に連結させることもできる。さらに、第１保存装置１４０及び第２保存装置１５０のうち、いずれか１つの保存装置またはいずれの保存装置も、有線または無線のネットワーク１６０を介してコントローラ１２０と通信するように設けることもできる。図９Ａ〜９Ｃに図示された構成手段の結合例は、本発明による一実施形態を示すものであり、本発明の構成手段を他の多様な方式で結合するように設計することもできる。
【０１３１】
図１０及び図１１は、本発明の一実施形態によるディスプレイ装置を有するデータ保存システムを示している。
【０１３２】
ここで、ディスプレイ装置１０１０は、保存領域、アクセスリスト、臨界レベル、データ保存システム１０００の異なる特性に関連した情報をユーザに示したり、または変更できるように有線または無線の通信ライン１０１１を介してデータ保存システム１０００と通信できるように構成される。データ保存システム１０００は、ユーザインターフェースのような情報に相応するスクリーンを表示する信号を発生させることができる。ユーザは、スクリーンに相応するユーザインターフェースを介して情報を見ることができ、また変更できる。これと関連し、図１１に図示されているように、データ保存システム１０００は、ホスト装置１１０を含むことができ、ディスプレイ装置１０１０は、単一のハウジング・ボディ（housing body）１１００内に、データ保存システム１０００と共に設置されうる。
【０１３３】
本発明は、方法、装置、システムなどとして実行されうる。ソフトウェアで実行されるとき、本発明の構成手段は、必然的に必要な作業を実行するコードセグメントである。プログラムまたはコードセグメントは、プロセッサで読み取り可能な媒体に保存されうる。プロセッサ読み取り可能媒体は、情報を保存または伝送できるいかなる媒体も含む。プロセッサ読み取り可能媒体の例としては、電子回路、半導体メモリ素子、ＲＯＭ（read-only memory）、フラッシュメモリ、ＥＲＯＭ（erasable ＲＯＭ）、フロッピー（登録商標）ディスク、光ディスク、ハードディスク、光ファイバ媒体、無線周波数（ＲＦ）網などがある。
【０１３４】
添付された図面に図示されて説明された特定の実施形態は、単に本発明の例として理解されるのみであり、本発明の範囲を限定するものではなく、本発明が属する技術分野で、本発明に記述された技術的思想の範囲でも多様な他の変更が発生しうるので、本発明は、示されたり記述された特定の構成及び配列によって制限されるものではないことは自明である。
【０１３５】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【産業上の利用可能性】
【０１３６】
本発明は、多様な形態の保存装置に適用でき、特に、本発明をハードディスクドライブ及び多様な方式のメモリ装置のような保存装置が含まれたデータ保存システムに適用する場合に、データ処理速度を向上させることができる。
【符号の説明】
【０１３７】
１０    ハードディスク・アセンブリ
１２    ディスク
１４    スピンドルモータ
１６    変換器
２０    スライダ
２２    ジンバル・アセンブリ
２４    アクチュエータアーム
２６    ボイスコイル
２８    マグネチック・アセンブリ
３０，２７０    ＶＣＭ
３２    ベアリング・アセンブリ
３４    トラック
１１０    ホスト装置
１２０，２３０    コントローラ
１２０−１    ＣＰＵ
１２０−２    メモリ
１３０，２４０    アクセスリスト生成部
１４０    第１保存装置
１５０，２５０    第２保存装置
１７０，１０００    データ保存システム
２００    ハードディスクドライブ
２１０    プリアンプ
２２０    書き込み／読み取りチャンネル
２６０    ホストインターフェース
４００    アクセスリスト
１０１０    ディスプレイ装置
１０１１    有線または無線の通信ライン
１１００    ハウジングボディ
Ｆ１    論理ブロックアドレス情報フィールド
Ｆ２    セクタ数情報フィールド
Ｆ３    ヒットカウント情報フィールド
Ｌ    アクセス情報セット
【図１】
2010033578.tif 000003
【図２】
2010033578.tif 000004
【図３】
2010033578.tif 000005
【図４】
2010033578.tif 000006
【図５】
2010033578.tif 000007
【図６】
2010033578.tif 000008
【図７】
2010033578.tif 000009
【図８】
2010033578.tif 000010
【図９Ａ】
2010033578.tif 000011
【図９Ｂ】
2010033578.tif 000012
【図９Ｃ】
2010033578.tif 000013
【図１０】
2010033578.tif 000014
【図１１】
2010033578.tif 000015