JP2000242515A - Ecc機能検証回路及びecc機能検証方法 - Google Patents

Ecc機能検証回路及びecc機能検証方法

Info

Publication number
JP2000242515A
JP2000242515A JP11042203A JP4220399A JP2000242515A JP 2000242515 A JP2000242515 A JP 2000242515A JP 11042203 A JP11042203 A JP 11042203A JP 4220399 A JP4220399 A JP 4220399A JP 2000242515 A JP2000242515 A JP 2000242515A
Authority
JP
Japan
Prior art keywords
bit
data
verification
circuit
ecc
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
JP11042203A
Other languages
English (en)
Inventor
Takashi Kurokawa
隆 黒川
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.)
NEC Engineering Ltd
Original Assignee
NEC Engineering 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 NEC Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP11042203A priority Critical patent/JP2000242515A/ja
Publication of JP2000242515A publication Critical patent/JP2000242515A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】 【課題】 データの1ビット誤りの検出・訂正を行うE
CC回路の機能の検証を小規模な装置構成で高速かつ正
確に行う。 【解決手段】 ECC機能検証データ生成回路5は、擬
似的に“1”故障および“0”故障の1ビット誤りを発
生させた検証データをクロック毎に自動生成する。通常
データ/検証データ・セレクタ6は、検証モード時に
は、メモリ書き込みデータに代わって検証データを選択
し、また、通常チェックビット/検証チェックビット・
セレクタ7は、検証モード時には、メモリ書き込みデー
タに対するチェックビットに代わって検証データに対す
検証チェックビットを選択する。ECC機能検証制御回
路4は、1ビット誤りを発生させたビット位置と、EC
C回路10が二つのセレクタ6,7の出力から1ビット
誤りを検出したビット位置とを比較し、また、1ビット
誤りを発生させる前のデータ値とECC回路10が1ビ
ット誤りを訂正した後のデータ値を比較することによ
り、ECC回路10の機能を検証する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ECC機能の検証
に関し、特にコンピュータ装置、その他の電子装置のE
CC機能検証回路及びECC機能検証方法に関する。
【0002】
【従来の技術】エラー検出・訂正回路(Error Check and
Correct回路。以下ECC回路と略す。)は、周知のよ
うに、ランダム・アクセス・メモリ(以下RAMと略
す。)やバッファなどの記憶装置からデータを読み出す
際にデータのビット誤りを検出し、また、誤りビットの
訂正を行う回路である。
【0003】図9は、実開平5−83847号に記載さ
れている従来のこの種のECC機能検証回路を備えた記
憶装置の要部を示すブロック図である。
【0004】図9において、メモリ11及びメモリ12
はそれぞれRAMを用いており、メモリ11は書き込み
データを記憶し、メモリ12はチェックビット生成回路
13で生成されたチェックビットを記憶する。
【0005】チェックビット生成回路13は、1ビット
誤り訂正・2ビット誤り検出コード(Single-bit Error
Correct Double-bit Error Detectコード。以下SECDED
コードと略す。)に基づいて、書き込みデータからチェ
ックビットを生成する。
【0006】書き込みデータ反転信号生成回路14は、
検証モードにおいては、データ書き込み時に、書き込み
データの任意の1ビットを反転させるための反転制御信
号を生成し、ビット反転回路15は、書き込みデータ反
転信号生成回路14から出力された反転制御信号によっ
て、指定された書き込みデータビットを反転する。
【0007】1ビットエラー検出回路16は、メモリ1
1から読み出したデータ及びメモリ12から読み出した
チェックビットによって、1ビット誤りの有無を検査す
る。また、1ビットエラー訂正回路17は、データに1
ビット誤りが検出された場合に、1ビットエラー検出回
路16が示す誤りビットの訂正を行う。
【0008】なお、図9において、点線で囲んである1
ビットエラー検出回路16及び1ビットエラー訂正回路
17がECC回路18を構成する。
【0009】次に、この従来のECC機能検証回路の動
作について図10のフローチャートを参照しながら説明
する。この回路では、ECC回路の機能を検証する方法
として、メモリ11に書き込むべきデータを1ビットの
み反転させてメモリ11に書き込み、そのデータを読み
出した際に反転したビットを1ビット誤りとして検出
し、更に、そのビットを訂正する動作を確認することに
より、ECC回路18の機能を検証している。
【0010】いま、メモリ11に書き込むデータの幅を
64ビット、書き込みデータから生成するチェックビッ
トの幅を8ビットとする。データWD00〜WD63を
メモリ11に書き込む(図10のステップS31)と
き、チェックビット生成回路13は、SECDEDコードに基
づいて、64ビットの書き込みデータから8ビットのチ
ェックビットWC00〜WC07を生成し(ステップS
32)、これをメモリ12に書き込む(図10のステッ
プS34)。
【0011】書き込みデータ反転信号生成回路14は、
ビット反転回路15に、反転させるビット位置を示す反
転制御信号を出力する。書き込みデータビットWD63
を反転する場合、書き込みデータ反転信号生成回路14
は、ビット反転回路15内の排他的論理和回路XD63
に"1"を出力し、その他の排他的論理和回路には"0"を
出力する。ビット反転回路15内の排他的論理和回路X
D63は"1"が入力されたことにより、書き込みデータ
ビットWD63の値を反転して(ステップS33)メモ
リ11に出力する(ステップS34)。
【0012】次に、メモリに書き込んだデータWD00
〜WD62およびWD63’と、チェックビットWC0
0〜WC07を読み出し、読み出しデータRD00〜R
D63及び読み出しチェックビットRC00〜RC07
を1ビットエラー検出回路16に入力する。
【0013】1ビットエラー検出回路16は、読み出し
データRD00〜RD63と読み出しチェックビットR
C00〜RC07とから、書き込み時に反転したデータ
ビットRD63を1ビット誤りとして検出し、1ビット
エラー訂正回路17に1ビット誤りの発生しているビッ
ト位置を通知する(ステップS35)。
【0014】1ビットエラー訂正回路17は、1ビット
エラー検出回路16が示す1ビット誤りが発生している
ビットを再度反転させて誤り訂正を行い(ステップS3
6)、読み出しデータMD00〜MD63とする(ステ
ップS37)。
【0015】そして、書き込みデータWD00〜WD6
3と、1ビットエラー検出回路16及び1ビットエラー
訂正回路17により1ビット誤り検出・訂正された読み
出しデータMD00〜MD63とが一致していること、
および書き込みデータ反転信号発生回路14とビット反
転回路15とによって反転したビットと、1ビットエラ
ー検出回路16が検出した1ビット誤りの発生したビッ
トが一致していることを確認することにより、ECC回
路18の機能が正常に動作していることを検証する。
【0016】次に、従来の他の例として、特開昭61−
226853号に記載されているECC機能検証回路を
備えた記憶装置について説明する。図11は、その要部
を示すブロック図である。
【0017】図11において、メモリ21およびメモリ
22はそれぞれRAMを用いており、メモリ21はデー
タを記憶し、メモリ22はチェックビット生成回路23
で生成されたチェックビットを記憶する。
【0018】読み出しデータ反転信号生成回路23は、
検証モードにおいては、データ読み出し時に、読み出し
データの任意の1ビットを反転させる制御信号を生成す
る。ビット反転回路24は、読み出しデータ反転信号生
成回路23から出力された反転制御信号によって、指定
された読み出しデータの1ビットを反転する。
【0019】1ビットエラー検出回路25は、メモリ2
1から読み出したデータ及びメモリ22から読み出した
チェックビットによって1ビット誤りの有無を検査す
る。また、1ビットエラー訂正回路26は、データに1
ビット誤りが検出された場合、1ビットエラー検出回路
25が示す誤りビットの訂正を行う。図11において、
点線で囲んである1ビットエラー検出回路25および1
ビットエラー訂正回路26が本発明の機能検証の対象と
なるECC回路27を構成する。
【0020】次に、この従来のECC機能検証回路の動
作について図12のフローチャートを参照しながら説明
する。この回路ではECC回路の機能を検証する方法と
して、予めメモリ21に記憶してあるデータを読み出し
た際に1ビットのみ反転させ、その反転したビットを1
ビット誤りとして検出し、更にそのビットを訂正する動
作を確認することでECC回路27の機能を検証してい
る。
【0021】いま、メモリ21,22を読み書きするデ
ータの幅を64ビット、チェックビットの幅を8ビット
とする。まず、メモリ21にD00〜D63、また、メ
モリ22にデータD00〜D63から生成されたチェッ
クビットを書き込む(図12のステップS41,S4
2,S43)。
【0022】読み出しデータ反転信号生成回路23は、
ビット反転回路24に反転させるビット位置を示す反転
制御信号を出力する。読み出しデータビットRD63を
反転する場合、読み出しデータ反転信号生成回路23は
ビット反転回路24内の排他的論理和回路XD63に"
1"を出力し、その他の排他的論理和回路には"0"を出
力する。ビット反転回路24内の排他的論理和回路XD
63は"1"が入力されたことにより、読み出しデータビ
ットRD63の値を反転して、読み出しデータRD00
〜RD62、RD63’とチェックビットRC00〜R
C07とを1ビットエラー検出回路25に出力する(ス
テップS44)。
【0023】1ビットエラー検出回路25は、読み出し
データRD00〜RD62,RD63’と読み出しチェ
ックビットRC00〜RC07とから、反転したデータ
ビットRD63’を1ビット誤りとして検出し、1ビッ
トエラー訂正回路26に1ビット誤りの発生しているビ
ット位置を通知する(ステップS45)。
【0024】1ビットエラー訂正回路26は、1ビット
エラー検出回25が示す1ビット誤りが発生しているビ
ットを再度反転させて誤り訂正を行い(ステップS4
6)、読み出しデータMD00〜MD63とする(ステ
ップS47)。
【0025】そして、読み出しデータ反転信号発生回路
23及びビット反転回路24によって反転したビット
と、1ビットエラー検出回路25が検出した1ビット誤
りの発生したビットとが一致していることを確認するこ
とにより、ECC回路27の機能が正常に動作している
ことを検証する。
【0026】図10及び図12のフローチャートに示す
ように、上述の2つの従来技術で共通なのは、図中に2
重枠で示すように、ビット反転回路でデータを1ビット
反転させて擬似的にビット誤りを発生させ、反転させる
前のデータで生成したチェックビットを用いて誤りビッ
トを検出・訂正し、この一連の動作を確認することによ
ってECC機能の検証を行っていることである。
【0027】なお、図13には、上述の従来技術におけ
る検証モードにおけるタイムチャートを示す。
【0028】
【発明が解決しようとする課題】しかしながら、この従
来のECC検証回路ないしは検出方法の第1の問題点
は、ECC機能を検証するために必要な装置構成が大規
模になり、また、ECC回路を有するLSI単体のみで
機能検証を行うことが出来ない、ということである。
その理由は、ECC機能を検証するために、必要なデー
タをメモリに記憶させ、そのデータを読み出すことでE
CC機能を検証しているので、ECC回路の他にメモリ
を実装しないと検証が出来ず、その結果、検証装置構成
も大規模になるからである。
【0029】また、第2の問題点は、機能検証に要する
時間が長い、ということである。その理由は、メモリに
データを書き込み、再度そのデータを読み出す作業をし
ているので、一連の検証を行うのに時間がかかるからで
ある。
【0030】さらに、第3の問題点は、検証するビット
を毎回設定する必要がある、ということである。その理
由は、仮にデータ幅が64ビットだった場合、全ビット
を検証するためには、図13からも明らかなように、反
転させて擬似的に1ビット誤りを発生させるビットの設
定を64回行う必要がある。また、回路が"1"に故障し
た場合("1"故障)と"0"に故障した場合("0"故障)を検
証する場合には、ビット設定が128回になり、更に反
転させる前のデータの値と反転させた後のデータの値を
考慮する必要があるからである。
【0031】そこで、本発明の目的は、装置規模の小さ
いECC機能検証回路およびECC機能検証方法を提供
することにある。
【0032】また、本発明の他の目的は、高速なECC
機能検証回路及びECC機能検出方法を提供することに
ある。
【0033】さらに、本発明の他の目的は、誤りビット
の設定を必要としないECC機能検証回路及びECC機
能検証方法を提供することにある。
【0034】
【課題を解決するための手段】第1の本発明のECC機
能検証回路は、擬似的に1ビット誤りを発生させた検証
データを自動生成するECC機能検証データ生成回路
と、前記1ビット誤りを発生させたビット位置と、前記
検証データに対してECC回路が1ビット誤りを検出し
たビット位置とを比較し、また前記1ビット誤りを発生
させる前のデータ値とECC回路が1ビット誤りを訂正
した後のデータ値とを比較することにより、ECC回路
の機能を検証するECC機能検証制御回路とを設けたこ
とを特徴とする。
【0035】また、第2の本発明のECC機能検証回路
は、擬似的に“1”故障および“0”故障の1ビット誤
りを発生させた検証データをクロック毎に自動生成する
ECC機能検証データ生成回路と、検証モードにおいて
は、メモリ書き込みデータに代わって前記検証データを
選択する通常データ/検証データ・セレクタと、検証モ
ー時おいてには、前記メモリ書き込みデータに対するチ
ェックビットに代わって前記検証データに対す検証チェ
ックビットを選択する通常チェックビット/検証チェッ
クビット・セレクタと、前記1ビット誤りを発生させた
ビット位置と、ECC回路が前記二つのセレクタの出力
から1ビット誤りを検出したビット位置とを比較し、ま
た、1ビット誤りを発生させる前のデータ値とECC回
路が1ビット誤りを訂正した後のデータ値を比較するこ
とにより、ECC回路の機能を検証するECC機能検証
制御回路とを設けたことを特徴とする。
【0036】さらに、本発明のECC機能検証回路の好
ましい実施の形態は、前記検証データは、メモリ読み書
きデータビット幅分のオール“0”(“1”)の内の1
ビットのみを“1”(“0”)とし、この“1”
(“0”)をクロック毎に順次シフトすることによって
生成することを特徴とする。
【0037】また、本発明のECC機能検証方法は、擬
似的に“1”故障及び“0”故障の1ビット誤りを発生
させた検証データをクロック毎に自動生成する手順と、
前記検証データと該検証データに対するチェックビット
とから前記検証データの1ビット誤りを検出する手順
と、該1ビット誤りを訂正する手順と、前記1ビット誤
りを発生させたビット位置と、前記検出された1ビット
誤りのビット位置とを比較し、また、1ビット誤りを発
生させる前のデータ値と前記1ビット誤りを訂正した後
のデータ値を比較することにより、ECC回路の機能を
検証する手順とを、メモリ読み書きデータビット幅分に
ついてパイプライン処理することを特徴とする。
【0038】本発明では、ECC機能を検証するために
必要なデータをメモリに記憶させる代わりに、検証デー
タを自動生成する回路を挿入し、SECDEDコードの特性を
考慮・適用してECC機能検証用のデータを高速、かつ
正確に自動生成し、そのデータをメモリに記憶せずに直
接ECC回路に入力することとしている。
【発明の実施の形態】
【0039】次に、本発明の実施の形態について図面を
参照して説明する。
【0040】図1に、本発明のECC機能検証回路を有
する記憶装置の要部ブロック図を示す。本実施の形態で
は、 ECC機能を検証するためのデータを従来のよう
にメモリに記憶させる代わりに、検証データを自動生成
するECC機能検証データ生成回路5及び検証を制御す
るECC機能検証制御回路4を用いる。
【0041】すなわち、SECDEDコードに基づいた正常デ
ータに対して、1ビットだけ反転させたデータをECC
機能検証データ生成回路5が自動生成する。その誤りビ
ットを1ビットエラー検出回路8で検出し、更に1ビッ
トエラー訂正回路9で正常なデータに訂正されているか
を確認することで、ECC回路の機能検証を行う。
【0042】本記憶装置は、図1に示すとおり、メモリ
(データ記憶部)1と、メモリ(チェックビット記憶
部)2と、チェックビット生成回路3と、ECC機能検
証制御回路4と、ECC機能検証データ生成回路5と、
通常データ/検証データ・セレクタ6と、通常チェック
ビット/検証チェックビット・セレクタ7と、1ビット
エラー検出回路8と、1ビットエラー訂正回路9とで構
成される。
【0043】メモリ1及びメモリ2はそれぞれRAMを
用いており、メモリ1は書き込みデータを記憶し、メモ
リ2はチェックビット生成回路3で生成されたチェック
ビットを記憶する。チェックビット生成回路3は、SECD
EDコードに基づいて、書き込みデータからチェックビッ
トを生成する。メモリ1,メモリ2およびチェックビッ
ト生成回路3は通常のメモリアクセス時に用いられるも
ので、本発明が適用されるECC機能の検証時において
は使用されない。
【0044】ECC機能検証制御回路4は、通常モード
と検証モードの切り替え、検証結果のチェック及び検証
結果通知を行う。
【0045】ECC機能検証データ生成回路5は、EC
C回路の機能検証に用いるデータを自動生成する。
【0046】通常データ/検証データ・セレクタ6は通
常アクセス時と検証モード時のデータのセレクト、通常
チェックビット/検証チェックビット・セレクタ7は通
常アクセス時と検証モード時のチェックビットのセレク
トを行う。
【0047】1ビットエラー検出回路8はデータの1ビ
ット誤りの有無を検査し、1ビットエラー訂正回路9は
データに1ビット誤りが検出された場合に、1ビットエ
ラー検出回路8が示す誤りビットの訂正を行う。
【0048】ECC機能検証制御回路4,ECC機能検
証データ生成回路5,通常データ/検証データ・セレク
タ6および通常チェックビット/検証チェックビット・
セレクタ7が本発明のECC機能検証回路を構成し、点
線で囲んである1ビットエラー検出回路8及び1ビット
エラー訂正回路9が機能検証の対象となるECC回路1
0を構成する。
【0049】本実施例の動作説明をする前に、本発明で
使用する一般的なSECDEDコードとチェックビットの特性
について説明する。
【0050】図7にSECDEDコード表、図8にシンドロー
ムと誤りビットの対応表を示す。本チェックビット生成
回路3は、図7に示すように、64ビットのデータから
8ビットのチェックビットを生成するものとする。
【0051】チェックビットは、SECDEDコード表の書き
込みデータ部の水平方向の要素のうち、"1"の立ってい
るビットを排他的論理和(Exclusive-OR)すれば生成する
ことができる。一例として、チェックビットC00を生
成する回路を図2に示す。図2を参照すると、書き込み
データの"1"が立っている相隣なるビット同士を次々に
排他的論理和していき、最終的にチェックビットC00
を得ていることがわかる。チェックビットC01〜C0
7の生成方法も同様である。
【0052】チェックビットの特性で重要なのは、書き
込みデータの水平方向の要素の"1"の数は、全てのチェ
ックビットについて26個と偶数であることである。つ
まり、データビットD00〜D63の値が全部"0"、ま
たは全部"1"である場合には、チェックビットC00〜
C07の値は全部"0"になる。この特性を利用して、E
CC機能検証データ生成回路5を作成する。
【0053】次に、1ビット誤りを検出する際に用いら
れるシンドロームについて説明する。 シンドロームは
SECDEDコード表の読み出しデータ部とチェックビット部
の水平方向の要素のうち、"1"の立っているビットを排
他的論理和(Exclusive-OR)すれば生成することができ
る。一例としてシンドロームS00を生成する回路を図
3に示す。図3を参照すると、図2と類似し、図2の第
1段排他的論理輪回路群における最下端の排他的論理和
回路の入力として、データビットD58およびD60に
チェックビットC00を追加している点のみが異なって
いる。シンドロームS01〜S07の生成方法も同様で
ある。この生成されたシンドロームS00〜07の値に
よって、図8に示すように、1ビット誤りが発生してい
るビットを特定することができる。
【0054】図8は、データビットD00〜D63およ
びチェックビットC00〜C07のうちのいずれかの1
ビットでエエラーが発生している場合のシンドロームS
00〜S07の値を16進表示した値SYNを示す。例
えば、読み出しデータのデータビットD00にビット1
ビット誤りが発生していた場合、シンドロームS00〜
S07の値、すなわちSYNはC8[H]となる。
【0055】次に、図4(ステップS1〜S11)およ
び図5(ステップS12〜S)に示すフローチャートを
用いて、本実施例の動作説明を行う。
【0056】最初に、書き込みデータWD00〜WD6
3をメモリ1に書き込まみ、また、メモリ1から読み出
しデータMD00〜MD63を読み出す通常動作におけ
る誤り検出と誤り訂正について説明する。
【0057】書き込みデータWD00〜WD63は、メ
モリ1に書きこまれる。これとともに、チェックビット
生成回路3は、書き込みデータWD00〜WD63から
図7に示したSECDEDコード表により書き込みチェ
ックビットWC00〜WC07を生成し、メモリ2に書
き込む。
【0058】メモリ1の読出し時には、通常データ/検
証データ・セレクタ6は、メモリ1からの読み出しデー
タD00〜D63を選択し、また、通常チェックビット
/検証チェックビット・セレクタ7は、メモリ2からの
読み出しチェックビットC00〜C07を選択する。
【0059】1ビットエラー検出回路8は、通常データ
/検証データ・セレクタ6が選択した読み出しデータR
D00〜RD63と通常チェックビット/検証チェック
ビット・セレクタ7が選択した読み出しチェックビット
RC00〜RC07とから、図8に示したシンドローム
と誤りビットの対応表により、シンドロームSYNを生
成して、読み出しデータRD00〜RD63に1ビット
誤り、または2ビット誤りがないか否かを検査する。
【0060】その結果、1ビット誤りを検出すると、そ
のビット位置と読み出しデータRD00〜RD63とを
1ビットエラー訂正回路9に出力する。1ビットエラー
訂正回路9は、読み出しデータRD00〜RD63の内
の1ビット誤りビットを反転することによって訂正し、
訂正した読み出しデータMD00〜MD63を出力す
る。
【0061】さて、ECC回路10の検証を行うには、
まず、ECC機能検証制御回路4を検証モードに設定す
る(ステップS1)。すると、ECC機能検証制御回路
4はECC機能検証データ生成回路5に検証開始通知を
するとともに、通常データ/検証データ・セレクタ6お
よび通常チェックビット/検証チェックビット・セレク
タ7に検証モード信号を出力する(ステップS2)。
【0062】通常データ/検証データ・セレクタ6は、
セレクタを検証データ側にして、ECC機能検証データ
生成回路5から出力される検証データを選択する(ステ
ップS3)。また、通常チェックビット/検証チェック
ビット・セレクタ7はセレクタを検証チェックビット側
にして00[H]の値を選択する(ステップS4)。
【0063】ECC機能検証データ生成回路5は、64
ビットの検証データTD00〜TD63を自動生成し
て、通常データ/検証データ・セレクタ6を介して1ビ
ットエラー検出回路8に出力する。
【0064】ECC機能検証データ生成回路5は、ま
ず、ビット00からビット63までの"1"故障、すなわ
ち"0"が"1"に化けた故障を検査する検証データTD0
0〜TD63として、80000000[H]、4000
0000[H]、20000000[H]・・・というよう
に64ビットのデータにおいて"1"が1ビットずつ右シ
フトした64個の値を生成する。つまり、通常チェック
ビット/検証チェックビット・セレクタ7が選択した検
証チェックビットの値00[H]に対応する正常なデータ
値00000000[H]のビット00を反転した値、ビ
ット01を反転した値、ビット02を反転した値・・・
をクロック毎に順次生成して出力する(ステップS
5)。この場合、検証チェックビットの値00[H]
は、"1"の個数が偶数である正常なデータ値00000
000[H]に対するものとしては正しい。
【0065】64個の検証データTD00〜TD63を
生成した後、ECC機能検証データ生成回路5は待機状
態となり(ステップS6)、ECC機能検証制御回路4
に待機状態通知を行い、再度、ECC機能検証制御回路
4から開始通知がされるまで、データを0000000
0[H]の値にして出力し続ける(ステップS5)。
【0066】1ビットエラー検出回路8は、検証データ
TD00〜TD63と検証チェックビットからシンドロ
ームを生成して、そのシンドロームの値から1ビット誤
りを検出し、ECC機能検証制御回路4及び1ビットエ
ラー訂正回路9に1ビット誤りの発生したビット位置を
出力する(ステップS7)。
【0067】1ビットエラー訂正回路9は、1ビットエ
ラー検出回路8が示した誤りの発生しているビットを反
転してエラー訂正を行い、訂正後のデータをECC機能
検証制御回路4に出力する(ステップS8)。
【0068】ECC機能検証制御回路4は、1ビットエ
ラー検出回路8が出力した誤りビットの位置を確認する
とともに、1ビットエラー訂正回路9が出力した訂正後
のデータの値が00000000[H]になっていること
を確認して、誤りビットの位置が間違っていたり、訂正
後のデータの値が00000000[H]でなかった場合
には、ECC機能不具合として検証結果を通知する(ス
テップS9,S10)。
【0069】以上の動作を検証データ80000000
[H]から00000001[H]までの64個のデータに
対して連続して行う(ステップS11)。
【0070】次に、ビット00からビット63までの"
0"故障、すなわち"1"が"0"に化けた故障を検査す
る。64個の"1"故障のデータを出力し終わり待機状態
となっていたECC機能検証データ生成回路5は、再
度、ECC機能検証制御回路4から開始通知がされると
(図5のステップS12)、ビット00からビット63
までの"0"故障を検査する検証データTD00〜TD6
3として、7FFFFFFF[H]、BFFFFFFF
[H]、DFFFFFFF[H]・・・と、64ビットのデ
ータにおいて"0"が1ビットずつ右シフトした64個の
値を生成する。つまり、通常チェックビット/検証チェ
ックビット・セレクタ7が選択した検証チェックビット
の値00[H]に対応する正常なデータ値FFFFFFF
F[H]のビット00を反転した値、ビット01を反転し
た値、ビット02を反転した値・・・をクロック毎に順
次生成して出力する(ステップS13)。この場合も、
検証チェックビットの値00[H]は"1"の個数が偶数で
ある正常なデータ値FFFFFFFF[H]に対するもの
として正しい。
【0071】64個の検証データTD00〜TD63を
生成した後、ECC機能検証データ生成回路5は終了状
態となり(ステップS14)、ECC機能検証制御回路
4に終了状態通知を行い、データをFFFFFFFF
[H]の値にして出力し続ける(ステップS13)。
【0072】1ビットエラー検出回路8は、検証データ
TD00〜TD63と検証チェックビットからシンドロ
ームを生成して、そのシンドロームの値から1ビット誤
りを検出し、ECC機能検証制御回路4及び1ビットエ
ラー訂正回路9に1ビット誤りの発生したビット位置を
出力する(ステップS15)。
【0073】1ビットエラー訂正回路9は、1ビットエ
ラー検出回路8が示した誤りの発生しているビットを反
転してエラー訂正を行い、訂正後のデータをECC機能
検証制御回路104に出力する(ステップS16)。
【0074】ECC機能検証制御回路4は、1ビットエ
ラー検出回路8が出力した誤りビットの位置を確認する
とともに、1ビットエラー訂正回路9が出力した訂正後
のデータの値がFFFFFFFF[H]になっていること
を確認して、誤りビットの位置が間違っていたり、訂正
後のデータの値がFFFFFFFF[H]でなかった場合
には、検証結果をECC機能不具合として通知する(ス
テップS17,S18)。
【0075】以上の動作を検証データ7FFFFFFF
[H]からFFFFFFFE[H]までの64個のデータに
対して連続して行い、検証が終了した時点でECC機能
検証制御回路4はECC機能検証データ生成回路5に検
証終了通知をして、通常データ/検証データ・セレクタ
6、通常チェックビット/検証チェックビット・セレク
タ7に通常モード信号を出力する(ステップS19)。
【0076】ECC機能検証データ生成回路5は、デー
タを初期値である00000000[H]に戻す(ステッ
プS20)。通常データ/検証データ・セレクタ6はセ
レクタを通常データ側にして、メモリ1からの読み出
し、データを選択し(ステップS21)、通常チェック
ビット/検証チェックビット・セレクタ7はセレクタを
通常チェックビット側にして、メモリ2からの読み出し
チェックビットを選択する(ステップS22)。
【0077】以上でECC機能の検証が終了する。図6
は、以上に説明した本発明の検証モード時における動作
タイムチャートを示す。このタイムチャートより明らか
なように、検証データ生成,1ビット誤り検出,1ビッ
ト誤り訂正,検証結果報告という一連の処理がパイプラ
イン処理される。したがって、1クロックで1つの検証
データによる検証ができることになるのである。
【0078】図6を、従来技術の動作タイムチャートを
示す図13と対比すれば、明らかなように、本発明によ
れば、従来技術に比べて検証時間が短縮されていること
が分かる。
【0079】
【発明の効果】本発明の第1の効果は、ECC機能を検
証する装置構成の規模を小さくすることができ、また、
ECC回路を有するLSI単体のみで機能検証を行うこ
とができる。ことである。その理由は、従来技術でEC
C機能を検証するために必要なデータをメモリに記憶さ
せ、そのデータを読み出すことでECC機能の検証を行
っていたのに対し、本発明ではメモリを使用せずに、検
証データを自動生成する回路を用いているので装置構成
の規模が小さくなり、また、メモリを必要としないので
LSI単体のみで機能検証を行うことができるからであ
る。
【0080】また、第2の効果は、機能検証の時間を短
縮することができることである。その理由は、同じくメ
モリを使用せずにデータを自動生成する回路を用いてい
るので、メモリに書き込む動作と読み込む動作よりも高
速にECC機能の検証をすることができるからである。
【0081】さらに、第3の効果は、検証するビットを
毎回設定する必要が無いことである。その理由は、検証
モードに設定すると、各データビットの"1"故障の検証
データ(64個)と"0"故障の検証データ(64個)を自動
生成するので、検証するビットを考慮して毎回設定する
必要がなくなるからである。
【図面の簡単な説明】
【図1】本発明の記憶装置の一実施例のブロック図
【図2】図1におけるチェックビット生成回路の回路図
【図3】図1におけるシンドローム生成回路の回路図
【図4】図1におけるECC機能検証回路のフローチャ
ート(前半)
【図5】図1におけるECC機能検証回路のフローチャ
ート(後半)
【図6】図1におけるECC機能検証回路のタイムチャ
ート
【図7】SECDEDコード表を示す図
【図8】シンドロームと誤りビット対応表を示す図
【図9】第1の従来のECC機能検出回路のブロック図
【図10】図9におけるECC機能検出回路のフローチ
ャート
【図11】第2の従来のECC機能検出回路のブロック
【図12】図11におけるECC機能検出回路のフロー
チャート
【図13】図9および図11におけるECC機能検出回
路のタイムチャート
【符号の説明】
1,2 メモリ 11,12 メモリ 21,22 メモリ 3,13 チェックビット生成回路 4 ECC機能検証制御回路 5 ECC機能検証データ生成回路 6 通常データ/検証データ・セレクタ 7 通常チェックビット/検証チェック
ビット・セレクタ 8,16,25 1ビットエラー検出回路 9,17,26 1ビットエラー訂正回路 10,18,27 ECC回路 14 書き込みデータ反転信号生成回路 15,24 ビット反転回路 23 読み出しデータ反転信号生成回路

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 擬似的に1ビット誤りを発生させた検証
    データを自動生成するECC機能検証データ生成回路
    と、 前記1ビット誤りを発生させたビット位置と、前記検証
    データに対してECC回路が1ビット誤りを検出したビ
    ット位置とを比較し、また前記1ビット誤りを発生させ
    る前のデータ値とECC回路が1ビット誤りを訂正した
    後のデータ値とを比較することにより、ECC回路の機
    能を検証するECC機能検証制御回路とを設けたことを
    特徴とするECC機能検証回路。
  2. 【請求項2】 擬似的に“1”故障および“0”故障の
    1ビット誤りを発生させた検証データをクロック毎に自
    動生成するECC機能検証データ生成回路と、 検証モードにおいては、メモリ書き込みデータに代わっ
    て前記検証データを選択する通常データ/検証データ・
    セレクタと、 検証モードにおいては、前記メモリ書き込みデータに対
    するチェックビットに代わって前記検証データに対す検
    証チェックビットを選択する通常チェックビット/検証
    チェックビット・セレクタと、 前記1ビット誤りを発生させたビット位置と、ECC回
    路が前記二つのセレクタの出力から1ビット誤りを検出
    したビット位置とを比較し、また、1ビット誤りを発生
    させる前のデータ値とECC回路が1ビット誤りを訂正
    した後のデータ値を比較することにより、ECC回路の
    機能を検証するECC機能検証制御回路とを設けたこと
    を特徴とするECC機能検証回路。
  3. 【請求項3】 前記検証データは、メモリ読み書きデー
    タビット幅分のオール“0”(“1”)の内の1ビット
    のみを“1”(“0”)とし、この“1”(“0”)を
    クロック毎に順次シフトすることによって生成すること
    を特徴とする請求項1又は請求項2記載のECC機能検
    証回路。
  4. 【請求項4】 擬似的に“1”故障及び“0”故障の1
    ビット誤りを発生させた検証データをクロック毎に自動
    生成する手順と、前記検証データと該検証データに対す
    るチェックビットとから前記検証データの1ビット誤り
    を検出する手順と、 該1ビット誤りを訂正する手順と、 前記1ビット誤りを発生させたビット位置と、前記検出
    された1ビット誤りのビット位置とを比較し、また、1
    ビット誤りを発生させる前のデータ値と前記1ビット誤
    りを訂正した後のデータ値を比較することにより、EC
    C回路の機能を検証する手順とを、 メモリ読み書きデータビット幅分についてパイプライン
    処理することを特徴とするECC機能検証方法。
  5. 【請求項5】 請求項1ないし請求項3のいずれかに記
    載のECC機能検証回路または請求項4記載のECC機
    能検証方法を使用したことを特徴とする記憶装置。
JP11042203A 1999-02-19 1999-02-19 Ecc機能検証回路及びecc機能検証方法 Pending JP2000242515A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11042203A JP2000242515A (ja) 1999-02-19 1999-02-19 Ecc機能検証回路及びecc機能検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11042203A JP2000242515A (ja) 1999-02-19 1999-02-19 Ecc機能検証回路及びecc機能検証方法

Publications (1)

Publication Number Publication Date
JP2000242515A true JP2000242515A (ja) 2000-09-08

Family

ID=12629461

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11042203A Pending JP2000242515A (ja) 1999-02-19 1999-02-19 Ecc機能検証回路及びecc機能検証方法

Country Status (1)

Country Link
JP (1) JP2000242515A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200780B2 (en) 2003-08-11 2007-04-03 Kabushiki Kaisha Toshiba Semiconductor memory including error correction function
JP2017004588A (ja) * 2015-06-10 2017-01-05 インフィネオン テクノロジーズ アクチエンゲゼルシャフトInfineon Technologies AG 誤り訂正能力をテストするための回路および方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200780B2 (en) 2003-08-11 2007-04-03 Kabushiki Kaisha Toshiba Semiconductor memory including error correction function
JP2017004588A (ja) * 2015-06-10 2017-01-05 インフィネオン テクノロジーズ アクチエンゲゼルシャフトInfineon Technologies AG 誤り訂正能力をテストするための回路および方法
KR101852919B1 (ko) 2015-06-10 2018-04-30 인피니온 테크놀로지스 아게 에러 정정 능력을 테스트하기 위한 회로 및 방법

Similar Documents

Publication Publication Date Title
US5177744A (en) Method and apparatus for error recovery in arrays
US8145961B2 (en) Fast ECC memory testing by software including ECC check byte
US7797609B2 (en) Apparatus and method for merging data blocks with error correction code protection
EP1825371B1 (en) System and method for enhanced error detection in memory peripherals
US6295617B1 (en) Testing method of semiconductor memory device and semiconductor memory device applicable to the method
US20100235695A1 (en) Memory apparatus and testing method thereof
JPH03248251A (ja) 情報処理装置
KR20190042013A (ko) 결함 탐지를 가진 오류 정정 하드웨어
US6742159B2 (en) Address parity error processing method, and apparatus and storage for the method
JP2004514184A (ja) デジタル・データにおけるソフト・エラーを訂正するための方法および装置
US7293221B1 (en) Methods and systems for detecting memory address transfer errors in an address bus
CN114138544A (zh) 数据读取、写入方法及装置、软错误处理系统
CN114237972A (zh) 一种用于总线传输的端到端ecc保护装置及方法
JP2009295252A (ja) 半導体記憶装置及びそのエラー訂正方法
JP2000242515A (ja) Ecc機能検証回路及びecc機能検証方法
JP2001290710A (ja) データエラー検出装置
US11579969B2 (en) Verifying method for ECC circuit of SRAM
JP7107696B2 (ja) 半導体装置及び半導体メモリの故障検出方法
US20200371872A1 (en) Error detection and correction with integrity checking
JP3190867B2 (ja) メモリ再書き込み動作誤り検出装置及び方法
JP3036442B2 (ja) メモリ監視方式
JP3123855B2 (ja) メモリ装置のパトロール制御回路
JPH08314811A (ja) メモリインタフェース装置
JP3527825B2 (ja) 記憶装置
JPH03186954A (ja) アドレスエラー検出方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041018

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050301