(57)【要約】【課題】内蔵メモリ回路の出力データビットの不良を検出する組込テスト回路の占有面積を低減する。【解決手段】メモリ回路（１）に対して設けられる出力スキャンパス回路（２ａ，２ｂ）において、メモリ回路の出力の各ビットと期待値との一致判定結果を所定数ビット単位で１ビット信号に縮退し、その後、複数の縮退信号を判定回路（３ａ）に与えて、これらの縮退信号の論理レベルの一致／不一致を判定し、１ビットの最終判定結果信号（ＰＡＳＳ）を生成する。【選択図】        図１
2004326893.tif 000002
【特許請求の範囲】
【請求項１】
複数ビット幅のデータを出力する被試験回路の不良を検出する試験回路装置であって、
前記被試験回路の出力ビットに対応して配置され、データ転送時シリアルにデータを転送するシリアル転送パスを形成することのできる複数のスキャンフリップフロップ回路を備え、各前記スキャンフリップフロップ回路は、前記被試験回路から与えられた対応の出力データビットと期待値とを比較する比較回路と、前記比較回路の出力信号とシリアルに転送されるデータの一方を選択する選択回路と、前記選択回路の出力信号に対応する信号を格納するフリップフロップとを備え、
前記複数のスキャンフリップフロップ回路の所定のスキャンフリップフロップ回路の選択回路の出力信号を並列に受けて所定の論理処理を施して出力する論理回路を備え、前記論理回路の入力ビット数は、前記複数のスキャンフリップフロップ回路の数よりも少ない、試験回路装置。
【請求項２】
前記選択回路は、動作モード指示信号に従って前記シリアルに転送されるデータを選択する第１の選択ゲートと、前記第１の選択ゲートの出力信号と前記比較回路の出力信号の一方を選択して出力する第２の選択ゲートとを備え、前記所定のスキャンフリップフロップ回路の第２の選択ゲートの出力信号が前記論理回路へ与えられる、請求項１記載の試験回路装置。
【請求項３】
前記選択回路は、動作モード指示信号に従って、前記シリアルに転送されるデータを選択する第１の選択ゲートと、前記第１の選択ゲートの出力信号と前記比較回路の出力信号の一方を選択して出力する第２の選択ゲートとを備え、前記所定のスキャンフリップフロップ回路の第１の選択ゲートの出力信号が前記論理回路へ与えられる、請求項１記載の試験回路装置。
【請求項４】
前記複数のスキャンフリップフロップ回路は、複数のグループに分割され、かつ各グループにおいてデータ転送モード時にはシリアルにデータを転送するシリアル転送パスを構成し、
前記論理回路は、前記シリアル転送パスにおいて前記複数のグループの同じ位置のスキャンフリップフロップ回路の選択回路の出力信号を受ける、請求項１記載の試験回路装置。
【請求項５】
前記シリアル転送パスは、各前記グループにおいてデータ転送方向が異なる、請求項４記載の試験回路装置。
【請求項６】
前記シリアル転送パスは、各前記グループにおいて同じ方向にデータを転送する、請求項４記載の試験回路装置。
【請求項７】
前記シリアル転送パスは、各前記グループにおいて個々に形成される、請求項４記載の試験回路装置。
【請求項８】
前記複数のスキャンフリップフロップ回路は、複数のグループに分割され、かつ各グループにおいてデータ転送モード時にシリアルにデータを転送するシリアル転送パスを構成し、
前記論理回路は、前記シリアル転送パスにおいて前記複数のグループの異なる位置のスキャンフリップフロップ回路の選択回路の出力信号を受ける、請求項１記載の試験回路装置。
【請求項９】
前記論理回路は、各前記グループから異なる数の出力信号を受ける、請求項８記載の試験回路装置。
【請求項１０】
前記複数のスキャンフリップフロップ回路は、複数のグループに分割され、かつ各前記グループにおいてデータ転送モード時にシリアルにデータを転送するシリアル転送パスを構成し、
前記論理回路は、各グループに対応して配置され、対応のグループの所定のスキャンフリップフロップ回路の選択回路の出力信号をそれぞれ受ける複数の第１の論理ゲートを備える、請求項１記載の試験回路装置。
【請求項１１】
前記論理回路は、さらに、前記複数の第１の論理ゲートの出力信号を受ける第２の論理ゲートをさらに備える、請求項１０記載の試験回路装置。
【請求項１２】
テスト動作時、前記フリップフロップ回路の格納データを前記シリアル転送パスを介して転送する制御信号を生成して前記複数のフリップフロップ回路へ与える制御回路をさらに備える、請求項１記載の試験回路装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体回路装置をテストする試験回路装置に関し、特に半導体メモリ回路と共に共通のチップに集積化される組込み試験回路装置に関する。より特定的には、この発明は、半導体メモリ回路の出力データビットに従って不良ビットが存在するかを判定する機能を備える試験回路装置に関する。
【０００２】
【従来の技術】
ＡＳＩＣ（特定用途向け半導体集積回路装置）においては、メモリ回路（ＲＡＭ：ランダム・アクセス・メモリ）が組み込まれることが多い。このような半導体集積回路装置内に組み込まれたメモリ回路が正しく動作するかを確認するために、外部からの制御によりこのメモリ回路を直接テストすることが要求される。このため、内部のメモリ回路に対し、外部から直接データの入出力を制御することができるように、テスト用回路が組み込まれることが多い。集積回路装置内部で、メモリ回路に不良ビットが存在するかを判定する自己診断機能を備えるテスト回路の構成の一例が、特許文献１（特開２００２−１５７８９９号公報）に示されている。
【０００３】
この特許文献１に示される半導体集積回路装置装置においては、擬似乱数を発生する乱数発生回路を用いてメモリ回路に対するアドレスおよび書込データを生成する。この乱数発生回路は、アドレス数の周期でその擬似乱数の発生パターンが一巡する。全アドレスにデータを書込んだ後、再び、この乱数発生回路の擬似乱数パターンに従ってアドレス指定して、比較回路で読出データと書込データとを比較する。アドレスレジスタおよびデータ入力レジスタがシフトレジスタを構成しており、これらのレジスタにシフト動作を行なわせることにより、書込データが、所定サイクル前のアドレスに等しくなり、書込時と読出時とで、同じデータがデータ入力レジスタに格納され、期待値として利用される。比較回路において全出力ビットの論理レベルの一致／不一致を判定する。この比較回路の判定結果信号を外部へ出力することにより、不良ビットが存在するかを判定する。
【０００４】
【特許文献１】
特開２００２−１５７８９９号公報
【０００５】
【発明が解決しようとする課題】
上述のようなメモリ回路からの読出データと期待値の比較を行ない、全ビットについて、正常であるかを判定する回路を利用する場合、比較回路の規模が大きくなる。すなわち、比較回路は、全ビットについて、期待値と読出データビットとの一致／不一致を検出し、その検出結果が、すべて正常であるかを判定することが要求される。したがって、全ビットについての正常／不良検出結果を１ビットの判定結果信号に縮退する場合、この１ビット判定結果信号を生成する回路の規模が大きくなり、占有面積が増大する。前述の特許文献１においては、最終の判定結果を出力する比較回路の構成については明確には示していない。
【０００６】
また、全ビットについて期待値との一致検出結果を並列に転送して１ビットの最終判定結果信号を生成する場合、その配線レイアウト面積が増大し、テスト回路の占有面積が大きくなるという問題が生じる。
【０００７】
それゆえ、この発明の目的は、集積回路装置の内部回路の機能診断を小占有面積で行なうことのできる試験回路装置を提供することである。
【０００８】
【課題を解決するための手段】
この発明に係る試験回路装置は、複数ビット幅のデータを出力する被試験回路の不良を検出する試験回路装置であり、被試験回路の出力ビットに対応して配置され、データ転送時にシリアルにデータを転送するシリアル転送パスを形成することのできる複数のスキャンフリップフロップ回路を含む。各スキャンフリップフロップ回路は、被試験回路から与えられる対応のビットと期待値とを比較する比較回路と、この比較回路の出力信号とシリアルに転送されるデータの一方を選択する選択回路と、この選択回路の出力信号に対応する信号を格納するフリップフロップとを含む。
【０００９】
この発明に係る試験回路装置は、さらに、複数のスキャンフリップフロップ回路の所定のスキャンフリップフロップ回路の選択回路の出力信号を並列に受けて所定の論理処理を施して出力する論理回路を含む。この論理回路の入力ビット数は、複数のスキャンフリップフロップ回路の数よりも少ない。
【００１０】
不良ビットの存在を検出する論理回路に対し、全ビットの良／不良を同時に判定せず、所定数のビット単位でスキャンフリップフロップ回路において判定を行なう。論理回路に対しては、スキャンフリップフロップ回路のうちの所定のスキャンフリップフロップ回路の出力信号が伝達される。したがって、この論理回路の入力数が複数のスキャンフリップフロップ回路の数よりも低減され、応じてその回路規模が低減され、また、この論理回路に対する配線レイアウト面積も低減される。
【００１１】
【発明の実施の形態】
［実施の形態１］
図１は、この発明の実施の形態１に従う試験回路装置の構成を概略的に示す図である。この試験回路装置は、メモリ回路（ＲＡＭ：ランダム・アクセス・メモリ）１からの８ビットの出力データＤＯ＜７＞−ＤＯ＜０＞を受け、不良ビットが存在するかを判定するＲＡＭテスト回路４で構成される。
【００１２】
このＲＡＭテスト回路４は、メモリ回路１の１４ビット出力端子ＤＯ＜７＞−ＤＯ＜４＞からの出力データビットＦＤＯ＜７＞−ＦＤＯ＜４＞に対して設けられるテストスキャンパス回路２ａと、メモリ回路１の下位４ビットのデータ出力端子ＤＯ＜３＞−ＤＯ＜０＞からのデータビットをＦＤＯ＜３＞−ＦＤＯ＜０＞に対して設けられるテストスキャンパス回路２ｂを含む。
【００１３】
これらのテストスキャンパス回路２ａおよび２ｂは、シリアル入力ＳＩＤおよびシリアル出力ＳＯＤがシリアルに接続されて内部でデータ転送モード時シリアルに他データを転送するスキャンパスを構成する。これらのテストスキャンパス回路２ａおよび２ｂの各々は、データ入力端子ＩＤＯ＜３＞−ＩＤＯ＜０＞とデータ出力端子Ｐ＜３＞−Ｐ＜０＞およびＱ＜３＞−Ｑ＜０＞とクロック入力端子ＣＬＫと制御信号入力端子群を含む。
【００１４】
これらのテストスキャンパス回路２ａおよび２ｂに対する制御信号は、テストモードフィードバック信号ＴＭＦＢ、テストモードシフトイン信号ＴＭＳＩ、比較制御信号ＣＭＰ１ＬＡ、ＣＭＰ０ＬＡ、ＣＭＰ１ＬＢおよびＣＭＰ０ＬＢを含む。比較制御信号ＣＭＰ０ＬＡ等は、期待値データに基づいて生成される。
【００１５】
ＲＡＭテスト回路４は、さらに、テストスキャンパス回路２ａの出力端子Ｐ＜２＞およびＰ＜０＞からの信号ＰＤＯ＜６＞およびＰＤＯ＜４＞とテストスキャンパス回路２ｂの同じ位置の出力端子Ｐ＜２＞およびＰ＜０＞からの出力信号ＰＤＯ＜２＞およびＰＤＯ＜０＞を受けて、不良ビットの存在／不存在を示すパス／フェイル指示信号ＰＡＳＳを生成するＡＮＤ回路（論理回路）３ａを含む。
【００１６】
このＡＮＤ回路３ａに対し、テストスキャンパス回路２ａおよび２ｂからそれぞれ２ビットの信号を伝達することにより、不良ビット検出のための論理回路を、４入力ＡＮＤ回路３ａで構成することができ、全ビット（８ビット）を受ける構成に比べて、ゲートのレイアウト面積を低減でき、またＡＮＤ回路３ａに対して信号を伝達する配線の占有面積を低減することができる。
【００１７】
メモリ回路１に対しては、８ビットの入力データＤＩ＜７＞−ＤＩ＜０＞、データ書込を制御するライトイネーブル信号ＷＥが与えられ、また５ビットのアドレス信号Ａ＜４＞−Ａ＜０＞が与えられる。
【００１８】
図２および図３は、図１に示すメモリ回路１の構成を概略的に示す図である。図２には、メモリ回路１の上位ビットに対応する部分の構成を示し、図３には、メモリ回路１の下位ビットに対応する部分の構成を示す。図２において、メモリ回路１は、それぞれが行列状に配列される３２ビットのメモリセルを有するメモリセルアレイＭＣＡ４−ＭＣＡ７を含むメモリマットＭＭＵと、アドレスビットＡ＜４＞−Ａ＜２＞をデコードし、メモリセル行を選択するワード線選択信号Ｘ０Ｕ−Ｘ７Ｕを生成してメモリセルアレイＭＣＡ４−ＭＣＡ７へ与えるＸデコーダ１０と、アドレスビットＡ＜１＞およびＡ＜０＞をデコードし、列選択信号Ｙ０Ｕ−Ｙ３Ｕを生成するＹデコーダ１２と、Ｙデコーダ１２からの列選択信号Ｙ０Ｕ−Ｙ３Ｕに従ってメモリセルアレイＭＣＡ７−ＭＣＡ４それぞれから、１列を選択する列選択回路１４ｕを含む。
【００１９】
メモリセルアレイＭＣＡ４−ＭＣＡ７においては、８行４列にメモリセルが配置され、３２ビットのメモリセルそれぞれに、アドレス０から３１が割当てられる。
【００２０】
列選択回路１４ｕは、メモリセルアレイＭＣＡ７−ＭＣＡ４それぞれに対応して配置されるカラムセレクタＣＯＳＥＬ７−ＣＯＳＥＬ４を含む。これらのカラムセレクタＣＯＳＥＬ７−ＣＯＳＥＬ４には共通に、Ｙデコーダ１２からの列選択信号Ｙ０Ｕ−Ｙ３Ｕが与えられる。
【００２１】
メモリ回路１は、さらに、メモリセルアレイＭＣＡ７−ＭＣＡ４それぞれに対応して配置され、活性化時、列選択回路１４ｕにより選択された列へデータビットＤＩ＜７＞−ＤＩ＜４＞を転送するライトドライバＷＤ７−ＷＤ４と、メモリセルアレイＭＣＡ７−ＭＣＡ４それぞれに対応して配置され、活性化時、対応のカラムセレクタＣＯＳＥＬ７−ＣＯＳＥＬ４により選択された列から読出されたデータを増幅して出力データビットＤＯ＜７＞−ＤＯ＜４＞を生成するセンスアンプＳＡ７−ＳＡ４を含む。ライトドライバＷＤ７−ＷＤ４は、ライトイネーブル信号ＷＥがＬレベルのときに活性化される。
【００２２】
図３を参照して、メモリ回路１は、上位ビットの構成と同様、下位４ビットデータＤＩ＜３＞−ＤＩ＜０＞およびＤＯ＜３＞−ＤＯ＜０＞に対応して配置されるメモリセルアレイＭＣＡ３−ＭＣＡ０を含むメモリマットＭＭＬを含む。メモリセルアレイＭＣＡ３−ＭＣＡ０に対して、Ｙデコーダ１２からの列選択信号Ｙ０Ｌ−Ｙ３Ｌに従って列を選択する列選択回路１４ｌが配置される。列選択回路１４ｌは、メモリセルアレイＭＣＡ３−ＭＣＡ０それぞれに対応して配置されるカラムセレクタＣＯＳＥＬ７−ＣＯＳＥＬ４を含む。
【００２３】
メモリセルアレイＭＣＡ３−ＭＣＡ０は、それぞれ、図２に示すメモリセルアレイＭＣＡ７−ＭＣＡ４と同様、８行４列に配置される３２ビットのメモリセルを有し、それぞれアドレス０から３２が割当てられる。Ｘデコーダ１０は、アドレスビットＡ＜４＞−Ａ＜２＞に従ってワード線選択信号Ｘ０Ｌ−Ｘ７Ｌを生成してメモリセルアレイＭＣＡ３−ＭＣＡ０の１行を選択する。
【００２４】
Ｙデコーダ１２は、アドレスビットＡ＜１＞−Ａ＜０＞に従って列選択信号Ｙ０Ｌ−Ｙ３Ｌを生成し、メモリセルアレイＭＣＡ３−ＭＣＡ０それぞれにおいて、４列のうちの１列を特定する。カラムセレクタＣＯＳＥＬ３−ＣＯＳＥＬ０が、この列選択信号Ｙ０Ｌ−Ｙ３Ｌに従って対応のメモリセルアレイから、１列を選択する。
【００２５】
カラムセレクタＣＯＳＥＬ３−ＣＯＳＥＬ０に対応して、それぞれ入力データビットＤＩ＜３＞−ＤＩ＜０＞を受け、活性化時対応の選択列にデータを書込むライトドライバＷＤ３−ＷＤ０が配置され、また、活性化時、選択列上のメモリセルのデータを増幅して出力データビットＤＯ＜３＞−ＤＯ＜０＞を生成するセンスアンプＳＡ３−ＳＡ０が設けられる。５ビットのアドレス信号Ａ＜４＞−Ａ＜０＞を与えることにより、３２アドレスのうちの１アドレスが指定され、メモリセルアレイＭＣＡ７−ＭＣＡ０それぞれから１ビットのメモリセルが選択され、合計８ビットのデータの入出力が行なわれる。
【００２６】
図４は、図１に示すテストスキャンパス回路２ａおよび２ｂの構成の一例を示す図である。図４においては、これらのテストスキャンパス回路２ａおよび２ｂは同一構成を有するため、テストスキャンパス回路２を代表として示す。
【００２７】
図４において、テストスキャンパス回路２は、データ転送モード時、シフトイン端子ＳＩＤとシフトアウト端子ＳＯＤの間にシリアルデータ転送パスを形成するスキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０を含む。これらのスキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０は、同一構成を有しており、図４においては図面を簡略化するために、スキャンフリップフロップ回路ＳＦＦ３の構成要素に対してのみ参照番号を付す。
【００２８】
スキャンフリップフロップ回路ＳＦＦ３は、入力ノードＩＤＯ＜３＞に与えられるデータビットを受けるインバータ２０と、インバータ２０の出力信号と比較制御信号ＣＭＰ１ＬおよびＣＭＰ０Ｌを受ける複合ゲート回路２１と、シリアルに転送されるデータＳＩとテストモードシフトイン信号ＴＭＳＩとテストモードフィードバック信号ＴＭＦＢとシリアルアウト信号とを受ける複合ゲート回路２２と、複合ゲート回路２１および２２が出力信号に従って内部信号ＪＤＯＤを生成するＮＯＲゲート２３と、ＮＯＲゲート２３の出力データＪＤＯＤをクロック信号ＣＬＫに同期して取込みラッチする（キャプチャする）フリップフロップ（ＦＦ）２４を含む。
【００２９】
フリップフロップ２４の格納データＪＤＯＱが、スキャンフリップフロップ回路ＳＦＦ３の複合論理ゲート２２へ与えられ、また次段のスキャンフリップフロップ回路ＳＦＦ２に対するシフトアウトデータとして出力される。
【００３０】
スキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０それぞれにおいて、内部の信号ＪＤＯＤから信号Ｐ＜３＞−Ｐ＜０＞が生成され、またフリップフロップ２４の格納データＪＤＯＱに従って出力データＱ＜３＞−Ｑ＜０＞が生成される。
【００３１】
複合論理ゲート２１は、等価的に、比較制御信号ＣＭＰ１Ｌとメモリ回路１からの対応のデータビットＩＤＯを受けるＯＲゲートと、インバータ２０の出力信号と比較制御信号ＣＭＰ０Ｌを受けるＯＲゲートと、これらのＯＲゲートの出力信号を受けるＮＡＮＤゲートを含む。
【００３２】
複合論理ゲート２２は、シリアルに前段のスキャンフリップフロップ回路から転送されるシフトインデータＳＩとテストモードシフトイン信号ＴＭＳＩとを受けるＯＲゲートと、テストモードフィードバック信号ＴＭＦＢとフリップフロップ２４の格納データＪＤＯＱを受けるＯＲゲートと、これらのＯＲゲートの出力信号を受けるＡＮＤゲートとを含む。
【００３３】
この複合論理ゲート２２およびＮＯＲゲート２３によりこのスキャンフリップフロップ回路ＳＦＦの出力信号を選択する選択回路が構成され、ＮＯＲゲート２３が第１の選択ゲートに対応し、複合論理ゲート２２が、第２の選択ゲートに対応する。
【００３４】
スキャンフリップフロップ回路ＳＦＦ３およびＳＦＦ１の信号入力ノードＣＭＰ０Ｌに比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ０ＬＡが与えられ、スキャンフリップフロップ回路ＳＦＦ２およびＳＦＦ０の信号入力ノードＣＭＰ０Ｌには、比較制御信号ＣＭＰ１ＬＢおよびＣＭＰ０ＬＢが与えられる。これらの比較制御信号は期待値に基づいて生成されるため、偶数ビットおよび奇数ビットで期待値を異ならせることができる。
【００３５】
次に、この図１に示すＡＮＤ回路３ａを不良ビット検出用論理回路として用いるテスト動作について説明する。ＡＮＤ回路３ａを用いる場合、各クロックサイクル毎に、パス／フェイル指示信号ＰＡＳＳを生成することができる。まず、非蓄積比較モードが設定される。図５は、この非蓄積比較モードにおける信号の流れを太線で示す図である。この非蓄積比較動作モードにおいては、信号ＴＭＳＩおよびＴＭＦＢが“１”に設定される。比較制御信号は、期待値“０”の比較を行なう場合には、比較制御信号入力ノードＣＭＰ１Ｌを“１”、ＣＭＰ０Ｌを“０”に設定する。逆に、期待値“１”と比較を行なう場合には、比較制御信号入力ノードＣＭＰ１Ｌを“０”、比較制御信号入力ノードＣＭＰ０Ｌを“１”に設定する。
【００３６】
テストモードシフトイン信号ＴＭＳＩおよびテストモードフィードバック信号ＴＭＦＢが共に“１”であるため、複合論理ゲート２２の出力信号は“０”であり、ＮＯＲゲート２３がインバータとして動作し、複合論理ゲート２１の出力信号を選択する。
【００３７】
与えられたデータＩＤＯ（ノードとそこに与えられる信号を同一符合で示す）が期待値と一致している場合には、複合論理ゲート２１において、両ＯＲゲートの出力信号が“１”となり、ＮＯＲゲート２３からの出力信号ＪＤＯＤが“１”となる。一方、与えられたデータＩＤＯが期待値と異なる場合には、複合論理ゲート２１において、入力段のＯＲゲートの一方の出力信号が“０”となり、その出力信号が“１”となる。応じて、ＮＯＲゲート２３からの出力信号ＪＤＯＤが“０”となる。
【００３８】
フリップフロップ２４にクロック信号ＣＬＫを与えることにより、このＮＯＲゲート２３の出力信号ＪＤＯＤがフリップフロップ２４に取り込まれて格納される（キャプチャされる）。
【００３９】
図１に示すＡＮＤ回路３ａに対し、テストスキャンパス回路２ａおよび２ｂの出力信号が全ビット与えられている場合には、非蓄積比較モードを用いて、アドレスを変更してメモリ回路１のデータの読出を行なうことにより、各クロックサイクルで、パス／フェイル指示信号ＰＡＳＳに基づいて、不良ビットの存在を識別することができ、応じて不良アドレスを検出することができる。しかしながら、８ビットのうち４ビットの判定結果が１クロックサイクルにおいてＡＮＤ回路３ａに与えられているだけであるため、続いて、ＡＮＤ演算モードを実行する。この場合、データ転送方向は、全て、テストスキャンパス回路において同一であり、データ転送方向を通常のシリアル転送モード時のデータ転送方向と同一としてＡＮＤ演算を行なうことが出来る。
【００４０】
図６は、このＡＮＤ演算モード時の信号の流れを太線で示す図である。ＡＮＤ演算モードにおいては、信号ＴＭＳＩおよびＴＭＦＢが共に“０”に設定される。一方、比較制御信号ＣＭＰ１ＬＢ、ＣＭＰ０ＬＢ、ＣＭＰ１ＬＡ、およびＣＭＰ０ＬＡがすべて“１”に設定される。スキャンフリップフロップ回路ＳＦＦ２においては、インバータ２０の出力信号の状態に係らず、複合論理ゲート２１の出力信号がＬレベルとなり、ＮＯＲゲート２３が、複合論理ゲート２２の出力信号を選択する。
【００４１】
信号ＴＭＳＩおよびＴＭＳＢが共に“０”であるため、複合論理ゲート２２からは、対応のフリップフロップ２４の格納データＪＤＯＱ（Ｑ＜２＞）とスキャンフリップフロップ回路ＳＦＦ３のフリップフロップ２４からのシフトインビットＱ＜３＞をＮＡＮＤ演算処理した結果が出力される。ＮＯＲゲート２３がインバータとして動作するため、このスキャンフリップフロップ回路ＳＦＦ２においてその出力信号ＪＤＯＤは、データビットＱ＜３＞およびＱ＜２＞をＡＮＤ演算（・）した結果に等しい。
【００４２】
スキャンフリップフロップ回路ＳＦＦ０においても同様であり、ＮＯＲゲート２３から、複合論理ゲート２２によるＮＡＮＤ演算結果の反転値Ｑ＜１＞・Ｑ＜０＞が出力信号Ｐ＜０＞として出力される。この信号Ｐ＜０＞およびＰ＜２＞が、図１に示すＡＮＤ回路３ａへ与えられる。これにより、全ビットについてのＡＮＤ演算に基づいてパス／フェイル指示信号ＰＡＳＳを生成することができる。このため、アドレスを変更しながら、メモリ回路１のデータを読出し、各アドレス毎に非蓄積比較モードおよびＡＮＤ演算モードを実行することにより、各アドレス毎に不良ビットの存在、および不良アドレスを検出することができる。
【００４３】
なお、このメモリ回路１からデータ読出時のアドレス印加態様は、メモリ回路１の入力部にアドレスのスキャンパス回路が存在する場合には、全周期系列でアドレスが１ビットずつシフトインされて、異なるアドレスが順次指定されればよい。またこれに代えて、外部からアドレス指定されるまたはＢＩＳＴ（ビルトイン・セルフテスト回路）がアドレスを生成して与える場合には、これらの回路から与えられればよい。
【００４４】
図７は、この発明の実施の形態１におけるテストスキャンパス回路２ａおよび２ｂの動作を制御するテスト制御回路の構成の一例を示す図である。図７において、テスト制御回路３０は、クロック信号ＣＬＫと動作モード指示信号ＯＰＭＯＤＥを受けるＡＮＤゲートＡＧ１と、比較活性化信号ＣＭＰＥＮを受けるインバータＩＶ１と、期待値信号ＥＸＰＡを受けるインバータＩＶ２と、期待値信号ＥＸＰＢを受けるインバータＩＶ３と、インバータＩＶ１の出力信号と期待値信号ＥＸＰＡを受けるＯＲゲートＯＧ１と、インバータＩＶ１およびＩＶ２の出力信号を受けるＯＲゲートＯＧ２と、インバータＩＶ１の出力信号と期待値信号ＥＸＰＢを受けるＯＲゲートＯＧ３と、インバータＩＶ１およびＩＶ３の出力信号を受けるＯＲゲートＯＧ４を含む。
【００４５】
期待値信号ＥＸＰＡおよびＥＸＰＢは、個々にその論理レベルを設定することができ、たとえば期待値信号ＥＸＰＡは、偶数番号のビットに対応する期待値信号であり、期待値信号ＥＸＰＢは、奇数番号の出力データビットに対応する期待値信号である。
【００４６】
テスト制御回路３０は、さらに、ＡＮＤゲートＡＧ１の出力信号とＯＲゲートＯＧ１の出力信号を受けて比較制御信号ＣＭＰ０ＬＡを生成するＯＲゲートＯＧ５と、ＡＮＤゲートＡＧ１の出力信号とＯＲゲートＯＧ２の出力信号を受けて比較制御信号ＣＭＰ１ＬＡを生成するＯＲゲートＯＧ６と、ＡＮＤゲートＡＧ１の出力信号とＯＲゲートＯＧ４の出力信号を受けて比較制御信号ＣＭＰ０ＬＢを生成するＯＲゲートＯＧ７と、ＡＮＤゲートＡＧ１およびＯＲゲートＯＧ４の出力信号を受けて比較制御信号ＣＭＰ１Ｂを生成するＯＲゲートＯＧ８と、保持モード活性化信号ＦＢＥＮとＡＮＤゲートＡＧ１の出力信号を受けてテストモードフィードバック信号ＴＭＦＢを生成するＮＯＲゲートＮＯＧ１と、ＡＮＤゲートＡＧ１の出力信号とシフトモード活性化信号ＳＩＥＮとを受けてテストモードシフトイン信号ＴＭＳＩを生成するＮＯＲゲートＮＯＧ２を含む。
【００４７】
このテスト制御回路３０へ与えられる期待値信号および制御信号は、外部または組込み試験回路（ＢＩＳＴ）から与えられる。
【００４８】
メモリ回路（ＲＡＭ）１からの出力データＤＯ＜７：０＞を、テストスキャンパス回路４は、データＦＤＯ＜７：０＞として受ける。次に、この図７に示すテスト制御回路３０の動作について説明する。
【００４９】
［ＯＰＭＯＤＥ＝０の場合］
この場合、ＡＮＤゲートＡＧ１の出力信号は“０”であり、ＯＲゲートＯＧ５−ＯＧ８がバッファ回路として動作し、一方、ＮＯＲゲートＮＯＧ１およびＮＯＧ２が、インバータとして動作する。したがって、テストモードフィードバック信号ＴＭＦＢは、保持モード活性化信号ＦＢＥＮの反転信号となり、またテストモードシフトイン信号ＴＭＳＩが、シフトモード活性化信号ＳＩＥＮの反転信号となる。比較活性化信号ＣＭＰＥＮが“０”のときには、インバータＩＶ１の出力信号は“１”となり、ＯＲゲートＯＧ１−ＯＧ４の出力信号が“１”となり、応じてＯＲゲートＯＧ５−ＯＧ８からの比較制御信号ＣＭＰ０ＬＡ、ＣＭＰ１ＬＡ、ＣＭＰ０ＬＢおよびＣＭＰ１ＬＢはすべて“１”となる。
【００５０】
比較活性化信号ＣＭＰＥＮが“１”のときには、インバータＩＶ１の出力信号が“０”となり、ＯＲゲートＯＧ１がバッファ回路として動作する。ＯＲゲートＯＧ５−ＯＧ８のすべてがバッファ回路として動作している。したがって、比較制御信号ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢが、期待値信号ＥＸＰＡおよびＥＸＰＢと同じ論理レベルの信号となり、一方、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢが、期待値信号ＥＸＰＡおよびＥＸＰＢの論理レベルを反転した信号となる。
【００５１】
（ｉ）  初期設定モード：
この初期設定モードにおいては、比較活性化信号ＣＭＰＥＮを“０”、保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＮを共に“０”に設定する。この状態においては、テスト制御回路３０から出力される信号ＣＭＰ１ＬＢ、ＣＭＰ０ＬＢ、ＣＭＰ１ＬＡ、ＣＭＰ０ＬＡ、ＴＭＳＩおよびＴＭＦＢがすべて“１”に設定される。この場合、図８にその信号の流れを示すように、スキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０それぞれにおいて複合論理ゲート２１および２２の出力信号が共に“０”となり、応じて、ＮＯＲゲート２３の出力信号ＪＤＯＤが“１”となる。クロック信号ＣＬＫを与えることにより、フリップフロップ２４に、“１”が設定される。
【００５２】
（ｉｉ）  蓄積比較モード：
この蓄積比較モードにおいては、保持モード活性化信号ＦＢＥＮを“１”に設定し、かつシフトモード活性化信号ＳＩＥＮを“０”に設定する。この場合、テスト制御回路３０において、ＮＯＲゲートＮＯＧ１からのテストモードフィードバック信号ＴＭＦＢが“０”となり、一方、テストモードシフトイン信号ＴＭＳＩが“１”となる。この状態で、期待値“０”と比較を行なう場合には、比較活性化信号ＣＭＰＥＮを“１”に設定し、期待値信号ＥＸＰＡおよびＥＸＰＢを共に“０”に設定する。この場合、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢが共に“１”となり、一方、比較制御信号ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢが共に“０”となる。逆に、期待値“１”と比較を行なう場合には、信号ＣＭＰＥＮ、ＥＸＰＡ、およびＥＸＰＢをすべて“１”に設定する。この場合、期待値“０”の状態と逆となり、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢが“０”となり、比較制御信号ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢが“１”となる。
【００５３】
蓄積比較動作モードにおいては、図９にその信号の流れを示すように、入力信号ＩＤＯ＜３＞−ＩＤＯ＜０＞がそれぞれ、スキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０それぞれにおいて複合論理ゲート２１により対応の期待値との一致／不一致が検出され、ＮＯＲゲート２３から判定結果を示す信号ＪＤＯＤが出力される。この蓄積比較動作モード時においてはクロック信号ＣＬＫによりフリップフロップ２４に信号ＪＤＯＤを格納する。
【００５４】
蓄積比較動作モードの前には、初期設定モードが実行され、フリップフロップ２４には“１”が格納されている。したがって、不良ビットが検出されない間は、フリップフロップ２４には“１”が格納される。不良ビット検出時には、フリップフロップ２４に“０”が格納される。アドレスを全アドレスにわたって変化させて、メモリ回路１からのデータの読出を行なう。この蓄積比較モードを用いることにより、メモリ回路１の出力データビットのテスト結果が、対応のフリップフロップ２４に保持される。このフリップフロップ２４に格納されたデータを、以下に説明するシフトモードで読出すことにより、不良ビットの位置を検出することができる。この不良ビット（データ端子単位）を、たとえば冗長ビットで置換する。
【００５５】
（ｉｉｉ）  直列シフトモード：
この直列シフトモードにおいては、比較活性化信号ＣＭＰＥＮおよび保持モード活性化信号ＦＢＥＮを“０”に設定し、シフトモード活性化信号ＳＩＥＮを“１”に設定する。この状態では、図７に示すように、シフトモード活性化信号ＳＩＥＮが、ＮＯＲゲートＮＯＧ２により反転されて、テストモードシフトイン信号ＥＭＳＩが“０”となる。残りの信号については、インバータＩＶ１の出力信号が“１”であるため、信号ＣＭＰ１ＬＢ、ＣＭＰ０ＬＢ、ＣＭＰＬＡ、ＣＭＰ０ＬＡが“１”となり、また、テストモードフィードバック信号ＴＭＦＢが、保持モード活性化信号ＦＢＥＮが“０”であるため、“１”となる。
【００５６】
この直列シフトモードの場合、図１０にその信号の流れを太線で示すように、スキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０それぞれにおいて、複合論理ゲート２１の出力信号は“０”に固定され、一方、複合論理ゲート２２は、そのシフトイン端子ＳＩに与えられた信号を反転して伝達する状態に設定される。ＮＯＲゲート２３が、インバータとして動作するため、フリップフロップ２４へは、シフトイン端子ＳＩへ与えられたデータが格納される。このフリップフロップ２４の出力は、次段のスキャンフリップフロップ回路のシフトイン端子ＳＩに結合されており、このテストスキャンパス回路２において、フリップフロップ２４を介して直列にデータを転送するシリアルスキャンパスが構成され、クロック信号ＣＬＫをトグルすることにより、順次フリップフロップ２４を介してデータを転送することができる。
【００５７】
（ｉｖ）  非蓄積比較動作モード：
この非蓄積比較動作モードにおいては、保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＥＮを共に“０”に設定する。これにより、テスト制御回路３０からのテストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩが共に“１”となる。これにより、図５に示される信号の流れを実現することができる。期待値“０”と比較を行なう場合には、信号ＣＭＰＥＮ、ＥＸＰＡおよびＥＸＰＢをすべて“０”に設定する。この場合には、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢが“１”となり、比較制御信号ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢが  “０”となる。逆に、期待値“１”と比較を行なう場合には、信号ＣＭＰＥＮ、ＥＸＰＡおよびＥＸＰＢをすべて“１”に設定する。これにより、期待値“０”のときと逆に、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢが“０”となり、比較制御信号ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢが“１”となる。
【００５８】
（ｖ）  ＡＮＤ演算モード：
このＡＮＤ演算モードにおいては、比較活性化信号ＣＭＰＥＮを“０”に設定し、保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＥＮを共に“１”に設定する。したがって、ＯＲゲートＯＧ１−ＯＧ４の出力信号はすべて、“１”となり、比較制御信号ＣＭＰ１ＬＡ、ＣＭＰ１ＬＡ、ＣＭＰ０ＬＢおよびＣＭＰ１ＬＢが“１”となる。一方、ＮＯＲゲートＮＯＧ１およびＮＯＧ２により、テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩが“０”となる。これにより、図６に示す信号の流れを実現することができる。
【００５９】
この動作モード指示信号ＯＰＮＯＤＥが“０”の場合には、複数の動作モードを、信号ＣＭＰＥＮ、ＥＸＰＡ、ＥＸＰＢ、ＦＢＥＮおよびＳＩＥＮで制御することができる。この動作モード指示信号ＯＰＭＯＤＥが“０”のときには、クロック信号ＣＬＫと独立に、このテスト制御回路３０の出力信号の状態を設定することができる。
【００６０】
なお、通常動作モード時においては、このテストスキャンパス回路４は用いられない。この場合、メモリ回路１の出力信号ＩＤＯ＜ｉ＞とテストスキャンパス回路４の出力信号Ｑ＜ｉ＞の一方を選択するセレクタにより、データメモリ回路１からのデータビットが選択されて、対応のロジックへ与えられてもよい。また、これに代えて、信号ＴＭＳＩおよびＴＭＦＢおよびＣＭＰ０Ｌを“１”に設定し、信号ＣＭＰ１Ｌを“０”に設定して複合論理ゲート２１およびＮＯＲゲート２３を介して信号Ｐ＜ｉ＞メモリ回路の出力データビットＩＤＯ＜ｉ＞に従って生成されて図示しないロジックへ与えられてもよい。
【００６１】
［ＯＰＭＯＤＥが“１”のとき］
動作モード指示信号ＯＰＭＯＤＥが“１”の場合には、ＡＮＤゲートＡＧ１がバッファ回路として動作し、クロック信号ＣＬＫと同相の信号を出力する。したがって、クロック信号ＣＬＫが“０”のときには、上述の動作モード指示信号ＯＰＭＯＤＥが“０”と同じ動作モードを実現することができる。一方、クロック信号ＣＬＫが“１”の場合には、ＡＮＤゲートＡＧ１の出力信号が“１”となり、信号ＣＭＰＥＮ、ＥＸＰＡ、ＥＸＰＢ、ＦＢＥＮおよびＳＩＥＮの状態に係らず、テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩが“０”となり、一方、比較制御信号ＣＭＰ１ＬＢ、ＣＭＰ０ＬＢ、ＣＭＰ１ＬＡおよびＣＭＰ０ＬＡが“１”となる。これらの信号の論理レベルは、図６に示すＡＮＤ演算モードにおける論理レベルと等しく、したがって、クロック信号ＣＬＫが“１”のときに、ＡＮＤ演算モードが設定される。
【００６２】
したがって、クロック信号ＣＬＫが“０”のときに、メモリ回路１からのデータビットについての良／不良判定動作を行なえば、クロック信号ＣＬＫが“１”のときに、ＡＮＤ演算を実行して、パス／フェイル指示信号ＰＡＳＳを生成することができる。
【００６３】
図１１は、非蓄積比較モードおよびＡＮＤ演算モードを行なったときの図７に示す回路の動作を示すタイミング図である。図１１において、＠ＣＭＰ１が、非蓄積比較動作モード期間を示し、＠ＡＮＤは、ＡＮＤ演算モード期間を示す。イか、図１１を参照して、動作モード指示信号ＯＰＭＯＤＥが“１”のときの動作について説明する。
【００６４】
比較活性化信号ＣＭＰＥＮ、期待値信号ＥＸＰＡおよびＥＸＰＢを“１”に設定し、保持モード活性化信号ＦＢＥＮおよびシフトイン信号ＳＩＥＮを“０”に設定する。この場合、クロック信号ＣＬＫの状態に係らず、ＯＲゲートＯＧ５およびＯＧ７からの比較制御信号ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢは、“１”に維持される。一方、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢは、クロック信号ＣＬＫに同期して変化する。また、ＮＯＲゲートＮＯＧ１およびＮＯＧ２からの信号ＴＭＦＢおよびＴＭＳＩは、クロック信号ＣＬＫと逆相で変化する。
【００６５】
サイクルＮ−１においてメモリ回路１から出力されたデータｄｏ１は、非蓄積比較動作期間＠ＣＭＰ１において、その一部のビットについて図１に示すＡＮＤ回路３ａにより比較される。クロック信号ＣＬＫが“１”となると、テストスキャンパス回路４においてフリップフロップ２４が対応のＮＯＲゲート２３の出力信号を読込み格納し、かつ転送する。したがって、このデータｄｏ１について各フリップフロップ２４においてクロック信号ＣＬＫの立上がりに同期して取り込まれて転送されて、データｐ１がデータＱＤＯ＜７：０＞として出力される。信号ＴＭＦＢおよびＴＭＳＩが“０”であるため、各フリップフロップ２４のデータについて２ビット単位でＡＮＤ演算が行なわれ、ＮＯＲゲート２３から各２ビットについての演算結果を示すデータｐ１ａが出力される。したがってデータＰＤＯ＜６＞は、データビットＱＤＯ＜６＞およびＱＤＯ＜７＞についてのＡＮＤ演算結果を示し、データＰＤＯ＜４＞は、データビットＱＤＯ＜４＞およびＱＤＯ＜５＞についてのＡＮＤ演算結果を示す。同様に、データビットＰＤＯ＜２＞は、データビットＱＤＯ＜２＞およびＱＤＯ＜３＞についのＡＮＤ演算結果を示し、データビットＰＤＯ＜０＞は、データビットＱＤＯ＜０＞およびＱＤＯ＜１＞についてのＡＮＤ演算結果を示す。したがってこのデータｐ１ａが図１に示すＡＮＤ回路３へ与えられ、ＡＮＤ演算が行なわれて、パス／フェイル指示信号ｐａｓｓ１が出力される。この場合のパス／フェイル指示信号ｐａｓｓ１は、データビットＱＤＯ＜７＞−ＱＤＯ＜０＞についてのＡＮＤ演算結果を示す。
【００６６】
サイクルＮにおいて、クロック信号ＣＬＫが“０”に立下がると、信号ＴＭＦＢおよびＴＭＳＩが“１”となり、テストスキャンパス回路４においては、各スキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０それぞれにおいて、複合論理ゲート２１が出力信号が選択されて出力されるため、非蓄積比較動作が再び開始される。この場合、メモリ回路１から読出されたデータＤＯに対応するデータｐ２が出力される。このとき、フリップフロップ２４は、ラッチ状態にあり、クロック信号ＣＬＫの立上がりに同期して取込まれたデータｐ１が格納された状態に維持される。
【００６７】
サイクルＮ＋１において再びクロック信号ＣＬＫが“１”に立上がると、再び、信号ＴＭＦＢおよびＴＭＳＩが“０”となり、フリップフロップがデータｐ２を取込みラッチし、かつ出力する。このとき、また信号ＴＭＦＢおよびＴＭＳＩが“０”となり、ＡＮＤ演算がデータｐ２について実行され、２ビット単位でのＡＮＤ演算結果を示すデータｐ２ａが出力され、パス／フェイル指示信号ｐａｓｓ２が生成される。以降、クロック信号ＣＬＫの立上がりおよび立下がりに同期してＡＮＤ演算期間＠ＡＮＤおよび非蓄積比較動作期間＠ＣＭＰ１が繰返し設定されて判定動作が実行される。
【００６８】
期待値信号ＥＸＰＡおよびＥＸＰＢが“１”のときには、メモリ回路１から出力されるデータＦＤＯ＜７：０＞がデータＱＤＯ＜７：０＞として出力され、２ビット単位のＡＮＤ演算結果が各サイクルのＡＮＤ演算期間＠ＡＮＤにおいてＰＤＯ＜７：０＞として出力され、そのうち４ビットの信号がＡＮＤ回路３へ与えられる。したがって、メモリ回路１からの出力データＦＤＯ＜７：０＞が全て期待値と同じ“１”のときには、パス／フェイル指示信号ＰＡＳＳが、“１”となり、不良ビットの存在を検出することができる。
【００６９】
図１２は、メモリ回路からの出力データビットの期待値が“０”のときの動作を示すタイミング図である。以下、図１２を参照して、期待値が“０”のときの動作について説明する。
【００７０】
期待値が“０”のときには、期待値信号ＥＸＰＡおよびＥＸＰＢを“０”に設定する。比較活性化信号ＣＭＰＥＮを“１”、保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＥＮは“０”に設定する。この場合、テストスキャンパス回路４においては、各スキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０それぞれにおいて、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢが“１”に固定されるため、非蓄積比較期間＠ＣＭＰ０において比較制御信号ＣＭＰ０ＬＡおよびＣＭＰＬＢが“０”となると、その入力データビットＦＤＯ＜７：０＞の反転値がデータＰＤＯ＜７：０＞として出力される。したがって、期待値“０”とデータビットとが一致している場合には、入力データビットの反転値“１”が出力され、一致検出示される。
【００７１】
この状態で、図１１に示すタイミング図と同様、クロック信号ＣＬＫの立上がりに応じて、信号ＴＭＦＢおよびＴＭＳＩが“０”となると、シフト動作が行なわれるため、データＰＤＯ＜７：０＞は、２ビット単位のＡＮＤ演算結果を示すデータとなる。したがって、ＡＮＤ回路３において、パス／フェイル指示信号ｐａｓｓ１およびｐａｓｓ２を、それぞれデータｐ１ａおよびｐ２ａに基づいて生成することにより、全ビットが“０”であるかについての判定結果を示す信号を生成することができる。
【００７２】
クロック信号ＣＬＫが“０”にされると、信号ＴＭＦＢおよびＴＭＳＩが“１”となり、再びメモリ回路から与えられるデータｄｏ３についての非蓄積比較動作モードが実行される。
【００７３】
したがって、動作モード指示信号ＯＰＭＯＤＥを“１”に設定し、メモリ回路の出力データビットの期待値に応じて期待値信号ＥＸＰＡおよびＥＸＰＢを設定することにより、クロック信号ＣＬＫの各サイクルで、メモリ回路から読出されるデータについてのパス／フェイル判定結果を１サイクル遅れたサイクルにおいて出力することができ、各サイクルで、ＡＮＤ演算を実行することができる。
【００７４】
なお、偶数ビットおよび奇数ビットについて異なる期待値について一致／不一致を判定する場合、期待値“１”のビットに対しては、対応のデータビットと同一の論理レベルの信号が出力されるため、一致検出時には“１”が出力され、期待値が“０”のビットについては、入力データビットの論理レベルの反転値が出力されるため、一致時には、“１”が出力される。従って、隣接ビットにおいて期待値が異なる場合においても、期待値とメモリ回路からの対応のデータビットとの論理レベルが一致している場合には、“１”が出力されるため、同様、隣接２ビットについてＡＮＤ演算を行う事により、シリアルスキャンパスにおいて隣接する２ビットについての期待値との一致／不一致を検出することができ、その検出結果をＡＮＤ回路３ａへ与えることにより、全ビットの良／不良を正確に判定することが出来る。
【００７５】
なお、上述の説明においては、メモリ回路１は、８ビットデータを出力している。しかしながら、このメモリ回路１の出力するデータビットの数は、用いられる用途に応じて適当に定められればよい。
【００７６】
テストスキャンパス回路においても、２つのグループに分割される必要はなく、さらに多くのグループに分割されてもよい。
【００７７】
以上のように、この発明の実施の形態１に従えば、テストスキャンパス回路の出力信号を間引いてＡＮＤ回路へ与えており、テスト回路の規模を低減することができ、また配線占有面積を低減することができる。
【００７８】
［実施の形態２］
図１３は、この発明の実施の形態２に従うテスト制御回路の構成を示す図である。この図１３に示すテスト制御回路３０の構成は、以下の点が、図７に示すテスト制御回路３０の構成と異なっている。すなわち、動作モード指示信号ＯＰＭＯＤＥに対し、ＡＮＤゲートＡＧ２と、クロック信号ＣＬＫに同期してＡＮＤゲートＡＧ２の出力信号を取りこむフリップフロップ（ＦＦ）３５ａと、このフリップフロップ３５ａの出力信号ＯＰＭを反転してＡＮＤゲートＡＧ２へ与えるインバータＩＶ４が設けられる。ＡＮＤゲートＡＧ２は、動作モード指示信号ＯＰＭＯＤＥとインバータＩＶ４の出力信号を受ける。したがって、動作モード指示信号ＯＰＭＯＤＥが“１”のときには、１クロックサイクル毎に、このフリップフロップ３５ａの出力信号ＯＰＭの論理レベルが変化する。このフリップフロップ３５ａの出力信号ＯＰＭがＯＲゲートＯＧ５−ＯＧ８およびＮＯＲゲートＮＯＧ１およびＮＯＧ２へ与えられる。
【００７９】
また、ＯＲゲートＯＧ５−ＯＧ８およびＮＯＲゲートＮＯＧ１およびＮＯＧ２の出力に、クロック信号ＣＬＫに同期して与えられた信号を取込みラッチしかつ出力するフリップフロップ３５ｂ−３５ｇが設けられる。この図１３に示すテスト制御回路３０の他の構成は図７に示すテスト制御回路３０の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【００８０】
図１４は、図１３に示すテスト制御回路を用いた場合の期待値が“０”のときのテスト動作を示すタイミング図である。以下、図１４を参照して、この図１３に示す回路の動作について説明する。
【００８１】
［ＯＰＭＯＤＥが“０”のとき］
この状態においては、クロック信号ＣＬＫが１回以上与えられると、フリップフロップ３５ａが、クロック信号ＣＬＫに同期して、ＡＮＤゲートＡＧ２の出力信号を取込み格納するため、このフリップフロップ３５ａの出力信号ＯＰＭが、“０”に設定され、ＯＲゲートＯＧ５−ＯＧ８がバッファ回路として動作し、ＮＯＲゲートＮＯＧ１およびＮＯＧ２がインバータとして動作する。これらのゲートの出力信号はフリップフロップ３５ｂ−３５ｇを介して転送されるため、フリップフロップ３５ｂ−３５ｇからは、テスト制御回路３０へ与えられる信号が、１クロックサイクル遅れて出力される。すなわち、テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩは、それぞれ保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＥＮよりも１クロックサイクル遅れて変化する。
【００８２】
テストスキャン回路４においては、クロック信号ＣＬＫに従ってフリップフロップが与えられたデータを取りこみ出力する。メモリ回路からは、クロック信号に従ってデータが読み出されてテストスキャン回路４へ転送される。従って、図１１および１２に示す動作と同様の動作を実現することができる。
【００８３】
すなわち、動作モード指示信号ＯＰＭＯＤＥが“０”のときには、フリップフロップ３５ｂ−３５ｇの作用により、出力信号ＣＭＰ０ＬＡ、ＣＭＰ１ＬＡ、ＣＰＭ０ＬＢ、ＣＭＰ１ＬＢ、ＴＭＳＩ、およびＴＭＦＢが、１クロックサイクル遅れて変化することを除いて、、図７に示すテスト制御回路３０と同じテスト動作を実現することができる。
【００８４】
［ＯＰＭＯＤＥが“１”のとき］
動作モード指示信号ＯＰＭＯＤＥが“１”のときには、フリップフロップ３５ａの出力信号ＯＰＭは、クロック信号ＣＬＫの各サイクルごとにその論理レベルが変化する。フリップフロップ３５ａの出力信号ＯＰＭが“１”となると、フリップフロップ３５ｂ−３５ｅの入力信号は“１”になり、フリップフロップ３５ｆおよび３５ｇの入力信号が“０”となる。したがって、次のクロックサイクルにおいてフリップフロップ３５ｂ−３５ｇの出力信号が変化し、比較制御信号ＣＭＰ０ＬＡ、ＣＭＰ１ＬＡ、ＣＭＰ０ＬＢおよびＣＭＰ１ＬＢが“１”となり、またテストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩが“０”となる。したがって、この状態により、図１１および図１２に示すように、ＡＮＤ演算期間＠ＡＮＤが設定される。
【００８５】
フリップフロップ３５ａの出力信号ＯＰＭが“０”となると、ＯＲゲートＯＧ５−ＯＧ８がバッファ回路として動作し、ＮＯＲゲートＮＯＧ１およびＮＯＧ２がインバータとして動作する。したがって、フリップフロップ３５ｆおよび３５ｇには、保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＥＮの反転信号がそれぞれ伝達される。
【００８６】
フリップフロップ３５ｂ−３５ｇに対しては、比較活性化信号ＣＭＰＥＮの論理レベルに応じてその入力信号の論理レベルが決定される。比較活性化信号ＣＭＰＥＮが“１”のときには、ＯＲゲートＯＧ１−ＯＧ４がバッファ回路として動作するため、フリップフロップ３５ｂ−３５ｇは、期待値信号ＥＸＰＡおよびＥＸＰＢの論理レベルに応じた信号が伝達される。すなわち、フリップフロップ３５ｂおよび３５ｄへは、期待値信号ＥＸＰＡおよびＥＸＰＢと同一論理レベルの信号が伝達され、フリップフロップ３５ｃおよび３５ｅへは、期待値信号ＥＸＰＡおよびＥＸＰＢの論理レベルの反転信号が伝達される。したがって、この場合には、図１１および図１２に示すように、非蓄積比較動作モードが設定される。
【００８７】
図１４は、図１３に示す回路の動作を示すタイミング図である。以下図１４を参照して、図１３に示す回路の動作モード指示信号ＯＰＭＯＤＥが“１”に設定されたときの動作について説明する。
【００８８】
図１４においては、比較活性化信号ＣＭＰＥＮを“１”に設定し、期待値信号ＥＸＰＡおよびＥＸＰＢをともに“０”に設定し、かつ保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＥＮを“０”に設定する。この状態で、連続的にクロック信号ＣＬＫを供給する。
【００８９】
クロック信号ＣＬＫの立上がりに従って、メモリ回路へアクセスが行なわれデータが読出される。サイクルＮ−１に読出されたデータｄｏ１は、フリップフロップ３５ａの出力信号ＯＰＭが“１”であっても、テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩは、前のサイクル（Ｎ−２）の信号ＯＰＭの状態に対応しており、テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩは“１”であり、このメモリ回路１からのデータｄｏ１に対応して、データＰＤＯ＜７：０＞として、データｐ１が反転されて出力される。
【００９０】
サイクルＮにおいては、クロック信号ＣＬＫの立上がりに応答して、フリップフロップ３５ａの出力信号ＯＰＭが“０”に立下がる。このクロック信号ＣＬＫの立上がりに応答して、フリップフロップ３５ｂ−３５ｇがラッチ状態となり、前のサイクルＮ−１において与えられた信号を出力する。したがって、この場合には、テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩが“０”となり、比較制御信号ＣＭＰ１ＬＡ、ＣＭＰ１ＬＢ、ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢが“１”となる。したがって、ＡＮＤ演算期間＠ＡＮＤが設定され、テストスキャンパス回路４内の各スキャンフリップフロップ回路において、フリップフロップが与えられたデータを取込み、その出力ＱＤＯ＜７：０＞が、前のサイクルにおける入力信号ｐ１に等しくなる。
【００９１】
このとき、テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩが“０”であるため、各スキャンフリップフロップ回路において、図６に示すように、ＡＮＤ演算結果を示すデータｐ１ａが出力されて、ＡＮＤ回路３へ与えられ、パス／フェイル指示信号ｐａｓｓ１が生成される。すなわち、フリップフロップ３５ａの出力信号ＯＰＭが“０”のとき、ＡＮＤ演算が実行される。
【００９２】
クロック信号ＣＬＫがサイクルＮ＋１において“１”となると、フリップフロップ３５ａの出力信号ＯＰＭが再び“１”となる。このときには、サイクルＮ＋１においてメモリ回路１から読出されたデータｄｏ２が、テストスキャンパス回路４の各スキャンフリップフロップ回路へ与えられ、期待値“０”との一致／不一致の比較が実行され、その比較判定結果が出力データｐ２としてデータ端子ＰＤＯ＜７：０＞に出力される。このサイクルＮ＋１においては、フリップフロップは、その入力に与えられていたＡＮＤ演算結果ｐ１ａをラッチし出力する。
【００９３】
以降、各サイクルＮ＋２、Ｎ＋３において、フリップフロップ３５ａの出力信号ＯＰＭに従って、ＡＮＤ演算期間＠ＡＮＤと非蓄積比較動作モード期間＠ＣＭＰ０とが交互に繰返される。これにより、先の実施の形態１と同様、メモリ回路から読出されるデータについて、クロック信号ＣＬＫの１クロックサイクルおきごとに、判定結果を生成することができる。
【００９４】
クロック信号ＣＬＫが高速であり、テストスキャンパス回路４の判定動作が、このような高速のクロック信号ＣＬＫに追随できない場合においても、クロック信号ＣＬＫを、ＡＮＤゲートＡＧ２およびフリップフロップ３５ａおよびインバータＩＶ４で分周して、低速のクロック信号を等価的に生成することにより、正確に、テスト判定結果を出力することができる。また、制御信号ＦＢＥＮ、ＳＩＥＮ、ＣＭＰＥＮの論理レベルは固定されるため、制御が容易となる。
【００９５】
以上のように、この発明の実施の形態２に従えば、テスト制御回路として、クロック信号を等価的に分周して、フリップフロップ回路を用いてテストスキャンパス回路４へ、テスト制御信号を与えており、クロック信号ＣＬＫの各１サイクル期間を、ＡＮＤ演算期間および非蓄積比較動作モード期間に設定することができる。
【００９６】
［実施の形態３］
図１５は、この発明の実施の形態３に従うテストスキャンパス回路の構成を概略的に示す図である。この図１５に示す出力テストスキャンパス回路４は、以下の点が、図１に示すテストスキャンパス回路４とその構成が異なる。すなわち、パス／フェイル指示信号ＰＡＳＳを生成するＡＮＤ回路３ｂに対し、テストスキャンパス回路２ａおよび２ｂそれぞれの同じ位置の出力ノードＱ＜２＞およびＱ＜０＞からの信号が与えられる。したがって、このＡＮＤ回路３ｂに対しては、テストスキャンパス回路内の各フリップフロップの出力するデータビットＱＤＯ＜６＞、ＱＤＯ＜４＞、ＱＤＯ＜２＞およびＱＤＯ＜０＞が与えられる。
【００９７】
この図１５に示すテストスキャンパス回路４の他の構成は、図１に示すテストスキャンパス回路４の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【００９８】
このスキャンパス回路２ａおよび２ｂの内部構造は、実施の形態１と同様であり、これらに設けられるスキャンフリップフロップ回路の構成も実施の形態１と同様である。
【００９９】
この図１５に示すテストスキャンパス回路４に対しては、図１３に示すテスト制御回路３０が用いられる。以下、図１６を参照して、この図１５に示すテストスキャンパス回路４の動作について説明する。
【０１００】
図１６においては、比較活性化信号ＣＭＰＥＮが“１”に設定され、期待値信号ＥＸＰＡおよびＥＸＰＢがともに“０”に設定、また保持モード活性化信号ＦＢＥＮおよびシフトモード活性化信号ＳＩＥＮも“０”に設定される。この状態においては、図１４に示すタイミング図と同様、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ１ＬＢは“１”に固定され、一方、比較制御信号ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢは、図１３に示すフリップフロップ３５ａの出力ＯＰＭよりも１クロックサイクル遅れて変化するため、クロックサイクルＮおよびＮ＋２において“１”となり、一方、クロックサイクルＮ＋１およびＮ＋３およびＮ−１において“０”に設定される。
【０１０１】
テストモードフィードバック信号ＴＭＦＢおよびテストモードシフトイン信号ＴＭＳＩは、この図１３に示すフリップフロップ３５ａの出力信号ＯＰＭと逆相で、１クロックサイクル遅れて変化するため、サイクルＮおよびＮ＋２においてこれらの信号ＴＭＦＢおよびＴＭＳＩが“０”となり、サイクルＮ−１、Ｎ＋１およびＮ＋３において“１”となる。
【０１０２】
サイクルＮ−１においてメモリ回路１から読出されたデータｄｏ１は、各テストスキャンパス回路２ａおよび２ｄにおいて取込まれ、対応するデータｐ１が生成される。この場合、期待値信号ＥＸＰＡおよびＥＸＰＢが“０”に設定されているため、メモリ回路１から読出されたデータのビットの反転値が、データＰＤＯ＜７：０＞として出力される。このデータＰＤＯ＜７：０＞は、サイクルＮにおいてクロック信号ＣＬＫに同期して各スキャンフリップフロップ回路内のフリップフロップ２４に取込まれ、出力データＱＤＯ＜７：０＞が、メモリ回路１において読出されたデータｄｏ１に対応したデータとなる。
【０１０３】
このとき、信号ＴＭＦＢおよびＴＭＳＩが“０”であるため、スキャンフリップフロップ回路のフリップフロップ２４に格納されたデータに対し、複合論理ゲートによりＡＮＤ演算処理が実行され、データＰＤＯ＜７：０＞として、ＡＮＤ演算結果データｐ１ａが生成される。このサイクルＮにおいて生成されたＡＮＤ演算結果データｐ１ａは、次のクロックサイクルＮ＋１において各スキャンフリップフロップ回路内のフリップフロップに格納され、データＱＤＯ＜７：０＞の偶数ビットが、ＡＮＤ回路３ｂへ与えられ、パス／フェイル指示信号ｐａｓｓ１が生成される。
【０１０４】
サイクルＮ＋１においては、メモリ回路１から読出されたデータｄｏ２に従って、期待値との一致判定が行なわれ、データＰＤＯ＜７：０＞は、一致判定結果データｐ２となる。
【０１０５】
サイクルＮ＋２において、このデータｐ２が対応のフリップフロップに格納されまたＡＮＤ演算処理が実行される。このサイクルＮ＋２においては、データｄｏ２に対するＡＮＤ演算処理が行なわれ、このＡＮＤ演算結果データｐ２ａは、次のサイクルＮ＋３において、スキャンフリップフロップ回路を介して転送されて、データＱＤＯ＜７：０＞として出力され、ＡＮＤゲート３ｂによりパス／フェイル判定信号ｐａｓｓ２が生成される。
【０１０６】
したがって、ＡＮＤ演算期間＠ＡＮＤと非蓄積比較動作モード期間＠ＣＭＰ０を交互に設定して、この非蓄積比較動作モード時に、フリップフロップに格納されたデータＱＤＯ＜７：０＞を用いてＡＮＤ回路３ｂにおいてパス／フェイルの判定を行なう。これにより、パス／フェイル指示信号ＰＡＳＳを、クロック信号ＣＬＫに同期して生成することができ、高速クロック信号を用いても、正確に、パス／フェイル判定結果を生成して出力することができる。
【０１０７】
以上のように、この発明の実施の形態３に従えば、テストスキャンパス回路においてスキャンフリップフロップ回路のフリップフロップの出力信号を間引いてＡＮＤ回路へ与えており、クロック信号に同期して、パス／フェイル判定を行なってパス／フェイル指示信号を生成することができる。
【０１０８】
［実施の形態４］
図１７は、この発明の実施の形態４に従うメモリテスト回路の構成を概略的に示す図である。図１７において、テストスキャンパス回路２ｃおよび２ｂが、それぞれシリアルスキャンパスを形成するように配置される。このテストスキャンパス回路２ｃは、図の下部にシフトイン端子ＳＩＤを有し、図の上方に向かって、データ転送モード時シリアルにデータを転送し、シフトアウト端子ＳＯＤから転送データを出力する。
【０１０９】
テストスキャンパス回路２ｂは、先の実施の形態１と同様であり、転送モード時、その上方に設けられたシフトイン端子ＳＩＤから下方向に向かってデータを、順次転送して、シフトアウト端子ＳＯＤからシフトアウトデータＳＯＤＯを出力する。
【０１１０】
ＡＮＤ回路３ａには、このテストスキャンパス回路２ｃの出力ノードＰ＜０＞およびＰ＜２＞が結合され、また、テストスキャンパス回路２ｂの出力ノードＰ＜２＞およびＰ＜０＞が接続される。各テストスキャンパス回路２および２ｂのシリアルデータ転送経路における同一位置のデータがＡＮＤ回路３ａへ与えられる。各テストスキャンパス回路において同一位置の出力ノードを選択してＡＮＤゲート３ａに接続するだけであり、配線レイアウトが容易となる。
【０１１１】
この図１７に示すメモリテスト回路４の構成においては、メモリ回路１の上位ビットに対して設けられたテストスキャンパス回路におけるデータ転送方向が、実施の形態１のメモリテスト回路のデータ転送方向と異なるだけであり、実施の形態１と同様の動作が行なわれる。また、ＡＮＤ回路３ａへは、４ビットの信号が与えられるだけであり、実施の形態１と同様の効果を得ることができる。
【０１１２】
なお、この図１７に示すメモリテスト回路４においても、テストスキャンパス回路２ｂおよび２ｃ各々において、出力ノードＱ＜２＞およびＱ＜０＞が、ＡＮＤ回路３に接続されてもよい。
【０１１３】
以上のように、この発明の実施の形態４に従えば、テストスキャンパス回路のデータ転送方向が異なる構成においても、各テストスキャンパス回路の出力信号配線を間引いてパス／フェイル判定用ＡＮＤ回路に接続しており、配線レイアウト面積および回路占有面積を低減することができる。
【０１１４】
［実施の形態５］
図１８は、この発明の実施の形態５に従うメモリテスト回路の構成を概略的に示す図である。この図１８に示すメモリテスト回路４においては、メモリ回路１の上位データビットＤＯ＜７＞−ＤＯ＜４＞に対し、テストスキャンパス回路２ａが配置され、メモリ回路１の下位データビットＤＯ＜３＞−ＤＯ＜０＞に対し、テストスキャンパス回路２ｃが配置される。これらのテストスキャンパス回路２ａおよび２ｃは、実施の形態１と同様の構成を有する。
【０１１５】
これらのテストスキャンパス回路２ａおよび２ｃのシフトイン端子ＳＩＤは、並列に、メモリテスト回路４のシフトイン端子ＳＩＤＯが結合され、また、これらのテストスキャンパス回路２ａおよび２ｃは、それぞれ別々に配置されるメモリテスト回路４のシフトアウト端子ＳＯＤＯＵおよびＳＯＤＯＬに結合される。
【０１１６】
テストスキャンパス回路２ａは、その上部のシフトイン端子ＳＩＤから下方に設けられたシフトアウト端子ＳＯＤに向かって、データ転送モード時、データを転送する。一方、テストスキャンパス回路２ｃはその下部に設けられたシフトイン端子ＳＩＤから上部に向けられたシフトアウト端子ＳＯＤに向かってシリアルにデータを転送する。
【０１１７】
これらのテストスキャンパス回路２ａおよび２ｃ各々の出力ノードＰ＜２＞およびＰ＜０＞が、ＡＮＤ回路３ａに結合される。
【０１１８】
この図１８に示すメモリテスト回路４の構成においては、シリアルにデータを転送する経路が、テストスキャンパス回路２ａおよび２ｃそれぞれに対し別々に設けられる点を除いて実施の形態１と同様である。したがって、このメモリテスト回路４ｄのテストスキャンパス回路２ａおよび２ｃの格納データビットを読出す場合、テストスキャンパス回路２ａおよび２ｃそれぞれにおいて、４ビットの直列シフトレジスタに相当する転送パスが形成されるため、８ビットデータをシリアルに転送する必要がなく、少ないクロックサイクル数でデータを読出すことができる。
【０１１９】
なお、この図１８に示すメモリテスト回路４の構成においても、テストスキャンパス回路のフリップフロップの出力ノードＱ＜０＞およびＱ＜２＞が、ＡＮＤゲート３ａに結合されてもよい。
【０１２０】
また、このデータ読出時においては、メモリ回路１から読出されたデータＤＯ＜７＞−ＤＯ＜０＞がメモリテスト回路４ｄにおいて取込まれてラッチされ、次いで順次転送されてもよく、また試験判定結果データが、順次転送されてもよい。
【０１２１】
以上のように、この発明の実施の形態４に従えば、メモリテスト回路のシリアル転送パスを、各出力スキャンパス回路ごとに個々に配置しており、少ないクロックサイクル数でデータの転送を行なうことができる。また、実施の形態１と同様、パス／フェイル判定のための配線レイアウト面積および回路占有面積を、同様、低減することができる。
【０１２２】
［実施の形態６］
図１９は、この発明の実施の形態６に従うメモリテスト回路の構成を概略的に示す図である。図１９において、メモリテスト回路４は、メモリ回路１の上位データビットＤＯ＜７＞−ＤＯ＜４＞に対して設けられるテストスキャンパス回路２ｃと、メモリ回路１の下位データビットＤＯ＜３＞−ＤＯ＜０＞に対して設けられるテストスキャンパス回路２ｂを含む。
【０１２３】
テストスキャンパス回路２ｂおよび２ｃは、データビットＤＯ＜３＞およびＤＯ＜４＞に対応する端部にシフトイン端子ＳＩＤを有し、テストスキャンパス回路２ｃが、その上方に向かってデータ転送モード時順次シリアルにデータを転送し、一方、テストスキャンパス回路２ｂは、データ転送モード時、その下方向に向かってデータを転送する。このテストスキャンパス回路２ｃおよび２ｂのシフトイン端子ＳＩＤは共通にメモリテスト回路のシフトイン端子ＳＩＤＯに結合される。
【０１２４】
この図１９に示す構成においては、テストスキャンパス回路２ｃおよび２ｂが個々にシリアルスキャンパスを構成する。ＡＮＤ回路３ａは、先の実施の形態１から５と同様、テストスキャンパス回路２ｂおよび２ｃの出力ノードＰ＜０＞およびＰ＜２＞に接続される。
【０１２５】
この図１９に示すメモリテスト回路４ｅの構成においても、テストスキャンパス回路２ｃおよび２ｂの格納データを、少ないクロックサイクル数で転送することができる。また、先の実施の形態１から５と同様、パス／フェイル判定のための回路規模および配線レイアウト面積を低減することができる。
【０１２６】
不良ビット検出時の動作は、先の実施の形態１から５と同じである。
この図１９に示すメモリテスト回路４ｅにおいても、テストスキャンパス回路２ｃおよび２ｂにおいてフリップフロップの出力ノードＱ＜０＞およびＱ＜２＞からの信号がＡＮＤ回路３ａへ与えられて、パス／フェイルの判定が行なわれてもよい。
【０１２７】
［実施の形態７］
図２０は、この発明の実施の形態７に従うメモリテスト回路の構成を概略的に示す図である。この図２０に示すメモリテスト回路４０は、１０ビットデータＤＯ＜９＞−ＤＯ＜０＞を出力するメモリ回路（ＲＡＭ）に対して設けられる。このメモリテスト回路４０においては、メモリ回路５０の上位５ビットデータを受けるテストスキャンパス回路６０ａと、メモリ回路５０の下位５ビットデータを受けるテストスキャンパス回路６０ｂが設けられる。これらのテストスキャンパス回路６０ａおよび６０ｂは、同一構成を有し、データ転送モード時シリアルにデータを転送する経路を形成する。
【０１２８】
これらのテストスキャンパス回路６０ａおよび６０ｂは、それぞれ、５ビットデータを処理するため、入力端子ＩＤＯ＜４＞−ＡＩＤ＜０＞と出力ノードＰ＜４−＞−Ｐ＜０＞およびＱ＜４＞−Ｑ＜０＞を有する。これらのテストスキャンパス回路６０ａおよび６０ｂそれぞれに対し、先の実施の形態１から６と同様、クロック信号ＣＬＫおよび制御信号ＴＭＦＢ、ＴＭＳＩ、ＣＭＰ１ＬＡ、ＣＭＰ０ＬＡ、ＣＭＰ１ＬＢおよびＣＭＰ０ＬＢが供給される。
【０１２９】
このメモリテスト回路４０においては、パス／フェイル指示信号ＰＡＳＳを生成する５入力ＡＮＤ回路３ｃが設けられる。このＡＮＤ回路３ｃは、テストスキャンパス回路６０ａのデータ出力ノードＰ＜３＞およびＰ＜１＞と、テストスキャンパス回路６０ｂの出力ノードＰ＜４＞およびＰ＜２＞およびＰ＜０＞に結合される。したがって、このＡＮＤ回路３ｃは、１０ビットのデータについての試験を行なう回路において、５ビットの信号を受けてＡＮＤ演算を実行する。
【０１３０】
図２１は、図２０に示すメモリ回路５０の上位ビットの部分の構成を概略的に示す図である。図２１においては、メモリマットＭＭＵにおいて５つのメモリセルアレイＭＣＡ５−ＭＣＡ９が配置される。これらのメモリセルアレイＭＣＡ５−ＭＣＡ９は、各々、８行４列に配置されるメモリセルを有し、３２アドレスを有する。
【０１３１】
メモリセルアレイＭＣＡ５−ＭＣＡ９の行を選択するために、アドレスビットＡ＜４：２＞を受けてワード線選択信号（行選択信号）を生成するＸデコーダ１０と、アドレスビットＡ＜１：０＞を受けて列選択信号を生成するＹデコーダ１２が設けられる。アドレスビットＡ＜４：２＞は、アドレスビットＡ＜４＞、Ａ＜３＞およびＡ＜２＞を示し、アドレスビットＡ＜１：０＞は、アドレスビットＡ＜１＞およびＡ＜０＞を示す。メモリセルアレイＭＣＡ５−ＭＣＡ９の構成は、図２に示すメモリ回路１のメモリマットＭＭＵの構成と同じであり、したがって、Ｘデコーダ１０およびＹデコーダ１２は、実施の形態１と同様の構成を備える。
【０１３２】
メモリマットＭＭＵにおいて列を選択するために、Ｙデコーダ１２からの列選択信号Ｙ０Ｕ−Ｙ３Ｕに従って各メモリセルアレイから列を選択する列選択回路１４ｕが設けられる。この列選択回路１４ｕは、メモリセルアレイＭＣＡ９−ＭＣＡ５それぞれに対応して配置されるカラムセレクタＣＯＳＥＬ９−ＣＯＳＥＬ５を含む。これらのカラムセレクタＣＯＳＥＬ９−ＣＯＳＥＬ５それぞれに対応して、ワードドライバＷＤおよびセンスアンプＳＡの組が配置される。ライトドライバＷＤにより、データビットＤＩ＜ｉ＞が対応のメモリセルアレイへ書込まれ、センスアンプＳＡにより対応のメモリセルアレイから読み出されたデータに従ってデータビットＤＯ＜ｉ＞が生成されて出力される。
【０１３３】
図２２は、図２０に示すメモリ回路５０の下位ビットに対応する部分の構成を概略的に示す図である。図２２において、この下位ビットに対して設けられるメモリマットＭＭＵにおいては、５ビットデータに対応してメモリセルアレイＭＣＡ０−ＭＣＡ４が配置される。これらのメモリセルアレイＭＣＡ０−ＭＣＡ４は、図２１に示すメモリセルアレイＭＣＡ５−ＭＣＡ９と同様、８行４列に配置される３２アドレスのメモリセルを有する。これらのメモリセルアレイＭＣＡ０−ＭＣＡ４における１行が、Ｘデコーダ１０からの行選択信号（ワード線選択信号）Ｘ０Ｌ−Ｘ７Ｌに従って選択される。
【０１３４】
Ｙデコーダ１２からの列選択信号Ｙ０Ｌ−Ｙ３Ｌに従って、このメモリセルアレイＭＣＡ４−ＭＣＡ０それぞれから１列を選択する列選択回路１４ｌが設けられる。この列選択回路１４ｌは、メモリセルアレイＭＣＡ４−ＭＣＡ０それぞれに対応して配置されるカラムセレクタＣＯＳＥＬ４−ＣＯＳＥＬ０を含む。これらのカラムセレクタＣＯＳＥＬ４−ＣＯＳＥＬ０は、Ｙデコーダ１２からの列選択信号Ｙ０Ｌ−Ｙ３Ｌに従って対応のメモリセルアレイＭＣＡ４−ＭＣＡ０から１列を選択する。
【０１３５】
これらのカラムセレクタＣＯＳＥＬ４−ＣＯＳＥＬ０それぞれに対応して、ワードドライバＷＤおよびセンスアンプＳＡが設けられる。ライトドライバＷＤを、ライトイネーブル信号ＷＥが“０”のとき活性化され、入力データビットＤＩ＜４＞−ＤＩ＜０＞に対応するデータを、対応のメモリセルアレイに選択メモリセルへ書込む。センスアンプＳＡは、対応のカラムセレクタＣＯＳＥＬ４−ＣＯＳＥＬ０により選択された列のメモリセルデータを増幅して、出力データビットＤＯ＜４＞−ＤＯ＜０＞を生成する。
【０１３６】
このメモリ回路５０の構成は、図２および図３に示す８ビットデータを入出力するメモリ回路を、１０ビットデータを入出力する構成に拡張したものと同じである。５ビットのアドレスＡ＜４＞−Ａ＜０＞により、３２アドレスのうちの１つのアドレスが指定され、メモリセルアレイＭＣＡ−ＭＣＡ９それぞれにおいて選択アドレスにおいて１ビットデータがアクセスされ、合計１０ビットデータの入出力が行なわれる。
【０１３７】
図２３は、図２０に示すテストスキャンパス回路６０ａおよび６０ｂの構成を示す図である。これらのテストスキャンパス回路６０ａおよび６０ｂは同一構成を有するため、図２３においては、テストスキャンパス回路６０を代表的に示す。図２３において、テストスキャンパス回路６０は、入力ノードＩＤＯ＜４＞−ＩＤＯ＜０＞それぞれに対応して配置されるスキャンフリップフロップ回路ＳＦＦ４−ＳＦＦ０を含む。これらのスキャンフリップフロップ回路ＳＦＦ４−ＳＦＦ０は、データ転送時、シリアルにデータを転送する経路を形成するように、そのシフトイン入力端子ＳＩが、前段のスキャンフリップフロップ回路の出力データを受けるように接続される。
【０１３８】
スキャンフリップフロップ回路ＳＦＦ４−ＳＦＦ０は、同一構成を有するため、図２３においては、スキャンフリップフロップ回路ＳＦＦ４の構成要素に参照番号を付す。これらのスキャンフリップフロップ回路ＳＦＦ４−ＳＦＦ０は、図４に示すスキャンフリップフロップ回路ＳＦＦ４−ＳＦＦ０と同一構成を有しており、メモリ回路から与えられる対応のデータビットを反転するインバータ２０と、不良ビットの検出を行なうための複合論理ゲート２１と、シリアルにデータを転送またはデータを保持するための複合論理ゲート２２と、これらの複合論理ゲート２１および２２の出力信号の一方を伝達するＮＯＲゲート２３と、ＮＯＲゲート２３の出力信号をクロック信号ＣＬＫに同期して取込みラッチするフリップフロップ（ＦＦ）２４を含む。
【０１３９】
この図２３に示すように、テストスキャンパス回路６０は、先の図４に示すテストスキャンパス回路２の構成と同じであり、５ビットデータを転送／保持することができる。
【０１４０】
図２０に示すように、テストスキャンパス回路６０ａおよび６０ｂは、シフトインデータＳＩＤＯを同一方向にデータ転送モード時転送して、シフトアウトデータＳＯＤＯを生成する。したがってシリアルスキャンパスにおいて、１ビットおきの偶数データ信号ＰＤＯ＜８＞、ＰＤＯ＜６＞、ＰＤＯ＜４＞、ＰＤＯ＜２＞およびＰＤＯ＜０＞を選択的に、図２０に示すＡＮＤ回路３ｃへ与える。
【０１４１】
最初に非蓄積比較動作モードで各ビットについての不良判定動作を行ない、次のＡＮＤ演算モード時においてシフト動作を行なって複合論理ゲート２２で２ビット単位のＡＮＤ演算を行ない、そのＡＮＤ演算結果をＡＮＤ回路３ｃへ出力する。したがって、先の実施の形態１と同様の動作制御で、１０ビットについての不良判定を行なうことができる。
【０１４２】
なお、この実施の形態７においても、テスト制御回路として、実施の形態１および実施の形態２のいずれが用いられてもよい。また、ＡＮＤ回路３ｃに対し、実施の形態３と同様、フリップフロップ２４の出力データＱＤＯを用いてＡＮＤ回路３ｃでＡＮＤ演算が行なわれてもよい。
【０１４３】
以上のように、この発明の実施の形態７に従えば、１０ビットデータを入出力するメモリ回路に対しても、テストスキャンパス回路において上位５ビットおよび下位５ビットそれぞれに対してテストスキャンパス回路を設ける場合、１０ビットのシリアルデータ転送パスにおける偶数ビット位置のデータを選択してパスフェイル判定用のＡＮＤ回路へ与えることにより、全ビットについてのＡＮＤ演算を行なってパス／フェイル判定を行なうことができる。これにより、１０ビットのデータの不良検出動作時、５ビットの信号線を用いて不良判定を行なうことができ、配線占有面積およびＡＮＤ回路の占有面積を低減することができる。
【０１４４】
［実施の形態８］
図２４は、この発明の実施の形態８に従うメモリテスト回路の構成を概略的に示す図である。この図２４に示すメモリテスト回路４０においては、メモリ回路５０の上位データビットＤＯ＜９＞−ＤＯ＜５＞に対して設けられるテストスキャンパス回路６０ｃが、シフトイン端子ＳＩＤがデータビットＤＯ＜５＞側に設けられ、シフトアウト端子ＳＯＤが、テストスキャンパス回路６０ｃのデータビットＤＯ＜９＞に対応する端部に配置される。
【０１４５】
メモリ回路５０の下位ビットＤＯ＜４＞−ＤＯ＜０＞に対する出力スキャンパス６０ｂは、図２０に示す構成と同様であり、データ転送モード時、データビットＤＯ＜４＞に対応する端部に配置されるシフトイン端子ＳＩＤから、データビットＤＯ＜０＞に対応する端部に配置されるシフトアウト端子ＳＯＤに向かってシリアルにデータを転送する。
【０１４６】
この図２４に示すメモリテスト回路４０においては、テストスキャンパス回路６０ｃの出力Ｐ＜１＞およびＰ＜３＞が、ＡＮＤ回路３ｃに結合される。他の構成は、図２０に示す構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【０１４７】
このテストスキャンパス回路６０ｃにおいては、シリアル転送パスにおいて、シフトイン端子ＳＩＤ側から１ビットおきの出力ノードが選択される。したがって、シリアル転送パス全体において最上流から偶数番目の位置の出力ノードが選択されてＡＮＤ回路３ｃに結合されており、先の実施の形態７と同様の作用効果を得ることができる。
【０１４８】
なお、この図２４に示す構成においても、テストスキャンパス回路６０ｃおよび６０ｂのフリップフロップの出力信号ＱＯＤが用いられてもよい。
【０１４９】
［実施の形態９］
図２５は、この発明の実施の形態９に従うメモリテスト回路の構成を概略的に示す図である。この図２５においても、メモリテスト回路４０は、１０ビットデータを入出力するメモリ回路５０に対して設けられる。上位ビットデータＤＯ＜９＞−ＤＯ＜５＞に対して、データ転送時、図の上方から下方に向かってデータを転送するテストスキャンパス回路６０ａが設けられ、下位データビットＤＯ＜４＞−ＤＯ＜０＞に対して、図の下方向から上方向に向かってデータ転送モード時データを転送するテストスキャンパス回路６０ｃが設けられる。これらのテストスキャンパス回路６０ａおよび６０ｃのシフトイン端子ＳＩＤが共通にシフトインデータＳＩＤＯを受け、テストスキャンパス回路６０ａおよび６０ｃのシフトアウト端子ＳＯＤが、それぞれ上方および下方に設けられたメモリテスト回路４０のシフトアウト端子ＳＯＤＯＵおよびＳＯＤＯＬに結合される。したがってテストスキャンパス回路６０ａおよび６０ｃは、それぞれ別々のスキャンパス回路を構成する。
【０１５０】
テストスキャンパス回路６０ａおよび６０ｃが、それぞれ５ビットのデータビットを転送するスキャンパスを構成する。２ビット単位でＡＮＤ演算を行うためには偶数個のデータビットが、各シリアル転送パスにおいて必要である。したがって、ＡＮＤ演算処理時、テストスキャンパス回路６０ａおよび６０ｃのシフトイン端子ＳＩＤを“１”に設定し、等価的に、それぞれが６ビットデータを処理する回路に変換する。この場合、ＡＮＤ回路３ｄに対しては、テストスキャンパス回路６０ａおよび６０ｃ各々の偶数ビット位置の出力ノードＰ＜４＞、Ｐ＜２＞、Ｐ＜０＞が接続される。この場合、出力ノードＰ＜４＞には、ビット“１”と出力ノードＰ＜４＞の信号とのＡＮＤ演算を行なった結果が、データＰＤＯ＜９＞として出力される。出力ノードＰ＜２＞には、信号ＰＤＯ＜３＞およびＰＤＯ＜２＞のＡＮＤ演算結果が出力される。出力ノードＰ＜０＞には、信号ＰＤＯ＜０＞およびＰＤＯ＜１＞のＡＮＤ演算結果が出力される。
【０１５１】
したがって、６入力ＡＮＤ回路３ｄにおいてさらにＡＮＤ演算を行なうことにより、１０ビットデータについてのＡＮＤ演算処理を行なうことができる。この図２５に示すメモリテスト回路４ｈにおいては、テストスキャンパス回路６０ａおよび６０ｃがそれぞれ別々のシリアル転送パスを構成するため、テストスキャンパス回路６０ａおよび６０ｃの格納データを少ないクロックサイクル数で出力することができる。また、ＡＮＤ回路３ｄの入力は、６入力となるものの、１０ビット入力の構成に比べて、配線レイアウトを低減でき、またＡＮＤ回路３ａの規模も低減することができる。
【０１５２】
なお、この図２５に示す構成においても、テストスキャンパス回路のフリップフロップの出力Ｑの信号が用いられてもよい。
【０１５３】
［実施の形態１０］
図２６は、この発明の実施の形態１０に従うメモリテスト回路の構成を概略的に示す図である。この図２６に示すメモリテスト回路４０においては、メモリ回路５０の上位データビットＤＯ＜９＞−ＤＯ＜５＞に対し、テストスキャンパス回路６０ｃが設けられ、メモリ回路５０の下位５データビットＤＯ＜４＞−ＤＯ＜０＞に対し、テストスキャンパス回路６０ｄが設けられる。テストスキャンパス回路６０ｃは、メモリ回路５０の出力データビットＤＯ＜５＞に対応する位置にシフトイン端子ＳＩＤを有し、メモリ回路５０の出力データビットＤＯ＜９＞に対応する位置に、シフトアウト端子ＳＯＤを有する。テストスキャンパス回路６０ｄは、データビットＤＯ＜４＞に対応する位置にシフトイン端子ＳＩＤを有し、データ端子ＤＯ＜０＞に対応する位置に、シフトアウト端子ＳＯＤを有する。
【０１５４】
この図２６に示すメモリテスト回路４０の構成は、図２５に示すメモリテスト回路４０と、テストスキャンパス回路６０ｃおよび６０ｄのデータ転送方向が異なっている。したがって、このパス／フェイル指示信号ＰＡＳＳを生成するＡＮＤ回路３ｄには、図２５に示すメモリテスト回路４０の構成と同様、テストスキャンパス回路６０ｃおよび６０ｄの偶数ビット位置Ｐ＜０＞、Ｐ＜２＞およびＰ＜４＞が結合される。ＡＮＤ演算時においては、シフトイン端子ＳＩＤを“１”に設定する。
【０１５５】
この図２６に示すメモリテスト回路４０の構成は、図２５に示すメモリテスト回路４０の構成と、テストスキャンパス回路のデータ転送方向が異なるだけであり、同様の動作が行なわれ、同様の効果が得られる。
【０１５６】
なお、この図２６に示す構成においても、テストスキャンパス回路のフリップフロップの出力信号がＡＮＤ回路３ｄへ与えられてもよい。
【０１５７】
［実施の形態１１］
図２７は、この発明の実施の形態１１に従うメモリテスト回路の構成を概略的に示す図である。図２７に示すメモリテスト回路４ｊは、以下の点が、図２６に示すメモリテスト回路の構成と異なる。すなわち、パス／フェイル指示信号ＰＡＳＳを生成するＡＮＤ回路３ｅは、テストスキャンパス回路６０ｃおよび６０ｂのデータ出力ノードＰ＜０＞、Ｐ＜２＞およびＱ＜４＞と結合される。この図２７に示すメモリテスト回路４０の他の構成は、図２６に示すメモリテスト回路４０の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【０１５８】
この図２７に示すメモリテスト回路４０においては、ＡＮＤ演算動作モード時、出力ノードＰ＜０＞からは、入力ノードＩＤＯ＜１＞およびＩＤＯ＜０＞に与えられた信号のＡＮＤ演算結果が出力され、出力ノードＰ＜２＞からは、入力ノードＩＤＯ＜３＞およびＩＤＯ＜２＞に与えられる信号のＡＮＤ演算結果が出力される。出力ノードＱ＜４＞からは、ＡＮＤ演算モード時、入力ノードＩＤＯ＜４＞についての不良ビット判定結果が出力される。したがって、ＡＮＤ回路３ｅからは、全ビットについてのＡＮＤ演算結果を出力することができる。
【０１５９】
この図２７に示すメモリテスト回路の他の動作は、図２６に示すメモリテスト回路４ｉの動作と同じであり、同様の効果を得ることができる。
【０１６０】
以上のように、この発明の実施の形態１１に従えば、テストスキャンパス回路が、それぞれ個々に直列転送パスを構成する場合、シフトイン端子に最も近いフリップフロップの出力信号を用いてＡＮＤ演算処理を行なっており、ＡＮＤ演算処理時、シフトインデータを“１”に設定する必要がなく、制御が容易となる。
【０１６１】
［実施の形態１２］
図２８は、この発明の実施の形態１２に従うメモリテスト回路の構成を概略的に示す図である。この図２８に示すメモリテスト回路４０は、以下の点が、図２７に示すメモリテスト回路４０とその構成が異なる。すなわち、パス／フェイル指示信号ＰＡＳＳを生成するＡＮＤ回路３ｄは、テストスキャンパス回路６０ｃおよび６０ｂの出力ノードＰ＜４＞に代えて、出力ノードＰ＜３＞上の信号を受ける。この図２８に示すメモリテスト回路４０の他の構成は、図２７に示すメモリテスト回路４０の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【０１６２】
この図２７に示すメモリテスト回路４０の構成において、ＡＮＤ演算処理時、テストスキャンパス回路６０ｃおよび６０ｄそれぞれにおいて、出力ノードＰ＜３＞からは、入力ノードＩＤＯ＜３＞およびＩＤＯ＜４＞に与えられた信号についてのＡＮＤ演算結果が出力され、出力ノードＰ＜２＞からは、入力ノードＩＤＯ＜３＞およびＩＤＯ＜２＞に与えられたデータビットについてのＡＮＤ演算結果が出力され、出力ノードＰ＜０＞からは、入力ノードＩＤＯ＜１＞およびＩＤＯ＜０＞に与えられたデータビットについてのＡＮＤ演算結果が出力される。
【０１６３】
したがって、テストスキャンパス回路６０ｃおよび６０ｄそれぞれにおいて、出力ノードＰ＜０＞−Ｐ＜４＞の非蓄積比較結果についてのＡＮＤ演算結果がＡＮＤ回路３ｄへ与えられ、パス／フェイル指示信号ＰＡＳＳを生成することができる。
【０１６４】
この図２８に示すメモリ試験回路４０の構成においても、出力ノードＰ＜４＞の信号に代えて、出力ノードＰ＜３＞をＡＮＤ回路３ｄへ結合しており、ＡＮＤ演算操作時に、シフトイン端子ＳＩＤを“１”に設定する必要がなく、制御が簡略化される。
【０１６５】
また、ＡＮＤ回路３ｄの入力数は６であり、全ビットについての判定結果信号を受ける構成に比べて回路規模および配線レイアウト面積を低減することができる。
【０１６６】
なお、各テストスキャンパス回路６０ｃおよび６０ｄにおいて、出力ノードＰ＜０＞、Ｐ＜２＞、Ｐ＜３＞に変えて対応のフリップフロップの出力ノードＱ＜０＞、Ｑ＜２＞、Ｑ＜３＞が、ＡＮＤ回路３ｄに結合されてもよい。
【０１６７】
［実施の形態１３］
図２９は、この発明の実施の形態１３に従うメモリテスト回路の構成を概略的に示す図である。この図２９においては、８ビットデータを入出力するメモリ回路（ＲＡＭ）１の出力データを受けるメモリテスト回路４が示される。このメモリテスト回路４は、メモリ回路１の上位４ビットＤＯ＜７＞−ＤＯ＜４＞に対して設けられるテストスキャンパス回路７０ａと、メモリ回路１の下位４ビットＤＯ＜３＞−ＤＯ＜０＞に対して設けられるテストスキャンパス回路７０ｂを含む。これらのテストスキャンパス回路７０ａおよび７０ｂは、シフトインデータＳＩＤＯをシリアルに転送して、シフトアウトデータＳＯＤＯをデータ転送モード時生成するように、スキャンパス回路７０ａのシフトアウト端子ＳＯＤが、スキャンパス回路７０ｂのシフトイン端子ＳＩＤに結合される。
【０１６８】
このメモリテスト回路４においては、パス／フェイル指示信号ＰＡＳＳを生成するために、４入力ＮＯＲ回路７５が設けられる。ＮＯＲ回路７５におけるＮＯＲ演算に対応するために、テストスキャンパス回路７０ａおよび７０ｂそれぞれにおいては、テスト動作モード時ＮＡＮＤ結果を出力する端子Ｒ＜３＞−Ｒ＜０＞が設けられる。これらのテストスキャンパス回路７０ａおよび７０ｂそれぞれにおいて、ＮＡＮＤ演算結果出力ノードＲ＜２＞およびＲ＜０＞が、ＮＯＲ回路７５に結合される。
【０１６９】
２ビット単位のＮＡＮＤ演算結果を、さらにＮＯＲ演算を行なうことにより、先の実施の形態１から１２と同様、２ビット単位のＡＮＤ演算結果に対してさらにＡＮＤ演算を行なう論理操作が実現される。
【０１７０】
図３０は、図２９に示すテストスキャンパス回路７０ａおよび７０ｂの構成の一例を示す図である。これらのテストスキャンパス回路７０ａおよび７０ｂは同一構成を有するため、図３０においては、テストスキャンパス回路７０を、これらのテストスキャンパス回路７０ａおよび７０ｂの代表として示す。
【０１７１】
図３０において、テストスキャンパス回路７０は、入力ノードＩＤＯ＜３＞−ＩＤＯ＜０＞それぞれに対応して配置され、データ転送モード時、直列データ転送パスを形成するスキャンフリップフロップ回路ＳＦＦＰ３−ＳＦＦＰ０を含む。これらのスキャンフリップフロップ回路ＳＦＦＰ３−ＳＦＦＰ０は、図４に示すスキャンフリップフロップ回路ＳＦＦ３−ＳＦＦ０と同じ構成を有し、入力ノードからの信号ＩＤＯを反転するインバータ２０と、比較制御信号ＣＭＰ１ＬＡおよびＣＭＰ０ＬＡに従って、入力データビットＩＤＯが期待値と一致しているかを判定する複合論理ゲート２１と、テストモードシフトイン信号ＴＭＳＩとテストモードフィードバック信号ＴＭＦＢとに従って、シフトイン信号ＳＩと保持データＪＤＯＱの一方を選択的に伝達する複合論理ゲート２２と、これらの複合論理ゲート２１および２２の出力信号に基づいて信号ＪＤＯＤを生成して出力ノードＰ＜ｉ＞へ伝達するＮＯＲゲート２３と、クロック信号ＣＬＫに従ってＮＯＲゲート２３の出力信号を取込みラッチするフリップフロップ（ＦＦ）２４を含む。
【０１７２】
このスキャンフリップフロップ回路ＳＦＦＰ３−ＳＦＦＰ０それぞれにおいて、複合論理ゲート２２の出力信号が、ＮＡＮＤ演算結果を示す信号Ｒ＜３＞−Ｒ＜０＞を出力するために用いられる。
【０１７３】
すなわち、ＡＮＤ演算動作モード時においては、ＮＯＲゲート２３からの信号ＪＤＯＤが、２ビットデータについての一致判定結果のＡＮＤ演算結果を示している。この場合、ＮＯＲゲート２３が、インバータとして動作しているため、複合論理ゲート２２の出力信号Ｒ＜ｉ＞を用いることにより、ＮＡＮＤ演算結果を生成することができる。
【０１７４】
図３１は、図３０に示すメモリテスト回路７０の非蓄積比較モード時の信号の流れを太線で示す図である。以下、図３１を参照して図３０に示すスキャンパス回路７０の非蓄積動作モード時の動作について説明する。
【０１７５】
この非蓄積比較動作モードにおいては、テストモードシフトイン信号ＴＭＳＩおよびテストモードフィードバック信号ＴＭＦＢをともに“１”に設定し、複合論理ゲート２２の出力信号を“０”として、ＮＯＲゲート２３をインバータとして動作させる。この状態で、期待値“０”との比較を行なう場合には、比較制御信号入力ノードＣＭＰ１Ｌを“１”に設定し、比較制御信号入力ノードＣＭＰ０Ｌを“０”に設定する。逆に、期待値“１”と比較を行なう場合には、比較制御信号入力ノードＣＭＰ１Ｌを“０”に設定し、比較制御信号入力ノードＣＭＰ０Ｌを“１”に設定する。
【０１７６】
入力ノードＩＤＯに与えられるデータビットが期待値と一致している場合には、複合論理ゲート２１の出力信号が“０”となり、ＮＯＲゲート２３の出力信号ＪＤＯＤが“１”となる。一方、入力ノードＩＤＯに与えられるデータビットが期待値と異なる場合には、この複合論理ゲート２１の出力信号が“１”となり、ＮＯＲゲート２３の出力信号ＪＤＯＤが“０”となる。この後クロック信号ＣＬＫを与えることにより、フリップフロップ２４に、このＮＯＲゲート２３の出力信号ＪＤＯＤが取込まれて格納される（キャプチャされる）。
【０１７７】
このテスト結果を、フリップフロップ２４に格納した後に、ＮＡＮＤ演算動作モードを実行する。この場合、非蓄積比較モードを用い、アドレスを変更して、メモリ回路１のデータの読出を行ない、アドレスについての期待値との一致判定結果をフリップフロップ２４に格納した後、ＮＡＮＤ演算モードが実行されてもよい。また、これに代えて、実施の形態１から３において示した様に、各サイクルごとに各アドレスについて、非蓄積比較モードおよびＮＡＮＤ演算モードが交互に行なわれ、各アドレスについて不良ビットの存在の判定が行なわれてもよい。
【０１７８】
図３２は、ＮＡＮＤ演算動作モード時の信号の流れを太線で示す図である。以下、図３２を参照して、ＮＡＮＤ演算モード時の動作について説明する。このＮＡＮＤ演算動作モード時においては、テストモードシフトイン信号ＴＭＳＩおよびテストモードフィードバック信号ＴＭＦＢをともに“０”に設定し、かつ比較制御信号ＣＭＰ１ＬＡ、ＣＭＰ１ＬＢ、ＣＭＰ０ＬＡおよびＣＭＰ０ＬＢをすべて“１”に設定する。この場合、スキャンフリップフロップ回路ＳＦＦＰ３−ＳＦＦＰ０それぞれにおいて、インバータ２０の出力信号にかかわらず、複合論理ゲート２１の出力信号が“０”に設定され、ＮＯＲゲート２３が、インバータとして動作する。しかしながら、この場合、ＮＯＲゲート２３の出力信号ＪＤＯＤはＮＡＮＤ演算動作モードにおいては用いられない。
【０１７９】
テストモードシフトイン信号ＴＭＳＩおよびテストモードフィードバック信号ＴＭＦＢが“０”であるため、スキャンフリップフロップ回路ＳＦＦＰ２およびＳＦＦＰ０それぞれにおいて、前段のスキャンフリップフロップ回路ＳＦＦＰ３およびＳＦＦＰ１のフリップフロップ２４の出力信号と対応のフリップフロップ２４に格納されるテスト結果ＪＤＯＱのＮＡＮＤ演算が複合論理ゲート２２により行われて、データ端子Ｒ＜２＞およびＲ＜０＞にそれぞれＮＡＮＤ演算結果を示す信号が出力される。
【０１８０】
図２９に示すＮＯＲ回路７５は、テストスキャンパス回路７０ａの出力ノードＲ＜２＞およびＲ＜０＞からの信号ＲＤＯ＜６＞およびＲＤＯ＜４＞とテストスキャンパス回路７０ｂの出力ノードＲ＜２＞およびＲ＜０＞からの信号ＲＤＯ＜２＞およびＲＤＯ＜０＞を受けてＮＯＲ演算を行なっている。このＮＯＲ回路７５へ与えられる信号は、それぞれ、２ビットのＮＡＮＤ演算結果であり、さらにこれらの信号についてＮＯＲ演算を行なうことにより、８ビットデータすべてのテスト結果ＱＤＯ＜７＞−ＱＤＯ＜０＞についてのＡＮＤ演算を行なっていることと等価となる。これにより、メモリ回路１において不良ビットが存在するかを判定し、その判定結果に基づいてパス／フェイル指示信号ＰＡＳＳを生成することができる。
【０１８１】
なお、このＮＡＮＤ演算モードおよび非蓄積比較動作モードを行なうテスト制御回路の構成としては、ＡＮＤ演算動作モードと同じ動作処理が実行されるため、先の実施の形態１および実施の形態２において説明したテスト制御回路を利用することができる。
【０１８２】
以上のように、この発明の実施の形態１３に従えば、テストスキャンパス回路において複数ビット位置においてＮＡＮＤ演算結果を出力し、その後ＮＯＲ演算処理を行なってパス／フェイル判定結果指示信号を生成しており、配線占有面積およびテスト判定回路の規模を低減することができる。
【０１８３】
［実施の形態１４］
図３３は、この発明の実施の形態１４に従うメモリテスト回路の構成を概略的に示す図である。この図３３に示すメモリテスト回路４においては、メモリ回路１の上位ビットＤＯ＜７＞−ＤＯ＜４＞に対して設けられるテストスキャンパス回路７０ｃは、メモリ回路１のデータビットＤＯ＜４＞に対応する位置に、シフトイン端子ＳＩＤを有し、データビットＤＯ＜７＞に対応する端部領域に、シフトアウト端子ＳＯＤを有する。したがって、このテストスキャンパス回路７０ｃは、図３３においてその下部からシフトインデータＳＩＤＯを受けてデータ転送モード時、図の上方方向に向かってデータを転送する。
【０１８４】
メモリ回路１の下位ビットＤＯ＜３＞−ＤＯ＜０＞に対して設けられるテストスキャンパス回路７０ｂは、図２９に示す構成と同様、データビットＤＯ＜３＞に対応する領域にシフトイン端子ＳＩＤを有し、データビットＤＯ＜０＞に対応する端部に、シフトアウト端子ＳＯＤを有する。
【０１８５】
この図３３に示すメモリテスト回路４の他の構成は、図２９に示すメモリテスト回路の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【０１８６】
この図３３に示すメモリテスト回路４においては、テストスキャンパス回路７０ｃのデータ転送モード時のデータ転送方向が異なり、応じて、メモリ回路１からの出力する上位データビットとテストスキャンパス回路７０ｃの出力信号との対応関係が異なるだけである。各スキャンパスにおいて、シフトイン端子ＳＩＤから偶数番目のスキャンフリップフロップ回路のＮＡＮＤ演算を行う複合論理ゲートの出力信号をＮＯＲ回路７５へ与えており、図２９に示すメモリテスト回路４と同様の動作が実現され、同様の効果を得ることができる。
【０１８７】
［実施の形態１５］
図３４は、この発明の実施の形態１５に従うメモリテスト回路４の構成を概略的に示す図である。この図３４に示すメモリテスト回路４は、以下の点が、図２９に示すメモリテスト回路４の構成と異なる。すなわち、メモリ回路１の上位データビットＤＯ＜７＞−ＤＯ＜４＞に対して設けられるテストスキャンパス回路７０ａは、そのシフトアウト端子ＳＯＤがメモリテスト回路４のシリアル出力端子ＳＯＤＯＵに接続される。また、メモリ回路１の下位データビットＤＯ＜３＞−ＤＯ＜０＞に対して設けられるテストスキャンパス回路７０ｄは、データビットＤＯ＜０＞に対応する端部にシフトイン端子ＳＩＤを有し、データビットＤＯ＜３＞に対応する端部にシフトアウト端子ＳＯＤを有する。このテストスキャンパス回路７０ｄのシフトアウトデータは、メモリテスト回路４の図の下部に設けられた別のシリアル出力端子ＳＯＤＯＬを介して出力される。
【０１８８】
この図３４に示すメモリテスト回路４の他の構成は、図２９に示すメモリテスト回路４の構成と同じであり、対応する部分には同一参照番号を付しその詳細説明は省略する。
【０１８９】
この図３４に示すメモリテスト回路４においても、単にテストスキャンパス回路７０ｄのデータ転送方向が図２９に示すテストスキャンパス回路７０ｂのスキャンパスのデータ転送方向と異なり、メモリ回路１の出力する下位データビットとテストスキャンパス回路７０ｄの出力信号との対応関係が異なるだけである。４ビットデータを転送するシリアルスキャンパスにおいて選択的にＮＯＲ回路７５に結合される信号の関係は、図２９に示す回路のそれと同じである。従って、このテストスキャンパス回路７０ａおよび７０ｄにおける演算操作は、図２９に示すテストスキャンパス回路７０ａおよび７０ｂの動作と同じであり、図２９に示すメモリテスト回路４と同様の動作および効果を実現することができる。
【０１９０】
また、シリアルスキャンパスが、テストスキャンパス回路７０ａおよび７０ｄそれぞれにおいて形成されるため、これらのテストスキャンパス回路７０ａおよび７０ｄのデータのシフトアウトを、少ないクロックサイクル数で行なうことが出来る。
【０１９１】
［実施の形態１６］
図３５は、この発明の実施の形態１６に従うメモリテスト回路の構成を概略的に示す図である。この図３５に示すメモリテスト回路４は、図２９に示すメモリテスト回路４の構成と以下の点でその構成が異なっている。すなわち、メモリ回路１の上位データビットＤＯ＜７＞−ＤＯ＜４＞に対して設けられるテストスキャンパス回路７０ｃは、データビットＤＯ＜４＞に対応する端部にシフトイン端子ＳＩＤを有し、シフトインデータＳＩＤＯを受け、データビットＤＯ＜７＞に対応する端部にシフトアウト端子ＳＯＤを有し、メモリテスト回路４のシフトアウト端子ＳＯＤＯＵにそのシフトアウト端子ＳＯＤが結合され、データ転送時、図の上方向に向かってデータを転送する。
【０１９２】
メモリ回路１の下位データビットＤＯ＜３＞−ＤＯ＜０＞に対して設けられるテストスキャンパス回路７０ｅは、データビットＤＯ＜３＞に対応する端部にシフトイン端子ＳＩＤを有し、テストスキャンパス回路７０ｃと共通にシフトイン信号ＳＩＤＯを受け、メモリ回路１のデータビットＤＯ＜０＞に対応する端部にシフトアウト端子ＳＯＤを有し、シフトアウトデータＳＯＤＯＬをメモリテスト回路４の図の下部に向かって出力する。
【０１９３】
この図３５に示すメモリテスト回路４の他の構成は、図２９に示すメモリテスト回路４の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【０１９４】
この図３５に示すメモリテスト回路４の構成においても、メモリ回路１からの上データビットＤ＜７＞−Ｄ＜４＞とテストスキャンパス回路７０ｃの出力データの対応関係が、図２９に示すテストスキャンパス回路７０ａのそれと異なるだけであり、ＮＯＲゲート７５に対しては、４ビットシリアルに転送パスにおいて、上流側から偶数番目の出力信号が結合されており、シリアル転送パスにおけるテストスキャンパス回路７０ｃとＮＯＲゲート７５との間の信号の結合関係は、図２９に示す回路と同じである。
【０１９５】
従って、この図３５に示すメモリテスト回路４の構成においても、テストスキャンパス回路７０ｃおよび７０ｅにおいては、図２９に示すメモリテスト回路４におけるテストスキャンパス回路７０ａおよび７０ｂと同様の演算操作が行なわれており、同様の効果を得ることができる。
【０１９６】
また、テストスキャンパス回路７０ｃおよび７０ｅがそれぞれ個々にシリアルスキャンパスを構成しており、少ないクロックサイクル数で、メモリテスト回路４の格納データを転送することが出来る。
【０１９７】
［実施の形態１７］
図３６は、この発明の実施の形態１７に従うメモリテスト回路の構成を概略的に示す図である。この図３６に示すメモリテスト回路４は、図３５に示すメモリテスト回路と、以下の点で、その構成が異なる。パス／フェイルを判定するＮＯＲ回路７５が、テストスキャンパス回路７０ｃの出力信号ＲＤＯ＜７＞およびＲＤＯ＜５＞を受けるＮＯＲゲート７５ｕと、出力スキャンパス７０ｅの出力ノードＲ＜２＞およびＲ＜０＞からの信号ＲＤＯ＜２＞およびＲＤＯ＜０＞を受けるＮＯＲゲート７５ｌと、これらのＮＯＲゲート７５ｕおよび７５ｌの出力信号を受けてパス／フェイル指示信号ＰＡＳＳを生成するＡＮＤゲート７５ａを含む。
【０１９８】
この図３６に示すメモリテスト回路４の他の構成は、図３５に示すメモリテスト回路の構成と同じであり、対応する部分には同一参照番号を付し、その詳細説明は省略する。
【０１９９】
ＮＯＲゲート７５ｕから上位ビットパス／フェイル指示信号ＰＡＳＵが生成され、ＮＯＲゲート７５ｌから下位ビットパス／フェイル指示信号ＰＡＳＬが出力される。
【０２００】
このＮＯＲ回路７５の構成においては、メモリ回路１の上位ビットＤＯ＜７＞−ＤＯ＜４＞に不良ビットが存在する場合には、ＮＯＲゲート７５ｕの出力信号ＰＡＳＵが“０”となり、またメモリ回路１の下位ビットＤＯ＜３＞−ＤＯ＜０＞に不良ビットが存在する場合には、ＮＯＲゲート７５ｌの出力信号がＰＡＳＬが“０”となる。したがって、不良ビットが存在する場合、上位ビットに不良ビットが存在するかまたは下位ビットに不良ビットが存在するかを識別することができる。したがって、パス／フェイル指示信号ＰＡＳＳが“０”であり、不良ビットの存在を示しているとき、これらの信号ＰＡＳＵおよびＰＡＳＬを見ることにより、上位ビットおよび下位ビットのいずれに不良ビットが存在するかを識別することができる。
【０２０１】
なお、ＡＮＤゲート７５ａの出力するパス／フェイル指示信号ＰＡＳＳを故障診断に用いない場合には、ＡＮＤゲート７５ａは省略することができる。
【０２０２】
ＮＡＮＤ演算操作および非蓄積比較動作モード時の動作は、先の図２９に示すメモリテスト回路４と同様に実行される。これにより、テスト回路の配線レイアウト面積を低減でき、また判定用の回路の占有面積を低減することができる。
【０２０３】
なお、ＮＡＮＤ演算とＮＯＲ演算を行なってパス／フェイルを判定する構成において、メモリ回路として、１０ビットデータを入出力するメモリ回路が用いられても、この８ビットデータを入出力するメモリ回路１と同様の接続を、テストスキャンパス回路において行ない、フリップフロップに対する入力信号に代えて、直列転送パスを形成する複合論理ゲートの出力信号を選択的にＮＯＲ回路に接続することにより、同様の効果を得ることができる。
【０２０４】
また、メモリ回路の入出力データビット数は、８ビットまたは１０ビットに限定されず、他のビット数であってもよい。メモリテスト回路内におけるスキャンパスにおいて、ＡＮＤ演算またはＮＡＮＤ演算が行なわれるように、１ビットおきのテストスキャンパス回路においてＮＡＮＤ演算またはＡＮＤ演算を行なうように構成することにより、任意の幅のデータビットのメモリ回路に対するメモリテスト回路を小占有面積で実現することができる。
【０２０５】
また、試験対象の回路として、メモリ回路に限定されず、出力データの期待値を予め設定することができかつ出力データビットすべてについて期待値との一致／不一致を判定するテストモードを有する回路であれば、本発明は適用可能である。
【０２０６】
【発明の効果】
以上のように、この発明に従えば、内部回路の出力データビットと期待値との一致／不一致を全ビットに判定する機能を有するテスト回路において、まず、出力データビット個々の不良判定結果を所定数ビット単位で縮退し、該縮退結果をさらに１ビット判定結果に縮退して出力している。したがって、最終段の判定回路の回路規模を低減でき、またこの最終段判定回路に対する配線レイアウト面積を低減することができる。
【図面の簡単な説明】
【図１】この発明の実施の形態１に従うメモリテスト回路の構成を概略的に示す図である。
【図２】図１に示すメモリ回路の上位ビットの部分の構成を概略的に示す図である。
【図３】図１に示すメモリ回路の下位ビットの部分の構成を概略的に示す図である。
【図４】図１に示すテストスキャンパス回路の構成を示す図である。
【図５】図４に示すテストスキャンパス回路における非蓄積比較動作モード時の信号の流れを示す図である。
【図６】図４に示すテストスキャンパス回路におけるＡＮＤ演算動作モード時の信号の流れを示す図である。
【図７】図１に示すテスト制御信号を発生する回路の構成を示す図である。
【図８】図４に示すテストスキャンパス回路における初期設定モード時の信号の流れを示す図である。
【図９】図４に示すテストスキャンパス回路における蓄積比較モード時の信号の流れを示す図である。
【図１０】図４に示すテストスキャンパス回路の直列転送モード時の信号の流れを示す図である。
【図１１】図７に示すテスト制御回路の制御動作を示すタイミング図である。
【図１２】図７に示すテスト制御回路の制御動作を示すタイミング図である。
【図１３】この発明の実施の形態２に従うテスト制御回路の構成を示す図である。
【図１４】図１３に示すテスト制御回路の制御動作を示すタイミング図である。
【図１５】この発明の実施の形態３に従うメモリテスト回路の構成を概略的に示す図である。
【図１６】図１５に示すメモリテスト回路の動作を示すタイミング図である。
【図１７】この発明の実施の形態４に従うメモリテスト回路の構成を概略的に示す図である。
【図１８】この発明の実施の形態５に従うメモリテスト回路の構成を概略的に示す図である。
【図１９】この発明の実施の形態６に従うメモリテスト回路の構成を概略的に示す図である。
【図２０】この発明の実施の形態７に従うメモリテスト回路の構成を概略的に示す図である。
【図２１】図２０に示すメモリ回路の上位ビットの部分の構成を概略的に示す図である。
【図２２】図２０に示すメモリ回路の下位ビットの部分の構成を概略的に示す図である。
【図２３】図２０に示すテストスキャンパス回路の構成を示す図である。
【図２４】この発明の実施の形態８に従うメモリテスト回路の構成を概略的に示す図である。
【図２５】この発明の実施の形態９に従うメモリテスト回路の構成を概略的に示す図である。
【図２６】この発明の実施の形態１０に従うメモリテスト回路の構成を概略的に示す図である。
【図２７】この発明の実施の形態１１に従うメモリテスト回路の構成を概略的に示す図である。
【図２８】この発明の実施の形態１２に従うメモリテスト回路の構成を概略的に示す図である。
【図２９】この発明の実施の形態１３に従うメモリテスト回路の構成を概略的に示す図である。
【図３０】図２９に示すテストスキャンパス回路の構成を示す図である。
【図３１】図３０に示すテストスキャンパス回路の非蓄積比較動作モード時の信号の流れを示す図である。
【図３２】図３０に示すテストスキャンパス回路のＮＡＮＤ演算動作モード時の信号の流れを示す図である。
【図３３】この発明の実施の形態１４に従うメモリテスト回路の構成を概略的に示す図である。
【図３４】この発明の実施の形態１５に従うメモリテスト回路の構成を概略的に示す図である。
【図３５】この発明の実施の形態１６に従うメモリテスト回路の構成を概略的に示す図である。
【図３６】この発明の実施の形態１７に従うメモリテスト回路の構成を概略的に示す図である。
【符号の説明】
１，５０  メモリ回路、４，４０  メモリテスト回路、２ａ−２ｄ，２  テストスキャンパス回路、３ａ−３ｄ  ＡＮＤ回路、２１，２２  複合論理ゲート、２３  ＮＯＲゲート、２４  フリップフロップ、３０  テスト制御回路、６０，６０ａ，６０ｂ  テストスキャンパス回路、７５  ＮＯＲ回路、７５ｕ，７５ｌＮＯＲゲート、７５ａ  ＡＮＤゲート。
【図１】
2004326893.tif 000003
【図２】
2004326893.tif 000004
【図３】
2004326893.tif 000005
【図４】
2004326893.tif 000006
【図５】
2004326893.tif 000007
【図６】
2004326893.tif 000008
【図７】
2004326893.tif 000009
【図８】
2004326893.tif 000010
【図９】
2004326893.tif 000011
【図１０】
2004326893.tif 000012
【図１１】
2004326893.tif 000013
【図１２】
2004326893.tif 000014
【図１３】
2004326893.tif 000015
【図１４】
2004326893.tif 000016
【図１５】
2004326893.tif 000017
【図１６】
2004326893.tif 000018
【図１７】
2004326893.tif 000019
【図１８】
2004326893.tif 000020
【図１９】
2004326893.tif 000021
【図２０】
2004326893.tif 000022
【図２１】
2004326893.tif 000023
【図２２】
2004326893.tif 000024
【図２３】
2004326893.tif 000025
【図２４】
2004326893.tif 000026
【図２５】
2004326893.tif 000027
【図２６】
2004326893.tif 000028
【図２７】
2004326893.tif 000029
【図２８】
2004326893.tif 000030
【図２９】
2004326893.tif 000031
【図３０】
2004326893.tif 000032
【図３１】
2004326893.tif 000033
【図３２】
2004326893.tif 000034
【図３３】
2004326893.tif 000035
【図３４】
2004326893.tif 000036
【図３５】
2004326893.tif 000037
【図３６】
2004326893.tif 000038