(57)【要約】【課題】ソリッドステートメモリ、それを含むコンピュータシステム及びその動作方法を提供する。【解決手段】第１及び第２メモリレイヤを含むソリッドステートメモリにデータを保存する本発明による保存方法は、受信したデータがホットデータとコールドデータのうちどちらであるかを判別する第１評価動作を遂行するステップと、第１評価動作時、ホットデータと判別されたデータを第１メモリレイヤに保存するステップと、第１評価動作時、コールドデータと判別されたデータを第２メモリレイヤに保存するステップと、第１メモリレイヤに保存されたデータがホットデータとコールドデータのうちどちらであるかを判別する第２評価動作を遂行するステップと、第２評価動作時、コールドデータと判別されたデータを前記第１メモリレイヤから第２メモリレイヤに移動させるステップと、を含む。【選択図】      図１
2013242908.tif 000002
【特許請求の範囲】
【請求項１】
第１及び第２メモリレイヤを含むソリッドステートメモリにデータを保存する保存方法であって、
受信したデータがホットデータとコールドデータのうちどちらであるかを判別する第１評価動作を遂行するステップと、
前記第１評価動作時、ホットデータと判別されたデータを前記第１メモリレイヤに保存するステップと、
前記第１評価動作時、コールドデータと判別されたデータを前記第２メモリレイヤに保存するステップと、
前記第１メモリレイヤに保存されたデータがホットデータとコールドデータのうちどちらであるかを判別する第２評価動作を遂行するステップと、
前記第２評価動作時、コールドデータと判別されたデータを前記第１メモリレイヤから前記第２メモリレイヤに移動させるステップと、を含むことを特徴とする保存方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリシステムに係り、特に、ソリッドステートメモリ（ＳＳＭ：Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｍｅｍｏｒｙ）、それを含むコンピュータシステム及びその動作方法に関する。
【背景技術】
【０００２】
ソリッドステートドライブ（ＳＳＤ：Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）は従来のハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）をエミュレート（Ｅｍｕｌａｔｅ）し、多くの応用分野でハードディスクドライブに替わるデータ記憶装置である。ハードディスクドライブのようなディスク回転媒体と異なり、ＳＳＤはデータを保存するために固定メモリを用いる。駆動部が存在しないため、ＳＳＤは従来のハードディスクドライブにおいて発生するシーク時間、待ち時間、そして他の電気的及び機械的な遅延と欠陥を防止することができる。
【０００３】
一般的にＳＳＤは、不揮発性メモリのＮＡＮＤフラッシュメモリ又は揮発性メモリのＳＤＲＡＭからなる。
ＳＤＲＡＭのような揮発性メモリに基づくＳＳＤは、高速のデータアクセス速度を有することを特徴とし、主にディスクドライブの待ち時間によって遅延したアプリケーションの速度を速くするために用いられる。ＤＲＡＭに基づくＳＳＤの不揮発性メモリは、データの持続性のために内部バッテリ及びバックアップディスクシステムを必要とする。電源が遮断されると、バッテリはＳＤＲＡＭからデータをバックアップディスクシステムにコピーするために十分な時間の間、電源を供給する。電源が復旧すると、データはバックアップシステムからＳＤＲＡＭにコピーされ、ＳＳＤは正常に動作を再開する。
【０００４】
しかし、ほとんどのＳＳＤ生産者はＤＲＡＭに基づくＳＳＤより小型のＳＳＤを生産するために、不揮発性フラッシュメモリを用いる。フラッシュドライブとして知られるフラッシュメモリに基づくＳＳＤはバッテリを必要としないため、生産者はフラッシュメモリに基づくＳＳＤを用いて簡単にＨＤＤからＳＳＤに替えることができる。また、不揮発性フラッシュメモリに基づくＳＳＤは、電源が遮断されても記録データを保存する。
【０００５】
この分野でよく知られているように、シングルレベルセル（ＳＬＣ：Ｓｉｎｇｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）フラッシュメモリは、メモリセル一つに１ビットを保存できる。マルチレベルセル（ＭＬＣ：Ｍｕｌｔｉ  Ｌｅｖｅｌ  Ｃｅｌｌ）フラッシュメモリは、メモリセル一つに２又はそれ以上のビットを保存できる。従って、記憶容量を増加させるためにフラッシュメモリに基づくＳＳＤはマルチレベルセルメモリバンクを用いる。
【０００６】
しかし、フラッシュメモリに基づくＳＳＤは、ランダム書き込み速度が相対的に遅い。マルチレベルセルフラッシュメモリの動作速度は、シングルレベルセルフラッシュメモリの動作速度より遅いため、マルチレベルセルフラッシュメモリを用いるＳＳＤのランダム書き込み速度はさらに遅くなる。従って、二つのタイプのフラッシュ記憶装置を具備する方法が提案されている。即ち、ＳＳＤに小さい記憶容量を有するシングルレベルセルメモリバンクと大きい記憶容量を有するマルチレベルセルメモリバンクとを具備する方法が提案されている。
【０００７】
かかる構成によれば、ディレクトリ、そして／又はログ情報のように頻繁に利用されるデータはシングルレベルセルメモリバンクに保存され、音楽ファイル、映像ファイルなどのように頻繁に利用されないデータはマルチレベルセルバンクに保存される。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−３０２２５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明の目的は、向上した書き込み速度を有する半導体ドライブ及びそれの書き込み方法を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成すべく、第１及び第２メモリレイヤを含むソリッドステートメモリにデータを保存する本発明による保存方法は、受信したデータがホットデータとコールドデータのうちどちらであるかを判別する第１評価動作を遂行するステップと、前記第１評価動作時、ホットデータと判別されたデータを前記第１メモリレイヤに保存するステップと、前記第１評価動作時、コールドデータと判別されたデータを前記第２メモリレイヤに保存するステップと、前記第１メモリレイヤに保存されたデータがホットデータとコールドデータのうちどちらであるかを判別する第２評価動作を遂行するステップと、前記第２評価動作時、コールドデータと判別されたデータを前記第１メモリレイヤから前記第２メモリレイヤに移動させるステップと、を含むことを特徴とする。
【００１１】
本発明の実施の形態による前記第１メモリレイヤの動作速度は、前記第２メモリレイヤの動作速度より速い。前記第１及び第２メモリレイヤは、異なるタイプのメモリセルで構成される。
本発明の実施の形態による前記第１メモリレイヤはシングルレベルフラッシュメモリセルで構成され、前記第２メモリレイヤはマルチレベルフラッシュメモリセルで構成される。
【００１２】
本発明の実施の形態による前記第１及び第２メモリレイヤは、マルチレベルフラッシュメモリセルで構成され、データは前記第１メモリレイヤのマルチレベルフラッシュメモリセルの最下位ビットに保存される。
本発明の実施の形態による前記第１及び第２メモリレイヤは、同じタイプのメモリセルで構成される。前記第１メモリレイヤのマッピンググレーンは、前記第２メモリレイヤのマッピンググレーンより細密である。前記第１及び第２メモリレイヤはシングルレベルフラッシュメモリセルで構成される。
【００１３】
本発明の実施の形態による前記第１及び第２メモリレイヤは、マルチレベルフラッシュメモリセルで構成される。
本発明の実施の形態による前記第１評価動作時、コールドデータと判別されたデータは、前記第２メモリレイヤに保存されるまで前記第１メモリレイヤに一時的に保存される。
本発明の実施の形態による前記第２評価動作を遂行するステップは、前記第１メモリレイヤの未使用の記憶容量がしきい値よりも小さいかどうかを判別するステップを含む。
本発明の実施の形態による前記第２評価動作は、周期的に又は前記ソリッドステートメモリがアイドル（Ｉｄｌｅ）状態である場合に遂行される。
【００１４】
本発明の実施の形態による前記第１及び第２メモリレイヤは、ソリッドステートドライブ内に含まれる。
本発明の実施の形態による前記第１及び第２メモリレイヤは、コンピュータシステムのメインメモリに含まれる。
受信したデータをソリッドステートメモリに保存する本発明の実施の形態による保存方法は、ホットデータを高速メモリレイヤに保存するステップと、前記高速メモリレイヤに保存されたデータの一部をコールドデータを保存するための低速メモリレイヤに移動させるステップと、を含む。
【００１５】
本発明の実施の形態による前記高速及び低速メモリレイヤは、異なるタイプのメモリセルで構成される。
本発明の実施の形態による前記高速及び低速メモリレイヤは、同じタイプのメモリセルで構成される。
【００１６】
本発明の実施の形態によるソリッドステートメモリシステムは、第１メモリレイヤと、第２メモリレイヤと、受信したデータがホットデータとコールドデータのうちどちらであるかを判別する第１評価動作を遂行し、前記第１評価動作時、ホットデータと判別されたデータを前記第１メモリレイヤに保存し、前記第１評価動作時、コールドデータと判別されたデータを前記第２メモリレイヤに保存するように構成されるメモリ制御器と、を含む。前記メモリ制御器は、前記第１メモリレイヤに保存されているデータがホットデータとコールドデータのうちどちらであるかを判別する第２評価動作を遂行し、前記第２評価動作時、コールドデータと判別されたデータを前記第１メモリレイヤから前記第２メモリレイヤに移動させるように構成される。前記メモリ制御器は、相違する複数のデータチャンネルを通じて前記第１及び第２メモリレイヤに連結される。
【００１７】
本発明の実施の形態による前記メモリ制御器は、共通のデータチャンネルを通じて前記第１及び第２メモリレイヤにそれぞれ連結される。
本発明の実施の形態による前記第１メモリレイヤの動作速度は、前記第２メモリレイヤの動作速度より速い。前記第１及び第２メモリレイヤは、相違するタイプのメモリセルで構成される。
本発明の実施の形態による前記第１及び第２メモリレイヤは、同じタイプのメモリセルで構成される。
【００１８】
本発明の実施の形態による前記第１評価動作時、コールドデータと判別されたデータは、前記第２メモリレイヤに保存されるまで前記第１メモリレイヤに一時的に保存される。
本発明の実施の形態による前記第１及び第２メモリレイヤは、ソリッドステートドライブ内に含まれる。
本発明の実施の形態による前記第１及び第２メモリレイヤは、コンピュータシステムのメインメモリ内に含まれる。
【００１９】
コンピュータオペレーティングシステムに機能的に連結される本発明の実施の形態によるソリッドステートメモリシステムは、第１及び第２メモリレイヤを含み、前記第１メモリレイヤの動作速度は、前記第２メモリレイヤの動作速度より速い。前記ソリッドステートメモリシステムが、前記コンピュータオペレーティングシステムに機能的に連結されている場合、前記第１メモリレイヤは、前記コンピュータオペレーティングシステムに対する非公開（ｈｉｄｄｅｎ）領域である。
【００２０】
本発明の実施の形態による前記ソリッドステートメモリは、受信したデータがホットデータとコールドデータのうちどちらであるかを判別する第１評価動作を遂行し、前記第１評価動作時、ホットデータと判別されたデータを前記第１メモリレイヤに保存し、前記第１評価動作時、コールドデータと判別されたデータを前記第２メモリレイヤに保存するように構成されるメモリ制御器をさらに含む。前記メモリ制御器は、前記第１メモリレイヤに保存されているデータがホットデータとコールドデータのうちどちらであるかを判別する第２評価動作を遂行し、前記第２評価動作時、コールドデータと判別されたデータを前記第１メモリレイヤから前記第２メモリレイヤに移動させる。
【００２１】
本発明の実施の形態によるコンピュータシステムは、プロセッサ及びソリッドステートメモリを含み、前記ソリッドステートメモリは、高速メモリレイヤ及び低速メモリレイヤを含み、前記高速メモリレイヤは、前記プロセッサに対する非公開領域であることを特徴とする。
【００２２】
本発明の実施の形態による前記ソリッドステートメモリは、受信したデータがホットデータとコールドデータのうちどちらであるかを判別する第１評価動作を遂行し、前記第１評価動作時、ホットデータと判別されたデータを前記高速メモリレイヤに保存し、前記第１評価動作時、コールドデータと判別されたデータを前記低速メモリレイヤに保存するように構成されるメモリ制御器と、をさらに含む。前記メモリ制御器は、前記高速メモリレイヤに保存されているデータがホットデータとコールドデータのうちどちらであるかを判別する第２評価動作を遂行し、前記第２評価動作時、コールドデータと判別されたデータを前記高速メモリレイヤから前記低速メモリレイヤに移動させる。
【００２３】
本発明の実施の形態による前記メモリは、ソリッドステートドライブである。
本発明の実施の形態による前記メモリは、メインメモリである。
【発明の効果】
【００２４】
本発明によれば、高速不揮発性メモリを用いて書き込み動作を支援し、高速不揮発性メモリに保存されているデータの全部又は一部は低速不揮発性メモリに保存する。従って、書き込みにおける性能が全般的に向上する。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施の形態によるソリッドステートドライブを示すブロック図である。
【図２】図１の本発明の実施の形態によるＳＳＤの不揮発性記憶媒体を説明するためのブロック図である。
【図３】図１の本発明の実施の形態によるＳＳＤの不揮発性記憶媒体を説明するためのブロック図である。
【図４】図１の本発明の実施の形態によるＳＳＤの不揮発性記憶媒体をインタフェースに連結する方法を示すブロック図である。
【図５】図１の本発明の実施の形態によるＳＳＤの不揮発性記憶媒体をインタフェースに連結する方法を示すブロック図である。
【図６】本発明の実施の形態による第１評価動作及びＳＳＤにデータを保存する動作を説明するためのフローチャートである。
【図７】本発明の実施の形態による第１評価動作及びＳＳＤにデータを保存（書き込み）する動作を説明するためのフローチャートである。
【図８】本発明の実施の形態による第２評価動作及びＳＳＤの低速不揮発性メモリ１４２０にデータを移動させる方法を説明するためのフローチャートである。
【図９】本発明の実施の形態によるコンピュータシステムを示すブロック図である。
【図１０】高速メモリレイヤ及び低速メモリレイヤが図９のコンピュータシステムを構成する実施の形態を示すブロック図である。
【図１１】図９のメインメモリの他の実施の形態を示すブロック図である。
【発明を実施するための形態】
【００２６】
以下、本発明の属する技術の分野における通常の知識を有する者であれば、本発明の技術的思想を容易に理解できるように詳細に説明するために、本発明の実施の形態を添付図面に基づき説明する。しかし、本発明の技術的思想は、実施の形態により限定されるものと解釈されてはならない。
【００２７】
図１は、本発明の実施の形態によるソリッドステートドライブ（ＳＳＤ：Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）１０００を示すブロック図である。図１に示すように、ＳＳＤ１０００は、ＳＳＤ制御器１２００及び不揮発性記憶媒体１４００を含む。
ＳＳＤ制御器１２００は、第１及び第２インタフェース１２１０、１２３０、コントローラ１２２０及びメモリ１２４０を含む。
【００２８】
第１インタフェース１２１０は、中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、図示せず）のようなホストとインタフェースするデータ入出力のための装置である。一例として、第１インタフェース１２１０は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース、ＡＴＡ（Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）インタフェース、ＳＡＴＡ（Ｓｅｒｉａｌ  ＡＴＡ）インタフェース、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｍａｌｌ  Ｉｎｔｅｒｆａｃｅ）インタフェースを含む。
【００２９】
第２インタフェース１２３０は、不揮発性記憶媒体１４００とインタフェースするデータ入出力のための装置である。さらに詳しく説明すると、第２インタフェース１２３０は、多様な命令、アドレス、そしてデータを不揮発性記憶媒体１４００に伝送するかまたは不揮発性記憶媒体１４００から受信するために利用される。当分野における通常の知識を有する者によく知られているように、第２インタフェース１２３０は、多様な構造及び構成で具現され得る。従って、説明の簡略化のためにそれについての詳細な説明は省略する。
【００３０】
コントローラ１２２０及びメモリ１２４０は、第１インタフェース１２１０及び第２インタフェース１２３０の間に接続され、ホスト（図示せず）及び不揮発性記憶媒体１４００の間におけるデータの流れを制御／管理する。一例として、メモリ１２４０はＤＲＡＭであり得る。一例として、コントローラ１２２０は、中央処理装置（ＣＰＵ）、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）制御器、ＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｎｔｒｏｌ）エンジンを有する。例示的なコントローラは、米国公開特許の第２００６−０１５２９８１号に掲載されており、本発明の参照文献として含まれる。
【００３１】
ホストとＳＳＤメモリバンクとの間でデータを伝送するために、コントローラ１２２０によって遂行される動作は、この分野における通常の知識を有する者に容易に理解できるはずである。従って、説明の簡略化のために、それについての詳細な説明は省略する。また、以下では、本発明の進歩性に重点をおいて多様な実施の形態を説明する。
【００３２】
図１に示すように、不揮発性記憶媒体１４００は、高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０を含む。名称から明らかであるように、高速不揮発性メモリ１４１０はランダム書き込みのような動作時、低速不揮発性メモリ１４２０に比べて相対的に速い速度で動作する。
【００３３】
一例として、高速不揮発性メモリ１４１０はシングルレベルセルフラッシュメモリであって、低速不揮発性メモリ１４２０はマルチレベルセルフラッシュメモリであり得る。しかし、本発明は、シングルレベルセルフラッシュメモリ又はマルチレベルセルフラッシュメモリに限定されない。例えば、高速不揮発性メモリ１４１０は相変化メモリ（ＰＲＡＭ：Ｐｈａｓｅ  Ｃｈａｎｇｅ  ＲＡＭ）又は一つのセルに１ビットを保存するマルチレベルセルフラッシュメモリであり得る。又は、高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０は、同じタイプのメモリ（例えば、シングルレベルセルフラッシュメモリ、マルチレベルセルフラッシュメモリ、相変化メモリ）で構成され、動作速度はマッピング方法によって異なるようにする。一例として、高速不揮発性メモリ１４１０にファイングレーンマッピング（Ｆｉｎｅ  Ｇｒａｉｎ  Ｍａｐｐｉｎｇ）を用い、低速不揮発性メモリ１４２０にはコアースグレーンマッピング（Ｃｏａｒｓｅ  Ｇｒａｉｎ  Ｍａｐｐｉｎｇ）を用いる。
【００３４】
一般的に、高速不揮発性メモリ１４１０は、メタデータ（Ｍｅｔａ  Ｄａｔａ）のように頻繁にアクセス（書き込み）されるデータを保存するために用いられる。低速不揮発性メモリ１４２０は、メディアデータ（Ｍｅｄｉａ  Ｄａｔａ）のように頻繁にアクセス（書き込み）されないデータを保存するために用いられる。即ち、統計的に高速不揮発性メモリ１４１０のデータ書き込み頻度は低速不揮発性メモリ１４２０のデータ書き込み頻度より高い。また、それぞれのメモリに保存されるデータの特性により、低速不揮発性メモリ１４２０の記憶容量は、高速不揮発性メモリ１４１０の記憶容量より大きい。
【００３５】
一例として、高速不揮発性メモリ１４１０はＳＳＤに連結された外部のオペレーティングシステム（ＯＳ：Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）によりアクセスされない。これを示す実施の形態が図２及び図３に図示されている。
【００３６】
図２及び図３は、図１の本発明の実施の形態によるＳＳＤの不揮発性記憶媒体を説明するためのブロック図である。図２及び図３に示すように、本発明の実施の形態による高速不揮発性メモリ１４１０は非公開（ｈｉｄｄｅｎ）領域である。即ち、外部のオペレーティングシステム（ＯＳ）から高速不揮発性メモリ１４１０に直接アクセスすることはできない。オペレーティングシステムの視点から見えるアドレス領域は、低速不揮発性メモリ１４２０だけである。その反面、フラッシュトランスレーションレイヤ（ＦＴＬ：Ｆｌａｓｈ  Ｔｒａｎｓｌａｔｉｏｎ  Ｌａｙｅｒ）の視点から見えるアドレス領域は、高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０を全て含む。フラッシュトランスレーションレイヤは、オペレーティングシステムから提供されるアドレスを不揮発性記憶媒体１４００の物理アドレスに変換する。一例として、オペレーティングシステムから提供されるアドレスは、高速不揮発性メモリ１４１０又は低速不揮発性メモリ１４２０の物理アドレスに変換される。
【００３７】
図４及び図５は、図１の本発明の実施の形態によるＳＳＤの不揮発性記憶媒体をインタフェースに連結する方法を示すブロック図である。図４及び図５に示すように、高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０をインタフェース１２３０を介してコントローラ１２２０（図１を参照）に連結する多様な実施の形態が図示されている。
【００３８】
図４の実施の形態における高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０は、共通のインタフェースチャンネルを利用してインタフェース１２３０を介してコントローラ１２２０と通信する。図５の実施の形態における高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０は、別々のインタフェースチャンネルを利用してインタフェース１２３０を介してコントローラ１２２０と通信する。
【００３９】
上述のように、高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０は異なるタイプのメモリである必要はない。即ち、一つのタイプのメモリが高速レイヤ及び低速レイヤに分離され得る。この場合、例えば、二つのレイヤのグレーンマッピングが相違するか、一つのセルに保存されるビット数が二つのレイヤにおいて相違する。
【００４０】
一例として、高速メモリレイヤ及び低速メモリレイヤはチップレベルで分離され得る。例えば、高速メモリレイヤ及び低速メモリレイヤは、相違するメモリチップに含まれる。他の例として、高速メモリレイヤ及び低速メモリレイヤは、同一のメモリチップに含まれる。例えば、高速メモリレイヤ及び低速メモリレイヤは、同一のメモリチップ内の異なるメモリブロック又は異なるメモリセルのグループに含まれる。
【００４１】
以下、本発明の実施の形態によるＳＳＤの動作を説明する。
データをＳＳＤに保存する本発明の実施の形態によれば、受信したデータがホット（Ｈｏｔ）データとコールド（Ｃｏｌｄ）データのうちどちらであるかを判別する第１評価動作が遂行される。ホットデータがディレクトリ情報そして／又はログ情報のように書き込み及び更新の頻度が高いデータであるということは、この分野における通常の知識を有する者に容易に理解できるはずである。即ち、ホットデータは書き込みアクセス頻度の高いデータである。
【００４２】
コールドデータはホットデータでないデータである。例えば、コールドデータは、映像ファイル、音声ファイル、プログラムコードなどのように、書き込み又は更新の頻度が低いデータである。コールドデータは、一度又は低い頻度で書き込まれ、高い頻度で読み出されるデータである。即ち、ホットデータとコールドデータとを区別する基準は、書き込みアクセスの頻度である。
【００４３】
受信したデータのうち、第１評価動作時ホットデータと判別されたデータは高速不揮発性メモリ１４１０に保存される。 受信したデータのうち、第１評価動作時、コールドデータと判別されたデータは、低速不揮発性メモリ１４２０に保存される。
【００４４】
次に、高速不揮発性メモリ１４１０に保存されたデータがホットデータとコールドデータのうちどちらであるかを判別する第２評価動作が遂行される。即ち、高速不揮発性メモリ１４１０に保存されたデータをコールドデータに再分類すべきであるかを判別するため、高速不揮発性メモリ１４１０に保存されたデータが再評価される。第２評価動作時、コールドデータと判別されたデータは、高速不揮発性メモリ１４１０から低速不揮発性メモリ１４２０に移動される。
【００４５】
ホットデータと判別されたデータを高速不揮発性メモリ１４１０から低速不揮発性メモリ１４２０に周期的に移動させることにより、ＳＳＤに要求される高速不揮発性メモリ１４１０の記憶容量の大きさ及び空間の広さが減少し得る。例えば、大きい記憶容量を有するマルチレベルセルレイヤに、より大きい空間を割り当てることにより、コスト（Ｃｏｓｔ）が節減され、ＳＳＤの総記憶容量が増加する。
【００４６】
一例として、第２評価動作及び低速不揮発性メモリ１４２０にデータを移動させる動作は、高速不揮発性メモリ１４１０の記憶容量が予め設定されたしきい値より小さい場合に遂行されるようにプログラムすることができる。他の例として、第２評価動作及び低速不揮発性メモリ１４２０にデータを移動させる動作は、一定の周期で又はＳＳＤがアイドル（Ｉｄｌｅ）状態である場合に遂行されるようにプログラムすることができる。アイドル状態とは、ホストからの読み出し／書き込み要求が伝達されない区間、又は活性化比率が低いか又は読み出し／書き込み要求が少ない時である。
【００４７】
図６は、本発明の実施の形態による第１評価動作及びＳＳＤにデータを保存する動作を説明するためのフローチャートである。
図６に示すように、ステップ１００で、書き込み命令、アドレス、そしてデータを受信する。ステップ１１０で、受信したデータがホットデータであるかを判別する。受信したデータがホットデータである場合、ステップ１２０で、受信したデータは高速不揮発性メモリ１４１０に保存される。逆に、受信したデータがホットデータでない場合、ステップ１３０で、受信したデータは低速不揮発性メモリ１４２０に保存される。
【００４８】
ステップ１３０で低速不揮発性メモリ１４２０に保存されるデータは、高速不揮発性メモリ１４１０を通して保存される。即ち、データはまず高速不揮発性メモリ１４１０に一時的に保存されてから、低速不揮発性メモリ１４２０に保存される。この場合、高速不揮発性メモリ１４１０は低速不揮発性メモリ１４２０のためのメモリバッファとして動作する。
【００４９】
図７は、本発明の実施の形態による第１評価動作及びＳＳＤにデータを保存（書き込み）する動作を説明するためのフローチャートである。
まず、ステップ３００で、書き込み命令、アドレス、そしてデータを受信する。次に、ステップ３１０ａ乃至ステップ３１０ｅで、受信したデータがホットデータであるかを判別する。受信したデータがホットデータであって、さらにステップ３２０で高速不揮発性メモリ１４１０が十分な記憶容量を有する場合、ステップ３４０で、受信したデータは高速不揮発性メモリ１４１０に保存される。逆に、受信したデータがホットデータでない場合、又は高速不揮発性メモリ１４１０に十分な記憶容量がない場合、ステップ３３０で、受信したデータは低速不揮発性メモリ１４２０に保存される。
【００５０】
受信したデータがホットデータとコールドデータのうちどちらであるかを判別する方法には様々な方法があり、図７のステップ３１０ａ乃至ステップ３１０ｅは、判別過程の一例を示す。受信したデータの第１評価動作時に要求される正確度により、二つ又はそれ以上の方法を結合して使用するか、又は別々の方法を独立的に使用することができる。
【００５１】
ステップ３１０ａで、受信したデータがホットデータであるかを示す情報がオペレーティングシステムから提供されたかどうかによって、評価動作が遂行される。受信したデータがホットデータであることを示す情報をオペレーティングシステムが提供した場合、受信したデータはホットデータと判別され、ステップ３２０が遂行される。
【００５２】
ステップ３１０ｂで、受信したデータの論理ブロックアドレスの書き込みカウント値が予め設定されたしきい値に到達したかどうかによって評価動作が遂行される。受信したデータの論理ブロックアドレスの書き込みカウント値が予め設定されたしきい値に到達した場合、受信したデータはホットデータと判別され、ステップ３２０が遂行される。
【００５３】
ステップ３１０ｃで、受信したデータを保存するために要求される記憶容量が予め設定されたしきい値（例えば、３２ＫＢ以下）に到達したかどうかによって評価動作が遂行される。受信したデータを保存するために要求される記憶容量が予め設定されたしきい値より小さい場合、受信したデータはホットデータと判別され、ステップ３２０が遂行される。
【００５４】
ステップ３１０ｄで、以前受信したデータに比べて受信したデータのアドレスの増加値が順次的であるかどうかによって評価動作が遂行される。以前受信したデータに比べて受信したデータのアドレスの増加値が順次的でない場合、受信したデータはホットデータと判別され、ステップ３２０が遂行される。
【００５５】
ステップ３１０ｅで、受信したデータが低速不揮発性メモリ１４２０のマージ動作を誘発するかどうかによって評価動作が遂行される。受信したデータが低速不揮発性メモリ１４２０のマージ動作を誘発する場合、受信したデータはホットデータと判別され、ステップ３２０が遂行される。
【００５６】
図７には示してないが、ステップ３２０で、高速不揮発性メモリ１４１０に十分な記憶容量がない場合、高速不揮発性メモリ１４１０に保存されているコールドデータを低速不揮発性メモリ１４２０に移動させ、その後高速不揮発性メモリ１４１０にホットデータが保存される。
【００５７】
図６及び図７を参照して説明したように、本発明はホットデータ及びコールドデータが高速不揮発性メモリ１４１０及び低速不揮発性メモリ１４２０にそれぞれ保存されることに限定されない。例えば、コールドデータと判別されたデータは、高速不揮発性メモリ１４１０に保存することができ、また、ホットデータと判別されたデータは低速不揮発性メモリ１４２０に保存することができる。
【００５８】
図８は、本発明の実施の形態による第２評価動作及びＳＳＤの低速不揮発性メモリ１４２０にデータを移動させる方法を説明するためのフローチャートである。
ステップ４１０で、高速不揮発性メモリ１４１０の未使用の記憶容量がしきい値より小さいかどうかを判別する。上述のように、このステップはステップ４１０又は後述の説明によるステップ４２０を周期的に遂行するか、そして／又はＳＳＤがアイドル（Ｉｄｌｅ）状態である場合に遂行するかに替えることもできる。
【００５９】
ステップ４２０で、高速不揮発性メモリ１４１０に保存されているデータがホットデータであるかを判別する。即ち、高速不揮発性メモリ１４１０に保存されているデータが、コールドデータに再分類されるかどうかを判別する。
ステップ４３０で、高速不揮発性メモリ１４１０に保存されていてコールドデータに再分類されたデータが低速不揮発性メモリ１４２０に移動される。
【００６０】
ステップ４２０は様々な方法で遂行され得る。例えば、高速不揮発性メモリ１４１０に保存されているそれぞれの有効データの書き込みカウント値が評価され、書き込みカウント値の低いデータがコールドデータと判別される。他の例として、古い（最初に受信した）有効データをコールドデータに再分類するＦＩＦＯ（Ｆｉｒｓｔ−ｉｎ  Ｆｉｒｓｔ−ｏｕｔ）タイプの評価が遂行される。
【００６１】
図８を参照して説明したように、 本発明は、コールドデータを低速不揮発性メモリ１４２０に移動させることに限定されない。例えば、コールドデータと判別されたデータの一部は、高速不揮発性メモリ１４１０に維持してもよい。
【００６２】
図９は、本発明の実施の形態によるコンピュータシステムを示すブロック図である。図９に示すように、プロセッサ（ホスト）２１００及びメインメモリ２２００はデータバス２００１を介して通信する。出力装置（例えば、ディスプレイ）２５００、入力装置（例えば、キーボード）２３００、その他の入出力装置２４００、そして、ＳＳＤもデータバス２００１に連結されている。ＳＳＤは上述の一つ又はそれ以上の本発明の実施の形態によって構成することができる。
【００６３】
以上、ＳＳＤを参照して本発明の実施の形態を説明したが、本発明はＳＳＤに限定されないことが理解できるはずである。図１０は、高速メモリレイヤ及び低速メモリレイヤが図９のコンピュータシステムを構成する実施の形態を示すブロック図である。図１０に示すように、高速メモリレイヤ１５１０はＤＲＡＭセルを含み、図９のプロセッサ２１００に対する非公開領域である。低速メモリレイヤ１５２０はフラッシュセル（シングルレベルセル又はマルチレベルセル）を含み、図９のプロセッサ２１００からアクセスできる領域である。
【００６４】
図１１は、図９のメインメモリ２２００の他の実施の形態を示すブロック図である。図１１に示すように、高速メモリレイヤ１６１０はＤＲＡＭセルを含み、図９のプロセッサ２１００に対する非公開領域である。低速メモリレイヤ１６２０は相変化メモリ（ＰＲＡＭ）セルを含み、図９のプロセッサ２１００からアクセスできる領域である。
【００６５】
本発明の詳しい説明では、具体的な実施の形態について説明したが、本発明の技術的思想を逸脱しない範囲内で、様々な変更が可能であることは明らかである。従って、本発明の範囲は、上述の実施の形態により限定されるものと解釈されてはならず、請求の範囲だけでなく、本発明の請求の範囲と均等なものによって限定されるべきである。
【符号の説明】
【００６６】
１０００  ソリッドステートドライブ
１２００  ＳＳＤ制御器
１２１０  第１インタフェース
１２２０  コントローラ
１２３０  第２インタフェース
１２４０  メモリ
１４００  不揮発性記憶媒体
１４１０  高速不揮発性メモリ
１４２０  低速不揮発性メモリ
【図１】
2013242908.tif 000003
【図２】
2013242908.tif 000004
【図３】
2013242908.tif 000005
【図４】
2013242908.tif 000006
【図５】
2013242908.tif 000007
【図６】
2013242908.tif 000008
【図７】
2013242908.tif 000009
【図８】
2013242908.tif 000010
【図９】
2013242908.tif 000011
【図１０】
2013242908.tif 000012
【図１１】
2013242908.tif 000013
【手続補正書】
【提出日】平成25年8月26日(2013.8.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１タイプデータを格納する第１メモリと第２タイプデータを格納する第２メモリとを含み、前記第１メモリは、前記第２メモリより高速に動作することができる不揮発性記憶媒体と、
受信されたデータが前記不揮発性記憶媒体に保存される前に、前記受信されたデータが前記第１タイプデータか、あるいは前記第２タイプデータかを判別し、前記第１メモリの未使用記憶容量が所定の容量値より小さいのかを判別し、前記第１メモリに保存されたデータが前記第１タイプデータか、あるいは前記第２タイプデータかを再判別する制御部とを含み、
前記第１メモリに保存されたデータが前記第２タイプデータであると判別されると、前記再判別された第２タイプデータは、前記第２メモリに移動されることを特徴とするソリッドステートメモリ。
【請求項２】
論理ブロックアドレスの書き込みカウント値が所定のしきい値以上であれば、前記受信されたデータは第１タイプデータであると判別され、前記論理ブロックアドレスの前記書き込みカウント値が前記所定のしきい値より小さければ、前記受信されたデータは第２タイプデータであると判別されることを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項３】
前記受信されたデータによって要求された記憶容量が所定のしきい値より小さい場合、前記受信されたデータは第１タイプデータであると判別され、前記受信されたデータによって要求された記憶容量が前記所定のしきい値以上であれば、前記受信されたデータは、第２タイプデータであると判別されることを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項４】
前記所定のしきい値は３２kbであることを特徴とする請求項３に記載のソリッドステートメモリ。
【請求項５】
以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的でない場合は前記受信されたデータは第１タイプデータであると判別され、前記以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的である場合は前記受信されたデータは第２タイプデータであると判別することを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項６】
前記受信されたデータが前記第２メモリに対するマージ動作を誘発する場合は前記受信されたデータは第１タイプデータであると判別され、前記受信されたデータが前記第２メモリに対するマージ動作を誘発しない場合は前記受信されたデータは第２タイプデータであると判別することを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項７】
前記第１及び第２メモリはマルチレベルセルを含み、前記第２メモリの一つのセルに保存されるビット数は、前記第１メモリの一つのセルに保存されるビット数より大きいことを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項８】
前記第１メモリはシングルレベルセルを含み、前記第２メモリはマルチレベルセルを含むことを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項９】
前記第１メモリはシングルレベルセルフラッシュメモリであり、前記第２メモリはマルチレベルセルフラッシュメモリであることを特徴とする請求項８に記載のソリッドステートメモリ。
【請求項１０】
前記制御部は前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合にだけ前記第１メモリに保存されたデータが前記第１タイプデータか、あるいは前記第２タイプデータかを再判別することを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項１１】
前記第１メモリに保存された前記再判別された第２タイプデータは、前記未使用記憶容量が前記所定の容量値より小さい場合にだけ前記第２メモリに移動されることを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項１２】
前記第２メモリの記憶容量は前記第１メモリの記憶容量より大きいことを特徴とする請求項１に記載のソリッドステートメモリ。
【請求項１３】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
前記受信されたデータが、第１タイプデータであるかあるいは第２タイプデータであるかを制御部を使用して判別するステップと、
前記受信されたデータが第１タイプデータであれば、前記受信されたデータを前記第１メモリに格納し、前記受信されたデータが第２タイプデータであれば、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、
前記第１メモリに保存されたデータへの書き込みアクセスの頻度が前記所定の頻度値より小さい場合、前記保存されたデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項１４】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
論理ブロックアドレスの書き込みカウント値が所定のしきい値以上かどうかを制御部を使用して判別するステップと、
前記論理ブロックアドレスの書き込みカウント値が所定のしきい値以上である場合は前記受信されたデータを前記第１メモリに格納し、前記論理ブロックアドレスの書き込みカウント値が所定のしきい値より小さい場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、
前記第１メモリに保存されたデータへの書き込みアクセスの頻度が前記所定の頻度値より小さい場合、前記保存されたデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項１５】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
前記データによって要求された記憶容量が所定のしきい値より小さいかどうかを制御部を使用して判別するステップと、
前記要求された記憶容量が所定のしきい値より小さい場合は前記受信されたデータを前記第１メモリに格納し、前記要求された記憶容量が所定のしきい値以上である場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、
前記第１メモリに保存されたデータへの書き込みアクセスの頻度が前記所定の頻度値より小さい場合、前記保存されたデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項１６】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的なのかどうかを制御部を使用して判別するステップと、
前記以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的でない場合は前記受信されたデータを前記第１メモリに格納し、前記 以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的である場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、
前記第１メモリに保存されたデータへの書き込みアクセスの頻度が前記所定の頻度値より小さい場合、前記保存されたデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項１７】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
前記データが前記第２メモリに対するマージ動作を誘発するかどうかを制御部を使用して判別するステップと、
前記データが前記第２メモリに対するマージ動作を誘発する場合は前記受信されたデータを前記第１メモリに格納し、前記データが前記第２メモリに対するマージ動作を誘発しない場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、
前記第１メモリに保存されたデータへの書き込みアクセスの頻度が前記所定の頻度値より小さい場合、前記保存されたデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項１８】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体に保存されたデータを管理する管理方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
前記受信されたデータが、第１タイプデータであるかあるいは第２タイプデータであるかを制御部を使用して判別するステップと、
前記受信されたデータが第１タイプデータであれば、前記受信されたデータを前記第１メモリに格納し、前記受信されたデータが第２タイプデータであれば、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記制御部を利用して、前記第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、
前記第１メモリに保存されたデータ中書き込みアクセスの頻度が前記所定の頻度値より小さいデータを前記第１メモリから前記第２メモリに移動して、前記第１メモリの前記未使用記憶容量の値を前記所定の容量値以上に保つステップと、を含むことを特徴とする管理方法。
【請求項１９】
論理ブロックアドレスの書き込みカウント値が所定のしきい値以上であれば、前記受信されたデータは第１タイプデータであると判別され、前記論理ブロックアドレスの前記書き込みカウント値が前記所定のしきい値より小さければ、前記受信されたデータは第２タイプデータであると判別されることを特徴とする請求項１８に記載の管理方法。
【請求項２０】
前記受信されたデータによって要求された記憶容量が所定のしきい値より小さい場合、前記受信されたデータは第１タイプデータであると判別され、前記受信されたデータによって要求された記憶容量が前記所定のしきい値以上であれば、前記受信されたデータは第２タイプデータであると判別されることを特徴とする請求項１８に記載の管理方法。
【請求項２１】
以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的でない場合は前記受信されたデータは第１タイプデータであると判別され、前記以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的である場合は前記受信されたデータは第２タイプデータであることを特徴とする請求項１８に記載の管理方法。
【請求項２２】
前記受信されたデータが前記第２メモリに対するマージ動作を誘発する場合は前記受信されたデータは第１タイプデータであると判別され、前記受信されたデータが前記第２メモリに対するマージ動作を誘発しない場合は前記受信されたデータは第２タイプデータであると判別することを特徴とする請求項１８に記載の管理方法。
【請求項２３】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
論理ブロックアドレスの書き込みカウント値が所定のしきい値以上であるかを制御部を使用して判別するステップと、
前記論理ブロックアドレスの書き込みカウント値が所定のしきい値以上である場合は前記受信されたデータを前記第１メモリに格納し、前記論理ブロックアドレスの書き込みカウント値が所定のしきい値より小さい場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータの論理ブロックアドレスの書き込みカウント値が前記所定のしきい値以上であるかを判別するステップと、
前記第１メモリに保存されたデータ中前記第１メモリに保存されたデータの論理ブロックアドレスの書き込みカウント値が前記所定のしきい値より小さいデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項２４】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
前記データによって要求された記憶容量が所定のしきい値より小さいかどうかを制御部を使用して判別するステップと、
前記要求された記憶容量が所定のしきい値より小さい場合は前記受信されたデータを前記第１メモリに格納し、前記要求された記憶容量が所定のしきい値以上である場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータが要求する記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリに保存されたデータ中前記第１メモリに保存されたデータが要求する記憶容量が所定の容量値以上であるデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項２５】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的なのかどうかを制御部を使用して判別するステップと、
前記以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的でない場合は前記受信されたデータを前記第１メモリに格納し、前記以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的である場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記以前受信されたデータに比べて前記第１メモリに保存されたデータのアドレスの加値が順次的なのかを判別するステップと、
前記第１メモリに保存されたデータ中前記以前受信されたデータに比べて前記受信されたデータのアドレスの加値が順次的であるデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【請求項２６】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する保存方法であって、
ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、
前記データが前記第２メモリに対するマージ動作を誘発するかどうかを制御部を使用して判別するステップと、
前記データが前記第２メモリに対するマージ動作を誘発する場合は前記受信されたデータを前記第１メモリに格納し、前記データが前記第２メモリに対するマージ動作を誘発しない場合は、前記受信されたデータを前記第２メモリに格納するステップと、
前記第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、
前記第１メモリの前記未使用記憶容量が前記所定の容量値より小さい場合、前記制御部を利用して、前記第１メモリに保存されたデータが前記第２メモリに対するマージ動作を誘発するかどうかを判別するステップと、
前記第１メモリに保存されたデータ中前記第２メモリに対するマージ動作を誘発するデータを前記第１メモリから前記第２メモリに移動するステップと、を含むことを特徴とする保存方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
上記目的を達成すべく、本発明のソリッドステートメモリは、第１タイプデータを格納する第１メモリと第２タイプデータを格納する第２メモリとを含み、第１メモリは、第２メモリより高速に動作することができる不揮発性記憶媒体と、受信されたデータが不揮発性記憶媒体に保存される前に、受信されたデータが第１タイプデータか、あるいは第２タイプデータかを判別し、第１メモリの未使用記憶容量が所定の容量値より小さいのかを判別し、第１メモリに保存されたデータが第１タイプデータか、あるいは第２タイプデータかを再判別する制御部とを含み、第１メモリに保存されたデータが第２タイプデータであると判別されると、再判別された第２タイプデータは、第２メモリに移動されることを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
本発明のソリッドステートメモリは、論理ブロックアドレスの書き込みカウント値が所定のしきい値以上であれば、受信されたデータは第１タイプデータであると判別され、論理ブロックアドレスの書き込みカウント値が所定のしきい値より小さければ、受信されたデータは第２タイプデータであると判別されることを特徴とする。
また、本発明のソリッドステートメモリは、受信されたデータによって要求された記憶容量が所定のしきい値より小さい場合、受信されたデータは第１タイプデータであると判別され、受信されたデータによって要求された記憶容量が所定のしきい値以上であれば、受信されたデータは、第２タイプデータであると判別されることを特徴とする。
また、所定のしきい値は３２kbであることを特徴とする。
また、本発明のソリッドステートメモリは、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的でない場合は受信されたデータは第１タイプデータであると判別され、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的である場合は受信されたデータは第２タイプデータであると判別することを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
本発明のソリッドステートメモリは、受信されたデータが第２メモリに対するマージ動作を誘発する場合は受信されたデータは第１タイプデータであると判別され、受信されたデータが第２メモリに対するマージ動作を誘発しない場合は受信されたデータは第２タイプデータであると判別することを特徴とする。
また、第１及び第２メモリはマルチレベルセルを含み、第２メモリの一つのセルに保存されるビット数は、第１メモリの一つのセルに保存されるビット数より大きいことを特徴とする。
また、第１メモリはシングルレベルセルを含み、第２メモリはマルチレベルセルを含むことを特徴とする。
さらに、第１メモリはシングルレベルセルフラッシュメモリであり、第２メモリはマルチレベルセルフラッシュメモリであることを特徴とする。
また、本発明のソリッドステートメモリは、制御部は第１メモリの未使用記憶容量が所定の容量値より小さい場合にだけ第１メモリに保存されたデータが第１タイプデータか、あるいは第２タイプデータかを再判別することを特徴とする。
また、第１メモリに保存された再判別された第２タイプデータは、未使用記憶容量が所定の容量値より小さい場合にだけ第２メモリに移動されることを特徴とする。
また、第２メモリの記憶容量は前記第１メモリの記憶容量より大きいことを特徴とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
第１及び第２メモリを含み、第１メモリは第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、受信されたデータが、第１タイプデータであるかあるいは第２タイプデータであるかを制御部を使用して判別するステップと、受信されたデータが第１タイプデータであれば、受信されたデータを第１メモリに格納し、受信されたデータが第２タイプデータであれば、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値より小さい場合、保存されたデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
第１及び第２メモリを含み、第１メモリは第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、論理ブロックアドレスの書き込みカウント値が所定のしきい値以上かどうかを制御部を使用して判別するステップと、論理ブロックアドレスの書き込みカウント値が所定のしきい値以上である場合は受信されたデータを第１メモリに格納し、論理ブロックアドレスの書き込みカウント値が所定のしきい値より小さい場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値より小さい場合、保存されたデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
第１及び第２メモリを含み、第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、データによって要求された記憶容量が所定のしきい値より小さいかどうかを制御部を使用して判別するステップと、要求された記憶容量が所定のしきい値より小さい場合は受信されたデータを第１メモリに格納し、要求された記憶容量が所定のしきい値以上である場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値より小さい場合、保存されたデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
第１及び第２メモリを含み、第１メモリは第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的なのかどうかを制御部を使用して判別するステップと、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的でない場合は受信されたデータを第１メモリに格納し、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的である場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値より小さい場合、保存されたデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
第１及び第２メモリを含み、第１メモリは第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、データが第２メモリに対するマージ動作を誘発するかどうかを制御部を使用して判別するステップと、データが第２メモリに対するマージ動作を誘発する場合は受信されたデータを第１メモリに格納し、データが第２メモリに対するマージ動作を誘発しない場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値より小さい場合、保存されたデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
第１及び第２メモリを含み、第１メモリは第２メモリより高速に動作することができる不揮発性記憶媒体に保存されたデータを管理する本発明による管理方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、受信されたデータが、第１タイプデータであるかあるいは第２タイプデータであるかを制御部を使用して判別するステップと、受信されたデータが第１タイプデータであれば、受信されたデータを第１メモリに格納し、受信されたデータが第２タイプデータであれば、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、制御部を利用して、第１メモリに保存されたデータへの書き込みアクセスの頻度が所定の頻度値以上であるかを判別するステップと、第１メモリに保存されたデータ中書き込みアクセスの頻度が所定の頻度値より小さいデータを第１メモリから第２メモリに移動して、第１メモリの未使用記憶容量の値を所定の容量値以上に保つステップと、を含むことを特徴とする。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
本発明による管理方法は、論理ブロックアドレスの書き込みカウント値が所定のしきい値以上であれば、受信されたデータは第１タイプデータであると判別され、論理ブロックアドレスの書き込みカウント値が所定のしきい値より小さければ、受信されたデータは第２タイプデータであると判別されることを特徴とする。
また、本発明による管理方法は、受信されたデータによって要求された記憶容量が所定のしきい値より小さい場合、受信されたデータは第１タイプデータであると判別され、受信されたデータによって要求された記憶容量が所定のしきい値以上であれば、受信されたデータは第２タイプデータであると判別されることを特徴とする。
また、本発明による管理方法は、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的でない場合は受信されたデータは第１タイプデータであると判別され、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的である場合は受信されたデータは第２タイプデータであることを特徴とする。
また、本発明による管理方法は、受信されたデータが第２メモリに対するマージ動作を誘発する場合は受信されたデータは第１タイプデータであると判別され、受信されたデータが第２メモリに対するマージ動作を誘発しない場合は受信されたデータは第２タイプデータであると判別することを特徴とする。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
第１及び第２メモリを含み、第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、論理ブロックアドレスの書き込みカウント値が所定のしきい値以上であるかを制御部を使用して判別するステップと、論理ブロックアドレスの書き込みカウント値が所定のしきい値以上である場合は受信されたデータを第１メモリに格納し、論理ブロックアドレスの書き込みカウント値が所定のしきい値より小さい場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータの論理ブロックアドレスの書き込みカウント値が所定のしきい値以上であるかを判別するステップと、第１メモリに保存されたデータ中第１メモリに保存されたデータの論理ブロックアドレスの書き込みカウント値が所定のしきい値より小さいデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
第１及び第２メモリを含み、前記第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、データによって要求された記憶容量が所定のしきい値より小さいかどうかを制御部を使用して判別するステップと、要求された記憶容量が所定のしきい値より小さい場合は受信されたデータを第１メモリに格納し、要求された記憶容量が所定のしきい値以上である場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータが要求する記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリに保存されたデータ中第１メモリに保存されたデータが要求する記憶容量が所定の容量値以上であるデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
第１及び第２メモリを含み、第１メモリは前記第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的なのかどうかを制御部を使用して判別するステップと、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的でない場合は受信されたデータを第１メモリに格納し、以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的である場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、以前受信されたデータに比べて第１メモリに保存されたデータのアドレスの加値が順次的なのかを判別するステップと、第１メモリに保存されたデータ中以前受信されたデータに比べて受信されたデータのアドレスの加値が順次的であるデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
第１及び第２メモリを含み、第１メモリは第２メモリより高速に動作することができる不揮発性記憶媒体にデータを保存する本発明による保存方法は、ホスト装置から書き込みコマンド、アドレス及びデータを受信するステップと、データが第２メモリに対するマージ動作を誘発するかどうかを制御部を使用して判別するステップと、データが第２メモリに対するマージ動作を誘発する場合は受信されたデータを第１メモリに格納し、データが第２メモリに対するマージ動作を誘発しない場合は、受信されたデータを第２メモリに格納するステップと、第１メモリの未使用記憶容量が所定の容量値より小さいかどうかを判別するステップと、第１メモリの未使用記憶容量が所定の容量値より小さい場合、制御部を利用して、第１メモリに保存されたデータが第２メモリに対するマージ動作を誘発するかどうかを判別するステップと、第１メモリに保存されたデータ中第２メモリに対するマージ動作を誘発するデータを第１メモリから第２メモリに移動するステップと、を含むことを特徴とする。