(57)【特許請求の範囲】
【請求項１】
テストパターン生成回路と、
前記テストパターン生成回路で生成されたテストパターンを入力し、第１の動作条件による第１のテスト及び第２の動作条件による第２のテストが実行される被テスト回路と、
前記第１のテストの結果を保持する第１のレジスタと、
前記第２のテストの結果を保持する第２のレジスタと、
前記第１のレジスタに保持されている前記第１のテストの結果と前記第２のレジスタに保持されている前記第２のテストの結果との比較を行う比較回路と、
前記比較回路による比較結果に基づいて前記被テスト回路のパス／フェイルの判定を行う判定回路とを有し、
前記第１の動作条件は、パスが保証されている緩い動作条件であり、前記第２の動作条件は、前記第１の動作条件よりも厳しい動作条件であることを特徴とする半導体装置。
【請求項２】
請求項１記載の半導体装置において、
前記第１の動作条件と前記第２の動作条件とは、クロック周波数、クロックタイミング、電源電圧、バックゲートバイアス電圧、温度及び外部ノイズのいずれか１つ以上が異なることを特徴とする半導体装置。
【請求項３】
請求項１記載の半導体装置において、
さらに、テストパターンシードと、
データ圧縮回路とを備え、
前記テストパターン生成回路は、前記テストパターンシードを復号して前記テストパターンを生成し、
前記被テスト回路は、クロックグループごとにスキャンチェーンを構成し、
前記データ圧縮回路は、前記スキャンチェーンごとのフリップフロップの値をデータ圧縮して前記第１のテストの結果及び前記第２のテストの結果を出力することを特徴とする半導体装置。
【請求項４】
請求項１記載の半導体装置において、
前記被テスト回路はランダムロジックを含み、
前記テストパターン生成回路、前記被テスト回路、前記第１のレジスタ、前記第２のレジスタ、前記比較回路及び前記判定回路は、同一半導体基板上に形成されていることを特徴とする半導体装置。
【請求項５】
請求項１記載の半導体装置において、
さらに、前記判定回路の判定結果に基づいてクロックタイミング制御の解析を行うクロックタイミング制御解析回路と、
前記被テスト回路のクロックタイミング設定値を保存し、前記クロックタイミング制御解析回路による解析結果に基づいて前記クロックタイミング設定値が書き換えられるクロックタイミング設定値レジスタと、
前記クロックタイミング設定値レジスタにおける前記クロックタイミング設定値に基づいてクロックタイミングを生成するクロックタイミング生成回路とを有することを特徴とする半導体装置。
【請求項６】
テストパターンを生成する第１ステップと、
パスが保証されている緩い第１の動作条件で、前記第１のステップで生成されたテストパターンを被テスト回路に入力して第１のテストを実行する第２ステップと、
前記第1のテストの結果を第１のレジスタに保持する第３ステップと、
前記第１の動作条件より厳しい第２の動作条件で、前記第１のステップで生成されたテストパターンを被テスト回路に入力して第２のテストを実行する第４ステップと、
前記第２のテストの結果を第２のレジスタに保持する第５ステップと、
前記第１のレジスタに保持されている前記第１のテストの結果と前記第２のレジスタに保持されている前記第２のテストの結果との比較を行う第６ステップと、
前記第６ステップによる比較結果に基づいてパス／フェイルの判定を行う第７ステップとを有することを特徴とする半導体装置のテスト方法。
【請求項７】
請求項６記載の半導体装置のテスト方法において、
前記第１の動作条件と前記第２の動作条件とは、クロック周波数、クロックタイミング、電源電圧、バックゲートバイアス電圧、温度及び外部ノイズのいずれか１つ以上が異なることを特徴とする半導体装置のテスト方法。
【請求項８】
請求項６記載の半導体装置のテスト方法において、
前記被テスト回路は、クロックグループごとにスキャンチェーンを構成し、
前記第１ステップにおいて、テストパターンシードを復号して前記テストパターンを生成し、
前記第２ステップにおいて、前記スキャンチェーンごとのフリップフロップの値をデータ圧縮して前記第１のテストの結果を出力し、
前記第４ステップにおいて、前記スキャンチェーンごとのフリップフロップの値をデータ圧縮して前記第２のテストの結果を出力することを特徴とする半導体装置のテスト方法。
【請求項９】
請求項６記載の半導体装置のテスト方法において、
さらに、前記第７ステップの判定結果に基づいてクロックタイミング制御の解析を行う第８ステップと、
前記第８ステップによる解析結果に基づいてクロックタイミング設定値を書き換える第９ステップと、
前記第９ステップで書き換えられ前記クロックタイミング設定値に基づいてクロックタイミングを生成する第１０ステップとを有することを特徴とする半導体装置のテスト方法。
【請求項１０】
請求項６記載の半導体装置のテスト方法において、
前記被テスト回路はランダムロジックを含むことを特徴とする半導体装置のテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置及びそのテスト方法に関し、特に半導体装置のＢＩＳＴ（Ｂｕｉｌｔ  Ｉｎ  Ｓｅｌｆ  Ｔｅｓｔ）の技術に適用して有効な技術に関するものである。
【背景技術】
【０００２】
本発明者が検討した技術として、例えば、半導体装置（ＬＳＩなど）のテスト技術においては、以下の技術が考えられる。【０００３】
テスト容易化設計の手法として、スキャン方式、ＢＩＳＴなどがある。スキャン方式は、テスト対象となる被テスト回路内の記憶素子がテスト時に自由にアクセス可能なように回路を変換することにより、フリップフロップの可観測性と可制御性を向上させるものである。例えば、スキャンテスト時に、スキャン入力からスキャン出力に至るスキャンチェーンを利用して、各フリップフロップに必要なテストデータを設定し、そのデータを組み合わせ回路に印加し、その組み合わせ回路の出力結果を各フリップフロップで取り込んで、そのデータをスキャン出力から順次読み出して観測する。また、ＢＩＳＴは、半導体チップ内にテスト機能を取り込み、高価なＬＳＩテスタを使うことなく半導体チップのテストを可能にするものである。一般的に、ＢＩＳＴは、テストパターン発生器、出力パターン圧縮器、期待値と比較器などから構成される。【０００４】
一般的に、ＬＳＩは、設計段階において、同一時刻にクロックが各回路部分に到達するという理想的な仮定のもとに開発される。しかし、実際に製造されたＬＳＩは、製造ばらつきのために、クロックの各回路への到達タイミングにずれ（クロックスキュー）が生じて誤動作する場合がある。そのため、製品歩留まりが低下し、ＬＳＩの製造コストが上昇する。近年のＬＳＩの高密度化、高速化により、従来から行われてきたマージン設計の手法では、必要なタイミングマージンを確保することが困難になり、歩留まりが著しく低下する。そこで、製造後のクロックの調整が必要になってくる。このようなクロック調整機能は、ＬＳＩに搭載したＢＩＳＴで自動的に行うことが望ましい。【０００５】
クロックドシステムのタイミングマージンを調整する方法としては、特許文献１に記載されたものがある。この方法は、クロックの初期周波数またはデフォルト周波数をセットし、ＢＩＳＴなどのテストを、クロックドシステムに対して実行し、テストに失敗するまでクロック周波数を増分的に増加し、テストに失敗した際に、クロック制御設定を調整し、障害が発生した周波数でテストをもう一度実行し、テストが失敗するか所望のタイミングマージンに達するまで、クロック周波数を高めながらテストを繰り返すというものである。
【特許文献１】特開２００１−３１８７３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、前記のようなテスト技術について、本発明者が検討した結果、以下のようなことが明らかとなった。【０００７】
例えば、ＬＳＩが、メモリや単体演算器のような規則論理のみから構成されるものであれば、入力に対する出力の期待値が容易に予測できるので、期待値をＢＩＳＴ内に取り込むことが容易である。そのため、高価なテスト装置を使用することなく、ＢＩＳＴによる自己的なテストが可能である。【０００８】
しかし、ＬＳＩが、マイクロプロセッサのようにランダムなロジックで構成されるものである場合、テストにおける期待値の規則性が乏しく、期待値の生成が容易ではないため、あらかじめＢＩＳＴ内に期待値を格納することが困難である。そのため、ＢＩＳＴによる自己的なテストを行うことが困難であり、高価なテスト装置を使用して期待値との比較を行うことが必要となる。さらに、ＬＳＩを実際の装置に搭載した実使用環境に応じて、ＬＳＩ内部のクロックなどのタイミング設定を自動的・自己的に変更するような仕組みを作ることが困難である。【０００９】
そこで、本発明の目的は、マイクロプロセッサなどランダムなロジックを含む半導体装置において、テスト装置から期待値を入力することなく、半導体装置内のＢＩＳＴにより自己的なテストを行うことができる技術を提供することにある。【００１０】
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。【００１２】
すなわち、本発明による半導体装置は、テストパターン生成回路と、前記テストパターン生成回路で生成されたテストパターンを入力し、第１の動作条件による第１のテスト及び第２の動作条件による第２のテストが実行される被テスト回路と、前記第１のテストの結果を保持する第１のレジスタと、前記第２のテストの結果を保持する第２のレジスタと、前記第１のレジスタに保持されている前記第１のテストの結果と前記第２のレジスタに保持されている前記第２のテストの結果との比較を行う比較回路と、前記比較回路による比較結果に基づいて前記被テスト回路のパス／フェイルの判定を行う判定回路とを有し、前記第１の動作条件は、パスが保証されている緩い動作条件であり、前記第２の動作条件は、前記第１の動作条件よりも厳しい動作条件であることを特徴とするものである。【００１３】
また、本発明による半導体装置のテスト方法は、テストパターンを生成する第１ステップと、パスが保証されている緩い第１の動作条件で、前記第１のステップで生成されたテストパターンを被テスト回路に入力して第１のテストを実行する第２ステップと、前記第1のテストの結果を第１のレジスタに保持する第３ステップと、前記第１の動作条件より厳しい第２の動作条件で、前記第１のステップで生成されたテストパターンを被テスト回路に入力して第２のテストを実行する第４ステップと、前記第２のテストの結果を第２のレジスタに保持する第５ステップと、前記第１のレジスタに保持されている前記第１のテストの結果と前記第２のレジスタに保持されている前記第２のテストの結果との比較を行う第６ステップと、前記第６ステップによる比較結果に基づいてパス／フェイルの判定を行う第７ステップとを有することを特徴とするものである。
【発明の効果】
【００１４】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。【００１５】
すなわち、本発明による半導体装置及びそのテスト方法によれば、半導体装置のテスト効率が向上する。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態１による半導体装置の構成及び動作を示すブロック図である。
【図２】本発明の実施の形態２による半導体装置の構成及び動作を示すブロック図である。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部材には原則として同一の符号を付し、その繰り返しの説明は省略する。【００１８】
（実施の形態１）
図１は本発明の実施の形態１による半導体装置の構成及び動作を示すブロック図である。まず、図１により、本実施の形態１による半導体装置の構成の一例を説明する。【００１９】
本実施の形態１の半導体装置は、例えばマイクロプロセッサなどランダムロジックとＢＩＳＴを含むＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）とされ、テストパターンシード１０１と、ランダムパターン生成回路（テストパターン生成回路）１０２と、被テスト回路１０３と、スキャンチェーンＦＦ値圧縮回路１０４と、複数の第１レジスタ１０５及び第２レジスタ１０６と、複数の比較回路１０７と、テスト結果判定回路１０８などから構成され、同一半導体基板上に形成されている。【００２０】
テストパターンシード１０１は、被テスト回路１０３のテストに使用されるテストパターンを圧縮したものであり、ランダムテストパターンを発生させるいくつかの「シード」がＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などのメモリに格納されている。「シード」は、検出率の良いものをあらかじめ故障診断によって求めておく。【００２１】
ランダムパターン生成回路１０２は、テストパターンシード１０１を復号して被テスト回路１０３のテストに使用されるランダムパターンを生成するものである。【００２２】
被テスト回路１０３は、テスト対象の回路であり、組み合わせ回路などからなる複数のランダム論理１０９と、スキャンチェーンを構成する複数のフリップフロップ（ＦＦ）１１０などから構成されている。スキャンチェーンはタイミング制御するクロックのグループごとに張られている。【００２３】
スキャンチェーンＦＦ値圧縮回路１０４は、スキャンチェーンごとにＦＦ値をデータ圧縮するものである。【００２４】
第１レジスタ１０５及び第２レジスタ１０６は、スキャンチェーンＦＦ値圧縮回路１０４によりデータ圧縮されたテスト結果を、それぞれスキャンチェーンごとに保持するものである。第１レジスタ１０５には、パスが保証されている緩い（ルーズな）第１動作条件（クロック周波数、クロックタイミング、電源電圧、バックゲートバイアス電圧、温度及び外部ノイズなど）におけるテスト結果が保持され、第２レジスタ１０６には、第１動作条件よりも厳しい第２動作条件におけるテスト結果が保持される。【００２５】
比較回路１０７は、第１レジスタ１０５及び第２レジスタ１０６の出力をそれぞれ比較する回路である。【００２６】
テスト結果判定回路１０８は、比較回路１０７の比較結果に基づいて被テスト回路１０３のパス／フェイルを判定する回路である。比較の結果、第１レジスタ１０５と第２レジスタ１０６の出力が不一致の場合はフェイルと判定する。【００２７】
次に、本実施の形態１による半導体装置の動作を説明する。【００２８】
まず、ランダムパターン生成回路１０２において、テストパターンシード１０１を復号して被テスト回路１０３のテストに使用されるランダムパターンを生成する。次に、そのランダムパターンを使用して、被テスト回路１０３内のフリップフロップ１１０に対して、初期値をスキャンインする。そして、被テスト回路１０３において、パスが保証されている緩い第１の動作条件（クロック周波数、クロックタイミング、電源電圧、バックゲートバイアス電圧、温度及び外部ノイズなど）でテストを実行する。例えば、ルーズなタイミングでクロックアドバンスを行う。次に、クロックアドバンス後のフリップフロップ１１０の結果をスキャンアウトする。スキャンアウトした結果は、スキャンチェーンＦＦ値圧縮回路１０４によりデータ圧縮する。その圧縮した第１のテスト結果を、「リファレンスの値」として第２レジスタ１０６を介して第１レジスタ１０５に格納する。【００２９】
再び、被テスト回路１０３内のフリップフロップ１１０に対して、前回と同じランダムパターン（初期値）をスキャンインする。続いて、第１の動作条件よりも厳しい第２の動作条件でテストを実行する。この際、第１の動作条件と第２の動作条件とは、クロック周波数、クロックタイミング、電源電圧、バックゲートバイアス電圧、温度及び外部ノイズのいずれか１つ以上が異なる。例えば、第１の動作条件のクロックタイミングよりも厳しいクロックタイミングでクロックアドバンスを行う。この際、期待値は、前回と同じになるはずである。【００３０】
次に、前回と同様にして、クロックアドバンス後のフリップフロップ１１０の結果をスキャンアウトする。スキャンアウトした結果は、スキャンチェーンＦＦ値圧縮回路１０４によりデータ圧縮する。データ圧縮した第２のテスト結果を第２レジスタ１０６に格納する。【００３１】
次に、比較回路１０７において、第１レジスタ１０５が保持する第１のテスト結果と第２レジスタ１０６が保持する第２のテスト結果とを各スキャンチェーンごとに比較評価する。そして、テスト結果判定回路１０８において、パス／フェイルの判定を行う。この時、第１レジスタ１０５と第２レジスタ１０６の値が異なっているスキャンチェーンがあったら、そのスキャンチェーンの入力論理のタイミングが厳しいと解釈してフェイルと判定する。【００３２】
したがって、本実施の形態１によれば、パスが保証されている動作条件でテストを行った結果と、動作条件を厳しくした結果と比較することにより、マイクロプロセッサなどランダムなロジックを含む半導体装置において、高価なテスト装置から期待値を入力することなく、半導体装置内のＢＩＳＴにより自己的なテストを行うことができる。【００３３】
（実施の形態２）
図２は本発明の実施の形態２による半導体装置の構成及び動作を示すブロック図である。本実施の形態２による半導体装置は、前記実施の形態１を応用したものであり、クロックタイミング調整をＢＩＳＴにより自己的に行うようにしたものであ。【００３４】
まず、図２により、本実施の形態２による半導体装置の構成の一例を説明する。本実施の形態２の半導体装置は、図１に示した前記実施の形態１の構成に対して、クロックタイミング制御解析回路２０１と、クロックタイミング設定値レジスタ２０２と、クロックタイミング生成回路２０３と、全体制御回路２０４を付加したものであり、同一半導体基板上に形成されている。【００３５】
クロックタイミング制御解析回路２０１は、テスト結果判定回路１０８の判定結果に基づいてクロックタイミング制御の解析を行うものである。例えば、フェイルしたタイミングとフェイルしたクロックチェーンの情報からクロックタイミングの調整値を解析する。【００３６】
クロックタイミング設定値レジスタ２０２は、被テスト回路１０３のクロックタイミング設定値を保存し、クロックタイミング制御解析回路２０１による解析結果に基づいてクロックタイミング設定値が書き換えられる。【００３７】
クロックタイミング生成回路２０３は、クロックタイミング設定値レジスタ２０２におけるクロックタイミング設定値に基づいてクロックタイミングを生成するものである。【００３８】
全体制御回路２０４は、テストパターンシード１０１やクロックタイミング生成回路２０３などに対して指示を出して、全体制御を行う回路である。  【００３９】
次に、本実施の形態２による半導体装置の動作を説明する。テストパターンシード１０１を復号してランダムパターン生成回路１０２でランダムパターンを生成してから、テスト結果判定回路１０８でパス／フェイルの判定を行うまでの動作は、前記実施の形態１と同じなので、説明を省略する。【００４０】
テスト結果判定回路１０８において、パス／フェイルの判定を行い、第１レジスタ１０５と第２レジスタ１０６の値が異なっているスキャンチェーンがあった場合、そのスキャンチェーンの入力論理のタイミングが厳しいと解釈してフェイルと判定する。そして、この結果をクロックタイミング制御解析回路２０１に伝える。クロックタイミング制御解析回路２０１は、例えば、フェイルの原因となったそのスキャンチェーンのクロックグループのクロックのタイミングを遅らせるなどの判断をして、クロックタイミング設定値レジスタ２０２の書き換えを行う。そして、クロックタイミング生成回路２０３は、クロックタイミング設定値レジスタ２０２におけるクロックタイミング設定値に基づいてクロックタイミングを変更して、再度、テストを実行する。以上のテストを繰り返し行い、最適なクロックタイミングを求める。これらのテストを、すべてのテストシードパターン及びタイミングの組み合わせについて、繰り返し実行する。半導体装置が所望の性能に達した時にテストを終了する。【００４１】
テスト終了後、クロックタイミング制御設定値の最適解をクロックタイミング設定値レジスタ２０２に格納して、ＢＩＳＴ動作を終了する。【００４２】
したがって、本実施の形態２によれば、前記実施の形態１と同様の効果が得られるとともに、クロックタイミングの調整をＢＩＳＴにより自己的に行うことができる。【００４３】
以上、本発明者によってなされた発明をその実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００４４】
本発明は、マイクロプロセッサなどランダムロジックを含む半導体装置（ＬＳＩ）について適用可能である。
【図１】
0004685036.tif 000002
【図２】
0004685036.tif 000003