(57)【要約】【課題】複数のクロックで動作する半導体集積回路の実速度スキャンテストにおいて、半導体集積回路の面積を増加させることなく、かつ故障検出率を低下させることなく、テストパタン数を削減する。【解決手段】テストボード１００は、異なる周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路１２０〜１２２と、互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当てるクロック制御回路１１０〜１１２及びコントローラ１０１と、割り当てられたクロックで駆動されるスキャンチェーン群の出力を選択して検査装置へ供給するセレクタ群１０２とを備える。【選択図】図１
2007205776.tif 000002
【特許請求の範囲】
【請求項１】
異なる周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路のスキャンテスト方法であって、
互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当て、
割り当てられたクロックで駆動されるスキャンチェーン群の出力を検査するスキャンテスト方法。
【請求項２】
異なる周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路のスキャンテストを行うテストパターンを生成する方法であって、
互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当て、
割り当てられたクロックで駆動されるスキャンチェーン群にそれぞれ共通の値を入力して前記テストパターンを生成するテストパターン生成方法。
【請求項３】
各スキャンチェーン群を順次選択してテストパターン生成処理を行い、前段の処理で確定して値を保存した状態で次段のスキャンチェーン群のテストパターン生成処理を行う請求項２記載の方法。
【請求項４】
各スキャンチェーン群間で受渡しが発生する非同期スキャンフリップを抽出し、各スキャンチェーン群を順次選択し、抽出した非同期スキャンフリップの入力値に矛盾が発生しないように各スキャンチェーン群に対するテストパターンを生成し、各スキャンチェーン群に対して生成されたてストパターンを合成する請求項２記載の方法。
【請求項５】
異なる周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路と、
互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当てる手段と、
割り当てられたクロックで駆動されるスキャンチェーン群の出力を選択して検査装置へ供給する手段とを備えるテストボード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路のスキャンテスト技術に関する。
【背景技術】
【０００２】
半導体集積回路の故障モデルとして、縮退故障、オープン故障、ブリッジ故障、遅延故障などがある。縮退故障モデルに基づくスキャンテストは半導体集積回路の故障検出方法として確立されており、オープン故障やブリッジ故障は縮退故障を調べることによって疑似的に調べることができる。検出できるノードの割合が１００％に近ければ、縮退故障を検出するだけでほとんどの故障を見付けることができる。
【０００３】
一方、遅延故障を検出するには活性化されるすべてのノードを実動作速度でテストする必要がある。半導体集積回路の大規模化に伴いテストパタンの自動生成は必須となっているが、自動生成されたテストパタンによる動作は実際の動作とは異なることがあり、遅延故障の検出を困難な課題としている。
【０００４】
そのような課題を解決し、半導体集積回路の実速度スキャンテストの効果を上げるために従来さまざまな取り組みがなされている。遅延故障は検査対象経路上で欠陥の積み重ねにより、あるいは１箇所の大きな欠陥により発生するものであり、その経路を確実に活性化させるテストパタンの自動生成方法なども研究されている（例えば、特許文献１参照）。
【特許文献１】特開２００５−１４０７１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
半導体集積回路には複数周波数のクロックで動作するものがあるが、この場合の実速度スキャンテストは一段と困難な課題となる。従来の複数周波数のクロックで動作する半導体集積回路に対する実速度スキャンテストでは、複数周波数のクロックの同時入力が不可能であるため、複数周波数のクロック毎の実速度スキャンテストをシリアルに実施している。このような方法ではテストパタン数が膨大となりテスト時間が増加するという問題がある。テストパタン数の増加をテストパタン生成手法で解決しようとすると故障検出率が低下し、テスト容易化設計手法で解決しようとすると回路面積が増加するため、好ましい解決方法が無かった。
【０００６】
本発明は、周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路のスキャンテストにおいて、半導体集積回路の面積を増加させることなく、かつ故障検出率を低下させることなく、テストパタン数を削減することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、異なる周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路のスキャンテスト方法であって、互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当て、割り当てられたクロックで駆動されるスキャンチェーン群の出力を検査する。この構成によれば、互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当てることで、スキャンチェーン群の出力の同時検査によりクロック数分のテストの同時実施が可能になり、テストパタン数を削減することができる。
【０００８】
また、本発明は、異なる周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路のスキャンテストを行うテストパターンを生成する方法であって、互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当て、割り当てられたクロックで駆動されるスキャンチェーン群にそれぞれ共通の値を入力して前記テストパターンを生成する。この構成によれば、複数のクロックにそれぞれ対応するスキャンチェーン群に対して共通の値を入力してテストパタンを生成するため、生成するテストパタン数を削減することができる。
【０００９】
上記構成において、各スキャンチェーン群を順次選択してテストパターン生成処理を行い、前段の処理で確定して値を保存した状態で次段のスキャンチェーン群のテストパターン生成処理を行う。この構成によれば、スキャンチェーン群に対するテストパタン生成処理で確定した値を保存した状態で次順のスキャンチェーン群のテストパタン生成処理を行うため、複数のクロックにそれぞれ対応するスキャンチェーン群に対して共通の値を入力して矛盾の生じないテストパタンを生成することができる。
【００１０】
若しくは、各スキャンチェーン群間で受渡しが発生する非同期スキャンフリップを抽出し、各スキャンチェーン群を順次選択し、抽出した非同期スキャンフリップの入力値に矛盾が発生しないように各スキャンチェーン群に対するテストパターンを生成し、各スキャンチェーン群に対して生成されたてストパターンを合成する。この構成によれば、抽出された非同期スキャンフリップフロップの入力値に矛盾が発生しないようにそれぞれのスキャンチェーン群に対するテストパタンを生成するため、スキャンチェーン群の間で受渡しが発生する場合に矛盾の生じないテストパタンを生成することができる。
【発明の効果】
【００１１】
本発明によれば、互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当てることで、スキャンチェーン群の出力の同時検査によりクロック数分のテストの同時実施が可能になり、テストパタン数を削減することができる。
【００１２】
これにより、半導体集積回路の面積増加や故障検出率低下を招くことなくテスト時間を低減することが可能である。また、半導体検査装置で用意する信号やメモリ容量を増やすことなく実施可能であり、装置面での低コスト化を図ることができる。
【発明を実施するための最良の形態】
【００１３】
図１は本発明の第１の実施形態に係るスキャンテスト方法のための検査ボードの構成を示す図である。図１において、１００は検査ボード、１０１はコントローラ回路、１０２は出力選択回路、１１０は第１のクロック制御回路、１１１は第２のクロック制御回路、１１２は第Ｎ（Ｎは自然数）のクロック制御回路、１２０は第１の半導体集積回路、１２１は第２の半導体集積回路、１２２は第Ｎの半導体集積回路、１３０は半導体検査装置である。
【００１４】
ここに、第１の半導体集積回路１２０と第２の半導体集積回路１２１と第Ｎの半導体集積回路１２２は同一の半導体集積回路であり、第１のクロック１８０で駆動する第１のスキャンチェーン群１８３と、第２のクロック１８２で駆動する第２のスキャンチェーン群１８４と、第Ｎのクロック１８２で駆動する第Ｎのスキャンチェーン群１８５を有する。
【００１５】
尚、以下説明を簡単にするためにＮ＝３として記載するが、本発明はＮが２以上の自然数で効果があり、Ｎの値によって本発明の請求範囲を限定するものではない。
【００１６】
検査ステップとして最初に、半導体検査装置１３０よりコントローラ回路１０１を介して、第１のクロック制御回路１１０は第１のクロックのみオン、第２のクロック制御回路１１１は第２のクロックのみオン、第３のクロック制御回路１１２は第３のクロックのみオンとなるように、かつ出力選択回路１０２に対して第１の半導体集積回路１２０の第１のスキャンチェーン群１８３の出力と第２の半導体集積回路１２１の第２のスキャンチェーン群１８４の出力と第Ｎの半導体集積回路１２２の第３のスキャンチェーン群１８５の出力を選択するように制御信号を出力する。
【００１７】
これにより、第１の半導体集積回路１２０は第１のクロック１８０のテスト、第２の半導体集積回路１２１は第２のクロック１８１のテスト、第３の半導体集積回路１２２は第３のクロック１８２のテストを同一のスキャンテストパタンを使用して並列に実施する。
【００１８】
次に、半導体検査装置１３０よりコントローラ回路１０１を介して、第１のクロック制御回路１１０は第２のクロックのみオン、第２のクロック制御回路１１１は第３のクロックのみオン、第３のクロック制御回路１１２は第１のクロックのみオンとなるように、かつ出力選択回路１０２に対して第１の半導体集積回路１２０の第２のスキャンチェーン群１８４の出力と第２の半導体集積回路１２１の第３のスキャンチェーン群１８５の出力と第３の半導体集積回路１２２の第１のスキャンチェーン群１８３の出力を選択するように制御信号を出力する。
【００１９】
これにより、第１の半導体集積回路１２０は第２のクロック１８１のテスト、第２の半導体集積回路１２１は第３のクロック１８２のテスト、第３の半導体集積回路１２２は第１のクロック１８０のテストを同一のスキャンテストパタンを使用して並列に実施する。
【００２０】
最後に、半導体検査装置１３０よりコントローラ回路１０１を介して、第１のクロック制御回路１１０は第３のクロックのみオン、第２のクロック制御回路１１１は第１のクロックのみオン、第３のクロック制御回路１１２は第２のクロックのみオンとなるように、かつ出力選択回路１０２に対して第１の半導体集積回路１２０の第３のスキャンチェーン群１８５の出力と第２の半導体集積回路１２１の第１のスキャンチェーン群１８３の出力と第３の半導体集積回路１２２の第２のスキャンチェーン群１８４の出力を選択するように制御信号を出力する。
【００２１】
これにより、第１の半導体集積回路１２０は第３のクロック１８２のテスト、第２の半導体集積回路１２１は第１のクロック１８０のテスト、第３の半導体集積回路１２２は第２のクロック１８１のテストを同一のスキャンテストパタンを使用して並列に実施する。
【００２２】
上記実施の形態により、互いに異なる周波数を有する複数のクロックの全ての組み合わせを半導体集積回路１２０、１２１、１２２に順次割り当て、クロックのオン・オフのみで複数の半導体集積回路を同一のスキャンテストパタンを用いて並列にテスト実行することができるため、テスト時間を短縮することができ、かつ半導体検査装置１３０で用意する信号を増やすことなく、また半導体検査装置のメモリ容量を増やすことなく実施することが可能になる。
【００２３】
図２は本発明の第２の実施形態に係るスキャンテスト方法のための検査ボードの構成を示す図である。本実施形態は第１の実施形態のコントローラ回路１０１の機能を半導体検査装置１３０に組み込んだ構成であり、第１の実施形態の検査ボードと同じ効果が得られる。図３は本発明の第３の実施形態に係るスキャンテスト方法のための検査ボードの構成を示す図である。本実施形態は第１の実施形態のコントローラ回路１０１と第１のクロック制御回路１１０と第２のクロック制御回路１１１と第Ｎのクロック制御回路１１２の機能を半導体検査装置１３０に組み込んだ構成であり、第１の実施形態の検査ボードと同じ効果が得られる。
【００２４】
図４は、本発明の上記各実施形態において、半導体検査装置１３０からの入力・出力判定に使用するテストパタンの生成方法である。図４において、４００は第１のクロックのテストパタン生成処理、４０１は第２のクロックのテストパタン生成処理、４０２は第Ｎのクロックのテストパタン生成処理、４０３はテストパタン合成処理、４０４は合成後のテストパタン生成波形である。
【００２５】
第１のクロック１８０と第２のクロック１８１と第Ｎのクロック１８２のそれぞれにテストパタンを生成する際に、第１のスキャンチェーン群１８３と第２のスキャンチェーン群１８４と第Ｎのスキャンチェーン群１８５に共通の値を入力することにより、第１のクロック１８０のテストパタン生成処理４００と第２のクロック１８１のテストパタン生成処理４０１と第Ｎのクロック１８２のテストパタン生成処理４０２で生成したテストパタンを共通化し、テストパタン合成処理４０３を行うことでテストパタン数を削減することができる。
【００２６】
図５は、上記テストパタン生成方法において、第１のクロック１８０と第２のクロック１８１と第Ｎのクロック１８２に対するテストパタンを生成する際に、第１のスキャンチェーン群１８３と第２のスキャンチェーン群１８４と第Ｎのスキャンチェーン群１８５に共通の値を入力するための第１の方法を示す図である。図５において、５００は処理開始、５０１は第１のクロックのテストパタン生成処理、５０２は第２のクロックのテストパタン生成処理、５０３は第Ｎのクロックのテストパタン生成処理、５０４は処理終了である。
【００２７】
第１のクロック１８０に対する第１のテストパタン生成処理５０１を実施後、テストパタン生成処理５０１で確定した値はそのまま保存した状態で第２のクロック１８１に対する第２のテストパタン生成処理５０２を実施し、第１のテストパタン生成処理５０１と第２のテストパタン生成処理５０２で確定した値はそのまま保存した状態で第Ｎのクロック１８２に対する第Ｎのテストパタン生成処理５０３を実施することで、第１のスキャンチェーン群１８３と第２のスキャンチェーン群１８４と第Ｎのスキャンチェーン群１８５に共通の値を入力することが可能になる。
【００２８】
図６は、上記テストパタン生成方法において、第１のクロック１８０と第２のクロック１８１と第Ｎのクロック１８２に対するテストパタンを生成する際に、第１のスキャンチェーン群１８３と第２のスキャンチェーン群１８４と第Ｎのスキャンチェーン群１８５に共通の値を入力するための第２の方法を示す図である。図６において、６００は処理開始、６０１は非同期受渡しのスキャンフリップフロップ抽出処理、６０２は第１のクロックのテストパタン生成処理、６０３は第２のクロックのテストパタン生成処理、６０４は第Ｎのクロックのテストパタン生成処理、６０５は処理終了、６０７はテストパタン合成処理である。
【００２９】
処理開始後は、まず非同期スキャンフリップフロップ抽出処理６０１を実施し、第１のクロック１８０と第２のクロック１８１と第Ｎのクロック１８２の間の受渡しが発生するスキャンフリップフロップを予め抽出する。次に、非同期スキャンフリップフロップ抽出処理６０１で抽出された第１のクロック１８０と第２のクロック１８１と第Ｎのクロック１８２の間で受渡しが発生するスキャンフリップフロップの入力値に矛盾が発生しないように、第１のクロック１８０に対する第１のテストパタン生成処理６０２と、第２のクロック１８１に対する第２のテストパタン生成処理６０３と、第Ｎのクロック１８２に対する第Ｎのテストパタン生成処理６０４を順に実施する。次に、第１のテストパタン生成処理６０２で得られたテストパタンと第２のテストパタン生成処理６０３で得られたテストパタンと第Ｎのテストパタン生成処理６０４で得られたテストパタンをテストパタン合成処理６０７で合成することにより、第１のスキャンチェーン群１８３と第２のスキャンチェーン群１８４と第Ｎのスキャンチェーン群１８５に共通の値を入力することが可能になる。
【産業上の利用可能性】
【００３０】
本発明のスキャンテスト方法は、互いに異なる周波数を有する複数のクロックの全ての組み合わせを各半導体集積回路に順次割り当てることで、スキャンチェーン群の出力の同時検査によりクロック数分のテストの同時実施が可能になり、テストパタン数を削減することができるという効果を有し、周波数のクロックで駆動可能なスキャンチェーン群を複数備えた半導体集積回路のスキャンテスト技術等として有用である。
【図面の簡単な説明】
【００３１】
【図１】本発明の第１の実施形態に係るスキャンテスト方法を実施するための検査ボードの構成を示す図。
【図２】本発明の第２の実施形態に係るスキャンテスト方法を実施するための検査ボードの構成を示す図。
【図３】本発明の第３の実施形態に係るスキャンテスト方法を実施するための検査ボードの構成を示す図。
【図４】本発明のスキャンテスト方法を実施するためのテストパタン生成方法を示す図。
【図５】本発明のスキャンテスト方法を実施するためのテストパタン生成方法における第１の生成手順を示す図。
【図６】本発明のスキャンテスト方法を実施するためのテストパタン生成方法における第２の生成手順を示す図。
【符号の説明】
【００３２】
１００  検査ボード
１０１  コントローラ回路
１０２  出力選択回路
１１０  第１のクロック制御回路
１１１  第２のクロック制御回路
１１２  第Ｎのクロック制御回路
１２０  第１の半導体集積回路
１２１  第２の半導体集積回路
１２２  第Ｎの半導体集積回路
１３０  半導体検査装置
【図１】
2007205776.tif 000003
【図２】
2007205776.tif 000004
【図３】
2007205776.tif 000005
【図４】
2007205776.tif 000006
【図５】
2007205776.tif 000007
【図６】
2007205776.tif 000008