JP5533963B2 - 構成可能な入出力ポートを伴うメモリモジュール - Google Patents

構成可能な入出力ポートを伴うメモリモジュール Download PDF

Info

Publication number
JP5533963B2
JP5533963B2 JP2012192733A JP2012192733A JP5533963B2 JP 5533963 B2 JP5533963 B2 JP 5533963B2 JP 2012192733 A JP2012192733 A JP 2012192733A JP 2012192733 A JP2012192733 A JP 2012192733A JP 5533963 B2 JP5533963 B2 JP 5533963B2
Authority
JP
Japan
Prior art keywords
memory module
controller
input
memory
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012192733A
Other languages
English (en)
Other versions
JP2013047952A (ja
Inventor
アール. リー,テリー
オバード,デイビッド
グリーフ,ロイ
エヌ. レイボヴィッツ,ロバート
ツァイ,ビクター
Original Assignee
マイクロン テクノロジー, インク.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by マイクロン テクノロジー, インク. filed Critical マイクロン テクノロジー, インク.
Publication of JP2013047952A publication Critical patent/JP2013047952A/ja
Application granted granted Critical
Publication of JP5533963B2 publication Critical patent/JP5533963B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)
  • Information Transfer Systems (AREA)
  • Dram (AREA)
  • Transceivers (AREA)
  • Logic Circuits (AREA)
  • Programmable Controllers (AREA)
  • Static Random-Access Memory (AREA)

Description

本開示は、概して、メモリモジュールに関し、具体的には、本開示は、構成可能な入出力ポートを伴うメモリモジュールに関する。
メモリカード等のメモリモジュールは、一般的に、パーソナルコンピュータ、携帯情報端末(PDA)、デジタルカメラ、デジタルメディアプレーヤ、携帯電話等の、電子デバイスで使用される。種々のストレージ応用の場合、フラッシュメモリモジュール等のメモリモジュールは、電子デバイスのプロセッサ等のホストデバイスに取り外し可能に連結することができる、リムーバブルメモリとして構成され得る。
標準的なメモリモジュールは、メモリコントローラに連結される1つ以上のメモリデバイスを含み得る。各メモリデバイスは、NANDまたはNORフラッシュメモリデバイス、ダイナミックランダムアクセスメモリ(DRAM)デバイス、スタティックランダムアクセスメモリ(SRAM)デバイス等であり得、また、不揮発性メモリセル等のメモリセルのアレイを含み得る。メモリコントローラは、データ信号、アドレス信号、および制御信号を、1つ以上のメモリデバイスのそれぞれに提供する。
メモリコントローラは、通常、ホストデバイスを連結して電子システムの一部を形成するために、入出力インターフェース(例えば、しばしば入出力バスと称される)を介して、ホストと通信するように設置される。入出力バスの一例は、USB(Universal Serial Bus:ユニバーサルシリアルバス)インターフェースである。
入出力インターフェースは、一般的に、1、4、8、16個等の、1つ以上のデータ信号リンク(しばしば、レーンと称される)を提供し、それを通じて、コントローラは、ホストからデータ信号を受信することができ、および/または、それを通じて、コントローラは、データ信号をホストに送信することができる。例えば、入出力データ信号レーンは、一方向または双方向データ信号線を含み得る。入出力データ信号レーンの数は、しばしば、入出力インターフェースの入出力バス幅と称される。しかしながら、従来のインターフェースは、一般的に、出力のために使用される同じ入出力データ信号レーンが、入力のためにも使用される。
上述した理由から、また、本明細書を読み、理解した際に当業者に明らかとなる、以下に述べる他の理由から、メモリモジュール上に入出力インターフェースのデータ信号線を構成するための代替物に対する技術的必要性が存在する。
本開示の一実施形態による、電子システムの一実施形態のブロック図である。 本開示の別の実施形態による、リングとして構成される電子システムの一実施形態のブロック図である。 本開示の別の実施形態による、電子システムの別の実施形態のブロック図である。 本開示の別の実施形態による、電子システムの別の実施形態のブロック図である。 本開示の別の実施形態による、電子システムの別の実施形態のブロック図である。 本開示の別の実施形態による、電子システムの別の実施形態のブロック図である。
以下の詳細な説明では、本明細書の一部を形成し、具体的な実施形態が例示的に示される添付図面を参照する。図中、複数の図面を通じて、同じ参照番号は、実質的に同じ構成要素を示す。本開示の範囲から逸脱することなく、他の実施形態が用いられてもよく、また、構造的、論理的、および電気的な変更が行われ得る。したがって、以下の詳細な説明は、限定的に取り入れられるものではなく、本開示の範囲は添付の特許請求の範囲およびその均等物によってのみ定義される。
図1は、一実施形態による、例えば電子システムの一部として、ホストコントローラ110に連結されるメモリカード等のメモリモジュール100のブロック図である。電子システムには、コンピュータシステム、周辺デバイス、携帯電話および無線デバイス、デジタルカメラ、音声レコーダ、携帯情報端末(PDA)等のようなシステムが挙げられる。
一実施形態の場合、メモリモジュール100は、メモリコントローラ130と通信する、メモリチップまたはダイ等の、1つ以上のメモリデバイス120を含み得る。メモリデバイスの例には、NAND、NOR、または他の不揮発性メモリデバイス、ダイナミックランダムアクセスメモリデバイス(DRAM)、スタティックランダムアクセスメモリデバイス(SRAM)等が挙げられる。各メモリデバイス120は、不揮発性メモリセル等のメモリセルのアレイを含み得る。
ホストコントローラ110は、メモリモジュール100の外部にあり、かつホストコントローラ110とメモリコントローラ130との間に連結される外部制御信号リンク140を通じて、コマンド信号(コマンド)およびアドレス信号(アドレス)等の制御信号をメモリコントローラ130に提供する。一実施形態の場合、メモリコントローラ130は、例えばその構成および/またはメモリモジュール100の構成を示す、構成信号(構成情報)を、制御信号リンク140を通じて、ホストコントローラ110に送信し得る。データ信号(データ)は、書き込み動作中に、外部データリンク150(データレーンとも称される)を通じて、ホストコントローラ110の入出力ポート142からメモリコントローラ130の入出力ポート144に送信され得る。データ信号は、読み取り動作中に、データリンク150を通じて、メモリコントローラ130の入出力ポート144から、ホストコントローラ110の入出力ポート142で受信され得る。
メモリコントローラ130は、例えばホストコントローラ110から受信されるコマンドおよび/またはアドレスに応答して、メモリモジュール100の内部にある内部制御リンク160を通じて、アドレス信号および/またはコマンド信号をメモリデバイス120のうちの1つ以上に提供する。メモリコントローラ130はまた、書き込み動作中に、メモリモジュール100の内部にある内部データリンク170を通じて、ホストコントローラ110から受信されるデータをメモリデバイス120のうちの1つ以上に送信する。メモリコントローラ130はまた、その後のホストコントローラ110への送信のために、書き込み動作中に、データリンク170を通じて、メモリデバイス120のうちの1つ以上からデータを受信する。一実施形態の場合、データリンク170は、1、2、4、8、16、32、または64ビット等のバス幅を有する、データバスであり得る。
一実施形態の場合、第1の数のデータリンク150は、一方向であり得、例えば書き込み動作中に、例えばホストコントローラ110からメモリコントローラ130に、第1の方向にデータを運搬するように構成され得る。第1の数のデータリンク150に連結されるホストコントローラ110の入出力ポート142を、出力として構成することで、および、第1の数のデータリンク150によって入出力ポート142のそれぞれ1つに連結されるメモリコントローラ130の入出力ポート144を、入力として構成することで、これを達成し得る。第2の(例えば、残りの)数のデータリンク150は、一方向であり得、読み取り動作中に、例えばメモリコントローラ130からホストコントローラ110に、第1の方向とは反対の第2の方向にデータを運搬するように構成され得る。第2の数のデータリンク150に連結されるホストコントローラ110の入出力ポート142を、入力として構成することで、および、第2の数のデータリンク150によって入出力ポート142のそれぞれ1つに連結されるメモリコントローラ130の入出力ポート144を、出力として構成することで、これを達成し得る。
一実施例では、図1においてN=4の場合、すなわち4つのデータリンク150の場合、データリンク150〜150にそれぞれ連結される入出力ポート142〜142は、出力ポートとして構成され得、データリンク150〜150にそれぞれ連結される入出力ポート144〜144は、入力ポートとして構成され得、一方で、データリンク150に連結される入出力ポート142は、入力ポートとして構成され得、データリンク150に連結される入出力ポート144は、出力ポートとして構成され得る。これは、データリンク150〜150が、ホストコントローラ110からメモリコントローラ130にデータを運搬するように、また、データリンク150が、メモリコントローラ130からホストコントローラ110にデータを運搬するように構成する。別の実施例では、データリンク150〜150が、ホストコントローラ110からメモリコントローラ130にデータを運搬するように、また、データリンク150〜150が、メモリコントローラ130からホストコントローラ110にデータを運搬するように構成され得る。一実施形態の場合、読み取りおよび書き込み動作は、並行して生じ得、よって、データは、第1の数のデータリンク150を通じてホストコントローラ110からメモリコントローラ130に、およびデータリンク150のいくつかの一部を通じてメモリコントローラ130からホストコントローラ110に、並行して運搬される。
別の実施形態の場合、データリンク150の全ては、例えばホストコントローラ110からメモリコントローラ130といった、第1の方向にデータを運搬するように構成され得るが、データリンク150の全てのうちのいくつか(例えば、フラクション)は、例えばメモリコントローラ130からホストコントローラ110といった、第1の方向とは反対の第2の方向にデータを運搬するように構成され得る。例えば、データが第1の方向に運搬されている時には、ホストコントローラ110の入出力ポートの142の全てが、出力として構成され、メモリコントローラ130の入出力ポート144の全てが、入力として構成され、また、データが第2の方向に運搬される時には、データリンク150の全ての部分に連結されるホストコントローラ110の入出力ポート142の全てのうちのいくつかが、入力ポートとして構成され、データリンク150の全ての部分に連結されるメモリコントローラ130の入出力ポート144の全ての部分が、出力ポートとして構成される。代替として、データリンク150の全てが、メモリコントローラ130からホストコントローラ110にデータを運搬するように構成されてもよく、一方で、データリンク150の全てのうちのいくつか(例えば、フラクション)が、ホストコントローラ110からメモリコントローラ130にデータを運搬するように構成されてもよい。
別の実施形態の場合、データリンク150のうちの1つ以上は、双方向データリンクとして構成され得る。ホストコントローラ110の1つ以上の入出力ポート142を、双方向入出力として構成することで、および、データリンク150によって1つ以上の入出力ポート142にそれぞれ連結されるメモリコントローラ130の1つ以上の入出力ポート144を、双方向入出力(入力および出力の両方)として構成することで、これを達成し得る。一実施形態の場合、データは、第1の数の双方向データリンクを通じて、ホストコントローラ110からメモリコントローラ130に運搬され得、並行して、データは、第2の数の双方向データリンクを通じて、メモリコントローラからホストコントローラ110に運搬され得る。
一実施形態の場合、データリンク150の構成は、例えばメモリモジュール100の製造中に、例えば構成データとして、例えばメモリコントローラ130のレジスタ180に格納され得る。次いで、メモリモジュール100の始動時に、例えば、ホストコントローラ110からのデータ書き込みのための入力ポートとして、および/またはホストコントローラ110へのデータ書き込みのための出力ポートとして、適宜入出力ポート144を構成することによって、例えば、メモリコントローラ130は、レジスタ180に格納される構成に従って、レジスタ180を読み取り、かつデータリンク150を構成する。例えば、レジスタ180は、その構成を示す、すなわち、入力として構成されるか、または出力として構成される、各入出力ポート144のためのビットを含み得る。
別の実施形態の場合、メモリコントローラ130は、入出力ポート144の構成を示す信号を、ホストコントローラ110に送信し得、よって、ホストコントローラ110は、入出力ポート144の構成に対応するよう入出力ポート142を構成することができる。例えば、ホストコントローラ110からメモリコントローラ130へのデータ書き込みの場合、ホストコントローラ110は、入力ポートとして構成される入出力ポート144に連結される入出力ポート142を、出力ポートとして構成し得、一方で、メモリコントローラ130からホストコントローラ110へのデータ読み取りの場合、ホストコントローラ110は、出力ポートとして構成される入出力ポート144に連結される入出力ポート142を、入力ポートとして構成し得る。
一実施形態の場合、データリンク150は、入出力ポート144ごとの電力消費、メモリモジュール100に供給される電力、メモリデバイス120がプログラムされた、および/または読み取られた回数、入出力ポート144ごとのデータレート容量等のような、メモリモジュール100の動作属性に従って構成され得る。例えば、ホストコントローラ110は、データがホストコントローラ110とメモリコントローラ130との間をあるレートで運搬されるべきであることを示すコマンドを、メモリコントローラ130に送信し得る。所望のレートに基づいて、メモリコントローラ130は、所望のレートを達成するように、その入出力ポート144を構成し得る。代替として、メモリコントローラ130は、コマンドに応答して、その属性をホストコントローラ110に送信し得、ホストコントローラ110は、メモリモジュール100の属性に基づいて、データを運搬するために構成すべきデータリンク150の数を決定し得る。次に、ホストコントローラ110は、それに応じてその入出力ポート142を構成し得、そして、出力ポートとして構成される入出力ポート142に連結される場合には、その入出力ポート144を入力ポートとして構成するように、および入力ポートとして構成される入出力ポート142に連結される場合には、その入出力ポート144を出力ポートとして構成するように、メモリコントローラ130に指示し得る。一実施形態の場合、メモリモジュール100の属性は、メモリコントローラ130のレジスタ180等のレジスタに格納され得る。
別の実施形態の場合、データリンク150は、例えばホストコントローラ110からのコマンドに応答して、「オンザフライ」で構成され得る。例えば、ホストコントローラ110は、データがホストコントローラ110とメモリコントローラ130との間をある全体のデータレートで運搬されるべきであることを示すコマンドを、メモリコントローラ130に送信し得る。メモリコントローラ130は、次いで、そのレートに基づいて、ホストコントローラ110とメモリコントローラ130との間のデータの運搬に、いくつのデータリンク150を使用するのかを決定する。データリンク150の数は、リンクごとのデータレート、リンクごとの電力消費、メモリモジュール100に供給される電力等のような、全体のデータレートおよびメモリモジュール100の属性から決定され得る。例えば、メモリコントローラ130は、全体のデータレートの入力に応答して、データの運搬に使用されるべきデータリンク150の数を出力する、ルックアップテーブル185を有し得る。メモリコントローラ130は、次いで、それに応じて入出力ポート144を構成して、入出力ポート144の構成の指標をホストコントローラ110に送信し得、よって、ホストコントローラ110は、入出力ポート144の構成に対応するように、その入出力ポート142を構成することができ、例えば、出力ポートとして構成される入出力ポート142は、入力ポートとして構成される入出力ポート144に連結され、その逆も同様である。
別の実施形態の場合、メモリコントローラ130は、データがメモリコントローラ130とホストコントローラ110との間をあるデータレートで運搬されるべきであることを示す、ホストコントローラ110のコマンドに応答して、メモリモジュール100の1つ以上の属性をホストコントローラ110に送信し得る。ホストコントローラ110は、次いで、メモリコントローラ130から受信されるメモリモジュール100の1つ以上の属性から、ホストコントローラ110とメモリコントローラ130との間をあるデータレートで運搬するために必要となり得る、データリンク150の数を決定し得る。ホストコントローラ110は、次いで、それに応じて入力または出力のためのその入出力142の数を構成することによって、また、入力または出力のためのその入出力144の数をそれに応じて構成するように、コントローラ130に指示することによって、データリンク150の数を構成し得、よって、出力のために構成される入出力142は、入力のために構成される入出力144に連結され、その逆も同様である。
ある状況の場合、データがメモリコントローラ130からホストコントローラ110に運搬される、読み取り動作のためのデータレートは、データがホストコントローラ110からメモリコントローラ130に運搬される、書き込み動作のためのデータレート未満であり得、逆も同様である。したがって、より多くの数のデータリンク150が、読み取り動作よりも書き込み動作のために使用され得、逆も同様である。
一実施形態の場合、メモリコントローラ130に/からデータを運搬するために使用されるデータリンク150の数は、メモリモジュール100の各線の所要電力等の属性に依存し得る。一実施例の場合、メモリモジュール100は、データの運搬に使用されるデータリンク150の数を制限することによって、複数の電力消費レベルで動作させることができる。したがって、メモリモジュール100は、電力消費をある所望のレベル未満に保持するように、その入出力ポート144を構成することができる。電力消費は、概して、入出力ポート144がデータ入力に使用される時と、データ出力に使用される時との間で異なるので、入力に指定される入出力ポート144の数は、出力に指定される数と同じ数にする必要はない。一実施形態の場合、データリンク150ごとの電力消費等の電力消費情報は、例えばメモリモジュール100の製造中に、メモリコントローラ130のレジスタ180等のレジスタに格納され得る。
一実施形態の場合、メモリコントローラ130は、メモリモジュール100に供給される電力等の属性に応答して、データリンク150を構成するように構成され得る。例えば、メモリモジュール100が第1の電力モードで動作している時、例えばメモリモジュール100が公共電力グリッド等の高電力源によって電力供給される時には、メモリモジュール100が第2の電力モードで動作している時、例えばメモリモジュール100がバッテリ等の低電力源によって電力供給される時よりも多い数のデータリンクが、ホストコンピュータ110とメモリコントローラ130との間でデータを運搬するために使用され得る。例えば、メモリモジュール100が高電力源によって電力供給される時には、データリンク150の全てが、データを運搬するために使用され得、メモリモジュール100が低電力源によって電力供給される時には、データリンク150の全てよりも少数が、データを運搬するために使用され得る。
一実施形態の場合、メモリモジュール100が高電力源によって電力供給される時には、メモリコントローラ130は、その入出力ポート144の全てを入力または出力として構成し得、続いて、入出力ポート144の構成を示す信号をホストコントローラ110に送信し得る。ホストコントローラ110は、次いで、該信号に応答して、全てのその入出力ポート142を入力または出力のために構成し得、よって、出力のために構成される入出力ポート142は、入力のために構成される入出力ポート144にそれぞれ連結され、逆も同様である。
メモリモジュール100が低電力源によって電力供給される時には、メモリコントローラ130は、その入出力ポート144の全てよりも少数を入力または出力として構成し得、残りの入出力ポート144の使用を防止(例えば、無効に)し得る。メモリコントローラ130は、次いで、入出力ポート144の構成を示す信号をホストコントローラ110に送信し得る。ホストコントローラ110は、次いで、該信号に応答して、その入出力ポート142の全てよりも少数(例えば、入出力ポート142および144が構成される数と同じ数)を入力または出力のために構成し得、よって、出力のために構成される入出力ポート142は、入力のために構成される入出力ポート144にそれぞれ連結され、逆も同様である。ホストコントローラ110は、無効の入出力ポート144にそれぞれ連結される残りの入出力ポート142の使用を防止(例えば、無効に)し得ることに留意されたい。
一実施形態の場合、ホストコントローラ110からメモリコントローラ130にデータを運搬するために使用される、データリンク150の数は、メモリデバイス120で実行されるプログラミング動作および読み取り動作の相対的な数に基づき得る。したがって、メモリコントローラ130は、プログラミングおよび読み取り動作の数を追跡し、そしてその入出力ポート144を構成し得、よって、入力として構成されるポートの数は、書き込み動作の数に比例し、出力として構成されるポートの数は、読み取り動作の数に比例する。
図2は、別の実施形態による、リングネットワークとして構成される電子システム200のブロック図である。一実施形態の場合、リングネットワーク200は、上記に説明されたメモリモジュール100と実質的に類似し得るメモリモジュール220に、一方向データリンク212によって、ポイントツーポイントで連続的に連結される、ホストコントローラ等のコントローラ210を含む。一実施形態の場合、メモリモジュール220は、一方向データリンク214によって、デバイス230の列225の第1のデバイス(デバイス230)にポイントツーポイントで連続的に連結される。デバイス230は、一方向のデータリンク216によって互いにポイントツーポイントで連続的に連結されて、列225を形成する。列225の最後のデバイス(デバイス230)は、データリンク218によって、コントローラ210にポイントツーポイントで連続的に連結されて、リングネットワーク200を完成する。本実施例は、各データリンクが2つの線を有するように示しているが、各データリンクは、1つ以上の線を有し得る。一実施形態の場合、デバイス230のそれぞれは、メモリモジュール220に類似するメモリモジュール、ハードドライブ、カメラ、スレーブコントローラ等であり得る。
別の実施形態の場合、メモリモジュール220は、例えば上記に説明されたメモリコントローラ130に類似するコントローラ222を含み、デバイス230のそれぞれは、例えばメモリコントローラ130に類似するコントローラ232を含む。例えば、メモリモジュール220のコントローラ222は、メモリモジュール220の入出力ポート240を入力として、およびメモリモジュール220の入出力ポート242を出力として構成するように構成される。デバイス230のそれぞれのコントローラ232は、そのデバイスの入出力ポート244を入力として、およびそのデバイスの入出力ポート246を出力として構成するように構成される。コントローラ210は、その入出力ポート248を入力として、およびその入出力ポート250を出力として構成するように構成される。
一実施形態の場合、メモリモジュール220およびデバイス230は、パススルーモードで動作するように構成され、よって、データは、リング200の中を通ることができる。別の実施形態の場合、メモリモジュール220がコントローラ210に連結される時には、コントローラ210は、ある方法でメモリモジュール220の入出力ポートを構成するようにコントローラ222に指示する信号を、コントローラ222に送信し得る。加えて、該信号は、ある方法でそれぞれのデバイス230の入出力ポートを構成するようにコントローラ232に指示するために、デバイス230のコントローラ232に送信され得る。
メモリモジュール220のコントローラ222はまた、そこで受信されるホストコントローラ210からのデータが、メモリモジュール220を対象とし、かつコントローラ222によって作用されるべきか、または該データが、メモリモジュール220を対象とせず、かつデバイス230に渡されるべきかを判断するように構成され得る。各デバイス230のコントローラ232は、そこで受信したデータが、そのデバイス230を対象とし、かつそのコントローラ232によって作用されるべきか、または該データが、そのデバイス230を対象とせず、かつ別のデバイス230または、デバイス230の場合は、コントローラ210に渡されるべきかを判断するように構成され得る。
一実施形態の場合、コントローラ210によって送信されるデータの全ては、リング200の中を通り、メモリモジュール220、およびデバイス230のそれぞれで受信される。メモリモジュール220のコントローラ222が、データがメモリモジュール220を対象としていると判断した場合、コントローラ222が該データに作用し、および/またはデバイス230のコントローラ232が、該データがそのデバイス230を対象としていると判断した場合、そのコントローラ232が該データに作用する。
図3〜5は、他の実施形態による、メモリモジュール320が、データ入出力ポート350の定数、例えば4つ、をどのように構成し得るのかを示す実施例を提供する。図3では、入出力ポート350のそれぞれは、コントローラ310のそれぞれ1つと双方向通信するように構成される。双方向データリンク340は、各入出力ポート350とコントローラ310のそれぞれ1つとの間に連結される。コントローラ310のそれぞれは、図1に関連して上記に論じられたホストコントローラ110に類似する、ホストコントローラであり得る。メモリモジュール320は、図1に関連して上記に論じられたメモリモジュール100に類似し得る。コントローラ330は、対応するアクセスコマンドが受信されたコントローラ310にデータおよび構成信号を出力するように構成される。例えば、データリンク340上でコントローラ310から読み取り要求を受信した場合は、その読み取り要求に応答して、データが入出力ポート350に出力される。同様に、データリンク340上でコントローラ310から書き込みコマンドを受信した場合は、その書き込みコマンドに応答して、構成信号が入出力ポート350に出力される。
図4では、入出力ポート350のそれぞれは、一方向の通信のために構成される。例えば、入出力ポート350および350は、それぞれ、一方向データリンク440および440を通じて、コントローラ310および310からデータを受信するための入力として構成され、入出力ポート350および350は、それぞれ、一方向データリンク440および440を通じて、コントローラ310および310にデータを送信するための出力として構成される。コントローラ330は、対応するアクセスコマンドが受信されたコントローラ310にデータおよび構成信号を出力するように構成される。例えば、データリンク440上でコントローラ310から読み取り要求を受信した場合は、その読み取り要求に応答して、データが入出力ポート350に出力される。同様に、データリンク440上でコントローラ310から書き込みコマンドを受信した場合は、その書き込みコマンドに応答して、ステータス信号が入出力ポート350に出力される。
図5では、入出力ポート350のそれぞれは、双方向通信のために構成される。例えば、入出力ポート350および350は、双方向データリンク540を通じて、コントローラ310と双方向通信するために構成され、入出力ポート350および350は、双方向データリンク540を通じて、コントローラ310と双方向通信するために構成される。コントローラ330は、対応するアクセスコマンドが受信されたコントローラ310にデータおよび構成信号を出力するように構成される。例えば、データリンク540上でコントローラ310から読み取り要求を受信した場合は、その読み取り要求に応答して、データがデータリンク540に出力される。同様に、データリンク540上でコントローラ310から書き込みコマンドを受信した場合は、その書き込みコマンドに応答して、構成信号がデータリンク540に出力される。
一実施形態の場合、メモリモジュール320のメモリコントローラ330は、図3〜5の構成例に従って、入出力ポート350のそれぞれを構成する。例えば、コントローラ310のうちの1つ、例えばコントローラ310は、一時的に、入出力ポート350のそれぞれを構成するようにメモリコントローラ330に指示する、マスタコントローラとしての役割を果たし得る。随意に、コントローラ310はまた、メモリモジュール320をパーティションで区切るようにメモリコントローラに330に指示し得、よって、各メモリパーティションは、コントローラ310のそれぞれ1つに対応する。別の実施形態の場合、メモリモジュール320は、メモリモジュール320の電力投入時にメモリコントローラ330によって読み取ることができ、また、入出力ポート350を構成し、随意にメモリモジュール320をパーティションで区切るようにコントローラ330に指示する、レジスタを有し得る。
図6は、例えば「チェーン」ネットワークとして構成される、電子システム600のブロック図である。一実施形態の場合、電子システム600は、上記に説明されたメモリモジュール100と実質的に類似し得るメモリモジュール620に、一方向データリンク612および613によって、ポイントツーポイントで連続的に連結される、ホストコントローラ等のコントローラ610を含む。一実施形態の場合、メモリモジュール620は、一方向データリンク614および一方向データリンク615によって、デバイス630の列(例えば「チェーン」)625の第1のデバイス(デバイス630)にポイントツーポイントで連続的に連結される。デバイス630は、デバイス630のそれぞれが「チェーン」の中で「リンク」を形成するように、一方向のデータリンク616および一方向データリンク618によって互いにポイントツーポイントで連続的に連結されて、列625を形成する。本実施例は、各データリンクが2つの線を有するように示しているが、各データリンクは、1つ以上の線を有し得る。一実施形態の場合、デバイス630のそれぞれは、メモリモジュール620に類似するメモリモジュール、ハードドライブ、カメラ、スレーブコントローラ等であり得る。
別の実施形態の場合、メモリモジュール620は、例えば上記に説明されたメモリコントローラ130に類似するコントローラ622を含み、デバイス630のそれぞれは、例えばメモリコントローラ130に類似するコントローラ632を含む。例えば、メモリモジュール620のコントローラ622は、メモリモジュール620の入出力ポート640を入力として、メモリモジュール620の入出力ポート645を出力として、およびメモリモジュール620の入出力ポート642を出力として構成するように構成される。デバイス630のそれぞれのコントローラ632は、そのデバイスの入出力ポート644を入力として、およびそのデバイスの入出力ポート646を出力として構成するように構成される。例えば最後のデバイス(デバイス630)を除く、デバイス630のそれぞれのコントローラ632(例えば、デバイス630および630)は、そのデバイスの入出力ポート650を入力として、およびそのデバイスの入出力ポート652を出力として構成するように構成される。コントローラ610は、その入出力ポート660が入力として、およびその入出力ポート662が出力として構成されるように構成される。
一実施形態の場合、メモリモジュール620およびデバイス630は、パススルーモードで動作するように構成され、よって、データを、メモリモジュール620を通して、および連続するデバイス630を通して(例えば、デバイス630および630を連続して)、コントローラ610からデバイス630に渡すことができる。データは、連続するデバイス630を通して(例えば、デバイス630および630を連続して)、デバイス630からコントローラ610に渡され得る。
別の実施形態の場合、メモリモジュール620の破線矢印670およびデバイス630の破線矢印672によって示されるように、データは、コントローラ610に返される前に、その後のデバイス630を通過する必要はない。例えば、メモリモジュール620の入力640で受信されるコントローラ610からのデータは、破線矢印670によって示されるように、デバイス630のうちのいずれかを通過せずに、メモリモジュール620の出力645を通してコントローラ610に返され得る。同様に、デバイス630の入力644で受信されるメモリモジュール620からのデータは、デバイス630の破線矢印672によって示されるように、コントローラ610からの方向で、メモリモジュール620を通過し、かつデバイス630の下流の残りのデバイス630のうちのいずれか(例えば、デバイス630および630)を通過せずに、デバイス630の出力652を通してコントローラ610に返され得る。また、デバイス630の入力644で受信されるデバイス630からのデータは、デバイス630の破線矢印672によって示されるように、デバイス630およびメモリモジュール620を通過し、かつデバイス630の下流の残りのデバイス630のうちのいずれか(例えば、デバイス630)を通過せずに、デバイス630の出力652を通してコントローラ610に返され得る。
一実施形態の場合、メモリモジュール620がコントローラ610に連結される時には、コントローラ610は、ある方法でメモリモジュール620の入出力ポートを構成するようにコントローラ622に指示する信号を、コントローラ622に送信し得る。加えて、該信号は、ある方法で、それぞれのデバイス630の入出力ポートを構成するようにコントローラ632に指示するために、デバイス630のコントローラ632に送信され得る。別の実施形態の場合、下流のデバイス630(例えば、デバイス630)の上流(コントローラ110に向かう方向)に位置する、デバイス630(例えば、デバイス630)は、ある方法で下流のデバイス630を構成し得、逆も同様であり、例えば、下流のデバイス630は、上流のデバイス630を構成し得る。
メモリモジュール620のコントローラ622はまた、そこで受信されるホストコントローラ610からのデータが、メモリモジュール620を対象とし、かつコントローラ622によって作用されるべきか、または該データが、メモリモジュール620を対象とせず、かつデバイス630に渡されるべきかを判断するように構成され得る。各デバイス630のコントローラ632は、そこで受信したデータが、そのデバイス630を対象とし、かつそのコントローラ632によって作用されるべきか、または該データが、そのデバイス630を対象とせず、かつ別のデバイス630またはコントローラ610に渡されるべきかを判断するように構成され得る。
一実施形態の場合、コントローラ610によって送信されるデータの全てを、チェーンに沿って渡して、メモリモジュール620、およびデバイス630のそれぞれで受信することができる。メモリモジュール620のコントローラ622が、データがメモリモジュール620を対象としていると判断した場合、コントローラ622が該データに作用し、および/またはデバイス630のコントローラ632が、該データがそのデバイス630を対象としていると判断した場合、そのコントローラ632が該データに作用する。
別の実施形態の場合、メモリモジュール620、およびデバイス630のそれぞれは、異なる動作を並行して実行することができる。例えば、メモリモジュール620またはデバイス630は、コントローラ610からの方向(例えば、下流)に移動するデータを受信してこれに作用することができ、また、独立かつ並行して、コントローラ610に向かう反対の方向(例えば、上流)に移動するデータを受信してこれに作用することができる。別の実施形態の場合、メモリモジュール620、およびデバイス630のそれぞれは、異なるレートで動作するように構成され得る。
結論
本開示の具体的な実施形態を本願明細書にて図示および説明したが、当業者は、同じ目的が達成されると予測されるあらゆる機構が、示された特定の実施形態の代替物になり得るものと理解されよう。本実施形態の多数の適合例は、当業者には明らかである。したがって、本出願は、本実施形態のあらゆる適合例または変形例を対象とすることを意図するものである。以下の請求項およびその同等物によってのみ本実施形態が限定されることを明白に意図するものである。

Claims (10)

  1. 複数のデータ入出力ポートを含むメモリモジュールと、
    前記メモリモジュールに並列に接続された複数のコントローラと、を含み、
    前記メモリモジュールは、前記複数のコントローラのうちの、マスタコントローラとして機能する第1のコントローラからの第1のコマンドに応答して、前記メモリモジュールの前記複数のデータ入出力ポートのそれぞれを、入力ポート、出力ポートあるいは入出力ポートとして構成するように構成されており、
    前記メモリモジュールは、前記複数のコントローラのうちの前記第1のコントローラからの第2のコマンドに応じて、各メモリパーティションが前記複数のコントローラのうちのコントローラのそれぞれ1つと対応するように前記メモリモジュールをメモリパーティションへと区切るように構成されており、
    前記複数のコントローラの複数のデータ入出力ポートのそれぞれは、前記メモリモジュールのデータ入出力ポートのそれぞれ1つに対応するように、入力ポート、出力ポートあるいは入出力ポートとして構成可能である、
    ことを特徴とする電子システム。
  2. 前記メモリモジュールは、アクセスコマンドが受信される前記複数のコントローラのうちのコントローラに構成信号を出力するように構成される、請求項1に記載の電子システム。
  3. 前記メモリモジュールは、前記メモリモジュールのメモリデバイスがプログラムされた及び読み取られた回数を前記メモリモジュールに格納するように構成される、請求項1に記載の電子システム。
  4. 前記メモリモジュールは、前記メモリモジュールに格納された構成データに従って入力および出力のうちの少なくとも1つとして、前記メモリモジュールの前記複数のデータ入出力ポートのそれぞれを構成するように構成される、請求項1に記載の電子システム。
  5. 前記構成データは、前記メモリモジュールの製造期間中に前記メモリモジュールにプログラムされる、請求項4に記載の電子システム。
  6. 入力として構成される前記メモリモジュールのデータ入出力ポートの数が、前記メモリモジュールのメモリデバイスがプログラムされた回数に比例し、及び、出力として構成される前記メモリモジュールのデータ入出力ポートの数が、前記メモリデバイスが読み取られた回数に比例するように、前記メモリモジュールのデータ入出力ポートを構成するように前記メモリモジュールが構成される、請求項1に記載の電子システム。
  7. メモリモジュールに並列に接続された複数のコントローラのうちの、マスタコントローラとして機能する第1のコントローラからの第1のコマンドを、前記メモリモジュールにおいて受信するステップ、
    前記第1のコマンドに応答して、前記メモリモジュールの複数のデータ入出力ポートのそれぞれを、入力ポート、出力ポートあるいは入出力ポートとして構成するステップ、
    前記第1のコントローラからの第2のコマンドを前記メモリモジュールにおいて受信するステップ、
    前記第2のコマンドに応じて、各メモリパーティションが前記複数のコントローラのうちのそれぞれ1つと対応するように前記メモリモジュールをメモリパーティションへと区切るステップ、
    前記メモリモジュールのデータ入出力ポートのそれぞれ1つに対応するように、前記複数のコントローラの複数のデータ入出力ポートのそれぞれを、入力ポート、出力ポートあるいは入出力ポートとして構成するステップ、
    を含む、電子システムを操作する方法。
  8. アクセスコマンドが受信されるコントローラに前記メモリモジュールから構成データを通信することを含む、請求項7に記載の方法。
  9. 前記メモリモジュールの1つ以上のメモリデバイスがプログラムされた及び読み取られた回数を追跡するステップをさらに含む、請求項7に記載の方法。
  10. 入力として構成される前記メモリモジュールのデータ入出力ポートの数が書き込み動作の回数に比例し、及び、出力として構成される前記メモリモジュールのデータ入出力ポートの数が読み取り動作の回数に比例するように、前記メモリモジュールのデータ入出力ポートを構成するステップをさらに含む、
    請求項7に記載の方法。
JP2012192733A 2008-05-05 2012-09-03 構成可能な入出力ポートを伴うメモリモジュール Active JP5533963B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/115,047 2008-05-05
US12/115,047 US8171181B2 (en) 2008-05-05 2008-05-05 Memory module with configurable input/output ports

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011507716A Division JP5093401B2 (ja) 2008-05-05 2009-05-05 構成可能な入出力ポートを伴うメモリモジュール

Publications (2)

Publication Number Publication Date
JP2013047952A JP2013047952A (ja) 2013-03-07
JP5533963B2 true JP5533963B2 (ja) 2014-06-25

Family

ID=41257864

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2011507716A Active JP5093401B2 (ja) 2008-05-05 2009-05-05 構成可能な入出力ポートを伴うメモリモジュール
JP2012192733A Active JP5533963B2 (ja) 2008-05-05 2012-09-03 構成可能な入出力ポートを伴うメモリモジュール

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2011507716A Active JP5093401B2 (ja) 2008-05-05 2009-05-05 構成可能な入出力ポートを伴うメモリモジュール

Country Status (7)

Country Link
US (2) US8171181B2 (ja)
EP (2) EP2272066B1 (ja)
JP (2) JP5093401B2 (ja)
KR (1) KR101221265B1 (ja)
CN (1) CN102017002A (ja)
TW (1) TWI413128B (ja)
WO (1) WO2009137459A2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7948821B2 (en) 2008-12-15 2011-05-24 Micron Technology, Inc. Reduced signal interface memory device, system, and method
WO2010093529A2 (en) * 2009-02-12 2010-08-19 Rambus Inc. Memory interface with reduced read-write turnaround delay
US8832354B2 (en) * 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8769213B2 (en) * 2009-08-24 2014-07-01 Micron Technology, Inc. Multi-port memory and operation
US8429391B2 (en) 2010-04-16 2013-04-23 Micron Technology, Inc. Boot partitions in memory devices and systems
US8380940B2 (en) * 2010-06-25 2013-02-19 Qualcomm Incorporated Multi-channel multi-port memory
US9602101B2 (en) * 2013-10-07 2017-03-21 Microchip Technology Incorporated Integrated device with auto configuration
CN113868167A (zh) * 2020-06-30 2021-12-31 华为技术有限公司 一种芯片模组及通信系统、端口分配方法

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2684793B2 (ja) * 1989-10-24 1997-12-03 松下電器産業株式会社 情報処理装置
JPH05181609A (ja) * 1992-01-06 1993-07-23 Nec Corp パーソナルコンピュータシステム
US5644593A (en) * 1994-09-02 1997-07-01 Microcom Systems, Inc. High performance communications interface
US7024518B2 (en) 1998-02-13 2006-04-04 Intel Corporation Dual-port buffer-to-memory interface
JP3946873B2 (ja) * 1998-06-19 2007-07-18 株式会社日立製作所 ディスクアレイ制御装置
US6370605B1 (en) 1999-03-04 2002-04-09 Sun Microsystems, Inc. Switch based scalable performance storage architecture
JP2001067306A (ja) * 1999-08-26 2001-03-16 Matsushita Electric Ind Co Ltd バスインターフェース装置およびデータ転送装置
JP2002229848A (ja) * 2001-02-05 2002-08-16 Hitachi Ltd 共有メモリを備えたプロセッサシステム
JP2002259327A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd バス制御回路
TW594486B (en) * 2002-12-30 2004-06-21 Icp Electronics Inc The improvement to the 4-wire/3-wire NVRAM control instruction
US7469311B1 (en) * 2003-05-07 2008-12-23 Nvidia Corporation Asymmetrical bus
JP2005025473A (ja) * 2003-07-01 2005-01-27 Matsushita Electric Ind Co Ltd 複合入出力装置
US8108564B2 (en) * 2003-10-30 2012-01-31 International Business Machines Corporation System and method for a configurable interface controller
US7158536B2 (en) * 2004-01-28 2007-01-02 Rambus Inc. Adaptive-allocation of I/O bandwidth using a configurable interconnect topology
US7406572B1 (en) * 2004-03-26 2008-07-29 Cypress Semiconductor Corp. Universal memory circuit architecture supporting multiple memory interface options
JP4928715B2 (ja) * 2004-05-07 2012-05-09 株式会社リコー シリアルデータ転送装置、画像出力装置、画像入力装置及び画像形成装置
US7313712B2 (en) * 2004-05-21 2007-12-25 Intel Corporation Link power saving state
US8046488B2 (en) 2004-05-21 2011-10-25 Intel Corporation Dynamically modulating link width
US8151030B2 (en) * 2004-05-26 2012-04-03 Ocz Technology Group, Inc. Method of increasing DDR memory bandwidth in DDR SDRAM modules
US7738398B2 (en) * 2004-06-01 2010-06-15 Quickturn Design Systems, Inc. System and method for configuring communication systems
US7506343B2 (en) * 2004-08-19 2009-03-17 International Business Machines Corporation System and method for passing information from one device driver to another
TWI260069B (en) * 2004-08-24 2006-08-11 Chipmos Technologies Inc Memory module and method for manufacturing the same
JP4594761B2 (ja) * 2005-02-10 2010-12-08 株式会社東芝 情報処理装置およびその制御方法
US20060203559A1 (en) * 2005-02-28 2006-09-14 Peter Poechmueller Memory device with customizable configuration
US8726064B2 (en) * 2005-04-21 2014-05-13 Violin Memory Inc. Interconnection system
US7797664B2 (en) * 2006-06-23 2010-09-14 National Institute Of Advanced Industrial Science And Technology System for configuring an integrated circuit and method thereof
US20090187680A1 (en) * 2008-01-21 2009-07-23 Shih-Chieh Liao Controller System With Programmable Bi-directional Terminals

Also Published As

Publication number Publication date
WO2009137459A2 (en) 2009-11-12
EP2272066A4 (en) 2011-06-08
KR20110004895A (ko) 2011-01-14
US8171181B2 (en) 2012-05-01
EP2743928A1 (en) 2014-06-18
WO2009137459A3 (en) 2010-02-18
US20120198201A1 (en) 2012-08-02
TWI413128B (zh) 2013-10-21
EP2743928B1 (en) 2017-02-15
JP5093401B2 (ja) 2012-12-12
JP2013047952A (ja) 2013-03-07
EP2272066B1 (en) 2014-06-18
CN102017002A (zh) 2011-04-13
US20090276545A1 (en) 2009-11-05
KR101221265B1 (ko) 2013-01-11
US8364856B2 (en) 2013-01-29
EP2272066A2 (en) 2011-01-12
TW200949852A (en) 2009-12-01
JP2011520192A (ja) 2011-07-14

Similar Documents

Publication Publication Date Title
JP5533963B2 (ja) 構成可能な入出力ポートを伴うメモリモジュール
US11886754B2 (en) Apparatuses and methods for configuring I/Os of memory for hybrid memory modules
TWI453760B (zh) 菊鍊串接架構識別技術
KR100726361B1 (ko) 메모리 장치들과의 통신을 위한 시스템 및 방법
US20070165457A1 (en) Nonvolatile memory system
CN112035381B (zh) 一种存储系统及存储数据处理方法
CN107870742B (zh) 向存储装置提供旁路的电子装置、存储装置和计算系统
US10032494B2 (en) Data processing systems and a plurality of memory modules
CN110718246B (zh) 存储器装置
US9235343B2 (en) State change in systems having devices coupled in a chained configuration
US8171233B2 (en) Multi port semiconductor memory device with direct access function in shared structure of nonvolatile memory and multi processor system thereof
CN114579498B (zh) 跨多个存储器管芯封装的电力管理
US11436167B2 (en) Interface components between a controller and memory devices
US20090249030A1 (en) Multiprocessor System Having Direct Transfer Function for Program Status Information in Multilink Architecture
TWI688864B (zh) 儲存設備及儲存方法
CN111694772A (zh) 存储器控制器
US20100318723A1 (en) Memory controller, nonvolatile memory device, and nonvolatile memory system
US7702859B2 (en) Detachable direct memory access arrangement
CN114063899A (zh) 主从管理存储器存储
CN112817517A (zh) 数据存储装置、其操作方法及使用其的存储系统
JP2008084181A (ja) 半導体装置及び半導体システム
KR20160144557A (ko) 읽기 데이터를 전송 단위로 전송하는 불휘발성 메모리 모듈, 스토리지 장치, 및 전자 장치

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140303

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140303

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140325

R150 Certificate of patent or registration of utility model

Ref document number: 5533963

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140414

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250