JPS6223901B2 - - Google Patents

Info

Publication number
JPS6223901B2
JPS6223901B2 JP55020863A JP2086380A JPS6223901B2 JP S6223901 B2 JPS6223901 B2 JP S6223901B2 JP 55020863 A JP55020863 A JP 55020863A JP 2086380 A JP2086380 A JP 2086380A JP S6223901 B2 JPS6223901 B2 JP S6223901B2
Authority
JP
Japan
Prior art keywords
data
tag
main memory
section
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.)
Expired
Application number
JP55020863A
Other languages
English (en)
Other versions
JPS56117400A (en
Inventor
Matao Ito
Haruhiko Tsunoda
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2086380A priority Critical patent/JPS56117400A/ja
Publication of JPS56117400A publication Critical patent/JPS56117400A/ja
Publication of JPS6223901B2 publication Critical patent/JPS6223901B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Detection And Correction Of Errors (AREA)

Description

【発明の詳細な説明】 本発明は、データ部およびタグ部にエラー検出
訂正コード(ハミング・チエツク・ビツト)を付
加したスワツプ方式のバツフア記憶方式におい
て、アクセス・タイムを増加することなく、また
付加回路も極めて少なくできるようにしたバツフ
ア記憶制御方式に関するものである。
バツフア記憶方式には、ストア・スルー方式と
スワツプ方式とがある。ストア・スルー方式と
は、ストアするデータをバツフア記憶のみならず
主記憶にもストアし、主記憶とバツフア記憶の一
致を常に取る方式である。スワツプ方式では、ス
トアは常にバツフア記憶に対してのみ行われ、主
記憶に対しては行われない。したがつて、最新の
データはバツフア記憶にあり、バツフア記憶と主
記憶の一致は取られていない。両方式の得失は一
概には論じられないが、従来の殆んどの計算機で
はストア・スルー方式が採用されている。この理
由の1つは、ストア・スルー方式ではバツフア記
憶は主メモリのコピーを常に保持しているから、
バツフア記憶に障害があつてもバツフア記憶の障
害箇所を切離して主記憶からデータを再フエツチ
して使用すれば、ジヨブのアベンドあるいはシス
テム・ダウンという事態を避けられるのに対し、
スワツプ方式ではバツフア記憶に障害があつた場
合、バツフア記憶と主記憶との一致は取れていな
いから、バツフア記憶にエラー検出訂正コードで
も付加していない限り、ジヨブのアベントあるい
はシステム・ダウンといつた事態を避けられない
からである。
バツフア記憶にエラー検出訂正コードを付加す
ることは、従来次の理由で困難であつた。すなわ
ち、エラー検出訂正コードを付加した主記憶のよ
うに、チエツク時間と訂正時間をアクセス・タイ
ムに追加することは、バツフア記憶のアクセス時
間が小さいので難しい。また、バツフア記憶のタ
グ部にエラー検出訂正コードを付加した場合、検
出/訂正して実アドレスの上位アドレス部分と一
致を取ることは、バツフア記憶のアクセス時間を
増大させること及び付加回路を増大させること等
の理由により採用し難い。
本発明は、上記の考察に基づくものであつて、
データ部およびタグ部にエラー検出訂正コードを
付加したスワツプ方式のバツフア記憶方式におい
て、エラー検出訂正コードを付加してもアクセ
ス・タイムを増加させることなく、また付加回路
も極めて小さくできるようにしたバツフア記憶制
御方式を提供することを目的としている。そして
そのため、本発明のバツフア記憶制御方式は、パ
リテイ・ビツトおよびエラー検出訂正コードが付
加されたタグ・データが格納されたタグ部と、パ
リテイ・ビツトおよびエラー検出訂正コードが付
加されたデータが格納されたデータ部とを備える
スワツプ方式で且つセツトアソシアテイブ方式の
バツフア記憶装置において、 上記データ部から取出されたアクセス要求に対
応するデータにパリテイ・エラーが検出された場
合には、当該データに対応するタグ・データの中
の変更ビツトの値を調べ、当該変更ビツトがオフ
のときには上記タグ部内の当該データに対応する
タグ・データの無効化ビツトをオンとし、当該変
更ビツトがオンのときには当該データに付加され
ているエラー検出訂正コードを用いて当該データ
を訂正し、訂正された当該データを主記憶の該当
する記憶場所に書込むと共に、上記タグ部内の当
該データに対応するタグ・データの無効化ビツト
をオンとし、 上記タグ・データ部から読出されたタグ・デー
タにパリテイ・エラーが検出された場合には、当
該タグ・データの中の変更ビツトの値を調べ、当
該変更ビツトがオフのときには上記タグ部内の当
該タグ・データの無効化ビツトをオンとし、当該
変更ビツトがオンのときには当該タグ・データに
付加されたエラー検出訂正コードを用いてタグ・
データを訂正して当該タグ・データに対応する正
しい主記憶アドレスを求め、当該主記憶アドレス
を用いて当該タグ・データに対応するデータを主
記憶に書込むと共に、上記タグ部内の当該タグ・
データの無効化ビツトをオンとする ことを特徴とするものである。以下、本発明を図
面を参照しつつ説明する。
第1図イ,ロは本発明の1実施例のブロツク
図、第2図はデータ・エラー検出時における主記
憶書込み動作を示すタイミング・チヤート、第3
図は主記憶からのリード・シーケンスを示すタイ
ミング・チヤートである。
第1図イ,ロにおいて、1は実効アドレス・レ
ジスタ、2はTLB(Tranlation Lookaside
Buffer)、3は実アドレス・レジスタ、4はバツ
フア記憶のタグ部、5はバツフア記憶のデータ
部、6はパリテイ・チエツク回路群、7−1ない
し7−Nはパリテイ・チエツク回路、8−1ない
し8−Nは一致回路、9はセレクタ、10はパリ
テイ・チエツク回路、11はアライン回路、12
はオペランド語レジスタ、13はトランスレーシ
ヨン・レジスタ、14はエラー・レジスタ、15
はエラー検出訂正用レジスタ、16はハミング・
チエツク・ビツト格納部、17はハミング・チエ
ツク・ジエネレータ、18は訂正回路、19は高
速バツフア・レジスタ、20はハミング・チエツ
ク・ビツト格納部、21−1は第1の主記憶アド
レス・レジスタ、21−2は第2の主記憶アドレ
ス・レジスタ、22はハミング・チエツク・ビツ
ト格納部、23はハミング・チエツク・ジエネレ
ータ、24は訂正回路、25はハミング・チエツ
ク・ビツト格納部、26はポート・アドレス・レ
ジスタ、27はエラー・アドレス・レジスタ、2
8はセレクタをそれぞれ示している。
第1図において、タグ部4に格納されるアドレ
ス・データにはパリテイ・ビツトとエラー検出訂
正コードとが付加され、またデータ部5に格納さ
れるデータに対してもパリテイ・ビツトとエラー
検出訂正コードが付加されている。タグ部4に
は、上記のアドレス・データの外に、変更ビツト
(modified bit)、無効化ビツト(invalid bit)お
よび置換禁止ビツト(replace inhibit bit)など
が格納されている。TLB2は論理アドレスを実
アドレスに変換するものである。以下、本発明の
1実施例の動作を説明する。
正常アクセス時には、次のような動作が行われ
る。命令ユニツトからのアドレス・データは、実
効アドレス・レジスタ1のビツト8ないし31に
セツトされる。実効アドレス・レジスタ1にセツ
トされるアドレス・データは、通常は論理アドレ
スであるので、TLB2を使用して実アドレスに
変換され、実アドレス・レジスタ3のビツト8な
いし20にセツトされる。また、実効アドレス・
レジスタ1の実アドレス部分ビツト21ないし2
6を利用し、タグ部4およびデータ部5がアクセ
スされる。
本発明のバツフア記憶はセツトアソシアテイブ
方式であり、タグ部4とデータ部5はそれぞれ同
数のセツトに分かれており、また各セツト内は複
数のラインに分かれている。上記実効アドレスの
ビツト21ないし26を用いて、各セツト内にお
ける該アドレスに対応するラインのタグ・データ
を並列的にリードする。タグ部4の各セツト内の
対応するラインが読出され、実アドレス・レジス
タ3の内容と比較される。比較した結果、セツト
iが一致すれば、データ部5のセツトiから読出
されたデータがアライン回路11によつてバイ
ト・アラインされ、オペランド語レジスタ12又
は命令語レジスタ(図示せず)にセツトされる。
また、バツフア記憶に所望のデータがなかつた場
合、主記憶へのアドレスを記憶するため、ポー
ト・アドレス・レジスタ26が用意される。
データ部5から読出されたデータにエラーがあ
つた場合には、次のような動作が行われる。デー
タ部5より読出された複数のデータの中からセツ
トiのデータがセレクタ9によつて選択され、こ
のデータはワーク・レジスタ(図示せず)にセツ
トされるが、これと同時にパリテイ・チエツク回
路10によつてパリテイ・チエツクされ、パリテ
イ・エラーが検出されると、エラー・レジスタ1
4がセツトされ、命令ユニツトにエラー検出が通
知される。また、エラー検出位置を示すセツト番
号(一致回路8−1ないし8−Nの出力により求
める)とエラーを生じたライン・アドレスである
実効アドレス部のビツト21ないし26が第1図
ロに示すエラー・アドレス・レジスタ27にセツ
トされる。そして、制御回路(図示せず)は、命
令ユニツトからのアクセスを禁止する。もし、エ
ラーが検出されたデータに対応するタグ・データ
の中の変更ビツトがオフ、即ち過去にストアされ
たことを示していなければ、エラー・アドレス・
レジスタ27の内容を実効アドレス・レジスタ1
に移し、上記タグ・データの無効化ビツトをオン
とすると共に、エラー・データの格納されていた
ブロツクが2度と使用できないようにするため置
換禁止ビツトをオンとする。
エラー・データに対応するタグ・データ内の変
更ビツトがオン、即ち過去においてストアされた
ことがある場合には、このタグ・データの無効化
ビツトをオンとする前に32バイトのエラー・デー
タを8バイトずつエラー検出訂正用レジスタ15
に読出し、同時に読出されたエラー検出訂正コー
ドを用いてエラーを訂正し、訂正データを高速バ
ツフア・レジスタ19にセツトする。また、タグ
部4からエラー・データに対応するアドレス・デ
ータを読出し、これとライン・アドレスを併合し
たものを第1の主記憶アドレス・レジスタ21−
1に入力し、引続いて第2の主記憶アドレス・レ
ジスタ21−2にセツトし、そして主記憶へ書込
みの起動信号を送る。そのあと上述したような方
法で該当するタグ・データの中の無効化ビツトを
オンとすると共に置換禁止ビツトをオンとする。
上記のシーケンスは第2図に示される。その後、
命令ユニツトからのアクセスは、許可される。
命令ユニツトは、エラーが報告されると、命令
のリトライを行い、再アクセス要求を出す。バツ
フア記憶には求めるデータは存在しないので、実
アドレスが第1の主記憶アドレス・データ21−
1、ついで第2の主記憶アドレス・レジスタ21
−2にセツトされ、主記憶に対してリード要求が
出される。主記憶から読出されたデータはエラー
検出訂正用レジスタ15にセツトされ、ハミン
グ・チエツク・ビツト格納部16にセツトされて
いる主記憶からのエラー検出訂正コードを用いて
主記憶から読出されたデータにエラーがないか否
かがチエツクされ、もしエラーがあれば訂正され
て訂正データが高速バツフア・レジスタ19にセ
ツトされ、データ部5に書込まれると同時にアラ
イン回路11に入れられ、オペランド語レジスタ
12にセツトされ、命令ユニツトに渡される。ア
ドレス・データは実アドレス・レジスタ3から第
1の主記憶アドレス・レジスタ21−1にセツト
され、エラー検出訂正コードが生成される。アド
レス・データは第1の主記憶アドレス・レジスタ
21−1から第2の主記憶アドレス・レジスタ2
1−2に移され、生成されたエラー検出訂正コー
ドと共にタグ部4に書込まれる。上記のシーケン
スは第3図に示される。
タグ部にエラーがあつた場合には次のような動
作が行われる。タグ部に格納される各タグ・デー
タにはパリテイ・ビツトとエラー訂正検出コード
が付加されている。タグ部の各セツトから読出さ
れたタグ・データは、対応するパリテイ・チエツ
ク回路7−1,………,7−Nによつてパリテ
イ・チエツクされる。パリテイ・エラーが検出さ
れた場合には、エラー報告が命令ユニツトに送ら
れると共に、エラー・セツト番号とエラー・ライ
ン・アドレスがエラー・アドレス・レジスタ27
に記憶される。セレクタ9からのデータにパリテ
イ・エラーが検出された場合と同様に、エラーが
検出されたタグ・データの中の変更ビツトがオフ
であれば、エラー・アドレス・レジスタ27の内
容を実効アドレス・レジスタ1にセツトし、上記
タグ・データの無効化ビツトをオンすると同時に
置換禁止ビツトもオンにする。変更ビツトがオン
である場合には、タグ・データの中のアドレス・
データとエラー検出訂正コードをそれぞれ第1の
主記憶アドレス・レジスタ21−1とハミング・
チエツク・ビツト格納部22にセツトし、エラー
訂正して訂正アドレス・データを第2の主記憶ア
ドレス・レジスタにセツトし、主記憶に対して書
込み要求を出す。命令ユニツトの動作は、デー
タ・エラー検出時と同じである。
バツフア記憶へデータをストアする際、データ
に対するエラー検出訂正コードは次のようにして
生成される。命令ユニツトからのストア要求を受
付けると、先ず、バツフア記憶にデータがあるか
否かを調べるため、バツフア記憶のフエツチが行
われる。読出されたデータおよび/またはタグ・
データにエラーがあれば、さきに述べたような処
理が行われる。エラーが検出されなかつた場合
は、フエツチされたデータと命令ユニツトからの
データとをマージしてエラー検出訂正用レジスタ
15にセツトし、エラー検出訂正コードを生成し
て、高速バツフア・レジスタ19およびハミン
グ・チエツク・ビツト格納部25にセツトし、バ
ツフア記憶のデータ部5に書込む。
以上の説明から明らかなように、本発明によれ
ば、スワツプ方式のバツフア記憶方式において、
バツフア記憶をアクセスする際にパリテイ・チエ
ツクのみを行い、データもしくはタグ・データに
パリテイ・エラーが検出された場合、変更ビツト
がオンであるときにはデータもしくはタグ・デー
タの中のアドレス部分を訂正して主記憶にデータ
を書込むと共に無効化ビツトをオンとし、変更ビ
ツトがオフであるときには無効化ビツトをオンと
しているので、バツフア記憶のアクセス時間を増
加させることなく、エラー検出訂正コードにより
データおよびタグ・データを修正することが出来
る。また、従来方式もデータのエラー検出訂正手
段を有しているものであり、本発明と従来方式と
を比較すると、本発明を実現するために新たに追
加されるハードウエア機構はアドレス・データに
対するエラー検出訂正手段のみであり、したがつ
てハードウエア機構の増加は極めて少なくてす
む。
【図面の簡単な説明】
第1図イ,ロは本発明の1実施例のブロツク
図、第2図はデータ・エラー検出時における主記
憶書込み動作を示すタイミング・チヤート、第3
図は主記憶からのリード・シーケンスを示すタイ
ミング・チヤートである。 1……実効アドレス・レジスタ、2……TLB
(Translation Lookaside Buffer)、3……実アド
レス・レジスタ、4……バツフア記憶のタグ部、
5……バツフア記憶のデータ部、6……パリテ
イ・チエツク回路群、7−1ないし7−N……パ
リテイ・チエツク回路、8−1ないし8−N……
一致回路、9……セレクタ、10……パリテイ・
チエツク回路、11……アライン回路、12……
オペランド語レジスタ、13……トランスレーシ
ヨン・レジスタ、14……エラー・レジスタ、1
5……エラー検出訂正用レジスタ、16……ハミ
ング・チエツク・ビツト格納部、17……ハミン
グ・チエツク・ジエネレータ、18……訂正回
路、19……高速バツフア・レジスタ、20……
ハミング・チエツク・ビツト格納部、21−1…
…第1の主記憶アドレス・レジスタ、21−2…
…第2の主記憶アドレス・レジスタ、22……ハ
ミング・チエツク・ビツト格納部、23……ハミ
ング・チエツク・ジエネレータ、24……訂正回
路、25……ハミング・チエツク・ビツト格納
部、26……ポート・アドレス・レジスタ、27
……エラー・アドレス・レジスタ、28……セレ
クタ。

Claims (1)

  1. 【特許請求の範囲】 1 パリテイ・ビツトおよびエラー検出訂正コー
    ドが付加されたタグ・データが格納されたタグ部
    と、パリテイ・ビツトおよびエラー検出訂正コー
    ドが付加されたデータが格納されたデータ部とを
    備えるスワツプ方式で且つセツトアソシアテイブ
    方式のバツフア記憶装置において、 上記データ部から取出されたアクセス要求に対
    応するデータにパリテイ・エラーが検出された場
    合には、当該データに対応するタグ・データの中
    の変更ビツトの値を調べ、当該変更ビツトがオフ
    のときには上記タグ部内の当該データに対応する
    タグ・データの無効化ビツトをオンとし、当該変
    更ビツトがオンのときには当該データに付加され
    ているエラー検出訂正コードを用いて当該データ
    を訂正し、訂正された当該データを主記憶の該当
    する記憶場所に書込むと共に、上記タグ部内の当
    該データに対応するタグ・データの無効化ビツト
    をオンとし、 上記タグ・データ部から読出されたタグ・デー
    タにパリテイ・エラーが検出された場合には、当
    該タグ・データの中の変更ビツトの値を調べ、当
    該変更ビツトがオフのときには上記タグ部内の当
    該タグ・データの無効化ビツトをオンとし、当該
    変更ビツトがオンのときには当該タグ・データに
    付加されたエラー検出訂正コードを用いてタグ・
    データを訂正して当該タグ・データに対応する正
    しい主記憶アドレスを求め、当該主記憶アドレス
    を用いて当該タグ・データに対応するデータを主
    記憶に書込むと共に、上記タグ部内の当該タグ・
    データの無効化ビツトをオンとする ことを特徴とするバツフア記憶制御方式。
JP2086380A 1980-02-20 1980-02-20 Buffer memory control system Granted JPS56117400A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2086380A JPS56117400A (en) 1980-02-20 1980-02-20 Buffer memory control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2086380A JPS56117400A (en) 1980-02-20 1980-02-20 Buffer memory control system

Publications (2)

Publication Number Publication Date
JPS56117400A JPS56117400A (en) 1981-09-14
JPS6223901B2 true JPS6223901B2 (ja) 1987-05-26

Family

ID=12038967

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2086380A Granted JPS56117400A (en) 1980-02-20 1980-02-20 Buffer memory control system

Country Status (1)

Country Link
JP (1) JPS56117400A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6473433A (en) * 1987-09-16 1989-03-17 Fujitsu Ltd Cache memory control system
JPH0223442A (ja) * 1988-07-13 1990-01-25 Nec Corp メモリ制御装置

Also Published As

Publication number Publication date
JPS56117400A (en) 1981-09-14

Similar Documents

Publication Publication Date Title
US7376877B2 (en) Combined tag and data ECC for enhanced soft error recovery from cache tag errors
US5586297A (en) Partial cache line write transactions in a computing system with a write back cache
US7840848B2 (en) Self-healing cache operations
US4682281A (en) Data storage unit employing translation lookaside buffer pointer
JP3718302B2 (ja) 命令取り出し方法および装置
US8190973B2 (en) Apparatus and method for error correction of data values in a storage device
US11210186B2 (en) Error recovery storage for non-associative memory
US4791642A (en) Buffer error retry
US7739557B2 (en) Method, system and program product for autonomous error recovery for memory devices
US5893152A (en) Method and apparatus that detects and tolerates inconsistencies between the cache and main memory, and the translation lookaside buffer and the virtual memory page table in main memory
EP0321793B1 (en) Apparatus for forcing a reload from main memory upon cache memory error
JPH07295886A (ja) 階層メモリ、階層メモリを有するコンピュータ・システムおよび階層メモリ管理方法
JP3116827B2 (ja) キャッシュメモリ制御装置
US5916314A (en) Method and apparatus for cache tag mirroring
US5996062A (en) Method and apparatus for controlling an instruction pipeline in a data processing system
US20030018936A1 (en) High integrity cache directory
US4920536A (en) Error recovery scheme for destaging cache data in a multi-memory system
US4648033A (en) Look-aside buffer LRU marker controller
US8458532B2 (en) Error handling mechanism for a tag memory within coherency control circuitry
EP0375864A2 (en) Cache bypass
JPS6223901B2 (ja)
US5737753A (en) Least recently used block replacement for four block cache logic system
US6134699A (en) Method and apparatus for detecting virtual address parity error for a translation lookaside buffer
JPH05165719A (ja) メモリアクセス処理装置
EP0128353A2 (en) Error recovery of non-store-through cache