JP4836794B2 - シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム - Google Patents

シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム Download PDF

Info

Publication number
JP4836794B2
JP4836794B2 JP2006532883A JP2006532883A JP4836794B2 JP 4836794 B2 JP4836794 B2 JP 4836794B2 JP 2006532883 A JP2006532883 A JP 2006532883A JP 2006532883 A JP2006532883 A JP 2006532883A JP 4836794 B2 JP4836794 B2 JP 4836794B2
Authority
JP
Japan
Prior art keywords
memory
packet
transaction
way
link
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
JP2006532883A
Other languages
English (en)
Other versions
JP2006528394A (ja
Inventor
スティーブン ポルジン アール.
ディー. ウィーバー フレデリック
アール. タルボット ジェラルド
ディー. ヒューイット ラリー
ダブリュ. リーブズ リチャード
エイ. ペイテル シュウェタル
ブイ. ラ フェトラ ロス
イー. ガリック デイル
ディー. フンメル マーク
シー. ミランダ ポール
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2006528394A publication Critical patent/JP2006528394A/ja
Application granted granted Critical
Publication of JP4836794B2 publication Critical patent/JP4836794B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0215Addressing or allocation; Relocation with look ahead addressing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/4256Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6022Using a prefetch buffer or dedicated prefetch cache

Description

本発明は、コンピュータシステムメモリに関し、さらに詳しくは、メモリモジュールのコンフィギュレーションおよびメモリサブシステムのトポロジに関する。
多くのコンピュータシステムには、エンドユーザの必要性に応じて構成され得るメインシステムメモリが採用されている。このようなシステムでは、マザーボードまたはシステムボードが、多数のメモリ拡張ソケットを含んでもよい。メモリモジュールと呼ばれる1つ以上の小型回路基板が、コンピュータシステムのメモリ容量を増大させる必要に応じて、ソケットに差し込まれてもよい。メモリモジュールの各々は、典型的に、所与の量のメモリ容量を与える複数のメモリデバイスを含む。メモリデバイスは、一般に、ダイナミックランダムアクセスメモリ(DRAM:dynamic random access memory)の何らかのタイプを用いて与えられる。DRAMタイプのいくつかの例は、同期DRAM(SDRAM:synchronous DRAM)とともに、さまざまなタイプのダブルデータレートSDRAM(DDR SDRAM:double data rate SDRAM)を含む。
従来のコンピュータシステムにおいて、メモリモジュールは、アドレス、制御、およびデータ信号を含むメモリバスを介してメモリ/DRAMコントローラに接続される。アドレス、制御、およびデータ信号が、多重化されてもよく、したがって、同一のワイヤセットを共有してもよいコンピュータシステムもある。アドレス、制御、およびデータ信号が、別のワイヤを使用してもよいコンピュータシステムもある。いずれの場合においても、アドレスおよび制御信号の各々は、差し込まれたとき、メモリモジュールがメモリ/DRAMコントローラにパラレル接続されるように、各拡張ソケットに送られる。メモリ/DRAMコントローラが、システムプロセッサと同じ集積回路(IC:integrated circuit)チップ上に存在してもよいシステムもあれば、メモリ/DRAMコントローラが、チップセットの1つのIC(例えば、ノースブリッジ)に存在してもよいシステムもある。
コンピュータシステムプロセッサの動作速度は高速化し続けているが、メインシステムメモリの相対的な性能は同じ速度で高くなっているわけではない。これは、少なくとも部分的に、上述したメモリバスアーキテクチャの帯域幅の改良が段階的なものであることが原因となりうる。
複数のメモリモジュールを含むシステムのさまざまな実施形態が開示される。1つの実施形態において、メモリモジュールのシリアル接続されたチェーンにホストが結合される。
1つの特定の実施形態において、メモリモジュールの各々は、メモリモジュール上の複数のメモリチップへのアクセスを制御してもよいメモリ制御ハブを含んでもよい。さらに、メモリモジュールは、複数のメモリリンクを介してホストにチェーン状にシリアル結合される。各メモリリンクは、ホストの方へトランザクションを伝達するためのアップリンクと、ホストから生じるトランザクションをチェーンの次のメモリモジュールへ伝達するためのダウンリンクとを含んでもよい。アップリンクおよびダウンリンクの各々は、制御およびコンフィギュレーションパケットと、メモリアクセスパケットとを含むパケットを用いて、トランザクションを伝達してもよい複数の信号を含む一方向リンクであってもよい。
別の特定の実施例において、メモリ制御ハブは、第1のメモリリンクの第1のダウンリンク上で受信したトランザクションを復号してもよい。さらに、メモリ制御ハブは、トランザクションの復号とは関係なく、第2のメモリリンクの第2のダウンリンク上でトランザクションを伝達してもよい。
さらなる別の特定の実施例において、メモリ制御ハブは、メモリ制御ハブに関連するメモリアドレスと整合するメモリアドレスを有するメモリコマンドにトランザクションを復号することに応答して、メモリチップにアクセスしてもよいDRAMコントローラを含んでもよい。
本発明にはさまざまな修正および別の形態の余地があるが、本発明の特定の実施形態が図面において例示的に示されており、本願明細書において詳細に記載される。しかしながら、図面および詳細な記載は、開示された特定の形態に本発明を制限するように意図されたものではなく、添付の特許請求の範囲によって規定されたような本発明の趣旨および範囲内のすべての修正物、等価物、および代替物に範囲が及ぶことが意図されていることを理解されたい。見出しは、体系的な目的でしかなく、本願明細書または特許請求の範囲を制限または解釈するために用いることを意図したものではないことを留意されたい。さらに、「〜してもよい、〜の場合もある(may)」という用語は、義務の意味(すなわち、〜しなければならない(must))ではなく、許容の意味(すなわち、〜する可能性がある(having the potential to)、〜することが可能である(being able to))で本願を通して使用されることに留意されたい。「〜を含む(include)」という用語およびその派生語は、「〜を含むが、それに限定されるものではない(including,but not limited to)」を意味する。「接続される(connected)」という用語は、「直接的または間接的に接続される(directly or indirectly connected)」を意味し、「結合される(coupled)」という用語は、「直接的または間接的に結合される(directly or indirectly coupled)」を意味する。
以下、図1を参照すると、メモリモジュールのシリアル接続されたチェーンを含むシステムの1つの実施形態のブロック図が示されている。システム50は、メモリリンク110Aを介してシステムメモリ125に結合されたホスト100を含む。システム50は、例えば、コンピュータシステムまたはサーバシステムなどのコンピューティングデバイスの一部として動作するように構成されてもよい。システムメモリ125は、メモリインク110Bを介してメモリモジュール150Bに結合されたメモリモジュール150Aを含む。メモリモジュール150Bは、メモリリンク110Cに結合されて示されており、メモリリンク110Cは、ホスト100に結合されたメモリモジュールのシリアル接続されたチェーンを形成する必要があれば、さらなるメモリモジュール(図示せず)に結合されてもよい。2つのメモリモジュールがチェーン状に示されているが、1つ以上のメモリモジュールがこのように接続されてもよいと考えられることに留意されたい。後ろに参照文字が続く含む参照番号を含むコンポーネントは、一般的に、参照番号のみで参照されることもあることにさらに留意されたい。例えば、一般的に、すべてのメモリモジュールを参照する場合、メモリモジュール150が参照されることもある。
例示した実施形態において、メモリモジュール150Aは、メモリ制御ハブ160Aを含み、メモリ制御ハブ160Aは、メモリチップ171A〜171Nと示された複数のメモリデバイスに結合され、ここでNは、必要に応じて、任意の数であってもよい。1つの実施形態において、メモリ制御ハブ160Aは、任意のタイプのメモリインターコネクトを介してメモリチップに結合されてもよい。例えば、1つの実施形態において、メモリインターコネクトは、典型的なアドレス、制御、およびデータバスのコンフィギュレーションのものであってもよい。
同様に、メモリモジュール150Bは、メモリ制御ハブ160Bを含み、メモリ制御ハブ160Bは、メモリチップ181A〜181Nと示された複数のメモリデバイスに結合され、ここでNは、必要に応じて、任意の数であってもよい。1つの実施形態において、メモリ制御ハブ160Bは、上述したように任意のタイプのメモリインターコネクトを介してメモリチップに結合されてもよい。メモリチップ171A〜171Nおよび181A〜181Nの各々は、例えば、メモリデバイスのDRAM系のメモリデバイスなど、任意のタイプのメモリデバイスであってもよい。
例示した実施形態において、メモリリンク110A〜110Cは、メモリインターコネクトを形成する。1つの実施形態において、メモリリンク110A〜110Cの各々は、2セットの一方向ラインとして与えられるポイント・ツー・ポイントメモリインターコネクトを形成する。1つのセットの一方向ラインは、ダウンリンクと呼ばれ、ホスト100からダウンストリーム方向にトランザクションを伝達するように構成される。もう1つのセットの一方向ラインは、アップリンクと呼ばれ、ホスト100の方へアップストリーム方向にトランザクションを伝達するように構成される。さらに、1つの実施形態において、各セットの一方向ラインは、複数の異なる信号対を用いて与えられてもよい。1つの実施形態において、各メモリリンク110は、18ビットダウンリンクおよび16ビットアップリンクを含み、各ビットは異なる信号対である。図5A〜図5Dの記載とともに以下にさらに詳細に記載するように、メモリリンク110によって形成されたメモリインターコネクトは、パケットを伝達するように構成されてもよい。
一般的に言えば、ホスト100からのすべてのトランザクションは、ダウンリンク上のすべてのメモリモジュール150を介してダウンストリームに流れ、すべての応答トランザクションは、応答するメモリモジュール150からアップリング上の各アップストリームメモリモジュール150を介してアップストリームに流れる。さらに詳しく言えば、1つの実施形態において、ホスト100は、システムメモリ125内にデータを引き出したり格納したりするようにリクエストしてもよい。ホスト100のリクエストに応答して、メモリコントローラ105は、例えば、メモリリードトランザクションまたはメモリライトトランザクションなどの対応するトランザクションを開始する。メモリコントローラ105は、メモリリンク110Aを介してシステムメモリ125にトランザクションを伝送する。例示した実施形態において、トランザクションは、メモリモジュール150Aのメモリ制御ハブ160Aによって受信される。
トランザクションの受信に応答して、メモリ制御ハブ160Aは、トランザクションを復号することなく、メモリリンク110Bを介してメモリモジュール150Bに受信したトランザクションを伝送するように構成される。これを、トランザクションのダウンストリーム転送と呼ぶ。このように、所与のメモリモジュール150の所与メモリ制御ハブ160によって受信した各トランザクションは、トランザクションを復号することなく、ダウンリンクに結合されたチェーンの次のメモリモジュール150に転送される。1つの実施形態において、トランザクションの復号は、トランザクションの転送と平行して生じてもよい。他の実施形態において、トランザクションの復号は、トランザクションが転送された後に生じてもよい。ダウンストリーム転送機能についてのさらなる詳細な記載は、図3の記載において以下に見受けられる。
同様に、例えば、メモリコントローラ105が、リードリクエストトランザクションを開始すれば、リクエストのアドレスに対応するメモリロケーションを有するメモリモジュール150は、リクエストされたデータと応答することになる。この応答は、メモリモジュールのアップリンク上でホスト100へと送信される。送信メモリモジュールとホスト100との間に介在するメモリモジュールがあれば、介在するメモリモジュールは、ホスト100、またはアップストリーム方向にあるチェーンの次のメモリモジュールのいずれかへ、アップリンク上で応答トランザクションを転送する。さらに、応答メモリモジュールが、応答を送信する準備が整うと、アップリング上でアップストリーム転送されているトランザクションシーケンスに応答を投入してもよい。アップストリーム転送機能のさらなる詳細な記載は、図5の記載において以下に見受けられうる。
1つの実施形態において、メモリコントローラ105は、特定のアドレスが関連するのはどちらのメモリモジュール150Aおよび150Bかということが分かっていなくても、システムメモリ125にリクエストするように構成されてもよい。例えば、メモリモジュール150の各々は、システムコンフィギュレーションシーケンス中にメモリアドレスレンジに割り当てられてもよい。各メモリ制御ハブ160は、入力するリクエストのアドレスを復号してもよいロジック(図1に示さず)を含んでもよい。このように、所与のメモリモジュール150のメモリ制御ハブ160は、所与のメモリモジュール150に割り当てられたアドレスレンジにあるアドレスを有するメモリリクエストの復号に応答して、所与のメモリモジュール150上のメモリチップへメモリリードサイクルまたはメモリライトサイクルを開始してもよい。図2の記載とともに以下にさらに詳細に記載するように、1つの実施形態において、各メモリ制御ハブ160は、接続されるメモリチップに対してメモリサイクルを開始するためにDRAMコントローラ(図1に示さず)を含んでもよい。
さらに、1つの実施形態において、メモリコントローラ105は、前のメモリアクセスリクエストに対する応答を受信する前に、次のメモリアクセスリクエストを開始してもよい。このような実施形態において、メモリコントローラ105は、顕著なリクエストを追跡してもよく、したがって、送信されたものとは異なる順序で応答を処理してもよい。
別の実施形態において、メモリリンク110の各々が、1セットの双方向ラインとして与えられるポイント・ツゥー・ポイントメモリインターコネクトを形成してもよい。このようにして、双方向ワイヤセット上でアップストリームおよびダウンストリームの両方のトランザクションが流れてもよい。このような実施形態において、双方向ラインは、複数の異なる信号対を用いて与えられてもよい。
図2を参照すると、図1に示すメモリモジュールなどのメモリモジュールの1つの実施形態のブロック図が示されている。明確化および簡略化するために、図1に示すものに対応するコンポーネントに同一の参照番号が付与される。メモリモジュール150は、メモリバス265を介してメモリチップ261A〜261Nに結合されたメモリ制御ハブ160を含む。メモリ制御ハブ160は、DRAMコントローラ250に結合された制御ユニット240を含む。DRAMコントローラ250は、メモリチップ261A〜261Nに結合される。制御ユニット240は、アップリンク制御241およびダウンリンク制御242を含む。上述したように、メモリバス265は、任意のタイプのメモリインターコネクトであってもよい。例示した実施形態において、メモリ制御ハブ160は、アップストリーム方向にあるメモリリンク110Aと、ダウンストリーム方向にあるメモリリンク110Bとに結合される。メモリバス265の動作周波数は、メモリリンク110の動作周波数とは無関係であることをさらに留意されたい。
例示した実施形態において、アップリンク制御ユニット241は、別のメモリモジュールダウンストリームから受信したパケットを受信し転送するように構成されてもよい。アップストリームパケットを受信し転送することで、アップストリームトランザクションシーケンスが生じる。さらに、アップリンク制御ユニット241は、メモリモジュール150内で発生するパケットをトランザクションストリームに投入するように構成されてもよい。
例示した実施形態において、ダウンリンク制御ユニット242が、ホストで発生するパケットを受信するように構成されてもよく、メモリモジュールがダウンストリームに接続されれば、ダウンストリームメモリモジュールにこれらのパケットを転送するように構成されてもよい。さらに、ダウンリンク制御ユニット242は、パケットをコピーし復号するように構成されてもよい。1つの実施形態において、パケットが、メモリモジュール150に割り当てられたアドレスレンジ内にあるアドレスを含み、パケットが、メモリアクセスリクエストであれば、ダウンリンク制御ユニット242は、パケットに関連するコマンドをDRAMコントローラ250に送ってもよい。1つの実施形態において、DRAMコントローラ250は、メモリ制御ハブ160からのメモリコマンドに応答して、メモリチップ261A〜261Nに対してメモリサイクルを開始するように構成される。しかしながら、パケットがメモリリクエストでなく、コンフィギュレーションパケットであれば、ダウンリンク制御ユニット242は、パケットに関連するコンフィギュレーションコマンドを処理用の制御ユニット240(図示せず)のコア論理に送ってもよい。1つの実施形態において、パケットが、メモリモジュール150に割り当てられたアドレスレンジ内にあるアドレスを含まなければ、メモリ制御ハブ160は、メモリモジュール150がチェーンの最後のメモリモジュールであれば、パケットを取り消したり破棄したりしてもよいことに留意されたい。
1つの実施形態において、メモリ制御ハブ160は、モジュール存在信号(図示せず)を受信するように構成され、この信号は、ダウンストリームメモリモジュールによってアクティブにされると、ダウンストリームメモリモジュールが存在することをアップストリームメモリモジュールに示す。このような実施形態において、メモリ制御ハブ160が、トランザクションを受信し、存在するダウンストリームメモリモジュールがないことが決定されれば、メモリ制御ハブ160は、トランザクションを取り消してもよい。1つの特定の実施例において、所与のメモリモジュール150がソケットに差し込まれると、差し込まれたメモリモジュールは、信号用接地をモジュール存在信号に適用してもよい。このようにして、アクティブなモジュール存在信号が、アクティブな低信号である。
上述した実施形態において信号用接地が適用されるとき、モジュール存在信号がアクティブであるが、他の実施形態において、メモリモジュールが存在することを示すように、モジュール存在信号に他の電圧レベルが適用されてもよいことが考えられることに留意されたい。
図3を参照すると、ダウンリンク制御ユニットの1つの実施形態のブロック図が示されている。図3に示す実施形態において、ダウンリンク制御ユニット342は、図2に示すダウンリンク制御ユニット242を表してもよい。ダウンリンク制御ユニット342は、ダウンリンク312A上でダウンストリームトランザクションを受信し、ダウンリンク312B上でこれらのダウンストリームトランザクションを伝送するように結合される。1つの実施形態において、ダウンリンク312Aおよび312Bは、図2のダウンリンク212Aおよび212Bのそれぞれを表してもよい。上述したように、ダウンリンク312Aおよび312Bは、複数のビットを含むことに留意されたい。例えば、1つの実施例において、ダウンリンク312Aおよび312Bの各々は、18ビットダウンリンクであってもよい。さらに、ダウンリンク制御ユニット342は、アップストリームメモリモジュールまたはホスト100からビジー信号371を受信し、ビジー信号372をダウンストリームメモリモジュールに伝送するように構成される。
例示した実施形態において、ダウンリンク制御ユニット342は、入力トランザクションを受信する位相アライメントユニット310を含む。位相アライメントユニット310は、伝送ユニット315およびデータ回復ユニット320に結合される。データ回復ユニット320は、アドレス復号論理330に結合された同期先入れ先出しバッファ(FIFO:first in first out)325に結合される。1つの実施形態において、同期FIFO325は、DRAMコントローラ250などのDRAMコントローラと、図2の制御ユニット240内のコア論理とに結合される。図3に示す実施形態において、位相アライメントユニット310、伝送ユニット315、およびデータ回復ユニット320は、ビット単位で独立してダウンリンクの各ビットで動作してもよいことに留意されたい。他の実施形態において、位相アライメントユニット310、伝送ユニット315、およびデータ回復ユニット320は、実質的に同時にダウンリンクのすべてのビットで動作してもよいことが考えられる。
必要なメモリ帯域幅を与えるために、メモリ制御ハブ160が、受信したトランザクションをダウンストリームメモリモジュールに効率的に転送することが重要となりうる。したがって、ダウンリンク制御ユニット342が受信したトランザクションは、無分別にダウンストリームに転送される。1つの実施形態において、各受信ビットは、復号することなく、ダウンリンク312Bで伝送するために、位相アライメントユニット310によって位相アライメントされ、伝送ユニット315に送信される。さらに、各受信ビットは、処理するためにデータ回復ユニット320に送信される。
1つの実施形態において、位相アライメントユニット310は、ダウンリンク制御ユニット342が、受信データアイの中央でサンプリングできるようにするために、各ビットに対して、ローカルサンプリングクロックの位相を動的に調節するように構成される。例えば、1つの実施形態において、ダウンリンク制御ユニット342内の位相ロックループ(PLL:phased locked loop)(図示せず)にホストから基準クロックが与えられる。PLLは、ダウンリンク制御ユニット342内にローカルサンプリングクロックとともに、伝送クロックを発生する。位相アライメントユニット310は、入力データストリームの平均位相をトラッキングするように構成される。位相アライメントユニット310はまた、処理変動によって生じる静的スキューを補償し、電圧および温度の変動によって生じるデータ位相の低周波変動をトラッキングし、基準クロックに存在する可能性があり、ハブのPLLによってトラッキングされない任意の低周波位相ジッターを補償するように構成されてもよい。位相アライメントユニット310は、符号間干渉、クロストークまたは反射ノイズ、および送信機によって発生しうる高周波位相ノイズによって生じる高周波ジッターをフィルタリングする。
ローカルサンプリングクロックの位相アライメントを行うためには、ダウンリンク312Aの各ビットに十分な数の遷移(または透過密度)を与えることが必要な場合がある。1つの実施形態において、遷移密度は、各ビットに伝送されたデータをスクランブルした後、受信すると、受信データをデスクランブルすることによって与えられる。1つの実施形態において、データは、擬似ランダムバイナリシーケンス(PRBS:pseudo random binary sequence)でデータを排他的論理和演算(XOR:Exclusive-OR)することによってスクランブルされる。線形フィードバックシフトレジスタ(LFSR:linear feedback shift register)が、所与のシード多項式を用いて、PRBSを発生してもよい。別の実施形態において、遷移密度は、所定のデータペイロードを有する同期パケットを送信することによって与えられてもよい。このような実施形態において、所定のデータペイロードは、十分な数の遷移を有するランダムまたは擬似ランダムパターンを含んでもよい。
遷移密度の獲得方法に関わらず、データ回復ユニット320は、データビットを回復するように構成される。スクランブルを用いる実施形態において、データ回復ユニット320は、データをスクランブルするために使用されるものと同じPRBSを用いて、受信データをデスクランブルするように構成されてもよい。逆に、遷移密度を獲得するために同期パケットを用いる実施形態において、データ回復ユニット320は、位相アライメントユニット310が、ローカルサンプリングクロックのアライメントを終了すると、同期パケットデータを単に取り消したり破棄したりするだけでもよい。
例示した実施形態において、同期FIFO325は、制御ユニット240のコア論理によって使用するための入力データビットを格納するように構成される。例えば、トランザクションがパケット化されて送信されるため、受信ビットは、同期FIFO325に格納され、復号するために再フォーマットされてもよい。次いで、受信パケットは、アドレス復号論理330によって復号される。上述したように、各メモリモジュール150に、メモリアドレスレンジが割り当てられてもよい。さらに、各メモリ制御ハブ160に、コンフィギュレーショントランザクションにおいて使用するためのハブアドレスが割り当てられてもよい。トランザクションアドレスが復号され、整合が示されれば、コマンド情報は、抽出および処理されてもよい。1つの実施形態において、トランザクションが、メモリ制御ハブ160に関連するメモリアドレスを整合するアドレスを有するメモリアクセスリクエストであれば、復号されたコマンドは、DRAMコントローラ250に送信されてもよい。トランザクションが、コンフィギュレーショントランザクションであれば、復号されたコマンドは、制御ユニット240のコア論理に送信されてもよい。さらに、アドレス復号ロジック部あるいはアドレス復号論理330が、整合を検出しなければ、パケットは、破棄または取り消されてもよい。
例示した実施形態において、位相アライメントユニット335は、入力ビジー信号371を受信するように結合される。位相アライメントユニット335はまた、データ回復ユニット350に結合され、このユニット350は、ビジーパルス投入ユニット355に結合される。ビジーパルス投入ユニット355は、伝送ユニット360に結合される。
例示した実施形態において、位相アライメントユニット335およびデータ回復ユニット350は、位相アライメントユニット310およびデータ回復ユニット320のそれぞれに類似して動作する。しかしながら、1つの実施形態において、ビジー信号371は、シングルビット差分信号であり、マルチビット信号ではない。ビジー信号371およびビジー信号372は、メモリモジュールのシリアルチェーンのボトム付近にあるハブが、シリアルチェーンのトップ付近にあるハブがパケットを投入するのに十分なアイドル時間を残すようにするために使用される。1つの実施形態において、ビジー信号371は、アップストリームにあるすべてのメモリモジュールによってアップストリームトランザクションシーケンスに投入されるパケットの数の指示を含む。したがって、ビジー信号372は、アップストリームにあるすべてのメモリモジュールによってアップストリームトランザクションシーケンスに投入されるパケットの総数と、メモリ制御ハブ160によって局所的に投入されるパケットの数の指示を含む。
1つの実施形態において、ビジーパルス投入ユニット355が、アップストリームにあるすべてのメモリモジュールによってアップストリームトランザクションシーケンスに投入されることになるパケット数に対応するデータを受信するように構成される。さらに、ビジーパルス投入ユニット355は、メモリ制御ハブ160によって局所的にアップストリームトランザクションシーケンスに投入されることになるパケットの数に対応する制御ユニット240のコア論理から指示を受信するように構成される。したがって、ビジーパルス投入ユニット355は、ビジー信号372を作り出すように構成される。1つの実施形態において、ビジー信号371および372は、各投入パケットに対してパルスを含んでもよい。このように、投入される5つのパケットを表すビジー信号372などの信号が、例えば、5つのパルスを含むことになる。しかしながら、他の実施形態において、各投入パケットに対して、任意の数のパルスが含まれてもよいことを考慮されたい。以下にさらに記載されるように、パケットは、短いパケットまたは長いパケットとして送信されてもよい。したがって、1つの実施形態において、投入された長いパケットの場合、ビジーパルス投入ユニット355は、各長いパケットに対して2つのパルスを含んでもよい。
さらに、ビジーパルス投入ユニット355は、図2のアップリンク制御ユニット241にアップストリームから受信したビジーパルスの数に対応する指示を与えるように構成される。1つの実施形態において、メモリモジュールが、シリアル接続されたチェーンの最後のモジュールであれば、アップリンク制御ユニット241は、ビジー信号371上で受信したビジーパルスの数に応じて、アップストリームトランザクションシーケンスに1つ以上のNOPパケットが投入されるようにしてもよい。例えば、1つの実施例において、受信した2つのビジーパルスごとに、アップリンク制御ユニット241は、アップストリームトランザクションシーケンスに1つのNOPパケットを投入されるようにしてもよい。しかしながら、NOPパケットと受信ビジーパルスの他の比率が使用されてもよい他の実施形態が考えられる。
例示した実施形態において、伝送ユニット360は、ビジーパルス投入ユニット355からビジー信号を受信するように構成される。1つの実施形態において、伝送ユニット360は、上述したように、ビジー信号372の伝送前にLFSRを用いて、データをスクランブルするようにさらに構成される。他の形態として、伝送ユニット360は、上述したように、同期パケットを投入してもよい。
図4を参照すると、アップリンク制御ユニットの1つの実施形態のブロック図が示されている。図4に示す実施形態において、アップリンク制御ユニット441は、図2に示すアップリンク制御ユニット241を表すものであってもよい。アップリンク制御ユニット441は、アップリンク411B上でアップストリームトランザクションを受信し、アップリンク411A上にアップストリームトランザクションを伝送するように結合される。さらに、アップリンク制御ユニット241は、アップリンク411B上で受信したアップストリームトランザクションシーケンスにパケットを投入するように構成される。1つの実施形態において、アップリンク411Aおよび411Bは、図2のアップリンク211Aおよび211Bのそれぞれを表してもよい。上述したように、アップリンク411Aおよび411Bは、複数ビットを含むことに留意されたい。例えば、1つの実施例において、アップリンク411Aおよび411Bの各々は、16ビットのアップリンクであってもよい。
例示した実施形態において、アップリンク制御ユニット441は、入力アップストリームトランザクションを受信する位相アライメントユニット410を含む。位相アライメントユニット410は、データ回復ユニット415に結合される。
必要なメモリ帯域幅を与えるために、メモリ制御ハブ160は、受信アップストリームトランザクションをアップストリームメモリモジュールまたはホストに効率的に転送することが重要なこともある。ダウンストリーム制御ユニット342と同様に、アップリンク制御ユニット441が受信したトランザクションは、アップストリームに転送される。しかしながら、ダウンストリーム制御ユニット342とは対照的に、アップリンク制御ユニット441は、アップストリームトランザクションシーケンスに局所的に発生したパケットを投入してもよい。
例示した実施形態において、位相アライメントユニット410は、位相アライメントユニット310と同様に動作する。したがって、位相アライメントユニット410は、上述したように、アップリンク制御ユニット441が受信データアイの中央でサンプリングできるようにするために、各ビットに対して、ローカルサンプリングクロックの位相を動的に調節するように構成される。同様に、データ回復ユニット415は、データ回復ユニット320の記載とともに上述したように、データビットを回復するように構成される。
例示した実施形態において、データ回復ユニット415は、伝送ユニット435に結合されたマルチプレクサ430に結合される。アップリンク制御ユニット441に、アップリンクトランザクションシーケンスに投入するパケットがなければ、アップリンク制御ユニット441は、アップリンク411A上で受信したトランザクションを転送するように構成される。1つの実施形態において、パケット境界トラックユニット450が、制御信号をマルチプレクサ430に与えてもよく、マルチプレクサ430により、受信したトランザクションをスクランブルし、伝送ユニット435によって伝送することができるようにしてもよい。1つの実施形態において、伝送ユニット435は、上述したように、LFSRを用いて伝送されるデータをスクランブルしてもよいが、他の実施形態において、伝送ユニット435は、上述したように、同期パケットを投入してもよい。
しかしながら、1つの実施形態において、投入されるパケットが、ハブコア論理から投入FIFO425内に受信および格納されるとき、データ回復ユニット415からの受信データは、後で伝送するために保持FIFO420内に格納される。現在転送されたパケットの送信が完了すると、投入FIFO425内に格納されたデータは、マルチプレクサ430の入力に与えられる。さらに、パケット境界トラックユニット450は、アップリンク411Bから受信したパケットのパケット境界をトラッキングする。パケット境界トラックユニット450により、投入されたパケットは、正確な時間にマルチプレクサ430に制御信号を与えることで、転送されたパケットと一致しないことによって、注入される待機中のパケットをスクランブルし、伝送ユニット435によって伝送することができるようになる。投入FIFO425内に格納された投入予定のパケットと、保持FIFO420内に格納された転送予定のパケットとがあると仮定すると、パケット境界トラックユニット450は、公平性アルゴリズム(fairness algorithm)に応じて、伝送ユニット435にパケットのいずれかのタイプを送るようにマルチプレクサ430を選択的に制御してもよい。公平性アルゴリズムは、任意の所与のメモリモジュールに対する投入パケットまたは転送パケットのいずれかが不足しないように構成された任意のアルゴリズムであってもよい。アップリンク411B上で受信したNOPパケットが、保持FIF420内に格納されたり、転送されたりする代わりに破棄されてもよいことに留意されたい。
別の実施形態において、転送したトランザクショントラフィックの待ち時間を改善するために、位相アライメントユニット410は、破線で示すように、保持FIFO420およびマルチプレクサ430に結合されてもよいことに留意されたい。このような実施形態では、投入トラフィックが存在しない場合、待ち時間が改善されることがある。
1つの実施形態において、ホスト100と各メモリモジュール150の各メモリ制御ハブ160との間の通信前に、ホスト100内および各メモリ制御ハブ160内に存在する可能性がある任意のスクランブル/デスクランブル論理、同期FIFO、および位相アライメント論理を同期させるために、開始シーケンスが実行されてもよい。例えば、1つの実施形態において、開始シーケンスは、リセット中、1つ以上の同期パターンをダウンストリームに送信するホスト100を含んでもよい。同期パターンは、各メモリ制御ハブ160によってホスト100へアップストリームに転送されて戻されてもよい。同期パターンは、スクランブル/デスクランブル論理を含む受信機が同期をロックできるように使用されてもよい。
(メモリインターコネクト)
図1および図2をまとめて参照すると、メモリインターコネクトは、メモリリンク110A〜110Cなどの1つ以上の高速ポイント・ツゥー・ポイントメモリリンクを含み、メモリリンク110A〜110Cの各々は、例えば、アップリンク211Aなどのアップリンクおよびダウンリンク212Aなどのダウンリンクを含む。上述したように、1つの実施形態において、ダウンリンクは18ビットリンクであってもよく、アップリンクは16ビットリンクであってもよい。このようにして、18ビットダウンリンクが、16制御アドレスデータ(CAD:control,address and data)信号、ビジー信号、および制御(CTL:Control)信号を含んでもよい。所与のアップリンクが、16制御アドレスデータ(CAD)信号を含んでもよい。しかしながら、別の実施形態において、アップリンク211AなどのアップリンクがCTL信号を含んでもよいことが考えられる。
高速リンクの他にも、各メモリモジュール150に他の信号が与えられてもよい。例えば、1つの実施形態において、リセット信号、パワーOK信号、および基準クロックが、ホスト100から各メモリモジュール150に与えられてもよい。さらに、他の信号は、各メモリモジュール間に与えられてもよい。例えば、上述したように、メモリモジュール間に、次のメモリモジュール存在信号が与えられてもよい。
一般的に言えば、メモリリンク110上で伝達されるトランザクションのタイプは、コンフィギュレーションおよび制御トランザクションと、メモリトランザクションとに分類されてもよい。1つの実施形態において、コンフィギュレーションおよび制御トランザクションは、メモリ制御ハブ160を構成するために使用されてもよい。例えば、コンフィギュレーションおよび制御トランザクションは、コンフィギュレーションレジスタにアクセスし、メモリアドレスレンジをメモリモジュールに割り当て、またはハブアドレスをメモリモジュールハブに割り当てるように使用されてもよい。メモリトランザクションは、メモリチップ261A〜261N内のメモリロケーションにアクセスするために使用されてもよい。
したがって、1つの実施形態において、サポートされているアドレッシングには、ハブアドレッシングおよびメモリアドレッシングの2つのタイプがある。ハブアドレッシングを使用すると、8ハブビットが、アクセスされている特定のメモリ制御ハブを識別する。1つの実施形態において、FFhのハブアドレスが、すべてのメモリ制御ハブへの同時通信を表すものであってもよい。メモリアドレッシングを用いて、各ハブは、どのハブがリクエストを受けるべきかを決定するためにアドレスビットの上側部分を復号し、アクセスされるメモリロケーションを決定するために下側部分を復号する。1つの実施形態において、40アドレスビットがあるが、必要に応じて、他の数のアドレスビットが使用されてもよいことが考えられる。
1つの実施形態において、メモリリンクの各々は、1つ以上のパケットを用いてトランザクションを伝達するように構成される。パケットは、制御およびコンフィギュレーションパケットと、メモリアクセスパケットとを含み、それらの各々は、パケットが搬送するコマンドのタイプに応じて、データペイロードを含んでもよい。このように、メモリリンク110を構成するワイヤセットは、制御、アドレス、およびデータを伝達するために使用されてもよい。
パケットは、一般的に、各パケットが、シングルビットの情報を伝達する多数のビット部分を含むということに特徴付けられてもよい。各パケットは、数ビットタイムに分割され、所与のビットタイムの間、パケットのビット部分のすべてがサンプリングされる。このように、制御情報およびデータは、所与のリンクの同じワイヤ(例えば、CADワイヤ)を共有する。以下にさらに詳細に記載するように、1つの実施形態において、パケットは、ビットペアの倍数であり、すべてのパケットの最初のビットタイムは、等しいビットタイムでサンプリングされる。パケットは、長さが1ビットペアまたは2ビットペアのいずれかであってもよい制御ヘッダで始まる。1つの実施形態において、制御ヘッダの最初の5ビットは、コマンドコードである。以下の表1は、さまざまなタイプのパケットと、それらに関連するコマンドコードを示す。しかしながら、1列目に示す実際のコードは、例示的な目的のものであり、各所与のコマンドに他のコードが使用されてもよいことに留意されたい。
表1パケットタイプおよびコマンドコード
|コード|ヘッダ|コマンド |記述 |方向 |正常応答 |アドレ|
| |長(ビ| | | | |スタイ|
| |ットタ| | | | |プ |
| |イム)| | | | | |
|00h|− |NOP |動作なし/|双方向|− |− |
| | | |アイドル状| | | |
| | | |態 | | | |
|04h|2 |AddrSet |アドレスセ|ダウン|Addr |ハブ |
| | | |ット | |Ack | |
|05h|2 |AddrAck |アドレス認|アップ|− |− |
| | | |識 | | | |
|06h|2 |Ack |認識 |アップ|− |− |
|07h|2 |Nak |認識せず/|アップ|− |− |
| | | |エラー | | | |
|08h|2 |SRdResp |短いリード|アップ|− |− |
| | | |応答 | | | |
|09h|2 |LRdResp |長いリード|アップ|− |− |
| | | |応答 | | | |
|0Ah|2 |ConfigRd |コンフィギ|ダウン|RdResp |ハブ |
| | | |ュレーショ| | | |
| | | |ンリード | | | |
|0Ch|2 |ConfigWr |コンフィギ|ダウン|Ack |ハブ |
| | | |ュレーショ| | | |
| | | |ンライト | | | |
|0Eh|2 |DIMMCtl |DIMM制|ダウン|Ack |ハブ |
| | | |御 | | | |
|10h|4 |SMemRd |短いメモリ|ダウン|RdResp/Ack|メモリ|
| | | |リード | | | |
|11h|4 |LMemRd |長いメモリ|ダウン|RdResp |メモリ|
| | | |リード | | | |
|12h|4 |BlkMemWr |ブロックメ|ダウン|Ack |メモリ|
| | | |モリライト| | | |
|13h|4 |SbytMemWr|短いバイト|ダウン|Ack |メモリ|
| | | |メモリライ| | | |
| | | |ト | | | |
|14h|4 |LbytMemWr|長いバイト|ダウン|Ack |メモリ|
| | | |メモリライ| | | |
| | | |ト | | | |
さらに、1つの実施形態において、パケット(NOPパケットを除く)が、エラー検出コード(EDC:error detecting code)とともに伝送される。1つの実施形態において、EDCは、32ビット巡回冗長コード(CRC:cyclic redundancy code)であるが、必要に応じて、他の実施形態において他のEDCのものが採用されてもよいことに留意されたい。さらに、最上位ビットタイムで最初にアドレスがメモリ制御ハブ160内の高速デコードに送信されるのに対して、最下位バイトで最初にデータが送信される。しかしながら、他の実施形態では、最下位ビットタイムで最初にアドレスが送信されてもよく、最上位バイトで最初にデータが送信されてもよいことに留意されたい。パケットは、バイトイネーブルおよび/またはデータのペイロードを搬送してもよい。ペイロードがないパケットを、ヘッダオンリーパケットと呼ぶ。1つの実施形態において、短いリードのデータのサイズは、最大でプログラムされたキャッシュラインサイズの半分であってもよい。さらに、長いリードおよびブロックライトのデータのサイズは、最大でプログラムされたキャッシュラインサイズであってもよい。さらに、バイトライトのデータサイズは、キャッシュラインサイズの設定にかかわらず、最大の64バイトであってもよい。
パケット内に含まれる制御ヘッダおよびコマンドコード情報の他にも、CTL信号は、各パケットに関する情報を伝達するために使用されてもよい。以下の表2に示すように、いくつかの例示的なCTL符号化が示される。
表2 ダウンストリーム使用のCTL符号化
│偶数 │奇数 │CADの内容 │
│0 │0 │データまたはバイトイネーブ│
│ │ │ルペイロード │
│1 │1 │制御ヘッダ │
│0 │1 │ペイロードありのパケットの│
│ │ │CRC │
│1 │0 │ヘッドオンリーパケットのC│
│ │ │RC │
パケットのヘッダおよびペイロード部分のCTLの値が異なることで、ヘッダオンリーパケットを別のパケットのペイロード内に挿入できるようにする十分な情報が与えられてもよい。これは、ライトパケットがリンク上で送信されている間、リードコマンドを発することができるようにすることで、リードコマンドの待ち時間を減らすために有用なことがある。表3は、表形式でペイロードを含む例示的なパケットを示す。また、表3のパケットは、ビットタイム4〜7の間、ペイロードにヘッダオンリーパケットが挿入されていることを示す。
表3 ペイロードありのパケットと、ペイロード内に挿入されたヘッダオンリーパケット
│ビットタイム│CTL │CAD │
│0 │1 │ヘッダ1ビット[15:0] │
│1 │1 │ヘッダ1ビット[31:16]│
│2 │0 │データビット[15:0] │
│3 │0 │データビット[31:16] │
│4 │1 │ヘッダ2ビット[15:0] │
│5 │1 │ヘッダ2ビット[31:16]│
│6 │1 │CRC2ビット[15:0] │
│7 │0 │CRC2ビット[31:16]│
│8 │0 │データビット[47:32] │
│9 │0 │データビット[64:48] │
│10 │0 │CRC1ビット[15:0] │
│11 │1 │CRC1ビット[31:16]│
図5A〜図5Dは、図1のメモリリンク110A〜110C上で伝達されてもよい例示的なパケットを示す。以下、図5Aを参照すると、コンフィギュレーションリードパケットの1つの実施形態の図が示されている。例示した実施形態において、コンフィギュレーションリードパケット510は、16ビット幅であり、4ビットタイムまたは2ビットペアを含む。
ビットタイム0の間、5ビットコマンドコード(例えば、0Ah)は、ビット位置0〜4に伝達される。ビット位置5〜7は予備とされる。ビット位置8〜15に、8ビットタグが伝達される。1つの実施形態において、タグ値は、例えば、顕著なダウンストリームリクエストとアップストリーム応答パケットを整合するために、ホスト100によって使用されてもよい。使用されていなければ、タグフィールドは、00hの値に設定されてもよい。ビットタイム1の間、8ビットハブアドレスは、ビット位置0〜7に伝達される。さらに、ビット位置8〜15に、8ビットコンフィギュレーションレジスタ数が伝達される。ビットタイム2および3の間、ビット位置0〜15に、それぞれCRCのビット0〜15および16〜31が伝達される。
図5Bを参照すると、コンフィギュレーションライトパケットの1つの実施形態の図が示されている。例示した実施形態において、コンフィギュレーションライトパケット515は、16ビット幅であり、6ビットタイムまたは3ビットペアを含む。
ビットタイム0の間、ビット位置0〜4に、5ビットのコマンドコード(例えば、0Ch)が伝達される。ビット位置5〜7は予備とされる。ビット位置8〜15に、8ビットタグが伝達される。ビットタイム1の間、ビット位置0〜7に、8ビットハブアドレスが伝達される。さらに、ビット位置8〜15に、8ビットコンフィギュレーションレジスタ数が伝達される。ビットタイム2および3の間、ビット位置0〜15に、データペイロードのビット0〜15および16〜31が伝達される。ビットタイム4および5の間、ビット位置0〜15に、それぞれCRCのビット0〜15および16〜31が伝達される。
図5Cを参照すると、メモリリードパケットの1つの実施形態の図が示されている。例示した実施形態において、メモリリードパケット520は、16ビット幅であり、6ビットタイムまたは3ビットペアを含む。ビットタイム0の間、ビット位置0〜4に、5ビットのコマンドコード(例えば、10hまたは11h)が伝達される。ビット位置5〜7は予備とされる。ビット位置8〜15に、8ビットのタグが伝達される。
ビットタイム1の間、ビット位置0〜5に、戻るべきデータの長さが伝達される。1つの実施形態において、00hの値は、データがないことを示し、01hの値は、2ビットペアのデータを示し、02hの値は、4ビットペアのデータを示し、以下同様である。リードの長さがゼロであると、認識パケット(Ack:acknowledge packet)がリクエスタに戻される。1つの実施形態において、半分以下のキャッシュラインのリードにより、短いRdRespが生じることもあり、半分より大きなキャッシュラインのリードにより、単一の長いRdRespまたは2つの短いRdRespのいずれかが生じることもある。キャッシュラインのサイズは、ホスト100および各メモリ制御ハブ160のコンフィギュレーションレジスタにソフトウェアによってプログラムされてもよい。ビット6〜7は予備とされる。ビット位置8〜15に、DRAMのリクエストされた場所のアドレスビット39〜32が伝達される。
ビットタイム2の間、ビット位置0〜15に、DRAMのリクエストされた場所のアドレスビット31〜16が伝達され、ビットタイム3の間、ビット位置3〜15に、DRAMのリクエストされた場所のアドレスビット3〜15が伝達される。また、ビットタイム3の間、ビット位置0〜1に、パケット優先度が伝達される。1つの実施形態において、優先度は、他のリクエストに対するパケットの優先度を表すものであってもよい。例えば、1つの優先度は、すでに進行中であっても、優先度がより低いすべてのリクエストを遅延させ、それらよりも前にこのリクエストを実行するためのものであってもよい。ビット位置2が予備とされる。ビットタイム4および5の間、ビット位置0〜15に、それぞれCRCのビット0〜15および16〜31が伝達される。
図5Dを参照すると、ブロックメモリライトパケットの1つの実施形態の図が示されている。例示した実施形態において、ブロックメモリライト回路525は、16ビット幅であり、8ビットタイムまたは4ビットペアを含む。ビットタイム0の間、ビット位置0〜4に、5ビットのコマンドコード(例えば、12h)が伝達される。ビット位置5〜7は予備とされる。ビット位置8〜15に、8ビットタグが伝達される。
ビットタイム1の間、ビット位置0〜5に、データペイロードに伝達されているデータの長さが伝達される。1つの実施形態において、00hの値は、データがないことを示し、01hの値は、2ビットペアのデータを示し、02hの値は、4ビットペアのデータを示し、以下同様である。ビット6〜7は予備とされる。ビット位置8〜15に、書き込まれているDRAMの場所のアドレスビット39〜32が伝達される。
ビットタイム2の間、ビット位置0〜15に、書き込まれているDRAMの場所のアドレスビット31〜16が伝達され、ビットタイム3の間、ビット位置3〜15に、書き込まれているDRAMの場所のアドレスビット3〜15が伝達される。また、ビットタイム3の間、ビット位置0〜1に、パケット優先度が伝達される。ビット位置2は予備とされる。
ビットタイム4および5の間、ビット位置0〜15に、データペイロードの第1のビットペアのビット0〜15および16〜31が伝達される。より多くのデータが書き込まれていれば、後続するビットペアは、後続するデータペイロードのビット0〜15および16〜31を伝達してもよい。ビットタイム4+2Nおよび5+2Nの間、ビット位置0〜15に、それぞれCRCのビット0〜15および16〜31が伝達される。
4つのタイプのパケットしか示していないが、表3に挙げたコマンドコードに対応するものであってもよい他のタイプのパケットも考えられることに留意されたい。特定の数のビットを有する例示的なパケットのさまざまなフィールドが示されているが、他の実施形態において、各パケットにおいて、さまざまなフィールドが、必要に応じて、他の数のビットを含んでもよいことが考えられることにさらに留意されたい。
図6は、コンピュータシステムの1つの実施形態のブロック図である。コンピュータシステム600は、コヒーレントパケットインタフェースリンク615A〜Dによって各々が相互接続されたプロセスノード612A〜612Dを含む。コヒーレントパケットインタフェース615の各リンクは、高速のポイント・ツゥー・ポイントリンクを形成してもよい。プロセスノード612A〜Dの各々は、1つ以上のプロセスを含んでもよい。コンピュータシステム600はまた、非コヒーレントパケットインタフェース650Aを介してプロセスノード612Aに結合されたI/Oノード620を含む。I/Oノード620は、例えば、非コヒーレントパケットインタフェース650Bによって、チェーントポロジーにある別のI/Oノード(図示せず)に接続されてもよい。プロセスノード612Aが、ホストノードとして示されており、NCパケットインタフェース650Aを介してI/Oノード620と通信するためのホストブリッジを含んでもよい。プロセスノード612B〜Dはまた、他のI/Oノード(図示せず)と通信するためのホストブリッジを含んでもよい。NCパケットインタフェース650A〜Bによって形成された非コヒーレントパケットインタフェースリンクは、ポイント・ツゥー・ポイントリンクと呼ばれることもある。I/Oノード620は、周辺バス625A〜Bのペアに接続される。
図6は、プロセスノード612Aおよび612Bに結合された対応するシステムメモリ(例えば、617Aおよび617B)を示す。例示した実施形態において、プロセスノード612Aおよび612Bの各々は、図1に示すようなホストを表し、各システムメモリ617は、上述した図1および図2の記載とともに記述したコンフィギュレーションに与えられてもよい。さらに、プロセスノード612Aおよび612Bの各々と、それらに対応するシステムメモリ617との間のインターコネクトは、図1および図2において上述したメモリリンク110Cを含むメモリインターコネクトを表すものであってもよい。他の実施形態において、他の数のプロセスノードが使用されてもよいことに留意されたい。さらに、プロセスノード612Cおよび612Dの各々が、例えば、システムメモリ617などの対応するシステムメモリに同様に接続されてもよいことが考えられる。
例示した実施形態において、コヒーレントパケットインタフェース615の各リンクが、一方向ラインのセットとして与えられる(例えば、ライン615Aは、処理ノード612Aから処理ノード612Bへパケットを伝送するために使用され、ライン615Bは、処理ノード612Bから処理ノード612Cへパケットを伝送するために使用される)。他のラインセット615C〜Dは、図1に示すような他の処理ノード間でパケットを伝送するために使用される。コヒーレントパケットインタフェース615は、処理ノード間で通信するために、キャッシュコヒーレント式に動作されてもよい(「コヒーレントリンク」)。さらに、非コヒーレントパケットインタフェース650は、I/Oノード間およびI/Oノードとプロセスノード612Aのホストブリッジなどのホストブリッジとの間で通信するために、非コヒーレント式に動作されてもよい(「非コヒーレントリンク」)。コヒーレントリンクを介した2つ以上のノードの相互接続は、「コヒーレントファブリック」と呼ばれることがある。同様に、非コヒーレントリンクを介した2つ以上のノードの相互接続は、「非コヒーレントファブリック」と呼ばれることがある。1つの処理ノードから別のものへ伝送されるパケットが、1つ以上の中間ノードを通過してもよいことに留意されたい。例えば、処理ノード612Aから処理ノード612Cへ伝送されたパケットが、図6に示すように、処理ノード612Bまたは処理ノード612Dのいずれかを通過してもよい。任意の適切なルーティングアルゴリズムが使用されてもよい。コンピュータシステム600の他の実施形態が、図6に示す実施形態より処理ノードの数を増減させたものを含んでもよい。
非コヒーレントパケットインタフェース650などのパケットインタフェースの1つの例は、HyperTransportTM技術と適合するものであってもよい。周辺バス625Aおよび625Bは、周辺コンポーネントインターコネクト(PCI:peripheral component interconnect)バスなどの一般的な周辺バスを例示したものである。しかしながら、他のタイプのバスが使用されてもよいことを理解されたい。
他のコンピュータシステムコンフィギュレーションが可能であり考えられることにさらに留意されたい。例えば、図1〜図5において上述したシステムメモリコンフィギュレーションが、ノースブリッジを含むプロセッサチップセットを採用したコンピュータシステムとともに使用されてもよいことが考えられる。このような実施形態において、ノースブリッジ内のメモリコントローラが、ホストとして機能してもよい。
いくつかの実施形態を詳細に上述してきたが、上記開示を完全に認識することで、当業者であれば多数の変形例および修正例が明らかになるであろう。特許請求の範囲は、このようなすべての変形例および修正例を含むように解釈されるべきであることが意図されている。
本発明は、一般的に、コンピュータシステムメモリに応用可能でありうる。
メモリモジュールのシリアル接続されたチェーンを含むシステムの1つの実施形態のブロック図である。 図1に示すメモリモジュールなどのメモリモジュールの1つの実施形態のブロック図である。 図2に示すダウンリンク制御ユニットなどのダウンリンク制御ユニットの1つの実施形態のブロック図である。 図2に示すアップリンク制御ユニットなどのアップリンク制御ユニットの1つの実施形態のブロック図である。 コンフィギュレーションリードパケットの1つの実施形態の図である。 コンフィギュレーションライトパケットの1つの実施形態の図である。 メモリリードパケットの1つの実施形態の図である。 メモリライトパケットの1つの実施形態の図である。 コンピュータシステムの1つの実施形態のブロック図である。

Claims (8)

  1. ホスト(100)と、
    複数のメモリリンク(110A、B、C)と、
    前記複数のメモリリンク(110A、B、C)を介して前記ホストにチェーン状にシリアル結合された複数のメモリモジュール(150A、150B)とを含むシステム(50)であって、
    前記複数のメモリリンク(110A、B、C)の各々は、前記ホスト(100)の方へトランザクションを伝達するための一方向アップリンク(211)と、前記一方向アップリンク(211)とは別の、前記ホスト(100)で生じたトランザクションを伝達するための一方向ダウンリンク(212)とを含み、前記一方向アップリンクおよび前記一方向ダウンリンクの各々が、制御およびコンフィギュレーションパケットと、メモリアクセスパケットとを含むパケットを用いてトランザクションを伝達するように構成された複数の信号を含む、別々の一方向リンクであり、パケットの少なくとも一部分が、制御アドレスデータ情報を含み、前記制御アドレスデータ情報が、所与の前記一方向アップリンク又は前記一方向ダウンリンクのいずれか一つの同一のワイヤを共有し、
    前記複数のメモリモジュール(150A、150B)の各々は、複数のメモリチップ(261A〜N)と、前記複数のメモリチップ(261A〜N)へのアクセスを制御するように結合されたメモリ制御ハブ(160A、160B)とを含み、
    前記メモリ制御ハブ(160A、160B)の各々は、前記複数のメモリチップ(261A〜N)に結合されたDRAMコントローラ(250)と、前記複数のメモリリンクの一つである第1のメモリリンク(110A)の前記一方向アップリンク(211A)及び前記複数のメモリリンクの一つである第2のメモリリンク(110B)の前記一方向アップリンク(211B)に結合されたアップリンク制御ユニット(241)と、前記第1のメモリリンク(110A)の前記一方向ダウンリンク(212A)及び前記第2のメモリリンク(110B)の前記一方向ダウンリンク(212B)に結合されたダウンリンク制御ユニット(241)とを含み、
    前記一方向ダウンリンクの前記複数の信号は、前記ホスト(100)と前記メモリ制御ハブ(160A、160B)との間に結合された前記複数のメモリモジュール(150A、150B)の前記メモリ制御ハブ(160A、160B)によって投入されることになるローカルトランザクションの数を、各々の前記メモリ制御ハブ(160A、160B)に対して指示するビジー信号を更に含み、
    前記メモリ制御ハブ(160A、160B)は、前記ビジー信号に応えて、前記一方向アップリンク(211)にパケットを投入する、システム(50)。
  2. 前記メモリ制御ハブの各々が、前記複数のメモリチップ(261A〜N)へのアクセスを制御するように結合されており、かつ、前記一方向アップリンク(211)及び前記一方向ダウンリンク(212)の両方を介して前記ホスト(100)に結合されており、
    前記複数のメモリモジュール(150A、150B)は、少なくとも、チェーンを形成する第1のメモリモジュール(150A)と、チェーンを形成する最後のメモリモジュールとを含み、
    前記複数のメモリモジュール(150A、150B)は、前記第1のメモリモジュール(150A)が前記複数のメモリリンク(110A、B、C)の一つである前記第1のメモリリンクを介して前記ホスト(100)に接続されるようにシリアル接続されてチェーンを形成し、
    前記複数のメモリモジュール(150A、150B)は、チェーンを形成する前記最後のメモリモジュールを除いて、前記複数のメモリリンク(110A、B、C)のうちの二つに接続され、前記最後のメモリモジュールは、前記複数のメモリリンク(110A、B、C)のうちの一つにのみ接続される、請求項1に記載のシステム。
  3. 前記最後のメモリモジュールの前記メモリ制御ハブ(160A、160B)は、受け取ったパケットが前記最後のメモリモジュールに割り当てられたアドレスレンジ内にあるアドレスを含まないパケットであれば、前記パケットを破棄する、請求項2に記載のシステム。
  4. 前記メモリ制御ハブが、前記第1のメモリリンクの前記一方向ダウンリンク(212A)上で前記トランザクションを受信し、前記トランザクションの復号とは関係なく、前記第2のメモリリンクの前記一方向ダウンリンク(212B)上で前記トランザクションを伝達するように構成された、請求項1に記載のシステム。
  5. 前記メモリ制御ハブに含まれる前記DRAMコントローラ(250)が、前記メモリ制御ハブと関連するメモリアドレスと整合するメモリアドレスを有するメモリコマンドに前記トランザクションを復号することに応答して、前記複数のメモリチップにアクセスするように構成された、請求項に記載のシステム。
  6. 前記メモリ制御ハブが、前記第1のメモリリンクの前記一方向アップリンク上で前記トランザクションを受信し、前記第2のメモリリンクの前記一方向アップリンク上で前記トランザクションを伝達するように構成され、
    前記メモリ制御ハブが、前記第2のメモリリンクの前記一方向アップリンク上で伝達されている前記トランザクションのシーケンスにローカルトランザクションを選択的に投入するように構成された制御ユニットを含む、請求項1に記載のシステム。
  7. 前記ホストが、前記メモリモジュールの各々に関連するメモリサイズまたは前記メモリモジュールの任意のものに関連するアドレスレンジが分からなくても、メモリリエクストトランザクションを発行するように構成されたメモリコントローラ(105)を含む、請求項1に記載のシステム。
  8. 前記メモリコントローラが、先行メモリリードリクエストトランザクションに対する応答を受信する前に、メモリリードリクエストトランザクションを発行するようにさらに構成された、請求項に記載のシステム。
JP2006532883A 2003-05-13 2004-05-10 シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム Active JP4836794B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US47007803P 2003-05-13 2003-05-13
US60/470,078 2003-05-13
PCT/US2004/014441 WO2004102403A2 (en) 2003-05-13 2004-05-10 A system including a host connected to a plurality of memory modules via a serial memory interconnect

Publications (2)

Publication Number Publication Date
JP2006528394A JP2006528394A (ja) 2006-12-14
JP4836794B2 true JP4836794B2 (ja) 2011-12-14

Family

ID=33452363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006532883A Active JP4836794B2 (ja) 2003-05-13 2004-05-10 シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム

Country Status (8)

Country Link
US (4) US20050071542A1 (ja)
JP (1) JP4836794B2 (ja)
KR (1) KR101095025B1 (ja)
CN (1) CN100444141C (ja)
DE (1) DE112004000821B4 (ja)
GB (1) GB2416056B (ja)
TW (1) TWI351613B (ja)
WO (1) WO2004102403A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9823862B2 (en) 2014-02-10 2017-11-21 Toshiba Memory Corporation Storage system

Families Citing this family (219)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6464628B1 (en) 1999-08-12 2002-10-15 Obtech Medical Ag Mechanical anal incontinence
US6471635B1 (en) 2000-02-10 2002-10-29 Obtech Medical Ag Anal incontinence disease treatment with controlled wireless energy supply
DE60113377T2 (de) 2000-02-10 2006-06-14 Potencia Medical Ag Kontrollierte harninkontinenzbehandlung
DE60110747T2 (de) 2000-02-10 2006-02-23 Potencia Medical Ag Mechanische vorrichtung zur impotenzbehandlung
ATE380006T1 (de) 2000-02-11 2007-12-15 Potencia Medical Ag Kontrollierte impotenzbehandlung
DE60111019T2 (de) 2000-02-14 2006-05-11 Potencia Medical Ag Penisprothese
CA2397284C (en) 2000-02-14 2010-05-18 Potencia Medical Ag Male impotence prosthesis apparatus with wireless energy supply
US7565326B2 (en) * 2000-05-25 2009-07-21 Randle William M Dialect independent multi-dimensional integrator using a normalized language platform and secure controlled access
US6791555B1 (en) * 2000-06-23 2004-09-14 Micron Technology, Inc. Apparatus and method for distributed memory control in a graphics processing system
US20030101312A1 (en) * 2001-11-26 2003-05-29 Doan Trung T. Machine state storage apparatus and method
US7133972B2 (en) * 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US7200024B2 (en) * 2002-08-02 2007-04-03 Micron Technology, Inc. System and method for optically interconnecting memory devices
US7117316B2 (en) * 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7254331B2 (en) * 2002-08-09 2007-08-07 Micron Technology, Inc. System and method for multiple bit optical data transmission in memory systems
US7149874B2 (en) * 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7836252B2 (en) 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US7102907B2 (en) * 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US7083420B2 (en) * 2003-02-10 2006-08-01 Leapfrog Enterprises, Inc. Interactive handheld apparatus with stylus
US7200787B2 (en) * 2003-06-03 2007-04-03 Intel Corporation Memory channel utilizing permuting status patterns
US7194581B2 (en) * 2003-06-03 2007-03-20 Intel Corporation Memory channel with hot add/remove
US7340537B2 (en) 2003-06-04 2008-03-04 Intel Corporation Memory channel with redundant presence detect
US7165153B2 (en) 2003-06-04 2007-01-16 Intel Corporation Memory channel with unidirectional links
US8171331B2 (en) * 2003-06-04 2012-05-01 Intel Corporation Memory channel having deskew separate from redrive
US7386768B2 (en) * 2003-06-05 2008-06-10 Intel Corporation Memory channel with bit lane fail-over
US7245145B2 (en) * 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7107415B2 (en) * 2003-06-20 2006-09-12 Micron Technology, Inc. Posted write buffers and methods of posting write requests in memory modules
US7260685B2 (en) * 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
US7428644B2 (en) * 2003-06-20 2008-09-23 Micron Technology, Inc. System and method for selective memory module power management
US20040264256A1 (en) * 2003-06-26 2004-12-30 Mauritz Karl H Electrical solution to enable high-speed interfaces
US7389364B2 (en) * 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
DE10335978B4 (de) * 2003-08-06 2006-02-16 Infineon Technologies Ag Hub-Baustein zum Anschließen von einem oder mehreren Speicherbausteinen
US7210059B2 (en) * 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7133991B2 (en) * 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US7136958B2 (en) 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US20050050237A1 (en) * 2003-08-28 2005-03-03 Jeddeloh Joseph M. Memory module and method having on-board data search capabilities and processor-based system using such memory modules
US7194593B2 (en) * 2003-09-18 2007-03-20 Micron Technology, Inc. Memory hub with integrated non-volatile memory
US7120743B2 (en) * 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7234070B2 (en) * 2003-10-27 2007-06-19 Micron Technology, Inc. System and method for using a learning sequence to establish communications on a high-speed nonsynchronous interface in the absence of clock forwarding
US7721060B2 (en) * 2003-11-13 2010-05-18 Intel Corporation Method and apparatus for maintaining data density for derived clocking
US7533218B2 (en) * 2003-11-17 2009-05-12 Sun Microsystems, Inc. Memory system topology
US20050138267A1 (en) * 2003-12-23 2005-06-23 Bains Kuljit S. Integral memory buffer and serial presence detect capability for fully-buffered memory modules
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7188219B2 (en) * 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7412574B2 (en) * 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
US7181584B2 (en) * 2004-02-05 2007-02-20 Micron Technology, Inc. Dynamic command and/or address mirroring system and method for memory modules
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US20050210185A1 (en) * 2004-03-18 2005-09-22 Kirsten Renick System and method for organizing data transfers with memory hub memory modules
US7257683B2 (en) * 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7120723B2 (en) 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US7447240B2 (en) * 2004-03-29 2008-11-04 Micron Technology, Inc. Method and system for synchronizing communications links in a hub-based memory system
US7228442B2 (en) * 2004-03-30 2007-06-05 The Boeing Company Method and systems for a radiation tolerant bus interface circuit
US8050176B2 (en) * 2004-03-30 2011-11-01 The Boeing Company Methods and systems for a data processing system having radiation tolerant bus
US7337273B2 (en) * 2004-03-31 2008-02-26 Microsoft Corporation Strategies for reading information from a mass storage medium using a cache memory
US6980042B2 (en) * 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) * 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US20050240574A1 (en) * 2004-04-27 2005-10-27 International Business Machines Corporation Pre-fetching resources based on a resource lookup query
US7162567B2 (en) * 2004-05-14 2007-01-09 Micron Technology, Inc. Memory hub and method for memory sequencing
US7222213B2 (en) * 2004-05-17 2007-05-22 Micron Technology, Inc. System and method for communicating the synchronization status of memory modules during initialization of the memory modules
US7363419B2 (en) * 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7212423B2 (en) 2004-05-31 2007-05-01 Intel Corporation Memory agent core clock aligned to lane
US7519788B2 (en) 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
US7310748B2 (en) * 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US8122187B2 (en) * 2004-07-02 2012-02-21 Qualcomm Incorporated Refreshing dynamic volatile memory
US20060015450A1 (en) * 2004-07-13 2006-01-19 Wells Fargo Bank, N.A. Financial services network and associated processes
US7254663B2 (en) * 2004-07-22 2007-08-07 International Business Machines Corporation Multi-node architecture with daisy chain communication link configurable to operate in unidirectional and bidirectional modes
US7296129B2 (en) 2004-07-30 2007-11-13 International Business Machines Corporation System, method and storage medium for providing a serialized memory interface with a bus repeater
US20060036826A1 (en) * 2004-07-30 2006-02-16 International Business Machines Corporation System, method and storage medium for providing a bus speed multiplier
US7389375B2 (en) * 2004-07-30 2008-06-17 International Business Machines Corporation System, method and storage medium for a multi-mode memory buffer device
US7224595B2 (en) 2004-07-30 2007-05-29 International Business Machines Corporation 276-Pin buffered memory module with enhanced fault tolerance
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US7742438B1 (en) * 2004-10-21 2010-06-22 Owlink Technology, Inc. HDCP data transmission over a single communication channel
US7356737B2 (en) * 2004-10-29 2008-04-08 International Business Machines Corporation System, method and storage medium for testing a memory module
US20060095620A1 (en) * 2004-10-29 2006-05-04 International Business Machines Corporation System, method and storage medium for merging bus data in a memory subsystem
US7395476B2 (en) * 2004-10-29 2008-07-01 International Business Machines Corporation System, method and storage medium for providing a high speed test interface to a memory subsystem
US7441060B2 (en) * 2004-10-29 2008-10-21 International Business Machines Corporation System, method and storage medium for providing a service interface to a memory system
US7277988B2 (en) * 2004-10-29 2007-10-02 International Business Machines Corporation System, method and storage medium for providing data caching and data compression in a memory subsystem
US7299313B2 (en) * 2004-10-29 2007-11-20 International Business Machines Corporation System, method and storage medium for a memory subsystem command interface
US7512762B2 (en) * 2004-10-29 2009-03-31 International Business Machines Corporation System, method and storage medium for a memory subsystem with positional read data latency
US7305574B2 (en) * 2004-10-29 2007-12-04 International Business Machines Corporation System, method and storage medium for bus calibration in a memory subsystem
US7331010B2 (en) * 2004-10-29 2008-02-12 International Business Machines Corporation System, method and storage medium for providing fault detection and correction in a memory subsystem
US20070005902A1 (en) * 2004-12-07 2007-01-04 Ocz Technology Group, Inc. Integrated sram cache for a memory module and method therefor
US7752016B2 (en) * 2005-01-11 2010-07-06 Hewlett-Packard Development Company, L.P. System and method for data analysis
US7809991B2 (en) * 2005-01-11 2010-10-05 Hewlett-Packard Development Company, L.P. System and method to qualify data capture
US7228472B2 (en) * 2005-01-11 2007-06-05 Hewlett-Packard Development Company, L.P. System and method to control data capture
US20060168407A1 (en) * 2005-01-26 2006-07-27 Micron Technology, Inc. Memory hub system and method having large virtual page size
US20060195631A1 (en) * 2005-01-31 2006-08-31 Ramasubramanian Rajamani Memory buffers for merging local data from memory modules
US7640392B2 (en) 2005-06-23 2009-12-29 Qualcomm Incorporated Non-DRAM indicator and method of accessing data not stored in DRAM array
US7620783B2 (en) * 2005-02-14 2009-11-17 Qualcomm Incorporated Method and apparatus for obtaining memory status information cross-reference to related applications
JP2006259906A (ja) * 2005-03-15 2006-09-28 Ricoh Co Ltd 通信制御装置、通信制御システム、省電力制御方法、省電力制御プログラム、および該プログラムを記録した記録媒体
JP4274140B2 (ja) 2005-03-24 2009-06-03 日本電気株式会社 ホットスワップ機能付きメモリシステム及びその障害メモリモジュールの交換方法
US7827462B2 (en) 2005-03-31 2010-11-02 Intel Corporation Combined command and data code
EP2378432A1 (en) * 2005-04-21 2011-10-19 Violin Memory, Inc. Interconnection system
US8452929B2 (en) 2005-04-21 2013-05-28 Violin Memory Inc. Method and system for storage of data in non-volatile media
US9582449B2 (en) 2005-04-21 2017-02-28 Violin Memory, Inc. Interconnection system
US8112655B2 (en) 2005-04-21 2012-02-07 Violin Memory, Inc. Mesosynchronous data bus apparatus and method of data transmission
US9384818B2 (en) * 2005-04-21 2016-07-05 Violin Memory Memory power management
US9286198B2 (en) 2005-04-21 2016-03-15 Violin Memory Method and system for storage of data in non-volatile media
US20060288132A1 (en) * 2005-05-31 2006-12-21 Mccall James A Memory single-to-multi load repeater architecture
US20070016698A1 (en) * 2005-06-22 2007-01-18 Vogt Pete D Memory channel response scheduling
TWI285839B (en) * 2005-06-22 2007-08-21 Via Tech Inc Selectively prefetch method and bridge module
US7930492B2 (en) * 2005-09-12 2011-04-19 Samsung Electronics Co., Ltd. Memory system having low power consumption
US7966446B2 (en) * 2005-09-12 2011-06-21 Samsung Electronics Co., Ltd. Memory system and method having point-to-point link
US7747833B2 (en) * 2005-09-30 2010-06-29 Mosaid Technologies Incorporated Independent link and bank selection
US20070165457A1 (en) * 2005-09-30 2007-07-19 Jin-Ki Kim Nonvolatile memory system
US7652922B2 (en) 2005-09-30 2010-01-26 Mosaid Technologies Incorporated Multiple independent serial link memory
KR101260632B1 (ko) * 2005-09-30 2013-05-03 모사이드 테크놀로지스 인코퍼레이티드 출력 제어 메모리
US20070076502A1 (en) 2005-09-30 2007-04-05 Pyeon Hong B Daisy chain cascading devices
US7496777B2 (en) 2005-10-12 2009-02-24 Sun Microsystems, Inc. Power throttling in a memory system
US7533212B1 (en) 2005-10-20 2009-05-12 Sun Microsystems, Inc. System memory board subsystem using DRAM with integrated high speed point to point links
US7523282B1 (en) 2005-10-27 2009-04-21 Sun Microsystems, Inc. Clock enable throttling for power savings in a memory subsystem
US7478259B2 (en) 2005-10-31 2009-01-13 International Business Machines Corporation System, method and storage medium for deriving clocks in a memory system
US7685392B2 (en) 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
KR100818298B1 (ko) 2005-12-08 2008-03-31 한국전자통신연구원 가변 시리얼 정합 방식의 메모리 시스템 및 그 메모리액세스 방법
US7409491B2 (en) 2005-12-14 2008-08-05 Sun Microsystems, Inc. System memory board subsystem using DRAM with stacked dedicated high speed point to point links
US7516349B2 (en) 2005-12-29 2009-04-07 Intel Corporation Synchronized memory channels with unidirectional links
KR100656814B1 (ko) * 2006-01-17 2006-12-14 신잔토개발 주식회사 건설폐기물의 처리용 세골재 세척 분리 장치
EP2242058B1 (en) * 2006-03-31 2014-07-16 Mosaid Technologies Incorporated Flash memory system control scheme
US8185711B2 (en) 2006-05-16 2012-05-22 Samsung Electronics Co., Ltd. Memory module, a memory system including a memory controller and a memory module and methods thereof
KR100801709B1 (ko) * 2006-05-16 2008-02-11 삼성전자주식회사 메모리 모듈 및 이를 구비한 메모리 시스템
US7636813B2 (en) * 2006-05-22 2009-12-22 International Business Machines Corporation Systems and methods for providing remote pre-fetch buffers
US7640386B2 (en) * 2006-05-24 2009-12-29 International Business Machines Corporation Systems and methods for providing memory modules with multiple hub devices
US7584336B2 (en) * 2006-06-08 2009-09-01 International Business Machines Corporation Systems and methods for providing data modification operations in memory subsystems
US7430139B2 (en) * 2006-06-12 2008-09-30 Via Technologies, Inc. Shared memory synchronization systems and methods
US7669086B2 (en) * 2006-08-02 2010-02-23 International Business Machines Corporation Systems and methods for providing collision detection in a memory system
US9262326B2 (en) * 2006-08-14 2016-02-16 Qualcomm Incorporated Method and apparatus to enable the cooperative signaling of a shared bus interrupt in a multi-rank memory subsystem
US7539842B2 (en) * 2006-08-15 2009-05-26 International Business Machines Corporation Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables
US7904639B2 (en) 2006-08-22 2011-03-08 Mosaid Technologies Incorporated Modular command structure for memory and memory system
US7757064B2 (en) * 2006-09-07 2010-07-13 Infineon Technologies Ag Method and apparatus for sending data from a memory
US8028186B2 (en) 2006-10-23 2011-09-27 Violin Memory, Inc. Skew management in an interconnection system
US7870459B2 (en) 2006-10-23 2011-01-11 International Business Machines Corporation High density high reliability memory module with power gating and a fault tolerant address and command bus
US20080104352A1 (en) * 2006-10-31 2008-05-01 Advanced Micro Devices, Inc. Memory system including a high-speed serial buffer
US7861140B2 (en) * 2006-10-31 2010-12-28 Globalfoundries Inc. Memory system including asymmetric high-speed differential memory interconnect
US7694031B2 (en) * 2006-10-31 2010-04-06 Globalfoundries Inc. Memory controller including a dual-mode memory interconnect
US7949794B2 (en) 2006-11-02 2011-05-24 Intel Corporation PCI express enhancements and extensions
US20080133864A1 (en) * 2006-12-01 2008-06-05 Jonathan Randall Hinkle Apparatus, system, and method for caching fully buffered memory
US7818464B2 (en) * 2006-12-06 2010-10-19 Mosaid Technologies Incorporated Apparatus and method for capturing serial input data
US7881303B2 (en) * 2006-12-13 2011-02-01 GlobalFoundries, Inc. Command packet packing to mitigate CRC overhead
US8032711B2 (en) * 2006-12-22 2011-10-04 Intel Corporation Prefetching from dynamic random access memory to a static random access memory
US7721140B2 (en) 2007-01-02 2010-05-18 International Business Machines Corporation Systems and methods for improving serviceability of a memory system
US7603526B2 (en) * 2007-01-29 2009-10-13 International Business Machines Corporation Systems and methods for providing dynamic memory pre-fetch
US7606988B2 (en) * 2007-01-29 2009-10-20 International Business Machines Corporation Systems and methods for providing a dynamic memory bank page policy
US7783918B2 (en) * 2007-02-15 2010-08-24 Inventec Corporation Data protection method of storage device
US8122202B2 (en) 2007-02-16 2012-02-21 Peter Gillingham Reduced pin count interface
WO2008098342A1 (en) * 2007-02-16 2008-08-21 Mosaid Technologies Incorporated Semiconductor device and method for reducing power consumption in a system having interconnected devices
US7796462B2 (en) 2007-02-22 2010-09-14 Mosaid Technologies Incorporated Data flow control in multiple independent port
US8086785B2 (en) 2007-02-22 2011-12-27 Mosaid Technologies Incorporated System and method of page buffer operation for memory devices
WO2008101316A1 (en) 2007-02-22 2008-08-28 Mosaid Technologies Incorporated Apparatus and method for using a page buffer of a memory device as a temporary cache
JP5669338B2 (ja) 2007-04-26 2015-02-12 株式会社日立製作所 半導体装置
TW200901042A (en) * 2007-06-23 2009-01-01 Jmicron Technology Corp Storage device and circuit element switching method thereof
US7890788B2 (en) * 2007-07-09 2011-02-15 John Yin Clock data recovery and synchronization in interconnected devices
WO2009027802A1 (en) * 2007-08-28 2009-03-05 Nokia Corporation Method for bus testing and addressing in mass memory components
US20090063786A1 (en) * 2007-08-29 2009-03-05 Hakjune Oh Daisy-chain memory configuration and usage
KR100934227B1 (ko) 2007-09-21 2009-12-29 한국전자통신연구원 개방형 시리얼 정합 방식을 이용한 메모리 스위칭 컨트롤장치, 그의 동작 방법 및 이에 적용되는 데이터 저장 장치
US8503678B2 (en) 2007-09-28 2013-08-06 Intel Corporation Suppressing power supply noise using data scrambling in double data rate memory systems
CN101836193B (zh) * 2007-10-05 2012-10-03 提琴存储器公司 一种同步数据总线装置及数据传输方法
US8594110B2 (en) 2008-01-11 2013-11-26 Mosaid Technologies Incorporated Ring-of-clusters network topologies
WO2009096855A1 (en) * 2008-01-28 2009-08-06 Milux Holding Sa Blood clot removal device, system, and method
EP2240140B8 (en) 2008-01-29 2022-05-18 Implantica Patent Ltd. An apparatus for treating gerd
US8131913B2 (en) * 2008-02-04 2012-03-06 Mosaid Technologies Incorporated Selective broadcasting of data in series connected devices
US8516185B2 (en) * 2009-07-16 2013-08-20 Netlist, Inc. System and method utilizing distributed byte-wise buffers on a memory module
US20100005206A1 (en) * 2008-07-01 2010-01-07 International Business Machines Corporation Automatic read data flow control in a cascade interconnect memory system
US8139390B2 (en) * 2008-07-08 2012-03-20 Mosaid Technologies Incorporated Mixed data rates in memory devices and systems
US8122421B2 (en) * 2008-08-14 2012-02-21 Omnivision Technologies, Inc. System, and method, and computer readable medium for designing a scalable clustered storage integrated circuit for multi-media processing
US8560735B2 (en) * 2008-08-15 2013-10-15 Micron Technology, Inc. Chained bus method and device
US8509894B2 (en) 2008-10-10 2013-08-13 Milux Holding Sa Heart help device, system, and method
EP2349096B1 (en) 2008-10-10 2021-01-27 MedicalTree Patent Ltd. An improved artificial valve
WO2010042046A1 (en) 2008-10-10 2010-04-15 Milux Holding S.A. Apparatus, system and operation method for the treatment of female sexual dysfunction
EP2346548B1 (en) 2008-10-10 2021-06-16 MedicalTree Patent Ltd. Heart help device, and system
US11123171B2 (en) 2008-10-10 2021-09-21 Peter Forsell Fastening means for implantable medical control assembly
US8874215B2 (en) 2008-10-10 2014-10-28 Peter Forsell System, an apparatus, and a method for treating a sexual dysfunctional female patient
DE102009004565B4 (de) * 2009-01-14 2015-04-02 Texas Instruments Deutschland Gmbh Vorrichtung und Verfahren zum Zwischenspeichern von Daten zwischen Speichercontroller und DRAM
US8023345B2 (en) * 2009-02-24 2011-09-20 International Business Machines Corporation Iteratively writing contents to memory locations using a statistical model
CN101872308A (zh) * 2009-04-25 2010-10-27 鸿富锦精密工业(深圳)有限公司 内存条控制系统及其控制方法
US8046628B2 (en) * 2009-06-05 2011-10-25 Micron Technology, Inc. Failure recovery memory devices and methods
US8521980B2 (en) * 2009-07-16 2013-08-27 Mosaid Technologies Incorporated Simultaneous read and write data transfer
US9949812B2 (en) 2009-07-17 2018-04-24 Peter Forsell Vaginal operation method for the treatment of anal incontinence in women
US10952836B2 (en) 2009-07-17 2021-03-23 Peter Forsell Vaginal operation method for the treatment of urinary incontinence in women
US8230276B2 (en) * 2009-09-28 2012-07-24 International Business Machines Corporation Writing to memory using adaptive write techniques
US8386739B2 (en) * 2009-09-28 2013-02-26 International Business Machines Corporation Writing to memory using shared address buses
US8923405B1 (en) * 2010-01-25 2014-12-30 Ambarella, Inc. Memory access ordering for a transformation
US8463985B2 (en) 2010-03-31 2013-06-11 International Business Machines Corporation Constrained coding to reduce floating gate coupling in non-volatile memories
US20120079313A1 (en) * 2010-09-24 2012-03-29 Honeywell International Inc. Distributed memory array supporting random access and file storage operations
US11048410B2 (en) 2011-08-24 2021-06-29 Rambus Inc. Distributed procedure execution and file systems on a memory interface
WO2013028854A1 (en) 2011-08-24 2013-02-28 Rambus Inc. Methods and systems for mapping a peripheral function onto a legacy memory interface
US9098209B2 (en) 2011-08-24 2015-08-04 Rambus Inc. Communication via a memory interface
US8495440B2 (en) 2011-08-30 2013-07-23 Advanced Micro Devices, Inc. Fully programmable parallel PRBS generator
US8825967B2 (en) 2011-12-08 2014-09-02 Conversant Intellectual Property Management Inc. Independent write and read control in serially-connected devices
US20140331325A1 (en) 2012-03-21 2014-11-06 Samsung Sds Co., Ltd. Anti-malware system and method for processing data in system
CN102693337B (zh) * 2012-05-11 2014-04-30 江苏中科梦兰电子科技有限公司 8位位宽和16位位宽内存芯片兼容的内存设备设计方法
US9285865B2 (en) 2012-06-29 2016-03-15 Oracle International Corporation Dynamic link scaling based on bandwidth utilization
US9390018B2 (en) * 2012-08-17 2016-07-12 Advanced Micro Devices, Inc. Data cache prefetch hints
US9348753B2 (en) 2012-10-10 2016-05-24 Advanced Micro Devices, Inc. Controlling prefetch aggressiveness based on thrash events
EP2887223A4 (en) * 2012-10-12 2015-08-19 Huawei Tech Co Ltd MEMORY SYSTEM, MEMORY MODULE, METHOD OF ACCESSING MEMORY MODULE, AND COMPUTER SYSTEM
JP5985403B2 (ja) 2013-01-10 2016-09-06 株式会社東芝 ストレージ装置
JP6005533B2 (ja) 2013-01-17 2016-10-12 株式会社東芝 記憶装置および記憶方法
KR20150010150A (ko) * 2013-07-18 2015-01-28 삼성전자주식회사 메모리 시스템 및 이의 동작 방법
JP5931816B2 (ja) 2013-08-22 2016-06-08 株式会社東芝 ストレージ装置
CN104461727A (zh) * 2013-09-16 2015-03-25 华为技术有限公司 内存模组访问方法及装置
US9141541B2 (en) 2013-09-20 2015-09-22 Advanced Micro Devices, Inc. Nested channel address interleaving
US9558143B2 (en) * 2014-05-09 2017-01-31 Micron Technology, Inc. Interconnect systems and methods using hybrid memory cube links to send packetized data over different endpoints of a data handling device
US9396065B2 (en) * 2014-06-25 2016-07-19 Intel Corporation Extensible memory hub
US9448939B2 (en) 2014-06-30 2016-09-20 International Business Machines Corporation Collecting memory operand access characteristics during transactional execution
US9336047B2 (en) 2014-06-30 2016-05-10 International Business Machines Corporation Prefetching of discontiguous storage locations in anticipation of transactional execution
US9348643B2 (en) 2014-06-30 2016-05-24 International Business Machines Corporation Prefetching of discontiguous storage locations as part of transactional execution
US9600286B2 (en) 2014-06-30 2017-03-21 International Business Machines Corporation Latent modification instruction for transactional execution
US9710271B2 (en) 2014-06-30 2017-07-18 International Business Machines Corporation Collecting transactional execution characteristics during transactional execution
US9792246B2 (en) 2014-12-27 2017-10-17 Intel Corporation Lower-power scrambling with improved signal integrity
US10528284B2 (en) * 2016-03-29 2020-01-07 Samsung Electronics Co., Ltd. Method and apparatus for enabling larger memory capacity than physical memory size
US10678704B2 (en) 2016-03-29 2020-06-09 Samsung Electronics Co., Ltd. Method and apparatus for enabling larger memory capacity than physical memory size
US10496543B2 (en) 2016-03-31 2019-12-03 Samsung Electronics Co., Ltd. Virtual bucket multiple hash tables for efficient memory in-line deduplication application
US10573354B2 (en) * 2016-09-22 2020-02-25 Smart Modular Technologies, Inc. High density memory module system
US10095421B2 (en) 2016-10-21 2018-10-09 Advanced Micro Devices, Inc. Hybrid memory module bridge network and buffers
US11373691B2 (en) * 2019-12-20 2022-06-28 Micron Technology Inc. Clock locking for packet based communications of memory devices
US11513976B2 (en) * 2020-03-31 2022-11-29 Western Digital Technologies, Inc. Advanced CE encoding for bus multiplexer grid for SSD
TWI756810B (zh) * 2020-09-02 2022-03-01 瑞昱半導體股份有限公司 晶片與相關的晶片系統
TWI802065B (zh) * 2021-10-29 2023-05-11 飛捷科技股份有限公司 可控制周邊裝置電源與訊號的通信介面轉接器、動態分配通信介面轉接器識別碼的方法及自動化診斷周邊裝置並修復問題的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999041666A1 (en) * 1998-02-13 1999-08-19 Intel Corporation Memory module controller
JP2001156621A (ja) * 1999-09-17 2001-06-08 Toshiba Corp 半導体集積回路装置およびデータ・信号伝送システム
US20020084458A1 (en) * 2000-12-28 2002-07-04 Halbert John B. Multi-tier point-to-point buffered memory interface
US6502161B1 (en) * 2000-01-05 2002-12-31 Rambus Inc. Memory system including a point-to-point linked memory subsystem

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4604689A (en) * 1983-04-15 1986-08-05 Convergent Technologies, Inc. Bus repeater
JPH0740225B2 (ja) * 1985-12-25 1995-05-01 日本電気株式会社 プログラムスキツプ動作制御方式
US5434861A (en) * 1989-02-02 1995-07-18 Pritty; David Deterministic timed bus access method
GB2234372A (en) 1989-07-18 1991-01-30 Anamartic Ltd Mass memory device
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
FR2707778B1 (fr) * 1993-07-15 1995-08-18 Bull Sa NÓoeud de processeurs.
JP3548616B2 (ja) * 1995-01-20 2004-07-28 株式会社日立製作所 情報処理装置
US6226723B1 (en) * 1996-09-20 2001-05-01 Advanced Memory International, Inc. Bifurcated data and command/address communication bus architecture for random access memories employing synchronous communication protocols
US5822766A (en) * 1997-01-09 1998-10-13 Unisys Corporation Main memory interface for high speed data transfer
JP3189727B2 (ja) * 1997-04-15 2001-07-16 日本電気株式会社 コプロセッサ内蔵パケット型メモリlsi、それを用いたメモリシステム及びそれらの制御方法
US6442644B1 (en) * 1997-08-11 2002-08-27 Advanced Memory International, Inc. Memory system having synchronous-link DRAM (SLDRAM) devices and controller
US6154821A (en) * 1998-03-10 2000-11-28 Rambus Inc. Method and apparatus for initializing dynamic random access memory (DRAM) devices by levelizing a read domain
US6643745B1 (en) * 1998-03-31 2003-11-04 Intel Corporation Method and apparatus for prefetching data into cache
US6587912B2 (en) * 1998-09-30 2003-07-01 Intel Corporation Method and apparatus for implementing multiple memory buses on a memory module
US6249840B1 (en) * 1998-10-23 2001-06-19 Enhanced Memory Systems, Inc. Multi-bank ESDRAM with cross-coupled SRAM cache registers
US6272601B1 (en) * 1999-05-20 2001-08-07 International Business Machines Corporation Critical word forwarding in a multiprocessor system
US6567023B1 (en) * 1999-09-17 2003-05-20 Kabushiki Kaisha Toshiba Analog to digital to analog converter for multi-valued current data using internal binary voltage
US6553446B1 (en) * 1999-09-29 2003-04-22 Silicon Graphics Inc. Modular input/output controller capable of routing packets over busses operating at different speeds
US6430648B1 (en) * 2000-01-05 2002-08-06 International Business Machines Corporation Arranging address space to access multiple memory banks
KR100335501B1 (ko) * 2000-06-09 2002-05-08 윤종용 향상된 데이터 버스 성능을 갖는 메모리 모듈
US6625687B1 (en) * 2000-09-18 2003-09-23 Intel Corporation Memory module employing a junction circuit for point-to-point connection isolation, voltage translation, data synchronization, and multiplexing/demultiplexing
US6658509B1 (en) * 2000-10-03 2003-12-02 Intel Corporation Multi-tier point-to-point ring memory interface
US6665742B2 (en) * 2001-01-31 2003-12-16 Advanced Micro Devices, Inc. System for reconfiguring a first device and/or a second device to use a maximum compatible communication parameters based on transmitting a communication to the first and second devices of a point-to-point link
US6571318B1 (en) * 2001-03-02 2003-05-27 Advanced Micro Devices, Inc. Stride based prefetcher with confidence counter and dynamic prefetch-ahead mechanism
US6877079B2 (en) * 2001-03-06 2005-04-05 Samsung Electronics Co., Ltd. Memory system having point-to-point bus configuration
JP2002278825A (ja) * 2001-03-19 2002-09-27 Ricoh Co Ltd メモリ制御装置
US6675272B2 (en) * 2001-04-24 2004-01-06 Rambus Inc. Method and apparatus for coordinating memory operations among diversely-located memory components
US6760817B2 (en) * 2001-06-21 2004-07-06 International Business Machines Corporation Method and system for prefetching utilizing memory initiated prefetch write operations
US7184408B2 (en) * 2001-07-31 2007-02-27 Denton I Claude Method and apparatus for programmable generation of traffic streams
DE10146491B4 (de) * 2001-09-21 2006-04-13 Infineon Technologies Ag Elektronische Schaltung mit einer Treiberschaltung
US6781911B2 (en) * 2002-04-09 2004-08-24 Intel Corporation Early power-down digital memory device and method
US7117316B2 (en) * 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
TW569096B (en) * 2002-09-17 2004-01-01 Integrated Technology Express The cache/prefetch frame of serial data system and its method of operation
US6996639B2 (en) * 2002-12-10 2006-02-07 Intel Corporation Configurably prefetching head-of-queue from ring buffers
US7389364B2 (en) * 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
US7366864B2 (en) * 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999041666A1 (en) * 1998-02-13 1999-08-19 Intel Corporation Memory module controller
JP2001156621A (ja) * 1999-09-17 2001-06-08 Toshiba Corp 半導体集積回路装置およびデータ・信号伝送システム
US6502161B1 (en) * 2000-01-05 2002-12-31 Rambus Inc. Memory system including a point-to-point linked memory subsystem
US20020084458A1 (en) * 2000-12-28 2002-07-04 Halbert John B. Multi-tier point-to-point buffered memory interface

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9823862B2 (en) 2014-02-10 2017-11-21 Toshiba Memory Corporation Storage system

Also Published As

Publication number Publication date
GB2416056B (en) 2006-08-23
JP2006528394A (ja) 2006-12-14
WO2004102403A3 (en) 2005-08-25
US20040230718A1 (en) 2004-11-18
US20050162882A1 (en) 2005-07-28
CN100444141C (zh) 2008-12-17
GB0521694D0 (en) 2005-11-30
US7421525B2 (en) 2008-09-02
DE112004000821T5 (de) 2006-05-11
US7016213B2 (en) 2006-03-21
TW200508875A (en) 2005-03-01
WO2004102403A2 (en) 2004-11-25
GB2416056A (en) 2006-01-11
CN1788260A (zh) 2006-06-14
KR101095025B1 (ko) 2011-12-20
US20050166006A1 (en) 2005-07-28
US20050071542A1 (en) 2005-03-31
DE112004000821B4 (de) 2016-12-01
TWI351613B (en) 2011-11-01
KR20060009345A (ko) 2006-01-31

Similar Documents

Publication Publication Date Title
JP4836794B2 (ja) シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム
US7590882B2 (en) System, method and storage medium for bus calibration in a memory subsystem
US7159137B2 (en) Synchronized communication between multi-processor clusters of multi-cluster computer systems
US7103823B2 (en) Communication between multi-processor clusters of multi-cluster computer systems
US8086915B2 (en) Memory controller with loopback test interface
JP5300732B2 (ja) 高速シリアルバッファを有するメモリシステム
US7117419B2 (en) Reliable communication between multi-processor clusters of multi-cluster computer systems
US8019907B2 (en) Memory controller including a dual-mode memory interconnect
US7395485B2 (en) Check codes mapped across multiple frames
US7219294B2 (en) Early CRC delivery for partial frame
KR101574953B1 (ko) 광 메모리 확장 아키텍처
US7395347B2 (en) Communication between and within multi-processor clusters of multi-cluster computer systems
US7139965B2 (en) Bus device that concurrently synchronizes source synchronous data while performing error detection and correction
US7861140B2 (en) Memory system including asymmetric high-speed differential memory interconnect
US7721160B2 (en) System for protecting data during high-speed bidirectional communication between a master device and a slave device
CN114840455A (zh) 存储器接口上的数据加扰技术

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070508

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100609

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100901

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20100902

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100908

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101004

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110811

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: 20110831

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110927

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4836794

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250