(57)【要約】【課題】この発明は、ディスク状記録媒体に不揮発性メモリをキャッシュとして情報の記録を行なうものにおいて、省電力化を図り、高速でかつ信頼性の高い情報の書き込み及び読み出し動作を実現することができ、しかも、ユーザにとっての取り扱いを便利にし得るようにした情報記録装置及びその制御方法を提供することを目的としている。【解決手段】コマンドが入力される入力手段（２１）と、ディスク状記録媒体（１４）と、ディスク状記録媒体（１４）に対するキャッシュメモリとなる不揮発性メモリ（１５）と、入力手段（２１）に入力された、不揮発性メモリ（１５）をディスク状記録媒体（１４）に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、不揮発性メモリ（１５）に記録されている情報をディスク状記録媒体（１４）に記録する制御手段（１６）とを備える。【選択図】    図１
2007293987.tif 000002
【特許請求の範囲】
【請求項１】
コマンドが入力される入力手段と、
ディスク状記録媒体と、
前記ディスク状記録媒体に対するキャッシュメモリとなる不揮発性メモリと、
前記入力手段に入力された書き込みコマンドに基づいて情報を前記不揮発性メモリに書き込むこと、前記不揮発性メモリに記録されている情報を所定のタイミングで前記ディスク状記録媒体に記録すること、前記入力手段に入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、前記不揮発性メモリに記録されている情報を前記ディスク状記録媒体に記録することを行なう制御手段とを具備することを特徴とする情報記録装置。
【請求項２】
前記制御手段は、前記入力手段に入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、前記不揮発性メモリに記録されている全ての情報を、前記ディスク状記録媒体に記録させるように制御することを特徴とする請求項１記載の情報記録装置。
【請求項３】
前記制御手段は、前記入力手段に入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、前記不揮発性メモリに記録されている情報のうち、更新日時が、前記ディスク状記録媒体に記録されている情報の更新日時よりも新しい情報を、前記ディスク状記録媒体に記録させるように制御することを特徴とする請求項１記載の情報記録装置。
【請求項４】
前記制御手段は、前記入力手段に入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、予め設定された優先順位に基づいて、前記不揮発性メモリに記録されている情報を、前記ディスク状記録媒体に記録させるように制御することを特徴とする請求項１記載の情報記録装置。
【請求項５】
前記予め設定された優先順位は、前記入力手段に入力された、前記不揮発性メモリに情報を記録することを要求する書き込みコマンドに基づいて、前記不揮発性メモリに書き込まれた情報を最優先とすることを特徴とする請求項４記載の情報記録装置。
【請求項６】
前記制御手段は、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドが入力されてから、次のコマンドに基づく処理を実行するまでの時間に応じて、前記不揮発性メモリに記録されている全ての情報を前記ディスク状記録媒体に記録させる制御と、前記不揮発性メモリに記録されている情報のうち、更新日時が、前記ディスク状記録媒体に記録されている情報の更新日時よりも新しい情報を、前記ディスク状記録媒体に記録させる制御とを選択することを特徴とする請求項１記載の情報記録装置。
【請求項７】
前記ディスク状記録媒体はハードディスクであり、前記不揮発性メモリはフラッシュメモリであることを特徴とする請求項１記載の情報記録装置。
【請求項８】
コマンドが入力される第１の工程と、
前記第１の工程で入力された書き込みコマンドに基づいて、ディスク状記録媒体に対するキャッシュメモリとなる不揮発性メモリに情報を書き込む第２の工程と、
前記第２の工程により前記不揮発性メモリに記録されている情報を、所定のタイミングで前記ディスク状記録媒体に記録する第３の工程と、
前記第１の工程で入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、前記不揮発性メモリに記録されている情報を前記ディスク状記録媒体に記録する第４の工程とを具備することを特徴とする情報記録装置の制御方法。
【請求項９】
前記第４の工程は、前記第１の工程で入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、前記不揮発性メモリに記録されている全ての情報を、前記ディスク状記録媒体に記録させるように制御することを特徴とする請求項８記載の情報記録装置の制御方法。
【請求項１０】
前記第４の工程は、前記第１の工程で入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、前記不揮発性メモリに記録されている情報のうち、更新日時が、前記ディスク状記録媒体に記録されている情報の更新日時よりも新しい情報を、前記ディスク状記録媒体に記録させるように制御することを特徴とする請求項８記載の情報記録装置の制御方法。
【請求項１１】
前記第４の工程は、前記第１の工程で入力された、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、予め設定された優先順位に基づいて、前記不揮発性メモリに記録されている情報を、前記ディスク状記録媒体に記録させるように制御することを特徴とする請求項８記載の情報記録装置の制御方法。
【請求項１２】
前記予め設定された優先順位は、前記第１の工程で入力された、前記不揮発性メモリに情報を記録することを要求する書き込みコマンドに基づいて、前記不揮発性メモリに書き込まれた情報を最優先とすることを特徴とする請求項１１記載の情報記録装置の制御方法。
【請求項１３】
前記第４の工程は、前記不揮発性メモリを前記ディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドが入力されてから、次のコマンドに基づく処理を実行するまでの時間に応じて、前記不揮発性メモリに記録されている全ての情報を前記ディスク状記録媒体に記録させる制御と、前記不揮発性メモリに記録されている情報のうち、更新日時が、前記ディスク状記録媒体に記録されている情報の更新日時よりも新しい情報を、前記ディスク状記録媒体に記録させる制御とを選択することを特徴とする請求項８記載の情報記録装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばハードディスク等のような大容量のディスク状記録媒体に、不揮発性の半導体メモリをキャッシュとして情報の書き込みを行なう情報記録装置及びその制御方法に関する。
【背景技術】
【０００２】
周知のように、近年、ハードディスクは、大容量で信頼性の高い情報記録媒体であり、例えばコンピュータデータ、映像データ、音声データ等の記録用として多方面に普及している。また、ハードディスクは、その形状も携帯用電子機器に搭載されるほど小型化されてきている。
【０００３】
このため、現在、ハードディスクを用いた小型化志向の情報記録装置においては、情報の高速書き込み及び高速読み出しが可能な不揮発性メモリを、ハードディスクに対するキャッシュメモリとして使用することにより、情報の書き込み及び読み出し速度を高めるとともに、ハードディスクの駆動回数、つまり、ハードディスクに対する情報の書き込み及び読み出し回数を削減して、電池電力の節約を図ることが考えられている。
【０００４】
すなわち、この種の情報記録装置は、外部に対しての情報の書き込み及び読み出しを不揮発性メモリに対して行なわせ、ハードディスクに対しては不揮発性メモリとの間で情報転送を行なわせることにより、外部から見た情報の書き込み及び読み出し動作を高速化するとともに、ハードディスクの駆動回数を削減するようにしているもので、ＮＶ（non volatile）−cache対応ＨＤＤ（hard disk drive）とも称されて、規格化されている。
【０００５】
ここで、上記のように情報の書き込み及び読み出し動作の高速化、ハードディスクの駆動回数の削減を図った情報記録装置では、キャッシュとなる不揮発性メモリとしてフラッシュ（flash）メモリを用いることが考えられている。ところで、フラッシュメモリは、書き替えが可能な回数に制限（例えば約１０万回）があり、それを超えると極度にエラーが生じ易くなり信頼性が低くなるという性質を有している。
【０００６】
このため、ハードディスクに不揮発性メモリをキャッシュとして情報の記録を行なうようにした情報記録装置にあっては、ハードディスクの駆動回数を削減して省電力化を図るだけでなく、不揮発性メモリの書き替え回数に制限があることや、ユーザの使い易さ等をも考慮して、情報の書き込み及び読み出し動作を効率的に制御するように改良を施すことが強く要望されている。
【０００７】
特許文献１には、メモリカードとＨＤＤとの両方を搭載した大容量ストレージ媒体が開示されている。この大容量ストレージ媒体は、例えば外部より取得したメモリカードのデータを、磁気記録媒体であるハードディスクにバックアップすることができるとともに、ハードディスクのデータをメモリカードに転送して取り出すことができる。
【０００８】
また、特許文献２には、フラッシュメモリを使用した携帯用の記憶装置が開示されている。この特許文献２では、フラッシュメモリの書き替え回数（例えば１０万回）が多くなるとエラーが発生し易くなるという問題を解決するために、例えば特定領域のみの書き替え回数が多くなるのを抑制するようなデータ管理方法を提供している。
【特許文献１】特開２００４−５５１０２
【特許文献２】特許第３４０７３１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
そこで、この発明は上記事情を考慮してなされたもので、ディスク状記録媒体に不揮発性メモリをキャッシュとして情報の記録を行なうものにおいて、省電力化を図り、高速でかつ信頼性の高い情報の書き込み及び読み出し動作を実現することができ、しかも、ユーザにとっての取り扱いを便利にし得るようにした情報記録装置及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
この発明に係る情報記録装置は、コマンドが入力される入力手段と；ディスク状記録媒体と；ディスク状記録媒体に対するキャッシュメモリとなる不揮発性メモリと；入力手段に入力された書き込みコマンドに基づいて情報を不揮発性メモリに書き込むこと、不揮発性メモリに記録されている情報を所定のタイミングでディスク状記録媒体に記録すること、入力手段に入力された、不揮発性メモリをディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、不揮発性メモリに記録されている情報をディスク状記録媒体に記録することを行なう制御手段とを備えるようにしたものである。
【００１１】
また、この発明に係る情報記録装置の制御方法は、コマンドが入力される第１の工程と、第１の工程で入力された書き込みコマンドに基づいて、ディスク状記録媒体に対するキャッシュメモリとなる不揮発性メモリに情報を書き込む第２の工程と、前記第２の工程により不揮発性メモリに記録されている情報を、所定のタイミングでディスク状記録媒体に記録する第３の工程と、第１の工程で入力された、不揮発性メモリをディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、不揮発性メモリに記録されている情報をディスク状記録媒体に記録する第４の工程とを備えるようにしたものである。
【発明の効果】
【００１２】
上記した発明によれば、不揮発性メモリをディスク状記録媒体に対するキャッシュメモリとして使用する機能を停止させるコマンドに基づいて、不揮発性メモリに記録されている情報をディスク状記録媒体に記録するようにしたので、省電力化を図り、高速でかつ信頼性の高い情報の書き込み及び読み出し動作を実現することができ、しかも、ユーザにとっての取り扱いを便利にすることが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、この発明の実施の形態について図面を参照して詳細に説明する。図１は、この実施の形態で説明する情報記録装置１１の概略を示している。ここで説明する情報記録装置１１としては、Non Volatile Cache Command Proposal for ATA8−ACS Revision5等で規格化されたＮＶ−cache対応ＨＤＤを対象としている。
【００１４】
すなわち、この情報記録装置１１は、バッファとして機能するＳＤＲＡＭ１２、各種の回路ブロックが内蔵された１チップのＬＳＩ１３、大容量のディスク状記録媒体であるハードディスク１４、ハードディスク１４に対するキャッシュとして機能する不揮発性メモリであるフラッシュメモリ１５等を備えている。
【００１５】
このうち、上記ＬＳＩ１３には、情報記録装置１１が各種の処理動作を実行する場合に、その統括的な制御を行なうための制御部となるコントローラ１６が内蔵されている。そして、このＬＳＩ１３には、コントローラ１６と上記ＳＤＲＡＭ１２とを情報転送可能に接続するＳＤＲＡＭ Ｉ／Ｆ（interface）１７、コントローラ１６と上記ハードディスク１４とを情報転送可能に接続するディスクＩ／Ｆ１８、コントローラ１６と上記フラッシュメモリ１５とを情報転送可能に接続するフラッシュメモリＩ／Ｆ１９、コントローラ１６と外部のホスト装置２０とを情報転送可能に接続するホストＩ／Ｆ２１等が内蔵されている。
【００１６】
ここで、上記ホスト装置２０は、例えばＰＣ（personal computer）等である。このホスト装置２０は、例えば所定のアプリケーションソフトウエアを実行する際に、情報記録装置１１を利用して情報の書き込み及び読み出しを実行するとともに、最終的に得られた情報の保存先としても情報記録装置１１を利用することができる。
【００１７】
この場合、ホスト装置２０は、情報記録装置１１に対して情報の書き込みを要求するコマンドや、情報の読み出しを要求するコマンドを発生している。これらのコマンドは、ホストＩ／Ｆ２１を介してコントローラ１６に供給され解析される。
【００１８】
これにより、コントローラ１６は、ＳＤＲＡＭ１２、フラッシュメモリ１５、ハードディスク１４等に対して、ホスト装置２０から供給された情報の書き込みや、ホスト装置２０への情報の読み出し等を、選択的に実行するように制御する。なお、コントローラ１６としては、ＳＤＲＡＭ１２、フラッシュメモリ１５、ハードディスク１４相互間における情報の転送も可能とする機能を有する。
【００１９】
基本的に、コントローラ１６は、ホスト装置２０からの情報の書き込み要求を受けた場合、書き込む情報をフラッシュメモリ１５に記録させる。そして、コントローラ１６は、例えばフラッシュメモリ１５の記録領域がある程度以上使用された場合等、所定のタイミングで、フラッシュメモリ１５に記録された情報をハードディスク１４に転送し保存させる。
【００２０】
また、コントローラ１６は、ホスト装置２０からの情報の読み出し要求を受けた場合、要求された情報をハードディスク１４から読み出してホスト装置２０に出力させる。この場合、要求された情報がフラッシュメモリ１５上に存在していれば、フラッシュメモリ１５から情報を読み出してホスト装置２０に出力させる。
【００２１】
ここにおいて、上記フラッシュメモリ１５に書き込まれる情報（データ）には、エラー訂正コードが付加される。そして、フラッシュメモリ１５から読み出されるデータには、そのエラー訂正コードに基づいたエラー訂正処理が施されることになる。
【００２２】
また、ハードディスク１４に記録されるデータにも、エラー訂正コードが付加される。そして、ハードディスク１４から読み出されるデータには、そのエラー訂正コードに基づいたエラー訂正処理が施されることになる。
【００２３】
この実施の形態では、ハードディスク１４に記録されるデータに施されるエラー訂正処理の方が、フラッシュメモリ１５に記録されるデータに施されるエラー訂正処理に比して、はるかにエラー訂正能力の高い方式が採用されている。すなわち、フラッシュメモリ１５に記録されるデータよりも、ハードディスク１４に記録されるデータの方が、格段に信頼性が高いものとなっている。
【００２４】
また、この実施の形態では、一例として、上記フラッシュメモリ１５は、その情報の書き込み及び読み出しの単位が２Ｋバイトに規定されている。さらに、このフラッシュメモリ１５は、その消去単位が１２８Ｋバイトに規定されている。また、このフラッシュメモリ１５は、その書き込み及び読み出し回数が多くなると素子が劣化し、エラー発生率が高くなる。このため、素子の性能を保証する情報として、書き替え回数を１０万回程度に規定している。
【００２５】
ここで、上記した規格により設定されている、情報記録装置１１の実行可能な各種のコマンドのうち、この実施の形態を説明する上で必要となるものについて説明する。まず、第１のコマンドは、論理ブロックアドレス（ＬＢＡ）を指定して、情報をフラッシュメモリ１５に書き込むことを要求するものである。
【００２６】
また、第２のコマンドは、ハードディスク１４から情報を読み出し、その読み出した情報をフラッシュメモリ１５の指定されたＬＢＡに書き込むことを要求するものである。これら第１または第２のコマンドがホスト装置２０から発生された場合、コントローラ１６は、フラッシュメモリ１５の指定されたＬＢＡに情報を書き込むことが可能となる。
【００２７】
図２は、フラッシュメモリ１５の記録領域を示している。上記した第１及び第２のコマンドのように、フラッシュメモリ１５にＬＢＡを指定して情報が書き込まれる場合、その指定されたＬＢＡで示されるフラッシュメモリ１５の情報記録領域を、ピンド（pinned）領域１５ａと称している。これに対し、フラッシュメモリ１５のピンド領域１５ａ以外の情報記録領域は、アンピンド（unpinned）領域１５ｂと称される。
【００２８】
第３のコマンドは、ＬＢＡのみを指定して情報の書き込みを要求するものである。この第３のコマンドがホスト装置２０から発生された場合、コントローラ１６は、フラッシュメモリ１５の指定されたＬＢＡに情報を書き込むか、ハードディスク１４の指定されたＬＢＡに情報を書き込むかを、自己の判断で決定し実行する。
【００２９】
第４のコマンドは、ＬＢＡのみを指定して情報の読み出しを要求するものである。この第４のコマンドがホスト装置２０から発生された場合、コントローラ１６は、フラッシュメモリ１５の指定されたＬＢＡから情報を読み出すか、ハードディスク１４の指定されたＬＢＡから情報を読み出すかを、自己の判断で決定し実行する。そして、ハードディスク１４から情報を読み出した場合には、その情報をフラッシュメモリ１５にキャッシュするか否かもコントローラ１６が判断する。
【００３０】
上記した第３及び第４のコマンドのように、特にフラッシュメモリ１５が指定されることのない状況でフラッシュメモリ１５に情報が書き込まれた場合にも、そのフラッシュメモリ１５の情報記録領域は、アンピンド領域１５ｂとなる。
【００３１】
第５のコマンドは、フラッシュメモリ１５に対して指定したアドレス分だけ空き領域を作成することを要求するものである。この第５のコマンドがホスト装置２０から発生された場合、コントローラ１６は、フラッシュメモリ１５のアンピンド領域１５ｂの中から、指定されたアドレス分の情報をハードディスク１４に移動させることにより、指定されたアドレス分だけの空き領域をフラッシュメモリ１５に生成する。この場合、アンピンド領域１５ｂの中のどの情報がハードディスク１４に移動されるのか、つまり、フラッシュメモリ１５のどこに空き領域が形成されるのかは、コントローラ１６の判断により決定される。
【００３２】
第６のコマンドは、フラッシュメモリ１５をハードディスク１４に対するキャッシュとして使用する機能を実行させるもので、「Set NV Cache Power Mode」と称される。この第６のコマンドがホスト装置２０から発生された場合、コントローラ１６は、フラッシュメモリ１５に対してアクセスを実行することができる。
【００３３】
つまり、コントローラ１６は、第６のコマンドが供給された状態で、上記した第１乃至第５のコマンドが供給された場合に、フラッシュメモリ１５に対して情報の書き込み及び読み出しを行なうことができるようになる。言い換えれば、ホスト装置２０は、第６のコマンドを発生した上で、上記第１乃至第５のコマンドを発生する必要がある。
【００３４】
第７のコマンドは、フラッシュメモリ１５をハードディスク１４に対するキャッシュとして使用する機能を停止（オフ）させるもので、「Return From NV Cache Power Mode」と称される。この第７のコマンドがホスト装置２０から発生された場合、コントローラ１６は、フラッシュメモリ１５に対してアクセスを実行することができなくなる。
【００３５】
つまり、コントローラ１６は、第７のコマンドが供給された場合、その後、上記第１、第２及び第５のコマンドは実行することができなくなる。また、上記第３及び第４のコマンドに対しては、ハードディスク１４に対する情報の書き込み及び読み出しのみを実行するように動作する。
【００３６】
次に、上記フラッシュメモリＩ／Ｆ１９について説明する。このフラッシュメモリＩ／Ｆ１９は、コントローラ１６とフラッシュメモリ１５とを情報転送可能に接続する機能を有する外に、図３に示すように、各種のカウンタ１９ａ〜１９ｅが設けられている。これらカウンタ１９ａ〜１９ｅの各カウント値は、例えばフラッシュメモリＩ／Ｆ１９内に設けられた図示しない不揮発性メモリに保存される。なお、カウント値の保存には、フラッシュメモリ１５が利用されることも可能である。
【００３７】
まず、カウンタ１９ａは、製造時からの書き込み回数を累積カウントするものである。カウンタ１９ｂは、製造時からの消去回数を累積カウントするものである。カウンタ１９ｃは、製造時からの（または電源投入毎にリセットされるように）書き込みエラー回数を累積カウントするものである。カウンタ１９ｄは、製造時からの（または電源投入毎にリセットされるように）読み出しエラー回数を累積カウントするものである。カウンタ１９ｅは、ＥＣＣ処理により検出されるエラー回数、または、ＥＣＣ処理によるエラー訂正回数を累積カウントするものである。これら各カウンタ１９ａ〜１９ｅのカウント値に基づいて、フラッシュメモリ１５の劣化状況を判断することができる。
【００３８】
図４は、上記コントローラ１６の一例を示している。このコントローラ１６は、ホスト装置２０から供給されたコマンドをデコード処理し解析するコマンド解析部１６ａを有する。このコマンド解析部１６ａの解析結果により、アーキテクチャメモリ１６ｂ内のソフトウエアが特定され、シーケンスコントローラ１６ｃに動作手順が設定される。
【００３９】
このシーケンスコントローラ１６ｃは、Ｉ／Ｆ及びバスコントローラ１６ｄを介して、情報の流れを制御する。例えば、情報の書き込みまたは読み出しが行なわれるときは、メディア選択部１６ｅがフラッシュメモリ１５またはハードディスク１４を特定し、アドレス制御部１６ｆが書き込みアドレスまたは読み出しアドレスを特定する。
【００４０】
そして、情報の書き込み時には、書き込み処理部１６ｇが書き込み情報の転送処理等を実行する。また、情報の読み出し時には、読み出し処理部１６ｈが読み出し情報の転送処理等を実行する。
【００４１】
さらに、コントローラ１６には、消去処理部１６ｉが設けられている。この消去処理部１６ｉは、フラッシュメモリ１５に記録された情報の消去処理を実行する。また、この消去処理部１６ｉは、ハードディスク１４に記録された情報の消去処理も実行することができる。
【００４２】
また、コントローラ１６には、アドレス管理部１６ｊが設けられている。このアドレス管理部１６ｊは、フラッシュメモリ１５及びハードディスク１４の記録済み領域や未記録領域等のアドレスを一括して管理している。さらに、コントローラ１６には、ハードディスク１４の駆動状態を監視するための状態判定部１６ｋが設けられている。
【００４３】
図５は、上記ホスト装置２０の一例を示している。このホスト装置２０は、ユーザが操作するための操作部２０ａと、この操作部２０ａの操作に基づいて外部ネットワークや所定の情報記録媒体から情報の取得を行なうための入力部２０ｂとを有する。
【００４４】
また、このホスト装置２０は、入力部２０ｂで取得した情報に所定の信号処理を施すとともに、情報記録装置１１に対するコマンドを生成する処理部２０ｃと、この処理部２０ｃの処理結果を表示するための表示部２０ｄとを有する。
【００４５】
さらに、このホスト装置２０は、処理部２０ｃの処理結果である情報やコマンドを、接続端子２０ｅを介して外部（情報記録装置１１）に出力するとともに、外部（情報記録装置１１）から接続端子２０ｅを介して入力された情報を処理部２０ｃに供給するＩ／Ｆ２０ｆを備えている。
【００４６】
ここで、先に述べたように、フラッシュメモリ１５は、ハードディスク１４に対するキャッシュとして使用されるもので、上記第６のコマンドが発生された状態では、ホスト装置２０からの情報の書き込み要求を受けた場合、書き込む情報を一旦記録し、所定のタイミングでハードディスク１４に転送し保存させるように機能する。
【００４７】
このため、フラッシュメモリ１５には、ハードディスク１４に記録されている情報と同じ情報か、または、ハードディスク１４に最後に情報が記録された後で、ホスト装置２０から書き込み要求された情報が記録されていることになる。
【００４８】
つまり、フラッシュメモリ１５に記録されている情報の更新日時と、ハードディスク１４に記録されている情報の更新日時とを比較すると、フラッシュメモリ１５には、ハードディスク１４に記録されている情報の更新日時と同じ更新日時を持つ情報か、ハードディスク１４に記録された情報の更新日時よりも新しい更新日時を持つ情報が記録されている可能性を持っている。
【００４９】
一方、前述したように、ハードディスク１４に記録されるデータに施されるエラー訂正処理は、フラッシュメモリ１５に記録されるデータに施されるエラー訂正処理に比して、はるかにエラー訂正能力が高く、フラッシュメモリ１５に記録されるデータよりも、ハードディスク１４に記録されるデータの方が、格段に信頼性が高いものとなっている。
【００５０】
また、フラッシュメモリ１５は、ハードディスク１４に比べて壊れ易く、そこに記録される情報の信頼性がハードディスク１４に比べて格段に低くなっている。すなわち、情報は、フラッシュメモリ１５に記録しておくよりも、ハードディスク１４に記録しておく方が、信頼性の高い状態で保存されることになる。
【００５１】
ところで、先に述べた、フラッシュメモリ１５をハードディスク１４に対するキャッシュとして使用する機能を停止（オフ）させる第７のコマンドが発生された場合、コントローラ１６は、フラッシュメモリ１５にアクセスすることができなくなる。このため、第７のコマンドの発生以前にフラッシュメモリ１５に記録された情報に、ハードディスク１４にまだ書き込んでいないものが含まれていたとしても、その情報をハードディスク１４に書き込んで信頼性の高い状態で保存することができなくなる。
【００５２】
上記した規格では、第７のコマンドが発生された場合、フラッシュメモリ１５に記録された情報（ピンド領域１５ａ及びアンピンド領域１５ｂを問わず）の取り扱いについて定義されていないため、フラッシュメモリ１５に記録された情報がハードディスク１４に保存される前に壊れると、情報記録装置１１は、ホスト装置２０からの読み出しコマンドに対して正しい情報を出力することができなくなる。
【００５３】
そこで、この実施の形態では、フラッシュメモリ１５をハードディスク１４に対するキャッシュとして使用する機能を停止（オフ）させる第７のコマンドが発生された場合に、ピンド領域１５ａ及びアンピンド領域１５ｂを問わず、フラッシュメモリ１５に記録された情報を自動的にハードディスク１４に転送させるようにしている。
【００５４】
図６は、第７のコマンドが発生された場合に、コントローラ１６がフラッシュメモリ１５に記録された情報を自動的にハードディスク１４に転送させる処理動作の一例を示している。すなわち、処理が開始（ステップＳ１）されると、コントローラ１６は、ステップＳ２で、第７のコマンドが入力されたか否かを判別する。そして、第７のコマンドが入力されたと判断された場合（ＹＥＳ）、コントローラ１６は、ステップＳ３で、フラッシュメモリ１５に記録されている全ての情報をハードディスク１４に転送して記録させ、処理を終了（ステップＳ４）する。
【００５５】
図６に示した動作例によれば、第７のコマンドが入力されたとき、フラッシュメモリ１５に記録されている全情報を自動的にハードディスク１４に記録させるようにしたので、フラッシュメモリ１５に記録された情報が壊れたとしても、ハードディスク１４に正しい情報が記録されている可能性を大幅に高めることが可能となる。
【００５６】
これにより、ホスト装置２０からの読み出しコマンドに対して、ハードディスク１４から正しい情報を読み出して出力することができるようになり、高速でかつ信頼性の高い情報の書き込み及び読み出し動作を実現することができ、しかも、ユーザにとっての取り扱いを便利にすることができる。
【００５７】
図７は、第７のコマンドが発生された場合に、コントローラ１６がフラッシュメモリ１５に記録された情報を自動的にハードディスク１４に転送させる処理動作の他の例を示している。すなわち、処理が開始（ステップＳ５）されると、コントローラ１６は、ステップＳ６で、第７のコマンドが入力されたか否かを判別する。
【００５８】
そして、第７のコマンドが入力されたと判断された場合（ＹＥＳ）、コントローラ１６は、ステップＳ７で、フラッシュメモリ１５に記録されている情報のうち、更新日時が、ハードディスク１４に記録されている情報の更新日時よりも新しい情報のみを、ハードディスク１４に転送して記録させ、処理を終了（ステップＳ８）する。
【００５９】
図７に示した動作例によれば、第７のコマンドが入力されたとき、フラッシュメモリ１５に記録されている情報のうち、更新日時が、ハードディスク１４に記録されている情報の更新日時よりも新しい情報のみを、ハードディスク１４に転送して記録させるようにしている。このため、フラッシュメモリ１５に記録されている全情報をハードディスク１４に記録する場合に比して、転送時間を短縮することができる。
【００６０】
図８は、第７のコマンドが発生された場合に、コントローラ１６がフラッシュメモリ１５に記録された情報を自動的にハードディスク１４に転送させる処理動作のさらに他の例を示している。すなわち、処理が開始（ステップＳ９）されると、コントローラ１６は、ステップＳ１０で、第７のコマンドが入力されたか否かを判別する。
【００６１】
そして、第７のコマンドが入力されたと判断された場合（ＹＥＳ）、コントローラ１６は、ステップＳ１１で、予め設定された優先順位に基づいて、フラッシュメモリ１５に記録されている情報をハードディスク１４に転送して記録させ、処理を終了（ステップＳ１２）する。
【００６２】
上記ステップＳ１１における予め設定された優先順位とは、例えば、上記第１のコマンドのように、フラッシュメモリ１５に書き込むことを要求するコマンドに基づいてフラッシュメモリ１５に書き込まれた情報を最優先とし、次に、上記第３のコマンドのように、コントローラ１６の判断でフラッシュメモリ１５に書き込まれた情報を優先とする。
【００６３】
図８に示した動作例によれば、第７のコマンドが発生された場合に、予め設定された優先順位に基づいて、フラッシュメモリ１５に記録されている情報をハードディスク１４に転送して記録させるようにしている。このため、第７のコマンドが発生されてから、コントローラ１６が次のコマンドに基づく処理を実行するまでの時間に制限がある場合に、その制限時間の範囲内で必要な情報からハードディスク１４に記録させることができる。
【００６４】
また、上記図６乃至図８に示した処理動作を適宜組み合わせることも可能である。例えば、第７のコマンドが発生されてから、コントローラ１６が次のコマンドに基づく処理を実行するまでに所定以上の時間がある場合には、図６に示した処理動作を選択し、所定以上の時間を確保することができない場合には、図７に示した処理動作を選択するように制御することも可能である。
【００６５】
なお、この発明は上記した実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を種々変形して具体化することができる。また、上記した実施の形態に開示されている複数の構成要素を適宜に組み合わせることにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除しても良いものである。さらに、異なる実施の形態に係る構成要素を適宜組み合わせても良いものである。
【図面の簡単な説明】
【００６６】
【図１】この発明の実施の形態を示すもので、情報記録装置の概略を説明するために示すブロック構成図。
【図２】同実施の形態における情報記録装置に用いられたフラッシュメモリの記録領域を説明するために示す図。
【図３】同実施の形態における情報記録装置に用いられたフラッシュメモリＩ／Ｆのカウンタを説明するために示す図。
【図４】同実施の形態における情報記録装置に用いられたコントローラの一例を説明するために示すブロック構成図。
【図５】同実施の形態における情報記録装置に接続されたホスト装置の一例を説明するために示すブロック構成図。
【図６】同実施の形態におけるコントローラの処理動作の一例を説明するために示すフローチャート。
【図７】同実施の形態におけるコントローラの処理動作の他の例を説明するために示すフローチャート。
【図８】同実施の形態におけるコントローラの処理動作のさらに他の例を説明するために示すフローチャート。
【符号の説明】
【００６７】
１１…情報記録装置、１２…ＳＤＲＡＭ、１３…ＬＳＩ、１４…ハードディスク、１５…フラッシュメモリ、１６…コントローラ、１７…ＳＤＲＡＭ Ｉ／Ｆ、１８…ディスクＩ／Ｆ、１９…フラッシュメモリＩ／Ｆ、２０…ホスト装置、２１…ホストＩ／Ｆ。
【図１】
2007293987.tif 000003
【図２】
2007293987.tif 000004
【図３】
2007293987.tif 000005
【図４】
2007293987.tif 000006
【図５】
2007293987.tif 000007
【図６】
2007293987.tif 000008
【図７】
2007293987.tif 000009
【図８】
2007293987.tif 000010