(57)【要約】【課題】  内蔵メモリ回路のテストと並行して、欠陥ビットの救済のための情報を生成してチップ外部へ出力もしくはチップ内部でＲＡＭの救済まで行なうことが可能なテスト回路を搭載した論理集積回路を提供する。【解決手段】  所望の論理機能を有する論理回路と、読出し書込み可能なメモリ回路（１０１等）と、該メモリ回路内に欠陥ビットが含まれているか否か検査するテスト回路（１１０，１２０）とを有し、上記論理回路とメモリ回路との間には信号をラッチするとともにシフトレジスタを構成可能な複数のフリップフロップ回路からなる境界ラッチ回路（１３１等）が設けられている論理集積回路において、テスト回路による検査実行時に検査結果を上記境界ラッチ回路に格納し、該格納された検査結果に基づいて上記メモリ回路の欠陥を救済するための欠陥救済情報を生成する欠陥救済情報生成回路（１５０）を備えるようにした。【選択図】図１
2006236551.tif 000002
【特許請求の範囲】
【請求項１】
論理機能を有する論理回路と、読出し書込み可能なメモリ回路と、該メモリ回路内に欠陥ビットが含まれているか否か検査するテスト回路と、上記論理回路とメモリ回路との間に信号をラッチするとともにシフトレジスタを構成可能な複数のフリップフロップ回路からなる境界ラッチ回路と、欠陥救済情報生成回路とが設けられている半導体集積回路であって、
検査実行時において、上記テスト回路が検査結果を上記境界ラッチ回路から回収しつつ上記欠陥救済情報生成回路が該検査結果に基づいて上記メモリ回路の欠陥を救済するための欠陥救済情報を生成することを特徴とする半導体集積回路。
【請求項２】
上記メモリ回路は正規のメモリ群および予備のメモリ群と、欠陥を含む上記正規のメモリ群の一部を上記予備のメモリ群に置き換えるための欠陥救済回路とを備え、
上記欠陥救済情報生成回路により生成された情報が上記欠陥救済回路に供給されて欠陥を含む上記正規のメモリ群の置き換えが行なわれるようにされている請求項１に記載の半導体集積回路。
【請求項３】
上記予備のメモリ群は、上記メモリ回路内のカラム方向に沿って配置されたメモリ列である請求項２に記載の半導体集積回路。
【請求項４】
上記テスト回路は、上記メモリ回路を検査するためのテストパターンを発生するテストパターン発生回路を備え、
上記テストパターン発生回路により発生されたテストパターンによって、上記メモリ回路の検査結果が上記境界ラッチ回路に格納される請求項１〜３のいずれかに記載の半導体集積回路。
【請求項５】
論理機能を有する論理回路と、読出しビット数が異なる読出し書込み可能な複数のメモリ回路と、該メモリ回路内に欠陥ビットが含まれているか否か検査するテスト回路と、上記論理回路と上記複数のメモリ回路との間に信号をラッチするとともにシフトレジスタを構成可能な複数のフリップフロップ回路からなる複数の境界ラッチ回路と、複数の欠陥救済情報生成回路とが設けられている半導体集積回路であって、
検査実行時において、上記テスト回路が検査結果を上記境界ラッチ回路から回収しつつ上記複数の欠陥救済情報生成回路が該検査結果に基づいて対応する上記メモリ回路の欠陥を救済するための欠陥救済情報を生成することを特徴とする半導体集積回路。
【請求項６】
上記複数のメモリ回路の上記複数の境界ラッチ回路は、シフトスキャンパスを構成可能に接続されている請求項５に記載の半導体集積回路。
【請求項７】
上記複数のメモリ回路は正規のメモリ群および予備のメモリ群と、欠陥を含む上記正規のメモリ群の一部を上記予備のメモリ群に置き換えるための欠陥救済回路とをそれぞれ備え、
上記欠陥救済情報生成回路により生成された情報が上記欠陥救済回路に供給されて欠陥を含む上記正規のメモリ群の置き換えが行なわれるようにされている請求項５または６に記載の半導体集積回路。
【請求項８】
上記予備のメモリ群は、上記メモリ回路内のカラム方向に沿って配置されたメモリ列である請求項７に記載の半導体集積回路。
【請求項９】
上記テスト回路は、上記複数のメモリ回路を検査するためのテストパターンを発生する共通のテストパターン発生回路を備え、
上記テストパターン発生回路により発生されたテストパターンによって、上記メモリ回路の検査結果が上記境界ラッチ回路に格納される請求項５〜８のいずれかに記載の半導体集積回路。
【請求項１０】
上記欠陥救済回路は、上記メモリ回路内のメモリアレイとデータ入出力端子との間に設けられ隣接するメモリ列のいずれか一方のデータ線と上記データ入出力端子のうち対応するデータ入出力端子とを選択的に接続する複数のセレクタを備え、欠陥を含むメモリ列を飛ばしてデータ線を選択するように上記複数のセレクタが制御される請求項８に記載の半導体集積回路。
【請求項１１】
論理機能を有する論理回路と、読出し書込み可能なメモリ回路と、上記論理回路にテストデータを供給しテスト結果を取り出す第一スキャンパスと、上記メモリ回路にテストデータを供給しテスト結果を取り出す第二スキャンパスと、を備えた半導体集積回路であって、
上記第一スキャンパスおよび上記第二スキャンパスの途中にはそれぞれ複数のフリップフロップ回路が設けられ、上記論理回路のテスト結果を格納する上記第一スキャンパス上のフリップフロップ回路と、上記メモリ回路のテスト結果を格納する上記第二スキャンパス上のフリップフロップ回路とが共用されていることを特徴とする半導体集積回路。
【請求項１２】
上記第一スキャンパスおよび上記第二スキャンパスの途中にはそれぞれ信号のパスを切り替えるセレクタ回路が設けられ、
上記セレクタ回路は、テスト動作でない通常の動作時には有意な信号が上記テスト結果を格納するフリップフロップ回路を通過しないようにパスを切り替える請求項１１に記載の半導体集積回路。
【請求項１３】
上記メモリ回路のテスト結果に基づいて上記メモリ回路の欠陥を救済するための欠陥救済情報を生成する欠陥救済情報生成回路を備えている請求項１１または１２に記載の半導体集積回路。
【請求項１４】
上記メモリ回路のテスト結果を回収する動作と、上記欠陥救済情報生成回路が上記テスト結果に基づいて欠陥救済情報を生成する動作とが重なる期間を有する請求項１３に記載の半導体集積回路。
【請求項１５】
上記メモリ回路を検査するためのテストパターンを発生するテストパターン発生回路を備える請求項１１〜１４のいずれかに記載の半導体集積回路。
【請求項１６】
複数のメモリ回路と、該複数のメモリ回路のそれぞれに対応して設けられた欠陥救済情報生成回路と、該欠陥救済情報生成回路により生成された欠陥救済情報に基づいて対応するメモリ回路内の欠陥を救済する救済回路とを備え、
上記複数のメモリ回路のそれぞれに対応した欠陥救済情報生成回路における欠陥救済情報の生成動作および救済回路における欠陥救済動作が上記複数のメモリ回路それぞれで重なる期間を有するように実行される請求項１３に記載の半導体集積回路。
【請求項１７】
上記複数のメモリ回路を検査するためのテストパターンを発生する共通のテストパターン発生回路を備える請求項１６に記載の半導体集積回路。
【請求項１８】
上記論理回路を検査するためのテストパターンを、上記第一スキャンパスを介して上記論理回路へ供給し、テスト結果を上記第一スキャンパスを介して回収するロジックテスト回路を備える請求項１１〜１７のいずれかに記載の半導体集積回路。
【請求項１９】
外部から入力されたテストパターンが上記第一スキャンパスを介して上記論理回路へ供給され、テスト結果が上記第一スキャンパスを介して外部へ出力されるように構成されている請求項１１〜１７のいずれかに記載の半導体集積回路。
【請求項２０】
論理機能を有する論理回路と、読出し書込み可能なメモリ回路と、上記論理回路にテストデータを供給しテスト結果を取り出す第一スキャンパスと、上記メモリ回路にテストデータを供給しテスト結果を取り出す第二スキャンパスと、を備えた半導体集積回路であって、上記第一スキャンパスおよび上記第二スキャンパスの途中にはそれぞれ複数のフリップフロップ回路が設けられ、上記論理回路のテスト結果を格納する上記第一スキャンパス上のフリップフロップ回路と、上記メモリ回路のテスト結果を格納する上記第二スキャンパス上のフリップフロップ回路とが共用されている半導体集積回路を複数個ウェハ上に形成する第一工程と、上記第一工程の後に上記半導体集積回路内の回路を検査する検査工程と、上記検査工程の後に検査結果に基づいてウェハ上の半導体集積回路チップを選別する第二工程と、上記第二工程の後に選別された半導体集積回路チップをパッケージに組み立てる第三工程とを備える半導体集積回路の製造方法。
【請求項２１】
上記検査工程において、上記ウェハ上の複数の半導体集積回路の上記第一及び第二スキャンパスそれぞれを用いて並行して検査を実行し、それぞれ検査結果を上記複数の半導体集積回路から並行して回収する請求項２０に記載の半導体集積回路の製造方法。
【請求項２２】
論理機能を有する論理回路と、読出し書込み可能なメモリ回路と、上記論理回路にテストデータを供給しテスト結果を取り出す第一スキャンパスと、上記メモリ回路にテストデータを供給しテスト結果を取り出す第二スキャンパスと、を備えた半導体集積回路であって、上記第一スキャンパスおよび上記第二スキャンパスの途中にはそれぞれ複数のフリップフロップ回路が設けられ、上記論理回路のテスト結果を格納する上記第一スキャンパス上のフリップフロップ回路と、上記メモリ回路のテスト結果を格納する上記第二スキャンパス上のフリップフロップ回路とが共用されている半導体集積回路を複数個ウェハ上に形成する第一工程と、上記第一工程の後に上記半導体集積回路内の回路を検査する第一の検査工程と、上記第一の検査工程の後に検査結果に基づいて半導体集積回路チップ内のメモリ回路の欠陥を救済する救済工程と、上記救済工程の後に上記半導体集積回路内の回路を検査する第二の検査工程と、上記第二の検査工程の後に検査結果に基づいてウェハ上の半導体集積回路チップを選別する選別工程と、上記選別工程の後に選別された半導体集積回路チップをパッケージに組み立てる組み立て工程と、上記組み立て工程のあとに組み立て後の製品を検査する第三の検査工程とを備える半導体集積回路の製造方法。
【請求項２３】
上記ウェハ上の複数の半導体集積回路はそれぞれテストパターンを発生するパターン発生回路と、テスト結果と期待値とを比較する比較回路を有するテスト回路とを備え、上記第一の検査工程と、第二の検査工程と、第三の検査工程において、それぞれ上記テスト回路によるテスト動作を実行する請求項２２に記載の半導体集積回路の製造方法。
【請求項２４】
複数のメモリ回路と、該複数のメモリ回路のそれぞれに対応して設けられた欠陥救済情報生成回路と、該欠陥救済情報生成回路により生成された欠陥救済情報に基づいて対応するメモリ回路内の欠陥を救済する救済回路とを備え、上記複数のメモリ回路のそれぞれに対応した欠陥救済情報生成回路における欠陥救済情報の生成動作および救済回路における欠陥救済動作が上記複数のメモリ回路それぞれで重なる期間を有するように実行される半導体集積回路を複数個ウェハ上に形成する第一工程と、上記第一工程の後に上記半導体集積回路内の回路を検査する検査工程と、上記検査工程の後に検査結果に基づいてウェハ上の半導体集積回路チップを選別する選別工程と、上記選別工程の後に選別された半導体集積回路チップをパッケージに組み立てる組立工程とを備える半導体集積回路の製造方法であって、
上記検査工程において、上記ウェハ上の複数の半導体集積回路のそれぞれでメモリ回路のテスト動作と欠陥救済情報生成動作とが重なる期間を有し、上記ウェハ上の複数の半導体集積回路間でもメモリ回路のテスト動作および欠陥救済情報生成動作が重なる期間を有する半導体集積回路の製造方法。
【請求項２５】
上記検査工程において、テスタにより上記ウェハ上の複数の半導体集積回路へ同時に電源電圧を供給して、上記ウェハ上の複数の半導体集積回路で並行して検査を実行させ、それぞれの検査結果を上記テスタにより上記複数の半導体集積回路から並行して回収する請求項２４に記載の半導体集積回路の製造方法。
【請求項２６】
上記テスタはロジックテスタである請求項２５に記載の半導体集積回路の製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＲＡＭ（ランダムアクセスメモリ）および論理回路を内蔵した半導体集積回路（論理集積回路）において、ＲＡＭのテスト回路および論理回路のテスト回路を搭載する場合に適用して有効な技術、さらにはテスト回路によるＲＡＭのテストと並行して救済情報を得る技術に関する。本発明は、例えばＲＡＭおよびＣＰＵ（中央処理装置）を内蔵したシステムＬＳＩ（大規模集積回路）などの論理ＬＳＩに適用して有効な技術である。
【背景技術】
【０００２】
従来一般に、ＲＡＭやＣＰＵ等を搭載したシステムＬＳＩと呼ばれる論理ＬＳＩでのテスト容易化設計手法として、内部論理回路に設けられたフリップフロップをシリアルに接続してシフトレジスタを構成して、このシフトレジスタにテストデータを入れ、内部論理回路を動作させて論理の状態をシフトレジスタでチップ外部へ取り出して検査するスキャンパス方式が良く使われている。また、内蔵ＲＡＭの欠陥ビットの有無を検出するため、ロジック部とＲＡＭの境界にシフトレジスタを構成可能なラッチ回路を配置するとともにＲＡＭのテストパターンを発生する回路および読出しデータと期待値を比較する回路を有するＢＩＳＴ（ビルトイン・セルフテスト）回路を設けて、ＲＡＭのテストを行なう技術がある（例えば特許文献１）。
【特許文献１】特開平８−２６２１１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の内蔵ＲＡＭのテスト回路では多種多様なＲＡＭに対して、多種多様なＲＡＭの同時テストと並行して、救済情報を生成してチップ外部へ出力したり、チップ内部でＲＡＭの救済まで行なうようなものはなかった。
【０００４】
この発明の目的は、内蔵ＲＡＭのテストと並行して、欠陥ビットの救済のための情報を生成してチップ外部へ出力もしくはチップ内部でＲＡＭの救済まで行なうことが可能なテスト回路を搭載した論理集積回路を提供することにある。
【０００５】
この発明の他の目的は、回路規模の増大を抑制しつつ内蔵ＲＡＭの欠陥ビットの救済のための情報を生成することが可能なテスト回路を搭載した論理集積回路を提供することにある。
この発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００６】
本願において開示される発明のうち代表的なものの概要を説明すれば、下記のとおりである。
すなわち、所望の論理機能を有する論理回路と、読出し書込み可能なメモリ回路（内蔵ＲＡＭ）と、該メモリ回路内に欠陥ビットが含まれているか否か検査するテスト回路と、上記論理回路とメモリ回路との間に信号をラッチするとともにシフトレジスタを構成可能な複数のフリップフロップ回路からなる境界ラッチ回路と、欠陥救済情報生成回路とが設けられている論理集積回路において、検査実行時において、上記テスト回路が検査結果を上記境界ラッチ回路に回収しつつ、上記欠陥救済情報生成回路が該検査結果に基づいて上記メモリ回路の欠陥を救済するための欠陥救済情報を生成するようにしたものである。
【０００７】
ここで、望ましくは、上記メモリ回路は、予備のメモリ群（メモリ列またはメモリ行）と、正規のメモリ群を上記予備のメモリ群に置き換えるための欠陥救済回路とを備え、上記欠陥救済情報生成回路により生成された情報が上記欠陥救済回路に供給されてメモリ群の置き換えが行なわれるように構成する。
【０００８】
上記した手段によれば、内蔵メモリ回路のテストと並行して、欠陥ビットの救済のための情報を生成してチップ外部へ出力もしくはチップ内部でメモリ回路の救済まで行なうことができる。そのために、テスト時間を短縮することにより製造コストを削減できる。しかも、境界ラッチ回路にテスト回路の検査結果を格納し、格納された検査結果に基づいて欠陥救済情報生成回路がメモリ回路の欠陥を救済するための欠陥救済情報を生成するため、回路規模の増大を抑制しつつメモリ回路の欠陥ビットの救済のための情報を生成することができる。さらに、本発明は、読出しビット数が異なる複数の読出し書込み可能なメモリ回路を内蔵する論理集積回路に適用することができ、かつ複数のメモリ回路において並行して欠陥救済情報を生成することができる。
【０００９】
また、望ましくは、上記複数のメモリ回路のそれぞれの境界ラッチ回路は、シフトスキャンパスを構成可能にする。これにより、１本のシフトスキャンパスを通してテスト回路による検査結果を１箇所に集めることができるため、多数の内蔵メモリ回路を備える論理集積回路にあっては、信号線の数が少なくて済むので配線のためのスペースを減らしチップサイズを低減することができる。
【００１０】
さらに望ましくは、欠陥救済回路は、内蔵メモリ回路のメモリアレイとデータ入出力端子との間に設けられ隣接するメモリ列の一方のデータ線と選択的に接続する複数のセレクタを備え、欠陥を含むメモリ列を飛ばしてデータ線が選択されるようにセレクタを制御する。これにより、比較的簡単な論理回路で欠陥救済情報を生成することができ、回路規模の増大を抑制しつつメモリ回路の欠陥救済情報を生成することが可能なテスト回路を実現することができる。
【００１１】
本出願の他の発明は、論理回路と、メモリ回路と、論理回路用の第一スキャンパスと、メモリ回路用の第二スキャンパスと、を備えた半導体集積回路において、論理回路のテスト結果を格納する第一スキャンパス上のフリップフロップと、メモリ回路のテスト結果を格納する第二スキャンパス上のフリップフロップとを共用させるようにした。
上記した手段によれば、論理回路やメモリ回路のテストを行なうための回路の規模を小さくして、チップサイズの低減を図ることができる。
【発明の効果】
【００１２】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
すなわち、本発明に従うと、内蔵ＲＡＭのテストと並行して、欠陥ビットの救済のための情報を生成してチップ外部へ出力もしくはチップ内部でＲＡＭの救済まで行なうことが可能であるとともに、回路規模の増大を抑制しつつ内蔵ＲＡＭの欠陥ビットの救済のための情報を生成することが可能なテスト回路を搭載した論理集積回路を実現することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の好適な実施例を図面に基づいて説明する。
図１は、本発明に係る内蔵ＲＡＭを検査するテスト回路（いわゆるＢＩＳＴ回路）の概略構成を示す。なお、本実施例のテスト回路が適用されるＬＳＩは、複数のＲＡＭとＣＰＵやその周辺回路などのロジック回路がひとつの半導体チップ上に形成されてなる論理ＬＳＩである。図１おいて、１０１〜１０３はＬＳＩ内部に設けられているＲＡＭである。ＲＡＭ１０１〜１０３は、ＩＯビット数すなわち同時に入出力されるデータのビット数が同一でも良いし、互いに異なっていても良い。
【００１４】
１１０はテスト回路全体を制御するＢＩＳＴ制御回路、１２０は内蔵ＲＡＭ１０１をテストするためのアドレスおよびデータを発生するパターン発生回路、１３１〜１３３は、図示しないロジック回路とＲＡＭ１０１〜１０３との境界に設けられシフトレジスタを構成可能なフリップフロップからなる境界ラッチ回路である。また、１４０は、ＲＡＭ１０１から読み出されたデータとパターン発生回路１２０により生成された期待値とを比較する比較回路、１５０は比較回路１４０による比較結果とＢＩＳＴ制御回路１１０からの信号に基づいて故障カラムアドレスや救済情報を生成する自己修復回路（ＢＩＳＲ回路）である。
【００１５】
この実施例においては、特に制限されるものでないが、ＲＡＭ１０１〜１０３に対応した境界ラッチ１３１〜１３３がメモリテスト用スキャンパスＳＰ１，ＳＰ２によって接続され、各境界ラッチに保持されているデータをシフトしてスキャンパスＳＰ１〜ＳＰ３を介して図外のＴＡＰ（テストアクセスポート）へ送られ、チップ外部へ出力可能に構成されている。
【００１６】
本実施例を適用することにより、１本のスキャンパスをチップの周縁部に沿って配設することが可能となり、スキャンパスのレイアウト設計が容易になるという利点がある。また、ＴＡＰをチップ上に設けないＬＳＩにおいても同様に、複数のＲＡＭの境界ラッチを１本のスキャンパスで接続することにより、テスト結果を出力するための外部端子を１つにすることができるという利点がある。
【００１７】
パターン発生回路１２０は、ＲＡＭ１０１〜１０３にそれぞれ対応して設けてもよいし、複数のＲＡＭに対して共通の回路として設けるようにしても良い。ＢＩＳＴ制御回路１１０は、下記に記載されるようなすべての狭義のＢＩＳＴ回路に対して共通の回路として設けられている。本実施例では、境界ラッチ１３１と比較回路１４０とＢＩＳＲ回路１５０を合わせたものをブリッジ回路と称する。また、パターン発生回路１２０とブリッジ回路を合わせたものを狭義のＢＩＳＴ回路、狭義のＢＩＳＴ回路とＢＩＳＴ制御回路１１０を合わせたものを広義のＢＩＳＴ回路と称する。
【００１８】
図２には、ブリッジ回路のより詳しい構成が示されている。ブリッジ回路の構成は、対応するＲＡＭが異なっても基本的には同じであるので、以下、ＲＡＭ１０１に対応するブリッジ回路について説明する。
図２に示されているように、境界ラッチ１３１は、シフトレジスタを構成可能なフリップフロップＦＦ１，ＦＦ２，ＦＦ３……と、ロジック回路ＬＣ１……からの信号または上記パターン発生回路１２０で生成されたテストパーン信号のいずれかを選択してＲＡＭ１０１またはシフトレジスタを構成可能なフリップフロップＦＦ１，ＦＦ２，ＦＦ３……に供給するためのセレクタＳＥＬ１，ＳＥＬ２，ＳＥＬ３……と、ＦＦ１，ＦＦ２，ＦＦ３……の出力を自分自身の入力に返す自己ループあるいはシフトレジスタのためのスキャンパス等を選択するためのセレクタＳＥＬ１１，ＳＥＬ１２，ＳＥＬ１３……と、セレクタＳＥＬ２１，ＳＥＬ２２……などから構成されている。
【００１９】
なお、セレクタＳＥＬ２１，ＳＥＬ２２……が設けられるのは、データ信号Ｄｏｕｔに対応した箇所のみである。また、図２において、すべての信号線と回路を図示するのは紙面の都合で困難であるため、図２においては、ＲＡＭ１０１に入力される制御信号のうち代表としてチップイネーブル信号ＣＥが、またアドレス信号ＡＤは１本、データ信号ＤＴは２本のみ示して他は図示を省略する。ＲＡＭ１０１の記憶容量が２nワードでＩＯビット数が３２ビットの場合、アドレス信号はｎ本、データ信号は３２本とされ、フリップフロップＦＦ２，ＦＦ３，ＦＦ４……とセレクタＳＥＬ１２，ＳＥＬ１３，ＳＥＬ１４……およびＳＥＬ２１，ＳＥＬ２２……は、それぞれ信号数に対応した数だけ設けられる。
【００２０】
セレクタＳＥＬ２１，ＳＥＬ２２……は、ロジックテスト時にはテストパターンもしくは検査結果を格納するＦＦ３，ＦＦ４……の出力を選択し、ＲＡＭテスト時とユーザー動作時にはＲＡＭ１０１の出力を選択して、比較回路１４０とロジック回路ＬＣ２側へ出力するように制御される。これにより、ロジックテスト時とＲＡＭテスト時とでフリップフロップＦＦ４を共用できるようになっている。
【００２１】
また、セレクタＳＥＬ１、ＳＥＬ２、ＳＥＬ３、ＳＥＬ４はモード制御回路１６０からの選択制御信号ｓｅｌｍｉによって、セレクタＳＥＬ２１，ＳＥＬ２２は選択制御信号ｓｅｌｍｏによって制御される。モード制御回路１６０には、ＲＡＭテストモードかロジックテストモードか通常動作モードを指示するコードを設定するレジスタとデコーダとを設けて、選択制御信号ｓｅｌｍｉ，ｓｅｌｍｏを生成させるように構成することができる。
【００２２】
図２には、ロジック回路の一例としてＲＡＭ１０１の書込みデータを生成するロジック回路ＬＣ１と、ＲＡＭ１０１からの読出しデータを処理するロジック回路ＬＣ２が示されている。ロジック回路ＬＣ１とＬＣ２は、それぞれ組合せ論理回路ＬＡ１，ＬＡ２；ＬＡ３，ＬＡ４と、各組合せ論理回路ＬＡ１，ＬＡ２；ＬＡ３，ＬＡ４間に設けられテスト時にシフトレジスタを構成可能なフリップフロップＦＦ２１，ＦＦ２２；ＦＦ２３，ＦＦ２４、信号パスを切り替えるセレクタＳＥＬ３１，ＳＥＬ３２；ＳＥＬ３３，ＳＥＬ３４などを備える。テスト時にセレクタＳＥＬ３１，ＳＥＬ３２；ＳＥＬ３３，ＳＥＬ３４を切り替えることにより、テストパターンのスキャンインパスやテスト結果のスキャンアウトパスが形成される。
【００２３】
図２においては、紙面の大きさと説明の都合で、ロジック用スキャンパスＬＳＰ２を介してロジック回路ＬＣ１から伝送されてくる信号がセレクタＳＥＬ１４へ供給されるようにされたパスが図示されているが、ＬＳＰ２を介した信号をセレクタＳＥＬ１３へ供給してＦＦ３にラッチできるように構成しても良い。これにより、ロジックテスト時とＲＡＭテスト時とでフリップフロップＦＦ３，ＦＦ４を共用できるようになる。他のフリップフロップＦＦ１，ＦＦ２……についても同様である。
【００２４】
ロジックテストとメモリテストの関係は、図９に示されている。すなわち、ロジックテスト時には、先ずロジックＢＩＳＴ１７０からのテストパターンのスキャンインＳＩＮが実行される。このとき、選択制御信号ｓｅｌｍｉが"Ｌ"、ｓｅｌｍｏが"Ｈ"にされ、ロジック回路ＬＣ１内のスキャンパスＬＳＰ１、ロジック回路と境界ラッチ内との間のスキャンパスＬＳＰ２を通してＦＦ２１、ＦＦ２２、ＦＦ４へテストデータが取り込まれる。そして、そのデータが組合せ回路ＬＡ２，ＬＡ３へ入力される。
【００２５】
次に、データキャプチャが実行される。このとき、図２のスキャンイネーブル信号ＳＥが"０"となり、フリップフロップＦＦ４にはセレクタＳＥＬ４で選択された信号（ＬＡ２の出力Ｖ１）が入る。また、フリップフロップＦＦ２３にはセレクタＳＥＬ２２によって選択されたフリップフロップＦＦ４の結果（Ｖ２）が入り、フリップフロップＦＦ２４にはセレクタＳＥＬ３４で選択された信号（ＬＡ３の出力Ｖ３）が入る。
【００２６】
スキャンアウト時には、各フリップフロップＦＦ４、ＦＦ２３、ＦＦ２４の結果が境界ラッチ内のパスとロジック回路ＬＣ２との間のスキャンパスＬＳＰ４、ロジック回路ＬＣ２内のスキャンパスＬＳＰ２を通してＳＯＵＴとして出力される。
【００２７】
ＲＡＭテスト時には、選択制御信号ｓｅｌｍｉが"Ｈ"、ｓｅｌｍｏが"Ｌ"にされ、セレクタＳＥＬ４はパターン発生器１２０からの信号を選択するように制御されて、セレクタＳＥＬ２２はＲＡＭ１０１の出力を選択するように制御される為、フリップフロップＦＦ４にはＲＡＭテストの検査結果が格納される。テスト動作でない通常動作時には、選択制御信号ｓｅｌｍｉとｓｅｌｍｏは共に"Ｌ"とされ、セレクタＳＥＬ４はロジック回路ＬＣ１の出力を選択する側に制御され、セレクタＳＥＬ２２の出力はＲＡＭの出力となる。
【００２８】
ＢＩＳＲ回路１５０は、比較回路１４０による比較結果に基づいて欠陥ビットに対応するカラムアドレスを判定するカラムアドレス判定回路１５１と、境界ラッチ１３１からスキャンアウトされるＲＡＭの読出しデータとＢＩＳＴ制御回路１１０からの信号に基づいて複数の欠陥が含まれていないか判定するマルチフェイル回路１５２と、ＢＩＳＴ制御回路１１０からの信号に基づいてエンコードされた救済情報を生成するシーケンシャルエンコーダ１５３と、ＢＩＳＴ制御回路１１０内のカウンタの値に基づいてマルチフェイル回路１５２やシーケンシャルエンコーダ１５３に対するイネーブル信号を生成するシフトデータ制御回路１５４とから構成されている。
【００２９】
シーケンシャルエンコーダ１５３により生成された救済情報は、ＲＡＭに欠陥ビットを含むメモリ列を予備のメモリ列に置き換える冗長回路が設けられている場合にはその冗長回路へ、また冗長回路がない場合には一旦ＴＡＰ（Test Access Port）と呼ばれるインタフェース回路１８０へ送られ、ＴＡＰを介してチップ外部へ出力されるように構成される。なお、ＴＡＰは、ＪＴＡＧ（Joint Test Action Group）と呼ばれる団体により決定されたバウンダリスキャンテストに関する規格で規定されているインタフェース回路であり、ＴＡＰに関しては、後に図１０を用いて詳しく説明する。
【００３０】
比較回路１４０は、セレクタＳＥＬ２１，ＳＥＬ２２……を介して供給されるＲＡＭの読出しデータとパターン発生回路１２０から供給される期待値データとを入力とする比較器としてのイクスクルーシブＯＲゲートＧ１，Ｇ２，……と、該イクスクルーシブＯＲゲートＧ１，Ｇ２，……の出力同士の論理和をとって出力するＯＲゲートＧ２０と、該ＯＲゲートＧ２０の出力またはフリップフロップＦＦ４の出力を選択するセレクタＳＥＬ２０と、該セレクタＳＥＬ２０により選択された信号をラッチするフリップフロップＦＦ２０と、ＦＦ２０の出力とＯＲゲートＧ２０の出力の論理和をとってセレクタＳＥＬ２０へ供給するＯＲゲートＧ２１と、イクスクルーシブＯＲゲートＧ１，Ｇ２，……の出力とフリップフロップＦＦ３，ＦＦ４……の出力の論理和をとってセレクタＳＥＬ３，ＳＥＬ４……を介してＦＦ３，ＦＦ４……へ戻すＯＲゲートＧ３１，Ｇ３２……などから構成されている。
【００３１】
図３には、ＢＩＳＲ回路１５０のうちカラムアドレス判定回路１５１を除いたマルチフェイル回路１５２とシーケンシャルエンコーダ１５３のより詳しい構成が示されている。この実施例では、ＩＯビット数が３２ビットのＲＡＭに対応したＢＩＳＲ回路１５０の構成が示されている。シフトデータ制御回路１５４は、ＢＩＳＴ制御回路１１０内のカウンタ１１１の値"sd_valid"を入力とするデコーダにより構成され、マルチフェイル回路１５２に対してカウンタの値が３２ビットの間はビットカウント・イネーブル信号"bitcount_en"をアサートし、カウンタの値が３２ビットを越えるとビットカウント・イネーブル信号"bitcount_en"をネゲートする。
【００３２】
なお、カウンタの値"sd_valid"は、他のＲＡＭに対応したＢＩＳＲ回路１５０にも供給される。そのＲＡＭのＩＯビット数が例えば１６ビットの場合、対応するＢＩＳＲ回路１５０内のシフトデータ制御回路１５４は、ＢＩＳＴ制御回路１１０からのカウンタの値"sd_valid"が１６ビットの最大値に達するまでの間はビットカウント・イネーブル信号"bitcount_en"をハイレベルにアサートし、カウンタの値が１６ビットを越えるとビットカウント・イネーブル信号"bitcount_en"をロウレベルにネゲートするように構成される。
【００３３】
マルチフェイル回路１５２は、上記シフトデータ制御回路１５４からのビットカウント・イネーブル信号"bitcount_en"がハイレベルの期間だけ前記境界ラッチ１３１のフリップフロップＦＦ３，ＦＦ４……に保持されている判定結果の取り込みを許可するＡＮＤゲートＧ４１，Ｇ４２と、該ゲートＧ４１，Ｇ４２の出力信号とフィードバック信号の論理和をとるＯＲゲートＧ４３，Ｇ４４と、該ゲートＧ４３，Ｇ４４の出力信号またはフィードバック信号を選択するセレクタＳＥＬ４１，ＳＥＬ４２と、該セレクタＳＥＬ４１，ＳＥＬ４２により選択された信号をラッチするフリップフロップＦＦ４１，ＦＦ４２と、ＦＦ４１，ＦＦ４２の出力信号の論理積をとるＡＮＤゲートＧ４５などから構成され、フリップフロップＦＦ４１の状態が欠陥ビットの有無を示すフェイル信号"ｒｅｉ"として出力され、ＡＮＤゲートＧ４５の出力が複数の欠陥ビットの有無を示すマルチフェイル信号"multi_fail"として出力されるようになっている。
【００３４】
シーケンシャルエンコーダ１５３は、上記シフトデータ制御回路１５４からのビットカウント・イネーブル信号"bitcount_en"の反転信号とフィードバック信号の論理和をとるＯＲゲートＧ５５と、該ゲートＧ５５の出力信号またはフィードバック信号を選択するセレクタＳＥＬ５５と、該セレクタＳＥＬ５５により選択された信号をラッチするフリップフロップＦＦ５５と、インクリメント機能を有するアダー（加算器）ＡＤＤと、該アダーＡＤＤの出力信号またはフィードバック信号を選択するセレクタＳＥＬ５０〜ＳＥＬ５４と、該セレクタＳＥＬ５０〜ＳＥＬ５４により選択された信号をラッチするフリップフロップＦＦ５０〜ＦＦ５４と、ＦＦ５０〜ＦＦ５４の出力信号とシフトデータ制御回路１５４からのビットカウント・イネーブル信号"bitcount_en"の反転信号同士の論理積をとるＡＮＤゲートＧ５０〜Ｇ５４などから構成され、全体としてカウンタ回路のような動作を行なうようにされ、カウンタの値をＡＮＤゲートＧ５０〜Ｇ５４で反転し救済情報（欠陥ビットの位置を示す情報に相当）"rai[0]"〜"rai[4]"として出力するようになっている。
【００３５】
ここで、図３のＢＩＳＲ回路における救済情報の生成動作を、図４のタイミングチャートを用いて説明する。
【００３６】
ＲＡＭのテストが開始されると、ＢＩＳＴ制御回路１１０によってまず境界ラッチ１３１やマルチフェイル回路１５２、シーケンシャルエンコーダ１５３内のフリップフロップのリセット等、ＢＩＳＴ回路の初期化（図４の期間Ｔ１）を行なってから、パターン発生回路１２０が起動されて生成したパターンデータによりＲＡＭ１０１〜１０３のテストが行なわれる（図４の期間Ｔ２）。このＲＡＭテストでは、パターン発生回路１２０によって生成されたパターンデータに従ってＲＡＭ１０１〜１０３へデータを書き込んだ後、データを読み出しながら期待値との比較が行なわれて比較結果が境界ラッチ１３１内のフリップフロップＦＦ３，ＦＦ４……に格納される。
【００３７】
尚、図４では読み出し部分でＲＡＭの出力はＤＯＵＴ［２］のみを記載しているが、他のＤＯＵＴ端子からの出力も同様である。ＲＡＭの読み出しが開始されると、ＲＡＭのＣＥ信号が"１"になり、アドレス信号ＡＤが０，１，２…と変化し、ＲＡＭの出力ＤＯＵＴ［２］が０，０，１…と出力されると、図２のパターン発生器からの期待値信号ｃｄと比較された結果が比較回路内１４０内の回路Ｇ２の出力となる。アドレス信号ＡＤが１番地の時、ＲＡＭの出力はＤＯＵＴ［２］は"０"で期待値信号ｃｄが"１"の為、比較結果がフェイル結果として、回路Ｇ２の出力が"１"になる。そして、この回路Ｇ２の出力と境界ラッチ１３１の結果との論理和をＯＲ回路Ｇ３２を介して境界ラッチ１３１にフィードバックして、境界ラッチの結果（図２のＦＦ３，Ｆ４及び図４のｄａｔａ１ｆｆ［２］）を更新する。その為、アドレス信号ＡＤが"２"の時は出力結果と期待値結果が同じではあるが、境界ラッチの結果が既に"１"であるため、以降、境界ラッチの結果は"１"のまま保持される。
【００３８】
次に、パターン発生回路１２０の動作が停止すると、ＢＩＳＴ制御回路１１０からテスト終了信号が出される（図４のタイミングｔ３）。次に、テスト結果の回収モードを設定して（タイミングｔ４）、データシフト実行信号を有効にすると（タイミングｔ５）、境界ラッチ１３１〜１３３内のセレクタＳＥＬ１３，ＳＥＬ１４……は、フリップフロップＦＦ３，ＦＦ４……をシフトレジスタとして動作するように設定される。そして、ＢＩＳＴ制御回路１１０内のカウンタが起動され、カウンタの値"sd_valid"が更新されて行く。また、境界ラッチ１３１〜１３３内のフリップフロップＦＦ３，ＦＦ４……に保持されているテスト結果がスキャンパスを通してシフトされる（図４の期間Ｔ３）。
【００３９】
この間に、ＢＩＳＲ回路内においては、ビットカウント・イネーブル信号"bitcount_en"が有効レベルにアサートされ、これによってマルチフェイル回路１５２とシーケンシャルエンコーダ１５３が活性化される。マルチフェイル回路１５２では、境界ラッチ１３１〜１３３内のフリップフロップＦＦ３，ＦＦ４……から送られてくる比較結果データが、読出しデータと期待値との不一致を示す"１"が入った時点で出力"rei"がハイレベルに変化される（タイミングｔ６，ｔ７）。一方、シーケンシャルエンコーダ１５３では、フリップフロップＦＦ３，ＦＦ４……のシフト動作と同期してカウント動作を行ない、"rei"がハイレベルに変化された時点でカウントアップが停止される（タイミングｔ６，ｔ７）。
【００４０】
図４には、ＲＡＭ１０１のＩＯビット数が「１６」で、ＲＡＭ１０２のＩＯビット数が「３２」で、ＲＡＭ１０１では下位から３ビット目のデータが期待値と不一致となり、ＲＡＭ１０２では上位から３ビット目と下位から３ビット目のデータが期待値と不一致の場合のタイミングが示されている。ＲＡＭ１０１側のＢＩＳＲ回路では、下位から３ビット目のデータの不一致が検出されて"rei"がハイレベルに変化されたタイミングｔ７ではシーケンシャルエンコーダ１５３のカウント値は"１１０１"であり、この値がＡＮＤゲートＧ５０〜Ｇ５４で補数に変換されて、"rai[0]"〜"rai[3]"＝"００１０"として出力される。
【００４１】
一方、ＲＡＭ１０２側のＢＩＳＲ回路では、上位から３ビット目のデータの不一致が検出されて"rei"がハイレベルに変化されたタイミングｔ６でシーケンシャルエンコーダ１５３のカウント値は"０００１０"であり、この値がＡＮＤゲートＧ５０〜Ｇ５４で補数に変換されて、"rai[0]"〜"rai[4]"＝"１１１０１"として出力される。また、図４の場合、ＲＡＭ１０２側のＢＩＳＲ回路では、２つのビットエラーが検出されているため、２ビット目のエラーが検出されたタイミングｔ８で、マルチフェイル回路１５２から２ビット以上のエラービットがあることを示す信号"multi_fail"がハイレベルに変化される。
【００４２】
このように、メモリ容量の異なるＲＡＭ１０１及びＲＡＭ１０２のような複数のメモリに対して同時にテストを行い、かつ救済情報も生成するようにすることにより、テスト時間を削減し、それによって製造コスト削減することができる。
【００４３】
一例として後述するような予備メモリが１つ用意されているメモリに対して示しているが、予備メモリが複数本の場合でも、又、デュアルポートのようにメモリの出力ビットが１ポートに対して倍の本数をもっている場合でも、マルチフェイル回路１５２の構成を本実施例の構成から適切な形に変更することによって、救済情報を出力することが可能である。
【００４４】
図５には、ＲＡＭに設けられた救済回路の概略構成が示されている。図５に示されているのは、一例として、３２本のメモリ列Ｃ[0]〜Ｃ[31]に対して１本の予備メモリ列ＲＭＣが用意されている場合の救済回路の概略構成である。ＳＬＴ０〜ＳＬＴ３１は、隣接する２つのメモリ列のいずれか一方の読出しデータを対応するデータ入出力端子ＩＯ０〜ＩＯ３１へ出力させるためのセレクタで、これらのセレクタＳＬＴ０〜ＳＬＴ３１はシーケンシャルエンコーダ１５３から出力される救済情報"rai[0]"〜"rai[4]"をデコードするデコーダＤＥＣの出力によって、欠陥ビットを含むメモリ列をとばして読出しデータを出力するように制御される。
【００４５】
具体的には、例えば３番目のメモリ列Ｃ[2]に欠陥ビットが含まれていたとすると、セレクタＳＬＴ０〜ＳＬＴ３によって予備メモリ列ＲＭＣとメモリ列Ｃ[0]〜Ｃ[1]のデータがデータ入出力端子ＩＯ０〜ＩＯ２へ出力され、セレクタＳＬＴ４〜ＳＬＴ３１によってメモリ列Ｃ[3]〜Ｃ[31]のデータがデータ入出力端子ＩＯ３〜ＩＯ３１へ出力されるように、セレクタＳＬＴ０〜ＳＬＴ３１が制御される。図示しないが、各メモリ列Ｃ[0]〜Ｃ[31]に対してデータを書き込む際にも同様にして、データ入出力端子ＩＯ３〜ＩＯ３１へ入力されたデータを、欠陥ビットを含むメモリ列をとばして供給するように制御されるセレクタが設けられる。
【００４６】
図７には、ＢＩＳＲ回路１５０のうちカラムアドレス判定回路１５１の具体的な構成例が示されている。カラムアドレス判定回路１５１は、ＲＡＭがＩＯカラムとして構成されている場合に、１つのＩＯカラムのいずれのメモリ列に欠陥ビットがあるか判定するためのもので、この実施例では、１つのＩＯカラムが２つのメモリ列で構成されている場合のカラムアドレス判定回路１５１の構成が示されている。
【００４７】
図７に示されているように、この実施例のカラムアドレス判定回路１５１は、１組のセレクタＳＥＬ６１，ＳＥＬ６２と、１組のフリップフロップＦＦ６１，ＦＦ６２と、ＦＦ６１の出力とＦＦ６２の出力の排他的論理和をとるイクスクルーシブＯＲゲートＧ６１と、該ゲートＧ６１の出力と前記マルチフェイル回路１５２の出力"multi_fail"の論理和をとって救済の要／不要を示す信号"ｒｅｉ"を生成するＮＯＲゲートＧ６２と、ＦＦ６１の出力とＦＦ６２の出力をエンコードして救済アドレスの最上位ビット"rai[max]"を生成するエンコーダＥＮＣなどから構成されている。
【００４８】
セレクタＳＥＬ６１，ＳＥＬ６２は、それぞれパターン発生回路１１０からのカラムアドレスの最上位ビット"adrff[colmax]"と比較回路１４０による比較結果を保持するフリップフロップＦＦ２０の出力"rf"とを入力とし、フリップフロップＦＦ６１には"adrff[colmax]"が"０"で"rf"が"１"のときに"１"がセットされて出力"raicol0ff"が"１"とされ、フリップフロップＦＦ６２には"adrff[colmax]"が"１"で"rf"が"１"のときに"１"がセットされて出力"raicol1ff"が"１"とされる。
【００４９】
"raicol0ff"は、"０"のときに"adrff[colmax]"が"０"であるカラムにフェイルがないことを、また"１"のときにフェイルがあることを示す信号で、"raicol1ff"は、"０"のときに"adrff[colmax]"が"１"であるカラムにフェイルがないことを、また"１"のときにフェイルがあることを示す信号である。
【００５０】
イクスクルーシブＯＲゲートＧ６１の出力"col_jud"は、それが"０"のときにカラムの救済が必要であることを、また"１" のときにカラムの救済が不要であることを表わしている。一方、エンコーダＥＮＣの出力"rai[max]"は、ＩＯ内のいずれのカラムを救済すべきか示す情報で、それが"０"のときにはカラムアドレスの最上ビットが"０"のカラムの救済が必要であることを、また"１" のときにはカラムアドレスの最上ビットが"１"のカラムの救済が不要であることを表わしている。
【００５１】
図６には、ＩＯカラム構成のＲＡＭに設けられる救済回路の概略構成が示されている。図６には、一例として、１６個のＩＯカラムＩＯＣ[0]〜ＩＯＣ[15]がそれぞれ２本のメモリ列によって構成され、１６個のＩＯカラムに対して１本の予備メモリ列ＲＭＣが用意されている場合の救済回路の概略構成である。なお、図６において、各メモリ列の上部に示されている"０"，"１"はカラムアドレスの最上位ビット"adrff[colmax]"である。
【００５２】
また、ＳＬＴ０〜ＳＬＴ１５は、隣接する２つのＩＯカラムのいずれか一方の読出しデータを対応するデータ入出力端子ＩＯ０〜ＩＯ１５へ出力させるためのセレクタで、これらのセレクタＳＬＴ０〜ＳＬＴ１５はシーケンシャルエンコーダ１５３から出力される救済情報"rai[0]"〜"rai[3]"とカラムアドレス判定回路１５１のエンコーダＥＮＣからの出力"rai[max]"（この実施例では"rai[4]"）をデコードするデコーダＤＥＣの出力によって、欠陥ビットを含むメモリ列をとばして読出しデータを出力するように制御される。
【００５３】
以上説明したように、前記実施例においては、所望の論理機能を有する論理回路と、読出し書込み可能なメモリ回路（内蔵ＲＡＭ１０１等）と、該メモリ回路内に欠陥ビットが含まれているか否か検査するテスト回路（１１０，１２０）とを有し、上記論理回路とメモリ回路との間には信号をラッチするとともにシフトレジスタを構成可能な複数のフリップフロップ回路からなる境界ラッチ回路（１３１等）が設けられている論理集積回路において、テスト回路による検査実行時に検査結果を上記境界ラッチ回路に格納し、該格納された検査結果に基づいて上記メモリ回路の欠陥を救済するための欠陥救済情報を生成する欠陥救済情報生成回路（１５０）を備えるようにしたので、内蔵メモリ回路のテストと並行して、欠陥ビットの救済のための情報を生成してチップ外部へ出力もしくはチップ内部でメモリ回路の救済まで行なうことができる。しかも、境界ラッチ回路にテスト回路の検査結果を格納し、格納された検査結果に基づいて欠陥救済情報生成回路がメモリ回路の欠陥を救済するための欠陥救済情報を生成するため、回路規模の増大を抑制しつつメモリ回路の欠陥ビットの救済のための情報を生成することができる。
【００５４】
また、上記メモリ回路は予備のメモリ群と、内部の正規のメモリ群を上記予備のメモリ群に置き換えるための欠陥救済回路とを備え、上記欠陥救済情報生成回路により生成された情報が上記欠陥救済回路に供給されてメモリ群の置き換えが行なわれるように構成したので、内蔵メモリ回路のテストと並行して、欠陥ビットの救済を実行することができる。
【００５５】
次に、上記実施例のＢＩＳＴ回路を内蔵して好適な論理集積回路の一例としてのシステムＬＳＩの構成例を、図８を用いて説明する。図８においては、図１や図２に示されているＢＩＳＴ制御回路１１０やテストパターン発生回路１２０、ブリッジ回路を含んだものが１つのブロック１００として示されている。
【００５６】
この実施例のシステムＬＳＩ２００は、例えば携帯型の電子機器に搭載されてシステム全体の制御や動画像のデータ処理等を行なうものである。この実施例のシステムＬＳＩは、プログラムを実行するプロセッサ２１０、外部接続されるＳＤＲＡＭ（Synchronous DRAM）等の主記憶に対してデータアクセス制御を行うメモリインターフェース２２０、動画像データのエンコードやデコードに必要な演算処理を行うコプロセッサ２３０、動画像の伸縮や符号化復号化に必要なデータ処理等を行なうビデオスケーラ２４０を備える。
【００５７】
また、外部接続される入出力機器とのデータのやり取りを行なうＩＯユニット２５０、プロセッサ２１０を介さずに直接周辺モジュール・主記憶間等のデータ転送を行なうＤＭＡ（Direct Memory Access）コントローラ２６０、プロセッサ２１０に対するタイマ割込み信号を生成したり現在時刻の計時を行なったりするタイマ回路２７０、外部デバイスとの間のシリアル通信を行なうシリアル通信インタフェース２８０を備える。
【００５８】
さらに、ＬＳＩ２００内部の動作に必要なクロック信号φ０を生成するクロック生成回路２９０、プロセッサ２１０及びコプロセッサ２３０のワーク領域として用いられたり、システムＬＳＩ２００外部からのデータやシステムＬＳＩ２００の内部で生成されたデータを一時的に格納するために用いられるＲＡＭ１０１、ＲＡＭ１０２及び図示を省略しているＲＡＭ１０３などが設けられている。
【００５９】
図１０は、図２に示されているＴＡＰを用いたインタフェース回路１８０の具体例を示す。
ＴＡＰは、ＩＥＥＥ１１４９．１規格で規定されているスキャンテストやＢＩＳＴ回路のためのインタフェースおよび制御回路である。このＴＡＰは、入力ポートからのテストデータを出力ポートへシフトするときに使用するバイパスレジスタ１８１、回路へ特定の信号を伝える場合に使用するデータレジスタ１８２、チップ固有の製造識別番号を設定するためのデバイスＩＤレジスタ１８３を備える。さらに、ＴＡＰは、データレジスタの選択や内部のテスト方法を制御する場合に使用するインストラクションレジスタ１８４、ＴＡＰ回路全体を制御するコントローラ１８５等を備える。
【００６０】
上記データレジスタ１８２はオプション扱いのレジスタである。また、インストラクションレジスタ１８４に設定される命令には、４つの必須命令と３つのオプション命令が用意されている。コントローラ１８５には、専用の３つの外部端子から、テストモードを指定するためのテストモードセレクト信号ＴＭＳ、テストクロックＴＣＫ、リセット信号ＴＲＳＴが入力されており、これらの信号に基づいて上記レジスタ１８１〜１８４やセレクタ回路１８６〜１８８に対する制御信号を形成する。
【００６１】
また、ＴＡＰにはテストデータＴＤＩの入力端子とテスト結果データＴＤＯの出力端子が設けられており、入力されたテストデータＴＤＩは上記セレクタ回路１８６を介して各レジスタ１８１〜１８４または内部のスキャンパスIscan,Bscanへ供給される。また、レジスタ１８１〜１８４の内容および内部回路からのスキャンアウトデータは、セレクタ回路１８７、１８８を介してチップ外部へ出力される。さらに、ＴＡＰには、データレジスタ１８２とインストラクションレジスタ１８４の内容に従って内部のＢＩＳＴ回路に対する信号が形成されて供給されると共に、ＢＩＳＴ回路から出力されたテスト結果を示す信号がセレクタ回路１８７、１８８を介してチップ外部へ出力可能に構成されている。
【００６２】
なお、図１０において、"Iscan"は内部ロジック回路を構成するフリップフロップをチェーン状に結合してスキャンパス（ＬＳＰ）を構成し、外部のテスタ等からテストデータを与えて内部ロジック回路と診断を行なうためのテストパスを意味する。また、"Bscan"はロジック回路とＲＡＭの境界に設けられている境界ラッチ内に設けられているフリップフロップをチェーン状に結合してスキャンパス（ＳＰ）を構成し、外部のテスタ等からテストデータを与えて内部ロジック回路やＲＡＭの診断を行なうためのテストパスを意味する。ＢＩＳＴによってテストを行い、かつテスト結果をＢＩＳＴを介してチップ外部へ出力するＬＳＩでは、スキャンパス"Iscan"，"Bscan"を使用したテストのための機能は使用しなくてもよい。
【００６３】
上記のような構成を有するＴＡＰをテスト機能のためのインタフェースとして有するＬＳＩでは、テスト端子が数ピン（４〜５ピン）で良い半導体集積回路装置を実現することが可能となるため、ＬＳＩのピン数を少なしてチップサイズの低減を図ることができる。また、図１０に示すような構成のＴＡＰは標準化されており、新たに設計する必要がなく、他のＬＳＩで設計したものを使用することができるため、開発期間も短縮することができる。
【００６４】
さらに、テスト端子が少ないとともにＲＡＭの欠陥救済回路および修復回路を内蔵しているため、ウェハ状態でチップ内のＲＡＭの検査および救済やロジック回路の検査を行なう場合に、図１１に示すように、１つのテスタ３００を使用して複数のチップＣＰ１，ＣＰ２，ＣＰ３，ＣＰ４……の電源端子とテスト端子にプローブを当てる。そして、複数のチップに同時に電源電圧を供給しつつ並行してテスト動作を実行させ、かつテスト結果を複数のチップから並行して回収することが容易となる。
【００６５】
また、ＲＡＭのテストパターンを発生するＢＩＳＴ回路１１０とテスト結果から欠陥救済情報を生成し得られた欠陥救済情報に基づいてＲＡＭの救済を行なう自己修復回路、救済回路等を内蔵しているため、ＲＡＭを内蔵した半導体集積回路であっても、メモリテスタを使用せずにロジックテスタのみでテストを実行することができる。
【００６６】
図１２には、本発明に係るＲＡＭおよび論理回路混載の論理集積回路のテスト工程および組み立て工程の手順を示すフローチャートが示されている。
図に示されているように、テストはウェハ状態で２回、組み立て後に１回、計３回行なわれる。１回目のウェハテスト（ステップＳ１）では、内蔵されている前記実施例のＢＩＳＴ回路を動作させてロジック回路およびＲＡＭのテストを行ない、そのテスト結果に基づいてＲＡＭの救済を行なう（ステップＳ２）。ロジック回路にも救済用の論理ゲート等が設けられている場合には、ロジック回路の救済も行なう。それから、２回目のウェハテスト（ステップＳ３）を行ない、ウェハから各チップを切り出した後、テストＳ３の結果に基づいて良品と不良品の選別を行なう（ステップＳ４）。そして、良品チップをパッケージに組み立てた後（ステップＳ５）、製品テストを行なう（ステップＳ６）。この製品テストも内蔵のＢＩＳＴ回路を利用して行なうことができる。
【００６７】
尚、ステップＳ１とステップＳ２は、ＲＡＭの救済がレーザーヒューズ等で行われる場合には、救済情報を回収してから、回収された情報に基づいてヒューズの切断を行う為の装置でヒューズを切断するために明確に分けられる。一方ＣＭＯＳヒューズ等でＲＡＭの救済が行われる場合には、救済情報を不揮発性メモリ等に格納し、格納された情報に基づいてＣＭＯＳのスイッチを制御することにより救済を行うことができるため、ステップＳ１とＳ２を一気に行うことができ、テスト時間の削減ができ、ヒューズの切断を行う為の装置も不要であり、ステップＳ１とＳ２を同一の装置で行うことが可能でありテストコストを削減できる。
【００６８】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば前記実施例では、内蔵ＲＡＭのＩＯビット数が３２ビットと１６ビットの場合を説明したが、８ビットや６４ビットあるいは２のべき乗でない場合などにも適用することができる。又、予備メモリが複数本の場合でも、デュアルポートＲＡＭの場合でも適用することが出来る。また、実施例においては、ＲＡＭおよびＢＩＳＴ回路とともにＴＡＰ回路が同一チップ上に設けられていると説明したが、ＴＡＰ回路が別のチップに設けられている場合、及び存在しない場合にも適用することができる。
【００６９】
さらに、上記実施例では、欠陥を含むメモリ列を予備のメモリ列と置き換える冗長回路として、メモリアレイとデータ入出力端子との間に隣接するメモリ列の一方のデータ線と選択的に接続するセレクタを設けて欠陥を含むメモリ列を飛ばして選択するスライド方式の冗長回路を示したが、本発明は、レーザなどによりプログラム可能なヒューズを用いて欠陥アドレスを記憶するアドレス設定回路を有する冗長回路方式を用いている場合にも適用することが可能である。
【産業上の利用可能性】
【００７０】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるＲＡＭとＣＰＵなどの論理回路が搭載されたシステムＬＳＩに適用した場合を説明したが、本発明はＲＡＭ以外の読出し書込み可能なメモリ回路例えば再書込み可能な不揮発性メモリ回路を内蔵したＬＳＩに適用することができる。
【図面の簡単な説明】
【００７１】
【図１】本発明に係る内蔵ＲＡＭを検査するテスト回路（いわゆるＢＩＳＴ回路）の概略構成を示すブロック図である。
【図２】図１のテスト回路（ＢＩＳＴ回路）におけるブリッジ回路のより詳細な構成を示すブロック図である。
【図３】ＢＩＳＲ回路１５０のうちマルチフェイル回路１５２とシーケンシャルエンコーダ１５３のより詳しい構成を示すブロック図である。
【図４】図３のＢＩＳＲ回路における救済情報の生成動作のタイミングを示すタイミングチャートである。
【図５】ＲＡＭに設けられた救済回路の概略構成を示すブロック図である。
【図６】ＩＯカラム構成のＲＡＭに設けられた救済回路の概略構成を示すブロック図である。
【図７】ＢＩＳＲ回路１５０のうちカラムアドレス判定回路１５１の具体的な構成例を示すブロック図である。
【図８】実施例のＢＩＳＴ回路を内蔵して好適な論理集積回路の一例としてのシステムＬＳＩの構成例を示すブロック図である。
【図９】ロジック回路のテスト時におけるスキャンインとスキャンアウトのタイミングおよび各モードでのフリップフロップＦＦ４、セレクタＳＥＬ４，ＳＥＬ２２の出力の内容を示すタイミングチャートである。
【図１０】図２に示されているＴＡＰを用いたインタフェース回路の具体例を示すブロック図である。
【図１１】本発明に係るＲＡＭおよび論理回路混載の半導体集積回路のテスト工程におけるテスタとウェハ上のチップとの接続状態を示す説明図である。
【図１２】本発明に係るＲＡＭおよび論理回路混載の半導体集積回路のテスト工程および組み立て工程の手順を示すフローチャートである。
【符号の説明】
【００７２】
１０１〜１０３  内蔵ＲＡＭ
１１０  ＢＩＳＴ制御回路
１２０  テストパターン発生回路
１３１〜１３３  境界ラッチ回路
１４０  比較回路
１５０  自己修復回路（ＢＩＳＲ回路）
１５１  カラムアドレス判定回路
１５２  マルチフェイル回路
１５３  シーケンシャルエンコーダ回路
１５４  シフトデータ制御回路
１６０  モード制御回路
１７０  ロジックＢＩＳＴ回路
１８０  テスト用インタフェース（ＴＡＰ）
【図１】
2006236551.tif 000003
【図２】
2006236551.tif 000004
【図３】
2006236551.tif 000005
【図４】
2006236551.tif 000006
【図５】
2006236551.tif 000007
【図６】
2006236551.tif 000008
【図７】
2006236551.tif 000009
【図８】
2006236551.tif 000010
【図９】
2006236551.tif 000011
【図１０】
2006236551.tif 000012
【図１１】
2006236551.tif 000013
【図１２】
2006236551.tif 000014