(57)【特許請求の範囲】
【請求項１】
複数のメモリ装置を、プログラマブルオプションに基づいて順にまたは並行して構成することであって、前記複数のメモリ装置が共有イネーブル信号を受信する、ことと、
前記複数のメモリ装置のそれぞれに一意のボリュームアドレスを割り当てることと、
を含む、メモリを初期化するための方法。
【請求項２】
前記一意のボリュームアドレスを割り当てることが、前記複数のメモリ装置のそれぞれに順に一意のボリュームアドレスを割り当てることを含む、請求項１に記載の方法。
【請求項３】
前記複数のメモリ装置を並行して構成することが、初期化中に前記複数のメモリ装置を構成することを含み、前記複数のメモリ装置が線形デイジーチェーン構成である、請求項２に記載の方法。
【請求項４】
前記方法が、
以後の初期化中に、前記複数のメモリ装置と、前記線形デイジーチェーン構成に追加された追加メモリ装置とを構成することと、
前記以後の初期化中に、前記複数のメモリ装置のそれぞれと、前記追加メモリ装置とに、一意の非固定ボリュームアドレスを割り当てることと、
を含む、請求項３に記載の方法。
【請求項５】
前記方法が、前記複数のメモリ装置を再構成することと、以後の初期化中に前記複数のメモリ装置のそれぞれに一意のボリュームアドレスを再割り当てすることと、を含む、請求項１から４のいずれか１項に記載の方法。
【請求項６】
前記方法が、前記複数のメモリ装置のうちの特定のメモリ装置を、前記特定のメモリ装置が以後の初期化中にそれに割り当てられた一意のボリュームアドレスを有さないように使用停止することを含む、請求項１から４のいずれか１項に記載の方法。
【請求項７】
前記一意のボリュームアドレスを割り当てることが、前記初期化中に前記複数のメモリ装置のうちの特定のメモリ装置に一意のボリュームアドレスを割り当てることを含み、前記複数のメモリ装置のうちの前記特定のメモリ装置が１つのターゲットボリュームを含む、請求項１から４のいずれか１項に記載の方法。
【請求項８】
前記一意のボリュームアドレスを割り当てることが、前記初期化中に前記複数のメモリ装置のうちの特定のメモリ装置に２つの一意のボリュームアドレスを割り当てることを含み、
前記複数のメモリ装置のうちの前記特定のメモリ装置が２つのターゲットボリュームを含む、請求項１から４のいずれか１項に記載の方法。
【請求項９】
前記一意のボリュームアドレスを割り当てることが、一意の非固定ボリュームアドレスを割り当てることを含む、請求項１から４のいずれか１項に記載の方法。
【請求項１０】
メモリコントローラであって、
前記メモリコントローラをホストに結合するための第１のインタフェースと、
線形デイジーチェーン構成で配置された複数のメモリ装置に前記メモリコントローラを結合するための第２のインタフェースと、
を備え、
前記メモリコントローラが、前記複数のメモリ装置を、プログラマブルオプションに基づいて順にまたは並行して構成し、かつ、前記複数のメモリ装置のそれぞれに一意のボリュームアドレスを割り当てるように構成される、メモリコントローラ。
【請求項１１】
前記メモリコントローラが、前記複数のメモリ装置のうちの特定のメモリ装置を、前記複数のメモリ装置のうちの前記特定のメモリ装置に前記一意のボリュームアドレスを割り当てる前に、構成するように構成される、請求項１０に記載のメモリコントローラ。
【請求項１２】
前記メモリコントローラが、前記複数のメモリ装置の初期化のたびに、前記複数のメモリ装置を構成し、かつ、一意のボリュームアドレスを割り当てるように構成される、請求項１１に記載のメモリコントローラ。
【請求項１３】
前記メモリコントローラが、前記初期化中に前記複数のメモリ装置を順にまたは並行して構成するための前記プログラマブルオプションを含む、請求項１２に記載のメモリコントローラ。
【請求項１４】
前記メモリコントローラが、シリアル構成を示す前記プログラマブルオプションに応答して前記複数のメモリ装置のうちの特定のメモリ装置にリセットコマンドを提供する前に、前記複数のメモリ装置に読取りステータスコマンドを提供するように構成される、請求項１３に記載のメモリコントローラ。
【請求項１５】
前記メモリコントローラが、前記複数のメモリ装置のそれぞれに一意のボリュームアドレスを割り当てる前に、前記複数のメモリ装置にリセットコマンドを提供するように構成される、請求項１３に記載のメモリコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して半導体メモリシステム、半導体メモリ装置、および方法に関し、さらに詳細にはメモリ初期化のためのシステム、装置、メモリコントローラおよび方法に関する。
【背景技術】
【０００２】
メモリ装置は、通常、コンピュータまたは他の電子機器内の内部半導体集積回路として提供される。揮発性メモリおよび不揮発性メモリを含む多くの異なるタイプのメモリがある。揮発性メモリは、その情報を維持するための電力を必要とすることがあり、とりわけランダムアクセスメモリ（ＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、および同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）を含む。不揮発性メモリは、電源が入れられていないときに記憶されている情報を保持することによって永続的な情報を提供することができ、とりわけ、ＮＡＮＤフラッシュメモリ、ＮＯＲフラッシュメモリ、読取り専用メモリ（ＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、消去可能プログラマブルＲＯＭ（ＥＰＲＯＭ）、相変化ＲＡＭ（ＰＣＲＡＭ）、抵抗変化ＲＡＭ（ＲＲＡＭ（登録商標））、およびスピントルクトランスファランダムアクセスメモリ（ＳＴＴ  ＲＡＭ）等の磁気ランダムアクセスメモリ（ＭＲＡＭ）を含むことがある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
メモリ装置は、ソリッドステートドライブ（ＳＳＤ）、ポータブルメモリドライブ（たとえば、フラッシュドライブ）等のメモリシステムを形成するためにともに組み合わせることができる。メモリシステムは、多様な他のタイプの不揮発性メモリおよび揮発性メモリの中で、不揮発性メモリ（たとえば、ＮＡＮＤフラッシュメモリおよびＮＯＲフラッシュメモリ）を含むことがある、および/または揮発性メモリ（たとえば、ＤＲＡＭおよびＳＲＡＭ）を含むことがある。たとえば、ソリッドステートドライブは、性能、サイズ、重量、耐久性、動作温度範囲、および電力消費の点でハードドライブに優る優位点を有しているので、ＳＳＤは、コンピュータのためのメイン記憶装置としてハードディスクに代わるために使用できる。たとえば、磁気ディスクに比較したとき、ＳＳＤは可動部品がないために優れた性能を有することができ、これにより磁気ディスクドライブにまつわるシークタイム、待ち時間、および他の電子機械的な遅延を回避し得る。ＳＳＤの製造メーカは不揮発性フラッシュメモリを使用して、内蔵電池電源を使用しないことがあるフラッシュＳＳＤを作成し、このようにしてドライブがより用途が広くかつコンパクトとなることができるようにしている。
【０００４】
メモリシステムは、マルチチップパッケージ（ＭＣＰ）であることがあるいくつかの離散メモリ装置（たとえばパッケージ）を含むことがある。ＭＣＰはそれぞれがそれと関連するいくつかのメモリユニットを有するいくつかのメモリダイおよび/またはメモリチップを含むことがある。メモリユニットは、ホストから受信したコマンドを実行し、ホストにステータスを報告することができ、周辺回路網とともにいくつかのメモリアレイを含むことがある。メモリアレイは、いくつかの物理的なグループ（たとえば、ブロック）に編成できるメモリセルを含むことがあり、グループのそれぞれが複数のページのデータを記憶できる。
【課題を解決するための手段】
【０００５】
多様なメモリシステムでは、複数のメモリ装置は、共有バスを経由してメモリコントローラに結合される。メモリコントローラは、たとえば消去動作、プログラミング動作、および読取り動作等の多様な動作の性能を調節できる。メモリコントローラと複数のメモリ装置との間の相互作用は、他のメモリシステムの特徴の中でも電力消費、処理速度、および／またはデータ完全性を含むメモリシステムの多様な特徴に影響を与えることがある。
【図面の簡単な説明】
【０００６】
【図１】本開示のいくつかの実施形態にかかるコンピューティングシステムのブロック図である。
【図２】本開示のいくつかの実施形態にかかるメモリを制御するように構成されたシステムの一部のブロック図である。
【図３】本開示のいくつかの実施形態にかかるメモリを制御するように構成されたシステムの一部のブロック図である。
【図４】本開示のいくつかの実施形態にかかるメモリを制御するように構成されたシステムの一部のブロック図である。
【図５】本開示のいくつかの実施形態に従ってメモリを制御するための方法を示すフローチャートである。
【発明を実施するための形態】
【０００７】
本開示は、メモリを初期化するためのシステム、装置、メモリコントローラ、および方法を含む。メモリを初期化することは、複数のメモリ装置を並行して構成する（コンフィギュレーションする）ことを含むことがある。メモリ装置は、共有されたイネーブル信号を受信できる。メモリ装置のそれぞれに一意のボリュームアドレスを割り当てることができる。
【０００８】
本開示の実施形態は、他の利点の中でも、いくつかの以前のメモリシステム、メモリ装置、およびメモリ方法と比較すると、メモリコントローラのピンカウントを削減する、および／またはメモリコントローラと、共有バスを介してメモリコントローラと結合されているメモリ装置との間の相互作用に関して柔軟性を提供する等の多様な利点を提供できる。例として、柔軟性を提供することは、メモリコントローラが並列にまたは直列に複数のメモリ装置を制御する（たとえば、初期化する）ことを可能にすることを含むことがあり、これによってメモリコントローラは、特定の例でどちらがより望ましいのかに応じて、電力使用と性能との間のバランスをとることができるようになる。
【０００９】
本開示の以下の発明を実施するための形態では、本開示の一部を形成し、本開示のいくつかの実施形態がどのようにして実践され得るのかを実例として示す添付図面が参照される。これらの実施形態は、当業者が本開示の実施形態を実践できるようにするほど詳細に説明されており、他の実施形態が活用され得ること、および本開示の範囲から逸脱することなくプロセス、電気的な、および/または構造上の変更が加えられてよいことが理解されるべきである。本明細書に使用されるように、特に図面の参照数字に関して、指示子「Ｎ」、「Ｍ」、「Ｐ」および「Ｑ」は、そのように示されたいくつかの特定の特徴を、本開示のいくつかの実施形態とともに含むことができることを示す。本明細書で使用されるように、「いくつかの」何かはいくつかのかかるものを指すことがある。
【００１０】
本明細書の図は、１つまたは複数の最初の数字が図面番号に相当し、残りの数字が図面中の要素または構成要素を識別する番号付け慣例に従う。異なる図の間の類似する要素または構成要素は、類似する数字を使用することによって特定され得る。たとえば、１０４は図１の要素「０４」を参照してよく、類似要素は図２では２０４と参照されてよい。理解されるように、本明細書中の多様な実施形態に示される要素は、本開示のいくつかの追加の実施形態を提供するために追加、交換、および/または排除できる。さらに、理解されるように、図中に提供される要素の比率および相対的な尺度は、本発明の実施形態を示すことを目的としており、制限的な意味で解釈されるべきではない。
【００１１】
図１は、本開示のいくつかの実施形態にかかるコンピューティングシステム１００の機能ブロック図である。コンピューティングシステム１００は、ホスト１０２に通信で結合されている、たとえばいくつかのソリッドステートドライブ（ＳＳＤ）等のメモリシステム１０４を含む。メモリシステム１０４は、たとえばバックプレーンまたはバス等のインタフェース１０６を通して通信でホスト１０２に結合できる。
【００１２】
ホスト１０２の例は、他のホストシステムの中でも、ラップトップコンピュータ、パーソナルコンピュータ、デジタルカメラ、デジタル記録装置およびデジタル再生装置、携帯電話、ＰＤＡ、メモリカード読み取り装置、ならびにインタフェースハブを含むことがある。インタフェース１０６は、他のコネクタおよびインタフェースの中でも、シリアルＡＴＡ（ＳＡＴＡ）、周辺構成要素相互接続エクスプレス（ＰＣＩｅ）、またはユニバーサルシリアルバス（ＵＳＢ）を含むことがある。ただし、一般には、ホストインタフェース１０６は、メモリシステム１０４とホスト１０２との間で制御信号、アドレス信号、データ信号、および他の信号を受け渡すためのインタフェースとなる場合がある。
【００１３】
ホスト１０２は、メモリおよびバスの制御装置１０７に通信で結合されているいくつかのプロセッサ１０５（たとえば、パラレルプロセッサ、コプロセッサ等）を含むことがある。プロセッサ１０５は、たとえばいくつかの特定用途向け集積回路（ＡＳＩＣ）等のいくつかのマイクロプロセッサ、またはいくつかの他のタイプの制御回路網である場合がある。コンピューティングシステム１００の他の構成要素もプロセッサを有してよい。メモリおよびバスの制御装置１０７は、たとえば動的ランダムアクセスメモリ（ＤＲＡＭ）１１１、グラフィックユーザインタフェース１１８、および／または他のユーザインタフェース（たとえば、ディスプレイモニタ、キーボード、マウス等）等、それに直接的に通信で結合されるメモリ構成要素および他の構成要素を有することがある。
【００１４】
メモリおよびバスの制御装置１０７は、それに通信で結合される周辺およびバスの制御装置１０９を有することもあり、周辺およびバスの制御装置１０９は、たとえば、不揮発性メモリホスト制御インタフェース（ＮＶＭＨＣＩ）フラッシュメモリ１１７等のユニバーサルシリアルバス（ＵＳＢ）インタフェースを使用するフラッシュドライブ１１９、および／またはメモリシステム１０４等のメモリシステムに接続できる。読者が理解するように、メモリシステム１０４は、いくつかの異なるコンピューティングシステム内のハードディスクドライブ（ＨＤＤ）に加えて、またはハードディスクドライブ（ＨＤＤ）の代わりに使用できる。図１に示されているコンピューティングシステム１００は、かかるシステムの一例である。ただし、本開示の実施形態は、図１に示される構成に制限されていない。
【００１５】
図２は、本開示のいくつかの実施形態にかかるメモリを制御するように構成されたシステム２００の一部のブロック図である。システム２００は、たとえばＳＳＤである場合があるメモリシステム２０４を含む。メモリシステム２０４は、ホストインタフェース２０６を介してホスト２０２に結合することができ、メモリコントローラ２１５（たとえば、メモリ制御回路網、ファームウェア、および／またはソフトウェア）、ならびにメモリコントローラ２１５に結合されるいくつかのメモリ装置２３０−１、．．．２３０−Ｎを含むことがある。いくつかの実施形態では、メモリコントローラ２１５は、プリント基板に結合される特定用途向け集積回路（ＡＳＩＣ）である場合がある。
【００１６】
メモリシステム２０４は、メモリ装置２３０−１、．．．、２３０−Ｎとメモリコントローラ２１５との間で多様な信号（たとえば、データ信号、制御信号、および／またはアドレス信号）を送信／受信するためにバス２２０を含む。図２に示されている例は単一のバス２２０を含むが、メモリシステム２０４は、いくつかの実施形態では別個のデータバス（ＤＱバス）、制御バス、およびアドレスバスを含むことがある。バス２２０は、いくつかのメモリ装置２３０−１、．．．、２３０−Ｎによって共有され、オープンＮＡＮＤフラッシュインタフェース（ＯＮＦＩ）、コンパクトフラッシュ（登録商標）インタフェース、マルチメディアカード（ＭＭＣ）、セキュアデジタル（ＳＤ）、ＣＥ−ＡＴＡ、業界規格アーキテクチャ（ＩＳＡ）、マイクロチャネルアーキテクチャ（ＭＳＡ）、拡張ＩＳＡ（ＥＩＳＡ）、インテリジェントドライブエレクトロニクス（ＩＤＥ）、ＶＥＳＡローカルバス（ＶＬＢ）、周辺構成要素相互接続（ＰＣＩ）、カードバス、ユニバーサルシリアルバス（ＵＳＢ）、アドバンスドグラフィックスポート（ＡＧＰ）、パーソナルコンピュータメモリカードインターナショナルアソシエーションバス（ＰＣＭＣＩＡ）、ファイヤワイヤ（ＩＥＥＥ  １３９４）、およびスモールコンピュータシステムインタフェース（ＳＣＳＩ）に関連するバス構造を含むが、これらに限定されない多様なタイプのバス構造を有することがある。
【００１７】
図２に示されるように、メモリ装置２３０−１、．．．、２３０−Ｎは、メモリシステム２０４に記憶ボリュームを提供するいくつかのメモリユニット２１２−１、２１２−２、．．．、２１２−Ｍを含むことがあるいくつかのダイおよび／またはチップを含むことがある。メモリユニット２１２−１、２１２−２、．．．、２１２−Ｍは、ロジカルユニット（ＬＵＮ）と呼ばれることがあり、その上の周辺回路網とともにいくつかのメモリアレイを含むことがある。いくつかの実施形態では、メモリユニット２１２−１、２１２−２、．．．、２１２−Ｍは、メモリコントローラ２１５および／またはバス２２０を介したホスト２０２からのコマンドを独立して実行し、メモリシステムコントローラ２１５および／またはホスト２０２にステータスをレポートできるメモリシステム２０４の最小構成要素である場合がある。メモリユニット２１２−１、２１２−１、．．．、２１２−Ｍは、たとえば、ＮＡＮＤアーキテクチャを有するフラッシュメモリアレイを含むことがある。ただし、実施形態は、特定のタイプのメモリアレイまたはアレイアーキテクチャに制限されない。
【００１８】
図３から図４に関連してさらに以下に説明されるように、メモリ装置２３０−１、．．．、２３０−Ｎ内部のメモリユニット２１２−１、２１２−２、．．．、２１２−Ｍは、いくつかのボリュームに編成できる。いくつかの実施形態では、各ボリュームは、メモリ装置２３０−１、．．．、２３０−Ｎの内の１つの内部でメモリコントローラ２１５から受信されたイネーブル信号（たとえば、チップイネーブル（ＣＥ）信号）を共有するメモリユニットのセット（組）であることがある。たとえば、メモリ装置２３０−１、．．．、２３０−Ｎに関連するいくつかのイネーブル入力および／または出力（たとえば、ピン、端子等）はともに結合することができ、メモリコントローラ２１５の１つの共有イネーブル出力（たとえば、ピン、端子等）に結合されてよい。このようにして、多様な実施形態では、コントローラの単一チップイネーブル出力は、いくつかのメモリ装置２３０−１、．．．、２３０−Ｎによって共有されてよい。
【００１９】
イネーブル信号（たとえば、チップイネーブル信号）の状態は、メモリボリューム、およびいくつかの例では、メモリ装置全体を活性化するおよび／または非活性化するために使用できる。たとえば、メモリシステムは、メモリボリュームがアクティブ低（ロー）である（たとえば、メモリボリュームが、それらの関連するチップイネーブル信号が低（ロー）状態にあるときに、メモリコントローラから受信されたコマンドを処理できる）ように構成できる。アクティブ低のメモリボリュームの場合、それらが共有するチップイネーブル信号が高（ハイ）状態にあるときにメモリボリュームはイナクティブになり（たとえば、選択解除され）、コマンドを処理できない。本開示の実施形態は、特定のチップイネーブル構成を有するメモリボリュームに制限されない。
【００２０】
メモリ装置２３０−１、．．．、２３０−Ｎ内部のターゲットボリューム（複数の場合がある）は、それに割り当てられたボリュームアドレスを有することがある。本明細書に使用されるように、割り当てることは、たとえば、ボリュームアドレスを割り当てること、ボリュームアドレスを確立することおよび／またはボリュームアドレス設定することを指すことがある。割り当てられたボリュームアドレスは、以下にさらに説明されるように、共有チップイネーブル信号と関連するターゲットボリュームを識別するために使用できる。
【００２１】
図３は、本開示のいくつかの実施形態にかかるメモリを制御するように構成されたシステムの一部のブロック図である。図３に示されるメモリシステムは、メモリコントローラ３１５を含む。メモリコントローラ３１５は、いくつかのメモリチャネル全体でアクセスを制御できる。この例では、コントローラ３１５は、それぞれが各メモリチャネルに対するアクセスを制御するいくつかのチャネルコントローラ３２７−１、．．．、３２７−２、．．．、３２７−Ｑを含む。図３は、チャネルごとに別々のチャネルコントローラ３２８−１、３２８−２、．．．、３２８−Ｎを示しているが、いくつかの実施形態では、チャネルコントローラは複数のチャネルを制御できる、および／またはすべてのチャネルを単一のメモリコントローラによって制御することができる。
【００２２】
メモリコントローラ３１５は、ホスト（たとえば、図２に示されているホスト２０２）にメモリコントローラ３１５を結合するための第１のインタフェースを含むことがある。メモリコントローラ３１５は、線形デイジーチェーン構成で配置される複数のメモリ装置３３０−１、．．．、３３０−Ｎにメモリコントローラ３１５を結合するための第２のインタフェースを含むことがある。本開示のいくつかの実施形態に従って、メモリコントローラ３１５は、複数のメモリ装置３３０−１、．．．、３３０−Ｎの初期化中に複数のメモリ装置３３０−１、．．．、３３０−Ｎに共有イネーブル信号（たとえば、チップイネーブル信号）を提供し、初期化中に複数のメモリ装置３３０−１、．．．、３３０−Ｎの各ボリューム３１３−１、．．．、３１３−Ｐに一意のボリュームアドレスを割り当てるように構成できる。メモリコントローラ３１５は、複数のメモリ装置３３０−１、．．．、３３０−Ｎの初期化中に複数のメモリ装置３３０−１、．．．、３３０−Ｎを構成するように構成できる。いくつかの実施形態では、メモリコントローラ３１５は、複数のメモリ装置３３０−１、．．．、３３０−Ｎの初期化のたびに、複数のメモリ装置３３０−１、．．．、３３０−Ｎを構成し、いくつかの一意のボリュームアドレスを割り当てるように構成できる。メモリコントローラ３１５は、複数のメモリ装置３３０−１、．．．、３３０−Ｎの内の特定のメモリ装置に一意のボリュームアドレスを割り当てる前に、複数のメモリ装置３３０−１、．．．、３３０−Ｎの内の特定のメモリ装置を構成するように構成できる。
【００２３】
図３に示す例では、メモリコントローラ３１５は、バス３２０（たとえば、共有データバス、アドレスバス、および制御バス）を介していくつかのメモリ装置３３０−１、．．．、３３０−Ｎに結合される。メモリ装置３３０−１および３３０−２のそれぞれは、いくつかのメモリユニット３１２-１、３１２−２、３１２−３、．．．、３１２−Ｍを含む。メモリユニット３１２−１、．．．、３１２−Ｍはメモリダイであることがあり、メモリ装置３３０−１、．．．、３３０−Ｎは、例としてマルチチップパッケージであることがある。この例では、各メモリ装置内部のメモリユニット３１２−１、．．．、３１２−Ｍは、いくつかのターゲットボリューム３１３−１、３１３−２、３１３−３、．．．、３１３−Ｐに編成される（たとえば、グループ化される）。ターゲットボリュームのメモリユニットのグループは、チップイネーブル（ＣＥ）を共有できる。たとえば、チップイネーブルは、ピンまたは別の物理接点の形をとることができる。たとえば、メモリユニット３１２−１および３１２−２は、メモリ装置３３０−１内部のターゲットボリューム３１３−１に含むことができる。
【００２４】
この例では、メモリコントローラは、メモリ装置３３０−１および３３０−２にＣＥ信号を提供すること専用の２本のＣＥピン３２８−１（ＣＥ１）および３２８−２（ＣＥ２）を含む。たとえば、ＣＥ１は、メモリ装置３３０−１内部のターゲットボリューム３１３−１およびメモリ装置３３０−Ｎ内部のターゲットボリューム３１３−３に関連するＣＥピンに結合される。一方、ＣＥ２は、メモリ装置３３０−１内部のターゲットボリューム３１３-２およびメモリ装置３３０−Ｎ内部のターゲットボリューム３１３−Ｐに関連するＣＥピンに結合される。
【００２５】
コントローラ３１５およびメモリ装置３３０−１、．．．、３３０−Ｎは、たとえばバス３２０の部分である場合がある信号線を介して接続されている多様な他の接点（たとえば、ピン）を有することがある。図３には示されていないが、チャネルコントローラ３２７−１、．．．、３２７−Ｑのそれぞれは、いくつかのメモリ装置に結合できる。実施形態は、図３に示されている例に制限されない。たとえば、メモリシステムは、１チャネルあたりより多くのメモリ装置またはより少ないメモリ装置、１メモリ装置あたりより多くのターゲットボリュームまたはより少ないターゲットボリュームを含むことがある等である。
【００２６】
図３に示されている例では、ターゲットボリューム３１３−１、．．．、３１３−Ｐのそれぞれは、それに関連する割り当てられたボリュームアドレス（たとえば、「ボリューム１」、「ボリューム２」、「ボリューム３」、．．．、「ボリュームＰ」）を有する。図５に関連してさらに以下に説明されるように、コントローラ３１５によって提供されるコマンドは、コントローラ３１５からいくつかの以後のコマンドを受信する特定のメモリ装置に（たとえば、ターゲットボリュームの内の特定のターゲットボリュームに）ボリュームアドレスを割り当て得る。
【００２７】
図４は、本開示のいくつかの実施形態にかかるメモリを制御するように構成されたシステムの一部のブロック図である。図４に示されている実施形態は、いくつかのメモリ装置４３０−１、４３０−２、４３０−３、．．．、４３０−Ｎを含み、本開示のいくつかの実施形態にかかるメモリを初期化するための例のトポロジを示す。たとえば、トポロジは、示されているように線形デイジーチェーン構成４４０である場合がある。メモリ装置４３０−１、．．．、４３０−Ｎは、図３に示されている装置３３０−１、．．．、３３０−Ｎ等のメモリ装置である場合がある。例として、メモリ装置４３０−１、．．．、４３０−Ｎは、ＮＡＮＤメモリ装置である場合がある。
【００２８】
図４に示されている例では、装置４３０−１、．．．、４３０−Ｎのそれぞれが、チェーン入力４３９およびチェーン出力４４１を含む。たとえば、装置４３０−１は、チェーン入力４３９−１（ＥＮｉ＿１）およびチェーン出力４４１−１（ＥＮｏ-１）を含み、装置４３０−２はチェーン入力４３９−２（ＥＮｉ＿２）およびチェーン出力４４１−２（ＥＮｏ＿２）を含み、装置４３０−３はチェーン入力４３９−３（ＥＮｉ＿３）およびチェーン出力４４１−３（ＥＮｏ＿３）を含み、装置４３０−Ｎはチェーン入力４３９−Ｎ（ＥＮｉ＿Ｎ）およびチェーン出力４４１−Ｎ（ＥＮｏ＿Ｎ）を含む。示されているように、メモリ装置４３０−１、．．．、４３０−Ｎのチェーン入力４３９およびチェーン出力４４１は、線形デイジーチェーン構成４４０を作成するために結合できる。この例では、チェーンの最初の装置４３０−１のチェーン入力４３９−１およびチェーンの最後の装置４３０−Ｎのチェーン出力４４１−Ｎは接続されていない（ＮＣ）。その他の装置のチェーン入力４３９は、図４に示される線形デイジーチェーン構成４４０中の前段の装置のチェーン出力４４１に接続されている。
【００２９】
図４に示されているように、および図３に関連して上述されたように、メモリ装置４３０−１、．．．、４３０−Ｎのそれぞれは、メモリコントローラ（たとえば、図３に示されているメモリコントローラ３１５）から共有イネーブル信号を受信するための入力を含む。したがって、メモリ装置４３０−１、．．．、４３０−Ｎのそれぞれは、メモリコントローラから共通のＣＥピンを共有する。たとえば、メモリコントローラからのチップイネーブル信号４４４（ＣＥ０＿Ｎ）は、メモリ装置４３０−１、．．．、４３０−Ｎのそれぞれのチップイネーブルピン４３８（ＣＥ１）によって共有される。メモリ装置４３０−１、．．．、４３０−ＮのそれぞれのＣＥ１ピンは、特定のターゲットボリューム４１３−１、４１３−２、４１３−３、．．．、４１３−Ｐと関連している（たとえば、対応している）。上述されたように、ターゲットボリュームとは、メモリ装置内部で特定のＣＥ信号を共有するいくつかのメモリユニット（たとえば、ＬＵＮ）のことを言う。ターゲットボリュームのそれぞれは、それに割り当てられるボリュームアドレス（たとえば、一意の非固定ボリュームアドレス）を有することがある。この例では、ターゲットボリューム４１３−１にはボリュームアドレス「ボリューム１」が割り当てられ、ターゲットボリューム４１３−２にはボリュームアドレス「ボリューム２」が割り当てられ、ターゲットボリューム４１３−３にはボリュームアドレス「ボリューム３」が割り当てられ、ターゲットボリューム４１３−Ｐにはボリュームアドレス「ボリュームＰ」が割り当てられる。いくつかの実施形態では、ボリュームアドレスは、初期化中（たとえば、電源投入時）に特定のターゲットボリュームに割り当てることができる。
【００３０】
動作中、チェーン入力４３９−１、４３９−２、４３９−３、．．．、４３９−Ｎの状態および（たとえば、チップイネーブル信号４４４の状態に基づいた）チップイネーブルピン４３８の状態が、各メモリ装置４３０−１、．．．、４３０−Ｎがコマンド受け入れることができるかどうかを決定する。たとえば、特定の装置のチェーン入力４３９が高であり、装置のＣＥピン４３８が低である場合には、特定の装置はコマンドを受け入れることができる。特定の装置のチェーン入力４３９が低である、またはＣＥピン４３８が高である場合には、装置はコマンドを受け入れることができない。チェーン入力４３９およびＣＥピン４３８の状態の組合せは、装置がコマンドを受け入れることができるようにするために異なるように構成できるので、実施形態はこの例に制限されない。
【００３１】
いくつかの実施形態では、メモリコントローラは、いくつかの以後のコマンドを処理する特定のターゲットボリュームのターゲットボリュームアドレスを示すコマンドを提供（たとえば、発行）する。たとえば、ボリューム選択コマンドは、メモリコントローラから特定のチップイネーブル信号４４４を共有する特定のターゲットボリューム（たとえば、４１３−１、．．．、４１３−Ｐ）を選択するために、（たとえば、共有バスを介して）いくつかのメモリ装置４３０−１、．．．、４３０−Ｎにメモリコントローラによって提供できる。このようにしてボリュームアドレス指定は、メモリ装置４３０−１、．．．、４３０−Ｎの特定のターゲットボリュームにアクセスするために使用できる。
【００３２】
いくつかの実施形態では、（図３に示される共有バス３２０等の共有バスを介して）メモリコントローラから受信されるチップイネーブル信号（たとえば、チップイネーブル信号４４４）は、いくつかのメモリ装置（たとえば、４３０−１、．．．、４３０−Ｎ）を活性化するために使用される。たとえば、メモリ装置４３０−１、．．．、４３０−Ｎがアクティブ低であると仮定する場合、それらは第１の状態から第２の状態へ（たとえば、高状態から低状態へ）切り替わるチップイネーブル信号４４４を検出することに応えて活性化できる。
【００３３】
コマンドは、活性化されたいくつかのメモリ装置４３０−１、．．．、４３０−Ｎに以後提供できる。いくつかの実施形態では、コマンドは、（たとえば、ターゲットボリュームアドレスを介して）いくつかのメモリ装置４３０−１、．．．、４３０−Ｎの内の特定のメモリ装置内部のいくつかのターゲットボリューム（たとえば、４１３−１、．．．、４１３−Ｐ）の内の或るターゲットボリュームを示すことができる。コマンドによって示されるターゲットボリュームは、アクティブの（たとえば、選択された）ままとなり、残りのターゲットボリュームは、それらの以前の状態（たとえば、チップイネーブル信号の切替えを検出することに応答して活性化される前のそれらの状態）に戻る。
【００３４】
チップイネーブル信号の切替えに応答して活性化された後に受信されたコマンドがターゲットボリュームを示さない（たとえば、コマンドがボリューム選択コマンドではない）場合には、メモリ装置４３０−１、．．．、４３０−Ｎのそれぞれ、およびその中のターゲットボリューム４１３−１、．．．、４１３−Ｐはそれらの以前の状態に戻る。このように、いくつかのメモリボリュームの内の以前選択されたメモリボリューム（たとえば、イネーブル信号の切替え検出前に選択されたメモリボリューム）が選択されたままとなる。また、以前に未選択だったそれらのメモリボリュームは未選択状態に戻る。
【００３５】
図５は、本開示のいくつかの実施形態に従ってメモリを制御するための方法５５０を示すフローチャートである。方法５５０は、図１から図４で上述されたシステム等の多様なメモリシステムに適用できる。例として、方法５５０は、共有バスを介してメモリコントローラに結合されるいくつかのメモリ装置に適用できる。この例では、いくつかのメモリボリュームは、メモリコントローラからのチップイネーブル信号（ＣＥ＃）を共有し、アクティブ低である（たとえば、メモリボリュームは、チップイネーブル信号の低信号状態の検出に応答して活性化する）。メモリボリュームは、それぞれ、コマンドを独立して実行し、メモリコントローラにステータスを報告できるいくつかのメモリユニット（たとえば、ＬＵＮ）を含むことがある。いくつかの実施形態では、ボリュームアドレスをターゲットボリュームに割り当てることができる。ターゲットボリュームは、メモリ装置（たとえば、パッケージ）内部でチップイネーブル信号を共有するいくつかのメモリユニットを含むことができる。いくつかの実施形態では、ボリュームアドレスは、システムの初期化中に（たとえば、電源投入時に）ターゲットボリュームに割り当てることができる。割り当てられたボリュームアドレスは、いくつかの実施形態で、リセットコマンド間で維持することができ、異なるボリュームアドレスは、以後の初期化中にターゲットボリュームに割り当てることができる。
【００３６】
ブロック５５２に示されるように、初期化は、電源投入時に始まることがあるが、初期化は電源オフ状態からメモリシステムに電源を投入せずに発生することがある（たとえば、システムは、最初にメモリシステムの電源を切らずに再初期化できるだろう）ので、実施形態はそのように制限されていない。ブロック５５４で、共有イネーブル信号（たとえば、共有ＣＥ＃）が第１の状態（たとえば、低状態）に設定される。共有ＣＥ＃は、電源投入、または他のメモリ初期化（再初期化を含む）を引き起こすイベントの後に第１の状態に設定できる。本明細書に説明されるように、複数のメモリ装置が線形デイジーチェーン構成で配置されている場合、共有ＣＥ＃は複数のメモリ装置に結合できる。共有ＣＥ＃と関連するメモリボリュームは、ブロック５５６で示されるように、並行してまたは順に構成できる。たとえば、メモリコントローラは、プログラマブルオプションを含むことによって等、順にまたは並行して初期化中にメモリボリュームを選択的に構成できる。プログラマブルオプションは、とりわけメモリコントローラの動作中（たとえば、初期化中）に設定できる、またはメモリコントローラの動作前（たとえば、メモリコントローラの製作時または初期構成時）に設定できるかのどちらかである。
【００３７】
シーケンシャルメモリボリューム構成の場合、予備のコマンド（たとえば、読取りステータスコマンド（７０ｈ））が、ブロック５５８で示される複数のメモリ装置のそれぞれに提供（例えば、発行）できる。読取りステータスコマンドは、提供されている最後の動作のステータス値の取出しを引き起こすことがある。メモリ装置のチェーン入力の状態に関わりなく、かかるコマンドはすべてのメモリ装置によって受け入れることができる。いくつかのメモリシステムは、任意の他のコマンドを提供できる前にメモリコントローラがかかる予備のコマンドを提供することを要求することがある。予備コマンドに続いて、リセットコマンドがブロック５６０−１に示されるように提供できる。リセットコマンド（ＦＦｈ）は、複数のメモリ装置（たとえば、高状態等の特定の状態に設定されたチェーン入力を有するメモリ装置）の内の第１のメモリ装置に提供できる。すなわち、いくつかの実施形態では、リセットコマンドは、特定の状態に設定されたチェーン入力を有するメモリ装置だけによって受け入れられてよい。したがって、リセットコマンドを提供することは、特定のメモリ装置が特定の状態のチェーン入力を有することに応えて、特定のメモリボリュームをリセットすることを含むことがある。リセットコマンドは、ターゲットメモリ装置を電源投入状態（たとえば、デフォルト電源投入状態）に入れることができる。
【００３８】
リセットコマンドに少なくとも部分的に応答して、第１のメモリボリュームは、ブロック５６２で示されるように構成できる。たとえば、第１のメモリ装置を構成することが、第１のメモリ装置でトリムをロードすることを含むことがある。メモリ装置を構成することは、ホストが構成情報をメモリボリュームからおよび／またはメモリボリュームに受信するおよび／または提供することができるように、装置識別子を読み取ることおよび／または書き込むこと、装置パラメータを読み取ること／書き込むこと、装置ブートコードを読み取ること／書き込むこと、および／または他の構成（コンフィギュレーション）動作を含むことがある。
【００３９】
第１のメモリボリュームの構成後、ブロック５６４−１で示されるように、ボリュームアドレスを第１のメモリボリュームに割り当てることができる。たとえば、設定特徴コマンドは、第１のメモリボリュームにボリュームアドレスを割り当てるために提供できる。メモリ装置の各ボリュームにボリュームアドレスを割り当てることができる。たとえば、２つのターゲットボリュームを含む特定のメモリ装置は、それに割り当てられた２つの一意の非固定ボリュームアドレスを有することができる。ボリュームアドレスの割当てに関連する時間が経過した後、第１のメモリ装置および／またはそれに関連するターゲットボリュームを選択解除し、第１のメモリ装置のチェーン入力を無視させるために、第１のメモリ装置のチェーン出力は特定の状態（例えば、高状態）に設定できる。第１のメモリ装置のチェーン入力の状態は（たとえば、低状態に）変更できる。
【００４０】
第１のメモリボリュームにボリュームアドレスが割り当てられた後、ブロック５６６−１で示されるようにチェーン内に別のメモリ装置があるかどうかに関する決定を下すことができる。たとえば、チェーン内の次のメモリ装置の存在は、第１のメモリ装置が選択解除された後に以後のクエリー（たとえば、読取り識別（ＩＤ）コマンド）が（たとえば、第２のメモリ装置に）提供されることに応えて示すことができる。読取りＩＤコマンドは、コマンドが提供されたターゲットが特定の規格（たとえば、ＯＮＦＩ規格）に対応していることを識別できる。読取りＩＤコマンドに応えて、特定の規格に対応している装置は、そのことを示す特定のシグネチャを返すことができる。いくつかの実施形態では、装置が特定の規格に対応していない場合、装置は読取りＩＤコマンドに応答しない。次の装置が応答する場合、次いで、第１のメモリボリュームについて上述されたように（たとえば、ブロック５６０−１から５６６−１に関して説明されるように）シーケンシャルな構成（コンフィギュレーション）プロセスが続行できる。第２のメモリ装置は、構成され、それに割り当てられた第２のボリュームアドレスを有することができる。
【００４１】
本明細書に説明されるように、ボリュームアドレスは一意（たとえば、割り当てられた各ボリュームアドレスは異なり得る）かつ非固定である（たとえば、特定のメモリボリュームは、以後の初期化中に割り当てられる異なるボリュームアドレスを有することがある）場合がある。たとえば、複数のメモリボリュームは再構成することができ、一意の非固定ボリュームアドレスを、以後の初期化中に複数のメモリボリュームのそれぞれに再割り当てることができる。本明細書に使用されるように、ボリュームアドレスを「再割り当てする」ことは、同じボリュームアドレスが同じメモリボリュームに割り当てられることを暗示していない。むしろ、ボリュームアドレスを「再割り当てする」ことは、以後のボリュームアドレスが特定のメモリボリュームに割り当てられることを示す。いくつかの例では、特定のメモリ装置は使用停止することができ、その場合、使用停止されたメモリ装置は以後の初期化中にそれに割り当てられた一意の非固定ボリュームアドレスを有さないだけではなく、使用停止されたメモリ装置は以後の初期化中に構成されないだろう。いくつかの例では、新しいメモリ装置を、この新しいメモリ装置なしで先に初期化を行った後に、チェーンに追加できる。かかる例では、以後の初期化中に複数のメモリ装置を再構成することができ、新しいメモリ装置は構成され、それに割り当てられた一意の非固定ボリュームアドレスを有することがある。かかる実施形態は、装置の使用停止および／または追加を可能にすることによって、メモリ装置のチェーンの動作での柔軟性を可能にする。いくつかの実施形態では、初期化プロセスは、メモリ装置のすべてが初期化されるまで繰り返すことができる。たとえば、以後のリセットコマンドは、チェーン内の残りのメモリ装置に順次提供することができ、残りのメモリ装置は順次構成することができ、異なるボリュームアドレスは順次残りのメモリ装置に割り当てることができる。
【００４２】
次のメモリ装置が応答しない場合、ブロック５６８−１で示されるように、（たとえば、図３に示されるメモリコントローラ３１５等の、複数のＣＥ＃を含むそれらのメモリコントローラに対して）次のチップイネーブルが初期化されるべきであるかどうかについての決定を下すことができる。別のＣＥ＃が初期化されなければならない場合、プロセスは、ブロック５５４に戻り、ここで、次のＣＥ＃に関連するメモリ装置および／またはメモリボリュームの初期化の第１の状態に次のＣＥ＃を設定できる。特定のＣＥ＃に関連するメモリ装置および/またはボリュームが初期化された後、ブロック５７０で示されるように、特定のＣＥ＃の状態は異なる状態（第２の状態）（たとえば、高状態）に設定できる。以後、ボリューム選択コマンドが提供されて、幾つかのコマンドおよび／または動作の中でも特に、追加のコマンド（たとえば、オン・ダイ・ターミネーション（ＯＤＴ）マトリックスをセットアップするコマンド）のためのボリュームを選択することができる。
【００４３】
ブロック５５６で示されるように、パラレルな構成（コンフィギュレーション）が実行されるのか、それともシーケンシャルな構成が実行されるのかについての決定に戻り、メモリ装置のパラレルな構成の場合、ブロック５６０−２で示されるように複数のメモリ装置のそれぞれにリセットコマンド（ＦＦｈ）が提供できる。パラレル構成プロセスに従って、複数のメモリ装置は、複数のメモリ装置のそれぞれのチェーン入力の状態（たとえば、高または低）に関わりなくリセットコマンドを受け入れることができる。チェーンの複数のメモリ装置のそれぞれは、ブロック５７４で示されるようにリセットコマンドに応えて並行して（たとえば、実質的に同時に）構成できる。パラレル構成に関して使用されるように、「実質的に同時に」は少なくとも、メモリコントローラが複数のメモリ装置を独立して構成するために別々のコマンドを提供することなく、複数のメモリ装置がともに構成されることを含む。いくつかの実施形態では、「実質的に同時に」は、同時に複数のメモリ装置を構成することを含むことがある。メモリ装置を構成することは、ブロック５６２に関してさらに詳しく上述されている。パラレルな構成は、メモリ装置が順に個別にではなく並行して実質的に同時に構成される点を除き、シーケンシャルな構成と同様である。
【００４４】
複数のメモリ装置が構成された後、ブロック５６４−２に示されるように、ボリュームアドレス（たとえば、一意の非固定ボリュームアドレス）がメモリボリュームのそれぞれに割り当てられることができる。パラレル構成プロセスによるボリュームアドレスの割当ては、ブロック５６４−１に関して上述されたシーケンシャル構成プロセスによるボリュームアドレスの割当てと同様である。複数のメモリ装置が実質的に同時に構成されるパラレル構成とは異なり、ボリュームアドレスは複数のメモリ装置のそれぞれに順次割り当てることができる。ボリュームアドレスが第１のメモリ装置に割り当てられていることに応答して（たとえば後に）、第１のメモリ装置のチェーン出力が特定の状態（たとえば、高状態）に駆動されて、第１のメモリ装置を選択解除し、かつ、第１のメモリ装置のチェーン入力の状態を無視することができる。
【００４５】
第１のボリュームアドレスは第１のメモリボリュームに割り当てることができ、次いで次の装置が、ブロック５６６−２に示されるように、次のボリュームアドレスの割当てのためにチェーン内に存在するかどうかに関して決定を下すことができる。たとえば、チェーン内の次のメモリ装置の存在は、第１のメモリ装置が選択解除された後に（たとえば、第２のメモリ装置に）以後のクエリー（たとえば、読取りＩＤコマンド）が提供されることに応えて示すことができる。読取りＩＤコマンドは、コマンドが提供されたターゲットが特定の規格（たとえば、ＯＮＦＩ規格）に対応していることを識別できる。読取りＩＤコマンドに応えて、特定の規格に対応している装置は、そのことを示す特定のシグネチャを返すことができる。いくつかの実施形態では、装置が特定の規格に対応していない場合、装置は読取りＩＤコマンドに応答しない。次の装置が応答する場合、ボリュームアドレスは、ブロック５６４−２に示されるように次の装置に割り当てることができる。
【００４６】
次の装置が応答しない場合、次いでＣＥ＃は異なる状態に設定することができ、それによってそのＣＥ＃と関連する複数のメモリ装置および／またはボリュームのそれぞれを選択解除できる。次のメモリ装置が応答しないことに応えて（たとえば、それ以上チェーンで初期化される特定のＣＥ＃と関連するメモリ装置がないことに応えて）、ブロック５６８−２に示されるように（たとえば、図３に示されるメモリコントローラ３１５等の、複数のＣＥ＃を含むそれらのメモリコントローラに対して）次のチップイネーブルが初期化されるべきかどうかに関する決定を下すことができる。次のＣＥ＃が初期化されるべきかどうかを決定するためのプロセスは、ブロック５６８−１に関して上述されたプロセスと同様である。特定のＣＥ＃に関連するメモリ装置および／またはボリュームが初期化された後、特定のＣＥ＃の状態は、ブロック５７０で示されるように異なる状態（第２の状態）（たとえば、高状態）に設定できる。以後、他のコマンドおよび／または動作の内、ボリューム選択コマンド（Ｅ１ｈ）が提供され、追加のコマンド（たとえば、オン・ダイ・ターミネーション（ＯＤＴ）マトリックスをセットアップするコマンド）のためのボリュームを選択することができる。
（結論）
【００４７】
本開示は、メモリを初期化するためのシステム、装置、メモリコントローラ、および方法を含む。メモリを初期化することは、メモリ装置を並行して構成することを含むことがある。メモリ装置は、共有されたイネーブル信号を受信することがある。メモリ装置のそれぞれに一意のボリュームアドレスを割り当てることができる。
【００４８】
要素が別の要素「の上に」、「に接続して」、または「と結合して」いると呼ばれるとき、要素は他の要素の上にじかにある、他の要素と直接的に接続されている、もしくは他の要素と直接的に結合している、または介入する要素が存在している場合があることが理解されるだろう。対照的に、要素が別の要素「の上にじかに」、「に直接的に接続して」、または「と直接的に結合して」いると呼ばれるとき、介入する要素または層は存在していない。本明細書に使用されるように、用語「および／または」は、いくつかの関連する一覧項目のありとあらゆる組合せを含む。本明細書に使用されるように、用語「または」は、特に断りのない限り、論理的に包括的なまたはを意味する。すなわち、「ＡまたはＢ」は（Ａだけ）、（Ｂだけ）または（ＡとＢの両方）を含むことがある。言い換えると、「ＡまたはＢ」は「Ａおよび／またはＢ」または「ＡおよびＢの１つまたは複数」を意味することがある。
【００４９】
特定の実施形態が本明細書で示され、説明されてきたが、当業者は、同じ結果を達成するために計算された構成が示されている特定の実施形態に代わることができることを理解するだろう。本開示は、本開示のいくつかの実施形態の適応または変形を対象とすることを目的としている。上記説明が、制限的な様式ではなく示されている様式で行われたと理解されるべきである。上記の実施形態、および本明細書に特に説明されていない他の実施形態の組合せは、上記説明を検討すると当業者に明らかであろう。本開示のいくつかの実施形態の範囲は、上記の構造および方法が使用される他の応用を含む。したがって、本開示のいくつかの実施形態の範囲は、かかる特許請求の範囲が権利がある均等物の全範囲とともに、添付の特許請求の範囲に関して決定されるべきである。
【００５０】
上記の発明を実施するための形態では、いくつかの特長は、開示を合理化するために単一の実施形態にまとめて分類されている。この開示方法は、本開示の開示されている実施形態が、各請求項に明示的に列挙されるよりも多い特長を使用しなければならないという意図を反映するとして解釈されるべきではない。むしろ、以下の特許請求の範囲が反映するように、本発明の主題は、単一の開示された実施形態のすべての特長にはない。したがって、続く特許請求の範囲は、発明を実施するための形態の中に本書によって組み込まれ、各請求項は別個の実施形態としてそれ自体で成立している。
【図１】
0005918279.tif 000002
【図２】
0005918279.tif 000003
【図３】
0005918279.tif 000004
【図４】
0005918279.tif 000005
【図５】
0005918279.tif 000006