(57)【要約】      （修正有）【課題】救済解析回路の規模を抑えつつ、メモリのテスト時間を短縮する半導体集積回路を提供する。【解決手段】半導体集積回路１は、複数のメモリ１１と、各メモリの出力値と期待値とをそれぞれ比較する複数の比較回路１２と、各比較回路の比較結果データをそれぞれ格納する複数の第１レジスタ１３と、複数のメモリのテストを制御し、期待値を生成するＢＩＳＴ（Ｂｕｉｌｔ  Ｉｎ  Ｓｅｌｆ  Ｔｅｓｔ）回路２０とを具備する。ＢＩＳＴ回路は、複数の第１レジスタから転送された比較結果データを格納する第２レジスタ２３と、第２レジスタに格納された比較結果データに基づいて、メモリの不良の有無及び故障位置を示す救済データを生成する救済データ生成器２４と、救済データを格納し、複数のメモリの数より少ない数の第３レジスタ２５と、救済データの総数が第３レジスタの数より大きくなった場合に救済不可信号を出力する判定回路２７とを具備する。【選択図】図４
2016134188.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリと、
前記複数のメモリに対応してそれぞれ設けられ、各メモリの出力値と期待値とをそれぞれ比較する複数の比較回路と、
前記複数のメモリに対応してそれぞれ設けられ、各比較回路の比較結果データをそれぞれ格納する複数の第１レジスタと、
前記複数のメモリのテストを制御し、前記期待値を生成するＢＩＳＴ回路と
を具備し、
前記ＢＩＳＴ回路は、
前記複数の第１レジスタから転送された前記比較結果データを格納する第２レジスタと、
前記第２レジスタに格納された前記比較結果データに基づいて、前記メモリの不良の有無及び故障位置を示す救済データを生成する救済データ生成器と、
前記救済データを格納し、前記複数のメモリの数より少ない数の第３レジスタと、
前記救済データの総数が前記第３レジスタの数より大きくなった場合に救済不可信号を出力する第１判定回路と
を具備する半導体集積回路。
【請求項２】
前記救済データは、前記救済データが生成された前記メモリの識別情報を含む、請求項１記載の半導体集積回路。
【請求項３】
前記ＢＩＳＴ回路は、複数設けられ、
前記複数のＢＩＳＴ回路は、互いにシリアルに接続されており、
前記救済データは、前記複数のＢＩＳＴ回路に対してシリアルに転送されて外部に出力される、請求項１記載の半導体集積回路。
【請求項４】
前記救済データの総数が前記半導体集積回路全体の救済可能なメモリの数を超える場合に救済不可信号を出力する第２判定回路をさらに具備する、請求項１記載の半導体集積回路。
【請求項５】
前記救済データを用いて不良メモリの救済を行う組み込み自己修復回路をさらに具備する、請求項４記載の半導体集積回路。
【請求項６】
前記ＢＩＳＴ回路内に設けられ、各メモリのビット幅とテスト対象のメモリのアドレス情報とを用いて前記テスト対象の前記メモリにおける前記比較結果データを前記複数の第１レジスタ間でシフト転送させるシフト制御回路をさらに具備する、請求項１記載の半導体集積回路。
【請求項７】
前記複数の第１レジスタは、スペアビットの不良情報を含む前記比較結果データをそれぞれ格納し、
前記第１判定回路は、前記スペアビットの不良情報をもとに不良メモリの救済可否を判定する、請求項１記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、メモリの自己テスト回路が組み込まれた半導体集積回路に関する。
【背景技術】
【０００２】
半導体集積回路にメモリの自己テスト回路を組み込み、製造テストにおいて故障を検出する方法が知られている。このような組み込み自己テスト回路は、ＢＩＳＴ（Built In Self Test）回路と呼ばれている。また、ＢＩＳＴ回路と併用され、オンチップで解析及び冗長割り付けを行う組み込み冗長救済回路として、ＢＩＲＡ（Built In Redundancy Allocation）回路が知られている。
【０００３】
ＢＩＳＴ回路とＢＩＲＡ回路との両方が搭載された半導体集積回路では、ＢＩＲＡ回路でメモリ出力と期待値との比較結果が分析及び加工され、救済データが生成される。そして、この救済データが、ＢＩＲＡ回路から外部のテスト装置へ出力される。このような半導体集積回路では、ＢＩＲＡ回路を搭載する分、回路規模が増大してしまう。
【０００４】
これに対し、ＢＩＲＡ回路を搭載せずにＢＩＳＴ回路のみが搭載される半導体集積回路が提案されている。この半導体集積回路では、ＢＩＲＡ回路を削減できるため、回路規模を縮小することができる。しかし、このような半導体集積回路では、メモリ出力と期待値との比較結果の圧縮されていないデータがテスト装置にシリアルに出力され、テスト装置で分析及び加工される。つまり、ＢＩＲＡ回路を搭載しない半導体集積回路が出力するデータ列は、ＢＩＲＡ回路が出力するデータ列よりも長く、さらに期待値との比較数も多くなる。このため、メモリのテスト時間が増大してしまう。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１４６４８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
救済解析回路の規模を抑えつつ、メモリのテスト時間を短縮することが可能な半導体集積回路を提供する。
【課題を解決するための手段】
【０００７】
実施形態の半導体集積回路は、複数のメモリと、前記複数のメモリに対応してそれぞれ設けられ、各メモリの出力値と期待値とをそれぞれ比較する複数の比較回路と、前記複数のメモリに対応してそれぞれ設けられ、各比較回路の比較結果データをそれぞれ格納する複数の第１レジスタと、前記複数のメモリのテストを制御し、前記期待値を生成するＢＩＳＴ回路とを具備し、前記ＢＩＳＴ回路は、前記複数の第１レジスタから転送された前記比較結果データを格納する第２レジスタと、前記第２レジスタに格納された前記比較結果データに基づいて、前記メモリの不良の有無及び故障位置を示す救済データを生成する救済データ生成器と、前記救済データを格納し、前記複数のメモリの数より少ない数の第３レジスタと、前記救済データの総数が前記第３レジスタの数より大きくなった場合に救済不可信号を出力する第１判定回路とを具備する。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態に係る半導体集積回路のブロック図。
【図２】第１実施形態に係る半導体集積回路のメモリテストのフロー図。
【図３】第１実施形態に係る半導体集積回路の複数のメモリグループ間に関するテスト動作のフロー図。
【図４】第２実施形態に係る半導体集積回路のブロック図。
【図５】第３実施形態に係る半導体集積回路のブロック図。
【図６】第４実施形態に係る半導体集積回路のブロック図。
【図７】第５実施形態に係る半導体集積回路のブロック図。
【発明を実施するための形態】
【０００９】
以下、実施形態について、図面を参照して説明する。尚、以下の説明において、同一の機能及び構成を有する要素については、共通する参照符号を付し、重複説明は必要な場合に行う。
［１］第１実施形態
第１実施形態の半導体集積回路１は、ＢＩＲＡ回路を搭載せずに、ＢＩＳＴ回路にＢＩＲＡ回路の機能を持たせている。
［１−１］構成
図１を用いて、第１実施形態に係る半導体集積回路１の構成について説明する。
【００１０】
図１に示すように、第１実施形態の半導体集積回路１は、複数のメモリグループＭＧＰ（ＭＧＰ−１、ＭＧＰ−２、…、ＭＧＰ−ｍ）と複数のＢＩＳＴ回路２０（２０−１、２０−２、…２０−ｍ）とを含んでいる。半導体集積回路１は、外部のテスト装置２に接続されている。
【００１１】
メモリグループＭＧＰは、複数のメモリカラー１０（１０−１、１０−２、…、１０−ｎ）を有している。メモリカラー１０は、メモリ１１、比較回路１２及びレジスタ１３を含んでいる。
【００１２】
メモリ１１は、任意のビット幅とワード数で所定のデータを記憶し、ＢＩＳＴ回路２０によってテスト用の書き込み及び読み出し動作が行われる。尚、複数のメモリ１１は、それぞれ任意のビット幅でデータを記憶してもよいし、同一のビット幅でデータを記憶してもよい。メモリ１１は、スペアセル（図示せず）を有し、不良セルを救済する冗長救済機能を有している。
【００１３】
比較回路１２は、メモリ１１の出力（メモリ出力）とＢＩＳＴ回路２０から出力された期待値とを比較し、メモリ出力の不良を検出する。ここで、メモリ出力と期待値との比較は、複数のカラムを含むビット毎（ＩＯ単位）で行われる。但し、この比較は、ビット毎に限定されず、例えば、カラム毎で行われてもよい。
【００１４】
レジスタ１３は、比較回路１２による比較結果を保持する。レジスタ１３は、メモリ１１毎にそれぞれ対応して設けられている。レジスタ１３は、例えば、メモリ１１の最大ビット幅と同じビット幅を有している。
【００１５】
ＢＩＳＴ回路２０は、複数のメモリカラー１０を有するメモリグループＭＧＰ毎に設けられ、メモリグループＭＧＰと同じ数だけ設けられている。ＢＩＳＴ回路２０は、ＢＩＳＴ制御回路２１、シフト制御回路２２、レジスタ２３、救済データ生成器２４及びレジスタ２５（２５−１、２５−２、…、２５−ｎ）を含んでいる。ＢＩＳＴ回路２０は、ｎ個のメモリカラー１０（１０−１、１０−２、…、１０−ｎ）で共有され、各メモリ１１の自己テストを実行する。複数のＢＩＳＴ回路２０は、シリアルに接続されている。
【００１６】
ＢＩＳＴ制御回路２１は、ＢＩＳＴ回路２０全体の制御を行う。例えば、ＢＩＳＴ制御回路２１は、シフト制御回路２２のシフト転送を制御する。ＢＩＳＴ制御回路２１は、メモリカラー１０のメモリ１１に対し、必要なテストが行えるように、データ、アドレス（ロウアドレス、カラムアドレス）及び制御信号の生成を制御する。ＢＩＳＴ制御回路２１は、ｎ個のメモリカラー１０のうち、テストの対象となるメモリ１１を選択するためのメモリ選択信号の生成を制御する。
【００１７】
シフト制御回路２２は、メモリグループＭＧＰに属するメモリカラー１０内の各レジスタ１３に保持された比較結果をレジスタ１３間でシフト転送するように制御する。尚、シフト制御回路２２は、メモリ１１の比較結果が全てオールパス（不良なし）であれば、シフト転送は行わずにテスト動作を終了させてもよい。
【００１８】
レジスタ２３は、メモリグループＭＧＰ内の各レジスタ１３をシフト転送された比較結果を保持する。レジスタ２３は、例えば、メモリ１１の最大ビット幅と同じビット幅を有している。
【００１９】
救済データ生成器２４は、比較結果に基づいてメモリ不良を解析し、救済可能である場合には、比較結果を加工して救済データＡを生成する。
【００２０】
レジスタ２５（２５−１、２５−２、…、２５−ｎ）は、救済データ生成器２４により生成された救済データＡを記憶する。レジスタ２５は、メモリ１１と同数設けられ、各メモリ１１の救済データＡをそれぞれ記憶する。救済データＡは、比較回路１２による比較結果のデータが圧縮されたものであるため、レジスタ２５が保持できるビット幅は、レジスタ１３が保持できるビット幅より小さくてもよい。
【００２１】
尚、ＢＩＳＴ回路２０は、図示する回路構成に限定されず、一般的なＢＩＳＴ回路と同様に、例えば、データ生成部、アドレス生成部、制御信号生成部等を有している。
【００２２】
つまり、ＢＩＳＴ回路２０のデータ生成部は、ｎ個のメモリ１１に対して必要なテストが行えるように、テスト用の書き込みデータを生成してｎ個のメモリ１１へ出力する。また、ＢＩＳＴ回路２０のデータ生成部は、書き込みデータに対応するｎ個のメモリ１１の出力期待値を生成して、比較回路１２に出力する。尚、データ生成部は、例えば、メモリ１１の最大ビット幅に合わせて出力期待値を生成する。
【００２３】
ＢＩＳＴ回路２０のアドレス生成部は、データ生成部によって生成された書き込みデータの書き込み先となり、また書き込まれたデータの読み出し元となるｎ個のメモリ１１のアドレス（以下、「書き込みアドレス」という）を生成して、ｎ個のメモリ１１に出力する。
【００２４】
ＢＩＳＴ回路２０の制御信号生成部は、ｎ個のメモリ１１で書き込み動作及び読み出し動作を行うための制御信号を生成して、ｎ個のメモリ１１に出力する。
【００２５】
テスト装置２は、ＢＩＳＴ回路２０の入力信号の制御及び出力信号の観測を行うとともに、半導体集積回路１から出力された救済データＡの読み出しを行う外部装置である。
【００２６】
尚、半導体集積回路１内の複数のメモリカラー１０は、複数のメモリグループＭＧＰに分けずに、複数のメモリカラー１０で１つのＢＩＳＴ回路２０を共有することも可能である。
［１−２］テストフロー
図１及び図２を用いて、第１実施形態に係る半導体集積回路１のメモリのテストフローについて説明する。尚、半導体集積回路１内には複数のメモリグループＭＧＰが存在するが、ここでは、１つのメモリグループＭＧＰのテストに着目する。
【００２７】
まず、ＢＩＳＴ回路２０は、メモリ１１毎の期待値と書き込みデータとを生成する（ＳＴ１）。メモリ１１の期待値は、例えば、メモリ１１の最大ビット幅を有している。
【００２８】
次に、ＢＩＳＴ制御回路２１により、メモリ１１は、書き込みデータの書き込み及び読み出しが行われる（ＳＴ２）。
【００２９】
比較回路１２は、メモリ１１の出力データと期待値とを例えばビット毎に比較する（ＳＴ３）。この際、比較回路１２は、期待値の不要ビットをマスクして必要ビットのみを選択し、出力データと期待値の必要ビットとを比較する。また、比較回路１２は、比較結果に基づいて、メモリ１１の良否判定を行う。例えば、メモリ不良がない場合は“０”、メモリ不良がある場合は“１”とする場合、比較回路１２は、比較結果に少なくとも１つの“１”が含まれている場合には、「不良」と判定する。
【００３０】
比較回路２１による比較結果は、ＢＩＳＴ制御回路２１により、レジスタ１３に保持される（ＳＴ４）。
【００３１】
このようなステップＳＴ２〜ＳＴ４までのテスト動作は、メモリグループＭＧＰ内の全てのメモリ１１でパラレルに実行される。
【００３２】
次に、シフト制御回路２２は、レジスタ１３に保持された比較結果を、メモリカラー１０−１、１０−２、…、１０−ｎ間をシフトパスさせながらＢＩＳＴ回路２０へ転送させ（ＳＴ５）、ＢＩＳＴ回路２０内のレジスタ２３に記憶させる（ＳＴ６）。
【００３３】
救済データ生成器２４は、レジスタ２３に記憶された比較結果を解析し、救済可能である場合には比較結果を加工して救済データＡを生成する（ＳＴ７）。救済データＡは、例えば、不良の有無を示すイネーブルビットと故障位置を示すビットとを有しており、レジスタ１３に保持された比較結果よりもデータ列は短くなっている。
【００３４】
ＢＩＳＴ制御回路２１は、救済データＡをレジスタ２５に記憶させる（ＳＴ８）。ここで、メモリ１１毎の救済データＡは、メモリ１１に対応したレジスタ２５にそれぞれ記憶される。
【００３５】
次に、レジスタ２５に保持された救済データＡは、ＢＩＳＴ制御回路２１により、半導体集積回路１から外部のテスト装置２へ読み出される（ＳＴ９）。この際、複数のＢＩＳＴ回路２０内のレジスタ２５はシリアルに接続されているため、救済データＡは、複数のレジスタ２５をシリアルに転送され、テスト装置２へ読み出される。読み出された救済データＡは、テスト装置２でその後の工程に利用される。
【００３６】
次に、図１及び図３を用いて、複数のメモリグループＭＧＰ間のテスト動作の関係について説明する。
【００３７】
図１及び図３に示すように、半導体集積回路１内のＢＩＳＴ回路２０のそれぞれにおいて、メモリ１１のテスト動作が実行される（ＳＴ１１）。このテスト動作は、例えば、図２のステップＳＴ１〜ＳＴ４までの工程である。
【００３８】
次に、半導体集積回路１内の全てのＢＩＳＴ回路２０のテスト動作が終了した後、シフト制御回路２２は、各メモリグループＭＧＰに属するメモリカラー１０内のレジスタ１３に記憶された比較結果を、メモリ１１ごとに順次、メモリグループＭＧＰに対応したＢＩＳＴ回路２０内のレジスタ２３にシフト転送させる（ＳＴ１２）。
【００３９】
次に、半導体集積回路１内の各メモリグループＭＧＰに属するひとつのレジスタ１３のシフト動作が終了した後、各ＢＩＳＴ回路２０内の救済データ生成器２４で、該当メモリ１１に対する救済データＡが生成され、レジスタ２５に記憶させる（ＳＴ１３）。
【００４０】
次に、半導体集積回路１内の全てのＢＩＳＴ回路２０で、メモリグループＭＧＰに属する全てのメモリ１１に対して救済データＡの生成が終了した後、救済データＡをシフト転送させ、外部のテスト装置２への読み出しが行われる（ＳＴ１４）
尚、図３のシフト動作（ＳＴ１２）及び救済データ生成（ＳＴ１３）は、半導体集積回路１内の全てのＢＩＳＴ回路２０で動作が完了した後に同時に開始されることに限定されず、ＢＩＳＴ回路２０で個別に開始してもよい。
［１−３］第１実施形態の効果
上記第１実施形態によれば、半導体集積回路１にＢＩＲＡ回路を搭載せずに、ＢＩＳＴ回路２０にＢＩＲＡ回路の機能を持たせている。つまり、第１実施形態のＢＩＳＴ回路２０は、シフト制御回路２２、救済データ生成器２４、レジスタ２３及び２５を有している。これにより、メモリ出力と期待値との比較結果は、シフト制御回路２２によりメモリカラー１０間をシフト転送してＢＩＳＴ回路２０のレジスタ２３に保持される。そして、レジスタ２３に保持されたデータは、救済データ生成器２４によって分析され、救済が可能な場合は、救済データＡが生成される。この救済データＡは、レジスタ２５に保持され、テスト装置２に読み出される。
【００４１】
このような第１実施形態では、テスト装置２に読み出される救済データＡは、ＢＩＳＴ回路２０内の救済データ生成器２４によって加工（圧縮）されたデータである。つまり、救済データＡは、メモリ１１の全ビット幅分のデータではなく、メモリカラー１０内のレジスタ１３が保持するデータよりも短く、従来のＢＩＲＡ搭載の半導体集積回路と同じ救済データ（ＢＩＲＡデータ）幅＋α（イネーブルビット）となっている。従って、テスト装置２に読み出されるデータ列を短くすることができるため、テスト装置２のフェイルメモリの消費を抑制できる。これにより、救済解析回路の規模を抑えつつ、メモリ１１のテスト時間を短縮することができる。
【００４２】
また、救済データ生成器２４による救済データＡの生成は、全てのＢＩＳＴ回路２０でパラレルに実行することができるため、テスト時間の増加を抑制することができる。
【００４３】
また、第１実施形態では、テスト動作時にＢＩＳＴ回路２０が有している情報（例えば、メモリ１１のビット幅等の情報）を使用するため、オーバーヘッドを小さく抑えることができる。
【００４４】
また、第１実施形態では、メモリカラー１０内に、メモリ１１毎にレジスタ１３が設けられている。このため、比較回路１２による比較結果をレジスタ１３に一旦保持させることができる。これにより、ＢＩＳＴ回路２０に設けたシフト制御回路２２、救済データ生成器２４、レジスタ２３及び２５は、低速動作でよいため、設計負荷を低く抑えることができる。
［２］第２実施形態
第２実施形態は、半導体集積回路１全体に対するヒューズ数の上限が設定されている場合、ＢＩＳＴ回路２０毎の救済データ格納用のレジスタ２５の数を調整する。尚、第２実施形態では、第１実施形態と異なる点について主に説明する。
［２−１］構成
図４を用いて、第２実施形態に係る半導体集積回路１の構成について説明する。
【００４５】
図４に示すように、第２実施形態において、第１実施形態と異なる構成は、ＢＩＳＴ回路２０がカウンタ２６及び救済可否判定回路２７をさらに有し、ＢＩＳＴ回路２０の救済データＢを格納するレジスタ２５（２５−１、２５−２、…、２５−ｉ：ｉ＜ｎ）の数が、メモリ１１の数より少なくなっていることである。
【００４６】
カウンタ２６は、救済データ生成器２４で救済データＢが生成された不良メモリ数（救済が必要なメモリ数）をカウントする。救済可否判定回路２７は、不良メモリ数がレジスタ２５の数を超えた場合、救済データＢを格納するレジスタ２５が足りないため、リペア不可フラグ（救済不可信号）を出力する。レジスタ２５に格納された救済データＢには、第１実施形態における救済データＡに対して、救済データＢのメモリ１１を識別する情報が付与されている。
［２−２］テストフロー
図４を用いて、第２実施形態に係る半導体集積回路１のメモリのテストフローについて説明する。
【００４７】
第２実施形態においても、第１実施形態と同様、ＢＩＳＴ回路２０に比較回路１２による比較結果がシフト転送される。そして、ＢＩＳＴ回路２０の救済データ生成器２４で、メモリ１１の識別情報が付与された救済データＢが生成される。この際、カウンタ２６で、救済データＢが生成された不良メモリ数がカウントされる。救済可否判定回路２７は、不良メモリ数（救済データ生成器２４で生成された救済データＢの総数）がレジスタ２５の数を超えた場合、リペア不可フラグをテスト装置２に出力する。そして、テスト装置２は、テスト終了と判断する。
【００４８】
尚、半導体集積回路１内の複数のＢＩＳＴ回路２０のうち、少なくとも１つのＢＩＳＴ回路２０からリペア不可フラグが出力されたら、テスト装置２はチップ不良と判断する。また、リペア不可フラグが出力された半導体集積回路１に対しては、テスト装置２への救済データＢの読み出し動作を行わなくてもよい。
［２−３］第２実施形態の効果
上記第２実施形態によれば、第１実施形態と同様の効果が得られるだけでなく、次のような効果も得ることができる。
【００４９】
第２実施形態では、ヒューズデータ数の上限が設定されている場合、ＢＩＳＴ回路２０毎の救済データ格納用のレジスタ２５の数をメモリ１１の数よりも少なくしている。これにより、回路規模の増加を抑制することができる。
【００５０】
また、第２実施形態では、救済可否判定回路２７が、不良メモリ数がレジスタ２５の数を超えた場合にリペア不可フラグを出力することで、テストが終了する。このため、テスト時間の増加を抑制することができる。
［３］第３実施形態
第３実施形態は、外部のテスト装置に接続せずに、半導体集積回路１にオンチップ解析及び圧縮回路を搭載し、組み込み自己修復（ＢＩＳＲ：Built In Self Repair）回路と接続できるようにする。尚、第３実施形態では、第１及び第２実施形態と異なる点について主に説明する。
［３−１］構成
図５を用いて、第３実施形態に係る半導体集積回路１の構成について説明する。
【００５１】
図５に示すように、第３実施形態では、半導体集積回路１にテスト装置の機能を持たせている。つまり、半導体集積回路１にオンチップ解析及び圧縮回路３０が搭載され、このオンチップ解析及び圧縮回路３０にＢＩＳＲコントローラ４０が接続されている。
【００５２】
オンチップ解析及び圧縮回路３０は、解析回路（判定回路）３２、レジスタ３１及び３３（３３−１、３３−２、…、３３−ｈ）を有している。オンチップ解析及び圧縮回路３０は、複数のＢＩＳＴ回路２０で共有されている。
【００５３】
レジスタ３１は、ＢＩＳＴ回路２０間をシリアル転送されてきた救済データ（メモリ１１の識別情報を含む）Ｂを格納する。レジスタ３１が保持できるビット幅は、レジスタ１３が保持できるビット幅より小さくてもよい。
【００５４】
解析回路３２は、レジスタ３１に保持された救済データＢの各メモリ１１の識別情報を、チップレベルの識別情報に変換し、救済データＣを生成する。つまり、救済データＣは、各メモリ１１のチップレベルの識別情報を含んでいる。チップレベルの識別情報とは、どのメモリグループＭＧＰのメモリ１１であるかが分かるような情報を示している。解析回路３２は、有効な救済データＣの総数が、チップ全体の救済可能なメモリ１１の数を超える場合に、チップレベルのリペア不可フラグ（救済不可信号）を出力する。
【００５５】
レジスタ３３は、救済データＣを格納する。レジスタ３３は、半導体集積回路１内での最大救済可能なメモリ数と同数である。レジスタ３３が保持できるビット幅は、レジスタ１３が保持できるビット幅より小さくてもよい。
【００５６】
ＢＩＳＲコントローラ４０は、不良メモリの救済を行うために、救済データＣを用いて、ヒューズデバイス４１へのデータ書き込みを制御する。
【００５７】
ヒューズデバイス４１は、解析回路３２で生成された救済データＣをプログラムする。ヒューズデバイス４１は、例えば、１回に限りプログラム可能な電気的ヒューズを用いてもよい。ヒューズデバイス４１の代わりに、フラッシュメモリ等のプログラム可能な他のデバイスを用いてもよい。
【００５８】
ヒューズラッチ４２は、ヒューズデバイス４１にプログラムされたデータをメモリ１１へ転送する。このデータは、メモリ１１をアクセスするためのアドレスをスペアメモリ（冗長部）内のアドレスに変換するためのものである。これにより、メモリ１１を救済後の状態、すなわちスペアセルを用いて、メモリ１１に見かけ上故障ビットが存在しない状態とすることができる。
［３−２］テストフロー
図５を用いて、第３実施形態に係る半導体集積回路１のメモリのテストフローについて説明する。
【００５９】
第３実施形態においても、第２実施形態と同様、ＢＩＳＴ回路２０の救済データ生成器２４で救済データＢが生成される。この際、カウンタ２６で、救済データＢが生成された不良メモリ数がカウントされる。救済可否判定回路２７は、不良メモリ数がレジスタ２５の数を超えた場合、リペア不可フラグをオンチップ解析及び圧縮回路３０に出力する。
【００６０】
オンチップ解析及び圧縮回路３０では、ＢＩＳＴ回路２０間をシリアル転送された救済データＢをレジスタ３１に格納する。この救済データＢの各メモリ１１の識別情報は、解析回路３２で、チップレベルの識別情報に変換され、救済データＣが生成される。この救済データＣは、レジスタ３３に格納される。
【００６１】
また、解析回路３２は、有効な救済データＣの総数が、半導体集積回路１全体の救済可能なメモリ１１の数を超える場合に、チップレベルのリペア不可フラグ（救済不可信号）をＢＩＳＲコントローラ４０に出力する。
【００６２】
レジスタ３３に格納された救済データＣは、ＢＩＳＲコントローラ４０に読み出される。ＢＩＳＲコントローラ４０は、救済データＣに基づいて、ヒューズデバイス４１への書き込みを制御する。ヒューズデバイス４１に書き込まれたデータは、ヒューズラッチ４２により、メモリ１１へ転送される。
［３−３］第３実施形態の効果
上記第３実施形態によれば、第１及び第２実施形態と同様の効果が得られるだけでなく、次のような効果も得ることができる。
【００６３】
第３実施形態では、半導体集積回路１にオンチップ解析及び圧縮回路３０が搭載されている。このため、救済データを外部へ読み出すことが不要となり、半導体集積回路１内でＢＩＳＲ手法により不良メモリの修復を行うことができる。
【００６４】
尚、第３実施形態は、第２実施形態に適用したが、第１実施形態に適用することも可能である。
［４］第４実施形態
第４実施形態は、ビット幅が異なる複数のメモリ１１に対してテストを行う例である。尚、第４実施形態では、第１及び第２実施形態と異なる点について主に説明する。
［４−１］テストフロー
図６を用いて、第４実施形態に係る半導体集積回路１のメモリのテストフローについて説明する。
【００６５】
第４実施形態では、ＢＩＳＴ制御回路２１は、各メモリ１１のビット幅と、テスト対象のメモリ１１のインデックス情報（アドレス情報）とを有している。ＢＩＳＴ制御回路２１は、シフト制御回路２２に、各メモリ１１のビット幅と、現在のテスト対象のメモリ１１のインデックス情報とを与える。そして、テスト対象となっているメモリ１１の比較結果をシフト転送するために、シフト制御回路２２は、必要なビット幅をメモリ１１毎に認識して、必要なシフト段数のシフト動作を各メモリ１１に対して行う。
【００６６】
尚、レジスタ２３は、メモリ１１の最大ビット幅を有している。このため、テスト対象のメモリ１１のビット幅が最大ビット幅より小さい場合、レジスタ２３に保持されるデータは、不良有無情報を示す最上位ビット（イネーブルビット）を“０”（メモリ不良なし）とすることで、最大ビット数で、故障がないデータとして扱うことができる。これにより、ビット幅が異なるメモリ１１の各レジスタ１３の内容を順次シフトして救済解析を行うことができ、また一部のメモリ１１のみを対象として救済解析を行うこともできるという効果がある。
［４−２］第４実施形態の効果
上記第４実施形態によれば、第１及び第２実施形態と同様の効果が得られるだけでなく、次のような効果も得ることができる。
【００６７】
第４実施形態では、ＢＩＳＴ制御回路２１は各メモリ１１のビット幅とテスト対象のメモリ１１のアドレスとを格納し、各メモリ１１に対応して必要ビット幅分のみシフト動作を行い、救済データ生成器２４に順次入力する。これにより、ビット幅が異なるメモリ１１の各レジスタ１３の内容を順次シフトして、救済解析を行うことができる。また、ビット幅が異なる複数のメモリ１１の中の任意のメモリ１１をテストすることが可能となる。
【００６８】
尚、第４実施形態は、第２実施形態に適用したが、第１実施形態に適用することも可能である。また、第４実施形態の半導体集積回路１に、第３実施形態のオンチップ解析及び圧縮回路３０を搭載することも可能である。
［５］第５実施形態
第５実施形態は、スペアビットのパス／フェイル情報を用いる例である。尚、第５実施形態では、第１及び第２実施形態と異なる点について主に説明する。
［５−１］テストフロー
図７を用いて、第５実施形態に係る半導体集積回路１のメモリのテストフローについて説明する。
【００６９】
第５実施形態では、各実施形態と同様に、比較回路１２により、メモリ１１の出力データと期待値とがビット毎に比較され、この比較結果がレジスタ１３に格納される。ここで、第５実施形態では、比較結果のデータは、スペアビットの不良情報（パス／フェイル情報）を含み、このスペアビットに対する不良情報を含む比較結果のデータをレジスタ１３が格納している。そして、スペアビットに対する不良情報を含む比較結果のデータは、レジスタ１３間をシリアルに転送され、救済データ生成器２４で救済データＤが生成される。この救済データＤは、スペアフラグ（パス／フェイル）情報が含まれている。このスペアフラグ情報を用いて、救済可否判定回路２７によって、対象メモリ１１が救済可能かどうかの判定が行われる。すなわち、メモリ出力の１ビットに不良が検出された場合、スペアビットに不良がなければメモリ１１は救済可能で、救済データを作成することができる。一方、スペアビットにも不良が存在する場合は救済を行うことができず、救済可否判定回路２７は救済不可信号を出力する。
［５−２］第５実施形態の効果
上記第５実施形態によれば、第１及び第２実施形態と同様の効果が得られるだけでなく、次のような効果も得ることができる。
【００７０】
第５実施形態では、不良メモリの救済を行う前のテスト段階で、スペアビットの不良情報を有している。これにより、不良メモリの救済を行った後で、スペアビットに故障が見つかることがなくなるため、効率良くメモリ救済を図ることができる。
【００７１】
尚、第５実施形態は、第２実施形態に適用したが、第１実施形態に適用することも可能である。また、第５実施形態の半導体集積回路１は、第３実施形態のオンチップ解析及び圧縮回路３０を搭載することも可能であるし、第４実施形態を組み合わせることも可能である。
【００７２】
尚、本発明の実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７３】
１…半導体集積回路、２…テスト装置、１０…メモリカラー、１１…メモリ、１２…比較回路、１３、２３、２５、３１、３３…レジスタ、２０…ＢＩＳＴ回路、２１…ＢＩＳＴ制御回路、２２…シフト制御回路、２４…データ生成器、２６…カウンタ、２７…救済可否判定回路、３０…オンチップ解析及び圧縮回路、３２…解析回路、４０…ＢＩＳＲコントローラ、４１…ヒューズデバイス、４２…ヒューズラッチ、ＭＧＰ…メモリグループ。
【図１】
2016134188.tif 000003
【図２】
2016134188.tif 000004
【図３】
2016134188.tif 000005
【図４】
2016134188.tif 000006
【図５】
2016134188.tif 000007
【図６】
2016134188.tif 000008
【図７】
2016134188.tif 000009