JPH10222479A - マルチプロセッサ・キャッシュ診断方法 - Google Patents

マルチプロセッサ・キャッシュ診断方法

Info

Publication number
JPH10222479A
JPH10222479A JP9025144A JP2514497A JPH10222479A JP H10222479 A JPH10222479 A JP H10222479A JP 9025144 A JP9025144 A JP 9025144A JP 2514497 A JP2514497 A JP 2514497A JP H10222479 A JPH10222479 A JP H10222479A
Authority
JP
Japan
Prior art keywords
cache
read
data
processor
main 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.)
Granted
Application number
JP9025144A
Other languages
English (en)
Other versions
JP2947338B2 (ja
Inventor
Takumi Aso
匠 阿曽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP9025144A priority Critical patent/JP2947338B2/ja
Publication of JPH10222479A publication Critical patent/JPH10222479A/ja
Application granted granted Critical
Publication of JP2947338B2 publication Critical patent/JP2947338B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【課題】 複数のプロセッサが対応キャッシュを持ち、
かつ、主記憶を共有使用し、各プロセッサは、同一ステ
ートで制御されるキャッシュメモリの診断を、特別なハ
ードウェアなしに行う。 【解決手段】 複数のプロセッサの1つを診断対象の主
プロセッサと、それ以外の従プロセッサに分けて、任意
のアクセス・モードと第1のテスト・データを用いて各
キャッシュメモリを任意のステートに移行させる第1の
移行ステップと、主プロセッサから対応するキャッシュ
メモリに読み出し命令を出して読み出したデータを第1
のテスト・データと比較する第1の主キャッシュ比較ス
テップと、各従プロセッサに対応するキャッシュメモリ
に読み出し命令を出して読み出したデータを主プロセッ
サに対応するキャッシュメモリのデータと比較する第1
の従キャッシュ比較ステップとを備えた。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は複数のプロセッサ
が対応キャッシュを持ち、かつ主メモリを共有して、各
キャッシュは同一ステート(状態)で制御されるマルチ
プロセッサ・キャッシュを、特別な付加装置を設けずに
診断する方法に関するものである。
【0002】
【従来の技術】従来から知られている一般的なキャッシ
ュメモリの診断は、図5に示すように単一のプロセッサ
とキャッシュメモリと主メモリを組にして行うものであ
った。その診断は、診断モードを設けて例えば以下の機
能試験を行っていた。 (1)キャッシュメモリをプロセッサのI/O空間に割
り付けてメモリとしてデータを書き込み、読み出しチェ
ックをする。 (2)キャッシュメモリ等にパリティビットを付加した
パリティビット反転によるパリティチェック機能の試験
をする。 (3)キャッシュを有効状態と、無効状態にして内容の
一致を調べたり、性能差を確認する。
【0003】上述の構成では、単一のキャッシュ・シス
テムに対しては有効であったが、共有バスによるライト
バック・キャッシュの一貫性の制御を保証するための、
マルチプロセッサ・キャッシュの診断に対しては十分で
はない。特開平3−15965号公報ではマルチプロセ
ッサ・システムにおける複数のキャッシュメモリと主メ
モリとの間のデータの一貫性を確保するために特別のハ
ードウェアを設けた機構が開示されている。
【0004】
【発明が解決しようとする課題】従来のマルチプロセッ
サ・キャッシュでは有効なシステム・チェックの方法が
ないという課題があった。
【0005】この発明は上記の課題を解消するためにな
されたもので、マルチプロセッサ・キャッシュを、特別
な回路を使用しないで分解能高く診断する方法を得るこ
とを目的とする。
【0006】
【課題を解決するための手段】この発明に係るマルチプ
ロセッサ・キャッシュ診断方法は、複数のプロセッサが
対応するキャッシュメモリを持ち、かつ主メモリを共有
し、各キャッシュメモリは同一の状態(ステート)で制
御されるマルチプロセッサ・キャッシュ・システムにお
いて、これら複数のプロセッサの1つを診断対象の主プ
ロセッサと、それ以外の従プロセッサに分けて、任意の
アクセス・モードと第1のテスト・データを用いて各キ
ャッシュメモリを任意のステートに移行させる第1の移
行ステップと、主プロセッサから対応するキャッシュメ
モリに読み出し命令を出して読み出したデータを第1の
テスト・データと比較する第1の主キャッシュ比較ステ
ップと、各従プロセッサに対応するキャッシュメモリに
読み出し命令を出して読み出したデータを主プロセッサ
に対応するキャッシュメモリのデータと比較する第1の
従キャッシュ比較ステップとを備えた。
【0007】また更に基本ステップに加えて、再度、任
意のアクセス・モードを用いて各キャッシュメモリを任
意のステートに移行させる第2の移行ステップと、主プ
ロセッサから各キャッシュメモリに第1のテスト・デー
タとは異なる第2のテスト・データを書き込み命令を出
して書き込む第1の書き込みステップと、主プロセッサ
から対応するキャッシュメモリに読み出し命令を出して
読み出したデータを第2のテスト・データと比較する第
2の主キャッシュ比較ステップと、各従プロセッサに対
応するキャッシュメモリに読み出し命令を出して読み出
したデータを主プロセッサに対応するキャッシュメモリ
のデータと比較する第2の従キャッシュ比較ステップと
を付加した。
【0008】また更に、再度、任意のアクセス・モード
を用いて各キャッシュメモリを任意のステートに移行さ
せる第3の移行ステップと、主プロセッサから各キャッ
シュメモリに第1、第2のテスト・データのいずれとも
異なる第3のテスト・データをロック書き込み命令(Lo
cked-Write)を出して書き込む第2の書き込みステップ
と、主プロセッサから対応するキャッシュメモリにロッ
ク読み出し命令(Locked-Read )を出して読み出したデ
ータを第3のテスト・データと比較する第3の主キャッ
シュ比較ステップと、各従プロセッサに対応するキャッ
シュメモリにロック読み出し命令を出して読み出したデ
ータを主プロセッサに対応するキャッシュメモリのデー
タと比較する第3の従キャッシュ比較ステップとを付加
した。
【0009】
【発明の実施の形態】
実施の形態1.マルチプロセッサ・キャッシュを使用す
るシステムにおいて、ライトバック・キャッシュは例え
ば次の4つのステートで制御される。 M(Modified) :変更されている有効なデー
タを保持し、システムで唯一のデータである。 E(Exclusive):変更されていない有効なデ
ータを保持し、システムで唯一のコピーである。 S(Shared) :変更されていない有効なデ
ータを保持し、他にコピーが有る可能性がある。 I(Invalid) :無効 上述のMESI状態における動作を保証するために、予
めシステムとしての正しい動作を行っているかを診断し
ておく必要がある。その際に、装置規模を大きくしない
ためには現用の要素以外に診断用の要素が不要であるこ
とが望ましい。
【0010】本実施の形態においては、診断用の特別な
要素を用いずに、マルチプロセッサ・キャッシュのシス
テムを幾つかの診断用のステップで構成したプログラム
を記憶させて上述のMESI状態の動作確認を行う方法
を説明する。本実施の形態においては、マルチプロセッ
サ・システムは図1に示す3つのプロセッサで構成され
ているとし、診断プログラムは主メモリに格納されてい
るものとする。図2は、図1の構成において診断プログ
ラムによる動作の最も基本的な部分をを示す動作フロー
チャートである。以下、この診断方法を説明するが、M
ESI状態に移行させる方法についてはキャッシュによ
って差があるので、ここではその詳細は省くことにす
る。
【0011】まず、診断プログラムを実行すると、最初
にテスト環境の初期設定をする(図2のステップ2
0)。即ち、主プロセッサはプロセッサ1(図1の4)
で、MESI状態は主プロセッサをM、従プロセッサを
I、テスト・アドレスはキャッシュサイズ分(NからN
+キャッシュサイズ)とする。
【0012】各プロセッサからメモリバスに対する様々
なアクセス・モード(アンロック・キャッシュ・ライト
バック、アンロック・キャッシュ・ライトスルー、アン
ロック・ノンキャッシャブル、ロック)とテスト・デー
タを用いて、テスト・アドレスに対してリードまたはラ
イト命令を組み合わせ実行する。こうして、主プロセッ
サの全キャッシュラインをMに(ステップ21)、各従
プロセッサの全キャッシュラインをS状態に移行させる
(ステップ22)。この処理中、主プロセッサからはテ
スト・データが読めるようにしておく。
【0013】MESI状態に移行後、主プロセッサから
テスト・アドレスに対してアンロックリードでデータを
読み出し、テスト・データと比較して一致することを確
認する(ステップ23)。更に、各スレーブプロセッサ
からテスト・アドレスに対してアンロックリード、また
はロックリードでデータを読み出し、ステップ23で主
プロセッサがリードしたデータと比較して一致すること
を確認する(ステップ24)。
【0014】主プロセッサ・キャッシュとスレーブプロ
セッサキャッシュのMESI状態の組み合わせをにおい
て、すべての組み合わせを試験したかどうかチェックす
る(ステップ29)。未実施のものがあれば組み合わせ
を変更し(ステップ30)、ステップ21またはステッ
プ22へ移行する。すべて実施済みの場合は、ステップ
31に移行する。すべてのプロセッサが主プロセッサと
なったかどうかチェックする(ステップ31)。未実施
のものがあれば主プロセッサを変更し(ステップ3
2)、ステップ21またはステップ22へ移行する。す
べて実施済みの場合は試験を終了する。
【0015】ステップ23の処理により、主プロセッサ
と各従プロセッサのキャッシュラインのMESI状態変
化が発生するが(状態によっては変化しないこともあ
る)、その変化にかかわらず、主プロセッサからのアン
ロックリードにより正しいデータを読めると、この動作
が正常であることが確認できる。ステップ24の処理に
より、各従プロセッサで読まれたデータが、主プロセッ
サから読まれたデータと同じであることが確認できる。
【0016】更に、他の動作も実行させて、その動作対
応のシステム正常性を診断する方法を説明する。図3
は、図2の診断に加えてアンロックライト動作に対して
の正常性診断を付加した動作フローチャートである。図
において、ステップ23bと22bまでは図2と同じで
あるが、ステップ23cと24bを実施して、再度同じ
MESI状態への移行が終了したところで、主プロセッ
サからテスト・アドレスに対してアンロックライトでテ
スト・データを反転したデータを書き込み、アンロック
リードで読み出し、両者を比較して一致することを確認
する(ステップ25)。各従プロセッサからテスト・ア
ドレスに対してアンロックリード、またはロックリード
でデータを読み出し、ステップ25でリードしたデータ
と比較して一致することを確認する(ステップ26)。
【0017】ステップ25の処理により、主プロセッサ
と各従プロセッサのキャッシュラインのMESI状態変
化が発生するが(状態によっては変化しないこともあ
る)、その変化にかかわらず、主プロセッサからのアン
ロックライトとアンロックリードにより正しいデータを
読めると、この動作の正常であることが確認でき、ステ
ップ26の処理により、各従プロセッサで読まれたデー
タが、主プロセッサからアンロックライトで書かれたデ
ータと同じであると、この動作の正常であることが確認
できる。
【0018】同様に、再度ステップ21と22を実施し
て、同じMESI状態への移行が終了したところで、主
プロセッサからテスト・アドレスに対してロックライト
でテスト・データを反転したデータを書き込み、ロック
リードで読み出し、両者を比較して一致することを確認
する(ステップ27)。各従プロセッサからテスト・ア
ドレスに対してアンロックリード、またはロックリード
でデータを読み出し、ステップ27でリードしたデータ
と比較して一致することを確認する(ステップ28)。
更に、詳細にシステムの正常性を診断する方法を説明す
る。図4は、図3の(a),(b)にステップ25c,
26b以降を付加して、ロックライト動作に対しても正
常性診断を付加する場合の付加部分の動作フローチャー
トである。付加部分のステップ27の処理により、主プ
ロセッサと各従プロセッサのキャッシュラインのMES
I状態変化が発生することが多いが、その変化にかかわ
らず、主プロセッサからのロックライトとロックリード
により正しいデータを読めると、この動作の正常である
ことが確認できる。
【0019】
【発明の効果】以上説明したように本発明によれば、マ
ルチプロセッサ・キャッシュのシステムで想定されるキ
ャッシュのライン状態を故意に生成してデータ比較を行
う方法としたので、特別なハードウェアなしに詳細な不
具合検出が可能であり、不具合の再現も容易になる効果
がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1におけるマルチプロ
セッサ・キャッシュのシステム構成を示す図である。
【図2】 実施の形態1における基本診断動作フローチ
ャート図である。
【図3】 実施の形態1における他の診断動作フローチ
ャート図である。
【図4】 実施の形態1における他の診断動作フローチ
ャート図である。
【図5】 従来のキャッシュメモリの診断に必要な構成
を示す図である。
【符号の説明】
1 プロセッサ、2 キャッシュメモリ、3 主記憶装
置、4 プロセッサ1、5 プロセッサ2、6 プロセ
ッサ3、7 プロセッサ・キャッシュメモリ1、8 プ
ロセッサ・キャッシュメモリ2、9 プロセッサ・キャ
ッシュメモリ3、10 プロセッサ1テスト構成、11
プロセッサ2テスト構成、12 プロセッサ3テスト
構成、21 各種アクセスとテスト・データを使用して
全キャッシュラインを指定されたMESI状態にする、
22 各種アクセスとテスト・データを使用して全キャ
ッシュラインを指定されたMESI状態にする、23
テスト・アドレスに対してアンロックリードしデータを
読みテスト・データと比較、24 テスト・アドレスに
対してリードし主プロセッサが読み出したデータと比
較、25 テスト・アドレスに対してアンロックライト
でテスト・データを反転したデータを書き込みアンロッ
クリードでしデータを読み両者を比較、26テスト・ア
ドレスに対してリードし主プロセッサが読み出したデー
タと比較、27 テスト・アドレスに対してロックライ
トでテスト・データを反転したデータを書き込みロック
リードでしデータを読み両者を比較、28 テスト・ア
ドレスに対してリードし主プロセッサが読み出したデー
タと比較。
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成9年4月3日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0013
【補正方法】変更
【補正内容】
【0013】MESI状態に移行後、主プロセッサから
テスト・アドレスに対してアンロックリードでデータを
読み出し、テスト・データと比較して一致することを確
認する(ステップ23)。更に、各従プロセッサからテ
スト・アドレスに対してアンロックリード、またはロッ
クリードでデータを読み出し、ステップ23で主プロセ
ッサがリードしたデータと比較して一致することを確認
する(ステップ24)。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0014
【補正方法】変更
【補正内容】
【0014】主プロセッサ・キャッシュと従プロセッサ
キャッシュのMESI状態の組み合わせをにおいて、す
べての組み合わせを試験したかどうかチェックする(ス
テップ29)。未実施のものがあれば組み合わせを変更
し(ステップ30)、ステップ21またはステップ22
へ移行する。すべて実施済みの場合は、ステップ31に
移行する。すべてのプロセッサが主プロセッサとなった
かどうかチェックする(ステップ31)。未実施のもの
があれば主プロセッサを変更し(ステップ32)、ステ
ップ21またはステップ22へ移行する。すべて実施済
みの場合は試験を終了する。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサが対応するキャッシュ
    メモリを持ち、かつ主メモリを共有し、上記各キャッシ
    ュメモリは同一の状態(ステート)で制御されるマルチ
    プロセッサ・キャッシュ・システムにおいて、 上記複数のプロセッサの1つを診断対象の主プロセッサ
    と、それ以外の従プロセッサに分け、 任意のアクセス・モードと第1のテスト・データを用い
    て上記各キャッシュメモリを上記任意のステートに移行
    させる第1の移行ステップと、 上記主プロセッサから対応するキャッシュメモリに読み
    出し命令を出して読み出したデータを上記第1のテスト
    ・データと比較する第1の主キャッシュ比較ステップ
    と、 上記各従プロセッサに対応するキャッシュメモリに読み
    出し命令を出して読み出したデータを上記主プロセッサ
    に対応するキャッシュメモリのデータと比較する第1の
    従キャッシュ比較ステップ、 とを備えたことを特徴とするマルチプロセッサ・キャッ
    シュ診断方法。
  2. 【請求項2】 基本ステップに加えて、 再度、任意のアクセス・モードを用いて各キャッシュメ
    モリを任意のステートに移行させる第2の移行ステップ
    と、 主プロセッサから各キャッシュメモリに第1のテスト・
    データとは異なる第2のテスト・データを書き込み命令
    を出して書き込む第1の書き込みステップと、 上記主プロセッサから対応するキャッシュメモリに読み
    出し命令を出して読み出したデータを上記第2のテスト
    ・データと比較する第2の主キャッシュ比較ステップ
    と、 上記各従プロセッサに対応するキャッシュメモリに読み
    出し命令を出して読み出したデータを上記主プロセッサ
    に対応するキャッシュメモリのデータと比較する第2の
    従キャッシュ比較ステップ、 とを付加したことを特徴とする請求項1記載のマルチプ
    ロセッサ・キャッシュ診断方法。
  3. 【請求項3】 再度、任意のアクセス・モードを用いて
    各キャッシュメモリを任意のステートに移行させる第3
    の移行ステップと、 主プロセッサから各キャッシュメモリに第1、第2のテ
    スト・データのいずれとも異なる第3のテスト・データ
    をロック書き込み命令(Locked-Write)を出して書き込
    む第2の書き込みステップと、 上記主プロセッサから対応するキャッシュメモリにロッ
    ク読み出し命令(Locked-Read )を出して読み出したデ
    ータを上記第3のテスト・データと比較する第3の主キ
    ャッシュ比較ステップと、 上記各従プロセッサに対応するキャッシュメモリにロッ
    ク読み出し命令を出して読み出したデータを上記主プロ
    セッサに対応するキャッシュメモリのデータと比較する
    第3の従キャッシュ比較ステップ、 とを付加したことを特徴とする請求項2記載のマルチプ
    ロセッサ・キャッシュ診断方法。
JP9025144A 1997-02-07 1997-02-07 マルチプロセッサ・キャッシュ診断方法 Expired - Fee Related JP2947338B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9025144A JP2947338B2 (ja) 1997-02-07 1997-02-07 マルチプロセッサ・キャッシュ診断方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9025144A JP2947338B2 (ja) 1997-02-07 1997-02-07 マルチプロセッサ・キャッシュ診断方法

Publications (2)

Publication Number Publication Date
JPH10222479A true JPH10222479A (ja) 1998-08-21
JP2947338B2 JP2947338B2 (ja) 1999-09-13

Family

ID=12157803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9025144A Expired - Fee Related JP2947338B2 (ja) 1997-02-07 1997-02-07 マルチプロセッサ・キャッシュ診断方法

Country Status (1)

Country Link
JP (1) JP2947338B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113514759A (zh) * 2021-09-07 2021-10-19 南京宏泰半导体科技有限公司 一种多核测试处理器及集成电路测试系统与方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113514759A (zh) * 2021-09-07 2021-10-19 南京宏泰半导体科技有限公司 一种多核测试处理器及集成电路测试系统与方法

Also Published As

Publication number Publication date
JP2947338B2 (ja) 1999-09-13

Similar Documents

Publication Publication Date Title
US6629268B1 (en) Method and apparatus for servicing a processing system through a test port
US4357656A (en) Method and apparatus for disabling and diagnosing cache memory storage locations
KR100286962B1 (ko) 캐쉬 제어기
KR960009659B1 (ko) 멀티프로세서 시스템의 스누프회로
US5875201A (en) Second level cache having instruction cache parity error control
JP2717752B2 (ja) プロセッサ
US5261106A (en) Semaphore bypass
US7624312B2 (en) System, apparatus, computer program product for performing operational validation with limited CPU use of a communications network
US20050144399A1 (en) Multiprocessor system, and consistency control device and consistency control method in multiprocessor system
KR20050011152A (ko) 멀티프로세서 시스템 및 멀티프로세서 시스템의 캐쉬일관성 유지 방법
US8266386B2 (en) Structure for maintaining memory data integrity in a processor integrated circuit using cache coherency protocols
KR20060102565A (ko) 라이트 백 캐시 내에서 동시 발생하는 스누프 푸시 또는스누프 킬 연산중에 라이트 백 연산을 취소하는 시스템 및방법
US5748938A (en) System and method for maintaining coherency of information transferred between multiple devices
US6490662B1 (en) System and method for enhancing the reliability of a computer system by combining a cache sync-flush engine with a replicated memory module
US5010475A (en) Consistency ensuring system for the contents of a cache memory
JPH05324468A (ja) 階層化キャッシュメモリ
US6918011B2 (en) Cache memory for invalidating data or writing back data to a main memory
EP1278123A1 (en) High integrity cache directory
JP2947338B2 (ja) マルチプロセッサ・キャッシュ診断方法
JPH1091521A (ja) 二重ディレクトリー仮想キャッシュ及びその制御方法
JPH055137B2 (ja)
JP2000099370A (ja) 信号処理装置
JPH07234819A (ja) キャッシュメモリ
JPS5858666A (ja) デ−タ処理装置
JP2794996B2 (ja) 排他制御用レジスタ装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees