JPH045213B2 - - Google Patents
Info
- Publication number
- JPH045213B2 JPH045213B2 JP57110404A JP11040482A JPH045213B2 JP H045213 B2 JPH045213 B2 JP H045213B2 JP 57110404 A JP57110404 A JP 57110404A JP 11040482 A JP11040482 A JP 11040482A JP H045213 B2 JPH045213 B2 JP H045213B2
- Authority
- JP
- Japan
- Prior art keywords
- word
- memory
- ecc
- bit
- ecc circuit
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2215—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test error correction or detection circuits
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明はメモリのエラーチエツク&コレクシヨ
ン(誤り検出、誤り訂正)機能いわゆるECC機
能を有するECC回路の診断を行なうECC回路診
断方式に関する。
ン(誤り検出、誤り訂正)機能いわゆるECC機
能を有するECC回路の診断を行なうECC回路診
断方式に関する。
一般にこの種のECC回路はECC機能のほかに
ECCのためのチエツクビツトCを発生する機能
を有している。従来、このチエツクビツトCは第
1図に示されるようにメモリデータの1語(全
語)に対して付加されていた。この例では64ビツ
ト構成で、チエツクビツトCは8ビツト構成であ
る。メモリリードアクセスの場合、メモリコント
ローラ10の制御によつてメモリアレイ11から
読み出された1語64ビツトのメモリデータと8ビ
ツトのチエツクビツトCはメモリコントローラ1
0に設けられているECC回路12に入力される。
ECC回路12はこれら入力情報に基づいて周知
のECC動作を行ない、64ビツトの正しいメモリ
データを出力する。メモリコントローラ10は1
語のメモリリードアクセスであればECC回路1
2から出力される64ビツトのメモリデータをその
ままシステムバス13に送出し、1/2語(半語)、
1/4語または1/8語(1バイト)のメモリリードア
クセスであれば該当するデータビツト位置のメモ
リデータをシステムバス13のあらかじめ定めら
れているゾーン位置に送出する。システムバス1
3上のデータはCPU14、または入出力機器
(以下、I/Oと称する)15,16などに転送
される。
ECCのためのチエツクビツトCを発生する機能
を有している。従来、このチエツクビツトCは第
1図に示されるようにメモリデータの1語(全
語)に対して付加されていた。この例では64ビツ
ト構成で、チエツクビツトCは8ビツト構成であ
る。メモリリードアクセスの場合、メモリコント
ローラ10の制御によつてメモリアレイ11から
読み出された1語64ビツトのメモリデータと8ビ
ツトのチエツクビツトCはメモリコントローラ1
0に設けられているECC回路12に入力される。
ECC回路12はこれら入力情報に基づいて周知
のECC動作を行ない、64ビツトの正しいメモリ
データを出力する。メモリコントローラ10は1
語のメモリリードアクセスであればECC回路1
2から出力される64ビツトのメモリデータをその
ままシステムバス13に送出し、1/2語(半語)、
1/4語または1/8語(1バイト)のメモリリードア
クセスであれば該当するデータビツト位置のメモ
リデータをシステムバス13のあらかじめ定めら
れているゾーン位置に送出する。システムバス1
3上のデータはCPU14、または入出力機器
(以下、I/Oと称する)15,16などに転送
される。
一方、メモリライトアクセスの場合、例えば1
語(64ビツト)書き込みであれば、ECC回路1
2はシステムバス13を介して転送される1語の
書き込みデータに対してチエツクビツトCを生成
する。この書き込みデータおよびチエツクビツト
Cはメモリコントローラ10の制御によりメモリ
アレイ11に書き込まれる。これに対し、例えば
1/2語(32ビツト)書き込みであれば、メモリコ
ントローラ10の制御によりメモリアレイ11の
対応するアドレス位置から1語のメモリデータと
チエツクビツトCが読み出される。次に続み出し
データである1語のメモリデータの1/2語とシス
テムバス13を介して転送された1/2語の書き込
みデータとが合成され、1語の書き込みデータと
してECC回路12に与えられる。ECC回路12
はこの合成後の1語の書き込みデータに対してチ
エツクビツトCを生成する。以後の動作は1語書
き込みの場合と同じである。
語(64ビツト)書き込みであれば、ECC回路1
2はシステムバス13を介して転送される1語の
書き込みデータに対してチエツクビツトCを生成
する。この書き込みデータおよびチエツクビツト
Cはメモリコントローラ10の制御によりメモリ
アレイ11に書き込まれる。これに対し、例えば
1/2語(32ビツト)書き込みであれば、メモリコ
ントローラ10の制御によりメモリアレイ11の
対応するアドレス位置から1語のメモリデータと
チエツクビツトCが読み出される。次に続み出し
データである1語のメモリデータの1/2語とシス
テムバス13を介して転送された1/2語の書き込
みデータとが合成され、1語の書き込みデータと
してECC回路12に与えられる。ECC回路12
はこの合成後の1語の書き込みデータに対してチ
エツクビツトCを生成する。以後の動作は1語書
き込みの場合と同じである。
このようにECC回路を備えたシステムでは、
メモリリードアクセス時に、ECC回路のECC機
能により正しいメモリデータを転送することがで
きるようになつている。しかし従来のシステムで
は、ECC回路自身に故障が発生した場合、読み
出しデータのエラーが検出されなくなるため、誤
りデータがCPUなどに転送される欠点があつた。
また、メモリライトアクセス時において、1語書
き込みでない場合には、1語の書き込みデータと
するために、いつたんメモリアレイをメモリリー
ドアクセスして1語のメモリデータを続み出され
なければならず、アクセス時間が長くなる欠点も
あつた。
メモリリードアクセス時に、ECC回路のECC機
能により正しいメモリデータを転送することがで
きるようになつている。しかし従来のシステムで
は、ECC回路自身に故障が発生した場合、読み
出しデータのエラーが検出されなくなるため、誤
りデータがCPUなどに転送される欠点があつた。
また、メモリライトアクセス時において、1語書
き込みでない場合には、1語の書き込みデータと
するために、いつたんメモリアレイをメモリリー
ドアクセスして1語のメモリデータを続み出され
なければならず、アクセス時間が長くなる欠点も
あつた。
本発明は上記事情に鑑みてなされたものでその
目的は、1/m語のメモリアクセス時にECC回
路の診断が行なえ、もつてエラー分解能が同上す
るECC回路診断方式を提供することにある。
目的は、1/m語のメモリアクセス時にECC回
路の診断が行なえ、もつてエラー分解能が同上す
るECC回路診断方式を提供することにある。
本発明の他の目的は、1/m語のメモリライト
アクセスに際し、当該アクセスに先立つて1語の
メモリリードアクセスを行なうことが不要とな
り、性能向上が図れるECC回路診断方式を提供
することにある。
アクセスに際し、当該アクセスに先立つて1語の
メモリリードアクセスを行なうことが不要とな
り、性能向上が図れるECC回路診断方式を提供
することにある。
本発明では、従来のように1語のメモリデータ
に対してチエツクビツトを付加するのではなく、
1/n(nは2以上の整数)語のメモリデータ単
位でチエツクビツトを付加するようにしている。
そこで本発明では、1/n語のメモリデータ単位
でチエツクビツトが付加されたn個のメモリアレ
イと、これら各メモリアレイに対応するn台の
ECC回路とを設けるようにしている。このよう
な構成とした場合、1/m(mはm≧nを満足す
る整数)語のメモリアクセスであれば、n台の
ECC回路のうちECC動作が必要となる回路は1
台だけであるが、本発明では残りのECC回路に
も共通の1/n語に対するECC動作を行なわせ
るようにしている。上記メモリアクセスがメモリ
リードであれば、n台のECC回路はn個のメモ
リアレイの一つから続み出された共通の1/n語
に対して診断、修正(誤り検出、誤り訂正)を行
なう。もしn台のECC回路が全て正常であれば、
各ECC回路の誤り検出結果は同一となるなずで
ある。したがつて比較部より各ECC回路の動作
結果、例えば誤り検出結果を比較することにより
ECC回路の診断が行なえる。
に対してチエツクビツトを付加するのではなく、
1/n(nは2以上の整数)語のメモリデータ単
位でチエツクビツトを付加するようにしている。
そこで本発明では、1/n語のメモリデータ単位
でチエツクビツトが付加されたn個のメモリアレ
イと、これら各メモリアレイに対応するn台の
ECC回路とを設けるようにしている。このよう
な構成とした場合、1/m(mはm≧nを満足す
る整数)語のメモリアクセスであれば、n台の
ECC回路のうちECC動作が必要となる回路は1
台だけであるが、本発明では残りのECC回路に
も共通の1/n語に対するECC動作を行なわせ
るようにしている。上記メモリアクセスがメモリ
リードであれば、n台のECC回路はn個のメモ
リアレイの一つから続み出された共通の1/n語
に対して診断、修正(誤り検出、誤り訂正)を行
なう。もしn台のECC回路が全て正常であれば、
各ECC回路の誤り検出結果は同一となるなずで
ある。したがつて比較部より各ECC回路の動作
結果、例えば誤り検出結果を比較することにより
ECC回路の診断が行なえる。
以下、本発明の一実施例を図面を参照して説明
する。なお、第1図と同一部分には同一符号を付
して詳細な説明を省略する。第2図のシステムに
おいて20はメモリ装置であり、1語が例えば64
ビツトのメモリデータが扱われる。21,22は
メモリ装置20を構成するメモリアレイである。
メモリアレイ21は1語64ビツトのメモリデータ
のうち上位の半語(1/2語)すなわちビツト0〜
ビツト31の32ビツトを記憶するのに用いられ、メ
モリアレイ22は同じく下位の半語(1/2語)す
なわちビツト32〜ビツト63を記憶するのに用いら
れる。すなわち本実施例はn=2の場合である。
メモリアレイ21,22には半語のメモリデータ
のほかに、当該半語のメモリデータのチエツクビ
ツトC(7ビツト)が付加されて記憶される。
する。なお、第1図と同一部分には同一符号を付
して詳細な説明を省略する。第2図のシステムに
おいて20はメモリ装置であり、1語が例えば64
ビツトのメモリデータが扱われる。21,22は
メモリ装置20を構成するメモリアレイである。
メモリアレイ21は1語64ビツトのメモリデータ
のうち上位の半語(1/2語)すなわちビツト0〜
ビツト31の32ビツトを記憶するのに用いられ、メ
モリアレイ22は同じく下位の半語(1/2語)す
なわちビツト32〜ビツト63を記憶するのに用いら
れる。すなわち本実施例はn=2の場合である。
メモリアレイ21,22には半語のメモリデータ
のほかに、当該半語のメモリデータのチエツクビ
ツトC(7ビツト)が付加されて記憶される。
30はメモリコントローラである。メモリコン
トローラ30はメモリ装置20とシステムバス1
3との間に設けられ、メモリ装置20に対するメ
モリアクセス制御を行なう。31,32はメモリ
コントローラ30に内蔵されているECC回路で
ある。ECC31,32はメモリアレイ21,2
2、システムバス13のデータゾーンのビツト0
〜ビツト31、ビツト32〜ビツト63にそれぞれ対応
して設けられている。ECC回路31,32はチ
エツクビツトCの生成、誤り検出、誤り訂正の
ECC動作機能を有している。ECC回路31,3
2の動作制御はメモリコントローラ30によつて
行なわれる。33は比較部(以下、COMPと称
する)である。COMP33はECC回路31,3
2の各ECC動作結果(生成されたチエツクビツ
トC、誤り検出結果である1ビツトエラーの有無
やマルチビツトエラーの有無を示す信号)を比較
し、一致/不一致を検出する。
トローラ30はメモリ装置20とシステムバス1
3との間に設けられ、メモリ装置20に対するメ
モリアクセス制御を行なう。31,32はメモリ
コントローラ30に内蔵されているECC回路で
ある。ECC31,32はメモリアレイ21,2
2、システムバス13のデータゾーンのビツト0
〜ビツト31、ビツト32〜ビツト63にそれぞれ対応
して設けられている。ECC回路31,32はチ
エツクビツトCの生成、誤り検出、誤り訂正の
ECC動作機能を有している。ECC回路31,3
2の動作制御はメモリコントローラ30によつて
行なわれる。33は比較部(以下、COMPと称
する)である。COMP33はECC回路31,3
2の各ECC動作結果(生成されたチエツクビツ
トC、誤り検出結果である1ビツトエラーの有無
やマルチビツトエラーの有無を示す信号)を比較
し、一致/不一致を検出する。
次に本発明の一実施例の動作を説明する。メモ
リコントローラ30はCPU14或いはI/O1
5,16からのメモリアクセス要求に応じてメモ
リアクセス制御を行なう。今、この要求が1語の
メモリデータを読み出す1語(全語)読み出し要
求であるものとする。しかしてメモリコントロー
ラ30の制御により、メモリアレイ21から対応
する1語(64ビツト)の上位の半語(ビツト0〜
ビツト31の32ビツト)および当該半語に付加され
たチエツクビツトC(7ビツト)が読み出される。
同様にメモリアレイ22から上記対応する1語の
下位の半語(ビツト32〜ビツト63の32ビツト)お
よび当該半語に付加されたチエツクビツトC(7
ビツト)が読み出される。メモリ装置20(のメ
モリアレイ21)から読み出された上位の半語およ
びそのチエツクビツトC(39ビツト)はECC回路
31に入力され、同じくメモリ装置20(のメモ
リアレイ22)から読み出された下位の半語およ
びそのチエツクビツトC(39ビツト)はECC回路
32に入力される。ECC回路31,32はこれ
ら入力された半語およびそのチエツクビツトCに
基づいて誤り検出を行ない、必要があれば誤り訂
正を行ない、それぞれ正しい上位の半語(32ビツ
ト)、下位の半語(32ビツト)を出力する。メモ
リコントローラ30はECC回路31から出力さ
れる上位の半語をシステムバス13のデータゾー
ンのビツト0〜ビツト31のゾーンに送出する一
方、ECC回路32から出力される下位の半語を
システムバス13のデータゾーンのビツト32〜ビ
ツト63のゾーンに送出する。したがつて1語読み
出しの場合の動作は、1語を処理対象とする1台
のECCを備えた従来システムとほぼ等しい。1
語読み出しの場合、ECC回路31,32の処理
対象となる半語ぽ異なるため、COMP33の比
較結果は無視されるようになつている。また、
COMP33の動作を禁止してもよい。
リコントローラ30はCPU14或いはI/O1
5,16からのメモリアクセス要求に応じてメモ
リアクセス制御を行なう。今、この要求が1語の
メモリデータを読み出す1語(全語)読み出し要
求であるものとする。しかしてメモリコントロー
ラ30の制御により、メモリアレイ21から対応
する1語(64ビツト)の上位の半語(ビツト0〜
ビツト31の32ビツト)および当該半語に付加され
たチエツクビツトC(7ビツト)が読み出される。
同様にメモリアレイ22から上記対応する1語の
下位の半語(ビツト32〜ビツト63の32ビツト)お
よび当該半語に付加されたチエツクビツトC(7
ビツト)が読み出される。メモリ装置20(のメ
モリアレイ21)から読み出された上位の半語およ
びそのチエツクビツトC(39ビツト)はECC回路
31に入力され、同じくメモリ装置20(のメモ
リアレイ22)から読み出された下位の半語およ
びそのチエツクビツトC(39ビツト)はECC回路
32に入力される。ECC回路31,32はこれ
ら入力された半語およびそのチエツクビツトCに
基づいて誤り検出を行ない、必要があれば誤り訂
正を行ない、それぞれ正しい上位の半語(32ビツ
ト)、下位の半語(32ビツト)を出力する。メモ
リコントローラ30はECC回路31から出力さ
れる上位の半語をシステムバス13のデータゾー
ンのビツト0〜ビツト31のゾーンに送出する一
方、ECC回路32から出力される下位の半語を
システムバス13のデータゾーンのビツト32〜ビ
ツト63のゾーンに送出する。したがつて1語読み
出しの場合の動作は、1語を処理対象とする1台
のECCを備えた従来システムとほぼ等しい。1
語読み出しの場合、ECC回路31,32の処理
対象となる半語ぽ異なるため、COMP33の比
較結果は無視されるようになつている。また、
COMP33の動作を禁止してもよい。
次に1語のメモリデータのうちの上位の半語の
読み出しの場合の動作を説明する。メモリコント
ローラ30は半語読み出しの場合にも(従来例の
メモリコントローラ10と同様に)1語読み出し
を行なう。これにより、メモリコントローラ30
には、メモリアレイ21から読み出された所望の
上位半語およびそのチエツクビツトCと、メモリ
アレイ22から読み出された不所望の下位半語お
よびそのチエツクビツトCとが入力される。
読み出しの場合の動作を説明する。メモリコント
ローラ30は半語読み出しの場合にも(従来例の
メモリコントローラ10と同様に)1語読み出し
を行なう。これにより、メモリコントローラ30
には、メモリアレイ21から読み出された所望の
上位半語およびそのチエツクビツトCと、メモリ
アレイ22から読み出された不所望の下位半語お
よびそのチエツクビツトCとが入力される。
ところで、1語が64ビツトのメモリデータが扱
われるシステムでは、一般に1語(全語)アクセ
スのほかに1/2(半語)アクセス、1/4アクセス、
1/8アクセスができるように構成されている。そ
して、1/2語、1/4語、または1/8語のメモリデー
タがシステムバスの64ビツトのデータゾーンにお
いて往来するゾーン位置はそれぞれ一義的に決ま
つているのが一般的である。このため、1台の
ECC回路を有する従来のメモリコントローラは、
1語(全語)読み出しでない場合でも1語読み出
しを行ない、この1語に対してECC回路を動作
させ、ECC回路から出力される1語から所望の
ビツト位置の1/2語 1/4語、または1/8語を選択
してシステムバスの所定のゾーン位置に送出する
いわゆるゾーンコントロール機能を有している。
第3図はこのゾーンコントロールについて上位半
語の読み出しを例にとつて示したものである。す
なわち、メモリ装置より読み出された1語64ビツ
トの(誤り訂正後の)メモリデータから第3図の
斜線部aで示される所望の上位半語(ビツト0〜
ビツト31の32ビツト)がメモリコントローラによ
つて選択される。そして、この選択された上位半
語はシステムバスの64ビツトのデータゾーンの下
位32ビツトのゾーンすなわち第3図の斜線部bで
示されるビツト32〜ビツト63のゾーンに送出され
る。したがつて、システムバス13のデータゾー
ンのビツト0〜ビツト31に対応してECC回路3
1が設けられ、同じくビツト32〜ビツト63に対応
してECC回路32が設けられている本実施例で
は、半語読み出しの場合、ECC回路32を動作
させ、ECC回路32の出力(半語のメモリデー
タ)をシステムバス13のデータゾーンのビツト
31〜ビツト63の位置に送出する必要があることは
容易に理解されよう。このとき、ECC回路31
はアイドル状態にあつても何ら問題ないが、本実
施例は上位の半語読み出しにおいてアイドル状態
にあつてもよいECC回路31をも動作させ、
ECC回路31,32の自己診断を行なおうとす
るものである。
われるシステムでは、一般に1語(全語)アクセ
スのほかに1/2(半語)アクセス、1/4アクセス、
1/8アクセスができるように構成されている。そ
して、1/2語、1/4語、または1/8語のメモリデー
タがシステムバスの64ビツトのデータゾーンにお
いて往来するゾーン位置はそれぞれ一義的に決ま
つているのが一般的である。このため、1台の
ECC回路を有する従来のメモリコントローラは、
1語(全語)読み出しでない場合でも1語読み出
しを行ない、この1語に対してECC回路を動作
させ、ECC回路から出力される1語から所望の
ビツト位置の1/2語 1/4語、または1/8語を選択
してシステムバスの所定のゾーン位置に送出する
いわゆるゾーンコントロール機能を有している。
第3図はこのゾーンコントロールについて上位半
語の読み出しを例にとつて示したものである。す
なわち、メモリ装置より読み出された1語64ビツ
トの(誤り訂正後の)メモリデータから第3図の
斜線部aで示される所望の上位半語(ビツト0〜
ビツト31の32ビツト)がメモリコントローラによ
つて選択される。そして、この選択された上位半
語はシステムバスの64ビツトのデータゾーンの下
位32ビツトのゾーンすなわち第3図の斜線部bで
示されるビツト32〜ビツト63のゾーンに送出され
る。したがつて、システムバス13のデータゾー
ンのビツト0〜ビツト31に対応してECC回路3
1が設けられ、同じくビツト32〜ビツト63に対応
してECC回路32が設けられている本実施例で
は、半語読み出しの場合、ECC回路32を動作
させ、ECC回路32の出力(半語のメモリデー
タ)をシステムバス13のデータゾーンのビツト
31〜ビツト63の位置に送出する必要があることは
容易に理解されよう。このとき、ECC回路31
はアイドル状態にあつても何ら問題ないが、本実
施例は上位の半語読み出しにおいてアイドル状態
にあつてもよいECC回路31をも動作させ、
ECC回路31,32の自己診断を行なおうとす
るものである。
メモリコントローラ30に入力された(メモリ
アレイ21の出力である)所望の上位半語および
そのチエツクビツトCは、メモリコントローラ3
0の制御によりECC回路31,32の両回路に
入力される。これに対し、(メモリアレイ22の
出力である)不所望の下位半語およびそのチエツ
クビツトCはECC回路31は勿論ECC回路32
への入力も禁止される。これは、上位の半語また
は下位の半語のいずれか一方を選択してECC回
路32に導くセレクタを設けることによつて容易
に実現できる。なお、第2図では、セレクタは省
略されている。メモリコントローラ30はECC
回路32は勿論、本来アドレス状態にあつてもよ
いECC回路31をも動作させる。これにより
ECC回路31,32は同一データである上記上
位の半語およびチエツクビツトCに基づいて誤り
検出を行なう。ECC回路31,32は誤り検出
の結果として1ビツトエラーの有無、マルチビツ
トエラーの有無を示す信号を出力する。COMP
33はこれらECC回路31,32から出力され
る信号を比較し、一致/不一致を検出する。この
場合、ECC回路31,32は上述のように同一
データに基づいて誤り検出を行なつており、した
がつてECC回路31,32が共に正常であれば、
COMP33は一致検出を行なうはずである。す
なわち、COMP33によつて一致検出がなされ
れば、ECC回路31,32は共に正常であり、
COMP33によつて不一致検出がなされれば
ECC回路31,32のいずれかが故障であると
診断できる。ECC回路31,32は誤り検出の
結果、誤り訂正が可能であれば誤りビツトを訂正
し、正しい半語の読み出しデータとして出力す
る。メモリコントローラ30はECC回路32か
ら出力される半語の読み出しデータをシステムバ
ス13の64ビツトのデータゾーンのビツト32〜ビ
ツト63のゾーン位置に送出する。これに対し、
ECC回路31から出力される半語の読み出しデ
ータのシステムバス13におけるビツト0〜ビツ
ト31のゾーン位置への送出は行なわれない。これ
は、半語読み出しのために従来のメモリコントロ
ーラが有していた機能、すなわちメモリ装置から
全語(1語)を読み出し、この全語(実際には
ECC回路から出力される全語)からの所定のポ
ジシヨン(上位の半語読み出しであればビツト0
〜ビツト31、下位の半語読み出しであればビツト
32〜ビツト63)の半語を選択してシステムバスに
おけるビツト32〜ビツト63のゾーン位置に送出す
るゾーンコントロール機能を利用して簡単に実現
できる。
アレイ21の出力である)所望の上位半語および
そのチエツクビツトCは、メモリコントローラ3
0の制御によりECC回路31,32の両回路に
入力される。これに対し、(メモリアレイ22の
出力である)不所望の下位半語およびそのチエツ
クビツトCはECC回路31は勿論ECC回路32
への入力も禁止される。これは、上位の半語また
は下位の半語のいずれか一方を選択してECC回
路32に導くセレクタを設けることによつて容易
に実現できる。なお、第2図では、セレクタは省
略されている。メモリコントローラ30はECC
回路32は勿論、本来アドレス状態にあつてもよ
いECC回路31をも動作させる。これにより
ECC回路31,32は同一データである上記上
位の半語およびチエツクビツトCに基づいて誤り
検出を行なう。ECC回路31,32は誤り検出
の結果として1ビツトエラーの有無、マルチビツ
トエラーの有無を示す信号を出力する。COMP
33はこれらECC回路31,32から出力され
る信号を比較し、一致/不一致を検出する。この
場合、ECC回路31,32は上述のように同一
データに基づいて誤り検出を行なつており、した
がつてECC回路31,32が共に正常であれば、
COMP33は一致検出を行なうはずである。す
なわち、COMP33によつて一致検出がなされ
れば、ECC回路31,32は共に正常であり、
COMP33によつて不一致検出がなされれば
ECC回路31,32のいずれかが故障であると
診断できる。ECC回路31,32は誤り検出の
結果、誤り訂正が可能であれば誤りビツトを訂正
し、正しい半語の読み出しデータとして出力す
る。メモリコントローラ30はECC回路32か
ら出力される半語の読み出しデータをシステムバ
ス13の64ビツトのデータゾーンのビツト32〜ビ
ツト63のゾーン位置に送出する。これに対し、
ECC回路31から出力される半語の読み出しデ
ータのシステムバス13におけるビツト0〜ビツ
ト31のゾーン位置への送出は行なわれない。これ
は、半語読み出しのために従来のメモリコントロ
ーラが有していた機能、すなわちメモリ装置から
全語(1語)を読み出し、この全語(実際には
ECC回路から出力される全語)からの所定のポ
ジシヨン(上位の半語読み出しであればビツト0
〜ビツト31、下位の半語読み出しであればビツト
32〜ビツト63)の半語を選択してシステムバスに
おけるビツト32〜ビツト63のゾーン位置に送出す
るゾーンコントロール機能を利用して簡単に実現
できる。
ところで、ECC回路31,32の診断は上位
の半語読み出しの場合に限らず、メモリアレイ2
1内のメモリデータだけが読み出しの対象となつ
ていれば1/4語読み出しや1/8語読み出しの場合で
も行なえることは明らかである。この場合、メモ
リコントローラ30はECC回路32から出力さ
れる上位の半語の中から所定のポジシヨンの1/4
語または1/8語を選択し、1/4語読み出しであれば
システムバス13のデータゾーンのビツト48〜ビ
ツト63、1/8語読み出しであれば同じくビツト56
〜ビツト63のゾーン位置に送出することになる。
の半語読み出しの場合に限らず、メモリアレイ2
1内のメモリデータだけが読み出しの対象となつ
ていれば1/4語読み出しや1/8語読み出しの場合で
も行なえることは明らかである。この場合、メモ
リコントローラ30はECC回路32から出力さ
れる上位の半語の中から所定のポジシヨンの1/4
語または1/8語を選択し、1/4語読み出しであれば
システムバス13のデータゾーンのビツト48〜ビ
ツト63、1/8語読み出しであれば同じくビツト56
〜ビツト63のゾーン位置に送出することになる。
次に、メモリアクセス要求が上位半語の書き込
みである場合の動作を説明する。この場合、上位
半語が格納されるメモリアレイ21に対応した
ECC回路31を動作させてチエツクビツトCを
生成させ、このチエツクビツトCが付加された半
語をメモリアレイ21に導く必要があることは容
易に理解されよう。このとき、ECC回路32は
アイドル状態にあつても何ら問題ないが、本実施
例は上位の半語書き込みにおいて本来アイドル状
態にあつてもよいECC回路32をも動作させ、
ECC回路31,32の自己診断を行なおうとす
るものである。
みである場合の動作を説明する。この場合、上位
半語が格納されるメモリアレイ21に対応した
ECC回路31を動作させてチエツクビツトCを
生成させ、このチエツクビツトCが付加された半
語をメモリアレイ21に導く必要があることは容
易に理解されよう。このとき、ECC回路32は
アイドル状態にあつても何ら問題ないが、本実施
例は上位の半語書き込みにおいて本来アイドル状
態にあつてもよいECC回路32をも動作させ、
ECC回路31,32の自己診断を行なおうとす
るものである。
システムバス13のデータゾーンのビツト32〜
ビツト63のゾーン位置を介してメモリコントロー
ラ30に転送される書き込みデータとしての上位
半語は、ECC回路31,32の両回路に入力さ
れる。メモリコントローラ30はECC回路31
は勿論、本来アイドル状態にあつてもよいECC
回路32をも動作させる。これによりECC回路
31,32は同一データである上記半語に対する
チエツクビツトCを生成する。COMP33はこ
れらECC回路31,32で生成されるチエツク
ビツトCを比較し、一致/不一致を検出する。明
らかなように一致していればECC回路31,3
2は正常であり、不一致であればいずれかが故障
と診断される。ECC回路31,32はチエツク
ビツトCを生成すると、当該チエツクビツトCを
上記半語に付加して出力する。メモリコントロー
ラ30はECC回路31から出力されるチエツク
ビツトCが付加された半語をメモリアレイ21の
指定アドレス位置に書き込む。これに対し、
ECC回路32の出力を書き込む動作は行なわれ
ない。この説明から明らかなように本実施例によ
れば、上位半語の書き込み時にECC回路31,
32の診断が行なえ、しかも従来例のように、い
つたん全語(1語)読み出しを行ない、書き込む
べき半語と合成して全語の書き込みを行なう複雑
な手順を不要とすることができ、1回のメモリア
クセスで済む。なお、下位半語の書き込みに対し
ても1回のメモリアクセスで済むことは明らかで
ある。
ビツト63のゾーン位置を介してメモリコントロー
ラ30に転送される書き込みデータとしての上位
半語は、ECC回路31,32の両回路に入力さ
れる。メモリコントローラ30はECC回路31
は勿論、本来アイドル状態にあつてもよいECC
回路32をも動作させる。これによりECC回路
31,32は同一データである上記半語に対する
チエツクビツトCを生成する。COMP33はこ
れらECC回路31,32で生成されるチエツク
ビツトCを比較し、一致/不一致を検出する。明
らかなように一致していればECC回路31,3
2は正常であり、不一致であればいずれかが故障
と診断される。ECC回路31,32はチエツク
ビツトCを生成すると、当該チエツクビツトCを
上記半語に付加して出力する。メモリコントロー
ラ30はECC回路31から出力されるチエツク
ビツトCが付加された半語をメモリアレイ21の
指定アドレス位置に書き込む。これに対し、
ECC回路32の出力を書き込む動作は行なわれ
ない。この説明から明らかなように本実施例によ
れば、上位半語の書き込み時にECC回路31,
32の診断が行なえ、しかも従来例のように、い
つたん全語(1語)読み出しを行ない、書き込む
べき半語と合成して全語の書き込みを行なう複雑
な手順を不要とすることができ、1回のメモリア
クセスで済む。なお、下位半語の書き込みに対し
ても1回のメモリアクセスで済むことは明らかで
ある。
ところで前記実施例では、データ読み出し時の
ECC回路31,32の診断は、メモリアレイ2
1内のメモリデータだけが読み出しの対象となつ
ている場合に行なわれるものとして説明したが、
メモリアレイ22内のメモリデータだけが読み出
しの対象となつている場合にも応用することがで
きる。ただし、このためには、メモリアレイ21
から読み出される上位半語とそのチエツクビツ
ト、またはメモリアレイ22から読み出される下
位半語とそのチエツクビツトのいずれか一方を選
択してECC回路31に導く手段を設け、メモリ
アレイ22内のメモリデータだけが読み出しの対
象となつている場合に後者を選択するようにする
必要がある。
ECC回路31,32の診断は、メモリアレイ2
1内のメモリデータだけが読み出しの対象となつ
ている場合に行なわれるものとして説明したが、
メモリアレイ22内のメモリデータだけが読み出
しの対象となつている場合にも応用することがで
きる。ただし、このためには、メモリアレイ21
から読み出される上位半語とそのチエツクビツ
ト、またはメモリアレイ22から読み出される下
位半語とそのチエツクビツトのいずれか一方を選
択してECC回路31に導く手段を設け、メモリ
アレイ22内のメモリデータだけが読み出しの対
象となつている場合に後者を選択するようにする
必要がある。
また、前記実施例ではメモリ装置が半語のメモ
リデータを格納する2個のメモリアレイから構成
されている場合について説明したが、例えば1/4
語のメモリデータを格納する4個のメモリアレイ
や1/8個のメモリデータを格納する8個のメモリ
アレイで構成されていてもよい。この場合には、
ECC回路を4台、8台とする必要がある。なお、
本発明では書き込み時のECC回路診断機能は必
ずしも必要ではない。
リデータを格納する2個のメモリアレイから構成
されている場合について説明したが、例えば1/4
語のメモリデータを格納する4個のメモリアレイ
や1/8個のメモリデータを格納する8個のメモリ
アレイで構成されていてもよい。この場合には、
ECC回路を4台、8台とする必要がある。なお、
本発明では書き込み時のECC回路診断機能は必
ずしも必要ではない。
以上詳述したように本発明のECC回路診断方
式によれば、1/m語のメモリアクセス時に
ECC回路の診断が行なえるので、エラー分解能
が向上する。
式によれば、1/m語のメモリアクセス時に
ECC回路の診断が行なえるので、エラー分解能
が向上する。
また、本発明によれば、1/m語のメモリライ
トアクセスに際し、当該アクセスに先立つて1語
のメモリリードアクセスを行なう必要がなくなる
ので性能が向上する。
トアクセスに際し、当該アクセスに先立つて1語
のメモリリードアクセスを行なう必要がなくなる
ので性能が向上する。
第1図は従来例を示すブロツク図、第2図は本
発明の一実施例を示すブロツク図、第3図は上位
の半語に対するゾーンコントロールを説明するた
めの図である。 10,30……メモリコントローラ、11,2
1,22……メモリアレイ、12,31,32…
…ECC回路、13……システムバス、33……
比較部(COMP)。
発明の一実施例を示すブロツク図、第3図は上位
の半語に対するゾーンコントロールを説明するた
めの図である。 10,30……メモリコントローラ、11,2
1,22……メモリアレイ、12,31,32…
…ECC回路、13……システムバス、33……
比較部(COMP)。
Claims (1)
- 【特許請求の範囲】 1 1/n(nは2以上の整数)語単位でチエツ
クビツトが付加されたn個のメモリアレイからな
るメモリ装置と、 このn個のメモリアレイに対応して設けられ、
1/n語に対するECC動作を行なうための同数
のECC回路と、 1/m(ただしmはm≧nを満足する整数)語
のメモリアクセス時には、対象となる1台の
ECC回路以外のECC回路にも共通の1/n語に
対するECC動作を行なわしめる手段と、 この共通の1/n語に対する上記各ECC回路
のECC動作結果を比較する比較部と、 を具備し、1/m語のメモリアクセス時に上記比
較部の比較結果に基づいて上記ECC回路の診断
を行なうことを特徴とするECC回路診断方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP57110404A JPS59743A (ja) | 1982-06-26 | 1982-06-26 | Ecc回路診断方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP57110404A JPS59743A (ja) | 1982-06-26 | 1982-06-26 | Ecc回路診断方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS59743A JPS59743A (ja) | 1984-01-05 |
| JPH045213B2 true JPH045213B2 (ja) | 1992-01-30 |
Family
ID=14534931
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP57110404A Granted JPS59743A (ja) | 1982-06-26 | 1982-06-26 | Ecc回路診断方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS59743A (ja) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE3682758D1 (de) * | 1985-07-01 | 1992-01-16 | Unisys Corp | Fehlererkennung und -korrektur mit integriertem schaltkreis und automatischer selbstkontrolleund verfahren dazu. |
| JPS6296744U (ja) * | 1985-12-05 | 1987-06-20 | ||
| US4827478A (en) * | 1987-11-30 | 1989-05-02 | Tandem Computers Incorporated | Data integrity checking with fault tolerance |
| FR2642883B1 (ja) * | 1989-02-09 | 1995-06-02 | Asahi Optical Co Ltd |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5298434A (en) * | 1976-02-14 | 1977-08-18 | Hitachi Ltd | Correction for memory error |
-
1982
- 1982-06-26 JP JP57110404A patent/JPS59743A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS59743A (ja) | 1984-01-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5959914A (en) | Memory controller with error correction memory test application | |
| US6018817A (en) | Error correcting code retrofit method and apparatus for multiple memory configurations | |
| US5663969A (en) | Parity-based error detection in a memory controller | |
| US5142540A (en) | Multipart memory apparatus with error detection | |
| US5966389A (en) | Flexible ECC/parity bit architecture | |
| JPH0719232B2 (ja) | メモリアレイのアドレスと中味とをチェックする装置及び方法 | |
| US4942575A (en) | Error connection device for parity protected memory systems | |
| US5357521A (en) | Address sensitive memory testing | |
| US4928281A (en) | Semiconductor memory | |
| EP0383899B1 (en) | Failure detection for partial write operations for memories | |
| US3992702A (en) | Code conversion arrangements for addresses to faulty memory locations | |
| US4761783A (en) | Apparatus and method for reporting occurrences of errors in signals stored in a data processor | |
| US5838892A (en) | Method and apparatus for calculating an error detecting code block in a disk drive controller | |
| JPH045213B2 (ja) | ||
| WO1989009471A2 (en) | Memory selftest method and apparatus | |
| JP2513615B2 (ja) | Ecc回路付記憶装置 | |
| JP2806856B2 (ja) | 誤り検出訂正回路の診断装置 | |
| JPH0756640B2 (ja) | 記憶装置 | |
| JP3150571B2 (ja) | 二重系切替方式 | |
| JP3182834B2 (ja) | メモリ装置 | |
| SU783795A2 (ru) | Процессор | |
| SU1249592A1 (ru) | Запоминающее устройство с самоконтролем | |
| SU951406A1 (ru) | Запоминающее устройство с самоконтролем | |
| JPH0752398B2 (ja) | チェック回路の診断装置 | |
| SU970480A1 (ru) | Запоминающее устройство с самоконтролем |