JPH01298453A - キャッシュエラー処理方式 - Google Patents

キャッシュエラー処理方式

Info

Publication number
JPH01298453A
JPH01298453A JP63129513A JP12951388A JPH01298453A JP H01298453 A JPH01298453 A JP H01298453A JP 63129513 A JP63129513 A JP 63129513A JP 12951388 A JP12951388 A JP 12951388A JP H01298453 A JPH01298453 A JP H01298453A
Authority
JP
Japan
Prior art keywords
error
data
tag array
block
bit
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.)
Pending
Application number
JP63129513A
Other languages
English (en)
Inventor
Satoshi Kobayashi
智 小林
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 JP63129513A priority Critical patent/JPH01298453A/ja
Publication of JPH01298453A publication Critical patent/JPH01298453A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明はデータ処理装置において高速アクセスが可能
なキャッシュとしてのデータバッファを備えた中央処理
装置と主記憶装置との間のアクセスの際に発生するキ皐
フシュエラーに対する処理を行うキャッシュエラー処理
方式に関するものである。
〔従来の技術〕
第5図は従来のキャッシュエラー処理方式を採用したデ
ータ処理装置の要部構成を示すブロック図である。図に
おいて、■、2は高速アクセスが可能なストアイソ方式
のキャッシュとしてのデータバッファを備え、このデー
タバッファ内容の正当性を示す正当性ビット及びその内
容の変更ビットなどを有するタグアレーによりデータア
クセスを制御する複数のCPU (中央処理装置)であ
る。
CPUIは命令実行に際してデータバッファ4の内容を
用いる。データバッファ4は複数のブロックにより構成
され、各ブロックの使用可否はタグアレー6により制御
される。タグアレー6は縮退ビット10と正当性ビット
1工と変更ビット12とを存する。一方、CPU2は命
令実行に際してデータバッファ5の内容を用いる。デー
タバッファ5は複数のブロックにより構成され、各ブロ
ックの使用可否はタグアレー7により制御される。
タグアレー7は縮退ビット14と正当性ビット15と変
更ピント16とを有する。
3は中央処理装置1,2の制御によりデータ処理に関す
るデータを記憶する主記憶装置である。
主記憶装置3は、CPUI内のデータバッファ4と主記
憶データとの関係を保持するため、CPU1のタグアレ
ー6と同一内容のシャドウタグアレー8を備える。シャ
ドウタグアレー8はCPUI内のタグアレー6と同様、
縮退ビット18と正当性ビット19と変更ビット20と
を有する。バス26はCPUIと主記憶装置3との間の
データ及び制御信号の授受に用いられる。また、主記憶
装置3は、CPUZ内のデータバッファ5と主記憶デー
タとの関係を保持するため、CPU2のタグアレー7と
同一内容のシャドウタグアレー9を備える。シャドウタ
グアレー9はCPUZ内のタグアレー7と同様、縮退ビ
ット22と正当性ビット23と変更ビット24とを存す
る。バス27はCPU2と主記憶装置3との間のデータ
及び制御信号の授受に用いられる。
第6図は例えばCPUI内のデータバッファ4とタグア
レー6の詳細構成を示す。図において、28〜31はデ
ータバッファ4の最小構成要素のデータブロックである
。32はタグアレー6内のタグデータブロックであり、
データブロック28に対応するタグ情報を保持する。ま
た、タグデーターブロック33はデータブロック29に
、タグデータブロック34はデータブロック30に、タ
グデータブロック35はデータブロック31にそれぞれ
対応する。タグ情報は縮退ビットと正当性ビットと変更
ビットとアドレスデータとからなる。
次に動作について説明する。CPUIが、主記憶装置3
内のデータをチエツクしようとした場合、CPUIは、
まずタグアレー6内を菖周べ、データバッファ4内に必
要なデータが存在するかを判定する。存在した場合には
、CPUIはデータバッファ4内のデータを用いて処理
を継続する。存在しない場合には、主記憶装置3からデ
ータをバス26を用いて、データバッファ4内の1つの
ブロックに転送し、CPUIのタグアレー6の正当性ビ
ット11及びシャドウタグアレー8の対応するブロック
の正当性ビット19をセットする。以上により、以降の
CPUIによる同一ブロックに対するアクセスは、すべ
てデータバッファ4に対して行われる。
CPUIによる主記憶装置3へのデータストア時、スト
アデータに対応するデータがデータバッファ4内に存在
する場合は、CPUIは、データバッファ4内の対応す
るブロックの内容を変更し、CPUI側のタグアレー6
内及び主記憶装置3側のシャドウタグアレー8内の変更
ビット12及び20をセットする。その後、当該ブロッ
クに対し、CPU2からストアを実行しようとした場合
は、まず、CPUI内のデータバッファ4から当8亥ブ
ロックのデータをバス26を介して主記憶装置3に格納
し、タグアレー6内及びシャドウタグアレー8内の正当
性ビット11及び19をリセットする。次に転送データ
をバス27を介してCPUZ内のデータバッファ5に書
込み、タグアレー7内及びシャドウタグアレー9内の正
当性ビット15及び23をセットする。さらにストアデ
ータをデータバッファ5に書込み、タグアレー7及びシ
ャドウタグアレー9の変更ビット16及び24をセット
する。以上のように各タグアレーの変更ピントによりキ
ャッシュ(データバッファ4.5)間のデータ移動が制
御される。
また、データバッファ4内のタグデータブロック32〜
35は1回のデータアクセス時に、同時されたブロック
が主記憶装置3にはき出される。
一方、例えば、データブロック30に読み出しエラーが
発生した場合には、対応するタグデータブロック34の
縮退ビット及びシャドウタグアレー8内の対応する縮退
ビットをセットする。以上により、以降データの格納に
当該ブロック30を使用しないようにする。
〔発明が解決しようとする課題〕
従来のキャッシュエラー処理方式は、上述したような動
作を行うので、データバッファの変更ブロックに読み出
しエラーが発生して当該ブロックを縮退した際、以降、
主記憶装置の同一記憶アドレスにフェッチアクセスして
も、エラーをCPUのソフトウェアに報告できず、この
ため縮退時、命令処理の都合で不正記憶アドレスをCP
Uのソフトウェアに報告できなかった場合、そのソフト
ウェアは縮退によって失われたデータブロックの内容を
修復できなくなり、したがってハードウェアの動作を一
旦停止させ、エラーに対する回復処理をしなければなら
ないという問題点があった。
この発明は上記のような問題点を解消するためになされ
たもので、不正記憶アドレスをCPUのソフトウェアに
1回で報告できなかった場合でも、同一のエラーブロッ
クに対してアクセスがある度に不正記憶アドレスをソフ
トウェアに報告できるようにするとともに、ブロック全
体に対するデータの再書込み処理によりそのエラーブロ
ックを再度使用できるようにし、また他のCPUからの
アクセスについても高速にエラー判定を行うことができ
るようにすることにより、エラーに対する回復処理をハ
ードウェアの動作を停止させずに高速に行えるキャッシ
ュエラー処理方式を得ることを目的とする。
〔課題を解決するための手段〕
この発明に係るキャッシュエラー処理方式は、データバ
ッファ4.5に対応するタグアレー6゜7及び主記憶装
置3に対応するシャドウタグアレー8.9にエラービッ
ト13.17及び21゜25を設け、変更データを保持
したデータバッファのブロックに読み出しエラーが発生
した際に、そのエラーブロックに対応するタグアレー内
及びシャドウタグアレー内のエラービットをセットする
ことにより、読み出し処理を行う中央処理装置のソフト
ウェアに符号誤りを報告し、また、エラーブロックを有
する中央処理装置がらストア要求が発生した場合にはそ
のエラーブロックに対応するタグアレー及びシャドウタ
グアレー内のエラービットをリセットしてストアデータ
をデータバッファに書き込み、また、上記ストア要求が
他の中央処理装置から発生した場合には上記エラーブロ
ックに対応するタグアレー内及びシャドウタグアレー内
のエラービット上正当性ビットとをリセットし、そのエ
ラーブロックを主記憶装置3のデータとの入れ替え不可
のブロックにすることを特徴とするものである。
〔作用〕
例えば最新の変更データを保持したデータバッファ4の
ブロックにエラーが発生すると、タグアレー6のエラー
ビット13及びシャドウタグアレー8のエラービット2
1がセントされる。これにより中央処理装置1に符号誤
りが報告される。また、中央処理装置1がストア要求を
発生すると、タグアレー6のエラービット13及びシャ
ドウタグアレ−8のエラービット21がリセットされ、
ストアデータがデータバッファ4に書き込まれる。
また、他の中央処理装置2がストア要求を発生するとエ
ラーブロックに対応するタグアレー6のエラービット1
3及び正当性ビット11と、シャドウタグアレー8のエ
ラービット21及び正当性ビット19とをそれぞれリセ
ットする。これによりエラーブロックは主記憶装置3の
データとの入れ替え不可ブロックとなる。
〔発明の実施例〕
第1図はこの発明の一実施例に係るキャッシュエラー処
理方式を採用したデータ処理装置の要部構成を示すブロ
ック図である。第1図において、第5図に示す構成要素
に対応するものには同一の符号を付し、その説明を省略
する。第1図において、13はCPUI内のデータバッ
ファ4に対応して設けられたタグアレー6のエラービッ
ト、14はCPU2内のデータバッファ5に対応して設
けられたタグアレー7のエラービット、21は主記憶装
置3に対応して設けられたシャドウタグアレー8のエラ
ービット、25は同じく主記憶装置3に対応して設けら
れたシャドウタグアレー9のエラービットである。
以上の構成において、CPUIのキャッシュブロックに
続出しエラーが発生した場合について第2図のフローチ
ャートにより説明する。CPUIによるデータバッファ
4のブロックの読み出し時にエラーが検知されると(ス
テップSl)、システムは一旦停止する(ステップS2
)。この時点で、当該ブロックに対応するタグアレー6
の変更ビットを調べ(ステップs3)、もし、リセット
状態ならば、タグアレー6内とシャドウタグアレー8内
との縮退ビットをセットする(ステップS4)。もし、
セット状態ならタグアレー6とシャドウタグアレー8と
のエラービットをそれぞれセットする(ステップS5)
。その後は、共通エラー回復処理(ステップS6)を行
った後、CPU1はシステムの運転を再開しくステップ
S7)、CPUI上で動作していたソフトウェアにエラ
ー報告をする。この際、CPUIがシステム処理動作を
していた場合は(ステップS8)、システムダメージの
エラー報告をしくステップS9)、それ以外の場合は変
更ビットの状態により(ステップ510)、リセット時
は縮退のエラー報告をしくステップ5ll)、セント時
は例えばECC(誤り訂正符号)2ビット誤りの報告を
する(ステップ512)。
ここで、CPUIがシステム処理動作をしていたため、
システムダメージの報告(ステップS9)をした場合を
考える。この場合、ソフトウェアは不正記憶アドレスを
知り得ないため、ソフトウェアの回復処理後、エラーブ
ロックに対する回復処理を行わないまま、システム運転
を再開する。この時、エラーブロックがシステムプログ
ラム領域であった場合、ソフトウェアは再びエラーブロ
ックに対して読み出しを行う。この時点で、第3図に示
すような処理により、ECC2ビツト誤り報告がソフト
ウェアに対して行われる。即ち、エラーブロックへの読
出し要求(ステップ521)がCPUI側から出された
場合は(ステップ522)、自体のタグアレー6を参照
した(ステップ523)時点でエラービット13により
ECC2ビット誤りが報告され(ステップ327) 、
CPU2側から出された場合には、自体のタグアレー7
を参照するが(ステップ324)、何も動作せず(ステ
次に、エラーブロックに対してストアを行った場合につ
いて第4図により説明する。ストア要求(ステップ53
1)がCPUI側から発生した場合ハ(ステップ532
)、自体のタグアレー6内のエラービット13をリセッ
トした後(ステップ533)、ストアデータをデータバ
ッファ4に書き込む(ステップ535)。この時、シャ
ドウタグアレー8のエラービット21も同時にリセット
する(ステップ534)。
一方、ストア要求がCPU2から発生した場合は、自体
のタグアレー7はミスヒントになるため(ステップ33
6,537) 、シャドウタグアレー8を調べる。この
結果はヒツトであるがエラービット21がセットされて
いるため、CPUIがらのデータ転送はせず、シャドウ
タグアレー8のエラービット21及び正当性ビット19
をリセットしくステップS38,539) 、次いでタ
グアレー6のエラービット13及び正当性ビット11を
リセットしくステップ340,341)、主記憶装置3
からデータをデータバッファ5へ転送しくステップ54
2)、タグアレー7とシャドゥタグアレー9との正当性
ビット15と23をセットする(ステップS43,54
4)。これによりエラーブロックは主記憶装置3のデー
タとの入れ替え不可ブロックとなる。この後ストアデー
タをデータバッファ5ヘスドアして(ステップ545)
、タグアレー7とシャドウタグアレー9との変更ビット
16.24をセントする(ステップS46゜547)。
以上のストアは、キャッシュブロックを正しくする目的
で行われる全ブロック領域へのデータストアの場合につ
いてである。他の単一ワードのストアの場合は、フェッ
チ要求と同一の処理となる。
これは単一ワードのストアではエラーブロックの内容が
正しくなる保証がないためである。
次に、CPUIにおいて、キャッシュブロックデータの
入れ替え要求が発生した場合について述べる。第6図に
おいて、タグデーターブロック34のエラーピントがセ
ットされており、他のタグデータブロック32.33及
び35の正当性ビットがすべてセントされていたとする
。この時、cpuiからのフェッチリクエストにより、
新たなデータをデータブロック28〜31のいずれかに
ロードする必要が生じると、CPUIは最も古い時点で
アクセスのあったデータブロックを、主記憶装置3へ戻
し、新しいデータを当該ブロックへ転送する。この時、
もし、当該ブロックがデータブロック30であった場合
、対応するタグデータブロック34のエラービットがセ
ットされているため、CPU1は、次に古いデータブロ
ックの内容を主記憶装置3へ転送する。以上によりエラ
ーブロック30はいずれかのCPUから書込みがなされ
るまで、主記憶装置3のデータとの対応関係を保ったま
まデータバッファ4内にとどまる。
〔発明の効果〕
以上のように本発明によれば、中央処理装置のデータバ
ッファに対応するタグアレー及び主記憶装置に対応する
シャドウタグアレーにエラービットを設け、変更データ
を保持したデータバッファのブロックに読み出しエラー
が発生した際に、そのエラーブロックに対応するタグア
レー内及びシャドウタグアレー内のエラービットをセッ
トすることにより、読み出し処理を行う中央処理装置の
ソフトウェアに符号誤りを報告し、また、エラーブロッ
クを有する中央処理装置からストア要求が発生した場合
にはそのエラーブロックに対応するタグアレー内及びシ
ャドウタグアレー内のアラ−ビットをリセットしてスト
アデータをデータバッファに書き込み、また、上記スト
ア要求が他の中央処理装置から発生した場合には上記エ
ラーブロックに対応するタグアレー内及びシャドウタグ
アレー内のエラービットと正当性ビットとをリセットし
、そのエラーブロックを主記憶装置のデータとの入れ替
え不可のブロックにするようにしたので、不正記憶アド
レスを中央処理装置のソフトウェアに1回で報告できな
かった場合でも、同一のエラーブロックに対してアクセ
スがある度に不正記憶アドレスをソフトウェアに報告で
き、つまりキャッシュの変更ブロックのエラーを主記憶
装置3内の通常の符号誤りとしてソフトウェアに報告で
き、これによりソフトウェアによるエラーに対する回復
処理を行うことが可能となり、また、ブロック全体に対
するデータの再書込み処理によりそのエラーブロックを
再度使用することができる。
また、本発明によれば、シャドウタグアレー内にもエラ
ービットを設けたので、他の中央処理装置からのアクセ
スについても高速にエラーの判定ができる。したがって
、本発明は、ハードウェアの動作を停止させずにエラー
に対する回復処理を高速に行えるという効果が得られる
【図面の簡単な説明】
第1図はこの発明の一実施例に係るキャッシュエラー処
理方式を採用したデータ処理装置の要部構成を示すブロ
ック図、第2図はこの実施例においてキャッシュ読み出
しエラーが発生した場合の処理を示すフローチャート、
第3図はこの実施例においてエラービットをセットした
ブロックへのフェッチ時の処理を示すフローチャート、
第4図はこの実施例においてエラービットをセットした
ブロックへのストア時の処理を示すフローチャート、第
5図は従来のキャッシュエラー処理方式を採用したデー
タ処理装置の要部構成を示すブロック図、第6図は実施
例及び従来例におけるキャッシュ内部の構成図である。 1.2・・・中央処理装置、3・・・王記憶装置、4.
5・・・データバッファ、6.7・・・タグアレー、8
.9・・・シャドウタグアレー、11.15,19.2
3・・・正当性ビット、12.16,20.24・・・
変更ビット、13.17,21.25・ ・ ・エラー
ビット。 代理人  大  岩  増  雄(ほか2名)第4図

Claims (1)

    【特許請求の範囲】
  1. 高速アクセスが可能なキャッシュとしてのデータバッフ
    ァを備え、このデータバッファ内容の正当性を示す正当
    性ビット及びその内容の変更を示す変更ビット等を有す
    るタグアレーによりデータアクセスを制御する複数の中
    央処理装置と、上記中央処理装置のタグアレーと同一の
    データを保持するシャドウタグアレーを備え、その中央
    処理装置の制御によりデータ処理に関するデータを記憶
    する主記憶装置とを含み構成されたデータ処理装置にお
    いて、上記タグアレー及びシャドウタグアレーにエラー
    ビットを設け、変更データを保持した上記データバッフ
    ァのブロックに読み出しエラーが発生した際に、そのエ
    ラーブロックに対応するタグアレー内及びシャドウタグ
    アレー内のエラービットをセットすることにより、読み
    出し処理を行う中央処理装置のソフトウェアに符号誤り
    を報告し、また、エラーブロックを有する中央処理装置
    からストア要求が発生した場合にはそのエラーブロック
    に対応するタグアレー内及びシャドウタグアレー内のエ
    ラービットをリセットしてストアデータをデータバッフ
    ァに書き込み、また、上記ストア要求が他の中央処理装
    置から発生した場合には上記エラーブロックに対応する
    タグアレー内及びシャドウタグアレー内のエラービット
    と正当性ビットとをリセットし、そのエラーブロックを
    上記主記憶装置のデータとの入れ替え不可のブロックに
    することを特徴とするキャッシュエラー処理方式。
JP63129513A 1988-05-27 1988-05-27 キャッシュエラー処理方式 Pending JPH01298453A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63129513A JPH01298453A (ja) 1988-05-27 1988-05-27 キャッシュエラー処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63129513A JPH01298453A (ja) 1988-05-27 1988-05-27 キャッシュエラー処理方式

Publications (1)

Publication Number Publication Date
JPH01298453A true JPH01298453A (ja) 1989-12-01

Family

ID=15011351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63129513A Pending JPH01298453A (ja) 1988-05-27 1988-05-27 キャッシュエラー処理方式

Country Status (1)

Country Link
JP (1) JPH01298453A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01318129A (ja) * 1988-06-20 1989-12-22 Pfu Ltd キャッシュメモリ制御方式
KR100365891B1 (ko) * 2000-12-13 2002-12-27 한국전자통신연구원 주기억장치 상주형 데이터베이스 시스템에서 로그 처리를하지 않는 백업/회복 장치 및 그 방법
US8060698B2 (en) 2006-02-27 2011-11-15 Fujitsu Limited Method and apparatus for controlling degradation data in cache

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01318129A (ja) * 1988-06-20 1989-12-22 Pfu Ltd キャッシュメモリ制御方式
KR100365891B1 (ko) * 2000-12-13 2002-12-27 한국전자통신연구원 주기억장치 상주형 데이터베이스 시스템에서 로그 처리를하지 않는 백업/회복 장치 및 그 방법
US8060698B2 (en) 2006-02-27 2011-11-15 Fujitsu Limited Method and apparatus for controlling degradation data in cache

Similar Documents

Publication Publication Date Title
CA2058734C (en) Storage device array architecture with copyback cache
US7958318B2 (en) Coherency maintaining device and coherency maintaining method
JP4119380B2 (ja) マルチプロセッサシステム
JPH11143775A (ja) キャッシュメモリシステム
JP3236287B2 (ja) マルチプロセッサシステム
JPS6324428A (ja) キヤツシユメモリ
EP0167089B1 (en) Memory access control system and method for an information processing apparatus
JP2004030527A (ja) 記憶制御装置、および記憶制御方法
US5557622A (en) Method and apparatus for parity generation
JPH01298453A (ja) キャッシュエラー処理方式
JP3723243B2 (ja) プロセッサ装置及びその制御方法
JPH0245845A (ja) データ処理システム
JPH0210446A (ja) バッファ記憶装置
JPH07295883A (ja) 情報処理装置
JP3555847B2 (ja) キャッシュメモリの障害処理装置、キャッシュメモリの障害処理方法、マルチプロセッサシステム
JP3564343B2 (ja) キャッシュバイパス時のデータ転送装置と方法
JPH03103951A (ja) メモリパトロール制御方式
JP2791319B2 (ja) データ処理装置
JPS6246358A (ja) エラ−処理方式
KR100201671B1 (ko) 컴퓨팅 시스템 및 컴퓨팅 시스템의 캐시 메모리 이용방법
JPH0644261B2 (ja) マルチプロセッサシステムにおけるキャッシュ制御方式
JPH071490B2 (ja) デ−タ書戻し方式
JPS63278162A (ja) 情報処理装置におけるエラ−訂正装置
JP2923273B2 (ja) データ処理システム
JPH0415496B2 (ja)