JPH07129466A - 階層記憶装置 - Google Patents
階層記憶装置Info
- Publication number
- JPH07129466A JPH07129466A JP5273918A JP27391893A JPH07129466A JP H07129466 A JPH07129466 A JP H07129466A JP 5273918 A JP5273918 A JP 5273918A JP 27391893 A JP27391893 A JP 27391893A JP H07129466 A JPH07129466 A JP H07129466A
- Authority
- JP
- Japan
- Prior art keywords
- data
- storage device
- failure
- error
- fault
- 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.)
- Withdrawn
Links
- 239000010410 layer Substances 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 5
- 239000002356 single layer Substances 0.000 claims description 2
- 101100332284 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) DSS1 gene Proteins 0.000 description 18
- 208000011580 syndromic disease Diseases 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000000034 method Methods 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
(57)【要約】
【目的】本発明は主記憶装置とバッファ記憶装置とから
なるスワップ方式の階層記憶装置に関する。特に、その
エラー処理方式に関に関し、ムーブイン、ムーブアウト
時には障害発生と障害発生元を示す情報を付加するだけ
とし、プロセサ7が実際に使用する時点で再読み出しや
処理中止とすることにより、効率を向上させることを目
的とする。 【構成】各記憶装置1,2は、障害通知手段3と、障害
記憶手段4とを備え、障害通知手段3は、データの読み
出し時にエラー訂正不可能なときに、データの要求元
へ、どの記憶階層であるかを示す情報を障害発生元情報
としてデータと共に送り、障害記憶手段4は、データ書
込み時に、他の記憶装置1,2から通知された障害発生
元情報をデータのチェック単位毎に対応して記憶し、デ
ータが障害発生元情報を伴っていなければ、障害発生元
情報を消去するように構成する。
なるスワップ方式の階層記憶装置に関する。特に、その
エラー処理方式に関に関し、ムーブイン、ムーブアウト
時には障害発生と障害発生元を示す情報を付加するだけ
とし、プロセサ7が実際に使用する時点で再読み出しや
処理中止とすることにより、効率を向上させることを目
的とする。 【構成】各記憶装置1,2は、障害通知手段3と、障害
記憶手段4とを備え、障害通知手段3は、データの読み
出し時にエラー訂正不可能なときに、データの要求元
へ、どの記憶階層であるかを示す情報を障害発生元情報
としてデータと共に送り、障害記憶手段4は、データ書
込み時に、他の記憶装置1,2から通知された障害発生
元情報をデータのチェック単位毎に対応して記憶し、デ
ータが障害発生元情報を伴っていなければ、障害発生元
情報を消去するように構成する。
Description
【0001】
【産業上の利用分野】本発明は主記憶装置とバッファ記
憶装置とからなるスワップ方式の階層記憶装置に関す
る。特に、そのエラー処理方式に関する。
憶装置とからなるスワップ方式の階層記憶装置に関す
る。特に、そのエラー処理方式に関する。
【0002】
【従来の技術】図6は従来の階層記憶装置の構成図であ
る。スワップ方式では、大略以下のように動作する。
る。スワップ方式では、大略以下のように動作する。
【0003】プロセサ7がデータを読み出すとき、指定
したアドレスのデータがバッファ記憶装置(以下BSと
記す)2に存在しなければ、主記憶装置(以下MSUと
記す)1にデータを要求する。すると指定したアドレス
を含む一定の大きさのブロックがMSU1からBS2に
移される。この動作をムーブインとよぶ。その後BS2
からプロセサ7へ要求されたデータが渡される。このよ
うなことが繰り返されBS2が満杯になった状態で、B
S2にないデータが要求されるとBS2中のプロセサ7
から新たなデータが書かれたブロックの内、データが書
かれてから最も時間の経過しているブロックをMSU1
に移して(これをムーブアウトとよぶ)から、ムーブイ
ンを行なう。
したアドレスのデータがバッファ記憶装置(以下BSと
記す)2に存在しなければ、主記憶装置(以下MSUと
記す)1にデータを要求する。すると指定したアドレス
を含む一定の大きさのブロックがMSU1からBS2に
移される。この動作をムーブインとよぶ。その後BS2
からプロセサ7へ要求されたデータが渡される。このよ
うなことが繰り返されBS2が満杯になった状態で、B
S2にないデータが要求されるとBS2中のプロセサ7
から新たなデータが書かれたブロックの内、データが書
かれてから最も時間の経過しているブロックをMSU1
に移して(これをムーブアウトとよぶ)から、ムーブイ
ンを行なう。
【0004】従来は、ムーブインの過程でMSU1の読
み出しデータはチェック回路5でエラーを検出し、それ
が訂正不可能な場合、(または再実行して回復すればよ
し、それでだめなら)そこでムーブインを中止してい
た。ところが、プロセサ7が実際に使用するデータはム
ーブインされたデータの一部でしかないことも多い。ム
ーブインデータブロックの内に訂正不可能なエラー(障
害)があると、それがプロセサ7の使用しない部分であ
っても、ムーブインデータすべてが無効になってしま
う。
み出しデータはチェック回路5でエラーを検出し、それ
が訂正不可能な場合、(または再実行して回復すればよ
し、それでだめなら)そこでムーブインを中止してい
た。ところが、プロセサ7が実際に使用するデータはム
ーブインされたデータの一部でしかないことも多い。ム
ーブインデータブロックの内に訂正不可能なエラー(障
害)があると、それがプロセサ7の使用しない部分であ
っても、ムーブインデータすべてが無効になってしま
う。
【0005】ムーブアウトの過程でBS2の読み出しデ
ータに障害が発生した場合には、一般に、プロセサ7が
そのとき動作している領域とは全く関係ないため、エラ
ー処理が困難である。
ータに障害が発生した場合には、一般に、プロセサ7が
そのとき動作している領域とは全く関係ないため、エラ
ー処理が困難である。
【0006】
【発明が解決しようとする課題】従って、実際には何ら
問題がなく動作を続けることができるはずなのに、ブロ
ック全体の読み直しをして効率を低下させ、さらに処理
を中止しなければならない場合があるという問題があ
る。
問題がなく動作を続けることができるはずなのに、ブロ
ック全体の読み直しをして効率を低下させ、さらに処理
を中止しなければならない場合があるという問題があ
る。
【0007】本発明はムーブイン、ムーブアウト時には
障害発生と障害発生元を示す情報を付加するだけとし、
プロセサ7が実際に使用する時点で再読み出しや処理中
止とすることにより、効率を向上させた階層記憶装置を
実現することを目的としている。
障害発生と障害発生元を示す情報を付加するだけとし、
プロセサ7が実際に使用する時点で再読み出しや処理中
止とすることにより、効率を向上させた階層記憶装置を
実現することを目的としている。
【0008】
【課題を解決するための手段】図1は本発明の原理ブロ
ック図である。主記憶装置1と単一または複数階層のバ
ッファ記憶装置2とを有するスワップ方式の階層記憶装
置を示す。
ック図である。主記憶装置1と単一または複数階層のバ
ッファ記憶装置2とを有するスワップ方式の階層記憶装
置を示す。
【0009】図1(1)に示すように、各記憶装置1,
2は、障害通知手段3と、障害記憶手段4とを備える。
障害通知手段3は、データの読み出し時にチェック回路
5がデータをチェックした結果訂正不可能なときに、デ
ータの要求元へ、どの記憶階層で発生したかを示す情報
を障害発生元情報としてデータと共に送る。障害発生元
情報としては、障害が発生した(障害を検出した)場所
や時点を示すものとする。例えば、主記憶読み出し時、
ムーブイン時のバッファ記憶装置、ムーブアウト時のバ
ッファ記憶装置等である。
2は、障害通知手段3と、障害記憶手段4とを備える。
障害通知手段3は、データの読み出し時にチェック回路
5がデータをチェックした結果訂正不可能なときに、デ
ータの要求元へ、どの記憶階層で発生したかを示す情報
を障害発生元情報としてデータと共に送る。障害発生元
情報としては、障害が発生した(障害を検出した)場所
や時点を示すものとする。例えば、主記憶読み出し時、
ムーブイン時のバッファ記憶装置、ムーブアウト時のバ
ッファ記憶装置等である。
【0010】障害記憶手段4は、データ書込み時に、他
の記憶装置1,2から通知された障害発生元情報をデー
タのチェック単位毎に対応して記憶し、データが障害発
生元情報を伴っていなければ、障害発生元情報を消去す
る。
の記憶装置1,2から通知された障害発生元情報をデー
タのチェック単位毎に対応して記憶し、データが障害発
生元情報を伴っていなければ、障害発生元情報を消去す
る。
【0011】第2の発明では、図1(2)に示すよう
に、各記憶装置1,2が誤り検出・訂正符号を用いる場
合、障害発生元情報を、全ての誤りのないデータに対応
する符号と予測される誤りが発生したときのデータに対
応する符号とから分離可能な符号になるようにするコー
ド生成器6を備え、障害通知手段3と障害記憶手段4と
に代える。すなわち、障害発生元情報を誤り検出・訂正
符号の中にデータと同様にして入れ、特別な障害通知手
段や、障害記憶手段としてのメモリビットをもたない。
に、各記憶装置1,2が誤り検出・訂正符号を用いる場
合、障害発生元情報を、全ての誤りのないデータに対応
する符号と予測される誤りが発生したときのデータに対
応する符号とから分離可能な符号になるようにするコー
ド生成器6を備え、障害通知手段3と障害記憶手段4と
に代える。すなわち、障害発生元情報を誤り検出・訂正
符号の中にデータと同様にして入れ、特別な障害通知手
段や、障害記憶手段としてのメモリビットをもたない。
【0012】
【作用】各記憶装置1,2はムーブイン、ムーブアウト
等でブロックデータを読み出したときライン単位でチェ
ックをし、訂正不可能なとき、障害発生元情報をデータ
と共に、他の階層の記憶装置2,1またはプロセサ7へ
送る。受け取った記憶装置2,1はその情報をデータ・
ラインと共に記憶する。そして、最終的にプロセサ7へ
送られたデータが訂正不可能なエラーを伴っているな
ら、プロセサ7が判断して再実行(再ムーブイン)等の
エラーの処理を行なうことができる。しかし、プロセサ
7へ渡る以前のムーブイン(またはムーブアウト)段階
で訂正不可能なエラーを伴っているデータがあったとし
ても、プロセサ7が使わなければ(そのラインをアクセ
スしなければ)、プロセサ7に対してエラー表示はない
から、プロセサ7は何もする必要がない。各記憶装置
1,2も、それまでの段階では特にエラー処理のための
余分な処理や時間は使っていない。また、訂正不可能な
エラーを伴っているデータを含むラインに新たなデータ
が書き込まれれば、エラーそのものがなくなることが期
待できる。従って、使ってもいないデータのエラーのた
めに、無駄な時間を使うことがない。
等でブロックデータを読み出したときライン単位でチェ
ックをし、訂正不可能なとき、障害発生元情報をデータ
と共に、他の階層の記憶装置2,1またはプロセサ7へ
送る。受け取った記憶装置2,1はその情報をデータ・
ラインと共に記憶する。そして、最終的にプロセサ7へ
送られたデータが訂正不可能なエラーを伴っているな
ら、プロセサ7が判断して再実行(再ムーブイン)等の
エラーの処理を行なうことができる。しかし、プロセサ
7へ渡る以前のムーブイン(またはムーブアウト)段階
で訂正不可能なエラーを伴っているデータがあったとし
ても、プロセサ7が使わなければ(そのラインをアクセ
スしなければ)、プロセサ7に対してエラー表示はない
から、プロセサ7は何もする必要がない。各記憶装置
1,2も、それまでの段階では特にエラー処理のための
余分な処理や時間は使っていない。また、訂正不可能な
エラーを伴っているデータを含むラインに新たなデータ
が書き込まれれば、エラーそのものがなくなることが期
待できる。従って、使ってもいないデータのエラーのた
めに、無駄な時間を使うことがない。
【0013】ムーブアウト段階で訂正不可能なエラーが
発生しても、ムーブアウトにおけるエラーであること
と、発生した階層とを表示する障害発生元情報を付加す
るだけである。そのエラーは、後にプロセサ7が使うた
めにムーブインが行なわれ、プロセサ7が実際にそのデ
ータ(そのデータを含むライン)をアクセスしたとき通
知される。そのときプロセサ7が使っている領域と無関
係なエラーが突然プロセサ7へ通知されるようなことは
ない。
発生しても、ムーブアウトにおけるエラーであること
と、発生した階層とを表示する障害発生元情報を付加す
るだけである。そのエラーは、後にプロセサ7が使うた
めにムーブインが行なわれ、プロセサ7が実際にそのデ
ータ(そのデータを含むライン)をアクセスしたとき通
知される。そのときプロセサ7が使っている領域と無関
係なエラーが突然プロセサ7へ通知されるようなことは
ない。
【0014】
【実施例】以下、図面を参照して本発明の実施例を説明
する。図2は本発明の実施例の2階層のバッファ記憶装
置と、主記憶装置とからなるスワップ方式の階層記憶装
置を示す。図1と同一機能のものは、同一の符号に区別
符号を付して示す。
する。図2は本発明の実施例の2階層のバッファ記憶装
置と、主記憶装置とからなるスワップ方式の階層記憶装
置を示す。図1と同一機能のものは、同一の符号に区別
符号を付して示す。
【0015】第1階層のバッファ記憶装置(以下LB
S:Local Buffer Storageと記す)2lは、プロセサ (以
下CPUと記す)7に密着しており1つのCPU7が専
用する。CPU7の一部として扱われることが多い。第
2階層のバッファ記憶装置(以下GBS:Global Buffer
Storageと記す)2gは複数のCPU7からアクセスさ
れ、また、入出力動作を司るプロセサであるIOP(図
示は省略してある)からもアクセスされる。主記憶装置
(MSU)1と一体のものとして扱われることが多い。
MSU1は第3階層の記憶装置となる。各々のアクセス
速度はLBS2l>GBS2g>MSU1の順に速く、記憶
容量は、LBS2l<GBS2g<MSU1の順に大きい。
S:Local Buffer Storageと記す)2lは、プロセサ (以
下CPUと記す)7に密着しており1つのCPU7が専
用する。CPU7の一部として扱われることが多い。第
2階層のバッファ記憶装置(以下GBS:Global Buffer
Storageと記す)2gは複数のCPU7からアクセスさ
れ、また、入出力動作を司るプロセサであるIOP(図
示は省略してある)からもアクセスされる。主記憶装置
(MSU)1と一体のものとして扱われることが多い。
MSU1は第3階層の記憶装置となる。各々のアクセス
速度はLBS2l>GBS2g>MSU1の順に速く、記憶
容量は、LBS2l<GBS2g<MSU1の順に大きい。
【0016】記憶装置上のデータフォーマットを図3に
示す。8バイトのデータと、8ビットのECCコードと
をラインとよび、これがエラーチェック単位である。ラ
イン8つを1ブロック(64バイト)とする。各階層の
記憶装置は一時に1ラインを単位としてアクセスし、各
階層間のデータ転送は1ラインを単位として1ブロック
分連続して行なう。したがって、その場合は記憶装置の
アクセスも1ブロック分連続して行なう。以下に、A.
ムーブイン動作、B.ムーブアウト動作を説明する。
示す。8バイトのデータと、8ビットのECCコードと
をラインとよび、これがエラーチェック単位である。ラ
イン8つを1ブロック(64バイト)とする。各階層の
記憶装置は一時に1ラインを単位としてアクセスし、各
階層間のデータ転送は1ラインを単位として1ブロック
分連続して行なう。したがって、その場合は記憶装置の
アクセスも1ブロック分連続して行なう。以下に、A.
ムーブイン動作、B.ムーブアウト動作を説明する。
【0017】A.ムーブイン CPU7がデータをフェッチするとき、より高速な記憶
装置に指定したデータがあればそこからフェッチして動
作する。ムーブインは、指定したデータが高速な記憶装
置にないとき、より大容量側の記憶装置からデータを移
す動作である。例えば、LBS2lにないときGBS2gか
らそのデータのアドレスを含むブロックを読み込む。G
BS2gにもないときはMSU1からそのデータのアドレ
スを含むブロックをまずGBS2gへ読み込む。これらの
動作をムーブインとよぶ。そして、GBS2gからLBS
2lへムーブインした後、LBS2lから必要なデータをC
PU7に渡す。 1.MSU1からGBS2gへのムーブイン MSU1の、指定アドレスを含む64バイトブロック
のアドレスをCPU7がMSU1へ通知する。 MSU1は該当の64バイトブロックの最初の8バイ
トラインを読み出す。 MSU1は読み出したラインのエラーチェックを行な
う。 −読み出したデータが既に障害発生元情報をもって
いるなら、そのままGBS2gへ送る。 −障害発生元情報をもっていないが、訂正可能な1
ビットエラーが生じているならエラー訂正回路により訂
正して、GBS2gへ送る。 −訂正不可能な2重ビットエラーが生じているな
ら、このラインのデータにMSU1で発生したことを示
す障害発生元情報(SE:Storage Error)を生成し、デ
ータラインに付加してGBS2gへ送る。 −エラーが無ければ、そのままGBS2gへ送る。 64バイトブロックの全ラインについて同様に行な
う。 GBS2gはMSU1から送られて来たデータと障害発
生元情報をそのまま記憶する。 2.GBS2gからLBS2lへのムーブイン GBS2gからLBS2lへデータが送られるときには、
MSU1からGBS2gへのときと同様に、64バイトブ
ロックの最初のラインから順に読みだされる。 もし、読みだしたデータに障害発生元情報(SE:St
orage Error)が付加されているならば、いま読みだした
ラインのデータはエラーチェックしないでそのままLB
S2lに送る。 障害発生元情報をもっていなければエラーのチェック
を行う。1ビットエラーなら訂正し、2ビットエラーな
らば、そのラインにBSでムーブイン時に発生したエラ
ー(IE;Indirect storage Error:MSU1以外の場
所で発生したエラー)という障害発生元情報を付加し、
LBS2lへ送る。このエラーはMSU1が原因ではない
エラーである。エラーでなければGBS2gの読みだしデ
ータをLBS2lへ送る。 64バイトブロック内の全ラインについて同様にエラ
ーチェックしLBS2lへの転送を行う。 LBS2lはGBS2gから送られてきたデータと障害発
生元情報をそのまま記憶する。
装置に指定したデータがあればそこからフェッチして動
作する。ムーブインは、指定したデータが高速な記憶装
置にないとき、より大容量側の記憶装置からデータを移
す動作である。例えば、LBS2lにないときGBS2gか
らそのデータのアドレスを含むブロックを読み込む。G
BS2gにもないときはMSU1からそのデータのアドレ
スを含むブロックをまずGBS2gへ読み込む。これらの
動作をムーブインとよぶ。そして、GBS2gからLBS
2lへムーブインした後、LBS2lから必要なデータをC
PU7に渡す。 1.MSU1からGBS2gへのムーブイン MSU1の、指定アドレスを含む64バイトブロック
のアドレスをCPU7がMSU1へ通知する。 MSU1は該当の64バイトブロックの最初の8バイ
トラインを読み出す。 MSU1は読み出したラインのエラーチェックを行な
う。 −読み出したデータが既に障害発生元情報をもって
いるなら、そのままGBS2gへ送る。 −障害発生元情報をもっていないが、訂正可能な1
ビットエラーが生じているならエラー訂正回路により訂
正して、GBS2gへ送る。 −訂正不可能な2重ビットエラーが生じているな
ら、このラインのデータにMSU1で発生したことを示
す障害発生元情報(SE:Storage Error)を生成し、デ
ータラインに付加してGBS2gへ送る。 −エラーが無ければ、そのままGBS2gへ送る。 64バイトブロックの全ラインについて同様に行な
う。 GBS2gはMSU1から送られて来たデータと障害発
生元情報をそのまま記憶する。 2.GBS2gからLBS2lへのムーブイン GBS2gからLBS2lへデータが送られるときには、
MSU1からGBS2gへのときと同様に、64バイトブ
ロックの最初のラインから順に読みだされる。 もし、読みだしたデータに障害発生元情報(SE:St
orage Error)が付加されているならば、いま読みだした
ラインのデータはエラーチェックしないでそのままLB
S2lに送る。 障害発生元情報をもっていなければエラーのチェック
を行う。1ビットエラーなら訂正し、2ビットエラーな
らば、そのラインにBSでムーブイン時に発生したエラ
ー(IE;Indirect storage Error:MSU1以外の場
所で発生したエラー)という障害発生元情報を付加し、
LBS2lへ送る。このエラーはMSU1が原因ではない
エラーである。エラーでなければGBS2gの読みだしデ
ータをLBS2lへ送る。 64バイトブロック内の全ラインについて同様にエラ
ーチェックしLBS2lへの転送を行う。 LBS2lはGBS2gから送られてきたデータと障害発
生元情報をそのまま記憶する。
【0018】B.ムーブアウト ムーブアウトはムーブインしようとしたときBSに空き
ブロックがない場合に、データが更新されていて必要度
の低いブロックをより大容量側の記憶装置へ移す動作で
ある。 1.LBS2lからGBS2gへのムーブアウト LBS2lのムーブアウトしようとするデータを含む6
4バイトブロックをアクセスする。 8バイトのラインごとにエラーチェックを行う。 ラインが既に障害発生元情報をもっているなら、その
ままGBS2gへ送る。 チェック回路がラインに訂正不可能なエラーを検出し
たなら、BSでムーブアウト時に発生したエラーIEと
いう障害発生元情報を付加してGBS2gへ送る。 GBS2gはLBS2lから渡されたブロックを障害発生
元情報とともに格納する。 2.GBS2gからMSU1へのムーブアウト GBS2gのムーブアウトしようとするデータを含む6
4バイトブロックをアクセスする。 8バイトのラインごとにエラーチェックを行う。 ラインが既に障害発生元情報をもっているなら、その
ままMSU1へ送る。 チェック回路がラインに訂正不可能なエラーを検出し
たなら、障害発生元情報IEを付加してMSU1へ送
る。 MSU1はGBS2gから渡されたブロックを障害発生
元情報とともに格納する。
ブロックがない場合に、データが更新されていて必要度
の低いブロックをより大容量側の記憶装置へ移す動作で
ある。 1.LBS2lからGBS2gへのムーブアウト LBS2lのムーブアウトしようとするデータを含む6
4バイトブロックをアクセスする。 8バイトのラインごとにエラーチェックを行う。 ラインが既に障害発生元情報をもっているなら、その
ままGBS2gへ送る。 チェック回路がラインに訂正不可能なエラーを検出し
たなら、BSでムーブアウト時に発生したエラーIEと
いう障害発生元情報を付加してGBS2gへ送る。 GBS2gはLBS2lから渡されたブロックを障害発生
元情報とともに格納する。 2.GBS2gからMSU1へのムーブアウト GBS2gのムーブアウトしようとするデータを含む6
4バイトブロックをアクセスする。 8バイトのラインごとにエラーチェックを行う。 ラインが既に障害発生元情報をもっているなら、その
ままMSU1へ送る。 チェック回路がラインに訂正不可能なエラーを検出し
たなら、障害発生元情報IEを付加してMSU1へ送
る。 MSU1はGBS2gから渡されたブロックを障害発生
元情報とともに格納する。
【0019】C.LBS2lからCPU7へのデータ転送 LBS2lは要求されたデータを含むラインを読みだ
す。 読みだしたデータに障害発生元情報がなければ通常の
動作を行う。すなわち、エラーがなければそのまま、1
ビットエラーは訂正してCPU7に渡す。 読みだしたデータが訂正不可能な2ビットエラーまた
は、障害発生元情報IEがあれば、処理を中止する。 読みだしたデータに障害発生元情報SEがあれば、そ
のときの処理を打ち切る。異常はMSU1そのもの(そ
のブロック)にあるので、場合により、MSU1のその
ブロックを使用禁止にする。あるいはMSUユニットの
交換を促すメッセージをコンソールに表示する。
す。 読みだしたデータに障害発生元情報がなければ通常の
動作を行う。すなわち、エラーがなければそのまま、1
ビットエラーは訂正してCPU7に渡す。 読みだしたデータが訂正不可能な2ビットエラーまた
は、障害発生元情報IEがあれば、処理を中止する。 読みだしたデータに障害発生元情報SEがあれば、そ
のときの処理を打ち切る。異常はMSU1そのもの(そ
のブロック)にあるので、場合により、MSU1のその
ブロックを使用禁止にする。あるいはMSUユニットの
交換を促すメッセージをコンソールに表示する。
【0020】なお、本実施例では障害発生元情報をLB
S2l,GBS2gで区別していないが、これを区別するよ
うにすれば、より細かく対応できる。また、障害のログ
情報としても有効である。
S2l,GBS2gで区別していないが、これを区別するよ
うにすれば、より細かく対応できる。また、障害のログ
情報としても有効である。
【0021】特殊データパターンとして障害発生元情報
を記憶させる実施例。 前記の実施例では、各データのライン毎にSEおよびI
Eという障害発生元情報を記憶するビットを付加してい
る。付加したビットに障害発生元情報を記憶させる代わ
りに、ラインのデータをある特殊なパターンに変えて障
害発生元情報を表す実施例を以下に示す。 1.データのエラー検出、訂正に1ビットエラー訂正2
ビットエラー検出(SEC−DED)のECCコードを
使用する。1つのラインのデータパターンは前述の64
ビットデータ+8ビットECCコードである。ECCコ
ードを利用するにはH−matrixとよばれる行列が必要で
ある。64ビットデータ+8ビットECCコードに対し
ては、図4(1)に示す形であり、具体的な例として1
例を(2)に示す。行列の要素の数値は4ビットずつま
とめて16進数で表してある。 2.いま、ある1ラインのデータのコードをベクトルで
表し、 X=(X0,X1,・・・,X63,XP0, ・・,XP7) (XP0, ・・,XP7) はパリティビット とする。これをECCコード化するには、ECCチェッ
クビット Xecc を求め、パリティビットと入れ替えれば
よい。線形符号を対象としているので、 Xecc の転置行
列を Xecctとして H・ Xecct = 0 すなわち、 h0,0・X0 +h0,1・X1+ ... +h0,63・X63 +h0,64・ Xe0 +... +h0,71・ Xe7=0 h1,0・X0 +h1,1・X1+ ... +h1,63・X63 +h1,64・ Xe0 +... +h1,71・ Xe7=0 ・・・ ・・・ ・・ h7,0・X0 +h7,1・X1+ ... +h7,63・X63 +h7,64・ Xe0 +... +h7,71・ Xe7=0 を満たす Xecc =(Xe0,Xe1,.... ,Xe7) を求めればよ
い。ただし、・は mod2の積、+ は mod2の和である。
それがチェックビットE=(e0 ,e1,....,e7)であり、図
4(3)に示す式で得られる。
を記憶させる実施例。 前記の実施例では、各データのライン毎にSEおよびI
Eという障害発生元情報を記憶するビットを付加してい
る。付加したビットに障害発生元情報を記憶させる代わ
りに、ラインのデータをある特殊なパターンに変えて障
害発生元情報を表す実施例を以下に示す。 1.データのエラー検出、訂正に1ビットエラー訂正2
ビットエラー検出(SEC−DED)のECCコードを
使用する。1つのラインのデータパターンは前述の64
ビットデータ+8ビットECCコードである。ECCコ
ードを利用するにはH−matrixとよばれる行列が必要で
ある。64ビットデータ+8ビットECCコードに対し
ては、図4(1)に示す形であり、具体的な例として1
例を(2)に示す。行列の要素の数値は4ビットずつま
とめて16進数で表してある。 2.いま、ある1ラインのデータのコードをベクトルで
表し、 X=(X0,X1,・・・,X63,XP0, ・・,XP7) (XP0, ・・,XP7) はパリティビット とする。これをECCコード化するには、ECCチェッ
クビット Xecc を求め、パリティビットと入れ替えれば
よい。線形符号を対象としているので、 Xecc の転置行
列を Xecctとして H・ Xecct = 0 すなわち、 h0,0・X0 +h0,1・X1+ ... +h0,63・X63 +h0,64・ Xe0 +... +h0,71・ Xe7=0 h1,0・X0 +h1,1・X1+ ... +h1,63・X63 +h1,64・ Xe0 +... +h1,71・ Xe7=0 ・・・ ・・・ ・・ h7,0・X0 +h7,1・X1+ ... +h7,63・X63 +h7,64・ Xe0 +... +h7,71・ Xe7=0 を満たす Xecc =(Xe0,Xe1,.... ,Xe7) を求めればよ
い。ただし、・は mod2の積、+ は mod2の和である。
それがチェックビットE=(e0 ,e1,....,e7)であり、図
4(3)に示す式で得られる。
【0022】さらに、e0,e1,e6,e7 については奇数パリ
ティ、e2,e3,e4,e5 については偶数パリティによるチェ
ックを同時に使用している。図4(4)にECCコード
化したデータの例を示す。 3.あるECCコード化されているデータが、 Y=(Y0,Y1,・・・,Y63,Ye0, ・・,Ye7) であるとき、エラーのチェックは図5(1)に示す式で
得られるシンドローム、S=(S0,S1,...,S7) =H・Y
t により行なう。ただし、Yt はYの転置行列である。 4.シンドロームによるエラーの判定を次に示す。
ティ、e2,e3,e4,e5 については偶数パリティによるチェ
ックを同時に使用している。図4(4)にECCコード
化したデータの例を示す。 3.あるECCコード化されているデータが、 Y=(Y0,Y1,・・・,Y63,Ye0, ・・,Ye7) であるとき、エラーのチェックは図5(1)に示す式で
得られるシンドローム、S=(S0,S1,...,S7) =H・Y
t により行なう。ただし、Yt はYの転置行列である。 4.シンドロームによるエラーの判定を次に示す。
【0023】エラーなし シンドロームはオール0、すなわち、S=0である。 1ビットエラー シンドロームはHのどれかの列に等しくなる。等しい列
の列位置が、エラーの発生しているデータのビット位置
を示す。そのビットを反転させることによりエラーを訂
正できる。列数は72であるので、このときのシンドロ
ームパターンの総数は72通りある。
の列位置が、エラーの発生しているデータのビット位置
を示す。そのビットを反転させることによりエラーを訂
正できる。列数は72であるので、このときのシンドロ
ームパターンの総数は72通りある。
【0024】2ビットエラー シンドロームは、Hのどれか2つの列の mod2の和に等
しくなる。従って、エラーが発生していることのみが判
定でき、訂正は不可能である。列数は72であるので、
このときのシンドロームパターンの総数は72C2 =12
7通りある。従って、シンドロームビットの8ビットの
パターン総数は256通りであるのに対して、使用する
シンドロームパターンは計200であるから、余ったパ
ターンが56パターン存在する。 5.余ったパターンを障害発生元情報として使用するこ
とができる。その例を図5(2)に示す。SE,IEと
して2つのパターンを使用する。このようなパターンは
オール0の64ビットデータにパリティビットあるいは
ECCチェックビットを付加したものとは異なる。従っ
て、意図的にこのような特殊パターンを作らなければ発
生することはない。さらに、この特殊パターンに1ビッ
トエラーが生じた場合には、訂正不可能な2ビットエラ
ーとして判定されるため、誤って訂正されてしまうこと
はない。
しくなる。従って、エラーが発生していることのみが判
定でき、訂正は不可能である。列数は72であるので、
このときのシンドロームパターンの総数は72C2 =12
7通りある。従って、シンドロームビットの8ビットの
パターン総数は256通りであるのに対して、使用する
シンドロームパターンは計200であるから、余ったパ
ターンが56パターン存在する。 5.余ったパターンを障害発生元情報として使用するこ
とができる。その例を図5(2)に示す。SE,IEと
して2つのパターンを使用する。このようなパターンは
オール0の64ビットデータにパリティビットあるいは
ECCチェックビットを付加したものとは異なる。従っ
て、意図的にこのような特殊パターンを作らなければ発
生することはない。さらに、この特殊パターンに1ビッ
トエラーが生じた場合には、訂正不可能な2ビットエラ
ーとして判定されるため、誤って訂正されてしまうこと
はない。
【0025】このような特殊パターンを障害発生元情報
を表すために使用することにより、特別なメモリビット
を付加する必要がない。
を表すために使用することにより、特別なメモリビット
を付加する必要がない。
【0026】
【発明の効果】以上説明したように、本発明によればバ
ッファ記憶装置のエラーがある場合にも、プロセサが使
うデータがエラーである時のみ再実行や処理の中止を行
なえばよい。従って、使ってもいないデータのエラーの
ために無駄な時間を使うことがなく、効率を高く保つこ
とができる。また、第2の発明によれば、記憶装置の容
量を増加させることなく実現することができる。
ッファ記憶装置のエラーがある場合にも、プロセサが使
うデータがエラーである時のみ再実行や処理の中止を行
なえばよい。従って、使ってもいないデータのエラーの
ために無駄な時間を使うことがなく、効率を高く保つこ
とができる。また、第2の発明によれば、記憶装置の容
量を増加させることなく実現することができる。
【図1】 原理構成図
【図2】 実施例の構成図
【図3】 データフォーマット
【図4】 ECCコード化の説明図
【図5】 シンドロームの説明図
【図6】 従来の階層記憶装置の構成図
1 主記憶装置(MSU) 2 バッファ記憶装置(BS) 2l LBS 2g GBS 3 障害通知手段 3l 3g 3m 順にLBS,GBS,MSU の障害通知手段 4 障害記憶手段 4l 4g 4m 順にLBS,GBS,MSU の障害記憶手段 5 チェック回路 5l 5g 5m 順にLBS,GBS,MSU のチェック回路 6 コード生成器 7 プロセサ(CPU)
Claims (2)
- 【請求項1】 主記憶装置(1)と単一または複数階層
のバッファ記憶装置(2)とを有するスワップ方式の階
層記憶装置において、 各記憶装置(1,2)は、障害通知手段(3)と、障害
記憶手段(4)とを備え、 障害通知手段(3)は、データの読み出し時にチェック
回路(5)がデータをチェックした結果訂正不可能なと
きに、データの要求元へ、どの記憶階層で発生したかを
示す情報を障害発生元情報としてデータと共に送り、 障害記憶手段(4)は、データ書込み時に、他の記憶装
置(1,2)から通知された障害発生元情報をデータの
チェック単位毎に対応して記憶し、データが障害発生元
情報を伴っていなければ、障害発生元情報を消去するよ
うに構成したことを特徴とする階層記憶装置。 - 【請求項2】 各記憶装置(1,2)が誤り検出・訂正
符号を用いる場合、検出した訂正不可能なエラーに対応
する障害発生元情報を、全ての誤りのないデータに対応
する符号と予測される誤りが発生したときのデータに対
応する符号とから分離可能な符号として生成するコード
生成器(6)を備え、障害通知手段(3)と障害記憶手
段(4)とに代えることを特徴とする請求項1に記載の
階層記憶装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5273918A JPH07129466A (ja) | 1993-11-02 | 1993-11-02 | 階層記憶装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5273918A JPH07129466A (ja) | 1993-11-02 | 1993-11-02 | 階層記憶装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07129466A true JPH07129466A (ja) | 1995-05-19 |
Family
ID=17534388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5273918A Withdrawn JPH07129466A (ja) | 1993-11-02 | 1993-11-02 | 階層記憶装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07129466A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100778603B1 (ko) * | 2006-05-18 | 2007-11-22 | 후지쯔 가부시끼가이샤 | 계층형 스토리지 장치 및 그 기록 매체 관리 방법 |
JP2012178121A (ja) * | 2011-02-28 | 2012-09-13 | Nec Computertechno Ltd | 情報処理装置及びエラー訂正支援方法 |
-
1993
- 1993-11-02 JP JP5273918A patent/JPH07129466A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100778603B1 (ko) * | 2006-05-18 | 2007-11-22 | 후지쯔 가부시끼가이샤 | 계층형 스토리지 장치 및 그 기록 매체 관리 방법 |
JP2012178121A (ja) * | 2011-02-28 | 2012-09-13 | Nec Computertechno Ltd | 情報処理装置及びエラー訂正支援方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9252814B2 (en) | Combined group ECC protection and subgroup parity protection | |
US4852100A (en) | Error detection and correction scheme for main storage unit | |
US4780809A (en) | Apparatus for storing data with deferred uncorrectable error reporting | |
US7069494B2 (en) | Application of special ECC matrix for solving stuck bit faults in an ECC protected mechanism | |
US4296494A (en) | Error correction and detection systems | |
US5663969A (en) | Parity-based error detection in a memory controller | |
JP2738687B2 (ja) | 誤り訂正システムおよび方法 | |
US7761779B2 (en) | Access control apparatus, access control system, processor, access control method, memory access control apparatus, memory access control system, and memory access control method | |
US7272773B2 (en) | Cache directory array recovery mechanism to support special ECC stuck bit matrix | |
US6751769B2 (en) | (146,130) error correction code utilizing address information | |
JPS6047625B2 (ja) | エラ−訂正システム | |
KR20090028507A (ko) | 비휘발성 메모리 에러 보정 시스템 및 방법 | |
JP2001249854A (ja) | メモリ設計のための共有式誤り訂正 | |
CN101546291A (zh) | 提高内存数据健壮性的存取方法和装置 | |
JP2004514184A (ja) | デジタル・データにおけるソフト・エラーを訂正するための方法および装置 | |
US7689891B2 (en) | Method and system for handling stuck bits in cache directories | |
US6631489B2 (en) | Cache memory and system with partial error detection and correction of MESI protocol | |
JPH07129466A (ja) | 階層記憶装置 | |
KR860002027B1 (ko) | 키이 기억 에러 처리 시스템 | |
JPH0316655B2 (ja) | ||
JPS6041374B2 (ja) | 1ビツト誤り訂正・2ビツト誤り検出方式 | |
JP2891897B2 (ja) | ストアインキャッシュの障害処理システム | |
KR100204576B1 (ko) | 공통 블럭 레지스터 내장 메모리의 구조와 이를 이용한 그림자 페이지 회복 구조 및 회복 기법 | |
JP4007281B2 (ja) | ディレクトリ情報記憶システムおよびメモリコントローラ | |
JPH02297235A (ja) | メモリデータ保護回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20010130 |