JP5941168B2 - 第1および第2のプロトコルドメインを有するデータ処理装置およびデータ処理装置に関する方法 - Google Patents
第1および第2のプロトコルドメインを有するデータ処理装置およびデータ処理装置に関する方法 Download PDFInfo
- Publication number
- JP5941168B2 JP5941168B2 JP2014559873A JP2014559873A JP5941168B2 JP 5941168 B2 JP5941168 B2 JP 5941168B2 JP 2014559873 A JP2014559873 A JP 2014559873A JP 2014559873 A JP2014559873 A JP 2014559873A JP 5941168 B2 JP5941168 B2 JP 5941168B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- write
- snoop
- protocol domain
- protocol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 46
- 238000000034 method Methods 0.000 title claims description 19
- 230000004044 response Effects 0.000 claims description 143
- 239000000872 buffer Substances 0.000 claims description 59
- 238000001514 detection method Methods 0.000 claims description 10
- 230000008685 targeting Effects 0.000 claims description 5
- 230000003139 buffering effect Effects 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000001693 membrane extraction with a sorbent interface Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
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)
- Multi Processors (AREA)
Description
第1のプロトコルドメインおよび第2のプロトコルドメインであって、書き込み対象アドレスと関連付けられたデータのローカルバージョンが別の場所に書き込まれることを要求するための書き込み要求を発行し、そしてスヌープ対象アドレスと関連付けられたデータのローカルバージョンへのアクセスを要求するためのスヌープ要求を受け取るように構成された少なくとも1つのデバイスをそれぞれが備える、第1のプロトコルドメインおよび第2のプロトコルドメインと、
前記第1のプロトコルドメインと前記第2のプロトコルドメインとの間で前記書き込み要求および前記スヌープ要求を転送するように構成されたブリッジと、を備え、
前記第1のプロトコルドメインが書き込み進行プロトコルの下で動作するように構成され、書き込み進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求のための前記スヌープ対象アドレスと同一である場合には、前記未解決スヌープ要求は、前記未解決書き込み要求がサービスされるまで阻止(block)され、
前記第2のプロトコルドメインがスヌープ進行プロトコルの下で動作するように構成され、スヌープ進行プロトコルの下で、未解決(pending)書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決書き込み要求は、前記未解決スヌープ要求が(service)されるまで阻止され、
前記ブリッジは、前記第1のプロトコルドメインから前記第2のプロトコルドメインへ発行された未解決書き込み要求に関する前記書き込み対象アドレスは、前記第2のプロトコルドメインから前記第1のプロトコルドメインへと発行された未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である、デッドロック条件を検出するように構成され、
前記ブリッジは、選択された要求がサービスされるのを待つことなく、前記選択された要求に対して、前記デッドロック条件の検出時に、早期応答を発行するように構成され、前記選択された要求は前記未解決書き込み要求または前記未解決スヌープ要求を含み、前記早期書き込み応答は、前記選択された要求がサービスされたことを、前記選択された要求を発行した前記発行プロトコルドメインに対して示す。
データ処理を実施するための第1のプロトコルドメイン手段および第2のプロトコルドメイン手段であって、それぞれが、書き込み対象アドレスと関連付けられたデータのローカルバージョンが別の場所に書き込まれることを要求するための書き込み要求を発行するための、そしてスヌープ対象アドレスと関連付けられたデータのローカルバージョンへのアクセスを要求するためのスヌープ要求を受け取るための、少なくとも1つのデバイス手段を備える、第1のプロトコルドメイン手段および第2のプロトコルドメイン手段と、
前記書き込み要求および前記スヌープ要求を、前記第1のプロトコルドメイン手段と前記第2のプロトコルドメイン手段との間で転送するためのブリッジ手段と、を備え、
前記第1のプロトコルドメイン手段は書き込み進行プロトコルの下で動作するように構成され、書き込み進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決スヌープ要求は、前記未解決書き込み要求がサービスされるまで阻止され、
前記第2のプロトコルドメイン手段は、スヌープ進行プロトコルの下で動作するように構成され、スヌープ進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決書き込み要求は前記未解決スヌープ要求がサービスされるまで阻止され、
前記ブリッジ手段は、前記第1のプロトコルドメイン手段から前記第2のプロトコルドメイン手段へ発行された未解決書き込み要求に関する前記書き込み対象アドレスが、前記第2のプロトコルドメイン手段から前記第1のプロトコルドメイン手段へ発行された未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である、デッドロック条件を検出するように構成され、
前記ブリッジ手段は、前記デッドロック条件の検出時、前記選択された要求がサービスされるのを待つことなく、選択された要求に対する早期応答を発行するように構成され、前記選択された要求は前記未解決書き込み要求または前記未解決スヌープ要求を含み、前記早期応答は、前記選択された要求を発行した発行プロトコルドメイン手段に対し、前記選択された要求がサービスされたことを示す。
前記方法は、
前記第1のプロトコルドメインから前記第2のプロトコルドメインへ発行された未解決書き込み要求に関する前記書き込み対象アドレスが、前記第2のプロトコルドメインから前記第1のプロトコルドメインへ発行された未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である、デッドロック条件を検出するステップと、
前記デッドロック条件の検出時に、前記選択された要求がサービスされるのを待つことなく、選択された要求に対する早期応答を発行するステップであって、前記選択された要求は前記未解決書き込み要求または前記未解決スヌープ要求を含み、前記早期応答は、前記選択された要求を発行した前記発行プロトコルドメインに対し、前記選択された要求がサービスされたことを示す、ステップと、を含む。
H:第2のプロトコルドメインB内のデバイスは、それぞれ対象アドレスAおよびEを指定する2つの読み取り動作Rd−A、Rd−Eを発行する。アドレスAおよびEと関連付けられたデータのバージョンはデバイスによって第1のプロトコルドメイン内に記憶され得るため、読み取り動作Rd−A、Rd−Eはスヌープ要求Snp−A、Snp−Eが第2のドメインBから第1のドメインAへ発行されるようにトリガーする。
I:第1のプロトコルドメインAは、4つの書き込み要求WriteClean−A〜WriteClean−Dを発行し、それぞれ対象アドレスA、B、C、Dを指定する。ここでも、アドレスA、B、C、Dは、同一アドレスまたは異なるアドレスであり得る。アドレスB、C、DがアドレスAとは異なる場合、書き込み要求WriteClean−B〜WriteClean−Dは、デッドロックがこれらの要求に関して検出されないため、第2のドメインBによってサービスされることが可能である。アドレスB、C、DのいずれかがアドレスAと同一である場合は、アドレスAに関する未解決スヌープ要求が存在するため、対応する書き込み要求はサービスされることができない。
J:第2のプロトコルドメインBは、デッドロック条件は、同一対象アドレスAを指定する書き込み要求WriteClean−Aとスヌープ要求Snp−Aとの間で発生することを検出し、そして信号Cancel−Aをブリッジ4に発行する。
K:信号Cancel−Aを第2のプロトコルドメインBから受け取ると、ブリッジ4はデッドロック条件を検出し、書き込み要求WriteClean−Aを取り消し、したがって、もはやサービスされることはない(必須ではないが、書き込み要求の取り消しは、他の要求をサービスするために、第2のプロトコルドメインB内の資源を解放することができる)。しかしながら、取り消された書き込み要求WriteClean−Aはバッファ内に保有され、必要に応じてその後の要求との合併を許可する。
L:デッドロック条件の検出をすると、ブリッジ4は早期書き込み応答B−Aを書き込み要求WriteClean−Aに対して発行する。早期書き込み応答B−Aを受け取ると、第1のドメインAは書き込みが第2のドメインBにおいてサービスされたと判定する。
早期書き込み応答B−Aを受け取ると、第1のプロトコルドメインAは、デッドロックを生じさせた書き込み要求と同一の対象アドレスAを指定する別の書き込み要求を発行(図9における事例M)、異なる対象アドレスを指定する別の書き込み要求を発行(図9における事例P)、または未解決スヌープ要求をサービスし得る(図9における事例Q)。
M:早期書き込み応答B−Aに応答して、第1のプロトコルドメインAが、デッドロックが検出されたアドレスと同一の対象アドレスAを対象とする別の書き込み要求を発行する場合は、
N:ブリッジ4は、新規書き込み要求を同一対象アドレスAに関する直前書き込み要求と合併する。書き込みデータバッファ14内の合併されたデータは、元の書き込み要求とその後の書き込み要求が順番に実施された場合に帰結するであろうデータに対応する。
O:ブリッジ4は、別の早期書き込み応答B−Aを第1のプロトコルドメインAに送る。この故に、第1のプロトコルドメインAは書き込みがサービスされたと判定し、そして再び、同一対象アドレスに関する別の書き込み要求を発行(図9における事例M)、異なる対象アドレスに関する書き込み要求を発行(事例P)、またはスヌープ要求の取り扱い(事例Q)、を選択し得る。
P:ドメインAが、デッドロック条件を生じさせた未解決書き込み要求WriteClean−Aの対象アドレスとは異なる対象アドレスを指定する書き込み要求WriteClean−Eを発行する場合は、対象アドレスAに関するデッドロックは、もはやそのアドレスAを対象とする未解決書き込み要求が存在しないために解決される。この故に、第1のプロトコルドメインAは、もはやスヌープ応答に対してサービスすることは自由である(図9において示される文字Q)。
Q:プロトコルドメインAは、結果的に、スヌープ要求Snp−Aに応答してスヌープ応答CRDATA−Aを発行する。スヌープ応答は、第1のプロトコルドメインA内に維持されるアドレスAと関連付けられたデータのローカルバージョンの値、ならびにローカルバージョンの一貫性状態に関する情報を含む。
R:ブリッジ4はスヌープ応答を受け取り、スヌープ応答に関連付けられたスヌープデータを対象アドレスAに関する合併された書き込み要求に関連付けられたデータと合併する。
S:ブリッジ4は、合併された応答データ(スヌープされたデータ−A)を第2のプロトコルドメインBに送る。
T:第2のプロトコルドメインBは、受け取ったスヌープデータを使用して読み取り要求Rd−Aをサービスする。元のデッドロックを生じさせた書き込み要求WriteClean−A、または同一対象アドレスを指定する任意の介入書き込み要求WriteClean−Aをもはや実行する必要はない。何故ならば、これらの要求に関連付けられた書き込みデータはスヌープデータと合併されたからである。
Claims (20)
- データ処理装置であって、
第1のプロトコルドメインおよび第2のプロトコルドメインであって、書き込み対象アドレスと関連付けられたデータのローカルバージョンが別の場所に書き込まれることを要求するための書き込み要求を発行し、そしてスヌープ対象アドレスと関連付けられたデータのローカルバージョンへのアクセスを要求するためのスヌープ要求を受け取るように構成された少なくとも1つのデバイスをそれぞれが備える、第1のプロトコルドメインおよび第2のプロトコルドメインと、
前記第1のプロトコルドメインと前記第2のプロトコルドメインとの間で前記書き込み要求および前記スヌープ要求を転送するように構成されたブリッジと、を備え、
前記第1のプロトコルドメインが書き込み進行プロトコルの下で動作するように構成され、前記書き込み進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決スヌープ要求は、前記未解決書き込み要求がサービスされるまで阻止され、
前記第2のプロトコルドメインがスヌープ進行プロトコルの下で動作するように構成され、前記スヌープ進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決書き込み要求は、前記未解決スヌープ要求がサービスされるまで阻止され、
前記ブリッジは、前記第1のプロトコルドメインから前記第2のプロトコルドメインへ発行された未解決書き込み要求に関する前記書き込み対象アドレスが、前記第2のプロトコルドメインから前記第1のプロトコルドメインへと発行された未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である、デッドロック条件を検出するように構成され、
前記ブリッジは、前記デッドロック条件の検出時に、選択された要求がサービスされるのを待つことなく、前記選択された要求に対して早期応答を発行するように構成され、前記選択された要求は前記未解決書き込み要求または前記未解決スヌープ要求を含み、前記早期応答は、前記選択された要求がサービスされたことを、前記選択された要求を発行した発行プロトコルドメインに対して示す、データ処理装置。 - 前記書き込み要求は書き戻し要求を含み、書き戻し要求を発行する前記デバイスは、前記ローカルバージョンを前記別の場所に書き込んだ後に、前記書き込み対象アドレスと関連付けられた前記データの前記ローカルバージョンを無効化するように構成される、請求項1に記載のデータ処理装置。
- 前記書き込み要求は書き込みクリーン要求を含み、書き込みクリーン要求を発行する前記デバイスは、前記データの前記ローカルバージョンを前記別の場所に書き込んだ後、前記書き込み対象アドレスに関連付けられた前記データへの排他的アクセスを維持することを許可される、請求項1および2のいずれかに記載のデータ処理装置。
- 前記ブリッジは、前記選択された要求に対して前記早期応答を発行した後、前記発行プロトコルドメインが、前記早期応答が発行された前記選択された要求と同一の対象アドレスに関する別の選択された要求を発行したかどうかを検出し、そうであれば、前記発行プロトコルドメインに対し、前記別の選択された要求に対する早期応答を発行するように構成される、請求項1〜3のいずれかに記載のデータ処理装置。
- 前記発行プロトコルドメインは、前記同一対象アドレスを対象とする最大M個の連続した選択された要求を発行するように構成され、Mが整数である、請求項4に記載のデータ処理装置。
- 前記選択された要求が前記第1のプロトコルドメインによって発行された前記未解決書き込み要求である場合には、前記未解決書き込み要求に対する前記早期応答を発行した後、前記第1のプロトコルドメインから前記未解決スヌープ要求に対するスヌープ応答を受け取ると、前記ブリッジは、前記スヌープ応答に関連付けられたスヌープデータを前記未解決書き込み要求に関連付けられた書き込みデータと合併し、前記合併データを前記第2のプロトコルドメインに送信するように構成される、請求項1〜5のいずれかに記載のデータ処理装置。
- 前記選択された要求は、前記ブリッジによって最後に検出された前記未解決書き込み要求および前記未解決スヌープ要求のうちの1つを含む、請求項1〜6のいずれかに記載のデータ処理装置。
- 前記選択された要求は、前記未解決書き込み要求および前記未解決スヌープ要求のうちの事前決定された1つを含む、請求項1〜6のいずれかに記載のデータ処理装置。
- 前記第1および第2のプロトコルドメインのうちの1つは、前記デッドロック条件を検出し、前記デッドロック条件が検出された場合には、前記ブリッジに対して信号を発行するように構成され、前記ブリッジは前記信号の受け取りに応答して前記デッドロック条件を検出するように構成される、請求項1〜8のいずれかに記載のデータ処理装置。
- 前記ブリッジは、前記第2のプロトコルドメインから前記第1のプロトコルドメインへ発行された未解決スヌープ要求を待ち行列に入れるためのスヌープ待ち行列を維持するように構成される、請求項1〜の9いずれかに記載のデータ処理装置。
- 前記スヌープ待ち行列が複数の未解決スヌープ要求を含む場合には、前記ブリッジは、デッドロック条件が前記スヌープ待ち行列内の最も古い未処理スヌープ要求に関して検出されたときにのみ、前記選択された要求に対する前記早期応答を発行するように構成される、請求項10に記載のデータ処理装置。
- 前記ブリッジは、前記第1のプロトコルドメインから前記第2のプロトコルドメインへ発行された未解決書き込み要求をバッファリングするように構成された書き込みバッファを備える、請求項1〜11のいずれかに記載のデータ処理装置。
- 前記書き込みバッファ内でバッファリングされる未解決書き込み要求と同一の対象書き込みアドレスを有する前記第1のプロトコルドメインからさらなる書き込み要求を受け取ると、前記ブリッジは前記さらなる書き込み要求を前記未解決書き込み要求と合併するように構成される、請求項12に記載のデータ処理装置。
- 前記書き込みバッファは、前記未解決スヌープ要求に対するスヌープ応答が前記第1のプロトコルドメインから受け取られるまで、前記デッドロック条件が検出された前記未解決書き込み要求を保有するように構成される、請求項12および13のいずれかに記載のデータ処理装置。
- 前記第1のプロトコルドメインは、最大N個の整数の未解決書き込み要求を取り扱うように構成され、前記書き込みバッファは前記第1のプロトコルドメインから発行された少なくともN個の未解決書き込み要求をバッファリングするための容量を有し、Nが整数である、請求項12〜14のいずれかに記載のデータ処理装置。
- 前記ブリッジと前記第1のプロトコルドメインとの間に連結される書き込みステージングバッファを備え、前記書き込みステージングバッファは前記第1のプロトコルドメインによって発行された書き込み要求を受け取り、前記書き込みバッファ内に前記書き込み要求をバッファリングするためのスペースがある場合には、前記書き込み要求を前記ブリッジに渡すように構成される、請求項12〜15のいずれかに記載のデータ処理装置。
- 前記選択された要求が、前記デッドロック条件が検出された前記未解決書き込み要求であり、そして前記ブリッジが、前記未解決書き込み要求に対する前記早期応答の発行時に前記未解決書き込み要求を取り消すように構成される、請求項1〜16のいずれかに記載のデータ処理装置。
- 前記第1のプロトコルドメインから前記第2のプロトコルドメインへ発行された未解決書き込み要求をバッファリングするように構成された書き込みバッファを備え、前記書き込みバッファは、前記未解決スヌープ要求に対するスヌープ応答が前記第1のプロトコルドメインから受け取られるまで、前記取り消された未解決書き込み要求を保有するように構成される、請求項17に記載のデータ処理装置。
- データ処理装置であって、
データ処理を実施するための第1のプロトコルドメイン手段および第2のプロトコルドメイン手段であって、それぞれが、書き込み対象アドレスと関連付けられたデータのローカルバージョンが別の場所に書き込まれることを要求するための書き込み要求を発行するための、そしてスヌープ対象アドレスと関連付けられたデータのローカルバージョンへのアクセスを要求するためのスヌープ要求を受け取るための、少なくとも1つのデバイス手段を備える、第1のプロトコルドメイン手段および第2のプロトコルドメイン手段と、
前記書き込み要求および前記スヌープ要求を、前記第1のプロトコルドメイン手段と前記第2のプロトコルドメイン手段との間で転送するためのブリッジ手段と、を備え、
前記第1のプロトコルドメイン手段は書き込み進行プロトコルの下で動作するように構成され、前記書き込み進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決スヌープ要求は、前記未解決書き込み要求がサービスされるまで阻止され、
前記第2のプロトコルドメイン手段は、スヌープ進行プロトコルの下で動作するように構成され、前記スヌープ進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決書き込み要求は前記未解決スヌープ要求がサービスされるまで阻止され、
前記ブリッジ手段は、前記第1のプロトコルドメイン手段から前記第2のプロトコルドメイン手段へ発行された未解決書き込み要求に関する前記書き込み対象アドレスが、前記第2のプロトコルドメイン手段から前記第1のプロトコルドメイン手段へ発行された未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である、デッドロック条件を検出するように構成され、
前記ブリッジ手段は、前記デッドロック条件の検出時、選択された要求が処理されるのを待つことなく、前記選択された要求に対する早期応答を発行するように構成され、前記選択された要求は前記未解決書き込み要求または前記未解決スヌープ要求を含み、前記早期応答は、前記選択された要求を発行した発行プロトコルドメインに対し、前記選択された要求がサービスされたことを示す、データ処理装置。 - 第1のプロトコルドメインおよび第2のプロトコルドメインを備え、それぞれが、書き込み対象アドレスと関連付けられたデータのローカルバージョンが別の場所に書き込まれることを要求するための書き込み要求を発行し、そしてスヌープ対象アドレスに関連付けられたデータのローカルバージョンへのアクセスを要求するためのスヌープ要求を受け取るように構成された少なくとも1つのデバイスを備える装置のための方法であって、前記第1のプロトコルドメインは書き込み進行プロトコルの下で動作し、前記書き込み進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決スヌープ要求は、前記未解決書き込み要求がサービスされるまで阻止され、前記第2のプロトコルドメインはスヌープ進行プロトコルの下で動作し、前記スヌープ進行プロトコルの下で、未解決書き込み要求に関する前記書き込み対象アドレスが未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である場合には、前記未解決書き込み要求は前記未解決スヌープ要求がサービスされるまで阻止され、
前記方法は、
前記第1のプロトコルドメインから前記第2のプロトコルドメインへ発行された未解決書き込み要求に関する前記書き込み対象アドレスが、前記第2のプロトコルドメインから前記第1のプロトコルドメインへ発行された未解決スヌープ要求に関する前記スヌープ対象アドレスと同一である、デッドロック条件を検出するステップと、
前記デッドロック条件の検出時に、選択された要求が処理されるのを待つことなく、前記選択された要求に対する早期応答を発行するステップであって、前記選択された要求は前記未解決書き込み要求または前記未解決スヌープ要求を含み、前記早期応答は、前記選択された要求を発行した発行プロトコルドメインに対し、前記選択された要求がサービスされたことを示す、ステップと、
を含む、方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2012/027359 WO2013130090A1 (en) | 2012-03-02 | 2012-03-02 | Data processing apparatus having first and second protocol domains, and method for the data processing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015512102A JP2015512102A (ja) | 2015-04-23 |
JP5941168B2 true JP5941168B2 (ja) | 2016-06-29 |
Family
ID=45814696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014559873A Active JP5941168B2 (ja) | 2012-03-02 | 2012-03-02 | 第1および第2のプロトコルドメインを有するデータ処理装置およびデータ処理装置に関する方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9372798B2 (ja) |
JP (1) | JP5941168B2 (ja) |
KR (1) | KR101928770B1 (ja) |
CN (1) | CN104145251B (ja) |
GB (1) | GB2514024B (ja) |
WO (1) | WO2013130090A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2539641B (en) * | 2015-06-11 | 2019-04-03 | Advanced Risc Mach Ltd | Coherency between a data processing device and interconnect |
US9990291B2 (en) * | 2015-09-24 | 2018-06-05 | Qualcomm Incorporated | Avoiding deadlocks in processor-based systems employing retry and in-order-response non-retry bus coherency protocols |
GR1008894B (el) * | 2015-12-15 | 2016-11-14 | Arm Limited | Βελτιστοποιημενη συνεχης ροη σε μια μη διατεταγμενη διασυνδεση |
US10503641B2 (en) * | 2016-05-31 | 2019-12-10 | Advanced Micro Devices, Inc. | Cache coherence for processing in memory |
US11159636B2 (en) * | 2017-02-08 | 2021-10-26 | Arm Limited | Forwarding responses to snoop requests |
US10394653B1 (en) * | 2017-05-02 | 2019-08-27 | Mellanox Technologies, Ltd. | Computing in parallel processing environments |
US11449489B2 (en) * | 2017-11-09 | 2022-09-20 | International Business Machines Corporation | Split transaction coherency protocol in a data processing system |
US11321354B2 (en) * | 2019-10-01 | 2022-05-03 | Huawei Technologies Co., Ltd. | System, computing node and method for processing write requests |
US11513962B2 (en) * | 2020-10-13 | 2022-11-29 | Arm Limited | Draining operation to cause store data to be written to persistent memory |
US20240119000A1 (en) * | 2022-10-10 | 2024-04-11 | International Business Machines Corporation | Input/output (i/o) store protocol for pipelining coherent operations |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5426765A (en) * | 1991-08-30 | 1995-06-20 | Compaq Computer Corporation | Multiprocessor cache abitration |
CA2109043A1 (en) * | 1993-01-29 | 1994-07-30 | Charles R. Moore | System and method for transferring data between multiple buses |
JPH0816475A (ja) | 1994-06-30 | 1996-01-19 | Toshiba Corp | マルチプロセッサシステム |
US5961623A (en) * | 1996-08-29 | 1999-10-05 | Apple Computer, Inc. | Method and system for avoiding starvation and deadlocks in a split-response interconnect of a computer system |
US6038651A (en) | 1998-03-23 | 2000-03-14 | International Business Machines Corporation | SMP clusters with remote resource managers for distributing work to other clusters while reducing bus traffic to a minimum |
US6487621B1 (en) * | 1999-08-17 | 2002-11-26 | Compaq Information Technologies Group, L.P. | Architecture, system and method for ensuring an ordered transaction on at least one of a plurality of multi-processor buses that experience a hit-to-modified snoop cycle |
US6587930B1 (en) * | 1999-09-23 | 2003-07-01 | International Business Machines Corporation | Method and system for implementing remstat protocol under inclusion and non-inclusion of L1 data in L2 cache to prevent read-read deadlock |
US20050160238A1 (en) * | 2004-01-20 | 2005-07-21 | Steely Simon C.Jr. | System and method for conflict responses in a cache coherency protocol with ordering point migration |
US8176259B2 (en) * | 2004-01-20 | 2012-05-08 | Hewlett-Packard Development Company, L.P. | System and method for resolving transactions in a cache coherency protocol |
US7620696B2 (en) * | 2004-01-20 | 2009-11-17 | Hewlett-Packard Development Company, L.P. | System and method for conflict responses in a cache coherency protocol |
US7177987B2 (en) * | 2004-01-20 | 2007-02-13 | Hewlett-Packard Development Company, L.P. | System and method for responses between different cache coherency protocols |
US7769959B2 (en) * | 2004-01-20 | 2010-08-03 | Hewlett-Packard Development Company, L.P. | System and method to facilitate ordering point migration to memory |
US8145847B2 (en) * | 2004-01-20 | 2012-03-27 | Hewlett-Packard Development Company, L.P. | Cache coherency protocol with ordering points |
US7395374B2 (en) * | 2004-01-20 | 2008-07-01 | Hewlett-Packard Company, L.P. | System and method for conflict responses in a cache coherency protocol with ordering point migration |
-
2012
- 2012-03-02 WO PCT/US2012/027359 patent/WO2013130090A1/en active Application Filing
- 2012-03-02 CN CN201280071045.7A patent/CN104145251B/zh active Active
- 2012-03-02 JP JP2014559873A patent/JP5941168B2/ja active Active
- 2012-03-02 US US14/380,298 patent/US9372798B2/en active Active
- 2012-03-02 GB GB1411661.0A patent/GB2514024B/en active Active
- 2012-03-02 KR KR1020147025925A patent/KR101928770B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
US9372798B2 (en) | 2016-06-21 |
GB2514024B (en) | 2020-04-08 |
KR101928770B1 (ko) | 2018-12-13 |
GB2514024A (en) | 2014-11-12 |
CN104145251A (zh) | 2014-11-12 |
JP2015512102A (ja) | 2015-04-23 |
GB201411661D0 (en) | 2014-08-13 |
KR20140131965A (ko) | 2014-11-14 |
CN104145251B (zh) | 2017-06-09 |
US20150012713A1 (en) | 2015-01-08 |
WO2013130090A1 (en) | 2013-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5941168B2 (ja) | 第1および第2のプロトコルドメインを有するデータ処理装置およびデータ処理装置に関する方法 | |
US7305523B2 (en) | Cache memory direct intervention | |
US8756377B2 (en) | Area and power efficient data coherency maintenance | |
US7827354B2 (en) | Victim cache using direct intervention | |
US6801986B2 (en) | Livelock prevention by delaying surrender of ownership upon intervening ownership request during load locked / store conditional atomic memory operation | |
US5881303A (en) | Multiprocessing system configured to perform prefetch coherency activity with separate reissue queue for each processing subnode | |
US20100250802A1 (en) | Data processing apparatus and method for performing hazard detection | |
US6279085B1 (en) | Method and system for avoiding livelocks due to colliding writebacks within a non-uniform memory access system | |
US5765196A (en) | System and method for servicing copyback requests in a multiprocessor system with a shared memory | |
NO312610B1 (no) | Datamaskin-system | |
US20060184804A1 (en) | Data processing apparatus security | |
JPH10289155A (ja) | Smpバスの共用状態でのキャッシュ・ラインの共用介入方法及びシステム | |
KR20030024895A (ko) | 캐시 코히어런트 멀티-프로세서 시스템에서 순서화된입출력 트랜잭션을 파이프라이닝하기 위한 방법 및 장치 | |
US6892283B2 (en) | High speed memory cloner with extended cache coherency protocols and responses | |
EP3800555B1 (en) | An apparatus and method for handling cache maintenance operations | |
US20040111576A1 (en) | High speed memory cloning facility via a source/destination switching mechanism | |
US7797495B1 (en) | Distributed directory cache | |
EP1942416B1 (en) | Central processing unit, information processor and central processing method | |
US20040111584A1 (en) | Dynamic software accessibility to a microprocessor system with a high speed memory cloner | |
US20080301376A1 (en) | Method, Apparatus, and System Supporting Improved DMA Writes | |
US20030126341A1 (en) | Method and apparatus for eliminating the software generated ready-signal to hardware devices that are not part of the memory coherency domain | |
US10775870B2 (en) | System and method for maintaining cache coherency | |
US7502917B2 (en) | High speed memory cloning facility via a lockless multiprocessor mechanism | |
JP2006301825A (ja) | アドレス競合時のスタベーション防止方法およびチップセットおよびマルチプロセッサシステム | |
US6986013B2 (en) | Imprecise cache line protection mechanism during a memory clone operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160406 |
|
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: 20160426 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160519 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5941168 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |