(57)【要約】【課題】ソリッドステートドライブのアクセス速度を向上させるフラッシュメモリ装置およびそのプリフェッチ方法を提供する。【解決手段】複数のユーザーデータを記録するフラッシュメモリアレイ、および初期化の手順を完成した後、複数のＰＣ命令およびＨ２Ｆマッピングテーブルに従って、前記フラッシュメモリアレイの前記ユーザーデータにアクセスし、アクセスした前記ユーザーデータの複数のアドレス情報をパワーオンアクセステーブルに記録するコントローラを含む記憶装置。【選択図】図１
2018190405.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザーデータを記録するフラッシュメモリアレイ、および
初期化の手順を完成した後、複数のＰＣ命令およびＨ２Ｆマッピングテーブルに従って、前記フラッシュメモリアレイの前記ユーザーデータにアクセスし、アクセスした前記ユーザーデータの複数のアドレス情報をパワーオンアクセステーブルに記録するコントローラ
を含む記憶装置。
【請求項２】
前記パワーオンアクセステーブルの大きさは、前記Ｈ２Ｆマッピングテーブルより小さい請求項１に記載された記憶装置。
【請求項３】
前記アドレス情報は、前記ユーザーデータの複数の論理アドレス情報である請求項１に記載された記憶装置。
【請求項４】
前記アドレス情報は、前記ユーザーデータの複数の物理アドレス情報を更に含む請求項３に記載された記憶装置。
【請求項５】
前記コントローラは、前記ユーザーデータのアクセス順序に基づいて、前記アドレス情報を前記パワーオンアクセステーブルに順次に記録する請求項１に記載された記憶装置。
【請求項６】
複数のユーザーデータを記録するフラッシュメモリアレイ、および
初期化の手順を完成した後、パワーオンアクセステーブルが前記フラッシュメモリアレイに存在するかどうかを判定し、存在する場合、前記パワーオンアクセステーブルに対応する前記ユーザーデータをデータレジスタにアップロードするコントローラ
を含む記憶装置。
【請求項７】
前記コントローラは、Ｈ２Ｆマッピングテーブルに従って、前記パワーオンアクセステーブルに対応する前記ユーザーデータを前記データレジスタにアップロードする請求項３に記載された記憶装置。
【請求項８】
前記データレジスタが前記パワーオンアクセステーブルに対応した全ての前記ユーザーデータを記憶するのに十分でないとき、前記コントローラは、前記パワーオンアクセステーブルに対応する一部の前記ユーザーデータだけを前記データレジスタにアップロードする請求項６に記載された記憶装置。
【請求項９】
前記コントローラは、前記パワーオンアクセステーブルに対応する前記ユーザーデータを前記データレジスタにアップロードする請求項６に記載された記憶装置。
【請求項１０】
前記コントローラは、前記初期化の手順を完成した後、ＰＣ命令を受ける前に、前記パワーオンアクセステーブルに対応した前記ユーザーデータを前記データレジスタにアップロードする請求項６に記載された記憶装置。
【請求項１１】
初期化の手順を行うステップ、
複数のＰＣ命令およびＨ２Ｆマッピングテーブルに従って、フラッシュメモリアレイに記憶された複数のユーザーデータにアクセスするステップ、および
前記ユーザーデータの複数のアドレス情報を前記パワーオンアクセステーブルに記録するステップ
を含む記憶装置のパワーオンアクセステーブルを確立する記録方法。
【請求項１２】
初期化の手順を行うステップ、および
前記パワーオンアクセステーブルが存在するかどうかを判定し、存在する場合、前記パワーオンアクセステーブルに対応するユーザーデータをフラッシュメモリアレイからデータレジスタにアップロードするステップ
を含む、記憶装置のパワーオンアクセステーブルを用いるプリフェッチ方法。
【請求項１３】
複数のＰＣ命令、前記パワーオンアクセステーブル、およびＨ２Ｆマッピングテーブルに従って、前記記憶装置にアクセスするステップを更に含む請求項１２に記載されたプリフェッチ方法。
【請求項１４】
前記パワーオンアクセステーブルが存在しないとき、複数のＰＣ命令およびＨ２Ｆマッピングテーブルに従って、前記記憶装置にアクセスする請求項１２に記載されたプリフェッチ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フラッシュメモリ装置およびそのプリフェッチ方法に関するものである。
【背景技術】
【０００２】
システムが電源投入されたとき、ソリッドステートドライブ（ＳＳＤ）もそれに伴って直接電源投入される。しかしながら、ソリッドステートドライブが電源投入されてからソリッドステートドライブが最初にアクセスされるまでの間、待機時間がある。ソリッドステートドライブの機能を効果的に向上させるために、待機時間に対してより効率的な使用を行い、ソリッドステートドライブのアクセス速度を向上させる必要がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−９０４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、ソリッドステートドライブのアクセス速度を向上させるフラッシュメモリ装置およびそのプリフェッチ方法を提供する。
【課題を解決するための手段】
【０００５】
これに鑑み、本発明は、フラッシュメモリアレイ、ダイナミックランダムアクセスメモリ、およびコントローラを含む記憶装置を提供する。フラッシュメモリアレイは、複数のユーザーデータを記録する。コントローラは、初期化の手順を完成した後、複数のホストコンピュータ（ＰＣ）命令およびＨ２Ｆマッピングテーブルに従って、フラッシュメモリアレイのユーザーデータにアクセスし、アクセスしたユーザーデータの複数のアドレス情報をパワーオンアクセステーブルに記録する。
【０００６】
本発明の実施形態に基づいて、パワーオンアクセステーブルの大きさは、Ｈ２Ｆマッピングテーブルより小さい。
【０００７】
本発明の実施形態に基づいて、アドレス情報は、ユーザーデータの複数の論理アドレス情報である。
【０００８】
本発明の実施形態に基づいて、アドレス情報は、ユーザーデータの複数の物理アドレス情報を更に含む。
【０００９】
本発明の実施形態に基づいて、コントローラは、ユーザーデータのアクセス順序に基づいて、アドレス情報をパワーオンアクセステーブルに順次に記録する。
【００１０】
本発明は、フラッシュメモリアレイおよびコントローラを含む記憶装置を提供する。フラッシュメモリアレイは、複数のユーザーデータを記録する。コントローラは、初期化の手順を完成した後、パワーオンアクセステーブルがフラッシュメモリアレイに存在するかどうかを判定し、存在する場合、パワーオンアクセステーブルに対応するユーザーデータをデータレジスタにアップロードする。
【００１１】
本発明の実施形態に基づいて、コントローラは、Ｈ２Ｆマッピングテーブルに従って、パワーオンアクセステーブルに対応するユーザーデータをデータレジスタにアップロードする。
【００１２】
本発明の実施形態に基づいて、データレジスタがパワーオンアクセステーブルに対応した全てのユーザーデータを記憶するのに十分でないとき、コントローラは、パワーオンアクセステーブルに対応する一部のユーザーデータだけをデータレジスタにアップロードする。
【００１３】
本発明の実施形態に基づいて、コントローラは、パワーオンアクセステーブルに対応するユーザーデータをデータレジスタにアップロードする。
【００１４】
本発明の実施形態に基づいて、コントローラは、初期化の手順を完成した後、ＰＣ命令を受ける前に、パワーオンアクセステーブルに対応したユーザーデータをデータレジスタにアップロードする。
【００１５】
本発明は、初期化の手順を行うステップ、複数のＰＣ命令およびＨ２Ｆマッピングテーブルに従って、フラッシュメモリアレイに記憶された複数のユーザーデータにアクセスするステップ、およびユーザーデータの複数のアドレス情報をパワーオンアクセステーブルに記録するステップを含む、記憶装置のパワーオンアクセステーブルを確立する記録方法を更に提供する。
【００１６】
本発明は、初期化の手順を行うステップ、およびパワーオンアクセステーブルが存在するかどうかを判定し、存在する場合、パワーオンアクセステーブルに対応するユーザーデータをフラッシュメモリアレイからデータレジスタにアップロードするステップを含む、記憶装置のパワーオンアクセステーブルを用いるプリフェッチ方法を更に提供する。
【００１７】
本発明の実施形態に基づいて、パワーオンアクセステーブルを用いる方法は、複数のＰＣ命令、パワーオンアクセステーブル、およびＨ２Ｆマッピングテーブルに従って、記憶装置にアクセスするステップを更に含む。
【００１８】
本発明の実施形態に基づいて、パワーオンアクセステーブルが存在しないとき、複数のＰＣ命令およびＨ２Ｆマッピングテーブルに従って、記憶装置にアクセスするステップを更に含む。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態に基づいた記憶装置のブロック図を示している。
【図２Ａ】本発明の実施形態に基づいたパワーオンアクセステーブルの概略図を示している。
【図２Ｂ】本発明のもう１つの実施形態に基づいたパワーオンアクセステーブルの概略図を示している。
【図３Ａ】本発明の実施形態に基づいたパワーオンアクセステーブルを確立する方法のフローチャートを示している。
【図３Ｂ】本発明の実施形態に基づいたパワーオンアクセステーブルを用いた方法のフローチャートを示している。
【発明を実施するための形態】
【００２０】
以下の説明は、本発明を実施するベストモードが開示されている。この説明は、本発明の一般原理を例示する目的のためのもので本発明を限定するものではない。本発明の範囲は、添付の請求の範囲を参考にして決定される。
【００２１】
留意すべきことは、以下に述べる内容は、本発明の異なる特徴を実践する複数の実施形態または範例を提供することができる。以下に述べる特殊な構成要素の代表例と配置は、本発明の精神を簡単に要約して述べたもので本発明の範囲を限定するものではない。また、以下の説明書は、複数の代表例において同じ構成要素の符号または文字を繰り返し用いる可能性がある。しかしながら、繰り返し用いる目的は、簡易化した、明確な説明を提供するためのもので、複数の以下に討論する実施形態および／または配置の関係を限定するものではない。また、以下の説明書で述べた１つの特徴がもう１つの特徴に接続、結合、および／または形成するなどの記述は、実際には複数の異なる実施形態を含み、前記特徴が直接接触するのを含む、またはその他の追加の特徴が前記特徴の間に形成されるなど、前記の特徴が直接接触しないのを含むことができる。
【００２２】
図１は、本発明の実施形態に基づいた記憶装置のブロック図を示している。図１に示されるように、記憶装置１００は、フラッシュメモリアレイ１０１、ダイナミックランダムアクセスメモリ１０２、およびコントローラ１０３を含み、記憶装置１００は、ホストコンピュータ（ＰＣ）１０に接続され、ＰＣ１０と記憶装置１００は、システムを構成し、記憶装置１００は、論理−物理（Ｈｏｓｔ  Ｌｏｇｉｃａｌ−Ｆｌａｓｈ  Ｐｈｙｓｉｃａｌ；Ｈ２Ｆ）を生成し、Ｈ２Ｆマッピングテーブルを維持し、ユーザーデータの論理アドレスと物理アドレスの対応関係を記録する。本発明の実施形態に基づいて、記憶装置１００は、ＵＳＢ、ＳＡＴＡ、ＰＡＴＡ、ＰＣＩＥを用いた物理インターフェースまたはＵＳＢ、ＮＶＭＥ、ＡＨＣＩ、ＳＣＳＩを用いた通信プロトコルのソリッドステートドライブを用いることができる。
【００２３】
記憶装置１００のデータのメモリ容量が２５６ＧＢとした場合、システムの起動後、コントローラ１０３は、Ｈ２Ｆマッピングテーブルに従って、ＰＣ１０が必要なユーザーデータを提供する以外に、これらのユーザーデータの論理アドレスまたは物理アドレスをパワーオンアクセステーブルに記録する。パワーオンアクセステーブルで１つの論理アドレスまたは物理アドレスの大きさが２Ｂであるとした場合、１つの論理アドレスまたは物理アドレスは、４ＫＢのユーザーデータに対応し、コントローラ１０３は、８ＭＢの大きさのパワーオンアクセステーブルを確立し、１６ＧＢの大きさのユーザーデータの論理アドレスを記録することができる。パワーオンアクセステーブルは、ＰＣ１０が読み出したい、または書き込みたいユーザーデータを記録し、ＰＣ１０の動作の特性に従って、パワーオンアクセステーブルに記録されたユーザーデータは、オペレーティングシステム、またはコンピュータゲームのファイルであることができ、且つパワーオンアクセステーブルは、主にＰＣ１０が読み出したいユーザーデータを記録し、小部分は、ＰＣ１０が更新／書き込みたいユーザーデータを記録する。
【００２４】
ＰＣ１０が初期化を開始したとき、記憶装置１００など、周辺装置も初期化を開始する。しかしながら、記憶装置１００が初期化を完成するのに必要な時間は、ＰＣ１０が初期化を完成するのに必要な時間より短い。そのため、記憶装置１００が初期化を完成し、ＰＣ１０がまだ初期化を完成しない期間（アイドル時間とも呼ばれる）、コントローラ１０３は、パワーオンアクセステーブルに記録されたアドレス情報に基づいて、ユーザーデータをフラッシュメモリアレイ１０１からダイナミックランダムアクセスメモリ１０２に予めローディングする。ＰＣ１０が初期化を完成し、オペレーティングシステムのローディングを開始したとき、即ち、ＰＣ１０が記憶装置１００からオペレーティングシステムのファイルをローディングしたときに、記憶装置１００は、フラッシュメモリアレイ１０１からでなく、ダイナミックランダムアクセスメモリ１０２からオペレーティングシステムのファイル（即ち、ユーザーデータ）をＰＣ１０に迅速に提供し、データアクセスが必要な時間を短縮させることができる。記憶装置１００は、初期化を迅速に完成させることができるため、アイドル時間も記憶装置１００が電源投入された後、ＰＣ１０が記憶装置１００にアクセスを開始する前の時間と見なすこともできる。
【００２５】
本発明のもう１つの実施形態に基づいて、パワーオンアクセステーブルの記録は、ユーザーデータの読み出し順序に従って記録されることが好ましい。従って、コントローラ１０３がアイドル時間でパワーオンアクセステーブルに対応する全てのユーザーデータをダイナミックランダムアクセスメモリ１０２にローディングできない場合、先にローディングしたユーザーデータは、ＰＣ１０に先に読み出しされる可能性があるため、データの読み出しおよびデータの処理の過程では、コントローラ１０３は、ＰＣ１０が読み出しをし、本発明の目的を達成するまで、パワーオンアクセステーブルに対応する残りのユーザーデータをダイナミックランダムアクセスメモリ１０２にローディングし続けることができる。
【００２６】
本発明のもう１つの実施形態に基づいて、コントローラ１０３は、フラッシュメモリアレイ１０１のパラメータに従って、パワーオンアクセステーブルの記録に対して配列を行う。フラッシュメモリアレイ１０１のパラメータは、チャネル（ｃｈａｎｎｅｌ）数またはチップイネーブル（Ｃｈｉｐ  Ｅｎａｂｌｅ）数を含み、ユーザーデータの読み出し速度を加速する。
【００２７】
本発明のもう１つの実施形態に基づいて、パワーオンアクセステーブルに対応するユーザーデータの大きさはダイナミックランダムアクセスメモリ１０２のデータのメモリ容量より小さいことが望ましい。従って、パワーオンアクセステーブルに対応する全てのユーザーデータは、ダイナミックランダムアクセスメモリ１０２に記憶されることができる。
【００２８】
本発明のもう１つの実施形態に基づいて、パワーオンアクセステーブルに対応するユーザーデータの大きさがダイナミックランダムアクセスメモリ１０２のデータのメモリ容量より大きいとき、コントローラ１０３は、パワーオンアクセステーブルに対応する一部のユーザーデータだけをダイナミックランダムアクセスメモリ１０２にローディングし、これらのユーザーデータがＰＣ１０に先に読み出しされてから、パワーオンアクセステーブルに対応する残りのユーザーデータを既に記憶されたダイナミックランダムアクセスメモリ１０２のユーザーデータと置き換える。
【００２９】
図２Ａは、本発明の実施形態に基づいたパワーオンアクセステーブルの概略図を示している。本発明の実施形態に基づいて、パワーオンアクセステーブル２００Ａは、ユーザーデータの論理アドレスを記録するのに用いられ、Ｈ２Ｆマッピングテーブルに従って、コントローラ１０３は、フラッシュメモリアレイ１０１のアドレスに記憶された各ユーザーデータを得て、アクセスすることができる。ここでは、１０個のアクセスデータでのみ説明を行っており、任意の形式でこれを限定するものではない。
【００３０】
図２Ｂは、本発明のもう1つの実施形態に基づいたパワーオンアクセステーブルの概略図を示している。本発明の実施形態に基づいて、パワーオンアクセステーブル２００Ｂは、小型のＨ２Ｆマッピングテーブルと同じように、ユーザーデータの論理アドレスおよび物理アドレスを記録する。従って、コントローラ１０３は、パワーオンアクセステーブルに従って、フラッシュメモリアレイ１０１のアドレスに記憶された各ユーザーデータを得て、アクセスすることができる。ここでは、１０個のアクセスデータでのみ説明を行っており、任意の形式でこれを限定するものではない。
【００３１】
図３Ａは、本発明の実施形態に基づいたパワーオンアクセステーブルを確立する方法のフローチャートを示している。このパワーオンアクセステーブルを確立する方法は、記憶装置１００に用いられる。まず、記憶装置１００は、初期化を行う（ステップＳ１０）。記憶装置１００の初期化は、電源の再供給、またはＰＣ１０のＰＣ命令により起動されることができる。
【００３２】
次いで、ＰＣ命令およびＨ２Ｆマッピングテーブルに従って、フラッシュメモリアレイのユーザーデータにアクセスする（ステップＳ１２）。記憶装置１００が初期化を完成した後、ＰＣ１０からのＰＣ命令を受けるのを待つ。ＰＣ１０も初期化を完成し、オペレーティングシステムがローディングを始めた場合、ＰＣ命令は、主にデータの読み出しの命令であり、記憶装置１００にオペレーティングシステムのファイルを提供することを要求する。記憶装置１００は、ＰＣ命令およびＨ２Ｆマッピングテーブルに従って、フラッシュメモリアレイ１０１のユーザーデータ（オペレーティングシステムのファイル）を読み出し、ユーザーデータをＰＣ１０に出力する。データの読み出し命令以外に、ＰＣ命令は、データの書き込み命令であることもできる。
【００３３】
次いで、ユーザーデータのアドレス情報をパワーオンアクセステーブルに記録し（ステップＳ１４）、パワーオンアクセステーブルがアドレス情報を既に記憶し終えたかどうかを判定し（ステップＳ１６）、パワーオンアクセステーブルがアドレス情報をまだ記憶し終えていない場合、パワーオンアクセステーブルへのアドレス情報の記録を続け、パワーオンアクセステーブルがアドレス情報を記憶し終えた場合（例えば、８ＭＢのアドレス情報を既に記憶している）、本発明のパワーオンアクセステーブルを確立する方法を行うことを終える。
【００３４】
図３Ｂは、本発明の実施形態に基づいたパワーオンアクセステーブルを用いた方法のフローチャートを示している。このパワーオンアクセステーブルを確立する方法は、記憶装置１００に用いられる。
【００３５】
まず、記憶装置１００は、初期化を行う（ステップＳ２０）。記憶装置１００の初期化は、電源の再供給、またはＰＣ１０のＰＣ命令により起動されることができる。
【００３６】
次いで、パワーオンアクセステーブルが存在するかどうかを判定し（ステップＳ２２）、存在する場合、ステップＳ２４を行うか、もしくは本発明のパワーオンアクセステーブルを用いる方法を行うのを終了する。
【００３７】
次いで、Ｈ２Ｆマッピングテーブルに従って、パワーオンアクセステーブルに対応するユーザーデータをデータレジスタに順次にアップロードする（ステップＳ２４）。データレジスタは、ダイナミックランダムアクセスメモリ１０２であることができる。パワーオンアクセステーブルに対応するユーザーデータのデータ量がデータレジスタのデータのメモリ容量より大きい場合、先にパワーオンアクセステーブルに対応したユーザーデータをデータレジスタに一部アップロードしてから、残りのパワーオンアクセステーブルに対応したユーザーデータをデータレジスタにアップロードする。パワーオンアクセステーブルの記録が図２Ｂに示されるような場合、コントローラ１０３は、Ｈ２Ｆマッピングテーブルを用いなくてもパワーオンアクセステーブルに対応したユーザーデータをデータレジスタに順次にアップロードすることができる。
【００３８】
次いで、ＰＣ命令、パワーオンアクセステーブル、およびＨ２Ｆマッピングテーブルに従って、記憶装置１００のユーザーデータにアクセスする（ステップＳ２６）。記憶装置１００は、ＰＣ１０からのＰＣ命令を受け、まず、ＰＣ命令の論理アドレスがパワーオンアクセステーブルに記録されたかどうかを判定し、記録されている場合、記憶装置１００は、データレジスタが記憶したユーザーデータをＰＣ１０に直接提供し、記録されていない場合、記憶装置１００は、ＰＣ命令およびＨ２Ｆマッピングテーブルに従って、フラッシュメモリアレイ１０１に記憶されたユーザーデータにアクセスする。
【００３９】
以上、実施形態の特徴を概説した。当業者には明らかであるように種々の変更及び同様の配置を含むように意図される。よって、添付の特許請求の範囲は、全てのそのような変更および同様の配置を包含するように、最も広義な解釈が与えられるべきである。上記実施の形態は、他のプロセスおよび構造を設計又は改変するための基礎となり得る。本開示の精神および範囲を逸脱せずに、ここで種々の変更、代替、および改変も含む。説明のための方法は、例示的なステップを示すものであるに過ぎず、これらのステップは、必ずしも示された順序で行われるものではなく、本開示の精神及び範囲を逸脱しない限りにおいては、他に、ステップの順序を追加、代替、且つ改変するおよび／またはステップの順序を除去することができる。
【符号の説明】
【００４０】
１００  記憶装置
１０１  フラッシュメモリアレイ
１０２  ダイナミックランダムアクセスメモリ
１０３  コントローラ
１０  ＰＣ
２００Ａ、２００Ｂ  パワーオンアクセステーブル
【図１】
2018190405.tif 000003
【図２Ａ】
2018190405.tif 000004
【図２Ｂ】
2018190405.tif 000005
【図３Ａ】
2018190405.tif 000006
【図３Ｂ】
2018190405.tif 000007