JP2008517370A - データ処理システムと処理装置のキャッシュコヒーレンスを監視する方法 - Google Patents
データ処理システムと処理装置のキャッシュコヒーレンスを監視する方法 Download PDFInfo
- Publication number
- JP2008517370A JP2008517370A JP2007536341A JP2007536341A JP2008517370A JP 2008517370 A JP2008517370 A JP 2008517370A JP 2007536341 A JP2007536341 A JP 2007536341A JP 2007536341 A JP2007536341 A JP 2007536341A JP 2008517370 A JP2008517370 A JP 2008517370A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- processing system
- data processing
- monitoring
- cache coherence
- 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.)
- Withdrawn
Links
- 238000012545 processing Methods 0.000 title claims abstract description 105
- 238000012544 monitoring process Methods 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims description 18
- 230000007704 transition Effects 0.000 claims abstract description 71
- 230000008878 coupling Effects 0.000 claims description 5
- 238000010168 coupling process Methods 0.000 claims description 5
- 238000005859 coupling reaction Methods 0.000 claims description 5
- 230000008439 repair process Effects 0.000 claims description 3
- 238000012795 verification Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 8
- 238000012360 testing method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000001427 coherent effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000271897 Viperidae Species 0.000 description 1
- 210000003888 boundary cell Anatomy 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007334 memory performance Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/28—Error detection; Error correction; Monitoring by checking the correct order of processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
Abstract
本発明は、複数の処理装置(PU)と、前記処理装置(PU)からのデータを格納するための共有メモリ(M)と、メモリー(M)と複数の処理装置(PU)とを結合するための相互接続手段(IM)とを有するデータ処理システムに関する。処理装置(PU)のうちの少なくとも1つはキャッシュメモリ(C)を具えている。さらに、前記複数の処理装置(PU)のうち少なくとも1つにおけるキャッシュメモリ(C)の少なくともいくつかの状態遷移をバッファに格納する遷移バッファ(STB)が設けられる。あらゆるキャッシュコヒーレンス違反をも発見するために、遷移バッファ(STB)のデータに基づいて、前記複数の処理装置(PU)のキャッシュ(C)のキャッシュコヒーレンスを監視する監視手段(MM)が設けられる。
Description
本発明は、複数の処理装置と、これらの処理装置からのデータを格納するための共有メモリと、その共有メモリを複数の処理装置と結合するための相互接続手段とを有するデータ処理システムに関するものである。また、本発明は、複数の処理装置のキャッシュコヒーレンスを監視する方法に関するものでもある。
今日のシステムオンチップにおいて、複数の処理装置は、それぞれが何らかの相互接続を介してアクセスできる1つのメモリを共有する。一般的に、この種の相互接続は処理装置−メモリ相互接続であって、チップ上の単一バスまたは複合ポイント・ツー・ポイント型ネットワークとすることができる。処理装置はキャッシュメモリを有することが多い。キャッシュはハードウェア管理されるオンチップメモリであり、長いメモリレイテンシを隠蔽し、外部DRAMの帯域幅を節約する。多数のキャッシュがIC内に存在する場合、キャッシュは正しいデータを処理装置に送信するために同期しなければならない。この問題は、キャッシュコヒーレンスとして知られている。インテルのMontecito、IBMのPower 5、フィリップスのViper PNX8550、サンのMAJC等のような現代のマルチプロセッサ集積回路は、一般的に、何百万ものトランジスタを具えるので、その設計を検証するのがますます難しくなっている。再製造しないでバグの回避方法を見つけるか、あるいはハードウェアを修正しチップを迅速に再製造するために、ハードウェアのいかなる種類の論理バグもできるだけ速く発見することが望ましい。このようにして、製品化に要する時間は短縮される。
任意のハードウェアバグを見つける技術は、一般的にデバッグと呼ばれている。現代の複雑な集積回路は、ブレイクポイント・モジュールとして具現化できるテストおよびデバッグ機能を含む。一般的に、この種のモジュールは、特定のメモリ領域等からのロードのような特定のイベントで起動される。集積回路のクロックは、ICの内部レジスタおよびメモリのいくつかを慎重に検査するために停止される。各集積回路は、集積回路の検査を実行するためのジョイント・テスト・アクション・グループJTAGインターフェイスを具える。JTAGはIEEE 1149標準規格である。
しかし、ブレイクポイントモジュールは、設計期間中に決定する必要がある特定の一組のイベントに対してのみ有効である。この種のブレイクポイントモジュールは、集積回路の限られた範囲のハードウェアに対するものである。ブレイクポイントモジュールは、バス上のアドレス信号を監視することができ、ブレイクポイントは、特定のアドレスがバスにアクセスされるとすぐに実行される。これらのブレイクポイントモジュールは、IC内の選択された信号の検査を可能にするハードウェアデバッグ方法である。したがって、設計時にある程度予想されるバグのみが、この種のブレイクポイントモジュールにより発見できる。その他のバグは、この種のブレイクポイントモジュールにより発見されることはない。
非特許文献1には、キャッシュコヒーレントマルチプロセッサのフォルトトレランスを改良する方法が開示されている。ハードウェアでキャッシュコヒーレンス動作を動的に検証することによって、製造誤り、ソフトエラーおよび設計誤りによって生じるエラーを検出できる。したがって、マルチプロセッシング環境内の種々の処理装置のキャッシュコヒーレンスの検証がハードウェアで動的に行われる。マルチプロセッサ内の各処理装置は、ハードウェアコヒーレンス検査装置と、それぞれの処理装置間で状態遷移を伝達するための追加の検証バスとを具える。しかし、この種の方法によると、追加のバスが必要になり、それぞれの処理装置の構造はより複雑になる。さらに、検証用ハードウェアは、この種の検証用ハードウェアを実装するために、追加の検証と設計労力を必要とする。
非特許文献2には、分散署名解析を用いた他の検証方法が開示されている。この方法では、各コヒーレント処理装置は、その状態遷移の少なくとも一部を含む署名を動的に生成する。署名は中央に集められ、プロトコル違反、すなわちインバリアントの検証が実行される。しかし、この技術は、署名の分散のための専用のインフラを必要とし、ハードウェアの追加の複雑性をもたらすことになる。
Cantin他、「Dynamic Verification of Cache Coherence Protocol」、Workshops on Memory Performance Issues、 2001年6月
Sorin他、「Dynamic Verification of End-to-End Multiprocessor Invariants」、Proceedings of the International Conference on Dependable Systems and Networks、サンフランシスコ、2003年6月22-23日
それゆえ、本発明の目的は、種々の処理装置のキャッシュコヒーレンスに対する改良された監視機能を有するデータ処理システムおよび種々の処理装置のキャッシュコヒーレンスを監視する方法を提供することにある。
本発明の目的は、請求項1に係るデータ処理システムおよび、請求項9に係る種々の処理装置のキャッシュコヒーレンスを監視する方法により解決される。
従って、複数の処理装置と、前記処理装置からのデータを格納するための共有メモリと、そのメモリと複数の処理装置とを結合するための相互接続手段とを有するデータ処理システムが提供される。処理装置のうちの少なくとも1つは、キャッシュメモリを具えている。さらに、前記複数の処理装置のうちの1つ以上の処理装置のキャッシュメモリの状態遷移の少なくともいくつかを格納する遷移バッファが設けられる。さらに、いかなるキャッシュコヒーレンス違反も決定するために、遷移バッファのデータに基づいて前記複数の処理装置のキャッシュのキャッシュコヒーレンスを監視する監視手段が設けられる。
したがって、処理装置のいずれも、処理装置のキャッシュのキャッシュコヒーレンスを検証するために、状態遷移を追跡する必要はない。それに対して、状態遷移の追跡は監視手段により実行されるため、処理装置の設計は変えないままにでき、この設計は容易に拡張することができる。
本発明の一態様では、監視手段は、キャッシュコヒーレンスプロトコル違反が起こった場合、この種の違反を処理できるように、信号を送出するように構成される。
本発明のさらに他の態様では、監視手段は、決定されたキャッシュコヒーレンス違反の元となるバグの補修を実行時に開始する。すなわち、データ処理システムを停止させ再設計をすることを不要にする。
本発明の他の態様では、監視手段は、前記複数の処理装置のうちの1つに、ソフトウェアモニタとして実装する。従って、監視手段は、再プログラム可能で、フレキシブルである。
本発明のさらに他の態様では、状態遷移バッファは相互接続手段内に配置され、この場合、相互接続手段が遷移バッファを更新する。したがって、状態遷移に関する情報が相互接続手段から得られるので、処理装置からの追加信号は必要ない。
本発明のさらに他の態様では、監視手段は専用の処理装置上に実装され、遷移バッファは前記専用の処理装置内にメモリマップドI/Oレジスタとして実装される。
本発明のさらに他の態様では、バグまたはキャッシュコヒーレンス違反の検証は、遷移バッファおよび/または共有メモリに格納される状態遷移の履歴データに基づいて実行される。遷移バッファが限られたサイズしか有さないので、キャッシュコヒーレンス違反に関する解析を長期間にわたり実行できるように、状態遷移の履歴データは共有メモリに格納することもできる。
また、本発明は、処理装置の少なくともいくつかがキャッシュメモリを具え、相互接続手段を介して共有メモリに接続されている、データ処理システム内の複数の処理装置のキャッシュコヒーレンスを監視する方法に関するものでもある。前記処理装置のキャッシュメモリの状態遷移はバッファに格納され、前記複数の処理装置のキャッシュメモリのキャッシュコヒーレンスは状態遷移のバッファに格納されたデータに基づいて監視される。
本発明は、キャッシュコヒーレンスプロトコルの正確性を監視するという考えに基づいている。処理装置の状態遷移は遷移バッファに格納される。監視手段は、バッファに格納された状態遷移を監視し、あらゆる容認できない状態遷移を発見する。この種の容認できない状態遷移が発見された場合、監視手段はエラー通知を開始するか、発見されたバグの補修を開始することができる。
したがって、複雑な集積回路内の機能的なハードウェアバグさえ、集積回路の製造後でも解決することができる。これは、実行時にオンザフライで行われる。したがって、本発明は、従来技術と比較すると、非常にフレキシブルで包括的メカニズムである。この種の機構により、結果としてプロトコル違反になるハードウェア・キャッシュコヒーレンス論理の任意のバグを発見し、解決することが可能となる。
本発明のこれらおよびその他の態様は、以下に記載されている実施形態を参照して明瞭に説明さる。
図1は、第1の実施形態に係る、マルチプロセッサ環境の基本構成のブロック図である。図には複数の処理装置PU、相互接続手段IMおよびメモリMが示されている。さらに、監視手段MMおよび遷移バッファSTBも示されている。遷移バッファSTBは相互接続手段IMの位置に配置され、監視手段MMは相互接続手段IMに接続されている。処理装置PUのいくつかはキャッシュメモリCも具えている。この種のキャッシュメモリCはレベル1キャッシュとすることができ、ハードウェア管理オンチップメモリを構成し、長いメモリレイテンシを隠蔽し、外部DRAMの帯域幅を節約する。多数のキャッシュがIC内に存在する場合、キャッシュは正しいデータを処理装置に送信するために同期しなければならない。
キャッシュ状態遷移は、相互接続トランザクションから得られる。遷移バッファSTBは、処理装置PUのキャッシュの状態遷移を取り込む働きをする。キャッシュコヒーレンスプロトコルは、処理装置PUの正しい処理を確認するために実装される。監視手段MMは、キャッシュコヒーレンスプロトコルにおけるあらゆる違反を発見するために、遷移バッファSTBにアクセスして状態遷移を調べる。監視手段MMが、キャッシュコヒーレンスプロトコル違反を発見すると、このエラーを信号するか、あるいは、潜在的バグの補修を開始することができる。
監視手段MMは、プログラム可能な処理装置にソフトウェアモニタとして実装できる。代案として、監視手段は、専用の処理装置PUとして実装することもできる。
第1の実施形態に係る遷移バッファSTBは、相互接続手段の近傍に配置される。遷移バッファSTBは、処理装置PUに対する1つのライトポートと、監視手段MMに対する1つのリードポートとを有するFIFOとして実装することができる。
図2は、第2の実施形態に係る、マルチプロセッサ環境の基本構成のブロック図である。図には複数の処理装置PU、相互接続手段IMおよびメモリMが示されている。さらに、遷移バッファSTBを有する監視手段MMも示されている。したがって、第1実施形態と異なり、監視手段MMおよび遷移バッファSTBの両方が1台の装置内に実装される。遷移バッファSTBは、メモリマップドI/OレジスタMMIOとして実装することが好ましい。第1の実施形態のように、相互接続手段IMは、キャッシュコヒーレント処理装置の状態遷移を自動的に更新する。
第1あるいは第2の実施形態に従う監視手段MMは、キャッシュコヒーレンスプロトコル違反を検出するように構成される。変更状態(Modified)、共有状態(Shared)、無効状態(Invalid)を有するMSIプロトコルに対しては、キャッシュコヒーレンスプロトコル違反が変更状態の多数のキャッシュ・ラインから生じ得る。また、変更されたキャッシュ・ラインが処理装置(PU)の他のキャッシュ(C)に共有状態で存在し得る。キャッシュコヒーレンスプロトコルの詳細については、John L. HennessyおよびDavid Pattersonによる「Computer Architecture」(3rd edition, Else Vier Science, 2003、 Chapter 6.3 - 6.4.)を参照されたい。したがって、遷移バッファSTBを用いて、キャッシュコヒーレント処理装置の識別番号と、変更から共有、共有から無効等のような遷移識別番号と、処理装置のアドレスとを記録または格納することができる。
監視手段MMは、あらゆるキャッシュコヒーレンスプロトコル違反を見つけるために、状態遷移の履歴を調べる。また、監視手段MMは、長期間のキャッシュコヒーレンス違反を検出できるように、長期間の状態遷移の履歴データを形成するために、遷移バッファSTBにだけでなく共有メモリMにも状態遷移を格納する。その後、監視手段MMは、メモリMおよび遷移バッファSTBに格納された状態遷移の全履歴を調べ、違反を検出する。
マルチプロセッサがキャッシュコヒーレンスプロトコルに関連する場合、上述した方法はキャッシュコヒーレントマルチプロセッサに特に有効である。プロトコルは、通常単純で、単に少数のインバリアントを有するだけである。
図3は、第3の実施形態に係る、マルチプロセッサ環境の基本構成のブロック図である。処理装置PU、相互接続手段IM、メモリMおよび監視手段MMに加えて、バウンダリスキャン手段BSMおよびデバッグ手段DMを設ける。
第1あるいは第2の実施形態に基づくものとし得る第3の実施形態においては、バグ、すなわち、監視手段MMで決定されるキャッシュコヒーレンス違反は、オンザフライで、すなわち、それらの発見直後に、補修される。ハードウェアデバッグ手段が、(おそらく監視手段MMを用いて)ハードウェアバグを発見する。次に、監視手段によるハードウェアバグの検出時に実行される補修でモニタが更新される。言い換えると、デバッグは実行時に実行される。発見されたバグの位置を決定するために、スキャンチェーンまたはバウンダリスキャンがバウンダリスキャン手段BCMにより実行される。バウンダリスキャンは、IEEE 1149.1標準規格に記載されている。一般的に、マルチプロセッサ環境を有するチップは、ジョイント・テスト・アクション・グループJTAGインターフェイスを具える。通常動作中、バウンダリセルは働かず、データがマルチプロセッシング環境内を伝播するのを可能にする。しかし、テストモード中、全入力信号は分析のために取り込まれ、全出力信号はリセットされ、ポートTAP(テストアクセスポート)コントローラおよび命令レジスタで制御されるスキャンセルの動作をテストする。次に、デバッグ手段DMを用いて、検出されたキャッシュコヒーレンス違反または検出されたバグに関連するバウンダリチェーン内の不良部分を修正する。
従って、複数の処理装置、共有メモリ、および複数の処理装置と共有メモリとを結合するための相互接続手段を具えるデータ処理システムに、バウンダリスキャン装置がバウンダリスキャンを実行するために設けられる。さらに、データ処理システムの論理バグを訂正するために、デバッグ手段がバウンダリスキャンの一部を修正するように設けられる。
この種のシステムの利点は、システムが拡張可能であることにあり、非常に多くの処理装置に対しても、使用する面積と電力は少ないことにある。追加のバスは必要なく、ソフトウェア監視のために解決策をフレキシブルに容易に変更できる。
遷移バッファに状態遷移を格納する代わりに、あるいは、これに加えて、状態遷移の少なくとも一部をキャッシュメモリCに格納できる。
上述の実施形態は処理装置に配置されるキャッシュ、すなわちレベル1キャッシュのキャッシュコヒーレンスプロトコルに関して記載してきたが、本発明の基本原則は、レベル2キャッシュまたはレベル3キャッシュにも適用可能である。また、キャッシュコヒーレンス違反を決定するために、キャッシュコヒーレンスプロトコルに含まれるキャッシュの状態遷移を格納するための遷移バッファおよび格納された状態遷移を監視するための監視手段を用いてもよい。
上述の実施例は例示であり、本発明を限定するものではなく、当業者は添付の特許請求の範囲の範囲を逸脱することなく多くの代替実施例を設計可能であるということに留意する必要がある。「具えている」という単語は、請求項で述べていない要素またはステップの存在を除外するものではない。単数形で述べる要素は複数の要素を除外するものではない。いくつかの手段を列挙している装置請求項において、これらの手段のいくつかは、ハードウェアの同一の要素によって具現化できる。特定の手段が相互に異なる従属請求項に引用されているが、このことは、これらの手段の組合せが有利に使用できないことを示すものではない。
Claims (13)
- データ処理システムであって、
複数の処理装置の少なくとも1つがキャッシュメモリを具える、複数の処理装置と、
前記複数の処理装置からのデータを格納するための共有メモリと、
前記共有メモリと前記複数の処理装置とを結合するための相互接続手段と、
前記複数の処理装置の少なくとも1つのキャッシュメモリの状態遷移を格納するための遷移バッファと、
キャッシュコヒーレンス違反を決定するために、前記遷移バッファに格納される状態遷移に基づいて、前記複数の処理装置の前記少なくとも1つのキャッシュメモリのキャッシュコヒーレンスを監視するための監視手段と、
を具えることを特徴とするデータ処理システム。 - 前記監視手段が、キャッシュコヒーレンス違反が決定された場合、通知信号を送出するように構成されていることを特徴とする請求項1に記載のデータ処理システム。
- 前記監視手段が、決定されたキャッシュコヒーレンス違反を実行時に補修するように構成されていることを特徴とする請求項1に記載のデータ処理システム。
- 請求項3に記載のデータ処理システムであって、
データ処理システムの内部レジスタでバウンダリスキャンを実行するためのバウンダリスキャン手段と、
バウンダリチェーンの不良部分を修正するためのデバッグ手段と、
をさらに具えることを特徴とするデータ処理システム。 - 前記監視手段が、プログラム可能な処理装置にソフトウェアで実装されることを特徴とする請求項1〜3のいずれかに記載のデータ処理システム。
- 前記遷移バッファが前記相互接続手段に配置され、前記相互接続手段が前記遷移バッファを更新することを特徴とする請求項5に記載のデータ処理システム。
- 前記監視手段が、プログラム可能な処理装置に実装され、前記遷移バッファが、メモリマップドI/Oレジスタとして監視手段内に配置されることを特徴とする請求項1〜3のいずれかに記載のデータ処理システム。
- 前記状態遷移が前記共有メモリにも格納され、前記監視手段が、前記遷移バッファおよび/または前記共有メモリに格納される前記状態遷移の履歴データに基づいて、キャッシュコヒーレンスプロトコル違反を検証するように構成されていることを特徴とする請求項3、5または7に記載のデータ処理システム。
- 複数の処理装置が相互接続手段を経て共有メモリに接続され、複数の処理装置の少なくとも1つがキャッシュメモリを具えるデータ処理システム内の複数の処理装置のキャッシュコヒーレンスを監視する方法であって、
前記複数の処理装置の少なくとも1つのキャッシュメモリの状態遷移をバッファに格納するステップと、
キャッシュコヒーレンス違反を決定するために、バッファに格納された状態遷移に基づいて、前記複数の処理装置の前記少なくとも1つのキャッシュメモリのキャッシュコヒーレンスを監視するステップと、
を具えることを特徴とする監視方法。 - 前記少なくとも1つのキャッシュメモリのキャッシュコヒーレンスが、前記状態遷移の履歴データに基づいて監視されることを特徴とする請求項9に記載の方法。
- 状態遷移が、前記少なくとも1つのキャッシュメモリまたは遷移バッファに格納されることを特徴とする請求項9または10に記載の方法。
- データ処理システムであって、
複数の処理装置と、
前記複数の処理装置からのデータを格納するための共有メモリと、
前記共有メモリと前記複数の処理装置とを結合するための相互接続手段と、
前記データ処理システムの内部でバウンダリスキャンを実行するためのバウンダリスキャン手段と、
バウンダリチェーンの不良部分を実行時に修正するためのデバッグ手段と、
を具えることを特徴とするデータ処理システム。 - 前記複数の処理装置の少なくとも1つのキャッシュの状態遷移を格納するための遷移バッファと、
キャッシュコヒーレンス違反を決定するために、前記遷移バッファに格納された前記状態遷移に基づいて、前記複数の処理装置の前記少なくとも1つのキャッシュのキャッシュコヒーレンスを監視するための監視手段と、
をさらに具えることを特徴とする請求項11に記載のデータ処理システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP04105142 | 2004-10-19 | ||
PCT/IB2005/053395 WO2006043227A1 (en) | 2004-10-19 | 2005-10-17 | Data processing system and method for monitoring the cache coherence of processing units |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008517370A true JP2008517370A (ja) | 2008-05-22 |
Family
ID=35511001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007536341A Withdrawn JP2008517370A (ja) | 2004-10-19 | 2005-10-17 | データ処理システムと処理装置のキャッシュコヒーレンスを監視する方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20090063780A1 (ja) |
EP (1) | EP1817670A1 (ja) |
JP (1) | JP2008517370A (ja) |
CN (1) | CN101044461A (ja) |
WO (1) | WO2006043227A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8347274B2 (en) | 2009-01-08 | 2013-01-01 | Kabushiki Kaisha Toshiba | Debugging support device, debugging support method, and program thereof |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5100176B2 (ja) * | 2007-03-29 | 2012-12-19 | 株式会社東芝 | マルチプロセッサシステム |
US8000337B2 (en) * | 2009-03-27 | 2011-08-16 | Cisco Technology, Inc. | Runtime flow debugging a network device by examining packet counters at internal points |
US8250331B2 (en) | 2009-06-26 | 2012-08-21 | Microsoft Corporation | Operating system virtual memory management for hardware transactional memory |
US8489864B2 (en) * | 2009-06-26 | 2013-07-16 | Microsoft Corporation | Performing escape actions in transactions |
US8356166B2 (en) * | 2009-06-26 | 2013-01-15 | Microsoft Corporation | Minimizing code duplication in an unbounded transactional memory system by using mode agnostic transactional read and write barriers |
US8370577B2 (en) | 2009-06-26 | 2013-02-05 | Microsoft Corporation | Metaphysically addressed cache metadata |
US8161247B2 (en) | 2009-06-26 | 2012-04-17 | Microsoft Corporation | Wait loss synchronization |
US8812796B2 (en) | 2009-06-26 | 2014-08-19 | Microsoft Corporation | Private memory regions and coherence optimizations |
US8229907B2 (en) * | 2009-06-30 | 2012-07-24 | Microsoft Corporation | Hardware accelerated transactional memory system with open nested transactions |
US9092253B2 (en) * | 2009-12-15 | 2015-07-28 | Microsoft Technology Licensing, Llc | Instrumentation of hardware assisted transactional memory system |
US8533440B2 (en) * | 2009-12-15 | 2013-09-10 | Microsoft Corporation | Accelerating parallel transactions using cache resident transactions |
US8539465B2 (en) | 2009-12-15 | 2013-09-17 | Microsoft Corporation | Accelerating unbounded memory transactions using nested cache resident transactions |
US8402218B2 (en) * | 2009-12-15 | 2013-03-19 | Microsoft Corporation | Efficient garbage collection and exception handling in a hardware accelerated transactional memory system |
US9575816B2 (en) * | 2012-03-29 | 2017-02-21 | Via Technologies, Inc. | Deadlock/livelock resolution using service processor |
US9183147B2 (en) * | 2012-08-20 | 2015-11-10 | Apple Inc. | Programmable resources to track multiple buses |
WO2017142547A1 (en) * | 2016-02-19 | 2017-08-24 | Hewlett Packard Enterprise Development Lp | Simulator based detection of a violation of a coherency protocol in an incoherent shared memory system |
US11360906B2 (en) | 2020-08-14 | 2022-06-14 | Alibaba Group Holding Limited | Inter-device processing system with cache coherency |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US602646A (en) * | 1898-04-19 | Officex | ||
US540650A (en) * | 1895-06-11 | Apparatus for burning oil | ||
US5406504A (en) * | 1993-06-30 | 1995-04-11 | Digital Equipment | Multiprocessor cache examiner and coherency checker |
US5630048A (en) * | 1994-05-19 | 1997-05-13 | La Joie; Leslie T. | Diagnostic system for run-time monitoring of computer operations |
US5887146A (en) * | 1995-08-14 | 1999-03-23 | Data General Corporation | Symmetric multiprocessing computer with non-uniform memory access architecture |
US6256712B1 (en) * | 1997-08-01 | 2001-07-03 | International Business Machines Corporation | Scaleable method for maintaining and making consistent updates to caches |
US6115795A (en) * | 1997-08-06 | 2000-09-05 | International Business Machines Corporation | Method and apparatus for configurable multiple level cache with coherency in a multiprocessor system |
US6754881B2 (en) * | 2001-12-10 | 2004-06-22 | International Business Machines Corporation | Field programmable network processor and method for customizing a network processor |
US6928606B2 (en) * | 2001-12-20 | 2005-08-09 | Hyperchip Inc | Fault tolerant scan chain for a parallel processing system |
-
2005
- 2005-10-17 CN CNA2005800355489A patent/CN101044461A/zh active Pending
- 2005-10-17 EP EP05794374A patent/EP1817670A1/en not_active Withdrawn
- 2005-10-17 WO PCT/IB2005/053395 patent/WO2006043227A1/en active Application Filing
- 2005-10-17 US US11/577,592 patent/US20090063780A1/en not_active Abandoned
- 2005-10-17 JP JP2007536341A patent/JP2008517370A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8347274B2 (en) | 2009-01-08 | 2013-01-01 | Kabushiki Kaisha Toshiba | Debugging support device, debugging support method, and program thereof |
Also Published As
Publication number | Publication date |
---|---|
EP1817670A1 (en) | 2007-08-15 |
CN101044461A (zh) | 2007-09-26 |
US20090063780A1 (en) | 2009-03-05 |
WO2006043227A1 (en) | 2006-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008517370A (ja) | データ処理システムと処理装置のキャッシュコヒーレンスを監視する方法 | |
US10198333B2 (en) | Test, validation, and debug architecture | |
US6629268B1 (en) | Method and apparatus for servicing a processing system through a test port | |
US5996034A (en) | Bus bridge verification system including device independent bus monitors | |
US20080010621A1 (en) | System and Method for Stopping Functional Macro Clocks to Aid in Debugging | |
US7624312B2 (en) | System, apparatus, computer program product for performing operational validation with limited CPU use of a communications network | |
US9342393B2 (en) | Early fabric error forwarding | |
US5930482A (en) | Transaction checking system for verifying bus bridges in multi-master bus systems | |
US20080028266A1 (en) | Method to prevent firmware defects from disturbing logic clocks to improve system reliability | |
CN111078492A (zh) | 一种SoC内部总线的状态监控系统及方法 | |
US5938777A (en) | Cycle list based bus cycle resolution checking in a bus bridge verification system | |
US7571357B2 (en) | Memory wrap test mode using functional read/write buffers | |
US20070226418A1 (en) | Processor and method for controlling processor | |
US7519865B1 (en) | Systems and methods for identifying incomplete transactions | |
US20120324321A1 (en) | Co-hosted cyclical redundancy check calculation | |
US10042692B1 (en) | Circuit arrangement with transaction timeout detection | |
US6587963B1 (en) | Method for performing hierarchical hang detection in a computer system | |
JP2014241172A (ja) | 半導体装置 | |
US11105854B2 (en) | System, apparatus and method for inter-die functional testing of an integrated circuit | |
US20060179380A1 (en) | On-chip electronic hardware debug support units having execution halting capabilities | |
Larsson et al. | A distributed architecture to check global properties for post-silicon debug | |
US5958035A (en) | State machine based bus cycle completion checking in a bus bridge verification system | |
US5963722A (en) | Byte granularity data checking in a bus bridge verification system | |
JP5440673B1 (ja) | プログラマブルロジックデバイス、情報処理装置、被疑箇所指摘方法およびプログラム | |
US5941971A (en) | Bus bridge transaction checker for correct resolution of combined data cycles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20080425 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081014 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090916 |