(57)【要約】【課題】ＢＩＳＴを用いたメモリの冗長救済を実現にあたり、冗長救済回路面積およびスキャンテスト用回路の面積の増加を抑えることができる半導体集積回路および検査方法を提供することである。【解決手段】カラム方向に一組の救済用の冗長ラインを持つメモリ１０４と、テストパターン発生部１０１と、メモリ１０４に不良セルが存在するか否かを判定する比較部１０２と、メモリ１０４の検査時には、テストパターン発生部１０１からメモリ１０４へ入力される信号および比較部１０２からのビット毎の良否判定信号を取り込み、メモリ周辺の論理の検査時にはメモリ１０４への入力信号を観測するために用いられる第１のデータ記憶部１０５と、故障の有無の状態を示す第２のデータ記憶部１０６と、救済可否判定部１０７とを備え、第２のデータ記憶部１０６により第１のデータ記憶部１０５のデータをホールドする。【選択図】    図１
2004310951.tif 000002
【特許請求の範囲】
【請求項１】
カラム方向に一組の救済用の冗長ラインを持つメモリと、
前記メモリに対して特定のテストパターンを発生するテストパターン発生部と、
前記メモリからの出力を読み出して前記メモリに不良セルが存在するか否かを判定する比較部と、
前記メモリの検査時には、前記テストパターン発生部からメモリへ入力されるカラムアドレス信号の全て或いは一部を分岐した信号、および前記比較部から生成されるビット毎の良否判定信号を不良アドレスデータとして取り込み、前記メモリ周辺の論理の検査時には、スキャンチェーンの一部を形成し、前記メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
前記比較部の出力信号を入力して故障の有無の状態を示す第２のデータ記憶部と、
前記第１のデータ記憶部への入力と前記第１のデータ記憶部からの出力とを入力とし、前記メモリが救済可能かどうかを判定する救済可否判定部とを備え、
前記第２のデータ記憶部の値に応じて、前記第１のデータ記憶部に保持されたデータをホールドすることを特徴とする半導体集積回路。
【請求項２】
カラム方向に一組の救済用の冗長ラインを持つメモリと、
前記メモリに対して特定のテストパターンを発生するテストパターン発生部と、
前記メモリからの出力を読み出して前記メモリに不良セルが存在するか否かを判定する比較部と、
前記メモリの検査時には、前記テストパターン発生部からメモリへ入力されるカラムアドレス信号の全て或いは一部を分岐した信号、および前記比較部から生成されるビット毎の良否判定信号を不良アドレスデータとして取り込み、前記メモリ周辺の論理の検査時には、スキャンチェーンの一部を形成し、前記メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
前記第１のデータ記憶部への入力と前記第１のデータ記憶部からの出力とを入力とし、前記メモリが救済可能かどうかを判定する救済可否判定部とを備え、
前記比較部から出力される信号であって、メモリに不良セルが存在した場合にアクティブになりテスト終了までアクティブの状態を保つフェイル信号の値に応じて、前記第１のデータ記憶部に保持されたデータをホールドすることを特徴とする半導体集積回路。
【請求項３】
前記第１のデータ記憶部が、前記テストパターン発生部から前記メモリへ入力されるデータ入力信号と前記ビット毎の良否判定信号とを選択的に取り込むことができるセレクタを有する請求項１または請求項２記載の半導体集積回路。
【請求項４】
前記救済可否判定部が、前記比較部から生成されるビット毎の良否判定信号として、複数ビットの不良の判定を受け取ったときに、前記メモリを救済不能と判定する請求項１または請求項２記載の半導体集積回路。
【請求項５】
ロウ方向に一組の救済用の冗長ラインを持つメモリと、
前記メモリに対して特定のテストパターンを発生するテストパターン発生部と、
前記メモリからの出力を読み出して前記メモリに不良セルが存在するか否かを判定する比較部と、
前記メモリの検査時には、前記テストパターン発生部から前記メモリへ入力されるロウアドレス信号の全て或いは一部のビットを分岐した信号を不良アドレスデータとして取り込み、前記メモリ周辺の論理の検査時には、スキャンチェーンの一部として、前記メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
前記比較部の出力信号を入力して故障の有無の状態を示す第２のデータ記憶部と、
前記第１のデータ記憶部への入力と前記第１のデータ記憶部からの出力とを入力とし、前記メモリが救済可能かどうかを判定する救済可否判定部とを備え、
前記第２のデータ記憶部の値に応じて、前記第１のデータ記憶部に保持されたデータをホールドすることを特徴とする半導体集積回路。
【請求項６】
ロウ方向に一組の救済用の冗長ラインを持つメモリと、
前記メモリに対して特定のテストパターンを発生するテストパターン発生部と、
前記メモリからの出力を読み出して前記メモリに不良セルが存在するか否かを判定する比較部と、
前記メモリの検査時には、前記テストパターン発生部から前記メモリへ入力されるロウアドレス信号の全て或いは一部のビットを分岐した信号を不良アドレスデータとして取り込み、前記メモリ周辺の論理の検査時には、スキャンチェーンの一部として、前記メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
前記第１のデータ記憶部への入力と前記第１のデータ記憶部からの出力とを入力とし、前記メモリが救済可能かどうかを判定する救済可否判定部とを備え、
前記比較部から出力される信号であって、前記メモリに不良セルが存在した場合にアクティブになりテスト終了までアクティブの状態を保つフェイル信号の値に応じて、前記第１のデータ記憶部に保持されたデータをホールドすることを特徴とする半導体集積回路。
【請求項７】
カラム方向およびロウ方向の救済を行う冗長ラインを持つメモリと、
前記メモリに対して特定のテストパターンを発生するテストパターン発生部と、
前記メモリからの出力を読み出して前記メモリに不良セルが存在するか否かを判定する比較部と、
前記メモリの検査時には、前記テストパターン発生部から前記メモリへ入力されるアドレス信号を分岐した信号および前記比較部からの出力信号を不良アドレスデータとして取り込み、前記メモリ周辺の論理の検査時には、スキャンチェーンの一部として、前記メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
前記比較部の出力信号を入力して故障の有無の状態を示す第２のデータ記憶部と、
前記第１のデータ記憶部への入力と前記第１のデータ記憶部からの出力とを入力として前記メモリが救済可能かどうかを判定する救済可否判定部とを備え、
前記第２のデータ記憶部の値に応じて、前記第１のデータ記憶部に保持されたデータをホールドすることを特徴とする半導体集積回路。
【請求項８】
前記比較部から出力される信号であって、前記メモリに不良セルが存在した場合にのみアクティブになるモニタ信号および前記フェイル信号がアクティブな場合に、前記救済可否判定部で、前記第１のデータ記憶部の入力と前記第１のデータ記憶部の出力とを比較して前記メモリが救済可能かどうかを判定する請求項１、請求項２、請求項３、請求項４、請求項５、請求項６または請求項７記載の半導体集積回路。
【請求項９】
請求項１、請求項２、請求項３、請求項４、請求項５、請求項６、請求項７または請求項８記載の半導体集積回路の検査方法であって、第１のデータ記憶部は、メモリを検査する時には、メモリの不良情報を保持するために使用し、メモリ周辺部のロジックを検査する時には、メモリへの入力信号を観測するために使用することを特徴とする半導体集積回路の検査方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、組込み自己テスト（ＢＩＳＴ）によるメモリのテスト、特に冗長セルを持つメモリのテストおよびメモリ周辺論理のテストが可能な半導体集積回路およびその検査方法に関するものである。
【０００２】
【従来の技術】
近年、半導体集積回路（ＬＳＩ）に搭載されるメモリの数や規模（ビット幅・ワード数）は増大を続けている。これに応じて、外部よりテスタを用いてＬＳＩに搭載されたメモリを検査するために必要となる外部ピンの数やテスト時間が増加する。
【０００３】
これに対して、ＬＳＩ内部でメモリの検査を実行するＢＩＳＴ（Ｂｕｉｌｔ    Ｉｎ    Ｓｅｌｆ    Ｔｅｓｔ）技術の重要性が高まっている。ＢＩＳＴ技術を用いることにより、少ない外部ピンを用いてメモリの検査を実施できるとともに、使用するピンの数が少ないためＬＳＩ内部の複数のメモリを同時に検査することが可能となる。
【０００４】
また、予め冗長回路（救済用セルを含んだ救済用ワード線、救済用ビット線）を設けておき、欠陥によって不良になったメモリセルが存在しているビット線またはワード線を、救済用ワード線、救済用ビット線で置き換えて不良セルを救済する冗長救済方式が用いられる場合がある。これによりメモリの歩留りを向上することができる。
【０００５】
図１２に、従来のＢＩＳＴを用いたメモリの救済およびメモリ周辺論理のテスト回路の一例を示す。
【０００６】
テストパターン発生部１２０１は、メモリ１２０４に対してテストパターンを生成し、メモリ１２０４の出力データが、比較部１２０２で期待値と一致するかどうかを比較し、出力データが期待値と一致したかどうかを判定し、ＦＡＩＬ端子にその結果を出力する。
【０００７】
比較部１２０２で検出された不良セルのアドレス、ビット位置の情報は、救済処理部１２０３に保持される。格納された不良セルの情報は、救済を行うべき救済ワード線、ビット線を特定するために用いられる。
【０００８】
また、メモリ１２０４への入力を分岐した信号を観測用ＦＦ１２０５で取り込み、
制御用ＦＦ１２０６を用いて、セレクタ１２０７を介してメモリ１２０４の出力を制御することで、ＢＩＳＴ回路自身およびメモリ１２０４周辺の論理のスキャンテストを実施している。
【０００９】
このように、従来のＢＩＳＴを用いてメモリの救済処理を行う回路では、救済を行うべきアドレスを算出するために、ＢＩＳＴでテストを実施している時にＦａｉｌを検出した不良アドレス、不良ビットの情報を格納する記憶素子を救済処理部に持ち、ＢＩＳＴ回路自身およびメモリ周辺のスキャンテストを行うためには、メモリへの入力信号を観測するためのフリップフロップを備えている。
【００１０】
【発明が解決しようとする課題】
上記のように、メモリの救済処理をＢＩＳＴで実現するためには、メモリの不良アドレス情報を格納するための記憶素子が必要であり、また、ＢＩＳＴ回路自身およびメモリ周辺論理をスキャンテストするためには、メモリへの入力信号を観測するために観測用のＦＦおよびメモリの出力を制御するための制御用のＦＦが必要となる。
【００１１】
そのため、ＢＩＳＴでのメモリの救済処理とスキャンテストを実現するためには、救済処理用の記憶素子とスキャンテスト用のＦＦが必要となり、回路面積が増大するという問題があった。
【００１２】
本発明は以上の問題点を解決するためになされたものであり、その目的は、冗長救済回路面積およびスキャンテスト用回路の面積の増加を抑えることができる半導体集積回路およびその検査方法を提供することである。
【００１３】
【課題を解決するための手段】
請求項１記載の半導体集積回路は、カラム方向に一組の救済用の冗長ラインを持つメモリと、
メモリに対して特定のテストパターンを発生するテストパターン発生部と、
メモリからの出力を読み出してメモリに不良セルが存在するか否かを判定する比較部と、
メモリの検査時には、テストパターン発生部からメモリへ入力されるカラムアドレス信号の全て或いは一部を分岐した信号、および比較部から生成されるビット毎の良否判定信号を不良アドレスデータとして取り込み、メモリ周辺の論理の検査時には、スキャンチェーンの一部を形成し、メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
比較部の出力信号を入力して故障の有無の状態を示す第２のデータ記憶部と、
第１のデータ記憶部への入力と第１のデータ記憶部からの出力とを入力とし、メモリが救済可能かどうかを判定する救済可否判定部とを備え、
第２のデータ記憶部の値に応じて、第１のデータ記憶部に保持されたデータをホールドすることを特徴とするものである。
【００１４】
請求項１記載の半導体集積回路によれば、ＢＩＳＴを用いたメモリの冗長救済回路において、ＢＩＳＴからメモリへ入力される信号を分岐させた信号を取り込むデータ記憶部を準備して、メモリの検査時には、データ記憶部を不良アドレスを格納するための記憶素子（フリップフロップ）として用い、ＢＩＳＴ回路自身およびメモリ周辺部論理の検査時にはデータ記憶部のフリップフロップをスキャンチェーンの一部として使用することで、論理部のスキャンテストおよびメモリの検査に必要となる回路面積の増加を抑えることが可能となる。
【００１５】
請求項２記載の半導体集積回路は、カラム方向に一組の救済用の冗長ラインを持つメモリと、
メモリに対して特定のテストパターンを発生するテストパターン発生部と、
メモリからの出力を読み出してメモリに不良セルが存在するか否かを判定する比較部と、
メモリの検査時には、テストパターン発生部からメモリへ入力されるカラムアドレス信号の全て或いは一部を分岐した信号、および比較部から生成されるビット毎の良否判定信号を不良アドレスデータとして取り込み、メモリ周辺の論理の検査時には、スキャンチェーンの一部を形成し、メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
第１のデータ記憶部への入力と第１のデータ記憶部からの出力とを入力とし、メモリが救済可能かどうかを判定する救済可否判定部とを備え、
比較部から出力される信号であって、メモリに不良セルが存在した場合にアクティブになりテスト終了までアクティブの状態を保つフェイル信号の値に応じて、第１のデータ記憶部に保持されたデータをホールドすることを特徴とするものである。
【００１６】
請求項２記載の半導体集積回路によれば、請求項１と同様な効果がある。
【００１７】
請求項３記載の半導体集積回路は、請求項１または請求項２において、第１のデータ記憶部が、テストパターン発生部からメモリへ入力されるデータ入力信号とビット毎の良否判定信号とを選択的に取り込むことができるセレクタを有するものである。
【００１８】
請求項３記載の半導体集積回路によれば、請求項１または請求項２と同様な効果がある。
【００１９】
請求項４記載の半導体集積回路は、請求項１または請求項２において、救済可否判定部が、比較部から生成されるビット毎の良否判定信号として、複数ビットの不良の判定を受け取ったときに、メモリを救済不能と判定するものである。
【００２０】
請求項４記載の半導体集積回路によれば、請求項１または請求項２と同様な効果がある。
【００２１】
請求項５記載の半導体集積回路は、ロウ方向に一組の救済用の冗長ラインを持つメモリと、
メモリに対して特定のテストパターンを発生するテストパターン発生部と、
メモリからの出力を読み出してメモリに不良セルが存在するか否かを
判定する比較部と、
メモリの検査時には、テストパターン発生部からメモリへ入力されるロウアドレス信号の全て或いは一部のビットを分岐した信号を不良アドレスデータとして取り込み、メモリ周辺の論理の検査時には、スキャンチェーンの一部として、メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
比較部の出力信号を入力して故障の有無の状態を示す第２のデータ記憶部と、
第１のデータ記憶部への入力と第１のデータ記憶部からの出力とを入
力とし、メモリが救済可能かどうかを判定する救済可否判定部とを備え、
第２のデータ記憶部の値に応じて、第１のデータ記憶部に保持されたデータをホールドすることを特徴とするものである。
【００２２】
請求項５記載の半導体集積回路によれば、請求項１と同様な効果がある。
【００２３】
請求項６記載の半導体集積回路は、ロウ方向に一組の救済用の冗長ラインを持つメモリと、
メモリに対して特定のテストパターンを発生するテストパターン発生部と、
メモリからの出力を読み出してメモリに不良セルが存在するか否かを
判定する比較部と、
メモリの検査時には、テストパターン発生部からメモリへ入力されるロウアドレス信号の全て或いは一部のビットを分岐した信号を不良アドレスデータとして取り込み、メモリ周辺の論理の検査時には、スキャンチェーンの一部として、メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
第１のデータ記憶部への入力と第１のデータ記憶部からの出力とを入
力とし、メモリが救済可能かどうかを判定する救済可否判定部とを備え、
比較部から出力される信号であって、メモリに不良セルが存在した場合にアクティブになりテスト終了までアクティブの状態を保つフェイル信号の値に応じて、第１のデータ記憶部に保持されたデータをホールドすることを特徴とするものである。
【００２４】
請求項６記載の半導体集積回路によれば、請求項１と同様な効果がある。
【００２５】
請求項７記載の半導体集積回路は、カラム方向およびロウ方向の救済を行う冗長ラインを持つメモリと、
メモリに対して特定のテストパターンを発生するテストパターン発生部と、
メモリからの出力を読み出してメモリに不良セルが存在するか否かを判定する比較部と、
メモリの検査時には、テストパターン発生部からメモリへ入力されるアドレス信号を分岐した信号および比較部からの出力信号を不良アドレスデータとして取り込み、メモリ周辺の論理の検査時には、スキャンチェーンの一部として、メモリへの入力信号を観測するために用いられる第１のデータ記憶部と、
比較部の出力信号を入力して故障の有無の状態を示す第２のデータ記憶部と、
第１のデータ記憶部への入力と第１のデータ記憶部からの出力とを入
力としてメモリが救済可能かどうかを判定する救済可否判定部とを備え、
第２のデータ記憶部の値に応じて、第１のデータ記憶部に保持されたデータをホールドすることを特徴とするものである。
【００２６】
請求項７記載の半導体集積回路によれば、請求項１と同様な効果がある。
【００２７】
請求項８記載の半導体集積回路は、請求項１、請求項２、請求項３、請求項４、請求項５、請求項６または請求項７において、比較部から出力される信号であって、メモリに不良セルが存在した場合にのみアクティブになるモニタ信号およびフェイル信号がアクティブな場合に、救済可否判定部で、第１のデータ記憶部の入力と第１のデータ記憶部の出力とを比較してメモリが救済可能かどうかを判定するものである。
【００２８】
請求項８記載の半導体集積回路によれば、請求項１、請求項２、請求項３、請求項４、請求項５、請求項６または請求項７と同様な効果がある。
【００２９】
請求項９記載の半導体集積回路の検査方法は、請求項１、請求項２、請求項３、請求項４、請求項５、請求項６、請求項７または請求項８記載の半導体集積回路の検査方法であって、第１のデータ記憶部は、メモリを検査する時には、メモリの不良情報を保持するために使用し、メモリ周辺部のロジックを検査する時には、メモリへの入力信号を観測するために使用することを特徴とするものである。
【００３０】
請求項９記載の半導体集積回路の検査方法によれば、請求項１と同様な効果がある。
【００３１】
【発明の実施の形態】
（第１の実施形態）
図１は本発明の第１の実施形態による半導体集積回路を説明するためのブロック図である。
【００３２】
メモリ１０４はテスト対象のメモリであり、Ｃｏｌｕｍｎ（カラム）方向に一組の救済用の冗長ラインを持ち、実施の形態ではその内部に救済処理によって置換される単一の救済用Ｃｏｌｕｍｎラインを含む。
【００３３】
１０１はテストパターン発生部であり、ロウアドレス信号ＲＯＷ−ＡＤＤ、カラムアドレス信号ＣＯＬ−ＡＤＤ、コントロール信号ＣＴＲＬ、データ入力信号ＤＩＮを発生し、メモリ１０４に入力する。
【００３４】
１０２は比較部であり、メモリ１０４に入力されたテストパターンに対するメモリ１０４の出力応答ＤＯＵＴと正常時に期待される値（期待値）とを比較し、信号を正常に記憶していない不良セルを検出する。比較部１０２からは、一度不良セルを検出するとアクティブになり、テストが終了するまでアクティブの状態を維持するＦＡＩＬ（フェイル）信号と、故障を検出した時だけアクティブになり故障を検出していない時にはアクティブにならないＭＯＮＩＴＯＲ（モニタ）信号と、メモリ１０４の出力データＤＯＵＴの各ビット毎に期待値と比較を行い、故障が存在したビットだけがアクティブになるＦａｉｌＰｅｒＢｉｔ（ビットフェイル）信号が生成される。
【００３５】
１０６は第２のデータ記憶部であり、比較部１０２のＦＡＩＬ信号を入力してテストを実施している間のメモリ１０４内の故障の有無の状態値（テスト開始から最初の故障を検出するまでの状態を示す値と、最初の故障を検出した後の状態を示す値）を保持する。
【００３６】
メモリ１０４はカラム方向で救済を実施するため、不良があったカラムラインを特定するために、不良があったセルのカラムアドレスおよびそのビット位置の情報が必要となる。１０５は第１のデータ記憶部であり、メモリ１０４の検査時には、テストパターン発生部１０１からメモリ１０４へ入力されるカラムアドレス信号の全てあるいは一部を分岐した信号、および比較部１０２から生成されるビット毎の良否判定信号を不良アドレスデータとして取込む。すなわち、メモリ１０４の救済処理を行う場合には、不良のあったセルのカラムアドレスおよびそのビット位置情報を記憶し、最初に故障を検出した不良セルのセルのカラムアドレスおよびそのビット位置情報を記憶し、その後は第１のデータ記憶部１０５内でその値を保持する。データを保持するために、第２のデータ記憶部１０６に保持された値を用いる。第２のデータ記憶部１０６で最初の故障を検出した後の状態を示す値の場合には、第１のデータ記憶部１０５に記憶された値を保持し続ける。
【００３７】
また、第１のデータ記憶部１０５は、メモリ１０４の周辺論理のスキャンテストを行う場合には、スキャンチェーンの一部を構成し、メモリ１０４まで伝播されてくる故障を観測するために用いることで、メモリ１０４周辺論理の故障検出を向上することができる。
【００３８】
１０３は、テストパターン発生部１０１で生成されるデータ入力信号ＤＩＮと比較部１０２で生成されるＦａｉｌＰｅｒＢｉｔ信号を選択するセレクタであり、メモリ１０４の救済処理時にはＦａｉｌＰｅｒＢｉｔ信号を選択することで、第１のデータ記憶部１０５に不良のあったセルのビット位置情報入力し、メモリ周辺論理のスキャンテスト時には、メモリ１０４へのデータ入力信号ＤＩＮあるいはＦａｉｌＰｅｒＢｉｔ信号のいずれかを選択し、メモリ１０４まで伝播される故障を第１のデータ記憶部１０５で観測する。
【００３９】
１０７は救済可否判定部であり、ＦＡＩＬ信号とＭＯＮＩＴＯＲ信号がともにアクティブな場合に、第１のデータ記憶部１０５に入力される信号と、第１のデータ記憶部１０５で保持している値とを比較し、それらが同一の場合にはメモリ１０４は救済用Ｃｏｌｕｍｎラインによって救済可能と判断し、異なる場合には救済不能と判断する。また、救済可否判定部１０７に入力されるＦａｉｌＰｅｒＢｉｔのうちの複数ビットがアクティブな場合にも救済不能と判断する。
【００４０】
図２は、図１に示された半導体集積回路におけるメモリ救済処理動作を示すフローチャートである。
【００４１】
以下、メモリ救済処理の実現について図１、図２および図３を参照しつつ説明る。
【００４２】
図３において、Ｒ１，Ｒ０は、メモリ１０４の２ビットのロウアドレスであり、（Ｒ１，Ｒ０）でロウアドレスを示す。Ｒ１がｍｓｂであり、Ｒ０がｌｓｂである。Ｃ１，Ｃ０は、メモリ１０４の２ビットのカラムアドレスであり、（Ｃ１，Ｃ０）でカラムアドレスを示す。Ｃ１がｍｓｂであり、Ｃ０がｌｓｂである。
Ｗ０はロウアドレス（Ｒ１，Ｒ０）＝（０，０）に対するワードラインであり、
Ｗ１はロウアドレス（Ｒ１，Ｒ０）＝（０，１）に対するワードラインであり、
Ｗ２はロウアドレス（Ｒ１，Ｒ０）＝（１，０）に対するワードラインであり、
Ｗ３はロウアドレス（Ｒ１，Ｒ０）＝（１，１）に対するワードラインであり、
Ｂ００はカラムアドレス（Ｃ１，Ｃ０）＝（０，０）の０ビット目に対するビットラインであり、
Ｂ０１はカラムアドレス（Ｃ１，Ｃ０）＝（０，１）の０ビット目に対するビットラインであり、
Ｂ０２はカラムアドレス（Ｃ１，Ｃ０）＝（１，０）の０ビット目に対するビットラインであり、
Ｂ０３はカラムアドレス（Ｃ１，Ｃ０）＝（１，１）の０ビット目に対するビットラインであり、
Ｂ１０はカラムアドレス（Ｃ１，Ｃ０）＝（０，０）の１ビット目に対するビットラインであり、
Ｂ１１はカラムアドレス（Ｃ１，Ｃ０）＝（０，１）の１ビット目に対するビットラインであり、
Ｂ１２はカラムアドレス（Ｃ１，Ｃ０）＝（１，０）の１ビット目に対するビットラインであり、
Ｂ１３はカラムアドレス（Ｃ１，Ｃ０）＝（１，１）の１ビット目に対するビットラインであり、
ビットラインとワードラインの交点にメモリセルが配置されている。
【００４３】
同図中の”×”は、不良のあったメモリセルを表し、
ロウアドレス（Ｒ１，Ｒ０）＝００，  カラムアドレス（Ｃ１、Ｃ０）＝００  で示されるアドレスの０ビット目、
ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目、
ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝０１  で示されるアドレスの１ビット目、
の３個の不良セルが存在し、Ｗ１上の２個のメモリが不良であり、Ｂ００上の２個のメモリが不良であることを示している。
【００４４】
ステップＳＴ２０１でテストを開始する。テスト時のアドレスのカウント方向は、カラムアドレスから先にカウントする場合について説明する。
【００４５】
最初に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝００，  カラムアドレス
（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目であり、
２回目に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス
（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目であり、
３回目（最後）に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス
（Ｃ１，Ｃ０）＝０１  で示されるアドレスの１ビット目である。
【００４６】
ステップＳＴ２０２でテストパターン発生部１０１からメモリ１０４へテストパターンを入力し、メモリ１０４からの出力を比較部１０２で期待値と比較する。
【００４７】
ステップＳＴ２０３で、ロウアドレス（Ｒ１，Ｒ０）＝００、カラムアドレス（Ｃ１，Ｃ０）＝００で故障を検出する。故障を検出したのでステップＳＴ２０４に移る。ステップＳＴ２０４では複数ビットの故障があるかどうかを判断する。該当アドレスでは０ビット目だけに故障が存在するため、ステップＳＴ２０５に移る。該当故障は最初の故障であるため、ステップＳＴ２０６に移る。
【００４８】
ここで初めて第２のデータ記憶部１０６に故障があったということを示す値が保持されるとともに、第１のデータ記憶部１０５には、カラムアドレスとして、（Ｃ１，Ｃ０）＝００の値と、ＦａｉｌＰｅｒＢｉｔとして０ビット目だけが故障が存在したことを表す値が不良アドレスとして保持される。次にステップＳＴ２０７に移るがまだ検査が終了していないので、ステップＳＴ２０２に戻る。
【００４９】
次にステップＳＴ２０３で検出される故障のアドレスは、ロウアドレス（Ｒ１，Ｒ０）＝０１，カラムアドレス（Ｃ１，Ｃ０）＝００  であるが、このアドレスに対する故障もまた、０ビット目のみであり複数ビットの故障ではないために、ステップＳＴ２０５に移る。もし、複数ビットの不良が検出された場合には、複数個の不良ビットは必ず異なるビットライン上に存在するため、単一のカラムラインによる救済の場合には救済不能になるため、ステップＳＴ２０９に移り不良品と決定して処理が終了する。
【００５０】
この２回目に検出される故障は、最初の故障ではないのでステップＳＴ２０８に移る。第２のデータ記憶部１０６で保持されている値は、最初の故障を検出した後の状態を示す値になっているため、第１のデータ記憶部１０５には、２回目に検出される故障のカラムアドレスおよびＦａｉｌＰｅｒＢｉｔの値は取り込まれずに、最初に検出された故障のカラムアドレスおよびＦａｉｌＰｅｒＢｉｔの値が保持されたままである。
【００５１】
ステップＳＴ２０８では、２回目に故障が検出された時刻において、ＭＯＮＩＴＯＲ信号がアクティブになり、かつＦＡＩＬ信号は最初に故障が検出された時からにアクティブになった状態であるので、救済可否判定部１０７において、第１のデータ記憶部１０５に保持された最初の故障の不良アドレスと、２回目に検出された故障の不良アドレスが一致しているかどうかを判断する。この場合最初に検出された故障と２回目に検出された故障は、両方とも同一アドレス（両方ともＢ００ライン上）で
あるため、不良アドレスが一致されたと判断され、ステップＳＴ２０７に移る。
【００５２】
ステップＳＴ２０７では、まだ検査が終了していないので、ステップＳＴ２０２に移る。
【００５３】
次（３回目）に検出される故障のアドレスは、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝０１  であるが、このアドレスに対する故障もまた、１ビット目のみであり複数ビットの故障ではないために、ステップＳＴ２０５に移る。
【００５４】
この３回目に検出される故障も、最初の故障ではないのでステップＳＴ２０８に移る。第２のデータ記憶部１０６で保持されている値は、最初の故障を検出した後の状態を示す値になっているため、第１のデータ記憶部１０５には、３回目に検出される故障のカラムアドレスおよびＦａｉｌＰｅｒＢｉｔの値は取り込まれずに、最初に検出された故障のカラムアドレスおよびＦａｉｌＰｅｒＢｉｔの値が保持されたままである。
【００５５】
ステップＳＴ２０８では、３回目に故障が検出された時刻において、ＭＯＮＩＴＯＲ信号がアクティブになり、かつＦＡＩＬ信号は最初に故障が検出された時からにアクティブになった状態であるので、救済可否判定部１０７において、第１のデータ記憶部１０５に保持された最初の故障の不良アドレスと、３回目に検出された故障の不良アドレスが一致しているかどうかを判断する。この場合最初に検出された故障はＢ００ライン上であり、３回目に検出された故障はＢ１１ライン上にあるので、最初に検出された故障と３回目に検出された故障は、同一アドレスではなく、救済可否判定部１０７で救済不能と判定され、ステップＳＴ２０９に移り救済不能なために不良品と決定して処理が終了する。
【００５６】
以上のように第１の実施形態によれば、ＢＩＳＴを用いたメモリ１０４の冗長救済回路において、ＢＩＳＴからメモリ１０４へ入力される信号を分岐させた信号を取り込むデータ記憶部を準備して、メモリ１０４の検査時には、データ記憶部を不良アドレスを格納するために用いられている記憶素子（フリップフロップ）として用い、ＢＩＳＴ回路自身およびメモリ周辺部論理の検査時にはデータ記憶部のフリップフロップをスキャンチェーンの一部として使用することで、論理部のスキャンテストおよびメモリの検査に必要となる回路面積の増加を抑えることが可能となる。
【００５７】
なお、本実施の形態では、第１のデータ記憶部１０５をメモリ１０４への入力信号を観測するために用いた例を説明したが、更に図５のように第１のデータ記憶部１０５の出力とメモリ１０４の出力信号ＤＯＵＴとをセレクタ５０１によって選択的に取り込み、スキャンテスト時にメモリ１０４の出力信号ＤＯＵＴの値を第１のデータ記憶部１０５の出力を用いて制御するためにも用いることでも、メモリの出力を制御できるため、更にメモリ周辺の故障検出を向上させることが可能となり、本実施の形態と同様の効果を得ることができる。
【００５８】
また、メモリの救済用のラインがカラム方向に１本の場合には、最初に検出した不良セルの不良アドレスであるカラムアドレスと各ビット毎の良／不良判定信号を第１のデータ記憶部１０５に取り込み、メモリ１０４に不良があったかどうかのデータを保持する第２のデータ記憶部１０６に保持された値によって、第１のデータ記憶部１０５に取り込まれた最初に検出した不良セルの不良アドレスの値をホールドさせ、２回目以降に検出された不良セルの不良アドレスと第１のデータ記憶部１０５に取り込まれた不良アドレスをと比較することで、メモリの救済可否判定を行うことができる。
【００５９】
なお、本実施の形態では第１のデータ記憶部１０５の値をホールドさせるために第２のデータ記憶部１０６の値を用いたが、図４に示すように第２のデータ記憶部１０６の代わりにＦＡＩＬ信号の値を用いた場合でも、本実施の形態と同様の効果が得られる。
【００６０】
また、本実施の形態ではカラム方向の救済を行う最小単位を１本のビットラインとして説明したが、カラム方向の救済を行う最小単位が複数本のビットラインの場合でも、救済を行う最小単位である複数本のビットラインをまとめて不良アドレスとして扱うことで本実施の形態と同様の効果が得られる。
（第２の実施形態）
図６は本発明の第２の実施形態による半導体集積回路を説明するためのブロック図である。
【００６１】
メモリ６０４はテスト対象のメモリであり、Ｒｏｗ（ロウ）方向に一組の救済用の冗長ラインを持ち、実施の形態ではその内部に救済処理によって置換される単一の救済用Ｒｏｗラインを含む。
【００６２】
６０１はテストパターン発生部であり、ロウアドレス信号ＲＯＷ−ＡＤＤ、カラムアドレス信号ＣＯＬ−ＡＤＤ、コントロール信号ＣＴＲＬ、データ入力信号ＤＩＮを発生し、メモリ６０４に入力する。
【００６３】
６０２は比較部であり、メモリ６０４に入力されたテストパターンに対するメモリ６０４の出力応答ＤＯＵＴと正常時に期待される値（期待値）とを比較し、信号を正常に記憶していない不良セルを検出する。比較部６０２からは、一度不良セルを検出するとアクティブになり、テストが終了するまでアクティブの状態を維持するＦＡＩＬ信号と、故障を検出した時だけアクティブになる故障を検出していない時にはアクティブにならないＭＯＮＩＴＯＲ信号と、メモリ６０４の出力データＤＯＵＴの各ビット毎に期待値と比較を行い、故障が存在したビットだけがアクティブになるＦａｉｌＰｅｒＢｉｔ信号が生成される。
【００６４】
６０６は第２のデータ記憶部であり、比較部６０２のＦＡＩＬ信号を入力してテストを実施している間のメモリ６０４内の故障の有無の状態値（テスト開始から最初の故障を検出するまでの状態を示す値と、最初の故障を検出した後の状態を示す値）を保持する。
【００６５】
メモリ６０４はロウ方向で救済を実施するため、不良があったロウラインを特定するために、不良があったセルのロウアドレスの情報が必要となる。６０５は第１のデータ記憶部であり、メモリ６０４の検査時には、テストパターン発生部６０１からメモリ６０４へ入力されるロウアドレス信号の全て或いは一部のビットを分岐した信号を不良アドレスデータとして取り込む。すなわち、メモリ６０４の救済処理を行う場合には、不良のあったセルのロウアドレスを記憶し、最初に故障を検出した不良セルのセルのロウアドレスを記憶しその後は第１のデータ記憶部６０５内でその値を保持する。第１のデータ記憶部６０５に格納されたデータをホールドさせるために、第２のデータ記憶部６０６に保持された値を用いる。第２のデータ記憶部６０６で最初の故障を検出した後の状態を示す値の場合には、第１のデータ記憶部６０５に記憶された値を保持し続ける。また、第１のデータ記憶部６０５は、メモリ６０４の周辺論理のスキャンテストを行う場合には、スキャンチェーンの一部を構成し、メモリ６０４まで伝播されてくる故障を観測するために用いることで、メモリ６０４周辺論理の故障検出を向上することができる。
【００６６】
６０７は救済可否判定部であり、ＦＡＩＬ信号とＭＯＮＩＴＯＲ信号がともにアクティブな場合に、第１のデータ記憶部６０５に入力される信号と、第１のデータ記憶部６０５で保持している値とを比較し、それらが同一の場合にはメモリ６０４は救済用Ｒｏｗラインによって救済可能と判断し、異なる場合には救済不能と判断する。
【００６７】
図７は、図６に示された半導体集積回路におけるメモリ救済処理動作を示すフローチャートである。
【００６８】
以下、メモリ救済処理の実現について図６、図７および図８を参照しつつ説明する。
【００６９】
図８において、Ｒ１，Ｒ０は、メモリ６０４の２ビットのロウアドレスであり、
（Ｒ１，Ｒ０）でロウアドレスを示す。Ｒ１がｍｓｂであり、Ｒ０がｌｓｂである。
Ｃ１，Ｃ０は、メモリ６０４の２ビットのカラムアドレスであり、
（Ｃ１，Ｃ０）でカラムアドレスを示す。Ｃ１がｍｓｂであり、Ｃ０がｌｓｂである。
【００７０】
Ｗ０はロウアドレス（Ｒ１，Ｒ０）＝（０，０）に対するワードラインであり、
Ｗ１はロウアドレス（Ｒ１，Ｒ０）＝（０，１）に対するワードラインであり、
Ｗ２はロウアドレス（Ｒ１，Ｒ０）＝（１，０）に対するワードラインであり、
Ｗ３はロウアドレス（Ｒ１，Ｒ０）＝（１，１）に対するワードラインであり、
Ｂ００はカラムアドレス（Ｃ１，Ｃ０）＝（０，０）の０ビット目に対するビットラインであり、
Ｂ０１はカラムアドレス（Ｃ１，Ｃ０）＝（０，１）の０ビット目に対するビットラインであり、
Ｂ０２はカラムアドレス（Ｃ１，Ｃ０）＝（１，０）の０ビット目に対するビットラインであり、
Ｂ０３はカラムアドレス（Ｃ１，Ｃ０）＝（１，１）の０ビット目に対するビットラインであり、
Ｂ１０はカラムアドレス（Ｃ１，Ｃ０）＝（０，０）の１ビット目に対するビットラインであり、
Ｂ１１はカラムアドレス（Ｃ１，Ｃ０）＝（０，１）の１ビット目に対するビットラインであり、
Ｂ１２はカラムアドレス（Ｃ１，Ｃ０）＝（１，０）の１ビット目に対するビットラインであり、
Ｂ１３はカラムアドレス（Ｃ１，Ｃ０）＝（１，１）の１ビット目に対するビットラインであり、
ビットラインとワードラインの交点にメモリセルが配置されている。
【００７１】
同図中の”×”は、不良のあったメモリセルを表し、
ロウアドレス（Ｒ１，Ｒ０）＝００，  カラムアドレス（Ｃ１、Ｃ０）＝００  で示されるアドレスの０ビット目、
ロウアドレス（Ｒ１，Ｒ０）＝００，  カラムアドレス（Ｃ１，Ｃ０）＝１０  で示されるアドレスの１ビット目、
ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目、
の３個の不良セルが存在し、Ｗ０上の２個のメモリが不良であり、Ｂ００上の２個のメモリが不良であることを示している。
【００７２】
ステップＳＴ７０１でテストを開始する。テスト時のアドレスのカウント方向は、カラムアドレスから先にカウントする場合について説明する。
【００７３】
最初に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝００，  カラムアドレス
（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目であり、
２回目に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝００，  カラムアドレス
（Ｃ１，Ｃ０）＝１０  で示されるアドレスの１ビット目であり、
３回目（最後）に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目である。
【００７４】
ステップＳＴ７０２でテストパターン発生部６０１からメモリ６０４へテストパターンを入力し、メモリ６０４からの出力を比較部６０２で期待値と比較する。
【００７５】
ステップＳＴ７０３で、ロウアドレス（Ｒ１，Ｒ０）＝００、カラムアドレス（Ｃ１，Ｃ０）＝００で故障を検出する。故障を検出したのでステップＳＴ７０５に移る。該当故障は最初の故障であるため、ステップＳＴ７０６に移る。
【００７６】
ここで初めて第２のデータ記憶部６０６に故障があったということを示す値が保持されるとともに、第１のデータ記憶部６０５には、ロウアドレスとして、（Ｒ１，Ｒ０）＝００の値が不良アドレスとして保持される。次にステップＳＴ７０７に移るがまだ検査が終了していないので、ステップＳＴ７０２に戻る。
【００７７】
次にステップＳＴ７０３で検出される故障のアドレスは、ロウアドレス（Ｒ１，Ｒ０）＝００，カラムアドレス（Ｃ１，Ｃ０）＝１０  であり、ステップＳＴ７０５に移る。この２回目に検出される故障は、最初の故障ではないのでステップＳＴ７０８に移る。第２のデータ記憶部６０６で保持されている値は、最初の故障を検出した後の状態を示す値になっているため、第１のデータ記憶部６０５には、２回目に検出される故障のロウアドレス値が取り込まれずに、最初に検出された故障のロウアドレスの値が保持されたままである。
【００７８】
ステップＳＴ７０８では、２回目に故障が検出された時刻において、ＭＯＮＩＴＯＲ信号がアクティブになり、かつＦＡＩＬ信号は最初に故障が検出された時からアクティブになった状態であるので、救済可否判定部６０７において、第１のデータ記憶部７０５で保持されている最初の故障の不良アドレスと、２回目に検出された故障の不良アドレスが一致しているかどうかを判断する。この場合最初に検出された故障と２回目に検出された故障は、両方とも同一ロウアドレス（両方ともＷ０ライン上）であるため、不良アドレスが一致されたと判断され、ステップＳＴ７０７に移る。
ステップＳＴ７０７では、まだ検査が終了していないので、ステップＳＴ７０２に移る。
【００７９】
次（３回目）に検出される故障のアドレスは、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝００  であり、ステップＳＴ７０５に移る。この３回目に検出される故障も、最初の故障ではないのでステップＳＴ７０８に移る。第２のデータ記憶部６０６で保持されている値は、最初の故障を検出した後の状態を示す値になっているため、第１のデータ記憶部６０５には、３回目に検出される故障のロウアドレスの値は取り込まれずに、最初に検出された故障のロウアドレスの値が保持されたままである。
【００８０】
ステップＳＴ７０８では、３回目に故障が検出された時刻において、ＭＯＮＩＴＯＲ信号がアクティブになり、かつＦＡＩＬ信号は最初に故障が検出された時からアクティブになった状態であるので、救済可否判定部６０７において、第１のデータ記憶部６０５に保持された最初の故障の不良アドレスと、３回目に検出された故障の不良アドレスが一致しているかどうかを判断する。この場合最初に検出された故障はＷ０ライン上であり、３回目に検出された故障はＷ１ライン上にあるので、最初に検出された故障と３回目に検出された故障は、同一アドレスではなく、救済可否判定部１０７で救済不能と判定され、ＳＴ７０９に移り救済不能なために不良品と決定して処理が終了する。
【００８１】
以上のように第２の実施形態によれば、ＢＩＳＴを用いたメモリ６０４の冗長救済回路において、ＢＩＳＴからメモリ６０４へ入力される信号を分岐させた信号を取り込むデータ記憶部を準備して、メモリ６０４の検査時には、データ記憶部を不良アドレスを格納するために用いられている記憶素子（フリップフロップ）として用い、ＢＩＳＴ回路自身およびメモリ周辺部論理の検査時にはデータ記憶部のフリップフロップをスキャンチェーンの一部として使用することで、論理部のスキャンテストおよびメモリ６０４の検査に必要となる回路面積の増加を抑えることが可能となる。
【００８２】
また、メモリ６０４の救済用のラインがロウ方向に１本の場合には、最初に検出した不良セルの不良アドレスであるロウアドレスのみを第１のデータ記憶部６０５に取り込み、メモリ６０４に不良があったかどうかのデータを保持する第２のデータ記憶部６０６に保持された値によって、第１のデータ記憶部６０５に取り込まれた最初に検出した不良セルの不良アドレスの値をホールドさせ、２回目以降に検出された不良セルの不良アドレスと第１のデータ記憶部６０５に取り込まれた不良アドレスをと比較することで、メモリ６０４の救済可否判定を行うことができる。
【００８３】
なお、本実施の形態では第１のデータ記憶部６０５の値をホールドさせるために第２のデータ記憶部６０６の値を用いたが、図９に示すように第２のデータ記憶部の代わりにＦＡＩＬ信号の値を用いた場合でも、本実施の形態と同様の効果が得られる。
【００８４】
また、本実施の形態ではロウ方向の救済を行う最小単位を１本のワードラインとして説明したが、ロウ方向の救済を行う最小単位が複数本のワードラインの場合でも、救済を行う最小単位である複数本のワードラインをまとめて不良アドレスとして扱うことで本実施の形態と同様の効果が得られる。
（第３の実施形態）
図１０は本発明の第３の実施形態による半導体集積回路を説明するためのブロック図である。
【００８５】
メモリ１００４はテスト対象のメモリであり、Ｃｏｌｕｍｎ方向およびＲｏｗ方向で救済を行う冗長ラインを持ち、実施の形態ではその内部に救済処理によって置換される救済用Ｃｏｌｕｍｎライン１本及び救済用Ｒｏｗライン１本を含む。
【００８６】
１００１はテストパターン発生部であり、ロウアドレス信号ＲＯＷ−ＡＤＤ、カラムアドレス信号ＣＯＬ−ＡＤＤ、コントロール信号ＣＴＲＬ、データ入力信号ＤＩＮを発生し、
メモリ１００４に入力する。
【００８７】
１００２は比較部であり、メモリ１００４に入力されたテストパターンに対するメモリ１００４の出力応答ＤＯＵＴと正常時に期待される値（期待値）とを比較し、信号を正常に記憶していない不良セルを検出する。比較部１００２からは、一度不良セルを検出するとアクティブになり、テストが終了するまでアクティブの状態を維持するＦＡＩＬ信号と、故障を検出した時だけアクティブになる故障を検出していない時にはアクティブにならないＭＯＮＩＴＯＲ信号と、メモリ１００４の出力データＤＯＵＴの各ビット毎に期待値と比較を行い、故障が存在したビットだけがアクティブになるＦａｉｌＰｅｒＢｉｔ信号が生成される。
【００８８】
メモリ１００４はカラム方向およびロウ方向で救済を実施するため、不良があったカラムラインおよびロウラインを特定するために、不良があったセルのカラムアドレスおよびそのビット位置、そしてロウアドレスの情報が必要となる。１００５は第１のデータ記憶部であり、メモリ１００４の検査時には、テストパターン発生部１００１からメモリ１００４へ入力されるアドレス信号を分岐した信号および比較部１００２からの出力信号を不良アドレスデータとして取り込む。すなわち、メモリ１００４の救済処理を行う場合には、不良のあったセルのカラムアドレスおよびそのビット位置情報、そしてロウアドレスを記憶する。
【００８９】
１００６は第２のデータ記憶部であり、第１のデータ記憶部１００５で記憶された値が、メモリ１００４の不良セルのアドレスであるかどうかを示す値を保持する。第２のデータ記憶部１００６に保持された値によって、第１のデータ記憶部１００５内の値が保持される。
【００９０】
また、第１のデータ記憶部１００５は、メモリ１００４の周辺論理のスキャンテストを行う場合には、スキャンチェーンの一部を構成し、メモリ１００４まで伝播されてくる故障を観測するために用いることで、メモリ１００４の周辺論理の故障検出を向上することができる。
【００９１】
１００３は、テストパターン発生部１００１で生成されるデータ入力信号ＤＩＮと比較部１００２で生成されるＦａｉｌＰｅｒＢｉｔ信号を選択するセレクタであり、メモリ１００４の救済処理時にはＦａｉｌＰｅｒＢｉｔ信号を選択することで、第１のデータ記憶部１００５に不良のあったセルのビット位置情報を入力し、  メモリ周辺論理のスキャンテスト時には、メモリ１００４へのデータ入力信号ＤＩＮあるいはＦａｉｌＰｅｒＢｉｔ信号のいずれかを選択し、メモリ１００４まで伝播される故障を第１のデータ記憶部１００５で観測する。
【００９２】
１００７は救済可否判定部であり、ＦＡＩＬ信号とＭＯＮＩＴＯＲ信号がともにアクティブな場合に、第１のデータ記憶部１００５に入力される信号と、第１のデータ記憶部１００５で保持している値とを比較し、メモリ１００４の保持する救済用ラインで救済可能かどうかを判断する。
【００９３】
図１１は、図１０に示された半導体集積回路におけるメモリ救済処理動作を示すフローチャートである。
【００９４】
以下、メモリ１００４の不良セルの分布の例として図３を用いて、メモリ救済処理の実現について図１０、図１１および図３を参照しつつ説明する。図３についての説明は繰り返さない。
【００９５】
ステップＳＴ１１０１でテストを開始する。テスト時のアドレスのカウント方向は、カラムアドレスから先にカウントする場合、また、ＲｏｗラインとＣｏｌｕｍｎラインでの救済判定としては、Ｃｏｌｕｍｎラインの救済を優先して行うものとして説明する。
【００９６】
最初に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝００，  カラムアドレス（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目であり、
２回目に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝００  で示されるアドレスの０ビット目であり、
３回目（最後）に検出される故障は、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝０１  で示されるアドレスの１ビット目である。
【００９７】
ステップＳＴ１１０２でテストパターン発生部１００１からメモリ１００４へテストパターンを入力し、メモリ１００４からの出力を比較部１００２で期待値と比較する。
【００９８】
ステップＳＴ１１０３で、ロウアドレス（Ｒ１，Ｒ０）＝００、カラムアドレス（Ｃ１，Ｃ０）＝００の０ビット目で故障を検出する。故障を検出したのでステップＳＴ１１０５に移る。ステップＳＴ１１０５では、検出された故障のアドレスがこれまでに第１のデータ記憶部１００５で保持された値であるかどうかを判断する。該当故障は最初の故障であるため、ステップＳＴ１１０８に移る。
【００９９】
Ｃｏｌｕｍｎラインの救済を優先するため、第１のデータ記憶部１００５には、カラムアドレスとして、（Ｃ１，Ｃ０）＝００の値と、ＦａｉｌＰｅｒＢｉｔとして０ビット目だけが故障が存在したことを表す値が不良アドレスとして保持され、第２のデータ記憶部１００６には、第１のデータ記憶部１００５に保持された値が、メモリ１００４の故障であるということを示す値が保持される。次にステップＳＴ１１０７に移るがまだ検査が終了していないので、ステップＳＴ１１０２に戻る。
【０１００】
次にステップＳＴ１１０３で２回目の故障としてロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝００  の０ビット目での故障が検出されステップＳＴ１１０５に移る。Ｃｏｌｕｍｎラインの救済を優先するため、２回目の故障は１回目の故障と同一のカラムアドレスおよび同一のビットであるかどうかを判断する。この場合、１回目の故障と２回目の故障は同一のカラムアドレス（Ｃ１，Ｃ０）＝００であり、かつ同一のビット０ビット目であるため、第１のデータ記憶部１００５には、２回目に検出される故障のカラムアドレスおよびＦａｉｌＰｅｒＢｉｔの値は取り込まれずに、最初に検出された不良アドレスのままである。
【０１０１】
次にステップＳＴ１１０７に移る。まだ検査終了していないので、ステップＳＴ１１０２に戻る。
【０１０２】
次（３回目）に検出される故障のアドレスは、ロウアドレス（Ｒ１，Ｒ０）＝０１，  カラムアドレス（Ｃ１，Ｃ０）＝０１の１ビット目である。カラムアドレスおよびビット位置が、第１のデータ記憶部１００５に保持されている値と異なるため、新しい故障と判断される。Ｃｏｌｕｍｎ方向の救済ラインは既に使われているために、Ｒｏｗ方向の救済ラインを用い、第１のデータ記憶部１００５には、ロウアドレスとして、（Ｒ１，Ｒ０）＝０１の値が不良アドレスとして保持され、第２のデータ記憶部１００６には、第１のデータ記憶部１００５に保持された値が、メモリ１００４の故障であるということを示す値が保持される。
【０１０３】
Ｒｏｗ方向の救済ラインを１本と、Ｃｏｌｕｍｎ方向の救済ラインを１本で救済できている状態であるため、ステップＳＴ１１０８では、救済可能と判断してステップＳＴ１１０７に移るがまだ検査が終了していないので、ステップＳＴ１１０２に戻る。
【０１０４】
その後には、故障が存在しないため、全てのアドレスをテストしたところでステップＳＴ１１０７で検査終了と判断される。この場合には、Ｒｏｗ方向の救済ライン１本と、Ｃｏｌｕｍｎ方向の救済ライン１本でメモリの救済が可能なため、救済可能としてステップＳＴ１１１０で処理が終了する。
【０１０５】
以上のように第３の実施形態によれば、ＢＩＳＴを用いたメモリの冗長救済回路において、ＢＩＳＴからメモリへ入力される信号を分岐させた信号を取り込むデータ記憶部を準備して、メモリの検査時には、データ記憶部を不良アドレスを格納するために用いられている記憶素子（フリップフロップ）として用い、ＢＩＳＴ回路自身およびメモリ周辺部論理の検査時にはデータ記憶部のフリップフロップをスキャンチェーンの一部として使用することで、論理部のスキャンテストおよびメモリの検査に必要となる回路面積の増加を抑えることが可能となる。
【０１０６】
また、本実施の形態ではＲｏｗ方向の救済ライン１本とＣｏｌｕｍｎ方向の救済ラインが１本について説明したが、救済ラインが複数本あった場合であっても、第１のデータ記憶部に格納された値と、その値が不良セルであるかどうかを判断するための値を第２のデータ記憶部で保持することで、  第１のデータ記憶部に格納された値が不良セルのアドレスであるかどうかを判断でき、本実施の形態と同様の効果が得られる。
【０１０７】
【発明の効果】
請求項１記載の半導体集積回路によれば、ＢＩＳＴを用いたメモリの冗長救済回路において、ＢＩＳＴからメモリへ入力される信号を分岐させた信号を取り込むデータ記憶部を準備して、メモリの検査時には、データ記憶部を不良アドレスを格納するための記憶素子（フリップフロップ）として用い、ＢＩＳＴ回路自身およびメモリ周辺部論理の検査時にはデータ記憶部のフリップフロップをスキャンチェーンの一部として使用することで、論理部のスキャンテストおよびメモリの検査に必要となる回路面積の増加を抑えることが可能となる。
【０１０８】
請求項２、請求項５、請求項６または請求項７記載の半導体集積回路によれば、請求項１と同様な効果がある。
【０１０９】
請求項３または請求項４記載の半導体集積回路によれば、請求項１または請求項２と同様な効果がある。
【０１１０】
請求項８記載の半導体集積回路によれば、請求項１、請求項２、請求項３、請求項４、請求項５、請求項６または請求項７と同様な効果がある。
【０１１１】
請求項９記載の半導体集積回路の検査方法によれば、請求項１と同様な効果がある。
【図面の簡単な説明】
【図１】この発明の第１の実施形態による半導体集積回路を説明するためのブロック図である。
【図２】第１の実施形態を説明するためのフローチャートである。
【図３】第１の実施形態に係わるメモリ中の不良の分布を表す説明図である。
【図４】第１の実施形態の変形形態による半導体集積回路を説明するためのブロック図である。
【図５】第１の実施形態の変形形態による半導体集積回路を説明するためのブロック図である。
【図６】第２の実施形態による半導体集積回路を説明するためのブロック図である。
【図７】第２の実施形態を説明するためのフローチャートである。
【図８】第２の実施形態に係わるメモリ中の不良の分布を表す説明図である。
【図９】第２の実施形態の変形形態による半導体集積回路を説明するためのブロック図である。
【図１０】第３の実施の形態による半導体集積回路のブロックである。
【図１１】第３の実施形態を説明するためのフローチャートである。
【図１２】従来のＢＩＳＴによる救済回路例である。
【符号の説明】
１０１    テストパターン発生部
１０２    比較部
１０３    セレクタ
１０４    メモリ
１０５    第１のデータ記憶部
１０６    第２のデータ記憶部
１０７    救済可否判定部
６０１    テストパターン発生部
６０２    比較部
６０４    メモリ
６０５    第１のデータ記憶部
６０６    第２のデータ記憶部
６０７    救済可否判定部
１００１    テストパターン発生部
１００２    比較部
１００３    セレクタ
１００４    メモリ
１００５    第１のデータ記憶部
１００６    第２のデータ記憶部
１００７    救済可否判定部
【図１】
2004310951.tif 000003
【図２】
2004310951.tif 000004
【図３】
2004310951.tif 000005
【図４】
2004310951.tif 000006
【図５】
2004310951.tif 000007
【図６】
2004310951.tif 000008
【図７】
2004310951.tif 000009
【図８】
2004310951.tif 000010
【図９】
2004310951.tif 000011
【図１０】
2004310951.tif 000012
【図１１】
2004310951.tif 000013
【図１２】
2004310951.tif 000014