(57)【要約】【課題】複数のプロセッサが同一アドレス、および同一キャッシュラインに対し、非同期に連続アクセスを行うことで、キャッシュコヒーレンシ維持動作、アクセス結果のメモリ順序性検証を複合的に実施するキャッシュメモリ試験システムを提供する。【解決手段】キャッシュを保持する複数のプロセッサがプロセッサバスを介してメモリに複数接続されるマルチプロセッサシステムのキャッシュメモリ試験システムにおいて、メモリに対して、ストア命令を連続的に実行するストア命令実行プロセッサと、メモリに対して、ロード命令を連続的に実行するロード命令実行プロセッサとを設け、各プロセッサが同時にメモリにアクセスした実行結果が、所定の期待値と一致するか否かを比較する実行結果比較手段と、比較した結果、一致するときにはメモリ順序性が保持されていると判断するメモリ順序性判断手段とを有することを特徴とするキャシュメモリ試験システム。【選択図】図１  
2006031156.tif 000002
【特許請求の範囲】
【請求項１】
キャッシュメモリを保持する複数のプロセッサがシステムバスを介して主メモリに複数接続されるマルチプロセッサシステムのキャッシュメモリ試験システムにおいて、
主メモリに対して、ストア命令を所定のアドレス順序で連続的に実行するストア命令実行プロセッサと、
主メモリに対して、ロード命令を所定のアドレス順序で連続的に実行するロード命令実行プロセッサとを設け、
各プロセッサが同時に主メモリにアクセスした実行結果が、所定の期待値と一致するか否かを比較する実行結果比較手段と、
比較した結果、一致するときには、メモリ順序性が保持されていると判断するメモリ順序性判断手段とを有することを特徴とするキャシュメモリ試験システム。
【請求項２】
複数のプロセッサが主メモリの同一アドレスをロードまたはストアアクセスをすることにより、各プロセッサの保持するキャッシュメモリ間でのキャッシュコヒーレンシが保持されているか否かの試験を行なうことを特徴とする請求項１記載のキャッシュメモリ試験システム。
【請求項３】
実行結果比較手段は、
ストア命令の実行結果予測を時系列データとして予め作成する時系列データ作成手段と、
時系列データを基に、ロード命令の期待値を決定する期待値決定手段とを有することを特徴とする請求項１記載のキャッシュメモリ試験システム。
【請求項４】
キャッシュメモリを保持する複数のプロセッサがシステムバスを介して主メモリに複数接続されるマルチプロセッサシステムのキャッシュメモリ試験方法において、
主メモリに対して、ストア命令を所定のアドレス順序で連続的に実行するストア命令実行プロセッサと、主メモリに対して、ロード命令を所定のアドレス順序で連続的に実行するロード命令実行プロセッサとが同時に主メモリにアクセスするメモリアクセスステップと、
アクセスによる実行結果が、所定の期待値と一致するか否かを比較する実行結果比較ステップと、
比較した結果、一致するときにはメモリ順序性が保持されていると判断するメモリ順序性判断ステップとを有することを特徴とするキャッシュメモリ試験方法。
【請求項５】
キャッシュメモリを保持する複数のプロセッサがシステムバスを介して主メモリに複数接続されるマルチプロセッサシステムのキャッシュメモリの試験を行なうキャッシュメモリ試験をコンピュータに実行させるためのキャッシュメモリ試験プログラムにおいて、
主メモリに対して、ストア命令を所定のアドレス順序で連続的に実行するストア命令実行プロセッサと、主メモリに対して、ロード命令を所定のアドレス順序で連続的に実行するロード命令実行プロセッサとが同時に主メモリにアクセスするメモリアクセスステップと、
アクセスによる実行結果が、所定の期待値と一致するか否かを比較する実行結果比較ステップと、
比較した結果、一致するときにはメモリ順序性が保持されていると判断するメモリ順序性判断ステップとをコンピュータに実行させるためのキャッシュメモリ試験プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチプロセッサシステムにおけるキャッシュメモリのコヒーレンシ等のキャッシュメモリ試験システム、試験方法、試験プログラムに関する。
【背景技術】
【０００２】
従来のマルチプロセッサ環境でのキャッシュコヒーレンシ試験では、同じキャッシュライン領域へ同時に読み出し、書き込みを行う試験はいくつか行われている。
【０００３】
特開平８−３３９３８８では、各プロセッサの専用の読み出し、書き込み領域(1)と、全プロセッサの共有、書き込み領域(2)を設け、読み出し命令は各プロセッサの専用の読み出し、書き込み領域(1)から読み出し、書込み命令は各プロセッサ専用の読み出し、書き込み領域(1)、又は全プロセッサの共有の書き込み領域(2)に、書き込むようにして、全プロセッサに共有の書き込み領域(2)での各プロセッサからの書き込みにより、プロセッサ間の競合の試験を行うように構成する。この特許では、書き込みのみについてはプロセッサ間での競合が試験できるが、読み出し、書き込みの両方についてのプロセッサ間での競合を試験できていない。またメモリ順序性試験が行なわれていない。
【０００４】
特開平８−２７２６８３では、キャッシュライン内を複数の領域に分割し、その分割された各領域にプロセッサを一対一に割り当て、読み出しはそのキャッシュライン全体に対して行い、書き込みはその書き込みを行うプロセッサに割り当てられた分割された領域についてのみ行う。この特許では、あるプロセッサが書き込んだ領域を別のプロセッサが読み出し、書き込み結果の検証は行えるが、メモリ順序検証を行えていない。
【０００５】
特開２００１−５１９６５では、同一キャッシュラインに対して、各プロセッサがアクセスするライン内オフセットを分けることで、同一キャッシュラインへの複数プロセッサからの同時アクセスを行いつつ、そのキャッシュライン内でプロセッサ間でのアクセスの競合を避ける手法を取っているが、メモリ順序検証が行われていない。
【特許文献１】特開平８−２７２６８３号公報（第４頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
図７に、ＴＳＯメモリモデルの説明図を示す。
【０００７】
ＴＳＯ（Total  Store Ordering）モデルは典型的なメモリモデルのひとつであり、図７に示すように、ストア後のロードのみが追い越し、すなわち命令完了の順序の入れ替わりを許されている。ただし、同一アドレスへの操作が存在する場合は追い越しは許されないものである。
【０００８】
マルチプロセッサシステムにおいて、このような各種メモリモデルの１つを採用するときに、そのモデルについてのメモリ順序性を意識して検証することは、従来行われていなかった。
【０００９】
更に、メモリ順序性、キャッシュ整合性に関する検証を同時に行なうことも行われていなかった。
【００１０】
本発明は、複数のプロセッサが同一アドレス、および同一キャッシュラインに対し、非同期に連続アクセスを行い、その連続アクセスに対して必要とされるキャッシュコヒーレンシ維持動作、
アクセス結果のメモリ順序性検証を複合的に実施するキャッシュメモリ試験システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明のキャッシュメモリ試験システムは、キャッシュメモリを保持する複数のプロセッサがシステムバスを介して主メモリに複数接続されるマルチプロセッサシステムのキャッシュメモリ試験システムにおいて、主メモリに対してストア命令を所定のアドレス順序で連続的に実行するストア命令実行プロセッサと、主メモリに対して、ロード命令を所定のアドレス順序で連続的に実行するロード命令実行プロセッサとを設け、各プロセッサが同時に主メモリにアクセスした実行結果を所定の期待値と一致するか否かを比較する実行結果比較手段と、比較した結果、一致するときにはメモリ順序性が保持されていると判断するメモリ順序性判断手段とを有する構成である。
【００１２】
この構成により、ストア命令間のメモリ順序性、ロード命令間のメモリ順序性を検証することができる。
【００１３】
また、上記の処理は、コンピュータとソフトウェアプログラムとによって実現することもできる。
【００１４】
また、複数のプロセッサが主メモリの同一アドレスをロードまたはストアアクセスをすることにより、各プロセッサの保持するキャッシュメモリ間でのキャッシュコヒーレンシが保持されているか否かの試験を行なう構成である。
【００１５】
この構成により、同一アドレスについてキャッシュコヒーレンシ試験をすることができる。
【００１６】
また、実行結果比較手段は、ストア命令の実行結果予測を時系列データとして予め作成する時系列データ作成手段と、時系列データを基に、ロード命令の期待値を決定する期待値決定手段とを有する構成である。
【００１７】
この構成により、ストア命令間のメモリ順序性、ロード命令間のメモリ順序性を検証するための期待値を作成することができる。
【発明の効果】
【００１８】
本発明の検証手段を適用することにより、単一の試験手法によって、メモリ順序性およびキャッシュ整合性に関して欠陥を内包する回路または論理を、設計段階で効率よく検出することが可能となり、製品出荷後の障害・性能不十分を未然に回避することが可能となる。
【発明を実施するための最良の形態】
【００１９】
【実施例１】
【００２０】
図１に実施例のキャッシュメモリ試験システムの構成図を示す。
【００２１】
本発明のキャッシュメモリ試験システム１は、プロセッサ１〜Ｘが共通のシステムバス２を介して主メモリ１１へアクセスする構成とし、各プロセッサ１〜Ｘにおけるメモリ操作の順序性についての規則は、異なるアドレス間での＜ストア→ロード＞の場合にのみ、後続の命令が先行の命令より先に完了することが許されるものとする。
【００２２】
そして、本試験システムは、ストア命令間のメモリ順序性、ロード命令間のメモリ順序性の検証、キャッシュコヒーレンシ検証、ライブロック検証を行う。
【００２３】
図２に、各プロセッサの試験処理の流れ図を示す。
【００２４】
各プロセッサ１〜Ｘは、試験対象となるメモリ１１の領域と試験で使用するプロセッサのレジスタの初期化を行う（ステップ（ア）〜（ウ））。
【００２５】
なお、試験対象メモリ領域は、試験処理中には書き込まれない値で初期化する。
【００２６】
次に、初期化終了後、各プロセッサ１〜Ｘは、同期処理を行う(ステップ(エ）〜（カ）)。プロセッサのキャッシュメモリを競合させるために、同時に処理を開始するためである。
【００２７】
次に、各プロセッサ１〜Ｘは、並列同時実行処理を開始する。
【００２８】
図３に、キャッシュライン内のアクセスアドレスの割り当てを示す。
【００２９】
比較対象領域は、ストア命令とロード命令の順序性を確認するための領域である。
【００３０】
未使用領域は、アクセスに使用しない領域である。そのため、この領域にアクセスがあれば、エラーと判断される。
【００３１】
外乱用領域は、キャッシュラインへの競合を高めることにより、キャッシュコヒーレンシ、ライブロック検出効率を高めるために使用される。
【００３２】
プロセッサ１は、試験処理（ステップ(キ)）として比較対象領域へのストア命令を連続実行する。このとき、ストア命令のSrcレジスタ(ソースレジスタ：ストアデータ格納レジスタ)、Dstレジスタ（目的レジスタ：ストアアドレス格納レジスタ）は、先行する試験命令で内容を破壊しないようにする。なお、ストアするデータは、そのストア命令が何番目に行われたかを示す一意な値に設定する。メモリ順序性の確認を容易にするためである。
【００３３】
複数のプロセッサでストア命令を出す場合には、どのプロセッサからのアクセスかを区別できるような値に設定することもできる。
【００３４】
プロセッサ２は、試験処理（ステップ(ク)）として比較対象領域へのロード命令を連続実行する。
【００３５】
このとき、ロード命令のSrcレジスタ(ロードアドレス格納レジスタ)およびDstレジスタ（目的レジスタ：結果値格納レジスタ）は、他の試験命令で内容を破壊しないようにする。
【００３６】
他のプロセッサ３〜Ｘは、試験処理（ステップ(ケ)）として、比較対象領域および外乱用領域へのロードもしくは外乱用領域へのロード・ストアを連続して行う。
【００３７】
比較対象領域よりロードを行う場合は、プロセッサ２と同様の処理を行うことで自プロセッサのメモリ順序性・キャッシュ整合性を検証する。
【００３８】
一方、ストア処理を行う場合は、外乱用領域に連続書き込みを行う。
【００３９】
このように、メモリ順序性検証の目的でストアを行うのは1台（プロセッサ１）のみである。
【００４０】
次に、再度プロセッサ間の同期を取った後(ステップ（コ）〜（シ）)、試験結果の検証を行なう(ステップ（ス）〜（ソ）)。結果を比較するため、および、各プロセッサの動作終了を確認するためである。
【００４１】
そして、試験処理によって得られた結果値は、以下の手順で生成された期待値と比較され、一致している場合は障害無し、不一致の場合は障害を検出したとして、オペレータへ通知を行い、試験を終了する。
【００４２】
次に、期待値データの作成方法と、その期待値と結果値との比較方法について説明する。
【００４３】
まず（ステップ(ス)）の処理における、ストア命令の期待値は、全プロセッサがメモリアクセス命令列を完了した後に期待されるメモリの内容である。
【００４４】
比較対象領域へのストア結果は、ＴＳＯメモリモデルの定義により、同一アドレスへの連続ストアは発行した順序通りに完了することと、比較対象領域へ書き込みを行うことができるプロセッサはただ一つであるという制約によって、一意に決定できる。
【００４５】
すなわち比較対象領域内の各アドレスに対して、最後に行われるストア命令の結果が期待値となる。
【００４６】
また、外乱用領域へのストア結果は、複数のプロセッサが非同期でストア処理を行なうため、その領域に対して各プロセッサが一番最後に行なうストア命令の書き込み値の全てと比較を行い、そのいずれかに一致することを確認する。
【００４７】
さらに、同一キャッシュブロック内の未使用領域については、試験開始前の状態から変化していないことも確認する。この領域へは書き込みは行われないので、領域の内容に変化があればエラーと判定する。
【００４８】
次に、ロード命令の結果の期待値は、比較対象領域へ向けて行われたロード命令について、そのロード対象アドレスへ行われる他プロセッサによるストア命令列のストア結果に対する時系列データ(時系列表)を考慮して作成する。
【００４９】
図４は、時系列データと期待値の説明図であり、図４(a)は、ロード命令期待値向けの例を示す。
【００５０】
値Ａ〜Ｄのデータを、アドレス[0x10]、[0x20]へ交互にストアした場合の時系列データを示す。初期値はＺとする。
【００５１】
ロード側のプロセッサにおいて、ロード→ロードのメモリ順序性が守られている場合、同一アドレスに対するｎ＋１回目（現在）のロードデータは、ｎ回目（前回）と同じか、それ以降にストアされるはずのデータでなければならない。この規則性により期待値を作成し、メモリ順序規則に逆行する順序でロードが行なわれた場合は、メモリ順序性違反としてエラーを報告する。
【００５２】
例えば、[0x10]からＡをロードした命令の後に[0x10]からＺをロードした命令があった場合である。
【００５３】
期待値は、異なるアドレスに対する先行ロード命令の結果によって更に限定される場合がある。
【００５４】
図４（ｂ）は、期待値限定の例を示す。
【００５５】
ストアデータをロードした場合の一例であるが、この図の５回目のロードのように、アドレス[0x10]から読んだデータがＣであった場合、ストア→ストア及びロード→ロードの追い越し禁止の規則により、少なくともＢのデータストアは完了していることになる。従って、それ以降に[0x20]より読み出されるデータはＢあるいはＤに限られるため、このアドレス[0x20]の期待値が限定される。一般に、ｎ番目に実行されたロード命令で、比較対象領域へ行われたストア命令列のｍ番目のストア命令によってストアされるデータをロードした場合、ｎ＋１番目以降に実行されたロード命令でもｍ番目以降のストアデータを読み出す必要がある。
【００５６】
このような期待値の動的更新があるため、ロード結果の比較処理はロード順序に従って行なう必要がある。
【００５７】
比較処理はストア済み番号と呼ぶ値の初期値を０として最初のロード命令の結果の比較から開始する。
【００５８】
ここで、ストア済み番号とは、ロード命令の比較処理中において、それ以前に行ったロード命令の比較処理で既に完了が確認されているストア命令を表す番号である。
【００５９】
ｎ番目のロード命令の期待値は、時系列表において、そのロード対象アドレスを縦軸として、横軸にストア番号≧ストア済み番号となる値として定められる。
【００６０】
例えば、図４(a)の時系列表で、ロード対象アドレス[0x10]、ストア済み番号=１だとすれば、ストア番号１以降の内容の期待値は、ＡまたはＣとなる。期待値は、数式的に表現すると、以下の通りとなる。
【００６１】
期待値 = 時系列表値( ロード対象アドレス、 ストア番号ｉ≧ストア済み番号)
このように期待値を定めた後、ロード命令の結果値を参照して動的にストア済み番号を更新する。
【００６２】
更新に際しては、ロード対象アドレスを縦軸として、結果値と一致する欄を横に探す。一致する候補があれば、その候補に対応するストア番号の欄を参照する。この際に複数の欄が結果値と一致するならば、それらの欄の中でストア番号の最少値ｋを求める。この最少値ｋの方が旧ストア済み番号より大きい場合、新ストア済み番号＝ｋとして更新する。
【００６３】
なお、期待値の欄と結果値を比較した際に、期待値のいずれとも結果値が一致しなければ、障害を検出したとして試験を終了する。
【００６４】
次に、結果値データと期待値データの具体的な比較例を説明する。
【００６５】
図５は、キャッシュメモリ試験システムの説明図１であり、図５(a)に 実行命令列を示し、図５(b)にロード側プロセッサの期待値(初期状態)を示す。
【００６６】
図５(b)の表中の「前回のロード値」とは、同一アドレスに対して前回行なったロードの結果（ロード番号７の検証時は、ロード番号３の結果）を指す。
【００６７】
ここでは、２プロセッサ時の実施例を示す。実施例での試験対象メモリ領域は0x100から8 バイト、１命令でのアクセス単位は２バイト、キャッシュラインサイズは６４バイトとし、メモリの初期値は全て０とする。
【００６８】
アドレス[0x100]〜[0x107]が比較対象領域、アドレス[0x108]から[0x13F]が外乱領域としている。未使用領域を設定していない場合の例である。
【００６９】
まず、２つのプロセッサは、ロード側プロセッサ２、ストア側プロセッサ１に分けられ、それぞれ図５(a)に示す命令列を実行した後、期待値データと結果値データの比較検証を行なう。
【００７０】
本実施例におけるストア側プロセッサ１の期待値はストア番号１３〜１６のデータであり、アドレスとデータの組合せとして次のようになる。
【００７１】
すなわち、アドレス[0x100]にデータ0xdddd、アドレス[0x102]にデータ0xeeee、アドレス[0x104]にデータ0xffff、アドレス[0x106]にデータ0x1fffである。
【００７２】
そして、ストア側プロセッサ１の実行によるこれらのアドレスの結果値データと上記期待値とを比較する。
【００７３】
図６は、キャッシュメモリ試験システムの説明図２であり、図６(a)に時系列表を示す。
【００７４】
本実施例におけるロード側プロセッサ１の期待値と試験結果データの比較の様子について、図６(b）にロード結果の比較処理の進捗の様子を示す。
【００７５】
図６(b)の命令の例の場合、ロード命令の<ld [0x100], %i1>〜<ld [0x106], %l5>の命令列が完了した後に、%i1, %i2, %i3,・・%l4, %l5のレジスタ内にそれぞれのロード命令が完了したときのロード結果が残っている。
【００７６】
従って、ロード命令列の結果を収めたレジス%i1, %i2, %i3,・・%l4, %l5の内容と期待値との比較を順番に行なっていく。
【００７７】
例えば、ロード側プロセッサ２が９番目にアドレス[0x100]にアクセスしたときのロード結果値がレジスタ%o3にあるので、その内容をアクセスするとデータ0x9999である。一方、期待値は、旧ストア済番号が１０のため、時系列表のストア番号１０以降のデータ0x9999、0xddddが期待値となる。
【００７８】
従って、ロード結果値と期待値とは一致する。そのため、このチェックは、正常と検証される。また、ストア済番号の更新については、旧ストア済番号が１０のため、データ0x9999のストア番号を時系列表から捜すと、ストア番号９〜１２となる。そして、最小値９は、旧ストア済番号が１０より小さいため、新ストア済番号は、１０とする。
【００７９】
比較処理において比較エラーが生じた場合、下記のようにエラー原因を特定することができる。
（１）ロード側プロセッサでデータ比較エラーが発生した場合は、ストアのデータ化け（キャッシュ整合性異常を含む）、ロード→ロードに関するメモリ順序性またはストア→ストアに関するメモリ順序性に違反があるとしてエラーが報告される。
（２）ストア側プロセッサでデータ比較エラーが発生した場合は、ストアのデータ化けもしくはストア→ストアに関するメモリ順序性に違反があるとしてエラーが報告される。
（３）アドレス[0x108]から[0x13F]の外乱領域でデータ比較エラーが発生した場合は、キャッシュ整合性、もしくはストア命令の異常としてエラーが報告される。
（４）試験が完了しない場合は、ライブロック発生が考えられる。
【００８０】
以上のように、複数のプロセッサが同一アドレス、および同一キャッシュラインに対し、非同期に連続アクセスを行い、その連続アクセスに対して必要とされるキャッシュコヒーレンシ維持動作、連続アクセスの排他制御動作の正常性検証、データの取り合いによるライブロック検出、アクセス結果のメモリ順序性検証を複合的に実施するキャッシュメモリ試験システムを提供することができる。
【００８１】
この結果、メモリ順序性およびキャッシュ整合性に関して欠陥を内包する回路または論理を、設計段階で効率よく検出することが可能となり、製品出荷後の障害・性能不十分を未然に回避することが可能となる。
【００８２】
以上の実施例１を含む実施形態に関し、更に以下の付記を開示する。
(付記１) キャッシュメモリを保持する複数のプロセッサがシステムバスを介して主メモリに複数接続されるマルチプロセッサシステムのキャッシュメモリ試験システムにおいて、
主メモリに対して、ストア命令を所定のアドレス順序で連続的に実行するストア命令実行プロセッサと、主メモリに対して、ロード命令を所定のアドレス順序で連続的に実行するロード命令実行プロセッサとを設け、各プロセッサが同時に主メモリにアクセスした実行結果を所定の期待値と一致するか否かを比較する実行結果比較手段と、
比較した結果、一致するときにはメモリ順序性が保持されていると判断するメモリ順序性判断手段とを有することを特徴とするキャシュメモリ試験システム。
(付記２) 複数のプロセッサがメモリの同一アドレスをロードまたはストアアクセスをすることにより、各プロセッサの保持するキャッシュ間でのキャッシュコヒーレンシが保持されているか否かの試験を行なうことを特徴とする付記１記載のキャッシュメモリ試験システム。
(付記３) 実行結果比較手段は、ストア命令の実行結果予測を時系列データとして予め作成する時系列データ作成手段と、時系列データを基に、ロード命令の期待値を決定する期待値決定手段とを有することを特徴とする付記１記載のキャッシュメモリ試験システム。
(付記４) キャッシュメモリを保持する複数のプロセッサがプロセッサバスを介して主メモリに複数接続されるマルチプロセッサシステムのキャッシュメモリ試験方法において、主メモリに対して、ストア命令を所定のアドレス順序で連続的に実行するストア命令実行プロセッサと、主メモリに対して、ロード命令を所定のアドレス順序で連続的に実行するロード命令実行プロセッサとが同時に主メモリにアクセスするメモリアクセスステップと、アクセスによる実行結果が、所定の期待値と一致するか否かを比較する実行結果比較ステップと、比較した結果、一致するときにはメモリ順序性が保持されていると判断するメモリ順序性判断ステップとを有することを特徴とするキャッシュメモリ試験方法。
(付記５) キャッシュメモリを保持する複数のプロセッサがプロセッサバスを介して主メモリに複数接続されるマルチプロセッサシステムのキャッシュメモリの試験を行なうキャッシュメモリ試験をコンピュータに実行させるためのキャッシュメモリ試験プログラムにおいて、主メモリに対して、ストア命令を所定のアドレス順序で連続的に実行するストア命令実行プロセッサと、主メモリに対して、ロード命令を所定のアドレス順序で連続的に実行するロード命令実行プロセッサとが同時に主メモリにアクセスするメモリアクセスステップと、アクセスによる実行結果が、所定の期待値と一致するか否かを比較する実行結果比較ステップと、比較した結果、一致するときにはメモリ順序性が保持されていると判断するメモリ順序性判断ステップとをコンピュータに実行させるためのキャッシュメモリ試験プログラム。
(付記６)複数のプロセッサが、同一アドレスを同時にアクセスすることにより、各プロセッサ間のキャッシュコヒーレンシ保持動作の競合によるライブロックを検出する付記４記載のキャッシュメモリ試験方法。
(付記７)複数のプロセッサが主メモリの同一アドレスをロードまたはストアアクセスをすることにより、各プロセッサの保持するキャッシュ間でのキャッシュコヒーレンシが保持されているか否かの試験を行なうステップを有することを特徴とする付記５記載のキャッシュメモリ試験プログラム。
(付記８)主メモリに外乱用領域を設け、ストア命令実行プロセッサ、ロード命令実行プロセッサ以外のプロセッサにより、その領域に対して、ロード命令、ストア命令を実行することを特徴とする付記１記載のキャッシュメモリ試験システム。
【産業上の利用可能性】
【００８３】
本発明は、プロセッサを開発する際の論理検証試験、または前述のプロセッサ開発後に行う評価試験において利用するキャッシュメモリ試験システム、試験方法、試験プログラムを提供する用途に適用できる。
【図面の簡単な説明】
【００８４】
【図１】実施例のキャッシュメモリ試験システムの構成図
【図２】各プロセッサの試験処理の流れ図
【図３】キャッシュライン内のアクセスアドレスの割り当て
【図４】時系列データと期待値の説明図
【図５】キャッシュメモリ試験システムの説明図１
【図６】キャッシュメモリ試験システムの説明図２
【図７】ＴＳＯメモリモデル
【符号の説明】
【００８５】
１    キャッシュメモリ試験システム
２    システムバス
１１    主メモリ
【図１】
2006031156.tif 000003
【図２】
2006031156.tif 000004
【図３】
2006031156.tif 000005
【図４】
2006031156.tif 000006
【図５】
2006031156.tif 000007
【図６】
2006031156.tif 000008
【図７】
2006031156.tif 000009