JP4586031B2 - パケットメモリを有するアービトレーションシステムとハブに基づくメモリシステムにおけるメモリ応答の方法 - Google Patents

パケットメモリを有するアービトレーションシステムとハブに基づくメモリシステムにおけるメモリ応答の方法 Download PDF

Info

Publication number
JP4586031B2
JP4586031B2 JP2006552194A JP2006552194A JP4586031B2 JP 4586031 B2 JP4586031 B2 JP 4586031B2 JP 2006552194 A JP2006552194 A JP 2006552194A JP 2006552194 A JP2006552194 A JP 2006552194A JP 4586031 B2 JP4586031 B2 JP 4586031B2
Authority
JP
Japan
Prior art keywords
memory
group
response
request
local
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
JP2006552194A
Other languages
English (en)
Other versions
JP2007526559A (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 JP2007526559A publication Critical patent/JP2007526559A/ja
Application granted granted Critical
Publication of JP4586031B2 publication Critical patent/JP4586031B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/1642Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
    • 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

Description

本出願は、2004年2月5日に出願した、参照によって本明細書に組み込まれている米国特許出願第10/773520号明細書「ARBITRATION SYSTEM HAVING A PACKET MEMORY AND METHOD FOR MEMORY RESPONSES IN A HUB−BASED MEMORY SYSTEM」の出願日付の利益を主張する。
本発明は、コンピュータシステム群に関し、より詳細には、メモリハブアーキテクチャを有するシステムメモリを含むコンピュータシステムに関する。
コンピュータシステム群は、ダイナミックランダムアクセスメモリ(dynamic random access memory)(「DRAM」)デバイス群のようなメモリデバイス群を用いてプロセッサーによってアクセスされるデータを格納する。これらのメモリデバイス群は、通常コンピュータシステムにおいてシステムメモリとして用いられる。典型的なコンピュータシステムでは、プロセッサーは、プロセッサーバスやメモリコントローラを通じて、システムメモリと通信する。プロセッサーは、read(読み取り)コマンドのようなメモリコマンドを含むメモリリクエストと、複数のデータ又は命令が読み取られる開始位置を指定するアドレスとを出す。メモリコントローラは、そのコマンドとアドレスとを用いて、適切なコマンドシグナル群と共に、列および行アドレス群を生成し、これらはシステムメモリに適用される。コマンド群やアドレス群に応答して、データ群は、システムメモリとプロセッサーとの間で転送される。メモリコントローラは、多くの場合システムコントローラの部分であり、プロセッサーとPCIバスのような拡張バスとを連結させるためのバスブリッジ回路をも含む。
メモリデバイス群の動作速度は、連続的に増加するが、動作速度におけるこのような増加はプロセッサー群の動作速度における増加と歩調を合わせていなかった。メモリデバイス群にプロセッサー群を連結させるメモリコントローラ群の速度は、もっと遅かった。メモリコントローラ群とメモリデバイス群の比較的遅い速度は、プロセッサーとメモリデバイス群との間のデータバンド幅を制限する。
プロセッサー群とメモリデバイス群との間のバンド幅は限られており、それに加えて、コンピュータシステム群の性能は、システムメモリデバイス群からデータを読み取るのに必要な時間を増加させる待ち時間(latency)の問題群によっても制限される。より具体的には、メモリデバイスのreadコマンドが、同期した(synchronous)DRAM(「SDRAM」)のようなシステムメモリデバイスに連結されているときに、読み取りデータが、SDRAMデバイスから数クロック期間後にようやく出力されるのである。したがって、SDRAMデバイス群は、高いデータ率で同期してバーストデータを出力することができるが、初期にデータを提供する際の遅れにより、そのようなSDRAMデバイス群を用いるコンピュータシステムの動作速度をかなり遅くなることがありえる。
メモリ待ち時間問題を緩和するための一つのアプローチは、メモリハブを通じてプロセッサーに連結するマルチメモリデバイス群を用いることである。メモリハブアーキテクチャにおいて、メモリハブコントローラは、高速データリンクを経由して幾つかのメモリモジュール群に連結されている。典型的には、メモリモジュール群は、ポイント・ツー・ポイント(point−to−point)又はデイジー・チェーン(daisy chain)アーキテクチャで連結され、メモリモジュール群は、一つ一つ連続して接続される。したがって、デイジー・チェーン形式では、メモリハブコントローラは、第1の高速データリンクを経由して、第1のメモリモジュールに連結され、第1のメモリモジュールは第2のメモリモジュールに第2の高速データリンクを通して接続され、第2のメモリモジュールは第3のメモリモジュールに第3の高速データリンクを通して連結され、以下同様に連結される。
各メモリモジュールは、対応する高速データリンク群とモジュール上の複数のメモリデバイス群とに連結されているメモリハブを含み、メモリハブ群は、高速データリンク群を経由してコントローラとメモリデバイス群との間のメモリ要求群とメモリ応答群とを効率的にルーティングする。各メモリ要求群は、通常、要求によって呼び出されるメモリアクセスのタイプ(例えば、read(読み取り)又はwrite(書き込み)。)を指定するメモリコマンドを含み、メモリアドレスは、アクセスされるメモリ位置を指定し、writeメモリ要求の場合には、データを書き込む。メモリ要求は、アクセスされているメモリモジュールを識別する情報も通常は含むが、これは、異なるアドレス群を異なるメモリモジュール群にマッピングすることによって達成される。メモリ応答は、典型的には、readメモリ要求のためのみに与えられ、典型的には、データを読み取るとともに、メモリハブコントローラが、メモリ応答に対応するメモリ要求を識別することができるようにするヘッダーを識別する。しかしながら、複数の他の特徴を有するメモリ要求群とメモリ応答群を用いることができることが理解されるべきである。いずれにしても、以下の記述において、メモリハブコントローラによって発行されるメモリ要求群は、一つのメモリハブから他のメモリハブへと下流を伝搬し、メモリ応答群は、一つのメモリハブから他のメモリハブへと、メモリハブコントローラに到達するまで、上流を伝搬する。このアーキテクチャを採用するコンピュータシステム群は、比較的高いバンド幅を有することができる。なぜなら、プロセッサーが、一つのメモリデバイスにアクセスすることができる一方で、他のシステムのメモリデバイスは、読み取ったデータをプロセッサーに与える準備をしているからである。さらに、このアーキテクチャは、従来のマルチドロップバスアーキテクチャ群において起こっていたように、より多くのメモリモジュール群が追加されたときに、信号の質の劣化が起こるという懸念なしに、システムメモリを容易に拡張する手段をも与えるのである。
複数のメモリハブを用いるコンピュータシステム群は優位な性能を提供することができるが、それらは、様々な複数の理由により、最適な速度で動作することができないことが多い。例えば、メモリハブ群は比較的高いメモリバンド幅をコンピュータシステム群に提供するが、依然として上述したようなタイプの待ち時間問題に見舞われる。より具体的には、プロセッサーは一つのメモリデバイスと通信することができる一方で、他のメモリデバイスはデータを転送する準備をするが、他のメモリデバイスからのデータを使用可能になる前に一つのメモリデバイスからのデータを受信することが時々必要となるのである。このイベントにおいて、データが他のメモリデバイスから受信される前に、データが一つのメモリデバイスから受信されなければならず、待ち時間問題はそのようなコンピュータシステム群の動作速度を遅くし続けるのである。
メモリハブシステムにおいて、メモリ転送の速度を減らす可能性がある他の要因は、高速リンクを経由して一つのハブから他のハブへとアップストリームへ(すなわち、メモリハブコントローラへ戻るように)読み取りデータを転送することである。各ハブは、ローカルな応答群を最初に送信するかどうか、又はダウンストリームのメモリハブ群からの応答群を最初にフォワードするかどうかを決定しなければならず、これが為される方法は、特定の応答の実際の待ち時間のみならず、システムメモリの全体的な待ち時間にも影響を及ぼす。この決定は、アービトレーション(arbitration)と呼ばれ、各ハブは、ローカルな要求群とアップストリームのデータ転送とを調整(arbitrate)する。
システムメモリの待ち時間を減少させるために、メモリハブアーキテクチャを有するシステムメモリにおけるデータ転送を調整(arbitrate)するためのシステムおよび方法に対する必要性が存在する。
本発明の一態様によるメモリハブモジュールは、メモリ要求群を受信するデコーダを含み、各メモリ要求に関連したメモリ要求識別子を決定する。パケットメモリは、複数のメモリ要求識別子を受信し、複数のメモリ要求識別子を格納する。パケット追跡器は、リモートメモリ応答群を受信し、各リモートメモリ応答をメモリ応答識別子と関連づけて、パケットメモリからメモリ要求識別子を取り除く。マルチプレクサ(multiplexor)は、リモートメモリ応答群とローカルメモリ応答群を受信する。マルチプレクサは、コントロール信号に対して応答する出力を選択する。マルチプレクサとパケットメモリに連結しているアービトレーションコントロールロジックは、コントロール信号を成長させて、出力のためのメモリ応答を選択できるようにする。
本発明の一例によるコンピュータシステム100は、図1に示されている。コンピュータシステム100は、複数のメモリモジュール130を含むメモリハブアーキテクチャを有するシステムメモリ102を含み、各メモリモジュールは対応するメモリハブ140を含む。各メモリハブ140は、ハブが含まれているメモリモジュール130からのメモリ応答群とダウンストリームメモリモジュール群からのメモリ応答群との間で調整(arbitrate)を行い、このようにして、以下でより詳細に記述されるように、システムコントローラ110へ応答群が戻る速度をコントロールすることにより、メモリハブ群はシステムメモリのそれぞれのメモリモジュール群の待ち時間を効果的にコントロールする。以下の記述では、本発明について十分な理解が得られるように、特定の詳細について明らかにされる。当業者は、しかし、これらの特定の詳細なしに、本発明を実施できることを理解するであろう。他の複数の例において、本発明を不必要に不明瞭にすることを避けるために、良く知られた回路群、コントロール信号群、タイミングプロトコル群、および/又はソフトウェアオペレーション群は、詳細について示されていないか、又は全体的に省かれている。
コンピュータシステム100は、特定のソフトウェアを実行して特定の複数の計算又はタスク群を実施するというような様々なコンピューティング機能を実施するために、プロセッサー104を含んでいる。プロセッサー104は、典型的には、アドレスバス、コントロールバス、およびデータバスを通常含むプロセッサーバス106を有する中央演算処理装置(central processing unit)(「CPU」)である。プロセッサーバス106は、以前に言及したように、通常はスタティックランダムアクセスメモリ(static random access memory)(「SRAM」)であるキャッシュメモリ108に典型的には連結されている。最後に、プロセッサーバス106は、時々「ノースブリッジ(North Bridge)」又は「メモリコントローラ」とも呼ばれるシステムコントローラ110に連結されている。
システムコントローラ110は、メモリモジュール群130や様々な他のコンポーネント群のためのプロセッサー104への通信パスとしての機能を果たす。より具体的には、システムコントローラ110は、順々にビデオ端末114に連結しているグラフィックコントローラ112に典型的に連結しているグラフィックポートを含む。システムコントローラ110は、キーボード又はマウスのような一つ又はそれ以上の入力デバイス群118にも連結し、オペレーターはコンピュータシステム100とインターフェイスで接続することができる。典型的には、コンピュータシステム100は、プロセッサー104にシステムコントローラ110を通じて連結しているプリンタのような一つ又はそれ以上の出力デバイス群120をも含んでいる。一つ又はそれ以上のデータストレージデバイス群124は、典型的には、プロセッサー104にシステムコントローラ110を通じて連結しており、プロセッサー104はデータを格納し、あるいは(不図示の)内部又は外部のストレージメディアからデータを取り出すことができる。典型的なストレージデバイス群124の複数の例は、ハードディスク群とフロッピーディスク群、テープカセット群、およびコンパクトディスク読み取り専用(read−only)メモリ群(CD−ROMs)を含む。
システムコントローラ110は、メモリモジュール群130a,b...nを含むシステムメモリ102に連結されているメモリハブコントローラ(memory hub controller)(「MHC」)132をも含み、メモリモジュール群内のデータをコントロールしアクセスするためのコマンド群を適用するよう動作する。メモリモジュール群130は、メモリモジュール130aとメモリハブコントローラ132との間および近接したメモリモジュール群130a−nの間で連結されている各高速リンク群134aと134bとを通じてポイント・ツー・ポイントアーキテクチャで連結されている。高速リンク134aはダウンリンクであり、メモリハブコントローラ132からメモリモジュール群130a−nへとメモリ要求群を運ぶ。高速リンク134bはアップリンクであり、メモリモジュール群130a−nからメモリハブコントローラ132へとメモリ応答群を運ぶ。高速リンク群134aと134bは、当業者であれば理解できるように、光学、RF、又は電子的な通信パス群、又はその他の適切な通信パス群であってもよい。イベントにおいて、高速リンク群134aと134bは、光学的通信パス群として実装され、各光学通信パスは、例えば、一つ又はそれ以上の光ファイバー群の形態であってもよい。そのようなシステムにおいて、メモリハブコントローラ132とメモリモジュール群130は、それぞれ光学的な入力/出力ポート又は対応する光学的通信パス群と連結した個別の入力および出力ポート群を含む。メモリモジュール群130は、ポイント・ツー・ポイントアーキテクチャでメモリハブコントローラ132に連結されているように図示されているが、リングトポロジーのような使用可能な他のトポロジーは当業者にとっては明らかである。
メモリモジュール群130は各々、対応する高速リンク群134aと134bを経由して通信し、8つのメモリデバイス群148とのアクセスをコントロールするためにメモリハブ140を含み、図1の例では、同期したダイナミックランダムアクセスメモリ(synchronous dynamic random acess memory)(「SDRAM」)デバイス群である。メモリハブ群140は各々、対応する高速リンク群134aと134bと連結している入力および出力ポート群を含み、ポート群の性質と数は高速リンク群の複数の特徴に依存している。比較的少数又は比較的多数のメモリデバイス群148を用いることもできるし、SDRAMデバイス群以外のメモリデバイス群を用いることもできる。メモリハブ140は、バスシステム150を通じてシステムメモリデバイス群148の各々と連結されており、通常コントロールバス群、アドレスバス及びデータバスを含む。
上述したように、メモリハブ群140は各々、そのハブとメモリハブコントローラ132に戻されたダウンストリームメモリモジュール群とを含むメモリモジュール130とメモリ応答群との関連の仕方をコントロールするアービトレーションプロセスを実行する。以下の記述において、特定のメモリハブ140に関連したメモリ応答群と対応するメモリモジュール130を「ローカル応答群」と呼び、ダウンストリームメモリモジュール群からのメモリ応答群を「ダウンストリーム応答群」と呼ぶ。オペレーションにおいて、各メモリハブ140は、ローカルおよびダウンストリーム応答群がメモリハブコントローラ132に戻される仕方をコントロールするための望ましいアービトレーションプロセスを実行する。例えば、各ハブ140は、ダウンストリーム応答群に優先権を与え、それにより、そのようなダウンストリーム応答群を、アップストリームに送られる必要があるローカル応答群より前に、アップストリームへフォワードすることができる。逆に、メモリハブ140は、ローカル応答群に優先権を与え、それにより、そのようなローカル応答群を、アップストリームに送られる必要があるダウンストリーム応答群より前に、アップストリームへフォワードすることができる。メモリハブ群140によって実行されることができるアービトレーションプロセス群の例が以下で詳細に記述される。
各メモリハブ140は、異なるアービトレーションプロセスを実行することができるか、又は、全てのハブ群は同一のプロセスを実行することができ、この決定は、システムメモリ102の望ましい複数の特徴に依存している。各メモリハブ140によって実行されるアービトレーションプロセスは、ローカル及びダウンストリームメモリ応答群の間で衝突が起こるときにのみ、適用されることに注意すべきである。したがって、各メモリハブ140は、ローカル及びダウンストリームメモリ応答群の両方が同時にアップストリームへ戻される必要があるときにのみ、対応するアービトレーションプロセスを実行する必要がある。アービトレーションスキームについての他の例は、参照により本願に組み込まれる米国特許出願第10/690810号明細書「ARBITRATION SYSTEM AND METHOD FOR MEMORY RESPONSES IN A HUB−BASED MEMORY SYSTEM」に記載されている。
図1のハブコントローラ群140に含まれているアービトレーションシステム200の例は、図2に示されている。ダウンリンク受信器202は、メモリ要求群を受信する。メモリ要求群は、識別子と、要求が書き込み(write)要求であるイベントにおけるデータとを含む要求部分を含む。識別子は、ここでは、パケットID又はメモリ要求識別子と呼ばれる。デコーダ204はダウンリンク受信器202に連結されており、各メモリ要求に関連したメモリ要求識別子を決定する。メモリ要求識別子は、パケットメモリ206に格納されている。図2に示されているパケットメモリ206は、先入れ先出し(first−in,first−out)(FIFO)メモリであるが、他のバッファスキーム群を他の実施形態において用いることもできる。このようにして、ハブコントローラに渡される各メモリ要求に関連したパケットID又はメモリ要求識別子は、パケットメモリ206に格納される。パケットメモリ206がFIFOメモリであるとき、メモリ要求識別子群は、時系列で格納される。以下の記述において、特定のメモリハブ140に関連したメモリ要求と対応するメモリモジュール130を「ローカルメモリ要求群」と呼び、ダウンストリームメモリモジュール130に向かうメモリ要求群を「リモートメモリ要求群」と呼ぶ。
ダウンリンク受信器202によって受信されるローカルメモリ要求群は、ダウンリンク管理モジュール210とコントローラ212とを通じて、メモリデバイス群148に連結されたメモリインターフェース214へ送られる。ローカルメモリ応答群は、メモリインターフェース214によって受信され、コントローラ212を通じて、アップリンク管理モジュール220へ送られる。
ダウンリンク受信器202によって受信されるリモートメモリ要求群はダウンリンク送信器216に送られ、ダウンリンク134a上を下流のハブへ送られる。アップリンク134bに連結されたアップリンク受信器222は、リモートメモリ応答群を受信する。リモートメモリ応答群は、識別子の一部とデータペイロード(payload)の一部とを含む。識別子の一部、又はメモリ応答識別子は、データペイロードが応答するメモリ要求を識別する。パケット追跡器224は、アップリンク受信器に連結されている。パケット追跡器224は、メモリ応答識別子を識別する。幾つかの実施形態において、リモートメモリ応答が、アップリンク送信器226を通して送られたときに、パケット追跡器224は、パケットメモリ206から関連するメモリ要求識別子を削除する。
マルチプレクサ208は、アップリンク送信器226、アップリンク管理モジュール220、アップリンク受信器222、およびアービトレーションコントロールロジック230に連結されている。マルチプレクサ208は、ローカルメモリ応答群からのデータ又はリモートメモリ応答群からのデータのどちらかをアップリンク送信器226に連結させる。送信器226に、ローカル又はリモートのうちどちらのタイプのメモリ応答を連結させるかについての選択は、アービトレーションコントロールロジック230によって生成されるコントロール信号によって決定される。アービトレーションコンとロールロジック230は、パケットメモリ206に連結されており、それに応じて、パケットメモリ206の最も古いメモリ要求を決定することができる。ローカル要求がパケットメモリ206において最も古いメモリ要求であるとき、アービトレーションコントロールロジック230は、マルチプレクサ208に対するコントロール信号を成長させる、この結果、ローカルメモリ応答がアップリンク送信器226に連結されアップリンク134bに出力される。リモート要求が、パケットメモリ206の最も古いメモリ要求であるとき、アービトレーションコントロールロジック230は、マルチプレクサ208に対するコントロール信号を発し、この結果、リモートメモリ応答がアップリンク送信器226に連結されアップリンク134bに出力される。幾つかの実施形態において、リモートメモリ応答は、デフォルトでアップリンク送信器226へ連結されている。他の複数の実施形態では、ローカルメモリ応答群は、デフォルトでアップリンク送信器226へ連結されている。
パケットメモリ206の例が、図3a−bに図示されている。図3aに図示されている実施形態では、リモート要求群R、R、およびRが受信され、要求識別子群はパケットメモリに格納されていた。ローカル要求群LおよびL、その後、続いてRが受信され、以下続いていた。この例において、リモートメモリ応答群は、受信され、対応する要求識別子がパケットメモリ206から削除されたときにフォワードされる。たとえ、要求Lに対するローカルメモリ応答が受信された場合に、リンクが使用されているとき、要求群R、R、およびRに関連した応答群が送信されている図3bに示されている例に図示されているように、ローカル応答は、要求Lがパケットメモリ206で最も古くなるまで送信されない。
以前の記述において、本発明について十分に理解できるように特定の詳細について明らかにした。しかしながら、当業者は、これらの特定の詳細なしに発明を実施することができることを理解するであろう。さらに、当業者は、上述に例示した実施形態が本発明の範囲を制限せず、様々な等価な複数の実施形態又は開示された例示した実施形態の組み合わせが、本発明の範囲に含まれることも理解するであろう。ここで明らかにされた図示された複数の例示は、様々な実施形態の特定の詳細をさらに図示することだけを意図したものではなく、本発明の範囲を制限すると解釈されるべきでもない。また、上記の記述ではよく知られたコンポーネント群は示されていないか、又は、本発明を不必要に不明瞭にすることを避けるために詳細には記述されていない。最後に、添付された複数の請求項によってのみ発明は制限され、記述された発明の例示又は実施形態には限定されない。
本発明の一例による高いバンド幅のメモリハブアーキテクチャを有するシステムメモリを含むコンピュータシステムのブロック図である。 本発明の一例による図1のハブコントローラ群に含まれたアービトレーションシステムを図示する機能的ブロック図である。 本発明の一例による図2に示されたパケットメモリの機能的図である。 本発明の一例による図2に示されたパケットメモリの機能的図である。

Claims (37)

  1. メモリハブへ直接接続されたメモリデバイス群に向かうローカルメモリ要求群と他のメモリハブ群に連結されたメモリデバイス群に向かうリモートメモリ要求群とを含むメモリ要求群を受信するよう動作可能なデコーダであって、前記デコーダは、各メモリ要求に関連したメモリ要求識別子を決定するよう動作可能なデコーダと、
    前記デコーダと連結したパケットメモリであって、メモリ要求識別子群を前記デコーダから受信し、受信された前記メモリ要求識別子群を格納するよう動作可能な前記パケットメモリと、
    前記リモートメモリ要求群に応答して受信された前記リモートメモリ応答群又は前記ローカルメモリ要求群に応答して受信されたローカルメモリ応答群をコントロール信号に応答する出力に連結させるよう動作可能なマルチプレクサと、
    前記マルチプレクサと前記パケットメモリとに連結し、前記パケットメモリに格納された前記メモリ要求識別子群から前記受信されたリモートメモリ応答群と前記ローカルメモリ応答群とに対応する前記メモリ要求群の新しさを決定し、前記決定に基づいてコントロール信号を生成するよう動作可能なアービトレーションコントロールロジックとを備えたことを特徴とするメモリハブ。
  2. 前記アービトレーションコントロールロジックは、前記パケットメモリにおいて最も古いメモリ要求識別子に基づいて前記コントロール信号を生成することを特徴とする請求項1に記載のメモリハブ。
  3. 前記パケットメモリは、先入れ先出し(FIFO)メモリであることを特徴とする請求項1に記載のメモリハブ。
  4. 前記パケットメモリに格納された最も古いメモリ要求識別子がローカルメモリ要求のためであるときに、前記マルチプレクサがローカルメモリ応答を出力するように、前記アービトレーションコントロールロジックは、前記コントロール信号を生成することを特徴とする請求項1に記載のメモリハブ。
  5. 前記ローカルおよびリモートメモリ応答群は前記メモリ応答に対応するメモリ要求を識別するデータとヘッダーとを含むことを特徴とする請求項1に記載のメモリハブ。
  6. メモリハブへ直接接続されたメモリデバイス群に向かうローカルメモリ要求群へのローカルメモリ応答群と、他のメモリハブ群に連結されたメモリデバイス群に向かうリモートメモリ要求群へのリモートメモリ応答群とを受信するよう動作可能なメモリハブであって、前記ローカルメモリ要求群と前記リモートメモリ要求群の各々は、前記メモリ要求を識別するメモリ要求識別子を含み、前記ローカルメモリ応答群と前記リモートメモリ応答群の各々は、前記応答が応答する前記メモリ要求を識別するメモリ要求識別子を含み、前記メモリハブは、前記メモリ要求識別子群を前記メモリハブに格納し、受信された前記ローカルおよびリモートメモリ要求群における個別の前記メモリ要求識別子群と格納された前記メモリ要求識別子群を比較し、アービトレーションアルゴリズムを適用するよう動作可能で、受信された前記ローカルおよびリモートメモリ応答群が、受信された前記ローカルおよびリモートメモリ応答群における前記メモリ要求識別子群と格納された前記メモリ要求識別子群との前記比較に基づいて、アップリンク上で出力として提供される順番を選択することを特徴とするメモリハブ。
  7. 前記メモリハブは、対応するメモリ要求群が受信される順番で、メモリ要求識別子群を格納するパケットメモリをさらに備えたことを特徴とする請求項6に記載のメモリハブ。
  8. 前記メモリハブは、前記パケットメモリに連結されたマルチプレクサであって、ローカル又はリモートメモリ応答群をコントロール信号に応答する出力において提供するマルチプレクサをさらに備えたことを特徴とする請求項7に記載のメモリハブ。
  9. アービトレーションロジックは、前記パケットメモリと前記マルチプレクサとに連結されており、前記コントロール信号を前記マルチプレクサに適用してどのメモリ応答群が前記出力上に提供されるかをコントロールすることを特徴とする請求項8に記載のメモリハブ。
  10. 前記ローカルおよびリモートメモリ応答群の各々は、前記メモリ応答に対応するメモリ要求を識別するデータとヘッダーとを備えたことを特徴とする請求項6に記載のメモリハブ。
  11. 複数のメモリデバイス群と、
    前記メモリデバイス群と連結したメモリハブであって、
    前記メモリハブへ直接接続されたメモリデバイス群に向かうローカルメモリ要求群と他のメモリハブ群に連結されたメモリデバイス群に向かうリモートメモリ要求群とを含むメモリ要求群を受信するように適合され、各メモリ要求に関連したメモリ要求識別子を決定するよう動作可能なデコーダと、
    メモリ要求識別子群を受信し、前記メモリ要求識別子群を格納するよう適合されたパケットメモリと、
    前記リモートメモリ要求群に応答するリモートメモリ応答群と前記ローカルメモリ要求群に応答するローカルメモリ応答群とを受信するように適合され、コントロール信号に応答して前記リモートメモリ応答群又は前記ローカルメモリ応答群を選択するよう動作可能なマルチプレクサと、
    前記マルチプレクサと前記パケットメモリとに連結し、前記パケットメモリに格納された前記メモリ要求識別子群から前記受信されたリモートメモリ応答群と前記ローカルメモリ応答群とに対応する前記メモリ要求群の新しさを決定し、前記決定に基づいて、どのメモリ応答が出力に応答するかについての選択をコントロールするコントロール信号を生成するよう動作可能なアービトレーションコントロールロジックとを含んだメモリハブとを備えたことを特徴とするメモリモジュール。
  12. 前記メモリデバイス群の各々は、SDRAMを含むことを特徴とする請求項11に記載のメモリモジュール。
  13. 前記アービトレーションコントロールロジックは、前記パケットメモリにおいて最も古いメモリ要求識別子に基づいて前記コントロール信号を生成することを特徴とする請求項11に記載のメモリモジュール。
  14. 前記パケットメモリは、先入れ先出し(FIFO)メモリであることを特徴とする請求項11に記載のメモリモジュール。
  15. 前記パケットメモリに格納された最も古いメモリ要求識別子がローカルメモリ要求のためであるときに、前記マルチプレクサがローカルメモリ応答を出力するように、前記アービトレーションコントロールロジックは、前記コントロール信号を生成することを特徴とする請求項11に記載のメモリモジュール
  16. 前記ローカルおよびリモートメモリ応答群は、前記メモリ応答に対応するメモリ要求を識別するデータとヘッダーとを含むことを特徴とする請求項11に記載のメモリモジュール
  17. メモリハブコントローラと、
    複数のメモリモジュール群において、各メモリモジュールは個別の高速リンク群を通して近接したメモリモジュール群に連結されていて、前記メモリモジュール群の少なくとも1つにおいて、個別の高速リンクを通して前記メモリハブコントローラに連結しており、
    各メモリモジュールは、
    複数のメモリデバイス群と、
    前記メモリデバイス群に連結されたメモリハブであって、
    前記メモリハブへ直接接続されたメモリデバイス群に向かうローカルメモリ要求群と他のメモリハブ群に連結されたメモリデバイス群に向かうリモートメモリ要求群とを含むメモリ要求群を受信するように適合され、各メモリ要求に関連したメモリ要求識別子を決定するように動作可能なデコーダと、
    メモリ要求識別子群を受信し、前記メモリ要求識別子群を格納するように適合されたパケットメモリと、
    前記リモートメモリ要求群に応答するリモートメモリ応答群と前記ローカルメモリ要求群に応答するローカルメモリ応答群とを受信するよう適合され、コントロール信号に応答して前記リモートメモリ応答群又は前記ローカルメモリ応答群を選択するよう動作可能なマルチプレクサと、
    前記マルチプレクサと前記パケットメモリとに連結し、前記パケットメモリに格納された前記メモリ要求識別子群から前記受信されたリモートメモリ応答群と前記ローカルメモリ応答群とに対応する前記メモリ要求群の新しさを決定し、前記決定に基づいて、どのメモリ応答が出力に応答するかの選択をコントロールするコントロール信号を生成するよう動作可能なアービトレーションコントロールロジックと
    を含む前記メモリハブと
    を含む複数のメモリモジュール群とを備えたことを特徴とするメモリシステム。
  18. 前記高速リンク群の各々は、光学的通信リンクを含むことを特徴とする請求項17に記載のメモリシステム。
  19. 前記メモリデバイス群の少なくとも幾つかは、複数のSDRAMを含むことを特徴とする請求項17に記載のメモリシステム。
  20. 前記アービトレーションコントロールロジックは、前記パケットメモリに格納された前記メモリ要求識別子群の年齢に基づいて前記コントロール信号を生成することを特徴とする請求項17に記載のメモリシステム。
  21. 前記パケットメモリに格納された最も古いメモリ要求識別子がローカルメモリ要求のためであるときに、前記マルチプレクサがローカルメモリ応答を出力するように、前記アービトレーションコントロールロジックは、前記コントロール信号を生成することを特徴とする請求項20に記載のメモリシステム。
  22. 前記パケットメモリは、先入れ先出し(FIFO)メモリであることを特徴とする請求項17に記載のメモリシステム。
  23. 前記ローカルおよびリモートメモリ応答群の各々は、前記メモリ応答に対応するメモリ要求を識別するデータとヘッダーとを含むことを特徴とする請求項17に記載のメモリシステム。
  24. プロセッサーと、
    前記プロセッサーに連結されたシステムコントローラにおいて、メモリハブコントローラを含むシステムコントローラと、
    前記システムコントローラを通して前記プロセッサーに連結された入力デバイスと、
    前記システムコントローラを通して前記プロセッサーに連結された出力デバイスと、
    前記システムコントローラを通して前記プロセッサーに連結されたストレージデバイスと、
    複数のメモリモジュール群において、各メモリモジュールが近接したメモリモジュール群に個別の高速リンク群を通して連結され、少なくとも一つの前記メモリモジュールが前記メモリハブコントローラに個別の高速リンクを通して連結された複数のメモリモジュール群とを備え、各メモリモジュールは、
    複数のメモリデバイス群と、
    前記メモリデバイス群に連結され、対応する前記高速リンク群に連結されたメモリハブとを含み、前記メモリハブは、
    前記メモリハブへ直接接続されたメモリデバイス群に向かうローカルメモリ要求群と他のメモリハブ群に連結されたメモリデバイス群に向かうリモートメモリ要求群とを含むメモリ要求群を受信するように適合され、各メモリ要求に関連したメモリ要求識別子を決定するように動作可能なデコーダと、
    メモリ要求識別子群を受信し、前記メモリ要求識別子群を格納するように適合されたパケットメモリと、
    前記リモートメモリ要求群に応答するリモートメモリ応答群と前記ローカルメモリ要求群に応答するローカルメモリ応答群とを受信するよう適合され、コントロール信号に応答して前記リモートメモリ応答群又は前記ローカルメモリ応答群を選択するよう動作可能なマルチプレクサと、
    前記マルチプレクサと前記パケットメモリとに連結し、前記パケットメモリに格納された前記メモリ要求識別子群から前記受信されたリモートメモリ応答群と前記ローカルメモリ応答群とに対応する前記メモリ要求群の新しさを決定し、前記決定に基づいて、どのメモリ応答が出力に応答するかの選択をコントロールするコントロール信号を生成するよう動作可能なアービトレーションコントロールロジックとを含んだことを特徴とするコンピュータシステム。
  25. 前記高速リンク群は、光学的通信リンクを含むことを特徴とする請求項24に記載のコンピュータシステム。
  26. 前記メモリデバイス群の少なくとも幾つかは、複数のSDRAMを含むことを特徴とする請求項24に記載のコンピュータシステム。
  27. 前記プロセッサーは、中央処理装置(CPU)を含むことを特徴とする請求項24に記載のコンピュータシステム。
  28. ローカルおよびダウンストリームメモリ応答群の各々は、前記メモリ応答に対応するメモリ要求を識別するデータとヘッダーとを含むことを特徴とする請求項24に記載のコンピュータシステム。
  29. 複数のメモリモジュール群を含むメモリシステムにおいて、各メモリモジュールは、メモリデバイス群と連結されたメモリハブを含み、各メモリモジュールの前記メモリハブにおけるメモリ応答群を処理しフォワードする方法は、
    メモリ要求群であって、各メモリ要求がメモリ要求識別子を有し、前記メモリ要求群は、前記メモリハブへ接続されたメモリデバイス群に向かうローカルメモリ要求群と他のメモリモジュール群のメモリハブ群に連結されたメモリデバイス群に向かうリモートメモリ要求群とを含むメモリ要求群を受信するステップと、
    前記メモリ要求識別子群を格納するステップと、
    前記メモリデバイス群から受信されたローカルメモリ応答群を前記ローカルメモリ要求群に応答して格納するステップと、
    前記他のメモリモジュール群から受信されたリモートメモリ応答群を前記リモートメモリ要求群に応答して格納するステップと、
    少なくとも一つのハブにおいて、格納されたメモリ要求識別子群の年齢に基づいたアービトレーションアルゴリズムをアップストリームメモリモジュールに前記格納されたローカルおよびリモートメモリ応答群がフォワードされる順番を決定するために適用するステップと、
    決定された前記順番に従って、前記ローカルおよびリモートメモリ応答群をフォワードするステップとを備えることを特徴とする方法。
  30. 前記ローカルおよびリモートメモリ応答群の各々は、前記メモリ応答に対応するメモリ要求を識別するデータとヘッダーとを含むことを特徴とする請求項29に記載の方法。
  31. 最も古い格納されたメモリ要求識別子に基づいて前記順番を示すコントロール信号を生成するステップをさらに備えることを特徴とする請求項29に記載の方法。
  32. 前記メモリ要求識別子は、先入れ先出し(FIFO)の原則で格納されアクセスされることを特徴とする請求項29に記載の方法。
  33. 最も古い格納されたメモリ要求がローカルメモリ要求であるとき、ローカルメモリ応答が、フォワードされるようにコントロール信号を生成するステップをさらに備えることを特徴とする請求項29に記載の方法。
  34. 前記パケットメモリに連結したパケット追跡器であって、前記パケットメモリは、前記リモートメモリ応答群を受信し、受信された各リモートメモリ応答を前記パケットメモリに格納されたメモリ要求識別子と関連させるように動作可能で、前記パケット追跡器は、前記メモリ要求識別子を前記パケットメモリから削除させるように動作可能なパケット追跡器をさらに備えたことを特徴とする請求項1に記載のメモリハブ。
  35. 前記リモートメモリ応答群を受信するように適合され、各リモートメモリ応答をメモリ要求識別子と関連させるよう動作可能で、前記パケットメモリから前記メモリ要求識別子を削除するように動作可能なパケット追跡器をさらに備えたことを特徴とする請求項11に記載のメモリモジュール。
  36. 前記リモートメモリ応答群を受信するように適合され、各リモートメモリ応答をメモリ要求識別子と関連させるよう動作可能で、前記パケットメモリから前記メモリ要求識別子を削除するように動作可能なパケット追跡器をさらに備えたことを特徴とする請求項17に記載のメモリシステム。
  37. 前記リモートメモリ応答群を受信するように適合され、各リモートメモリ応答をメモリ要求識別子と関連させるよう動作可能で、前記パケットメモリから前記メモリ要求識別子を削除するように動作可能なパケット追跡器をさらに備えたことを特徴とする請求項24に記載のコンピュータシステム。
JP2006552194A 2004-02-05 2005-01-26 パケットメモリを有するアービトレーションシステムとハブに基づくメモリシステムにおけるメモリ応答の方法 Active JP4586031B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/773,520 US7412574B2 (en) 2004-02-05 2004-02-05 System and method for arbitration of memory responses in a hub-based memory system
PCT/US2005/003015 WO2005076856A2 (en) 2004-02-05 2005-01-26 Arbitration system having a packet memory and method for memory responses in a hub-based memory system

Publications (2)

Publication Number Publication Date
JP2007526559A JP2007526559A (ja) 2007-09-13
JP4586031B2 true JP4586031B2 (ja) 2010-11-24

Family

ID=34826780

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006552194A Active JP4586031B2 (ja) 2004-02-05 2005-01-26 パケットメモリを有するアービトレーションシステムとハブに基づくメモリシステムにおけるメモリ応答の方法

Country Status (7)

Country Link
US (2) US7412574B2 (ja)
EP (1) EP1723527B1 (ja)
JP (1) JP4586031B2 (ja)
KR (1) KR100854946B1 (ja)
CN (1) CN1938691B (ja)
TW (1) TWI327273B (ja)
WO (1) WO2005076856A2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
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
US7257683B2 (en) 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US6980042B2 (en) 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
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
WO2006025348A1 (ja) * 2004-08-30 2006-03-09 Matsushita Electric Industrial Co., Ltd. 記録装置、システム、集積回路、プログラム、記録方法
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
US7356737B2 (en) * 2004-10-29 2008-04-08 International Business Machines Corporation System, method and storage medium for testing a memory module
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
US20070016698A1 (en) * 2005-06-22 2007-01-18 Vogt Pete D Memory channel response scheduling
US7650557B2 (en) * 2005-09-19 2010-01-19 Network Appliance, Inc. Memory scrubbing of expanded memory
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
US7584336B2 (en) * 2006-06-08 2009-09-01 International Business Machines Corporation Systems and methods for providing data modification operations in memory subsystems
US7669086B2 (en) 2006-08-02 2010-02-23 International Business Machines Corporation Systems and methods for providing collision detection in a memory system
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
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
US7721140B2 (en) 2007-01-02 2010-05-18 International Business Machines Corporation Systems and methods for improving serviceability of a memory system
JP5669338B2 (ja) 2007-04-26 2015-02-12 株式会社日立製作所 半導体装置
US8700830B2 (en) 2007-11-20 2014-04-15 Spansion Llc Memory buffering system that improves read/write performance and provides low latency for mobile systems
US8874810B2 (en) * 2007-11-26 2014-10-28 Spansion Llc System and method for read data buffering wherein analyzing policy determines whether to decrement or increment the count of internal or external buffers
US8370720B2 (en) * 2009-08-19 2013-02-05 Ocz Technology Group, Inc. Mass storage device and method for offline background scrubbing of solid-state memory devices
US20140164659A1 (en) * 2012-12-06 2014-06-12 Wasim Quddus Regulating access to slave devices
WO2014103144A1 (ja) * 2012-12-28 2014-07-03 パナソニック株式会社 インタフェース装置、およびメモリバスシステム
GB2553102B (en) * 2016-08-19 2020-05-20 Advanced Risc Mach Ltd A memory unit and method of operation of a memory unit to handle operation requests

Family Cites Families (183)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3742253A (en) 1971-03-15 1973-06-26 Burroughs Corp Three state logic device with applications
GB1530405A (en) * 1975-03-24 1978-11-01 Okura Denki Co Ltd Loop data highway communication system
US4045781A (en) 1976-02-13 1977-08-30 Digital Equipment Corporation Memory module with selectable byte addressing for digital data processing system
US4253146A (en) 1978-12-21 1981-02-24 Burroughs Corporation Module for coupling computer-processors
US4245306A (en) 1978-12-21 1981-01-13 Burroughs Corporation Selection of addressed processor in a multi-processor network
US4253144A (en) 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4240143A (en) 1978-12-22 1980-12-16 Burroughs Corporation Hierarchical multi-processor network for memory sharing
US4608702A (en) * 1984-12-21 1986-08-26 Advanced Micro Devices, Inc. Method for digital clock recovery from Manchester-encoded signals
US4724520A (en) 1985-07-01 1988-02-09 United Technologies Corporation Modular multiport data hub
US4843263A (en) * 1986-01-10 1989-06-27 Nec Corporation Clock timing controller for a plurality of LSI chips
US4707823A (en) 1986-07-21 1987-11-17 Chrysler Motors Corporation Fiber optic multiplexed data acquisition system
US4831520A (en) * 1987-02-24 1989-05-16 Digital Equipment Corporation Bus interface circuit for digital data processor
JPH07117863B2 (ja) 1987-06-26 1995-12-18 株式会社日立製作所 オンラインシステムの再立上げ方式
US4891808A (en) 1987-12-24 1990-01-02 Coherent Communication Systems Corp. Self-synchronizing multiplexer
US5251303A (en) 1989-01-13 1993-10-05 International Business Machines Corporation System for DMA block data transfer based on linked control blocks
US5442770A (en) * 1989-01-24 1995-08-15 Nec Electronics, Inc. Triple port cache memory
US4953930A (en) * 1989-03-15 1990-09-04 Ramtech, Inc. CPU socket supporting socket-to-socket optical communications
US4982185A (en) * 1989-05-17 1991-01-01 Blh Electronics, Inc. System for synchronous measurement in a digital computer network
JPH03156795A (ja) 1989-11-15 1991-07-04 Toshiba Micro Electron Kk 半導体メモリ回路装置
US5317752A (en) 1989-12-22 1994-05-31 Tandem Computers Incorporated Fault-tolerant computer system with auto-restart after power-fall
US5313590A (en) * 1990-01-05 1994-05-17 Maspar Computer Corporation System having fixedly priorized and grouped by positions I/O lines for interconnecting router elements in plurality of stages within parrallel computer
JP2772103B2 (ja) 1990-03-28 1998-07-02 株式会社東芝 計算機システム立上げ方式
US5243703A (en) 1990-04-18 1993-09-07 Rambus, Inc. Apparatus for synchronously generating clock signals in a data processing system
IL96808A (en) 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
BE1004668A3 (nl) * 1991-04-02 1993-01-05 Bell Telephone Mfg Beschermingsinrichting voor een optische zender/ontvangerinrichting.
US5461627A (en) 1991-12-24 1995-10-24 Rypinski; Chandos A. Access protocol for a common channel wireless network
JP2554816B2 (ja) 1992-02-20 1996-11-20 株式会社東芝 半導体記憶装置
DE4345604B3 (de) 1992-03-06 2012-07-12 Rambus Inc. Vorrichtung zur Kommunikation mit einem DRAM
US5355391A (en) 1992-03-06 1994-10-11 Rambus, Inc. High speed bus system
AU3936693A (en) * 1992-03-25 1993-10-21 Encore Computer U.S., Inc. Fiber optic memory coupling system
US5432907A (en) 1992-05-12 1995-07-11 Network Resources Corporation Network hub with integrated bridge
US5270964A (en) 1992-05-19 1993-12-14 Sun Microsystems, Inc. Single in-line memory module
GB2270780A (en) * 1992-09-21 1994-03-23 Ibm Scatter-gather in data processing systems.
KR100296517B1 (ko) * 1992-11-25 2001-10-24 윤종용 파이프라인식데이타순서화시스템
IT1262098B (it) * 1993-04-02 1996-06-19 Danieli Off Mecc Cesoia volante ad alta velocita'
JPH0713945A (ja) 1993-06-16 1995-01-17 Nippon Sheet Glass Co Ltd 演算処理部および制御・記憶部分離型マルチプロセッサ ・システムのバス構造
US5497494A (en) 1993-07-23 1996-03-05 International Business Machines Corporation Method for saving and restoring the state of a CPU executing code in protected mode
US5729709A (en) * 1993-11-12 1998-03-17 Intel Corporation Memory controller with burst addressing circuit
US5502621A (en) 1994-03-31 1996-03-26 Hewlett-Packard Company Mirrored pin assignment for two sided multi-chip layout
US5566325A (en) 1994-06-30 1996-10-15 Digital Equipment Corporation Method and apparatus for adaptive memory access
US6175571B1 (en) * 1994-07-22 2001-01-16 Network Peripherals, Inc. Distributed memory switching hub
US5978567A (en) 1994-07-27 1999-11-02 Instant Video Technologies Inc. System for distribution of interactive multimedia and linear programs by enabling program webs which include control scripts to define presentation by client transceiver
US5553070A (en) 1994-09-13 1996-09-03 Riley; Robert E. Data link module for time division multiplexing control systems
US5715456A (en) 1995-02-13 1998-02-03 International Business Machines Corporation Method and apparatus for booting a computer system without pre-installing an operating system
US5638534A (en) * 1995-03-31 1997-06-10 Samsung Electronics Co., Ltd. Memory controller which executes read and write commands out of order
US5875352A (en) * 1995-11-03 1999-02-23 Sun Microsystems, Inc. Method and apparatus for multiple channel direct memory access control
US5834956A (en) 1995-12-29 1998-11-10 Intel Corporation Core clock correction in a 2/N mode clocking scheme
US5966724A (en) 1996-01-11 1999-10-12 Micron Technology, Inc. Synchronous memory device with dual page and burst mode operations
US5832250A (en) 1996-01-26 1998-11-03 Unisys Corporation Multi set cache structure having parity RAMs holding parity bits for tag data and for status data utilizing prediction circuitry that predicts and generates the needed parity bits
US5819304A (en) 1996-01-29 1998-10-06 Iowa State University Research Foundation, Inc. Random access memory assembly
US5659798A (en) * 1996-02-02 1997-08-19 Blumrich; Matthias Augustin Method and system for initiating and loading DMA controller registers by using user-level programs
US5687325A (en) 1996-04-19 1997-11-11 Chang; Web Application specific field programmable gate array
US6064706A (en) * 1996-05-01 2000-05-16 Alcatel Usa, Inc. Apparatus and method of desynchronizing synchronously mapped asynchronous data
US5818844A (en) * 1996-06-06 1998-10-06 Advanced Micro Devices, Inc. Address generation and data path arbitration to and from SRAM to accommodate multiple transmitted packets
US5900020A (en) * 1996-06-27 1999-05-04 Sequent Computer Systems, Inc. Method and apparatus for maintaining an order of write operations by processors in a multiprocessor computer to maintain memory consistency
US5875454A (en) * 1996-07-24 1999-02-23 International Business Machiness Corporation Compressed data cache storage system
JPH1049511A (ja) * 1996-08-02 1998-02-20 Oki Electric Ind Co Ltd 1チップマイクロコンピュータ
JP4070255B2 (ja) * 1996-08-13 2008-04-02 富士通株式会社 半導体集積回路
TW304288B (en) * 1996-08-16 1997-05-01 United Microelectronics Corp Manufacturing method of semiconductor memory device with capacitor
US5706224A (en) * 1996-10-10 1998-01-06 Quality Semiconductor, Inc. Content addressable memory and random access memory partition circuit
US6272600B1 (en) * 1996-11-15 2001-08-07 Hyundai Electronics America Memory request reordering in a data processing system
US6167486A (en) * 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
KR100239716B1 (ko) * 1996-12-30 2000-01-15 김영환 소형 컴퓨터 시스템 인터페이스 콘트롤러의 진단 테스트 장치
US6308248B1 (en) 1996-12-31 2001-10-23 Compaq Computer Corporation Method and system for allocating memory space using mapping controller, page table and frame numbers
US6031241A (en) * 1997-03-11 2000-02-29 University Of Central Florida Capillary discharge extreme ultraviolet lamp source for EUV microlithography and other related applications
US6271582B1 (en) 1997-04-07 2001-08-07 Micron Technology, Inc. Interdigitated leads-over-chip lead frame, device, and method for supporting an integrated circuit die
KR100202385B1 (ko) * 1997-06-04 1999-06-15 윤종용 Hdlc를 이용한 반이중 통신용 송신 장치
US6073190A (en) * 1997-07-18 2000-06-06 Micron Electronics, Inc. System for dynamic buffer allocation comprising control logic for controlling a first address buffer and a first data buffer as a matched pair
US6243769B1 (en) 1997-07-18 2001-06-05 Micron Technology, Inc. Dynamic buffer allocation for a computer system
US6105075A (en) * 1997-08-05 2000-08-15 Adaptec, Inc. Scatter gather memory system for a hardware accelerated command interpreter engine
JP4014708B2 (ja) * 1997-08-21 2007-11-28 株式会社ルネサステクノロジ 半導体集積回路装置の設計方法
US6249802B1 (en) 1997-09-19 2001-06-19 Silicon Graphics, Inc. Method, system, and computer program product for allocating physical memory in a distributed shared memory network
AU9798698A (en) * 1997-10-10 1999-05-03 Rambus Incorporated Method and apparatus for fail-safe resynchronization with minimum latency
JPH11120120A (ja) * 1997-10-13 1999-04-30 Fujitsu Ltd カードバス用インターフェース回路及びそれを有するカードバス用pcカード
US5987196A (en) * 1997-11-06 1999-11-16 Micron Technology, Inc. Semiconductor structure having an optical signal path in a substrate and method for forming the same
US6098158A (en) 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US6014721A (en) * 1998-01-07 2000-01-11 International Business Machines Corporation Method and system for transferring data between buses having differing ordering policies
US6023726A (en) 1998-01-20 2000-02-08 Netscape Communications Corporation User configurable prefetch control system for enabling client to prefetch documents from a network server
US6721860B2 (en) * 1998-01-29 2004-04-13 Micron Technology, Inc. Method for bus capacitance reduction
GB2333896B (en) * 1998-01-31 2003-04-09 Mitel Semiconductor Ab Vertical cavity surface emitting laser
US6186400B1 (en) * 1998-03-20 2001-02-13 Symbol Technologies, Inc. Bar code reader with an integrated scanning component module mountable on printed circuit board
US6038630A (en) * 1998-03-24 2000-03-14 International Business Machines Corporation Shared access control device for integrated system with multiple functional units accessing external structures over multiple data buses
US6079008A (en) * 1998-04-03 2000-06-20 Patton Electronics Co. Multiple thread multiple data predictive coded parallel processing system and method
US6247107B1 (en) * 1998-04-06 2001-06-12 Advanced Micro Devices, Inc. Chipset configured to perform data-directed prefetching
JPH11316617A (ja) * 1998-05-01 1999-11-16 Mitsubishi Electric Corp 半導体回路装置
US6167465A (en) * 1998-05-20 2000-12-26 Aureal Semiconductor, Inc. System for managing multiple DMA connections between a peripheral device and a memory and performing real-time operations on data carried by a selected DMA connection
US6405280B1 (en) * 1998-06-05 2002-06-11 Micron Technology, Inc. Packet-oriented synchronous DRAM interface supporting a plurality of orderings for data block transfers within a burst sequence
US6134624A (en) * 1998-06-08 2000-10-17 Storage Technology Corporation High bandwidth cache system
US6301637B1 (en) * 1998-06-08 2001-10-09 Storage Technology Corporation High performance data paths
US6067649A (en) 1998-06-10 2000-05-23 Compaq Computer Corporation Method and apparatus for a low power self test of a memory subsystem
US6453377B1 (en) * 1998-06-16 2002-09-17 Micron Technology, Inc. Computer including optical interconnect, memory unit, and method of assembling a computer
US6289068B1 (en) * 1998-06-22 2001-09-11 Xilinx, Inc. Delay lock loop with clock phase shifter
JP2000011640A (ja) * 1998-06-23 2000-01-14 Nec Corp 半導体記憶装置
FR2780535B1 (fr) * 1998-06-25 2000-08-25 Inst Nat Rech Inf Automat Dispositif de traitement de donnees d'acquisition, notamment de donnees d'image
US6792500B1 (en) * 1998-07-08 2004-09-14 Broadcom Corporation Apparatus and method for managing memory defects
US6286083B1 (en) * 1998-07-08 2001-09-04 Compaq Computer Corporation Computer system with adaptive memory arbitration scheme
JP3248617B2 (ja) * 1998-07-14 2002-01-21 日本電気株式会社 半導体記憶装置
US6272609B1 (en) 1998-07-31 2001-08-07 Micron Electronics, Inc. Pipelined memory controller
US6061296A (en) 1998-08-17 2000-05-09 Vanguard International Semiconductor Corporation Multiple data clock activation with programmable delay for use in multiple CAS latency memory devices
TW385408B (en) * 1998-08-26 2000-03-21 Inventec Corp Configuration method for installing plug-and-play device
US6029250A (en) 1998-09-09 2000-02-22 Micron Technology, Inc. Method and apparatus for adaptively adjusting the timing offset between a clock signal and digital signals transmitted coincident with that clock signal, and memory device and system using same
US6622188B1 (en) * 1998-09-30 2003-09-16 International Business Machines Corporation 12C bus expansion apparatus and method therefor
US6243831B1 (en) * 1998-10-31 2001-06-05 Compaq Computer Corporation Computer system with power loss protection mechanism
JP3248500B2 (ja) 1998-11-12 2002-01-21 日本電気株式会社 半導体記憶装置およびそのデータ読み出し方法
US6453370B1 (en) * 1998-11-16 2002-09-17 Infineion Technologies Ag Using of bank tag registers to avoid a background operation collision in memory systems
US6100735A (en) * 1998-11-19 2000-08-08 Centillium Communications, Inc. Segmented dual delay-locked loop for precise variable-phase clock generation
US6430696B1 (en) * 1998-11-30 2002-08-06 Micron Technology, Inc. Method and apparatus for high speed data capture utilizing bit-to-bit timing correction, and memory device using same
US6349363B2 (en) * 1998-12-08 2002-02-19 Intel Corporation Multi-section cache with different attributes for each section
US6067262A (en) * 1998-12-11 2000-05-23 Lsi Logic Corporation Redundancy analysis for embedded memories with built-in self test and built-in self repair
US6191663B1 (en) * 1998-12-22 2001-02-20 Intel Corporation Echo reduction on bit-serial, multi-drop bus
US6367074B1 (en) * 1998-12-28 2002-04-02 Intel Corporation Operation of a system
US6061263A (en) * 1998-12-29 2000-05-09 Intel Corporation Small outline rambus in-line memory module
US6324485B1 (en) * 1999-01-26 2001-11-27 Newmillennia Solutions, Inc. Application specific automated test equipment system for testing integrated circuit devices in a native environment
US6285349B1 (en) 1999-02-26 2001-09-04 Intel Corporation Correcting non-uniformity in displays
US6381190B1 (en) * 1999-05-13 2002-04-30 Nec Corporation Semiconductor memory device in which use of cache can be selected
US6233376B1 (en) 1999-05-18 2001-05-15 The United States Of America As Represented By The Secretary Of The Navy Embedded fiber optic circuit boards and integrated circuits
JP3376315B2 (ja) * 1999-05-18 2003-02-10 日本電気株式会社 ビット同期回路
US6294937B1 (en) * 1999-05-25 2001-09-25 Lsi Logic Corporation Method and apparatus for self correcting parallel I/O circuitry
JP2001014840A (ja) * 1999-06-24 2001-01-19 Nec Corp 複数ラインバッファ型メモリlsi
US6401213B1 (en) * 1999-07-09 2002-06-04 Micron Technology, Inc. Timing circuit for high speed memory
US6792495B1 (en) * 1999-07-27 2004-09-14 Intel Corporation Transaction scheduling for a bus system
US6539490B1 (en) * 1999-08-30 2003-03-25 Micron Technology, Inc. Clock distribution without clock delay or skew
US6552564B1 (en) * 1999-08-30 2003-04-22 Micron Technology, Inc. Technique to reduce reflections and ringing on CMOS interconnections
US6438668B1 (en) * 1999-09-30 2002-08-20 Apple Computer, Inc. Method and apparatus for reducing power consumption in a digital processing system
US6467013B1 (en) * 1999-09-30 2002-10-15 Intel Corporation Memory transceiver to couple an additional memory channel to an existing memory channel
US6636912B2 (en) * 1999-10-07 2003-10-21 Intel Corporation Method and apparatus for mode selection in a computer system
JP3546788B2 (ja) * 1999-12-20 2004-07-28 日本電気株式会社 メモリ制御回路
KR100343383B1 (ko) * 2000-01-05 2002-07-15 윤종용 반도체 메모리 장치 및 이 장치의 데이터 샘플링 방법
JP2001193639A (ja) * 2000-01-11 2001-07-17 Toyota Autom Loom Works Ltd 電動斜板圧縮機
US6185352B1 (en) * 2000-02-24 2001-02-06 Siecor Operations, Llc Optical fiber ribbon fan-out cables
US6728800B1 (en) * 2000-06-28 2004-04-27 Intel Corporation Efficient performance based scheduling mechanism for handling multiple TLB operations
JP2002014875A (ja) 2000-06-30 2002-01-18 Mitsubishi Electric Corp 半導体集積回路、半導体集積回路のメモリリペア方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US6845409B1 (en) * 2000-07-25 2005-01-18 Sun Microsystems, Inc. Data exchange methods for a switch which selectively forms a communication channel between a processing unit and multiple devices
US6526483B1 (en) * 2000-09-20 2003-02-25 Broadcom Corporation Page open hint in transactions
US6523092B1 (en) * 2000-09-29 2003-02-18 Intel Corporation Cache line replacement policy enhancement to avoid memory page thrashing
US6523093B1 (en) * 2000-09-29 2003-02-18 Intel Corporation Prefetch buffer allocation and filtering system
US7187742B1 (en) * 2000-10-06 2007-03-06 Xilinx, Inc. Synchronized multi-output digital clock manager
US6622227B2 (en) * 2000-12-27 2003-09-16 Intel Corporation Method and apparatus for utilizing write buffers in memory control/interface
US6493250B2 (en) * 2000-12-28 2002-12-10 Intel Corporation Multi-tier point-to-point buffered memory interface
US6782435B2 (en) * 2001-03-26 2004-08-24 Intel Corporation Device for spatially and temporally reordering for data between a processor, memory and peripherals
US7107399B2 (en) * 2001-05-11 2006-09-12 International Business Machines Corporation Scalable memory
US6670959B2 (en) * 2001-05-18 2003-12-30 Sun Microsystems, Inc. Method and apparatus for reducing inefficiencies in shared memory devices
SE524110C2 (sv) * 2001-06-06 2004-06-29 Kvaser Consultant Ab Anordning och förfarande vid system med lokalt utplacerade modulenheter samt kontaktenhet för anslutning av sådan modulenhet
US6697926B2 (en) * 2001-06-06 2004-02-24 Micron Technology, Inc. Method and apparatus for determining actual write latency and accurately aligning the start of data capture with the arrival of data at a memory device
US6920533B2 (en) * 2001-06-27 2005-07-19 Intel Corporation System boot time reduction method
US20030005344A1 (en) * 2001-06-29 2003-01-02 Bhamidipati Sriram M. Synchronizing data with a capture pulse and synchronizer
US6721195B2 (en) * 2001-07-12 2004-04-13 Micron Technology, Inc. Reversed memory module socket and motherboard incorporating same
US6681292B2 (en) * 2001-08-27 2004-01-20 Intel Corporation Distributed read and write caching implementation for optimized input/output applications
CN100361109C (zh) * 2001-08-29 2008-01-09 模拟设备公司 通用串行端口体系结构和系统
US7941056B2 (en) * 2001-08-30 2011-05-10 Micron Technology, Inc. Optical interconnect in high-speed memory systems
US6665202B2 (en) * 2001-09-25 2003-12-16 Integrated Device Technology, Inc. Content addressable memory (CAM) devices that can identify highest priority matches in non-sectored CAM arrays and methods of operating same
US6718440B2 (en) * 2001-09-28 2004-04-06 Intel Corporation Memory access latency hiding with hint buffer
DE10153657C2 (de) * 2001-10-31 2003-11-06 Infineon Technologies Ag Anordnung zur Datenübertragung in einem Halbleiterspeichersystem und Datenübertragungsverfahren dafür
US6886048B2 (en) * 2001-11-15 2005-04-26 Hewlett-Packard Development Company, L.P. Techniques for processing out-of-order requests in a processor-based system
US7006533B2 (en) * 2002-02-19 2006-02-28 Intel Corporation Method and apparatus for hublink read return streaming
US7047374B2 (en) * 2002-02-25 2006-05-16 Intel Corporation Memory read/write reordering
US6725306B2 (en) * 2002-02-27 2004-04-20 Lsi Logic Corporation DEBUG mode for a data bus
US6774687B2 (en) * 2002-03-11 2004-08-10 Micron Technology, Inc. Method and apparatus for characterizing a delay locked loop
US6735682B2 (en) * 2002-03-28 2004-05-11 Intel Corporation Apparatus and method for address calculation
US7133972B2 (en) * 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
DE10234934A1 (de) * 2002-07-31 2004-03-18 Advanced Micro Devices, Inc., Sunnyvale Antwortreihenwiederherstellungsmechanismus
US7149874B2 (en) * 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US7102907B2 (en) * 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US6667926B1 (en) * 2002-09-09 2003-12-23 Silicon Integrated Systems Corporation Memory read/write arbitration method
US6821029B1 (en) * 2002-09-10 2004-11-23 Xilinx, Inc. High speed serial I/O technology using an optical link
US6811320B1 (en) * 2002-11-13 2004-11-02 Russell Mistretta Abbott System for connecting a fiber optic cable to an electronic device
DE10255937B4 (de) * 2002-11-29 2005-03-17 Advanced Micro Devices, Inc., Sunnyvale Ordnungsregelgesteuerte Befehlsspeicherung
US7366423B2 (en) * 2002-12-31 2008-04-29 Intel Corporation System having multiple agents on optical and electrical bus
US6961259B2 (en) * 2003-01-23 2005-11-01 Micron Technology, Inc. Apparatus and methods for optically-coupled memory systems
JP3841762B2 (ja) * 2003-02-18 2006-11-01 ファナック株式会社 サーボモータ制御システム
US7020757B2 (en) * 2003-03-27 2006-03-28 Hewlett-Packard Development Company, L.P. Providing an arrangement of memory devices to enable high-speed data access
US7366854B2 (en) * 2003-05-08 2008-04-29 Hewlett-Packard Development Company, L.P. Systems and methods for scheduling memory requests utilizing multi-level arbitration
JP4836794B2 (ja) * 2003-05-13 2011-12-14 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム
US7386768B2 (en) * 2003-06-05 2008-06-10 Intel Corporation Memory channel with bit lane fail-over
US20050015426A1 (en) * 2003-07-14 2005-01-20 Woodruff Robert J. Communicating data over a communication link
US7120743B2 (en) * 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7177211B2 (en) * 2003-11-13 2007-02-13 Intel Corporation Memory channel test fixture and method
US7098714B2 (en) * 2003-12-08 2006-08-29 Micron Technology, Inc. Centralizing the lock point of a synchronous circuit
US7529800B2 (en) * 2003-12-18 2009-05-05 International Business Machines Corporation Queuing of conflicted remotely received transactions
US7181584B2 (en) * 2004-02-05 2007-02-20 Micron Technology, Inc. Dynamic command and/or address mirroring system and method for memory modules
US6980042B2 (en) * 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7046060B1 (en) * 2004-10-27 2006-05-16 Infineon Technologies, Ag Method and apparatus compensating for frequency drift in a delay locked loop
US7116143B2 (en) * 2004-12-30 2006-10-03 Micron Technology, Inc. Synchronous clock generator including duty cycle correction

Also Published As

Publication number Publication date
US20050177677A1 (en) 2005-08-11
EP1723527A2 (en) 2006-11-22
KR100854946B1 (ko) 2008-08-29
JP2007526559A (ja) 2007-09-13
EP1723527A4 (en) 2007-10-03
KR20060132716A (ko) 2006-12-21
TWI327273B (en) 2010-07-11
EP1723527B1 (en) 2012-05-30
US7412574B2 (en) 2008-08-12
WO2005076856A3 (en) 2006-06-08
TW200606637A (en) 2006-02-16
US20080294862A1 (en) 2008-11-27
WO2005076856A2 (en) 2005-08-25
CN1938691A (zh) 2007-03-28
CN1938691B (zh) 2010-05-12

Similar Documents

Publication Publication Date Title
JP4586031B2 (ja) パケットメモリを有するアービトレーションシステムとハブに基づくメモリシステムにおけるメモリ応答の方法
US8589643B2 (en) Arbitration system and method for memory responses in a hub-based memory system
US9032166B2 (en) Memory arbitration system and method having an arbitration packet protocol
US7415567B2 (en) Memory hub bypass circuit and method
US7251714B2 (en) Method and system for capturing and bypassing memory transactions in a hub-based memory system
EP2562653B1 (en) Method and system for terminating write commands in a hub-based memory system
EP1546885B1 (en) Memory hub and access method having internal row caching

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100805

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4586031

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 3

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250