JP2000357154A - Pci−xまたはpciブリッジ性能を向上させるためのバッファ管理 - Google Patents

Pci−xまたはpciブリッジ性能を向上させるためのバッファ管理

Info

Publication number
JP2000357154A
JP2000357154A JP2000145980A JP2000145980A JP2000357154A JP 2000357154 A JP2000357154 A JP 2000357154A JP 2000145980 A JP2000145980 A JP 2000145980A JP 2000145980 A JP2000145980 A JP 2000145980A JP 2000357154 A JP2000357154 A JP 2000357154A
Authority
JP
Japan
Prior art keywords
transaction
available
buffer
pci
buffer space
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.)
Granted
Application number
JP2000145980A
Other languages
English (en)
Other versions
JP3477693B2 (ja
Inventor
Allen Kelly Richard
リチャード・アレン・ケリー
Marvin Neil Day
ダイー・マーヴィン・ニール
Dean Whiteley Laurence
ローレンス・ディーン・ホウィットリー
Girerumo Yanesu Adaruberuto
アダルベルト・ギレルモ・ヤネス
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2000357154A publication Critical patent/JP2000357154A/ja
Application granted granted Critical
Publication of JP3477693B2 publication Critical patent/JP3477693B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/38Information transfer, e.g. on 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4059Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses

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)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 PCI−XまたはPCIブリッジ性能を向上
させるバッファ管理技術を提供する。 【解決手段】 トランザクションが処理される前に、使
用可能空きブロックを設定する。使用可能実バッファ・
スペースが解放されて使用可能空きブロックに達するの
を待機する。トランザクション・サイズが使用可能実バ
ッファ・スペースより大きくない場合にトランザクショ
ンを受け入れ、トランザクション・サイズが使用可能空
きブロックより小さいが使用可能実バッファ・スペース
より大きいときにトランザクションを再試行し、トラン
ザクション・サイズが使用可能空きブロックより大きく
かつ使用可能バッファ・スペースより大きいときに、使
用可能バッファ・スペースが使用可能空きブロック以上
になるまで、トランザクションを受け入れる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般にPCI−X
またはPCIブリッジ性能を向上させるためのバッファ
管理に関し、詳細にはPCI−XまたはPCIブリッジ
を介してトランザクションを管理するためのシステムお
よび方法に関する。さらに詳細には、本発明は、PCI
−XまたはPCIブリッジを介して、トランザクション
・サイズに合わせて使用可能なバッファを待機し、増加
させ、または最適化し、あるいはそれらを組み合わせて
実行することに関する。本明細書においては、PCI−
XまたはPCIブリッジという用語は、2つのPCIバ
スに接続する、PCI−Xto PCI−XまたはPC
I to PCIブリッジを指す。PCI−Xは、PC
Iバスの高性能拡張であり、現在開発中のものである。
【0002】
【従来の技術】PCI(Peripheral Component Interco
nnect)仕様が開発され、ホスト・コンピュータ、シス
テム・メモリ、およびバス上の装置、プラグイン・カー
ド、または統合アダプタなどの様々な装置またはアダプ
タの間の通信を行うために改良され続けてきた。PCI
仕様は、1998年12月に発行されたPCI仕様バー
ジョン2.2に詳述されている。PCI−Xは、PCI Sp
ecial Interest Group(PCISIG)によって、19
99年中旬の発行を目標とするPCI仕様の補遺として
開発中の仕様案である。PCI−Xは後方互換性を有す
ることを意図している。したがって、両方のブリッジ・
インタフェースは、PCIまたはPCI−Xモード(P
CI to PCI、PCI−X to PCI−X、
PCI to PCI−X、PCI−X to PC
I)のいずれかで動作可能でなければならない。これら
の仕様を、参照により本明細書に組み込む。
【0003】入出力(I/O)トランザクションや直接
メモリ・アクセス(DMA)トランザクションなどの様
々なトランザクションは、ホスト・コンピュータおよび
様々な装置の間、および入出力装置およびシステム・メ
モリの間のPCI−XまたはPCIブリッジを介して発
生する。このようなブリッジを介した遅延トランザクシ
ョンには、マスタが再試行の受信をやめてトランザクシ
ョンが完了するまで、マスタがトランザクションを繰り
返すことが必要である。しかし、遅延トランザクション
に伴う問題は、適切なバッファが使用可能になるか、ま
たは要求されたデータをマスタが受信し、その結果ホス
ト・ブリッジを介してトランザクションがタイアップま
たはバックアップされるまで、マスタが繰り返しかつ待
機し続けなければならないことである。このようなブリ
ッジを介した分割トランザクションでは、マスタにトラ
ンザクションを待機かつ繰り返させることを避け、ブリ
ッジによってコマンドが受け入れ可能となり、ブリッジ
がマスタとして動作して結果(データ)を後で戻すこと
が可能となる。しかし、分割トランザクションは、大き
いトランザクションをより小さいトランザクションに分
解する結果をもたらす可能性がある。ブリッジを介して
処理された小さいトランザクションは、典型的には、バ
スの使用において大きいトランザクションより効率的で
はない。
【0004】たとえば、現行のPCI−X仕様案は、分
割読み取り要求のサイズ(最大4kバイト)のプログラ
ミング機能を提供する。このPCI−X仕様案はさら
に、装置またはアダプタが発行できる最大数の未解決の
要求(最大32要求)を提供し、装置またはアダプタが
再試行なしに1つのバス・トランザクションで未解決の
読み取り完了を受け入れることも要求している。バス・
トランザクションは、アドレス・フェーズ、属性フェー
ズ、ターゲット応答フェーズ、1つまたは複数のデータ
・フェーズ、およびターンアラウンド・フェーズを含む
ことができる。PCIX−to−PCIX(PtP)ブ
リッジは、現行では、1ADB(ADBは、128バイ
トのアドレス境界上に位置合わせされる128バイトを
有するデータのブロック)がブリッジ・バッファ・スペ
ースで使用可能であるとき、読み取り完了トランザクシ
ョンまたはポストされたメモリ書き込みトランザクショ
ンを受け入れることが可能である。1ADBのバッファ
・スペースのこの可用性によって、PtPブリッジが読
み取り完了データの一部を受け入れ、次いで切断したと
き、より大きい読み取り完了がより小さい読み取り完了
に分解される結果となることがある。1ADBのトラン
ザクションがブリッジでバッファリングされるとき、こ
れらのトランザクションがこのブリッジの反対側に転送
され、単一のADB転送として実行される点で問題があ
る。これらの単一のADB転送では、データ受信中のバ
スおよびデータ転送中のバスの有効帯域幅が減少する。
【0005】この問題は、特にシステムがビジーのとき
悪化する。この問題はシステムがビジーのときに開始
し、システムがそれほどビジーでなくなるまで持続す
る。このような問題の一例を、図2を参照して説明す
る。PtPブリッジ22は、ブリッジ22が他のバス2
4へのアクセスを獲得してデータを最終宛先へ送ること
ができるようになるまで、バス20からデータを受信
し、格納するためのバッファを有する。図2は、PtP
ブリッジ22に必要なバッファリングのタイプを示す。
これらのタイプは、ポステド・メモリ書き込み(PM
W)バッファ30、分割読み取り完了(SRC)および
分割書き込み完了(SWC)バッファ32、分割読み取
り要求(SRR)および分割書き込み要求(SWR)バ
ッファ34である。PtPブリッジ22用のトランザク
ション・タイプは、ポステド・メモリ書き込み(PM
W)、分割読み取り完了(SRC)、分割書き込み完了
(SWC)、分割読み取り要求(SRR)、および分割
書き込み要求(SWR)である。分割完了はSRCまた
はSWCであり、分割要求はSRRまたはSWRであ
る。図2のバッファは、PCI−Xバス20(バス#
1)からPCI−Xバス24(バス#2)へのトランザ
クション用のものだけを示す。PCI−Xバス24(バ
ス#2)からPCI−Xバス20(バス#1)へのトラ
ンザクションについても類似のバッファが存在するが、
この問題を記述するにはただ1組のバッファで十分なの
で、図2には図示しない。
【0006】この問題は、PMWバッファ30またはS
RCバッファ32のいずれかで発生する可能性がある。
重要な問題は、固定サイズの固定バッファではなく、単
一のADBサイズのバッファを管理する結果である。た
とえば、SRCバッファ32は、2kバイトのデータ
(16ADB)を保持するように構成され、SRCバッ
ファ32は、それぞれ4ADBの4つの別々のトランザ
クションからなるデータで満たされる。SRCバッファ
32が満たされるのは、バス#1(バス20)がバス#
2(バス24)より高速であるか、あるいはバス#2が
いくつかの読み取り要求で非常にビジーとなる結果であ
る。PtPブリッジ22はバス#2へのアクセスを許可
され、PtPブリッジ22はSRCバッファ32から1
つのSRCの転送を開始する。1ADBのデータがバス
#2に転送されたとき、PtPブリッジ22がバス#1
からSRCの受け入れを開始する。バス#1はバス#2
より高速なので、ブリッジ22がバス#2への第2のA
DBを空にすることができるようになる前に、SRCバ
ッファ32の使用可能なADBが満たされる。したがっ
て、ブリッジ22は、第1のADB境界でバス#1トラ
ンザクションを切断する必要がある。ブリッジ22がA
DB分の各データをバス#2へ転送するシーケンスが続
行するにつれて、SRCバッファ32内のADBが解放
され、サイズが1ADBのみであるSRCトランザクシ
ョンによって満たされ、続いて切断される。次いで、ブ
リッジ32内のSRCバッファ32は、サイズが1AD
BのSRCトランザクションで満たされるが、これは、
転送されたこれらのトランザクションを受信するバスが
効率的に使用されない。
【0007】したがって、PCI−XまたはPCIブリ
ッジ性能を向上させるためのバッファ管理を提供するこ
とが、有利かつ望ましい。PCI−XまたはPCIブリ
ッジを介してトランザクションを管理するシステムおよ
び方法を提供することが、有利かつ望ましい。また、P
CI−XまたはPCIブリッジを介して、トランザクシ
ョン・サイズに合わせて使用可能バッファ・スペースを
待機し、増加させ、または最適化し、あるいはそれらを
組み合わせて実行し、トランザクション・サイズおよび
使用可能バッファ・スペースに応じてそれぞれのトラン
ザクションの最適な処理のタイミング調整を行う、シス
テムおよび方法を提供することも有利かつ望ましい。
【0008】
【発明が解決しようとする課題】したがって、本発明の
一目的は、PCI−XまたはPCIブリッジ性能を向上
させるためのバッファ管理を提供することである。
【0009】本発明の別の目的は、PCI−XまたはP
CIブリッジを介してトランザクションを管理するシス
テムおよび方法を提供することである。
【0010】本発明のさらなる目的は、PCI−Xまた
はPCIブリッジを介して、トランザクション・サイズ
に合わせて使用可能バッファ・スペースを待機し、増加
させ、または最適化し、あるいはそれらを組み合わせて
実行し、トランザクション・サイズおよび使用可能バッ
ファ・スペースに応じてそれぞれのトランザクションを
最適に処理するためのタイミング調整を行う、システム
および方法を提供することである。
【0011】
【課題を解決するための手段】前述の目的は、以下に記
載するようにして達成される。PCI−XまたはPCI
ブリッジ性能を向上させるためのバッファ管理。PCI
−XまたはPCIブリッジを介してトランザクションを
管理するシステムおよび方法、および、PCI−Xまた
はPCIブリッジを介して、トランザクション・サイズ
に合わせて使用可能なバッファを待機し、増加させ、ま
たは最適化し、あるいはそれらを組み合わせて実行する
システムおよび方法。トランザクションはブリッジを介
して処理され、ブリッジは、トランザクションの受信お
よび処理を行うために使用される、使用可能実バッファ
・スペースを備えたバッファを有する。トランザクショ
ンのトランザクション・サイズが決定される。このシス
テムおよび方法は、使用可能空きブロックを設定する。
これは、ある大きいサイズのトランザクション(多数の
ADB)が処理される前に解放すべき、使用可能バッフ
ァ・スペースの設定量である。このシステムおよび方法
は、使用可能実バッファ・スペースが解放されて使用可
能空きブロックに達するのを待機する。ある大きいトラ
ンザクションは、使用可能実バッファ・スペースが使用
可能空きブロックに達したときに処理される。トランザ
クションの処理には、トランザクション・サイズが使用
可能実バッファ・スペースより大きくない場合にトラン
ザクションを受け入れ、トランザクション・サイズが使
用可能空きブロックより小さいが使用可能実バッファ・
スペースより大きいときに、ブリッジによって処理する
ためにトランザクションを再試行し、トランザクション
・サイズが使用可能空きバッファおよび使用可能空きブ
ロックの両方より大きいときに、使用可能なバッファが
使用可能空きブロック以上になるまでトランザクション
を再試行し、次いでトランザクションを受け入れ、次い
で実際に使用可能なバッファが満たされるかまたは転送
の最後に来ると切断することが含まれる。
【0012】
【発明の実施の形態】本発明は、PCI−XまたはPC
Iブリッジ性能を向上させる際のバッファ管理のシステ
ムおよび方法である。本発明は、PCI−XまたはPC
Iブリッジを介して、トランザクション・サイズに合わ
せて使用可能バッファ・スペースを待機し、増加させ、
または最適化し、あるいはそれらを組み合わせて実行す
ること、および、トランザクション・サイズおよび使用
可能バッファ・スペースに応じてそれぞれのトランザク
ションを最適に処理するためのタイミング調整を行うこ
とを開示する。本発明は、本明細書で開示された特定の
機器および方法に限定されるものでは決してなく、この
ようなブリッジを介して、トランザクション・サイズに
合わせて使用可能バッファ・スペースを待機し、増加さ
せ、または最適化し、あるいはそれらを組み合わせて実
行するいかなる適切なシステムまたは方法、および、そ
れぞれのトランザクションを最適に処理するためのタイ
ミング調整を提供するいかなる適切なシステムまたは方
法も、実施することができる。
【0013】ここでは図面、特に図1を参照すると、コ
ンピュータ・システム11および様々なインタフェース
接続された装置26の間のPCI−X性能を向上させる
ためのバッファ管理を提供する全体のシステム10が図
示されている。コンピュータ・システム11は、中央処
理装置(CPU)12、メモリ・コントローラ14、お
よびメモリ16を有する。インタフェース接続された装
置26は、装置D1、D2、D3、...DNを備え
る。コンピュータ・システム11は、PCI−X装置と
インタフェース接続できる周辺ホスト・バス(PHB)
インタフェース18を有する。PHBインタフェース1
8は、PCI−Xバス#1(バス20)と通信し、イン
タフェース連結されている。本明細書の記載を容易にす
るため、PCI−Xモードで動作することが可能なブリ
ッジによって生成されたPCIバスを、PCI−Xバス
と呼ぶ。バス#1はPCI−X to PCI−X(P
tP)ブリッジ22と通信し、インタフェース連結され
ており、ブリッジ22は、PCI−Xバス#2(バス2
4)と通信し、インタフェース連結されている。バス#
2は様々な装置26と通信し、インタフェース連結され
ている。
【0014】ここでは図面、特に図2を参照すると、バ
ス#1(バス20)とバス#2(バス24)の間で通信
し、インタフェース連結されているPtPブリッジ22
が、より詳細に示されている。PtPブリッジ22は様
々なタイプのバッファを有する。図示のバッファは、ポ
ステド・メモリ書き込み(PMW)バッファ30、分割
読み取り完了(SRC)および分割書き込み完了(SW
C)バッファ32、分割読み取り要求(SRR)および
分割書き込み要求(SWR)バッファ34である。上述
のように、PtPブリッジ22用のトランザクション・
タイプは、ポステド・メモリ書き込み(PMW)、分割
読み取り完了(SRC)、分割書き込み完了(SW
C)、分割読み取り要求(SRR)、および分割書き込
み要求(SWR)である。分割完了は、SRCまたはS
WCであり、分割要求はSRRまたはSWRである。図
2のバッファは、PCI−Xバス20(バス#1)から
PCI−Xバス24(バス#2)へのトランザクション
についてのみ図示する。PCI−Xバス24(バス#
2)からPCI−Xバス20(バス#1)へのトランザ
クションについても類似のバッファが存在するが、本発
明を記載するにはただ1組のバッファで十分なので、図
2には図示しない。図2は、固定またはプログラム可能
にすることができる使用可能空きブロック・レジスタ3
1、および使用可能なバッファをADBの数で追跡する
使用可能空きバッファ・カウンタ33も図示する。本発
明は、本明細書で特に開示した特定のバッファ、トラン
ザクション方向、またはトランザクション・タイプに限
定されるものでは決してなく、いかなる適切なバッフ
ァ、トランザクション方向、またはトランザクション・
タイプも、本発明で実施または使用することができる。
【0015】図1および図2を参照すると、システム1
0は、PCI−XまたはPCIブリッジを介して、トラ
ンザクション・サイズに合わせて使用可能バッファ・ス
ペースを増加させまたは最適化し、あるいはその両方を
実行するように構成され、かつトランザクション・サイ
ズおよび使用可能実バッファ・スペースに応じてそれぞ
れのトランザクションを最適に処理するためにタイミン
グ調整するように構成される。PtPブリッジ22は、
それを通じて様々なトランザクションを処理または転送
する前に、ブリッジ22内の使用可能なバッファまたは
バッファ・スペースが少なくとも最適な数の使用可能な
スペース(使用可能なバイトなど)を有するように制御
し、それを待機する。図1および図2に示すようなシス
テム10のハードウェアは、トランザクションにおける
このような増加および最適化を実施するように構成され
る。
【0016】図1および図2を参照すると、トランザク
ション・サイズを1ADBから4ADB以上に増加させ
ることができる。ただし、ADBは、128バイトのア
ドレス境界上に位置合わせされる128バイトを有する
データのブロックとして定義される。このようなトラン
ザクション・サイズの増加によって、バス上のオーバー
ヘッド・フェーズの割合が低減され、したがってデータ
転送速度が上がる。本発明では、確実に、より大きいト
ランザクションがバス#2に転送するために使用可能と
なり、その結果、バス#2がより効率的に使用できるよ
うに、部分的な分割完了を受け入れてバス#1から切断
する(すなわち、より大きいトランザクションを分解す
る)前に、スペースの設定量(4ADBのスペースな
ど)がSRCバッファ32などのバッファ内で使用可能
になるのをブリッジ22が待機することを必要とする。
【0017】最適または最高の性能を得るために分解が
行えるようになる前に、システム性能分析または他の手
段を使用して、最初に解放すべき使用可能なバッファ
(ADB単位)、すなわち使用可能空きブロック(AF
B)31の最適数を決定することができる。AFBのサ
イズは固定またはプログラム可能である。トランザクシ
ョン・サイズが、ブリッジ22内の使用可能なバッファ
数以下である場合、トランザクションは常にブリッジ2
2によって受け入れられるようになる。トランザクショ
ン・サイズがAFBより小さいが、使用可能なバッファ
数より大きい場合、トランザクションはブリッジ22に
よって再試行される。PCIまたはPCI−Xにおける
再試行とは、ターゲットがアクセスを要求するが、デー
タが転送されずに切断するということであり、受け入れ
られて、データが転送されるまでマスタがアクセスを繰
り返すことが必要である。トランザクション・サイズが
AFBより大きく、使用可能なバッファ数よりも大きい
場合、使用可能なバッファがAFB以上になるとトラン
ザクションが受け入れられるが、使用可能なバッファが
満たされるかまたはトランザクションの最後に来るとト
ランザクションが切断される(トランザクションがより
小さなトランザクションに分解される)。最適なAFB
サイズは、システム10によってサポートされる異なる
タイプのアプリケーション、システム構成および装置ま
たはアダプタによって変わる。また、バス#1からバス
#2へ発生するトランザクションでは、バス#2からバ
ス#1へ発生するトランザクションと比べてAFBサイ
ズが異なる可能性がある。
【0018】さらに、PCI−XまたはPCIブリッジ
を介してトランザクションを増加させ最適化するための
方法またはソフトウェア・アルゴリズムを提供すること
ができる。ここで図面、特に図3を参照すると、コンピ
ュータ・システム10および様々なインタフェース接続
された装置26の間のPCI−X性能を向上させる際
の、バッファ管理のためのアルゴリズム27が示されて
いる。本発明は、本明細書で開示した特定のアルゴリズ
ムに限定されるものでは決してなく、PCI−X性能を
向上させるためのいかなる適したバッファ管理アルゴリ
ズムも、本発明で使用することができる。アルゴリズム
27はブロック28で開始する。判断ブロック29で
は、アルゴリズム27が、バッファ(図2のバッファ3
0、32、または34など)内で、ADBスペースな
ど、いずれかの追加の使用可能スペースが解放されたか
どうかを判定する。このようなスペースが解放されてい
ない場合、アルゴリズム27は判断ブロック38へ移
る。しかし、このような追加のスペースが解放された場
合、アルゴリズム27はブロック36へ移り、ここで解
放されたADBの数だけ使用可能空きバッファ・カウン
タが増加され、次いでアルゴリズム27は判断ブロック
38へ移る。使用可能空きバッファ・カウンタは、使用
可能バッファ・スペースの数をADB単位でカウントす
るカウンタである。
【0019】判断ブロック38では、アルゴリズム27
は、バッファ内で実際に使用可能なスペースが解放され
て使用可能空きブロック(AFB)に達するのを待機し
ている、ブリッジ22への次の分割完了アクセスを探
す。使用可能空きブロック(AFB)は、トランザクシ
ョンの処理が開始する前に解放される使用可能バッファ
・スペースの設定量(すなわち、ADBの数)である。
次のアクセスが発生していない場合、アルゴリズム27
はループをたどって判断ブロック29へ戻り、バッファ
内でいずれかの追加のバッファ・スペースが再度解放さ
れたかどうかを判定する。一方、ブリッジ22に次のア
クセスが発生した場合、アルゴリズム27は判断ブロッ
ク39へ移行する。
【0020】判断ブロック39では、アルゴリズム27
は、いずれかの使用可能バッファ・スペースがあるかど
うかを判定する。使用可能バッファ・スペースがある場
合、アルゴリズム27は判断ブロック40へ移る。一
方、使用可能バッファ・スペースがない場合、トランザ
クションがブロック37で再試行され、アルゴリズム2
7は結合子Yを介して判断ブロック29へ移り、いずれ
かのバッファ・スペースが解放されたかどうかを判定す
る。
【0021】判断ブロック40では、アルゴリズム27
が、トランザクション・サイズが使用可能バッファ・ス
ペースの実際量以下であるかどうかを判定する。トラン
ザクション・サイズが使用可能バッファ・スペース以下
である場合、アルゴリズム27がブロック42へ移って
トランザクションを受け入れ、結合子Zを介してブロッ
ク50へ移り、そこで、受け入れられたトランザクショ
ンによって満たされたADBの数だけ使用可能空きバッ
ファ・カウンタが減少される。次いで、アルゴリズム2
7は結合子Yを介してループをたどって判断ブロック2
9へ戻り、バッファ内でいずれかの追加のバッファ・ス
ペースが再度解放されたかどうかを判定する。
【0022】一方、判断ブロック40で、トランザクシ
ョン・サイズが使用可能なバッファの実際量以下でない
場合、アルゴリズム27は判断ブロック44へ移る。判
断ブロック44では、アルゴリズム27は、トランザク
ション・サイズがAFBレジスタ内の使用可能空きブロ
ック(AFB)未満であるかどうかを判定する。AFB
レジスタは、ADBの数による判断設定を示すプログラ
ム可能なレジスタであり、つまり、AFBレジスタはA
FB値で設定され、これは、トランザクションの処理が
開始する前に解放すべき使用可能バッファ・スペースの
量(すなわち、ADBの数)である。したがって、判断
ブロック44でトランザクション・サイズがAFB未満
でない場合、アルゴリズム27はブロック43へ移り、
使用可能なバッファがAFB以上であるかどうかを判定
する。これが真の場合、アルゴリズム27がブロック4
6へ移ってトランザクションを受け入れ、次いで、実際
に使用可能なバッファ数が満たされたときまたはトラン
ザクション転送の最後が発生したとき、アルゴリズム2
7はブロック48へ移ってバス(バス#1など)から切
断する。次いで、アルゴリズム27はブロック50へ移
り、内部で受け入れられたトランザクションによって満
たされたADBの数だけ使用可能空きバッファ・カウン
タを減分する。しかし、判断ブロック44で、トランザ
クション・サイズがAFB未満である場合、アルゴリズ
ム27はブロック52へ移り、そこでブリッジ22がア
クセスを再試行し、後でアクセスを繰り返すようマスタ
に指示する。次いで、アルゴリズム27はループをたど
ってブロック34へ戻り、バッファ内でいずれかの追加
のバッファ・スペースが再度解放されたかどうかを判定
する。しかし、判断ブロック43で、使用可能なバッフ
ァがAFB以上でなかった場合、アルゴリズム27はブ
ロック52へ移り、そこでトランザクションが再試行さ
れる。
【0023】したがって、本発明は、PCI−Xまたは
PCIブリッジを介して、トランザクション・サイズに
合わせて使用可能バッファ・スペースを待機し、増加さ
せ、または最適化し、あるいはそれらを組み合わせて実
行し、トランザクション・サイズおよび使用可能バッフ
ァ・スペースに応じてそれぞれのトランザクションを最
適に処理するためにタイミング調整するシステムおよび
方法を開示する。
【0024】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0025】(1)PCI−XまたはPCIブリッジの
性能を向上させるバッファ管理方法であって、トランザ
クションが前記ブリッジを介して処理され、前記ブリッ
ジが前記トランザクションの受信および処理に使用され
る使用可能実バッファ・スペースを備えたバッファを有
し、前記トランザクションのトランザクション・サイズ
を決定するステップと、ある大きいサイズのトランザク
ションが処理される前に解放すべき使用可能バッファ・
スペースの設定量である、使用可能空きブロックを設定
するステップと、前記使用可能実バッファ・スペースが
解放され、前記使用可能空きブロックに達するのを待機
するステップと、前記使用可能実バッファ・スペースが
前記使用可能空きブロックに達したときに、前記トラン
ザクション・サイズが前記使用可能実バッファ・スペー
スより大きいかどうかを判定するステップと、前記トラ
ンザクション・サイズが前記使用可能実バッファ・スペ
ースより大きくない場合に、前記トランザクションを受
け入れるステップと、前記トランザクション・サイズが
前記使用可能空きブロックより小さいが前記使用可能実
バッファ・スペースより大きいときに、前記ブリッジに
よって前記トランザクションを再試行するステップと、
前記トランザクション・サイズが前記使用可能空きブロ
ックより大きくかつ前記使用可能バッファ・スペースよ
り大きいときに、前記使用可能バッファ・スペースが前
記使用可能空きブロック以上になるまで、前記ブリッジ
によって前記トランザクションを再試行するステップ
と、前記トランザクションを受け入れ、次いで前記使用
可能実バッファ・スペースが満たされるかまたは前記ト
ランザクションの最後に来たときに切断するステップと
を含む方法。 (2)前記ある大きいサイズのトランザクションが処理
される前に解放すべき、前記使用可能バッファ・スペー
スの前記設定量をプログラミングするために、使用可能
空きブロック・レジスタを使用するステップをさらに含
む、上記(1)に記載の方法。 (3)前記バッファ内の前記使用可能実バッファ・スペ
ースを追跡するために、使用可能空きバッファ・カウン
タを使用するステップをさらに含む、上記(1)に記載
の方法。 (4)前記待機するステップが、前記バッファ内でいず
れかの追加のバッファ・スペースが解放されたかどうか
を判定するステップと、前記バッファ内で前記追加のバ
ッファ・スペースが解放された場合に、前記使用可能空
きバッファ・カウンタ内で追跡された前記使用可能実バ
ッファ・スペースを、前記追加のバッファ・スペースだ
け増分させるステップと、次のアクセスが発生したかど
うか、および前記使用可能実バッファ・スペースが前記
使用可能空きブロックに達したかどうかを判定するステ
ップとをさらに含む、上記(3)に記載の方法。 (5)前記トランザクションが受け入れられたとき、前
記使用可能空きバッファ・カウンタ内で追跡された前記
使用可能実バッファ・スペースを、満たされたバッファ
・スペースの量だけ減少させるステップをさらに含む、
上記(3)に記載の方法。 (6)PCI−XまたはPCIブリッジの性能を向上さ
せるバッファ管理方法であって、トランザクションが前
記ブリッジを介して処理され、前記ブリッジが前記トラ
ンザクションの受信および処理に使用される使用可能実
バッファ・スペースを備えたバッファを有し、前記トラ
ンザクションのトランザクション・サイズを決定するス
テップと、ある大きいサイズのトランザクションが処理
される前に解放すべき使用可能バッファ・スペースの設
定量である、使用可能空きブロックを設定するステップ
と、前記使用可能実バッファ・スペースが解放され、前
記使用可能空きブロックに達するのを待機するステップ
と、前記使用可能実バッファ・スペースが前記使用可能
空きブロックに達したときに、前記トランザクションを
処理するステップとを含む方法。 (7)前記処理するステップが、前記トランザクション
・サイズが前記使用可能実バッファ・スペースより大き
くない場合に、前記トランザクションを受け入れるステ
ップと、前記トランザクション・サイズが前記使用可能
空きブロックより小さいが前記使用可能実バッファ・ス
ペースより大きいときに、前記ブリッジによって処理す
るために前記トランザクションを再試行するステップ
と、前記トランザクション・サイズが前記使用可能空き
ブロックより大きくかつ前記使用可能バッファ・スペー
スより大きいときに、前記使用可能バッファ・スペース
が前記使用可能空きブロック以上になるまで、前記ブリ
ッジによって前記トランザクションを再試行するステッ
プと、前記トランザクションを受け入れ、次いで前記使
用可能実バッファ・スペースが満たされるかまたは前記
トランザクションの最後に来たときに切断するステップ
とをさらに含む、上記(6)に記載の方法。 (8)PCI−XまたはPCIブリッジの性能を向上さ
せるバッファ管理システムであって、トランザクション
が前記ブリッジを介して処理され、前記ブリッジが前記
トランザクションの受信および処理に使用される使用可
能実バッファ・スペースを備えたバッファを有し、PC
I−XまたはPCIインタフェースを有するコンピュー
タ・システムと、前記PCI−XまたはPCIインタフ
ェースにインタフェース結合された第1のPCI−Xま
たはPCIバスと、前記PCI−XまたはPCIバスに
インタフェース結合されたPCI−XまたはPCIブリ
ッジと、前記PCI−XまたはPCIブリッジにインタ
フェース結合された第2のPCI−XまたはPCIバス
と、前記第2のPCI−XまたはPCIバスにインター
フェース結合された装置とを備え、ある大きいサイズの
トランザクションが処理される前に解放すべき使用可能
バッファ・スペースの設定量である、使用可能空きブロ
ックを設定し、前記使用可能実バッファ・スペースが解
放されて前記使用可能空きブロックに達するのを待機
し、前記使用可能実バッファ・スペースが前記使用可能
空きブロックに達したときに前記トランザクションを処
理するシステム。 (9)前記トランザクション・サイズが前記使用可能実
バッファ・スペースより大きくない場合に前記トランザ
クションを受け入れ、前記トランザクション・サイズが
前記使用可能空きブロックより小さいが前記使用可能実
バッファ・スペースより大きいときに、前記ブリッジに
よって処理するために前記トランザクションを再試行
し、前記トランザクション・サイズが前記使用可能空き
ブロックより大きくかつ前記使用可能バッファ・スペー
スより大きいときに、前記使用可能バッファ・スペース
が前記使用可能空きブロック以上になるまで、前記ブリ
ッジによって前記トランザクションを再試行し、かつ前
記トランザクションを受け入れ、次いで前記使用可能実
バッファ・スペースが満たされるかまたは前記トランザ
クションの最後に来たときに切断することによって、前
記トランザクションを処理する、上記(8)に記載のシ
ステム。 (10)前記コンピュータ・システムに結合された使用
可能空きブロック・レジスタであって、前記ある大きい
サイズのトランザクションが処理される前に解放すべき
前記使用可能バッファ・スペースの設定量でプログラミ
ングされる、使用可能空きブロック・レジスタをさらに
含む、上記(8)に記載のシステム。 (11)前記コンピュータ・システムに結合された使用
可能空きバッファ・カウンタであって、前記バッファ内
で前記使用可能実バッファ・スペースを追跡するための
使用可能空きバッファ・カウンタをさらに含む、上記
(8)に記載のシステム。 (12)前記各ブリッジが、前記トランザクションを処
理するためのバッファをさらに含む、上記(8)に記載
のシステム。 (13)前記バッファがポストされたメモリ書き込み
(Posted Memory Write)バッファである、上記(1
2)に記載のシステム。 (14)前記バッファが分割読み取り完了バッファおよ
び分割書き込み完了バッファである、上記(12)に記
載のシステム。 (15)前記バッファが分割読み取り要求バッファおよ
び分割書き込み要求バッファである、上記(12)に記
載のシステム。 (16)バッファ管理システムであって、使用可能実バ
ッファ・スペースを備えたバッファを有し、トランザク
ションのトランザクション・サイズを決定することを含
めてトランザクションを受信し処理するためのPCI−
XまたはPCIブリッジと、ある大きいサイズのトラン
ザクションが処理される前に解放すべき使用可能バッフ
ァ・スペースの設定量である、使用可能空きブロックを
表す値を含むレジスタと、前記使用可能実バッファ・ス
ペースが解放されて前記使用可能空きブロックに達する
ときを決定するカウンタとを含み、前記使用可能実バッ
ファ・スペースが前記使用可能空きブロックに達したと
きに、前記ブリッジが前記トランザクションを処理す
る、バッファ管理システム。
【図面の簡単な説明】
【図1】コンピュータ・システムと様々なインタフェー
ス接続された装置の間のPCI−X性能を向上させるた
めのバッファ管理を提供するために使用する、システム
全体のブロック図である。
【図2】内部に含まれるバッファを示す、PCI−X
to PCI−X(PtP)ブリッジの一例のブロック
図である。
【図3】コンピュータ・システムと様々なインタフェー
ス接続された装置の間のPCI−X性能を向上させる際
の、バッファ管理アルゴリズムのフローチャートであ
る。
【符号の説明】
10 システム 18 PHBインタフェース 20 PCI−Xバス#1 22 PtPブリッジ 24 PCI−Xバス#2 26 インタフェース接続された装置 30 PMWバッファ 31 AFBレジスタ 32 SRC/SWCバッファ 33 使用可能空きバッファ・カウンタ 34 SRR/SWRバッファ
フロントページの続き (72)発明者 リチャード・アレン・ケリー アメリカ合衆国27502 ノースカロライナ 州アペックス ブルック・クリーク・ドラ イブ 200 (72)発明者 ダイー・マーヴィン・ニール アメリカ合衆国78681 テキサス州ラウン ドロックハイタワー・ドライブ 4604 (72)発明者 ローレンス・ディーン・ホウィットリー アメリカ合衆国55901 ミネソタ州ロチェ スター ナインス・アベニュー ノースウ ェスト 3314 (72)発明者 アダルベルト・ギレルモ・ヤネス アメリカ合衆国55902 ミネソタ州ロチェ スター サウスウエスト セブンス・アベ ニュー 824

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】PCI−XまたはPCIブリッジの性能を
    向上させるバッファ管理方法であって、トランザクショ
    ンが前記ブリッジを介して処理され、前記ブリッジが前
    記トランザクションの受信および処理に使用される使用
    可能実バッファ・スペースを備えたバッファを有し、 前記トランザクションのトランザクション・サイズを決
    定するステップと、 ある大きいサイズのトランザクションが処理される前に
    解放すべき使用可能バッファ・スペースの設定量であ
    る、使用可能空きブロックを設定するステップと、 前記使用可能実バッファ・スペースが解放され、前記使
    用可能空きブロックに達するのを待機するステップと、 前記使用可能実バッファ・スペースが前記使用可能空き
    ブロックに達したときに、前記トランザクション・サイ
    ズが前記使用可能実バッファ・スペースより大きいかど
    うかを判定するステップと、 前記トランザクション・サイズが前記使用可能実バッフ
    ァ・スペースより大きくない場合に、前記トランザクシ
    ョンを受け入れるステップと、 前記トランザクション・サイズが前記使用可能空きブロ
    ックより小さいが前記使用可能実バッファ・スペースよ
    り大きいときに、前記ブリッジによって前記トランザク
    ションを再試行するステップと、 前記トランザクション・サイズが前記使用可能空きブロ
    ックより大きくかつ前記使用可能バッファ・スペースよ
    り大きいときに、前記使用可能バッファ・スペースが前
    記使用可能空きブロック以上になるまで、前記ブリッジ
    によって前記トランザクションを再試行するステップ
    と、 前記トランザクションを受け入れ、次いで前記使用可能
    実バッファ・スペースが満たされるかまたは前記トラン
    ザクションの最後に来たときに切断するステップとを含
    む方法。
  2. 【請求項2】前記ある大きいサイズのトランザクション
    が処理される前に解放すべき、前記使用可能バッファ・
    スペースの前記設定量をプログラミングするために、使
    用可能空きブロック・レジスタを使用するステップをさ
    らに含む、請求項1に記載の方法。
  3. 【請求項3】前記バッファ内の前記使用可能実バッファ
    ・スペースを追跡するために、使用可能空きバッファ・
    カウンタを使用するステップをさらに含む、請求項1に
    記載の方法。
  4. 【請求項4】前記待機するステップが、 前記バッファ内でいずれかの追加のバッファ・スペース
    が解放されたかどうかを判定するステップと、 前記バッファ内で前記追加のバッファ・スペースが解放
    された場合に、前記使用可能空きバッファ・カウンタ内
    で追跡された前記使用可能実バッファ・スペースを、前
    記追加のバッファ・スペースだけ増分させるステップ
    と、 次のアクセスが発生したかどうか、および前記使用可能
    実バッファ・スペースが前記使用可能空きブロックに達
    したかどうかを判定するステップとをさらに含む、請求
    項3に記載の方法。
  5. 【請求項5】前記トランザクションが受け入れられたと
    き、前記使用可能空きバッファ・カウンタ内で追跡され
    た前記使用可能実バッファ・スペースを、満たされたバ
    ッファ・スペースの量だけ減少させるステップをさらに
    含む、請求項3に記載の方法。
  6. 【請求項6】PCI−XまたはPCIブリッジの性能を
    向上させるバッファ管理方法であって、トランザクショ
    ンが前記ブリッジを介して処理され、前記ブリッジが前
    記トランザクションの受信および処理に使用される使用
    可能実バッファ・スペースを備えたバッファを有し、 前記トランザクションのトランザクション・サイズを決
    定するステップと、 ある大きいサイズのトランザクションが処理される前に
    解放すべき使用可能バッファ・スペースの設定量であ
    る、使用可能空きブロックを設定するステップと、 前記使用可能実バッファ・スペースが解放され、前記使
    用可能空きブロックに達するのを待機するステップと、 前記使用可能実バッファ・スペースが前記使用可能空き
    ブロックに達したときに、前記トランザクションを処理
    するステップとを含む方法。
  7. 【請求項7】前記処理するステップが、 前記トランザクション・サイズが前記使用可能実バッフ
    ァ・スペースより大きくない場合に、前記トランザクシ
    ョンを受け入れるステップと、 前記トランザクション・サイズが前記使用可能空きブロ
    ックより小さいが前記使用可能実バッファ・スペースよ
    り大きいときに、前記ブリッジによって処理するために
    前記トランザクションを再試行するステップと、 前記トランザクション・サイズが前記使用可能空きブロ
    ックより大きくかつ前記使用可能バッファ・スペースよ
    り大きいときに、前記使用可能バッファ・スペースが前
    記使用可能空きブロック以上になるまで、前記ブリッジ
    によって前記トランザクションを再試行するステップ
    と、 前記トランザクションを受け入れ、次いで前記使用可能
    実バッファ・スペースが満たされるかまたは前記トラン
    ザクションの最後に来たときに切断するステップとをさ
    らに含む、請求項6に記載の方法。
  8. 【請求項8】PCI−XまたはPCIブリッジの性能を
    向上させるバッファ管理システムであって、トランザク
    ションが前記ブリッジを介して処理され、前記ブリッジ
    が前記トランザクションの受信および処理に使用される
    使用可能実バッファ・スペースを備えたバッファを有
    し、 PCI−XまたはPCIインタフェースを有するコンピ
    ュータ・システムと、 前記PCI−XまたはPCIインタフェースにインタフ
    ェース結合された第1のPCI−XまたはPCIバス
    と、 前記PCI−XまたはPCIバスにインタフェース結合
    されたPCI−XまたはPCIブリッジと、 前記PCI−XまたはPCIブリッジにインタフェース
    結合された第2のPCI−XまたはPCIバスと、 前記第2のPCI−XまたはPCIバスにインターフェ
    ース結合された装置とを備え、 ある大きいサイズのトランザクションが処理される前に
    解放すべき使用可能バッファ・スペースの設定量であ
    る、使用可能空きブロックを設定し、前記使用可能実バ
    ッファ・スペースが解放されて前記使用可能空きブロッ
    クに達するのを待機し、前記使用可能実バッファ・スペ
    ースが前記使用可能空きブロックに達したときに前記ト
    ランザクションを処理するシステム。
  9. 【請求項9】前記トランザクション・サイズが前記使用
    可能実バッファ・スペースより大きくない場合に前記ト
    ランザクションを受け入れ、前記トランザクション・サ
    イズが前記使用可能空きブロックより小さいが前記使用
    可能実バッファ・スペースより大きいときに、前記ブリ
    ッジによって処理するために前記トランザクションを再
    試行し、前記トランザクション・サイズが前記使用可能
    空きブロックより大きくかつ前記使用可能バッファ・ス
    ペースより大きいときに、前記使用可能バッファ・スペ
    ースが前記使用可能空きブロック以上になるまで、前記
    ブリッジによって前記トランザクションを再試行し、か
    つ前記トランザクションを受け入れ、次いで前記使用可
    能実バッファ・スペースが満たされるかまたは前記トラ
    ンザクションの最後に来たときに切断することによっ
    て、前記トランザクションを処理する、請求項8に記載
    のシステム。
  10. 【請求項10】前記コンピュータ・システムに結合され
    た使用可能空きブロック・レジスタであって、前記ある
    大きいサイズのトランザクションが処理される前に解放
    すべき前記使用可能バッファ・スペースの設定量でプロ
    グラミングされる、使用可能空きブロック・レジスタを
    さらに含む、請求項8に記載のシステム。
  11. 【請求項11】前記コンピュータ・システムに結合され
    た使用可能空きバッファ・カウンタであって、前記バッ
    ファ内で前記使用可能実バッファ・スペースを追跡する
    ための使用可能空きバッファ・カウンタをさらに含む、
    請求項8に記載のシステム。
  12. 【請求項12】前記各ブリッジが、 前記トランザクションを処理するためのバッファをさら
    に含む、請求項8に記載のシステム。
  13. 【請求項13】前記バッファがポストされたメモリ書き
    込み(Posted Memory Write)バッファである、請求項
    12に記載のシステム。
  14. 【請求項14】前記バッファが分割読み取り完了バッフ
    ァおよび分割書き込み完了バッファである、請求項12
    に記載のシステム。
  15. 【請求項15】前記バッファが分割読み取り要求バッフ
    ァおよび分割書き込み要求バッファである、請求項12
    に記載のシステム。
  16. 【請求項16】バッファ管理システムであって、 使用可能実バッファ・スペースを備えたバッファを有
    し、トランザクションのトランザクション・サイズを決
    定することを含めてトランザクションを受信し処理する
    ためのPCI−XまたはPCIブリッジと、 ある大きいサイズのトランザクションが処理される前に
    解放すべき使用可能バッファ・スペースの設定量であ
    る、使用可能空きブロックを表す値を含むレジスタと、 前記使用可能実バッファ・スペースが解放されて前記使
    用可能空きブロックに達するときを決定するカウンタと
    を含み、 前記使用可能実バッファ・スペースが前記使用可能空き
    ブロックに達したときに、前記ブリッジが前記トランザ
    クションを処理する、バッファ管理システム。
JP2000145980A 1999-05-18 2000-05-18 Pci−xまたはpciブリッジ性能を向上させるためのバッファ管理 Expired - Fee Related JP3477693B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/314044 1999-05-18
US09/314,044 US6425024B1 (en) 1999-05-18 1999-05-18 Buffer management for improved PCI-X or PCI bridge performance

Publications (2)

Publication Number Publication Date
JP2000357154A true JP2000357154A (ja) 2000-12-26
JP3477693B2 JP3477693B2 (ja) 2003-12-10

Family

ID=23218317

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000145980A Expired - Fee Related JP3477693B2 (ja) 1999-05-18 2000-05-18 Pci−xまたはpciブリッジ性能を向上させるためのバッファ管理

Country Status (6)

Country Link
US (1) US6425024B1 (ja)
JP (1) JP3477693B2 (ja)
KR (1) KR100338233B1 (ja)
CN (1) CN1299208C (ja)
CA (1) CA2303726C (ja)
TW (1) TW455775B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950897B2 (en) * 2001-02-23 2005-09-27 Hewlett-Packard Development Company, L.P. Method and apparatus for a dual mode PCI/PCI-X device
JP2007323098A (ja) * 2006-05-30 2007-12-13 Hitachi Ltd 転送処理装置
KR100818837B1 (ko) * 2001-10-16 2008-04-01 엘지노텔 주식회사 피씨아이 브리지를 이용한 이중화장치

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581141B1 (en) * 1999-05-18 2003-06-17 International Business Machines Corporation Toggle for split transaction mode of PCI-X bridge buffer
US6594722B1 (en) * 2000-06-29 2003-07-15 Intel Corporation Mechanism for managing multiple out-of-order packet streams in a PCI host bridge
US6820165B2 (en) * 2000-08-31 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for increasing the count of outstanding split transactions
US6647454B1 (en) * 2000-09-25 2003-11-11 Intel Corporation Data transfer through a bridge
KR100714400B1 (ko) * 2001-05-18 2007-05-04 삼성전자주식회사 확장 피씨아이 버퍼를 갖는 데이터 처리 시스템
US6901467B2 (en) * 2001-02-23 2005-05-31 Hewlett-Packard Development Company, L.P. Enhancing a PCI-X split completion transaction by aligning cachelines with an allowable disconnect boundary's ending address
US6868469B2 (en) * 2001-05-31 2005-03-15 Intel Corporation Data bridge and bridging
US6766386B2 (en) * 2001-08-28 2004-07-20 Broadcom Corporation Method and interface for improved efficiency in performing bus-to-bus read data transfers
US20030131175A1 (en) * 2001-12-24 2003-07-10 Heynemann Tom A. Method and apparatus for ensuring multi-threaded transaction ordering in a strongly ordered computer interconnect
US6754737B2 (en) * 2001-12-24 2004-06-22 Hewlett-Packard Development Company, L.P. Method and apparatus to allow dynamic variation of ordering enforcement between transactions in a strongly ordered computer interconnect
US6799238B2 (en) * 2002-02-07 2004-09-28 Silicon Graphics, Inc. Bus speed controller using switches
US6968418B2 (en) * 2002-04-15 2005-11-22 International Business Machines Corporation Data forwarding by host/PCI-X bridges with buffered packet size determined using system information
US6957293B2 (en) * 2002-04-15 2005-10-18 International Business Machines Corporation Split completion performance of PCI-X bridges based on data transfer amount
US6801963B2 (en) * 2002-07-24 2004-10-05 Intel Corporation Method, system, and program for configuring components on a bus for input/output operations
US8060680B2 (en) * 2002-09-16 2011-11-15 Hewlett-Packard Development Company, L.P. Method of allocating memory
US6931885B2 (en) * 2003-03-14 2005-08-23 Andrew Citrynell Drinking vessels with removable cooling devices
US7877647B2 (en) * 2003-05-23 2011-01-25 Hewlett-Packard Development Company, L.P. Correcting a target address in parallel with determining whether the target address was received in error
US20060069812A1 (en) * 2004-09-30 2006-03-30 Osborne Randy B Method to mitigate performance turnaround in a bidirectional interconnect
US7370133B2 (en) * 2005-01-20 2008-05-06 International Business Machines Corporation Storage controller and methods for using the same
US7389196B2 (en) * 2005-10-31 2008-06-17 Lsi Corporation Method and system for validating PCI/PCI-X adapters
US20090157919A1 (en) * 2007-12-18 2009-06-18 Plx Technology, Inc. Read control in a computer i/o interconnect
US8650330B2 (en) * 2010-03-12 2014-02-11 International Business Machines Corporation Self-tuning input output device
CN101808127B (zh) * 2010-03-15 2013-03-20 成都市华为赛门铁克科技有限公司 数据备份方法、系统和服务器
US20120066471A1 (en) * 2010-09-14 2012-03-15 Advanced Micro Devices, Inc. Allocation of memory buffers based on preferred memory performance

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6055559A (en) * 1994-03-07 2000-04-25 Fujitsu Limited Process switch control apparatus and a process control method
JPH08180012A (ja) * 1994-12-27 1996-07-12 Toshiba Corp コンピュータシステム
US5778235A (en) * 1996-02-26 1998-07-07 Robertson; Paul Gordon Computer system and arbitrator utilizing a bus bridge that avoids livelock
US6055590A (en) * 1996-06-05 2000-04-25 Compaq Computer Corporation Bridge circuit comprising independent transaction buffers with control logic adapted to store overflow data in second buffer when transaction size exceeds the first buffer size
US5768545A (en) * 1996-06-11 1998-06-16 Intel Corporation Collect all transfers buffering mechanism utilizing passive release for a multiple bus environment
US5729760A (en) * 1996-06-21 1998-03-17 Intel Corporation System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode
US5920732A (en) * 1996-07-01 1999-07-06 Apple Computer, Inc. System for preallocating additional larger buffer sizes in accordance with packet sizes of discarded packets that can't be stored in existing preallocated buffer sizes
US6088370A (en) * 1997-09-22 2000-07-11 Intel Corporation Fast 16 bit, split transaction I/O bus
US6026451A (en) * 1997-12-22 2000-02-15 Intel Corporation System for controlling a dispatch of requested data packets by generating size signals for buffer space availability and preventing a dispatch prior to a data request granted signal asserted

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950897B2 (en) * 2001-02-23 2005-09-27 Hewlett-Packard Development Company, L.P. Method and apparatus for a dual mode PCI/PCI-X device
KR100818837B1 (ko) * 2001-10-16 2008-04-01 엘지노텔 주식회사 피씨아이 브리지를 이용한 이중화장치
JP2007323098A (ja) * 2006-05-30 2007-12-13 Hitachi Ltd 転送処理装置

Also Published As

Publication number Publication date
KR100338233B1 (ko) 2002-05-27
CN1296225A (zh) 2001-05-23
CA2303726A1 (en) 2000-11-18
CN1299208C (zh) 2007-02-07
KR20010007053A (ko) 2001-01-26
CA2303726C (en) 2005-01-11
TW455775B (en) 2001-09-21
US6425024B1 (en) 2002-07-23
JP3477693B2 (ja) 2003-12-10

Similar Documents

Publication Publication Date Title
JP3477693B2 (ja) Pci−xまたはpciブリッジ性能を向上させるためのバッファ管理
CA2186598C (en) Method and apparatus for maintaining transaction ordering and supporting deferred replies in a bus bridge
US6742076B2 (en) USB host controller for systems employing batched data transfer
US7461183B2 (en) Method of processing a context for execution
US7349973B2 (en) Data transfer control device, electronic equipment, and data transfer control method
CN100501716C (zh) 利用pci桥中的缓冲区支持多功能pci设备的方法与装置
US5774744A (en) System using DMA and descriptor for implementing peripheral device bus mastering via a universal serial bus controller or an infrared data association controller
US6807590B1 (en) Disconnecting a device on a cache line boundary in response to a write command
US20080082713A1 (en) Interrupt control system and storage control system using the same
CN1945557A (zh) 处理页面复制期间的dma操作的存储控制器和方法
US8924610B1 (en) SAS/SATA store-and-forward buffering for serial-attached-SCSI (SAS) storage network
JPH08235106A (ja) アップグレード・プロセッサのインタフェース方法及びシステム
US6230228B1 (en) Efficient bridge architecture for handling multiple write transactions simultaneously
US7130932B1 (en) Method and apparatus for increasing the performance of communications between a host processor and a SATA or ATA device
JP4498389B2 (ja) マルチ・ノードコンピュータシステム
US5838995A (en) System and method for high frequency operation of I/O bus
US6418497B1 (en) Method and system for interrupt handling using system pipelined packet transfers
US6425023B1 (en) Method and system for gathering and buffering sequential data for a transaction comprising multiple data access requests
JP2963426B2 (ja) バスブリッジ装置及びトランザクションフォワード方法
US7428600B2 (en) Data transfer control device, electronic equipment, and data transfer control method
US6502154B1 (en) Bus bridging method and apparatus including use of read size indicators
JP2001022686A (ja) 情報処理システム
JP2001005774A (ja) Pci−xブリッジ・バッファの分割トランザクション・モードのトグル
US6327636B1 (en) Ordering for pipelined read transfers
US5774743A (en) System for implementing peripheral device bus mastering in mobile computer via micro-controller for programming DMA controller, generating and sending command signals, and receiving completion status

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees