JP5221565B2 - スヌープ要求キャッシュを用いたスヌープ・フィルタリング - Google Patents
スヌープ要求キャッシュを用いたスヌープ・フィルタリング Download PDFInfo
- Publication number
- JP5221565B2 JP5221565B2 JP2009547456A JP2009547456A JP5221565B2 JP 5221565 B2 JP5221565 B2 JP 5221565B2 JP 2009547456 A JP2009547456 A JP 2009547456A JP 2009547456 A JP2009547456 A JP 2009547456A JP 5221565 B2 JP5221565 B2 JP 5221565B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- snoop
- snoop request
- data
- processor
- 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.)
- Expired - Fee Related
Links
- 238000001914 filtration Methods 0.000 title claims description 5
- 230000015654 memory Effects 0.000 claims description 75
- 238000000034 method Methods 0.000 claims description 55
- 230000004044 response Effects 0.000 claims description 54
- 230000008859 change Effects 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 3
- 239000008187 granular material Substances 0.000 description 55
- 238000010586 diagram Methods 0.000 description 5
- 239000000872 buffer Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000001629 suppression Effects 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
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
-
- 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
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)
Description
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
スヌープ・エンティティによって、データ・キャッシュを有するターゲット・プロセッサへのデータ・キャッシュ・スヌープ要求をフィルタする方法であって、
データ格納動作に応答してスヌープ要求キャッシュのルックアップを実行することと、
ヒットに応答して前記データ・キャッシュ・スヌープ要求を抑制することと
を備えた方法。
[C2]
前記ヒットに応答してデータ・キャッシュ・スヌープ要求を抑制することは更に、ヒットしているキャッシュ・エントリ内の、前記スヌープ・エンティティの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制することを更に備えたC1に記載の方法。
[C3]
前記ヒットに応答してデータ・キャッシュ・スヌープ要求を抑制することは更に、ヒットしているキャッシュ・エントリ内の、前記ターゲット・プロセッサの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制することを更に備えたC1に記載の方法。
[C4]
ミスに応答して前記スヌープ要求キャッシュ内のエントリを割り当てることを更に備えたC1に記載の方法。
[C5]
ミスに応答して、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ転送することを更に備えたC4に記載の方法。
[C6]
前記スヌープ要求キャッシュ内のエントリを割り当てることは更に、前記スヌープ要求キャッシュ内に、前記スヌープ・エンティティの識別情報を含めることを備えたC4に記載の方法。
[C7]
前記スヌープ要求キャッシュ内のエントリを割り当てることは更に、前記スヌープ要求キャッシュ内に、前記ターゲット・プロセッサの識別情報を含めることを備えたC4に記載の方法。
[C8]
ヒットに応答して、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ転送することであって、前記ターゲット・プロセッサの識別情報が前記ヒットしているキャッシュ・エントリ内に設定されていないことと、
前記ターゲット・プロセッサの識別情報を前記ヒットしているキャッシュ・エントリ内に設定することと
を更に備えたC1に記載の方法。
[C9]
前記スヌープ・エンティティは、データ・キャッシュを有するプロセッサであり、データ・ロード動作に応答して、スヌープ要求キャッシュのルックアップを実行することを更に備えたC1に記載の方法。
[C10]
ヒットに応答して、前記ヒットしているスヌープ要求キャッシュ・エントリを無効にすることを更に備えたC9に記載の方法。
[C11]
ヒットに応答して、前記プロセッサの識別情報を前記ヒットしているキャッシュ・エントリから除去することを更に備えたC9に記載の方法。
[C12]
前記スヌープ要求キャッシュのルックアップは、予め定められた属性を有するデータのデータ格納動作のためにのみ実行されるC1に記載の方法。
[C13]
前記予め定められた属性は、前記データが共有されることであるC12に記載の方法。
[C14]
前記データ・キャッシュ・スヌープ要求は、前記ターゲット・プロセッサのデータ・キャッシュ内のラインのキャッシュ状態を変更するように動作可能であるC1に記載の方法。
[C15]
前記データ・キャッシュ・スヌープ要求は、前記ターゲット・プロセッサのデータ・キャッシュからのラインを無効にするように動作可能なスヌープ・キル要求であるC14に記載の方法。
[C16]
メモリと、
データ・キャッシュを有する第1のプロセッサと、
予め定められた属性を有するデータをメモリへ書き込むと、データ・キャッシュ・スヌープ要求を前記第1のプロセッサへ向けるように動作可能なスヌープ・エンティティと、
各有効なエントリが、前のデータ・キャッシュ・スヌープ要求を示す少なくとも1つのエントリを備えた少なくとも1つのスヌープ要求キャッシュとを備え、
前記スヌープ・エンティティは更に、データ・キャッシュ・スヌープ要求を前記第1のプロセッサへ向ける前に、スヌープ要求キャッシュのルックアップを実行し、ヒットに応答して、前記データ・キャッシュ・スヌープ要求を抑制するように動作可能であるコンピュータ・システム。
[C17]
前記スヌープ・エンティティは更に、ミスに応答して、前記スヌープ要求キャッシュ内の新たなエントリを割り当てるように動作可能であるC16に記載のシステム。
[C18]
前記スヌープ・エンティティは更に、ヒットしているキャッシュ・エントリ内の、前記スヌープ・エンティティの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制するように動作可能であるC16に記載のシステム。
[C19]
前記スヌープ・エンティティは更に、ヒットしているキャッシュ・エントリ内の、前記第1のプロセッサの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制するように動作可能であるC16に記載のシステム。
[C20]
前記スヌープ・エンティティは更に、前記第1のプロセッサの識別情報が設定されていないヒットしているエントリ内に、前記第1のプロセッサの識別情報を設定するように動作可能であるC19に記載のシステム。
[C21]
前記予め定められた属性は、共有データを示すC16に記載のシステム。
[C22]
前記第1のプロセッサは更に、予め定められた属性を有するデータをメモリから読み取ると、スヌープ要求キャッシュのルックアップを実行し、ヒットに応答して、ヒットしているスヌープ要求キャッシュ・エントリを変更するように動作可能であるC16に記載のシステム。
[C23]
前記第1のプロセッサは、前記ヒットしているスヌープ要求キャッシュ・エントリを無効にするように動作可能であるC22に記載のシステム。
[C24]
前記第1のプロセッサは、前記ヒットしているスヌープ要求キャッシュ・エントリから、自身の識別情報をクリアするように動作可能であるC22に記載のシステム。
[C25]
前記少なくとも1つのスヌープ要求キャッシュは、予め定められた属性を有するデータをメモリへ書き込むと、前記第1のプロセッサと前記スヌープ・エンティティとの両方がルックアップを実行する、単一のスヌープ要求キャッシュを備えたC16に記載のシステム。
[C26]
前記少なくとも1つのスヌープ要求キャッシュは、
予め定められた属性を有するデータをメモリへ書き込むと、前記第1のプロセッサがルックアップを実行するように動作可能な第1のスヌープ要求キャッシュと、
予め定められた属性を有するデータをメモリへ書き込むと、前記スヌープ・エンティティがルックアップを実行するように動作可能な第2のスヌープ要求キャッシュと
を備えたC16に記載のシステム。
[C27]
前記第1のプロセッサは更に、予め定められた属性を有するデータをメモリから読み取ると、前記第2のスヌープ要求キャッシュ内のルックアップを実行するように動作可能であるC26に記載のシステム。
[C28]
データ・キャッシュを有する第2のプロセッサと、
予め定められた属性を有するデータをメモリへ書き込むと、前記スヌープ・エンティティがルックアップを実行するように動作可能な第3のスヌープ要求キャッシュと
を更に備えたC26に記載のシステム。
Claims (43)
- スヌープ・エンティティによって、データ・キャッシュを有するターゲット・プロセッサへのデータ・キャッシュ・スヌープ要求をフィルタする方法であって、
前記データ・キャッシュ・スヌープ要求が前記ターゲット・プロセッサへ送信される前に、データ格納動作に応答してスヌープ要求キャッシュのルックアップを実行することと、
ヒットに応答して前記データ・キャッシュ・スヌープ要求を抑制することと
を備え、
前記データ・キャッシュ・スヌープ要求を抑制することは、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ送信することを実行しないことを備える、方法。 - 前記ヒットに応答してデータ・キャッシュ・スヌープ要求を抑制することは更に、ヒットしているキャッシュ・エントリ内の、前記スヌープ・エンティティの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制することを更に備えた請求項1に記載の方法。
- 前記ヒットに応答してデータ・キャッシュ・スヌープ要求を抑制することは更に、ヒットしているキャッシュ・エントリ内の、前記ターゲット・プロセッサの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制することを更に備えた請求項1に記載の方法。
- ミスに応答して前記スヌープ要求キャッシュ内のエントリを割り当てることを更に備えた請求項1に記載の方法。
- ミスに応答して、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ転送することを更に備えた請求項4に記載の方法。
- 前記スヌープ要求キャッシュ内のエントリを割り当てることは更に、前記スヌープ要求キャッシュ内に、前記スヌープ・エンティティの識別情報を含めることを備えた請求項4に記載の方法。
- 前記スヌープ要求キャッシュ内のエントリを割り当てることは更に、前記スヌープ要求キャッシュ内に、前記ターゲット・プロセッサの識別情報を含めることを備えた請求項4に記載の方法。
- ヒットに応答して、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ転送することであって、前記ターゲット・プロセッサの識別情報が前記ヒットしているキャッシュ・エントリ内に設定されていないことと、
前記ターゲット・プロセッサの識別情報を前記ヒットしているキャッシュ・エントリ内に設定することと
を更に備えた請求項1に記載の方法。 - 前記スヌープ・エンティティは、データ・キャッシュを有するプロセッサであり、データ・ロード動作に応答して、スヌープ要求キャッシュのルックアップを実行することを更に備えた請求項1に記載の方法。
- ヒットに応答して、前記ヒットしているスヌープ要求キャッシュ・エントリを無効にすることを更に備えた請求項9に記載の方法。
- ヒットに応答して、前記プロセッサの識別情報を前記ヒットしているキャッシュ・エントリから除去することを更に備えた請求項9に記載の方法。
- 前記スヌープ要求キャッシュのルックアップは、予め定められた属性を有するデータのデータ格納動作のためにのみ実行される請求項1に記載の方法。
- 前記予め定められた属性は、前記データが共有されることである請求項12に記載の方法。
- 前記データ・キャッシュ・スヌープ要求は、前記ターゲット・プロセッサのデータ・キャッシュ内のラインのキャッシュ状態を変更するように動作可能である請求項1に記載の方法。
- 前記データ・キャッシュ・スヌープ要求は、前記ターゲット・プロセッサのデータ・キャッシュからのラインを無効にするように動作可能なスヌープ・キル要求である請求項14に記載の方法。
- メモリと、
データ・キャッシュを有する第1のプロセッサと、
予め定められた属性を有するデータをメモリへ書き込むと、データ・キャッシュ・スヌープ要求を前記第1のプロセッサへ向けるように動作可能なスヌープ・エンティティと、
各有効なエントリが、前のデータ・キャッシュ・スヌープ要求を示す少なくとも1つのエントリを備えた少なくとも1つのスヌープ要求キャッシュとを備え、
前記スヌープ・エンティティは更に、データ・キャッシュ・スヌープ要求を前記第1のプロセッサへ送信する前に、スヌープ要求キャッシュのルックアップを実行し、前記データ・キャッシュ・スヌープ要求を前記第1のプロセッサへ送信することを実行しないように構成されることによって、ヒットに応答して、前記データ・キャッシュ・スヌープ要求を抑制するように動作可能であるコンピュータ・システム。 - 前記スヌープ・エンティティは更に、ミスに応答して、前記スヌープ要求キャッシュ内の新たなエントリを割り当てるように動作可能である請求項16に記載のシステム。
- 前記スヌープ・エンティティは更に、ヒットしているキャッシュ・エントリ内の、前記スヌープ・エンティティの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制するように動作可能である請求項16に記載のシステム。
- 前記スヌープ・エンティティは更に、ヒットしているキャッシュ・エントリ内の、前記第1のプロセッサの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制するように動作可能である請求項16に記載のシステム。
- 前記スヌープ・エンティティは更に、前記第1のプロセッサの識別情報が設定されていないヒットしているエントリ内に、前記第1のプロセッサの識別情報を設定するように動作可能である請求項19に記載のシステム。
- 前記予め定められた属性は、共有データを示す請求項16に記載のシステム。
- 前記第1のプロセッサは更に、予め定められた属性を有するデータをメモリから読み取ると、スヌープ要求キャッシュのルックアップを実行し、ヒットに応答して、ヒットしているスヌープ要求キャッシュ・エントリを変更するように動作可能である請求項16に記載のシステム。
- 前記第1のプロセッサは、前記ヒットしているスヌープ要求キャッシュ・エントリを無効にするように動作可能である請求項22に記載のシステム。
- 前記第1のプロセッサは、前記ヒットしているスヌープ要求キャッシュ・エントリから、自身の識別情報をクリアするように動作可能である請求項22に記載のシステム。
- 前記少なくとも1つのスヌープ要求キャッシュは、予め定められた属性を有するデータをメモリへ書き込むと、前記第1のプロセッサと前記スヌープ・エンティティとの両方がルックアップを実行する、単一のスヌープ要求キャッシュを備えた請求項16に記載のシステム。
- 前記少なくとも1つのスヌープ要求キャッシュは、
予め定められた属性を有するデータをメモリへ書き込むと、前記第1のプロセッサがルックアップを実行するように動作可能な第1のスヌープ要求キャッシュと、
予め定められた属性を有するデータをメモリへ書き込むと、前記スヌープ・エンティティがルックアップを実行するように動作可能な第2のスヌープ要求キャッシュと
を備えた請求項16に記載のシステム。 - 前記第1のプロセッサは更に、予め定められた属性を有するデータをメモリから読み取ると、前記第2のスヌープ要求キャッシュ内のルックアップを実行するように動作可能である請求項26に記載のシステム。
- データ・キャッシュを有する第2のプロセッサと、
予め定められた属性を有するデータをメモリへ書き込むと、前記スヌープ・エンティティがルックアップを実行するように動作可能な第3のスヌープ要求キャッシュと
を更に備えた請求項26に記載のシステム。 - スヌープ・エンティティによって、データ・キャッシュを有するターゲット・プロセッサへのデータ・キャッシュ・スヌープ要求をフィルタするためのコンピューティング・システムであって、
前記データ・キャッシュ・スヌープ要求が前記ターゲット・プロセッサへ送信される前に、データ格納動作に応答してスヌープ要求キャッシュのルックアップを実行する手段と、
ヒットに応答して前記データ・キャッシュ・スヌープ要求を抑制する手段と
を備え、
前記データ・キャッシュ・スヌープ要求を抑制する手段は、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ送信することを実行しない手段を備える、システム。 - 前記ヒットに応答してデータ・キャッシュ・スヌープ要求を抑制する手段は更に、ヒットしているキャッシュ・エントリ内の、前記スヌープ・エンティティの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制する手段を更に備えた請求項29に記載のシステム。
- 前記ヒットに応答してデータ・キャッシュ・スヌープ要求を抑制する手段は更に、ヒットしているキャッシュ・エントリ内の、前記ターゲット・プロセッサの識別に応答して、前記データ・キャッシュ・スヌープ要求を抑制する手段を更に備えた請求項29に記載のシステム。
- ミスに応答して前記スヌープ要求キャッシュ内のエントリを割り当てる手段を更に備えた請求項29に記載のシステム。
- ミスに応答して、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ転送する手段を更に備えた請求項32に記載のシステム。
- 前記スヌープ要求キャッシュ内のエントリを割り当てる手段は更に、前記スヌープ要求キャッシュ内に、前記スヌープ・エンティティの識別情報を含める手段を備えた請求項32に記載のシステム。
- 前記スヌープ要求キャッシュ内のエントリを割り当てる手段は更に、前記スヌープ要求キャッシュ内に、前記ターゲット・プロセッサの識別情報を含める手段を備えた請求項32に記載のシステム。
- ヒットに応答して、前記データ・キャッシュ・スヌープ要求を前記ターゲット・プロセッサへ転送する手段であって、前記ターゲット・プロセッサの識別情報が前記ヒットしているキャッシュ・エントリ内に設定されていない手段と、
前記ターゲット・プロセッサの識別情報を前記ヒットしているキャッシュ・エントリ内に設定する手段と
を更に備えた請求項29に記載のシステム。 - 前記スヌープ・エンティティは、データ・キャッシュを有するプロセッサであり、データ・ロード動作に応答して、スヌープ要求キャッシュのルックアップを実行する手段を更に備えた請求項29に記載のシステム。
- ヒットに応答して、前記ヒットしているスヌープ要求キャッシュ・エントリを無効にする手段を更に備えた請求項37に記載のシステム。
- ヒットに応答して、前記プロセッサの識別情報を前記ヒットしているキャッシュ・エントリから除去する手段を更に備えた請求項37に記載のシステム。
- 前記スヌープ要求キャッシュのルックアップを実行する手段は、予め定められた属性を有するデータのデータ格納動作のみのためのものである請求項29に記載のシステム。
- 前記予め定められた属性は、前記データが共有されることである請求項40に記載のシステム。
- 前記データ・キャッシュ・スヌープ要求は、前記ターゲット・プロセッサのデータ・キャッシュ内のラインのキャッシュ状態を変更するように動作可能である請求項29に記載のシステム。
- 前記データ・キャッシュ・スヌープ要求は、前記ターゲット・プロセッサのデータ・キャッシュからのラインを無効にするように動作可能なスヌープ・キル要求である請求項42に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/627,705 | 2007-01-26 | ||
US11/627,705 US20080183972A1 (en) | 2007-01-26 | 2007-01-26 | Snoop Filtering Using a Snoop Request Cache |
PCT/US2008/052216 WO2008092159A1 (en) | 2007-01-26 | 2008-01-28 | Snoop filtering using a snoop request cache |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010517184A JP2010517184A (ja) | 2010-05-20 |
JP5221565B2 true JP5221565B2 (ja) | 2013-06-26 |
Family
ID=39512520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009547456A Expired - Fee Related JP5221565B2 (ja) | 2007-01-26 | 2008-01-28 | スヌープ要求キャッシュを用いたスヌープ・フィルタリング |
Country Status (10)
Country | Link |
---|---|
US (1) | US20080183972A1 (ja) |
EP (1) | EP2115597A1 (ja) |
JP (1) | JP5221565B2 (ja) |
KR (2) | KR101313710B1 (ja) |
CN (1) | CN101601019B (ja) |
BR (1) | BRPI0807437A2 (ja) |
CA (1) | CA2674723A1 (ja) |
MX (1) | MX2009007940A (ja) |
RU (1) | RU2443011C2 (ja) |
WO (1) | WO2008092159A1 (ja) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8266381B2 (en) | 2008-02-01 | 2012-09-11 | International Business Machines Corporation | Varying an amount of data retrieved from memory based upon an instruction hint |
US8140771B2 (en) * | 2008-02-01 | 2012-03-20 | International Business Machines Corporation | Partial cache line storage-modifying operation based upon a hint |
US8255635B2 (en) | 2008-02-01 | 2012-08-28 | International Business Machines Corporation | Claiming coherency ownership of a partial cache line of data |
US8024527B2 (en) * | 2008-02-01 | 2011-09-20 | International Business Machines Corporation | Partial cache line accesses based on memory access patterns |
US8250307B2 (en) * | 2008-02-01 | 2012-08-21 | International Business Machines Corporation | Sourcing differing amounts of prefetch data in response to data prefetch requests |
US8108619B2 (en) * | 2008-02-01 | 2012-01-31 | International Business Machines Corporation | Cache management for partial cache line operations |
US8117401B2 (en) * | 2008-02-01 | 2012-02-14 | International Business Machines Corporation | Interconnect operation indicating acceptability of partial data delivery |
US8762652B2 (en) * | 2008-04-30 | 2014-06-24 | Freescale Semiconductor, Inc. | Cache coherency protocol in a data processing system |
US8423721B2 (en) * | 2008-04-30 | 2013-04-16 | Freescale Semiconductor, Inc. | Cache coherency protocol in a data processing system |
US8706974B2 (en) * | 2008-04-30 | 2014-04-22 | Freescale Semiconductor, Inc. | Snoop request management in a data processing system |
US9158692B2 (en) * | 2008-08-12 | 2015-10-13 | International Business Machines Corporation | Cache injection directing technique |
US8868847B2 (en) * | 2009-03-11 | 2014-10-21 | Apple Inc. | Multi-core processor snoop filtering |
US8117390B2 (en) | 2009-04-15 | 2012-02-14 | International Business Machines Corporation | Updating partial cache lines in a data processing system |
US8140759B2 (en) | 2009-04-16 | 2012-03-20 | International Business Machines Corporation | Specifying an access hint for prefetching partial cache block data in a cache hierarchy |
US8856456B2 (en) | 2011-06-09 | 2014-10-07 | Apple Inc. | Systems, methods, and devices for cache block coherence |
US9477600B2 (en) | 2011-08-08 | 2016-10-25 | Arm Limited | Apparatus and method for shared cache control including cache lines selectively operable in inclusive or non-inclusive mode |
CN104583957B (zh) | 2012-06-15 | 2018-08-10 | 英特尔公司 | 具有无消歧乱序加载存储队列的重新排序的推测性指令序列 |
KR101818967B1 (ko) | 2012-06-15 | 2018-01-16 | 인텔 코포레이션 | 명확화 없는 비순차 load store 큐 |
KR101826399B1 (ko) | 2012-06-15 | 2018-02-06 | 인텔 코포레이션 | Load store 재정렬 및 최적화를 구현하는 명령어 정의 |
EP2862061A4 (en) | 2012-06-15 | 2016-12-21 | Soft Machines Inc | MEMORY PRECISION FOR VIRTUAL LOAD WITH DYNAMIC SHIPPING WINDOW WITH UNIFORM STRUCTURE |
KR101667167B1 (ko) | 2012-06-15 | 2016-10-17 | 소프트 머신즈, 인크. | Load store 재정렬 및 최적화로부터 생기는 투기적 포워딩 예측 착오/오류로부터의 복원을 구현하는 방법 및 시스템 |
EP2862062B1 (en) | 2012-06-15 | 2024-03-06 | Intel Corporation | A virtual load store queue having a dynamic dispatch window with a distributed structure |
US9268697B2 (en) * | 2012-12-29 | 2016-02-23 | Intel Corporation | Snoop filter having centralized translation circuitry and shadow tag array |
US20160110113A1 (en) * | 2014-10-17 | 2016-04-21 | Texas Instruments Incorporated | Memory Compression Operable for Non-contiguous write/read Addresses |
US9575893B2 (en) * | 2014-10-22 | 2017-02-21 | Mediatek Inc. | Snoop filter for multi-processor system and related snoop filtering method |
WO2017010004A1 (ja) * | 2015-07-16 | 2017-01-19 | 株式会社東芝 | メモリコントローラ、情報処理装置および処理装置 |
US10157133B2 (en) * | 2015-12-10 | 2018-12-18 | Arm Limited | Snoop filter for cache coherency in a data processing system |
US9898408B2 (en) * | 2016-04-01 | 2018-02-20 | Intel Corporation | Sharing aware snoop filter apparatus and method |
US10360158B2 (en) | 2017-03-27 | 2019-07-23 | Samsung Electronics Co., Ltd. | Snoop filter with stored replacement information, method for same, and system including victim exclusive cache and snoop filter shared replacement policies |
KR20220083522A (ko) | 2020-12-11 | 2022-06-20 | 윤태진 | 세척이 용이한 개폐형 싱크대 음식물 거름망 |
US11983538B2 (en) * | 2022-04-18 | 2024-05-14 | Cadence Design Systems, Inc. | Load-store unit dual tags and replays |
GB2620198B (en) * | 2022-07-01 | 2024-07-24 | Advanced Risc Mach Ltd | Coherency control |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5210845A (en) * | 1990-11-28 | 1993-05-11 | Intel Corporation | Controller for two-way set associative cache |
US5745732A (en) * | 1994-11-15 | 1998-04-28 | Cherukuri; Ravikrishna V. | Computer system including system controller with a write buffer and plural read buffers for decoupled busses |
US6516368B1 (en) * | 1999-11-09 | 2003-02-04 | International Business Machines Corporation | Bus master and bus snooper for execution of global operations utilizing a single token for multiple operations with explicit release |
RU2189630C1 (ru) * | 2001-11-21 | 2002-09-20 | Бабаян Борис Арташесович | Способ фильтрации межпроцессорных запросов в многопроцессорных вычислительных системах и устройство для его осуществления |
US6985972B2 (en) * | 2002-10-03 | 2006-01-10 | International Business Machines Corporation | Dynamic cache coherency snooper presence with variable snoop latency |
US7062612B2 (en) * | 2002-12-12 | 2006-06-13 | International Business Machines Corporation | Updating remote locked cache |
US7089376B2 (en) * | 2003-03-20 | 2006-08-08 | International Business Machines Corporation | Reducing snoop response time for snoopers without copies of requested data via snoop filtering |
US7392351B2 (en) * | 2005-03-29 | 2008-06-24 | International Business Machines Corporation | Method and apparatus for filtering snoop requests using stream registers |
-
2007
- 2007-01-26 US US11/627,705 patent/US20080183972A1/en not_active Abandoned
-
2008
- 2008-01-28 KR KR1020097017828A patent/KR101313710B1/ko active IP Right Grant
- 2008-01-28 MX MX2009007940A patent/MX2009007940A/es active IP Right Grant
- 2008-01-28 EP EP08728411A patent/EP2115597A1/en not_active Withdrawn
- 2008-01-28 RU RU2009132090/08A patent/RU2443011C2/ru not_active IP Right Cessation
- 2008-01-28 WO PCT/US2008/052216 patent/WO2008092159A1/en active Application Filing
- 2008-01-28 BR BRPI0807437-2A patent/BRPI0807437A2/pt not_active IP Right Cessation
- 2008-01-28 KR KR1020127010449A patent/KR20120055739A/ko not_active Application Discontinuation
- 2008-01-28 JP JP2009547456A patent/JP5221565B2/ja not_active Expired - Fee Related
- 2008-01-28 CA CA002674723A patent/CA2674723A1/en not_active Abandoned
- 2008-01-28 CN CN2008800029873A patent/CN101601019B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010517184A (ja) | 2010-05-20 |
CN101601019A (zh) | 2009-12-09 |
WO2008092159A1 (en) | 2008-07-31 |
MX2009007940A (es) | 2009-08-18 |
KR20120055739A (ko) | 2012-05-31 |
RU2009132090A (ru) | 2011-03-10 |
CN101601019B (zh) | 2013-07-24 |
US20080183972A1 (en) | 2008-07-31 |
RU2443011C2 (ru) | 2012-02-20 |
CA2674723A1 (en) | 2008-07-31 |
EP2115597A1 (en) | 2009-11-11 |
KR20090110920A (ko) | 2009-10-23 |
KR101313710B1 (ko) | 2013-10-01 |
BRPI0807437A2 (pt) | 2014-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5221565B2 (ja) | スヌープ要求キャッシュを用いたスヌープ・フィルタリング | |
US9513904B2 (en) | Computer processor employing cache memory with per-byte valid bits | |
EP2430551B1 (en) | Cache coherent support for flash in a memory hierarchy | |
US6631447B1 (en) | Multiprocessor system having controller for controlling the number of processors for which cache coherency must be guaranteed | |
US5359723A (en) | Cache memory hierarchy having a large write through first level that allocates for CPU read misses only and a small write back second level that allocates for CPU write misses only | |
US5893144A (en) | Hybrid NUMA COMA caching system and methods for selecting between the caching modes | |
US7657710B2 (en) | Cache coherence protocol with write-only permission | |
JP2541771B2 (ja) | 原子的メモリ参照方法及びシステム | |
JP6831788B2 (ja) | キャッシュ保守命令 | |
EP0780769A1 (en) | Hybrid numa coma caching system and methods for selecting between the caching modes | |
US20110055515A1 (en) | Reducing broadcasts in multiprocessors | |
US7003630B1 (en) | Mechanism for proxy management of multiprocessor storage hierarchies | |
JP2006277762A (ja) | 分散共有メモリマルチプロセッサシステムのための分割疎ディレクトリ | |
JPWO2012070291A1 (ja) | キャッシュコヒーレンシ制御の方法、システムおよびプログラム | |
JP2004326758A (ja) | 局所的なキャッシュ・ブロック・フラッシュ命令 | |
CN113892090A (zh) | 多级高速缓存安全性 | |
CN113853589A (zh) | 高速缓冲存储器大小改变 | |
US20030115402A1 (en) | Multiprocessor system | |
WO2013186694A2 (en) | System and method for data classification and efficient virtual cache coherence without reverse translation | |
US8332592B2 (en) | Graphics processor with snoop filter | |
US20210097000A1 (en) | Selective override of cache coherence in multi-processor computer systems | |
JP3068469B2 (ja) | 2次レベルキャッシュメモリシステム | |
US6643741B1 (en) | Method and apparatus for efficient cache management and avoiding unnecessary cache traffic | |
US9442856B2 (en) | Data processing apparatus and method for handling performance of a cache maintenance operation | |
Mallya et al. | Simulation based performance study of cache coherence protocols |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120110 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120410 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120417 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120417 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120717 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20121016 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20121023 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121211 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130111 |
|
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: 20130205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130307 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160315 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5221565 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 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 |
|
LAPS | Cancellation because of no payment of annual fees |