(57)【要約】【課題】メモリにＥＣＣ回路とＢＩＳＴ回路とを搭載して構成された半導体装置において、テスト時に、ＥＣＣ回路とＢＩＳＴ回路とが活性化された状態で、ＥＣＣ回路によるエラー訂正が必ず行われるように構成され、ＥＣＣ回路やメモリのクリティカルパスなどの十分なスクリーニングを行うことができる、半導体装置を提供することを目的とする。【解決手段】テストモードにおいて、メモリ１１から読み出されたデータを構成する少なくとも１ビットについて擬似エラー発生回路１４により擬似エラーを発生させ、この擬似エラーをＥＣＣ回路１２へ供給してこのＥＣＣ回路１２を活性化し、メモリ１１から読み出されたデータのビットエラーを訂正し、この訂正データをＢＩＳＴ回路１３に送ってテストするように構成される。【選択図】      図１
2005078431.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶するメモリと、
このメモリから読み出されたデータのビットエラーを訂正して訂正データを生成するＥＣＣ回路と、
このＥＣＣ回路から出力された訂正データを試験するＢＩＳＴ回路と、
テストモードにおいて、前記メモリから読み出されたデータを構成する少なくとも１ビットについて擬似エラーを発生させてＥＣＣ回路へ供給する擬似エラー発生回路と、
を具備することを特徴とする半導体装置。
【請求項２】
前記擬似エラー発生回路は、テストモード時には前記メモリから読み出されたビットデータを反転する反転手段を有することを特徴とする、請求項１に記載の半導体装置。
【請求項３】
前記反転手段は、前記メモリのデータ出力端子と前記ＥＣＣ回路のデータ入力端子との間に設けられている、請求項２に記載の半導体装置。
【請求項４】
前記反転手段はＥＸＯＲ回路を含むことを特徴とする、請求項２に記載の半導体装置。
【請求項５】
前記擬似エラー発生回路は、乱数発生回路と、この乱数発生回路から発生された乱数データをデコードするデコーダと、このデコーダ出力とテスト信号とを受ける論理回路と、テストモード時にはこの論理回路の出力により前記メモリから読み出されたビットデータを反転する反転手段とを含むことを特徴とする、請求項１に記載の半導体装置。
【請求項６】
前記乱数発生回路は、複数の直列接続された線形帰還シフトレジスタ回路と、このシフトレジスタ回路の所定の位置に最終段出力を帰還させる帰還回路と、この帰還された最終段出力と前段のシフトレジスタ出力とが入力される少なくとも１個のＥＸＯＲ回路とを含むことを特徴とする、請求項５に記載の半導体装置。
【請求項７】
前記反転手段はＥＸＯＲ回路を含むことを特徴とする、請求項５に記載の半導体装置。
【請求項８】
前記乱数発生回路は、前記デコーダへと出力するビット数よりも少なくとも１ビット以上多いレジスタを直列接続した線形帰還シフトレジスタ回路であることを特徴とする、請求項５に記載の半導体装置。
【請求項９】
前記データ反転手段はシフトレジスタを含んで構成された複数のデータパスを有し、シフトレジスタ出力により選択されたデータパスを通るビットデータのみ反転させることを特徴とする、請求項２に記載の半導体装置。
【請求項１０】
前記ＥＣＣ回路は１ビット誤り訂正機能と、２ビット誤り検出機能を持ち、前記ＢＩＳＴ回路はＥＣＣ回路による２ビット誤り検出時にもパス（Pass）出力を生成する構成を有することを特徴とする、請求項１に記載の半導体装置。
【請求項１１】
前記ＥＸＯＲ回路は前記メモリの特定のビット出力端子とＥＣＣ回路の特定の入力端子間に固定的に接続されていることを特徴とする、請求項２に記載の半導体装置。
【請求項１２】
データビットおよびＥＣＣコードビットを記憶するメモリと、
このメモリから読み出されたデータビットおよびコードビットのビットエラーを訂正して訂正データを生成するＥＣＣ回路と、
このＥＣＣ回路から出力された訂正データを試験するＢＩＳＴ回路と、
テストモードにおいて、前記ＥＣＣ回路を非動作状態に設定する手段と、
この非動作状態に設定されたＥＣＣ回路を介してメモリにデータビット及びコードビットを書き込む書き込み手段と、
この書き込み手段により書き込まれたデータビットおよびコードビットを前記メモリから読み出してＥＣＣ回路へ供給する手段と、
を具備することを特徴とする半導体装置。
【請求項１３】
ＥＣＣ回路の動作状態においてデータビットおよびＥＣＣコードビットをメモリに記憶し、
テストモードにおいて、前記ＥＣＣ回路が非動作状態に設定された状態で、データビットおよびＥＣＣコードビットをメモリに上書きし、
このメモリからデータビットおよびコードビットを読み出してＥＣＣ回路に供給し、
このＥＣＣ回路から出力された訂正データをＢＩＳＴ回路に供給する、
ことを特徴とする半導体装置のテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置、特にメモリからの出力データ中のエラーを訂正するＥＣＣ回路を有する半導体装置に関する。
【背景技術】
【０００２】
半導体デバイス技術の進展により、デバイスの動作速度はますます高速化し、素子の集積度も著しく増加している。その結果、デバイスの故障モードとして縮退故障だけでなく遅延故障の影響が増加し、深刻な問題になっている。そのため、デバイス製造の初期段階での実速度試験、即ちアトスピード（At-Speed）試験の重要性が高まっている。特に、チップ中のメモリがチップ全体のクリティカルパスとなることも多く、その為、ＢＩＳＴ(Built-In-Self Test)回路と称する自己テスト回路をチップに搭載して、ウエハの段階からメモリのアトスピード試験が行われている。
【０００３】
一方で、素子の微細化はメモリを構成するセルの記憶ノードの容量の減少を招き、その為メモリのソフトエラーも大きな問題となってきている。そこでソフトエラー対策として、ＥＣＣ(Error Correcting Code)回路をチップ中のメモリに搭載する場合が増えている。ＥＣＣ回路を搭載するメモリでは通常のデータビットに加えて検査用のコードビットを格納し、コードビットの値からデータビット中のエラーの有無、エラーがどのビットで発生したかをＥＣＣ回路で検出し、エラー訂正して外部に出力する。ＥＣＣ回路は使用するコードによって同一ワード中で何ビットのエラーまで訂正できるかが決まる。一般的には１ビットエラー訂正コード、もしくは１ビット訂正に加えて２ビットエラーの検出が可能なＳＥＣ−ＤＥＤ(Single Error Correction-Double Error Detection)コードがよく使用されている。
【０００４】
ＥＣＣ回路を搭載したメモリをＢＩＳＴ回路で試験する際の従来のメモリ装置のブロック構成を図１０に示す。図１０において、ＢＩＳＴ回路９１はＥＣＣ回路９２を経由して出力されるデータをチェックし、メモリアレイ９３の出力データのエラーの有無を判定する。ところが、ＥＣＣ回路９２を搭載したメモリ装置では、エラーが発生した場合に、エラーが発生しなかった場合に比べてより多くの演算処理が行われるため、メモリ動作のクリティカルパスはエラー訂正が発生した場合に出現することが多い。
【０００５】
しかしながら、ソフトエラーの発生頻度は極稀であるため、アトスピード試験の際にこのクリティカルパスが出現することは殆どない。したがってこの場合、クリティカルパスがアトスピード試験の対象とならない。
【０００６】
例えば、特許文献１には、メモリ回路とＢＩＳＴ回路（自己テスト回路）の間に擬似エラー信号発生回路を設け、メモリ回路からの出力データを設定信号に応じて変換し、ＢＩＳＴ回路の動作検証に必要な擬似エラー信号を発生する半導体メモリのテスト回路が示されている。
【特許文献１】特開２００３−３６６９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、この特許文献１に記載された半導体メモリのテスト回路ではＥＣＣ回路を持っていないために、メモリのソフトエラーに対する対策が立てられていない。
【０００８】
したがって、この発明は、メモリにＥＣＣ回路とＢＩＳＴ回路とを搭載して構成された半導体装置において、テスト時に、ＥＣＣ回路とＢＩＳＴ回路とが活性化された状態で、ＥＣＣ回路によるエラー訂正が必ず行われるように構成され、ＥＣＣ回路やメモリのクリティカルパスなどの十分なスクリーニングを行うことができる、半導体装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
この発明の一実施形態によれば、データを記憶するメモリと、このメモリから読み出されたデータのビットエラーを訂正して訂正データを生成するＥＣＣ回路と、このＥＣＣ回路から出力された訂正データを試験するＢＩＳＴ回路と、テストモードにおいて、前記メモリから読み出されたデータを構成する少なくとも１ビットについて擬似エラーを発生させてＥＣＣ回路へ供給する擬似エラー発生回路と、を具備することを特徴とする半導体装置が構成される。
【発明の効果】
【００１０】
この発明によれば、メモリとＥＣＣ回路とＢＩＳＴ回路とを有する半導体装置において、テスト時に、ＥＣＣ回路とＢＩＳＴ回路とが活性化された状態で、ＥＣＣ回路によるエラー訂正が必ず行われるように構成され、ＥＣＣ回路やメモリのクリティカルパスなどの十分なスクリーニングを行うことができる、半導体装置を提供することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照してこの発明の実施形態を詳細に説明する。
【００１２】
＜第１の実施形態＞
まず、図１を参照して第１の実施形態を説明する。図１において、メモリアレイ１１は例えばＳＲＡＭで構成され、データを構成する所定数のデータビットと、エラー訂正コードの所定数のエラービットとの合計数のビットを１ワードユニットとして各アドレス位置に記憶する。メモリアレイ１１の各アドレス位置を指定するための行、列方向のアドレスデコーダなどがメモリアレイ１１に付属して設けられるが、ここでは説明の簡単化のためにこれらは省略されている。また、メモリアレイ１１にはデータの入出力のための入力ポートＩｎ１および出力ポートＯｕｔ１とが設けられ、さらにクロックＣＬＫを受けるクロック入力ポートＣ１１が設けられている。
【００１３】
メモリアレイ１１のデータ入力ポートＩｎ１はデータパスを介してＥＣＣ回路１２の第１の出力ポートＯｕｔ２に接続され、データ出力ポートＯｕｔ１はデータパスを介して第１の入力ポートＩｎ２に接続される。クロック入力ポートＣ１２にはメモリアレイ１１と同じクロックＣＬＫが供給される。ＥＣＣ回路１２はさらにデータ入力ポートＩｎ３およびデータ出力ポートＯｕｔ３を有し、これらを介してＢＩＳＴ回路１３と接続されている。また、ＢＩＳＴ回路１３はクロック入力ポートＣ１３を有し、メモリアレイ１１、ＥＣＣ回路１２と同じクロックＣＬＫが供給される。ＢＩＳＴ回路１３のテスト結果を示す出力はＰａｓｓ／Ｆａｉｌ端子を介して出力される。
【００１４】
ＢＩＳＴ回路１３はさらにＥＮ入力端子ＥＮを有し、テストイネーブル信号ＴＥＳＴＥＮが供給されて活性化されるように構成されている。
【００１５】
更に、メモリアレイ１１のデータ出力ポートＯｕｔ１とＥＣＣ回路１２のデータ入力ポートＩｎ２との間に接続されたデータパスには、擬似エラー発生回路１４が接続される。この擬似エラー発生回路１４は、テストイネーブル信号ＴＥＳＴＥＮとクロックＣＬＫとを受ける擬似乱数発生回路（以下、ＰＲＰＧ（pseudo random pulse generator）回路１４Ａと略称する）と、このＰＲＰＧ回路１４Ａから出力されたｎビットの乱数データをデコードして２ｎ個のデコード出力を発生するデコーダ１４Ｂと、このデコーダ１４Ｂの出力とテストイネーブル信号ＴＥＳＴＥＮとを入力とするＡＮＤ回路１４Ｃと、このＡＮＤ回路１４Ｃの出力が供給されるＥＸＯＲ回路１４Ｄとにより構成される。このＥＸＯＲ回路１４Ｄの他方の入力として、メモリアレイ１１の出力ポートＯｕｔ１からのデータビットが供給される。
【００１６】
ここで、図２を参照してＰＲＰＧ回路１４Ａの具体回路の一例を説明する。図２において、ＰＲＰＧ回路１４Ａは、例えば８ビット構成の線形帰還シフトレジスタ回路（Linear
Feedback Shift Register:ＬＦＳＲ)であり、８個の直列接続されたシフトレジスタＳＲ１〜ＳＲ８と、シフトレジスタＳＲ１、ＳＲ２の間、ＳＲ５、ＳＲ６の間、ＳＲ６、ＳＲ７の間に夫々挿入されたＥＸＯＲ回路ＥＸ１、ＥＸ２、ＥＸ３とにより構成される。各シフトレジスタＳＲ１〜ＳＲ８からの出力Ｓ０〜Ｓ７は夫々次段の回路に供給されるとともに、８ビットの出力（ｎ＝８）として図１のデコーダ１４Ｂに供給される。更に、最終段のシフトレジスタＳＲ８の出力Ｓ７は、帰還回路ＦＬを介してＥＸＯＲ回路ＥＸ３、ＥＸ２、ＥＸ１に供給されるとともに、最初の段のシフトレジスタＳＲ１の入力端子に帰還される。
【００１７】
図２に示した回路において、ＬレベルのＴＥＳＴＥＮ信号が各シフトレジスタＳＲ１〜ＳＲ８のリセット入力端子Ｒに供給されると、これらのシフトレジスタＳＲ１〜ＳＲ８の出力信号Ｓ０〜Ｓ７が初期化され、Ｓ７〜Ｓ０＝００００００００以外の値に設定される。
【００１８】
この状態でＴＥＳＴＥＮ信号がＨレベルとなると、供給されるクロックＣＬＫのタイミングでシフトレジスタＳＲ１〜ＳＲ８から出力が現れる。ここで、最終段のシフトレジスタＳＲ８の出力Ｓ７が帰還回路ＦＬを介して先頭のシフトレジスタＳＲ１に帰還されるとともに、３個のＥＸＯＲ回路ＥＸ１、ＥＸ２、ＥＸ３を介して途中のシフトレジスタＳＲ２、ＳＲ６、ＳＲ７にも帰還されるから、これらのシフトレジスタＳＲ１〜ＳＲ８の８ビットの出力Ｓ０〜Ｓ７は擬似乱数となる。
【００１９】
この８ビットの擬似乱数のうちで、例えば最終段出力Ｓ７を除く、７ビットの出力Ｓ６〜Ｓ０（ｎ＝７）をデコーダ１４Ｂに供給して２７通りの１ビットデコード出力をＡＮＤ回路１４Ｃの一方の入力として供給する。ＡＮＤ回路１４Ｃの他方の入力としてテストイネーブル信号ＴＥＳＴＥＮが供給される。
【００２０】
ＡＮＤ回路１４Ｃは、テストイネーブル信号ＴＥＳＴＥＮがＨで、かつデコーダ１４Ｂからの１ビットデコード出力もＨのときのみＨレベルの信号をＥＸＯＲ回路１４Ｄに供給する。したがって、ＥＸＯＲ回路１４Ｄからの出力は、メモリアレイ１１の出力ポートＯｕｔ１からのデータビットがＬのときはＨ、ＨのときはＬとなり、反転されたデータビットまたはコードビットを含むデータが擬似ソフトエラーとしてＥＣＣ回路１２に供給されることになる。
【００２１】
ＥＣＣ回路１２はこの擬似ソフトエラーを検知して活性化されて訂正データを生成してＢＩＳＴ回路１３に送る。この結果、ＢＩＳＴ回路１３によるメモリアレイ１１、ＥＣＣ回路１２のアトスピード試験が行われ、メモリアレイ１１のクリティカルパスのスクリーニングが可能となる。
【００２２】
図１の実施形態では、メモリアレイ１１にはＥＣＣ回路１２用のコードビットを記憶する記憶領域が内蔵されている。したがって、その出力ポートＯｕｔ１にはデータビットおよびコードビットのすべてが出力され、これらのすべてのビットに対してＥＣＣ回路１２によるエラー訂正が行われるように構成されている。
【００２３】
しかしながら、データビットに対するテストだけで十分な場合には、データビットに対するエラー訂正のみでよく、この場合には、データビットのみを擬似エラー発生回路１４を介してＥＣＣ回路１２に供給するようにしてもよい。
【００２４】
＜第２の実施形態＞
図３はこの考えに基づいて構成されたこの発明の他の実施形態の構成を示すブロック図である。図３において、図１と対応する部分は同一または類似の参照符号を付してその詳細な説明を省略する。
【００２５】
図３の実施形態では、データビットを記憶するメモリアレイ１１Ａと、コードビットを記憶するメモリアレイ１１Ｂとを別に設ける。メモリアレイ１１Ａには入力ポートＩｎ１と出力ポートＯｕｔ１とが、クロック端子Ｃ１１とともに設けられる。これらのポートＩｎ１、Ｏｕｔ１はそれぞれＥＣＣ回路１２Ａの出力ポートＯｕｔ２、入力ポートＩｎ２に接続される。ＥＣＣ回路１２Ａはさらに、図１の実施形態と同様に、クロック端子Ｃ１２とともに、ＢＩＳＴ回路１３に接続された入力ポートＩｎ３、出力ポートＯｕｔ３の他に、入力ポートＩｎ４および出力ポートＯｕｔ４とを有する。この入力ポートＩｎ４および出力ポートＯｕｔ４は、メモリアレイ１１Ｂの出力ポートＯｕｔ５と入力ポートＩｎ５とに夫々接続される。また、クロック端子Ｃ１４が形成され、メモリアレイ１１Ａと同じクロックＣＬＫが供給される。
【００２６】
図３の実施形態では、メモリアレイ１１Ａに記憶されたデータビットのみが、擬似エラー発生回路１４を介して、擬似エラービットとしてＥＣＣ回路１２Ａに供給される。一方、メモリアレイ１１Ｂに記憶されたコードビットはそのまま直接にＥＣＣ回路１２Ａに供給される。ＥＣＣ回路１２Ａによりエラー訂正処理されたデータビットおよび無処理のコードビットは、ＥＣＣ回路１２Ａ内でワードとして統合されてＢＩＳＴ回路１３にテストの為に送り込まれ、Pass/Failの内容を持つテスト出力が得られる。
【００２７】
尚、図３の実施形態ではデータビットとコードビットを別のメモリアレイに記憶するように構成したが、図１と同様に同一のメモリアレイ内にデータビットとコードビットとを記憶し、メモリアレイからの読み出し時に図示しない第１のデータパスを介してデータビットのみ擬似エラー発生回路１４を介してＥＣＣ回路１２Ａに供給し、コートビットは図示しない第２のデータパスを介して直接ＥＣＣ回路１２Ａに供給するように構成しても同様に実施できる。
【００２８】
図１に示した実施形態の場合、擬似エラー発生回路１４により発生される擬似エラービット以外に、同一ワード中の他のデータビットに不良が発生していることが有り得る。この場合、同一ワード中に合計２ビットのエラーが発生することになる。図１に示したＥＣＣ回路１２が１ビット訂正型のものであった場合は、２ビットエラーは訂正不可であるため、ＢＩＳＴ回路１３のテストの結果、テスト出力がFailとなる。
【００２９】
しかしながら、擬似エラー発生回路１４を用いない通常のテスト回路では、この場合は１ビットエラーであるからＥＣＣ回路１２により訂正されてテスト出力としてパス（Pass）出力が得られるはずのものである。１ワード中に１ビットエラーが発生する可能性が非常に小さい場合には、ソフトエラーテストができることも考えると、このような被テスト半導体装置のチップはパス（Pass）と判定することが望ましい。
【００３０】
＜第３の実施形態＞
図４に示す実施形態はこのような考えに基づいて構成されており、ＥＣＣ回路１２Ｂとして、ＳＥＣ−ＤＥＤ（Single Error Correction-Double Error Detection）型コードを用いた回路を使用する。このＳＥＣ−ＤＥＤコードは、１ビット誤り訂正、２ビット誤り検出が可能なコードである。
【００３１】
図４の実施形態において、図１の実施形態と対応する部分は同一または類似の参照符号を付してその説明の重複を避ける。図４において、ＳＥＣ−ＤＥＤ型のＥＣＣ回路１２Ｂは、２ビットの誤りが検出されたときに、それを示す信号を出力するために端子ＤＥＤを有する。例えば、２ビットの誤りが検出されたときにＨレベルの検出信号が端子ＤＥＤに現れる。
【００３２】
ＢＩＳＴ回路１３Ａは、ＥＣＣ回路１２Ｂからのエラー訂正出力を受けるＢＩＳＴ回路部１３Ａ−１と、このＢＩＳＴ回路部１３Ａ−１のＨまたはＬレベルのPass/Fail出力をその一方の入力端子に受けるＯＲ回路１３Ａ−２と、このＯＲ回路１３Ａ−２の出力をラッチするラッチ回路１３Ａ−３とを有する。ＯＲ回路１３Ａ−２の他方の入力端には、端子ＤＥＤからの２ビット誤り検出出力のＨまたはＬレベルの検出信号が供給される。
【００３３】
図４において、メモリアレイ１１から読み出されたデータビットまたはコードビットにビットエラーがない場合には、１ワードに対して擬似エラー発生回路１４からＥＣＣ回路１２Ｂに供給される１ビットのみエラーとなるので、ＥＣＣ回路１２Ｂが活性化され、エラー訂正出力がＢＩＳＴ回路１３Ａに送られる。この場合は、ＢＩＳＴ回路部１３Ａ−１からはパス（Pass）出力(Ｈレベル)が得られ、且つＥＣＣ回路１２Ｂの端子ＤＥＤからはＬレベルの検出信号が得られるので、ＯＲ回路１３Ａ−２の出力はＨレベルとなり、これがラッチ回路１３Ａ−３にラッチされ、最終パス（Pass）出力としてＨレベルのテスト出力が得られる。
【００３４】
一方、図４において、メモリアレイ１１から読み出されたデータビットまたはコードビットにビットエラーがある場合には、１ワードに対して擬似エラー発生回路１４からＥＣＣ回路１２Ｂに供給される１ビットのエラーに加えて合計２ビットエラーとなる。したがって訂正不可となり、活性化されたＥＣＣ回路１２Ｂからのエラー訂正出力は正しく訂正されたデータではない。このため、ＥＣＣ回路１２Ｂからのエラー訂正出力がＢＩＳＴ回路１３Ａに送られると、ＢＩＳＴ回路部１３Ａ−１からはフェイル（Fail）出力（Ｌレベル）が得られる。一方、ＥＣＣ回路１２Ｂの端子ＤＥＤからは２ビットエラー検出を示すＨレベルの検出信号が得られるので、このＨレベルはＯＲ回路１３Ａ−２の入力として供給され、ＯＲ回路１３Ａ−２からは、やはりＨレベルの出力が得られる。これがラッチ回路１３Ａ−３にラッチされ、最終パス（Pass）出力としてテスト出力が得られる。
【００３５】
図４の実施形態では、図１の実施形態同様、メモリアレイ１１にはＥＣＣ回路１２Ｂ用のコードビットを記憶する記憶領域が内蔵されている。したがって、その出力ポートＯｕｔ１にはデータビットおよびコードビットのすべてが出力され、これらのすべてのビットに対してＥＣＣ回路１２Ｂによるエラー訂正が行われるように構成されている。
【００３６】
しかしながら、データビットに対するテストだけで十分な場合には、データビットに対するエラー訂正のみでよく、この場合には、データビットのみを擬似エラー発生回路１４を介してＥＣＣ回路１２Ｂに供給するようにしてもよい。
【００３７】
＜第４の実施形態＞
図５はこの考えに基づいて構成されたこの発明の他の実施形態の構成を示すブロック図である。図５において、図４と対応する部分は同一または類似の参照符号を付してその詳細な説明を省略する。
【００３８】
図５の実施形態では、データビットを記憶するメモリアレイ１１Ａと、コードビットを記憶するメモリアレイ１１Ｂとを別に設ける。メモリアレイ１１Ａには入力ポートＩｎ１と出力ポートＯｕｔ１とが、クロック端子Ｃ１１とともに設けられる。これらのポートＩｎ１、Ｏｕｔ１はそれぞれＥＣＣ回路１２Ｂの出力ポートＯｕｔ２、入力ポートＩｎ２に接続される。ＥＣＣ回路１２Ｂはさらに、図４の実施形態と同様に、クロック端子Ｃ１２とともに、ＢＩＳＴ回路１３Ａに接続された入力ポートＩｎ３、出力ポートＯｕｔ３の他に、入力ポートＩｎ４および出力ポートＯｕｔ４とを有する。この入力ポートＩｎ４および出力ポートＯｕｔ４は、メモリアレイ１１Ｂの出力ポートＯｕｔ５と入力ポートＩｎ５とに夫々接続される。また、クロック端子Ｃ１４が形成され、メモリアレイ１１Ａと同じクロックＣＬＫが供給される。また、２ビットエラー検出端子ＤＥＤが設けられる。
【００３９】
図５の実施形態では、メモリアレイ１１Ａに記憶されたデータビットのみが、擬似エラー発生回路１４を介して、擬似エラービットとしてＥＣＣ回路１２Ｂに供給される。一方、メモリアレイ１１Ｂに記憶されたコードビットはそのまま直接にＥＣＣ回路１２Ｂの入力ポートＩｎ４に供給される。ＥＣＣ回路１２Ｂによりエラー訂正処理されたデータビットおよび無処理のコードビットは、ＥＣＣ回路１２Ｂ内でワードとして統合されてＢＩＳＴ回路１３Ａにテストの為に送り込まれ、Pass/Failの内容を持つ最終テスト出力が得られる。
【００４０】
尚、図５の実施形態ではデータビットとコードビットを別のメモリアレイ１１Ａ、１１Ｂに記憶するように構成したが、図４と同様に同一のメモリアレイ内にデータビットとコードビットとを記憶し、メモリアレイからの読み出し時に図示しない第１のデータパスを介してデータビットのみ擬似エラー発生回路１４を介してＥＣＣ回路１２Ｂに供給し、コードビットは図示しない第２のデータパスを介して直接ＥＣＣ回路１２Ｂに供給するように構成しても同様に実施できる。
【００４１】
図１、図３乃至図５に示した実施形態では、いずれも図２に示す構成の乱数発生回路（ＰＲＰＧ回路）１４Ａを用いて擬似エラー発生回路１４を構成するように説明したが、擬似エラー発生回路としては他の構成の回路を用いることもできる。図６はその一例の擬似エラー発生回路１４Ａを用いた更に他の実施形態を示す。
【００４２】
＜第５の実施形態＞
図６において、この擬似エラー発生回路１４Ａは、８個の直列接続されたシフトレジスタＳＲ１〜ＳＲ８と、各シフトレジスタＳＲ１〜ＳＲ８の出力ビットが一方の入力端子に供給され、メモリアレイ１１の８ビットのビット出力が他方の入力端子にそれぞれ個々に供給され、出力端子からの出力Ｏｕｔ＜０＞〜Ｏｕｔ＜７＞がＥＣＣ回路１２に夫々供給されるように接続された８個のＥＸＯＲ回路ＥＸ１〜ＥＸ８とにより構成される。
【００４３】
各シフトレジスタＳＲ１〜ＳＲ７からの出力Ｓ０〜Ｓ７は夫々次段の回路に供給されるとともに、ＥＸＯＲ回路の最終段のシフトレジスタＳＲ８に供給される。但し、最終段のシフトレジスタＳＲ８の出力Ｓ７は、ＥＸＯＲ回路ＥＸ８に供給されるとともに、帰還線路ＦＬを介して最初の段のシフトレジスタＳＲ１の入力端子に帰還される。また、テストイネーブル信号ＴＥＳＴＥＮが各シフトレジスタＳＲ１〜ＳＲ８のリセット端子に供給されるとともに、クロックＣＬＫが各クロック端子に供給される。
【００４４】
図６に示した回路において、ＬレベルのＴＥＳＴＥＮ信号が各シフトレジスタＳＲ１〜ＳＲ８のリセット入力端子Ｒに供給されると、これらのシフトレジスタＳＲ１〜ＳＲ８の出力信号Ｓ０〜Ｓ７が初期化され、Ｓ７〜Ｓ０のうちの１つのみがＨレベル“１”になるように初期化される。例えば初段のシフトレジスタＳＲ１の出力Ｓ０のみＨレベルに設定される。
【００４５】
その後、テストイネーブル信号ＴＥＳＴＥＮがＨの状態でクロックＣＬＫが供給されると、例えばそのクロックＣＬＫのＨレベルの立ち上がりのタイミングでシフトレジスタＳＲ２の出力信号Ｓ１がＨレベルとなり、ＥＸＯＲ回路ＥＸ１２に供給される。この時、メモリアレイ１１から読み出されてＥＸＯＲ回路ＥＸ１２に供給されるデータビットがＬであれば、ＥＸＯＲ回路ＥＸ１２の出力Ｏｕｔ＜１＞はＨに反転され、擬似エラービットとしてＥＣＣ回路１２に供給される。反対にデータビットがＨであればＬに反転されて、やはり擬似エラービットとしてＥＣＣ回路１２に供給される。
【００４６】
信号ＴＥＳＴＥＮがＨの状態でクロックＣＬＫが供給される度にシフトレジスタＳＲ３，ＳＲ４，…の出力が順次Ｈとなって行き、対応するＥＸＯＲ回路ＥＸ１２、ＥＸ１３…からは順次、メモリアレイ１１の出力に対して１ビット／ワードの擬似ソフトエラーが与えられることになる。
【００４７】
ＥＣＣ回路１２は、この擬似ソフトエラーを検知して活性化され、訂正データを生成してＢＩＳＴ回路に送る。この結果、ＢＩＳＴ回路によるメモリアレイ１１、ＥＣＣ回路１２のアトスピード試験が行われ、メモリアレイ１１のクリティカルパスのスクリーニングが可能となる。なお、図６の説明ではメモリアレイ１１からデータビットを読み出して擬似ソフトエラーを与えるようにしたが、メモリアレイ１１内にエラー訂正用のコードビットも記憶されている場合はこのコードビットも例えばデータビットに続いて読み出して同様に擬似ソフトエラーを与えるようにしても良い。
【００４８】
＜第６の実施形態＞
以上に説明した第１乃至第５の実施形態ではいずれも任意のデータビットに対して擬似エラーが発生するように構成したが、擬似エラーが発生するビットを固定するようにしても同様の効果が得られる。
【００４９】
図７はこのような考えに基づいて構成された実施形態のブロック構成を示し、データビットおよびコードビットを記憶したメモリアレイ１１の特定の出力ポートＯｕｔＦに接続されたビットパスＰ１をＥＸＯＲ回路１４ＥＸの一方の入力端子に接続する。このＥＸＯＲ回路１４ＥＸの他方の入力端子にはテストイネーブル信号ＴＥＳＴＥＮが供給され、その出力はＳＥＣ−ＤＥＤ型のＥＣＣ回路１２Ｂの特定の入力ポートＩｎｆに接続される。このＥＣＣ回路１２Ｂは図４の実施形態と同様に構成されている。
【００５０】
図７の回路において、メモリアレイ１１から出力ポートＯｕｔＦに読み出されたビット信号が例えばＨレベルであれば、テストイネーブル信号ＴＥＳＴＥＮがＨレベルのときに反転されてＬレベルとなり、擬似ソフトエラービットとしてＥＣＣ回路１２Ｂの入力ポートＩｎｆに供給される。この結果、ＥＣＣ回路１２Ｂは、この入力ポートＩｎｆに接続されたパスを介して活性化され、エラー訂正動作が行われる。図７の実施形態の全体の動作は図４の実施形態と同じであり、これ以上の説明は省略するが、図４の実施形態と比較して擬似エラー発生回路がＥＸＯＲ回路１４ＥＸのみとなって回路構成が極めて簡単化される。
【００５１】
＜第７の実施形態＞
第１乃至第６の実施形態ではいずれも、メモリアレイからＥＣＣ回路へのビットパス上に設けたＥＸＯＲを用いて擬似ソフトエラーを発生させている。このようにビットパス上のＥＸＯＲはテスト回路としての動作速度低下の原因となることがある。
【００５２】
図８はこのような場合に対処するように構成された実施形態を示す。図８において、全体の構成は図５の実施形態から擬似エラー発生回路１４を除いたものと考えられ、図５と対応部分は同一または類似の参照番号を付してその説明を省略する。図８から分かるように、この実施形態では擬似エラー発生回路に接続されたＥＸＯＲ回路を用いないで、メモリアレイ１１Ａの出力ポートＯｕｔ１から出力されたデータビットは直接にＥＣＣ回路１２Ｃの入力ポートＩｎ２に供給されるように構成される。
【００５３】
ＳＥＣ−ＤＥＤ型のＥＣＣ回路１２Ｃは、２ビットエラー検出端子ＤＥＤを持つと共に、イネーブル信号入力端子ＥＣＣＥＮを有する。このＥＣＣＥＮ端子は、ＢＩＳＴ回路１３Ｂ−１中に設けられた制御回路１３Ｂ−４からの制御出力を受ける。制御回路１３Ｂ−４の制御出力はＥＣＣ回路１２ＣのＥＣＣＥＮ端子に供給する。ＥＣＣ回路１２Ｃは、ＢＩＳＴ回路１３Ｂ−１の制御回路１３Ｂ−４の制御出力のレベルにより２つの動作モードに切り替えられる。
【００５４】
まず、ＥＣＣＥＮ信号がＨレベルの場合、ＥＣＣ回路１２Ｃは通常のモード状態に設定される。従って、データ書き込み時にメモリアレイ１１Ａにデータビットが書き込まれるときには、メモリアレイ１１Ｂには対応するエラー訂正用のコードビットが書き込まれる。
【００５５】
一方、ＥＣＣＥＮ信号がＬレベルの場合、ＥＣＣ回路１２Ｃは非動作モードに設定され、ＥＣＣ回路として機能しない状態となる。従って、データ書き込み時にメモリアレイ１１Ａにデータビットが書き込まれるときには、メモリアレイ１１Ｂには対応するエラー訂正用のコードビットの書き込みは行わない。
【００５６】
ＥＣＣ回路１２ＣのＤＥＤ端子は、図５の実施形態と同様に、ＢＩＳＴ回路１３ＢのＯＲ回路１３Ｂ−２の一方の入力端子に接続され、他方の入力端子にはＢＩＳＴ回路１３Ｂ−１のPass/Fail出力が供給される。ＯＲ回路１３Ｂ−２の出力は最終(Pass/Fail)出力としてラッチ回路１３Ｂ−３から出力される。
【００５７】
以下、図９のフローチャートを参照して制御回路１３Ｂ−４を含む図８の実施形態の動作を説明する。即ち、図８の実施形態において、図９のステップＳ１でテストモードに設定された時には、テストイネーブル信号ＴＥＳＴＥＮがまずＨレベルとなり、これを受けた制御回路１３Ｂ−４の出力によりＥＣＣ回路１２Ｃの端子ＥＣＣＥＮがＨレベルとなり、ＥＣＣ回路１２Ｃは通常の動作モードに設定され、ステップＳ２においてメモリアレイ１１Ａには正常な状態でデータ書き込みが行われる。
【００５８】
次いで、ステップＳ３において、ＥＣＣＥＮ信号がＬレベルとなり、ステップＳ４にてメモリアレイ１１Ａの同じアドレスに対してステップＳ２で書き込んだデータに対して１ビット反転したデータをメモリアレイ１１Ａに書き込む。メモリアレイ１１Ｂにはこのデータに対応するコードビットの書き込みは行われない。従って、メモリアレイ１１Ａのデータとメモリアレイ１１Ｂのコードとを統合したデータとしては、１ビット／ワードのエラーを含んだデータが書き込まれたことになる。
【００５９】
この状態で、ステップＳ５において、端子ＥＣＣＥＮは再びＨレベルとなり、ＥＣＣ回路１２Ｃが正常な動作状態となる。この状態で、ステップＳ６において、メモリアレイ１１Ａ、１１Ｂに格納されたデータの読み出しテストを行うと、ＥＣＣ回路１２Ｃはエラーを検知して活性化され、エラー訂正出力をＢＩＳＴ回路部１３Ｂに出力する。ＢＩＳＴ回路１３Ｂ−１は１ビットエラーの場合はＨレベルのパス（Pass）信号をＯＲ回路１３Ｂ−２に出力する。この時はＤＥＤ信号がＬレベルであるが、ＯＲ回路１３Ｂ−２の出力はＨとなり、ラッチ回路１３Ｂ−３を介して最終パス（Pass）出力を出す。
【００６０】
尚、２ビットエラーがＥＣＣ回路１２Ｃで検出された時は、ＤＥＤ信号がＨとなる。一方、ＢＩＳＴ回路１３Ｂ−１の出力はＬレベルのフェイル（Fail）となるが、図５の実施形態と同様に、最終パス出力（Pass）がラッチ回路１３Ｂ−３から得られる。
【図面の簡単な説明】
【００６１】
【図１】この発明の第１の実施形態の構成を示すブロック図。
【図２】図１のＰＲＰＧの具体回路を示すブロック図。
【図３】この発明の第２の実施形態の構成を示すブロック図。
【図４】この発明の第３の実施形態の構成を示すブロック図。
【図５】この発明の第４の実施形態の構成を示すブロック図。
【図６】この発明の第５の実施形態の構成の主要部を示すブロック図。
【図７】この発明の第６の実施形態の構成を示すブロック図。
【図８】この発明の第７の実施形態の構成を示すブロック図。
【図９】この発明の第７の実施形態の動作を説明するフローチャート図。
【図１０】従来のテスト回路の構成を示すブロック図。
【符号の説明】
【００６２】
１１、１１Ａ、１１Ｂ…メモリアレイ、１２、１２Ａ、１２Ｂ…ＥＣＣ回路、１３、１３Ａ、１３Ｂ…ＢＩＳＴ回路、１４…擬似エラー発生回路、１４Ａ…ＰＲＰＧ、１４Ｂ…デコーダ、１４Ｃ…ＡＮＤ回路、１４Ｄ、１４ＥＸ…ＥＸＯＲ回路、ＳＲ１〜ＳＲ８…シフトレジスタ。
【図１】
2005078431.tif 000003
【図２】
2005078431.tif 000004
【図３】
2005078431.tif 000005
【図４】
2005078431.tif 000006
【図５】
2005078431.tif 000007
【図６】
2005078431.tif 000008
【図７】
2005078431.tif 000009
【図８】
2005078431.tif 000010
【図９】
2005078431.tif 000011
【図１０】
2005078431.tif 000012
【手続補正書】
【提出日】平成15年12月15日(2003.12.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データを記憶するメモリと、
このメモリから読み出されたデータのビットエラーを訂正して訂正データを生成するＥＣＣ回路と、
このＥＣＣ回路から出力された訂正データを試験するＢＩＳＴ回路と、
テストモードにおいて、前記メモリから読み出されたデータを構成する少なくとも１ビットについて擬似エラーを発生させてＥＣＣ回路へ供給する擬似エラー発生回路と、
を具備することを特徴とする半導体装置。
【請求項２】
前記擬似エラー発生回路は、乱数発生回路と、この乱数発生回路から発生された乱数データをデコードするデコーダと、このデコーダ出力とテスト信号とを受ける論理回路と、テストモード時にはこの論理回路の出力により前記メモリから読み出されたビットデータを反転する反転手段とを含むことを特徴とする、請求項１に記載の半導体装置。
【請求項３】
前記反転手段はシフトレジスタを含んで構成された複数のデータパスを有し、シフトレジスタ出力により選択されたデータパスを通るビットデータのみ反転させることを特徴とする、請求項２に記載の半導体装置。
【請求項４】
前記ＥＣＣ回路は１ビット誤り訂正機能と、２ビット誤り検出機能を持ち、前記ＢＩＳＴ回路はＥＣＣ回路による２ビット誤り検出時にもパス（Pass）出力を生成する構成を有することを特徴とする、請求項１に記載の半導体装置。
【請求項５】
データビットおよびＥＣＣコードビットを記憶するメモリと、
このメモリから読み出されたデータビットおよびコードビットのビットエラーを訂正して訂正データを生成するＥＣＣ回路と、
このＥＣＣ回路から出力された訂正データを試験するＢＩＳＴ回路と、
テストモードにおいて、前記ＥＣＣ回路を非動作状態に設定する手段と、
この非動作状態に設定されたＥＣＣ回路を介してメモリにデータビット及びコードビットを書き込む書き込み手段と、
この書き込み手段により書き込まれたデータビットおよびコードビットを前記メモリから読み出してＥＣＣ回路へ供給する手段と、
を具備することを特徴とする半導体装置。