(57)【要約】【課題】埋め込みメモリの故障タイプを判定することが可能な半導体集積回路を提供する。【解決手段】半導体集積回路は、第１のアドレス方向および第２のアドレス方向に配置された所定のデータを記憶する複数のメモリビットを含むメモリと、メモリの故障を診断するためのＢＩＳＴ回路と、を備える。ＢＩＳＴ回路は、メモリに対するＢＩＳＴを制御するＢＩＳＴ制御回路を有する。ＢＩＳＴ回路は、第１のアドレス方向のＢＩＳＴにより故障であると判断されたビットセルの第１のアドレス方向のアドレスである第１の不良ビットセル位置を格納し、第１の不良ビットセル位置におけるビットセルのフェイル数を格納し、フェイル数が予め設定された上限値を超えたか否かを示すフェイルオーバーフローフラグを格納する故障情報テーブルを有する。ＢＩＳＴ回路は、メモリに対するＢＩＳＴにより得られたＢＩＳＴ結果を出力する結果解析器と、を有する。【選択図】図１
2012185895.tif 000002
【特許請求の範囲】
【請求項１】
第１のアドレス方向および第２のアドレス方向に配置された所定のデータを記憶する複数のメモリビットを含むメモリと、
前記メモリの故障を診断するためのＢＩＳＴ（Ｂｕｉｌｔ−ｉｎ  Ｓｅｌｆ−Ｔｅｓｔ）回路と、を備え、
前記ＢＩＳＴ回路は、
前記メモリに対するＢＩＳＴを制御するＢＩＳＴ制御回路と、
前記第１のアドレス方向の前記ＢＩＳＴにより故障であると判断されたビットセルの前記第１のアドレス方向のアドレスである第１の不良ビットセル位置を格納し、前記第１の不良ビットセル位置におけるビットセルのフェイル数を格納し、前記フェイル数が予め設定された上限値を超えたか否かを示すフェイルオーバーフローフラグを格納する故障情報テーブルと、
前記メモリに対する前記ＢＩＳＴにより得られたＢＩＳＴ結果を出力する結果解析器と、を有する
ことを特徴とする半導体集積回路。
【請求項２】
前記ＢＩＳＴ回路は、
前記第１の不良ビットセル位置の数が前記故障情報テーブルの容量を超えているか否かを示すテーブルオーバーフローフラグを格納するテーブルオーバーフローフラグレジスタをさらに有する
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記ＢＩＳＴ制御回路は、
前記メモリに対して前記第１のアドレス方向のＢＩＳＴを実行した後、前記テーブルオーバーフローフラグに基づいて前記第１の不良ビットセル位置の数が前記故障情報テーブルの容量を超えていると判断した場合に、前記第２のアドレス方向に前記メモリに対するＢＩＳＴを実行する
ことを特徴とする請求項２に記載の半導体集積回路。
【請求項４】
前記故障情報テーブルは、
前記第２のアドレス方向の前記ＢＩＳＴにより故障であると判断されたビットセルの前記第２のアドレス方向のアドレスである第２の不良ビットセル位置を格納し、前記第２の不良ビットセル位置におけるビットセルのフェイル数を格納し、前記フェイル数が前記上限値を超えたか否かを示すフェイルオーバーフローフラグを格納する
ことを特徴とする請求項３に記載の半導体集積回路。
【請求項５】
半導体集積回路と、
メモリの故障タイプを判定する判定装置と、を備え、
前記半導体集積回路は、
第１のアドレス方向および第２のアドレス方向にマトリクス状に配置された所定のデータを記憶する複数のメモリビットを含むメモリと、
前記メモリの故障を診断するためのＢＩＳＴ（Ｂｕｉｌｔ−ｉｎ  Ｓｅｌｆ−Ｔｅｓｔ）回路と、を備え、
前記ＢＩＳＴ回路は、
前記メモリに対するＢＩＳＴを制御するＢＩＳＴ制御回路と、
前記第１のアドレス方向の前記ＢＩＳＴにより故障であると判断されたビットセルの前記第１のアドレス方向のアドレスである第１の不良ビットセル位置を格納し、前記第１の不良ビットセル位置におけるビットセルのフェイル数を格納し、前記フェイル数が予め設定された上限値を超えたか否かを示すフェイルオーバーフローフラグを格納する故障情報テーブルと、
前記メモリに対する前記ＢＩＳＴにより得られたＢＩＳＴ結果を出力する結果解析器と、を有し、
前記判定装置は、
前記フェイル数および前記フェイルオーバーフローフラグに基づいて、前記メモリの故障タイプを判定する
ことを特徴とする故障診断システム。
【発明の詳細な説明】
【技術分野】
【０００１】
半導体集積回路の埋め込みメモリの故障診断システムに関する。
【背景技術】
【０００２】
従来、半導体集積回路に組み込まれたメモリデバイスに対して、組み込み自己テスト回路（ＢＩＳＴ（Ｂｕｉｌｔ−ｉｎ  Ｓｅｌｆ−Ｔｅｓｔ）回路）を組み込み、製造テストにおいて故障を検出する方法がある。
【０００３】
この故障検出の方法には、書き込みデータと読み出したデータの比較を行い、故障の有無を判別する比較器型ＢＩＳＴや、読み出された結果をＢＩＳＴ回路内で圧縮し、圧縮した結果に基づいて、故障の有無を判別する圧縮器型ＢＩＳＴなどがある。
【０００４】
このような故障検出の方法により、メモリのセルアレイ内の故障ビット位置を示すフェイルビットマップを作成し、故障解析を行うことができる。
【０００５】
そして、製造歩留り向上のための救済解析に加え、歩留り向上のための解析に用いるデータを収集するための、オンチップ故障診断（ＢＩＳＤ：Ｂｕｉｌｔ−Ｉｎ  Ｓｅｌｆ  Ｄｉａｇｎｏｓｉｓ）も、重要な技術である。
【０００６】
メモリデバイスの不良解析には、従来、メモリ全体のフェイルビットマップを作成する方法が用いられている。
【０００７】
しかし、ＢＩＳＴ回路を使用して量産製造時にオンラインでウエーハあるいはロットの単位で情報収集すると、フルフェイルビットマップの作成は多くの時間がかかり現実的ではない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−２６３７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
埋め込みメモリの故障タイプを判定することが可能な半導体集積回路を提供する。
【課題を解決するための手段】
【００１０】
実施例に従った半導体集積回路は、第１のアドレス方向および第２のアドレス方向に配置された所定のデータを記憶する複数のメモリビットを含むメモリと、前記メモリの故障を診断するためのＢＩＳＴ（Ｂｕｉｌｔ−ｉｎ  Ｓｅｌｆ−Ｔｅｓｔ）回路と、を備える。
【００１１】
前記ＢＩＳＴ回路は、前記メモリに対するＢＩＳＴを制御するＢＩＳＴ制御回路を有する。ＢＩＳＴ回路は、前記第１のアドレス方向の前記ＢＩＳＴにより故障であると判断されたビットセルの前記第１のアドレス方向のアドレスである第１の不良ビットセル位置を格納し、前記第１の不良ビットセル位置におけるビットセルのフェイル数を格納し、前記フェイル数が予め設定された上限値を超えたか否かを示すフェイルオーバーフローフラグを格納する故障情報テーブルを有する。ＢＩＳＴ回路は、前記メモリに対する前記ＢＩＳＴにより得られたＢＩＳＴ結果を出力する結果解析器と、を有する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例１に係る故障解析システム１０００の構成の一例を示す図である。
【図２】図２は、実施例２に係る故障診断システム２０００の構成の一例を示す図である。
【図３】図３は、実施例３に係る故障診断システム３０００の構成の一例を示す図である。
【図４】図４は、図３に示すＢＩＳＴ回路３０１ｂのテーブルモード切り替え回路５０２の構成の一例を示す図である。
【図５】図５は、実施例４に係る故障診断方法のフローの一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、各実施例について図面に基づいて説明する。
【実施例１】
【００１４】
図１は、実施例１に係る故障解析システム１０００の構成の一例を示す図である。
【００１５】
図１に示すように、故障解析システム１０００は、判定装置１と、半導体集積回路２と、を備える。
【００１６】
半導体集積回路２は、メモリの故障を診断するためのＢＩＳＴ（Ｂｕｉｌｔ−ｉｎ  Ｓｅｌｆ−Ｔｅｓｔ）回路３０１と、メモリカラー３１０とを有する。
【００１７】
ＢＩＳＴ回路３０１は、ＢＩＳＴ制御回路１０１と、データ生成器１０２と、制御信号生成器１０３と、アドレス生成器１０４と、結果解析器１０５と、故障情報テーブル３０２と、故障情報テーブル制御回路３０３と、アドレス保持レジスタ３１２と、を有する。
【００１８】
ＢＩＳＴ制御回路１０１は、データ生成器１０２、制御信号生成器１０３、およびアドレス生成器１０４を制御して、必要な信号を順次生成させるようになっている。これにより、ＢＩＳＴ制御回路１０１は、メモリ１１２に対するＢＩＳＴを制御するようになっている。
【００１９】
データ生成器１０２は、ＢＩＳＴ制御回路１０１により制御されて、書き込みデータ１０９を生成して出力するようになっている。
【００２０】
制御信号生成器１０３は、ＢＩＳＴ制御回路１０１により制御されて、制御信号１０８を生成して出力するようになっている。
【００２１】
アドレス生成器１０４は、ＢＩＳＴ制御回路１０１により制御されて、アドレスデータ１０７を生成して出力するようになっている。
【００２２】
なお、このアドレスデータ１０７は、例えば、メモリ１１２のビットセルのカラム方向（第１の方向）のカラムアドレスおよびＩ／Ｏビット位置と、ロウ方向（第２の方向）のロウアドレスと、を含む。すなわち、メモリ１１２の或る１つのビットセルが、ロウアドレス、カラムアドレス、および、Ｉ／Ｏビット位置により特定されるようになっている。すなわち、ロウアドレス、カラムアドレス、および、Ｉ／Ｏビット位置が、ビットセルのアドレス１０７である。
【００２３】
メモリカラー３１０は、メモリ１１２と、取り込みレジスタ１１３と、比較器１１４と、テスト結果フラグレジスタ１１５と、を有するブロックを構成する。これらの取り込みレジスタ１１３、比較器１１４、およびテスト結果フラグレジスタ１１５は、テスト動作に必要な論理要素である。
【００２４】
メモリ１１２は、既述のカラム方向（第１のアドレス方向）およびロウ方向（第２のアドレス方向）に配置された所定のデータを記憶する複数のメモリビットを含む。
【００２５】
メモリ１１２は、データ生成器１０２から生成された書き込みデータ１０９と、アドレス生成器１０４から生成されたアドレスデータ１０７と、制御信号生成器１０３から生成された制御信号１０８とが、入力されるようになっている。
【００２６】
メモリ１１２は、書き込みデータ１０９、アドレスデータ１０７および書き込みを指示する制御信号１０８に応じて、書き込みデータ１０９を記憶し、また、アドレスデータ１０７および読み出しを指示する制御信号１０８に応じて、記憶されたデータを読み出して出力するようになっている。
【００２７】
取り込みレジスタ１１３は、アドレスデータ１０７に対応するメモリ１１２のメモリビットから読み出された読み出しデータを格納し、出力するようになっている。
【００２８】
比較器１１４は、ＢＩＳＴ回路１０１により制御され、取り込みレジスタ１１３から出力された読み出しデータと、データ生成器１０２から生成されたデータ期待値１１０と、を比較し、この比較結果をテスト結果フラグデータ３１１としてテスト結果フラグレジスタ１１５に出力するようになっている。
【００２９】
テスト結果フラグレジスタ１１５は、比較器１１４から出力されたテスト結果フラグデータ３１１を格納し結果解析器１０５に出力するようになっている。
【００３０】
結果解析器１０５は、メモリに対する前記ＢＩＳＴにより得られたＢＩＳＴ結果を出力するようになっている。すなわち、結果解析器１０５は、テスト結果フラグデータ３１１に基づいて、テスト対象であるメモリ１１２のテストの良否判定を実行して得られたＢＩＳＴ結果１０６を、判定装置１に出力する。
【００３１】
なお、図１では、１つのメモリカラー３１０と１つのＢＩＳＴ回路３１０が対応付けられているが、複数のメモリカラー３１０が、１つのＢＩＳＴ回路３０１に対応付けられていてもよい。
【００３２】
例えば、１つのＢＩＳＴ回路３０１で複数のメモリ１１２をテストしている場合には、それぞれのテスト結果フラグデータ３１１が結果解析器１０５に入力される。そして、結果解析器１０５は、テスト対象である全てのメモリ１１２のテストの良否判定を実行し、この良否判定により得られたＢＩＳＴ結果１０６を判定装置１に出力する。
【００３３】
また、図１に示すように、故障情報テーブル３０２は、複数（ｎ個）のレジスタ群３０２ａ−０〜３０２ａ−ｎから構成される。
【００３４】
レジスタ群３０２ａ−０〜３０２ａ−ｎは、それぞれ、不良ビットセル位置格納レジスタ３０４と、フェイル数格納レジスタ３０５と、フェイルオーバーフローフラグレジスタ３０６と、イネーブルレジスタ３０７と、を含む。
【００３５】
不良ビットセル位置格納レジスタ３０４は、メモリ１１２の不良と判定されたビットセルの不良ビットセル位置（ロウアドレス、または、カラムアドレスとＩ／Ｏビット位置）を格納するようになっている。
【００３６】
フェイル数格納レジスタ３０５は、或る不良ビットセル位置のビットセルのフェイル（不良）数を格納するようになっている。
【００３７】
フェイルオーバーフローフラグレジスタ３０６は、フェイル数が予め設定された上限値を超えたか否かを示すフェイルオーバーフローフラグＦＯＶＦを格納するようになっている。
【００３８】
イネーブルレジスタ３０７は、同じレジスタ群の不良ビットセル位置格納レジスタ３０４が、データ（不良ビットセル位置）を、格納済みか否かを示すシフトイネーブルを格納するようになっている。なお、ここでは、例えば、シフトイネーブルが“Ｈｉｇｈ”レベル（論理“１”）のときデータを格納済みであり、一方、シフトイネーブルが“Ｌｏｗ”レベル（論理“０”）のときデータを未格納であるものとする。
【００３９】
また、故障情報テーブル３０２に格納できるデータ組の個数（すなわち、レジスタ群の個数）ｎは、故障情報テーブル３０２の容量であり、任意の数に設定される。
【００４０】
このように、故障情報テーブル３０２は、該不良ビットセル位置、該フェイル数、および、該フェイルオーバーフローフラグをそれぞれ格納する複数のレジスタで構成されている。
【００４１】
また、故障情報テーブル制御回路３０３は、故障情報テーブル３０２の動作を制御するようになっている。図１に示すように、この故障情報テーブル制御回路３０３は、アドレス比較回路３０８と、不良ビットセル位置格納レジスタ選択回路３１３と、を有する。
【００４２】
アドレス比較回路３０８は、故障情報テーブル３０２のレジスタ群（故障情報テーブル３０２に格納されるｎ個のデータ組）に、一対一に対応して、故障情報テーブル制御回路３０３にｎ個設けられている。
【００４３】
アドレス比較回路３０８は、メモリカラー３１０（比較器１１４）から出力されたテスト結果フラグ３１１と、アドレス保持レジスタ３１２から出力されたアドレスと、不良ビットセル位置格納レジスタ３０４から出力された不良ビットセル位置と、が入力されるようになっている。
【００４４】
このアドレス比較回路３０８は、テスト結果フラグ３１１の値が”Ｈｉｇｈ”レベル（例えば、論理“１”）、すなわち比較器１１４がビットセルの不良を検出した場合に、アドレス保持レジスタ３１２から出力されたこのビットセルのアドレス（例えば、カラム方向のアドレス（カラムアドレスおよびＩ／Ｏビット位置により決まる））である不良ビットセル位置と、不良ビットセル位置格納レジスタ３０４に保存されている値（カラム方向のアドレス）と、を比較するようになっている。
【００４５】
そして、アドレス比較回路３０８は、この比較結果であるマッチング信号３０９を、不良ビットセル位置格納レジスタ選択回路３１３およびフェイル数格納レジスタ３０５に出力するようになっている。
【００４６】
アドレス比較回路３０８は、一致した場合は”Ｈｉｇｈ”レベルのマッチング信号３０９を出力し、一方、一致していない場合は”Ｌｏｗ”レベル（例えば、論理“０”）のマッチング信号３０９を出力するようになっている。
【００４７】
不良ビットセル位置格納レジスタ選択回路３１３は、マッチング信号３０９が”Ｈｉｇｈ”レベルであり、且つ、対応するイネーブルレジスタ３０７のシフトイネーブルが”Ｈｉｇｈ”レベルである場合は、対応するフェイル数格納レジスタ３０５の値（ビットセルのフェイル数）をカウントアップさせる。
【００４８】
すなわち、該不良ビットセル位置と、不良ビットセル位置格納レジスタ３０４に保存されている該値とが一致し、且つ、対応する不良ビットセル位置格納レジスタ３０４が、データ（不良ビットセル位置）を既に格納済みである場合は、該不良ビットセル位置に対応するフェイル数をカウントアップする。
【００４９】
なお、該不良ビットセル位置は、アドレス保持レジスタ３１２に保存した不良を検出したビットセルのアドレスから得られる。既述のように、該アドレスは、ロウアドレス、カラムアドレス、および、Ｉ／Ｏビット位置により、特定される。また、該不良ビットセル位置は、ロウアドレス、または、カラムアドレスとＩ／Ｏビット位置により、特定される。
【００５０】
また、マッチング信号３０９が”Ｌｏｗ”レベルのとき、すなわち、該不良ビットセル位置と、不良ビットセル位置格納レジスタ３０４に保存されている該値とが一致しない場合は、不良ビットセル位置格納レジスタ３０４の値を保持する。
【００５１】
フェイル数格納レジスタ３０５は、任意の上限値を設定することができるようになっている。このフェイル数格納レジスタ３０５は、例えば、設定された上限値を超えた場合に、フェイルオーバーフローフラグレジスタ３０６のフェイルオーバーフローフラグＦＯＶＦを”Ｈｉｇｈ”レベルにする。
【００５２】
なお、不良ビットセル位置格納レジスタ選択回路３１３は、各アドレス比較回路３０８からそれぞれ出力されたマッチング信号３０９が全て“Ｌｏｗ”レベルである場合に、シフトイネーブルが”Ｌｏｗ”レベルであるレジスタ群を一つ選択し、そのレジスタ群のイネーブルレジスタ３０７のシフトイネーブルを”Ｈｉｇｈ”レベルに更新するとともに、アドレス保持レジスタ３１２から得られる不良ビットセル位置を不良ビットセル位置格納レジスタ３０４に格納し、フェイル数格納レジスタ３０５の値に“１”を保存（カウントアップする）する。
【００５３】
このように、故障情報テーブル３０２は、カラム方向のＢＩＳＴにより故障であると判断されたビットセルのカラム方向のアドレスである不良ビットセル位置を格納し、該不良ビットセル位置におけるビットセルのフェイル数を格納し、該フェイル数が予め設定された上限値を超えたか否かを示すフェイルオーバーフローフラグを格納するようになっている。
【００５４】
そして、故障情報テーブル３０２は、各レジスタ群３０２ａ−０〜３０２ａ−ｎに格納された、不良ビットセル位置、フェイル数、およびフェイルオーバーフローフラグＦＯＶＦを、判定装置１に出力する。
【００５５】
判定装置１は、入力された、テスト結果フラグ３１１、不良ビットセル位置、フェイル数、およびフェイルオーバーフローフラグＦＯＶＦに基づいて、埋め込みメモリの故障タイプを判定する。
【００５６】
例えば、判定装置１は、フェイルオーバーフローフラグＦＯＶＦの値が“１”、すなわち、メモリ１１２のカラム方向の１つのアドレス（１つの不良ビットセル位置）で不良ビットセルの数が該上限値を超えている）場合、判定装置１は、故障タイプがメモリ１１２において複数の不良ビットセルがカラム方向に存在するカラム不良と判定する。
【００５７】
また、判定装置１は、全てのフェイルオーバーフローフラグＦＯＶＦの値が“０”であり、且つ、フェイル数が１以上である場合、故障タイプがメモリ１１２において不良ビットセルがビット単位で点在するビット不良であると判定する。
【００５８】
また、判定装置１は、フェイル数が“０”のときは、不良がないと判定する。
【００５９】
以上のように、本実施例に係る半導体集積回路によれば、埋め込みメモリの故障タイプを判定することができる。
【実施例２】
【００６０】
本実施例２においては、既述の実施例１のＢＩＳＴ回路に、故障データが故障情報テーブルに格納可能なデータ量を超えたことを示すテーブルオーバーフローフラグを出力する構成を加えた構成例について、説明する。
【００６１】
ここで、図２は、実施例２に係る故障診断システム２０００の構成の一例を示す図である。なお、図２において、図１の符号と同じ符号は、実施例１と同様の構成を示す。また、図２においては、故障情報テーブル３０２の構成要素の一部を省略して記載しているが、故障情報テーブル３０２は図１と同様の構成を有する。また、故障情報テーブル３０３ａは、図１の故障情報テーブル３０３にも含まれる不良ビットセル位置格納レジスタ選択回路３１３を省略して記載している。
【００６２】
図２に示すように、故障診断システム２０００は、判定装置１と、半導体集積回路２ａと、を備える。
【００６３】
半導体集積回路２ａは、メモリカラー３１０と、ＢＩＳＴ回路３０１ａと、を有する。
【００６４】
このＢＩＳＴ回路３０１ａは、実施例１のＢＩＳＴ回路３０１と比較して、テーブルオーバーフローレジスタ４０２をさらに含む。
【００６５】
また、故障情報テーブル制御回路３０３ａは、実施例１の故障情報テーブル制御回路３０３と比較して、テーブルオーバーフローフラグ制御回路４０４をさらに含む。
【００６６】
実施例１と同様の処理において、テーブルオーバーフローフラグ制御回路４０４は、ｎ組のデータ組すべてのイネーブルレジスタ３０７の値が”Ｈｉｇｈ”レベル（例えば、論理“１”）で、且つ、すべてのマッチング信号３０９の値が”Ｌｏｗ”レベル（例えば、論理“０”）となるとき、検出した故障データが故障情報テーブル３０２に保存できなくなる。
【００６７】
すなわち、メモリ１１２のカラム方向で不良ビットセルが存在するカラム方向のアドレス（カラムアドレスおよびＩ／Ｏビット位置）の数が、故障情報テーブル３０２の容量（不良ビットセル位置格納レジスタ３０４の数）を超えている場合、新たな故障データを故障情報テーブル３０２に保存できない。
【００６８】
この場合、テーブルオーバーフローフラグ制御回路４０４は、テーブルオーバーフローフラグレジスタ４０２の値（テーブルオーバーフローフラグ４０２ａ）を、例えば、”Ｈｉｇｈ”レベル（論理“１”）にする。
【００６９】
一方、メモリ１１２のカラム方向で不良ビットセルが存在するカラム方向のアドレス（カラムアドレスおよびＩ／Ｏビット位置）の数が、故障情報テーブル３０２の容量（不良ビットセル位置格納レジスタ３０４の数）を超えていない場合、テーブルオーバーフローフラグ制御回路４０４は、テーブルオーバーフローフラグレジスタ４０２の値（テーブルオーバーフローフラグ４０２ａ）を、例えば、”Ｌｏｗ”レベル（論理“０”）に保持する。
【００７０】
このように、テーブルオーバーフローフラグレジスタ４０２は、不良ビットセル位置の数が故障情報テーブル３０２の容量を超えているか否かを示すテーブルオーバーフローフラグを格納するようになっている。
【００７１】
テーブルオーバーフローフラグレジスタ４０２は、テーブルオーバーフローフラグ４０２ａを、判定装置１に出力するようになっている。
【００７２】
なお、半導体集積回路２ａのその他の構成および機能は、実施例１の半導体集積回路２と同様である。
【００７３】
すなわち、実施例１と同様に、判定装置１は、半導体集積回路２ａから入力された、テスト結果フラグ３１１、不良ビットセル位置、フェイル数、およびフェイルオーバーフローフラグＦＯＶＦに基づいて、埋め込みメモリの故障タイプを判定することができる。
【００７４】
さらに、判定回路１は、テーブルオーバーフローフラグ４０２ａに基づいて、埋め込みメモリの故障タイプを判定することもできる。
【００７５】
以上のように、本実施例に係る半導体集積回路によれば、埋め込みメモリの故障タイプを判定することができる。
【実施例３】
【００７６】
本実施例３においては、既述の実施例２のＢＩＳＴ回路に故障情報テーブルのモードを切り替えるための構成を加えた構成例について、説明する。
【００７７】
ここで、図３は、実施例３に係る故障診断システム３０００の構成の一例を示す図である。なお、図３において、図２の符号と同じ符号は、実施例２と同様の構成を示す。また、図３においては、故障情報テーブル３０２および故障情報テーブル３０３ａの構成要素の一部を省略して記載しているが、故障情報テーブル３０２は図１と同様の構成を有し、故障情報テーブル３０３ａは図２と同様の構成を有する。
【００７８】
図３に示すように、故障診断システム３０００は、判定装置１と、半導体集積回路２ａと、を備える。
【００７９】
ＢＩＳＴ回路３０１ｂは、実施例２のＢＩＳＴ回路３０１ａと比較して、故障情報テーブル３０２のモードを切り替えるテーブルモード切り替え回路５０２をさらに備える。
【００８０】
また、ＢＩＳＴ制御回路１０１は、テーブルオーバーフローフラグ４０２ａに基づいて、テーブルモード切り替え信号５０５をテーブルモード切り替え回路５０２に出力して、モードの切り替えを制御するようになっている。
【００８１】
ここで、図４は、図３に示すＢＩＳＴ回路３０１ｂのテーブルモード切り替え回路５０２の構成の一例を示す図である。
【００８２】
図４に示すように、テーブルモード切り替え回路５０２は、テーブルモード切り替え信号５０５が”Ｌｏｗ”レベル（例えば、論理“０”）のとき、マルチプレクサ５０３を制御して、アドレス生成器１０４から入力されたＩ／Ｏビット位置６０３とカラムアドレス６０４を出力部６０６から出力するようになっている。
【００８３】
一方、テーブルモード切り替え回路５０２は、テーブルモード切り替え信号５０５が”Ｈｉｇｈ”レベル（例えば、論理“１”）のとき、マルチプレクサ５０３を制御して、ロウアドレス６０５を出力部６０６から出力するようになっている。
【００８４】
なお、出力部６０６のサイズは、Ｉ／Ｏビット位置６０３とカラムアドレス６０４との和のサイズ、および、ロウアドレス６０５のサイズより大きくなるように設定される。
【００８５】
ここで、テーブルモード切り替え回路５０２の切替動作の一例について説明する。
【００８６】
まず、ＢＩＳＴ制御回路１０１は、テーブルモード切り替え信号５０５を”Ｌｏｗ”レベルに設定する。これにより、ＢＩＳＴ回路３０１ｂは、故障情報テーブル３０２がＩ／Ｏビット位置６０３とカラムアドレス６０４を格納するモード（第１のモード）でＢＩＳＴを実行する。
【００８７】
ＢＩＳＴ回路３０１ｂは、１回目のＢＩＳＴを実行した後、第１のテーブルオーバーフローフラグＴＯＶＦ［０］の値を判定する。
【００８８】
例えば、ＢＩＳＴ制御回路３０１ｂは、第１のテーブルオーバーフローフラグＴＯＶＦ［０］が”Ｈｉｇｈ”レベルである（すなわち、メモリ１１２のカラム方向で不良ビットセルが存在するカラム方向のアドレス（カラムアドレスおよびＩ／Ｏビット位置により決まる）の数が、故障情報テーブル３０２の容量を超えている）場合には、テーブルモード切り替え信号を”Ｈｉｇｈ”レベルに切り替える。
【００８９】
なお、故障情報テーブル３０２は、ロウアドレス方向にメモリ１１２に対するＢＩＳＴが実行される場合に、カラムアドレス方向記ＢＩＳＴに対応して格納している、不良ビットセル位置、フェイル数、および、フェイルオーバーフローフラグをリセットする。
【００９０】
これにより、ＢＩＳＴ回路３０１ｂは、故障情報テーブル３０２がロウアドレスを格納するモード（第２のモード）で、２回目のＢＩＳＴを実行する。
【００９１】
このように、ＢＩＳＴ制御回路３０１ｂは、メモリ１１２に対してカラムアドレス方向のＢＩＳＴを実行した後、第１のテーブルオーバーフローフラグＴＯＶＦ［０］に基づいて不良ビットセル位置の数が故障情報テーブル３０２の容量を超えていると判断した場合に、ロウアドレス方向にメモリ１１２に対するＢＩＳＴを実行する。
【００９２】
そして、故障情報テーブル３０２は、ロウアドレス方向のＢＩＳＴにより故障であると判断されたビットセルのロウアドレス方向のアドレスである不良ビットセル位置を格納し、この不良ビットセル位置におけるビットセルのフェイル数を格納し、このフェイル数が該上限値を超えたか否かを示すフェイルオーバーフローフラグを格納する。
【００９３】
なお、テーブルモード切り替え回路５０２により、入力値が変更されるだけで、構成に変わりはない。
【００９４】
したがって、ＢＩＳＴ回路３０１ｂは、故障情報テーブル３０２を各テストモードに対応して複数個備える必要はなく、各テストモードにおいて故障情報テーブル３０２を共用することができる。
【００９５】
ロウアドレス格納モードで検出した故障が存在するロウ方向のアドレスの数が、故障情報テーブル３０２の容量を超えた場合には、第２のテーブルオーバーフローフラグＴＯＶＦ［１］を”Ｈｉｇｈ”レベルにする。
【００９６】
ＢＩＳＴ回路３０１ｂは、全てのテスト実行後、テーブルの情報をシリアルに出力する。
【００９７】
なお、ＢＩＳＴ回路３０１ｂは、１番目のテスト実行が完了した後で、テスト結果とともに故障情報テーブルの値を出力するようにしてもよい。
【００９８】
既述のように、本実施例では、まずＩ／Ｏビット位置６０３とカラムアドレス６０４を保存するモードでＢＩＳＴを実行する場合について説明した。
【００９９】
しかし、先ず、ロウアドレス格納モードでＢＩＳＴを実行し、第１のテーブルオーバーフローフラグＴＯＶＦ［０］が”Ｈｉｇｈ”レベルである場合に、ＢＩＳＴ制御回路１０１でテーブルモード切り替え信号５０５に”Ｈｉｇｈ”レベルを立て、故障情報テーブル３０２のモードを切替えるようにしてもよい。
【０１００】
なお、半導体集積回路２ｂのその他の構成および機能は、実施例２の半導体集積回路２ａと同様である。
【０１０１】
すなわち、実施例２と同様に、判定装置１は、半導体集積回路２ａから入力された、テスト結果フラグ３１１、不良ビットセル位置、フェイル数、フェイルオーバーフローフラグＦＯＶＦ、および、テーブルオーバーフローフラグ４０２ａに基づいて、埋め込みメモリの故障タイプを判定することができる。
【０１０２】
以上のように、本実施例に係る半導体集積回路によれば、埋め込みメモリの故障タイプを判定することができる。
【実施例４】
【０１０３】
本実施例４においては、既述の実施例３で説明した故障診断システムがメモリの故障タイプを判定する故障診断方法の一例について説明する。
【０１０４】
ここで、図５は、実施例４に係る故障診断方法のフローの一例を示すフローチャートである。
【０１０５】
図５に示すように、先ず、ＢＩＳＴ回路３０１ｂが、カラム方向にメモリ１１２に対してＢＩＳＴを実行する（ステップＳ１）。
【０１０６】
次に、ＢＩＳＴ回路３０１ｂのＢＩＳＴ制御回路１０１が、第１のテーブルオーバーフローフラグＴＯＶＦ［０］の値の解析を実行する（ステップＳ２）。
【０１０７】
そして、ＢＩＳＴ回路３０１ｂは、第１のテーブルオーバーフローフラグＴＯＶＦ［０］が“Ｈｉｇｈ”レベル（論理“１”）である（すなわち、メモリ１１２のカラム方向で不良ビットセルが存在するカラム方向のアドレス（不良ビットセル位置）の数が、故障情報テーブル３０２の容量を超えている）場合は、故障情報テーブル３０２の各レジスタの値を初期化する（ステップＳ３）。
【０１０８】
さらに、ＢＩＳＴ制御回路１０１は、“Ｈｉｇｈ”レベルの第１のテーブルオーバーフローフラグ［０］に応じて、テーブルモード切り替え回路５０２を制御して、故障情報テーブル３０２がＩ／Ｏビット位置とカラムアドレスを格納するモード（第１のモード）からロウアドレスを格納するモード（第２のモード）に切り替える。これにより、ＢＩＳＴ回路３０１ｂが、ロウ方向にメモリ１１２に対してＢＩＳＴを実行する（ステップＳ４）。
【０１０９】
そして、ＢＩＳＴ回路３０１ｂは、２回のＢＩＳＴにより得られた診断テータ（ＢＩＳＴ結果１０６、フェイルオーバーフローフラグＦＯＶＦ、第１、第２のテーブルオーバーフローフラグＴＯＶＦ［０］、ＴＯＶＦ［１］（４０２ａ））を診断装置１に出力する（ステップＳ５）。
【０１１０】
一方、既述のステップＳ２において、第１のテーブルオーバーフローフラグＴＯＶＦ［０］が“Ｌｏｗ”レベル（論理“０”）である（すなわち、メモリ１１２のカラム方向で不良ビットセルが存在するカラム方向のアドレス（不良ビットセル位置）の数が、故障情報テーブル３０２の容量を超えていない）場合は、ステップＳ５に進み、ＢＩＳＴ回路３０１ｂは、１回（カラム方向のみ）のＢＩＳＴにより得られた診断テータ（ＢＩＳＴ結果１０６、フェイルオーバーフローフラグＦＯＶＦ、第１、第２のテーブルオーバーフローフラグＴＯＶＦ［０］、ＴＯＶＦ［１］（４０２ａ））を診断装置１に出力する。
【０１１１】
以降のステップは、判定装置１により実行される。
【０１１２】
ＢＩＳＴ回路３０１ｂによるＢＩＳＴの実行で得られた診断データが、判定装置１に、入力される（ステップＳ６）。
【０１１３】
次に、判定装置１は、この診断データに基づいて、第１のテーブルオーバーフローフラグ［０］の値の解析を実行する（ステップＳ７）。
【０１１４】
そして、例えば、判定装置１は、第１のテーブルオーバーフローフラグＴＯＶＦ［０］の値が“０”である（すなわち、メモリ１１２のカラム方向で不良ビットセルが存在するカラム方向のアドレス（不良ビットセル位置）の数が、故障情報テーブル３０２の容量（不良ビットセル位置格納レジスタ３０４の数）を超えていない）場合、フェイルオーバーフローフラグＦＯＶＦを解析する。すなわち、判定装置１は、故障情報テーブル３０２のｎ組全てのフェイルオーバーフローフラグＦＯＶＦの値の論理和を演算する（ステップＳ８）。
【０１１５】
そして、この演算値（論理和）Ｖ１が“１” である（すなわち、メモリ１１２のカラム方向の１つのアドレス（１つの不良ビットセル位置）で不良ビットセルの数が該上限値を超えている）場合、判定装置１は、メモリ１１２において複数の不良ビットセルがカラム方向に存在するカラム不良と判定する（ステップＳ９）。
【０１１６】
一方、この演算値（論理和）Ｖ１が“０”である（すなわち、メモリ１１２のカラム方向の１つのアドレス（１つの不良ビットセル位置）で不良ビットセルの数が該上限値を超えていない）場合、判定装置１は、フェイル数格納レジスタ３０５に格納された値（フェイル数）を解析する（ステップＳ１０）。
【０１１７】
そして、１組目のフェイル数格納レジスタの値Ｃｏｕｎｔが“０” である（すなわち、メモリ１１２においてカラム方向に不良ビットセルが存在しない）場合、判定装置１は、メモリ１１２において不良が存在しないと判定する（ステップＳ１１）。
【０１１８】
一方、１組目のフェイル数格納レジスタの値Ｃｏｕｎｔが“１”以上である（すなわち、メモリ１１２においてカラム方向に該上限値を超えない数の不良ビットセルが存在する）場合、判定装置１は、故障タイプがメモリ１１２において不良ビットセルがビット単位で点在するビット不良であると判定する（ステップＳ１２）。
【０１１９】
また、既述のステップＳ７において、第１のテーブルオーバーフローフラグＴＯＶＦ［０］の値が“１”である（すなわち、メモリ１１２のカラム方向で不良ビットセルが存在するカラム方向のアドレス（不良ビットセル位置）の数が、故障情報テーブル３０２の容量（不良ビットセル位置格納レジスタ３０４の数）を超えている）場合、判定装置１は、第２のテーブルオーバーフローフラグＴＯＶＦ［１］の値の判定を行う（ステップＳ１３）。
【０１２０】
そして、第２のテーブルオーバーフローフラグＴＯＶＦ［１］の値が“１”である（すなわち、メモリ１１２のロウ方向で不良ビットセルが存在するロウ方向のアドレス（ロウアドレス）の数が、故障情報テーブル３０２の容量（不良ビットセル位置格納レジスタ３０４の数）を超えている）場合、判定装置１は、故障タイプがビット不良またはメモリ１１２において不良ビットセルが全面点在するメタ不良であると判定する（ステップＳ１４）。
【０１２１】
第２のテーブルオーバーフローフラグＴＯＶＦ［１］の値が“０”である（すなわち、メモリ１１２のロウ方向で不良ビットセルが存在するロウ方向のアドレス（不良ビットセル位置）の数が、故障情報テーブル３０２の容量（不良ビットセル位置格納レジスタ３０４の数）を超えていない）場合、故障情報テーブル３０２のｎ個の全てのフェイルオーバーフローフラグＦＯＶＦの値の論理和Ｖ２を演算する（ステップＳ１５）。
【０１２２】
そして、この演算値（論理和）Ｖ２が“１”である場合、判定装置１は、故障タイプがメモリ１１２においてロウ方向に不良ビットセルが存在するロウ不良であると判定する（ステップＳ１６）。
【０１２３】
一方、この演算値（論理和）Ｖ２が“０”である場合、ステップＳ１４に進み、判定装置１は、故障タイプがビット不良またはメタ不良であると判定する。
【０１２４】
以上のステップにより、メモリ１１２の故障タイプが判定することができる。
【０１２５】
なお、判定装置１によるメモリ１１２に対する故障タイプ判定の精度を、実施例１で説明した故情報テーブル３０２の要素数及びフェイル数格納レジスタの上限値に比例して、高くすることができる。
【０１２６】
以上のように、本実施例に係る故障診断方法によれば、埋め込みメモリの故障タイプを判定することができる。
【０１２７】
なお、実施形態は例示であり、発明の範囲はそれらに限定されない。
【符号の説明】
【０１２８】
１  判定装置
２  半導体集積回路
３０１、３０１ａ、３０１ｂ  ＢＩＳＴ回路
３１０  メモリカラー
１０００、２０００、３０００  故障診断システム
【図１】
2012185895.tif 000003
【図２】
2012185895.tif 000004
【図３】
2012185895.tif 000005
【図４】
2012185895.tif 000006
【図５】
2012185895.tif 000007