JPH0353660B2 - - Google Patents

Info

Publication number
JPH0353660B2
JPH0353660B2 JP59044022A JP4402284A JPH0353660B2 JP H0353660 B2 JPH0353660 B2 JP H0353660B2 JP 59044022 A JP59044022 A JP 59044022A JP 4402284 A JP4402284 A JP 4402284A JP H0353660 B2 JPH0353660 B2 JP H0353660B2
Authority
JP
Japan
Prior art keywords
address
data
request
buffer memory
array
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 - Lifetime
Application number
JP59044022A
Other languages
English (en)
Other versions
JPS60189553A (ja
Inventor
Makoto Kishi
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP59044022A priority Critical patent/JPS60189553A/ja
Publication of JPS60189553A publication Critical patent/JPS60189553A/ja
Publication of JPH0353660B2 publication Critical patent/JPH0353660B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (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)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はデータ処理装置のバツフア制御方式に
係り、特にバツフアメモリのアドレスアレイ部に
おける障害時のリプレース制御方式に関する。
〔発明の背景〕
中大型機等のデータ処理装置においては、一般
に主記憶装置の他に高速バツフアメモリを備え、
主記憶装置内の使用頻度の高いデータをバツフア
メモリに格納しておき、メモリ参照時、該バツフ
アメモリを参照して目的のデータを読み取ること
により、処理の高速化を図つている。バツフアメ
モリに格納されているデータの主記憶アドレス
は、通常、アドレスアレイに登録されており、メ
モリリクエストがあると、まず、アドレスアレイ
に登録されている主記憶アドレスの中にリクエス
トアドレスと一致するものがあるか否かを調べら
れる。そして、一致するものがない場合には、既
にバツフアメモリ内に格納されているデータを無
効とし、新たに主記憶装置から必要とするデータ
をバツフアメモリに格納し、その主記憶アドレス
をアドレスアレイに登録するリプレースが発生す
る。アドレスアレイに障害が発生し、アドレスア
レイから読出した主記憶アドレスに誤りがある場
合に、その障害を放置しておくと、実際にその主
記憶アドレスがリクエストアドレスと一致するも
のであるにもかかわらず、リプレースが発生し
て、2重登録となる危険性があり、何らかの対策
が必要であつた。
〔発明の目的〕
本発明はバツフアメモリのアドレスアレイの信
頼性を向上し、2重登録の危険性を防止したバツ
フアメモリの制御方法を提供することにある。
〔発明の概要〕
本発明は、バツフアメモリのアドレスアレイに
アドレスを登録する際、この登録アドレスと共に
登録アドレスに対するパリテイチエツクビツト、
及びECCチエツクコードも同時に登録する。こ
のECCチエツクコードは、書き込みデータに対
して所定のアルゴリズムにより得られるものであ
り、データ読み出し時には、このECCチエツク
コードを用いて所定のアルゴリズムにより、読み
出しデータのエラーの有無の検出、さらに、検出
されたエラーの訂正を行うためのものである。こ
のような、ECCチエツクコードによるエラーの
検出、訂正の方法は、ECC(Error Check and
Correct)方式として、RAM素子等のメモリ障
害対策として一般的に用いられているものであ
る。本発明において、このECCチエツクコード
はアドレスアレイの各カラム毎に、各ロー対応に
設けても、あるいは複数のローの各登録アドレス
に対して1組設けてもよい。メモリリクエスト時
は、リクエストアドレスとアドレスアレイに登録
されたアドレスをパリテイチエツクビツトと共に
比較し、リクエストアドレスに対応するデータが
バツフアメモリに格納されているか否かを判定す
るそして、バツフアメモリ内にリクエストデータ
に対応するデータが格納されていない場合、当該
カラムについて登録されているアドレスとECC
チエツクコードを読みだし、ECCエラーの無い
場合は、通常のアルゴリズムによつてリプレース
ローを決定してリプレースを実行し、ECCエラ
ーのある場合は、エラーの発生しているビツトを
含むローをリプレースローとして選択し、ECC
訂正済みのアドレスを用いてバツフアメモリより
主記憶へデータを書き戻す。
これにより、アドレスアレイに障害があり、ア
ドレスアレイからの読出しデータに誤りがある場
合でも2重登録となる危険性を防止することがで
きる。
〔発明の実施例〕
以下、本発明の一実施例を図面により詳細に説
明する。
第1図は本発明が対象とするデータ処理装置の
システム構成例である。同図において、101は
入出力チヤネル装置(CH)、102と103は
中央処理装置(CPU)であり、これらは記憶制
御装置104を介して主記憶装置(MS)と接続
されている。記憶制御装置104はリクエスト受
付部106,107,108、プラリオリテイ回
路109、リクエスト制御部110、デイレクト
リ部111、バツフアメモリ(BS)112等で
構成される。
CH101あるいはCPU102,103から発
行されるメモリリクエストは、それぞれリクエス
ト受付部106,107,108へ一担取り込ま
れる。このリクエスト受付部106〜108に取
り込まれたメモリリクエストの1つをプライオリ
テイ回路109が選択し、リクエスト制御部11
0とデイレクトリ部111へ与える。デイレクト
リ部111は、BS112に格納されているデー
タのMSアドレスを登録しているアドレスアレ
イ、及び、その周辺回路を有し、メモリリクエス
トアドレスがアドレスアレイに登録されているか
否かチエツクして、その結果をリクエスト制御部
110に伝える。ここで、リクエストアドレスが
アドレスアレイに登録されている場合をIn BS、
登録されていない場合をNot in BSと呼ぶ。い
ま、フエツチリクエストの場合、リクエスト制御
部110は、In BSのときはBS112よりデー
タをフエツチしてCH101あるいはCPU10
2,103のリクエスト発行元に該データを転送
し、Not in BSのときはBS112上の不用デー
タをMS113に戻して、リクエストアドレスを
含むライン単位のデータをMS113から新たに
BS112へ転送した後、目的のデータをリクエ
スト発行元へ転送する。また、ストアリクエスト
の場合は、In BSのリクエストについてはBS1
12のみにデータを書き込み(すなわち、これが
ストアイン方式である)、Not in BSのリクエス
トについては、MS113に該データを含むライ
ンをBSに登録した後該データを書き込む。
本発明は第1図におけるデイレクトリ部111
に係わるものである。第2図に本発明の一実施例
を示す。便宜上、以下の説明では、アドレスアレ
イは256カラム×4ローで構成され、BSとMS間
のデータ転送は256バイトのラインを単位として
行われるとする。
第3図はリクエストアドレスのビツト構成で該
リクエストアドレスは28ビツトとそれに付随する
4ビツトのパリテイチエツクビツトP0〜P3から
なるとしている。このリクエストアドレスの内、
ビツト15〜22をアドレスアレイ索引用のカラムア
ドレス、ビツト0〜14をアドレスアレイえの登録
アドレスとして使用する。ビツト0〜22はライン
アドレス、ビツト23〜27はライン内アドレスを示
す。第4図はアドレスアレイの1エントリの登録
内容で、Vは該エントリの有効性を示すビツト、
VpはVビツトのパリテイビツト、ビツト0〜14
は登録アドレスである。
さて、第2図において、アドレスレジスタ30
1にはプライオリテイ回路109により選択され
たリクエストアドレス(ラインアドレス)がセツ
トされる。このアドレスレジスタ301のカラム
アドレスを線322を介してアドレスアレイ30
2及びECCアレイ303に与え、アドレスアレ
イ302内の該当カラムの4ローの内容、及び
ECCアレイ303内の同じく該当カラムのECC
チエツクコードを読み出す。なお、ECCアレイ
303には、アドレスアレイ302のそれぞれ対
応するカラムの4ロー分の登録データに対する
ECCチエツクコードが格納されているとする。
比較回路3040〜3043はアドレスアレイ3
02の各ローに対応しており、それぞれアドレス
アレイ302から読み出された該当ローの登録デ
ータと線321を介して与えられるアドレスレジ
スタ301の上位アドレスと比較する。この比較
回路3040〜3043での比較動作は、パリテイ
ビツトも含めて第4図に示されている全ビツトに
ついて行う。このため、アドレスアレイ302か
らの読出しデータに誤りがあると、そのローに実
際にはリクエストアドレスが登録されていてもい
なくても、比較結果は、データ誤りの発生したロ
ーでIn BSとなることはない。
比較回路3040〜3043での比較結果、一致
が検出されると、選択回路305は線324を介
して、どのローでIn BSかをリクエスト制御部1
10へ連絡する。これにより、リクエスト制御部
110では、BS112の該当カラム、該当ロー
をアクセスし、そのライン内アドレスに対してデ
ータの読み書きを行う。
アドレスレジスタ301のカラムアドレスはカ
ラムアドレスレジスタ306にもセツトされ、こ
れでリプレースメントアレイ(RA)308の該
当カラムが選択される。RA308には、アドレ
スアレイ302の各カラム対応に、BS112を
例えばLRU(Least Recently Used)方式でリプ
レースするためのリプレース情報が格納されてい
る。比較回路3040〜3043における各ローの
比較結果は、選択回路305を介してレジスタ3
07にセツトされる。In BSの場合、RA308
はレジスタ307の内容にもとづき、In BSのロ
ーが最もあとにリプレースされるように、該当カ
ラムのリプレース情報を更新する。
一方、比較回路3040〜3043のいずれでも
一致が検出されない場合、選択回路305は線3
24を介してNot in BSをリクエスト制御部1
10へ連絡する。このNot in BSが発生すると、
該当カラムの4ローの内、一つを選択してリプレ
ースしてやる必要がある。この場合、一般には
RA308の指示に従つてリプレースローを決定
すればよいが、実際にはIn BSであるにもかかわ
らず、前述の如くアドレスアレイ302の読出し
データの誤りでNot in BSとなる場合がある。
この場合、RA308の指示に従つてリプレース
ローを決めると、2重登録の危険性が生じる。こ
れを防止するため、ECCチエツクを行い、エラ
ーの無い場合はRA308の指示に従つてリプレ
ースローを決めるが、エラーがある場合は該エラ
ーのローをリプレースローとして選択する。以
下、これについて説明する。
Not in BSの場合、RA308はカラムアドレ
スレジスタ306で示されるカラムのリプレース
情報を読み出してレジスタ309にセツトする。
一方、アドレスアレイ302とECCアレイ30
3の該当カラムから読み出された4ロー分の登録
データとそのECCチエツクコードは線323を
介してレジスタ311にセツトされている。
ECC検査・訂正回路312は、レジスタ311
の内容についてECCチエツクを行い、それが正
常か否かと共に、訂正可能エラーが検出された場
合は該訂正可能エラービツトを含むローアドレス
を、線325を介してリプレースロー決定回路3
10に伝える。同時に、訂正可能エラーが検出さ
れた場合、ECC検査・訂正回路312はエラー
ビツトを訂正し、この訂正したアドレスをレジス
タ313にセツトする。
リプレース決定回路310では、ECCエラー
の無い場合はレジスタ309のリプレース情報に
よつてリプレースローを決定し、ECCエラー有
りの場合はECC検査・訂正回路312で検出さ
れた訂正可能エラーを含むローをリプレースロー
として決定する。このリプレースロー番号が線3
26を介してアドレスアレイ302に与えられる
ことにより、アドレスアレイ302は該当カラム
内の該ローに対し、アドレスレジスタ301の上
位アドレスを線320を介して登録する。リプレ
ースロー決定回路310で決定したリプレースロ
ー番号は選択回路314にも与えられる。これに
より選択回路314では、リプレースされるロー
ついては線321上の新たに登録するアドレスを
選択し、リプレースされないローについては線3
23上のアドレスアレイ302から読み出された
登録済のアドレスを選択する。この選択回路31
4の出力データに対し、ECC生成回路315で
新たにECCチエツクコードを生成し、レジスタ
316、線327を介してECCアレイ303の
該当カラムに格納する。なお、ECCエラーの無
い場合、線326のリプレースロー番号を用い、
アドレスアレイ302から読み出された4ロー分
の登録済アドレスのうち、リプレースロー番号に
対応する登録済アドレスをレジスタ313にセツ
トする。
Not in BSの通知を受けたリクエスト制御部
110では、まず、BS112における該当カラ
ム中の上記リプレースロー決定回路310で選択
されたリプレースローのデータを読み出し、レジ
スタ313内の登録アドレスで示されるMS11
3上の所定領域へ書き戻す。その後、リクエスト
アドレスのラインアドレスで示されるMS113
上の領域のデータを読み出し、BS112の該当
カラム中の上記リプレースローに対して転送す
る。
なお、ECC検出・訂正回路312においては
訂正不可能なエラーが検出された場合は、例えば
マシンチエツク割込み等により回復動作あるいは
機能縮小等が試みられることになる。これは本発
明に直接関係するところではないので、これ以上
の説明は省略する。
〔発明の効果〕
以上の説明から明らかな如く、本実施例によれ
ば次のような効果が得られる。
(1) In BSの場合はECC回路を動作させる必要が
ないため、BSのアクセスタイムにECC回路の
動作によるオーバヘツドが加わることがない。
(2) Not in BSとなつた場合、アドレスアレイ
の読出しデータに誤りが発生しているケース
は、訂正可能誤りでは該当ローをリプレースロ
ーとして選択し、訂正済アドレスによりBSか
らMSへデータを書き戻すので、データは失な
われず、又、アドレスアレイの誤りも回復され
る。
(3) 実際にはIn BSであるにもかかわらず、アド
レスアレイの読出しデータに誤りが発生してい
てNot in BSとなつた場合、誤りビツトを含
むローをリプレースローとして選択するので、
2重登録の危険性が防止される。
〔発明の効果〕
以上述べたように、本発明によれば、実際には
バツフアメモリ内にリクエスト先のデータが格納
されているにもかかわらず、アドレスアレイの読
出しデータに誤りが発生していてアドレスアレイ
に登録されている主記憶アドレスとリクエストア
ドレスが不一致となつた場合であつても、2重登
録となる危険性を防止することができる。
【図面の簡単な説明】
第1図は本発明が対象とするデータ処理装置の
構成例を示す図、第2図は本発明の一実施例で第
1図におけるデイレクトリ部の詳細図、第3図は
リクエストアドレスの一例を示す図、第4図はア
ドレスアレイの登録アドレスの一例を示す図であ
る。 101…入出力チヤネル装置、102,103
…中央処理装置、104…記憶制御装置、112
…バツフアメモリ、113…主記憶装置、301
…リクエストアドレスレジスタ、302…アドレ
スアレイ、303…ECCアレイ、308…リプ
レースアメントレイ、310…リプレースロー決
定回路、312…ECC検査・訂正回路、315
…ECCチエツクコード生成回路。

Claims (1)

  1. 【特許請求の範囲】 1 主記憶装置と、当該主記憶装置のデータの一
    部を格納するバツフアメモリと、当該バツフアメ
    モリに格納されるデータの主記憶アドレスを登録
    するアドレスアレイとを有するデータ処理装置の
    バツフアメモリ制御方法において、 前記バツフアメモリに主記憶の一部のデータを
    格納する際、前記データの主記憶アドレスと共に
    当該主記憶アドレスに対するパリテイチエツクビ
    ツトおよび所定のアルゴリズムにより得られる
    ECCチエツクコードをアドレスアレイに登録し、 前記主記憶装置へのリクエストの際、当該リク
    エストアドレスと前記アドレスアレイに格納され
    たアドレスとをパリテイチエツクビツトと共に比
    較し、前記リクエストアドレスに対応するデータ
    が前記バツフアメモリ内に存在するか否かを判定
    し、 前記判定の結果前記リクエストアドレスに対応
    するデータが前記バツフアメモリに存在しないと
    き、前記アドレスアレイから読みだした主記憶ア
    ドレスに対して前記ECCチエツクコードを用い
    てエラー検出を行い、 エラーが検出されない場合には所定のアルゴリ
    ズムにより前記バツフアメモリ中のリプレース領
    域を決定してリプレース処理を行い、 エラーが検出された場合にはエラービツトを含
    む登録アドレスに対応する前記バツフアメモリ中
    の領域をリプレース領域として決定し、前記
    ECCチエツクコードにより当該エラーを訂正し
    てリプレース処理を行うことを特徴とするバツフ
    アメモリ制御方法。
JP59044022A 1984-03-09 1984-03-09 バッファメモリ制御方法 Granted JPS60189553A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59044022A JPS60189553A (ja) 1984-03-09 1984-03-09 バッファメモリ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59044022A JPS60189553A (ja) 1984-03-09 1984-03-09 バッファメモリ制御方法

Publications (2)

Publication Number Publication Date
JPS60189553A JPS60189553A (ja) 1985-09-27
JPH0353660B2 true JPH0353660B2 (ja) 1991-08-15

Family

ID=12680034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59044022A Granted JPS60189553A (ja) 1984-03-09 1984-03-09 バッファメモリ制御方法

Country Status (1)

Country Link
JP (1) JPS60189553A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63257854A (ja) * 1987-04-15 1988-10-25 Nec Corp Lruメモリ障害検出回路
JPWO2007096998A1 (ja) * 2006-02-24 2009-07-09 富士通株式会社 キャッシュメモリ装置およびキャッシュメモリ制御方法

Also Published As

Publication number Publication date
JPS60189553A (ja) 1985-09-27

Similar Documents

Publication Publication Date Title
US7376877B2 (en) Combined tag and data ECC for enhanced soft error recovery from cache tag errors
US6304992B1 (en) Technique for correcting single-bit errors in caches with sub-block parity bits
US4608687A (en) Bit steering apparatus and method for correcting errors in stored data, storing the address of the corrected data and using the address to maintain a correct data condition
US6480975B1 (en) ECC mechanism for set associative cache array
US5267242A (en) Method and apparatus for substituting spare memory chip for malfunctioning memory chip with scrubbing
US5434868A (en) Fault tolerant memory
CA1213674A (en) Pipeline error correction
US4654847A (en) Apparatus for automatically correcting erroneous data and for storing the corrected data in a common pool alternate memory array
US20080301531A1 (en) Fault tolerant encoding of directory states for stuck bits
US6108753A (en) Cache error retry technique
JP3851093B2 (ja) データ転送方法及びデータ処理システム
US20060031708A1 (en) Method and apparatus for correcting errors in a cache array
JPS6049950B2 (ja) Lruエラ−処理方式
US6035436A (en) Method and apparatus for fault on use data error handling
US6631489B2 (en) Cache memory and system with partial error detection and correction of MESI protocol
JP2005302027A (ja) 自律的エラー回復方法、システム、キャッシュ、およびプログラム・ストレージ装置(メモリ装置のための自律的エラー回復のための方法、システム、およびプログラム)
US7689891B2 (en) Method and system for handling stuck bits in cache directories
JPH0353660B2 (ja)
JPH05165719A (ja) メモリアクセス処理装置
EP0128353A2 (en) Error recovery of non-store-through cache
JPS61112259A (ja) キヤツシユメモリ装置の制御方式
JPS6044709B2 (ja) バツフアリトライ方式
JPH04273348A (ja) キャッシュ・メモリ
JPS63271555A (ja) 記憶制御方式
JPS6223901B2 (ja)