(57)【要約】  新しいテスト・パターンは、マトリクス内で「非常に小さなジャンプ」と「非常に大きなジャンプ」を実施することからなる。「非常に小さなジャンプ」は行デコーダによって制御され、ワード・ラインでの遅い立下り動作につながる抵抗オープン故障を活性化する作用を有する。「非常に小さなジャンプ」とは、２つの連続するアクセスのメモリ位置があるサブクラスタ内のすべての行がテストされるまでは、その単一のサブクラスタ内にとどまり、あるクラスタ内の行がすべてテストされるまでは、その同一のクラスタ内にとどまり、あるＵセクション内のすべての行がテストされるまではその同一のＵセクションにとどまり、最後に、あるＺブロック内のすべての行がテストされるまではその同一のＺブロックにとどまることを意味する。「非常に大きなジャンプ」は遅い立上り動作につながる種類の抵抗オープン故障をカバーすることを意図したものであり、２つの連続するメモリ・アクセスを、同じサブクラスタ、同じクラスタ、または同じＵセクションで継続してはならないことを意味することが意図されたものである。
2007505440.tif 000002
【特許請求の範囲】
【請求項１】
論理データを受け入れるセルのマトリクスを含む電子回路をテストする方法であって、ｎが１より大きい整数である場合に、前記セルのマトリクスはその各々がｎ行のセルを含む複数のＺブロックに分割され、前記マトリクス内の前記セルの各々にアクセスするステップを含み、前記Ｚブロックのｎ行のすべてがアクセスされるまでは、２つの連続するセル・アクセスが前記同一のＺブロック内にとどまることを特徴とする方法。
【請求項２】
各Ｚブロックが複数のＵセクションに分割され、各ＵセクションがそれぞれのＺブロックのｎ行のうちの一部を含む方法において、前記Ｕセクションのすべての行がアクセスされるまでは、２つの連続するセル・アクセスが前記同一のＵセクション内にとどまることを特徴とする、請求項１に記載の方法。
【請求項３】
各Ｕセクションが複数のクラスタに分割され、各クラスタがそれぞれのＵセクションの行の一部を含む方法において、前記クラスタのすべての行がアクセスされるまでは、２つの連続するセル・アクセスが前記同一のクラスタ内にとどまることを特徴とする、請求項２に記載の方法。
【請求項４】
各クラスタが複数のサブクラスタに分割され、各サブクラスタがそれぞれのクラスタの行の一部、好ましくは２つの行を含む方法において、前記サブクラスタのすべての行がアクセスされるまでは、２つの連続するセル・アクセスが前記同一のサブクラスタ内にとどまることを特徴とする、請求項３に記載の方法。
【請求項５】
前記セル・アクセスが読出しおよび／または書込み動作を含み、前記セル・アクセスが前記選択されたブロック内のセルの各行に対してアドレス昇順で実施され、次いでアドレス降順で実施される、あるいはその逆の順序で実施される、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記Ｚブロックがアドレス昇順および／またはアドレス降順で選択される、請求項１から５のいずれか一項に記載の方法。
【請求項７】
論理データを受け入れるセルのマトリクスを含む電子回路をテストする装置であって、ｎが１より大きい整数である場合に、前記セルのマトリクスはその各々がｎ行のセルを含む複数のＺブロックに分割される装置において、前記マトリクス内の前記セルの各々にアクセスするための手段を含み、前記Ｚブロック内のすべての目的行がアクセスされるまでは２つの連続するセル・アクセスが前記同一のＺブロック内にとどまることを特徴とする装置。
【請求項８】
論理データを収容するセルのマトリクスを含む電子回路をテストする方法であって、ｎが１より大きい整数である場合に、前記セルのマトリクスはその各々がｎ行のセルを含む複数のＺブロックに分割され、前記Ｚブロックの各々が複数のＵセクションに分割され、前記各ＵセクションがそれぞれのＺブロックのｎ行のうちの一部を含む方法において、前記マトリクス内の前記セルの各々にアクセスするステップを含み、２つの連続するセル・アクセスを前記同一のＺブロック内の異なるＵセクションで実施させることを特徴とする方法。
【請求項９】
各Ｚブロックが昇順および／または降順で選択される、請求項８に記載の方法。
【請求項１０】
各Ｕセクションが複数のクラスタに分割され、前記各クラスタが、それぞれのＵセクションのセルからなる行の一部を含む、請求項８または請求項９に記載の方法。
【請求項１１】
好ましくは、各クラスタが複数のサブクラスタに分割され、各サブクラスタがそれぞれのクラスタの行の一部、好ましくは２つを含む、請求項１０に記載の方法。
【請求項１２】
以下の一連の連続サイクル、すなわち
ａ）第１のＺブロックを選択すること、
ｂ）前記選択されたＺブロックのセルからなる前記各行を以下の論理アドレス順、すなわち
ｉ）最初の行、
ｉｉ）最後の行、
ｉｉｉ）前記最初の行の論理アドレスに１を加算した値に相当する論理アドレスを有する行、
ｉｖ）前記最後の行の論理アドレスから１を減算した値に相当する論理アドレスを有する行
の順にアクセスすること
を含む、請求項８から１１のいずれか一項に記載の方法。
【請求項１３】
論理データを受け入れるセルのマトリクスを含む電子回路をテストする装置であって、ｎが１より大きい整数である場合に、前記セルのマトリクスはその各々がｎ行のセルを含む複数のＺブロックに分割され、前記Ｚブロックの各々が複数のＵセクションに分割されて前記各ＵセクションがそれぞれのＺブロックのｎ行のうちの一部を含む装置において、前記マトリクス内の前記セルの各々にアクセスする手段を備えており、２つの連続するセル・アクセスを前記同一のＺブロック内の異なるＵセクションで実施させることを特徴とする装置。
【請求項１４】
論理データを受け入れるセルのマトリクスを含む電子回路をテストする方法であって、ｎが１より大きい整数である場合に、前記セルのマトリクスはその各々がｎ行のセルを含む複数のＺブロックに分割され、前記Ｚブロックの各々が複数のＵセクションに分割されて前記各Ｕセクションが前記それぞれのＺブロックのｎ行のうちの一部を含む方法において、前記マトリクス内の前記セルの各々にアクセスするステップを含み、２つの段階、すなわち前記Ｚブロックのｎ行のすべてがアクセスされるまでは２つの連続するセル・アクセスが前記同一のＺブロック内にとどまるように前記マトリクス内の前記各セルにアクセスするステップを含む第１の段階と、２つの連続するセル・アクセスを前記同一のＺブロック内の異なるＵセクションで実施させるように前記マトリクス内の前記セルの各々にアクセスするステップを含む第２の段階とを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリ・アドレス・デコーダやランダム論理回路などの集積回路をテストする方法および装置に関し、より詳細には、その様な回路のオープン故障の存在をテストする方法および装置に関する。
【背景技術】
【０００２】
電子回路、特に、集積回路の系統的な自動テストは、ますます重要になってきている。各世代の回路は、より高いコンポーネント密度およびより多くのシステム機能を備える傾向にある。個々の回路は、網羅的で費用のかかるテストによらなければ、プロセス故障を検出し、その位置を突き止めることができないほど複雑になってきた。隠れた故障が稼動中にしか明らかにならず、それによって、例えば、生命維持装置や航空機制御システムの信頼性を低下させるような回路製品を顧客が受け入れるはずがないことが理解されるであろう。したがって、テストを実施して回路製品の完璧な動作を保証することは、メーカーと顧客の両方にとって最も重要なことになる。
【０００３】
ランダム・アクセス・メモリ（ＳＲＡＭ、ＤＲＡＭ）は、マイクロエレクトロニクス産業において戦略的な位置を占める。ＲＡＭのテストは、多くの面で従来の論理回路のテストと異なるものである。ＲＡＭは最大でかつ最高密度の回路製品になる傾向があり、その小さなフィーチャ・サイズと巨大なチップ・サイズにより、故障が生じやすい巨大な危険領域がもたらされる。複雑度が高く、高い故障検出能力が必要なため、ＲＡＭのテスト費用が極端に押し上げられることになり、この問題についての様々な解決策が提案されてきた。
【０００４】
ランダム・アクセス・メモリは通常マーチ・テスト［March test］および／またはデータ保持テスト［Data Retention test］にかけられる。マーチ・テストでは、個々のマーチ要素が、すべてのＲＡＭアドレスにわたって、指定された組合せの読出しおよび書込み動作を実施する。例えば、代表的なマーチ要素は、最初に各ＲＡＭアドレス位置を読み出し、次いで、予想されるデータ値の補数を書き戻す。同時に、すべてのマーチ要素により、所与のＲＡＭに起こり得る故障のすべてをカバーしなければならない。
【０００５】
起こり得る故障をＲＡＭ故障モデルに集約した後で、テスト技術者はそのモデルを対象とするテスト・アルゴリズムを作成する。所与のＲＡＭアドレスに対して、すべてのマーチ要素によって実施されるメモリ動作の総数により、テスト・アルゴリズム全体の複雑さが決まる。各マーチ・テスト・アルゴリズムの複雑さは、アドレス空間に関して線形になり、したがって、それらのアルゴリズムは線形アルゴリズムとも呼ばれる。
【０００６】
従来から、ＲＡＭデコーダ故障は、ＲＡＭアレイ故障としてマップすることができるので、ＲＡＭアレイをテストすることによって検出できると言われてきた。その結果、これまではアドレス・デコーダなどの回路は特別なテストを必要としないものと見なされてきた。しかし、その後、ＲＡＭアドレス・デコーダなどの回路では、マーチ・テストでは検出できないある種のオープン故障が生じ得ることが判明した。
【０００７】
オープン故障、またはスタックオープン・トランジスタ故障は、ＣＭＯＳ回路のシーケンシャル動作を引き起こすので、それらの検出のためには２パターンのテスト・シーケンスが必要になる。ＲＡＭマトリクスのオープン故障は、セル読出し障害、行／列読出し障害、またはセル・スタックアット（ＳＡ―縮退―）故障の形で現れ、それらはすべてマーチ・テストによって検出可能である。しかし、マーチ・テストでは、アドレス・デコーダなどの回路における、ある種のオープン故障は検出することができない。
【０００８】
次に、ＲＵＴ［ROM Under Test―テストにおけるＲＯＭ―］の階層設計について簡単に説明する。
【０００９】
ＲＯＭの代表的な例は、２５６行のメモリ・セル、８列のメモリ・セル、３２のＺブロック（２５６／８）を備えることができ、ワードあたり１６ビットを使用してアナログ故障シミュレーションを実施することができる。従来技術の例示的実施例によるＲＵＴは、３つのデコーダＸ、Ｙ、およびＺを含む。Ｘデコーダはメモリ・セルの行を選択し、Ｙデコーダはメモリ・セルの列を選択し、ＺデコーダはＺブロックを選択する。しかし、Ｘデコーダは、列の選択にも寄与する。なぜならば、各ＺブロックはいくつかのＵセクションに分割され、各Ｕセクションは６４行までを含むことができ、ローカル・ビット・ライン（ＬＢＬ）に制限されているからである。ある行にアクセスするためには、先ずその行を含む対応するＵセクションにアクセスすることが必要になる。
【００１０】
Ｘデコーダはマトリクス内の行を選択し、Ｚブロックを異なるＵセクションに分割し、（後で説明するように）列の選択に寄与する。Ｘデコーダは、４つのブロックからなる。すなわち、
−  Ｘプリデコーダ
−  Ｘポストデコーダ
−  内部Ｘデコーダ、および
−  偶数／奇数Ｘデコーダ
である。
【００１１】
ＸプリデコーダおよびＸポストデコーダはすべてのＺブロックによって共用されるが、内部および偶数／奇数Ｘデコーダは、ＲＯＭの単一のＺブロックに属している。
【００１２】
各Ｚブロックのマトリクスは、６４行以下の行を含むＵセクションに分割される。各Ｕセクションはいくつかのクラスタからなり、各クラスタは２つのサブクラスタからなり、最後に各サブクラスタは２つの行からなる。図１は、２５６行を有するＺブロックの階層設計の概略図であり、行選択のためのＸデコーダが従うデータ経路を示す。各行は単一のサブクラスタに属し、各サブクラスタは単一のクラスタに属している。各クラスタは、単一のＵセクションに属し、各ＵセクションはＲＯＭの単一のＺブロックに属する。
【００１３】
内部Ｘデコーダはメモリ・マトリクスの内部に位置するが、偶数／奇数Ｘデコーダはメモリ・マトリクスの外部に存在する。プリデコーダは、ポストデコーダの２つの並列部分を選択する組合せ回路からなる。第１の部分はＵドライバからなりＵセクションの選択に関係し、第２の部分はＸドライバからなりクラスタの選択に関係する。サブクラスタはプリデコーダの最下位ビットを用いて選択される。最終的に、偶数／奇数Ｘデコーダが行を選択する。
【００１４】
図２は、Ｚブロックの様々なブロックにアクセスするためのＸアドレス・ビットの配分を示している。Ｘアドレス・ビットは４つのグループに分けられる。（Ｕドライバによって規定される）第１のグループは最上位ビット（ＭＳＢ）からなりＵセクションの選択に関連し、（Ｘドライバによって規定される）第２のグループは最下位２ビットを除く残りのアドレス・ビット（中間ビット）からなりクラスタの選択に関連し、（プリデコーダによって規定される）第３のグループは最下位から２番目のビット（ＬＳＢ１）からなりサブクラスタを選択し、（偶数／奇数Ｘデコーダによって規定される）第４のグループは最下位ビット（ＬＳＢ０）からなり行を選択する。
【００１５】
階層設計により、Ｘデコーダによって対応するＵセクションが選択されている場合、メモリ・セルの列の選択はＹデコーダだけで実施することができる。言い換えると、以下でより詳細に説明するように、選択されているＵセクションに属する列だけがＹデコーダによって選択できることになる。したがって、列の最終的な選択は、実際にはＸデコーダとＹデコーダの動作の組合せによるものであり、Ｙアドレスが列アクセスの全体を完全に制御している訳ではない。
【００１６】
Ｙデコーダは、３つのブロック、すなわち、Ｙプリデコーダ、偶数／奇数Ｙデコーダ、および内部Ｙデコーダに分けられる。Ｙプリデコーダは、読み出されるグローバル・ビット・ライン（ＧＢＬ）を選択する組合せ回路である（下記参照）。偶数／奇数Ｙデコーダは、読出しサイクルの間にロードされるＧＢＬを選択し、またアクセスされるローカル・ビット・ライン（ＬＢＬ）を事前選択する。内部ＹデコーダはＸポストデコーダ（Ｕドライバ）および偶数／奇数Ｙデコーダから情報を取得し、アクセスすべき偶数／奇数ＬＢＬを選択する。実際には、内部Ｙデコーダは１つの信号に関して２つの選択を実施するが、第１の選択は（Ｘデコーダに依存する）アクセスすべきＵセクションの選択からなり、第２の選択はＬＢＬの選択からなる。したがって、ＺブロックをＵセクションに分割することにより、列の事前選択は部分的にＸデコーダによって実施されることになる。
【００１７】
より詳細には、代表的ＲＵＴマトリクスは６つのブロックからなる。すなわち、
−  グローバル・ビット・ライン（ＧＢＬ）
−  ローカル・ビット・ライン（ＬＢＬ）
−  ワード・ライン（ＷＬ）
−  メモリ・セル
−  内部組合せ回路、および
−  センス・アンプ
である。
【００１８】
各ＧＢＬは、Ｕセクションごとに２つのＬＢＬと１つのセンス・アンプに接続される。セルは、１つのＮＭＯＳトランジスタで構成することができるが、このトランジスタは、格納された論理値が０の場合はＬＢＬに接続され、格納された論理値が１の場合はＬＢＬに接続されない。ＧＢＬは各読出しサイクルごとに１に充電され、読出し論理値が０の場合はローカル・ビット・ラインによって放電される。他の行でセル・トランジスタがＬＢＬに接続されていない場合は、そのトランジスタをアクティブにした場合でも、その同じＧＢＬを同じＬＢＬによって放電することはできない。したがって、この場合の読出し論理値は１になるはずである。内部組合せ論理回路は、一方がＬＢＬを選択するため、他方がＷＬを選択するための、２つの異なるブロックに分けられる。それぞれのＧＢＬの内容を読み出すことを可能にするセンス・アンプは、Ｚブロックの内部Ｙデコーダによって選択される。
【００１９】
図３は、ＧＢＬ、ＬＢＬ、センス・アンプ、および選択ラインの間の接続を備えたＲＵＴの例示的マトリクス設計を概略的に示した図である。ＧＢＬは、内部Ｙデコーダのｙｓｅｌおよびｙｂｓｅｌ選択ラインによって選択できる２本のＬＢＬに接続される。一方、偶数／奇数ＧＢＬは、ＹプリデコーダのｐｃｈＥ／ｐｃｈＯ選択ラインによってそれらが選択された場合にロードされる。ｙｓｅｌおよびｙｂｓｅｌ選択ラインは、ＧＢＬの内容をセンス・アンプによって読み出すことを可能にする。図３が、ＸおよびＹデコーダによるマトリクス選択の理解を助けるために、例示的マトリクス設計の主要ブロックを概略的に示したものであることが理解されるであろう。
【００２０】
Ｚデコーダは、アクセスされるＺブロックを選択する。Ｚ信号は、３つのグループに分けられる。すなわち、第１のグループは偶数／奇数および内部Ｘデコーダをイネーブルにし、第２のグループは内部Ｙデコーダをイネーブルにし、第３のグループは、Ｚブロックのセンス・アンプをバスに接続するマルチプレクサをイネーブルにする。実際、Ｚデコーダは、Ｚブロックの全体ではなく、アクセスされたＺブロックの単一のＵセクションだけをイネーブルにし、チップの電力消費を低減する。選択されたＺブロックの残りのＵセクションはディスエーブルのままである。
【００２１】
先に説明したように、従来から、ＲＡＭデコーダ故障はＲＡＭアレイ故障としてマップすることができるので、ＲＡＭアレイをテストすることによって検出できると言われてきた。その結果、これまではアドレス・デコーダなどの回路は特別なテストを必要としないものと見なされてきた。しかし、その後、ＲＡＭアドレス・デコーダなどの回路では、従来のマーチ・テストでは検出できないある種のオープン故障が生じ得ることが判明した。
【００２２】
オープン故障、またはスタックオープン・トランジスタ故障は、ＣＭＯＳ回路のシーケンシャル動作を引き起こすので、それらの検出のためには２パターンのテスト・シーケンスが必要になる。ＲＡＭマトリクスのオープン故障は、セル読出し障害、行／列読出し障害、またはセル・スタックアット（ＳＡ）故障の形で現れ、それらはすべてマーチ・テストによって検出可能である。しかし、マーチ・テストでは、アドレス・デコーダなどの回路における、ある種のオープン故障は検出することができない。
【００２３】
図面の図４を参照すると、オープン故障は以下の２つの種類に分類できる。
−  ゲート間故障は、アドレス・デコーダの様々なゲート間で生ずるものであり、スタックアット動作または論理遅延動作を生じさせる傾向がある。スタックアット動作は、通常は、従来のマーチ・テストによって検出できるが、論理遅延動作は検出できない。
−  ゲート内故障はアドレス・デコーダの様々なゲート内部で生ずるものであり、シーケンシャル動作またはシーケンシャル遅延動作を生じさせる傾向がある。この種の故障は、従来のマーチ・テストでは完全にはカバーすることができないため、特別な複数のテスト・パターン・シーケンスが必要になる。
【００２４】
メモリ・アドレス・デコーダをテストする方法は、欧州特許第０７３８４１８号に開示されている。この明細書に開示されている方法は、２つの論理的に隣接した行または列の２つのそれぞれのセルに相補的な論理データを書き込むことを含む。それに続くＲｅａｄ動作で、その２つのセルのデータが同一であった場合は、デコーダ中のハードオープン故障の存在および位置が明らかにされたことになる。より詳細には、欧州特許第０７３８４１８号に開示されている方法では、第１の論理状態が第１のセルに書き込まれ、次いで、第１の論理状態に対して相補的な、第２の論理状態が第２のセルに書き込まれる。第２のセルで実施されるＷｒｉｔｅ動作の書込み動作が完了した後で第１のセルを読み出したとき、デコード手段が正しく機能している場合は、第１のセルは第１の論理状態を維持していることが示されるはずである。しかし、第１のセルが第２の論理状態になっていると見なせることが判明した場合は、第１のセルは、第２のセルのＷｒｉｔｅ動作中に上書きされたことになり、デコード手段の故障を検出し、その位置を定めることが可能になる。
【００２５】
欧州特許第０７３８４１８号に記載のテスト方法を用いると、シーケンシャル動作につながる抵抗オープン故障を検出することができる。しかし、以下でより詳細に説明するように、シーケンシャル遅延動作につながる種類の抵抗オープン故障はカバーされない。
【発明の開示】
【発明が解決しようとする課題】
【００２６】
したがって、マーチ・テストはゲート内部の抵抗オープン故障をカバーしない。なぜならば、この種のアルゴリズムは、アドレス昇順とアドレス降順のアドレスを生成することに基づいているからである。また、線形アルゴリズムによってその様なオープン故障を漏れなくカバーすることは不可能である。ゲート内部のオープン故障には、オープン故障のカバー範囲を広げるためにマーチ・テストに追加しなければならない特別なテスト・パターン・シーケンスを使用する必要がある。さらに、論理およびシーケンシャル遅延動作につながる抵抗オープン故障は、依然として完全にはカバーされないまま残る。
【００２７】
図５ａおよび５ｂを参照すると、論理およびシーケンシャル遅延動作は、セルの論理状態が、時間をかけて最大値から徐々に降下する「遅い立下り［slow-to-fall］」動作（図５ａ）と、時間をかけて徐々に最大論理状態に到達する「遅い立上り［slow-to-rise］」動作（図５ｂ）とに分類される。
【００２８】
この種の故障は、顧客からの大量の返品や重大な信頼性上の問題を生じることになる。したがって、本発明者らは改善された仕組みを考案した。
【課題を解決するための手段】
【００２９】
本発明の第１の態様によれば、論理データを収容するセルのマトリクスを含む電子回路をテストする方法であって、前記セルのマトリクスは、各々がｎ行のセルを含む複数のＺブロックに分割され、ｎが２以上の整数である方法において、前記マトリクス内の前記セルの各々にアクセスするステップを含み、前記Ｚブロックのｎ行のすべてがアクセスされるまでは、２つの連続するセル・アクセスが前記同一のＺブロック内にとどまることを特徴とする方法が提供される。
【００３０】
本明細書で使用する「アクセス」という用語は、読出しおよび／または書込み動作を意味する。読出し専用メモリ（ＲＯＭ）については、活性化［sensitization］と検出の両方で読出し動作だけが使用される。ランダム・アクセス・メモリ（ＲＡＭ）については、故障を活性化し検出するために読出しと書込みの両方を使用することができる。書込み動作の場合は、好ましくは、故障動作を観察するためにＤａｔａバックグラウンドが考慮される。活性化アクセスと検出アクセスのデータ・バックグラウンドは、２つのメモリ・ワードのＡＮＤ／ＯＲ論理（遅い立下りの場合）、またはバイナリ・ベクトル１１１…１および０００…０（遅い立上りの場合）を調べるために補完し合う必要がある。
【００３１】
好ましい実施形態においては、各Ｚブロックは複数のＵセクションに分割され、各ＵセクションはそれぞれのＺブロックのｎ行のうちの一部を含み、その方法は、Ｕセクションの全ての行がアクセスされるまでは２つの連続するセル・アクセスが同一のＵセクション内にとどまることを特徴とする。より好ましくは、各Ｕセクションは複数のクラスタに分割され、各クラスタは各Ｕセクションの行の一部を含み、その方法は、クラスタ内の全ての行がアクセスされるまでは２つの連続するセル・アクセスが同一のクラスタにとどまることを特徴とする。さらに、より好ましくは、各クラスタは複数のサブクラスタに分割され、各サブクラスタは各クラスタの行の一部、好ましくは２つを含み、その方法は、サブクラスタ内の全ての行がアクセスされるまでは２つの連続するセル・アクセスが同一のサブクラスタ内にとどまることを特徴とする。
【００３２】
したがって、この発明の第１の態様によれば、マトリクス内での「非常に小さなジャンプ［very small jump］」を実施することによる新しいテスト・パターンが提案される。好ましくは、これらのジャンプは行デコーダによって制御され、ワード・ラインでの遅い立下り動作につながる抵抗オープン故障を活性化する作用を有する。本発明の好ましい実施形態の状況における「非常に小さなジャンプ」は、２つの連続するアクセスのメモリ位置が、サブクラスタ内の全ての行がテストされるまでは単一のサブクラスタ内にとどまり、クラスタ内の全ての行がテストされるまでは同一のクラスタ内にとどまり、Ｕセクション内の全ての行がテストされるまでは同一のＵセクション内にとどまり、Ｚブロックの全ての行がテストされるまでは同一のＺブロック内にとどまることを意味することが意図される。次いで、同じ手順がメモリの他の全てのＺブロックに適用される。
【００３３】
好ましい実施形態においては、セル・アクセス、すなわち読出しおよび／または書込み動作が、選択されたブロック内のセルの各行に関してアドレス昇順で実施され、次いでアドレス降順で実施され、あるいはその逆の順序で実施される。
【００３４】
好ましくは、各ブロックはアドレス昇順および／またはアドレス降順で選択される。
【００３５】
テスト・アルゴリズムのアドレス発生器が「非常に小さなジャンプ」条件を検証する場合、遅い立下り故障が活性化され対応する抵抗オープン故障が検出可能になることが理解されるであろう。一群のマーチ・テストに関して、「非常に小さなジャンプ」は論理アドレスが単調に増加し、減少する場合に検証され、それによって、遅い立下り動作につながる抵抗オープン故障部分の検出が可能になる。「非常に小さなジャンプ」テスト条件は、マトリクスのアクセシビリティ制御に応じて上述のツリー設計デコーダに適合させることができる（図２参照）。テスト・アルゴリズムによって、「非常に小さなジャンプ」条件がアドレス昇順およびアドレス降順の両方で検証される場合、２つのメモリ行が同時にイネーブルにされ、読出し動作によって、アクセスされたメモリ・ワードのＡＮＤまたはＯＲ論理が得られ、次いでそれを検出することができる。
【００３６】
本発明の第２の態様によれば、論理データを収容するセルのマトリクスを含む電子回路をテストする方法であって、前記セルのマトリクスは、各々がｎ行のセルを含む複数のＺブロックに分割され、ｎが２以上の整数であり、前記Ｚブロックの各々が複数のＵセクションに分割され、前記各ＵセクションがそれぞれのＺブロックのｎ行のうちの一部を含む方法において、前記マトリクス内の前記セルの各々にアクセスするステップを含み、２つの連続するセル・アクセスを前記同一のＺブロック内の異なるＵセクションで実施させることを特徴とする方法が提供される。
【００３７】
好ましくは、Ｚブロックの各ブロックは昇順および／または降順で選択される。
【００３８】
好ましい実施形態では、各Ｕセクションは複数のクラスタに分割され、各クラスタはそれぞれのＵセクションのセルの行の一部を含んでいる。より好ましくは、各クラスタは、好ましくは複数のサブクラスタに分割され、各サブクラスタは、それぞれのクラスタの行の一部、好ましくは２つを含んでいる。
【００３９】
この方法は、以下のような一連の連続サイクルを含むことができる。すなわち、
ａ）第１のＺブロックを選択すること、
ｂ）選択されたＺブロックのセルからなる各行を、
ｉ）最初の行、
ｉｉ）最後の行、
ｉｉｉ）最初の行プラス１に相当する論理アドレスを有する行、
ｉｖ）最後の行マイナス１に相当する論理アドレスを有する行、
の論理アドレス順でアクセスすること、
ｃ）  選択されたＺブロック中のすべての行がアクセスされるまで、ステップｉ）からｉｖ）を繰り返すこと、
ｄ）  第２のＺブロックを選択すること
を、すべてのＺブロックが選択されるまで繰り返すサイクルである。
【００４０】
したがって、本発明の第２の態様は、遅い立上り動作につながる種類の抵抗オープン故障をカバーするために、マトリクス内で「非常に大きいジャンプ［very big jump］」を実施することからなる。マトリクスのサブブロック間の「非常に大きいジャンプ」が実施された場合、この種の抵抗オープン故障が活性化される。本発明の第２の態様によれば、メモリ内での「非常に大きいジャンプ」は、２つの連続するメモリ・アクセスが、同一のサブクラスタ、同一のクラスタ、または同一のＵセクションに決してとどまってはならないことを意味する（図面の図７参照）。しかし、活性化アクセスは検出アクセスと同一のＺブロックにとどまる必要があり、そうでなければマスキング問題が生じる。これは、異なるＺブロック間でジャンプすることにより、行および列デコーダの故障の影響がマスクされて、Ｚブロックの局所抵抗オープン故障が検出されないまま残るからである。テスト・アルゴリズムによって「非常に大きいジャンプ」条件が検証される場合、メモリ行は選択解除されており、メモリ出力はメモリ設計に応じて誤った論理値の０または１を出力することになり、これは比較的容易に検出される。
【００４１】
さらに本発明によれば、本発明の第１および第２の態様の両方による方法の特徴部分を組み合わせた、電子回路をテストする方法が提供されることが理解されるであろう。
【００４２】
本発明が、上記定義の方法のいずれかを実行する装置に対しても適用されることがさらに理解されるであろう。
【００４３】
本発明のこれらおよび他の態様は、以下で説明する諸実施形態から明らかになり、またそれらを参照することで解明されるであろう。
【００４４】
次に、単なる例示としての本発明の諸実施形態について添付の図面を参照しながら説明する。
【発明を実施するための最良の形態】
【００４５】
図７は、遅い立上りオープン故障につながる抵抗オープン故障をカバーするために必要なジャンプを図示したものである。この図の最初と最後のアドレスは、あるＺブロックの最初と最後のメモリ位置を意味する。
【００４６】
すでに説明したように、以下の動作の間には違いがある。
−  サブブロックがすでにイネーブルの状態で、そのサブブロックの行にアクセスすること。
−  サブブロックとそのサブブロックの行へのアクセスを同時にイネーブルにすること。
【００４７】
本発明の一例示的実施形態によれば、遅い立下りにつながる種類の抵抗オープン故障を検出するためには、マトリクスのサブブロックはすでにイネーブルになっている必要があり、次いでこの方法は、「非常に小さいジャンプ」条件が検証されるように、前のアクセスに最も近い行だけをイネーブルにするステップを含む。このことは、一方の行（偶数／奇数）にアクセスすることによる活性化動作の間にサブブロック、すなわちＺブロック、Ｕセクション、クラスタ、およびサブクラスタがすでにイネーブルの状態にされており、最初のアクセスと同じサブブロックに属する次の行（奇数／偶数）にジャンプするだけでオープン故障を検出できることを意味する。
【００４８】
遅い立上りにつながる種類の抵抗オープン故障を検出するためには、マトリクスのサブブロックとメモリ行の両方を同時にイネーブルにしなければならない。このことは、活性化動作の間にＺブロックのマトリクスのサブブロックをイネーブルにしてはならないことを意味する。各メモリ・アクセスの間に、新しいサブブロックをイネーブルにしなければならない。
【００４９】
Ｘデコーダ・テスト
導入されたＸデコーダ遅延故障に関して、遅い立下りおよび遅い立上りは、メモリに関する２つの異なる故障動作を示す。遅い立下り故障モデルは読出し動作の結果に影響を与え、２つのワードのＡＮＤのように動作する。一方、遅い立上り故障はＧＢＬのディスチャージを無効にし、読出し結果を１にするが、それは、各読出しサイクルごとにロード動作が実施されるからである。
【００５０】
Ｘデコーダの場合、導入された遅延故障は全体のワードに影響を与えるので、故障を含むアクセスの検出は容易である。しかし、ＲＯＭについては、続けてアクセスされるワードが、故障を含むワードより多くの０を含むか、または故障を含むワードと部分的に同一のバイナリ・データを含む場合は、２つのワードのＡＮＤ論理が正しい応答を示すことがあり、遅延故障がマスクされる可能性がある。
【００５１】
ＲＵＴの設計が研究され、Ｘデコーダの配置を知ることが可能になった。Ｘデコーダの外部部分はすべてのＺブロックによって共用されるが、偶数／奇数および内部Ｘデコーダは単一のＺブロックに属する。すべての遅延故障をカバーするためには、同じテスト・アルゴリズムをすべてのＺブロックに適用しなければならない。Ｘデコーダ・ブロックの位置のために、テスト・アルゴリズムは２次元になる。１つのＺブロックの内部Ｘデコーダをテストする間は、Ｚアドレスを一定に保持する必要がある。しかし、Ｘデコーダの内部遅延故障をカバーするためには、同じテストを残りのＺブロックに適用しなければならない。
【００５２】
遅い立下り
Ｘデコーダの遅い立下り故障は以下のように説明できる。すなわち、
−  故障を含むメモリ行は読出しサイクルの後も選択されたままになる。このことは、連続する読出し動作が前の動作の影響を受ける可能性があることを意味する。
−  ＲＵＴのＰスター・モデル［P star model］のシミュレーションによれば、メモリの故障動作が正しいメモリ・ワードと故障を含むメモリ・ワードのＡＮＤ論理であることが示される。
【００５３】
遅い立下り故障を検出する条件は以下のとおりである。
【００５４】
１．ＡＮＤ論理動作はＡＮＤ（Ｄｉ，Ｄｉ＋１）≠Ｄｉ＋１の条件を検証しなければならない。ただし、ＤｉとＤｉ＋１はそれぞれ、連続して読み出される、故障を含むメモリ・ワードと正しいメモリ・ワードの内容である。
【００５５】
２．メモリは２つ以上のＺブロックを含むことができ、各Ｚブロックはそれ自体の内部Ｘデコーダと、ＸおよびＹデコーダの第２の小さな外部部分とを含むので、内部遅延故障をカバーするためには、同じテスト・シーケンスを残りのＺブロックに適用しなければならない。Ｘデコーダ・テストは、各Ｚブロックに適用しなければならない。第１のＺブロックに対するＸデコーダ・テストが終了したとき、同じテストを残りのＺブロックに適用しなければならない。同時に、あるＺブロックの内部Ｘデコーダのテストの間は、Ｚアドレスを一定に保持する必要がある。一定に保持されない場合は、遅い立下り故障モデルがマスクされる。
【００５６】
３．マトリクス内で「非常に小さなジャンプ」を実施するためには、Ｘデコーダによって制御されることおよび遅い立下り故障を活性化することが必要であり、そうでなければ、階層設計のために検出されないことになる。Ｚブロックは、最大６４行までを含むことができるＵセクションに分割される。ＵセクションはＵドライバによって制御され、ＵドライバはＸデコーダの最上位ビットによって制御される。Ｕセクションは４行からなるクラスタに分割される。各クラスタは、２行からなる２つのサブクラスタに分割される。メモリ内の非常に小さなジャンプとは、両方の行がテストされるまでは単一のサブクラスタ内にとどまり、４つの行がテストされるまでは１つのクラスタ内にとどまり、６４行がテストされるまでは１つのＵセクションにとどまり、最終的にはすべての行がテストされるまでは同一のＺブロック内にとどまることを意味する。この条件が守られない場合は、遅い立下り故障の活性化動作はうまく実施されず、これらの故障が検出されないまま残ることになる。
【００５７】
４．ＲＯＭについては、遅い立下り故障による応答を正しく生成できるように各行に２つのビットが追加される。これら２つのビットはＡＮＤ論理動作を検出可能にする固有のデータを含む。この追加により、ＲＯＭの内容に起因する故障のマスキングが回避される。２つの連続する行に追加されたビットがそれぞれ、データ０１および１０を含む場合は、やはり連続する行である故障を含むワードと正しいワードのＡＮＤ論理値は、追加されたビット部分で００になるはずであり、それによって遅い立下り故障の検出が保証されることになる。
【００５８】
結論：
−  各々のＺブロックごとに、内部および外部デコーダをテストしなければならない。遅い立下り故障は、条件１、２、３、および４が守られた場合に完全にカバーされる。
−  電力消費のために、読出し論理値の反転が行われ、そのことは、読出し値が格納値と異なっている可能性があることを意味している。
−  条件１はメモリの実際の内容、すなわちセルの実際の内容に関するものであり、読出し論理値とは無関係である。
【００５９】
遅い立下り故障に対する解決策：
−  両方の行が読み出されるまでは、アクセス位置は、同一のＺブロック内、同一のＵセクション内、同一のクラスタ内、同一のサブクラスタ内にとどまらなければならない。この処理は、４つの行が読み出されるまでは、同一のクラスタ内の次のサブクラスタに適用しなければならない。引き続き、最初のＵセクションが終了するまでは、次の読出し動作は、同一Ｕセクション内の次のクラスタに適用しなければならない。残りの処理は、すべてのＵセクションが読み出されるまでは、同様にして同一ブロック内の次のＵセクションに適用される。これらの動作は、各ＺブロックのＸデコーダのアドレス昇順／降順の考えと一致する。最上位ビットは十分に長い時間、前のアドレスと同じ値に維持されるが、最下位ビットでは急速な変更が実施される。最上位ビットが同じ値に維持されるときは、読出し動作は同じＵセクションで実施される。最上位ビットと最下位ビットの間にある中間ビットが前のアドレスと同じ値に維持されるときは、読出し動作は４つの行からなる同じクラスタ上で実施される。全体のアドレスのビットは前のアドレスと同じ値に維持されるが、最下位２ビットが変化するとき、連続する読出し動作は同一のサブクラスタ、および同一のクラスタ上で実施される。したがって、同一のサブクラスタに属する２つの行の読出し動作は連続して実施され、同一のクラスタに属する４つの行の読出し動作もまた連続して実施され、最後に同一のＵセクションに属する行の読出し動作はアドレス昇順／降順で連続的に実施される。
−  遅い立下り故障の活性化動作は、同じ組の行にとどまり隣接行を読み出すことからなり、このことは「非常に小さなジャンプ」を実施することを意味する。
【００６０】
１つのＺブロックに対するＸデコーダのテスト・パターンの例
２５６行からなるＲＯＭについては、６つのＸビットが必要になる。ＲＯＭは４つのＵセクションに分割され、そのためには２つのＵドライバをデコードする必要がある。４つのＵセクションをデコードするためには、Ｘデコーダの最上位ビットで十分である。
【表１】
2007505440.tif 000003
【表２】
2007505440.tif 000004
【００６１】
アドレス降順もまた同じシステムに従い、遅い立下り故障の範囲を完結することができる。アドレス昇順の間は、ある決定されたサブクラスタの第１の行が故障を含む可能性がある行だと想定され、その行がサブクラスタの第１の読出し動作によって活性化され、同じサブクラスタの第２の行の読出し動作の間に検出される。読出し動作がアドレス降順で適用された場合は、第１の読出し動作の間に第２の行が活性化され、同じサブクラスタの第２の読出しの間に検出される。したがって、遅い立下り故障に関する全体の範囲がカバーされることになる。
【００６２】
遅い立上り故障
Ｘデコーダの遅い立上り故障は以下のように定義される。
−  正しいＸアドレスが適用されたとき、読出しサイクルの間にメモリの行アドレスは選択解除されたままである。
−  ＲＯＭのアナログ・シミュレーションにより、故障を含むメモリ・ワードの読出し結果がバイナリ・ベクトルのＯＮＥであることが示される。
【００６３】
遅い立上り故障を検出する条件は以下のとおりである。
−  遅い立上り故障は、ブロック間で「非常に大きなジャンプ」が実施された場合に活性化することができる。すなわち、ＺブロックのＵセクション間、Ｕセクションのクラスタ間、および、最後にクラスタの両方のサブクラスタ間でのジャンプが実施された場合である。単純な見方をすると、この種の遅延故障は検出が容易であると考えられるが、活性化条件が守られない場合は、読出し動作で正しい内容が生成されてしまうことがあり、遅い立上り故障が検出されないまま残されることになる。
【００６４】
以下の動作には違いがある。すなわち、
−  ブロックがすでにイネーブルにされた状態でそのブロックの行にアクセスすること。
−  ブロックをイネーブルにし、同時にそのブロックの行にアクセスすること。
【００６５】
第１の動作は遅い立上り故障を正しく活性化しない。なぜならば、その行を含むブロックがすでにイネーブルにされており、故障が検出されないままになる可能性があるからである。第２の動作は遅い立上り故障を活性化する正しい方法である。なぜならば、読出しアクセスの間に、その行を含むブロックもまたイネーブルにされるからである。このことにより、ブロックと行のどちらにも同時にアクセスできることを同時にテストすることが可能になる。ＲＯＭの階層設計により様々なブロック・レベルが存在することになる。アクセス行に関するすべてのブロック・レベルが同時にイネーブルにされた場合は、遅い立上り故障を検出することができる。決定されたＺブロック内で、様々なレベルの遅い立上り故障につながる、Ｕセクション、クラスタ、サブクラスタ、および各行をテストしなければならない。問題が行レベルまで還元された場合には生じないかもしれない内部遅延故障まで考慮することになるので、故障カバー範囲は最大になる。
【００６６】
結論：
−  遅い立上り問題は、Ｕセクション内部およびＵセクション間、クラスタ内部およびクラスタ間、サブクラスタ内部およびサブクラスタ間、ならびに最後に各行間で考慮しなければならない。
【００６７】
Ｘデコーダ・テストに関する最終結論：
−  遅い立上り故障を検出するためには、各Ｚブロックのメモリ行をアドレス昇順およびアドレス降順で読み出さなければならない。Ｘデコーダ・テストについては、Ｙデコーダ入力を一定値に保持することができるので、行あたり１ワードを読み出すだけでよい。このアルゴリズムは、あるＺブロックのすべての行をアドレス昇順で読み出し、その後でアドレス降順で読み出すことからなる。遅い立上り故障については、階層設計の故障を含むブロックおよび故障を含む行を検出するために、「非常に大きなジャンプ」が必要であるが、これは、すべての行が読み出されるまで最初の行と最後の行の間でジャンプするという考えと一致する。
【００６８】
遅い立下り故障
各々のＺブロックごとに実施する
開始
Ｙデコーダを一定値に保つ；
すべての行をアドレス昇順で読み出す；
すべての行をアドレス降順で読み出す；
終了
遅い立上り故障
各々のＺブロックごとに実施する
開始
Ｙデコーダを一定値に保つ；
最初の行を読み出す；
最後の行を読み出す；
最初＝最初＋１；
最後＝最後−１；
すべての行が読み出されるまで処理を繰り返す；
終了
【００６９】
Ｙデコーダ・テスト
Ｙデコーダ遅延故障は２つの部分、すなわち、遅い立上り故障と遅い立下り故障とに分けられる。各部分は２つの異なる故障の影響を有する。すなわち、ワード・レベルの影響とビット・レベルの影響である。Ｙデコーダについては、遅い立上り故障の検出は容易であり、各故障あたり１つのパターンだけが必要である。遅い立下り故障には、故障を含む位置と正常な位置のデータの間の相互作用のために、２つ以上の位置が関与することになる。２つの位置のＡＮＤまたはＯＲ故障動作は正常な応答を生成することがあり、故障がマスクされることがあり得る。遅い立下り故障がワードのただ１つのビットだけに影響を与えるときは、正しい応答が得られる確立が７５％になり、故障カバー範囲が大きく低下することになる。
【００７０】
ＧＢＬおよびＬＢＬの遅い立上り故障を検出するためには「非常に大きいジャンプ」動作に基づくアルゴリズムが適用されるが、この考えは、各読出しサイクルの間に新しいＧＢＬと新しいＬＢＬを選択することからなる。新しいＧＢＬが選択されたときはロード動作がテストされるが、ＬＢＬの新しい選択により、そのアクセスをテストすることが可能になる。ＧＢＬおよびＬＢＬの遅い立上り故障は、誤った読出し値がそれぞれ常に０から１へのときに検出される。すべての組合せが実施されるので、すべての遅い立上り故障が検出される。
【００７１】
ＬＢＬの遅い立下り故障を検出するために、「非常に小さなジャンプ」動作に基づくアルゴリズムが適用される。小さなジャンプの考えは、Ｕセクションごとに１つのＧＢＬを選択し、両方のＬＢＬが読み出されるまでは、そのＧＢＬにとどまることからなる。故障のマスキングを避けるためには、セルの内容を考慮しなければならない。故障を含むＬＢＬによって生成されるＡＮＤ論理値の７５％は正しい応答を示す。
【００７２】
Ｘデコーダ遅延故障を検出するために必要なパターンの数は、ＹおよびＺデコーダに必要なパターン数より多くなる。Ｙデコーダのテスト・アルゴリズムがＸデコーダ・テストとマージされた場合は、Ｙデコーダの故障カバー範囲が増大し故障のマスキングが解消される。Ｙデコーダ・テストは、異なる行に対して繰り返されることによってＯＲおよびＡＮＤ故障動作をカバーすることができる。Ｘデコーダ・テストに関する「非常に小さなジャンプ」の考えは、Ｙデコーダ・テストの「非常に小さなジャンプ」の考えとマージされており、一方、Ｘデコーダ・テストの「非常に大きなジャンプ」の考えは、Ｙデコーダ・テストの「非常に大きなジャンプ」の考えとマージされる。
【００７３】
故障を含むＹデコーダはビット・レベルでのメモリ動作に影響を与え、故障カバー範囲を減少させる可能性があるが、マージによって故障カバー範囲を再度増加させ故障のマスキングが解消される。
【００７４】
第２のテスト方法を適用して、より少ないパターンで、ビット・レベルのＹデコーダの遅い立下り故障を完全にカバーすることができる。この方法は、セルの内容を考慮してマスキングの問題を回避することからなる。
【００７５】
同一ＧＢＬのＬＢＬについてのＡＮＤ故障動作
Ｕセクションごとに各ＧＢＬに対して実施する
（Ｃ１，０）を読み出す、ただしＣ１∈ＬＢＬ１
（Ｃ２，１）を読み出す、ただしＣ２∈ＬＢＬ２
コメント：ＡＮＤ論理が０となり、ＬＢＬ１の遅い立下りが検出される
（Ｃ３，０）を読み出す、ただしＣ３∈ＬＢＬ２
（Ｃ４，１）を読み出す、ただしＣ４∈ＬＢＬ１
コメント：ＡＮＤ論理が０となり、ＬＢＬ２の遅い立下りが検出される
終了
ＧＢＬのＯＲ故障動作
同じビットを表すＧＢＬの各組ごとに実施する
（Ｃ１，１）を読み出す、ただしＣ１∈ＧＢＬ１
（Ｃ２，０）を読み出す、ただしＣ２∈ＧＢＬ２
コメント：ＯＲ論理が１となり、不正な値として検出することができる
（Ｃ３，１）を読み出す、ただしＣ３∈ＧＢＬ２
（Ｃ４，０）を読み出す、ただしＣ４∈ＧＢＬ１
コメント：どちらのＧＢＬも同一のビットを表し、異なるビットを表すＧＢＬの間に相互作用は観察されない
終了
【００７６】
内部Ｙデコーダ位置のために、Ｙデコーダ・テスト・アルゴリズムは３次元でなければならない。各Ｚブロックはそれ自体の内部Ｙデコーダを含み、さらにＸデコーダは、Ｙデコーダによって制御されるＧＢＬとＬＢＬを含むＵセクションを選択する。
【００７７】
Ｙデコーダ・テストでは、すべての内部Ｙデコーダを考慮しなければならない。内部Ｙデコーダは、ＺブロックとＵセクションに存在する。内部Ｙデコーダの遅延故障をカバーするために、ＸおよびＺアドレスは、Ｙデコーダ・テストを内部Ｙデコーダに適用できるようにするパラメータであると考えられる。
【００７８】
上で説明した条件が守られ、Ｙデコーダ・テストの間に内部Ｙデコーダが考慮された場合は、故障カバー範囲が拡大する。
【００７９】
Ｚデコーダ・テスト
Ｚデコーダ・テストは他のデコーダに関するものより比較的容易である。遅い立上り故障は、Ｚブロックの第１の読出し動作の間に容易に検出される。実際には、ＺデコーダはＵセクションをイネーブルにするが、Ｚブロック全体をイネーブルにはしない。したがって、遅い立上り故障は、ＺブロックのレベルではなくＵセクションのレベルでテストしなければならない。しかし、Ｕセクションに関する遅い立上り故障は、Ｘデコーダ・テストの間にすでにテスト済みである。Ｚブロック・レベルの遅い立上り故障はまだ実施されていない。これによって冗長テスト・パターンを回避することができる。
【００８０】
遅い立下りに関するテストの第２の部分は、ビット・レベルでメモリ内容に影響を与える。センス・アンプをバスに接続するマルチプレクサは、Ｚデコーダにより制御される。Ｚデコーダまたはマルチプレクサのレベルでの遅い立下り故障は、２つのビットのＯＲ論理値のように動作する。正しい応答が生成される可能性があり遅延故障は容易にマスクされる可能性がある。
【００８１】
マスキングの問題により、Ｚデコーダ・テストの間にメモリの内容を考慮する必要がある。故障の影響はビット・レベルで観察され、故障カバー範囲を狭める。遅い立下り故障を検出するためにアクセスされるメモリ位置は、各Ｚブロックおよびマルチプレクサをカバーする。Ｚデコーダ・テストの間に読み出されるメモリ位置は、どれが立下り故障の検出を支援できるかが分かるように選択しなければならない。すべてのワード・ビットをカバーする必要がある。ＺブロックがデータＺＥＲＯおよびＯＮＥを含むとき、テスト・アルゴリズムは以下のように表すことができる。
−  最初のＺブロックを選択する
−  内容が００…００であるメモリ位置を読み出す
−  次のＺブロックを選択する
−  内容が１１１…１であるメモリ位置を読み出す
−  すべてのＺブロックが読み出されるまで処理を繰り返す
−  最後のＺブロックを選択する
−  内容が００…００であるメモリ位置を読み出す
−  最後−１のＺブロックを選択する
−  その内容が１１１…１であるメモリ位置を読み出す
【００８２】
メモリの設計を変更して、このアルゴリズムを適用する条件を検証することができる。各ＺブロックにＺＥＲＯおよびＯＮＥを追加することができるが、マルチプレクサの遅延をカバーするために同じアルゴリズムを修正することもできる。
【００８３】
上記を要約して、遅い立下りおよび遅い立上りにつながる抵抗オープン故障をカバーする例示的テスト・アルゴリズムを提示する。
−  テスト・アルゴリズム
【００８４】
行デコーダ・テスト（図６参照）
各Ｚブロックに対して実行する  ／＊行デコーダでの遅い立下りの検出＊／
開始
列デコーダを一定アドレスに保つ；
開始
アドレス昇順ですべての行にアクセスする；
アドレス降順ですべての行にアクセスする；
終了
／＊行デコーダでの遅い立上りの検出＊／
以下を繰り返す
最初の行にアクセスする；
最後の行にアクセスする；
最初の行にアクセスする；
最初＝最初＋１；
最後＝最後−１；
すべての行がアクセスされるまで；
終了
【００８５】
列デコーダ・テスト（図８参照）
各ブロックに対して実行する／＊列デコーダでの遅い立下りの検出＊／
開始
行デコーダを一定アドレスに保つ；
開始
アドレス昇順ですべての列にアクセスする；
アドレス降順ですべての列にアクセスする；
終了；
／＊列デコーダでの遅い立上りの検出＊／
以下を繰り返す
最初の列にアクセスする；
最後の列にアクセスする；
最初の列にアクセスする；
最初＝最初＋１；
最後＝最後−１；
すべての列がアクセスされるまで；
終了；
【００８６】
Ｚブロック・デコーダ・テスト（図９参照）
行および列デコーダを一定アドレスに保つ；
開始  ／＊Ｚブロック・デコーダでの遅い立下りの検出＊／
アドレス昇順ですべてのＺブロックにアクセスする；
アドレス降順ですべてのＺブロックにアクセスする；
終了；
開始  ／＊Ｚブロック・デコーダでの遅い立上りの検出＊／
以下を繰り返す
最初のＺブロックにアクセスする；
最後のＺブロックにアクセスする；
最初のＺブロックにアクセスする；
最初＝最初＋１；
最後＝最後−１；
すべてのＺブロックがアクセスされるまで；
終了
【００８７】
本発明は抵抗オープン故障カバー範囲を大幅に広げるものである。その理由は、「非常に小さなジャンプ」および「非常に大きなジャンプ」が、遅い立下りおよび遅い立上りの両方の動作につながる抵抗オープン故障を活性化するための主要なアイデアになっているからである。これらの条件が検証されるとき、遅い立下り動作は２つのメモリ・ワードの同時アクセスにつながり、メモリ出力は２つのメモリ・ワードのＡＮＤまたはＯＲ論理として動作する。一方、遅い立上りは、メモリ設計に応じて誤った論理値０または１を与える。好ましくは、小さいジャンプおよび大きいジャンプは、列デコーダおよびＺブロック・デコーダにも適用され、すべてのメモリ・デコーダの抵抗オープン故障がカバーされることになる。
【００８８】
ここまで本発明の実施形態について説明してきたが、これは単に例示のためだけのものである。したがって、当業者にとっては、添付の特許請求の範囲に規定された本発明の範囲を逸脱することなく、記載の実施形態に対する修正形態や変形形態を実施し得ることは明らかであろう。さらに、本明細書で使用される「含む［comprise］」という用語が他の要素やステップを除外するものではないこと、「ある［a または an］」という用語が複数を除外しないこと、本特許請求の範囲に記載のいくつかの手段についての諸機能を単一のプロセッサまたは他の装置で実施できることが理解されるであろう。
【図面の簡単な説明】
【００８９】
【図１】２５６行の場合の、Ｚブロックの階層設計を示す概略図である。
【図２】Ｘアドレス・ビットによるマトリクスのアクセシビリティ制御を示す概略図である。
【図３】対応する選択ラインを備えたマトリクス設計を示す回路図である。
【図４】ゲート間およびゲート内オープン故障を示す従来のアドレス・デコーダの回路構成図である。
【図５ａ】メモリ・セルによって示される可能性がある正しい動作（上図）および遅い立下り動作（下図）のグラフ表示を示す図である。
【図５ｂ】メモリ・セルによって示される可能性がある正しい動作（上図）および遅い立上り動作（下図）のグラフ表示を示す図である。
【図６】本発明の一例示的実施形態による方法で使用する行デコーダ・テストを示す概略流れ図である。
【図７】本発明の一例示的実施形態による、遅い立上りオープン故障につながる抵抗オープン故障をカバーするために必要なジャンプを示す概念図である。
【図８】本発明の一例示的実施形態による方法で使用する列デコーダ・テストを示す概略流れ図である。
【図９】本発明の一例示的実施形態による方法で使用するＺブロック・デコーダ・テストを示す概略流れ図である。
【図１】
2007505440.tif 000005
【図２】
2007505440.tif 000006
【図３】
2007505440.tif 000007
【図４】
2007505440.tif 000008
【図５ａ】
2007505440.tif 000009
【図５ｂ】
2007505440.tif 000010
【図６】
2007505440.tif 000011
【図７】
2007505440.tif 000012
【図８】
2007505440.tif 000013
【図９】
2007505440.tif 000014
【国際調査報告】
2007505440.tif 000015
2007505440.tif 000016
2007505440.tif 000017