JP2001522092A - データを転送するための推論的アービトレーション(SpeculativeArbitration)を提供するシステムと方法 - Google Patents
データを転送するための推論的アービトレーション(SpeculativeArbitration)を提供するシステムと方法Info
- Publication number
- JP2001522092A JP2001522092A JP2000519362A JP2000519362A JP2001522092A JP 2001522092 A JP2001522092 A JP 2001522092A JP 2000519362 A JP2000519362 A JP 2000519362A JP 2000519362 A JP2000519362 A JP 2000519362A JP 2001522092 A JP2001522092 A JP 2001522092A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- data
- early warning
- signal
- memory
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 14
- 230000015654 memory Effects 0.000 claims abstract description 71
- 230000005055 memory storage Effects 0.000 claims abstract description 25
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000004044 response Effects 0.000 abstract description 5
- 230000001427 coherent effect Effects 0.000 description 18
- 239000003795 chemical substances by application Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 10
- 239000013598 vector Substances 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 101100332284 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) DSS1 gene Proteins 0.000 description 1
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 101150020044 tlcE gene Proteins 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
Abstract
Description
は、メモリ記憶ユニットから多重プロセッサシステム内の装置へデータを転送す
る動作を加速する手法に関する。
ry bank)、および周辺制御装置などの装置は複数のバスにより相互接続されて いる。このようなシステムでは、メモリやデータバスなどのマシンリソース(ma
chine resources)を割り当てる、アービトレーション(arbitration)と呼ばれ
る規則を採用している。複数の装置がデータ転送のためバスアクセスに関して競
合する多重プロセッサバス環境では、それぞれの装置はバスの所有権を得るため
にアービトレーションを必要とする。たとえば、プロセッサが1単位のデータを
メモリに対し要求した場合、しばらくしてから、そのデータはプロセッサに配信
される。メモリ装置(memory unit)がデータの要求を受信すると、そのメモリ 装置はデータロケーション(data location)を読み込み、物理データにアクセ スし、そのデータをプロセッサに配信しなければならない。データの要求を受信
してからデータが送信されるまでのメモリの待ち時間は長くなる場合がある。
を配信するバスエージェント(bus agent)はデータバスの所有権を獲得するた めにアービトレーションを行わなければならない。アービトレーションは時間の
かかる作業である。メモリコントローラがディレクトリ情報をデータ自体と同じ
媒体に格納するディレクトリベースのシステムでは、メモリコントローラは要求
元プロセッサへの転送のため関連データを取得するのと同時にディレクトリ情報
も取得する。ディレクトリ状態が適切でなければ、読み込まれたデータは転送さ
れず、ディレクトリを要求を満たす適切な状態にする処置が講じられる。しかし
、時間の大半はデータがプロセッサへ転送することが可能である。メモリコント
ローラがディレクトリ情報を観察するまで待ち、それからアービトレーションを
開始する場合、要求を満たすためにアービトレーションの時間を無駄にすること
になる。メモリコントローラがアービトレーションの直接制御を行ったとすれば
、データが記憶媒体から使用可能となったときにデータバスを使用可能とするア
ービトレーションを開始し、およびアービトレーションの時間を失わずにバス上
にデータを配信するか、またはディレクトリ状態が適切でない場合にデータ転送
せずにバスを解放することができる。大規模なマルチプロセッサシステムでは、
メモリコントローラはバスの介在でプロセッサバスから分離され、データ配信の
ためプロセッサバスに対し推論的にアービトレーションを行う方法とシステムが
必要である。
本発明は、早期警告信号と呼ばれ、プロセッサバス上のバスエージェントがプロ
セッサの代わりにMSUにデータを要求した後にメモリ記憶ユニットからそのエ
ージェントに送信される単方向信号を提供する。この信号は、データがまもなく
来ることを知らせるバスエージェントへの警告である。この早期警告信号により
、エージェントはデータバスのアービトレーションを行うことができるため、デ
ータが到着したときに、エージェント側でデータバスの所有権に関するアービト
レーションを実施していることになり、データを即座に配信できる。
つまたは2つ以上のプロセッサモジュール、1つまたは2つ以上のI/Oモジュ
ール、および早期警告バスを備える。キャッシュメモリは、インタフェースバス
を介してメインメモリに接続されている。プロセッサモジュールは、プロセッサ
インタフェースバスを介してキャッシュメモリに接続されている。I/Oモジュ
ールは、I/Oインタフェースバスを介してメインメモリに接続されている。プ
ロセッサモジュールとI/Oモジュールは両方とも、データ単位をメインメモリ
に要求する手段を含む。早期警告バスは、メインメモリとキャッシュメモリとの
間に接続されている。
1」に設定されたときに有効な早期警告信号であることを示す有効ビットを含む
。
元インタフェースバスを介して転送される。早期警告信号を使用することにより
、バスエージェントは要求されたデータ単位を受信する前にデータバスのアービ
トレーションを行うことができる。
を受信したときに設定されるエージェントのアービトレーション・ロジック内に
タイマがさらに備えられ、これにより、エージェントは、要求されたデータがま
だ届いていない場合にタイマが期限切れになると、バスを解放するかまたはアー
ビトレーションの試行を中止する。本発明では、警告信号なしでメインメモリか
らデータを受信したときに、エージェントがバスのアービトレーションを実行し
、そのデータを配信できることも必要である。
とともに、添付図面を参照しながら以下の段で詳述する。図面では、類似の参照
番号は一般に、同一の要素、機能上類似している要素、および/または構造上類
似している要素を示す。最初にある要素が示されている図面は、対応する参照番
号の一番右の2つの桁の左側にある。
るが、これは例示を目的としてのみ行うものであることを理解すべきである。当
業者は、本発明の趣旨および範囲から逸脱することなく、他の部品および構成を
用いてもよいことを理解するであろう。
ットからデータを受け取るのに要する時間を最適化するシステムと方法を対象と
するものである。本発明は、ときに装置がデータのフェッチ要求を実行した後に
、データがまもなく来るということを装置に警告するためメモリ記憶ユニットか
らその装置に送信される、早期警告信号と呼ばれる単方向応答信号を提供する。
この早期警告信号により、装置はデータバスのアービトレーションを行うことが
できるため、データが到着したときに、装置側はデータバスの排他的所有権を持
ち、データを即座に受け付ける。
う。図1は、本発明が使用されているシステム処理プラットフォーム100のブ
ロック図である。システム処理プラットフォーム100は、多数の処理システム
および多数のメモリ記憶システム間でのデータフローを管理するのに有用である
。システム処理プラットフォーム100は、1つまたは2つ以上のメモリ記憶ユ
ニット(MSU)110(MSU110AおよびMSU110Bとして図示)お
よび1つまたは2つ以上の処理モジュール(POD)120(POD120Aお
よびPOD120Bとして図示)を含む。顧客は、追加のMSU110やPOD
120を付加することにより、システム処理プラットフォーム100を拡張する
ことができる。
A、130B、130C、および130Dとして図示)を介して各POD120
に接続されている。MIバス130は、個別のアドレス/機能およびデータバス
を有するポイント−ツー−ポイントのインタフェースである。MIバス130は
単方向制御バス、双方向要求バスおよび双方向データバスを含む。要求バスはシ
ステムクロック周波数(SYSCLK)で動作し、データバスはシステムクロッ
ク周波数の2倍のソース同期で動作する。好ましい実施形態では、システム処理
プラットフォーム100で、システムクロック周波数は100メガヘルツ(MH
Z)である。
タに直接的なアクセス権を有している。例えば、MIバス130AはPOD12
0AのMSU110Aへの直接アクセスを可能にし、MIバス130CはPOD
120AのMSU110Bへの直接アクセスを可能にする。
0はメモリコントローラ210とメモリ220とを含む。メモリ220は複数の
データライン230を備える。各データライン230は、システムプラットフォ
ーム100においてMSU110とPOD120との間で転送されるデータの最
小量である。システム処理プラットフォーム100において、データライン23
0は64バイトの情報と同等である。
。メモリコントローラ210はMIバス130を介して、POD120から制御
およびアドレスラインを受信する。メモリコントローラ210は、以下で詳細に
解説する方法で各データライン230のステータスを制御し監視する。
ロスバー350、1つまたは2つ以上のサブ処理モジュール(サブPOD)(サ
ブPOD310AおよびサブPOD310Bとして図示)および1つまたは2つ
以上の入出力(I/O)モジュール320(I/Oモジュール320AおよびI
/Oモジュール320Bとして図示)を備える。システム処理プラットフォーム
100において、各POD120は2つのサブPOD310および2つのI/O
モジュール320を備える。
モジュール320をMSU110に接続している。サブPOD310(サブPO
D310AおよびサブPOD310Bとして図示)は、インタフェース330(
インタフェース330Aおよびインタフェース330Bとして図示)を介してク
ロスバー350に接続されている。クロスバー350は、インタフェース340
(インタフェース340Aおよびインタフェース340Bとして図示)を介して
I/Oモジュール320(I/Oモジュール320AおよびI/Oモジュール3
20Bとして図示)にインタフェースしている。システム処理プラットフォーム
100において、MIバス130およびインタフェース330は同等の転送レー
トでデータを転送する。I/Oモジュール320とクロスバー350との間のイ
ンタフェース340は、MIバス130およびインタフェース330と同様の構
成を有しているが、半分の転送レートで動作する。
POD120と、I/O320に接続された1つまたは2つ以上のI/O装置(
図示されていない)との間のインタフェースとして機能する。I/Oモジュール
320は、バス430(バス430A、バス430Bおよびバス430Cとして
図示)を介して、1つまたは2つ以上のペリフェラル・コンポーネント・インタ
ーコネクト(PCI)(PCI420A、PCI420BおよびPCI420C
として図示)を相互接続するブリッジ410を含む。ブリッジ410は、図3に
示されているようにバス340を介してPOD120のクロスバー350にも接
続されている。ブリッジ410は、POD120が各PCI420にアクセスす
ることを可能にする、バス340とバス330との間のスイッチとして機能する
。
I/O装置(図示されていない)をI/Oモジュール320に接続するI/Oバ
スである。システム処理プラットフォーム100において、各PCI420は4
つまでの装置を支援できる。これらの装置は、モニタ、キーボード、プリンタ、
ディスクまたはテープドライブなどを含むが、これらに限定されない。
第3レベルキャッシュ(TLC)510および1つまたは2つ以上のコヒーレン
トドメイン530(コヒーレントドメイン530Aおよびコヒーレントドメイン
530Bとして図示)を含む。TLC510はバス520(バス520Aおよび
バス520Bとして図示)を介して各コヒーレントドメイン530に接続されて
いる。TLC510は、各コヒーレントドメイン530間のコヒーレンシを維持
する。各コヒーレントドメイン530は、2つまたは3つ以上の第2レベルキャ
ッシュ(SLC)550(コヒーレントドメイン530AにおけるSLC550
AおよびSLC550Bならびにコヒーレントドメイン530BにおけるSLC
550CおよびSLC550Dとして図示)および、バス560(コヒーレント
ドメイン530Aにおけるバス560Aおよびバス560Bならびにコヒーレン
トドメイン530Bにおけるバス560Cおよびバス560Dとして図示)を介
して各SLC550に接続されたプロセッサ540(コヒーレントドメイン53
0Aにおけるプロセッサ540Aおよびプロセッサ540Bならびにコヒーレン
トドメイン530Bにおけるプロセッサ540Cおよびプロセッサ540Dとし
て図示)を備える。各バスインタフェース520は、コヒーレントドメイン53
0における2つまでのプロセッサ/SLC(540/550)の構成を支援する
。プロセッサモジュール540は、例えば、デシュート(Deshutes)ス
タイルP6、メルセド(Merced)スタイルP7、ボイジャー(Voyag
er)スタイル2200またはカプリコーン(Capricorn)スタイルA
シリーズの命令処理装置のうち1つを含むことができる。これら4種類の命令処
理装置の全てが当業者にはよく知られている。
独自のコヒーレントドメイン内においてコヒーレンスを維持する。これは、バス
520を共有し、スヌーピーベースのコヒーレンスに従うことによって達成され
る。スヌーピーベースのコヒーレンスによれば、各SLC550は要求バス52
0を「覗いて(スヌープ)」データライン230の状態を確認して、必要であれ
ば、そこに記憶されたデータラインの状態を更新する。スヌーピープロトコルに
関する更に詳細な解説は、参照によって本明細書中にその全体を含めた、本願と
同時に出願した「ディレクトリ・ベースのキャッシュ・コヒーレンシ・システム
」という名称の並行して係属中である出願(代理人整理番号TN050;152
1.0080000)に含まれている。
り出す。システム処理プラットフォーム100のコヒーレンシスキームはディレ
クトリベースの所有権プロトコルである。図6は、システム処理プラットフォー
ム100に使用されたディレクトリベースの所有権プロトコルを示している。メ
モリ220および各レベルのキャッシュ(すなわち、TLC510、SLC55
0など)がコヒーレンスを維持するためのディレクトリプロトコルを許容してい
る。図6に示したように、メモリ220はメモリディレクトリ610を有し、T
LC510はTLCディレクトリ640を有し、SLC550はMESI(Modi
fied Exclusive Shared Invalid)というSLCディレクトリ650を有してい る。
ン(TLC510ではキャッシュライン620、SLC550ではキャッシュラ
イン630として図示)と呼ばれるデータライン記憶用のメモリを含む。キャッ
シュラインは、1つまたは2つ以上のキャッシュ510、550に存在するデー
タラインのコピーである。
れて、状態612とベクトル614とを使って更新される。状態612は、デー
タライン230に関してリクエスタに与えられたアクセス権のステータスについ
ての情報を維持する。かかるステータスは現在のステータス、共有ステータスお
よび独占ステータスを含むことができる。現在のステータスは、データライン2
30がメモリ220にのみ存在することを示している。共有ステータスは、デー
タライン230のリードオンリーのコピーが1つまたは2つ以上のPOD120
に存在することを示している。これは、これら1つまたは2つ以上のPOD12
0がデータライン230のコピーを自由に読むことができることを示している。
独占ステータスは、単一のリクエスタのみがデータライン230への書き込みア
クセス権を与えられていることを示している。これは、単一のリクエスタのみが
データライン230を修正する権利を有することを示している。ベクトル614
は、メモリ状態612が独占ステータスを示しているときに、書き込みアクセス
権が与えられているサブPOD310へのポインタである。ベクトル614は、
メモリステータス612が共有ステータスを示しているときに、どのサブPOD
310がリードオンリーコピーを有するかを示すビットのマスクである。
視されており、状態642とベクトル644を使用して更新される。状態642
は、キャッシュライン620のステータスに関する3つの情報を保持している。
この情報には、所有権、データステータス、およびバスの権利が含まれる。ベク
トル644は、キャッシュライン620が存在している1つまたは2つ以上のロ
ケーションを指している。
TLC510がキャッシュライン620への独占権(すなわち、書き込みアクセ
ス権)を有することを示しており、この独占権はメモリ220におけるデータラ
イン230の対応するステータスと一致する。共有権は、メモリ220がキャッ
シュライン620を共有されたもの(すなわち、リードオンリーアクセス)とし
て関連づけていることを示している。未知の権利は、キャッシュライン620に
関する所有権が未知であることを示している。
たはクリーンデータを含むことができる。データなしは、キャッシュライン62
0ロケーションにデータが存在しないことを示している。修正データは、キャッ
シュライン620上のデータが修正されたことを意味している。修正データはメ
モリ220に書き戻されなければならない。クリーンデータは、キャッシュライ
ン620上のデータが修正されていないことを示している。
示している。バスの権利も状態とベクトル(状態およびベクトルとも図示されて
いない)を含む。バスの権利は、独占状態、共有状態または未知の状態を含むこ
とができる。独占権は、バス520Aまたは520Bのどちらかに関連づけられ
たSLC550に独占的所有権が属することを示している。共有権は、バス52
0Aと520Bの両方に権利が与えられていることを示している。未知の権利は
、どちらのバスが権利を有しているか分からないことを示している。
持されている。状態は、修正されたステータス、独占ステータス、共有ステータ
スまたは無効なステータスを含むことができる。修正されたステータスは、キャ
ッシュライン630上のデータが修正されていることを示している。独占ステー
タスは、キャッシュライン630上のデータを修正することができ、関連づけら
れたSLC550はデータが含まれる唯一の装置であることを示している。共有
ステータスは、キャッシュライン630上のデータが装置間で共有されているこ
とを示している。無効なステータスは、SLC550のキャッシュライン630
にあるデータライン230のコピーは、別の装置のデータライン230で行われ
た書き込みのために、もはや有効ではないことを示している。
リ220のデータライン230を読み取るために、キャッシュスキームが開発さ
れた。システム処理プラットフォーム100で使用されているようなキャッシュ
システムは、システム処理プラットフォーム100が適切かつ効率的に処理を遂
行できるように、メモリ220、TLC510およびSLC550の各々の中で
コヒーレントなデータを維持しなければならない。
理装置を備えたシステムにおいてデータのアクセスを管理する。コヒーレントシ
ステムは、データラインの読み取りは最近書き込まれたそのデータラインの値を
戻し、データラインの書き込みは、読み取りアクセス権を有する全てのエージェ
ントが所有するそのデータラインの全てのコピーを無効にすることを要求する。
処理システムプラットフォーム100に関しては、コヒーレンシは、POD12
0がそのリクエスタの1つにキャッシュ510および550のいずれかの中でキ
ャッシュライン620または630を修正することを許可する前に、このデータ
についてMSU110から所有権許可(特に、独占的または書き込み所有権)を
得なければならないことを意味する。独占的所有権が与えられると、POD12
0のリクエスタは、MSU110と対話することなくキャッシュライン620を
変更することを許可される。POD120がキャッシュライン620との関係が
断たれたとき、キャッシュライン620はMSU110に書き戻される。
ッシュライン620状態情報を追跡する。MSU110はディレクトリ構造61
0を使ってこれを行う。ディレクトリ610は、MSU110、特定のTLC5
10または特定のI/Oバスインタフェース340のいずれがデータライン23
0を所有しているかに関する情報を維持する。ディレクトリ610は、もしある
とすれば、どのTLC510がデータライン230の未処理のコピーを有してい
るか、あるいは、特定のI/Oが未処理のコヒーレントコピーを有しているかに
関する情報を維持する。ディレクトリ610は、特定のデータライン230が修
正不可能なエラーを含んでいるかどうかも示す。
の所有者しか許容せず、コヒーレンシはキャッシュラインベースで実行される。
したがって、別のTLC510またはI/Oバスインタフェース340が修正さ
れたキャッシュライン620または630へのアクセス権を有する必要がある場
合には、新たなデータをリクエスタに送るために、所有者に対してキャッシュラ
イン620または630をMSU110に戻すように要求することはMSU11
0の責任である。リクエスタがキャッシュライン620または630を修正した
いのであれば、元の所有者は対応するキャッシュライン620または630をそ
のキャッシュから削除する(無効にする)。次に、その特定のキャッシュライン
620または630に再びアクセスする必要があれば、最新のコピーを求めてM
SU110に行かされるであろう。リクエスタがデータライン230を読みたい
のであれば、元の所有者は対応するキャッシュライン620または630のコピ
ーを保持することを許可される。いずれの場合にも、元の所有者は、対応するキ
ャッシュライン620または630においてデータのいずれをも修正する特権を
失っており、そうするためには、MSU110に独占的所有権を再び要求しなけ
ればならない。
に出願された「ディレクトリ・ベースのキャッシュ・コヒーレンシ・システム」
という名称の並行して係属中の出願(代理人整理番号TN050;1521.0
080000)で更に説明している。
便性ためにのみ行っている。本発明をこの例の環境における応用に限定すること
は意図していない。事実、以下の説明を読んだ後に、当業者には他のメモリ記憶
ユニットや処理モジュールの構成で本発明をどのように実施するのかが明らかに
なるであろう。例えば、本発明は、複数のプロセッサに接続されたバス階層を利
用した如何なるシステムにも適用性を有する。複数レベルのキャッシングは本発
明を実施するためには要求されない。
をMSU110からフェッチしなければならないときにMSU110からPOD
120へのデータライン230の転送を加速するシステムと方法である。本発明
は、データライン230の要求を行ったときに早期警告(E_W)信号を送信す
ることによって、MSU110からPOD120へのデータ転送を加速する。早
期警告信号によって、要求元装置(たとえば、プロセッサ540やI/Oモジュ
ール320)は、データバスのアービトレーションによりデータライン230の
到着を準備し、したがって、データライン230が使用可能となったときに、デ
ータライン230を要求した装置は即座にそれを受け入れることができる。
U110に対するデータフェッチ要求を実行する。データがMSU110から要
求元装置に戻る前に、要求元装置はデータバスのアービトレーションを実行しな
ければならない。本発明では、要求データの転送前に早期警告バス上でMSU1
10から要求元装置に転送する早期警告信号を提供する。早期警告信号により、
要求元装置は要求データを受信する前にデータバスのアービトレーションを行う
ことができる。要求データの受信前にアービトレーションを行うと、要求元装置
はデータの到着後直ちにデータにアクセスできる。
図1に示されている)。それとは別に、本発明の他の実施形態ではバスを別にす
ることができる。本発明は、MSU110からPOD120への早期警告単方向
バス(E_W[2:0])710を提供する。早期警告単方向バス710は、R
_bus信号720、P_bus信号730、およびValid信号740を含
む。
を示す。より詳しく述べると、R_bus信号720はデータの要求がどのリク
エスタバス(I/Oモジュール320に対してはバス340およびバス340B
、サブPOD310に対してはバス330Aおよびバス330B)から出たかを
示す。P_bus信号730は、要求元装置を識別する。より詳しく述べると、
R_bus720がI/Oモジュール320からデータ要求が発行されたという
ことを示している場合に、P_bus730はI/Oモジュール320のどれが
要求を出したかを示す。R_bus720がTLCインタフェースバス330か
らデータ要求が来たということを示している場合に、P_bus730はプロセ
ッサ540のどれが要求を出したかを示す。Valid信号740は、1に設定
され、信号が有効であることを示し、データがまもなく来るという早期警告を出
す。
定時間範囲内に要求元装置に到着していない場合にアービトレーションを解放す
るために使用される。タイマは、E_Wバス710上の有効な情報を指示するV
alid信号740の0から1への遷移を受け取ると、それを合図に起動する。
指定された時間内にデータが転送できない理由はいくつかある。たとえば、デー
タライン230のコピーが要求されても、他のリクエスタがデータライン230
を所有していれば、必ずしも更新されたコピーではないため現在MSU110内
にあるデータライン230は第1のリクエスタに配信されない。更新されたコピ
ーは現在所有者側にある。しかし、E_Wバス710はそのまま、MSU110
が単独でデータライン230を保有したのと同時にリクエスタに送られる。さら
に、データライン230を要求元POD120に配信するのを妨げるが、E_W
バス710の送信は禁止しないMI130の双方向的性質と関連するタイミング
の時間枠もある。このような場合、要求データライン230はすぐには到着しな
い。したがって、タイマを使って、アービトレーションを解放し、データバスの
利用率を最大にする。
タ転送のタイミング図を図8に示す。REQ信号810によって、POD120
からMSU110への要求トランザクションが開始する。REQ信号810は、
任意のクロックサイクルでアサートできる。好ましい実施形態では、REQ信号
810は1クロックサイクル長である。MIバス130上のアドレスおよびファ
ンクション(ADR_FNC)信号820は、2クロックサイクルを要する。好
ましい実施形態では、REQ信号810はADR_FNC信号820の第1のサ
イクルでアサートされる。R_bus720およびP_bus730は、ADR
_FNC信号820に含まれる。MSU110は、E_W[2:0]バス710
、R_bus720、およびP_bus730に、ADR_FNC信号820か
ら得られた値を出し、E_W[2:0]バス710を介してPOD120に早期
警告を送る。Valid信号740は、データライン230の到着の2クロック
サイクル前に出現する。MSU110は、MSU110がデータライン230を
所有しているという仮定を使用してすべての内部データパス経路制御優先度(ro
uting priorities)が解決された後に有効な信号740を送信する。これは、M
SU110が、データライン230を所有しているかどうかを知る前である。P
OD120に転送された有効なデータ230の開始は、MSU110からPOD
120へのResponse信号840によって示される。MSU110が後に
なって、データライン230を所有していないことを検出した場合、Respo
nse信号840は禁止される。Response信号840は、MIインタフ
ェース130の一部である。Valid信号740がトリガとなって、要求元装
置はバスアービトレーション信号830を発生する。バスアービトレーション信
号830は、要求元装置への要求であって、これによりデータバス(たとえば、
プロセッサバス520)のアービトレーションが行われる。データバスはこれで
データライン230の到着後、直ちにそのデータラインを受け付ける用意ができ
た。Response信号840が有効な信号740に関して2クロックのタイ
ミング時間枠内で到着しない場合、他の転送のためにデータバスは解放される。
みに提示されており、制限していないことが理解されるであろう。したがって、
本発明の範囲は上述の実施形態の例によって制限されず、前記の特許請求の範囲
およびその均等物によってのみ定義されるべきであろう。
である。
ある。
図である。
ry bank)、および周辺制御装置などの装置は複数のバスにより相互接続されて いる。このようなシステムでは、メモリやデータバスなどのマシンリソース(ma
chine resources)を割り当てる、アービトレーション(arbitration)と呼ばれ
る規則を採用している。複数の装置がデータ転送のためバスアクセスに関して競
合する多重プロセッサバス環境では、それぞれの装置はバスの所有権を得るため
にアービトレーションを必要とする。たとえば、プロセッサが1単位のデータを
メモリに対し要求した場合、しばらくしてから、そのデータはプロセッサに配信
される。メモリ装置(memory unit)がデータの要求を受信すると、そのメモリ 装置はデータロケーション(data location)を読み込み、物理データにアクセ スし、そのデータをプロセッサに配信しなければならない。データの要求を受信
してからデータが送信されるまでのメモリの待ち時間は長くなる場合がある。 この例は、アップルコンピュータ社(Apple Computer, Inc)の国際出願番号 WO96/35172の出願に見出すことができる。この出願は、システムバス
に結合された要求元エージェントを有するシステム内のグラフィック・コントロ
ーラについて開示している。このシステムでは、コントローラはアービトレーシ
ョンを初期化して要求元エージェントがメモリ内のフレーム・バッファをアクセ
スすることを可能にしている。
Claims (9)
- 【請求項1】 多重プロセッサシステム(100)において、 少なくとも1つのメモリ記憶装置(110)と インタフェースバス(130)を介して前記少なくとも1つのメモリ記憶装置
(110)のそれぞれに接続されている少なくとも1つのキャッシュメモリ(5
10)と、 前記少なくとも1つのキャッシュメモリ(510)を複数のプロセッサ(54
0)に接続し、前記複数のプロセッサ(540)のそれぞれは前記少なくとも1
つのメモリ記憶装置(110)にデータを要求する手段(540)を含む少なく
とも1つのプロセッサインタフェースバス(520)と、 前記複数のプロセッサ(540)の1つによって要求されたデータはまもなく
使用可能となること、および前記複数のプロセッサ(540)の前記1つは接続
先の前記プロセッサインタフェースバス(520)の使用に対するアービトレー
ションを開始することを前記複数のプロセッサ(540)の1つに通知する早期
警告信号(740)を生成する手段(210)と、 前記少なくとも1つのメモリ記憶装置(110)の1つを前記少なくとも1つ
のキャッシュメモリ(510)の1つに接続し、該接続されたキャッシュメモリ
によって前記警告信号(740)が送信される少なくとも1つの早期警告バス(
710)と を備えたことを特徴とするシステム。 - 【請求項2】 I/Oインタフェースバスを介して前記少なくとも1つのメ
モリ記憶装置に接続されている複数のI/Oモジュールをさらに備え、該複数の
I/Oモジュールのそれぞれは前記少なくとも1つのメモリ記憶装置のそれぞれ
にデータを要求する手段を有し、前記早期警告信号が前記早期警告バス上で転送
された後に前記要求されたデータを前記I/Oインタフェースバスに転送し、前
記早期警告バスによって前記早期警告信号は、前記I/Oモジュールが前記要求
されたデータの受信前に前記I/Oインタフェースバスに対するアービトレーシ
ョンを行うことを可能にすることを特徴とする請求項1に記載のシステム。 - 【請求項3】 前記早期警告バスは、 要求元バスを識別するためのデータラインと、 要求元装置を識別するためのデータラインと、 前記要求されたデータが前記少なくとも1つのメモリ記憶装置の1つから転送
されることを指示する少なくとも1つのデータラインと を備え、前記メモリ記憶装置によって前記早期警告信号が前記要求元装置に送ら
れることを特徴とする請求項1に記載のシステム。 - 【請求項4】 前記プロセッサインタフェースバスの使用に対するアービト
レーションが開始したときに計数を開始するタイマをさらに備え、および前記タ
イマが前記要求されたデータの到着前に期限切れになった場合に前記アービトレ
ーションは終了することを特徴とする請求項3に記載のシステム。 - 【請求項5】 前記早期警告バスは、前記少なくとも1つのメモリ記憶装置
の1つと前記少なくとも1つのキャッシュメモリの1つの間の前記インタフェー
スバスの一部であることを特徴とする請求項1に記載のシステム。 - 【請求項6】 多重プロセッサ処理システム(100)においてメモリ記憶
装置(110)から装置(540、320)へのデータ転送に関する早期警告を
提供する方法であって、 (1)装置(540、320)によって、メモリ記憶装置(110)にデータ
(230)を要求するステップと、 (2)前記要求されたデータ(230)がまもなく来るということ、および前
記要求元装置(540、320)がバスアービトレーションを開始することを前
記要求元装置(540、320)に指示するためにメモリ記憶装置(110)か
ら早期警告信号(740)を送信するステップであって、 第1の信号(720)を早期警告バス(710)に送信するステップであっ
て、前記第1の信号(720)は前記データ(230)の要求先インタフェース
バス(330、340)を識別するステップと、 第2の信号(730)を前記早期警告バス(710)に送信するステップで
あって、前記第2の信号(730)は前記要求元装置(540、320)を識別
するステップと、 第3の信号(740)を早期警告バス(710)に送信するステップであっ
て、前記第3の信号(740)は、有効な早期警告が実際に与えられたこと、お
よび前記要求元装置(540、320)によって前記バスアービトレーションが
開始されることを指示するステップと を含むステップと、 (3)前記要求元装置(540、320)によって、バスインタフェース(5
20、340)の使用に関するアービトレーションを行うステップと、 (4)前記要求されたデータ(230)を前記要求元装置(540、320)
に送信するステップと を備えることを特徴とする方法。 - 【請求項7】 ステップ(3)は 前記バスアービトレーションが開始したときにタイマを設定するステップと、 ステップ(4)で前記要求されたデータが送信される前に前記タイマが期限切
れになった場合に前記バスアービトレーションを解放するステップと を備えることを特徴とする請求項6に記載の方法。 - 【請求項8】 多重プロセッサ処理システム(100)においてメモリ記憶
装置(110)から装置(540、320)へのデータ転送に関する早期警告を
提供するシステムであって、 装置(540、320)によって、メモリ記憶装置(110)からのデータ(
230)を要求する手段(330、340)と、 前記要求されたデータ(230)がまもなく来るということ、および前記要求
元装置(540、320)がバスアービトレーションを開始することを前記要求
元装置(540、320)に指示するためにメモリ記憶装置(110)から早期
警告信号(740)を送信する手段(710)であって、 第1の信号(720)を早期警告バス(740)に送信する手段であって、
前記第1の信号(720)は前記データ(230)の要求先インタフェースバス
(330、340)を識別する手段と、 第2の信号(730)を前記早期警告バス(740)に送信する手段であっ
て、前記第2の信号(730)は前記要求元装置(540、320)を識別する
手段と、 第3の信号(740)を早期警告バスに送信する手段であって、前記第3の
信号(740)は、有効な早期警告が実際に送られたこと、および前記要求元装
置(540、320)によって前記バスアービトレーションが開始されることを
指示する手段と を含む手段と、 前記要求元装置(540、320)によって、バスインタフェース(520、
340)の使用に関するアービトレーションを行う手段(540、320)と、 前記要求データ(230)を前記要求元装置(540、320)に送信する手
段(110)と を備えたことを特徴とするシステム。 - 【請求項9】 前記アービトレーションを行う手段は、 前記バスアービトレーションが開始したときにタイマを設定する手段と、 前記送信手段により前記要求データが送信される前に前記タイマが期限切れに
なった場合に、前記バスアービトレーションを解放する手段と を備えたことを特徴とする請求項8に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/964,630 US6049845A (en) | 1997-11-05 | 1997-11-05 | System and method for providing speculative arbitration for transferring data |
US08/964,630 | 1997-11-05 | ||
PCT/US1998/023459 WO1999023570A1 (en) | 1997-11-05 | 1998-11-04 | System and method for providing speculative arbitration for transferring data |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001522092A true JP2001522092A (ja) | 2001-11-13 |
JP3635634B2 JP3635634B2 (ja) | 2005-04-06 |
Family
ID=25508789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000519362A Expired - Fee Related JP3635634B2 (ja) | 1997-11-05 | 1998-11-04 | データを転送するための推論的アービトレーション(Speculative Arbitration)を提供するシステムと方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6049845A (ja) |
EP (1) | EP1029283B1 (ja) |
JP (1) | JP3635634B2 (ja) |
KR (1) | KR100381619B1 (ja) |
AT (1) | ATE235713T1 (ja) |
AU (1) | AU1305199A (ja) |
BR (1) | BR9814844A (ja) |
DE (1) | DE69812685T2 (ja) |
WO (1) | WO1999023570A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005529407A (ja) * | 2002-06-07 | 2005-09-29 | マイクロン テクノロジー,インコーポレイティド | 内部キャッシュおよび/またはメモリアクセス予測を持つメモリハブ |
JP2010049674A (ja) * | 2008-05-23 | 2010-03-04 | Intel Corp | リンク相互接続の電源管理方法、システム、および装置 |
JP2013532325A (ja) * | 2010-06-01 | 2013-08-15 | アップル インコーポレイテッド | 適応予測によるクリティカルワードの転送 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6199135B1 (en) * | 1998-06-12 | 2001-03-06 | Unisys Corporation | Source synchronous transfer scheme for a high speed memory interface |
US6263409B1 (en) * | 1998-12-22 | 2001-07-17 | Unisys Corporation | Data processing system and method for substituting one type of request for another for increased performance when processing back-to-back requests of certain types |
US6304945B1 (en) * | 1999-05-13 | 2001-10-16 | Compaq Computer Corporation | Method and apparatus for maintaining cache coherency in a computer system having multiple processor buses |
JP2001184295A (ja) * | 1999-12-27 | 2001-07-06 | Toshiba Corp | 周辺装置および計算機システム |
US7058750B1 (en) * | 2000-05-10 | 2006-06-06 | Intel Corporation | Scalable distributed memory and I/O multiprocessor system |
US6826619B1 (en) | 2000-08-21 | 2004-11-30 | Intel Corporation | Method and apparatus for preventing starvation in a multi-node architecture |
US6487643B1 (en) | 2000-09-29 | 2002-11-26 | Intel Corporation | Method and apparatus for preventing starvation in a multi-node architecture |
US6772298B2 (en) | 2000-12-20 | 2004-08-03 | Intel Corporation | Method and apparatus for invalidating a cache line without data return in a multi-node architecture |
US7234029B2 (en) * | 2000-12-28 | 2007-06-19 | Intel Corporation | Method and apparatus for reducing memory latency in a cache coherent multi-node architecture |
US6791412B2 (en) * | 2000-12-28 | 2004-09-14 | Intel Corporation | Differential amplifier output stage |
US6721918B2 (en) | 2000-12-29 | 2004-04-13 | Intel Corporation | Method and apparatus for encoding a bus to minimize simultaneous switching outputs effect |
US20020087766A1 (en) * | 2000-12-29 | 2002-07-04 | Akhilesh Kumar | Method and apparatus to implement a locked-bus transaction |
US20020087775A1 (en) * | 2000-12-29 | 2002-07-04 | Looi Lily P. | Apparatus and method for interrupt delivery |
US6662277B2 (en) * | 2001-07-31 | 2003-12-09 | Hewlett-Packard Development Company, L.P. | Cache system with groups of lines and with coherency for both single lines and groups of lines |
CN100445973C (zh) * | 2002-04-17 | 2008-12-24 | 威盛电子股份有限公司 | 总线控制权仲裁方法与仲裁器 |
US6862665B2 (en) * | 2002-07-19 | 2005-03-01 | Intel Corporation | Method, system, and apparatus for space efficient cache coherency |
US7117316B2 (en) | 2002-08-05 | 2006-10-03 | Micron Technology, Inc. | Memory hub and access method having internal row caching |
US6820181B2 (en) | 2002-08-29 | 2004-11-16 | Micron Technology, Inc. | Method and system for controlling memory accesses to memory modules having a memory hub architecture |
US7120743B2 (en) | 2003-10-20 | 2006-10-10 | Micron Technology, Inc. | Arbitration system and method for memory responses in a hub-based memory system |
US7330992B2 (en) | 2003-12-29 | 2008-02-12 | Micron Technology, Inc. | System and method for read synchronization of memory modules |
US7966439B1 (en) * | 2004-11-24 | 2011-06-21 | Nvidia Corporation | Apparatus, system, and method for a fast data return memory controller |
US20080059674A1 (en) * | 2006-09-01 | 2008-03-06 | Jiaxiang Shi | Apparatus and method for chained arbitration of a plurality of inputs |
JP2009026136A (ja) * | 2007-07-20 | 2009-02-05 | Nec Electronics Corp | マルチプロセッサ装置 |
JP2009026135A (ja) * | 2007-07-20 | 2009-02-05 | Nec Electronics Corp | マルチプロセッサ装置 |
US20090164689A1 (en) * | 2007-12-21 | 2009-06-25 | Unisys Corporation | Early response indication for data retrieval in a multi-processor computing system |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3641505A (en) * | 1969-06-25 | 1972-02-08 | Bell Telephone Labor Inc | Multiprocessor computer adapted for partitioning into a plurality of independently operating systems |
US3812469A (en) * | 1972-05-12 | 1974-05-21 | Burroughs Corp | Multiprocessing system having means for partitioning into independent processing subsystems |
US4000485A (en) * | 1975-06-30 | 1976-12-28 | Honeywell Information Systems, Inc. | Data processing system providing locked operation of shared resources |
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 |
US4488217A (en) * | 1979-03-12 | 1984-12-11 | Digital Equipment Corporation | Data processing system with lock-unlock instruction facility |
US4392196A (en) * | 1980-08-11 | 1983-07-05 | Harris Corporation | Multi-processor time alignment control system |
US4466059A (en) * | 1981-10-15 | 1984-08-14 | International Business Machines Corporation | Method and apparatus for limiting data occupancy in a cache |
US4441155A (en) * | 1981-11-23 | 1984-04-03 | International Business Machines Corporation | Page controlled cache directory addressing |
US4464717A (en) * | 1982-03-31 | 1984-08-07 | Honeywell Information Systems Inc. | Multilevel cache system with graceful degradation capability |
US4586133A (en) * | 1983-04-05 | 1986-04-29 | Burroughs Corporation | Multilevel controller for a cache memory interface in a multiprocessing system |
US4562536A (en) * | 1983-06-30 | 1985-12-31 | Honeywell Information Systems Inc. | Directory test error mode control apparatus |
US4686621A (en) * | 1983-06-30 | 1987-08-11 | Honeywell Information Systems Inc. | Test apparatus for testing a multilevel cache system with graceful degradation capability |
US4667288A (en) * | 1983-06-30 | 1987-05-19 | Honeywell Information Systems Inc. | Enable/disable control checking apparatus |
US4564903A (en) * | 1983-10-05 | 1986-01-14 | International Business Machines Corporation | Partitioned multiprocessor programming system |
US5067071A (en) * | 1985-02-27 | 1991-11-19 | Encore Computer Corporation | Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus |
US4875155A (en) * | 1985-06-28 | 1989-10-17 | International Business Machines Corporation | Peripheral subsystem having read/write cache with record access |
JPS62194563A (ja) * | 1986-02-21 | 1987-08-27 | Hitachi Ltd | バツフア記憶装置 |
US4843541A (en) * | 1987-07-29 | 1989-06-27 | International Business Machines Corporation | Logical resource partitioning of a data processing system |
US5016167A (en) * | 1987-12-21 | 1991-05-14 | Amdahl Corporation | Resource contention deadlock detection and prevention |
US5251308A (en) * | 1987-12-22 | 1993-10-05 | Kendall Square Research Corporation | Shared memory multiprocessor with data hiding and post-store |
DE68923829T2 (de) * | 1988-06-21 | 1996-03-21 | Amdahl Corp | Startsteuerung von logischen Systemen in einem Datenverarbeitungssystem mit logischer Prozessormöglichkeit. |
US5142676A (en) * | 1988-12-28 | 1992-08-25 | Gte Laboratories Incorporated | Separate content addressable memories for storing locked segment addresses and locking processor identifications for controlling access to shared memory |
US4967414A (en) * | 1989-01-06 | 1990-10-30 | International Business Machines Corp. | LRU error detection using the collection of read and written LRU bits |
US5060136A (en) * | 1989-01-06 | 1991-10-22 | International Business Machines Corp. | Four-way associative cache with dlat and separately addressable arrays used for updating certain bits without reading them out first |
US5237670A (en) * | 1989-01-30 | 1993-08-17 | Alantec, Inc. | Method and apparatus for data transfer between source and destination modules |
JP2833062B2 (ja) * | 1989-10-30 | 1998-12-09 | 株式会社日立製作所 | キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置 |
JP2826857B2 (ja) * | 1989-12-13 | 1998-11-18 | 株式会社日立製作所 | キャッシュ制御方法および制御装置 |
JPH0470946A (ja) * | 1990-07-04 | 1992-03-05 | Mitsubishi Electric Corp | Dmaコントローラを内蔵した処理装置 |
JPH04119445A (ja) * | 1990-09-11 | 1992-04-20 | Canon Inc | 計算機システム |
US5408629A (en) * | 1992-08-13 | 1995-04-18 | Unisys Corporation | Apparatus and method for controlling exclusive access to portions of addressable memory in a multiprocessor system |
US5434976A (en) * | 1992-09-28 | 1995-07-18 | Standard Microsystems Corporation | Communications controller utilizing an external buffer memory with plural channels between a host and network interface operating independently for transferring packets between protocol layers |
JPH06110781A (ja) * | 1992-09-30 | 1994-04-22 | Nec Corp | キャッシュメモリ装置 |
JP2809961B2 (ja) * | 1993-03-02 | 1998-10-15 | 株式会社東芝 | マルチプロセッサ |
US5499354A (en) * | 1993-05-19 | 1996-03-12 | International Business Machines Corporation | Method and means for dynamic cache management by variable space and time binding and rebinding of cache extents to DASD cylinders |
US5450551A (en) * | 1993-05-28 | 1995-09-12 | International Business Machines Corporation | System direct memory access (DMA) support logic for PCI based computer system |
FR2707774B1 (fr) * | 1993-07-15 | 1995-08-18 | Bull Sa | Procédé de gestion cohérente des échanges entre des niveaux d'une hiérarchie de mémoires à au moins trois niveaux. |
US5504874A (en) * | 1993-09-29 | 1996-04-02 | Silicon Graphics, Inc. | System and method of implementing read resources to maintain cache coherency in a multiprocessor environment permitting split transactions |
WO1995025306A2 (en) * | 1994-03-14 | 1995-09-21 | Stanford University | Distributed shared-cache for multi-processors |
US5490280A (en) * | 1994-03-31 | 1996-02-06 | Intel Corporation | Apparatus and method for entry allocation for a resource buffer |
US5465336A (en) * | 1994-06-30 | 1995-11-07 | International Business Machines Corporation | Fetch and store buffer that enables out-of-order execution of memory instructions in a data processing system |
KR100357338B1 (ko) * | 1994-08-02 | 2003-02-11 | 가부시끼가이샤 히다치 세이사꾸쇼 | 데이타처리시스템 |
JP3531074B2 (ja) * | 1994-11-28 | 2004-05-24 | 富士通株式会社 | 記憶装置制御システム |
US5717942A (en) * | 1994-12-27 | 1998-02-10 | Unisys Corporation | Reset for independent partitions within a computer system |
US5838955A (en) * | 1995-05-03 | 1998-11-17 | Apple Computer, Inc. | Controller for providing access to a video frame buffer in split-bus transaction environment |
US5852718A (en) * | 1995-07-06 | 1998-12-22 | Sun Microsystems, Inc. | Method and apparatus for hybrid packet-switched and circuit-switched flow control in a computer system |
US5787265A (en) * | 1995-09-28 | 1998-07-28 | Emc Corporation | Bus arbitration system having a pair of logic networks to control data transfer between a memory and a pair of buses |
US5793992A (en) * | 1996-06-13 | 1998-08-11 | Vlsi Technology, Inc. | Method and apparatus for arbitrating access to main memory of a computer system |
US5717897A (en) * | 1996-09-09 | 1998-02-10 | Unisys Corporation | System for coordinating coherency of cache memories of multiple host computers of a distributed information system |
-
1997
- 1997-11-05 US US08/964,630 patent/US6049845A/en not_active Expired - Lifetime
-
1998
- 1998-11-04 KR KR10-2000-7004752A patent/KR100381619B1/ko not_active IP Right Cessation
- 1998-11-04 DE DE69812685T patent/DE69812685T2/de not_active Expired - Fee Related
- 1998-11-04 WO PCT/US1998/023459 patent/WO1999023570A1/en active IP Right Grant
- 1998-11-04 AU AU13051/99A patent/AU1305199A/en not_active Abandoned
- 1998-11-04 JP JP2000519362A patent/JP3635634B2/ja not_active Expired - Fee Related
- 1998-11-04 BR BR9814844-3A patent/BR9814844A/pt not_active Application Discontinuation
- 1998-11-04 AT AT98956552T patent/ATE235713T1/de not_active IP Right Cessation
- 1998-11-04 EP EP98956552A patent/EP1029283B1/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005529407A (ja) * | 2002-06-07 | 2005-09-29 | マイクロン テクノロジー,インコーポレイティド | 内部キャッシュおよび/またはメモリアクセス予測を持つメモリハブ |
JP4677630B2 (ja) * | 2002-06-07 | 2011-04-27 | ラウンド ロック リサーチ、エルエルシー | 内部キャッシュおよび/またはメモリアクセス予測を持つメモリハブ |
JP2010049674A (ja) * | 2008-05-23 | 2010-03-04 | Intel Corp | リンク相互接続の電源管理方法、システム、および装置 |
JP2013532325A (ja) * | 2010-06-01 | 2013-08-15 | アップル インコーポレイテッド | 適応予測によるクリティカルワードの転送 |
Also Published As
Publication number | Publication date |
---|---|
EP1029283A1 (en) | 2000-08-23 |
WO1999023570A1 (en) | 1999-05-14 |
US6049845A (en) | 2000-04-11 |
EP1029283B1 (en) | 2003-03-26 |
AU1305199A (en) | 1999-05-24 |
DE69812685D1 (de) | 2003-04-30 |
JP3635634B2 (ja) | 2005-04-06 |
KR20010031690A (ko) | 2001-04-16 |
KR100381619B1 (ko) | 2003-04-26 |
BR9814844A (pt) | 2000-10-03 |
ATE235713T1 (de) | 2003-04-15 |
DE69812685T2 (de) | 2003-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3635634B2 (ja) | データを転送するための推論的アービトレーション(Speculative Arbitration)を提供するシステムと方法 | |
US6092156A (en) | System and method for avoiding deadlocks utilizing split lock operations to provide exclusive access to memory during non-atomic operations | |
JP2001522091A (ja) | メモリ最適化状態 | |
US5778438A (en) | Method and apparatus for maintaining cache coherency in a computer system with a highly pipelined bus and multiple conflicting snoop requests | |
US6189078B1 (en) | System and method for increasing data transfer throughput for cache purge transactions using multiple data response indicators to maintain processor consistency | |
JP2501375B2 (ja) | マルチプロセッサシステム | |
US5991819A (en) | Dual-ported memory controller which maintains cache coherency using a memory line status table | |
JP3999821B2 (ja) | データ処理システム内でバス仲裁プロトコルを実行する方法および装置 | |
US6088771A (en) | Mechanism for reducing latency of memory barrier operations on a multiprocessor system | |
EP0777184B1 (en) | Cache coherency method and system | |
US5909699A (en) | Method and apparatus for supporting read, write, and invalidation operations to memory which maintain cache consistency | |
US8037253B2 (en) | Method and apparatus for global ordering to insure latency independent coherence | |
US6438660B1 (en) | Method and apparatus for collapsing writebacks to a memory for resource efficiency | |
JPH0786849B2 (ja) | 共有メモリ及び私用キャッシュメモリを有するマルチプロセッサコンピュータシステム | |
JPH02141845A (ja) | マルチプロセッサシステムにおいて中央処理ユニットにより主メモリからデータブロックを読み取る方法 | |
JP3550092B2 (ja) | キャッシュ装置及び制御方法 | |
US6567896B1 (en) | System and method for deleting read-only head entries in multi-processor computer systems supporting cache coherence with mixed protocols | |
JPH05100952A (ja) | データ処理装置 | |
JPH06282528A (ja) | データ転送方法及びそのシステム | |
KR100277446B1 (ko) | 데이타 처리 시스템 내의 캐쉬 메모리 데이타를 추론적으로공급하기 위한 방법 및 장치 | |
JPH0962577A (ja) | 情報処理システム及び情報処理方法 | |
CaoHuu et al. | Universal read/write buffer for multiprocessor cache coherency schemes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040527 |
|
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: 20041203 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20041224 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041224 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080114 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090114 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090114 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100114 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110114 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120114 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130114 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130114 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |