JP2002506250A - バス間ブリッジの性能最適化のためのトリガ・ポイント - Google Patents
バス間ブリッジの性能最適化のためのトリガ・ポイントInfo
- Publication number
- JP2002506250A JP2002506250A JP2000534945A JP2000534945A JP2002506250A JP 2002506250 A JP2002506250 A JP 2002506250A JP 2000534945 A JP2000534945 A JP 2000534945A JP 2000534945 A JP2000534945 A JP 2000534945A JP 2002506250 A JP2002506250 A JP 2002506250A
- Authority
- JP
- Japan
- Prior art keywords
- bridge
- bus
- queue
- data
- target
- 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.)
- Pending
Links
- 238000012546 transfer Methods 0.000 claims abstract description 18
- 238000000034 method Methods 0.000 claims abstract description 9
- 239000003999 initiator Substances 0.000 claims description 58
- 230000004044 response Effects 0.000 claims description 11
- 230000000977 initiatory effect Effects 0.000 claims description 9
- 230000008878 coupling Effects 0.000 claims description 6
- 238000010168 coupling process Methods 0.000 claims description 6
- 238000005859 coupling reaction Methods 0.000 claims description 6
- 230000003111 delayed effect Effects 0.000 claims description 3
- 230000006872 improvement Effects 0.000 claims description 3
- 230000006855 networking Effects 0.000 abstract 1
- 239000003795 chemical substances by application Substances 0.000 description 16
- 238000012545 processing Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4054—Coupling between buses using bus bridges where the bridge performs a synchronising function where the function is bus cycle extension, e.g. to meet the timing requirements of the target bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Bus Control (AREA)
Abstract
Description
ッジ・デバイスに関する。
を、研究ツールであることから実用的な多目的マシンになるように移行させるこ
とにおいて、大きな影響を及ぼしてきた。現在、バスは、集積回路(IC)処理
ユニット内でも、処理ユニットを外部メモリや周辺デバイスなど他のエージェン
トに接続すること際にも見ることができる。しかし、単一のバスの物理特性によ
って、取り付けることができるエージェントの数(周辺デバイスおよびプロセッ
サを含む)が制限される。したがって、現在の多数のコンピュータ・システムの
応用例は、物理的に分離したいくつかのバスを有するマルチバス・アーキテクチ
ャによって機能性をさらに拡張している。
される。ブリッジは、ハードウェア(デジタル・ハードワイヤード回路)、ソフ
トウェア(1つまたは複数のプロセッサによって実行される、高または低レベル
のコマンドおよび命令)、およびファームウェア(典型的には異なるタイプの読
み出し専用メモリに格納されたソフトウェア)またはそれらの組合せを含むこと
ができ、これらは物理的に分離した、少なくとも2つのバスの間のデータ・トラ
フィックを監視し、制御する。ブリッジはあるバス・プロトコルから別のバス・
プロトコルへのインタフェースとなり、異なるバス上のエージェントの間の通信
を容易にする。
離したバスを1つのバスとして処理できるように、典型的には透過的に構成され
ている。このような結果を達成するために、両方のバス上のエージェントによっ
てアドレス空間が共有される。共有アドレス空間内のアドレス範囲を有する(読
み出しまたは書き込み)要求は、イニシエーティング・バス(開始バス)上のイ
ニシエータ・エージェントによって生成される。ブリッジはアドレス範囲を認識
し、要求をターゲット・バス上のターゲット・エージェントへ転送することがで
きる。したがって、ブリッジはイニシエータ・エージェントに代わってターゲッ
ト・バス上の要求を自動的に実行すると言うことができる。
異なることが多い。現在のコンピュータ・バスの一例は、周辺コンポーネント相
互接続(PCI)バスである。PCIバスは業界標準で、高性能で待ち時間の短
いシステム・バスであり、概して、「PCI Local Bus Speci
fication」,Revision 2.1,1994年10月21日PC
Iにおける分科会(Special Interest Group、SIG)
によって決められた。この開示中で、本発明の様々な実施形態の原理および動作
のいくつかを説明するためにPCIバスが使用される。しかし、これらの原理は
、他のマルチバス・アーキテクチャにも適用することができる。
cture Specification」,Revision 1.0,19
94年4月5日に記載されたブリッジ・アーキテクチャも維持している。PCI
ブリッジも、この開示において、本発明の様々な実施形態の原理および動作のい
くつかを例示するためにしばしば参照される。しかし、これらの原理は、他のブ
リッジ設計にも適用することができる。
バス上にそれぞれがあるイニシエータとターゲットの間のデータの完全転送とし
て定義される。データをあるバスから別のバスへの転送中に、ブリッジは典型的
には、いくつかのデータ・キューを実施して、データを獲得あるいは転送するた
めにターゲット・バスへのアクセスを要求することおよび獲得することに関連す
る遅延を隠す。各トランザクションには、典型的には、トランザクションが完了
したときに解放される論理キューが割り当てられる。
リまたはバッファの一部である。FIFOは、項目が入れられた順序と同じ順序
で取り出されるデータ構造である。これは、項目を棚の一端へ押付けて他を押し
出すようにすることとの類比から、「シェルフ(shelf)」としても知られ
る。典型的には、FIFOへの書き込みおよびFIFOからの読み出しを同時に
行うことができる。ブリッジにおけるFIFOは、イニシエータとターゲットの
間で、同期化されていない、すなわち、異なった速度で送信し、受信するデータ
のストリームをバッファに入れるために有効である。
れた所与のアドレス範囲から読み出すか、あるいはそこへ書き込むための、イニ
シエータからの要求を含む。要求がブリッジによって受け入れられた場合、トラ
ンザクションが開始し、適切なアクセスが開始される。アクセスは典型的には、
セットアップのためのアイドル・フェーズ、特定の要求のアドレス情報が交換さ
れるアドレス・フェーズ、および時にはデータが交換されるデータ・フェーズを
含む。
ジは再試行信号として知られる終了をイニシエータに出す。これは、割り当てら
れたブリッジ・キューがフルであるか、あるいは転送するデータがない場合に起
こる。時には、すべてのキューが他のペンディングのトランザクションのために
使用中であって、割り当てるために使用できる空いているキューがない場合にも
新規要求が拒否されることがある。要求が拒否された場合、イニシエータは要求
を繰り返して、進行中のトランザクションを完了するか、あるいは新規のトラン
ザクションの開始を試みることができる。
ータ、ターゲットまたはブリッジのいずれかによって、様々な理由のために早ま
って終了されることがある。これが起こった場合、トランザクションを完了し、
要求されたデータをすべて転送するために、イニシエータによって要求を繰り返
すことができ、あるいは後続の要求を出すことができる。所望のデータをマルチ
・アクセスで転送するようにトランザクションを分割することは、追加のアクセ
スが追加のアイドル・フェースとアドレス・フェーズを含むのでオーバーヘッド
が増大することになる。オーバーヘッドの増大によってスループットが低下する
おそれがある。ここで、スループットは、単位時間毎にブリッジを介して転送さ
れるデータ量であり、所与の期間について平均される。一方、待ち時間は、イニ
シエータまたはターゲットにマルチ・ブロック・トランザクションの最初のデー
タ・ブロックを提供するために要する時間として定義される。本発明の異なる実
施形態のいくつかの利点を例示する助けとするために、これらの2つの性能基準
をこの開示中で使用することとする。ブリッジを特定の応用例に合わせて調整す
ることができるように、スループットの向上または待ち時間の低減のいずれかが
可能になる技術を有することが望ましいであろう。
れたトランザクションとして実行される。このようなトランザクションでは、ブ
リッジがイニシエータの要求を受け入れた後に、イニシエータがデータをブリッ
ジのキューへ転送する。次いで、ブリッジがターゲット・バスの制御を要求し、
制御を受信後に制御がデータをキューからターゲットへ送る。しかし、トランザ
クションは、ターゲット・バスで完了される前に開始バスで完了される。
と無効化(memory write and invalidate:MWI)を含む。この2つの書き込み
トランザクションが異なる点は、MWIがキャッシュ・メモリ・ラインの整数の
ためでなければならないのに対し、簡素なメモリ書き込みはより少量のデータを
書き込むために使用することができることである。
メモリ書き込みの場合よりもはるかに長時間ビジー状態になる。これによって、
MWI要求に応答するように構成されていないエージェントを有するターゲット
・バスを不必要に拘束することがある。たとえば、イニシエータは、より古い世
代のターゲットを有するより古いマルチバス・コンピュータ・システムにプラグ
インされた、より新しい世代の周辺デバイスにすることができる。この場合はイ
ニシエータがMWIバスをサポートするが、そのターゲットはこれをサポートし
ない。このようなシステムにおける性能を向上させるため、イニシエータのソフ
トウェアを、MWIを出さずに簡素なメモリ書き込みを使用するように修正して
、MWIをサポートしないターゲット向けのトランザクションを実行することが
できる。しかし、このような変更は各デバイス上で実施する必要があり、煩わし
いタスクをシステム・オペレータに与える可能性がある。これは、システムの寿
命の間に多数の新しいデバイスが追加されるからである。したがって、システム
の寿命の間に追加される可能性のある新しい各デバイスのソフトウェアを修正す
る必要なしに、MWI要求をマルチバス・コンピュータ・システムで処理するた
めの技術を有することが望ましいであろう。
が読み出しトランザクションについてもある。ブリッジを介した読み出しトラン
ザクションは、読み出しトランザクションが典型的にはポストされたトランザク
ションとしてではなく、遅延トランザクションとして実行される点で、書き込み
トランザクションよりも複雑である。たとえば、PCIモデルでは、遅延された
トランザクションにおけるPCIブリッジが、初期要求を完了するために要求さ
れた情報をラッチし、次いでイニシエータに再試行を知らせる。次いで、ブリッ
ジが、イニシエータに代わってターゲット・バスを介して初期要求を実行する。
ターゲットから返されるいかなるデータまたは応答も、ブリッジ・キューに格納
される。次いで、イニシエータは元の要求を繰り返してデータをキューから取り
出し、トランザクションを完了しなければならない。
ト・バスを介して読み出すデータの厳密な量が指定されず、むしろ特定のPCI
コマンド・タイプ、および読み出し元のメモリ・アドレス空間がプリフェッチ可
能であるかどうかによって決まることがある。イニシエータは読み出す必要のあ
るデータの厳密な量を知っているが、PCIモデルではこの量を指定することが
できない。
してターゲットからのデータを、固定かつ所定の数のブロックまで、あるいは割
り当てられたブリッジ・キューがフルになるまで、読み出して格納する。この推
論的な動作は、イニシエータに代わって、イニシエータからのいずれかの後続ま
たは繰り返された読み出し要求を予想して行われる。繰り返された読み出し要求
が到着すると、読み出されたデータがイニシエータへブリッジ・キューから流れ
始めるが、イニシエータによっていつでも停止させることができる。次いで、ブ
リッジがターゲットから読み出してきたがイニシエータには転送されない、キュ
ー内のいかなるデータも廃棄される。
態にしておくことで貴重なバス時間を無駄にすることである。いかなるアクセス
中にも、データがブリッジ内のキューに転送されるか、あるいはそこから転送さ
れる間に、開始および/またはターゲット・バスが占有されるかあるいはビジー
になる可能性がある。占有されている間、バスは通常、他のエージェントによっ
て使用することができない。読み出しアクセスにおいてプリフェッチされたデー
タのいくつかが続いて廃棄された場合、ターゲット・バスはビジー状態になって
おり、結果としてブリッジを通じていかなるデータ転送も行われない。したがっ
て、最適化スキームが、ターゲット・バスがこのように不必要にビジー状態にさ
れる間の時間を削減するための助けになることが望ましい。
送速度の制御にある。PCIマルチバス・アーキテクチャでは、ブリッジの両側
のイニシエータおよびターゲット・エージェントが、それらの間のデータ・フロ
ーの速度を「減速(throttle)」させることが可能である。減速は、いずれかの
エージェントが待機状態をブリッジに要求して待機状態を得たとき、トランザク
ションのためのデータがブリッジに格納中である間に生じる。待機状態によって
、データがブリッジへ受け入れられるか、あるいはブリッジから削除される速度
が低減される。
場合、ブリッジ・キューがフル(書き込みトランザクションにおいてイニシエー
タをブロックする)あるいは空(いかなるデータもターゲットに供給しない)に
なり、ブリッジ内外へのデータの同時フローを中止する。したがって、上記の所
見が与えられると、ブリッジを通じたデータ・フローを最適化して、スループッ
トまたは待ち時間(ブリッジの応用例によって決まる)を向上させて同時フロー
の可能性を増すようにすることができる、さらなる技術を有することが望ましい
であろう。
・バスに結合するためのブリッジを対象とする。このブリッジは、第1および第
2のバス・インタフェース、トランザクションの一部として一方のバス・インタ
フェースから他方のバス・インタフェースへ転送されるデータを一時的に格納す
るためのキュー、および、トランザクションの実行中にキューによって満たされ
る1つまたは複数の格納条件を表す制御レジスタを有する。
、特定の実施形態を以下に述べて、本発明を完全に理解できるようにする。しか
し、この開示を読むことから、当業者には理解されるように、本発明はこのよう
な詳細なしに実施することができる。さらに、周知の要素、デバイス、プロセス
、ステップなどについては、本発明を不明確にすることを避けるために、詳細に
は述べない。
よって結合された、第1および第2のバス134および138を有するコンピュ
ータ・システムとして示す。ブリッジ100は、いくつかの論理キュー110、
114、118、および122を含み、これらを使用してこの2つのバスの間の
データ転送をバッファする。各キューはトランザクション毎に使用され、新しい
各トランザクションが開始されたときに別々のキューが割り当てられる。ブリッ
ジ100は第1のバス・インタフェース104および第2のバス・インタフェー
ス108も有し、これらがキューをそれぞれのバスに結合する。制御レジスタ1
30が用意されており、これは本発明の異なる実施形態によるトリガ・ポイント
を識別するものである。これについては以下でより十分に記載する。
ションがイニシエータ140によって開始され、第2のバス138は、ターゲッ
ト144に結合されたターゲット・バスである。第1のバス134に結合された
ホスト・プロセッサ148は、制御レジスタ130を適切な値で構成するプログ
ラムを実行するために使用することもできる。
ューを完全にフルにすることが、そうすることによってブリッジが後続の書き込
み要求のいかなるデータを受け入れることも妨げられるか、あるいは単一アクセ
スにおけるこのようなデータを受け入れることが妨げられる場合には、望ましく
ないという考えに基づいている。ブリッジが、その特定のトランザクション用の
その書き込みキューがフルであるために、強制的にこのようなデータを拒否させ
られた場合、ブリッジ内外への同時フローが中止される。これによって、また、
おそらくはターゲット・バスまたはエージェントがビジーであるために、ブリッ
ジがすでにキューにあるデータをターゲットへ移動できない場合に、スループッ
トが低下する。スループットは、キューがフルになっているために後続の要求か
らのデータを単一アクセスで受け入れることができない場合、開始バス上で必要
とされる多数のアクセスのオーバーヘッドによっても低下する。
」状態で構成される。非フル状態は、完全に空の状態と完全にフルの状態の間の
キュー110の状態である。書き込み要求がブリッジによって受け入れられる前
は、キュー110は非フル状態でなければならず、すなわち、使用可能な最低量
の空き空間(制御レジスタで指定されたような1つまたは複数のデータ・ブロッ
ク)を有していなければならない。この状態は、ユーザのコマンドか、または、
バス134またはバス138のいずれかのホスト・プロセッサ148によって実
行された構成プログラムに応じて、制御レジスタ130で決められる。たとえば
、図1に示すように、2ビットを制御レジスタで使用して、最大4種類の非フル
状態を符号化することができる。
て、以下のように例示することができる。ブリッジ100は(先に述べたように
、ハードウェアおよびソフトウェアにおいて)図2の動作を実行するように構成
されている。ブロック204から開始して、イニシエータ140からの書き込み
トランザクションの要求が、開始バス134およびインタフェース104を介し
て受信される。次いで、ブリッジはキュー110をこのトランザクションに割り
当て、アクセスを開始してこのキューをイニシエータからの書き込みデータで満
たす。その後いかなるときでも、イニシエータはアクセスを終了させることがで
き、後の時間に後続の書き込み要求を出すことによってトランザクションを再開
させることができる。
ブロック208に進み、ここで制御レジスタ130が検査されて、キュー110
の非フル状態が識別される。特定の実装に応じて、各書き込み要求を検出するこ
とに応答してステップ208を実行することができ、あるいは、トランザクショ
ンが開始されるより早く、あるいはその後のいかなるときにもステップ208を
実行することができる。いずれの場合も、動作はステップ212に進む。
かが判定される。非フル状態はキューの格納状態であり、完全にフルの状態また
は完全に空の状態以外である。書き込みキュー110が非フル状態に達した場合
、キューは「フル」とみなされ、動作はステップ220へ進む。そこで、ブリッ
ジは後続の書き込み要求に応答して再試行を知らせ、要求は受け入れられない。
その間に、キュー内のデータを、イニシエータによる要求とは無関係にターゲッ
ト144へ転送することができる。
状態よりもより空である場合、このキューは「非フル」であり、動作はステップ
220ではなくステップ216へ進む。そこで、ブリッジが書き込み要求を受け
入れることが可能となる。受け入れられた場合、開始バスを介した書き込みアク
セスがステップ218で開始し、このトランザクションのためのより多くのデー
タをキュー110へ転送することができる。上述の後続の要求は、書き込まれる
データの総量、キューのサイズ、およびデータをキューからターゲットへ転送す
る能力に応じて、トランザクション中に数回繰り返すことができる。ブリッジを
このように操作する利点は、次の性能調整例によって例示することができる。
のブリッジおよびマルチバス・アーキテクチャを用いて設計することができる。
ブリッジを通じた予想されるトラフィック・パターンと与えられたバス上の異な
るエージェントのデータ処理能力では、ターゲット・バス138が相対的にビジ
ー状態となり、かつ/または相対的に大きなバースト・トランザクション(相対
的に大量のデータを有する)が開始バス134上で要求されることが見込まれる
ならば、このキューの非フル状態がより空に近く設定される。これは、ブリッジ
が書き込み要求を受け入れる前にキュー110が空に近くなければならないとい
う意味である。このように、キューが、書き込み要求データのすべてを単一のデ
ータ・フェーズで格納するために十分な空間を有する可能性がより大きくなり、
それによってトランザクションを開始バス上の多数のアクセスにパケット化ある
いは分割することに関するオーバーヘッドが低減される。これに対して、非フル
状態がよりフルに近く設定された場合、ターゲット・バスがビジーであるか、大
量の書き込みデータが要求されることで、キューが早くフルになる可能性がより
大きくなる(および、それによってイニシエータがデータを送信することをブロ
ックするか、あるいは強制的に停止させる)。
/またはほとんど少量の書き込みデータが要求されることが予想される場合、非
フル状態がよりフルに近く設定される。この場合、キューが完全にフルになる(
および、したがってイニシエータをブロックする)可能性が少なくなり(非フル
状態がよりフルに近く設定されていても)、これはターゲット・バスがキューか
らデータを削除するために十分高速であるか、かつ/または、少量のデータのみ
が開始バス上の各アクセスで転送されるかのいずれかのためである。同時に、イ
ニシエータがほぼ全体量のキューを使用することができ、それによって、キュー
がフルであるためにイニシエータをブロックする可能性がさらに減る。
ューレーション、または、開始および/またはターゲット・バス上の実際のトラ
フィックの監視、およびキューのサイズに基づいて決定することができる。実際
に、シミュレーション結果は、ブリッジにおける書き込みキューの非フル状態を
変動させることによってスループットに著しい影響を与えることを示している。
タを削除してターゲット144へ転送するために、いかに急速にブリッジ100
がターゲット・バス138の制御を要求するかに焦点をあてている。この実施形
態は、ブリッジがターゲット・バスの制御を、そのバスが使用可能になるとすぐ
に要求できるようにすることが必ずしも望ましいわけではない、という考えに基
づいている。図1および図3と共に以下に記載するように、本発明のこの実施形
態は、ブリッジの待ち時間の性能調整について、特に開始およびターゲット・バ
スが異なるバンド幅要件を有するとき、たとえば、開始バスが64ビット幅であ
るがターゲット・バスが32ビット幅のみであるときに、有効になるだろう。
らバス134を介して受信され、ターゲットへバス138を介して転送されるデ
ータを、一時的に格納するためのキュー110を有するブリッジ100を含む。
制御レジスタ130はメモリ書き込み要求制御ビットを含む。これは、開始バス
から受信されてキュー110に格納されていたデータを転送するために、ターゲ
ット・バスがインタフェース108によって要求されるときに、トリガ・ポイン
トを決定する。このビットは、ブリッジ100がターゲット・バスの制御を要求
できるようになる前に(書き込みトランザクションの一部として)キューで受信
され格納されなければならない、量がゼロでないデータ(1データ・ブロックよ
り大きい)を指定することができる。たとえば、2ビットを使用して、少なくと
も3つの異なった量のQWORDをキューで符号化することができ、各QWOR
Dは64ビットの幅を有するデータのブロックである。上述の第1の実施形態の
場合のように、キュー110は、PCIブリッジにおける、ポストされたメモリ
書き込みキューでよい。
き込み要求制御格納条件が、相対的に数の少ないデータ・ブロックに設定される
。指定された数のブロックが受信され、格納されてからすぐに、データをキュー
からターゲットへ転送開始することができる。
ット・バスが相対的にビジーであり、キューがフルになり、ターゲット・バスを
獲得できるようになる前にイニシエータをブロックする可能性があることが予想
されるときである。このような条件では、より低い格納条件によって、キューを
空にする際に開始時にブリッジに優位が与えられ、ブリッジがターゲットを獲得
するために十分な時間を提供することができ、キューがフルになる前に書き込み
データのキューからのアンロードを開始することができる。
囲の環境が、ターゲット・バスを比較的急速に獲得することができ、たとえば相
対的に静かなターゲット・バスであるような場合、書き込み要求制御格納条件を
、より大量のデータで、キューの全容量より少ない量を指示するように設定する
ことができる。これは、ターゲット・バスが獲得されたとき、大量のデータが単
一アクセスでターゲットへ転送されるために使用可能であり、それによってスル
ープットを向上させることを保証する助けとなる。
ある、さらにもう1つの状況は、イニシエータ140がトランザクション中に、
たとえば待機状態の形式でブリッジ100から遅延を要求する可能性が高いとき
である。これは、キュー110がトランザクション中に空になる可能性が低く、
イニシエータがさらなるデータの到着を遅延させる間にターゲット・バスを介し
て転送される十分なデータを保持し、ブリッジを通じた同時データ・フローの可
能性を増大させるようにして、したがって所望のスループットを向上させ、ある
いは維持することを保証する助けとなる。
書き込みトランザクションを実行する、例示的方法を示す。ステップ304で、
ブリッジ100が初期書き込み要求をイニシエータから受信して、書き込みトラ
ンザクションを開始する。動作はステップ308に進み、そこでデータがキュー
110へ、開始バス134を介して転送開始される。ステップ312で、キュー
が、制御レジスタ130で指定された書き込み要求制御格納条件を満たしている
かどうか、すなわち、十分なデータがキューに転送されたかどうかについての判
定が行われる。そうである場合、ステップ320で、ターゲット・バスを要求す
ることができる。続いて、ターゲット・バスが獲得されたとき、ブリッジが書き
込みデータをキューからターゲットへ転送開始する。その間に、キューは続けて
新しい書き込みデータをイニシエータから受信することができる。
ット・バスを要求することが許可されないが、新しい書き込みデータをキューへ
受信することを続けることができる。そうでない場合、キュー内外への転送は、
互いに無関係に発生することができる。
、図1のターゲット144など、MWI要求を処理するように装備されていない
エージェントを結合すると予想される場合、ブリッジ100は、開始バス上のM
WI要求を従来のメモリ書き込みとしてターゲット・バスを介して転送するよう
に構成される。このようなエージェントは、たとえば、より古い世代のメモリ・
コントローラおよびブリッジを含む。このように、新しい各イニシエータ140
のソフトウェアおよびハードウェア構成は、変更する必要がない。コンピュータ
・システムの動作は、制御レジスタ130を、MWI変換機能を使用可能にする
ように構成することによって、簡素なメモリ書き込みトランザクションに合わせ
て最適化することができる。使用可能にされると、ブリッジの論理回路が、ター
ゲット・バス上でトランザクションを実行する前に、MWIトランザクションの
コマンド部を簡素なメモリ書き込みのコマンド部に変更するように指示される。
読み出しトランザクションを処理する本発明の第1の実施形態では、読み出しト
ランザクション中にターゲットからプリフェッチされるデータの最大サイズを、
制御レジスタ130のビットによって調整することが可能である。この改良は特
に、ブリッジが、ブリッジ読み出しキューに存在する、プリフェッチされたデー
タの要求されない部分を廃棄するように構成されるときに、ブリッジ性能を向上
させることにおいて効果的である。
、制御レジスタ130の特有のビットを検査することによって、プリフェッチさ
れる最大データ・サイズを決定する。ブリッジができるだけ多くのデータ(制御
レジスタ130で決められた最大量まで)をターゲットから得て、データを読み
出しキュー122に格納した後でのみ、ブリッジは、開始バス上で繰り返された
読み出し要求を受け入れることができ、キュー122からイニシエータ140へ
読み出されたデータを転送させることができる。
サイズをいずれかの数のデータ・ブロックに調整することによって廃棄すること
ができる要求されないデータの量を減らす。それによって、ブリッジを特定の応
用例に合わせて調整することができる。たとえば、応用例が大容量記憶装置であ
り、イニシエータが、磁気ディスク記憶装置コントローラであるターゲット14
4から大きいバースト読み出しトランザクションを要求する可能性が高い場合、
相対的に大量のデータが続いてイニシエータによって要求されるであろうという
確信を持って、プリフェッチ・サイズをより大量に設定することができる。プリ
フェッチ・サイズを、後に廃棄される、要求されないデータ量を減らすように調
整し、それによって、特定のブリッジ応用例では、ターゲット・バスをより効率
的に使用できるようにするべきである。
図4を使用して記載する。この実施形態は、遅延されたメモリ読み出しトランザ
クションのために、開始バス・インタフェース104の挙動を制御するビットを
制御レジスタ130に用意している。このビットは、キュー122のための読み
出し完了制御格納条件を識別する。これは、イニシエータ140が、いつキュー
122に格納された読み出しデータにアクセスできるかを決定する。制御レジス
タ130は、ブリッジが開始バス134上で繰り返された読み出し要求を受け入
れてデータをキュー122から戻すことができるようになる前に、ターゲットか
ら受信してキュー122に格納しなければならないデータ・ブロックの最少数を
変更するように、プログラミングすることができる。たとえば、2ビットを使用
して、繰り返し要求の受け入れが可能となる前に受信してキューに格納しなけれ
ばならない4つの異なる量のQWORDS(64ビット幅のデータ・ブロック)
を符号化することができる。
てキュー122に格納されている場合、すなわち、トランザクションがターゲッ
ト・バス上で完了した場合、制御レジスタ130で指定された完了制御格納条件
がキューによって満たされているかどうかにかかわらず、格納されたデータをイ
ニシエータへ送達することができる。
一連のステップを示す。ブロック404から開始して、第1の読み出し要求が開
始バス134から受信されて、読み出しトランザクションを開始する。PCIの
実施形態では、読み出しトランザクションを、メモリ読み出し、メモリ読み出し
ライン(memory read line、MRL)およびメモリ読み出しマルチプル(memory
read multiple、MRM)のいずれか1つにすることができる。
読み出しキューが使用可能であるとする)、読み出しアドレス情報を得た後、次
いでステップ406でブリッジが再試行を開始バス134上で知らせる。次いで
、ブリッジがターゲット・バス138を獲得しようと試みる。成功した場合、タ
ーゲット144から読み出されたデータの転送がステップ408で開始する。そ
うでない場合、ブリッジは、トランザクションをターゲット・バス上で開始する
ために、ターゲット・バスを獲得しようと試み続けることができる。
り返された要求が開始バス上で受信されたとき、次いで、ブロック416で、制
御レジスタ130で指定された完了制御格納条件を満たすために十分な読み出し
データがキューで受信されているかどうかについての判断が行われる。そうでな
い場合、ブロック406で、イニシエータに再試行が知らされる。その間に、ブ
ロック408で、データをターゲットからキュー122へ転送し続けることがで
きる。
トから読み出された十分な量のデータを受信している場合、繰り返された要求を
受け入れることができ、トランザクションのために読み出されたデータをキュー
からイニシエータへ、好ましくは単一の読み出しアクセスで転送しようとするこ
とによって、開始バス上での読み出しトランザクションを完了させることができ
る。
件の関数として変動させることによって、ユーザがブリッジ性能を調整して、ブ
リッジをその周囲の環境によりよく適合させることができる。たとえば、データ
・バックアップなどの大容量記憶装置の応用例を考察すると、この場合はイニシ
エータが、メモリ・コントローラであるターゲット144からデータを読み出す
ためにシークするディスク・コントローラである。この場合のイニシエータは、
待ち時間とは関係がない可能性があるが、むしろ高いスループットが望まれる。
したがって、ユーザは、制御レジスタ130のメモリ読み出し完了制御部を、相
対的に大量のデータを指示するように構成するであろう。この方法で、待ち時間
の増大を犠牲にして、より多くのデータをイニシエータへ単一アクセスで転送し
て、トランザクションを完了することができる。
ンテリジェントI/Oサブシステム510の構成要素として使用することができ
る。I/Oサブシステム510は、第3のバス(ローカル・バス516)上のサ
ブシステム・プロセッサ512およびメモリ・コントローラ514を特徴とする
。ローカル・バスは第1次521および第2次522PCIバスに、それぞれア
ドレス変換ユニット(ATU)526および528を通じて結合される。I/O
サブシステム510は単一のICとして実施することができ、ネットワーク・サ
ーバ・マザーボードなどのシステムの応用例の一部としても使用することができ
る。マザーボードは、I/Oサブシステム510およびPCIバス521および
522に加えて、第1次バス521に結合されたホスト・プロセッサおよびメモ
リ、および、第2次バス522に結合された1つまたは複数のネットワーク・イ
ンタフェース・コントローラを含む。ネットワーク・コントローラは、図1のタ
ーゲット144のいくつかのインスタンスによって示すことができる。I/Oサ
ブシステム510のブリッジ100を上述のように調整して、ネットワーク・サ
ーバ・マザーボードの性能を向上させるためにその待ち時間を最適化することが
できる。
テムを対象としており、データ・キューの深度および特定のシステム応用例を考
慮してブリッジの性能を調整することができる。もちろん、本発明の実施形態は
、構造および実装において他の変形形態を受けることがある。たとえば、制御レ
ジスタ130のビットはプログラミング可能(読み出しおよび書き込み)にする
ことができ、あるいは、一度だけプログラミング可能(プログラミング可能な読
み出し専用メモリ)、回路内でプログラミング可能(フラッシュ・メモリなど)
、または検査ビット(ICの検査バッチ中にプログラミング可能であるが、その
後に読み出し専用製品として固定される)にもすることができる。制御レジスタ
130には、ホスト・プロセッサ148(図1参照)によって、あるいは、図5
のI/Oサブシステム510の実施形態のサブシステム・プロセッサ510によ
って、アクセスすることができる。
のトリガ・ポイント/格納条件を表す2ビットを有するが、別法としてより多数
のビットを使用することができ、したがって、より細かい細分性で、ブリッジお
よび周辺のコンピュータ・システムの性能を調整することが可能となる。
許請求の範囲およびそれらの合法的な均等物によって決定されるべきである。
示す図である。
って実行されるステップの流れ図である。
って実行されるステップの流れ図である。
って実行されるステップを示す図である。
ェントI/Oサブシステムのブロック図である。
Claims (23)
- 【請求項1】 第1および第2のバス・インタフェースと、 前記第1のバス・インタフェースを介して開始されたトランザクションの一部
として、前記第1および第2のバス・インタフェースの間で転送されるデータを
格納するキューと、 前記トランザクション中に前記キューによって満たされる、少なくとも1つの
格納条件を表す制御レジスタと を含むブリッジ。 - 【請求項2】 前記ブリッジが書き込み要求を受け入れる前に、前記格納条
件が前記キューによって満たされる請求項1に記載のブリッジ。 - 【請求項3】 前記書き込み要求が受け入れられる前に、前記制御レジスタ
が、前記キューで使用可能な空間の量を指定する複数のビットを有する請求項2
に記載のブリッジ。 - 【請求項4】 前記ブリッジが前記第2のバス・インタフェースを介して第
2のバスの制御を要求する前に、前記格納条件が前記キューによって満たされる
請求項1に記載のブリッジ。 - 【請求項5】 前記第2のバスが、書き込みトランザクションの一部として
データを転送することが要求される前に、前記制御レジスタが前記キューに格納
される前記データの量を表す複数のビットを有する請求項4に記載のブリッジ。 - 【請求項6】 前記第1のバス・インタフェースを介して開始された読み出
し要求の後に続く後続の読み出し要求に応答して、前記データが前記キューから
前記第1のバス・インタフェースへ転送される前に、前記格納条件が前記キュー
によって満たされる請求項1に記載のブリッジ。 - 【請求項7】 前記後続の読み出し要求に応答して、前記データが前記イニ
シエータに転送される前に、前記制御レジスタが、前記キューに格納されるデー
タの量を表す少なくとも1つのビットを含む請求項6に記載のブリッジ。 - 【請求項8】 前記ブリッジがPCIブリッジであり、繰り返された読み出
し要求が、遅延された読み出しトランザクションの一部である請求項6に記載の
ブリッジ。 - 【請求項9】 前記ブリッジがPCIブリッジであり、前記キューが、ポス
トされたメモリ書き込みキューである請求項1に記載のブリッジ。 - 【請求項10】 前記キューが、前記データを格納するためのFIFOデバ
イスを含む請求項1に記載のブリッジ。 - 【請求項11】 前記制御レジスタが、部分的に読み出し可能でも書き込み
可能でもある請求項1に記載のブリッジ。 - 【請求項12】 前記ブリッジに、第1のバス・インタフェースで受信され
たメモリ書込みと無効化(MWI)要求を、第2のバス・インタフェースを介し
たメモリ書き込み要求として、転送させるための論理回路を含むブリッジ。 - 【請求項13】 前記論理回路がレジスタにビットを含む、請求項12に記
載のブリッジ。 - 【請求項14】 前記レジスタが、部分的に読み出し可能で、書き込み可能
でもある請求項13に記載のブリッジ。 - 【請求項15】 第1のコンピュータ・バス上のイニシエータを第2のコン
ピュータ・バス上のターゲットに結合するブリッジにおいて、前記ブリッジは、
第1の読み出し要求に応答して前記ターゲットから読み出されたデータを格納す
るキューを有し、前記ブリッジはさらに、前記ブリッジが前記ターゲットから読
み出したよりも少ないデータを要求する前記イニシエータに応答して、前記デー
タの要求されない部分を廃棄するように構成され、 前記第1の読み出し要求に応答して、前記ブリッジによって前記ターゲットか
ら読み出されるデータの最大量を表すための制御レジスタ を含む改良。 - 【請求項16】 前記制御レジスタが、部分的に読み出し可能でも書き込み
可能でもある、請求項15に記載の改良。 - 【請求項17】 開始バスをターゲット・バスに、データ・キューを通じて
結合するブリッジにおける、 書き込み要求を前記開始バス上で受信するステップと、 制御レジスタの内容を検査して、前記キューの非フル状態を判定するステップ
と、 前記キューが前記非フル状態でない場合に、再試行を前記開始バス上に信号で
送り、前記キューが前記非フル状態の場合に、書き込みアクセスを開始してデー
タを前記開始バスから前記キューへ転送するステップと を含む方法。 - 【請求項18】 制御レジスタの内容を検査する前記ステップが、前記書き
込み要求を受信することに応答して実行される請求項17に記載の方法。 - 【請求項19】 開始バスをターゲット・バスに、データ・キューを通じて
結合するブリッジにおける 書き込み要求を前記開始バス上で受信するステップと、 制御レジスタを検査することによって、前記キューの書き込み要求制御条件を
判定するステップと、 前記キューが前記書き込み要求制御条件を満たすまで、データを開始バスから
前記キューへ転送するステップと、 前記ターゲット・バスに、前記データを前記キューから前記ターゲット・バス
へ転送するように要求するステップと を含む方法。 - 【請求項20】 書き込み要求制御条件を判定する前記ステップが、前記書
き込み要求を受信することに応答して実行される請求項19に記載の方法。 - 【請求項21】 開始バス上のイニシエータをターゲット・バス上のターゲ
ットに、データ・キューを通じて結合するブリッジにおける、 読み出し要求を前記開始バス上で受信するステップと、 繰り返された読み出し要求が受信されるまで、読み出されたデータを前記ター
ゲットから前記キューへ転送するステップと、 制御レジスタを検査することによって、前記キューの完了制御条件を判定する
ステップと、 前記キューが前記完了制御条件を満たしている場合に、前記読み出されたデー
タを前記キューから前記イニシエータに転送することによって、前記繰り返され
た読み出し要求を完了するステップと を含む方法。 - 【請求項22】 完了制御条件を判定する前記ステップが、前記読み出し要
求を受信することに応答して実行される請求項21に記載の方法。 - 【請求項23】 第1次PCIバス、前記第1次バスに結合されたホスト・
プロセッサおよびホスト・メモリと、 第2次PCIバスと、 前記第2次バスに結合されたネットワーク・インタフェース・コントローラ(
NIC)と、前記第1次バスを前記第2次バスに結合するブリッジとを含むネッ
トワーク・サーバ・システムであって、前記ブリッジが、前記ホスト・プロセッ
サと前記NICの間のトランザクションの一部として、第1次および第2次バス
の間で転送されるデータを一時的に格納するキューと、前記トランザクション中
に前記キューによって満たされる少なくとも1つの格納条件を表す制御レジスタ
と を含むネットワーク・サーバ・システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/034,624 | 1998-03-04 | ||
US09/034,624 US6298407B1 (en) | 1998-03-04 | 1998-03-04 | Trigger points for performance optimization in bus-to-bus bridges |
PCT/US1999/004234 WO1999045470A2 (en) | 1998-03-04 | 1999-02-26 | Trigger points for performance optimization in bridges |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002506250A true JP2002506250A (ja) | 2002-02-26 |
JP2002506250A5 JP2002506250A5 (ja) | 2006-04-20 |
Family
ID=21877567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000534945A Pending JP2002506250A (ja) | 1998-03-04 | 1999-02-26 | バス間ブリッジの性能最適化のためのトリガ・ポイント |
Country Status (6)
Country | Link |
---|---|
US (1) | US6298407B1 (ja) |
JP (1) | JP2002506250A (ja) |
KR (1) | KR20010041519A (ja) |
AU (1) | AU2793599A (ja) |
DE (1) | DE19983026B4 (ja) |
WO (1) | WO1999045470A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7895375B2 (en) | 2007-02-13 | 2011-02-22 | Fujitsu Limited | Data transfer apparatus and data transfer method |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6584539B1 (en) * | 1999-03-19 | 2003-06-24 | Sony Corporation | Method and system for message broadcast flow control on a bus bridge interconnect |
US6581125B1 (en) * | 1999-05-14 | 2003-06-17 | Koninklijke Philips Electronics N.V. | PCI bridge having latency inducing serial bus |
US6625683B1 (en) * | 1999-08-23 | 2003-09-23 | Advanced Micro Devices, Inc. | Automatic early PCI transaction retry |
US6742074B2 (en) * | 1999-08-31 | 2004-05-25 | Micron Technology, Inc. | Bus to system memory delayed read processing |
US6801954B1 (en) * | 2000-02-25 | 2004-10-05 | Hewlett-Packard Development Company, L.P. | Method and apparatus to concurrently operate on multiple data movement transactions in a disk array subsystem |
US6807590B1 (en) * | 2000-04-04 | 2004-10-19 | Hewlett-Packard Development Company, L.P. | Disconnecting a device on a cache line boundary in response to a write command |
US6965939B2 (en) * | 2001-01-05 | 2005-11-15 | International Business Machines Corporation | Method and apparatus for processing requests in a network data processing system based on a trust association between servers |
US8041739B2 (en) * | 2001-08-31 | 2011-10-18 | Jinan Glasgow | Automated system and method for patent drafting and technology assessment |
JP2003108514A (ja) * | 2001-10-01 | 2003-04-11 | Matsushita Electric Ind Co Ltd | バスブリッジ |
DE60129448T2 (de) * | 2001-12-07 | 2008-04-10 | Renesas Technology Europe Ltd., Maidenhead | Busbrücke mit einem Burst-Übertragungsmodebus und einem Einzel-Übertragungsmodebus |
US20040003164A1 (en) * | 2002-06-27 | 2004-01-01 | Patrick Boily | PCI bridge and data transfer methods |
US7103701B2 (en) * | 2002-09-23 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | Memory bus interface |
US6950905B2 (en) * | 2003-02-20 | 2005-09-27 | Sun Microsystems, Inc. | Write posting memory interface with block-based read-ahead mechanism |
JP4892683B2 (ja) * | 2003-03-12 | 2012-03-07 | エスティー‐エリクソン、ソシエテ、アノニム | データを転送するためのデータ処理の装置および方法 |
US8595394B1 (en) * | 2003-06-26 | 2013-11-26 | Nvidia Corporation | Method and system for dynamic buffering of disk I/O command chains |
US8683132B1 (en) | 2003-09-29 | 2014-03-25 | Nvidia Corporation | Memory controller for sequentially prefetching data for a processor of a computer system |
US8356142B1 (en) | 2003-11-12 | 2013-01-15 | Nvidia Corporation | Memory controller for non-sequentially prefetching data for a processor of a computer system |
US8700808B2 (en) * | 2003-12-01 | 2014-04-15 | Nvidia Corporation | Hardware support system for accelerated disk I/O |
US7213094B2 (en) * | 2004-02-17 | 2007-05-01 | Intel Corporation | Method and apparatus for managing buffers in PCI bridges |
US8356143B1 (en) | 2004-10-22 | 2013-01-15 | NVIDIA Corporatin | Prefetch mechanism for bus master memory access |
US7593345B2 (en) * | 2004-12-30 | 2009-09-22 | Finisar Corporation | Altering latency for network testing |
US7487274B2 (en) * | 2005-08-01 | 2009-02-03 | Asic Architect, Inc. | Method and apparatus for generating unique identification numbers for PCI express transactions with substantially increased performance |
US7698493B2 (en) * | 2005-08-31 | 2010-04-13 | Ati Technologies, Inc. | Methods and apparatus for translating write request messages in a computing system |
WO2009028494A1 (ja) * | 2007-08-28 | 2009-03-05 | Nikon Corporation | 位置検出装置、位置検出方法、露光装置、およびデバイス製造方法 |
JP5112138B2 (ja) * | 2008-03-28 | 2013-01-09 | 株式会社日立製作所 | セッション管理方法、ストレージ装置、及び、計算機システム |
US8356128B2 (en) * | 2008-09-16 | 2013-01-15 | Nvidia Corporation | Method and system of reducing latencies associated with resource allocation by using multiple arbiters |
US8370552B2 (en) * | 2008-10-14 | 2013-02-05 | Nvidia Corporation | Priority based bus arbiters avoiding deadlock and starvation on buses that support retrying of transactions |
US8698823B2 (en) * | 2009-04-08 | 2014-04-15 | Nvidia Corporation | System and method for deadlock-free pipelining |
JP2011182314A (ja) * | 2010-03-03 | 2011-09-15 | Oki Semiconductor Co Ltd | データ中継装置及び方法 |
US8566496B2 (en) * | 2010-12-03 | 2013-10-22 | Lsi Corporation | Data prefetch in SAS expanders |
US8677031B2 (en) * | 2011-03-31 | 2014-03-18 | Intel Corporation | Facilitating, at least in part, by circuitry, accessing of at least one controller command interface |
JP5564019B2 (ja) * | 2011-08-26 | 2014-07-30 | 株式会社東芝 | ファイル転送装置およびその方法 |
US10425456B2 (en) | 2017-11-29 | 2019-09-24 | Bank Of America Corporation | Request processing system using a splitting engine |
US10419265B2 (en) | 2017-11-29 | 2019-09-17 | Bank Of America Corporation | Request processing system using a combining engine |
US11226910B2 (en) * | 2019-03-04 | 2022-01-18 | Qualcomm Incorporated | Ticket based request flow control |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0467248A (ja) * | 1990-07-06 | 1992-03-03 | Fujitsu Ltd | データ受信処理装置 |
JPH05289974A (ja) * | 1992-04-15 | 1993-11-05 | Nec Corp | データ転送方式 |
JPH08272735A (ja) * | 1995-03-29 | 1996-10-18 | Fujitsu Ltd | 情報処理装置 |
JPH0973430A (ja) * | 1995-09-05 | 1997-03-18 | Hitachi Ltd | バス調停システムおよびバスアービタならびにバス制御方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727537A (en) * | 1985-12-24 | 1988-02-23 | American Telephone And Telegraph Company | Flow control arrangement for the transmission of data packets to a communication network |
US5117486A (en) * | 1989-04-21 | 1992-05-26 | International Business Machines Corp. | Buffer for packetizing block of data with different sizes and rates received from first processor before transferring to second processor |
US5101477A (en) * | 1990-02-16 | 1992-03-31 | International Business Machines Corp. | System for high speed transfer of data frames between a channel and an input/output device with request and backup request count registers |
US5941964A (en) * | 1992-05-21 | 1999-08-24 | Intel Corporation | Bridge buffer management by bridge interception of synchronization events |
US5434872A (en) * | 1992-07-28 | 1995-07-18 | 3Com Corporation | Apparatus for automatic initiation of data transmission |
US5546546A (en) * | 1994-05-20 | 1996-08-13 | Intel Corporation | Method and apparatus for maintaining transaction ordering and arbitrating in a bus bridge |
US5687316A (en) * | 1994-07-29 | 1997-11-11 | International Business Machines Corporation | Communication apparatus and methods having P-MAC, I-MAC engines and buffer bypass for simultaneously transmitting multimedia and packet data |
US5548730A (en) * | 1994-09-20 | 1996-08-20 | Intel Corporation | Intelligent bus bridge for input/output subsystems in a computer system |
US5848249A (en) * | 1995-06-15 | 1998-12-08 | Intel Corporation | Method and apparatus for enabling intelligent I/O subsystems using PCI I/O devices |
US5828865A (en) * | 1995-12-27 | 1998-10-27 | Intel Corporation | Dual mode bus bridge for interfacing a host bus and a personal computer interface bus |
US6072781A (en) * | 1996-10-22 | 2000-06-06 | International Business Machines Corporation | Multi-tasking adapter for parallel network applications |
-
1998
- 1998-03-04 US US09/034,624 patent/US6298407B1/en not_active Expired - Lifetime
-
1999
- 1999-02-24 AU AU27935/99A patent/AU2793599A/en not_active Abandoned
- 1999-02-26 JP JP2000534945A patent/JP2002506250A/ja active Pending
- 1999-02-26 DE DE19983026T patent/DE19983026B4/de not_active Expired - Fee Related
- 1999-02-26 KR KR1020007009689A patent/KR20010041519A/ko not_active Application Discontinuation
- 1999-02-26 WO PCT/US1999/004234 patent/WO1999045470A2/en not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0467248A (ja) * | 1990-07-06 | 1992-03-03 | Fujitsu Ltd | データ受信処理装置 |
JPH05289974A (ja) * | 1992-04-15 | 1993-11-05 | Nec Corp | データ転送方式 |
JPH08272735A (ja) * | 1995-03-29 | 1996-10-18 | Fujitsu Ltd | 情報処理装置 |
JPH0973430A (ja) * | 1995-09-05 | 1997-03-18 | Hitachi Ltd | バス調停システムおよびバスアービタならびにバス制御方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7895375B2 (en) | 2007-02-13 | 2011-02-22 | Fujitsu Limited | Data transfer apparatus and data transfer method |
Also Published As
Publication number | Publication date |
---|---|
WO1999045470A2 (en) | 1999-09-10 |
KR20010041519A (ko) | 2001-05-25 |
DE19983026T1 (de) | 2001-02-22 |
WO1999045470A3 (en) | 2000-03-02 |
DE19983026B4 (de) | 2010-12-23 |
US6298407B1 (en) | 2001-10-02 |
AU2793599A (en) | 1999-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002506250A (ja) | バス間ブリッジの性能最適化のためのトリガ・ポイント | |
US6260095B1 (en) | Buffer reservation method for a bus bridge system | |
US5884050A (en) | Mechanism for high bandwidth DMA transfers in a PCI environment | |
US5623700A (en) | Interface circuit having zero latency buffer memory and cache memory information transfer | |
US6460108B1 (en) | Low cost data streaming mechanism | |
US5740466A (en) | Flexible processor-driven SCSI controller with buffer memory and local processor memory coupled via separate buses | |
US6754737B2 (en) | Method and apparatus to allow dynamic variation of ordering enforcement between transactions in a strongly ordered computer interconnect | |
US6170030B1 (en) | Method and apparatus for restreaming data that has been queued in a bus bridging device | |
US5283883A (en) | Method and direct memory access controller for asynchronously reading/writing data from/to a memory with improved throughput | |
EP1723535B1 (en) | Method and apparatus for supporting delayed transactions of multi-function pci devices in pci bridges | |
US5579530A (en) | Method and apparatus for dynamically allocating access time to a resource shared between a peripheral bus and a host bus by dynamically controlling the size of burst data transfers on the peripheral bus | |
US5269005A (en) | Method and apparatus for transferring data within a computer system | |
US6021473A (en) | Method and apparatus for maintaining coherency for data transaction of CPU and bus device utilizing selective flushing mechanism | |
US6092141A (en) | Selective data read-ahead in bus-to-bus bridge architecture | |
WO1994008303A1 (en) | Method and apparatus for non-snoop window reduction | |
JP2001075918A (ja) | 可変優先順位およびフェアネスを使用する、機能強化されたバス・アービタ | |
JPS6122333B2 (ja) | ||
JP2002366507A (ja) | 複数チャネルdmaコントローラおよびプロセッサシステム | |
US6631437B1 (en) | Method and apparatus for promoting memory read commands | |
JP3266470B2 (ja) | 強制順序で行う要求毎ライト・スルー・キャッシュを有するデータ処理システム | |
US6226704B1 (en) | Method and apparatus for performing bus transactions orderly and concurrently in a bus bridge | |
US8209453B2 (en) | Arbiter, a system and a method for generating a pseudo-grant signal | |
US6098113A (en) | Apparatus and method for address translation and allocation for a plurality of input/output (I/O) buses to a system bus | |
US20030131175A1 (en) | Method and apparatus for ensuring multi-threaded transaction ordering in a strongly ordered computer interconnect | |
US6546448B1 (en) | Method and apparatus for arbitrating access to a PCI bus by a plurality of functions in a multi-function master |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060217 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080729 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080819 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081119 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090728 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091026 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100316 |