(57)【要約】      （修正有）【課題】テストデータの周波数を最適化して、テスト時間を短縮するＩＣチップテスト装置、方法、及びシステムを提供する。【解決手段】スキャンパターン１２００を入力し、出力される出力値１２２０を予測値１２３０と比較し、比較結果に基づいてＩＣチップの欠陥有無を検査するＩＣチップテスト装置は、スキャンパターン集合に含まれる少なくとも二つ以上のスキャンセクション１２０４のうち、使用可能なシフト周波数を検索する対象であるスキャンセクションをスキャン経路にシフトしてスキャンテストの結果が正常または失敗であるシフト周波数を検索するシフト周波数検索部を備える。シフト周波数の検索時に、周波数をスキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、スキャンテストの結果が正常または失敗であるシフト周波数を検索する。【選択図】図１２
2018185343.tif 000002
【特許請求の範囲】
【請求項１】
テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいて前記ＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置において、
スキャンパターン集合に含まれる少なくとも二つ以上のスキャンセクションのうち、使用可能なシフト周波数を検索する対象である対象スキャンセクションを前記スキャン経路にシフトして前記スキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索するシフト周波数検索部
を備え、
前記シフト周波数検索部は、前記対象スキャンセクションに対する前記シフト周波数の検索時に、前記対象スキャンセクションのシフト周波数を、前記スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、前記スキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索する、
ＩＣチップテスト装置。
【請求項２】
前記シフト周波数検索部は、前記対象スキャンセクションに対し使用可能なシフト周波数の検索時に、前記対象スキャンセクションのシフト周波数を増加または減少しながら前記スキャンテストの結果が正常から失敗に変わる領域または失敗から正常に変わる領域のシフト周波数を検索する、
請求項１に記載のＩＣチップテスト装置。
【請求項３】
前記シフト周波数検索部は、前記対象スキャンセクションに対して使用可能なシフト周波数の検索時に、前記対象スキャンセクションに対して第１シフト周波数を用いて得られた第１スキャンテストの結果と、前記対象スキャンセクション以前の何れか一つのスキャンセクションに対して前記第１シフト周波数とは異なる第２シフト周波数を用いて得られた第２スキャンテストの結果と、が両方とも正常な場合に前記第１シフト周波数を前記対象スキャンセクションに対して使用可能なシフト周波数として決定する、
請求項１または２に記載のＩＣチップテスト装置。
【請求項４】
前記ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む、
請求項１ないし３の何れか一項に記載のＩＣチップテスト装置。
【請求項５】
テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいて前記ＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置において、
第１スキャンセクションを含む第１スキャンパターンをＩＣチップのスキャン経路にシフトしてテストを行う第１テスト工程及び第１スキャンセクション以降の第２スキャンセクションを含む第２スキャンパターンを前記スキャン経路にシフトしてテストを行う第２テスト工程を実行して、前記第２スキャンセクションに対して使用可能なシフト周波数を検索するシフト周波数検索部
を備え、
前記シフト周波数検索部は、
前記第１テスト工程で前記第１スキャンセクションを第１シフト周波数で前記スキャン経路にシフトし、前記第２テスト工程で前記第２スキャンセクションを前記第１シフト周波数とは異なる第２シフト周波数で前記スキャン経路にシフトし、
前記第２スキャンセクションに対する使用可能なシフト周波数の検索時に、前記第１テスト工程でのテスト結果と前記第２テスト工程でのテスト結果とが両方とも正常な場合に、前記第２シフト周波数を前記第２スキャンセクションに対して使用可能なシフト周波数として決定する、
ＩＣチップテスト装置。
【請求項６】
前記第１スキャンセクションは、前記第１スキャンパターンまたは前記第１スキャンパターンの一部であり、
前記第２スキャンセクションは、前記第２スキャンパターンまたは前記第２スキャンパターンの一部である、
請求項５に記載のＩＣチップテスト装置。
【請求項７】
前記シフト周波数検索部は、前記第２スキャンセクションに対する使用可能なシフト周波数の検索時に、前記第２シフト周波数を、前記スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、前記第２スキャンセクションに対する使用可能なシフト周波数の検索する、
請求項５または６に記載のＩＣチップテスト装置。
【請求項８】
前記ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む、
請求項５ないし７の何れか一項に記載のＩＣチップテスト装置。
【請求項９】
テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいて前記ＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置で用いられるＩＣチップテスト方法において、
スキャンパターン集合に含まれる少なくとも二つ以上のスキャンセクションのうち、使用可能なシフト周波数を検索する対象である対象スキャンセクションを前記スキャン経路にシフトして前記スキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索するシフト周波数検索工程
を備え、
前記シフト周波数検索工程は、前記対象スキャンセクションに対する前記シフト周波数の検索時に、前記対象スキャンセクションのシフト周波数を、前記スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、前記スキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索する工程を含む、
ＩＣチップテスト方法。
【請求項１０】
前記シフト周波数検索工程は、前記対象スキャンセクションに対し使用可能なシフト周波数の検索時に、前記対象スキャンセクションのシフト周波数を増加または減少しながら前記スキャンテストの結果が正常から失敗に変わる領域または失敗から正常に変わる領域のシフト周波数を検索する工程を含む、
請求項９に記載のＩＣチップテスト方法。
【請求項１１】
前記シフト周波数検索工程は、前記対象スキャンセクションに対して使用可能なシフト周波数の検索時に、前記対象スキャンセクションに対して第１シフト周波数を用いて得られた第１スキャンテストの結果と、前記対象スキャンセクション以前の何れか一つのスキャンセクションに対して前記第１シフト周波数とは異なる第２シフト周波数を用いて得られた第２スキャンテストの結果と、が両方とも正常な場合に前記第１シフト周波数を前記対象スキャンセクションに対して使用可能なシフト周波数として決定する工程を含む、
請求項９または１０に記載のＩＣチップテスト方法。
【請求項１２】
前記ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む、
請求項９ないし１１の何れか一項に記載のＩＣチップテスト方法。
【請求項１３】
テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいて前記ＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置で用いられるＩＣチップテスト方法において、
第１スキャンセクションを含む第１スキャンパターンをＩＣチップのスキャン経路にシフトしてテストを行う第１テスト工程及び第１スキャンセクション以降の第２スキャンセクションを含む第２スキャンパターンを前記スキャン経路にシフトしてテストを行う第２テスト工程を実行して、前記第２スキャンセクションに対して使用可能なシフト周波数を検索するシフト周波数検索工程
を備え、
前記シフト周波数検索工程は、
前記第１テスト工程で前記第１スキャンセクションを第１シフト周波数で前記スキャン経路にシフトし、前記第２テスト工程で前記第２スキャンセクションを前記第１シフト周波数とは異なる第２シフト周波数で前記スキャン経路にシフトする工程と、
前記第２スキャンセクションに対する使用可能なシフト周波数の検索時に、前記第１テスト工程でのテスト結果と前記第２テスト工程でのテスト結果とが両方とも正常な場合に、前記第２シフト周波数を前記第２スキャンセクションに対して使用可能なシフト周波数として決定する工程と、
を含む、
ＩＣチップテスト方法。
【請求項１４】
前記第１スキャンセクションは、前記第１スキャンパターンまたは前記第１スキャンパターンの一部であり、
前記第２スキャンセクションは、前記第２スキャンパターンまたは前記第２スキャンパターンの一部である、
請求項１３に記載のＩＣチップテスト方法。
【請求項１５】
前記シフト周波数検索工程は、前記第２スキャンセクションに対する使用可能なシフト周波数の検索時に、前記第２シフト周波数を、前記スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、前記第２スキャンセクションに対する使用可能なシフト周波数の検索する工程を含む、
請求項１３または１４に記載のＩＣチップテスト方法。
【請求項１６】
前記ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む、
請求項１３ないし１５の何れか一項に記載のＩＣチップテスト方法。
【請求項１７】
ＩＣ回路のスキャンテストを制御するためのテスター本体と、
前記テスター本体に内蔵された、または前記テスター本体の外部に設けられた、プロセッサを含むホストコンピューターと、
前記テスター本体に電気的に接続され、前記ＩＣ回路にテストデータ信号を入力するためのテストヘッドと、
請求項１ないし８の何れか一つに記載のＩＣチップテスト装置と
を備える、
ＩＣチップテストシステム。
【請求項１８】
前記ホストコンピューターが前記ＩＣチップテスト装置を含む、
請求項１７に記載のＩＣチップテストシステム。
【請求項１９】
請求項９ないし１６の何れか一項に記載のＩＣチップテスト方法を実行するためのプログラムを格納する、
コンピューターで読み取り可能な記録媒体。
【請求項２０】
請求項９ないし１６の何れか一項に記載のＩＣチップテスト方法を実行して、対象スキャンセクションそれぞれに対して使用可能なシフト周波数として決定したシフト周波数に関する情報を格納する、
コンピューターで読み取り可能な記録媒体。
【請求項２１】
請求項９ないし１６の何れか一項に記載のＩＣチップテスト方法を実行して、対象スキャンセクションそれぞれに対して使用可能なシフト周波数を検索するために用いられる前記対象スキャンセクションを含むテストデータを格納する、
コンピューターで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣチップテスト装置、ＩＣチップテスト方法、及びＩＣチップテストシステムに関する。
【背景技術】
【０００２】
この部分に記述した内容は単に本実施例に係る背景情報を提供するのみであって、従来技術を構成するのではない。
【０００３】
ＩＣチップをテストする最も一般的な方法は、ＩＣチップの入力にテストデータを印加し、これに対するＩＣチップの出力値を予め設定した予測値（Ｅｘｐｅｃｔｅｄ  Ｖａｌｕｅ）または予測結果（Ｅｘｐｅｃｔｅｄ  Ｒｅｓｕｌｔ）と比較することである。（例えば、特許文献１参照）。しかし、フリップフロップ（Ｆｌｉｐ−Ｆｌｏｐ）のような記憶素子（Ｓｔｏｒａｇｅ  Ｅｌｅｍｅｎｔ）を有する順序回路（Ｓｅｑｕｅｎｔｉａｌ  Ｌｏｇｉｃ）を含むＩＣチップの場合は、外部からＩＣチップ内のフリップフロップに所望の値を印加すること、またはフリップフロップの値を外部から検知することが容易ではない。
【０００４】
スキャン設計（Ｓｃａｎ  Ｄｅｓｉｇｎ）方法は、回路の制御度（Ｃｏｎｔｒｏｌｌａｂｉｌｉｔｙ）及び観測度（Ｏｂｓｅｒｖａｂｉｌｉｔｙ）を高めるために用いられる、テストを考慮した設計（ＤＦＴ：Ｄｅｓｉｇｎ  ｆｏｒ  Ｔｅｓｔａｂｉｌｉｔｙ）方法の一つである。スキャン設計方法を用いると、回路の構造的情報に基づいてテストパターンを自動で生成するソフトウェアであるＡＴＰＧ（Ａｕｔｏｍａｔｉｃ  Ｔｅｓｔ  Ｐａｔｔｅｒｎ  Ｇｅｎｅｒａｔｏｒ）を用いて小さいサイズでありながら高い故障検出率（Ｆａｕｌｔ  Ｃｏｖｅｒａｇｅ）を有するテストデータを得ることができる。
【０００５】
即ち、スキャン設計は、スキャンテストの際に順序回路を組み合わせ回路（Ｃｏｍｂｉｎａｔｉｏｎａｌ  Ｌｏｇｉｃ）化し、チップの外部から当該回路を容易に制御して観測できるようにし、ＡＴＰＧを介してテストデータのサイズを最小化することができる。スキャン設計及びＡＴＰＧソフトウェアを介して得られたテストデータは、少なくとも一つ以上のスキャンパターンで構成される。スキャンパターンは、スキャンテストの際に順序を有することができる。
【０００６】
一般的なスキャンテストの工程は次の通りである。
【０００７】
（１）ＩＣチップのメイン入力ポートにメイン入力テストデータを印加する。
【０００８】
（２）スキャン活性化ポートにスキャン活性化信号を印加し、ＩＣチップをスキャンモードに設定する。
【０００９】
（３）スキャン入力ポートにスキャンパターンをシフトイン（Ｓｈｉｆｔ−Ｉｎ）してスキャン経路上のフリップフロップにスキャンパターンをロード（Ｌｏａｄ）する。本明細書においては、スキャン入力ポートにスキャンパターンをシフトインすることまたはスキャン出力ポートから出力をシフトアウトすることを、「シフトする」と総称することがある。また、スキャンパターンをシフトインする際にスキャンパターンをシフトさせる時間間隔（すなわち周期）シフト周波数は逆数の関係である。スキャン経路にロードされたスキャンパターンは組み合わせ回路に印加される。スキャンパターンが組み合わせ回路に印加された後、メイン出力ポートから出力される結果を予測メイン出力値と比較し、比較結果が異なると当該ＩＣチップを不良と判定する。
【００１０】
（４）スキャン活性化ポートにスキャン非活性化信号を印加し、ＩＣチップをスキャンモードから機能モードに切り替える。機能モードでクロック信号が印加されると、フリップフロップは組み合わせ回路の出力値をキャプチャーする。このような動作をスキャンキャプチャーといい、この時のモードをスキャンキャプチャーモードという。
【００１１】
（５）スキャン活性化ポートにスキャン活性化信号を印加し、ＩＣチップを再び機能モードからスキャンモードに切り替える。
【００１２】
（６）スキャン経路上のフリップフロップにキャプチャーされた値をスキャン出力ポートを介してシフトアウト（Ｓｈｉｆｔ−Ｏｕｔ）してアンロード（Ｕｎｌｏａｄ）する。
【００１３】
（７）アンロードされた出力パターンと前もって知っている予測パターンを比較してＩＣチップの正常動作可否を把握する。ここで、予測パターンは、ＩＣチップが正常である場合にメイン入力テストデータとスキャンパターンを印加してスキャンキャプチャー動作をした後、スキャン出力ポートを介して出力されるスキャンパターンで、テストの前に予め知っている値または予測される結果パターンである。ステップ（３）での比較結果が同一で、ステップ（７）での比較結果が同一であれば、テスト結果が正常（ＰＡＳＳ）であるので、ＩＣチップは良品であり、そうでないと、ＩＣチップは不良品である。テスト正常（ＰＡＳＳ）は、ＩＣチップに異常がないと（Ｆａｕｌｔ−Ｆｒｅｅ）判断される場合を意味し、テスト失敗（ＦＡＩＬ）は、ＩＣチップに異常があると判断される場合を意味する。
【００１４】
スキャンテストは、大きく固着故障（Ｓｔｕｃｋ−ａｔ−Ｆａｕｌｔ）テストと、遅延故障（Ｄｅｌａｙ  Ｆａｕｌｔ）テストに分けられる。固着故障は、ＩＣチップ上のある信号ラインが意図してないのに論理０（Ｌｏｇｉｃ  ０）または論理１（Ｌｏｇｉｃ  １）の値に固着された状態を意味し、遅延故障は、ＩＣチップ上である信号ラインまたは経路（Ｐａｔｈ）を介して信号値を伝達する際に遅延時間のためＩＣチップの仕様を満たすことができない状態を意味する。
【００１５】
遅延故障テストには、遷移遅延（Ｔｒａｎｓｉｔｉｏｎ  Ｄｅｌａｙ）テストと、経路遅延（Ｐａｔｈ  Ｄｅｌａｙ）テストがあり、アットスピード（Ａｔ−Ｓｐｅｅｄ）テストともいう。遷移遅延テストは、ＩＣチップ上のある特定のノード（Ｎｏｄｅ）または信号ラインに０−ｔｏ−１または１−ｔｏ−０の信号値の遷移遅延時間問題が存在するか否かをテストするものである。経路遅延テストは、ＩＣチップ上のある特定の信号経路に０−ｔｏ−１または１−ｔｏ−０の信号値の遷移遅延時間問題が存在するか否かをテストするものである。
【００１６】
遅延故障テストを行うための代表的な方法として、ロンチオンキャプチャー（Ｌａｕｎｃｈ−Ｏｎ−Ｃａｐｔｕｒｅ）方法と、ロンチオンシフト（Ｌａｕｎｃｈ−Ｏｎ−Ｓｈｉｆｔ）方法があるが、これらの方法も遅延故障テストのためのスキャンパターンをスキャン経路上にシフトインするロード動作とスキャン経路上のフリップフロップにキャプチャーされた遅延故障テスト結果をシフトアウトするアンロード動作とで構成される。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】韓国特許公開公報第１０−２０１２−０１０２８７６号
【発明の概要】
【発明が解決しようとする課題】
【００１８】
このようなスキャンテストの場合、スキャン経路上のフリップフロップの数だけシフトするためのクロックパルスが必要である。従って、シフトインとシフトアウト動作に長い時間がかかる問題がある。しかし、テスト時間を短縮するためにスキャン経路にシフトするためのクロック信号の周波数、即ち、シフト周波数を単に上げることはできない。
【００１９】
例えば、スキャンシフト周波数を単に上げると、電力消耗またはクリティカル経路（Ｃｒｉｔｉｃａｌ  Ｐａｔｈ）遅延時間問題などのため、良品を不良品と判定するオーバーキル（Ｏｖｅｒｋｉｌｌ）の問題が発生する場合がある。
【００２０】
さらに、ディープサブミクロン（ＤＳＭ：Ｄｅｅｐ  Ｓｕｂ−Ｍｉｃｒｏｎ）微細製造工程及び低電力製造工程のみならず、低電力設計によってＩＣチップはより低電力化される一方で、ＩＣチップの動作周波数に対するパワーサプライノイズの影響はより大きくなっている。
【００２１】
特に、ＩＣチップは、機能モードよりスキャンモードでより多くのスイッチング動作が発生するので、スイッチング動作によるパワーサプライノイズのために発生する信号ラインの追加的な遅延が遅延テストオーバーキルを発生させる場合があり、単にシフト周波数を上げるには限界がある。
【００２２】
さらに、ＩＣチップ上の信号ライン間の干渉（Ｓｉｇｎａｌ  Ｃｒｏｓｓｔａｌｋ）による信号無欠性（Ｓｉｇｎａｌ  Ｉｎｔｅｇｒｉｔｙ）問題は、ＤＳＭ微細工程に進むほどより重要になってきた。スキャンモードで多く発生するスイッチング動作によって信号ライン間干渉がより悪化する場合がある。従って、遅延テスト時に信号ライン間干渉によって信号ラインに発生する追加的な遅延が遅延テストオーバーキルを発生させる場合がある。
【００２３】
さらに、スキャンパターンの電力消耗値に基づいてシフト周波数を検索する場合、電力消耗値がＩＣチップの仕様を超えなくても、スキャンテストの特性上ＩＣチップへの過度な回路スイッチング動作と製造工程変異（Ｐｒｏｃｅｓｓ  Ｖａｒｉａｔｉｏｎ）などの影響によるＩＲ−ＤｒｏｐまたはＧｒｏｕｎｄ−Ｂｏｕｎｃｅによるスキャンテストエラー問題が発生する場合がある。
【００２４】
例えば、スキャンパターンを用いた遅延テストの際にＩＲ−Ｄｒｏｐ、即ち、電圧降下（Ｖｏｌｔａｇｅ  Ｄｒｏｐ）の影響によって特定の信号ラインに追加的な遅延が発生する場合があり、これは遅延テストオーバーキルを起こす可能性がある。
【００２５】
スキャンパターンの電力消耗がＩＣチップの仕様を超える場合でも、ＩＣチップの製造工程及び設計特性によってはＩＲ−ＤｒｏｐまたはＧｒｏｕｎｄ−Ｂｏｕｎｃｅの問題が発生しない場合がある。従って、単に電力消耗値のみではＩＣチップに対する最適なシフト周波数を検索することに限界がある。
【００２６】
さらに、スキャンパターンの電力消耗値のみで最大シフト周波数を検索する場合、電力消耗値がＩＣチップの仕様を超えなくても、上げられたシフト周波数によってスキャン経路上にクリティカル経路のタイミングの問題が発生する場合がある。
【００２７】
さらに、シフト周波数を上げると、スキャン経路上にクリティカル経路のタイミングの問題が発生するが、スキャンパターンによる論理的な問題は発生しない場合がある。言い換えれば、スキャン経路のクリティカル経路上のビット値の状態により偽（Ｆａｌｓｅ）のクリティカル経路の場合が特定のスキャンシフトサイクルで発生することがある。
【００２８】
例えば、二つの連続した論理―０のビット値がスキャン経路上のクリティカル経路を成す二つのフリップフロップにシフトされて記憶された後、高いシフト周波数でシフト動作を行うと、クリティカル経路の始まりにあるフリップフロップに記憶されている論理―０のビット値に対する信号が次のフリップフロップに正常な時間内に到達できないクリティカル経路遅延時間の問題が発生する場合がある。しかし、シフト動作によってクリティカル経路を成す二つのフリップフロップに記憶されるビット値の論理的な問題は発生しない偽のクリティカル経路の場合が発生し得る。
【００２９】
さらに、多重電圧アイランド（Ｖｏｌｔａｇｅ  Ｉｓｌａｎｄ）または電圧領域（Ｖｏｌｔａｇｅ  Ｄｏｍａｉｎ  ｏｒ  Ｒｅｇｉｏｎ）手法を用いる低電力ＩＣチップの場合、高い速度の性能が必要な設計領域では高い電圧を供給し、そうでない領域では相対的に低い電圧を供給するので、電圧領域別に許容される電力消耗が異なる。
【００３０】
本発明の少なくとも一つの実施例では、上述した従来の要求に応えるために成されたものであり、テストデータの周波数を最適化して、テスト時間を短縮し、テスト品質と収率を向上させることができるＩＣチップテスト装置、ＩＣチップテスト方法、及び、ＩＣチップテストシステムを提供することを目的とする。
【課題を解決するための手段】
【００３１】
本発明の少なくとも一つの実施例においては、テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいてＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置において、スキャンパターン集合に含まれる少なくとも二つ以上のスキャンセクションのうち、使用可能なシフト周波数を検索する対象である対象スキャンセクションをスキャン経路にシフトしてスキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索するシフト周波数検索部を備え、シフト周波数検索部は、対象スキャンセクションに対するシフト周波数の検索時に、対象スキャンセクションのシフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、スキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索する、ＩＣチップテスト装置を提供する。
【００３２】
本発明の少なくとも一つの実施例において、シフト周波数検索部は、対象スキャンセクションに対し使用可能なシフト周波数の検索時に、対象スキャンセクションのシフト周波数を増加または減少しながらスキャンテストの結果が正常から失敗に変わる領域または失敗から正常に変わる領域のシフト周波数を検索する。
【００３３】
本発明の少なくとも一つの実施例において、シフト周波数検索部は、対象スキャンセクションに対して使用可能なシフト周波数の検索時に、対象スキャンセクションに対して第１シフト周波数を用いて得られた第１スキャンテストの結果と、対象スキャンセクション以前の何れか一つのスキャンセクションに対して第１シフト周波数とは異なる第２シフト周波数を用いて得られた第２スキャンテストの結果と、が両方とも正常な場合に第１シフト周波数を対象スキャンセクションに対して使用可能なシフト周波数として決定する。
本発明の少なくとも一つの実施例において、ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む。
【００３４】
本発明の少なくとも一つの実施例においては、テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいてＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置において、第１スキャンセクションを含む第１スキャンパターンをＩＣチップのスキャン経路にシフトしてテストを行う第１テスト工程及び第１スキャンセクション以降の第２スキャンセクションを含む第２スキャンパターンをスキャン経路にシフトしてテストを行う第２テスト工程を実行して、第２スキャンセクションに対して使用可能なシフト周波数を検索するシフト周波数検索部を備え、シフト周波数検索部は、第１テスト工程で第１スキャンセクションを第１シフト周波数でスキャン経路にシフトし、第２テスト工程で第２スキャンセクションを第１シフト周波数とは異なる第２シフト周波数でスキャン経路にシフトし、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第１テスト工程でのテスト結果と第２テスト工程でのテスト結果とが両方とも正常な場合に、第２シフト周波数を第２スキャンセクションに対して使用可能なシフト周波数として決定する、ＩＣチップテスト装置を提供する。
【００３５】
本発明の少なくとも一つの実施例において、第１スキャンセクションは、第１スキャンパターンまたは第１スキャンパターンの一部であり、第２スキャンセクションは、第２スキャンパターンまたは第２スキャンパターンの一部である。
【００３６】
本発明の少なくとも一つの実施例において、シフト周波数検索部は、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第２シフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、第２スキャンセクションに対する使用可能なシフト周波数を検索する。
【００３７】
本発明の少なくとも一つの実施例において、ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む。
【００３８】
本発明の少なくとも一つの実施例においては、テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいてＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置で用いられるＩＣチップテスト方法において、スキャンパターン集合に含まれる少なくとも二つ以上のスキャンセクションのうち、使用可能なシフト周波数を検索する対象である対象スキャンセクションをスキャン経路にシフトしてスキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索するシフト周波数検索工程を備え、シフト周波数検索工程は、対象スキャンセクションに対するシフト周波数の検索時に、対象スキャンセクションのシフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、スキャンテストの結果が正常であるシフト周波数または失敗であるシフト周波数を検索する工程を含む、ＩＣチップテスト方法を提供する。
【００３９】
本発明の少なくとも一つの実施例において、シフト周波数検索工程は、対象スキャンセクションに対し使用可能なシフト周波数の検索時に、対象スキャンセクションのシフト周波数を増加または減少しながらスキャンテストの結果が正常から失敗に変わる領域または失敗から正常に変わる領域のシフト周波数を検索する工程を含む。
【００４０】
本発明の少なくとも一つの実施例において、シフト周波数検索工程は、対象スキャンセクションに対して使用可能なシフト周波数の検索時に、対象スキャンセクションに対して第１シフト周波数を用いて得られた第１スキャンテストの結果と、対象スキャンセクション以前の何れか一つのスキャンセクションに対して第１シフト周波数とは異なる第２シフト周波数を用いて得られた第２スキャンテストの結果と、が両方とも正常な場合に第１シフト周波数を対象スキャンセクションに対して使用可能なシフト周波数として決定する工程を含む。
【００４１】
本発明の少なくとも一つの実施例において、ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む。
【００４２】
本発明の少なくとも一つの実施例においては、テスト対象回路を含むＩＣチップのスキャン入力ポートを介してスキャン経路にスキャンパターンを入力し、スキャン出力ポートを介して出力される出力値を前もって設定された予測値と比較し、比較結果に基づいてＩＣチップの欠陥有無を検査するスキャンテストを行うためのＩＣチップテスト装置で用いられるＩＣチップテスト方法において、第１スキャンセクションを含む第１スキャンパターンをＩＣチップのスキャン経路にシフトしてテストを行う第１テスト工程及び第１スキャンセクション以降の第２スキャンセクションを含む第２スキャンパターンをスキャン経路にシフトしてテストを行う第２テスト工程を実行して、第２スキャンセクションに対して使用可能なシフト周波数を検索するシフト周波数検索工程を備え、シフト周波数検索工程は、第１テスト工程で第１スキャンセクションを第１シフト周波数でスキャン経路にシフトし、第２テスト工程で第２スキャンセクションを第１シフト周波数とは異なる第２シフト周波数でスキャン経路にシフトする工程と、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第１テスト工程でのテスト結果と第２テスト工程でのテスト結果とが両方とも正常な場合に、第２シフト周波数を第２スキャンセクションに対して使用可能なシフト周波数として決定する工程と、を含む、ＩＣチップテスト方法を提供する。
【００４３】
本発明の少なくとも一つの実施例において、第１スキャンセクションは、第１スキャンパターンまたは第１スキャンパターンの一部であり、第２スキャンセクションは、第２スキャンパターンまたは第２スキャンパターンの一部である。
【００４４】
本発明の少なくとも一つの実施例において、シフト周波数検索工程は、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第２シフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、第２スキャンセクションに対する使用可能なシフト周波数の検索する工程を含む。
【００４５】
本発明の少なくとも一つの実施例において、ＩＣチップは、ウェハー上のチップまたはパッケージングされたチップを含む。
【００４６】
本発明の少なくとも一つの実施例においては、ＩＣ回路のスキャンテストを制御するためのテスター本体と、テスター本体に内蔵された、またはテスター本体の外部に設けられた、プロセッサを含むホストコンピューターと、テスター本体に電気的に接続され、ＩＣ回路にテストデータ信号を入力するためのテストヘッドと、本発明の少なくとも一つの実施例に係るＩＣチップテスト装置とを備える、ＩＣチップテストシステムを提供する。
【００４７】
本発明の少なくとも一つの実施例において、ホストコンピューターがＩＣチップテスト装置を含む。
【００４８】
本発明の少なくとも一つの実施例においては、本発明の少なくとも一つの実施例に係るＩＣチップテスト方法を実行するためのプログラムを格納する、コンピューターで読み取り可能な記録媒体を提供する。
【００４９】
本発明の少なくとも一つの実施例においては、本発明の少なくとも一つの実施例に係るＩＣチップテスト方法を実行して、対象スキャンセクションそれぞれに対して使用可能なシフト周波数として決定したシフト周波数に関する情報を格納する、コンピューターで読み取り可能な記録媒体を提供する。
【００５０】
本発明の少なくとも一つの実施例においては、本発明の少なくとも一つの実施例に係るＩＣチップテスト方法を実行して、対象スキャンセクションそれぞれに対して使用可能なシフト周波数検索するために用いられる対象スキャンセクションを含むテストデータを格納する、コンピューターで読み取り可能な記録媒体を提供する。
【発明の効果】
【００５１】
上述した本発明の少なくとも一つの実施例によれば、ＩＣチップのテストを行う際に、スキャンパターン、スキャンセクション、またはスキャングループ別に電力消耗またはクリティカル経路遅延時間のみを考慮してシフト周波数を上げる場合にオーバーシフト周波数によって良品を不良品と判定するオーバーキルの問題を解決しながら、スキャンテスト時間を短縮可能な最適なシフト周波数を提供することができるという効果を奏する。
【００５２】
さらに、ＩＣチップのテストの際に、パワーサプライノイズの影響、信号ライン間の干渉などを考慮し、最適なシフト周波数を提供することができるという効果を奏する。
【００５３】
さらに、ＩＣチップのテストの際に、スキャンテストによる過度な回路スイッチング動作、製造工程変異、微細製造工程、低電力製造工程、または低電力設計などによるＩＲ−ＤｒｏｐまたはＧｒｏｕｎｄ−Ｂｏｕｎｃｅの影響を反映し、最適なシフト周波数を提供することができるという効果を奏する。
【００５４】
さらに、ＩＣチップのテストの際に、シフト周波数の増加時に発生し得るスキャン経路上のクリティカル経路のタイミングの影響を考慮し、最適なシフト周波数を提供することができるという効果を奏する。
【００５５】
さらに、ＩＣチップのテストの際に、スキャン経路上のビット値によりスキャン経路のクリティカル経路が偽（Ｆａｌｓｅ）のクリティカル経路の場合、クリティカルタイミングの制約を無視してＩＣチップが正常に動作できる範囲内でスキャンシフト周波数を最大限上げて、テスト時間を最小化できるという効果を奏する。
【００５６】
さらに、ＩＣチップのテストの際に、スキャンパターン集合上のドンケア（Ｄｏｎ‘ｔ  Ｃａｒｅ）ビットによってより高いシフト周波数の使用を可能にすることができるという効果を奏する。ドンケアビットは、スキャンテストの結果に影響を与えないビットを意味する。
【００５７】
さらに、ＩＣチップのテストの際に、多重電圧アイランド（Ｖｏｌｔａｇｅ  Ｉｓｌａｎｄ）または電圧領域（Ｖｏｌｔａｇｅ  Ｄｏｍａｉｎ  ｏｒ  Ｒｅｇｉｏｎ）手法を用いる低電力ＩＣチップの場合、各電圧アイランドまたは電圧領域別に許容される電力消耗を反映し、最適なシフト周波数を提供することができるという効果を奏する。
【００５８】
さらに、ＩＣチップのテストにおいて使用されるスキャンパターンまたはスキャンセクションに関連付けられた最適シフト周波数を検索する際にＩＣチップの回路設計情報が必要ないので、ＩＣチップの回路設計情報がなくてもチップとスキャンパターンの集合のみでスキャンパターン別またはスキャンセクション別の最適なシフト周波数を提供することができるという効果を奏する。なお、スキャンセクションは、スキャンパターンの全部または一部で構成される。
【００５９】
さらに、ＩＣチップのテストの際に、初期に名目周波数のような予め設定した所定のシフト周波数を全てのスキャンセクションに割り当てた後、各スキャンセクションの電力消耗または電流消耗が一定以上であるスキャンパターンまたはスキャンセクションに対して最適なシフト周波数を検索する工程を行う場合、全体のスキャンパターンまたはスキャンセクションのそれぞれに対して最適なシフト周波数を検索する方法に比べ、処理時間を短縮できるという効果を奏する。
【００６０】
さらに、ＩＣチップのテストの際に、テスト結果が正常であるべきシフト周波数の範囲内で異常なテスト失敗が発生するフェイルホール（Ｆａｉｌ  Ｈｏｌｅ）の問題を解決するためにテスト時間が増加することを抑制できるという効果を奏する。フェイルホールの問題お解決するためにチップの故障検出率（Ｆａｕｌｔ  Ｃｏｖｅｒａｇｅ）が低下するかまたはフィールドエスケープ（Ｆｉｅｌｄ  Ｅｓｃａｐｅ）の問題が発生するのを抑制することができる。
【００６１】
さらに、チップの老化をより加速化するストレスまたはバーンイン（Ｂｕｒｎ−Ｉｎ）テストで、テスト時間を短縮し、テストの品質を上げることができる。その上、ストレスまたはバーンインテストに必要な時間を正確に予測でき、ストレスまたはバーンインテストの品質に関しても正確に予測できるという効果を奏する。
【００６２】
さらに、ＩＣチップのテストを介して収率向上のための情報を得るまたは収率を上げられるという効果を奏する。
【図面の簡単な説明】
【００６３】
【図１】スキャン設計方法を適用したＩＣチップの一例を示す概略図である。
【図２】本発明の少なくとも一つの実施例に係るＩＣチップテストシステムの構成を示すブロック図である。
【図３】本発明の少なくとも一つの実施例に係るＩＣチップテストシステムの構成を示すブロック図である。
【図４】本発明の少なくとも一つの実施例に係るスキャンパターンの一例を示す概略図である。
【図５】本発明の少なくとも一つの実施例に係るテストデータの分割方法を示す概略図である。
【図６】本発明の少なくとも一つの実施例に係るテストデータの分割方法を示す概略図である。
【図７】本発明の少なくとも一つの実施例に係るテストデータの分割方法を示す概略図である。
【図８】本発明の少なくとも一つの実施例に係るテストデータの分割方法を示す概略図である。
【図９】本発明の少なくとも一つの実施例に係るテストデータの分割方法を示す概略図である。
【図１０】本発明の少なくとも一つの実施例に係るスキャンセクションの数とスキャンテスト時間の低減率との関係を示すグラフである。
【図１１】本発明の少なくとも一つの実施例に係るＩＣチップのテスト時間を最小化するために各スキャンセクション別にシフト周波数を割り当てた一例を示す概略図である。
【図１２】本発明の少なくとも一つの実施例に係るＩＣチップのテスト時間を最小化するためにシフト周波数を検索する一例を示す概略図である。
【図１３】本発明の少なくとも一つの実施例に係るシフト周波数を決定するためにスキャン経路に入力するパターンの一例を示す概略図である。
【図１４】本発明の少なくとも一つの実施例に係るシフト周波数を決定するためにスキャン経路に入力するパターンの一例を示す概略図である。
【図１５】本発明の少なくとも一つの実施例に係るシフト周波数を決定するためにスキャン経路に入力するパターンの一例を示す概略図である。
【図１６】本発明の少なくとも一つの実施例に係るスキャンパターンの使用可能なシフト周波数を検索する方法の一例を示すグラフである。
【図１７】本発明の少なくとも一つの実施例に係る最適シフト周波数を検索しようとするスキャンパターンのシフト周波数を増加または減少させる際に、他のスキャンパターンのテスト結果が失敗である場合を示すグラフである。
【図１８】本発明の少なくとも一つの実施例に係る最適なシフト周波数を得るために必要なスキャンパターン、スキャンセクション、及びシフト周波数情報の構成に関する一例を示す概略図である。
【図１９】本発明の少なくとも一つの実施例に係る最適なシフト周波数を得るために必要なスキャンパターン、スキャンセクション、及びシフト周波数情報の構成に関する一例を示す概略図である。
【図２０】本発明の少なくとも一つの実施例に係る最適なシフト周波数を得るために必要なスキャンパターン、スキャンセクション、及びシフト周波数情報の構成に関する一例を示す概略図である。
【図２１】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２２】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２３】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２４】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２５】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２６】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２７】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２８】本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。
【図２９】本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法の一例を示すフローチャートである。
【図３０】本発明の少なくとも一つの実施例に係るチップテストの時間を最小化するためにスキャンセクション別の最適なシフト周波数を決定する方法の一例を示すフローチャートである。
【図３１】本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法のより具体的な工程の一例を示すフローチャートである。
【図３２】本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法で、テストの正常または失敗を把握する具体的な工程の一例を示すフローチャートである。
【図３３】本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法の一例を示すフローチャートである。
【図３４】本発明の少なくとも一つの実施例に係るＩＣチップのテスト時間を最小化する装置の構成を示すブロック図である。
【図３５】本発明の少なくとも一つの実施例に係る複数のスキャンセクションの最適なシフト周波数を並列で検索または決定する方法の一例を示す概略図である。
【図３６】本発明の少なくとも一つの実施例に係るＩＣチップのテストの時間を最小化するためにスキャンパターンを再配置する方法の一例を示す概略図である。
【図３７】本発明の少なくとも一つの実施例に係るバーンインテストシステムの構成を示すブロック図である。
【図３８】本発明の少なくとも一つの実施例に係るバーンインテストシステムの構成を示すブロック図である。
【図３９】本発明の少なくとも一つの実施例に係る単一スキャンシフト周波数を用いてバーンインテストを行う場合にＩＣチップに及ぶ温度の影響の一例を示す概略図である。
【図４０】本発明の少なくとも一つの実施例に係るスキャンパターン別の最適なシフト周波数を用いてバーンインテストを行う場合にＩＣチップに及ぶ温度の影響の一例を示す概略図である。
【図４１】スキャンセクション別のシフト周波数を最適化しない場合と最適化した場合のスキャンシフト動作時にＩＣチップの発熱状態を示すサーマルイメージである。
【図４２】テストデータの電力消耗を調整する前のバーンインテストの間に発生する電力消耗の一例を示すグラフである。
【図４３】テストデータの電力消耗を調整した後のバーンインテストの間に発生する電力消耗の一例を示すグラフである。
【図４４】本発明の少なくとも一つの実施例に係るバーンインテスト時間を最小化するためにスキャンセクション別の最適なシフト周波数を検索する方法の一例を示すフローチャートである。
【図４５】本発明の少なくとも一つの実施例に係るバーンインテスト時間を最小化する装置の一例を示すブロック図である。
【図４６】各スキャンパターンに対してＩＣチップの臨界電力消耗に接近する際のシフト周波数とシフト周波数増減方法を用いて最適化したシフト周波数に対する実験結果を比較した表である。
【図４７】ＩＣチップのテストの際に発生し得るテストフェイルホールの一例を示すグラフである。
【図４８】本発明の少なくとも一つの実施例に係るテストフェイルホール問題を解決する方法の一例を示すグラフである。
【図４９】本発明の少なくとも一つの実施例に係るテストフェイルホール問題を解決する方法の一例を示すフローチャートである。
【図５０】本発明の少なくとも一つの実施例に係るテストフェイルホール問題を解決する方法の一例を示すグラフである。
【図５１】本発明の少なくとも一つの実施例に係るテスト時間短縮及び収率向上のためのシフト周波数を検索する方法の一例を示すグラフである。
【発明を実施するための形態】
【００６４】
以下、添付図面を参照し、本明細書に開示された実施例を詳しく説明する。各図面の構成要素に参照符号を割り当てることにおいて、同一の構成要素に対しては、たとえ異なる図面上に示されていても、可能な限り同一の符号を割り当てている。また、本発明の実施例を説明することにおいて、関連した公知の構成または機能に関する具体的な説明が本発明の要旨を薄め得ると判断される場合には、その詳細な説明を省略する。
【００６５】
さらに、本発明の構成要素を説明することにおいて、第１、第２、Ａ、Ｂ、（ａ）、（ｂ）などの用語を用いることができる。このような用語は、当該構成要素を他の構成要素と区別するためのものであり、その用語によって当該構成要素の本質や順番などが限定されることではない。明細書全体で、ある部分がある構成要素を「含む」または「備える」ということは、特に反対の記載がない限り、他の構成要素を除外することではなく、他の構成要素をさらに含むことができるとの意味である。また、明細書に記載した「部」、「モジュール」などの用語は、少なくとも一つの機能や動作を処理する単位を意味し、このような処理単位は、ハードウェアやソフトウェアまたはハードウェア及びソフトウェアの組み合わせにより実現することができる。
【００６６】
図１は、スキャン設計方法を適用したＩＣチップ（１００）の一例を示す概略図である。
【００６７】
図１に示すように、ＩＣチップ（１００）は、組み合わせ回路（１１０）と順序回路（Ｓｅｑｕｅｎｔｉａｌ  Ｌｏｇｉｃ）を含む。順序回路は、複数のフリップフロップ（１２０、１３０、１４０）で構成される。それぞれのフリップフロップ（１２０、１３０、１４０）は、マルチプレクサ（ＭＵＸ：Ｍｕｌｔｉｐｌｅｘｅｒ）方式のスキャンフリップフロップを含む様々な方式で構成することができる。
【００６８】
ＩＣチップ（１００）は、メイン入力（ＰＩ：Ｐｒｉｍａｒｉ  Ｉｎｐｕｔ）ポート（１５０）、メイン出力（ＰＯ：Ｐｒｉｍａｒｙ  Ｏｕｔｐｕｔ）ポート（１５２）、スキャン活性化（ＳＥ：Ｓｃａｎ  Ｅｎａｂｌｅ）ポート（１６０）、スキャン入力ポート（１６２）、クロック（Ｃｌｏｃｋ）入力ポート（１６４）、スキャン出力ポート（１６６）などを含む。スキャン活性化ポート（１６０）とクロック入力ポート（１６４）はフリップフロップ（１２０、１３０、１４０）と接続される。それぞれのフリップフロップ（１２０、１３０、１４０）は、組み合わせ回路（１１０）と接続され、それぞれのフリップフロップに記憶されている値を組み合わせ回路（１１０）に出力し、組み合わせ回路（１１０）から出力された値を入力として受ける。
【００６９】
メイン入力ポート（１５０）及びメイン出力ポート（１５２）は、それぞれＩＣチップの正常な動作過程でデータを入力し、出力するためのポートである。
【００７０】
スキャン活性化ポート（１６０）は、スキャン活性化信号またはスキャン非活性化信号を入力するためのポートである。スキャン活性化信号またはスキャン非活性化信号によって、ＩＣチップは正常な動作を行うノーマル（Ｎｏｒｍａｌ）モード（または機能（Ｆｕｎｃｔｉｏｎａｌ）モード）になるか、またはＩＣチップをテストするスキャンモードになる。
【００７１】
スキャン入力ポート（１６２）は、ＩＣチップ（１００）をテストするためにスキャンパターンを入力するためのポートであり、スキャン出力ポート（１６６）は、スキャンパターンによるテスト結果を出力するためのポートである。スキャン出力ポートを介して出力されるビットパターンを出力スキャンパターン、出力パターン、またはスキャンテスト結果パターンという。
【００７２】
クロック入力ポート（１６４）は、スキャン入力ポート（１６２）を介して入力されるスキャンパターンをフリップフロップ（１２０、１３０、１４０）にシフト（Ｓｈｉｆｔ）してロードするか、または組み合わせ回路（１１０）の出力をキャプチャーしてフリップフロップ（１２０、１３０、１４０）に格納できるようにトリガー（Ｔｒｉｇｇｅｒ）機能を果たすクロック信号を入力するためのポートである。例えば、フリップフロップ（１２０、１３０、１４０）、クロック入力ポート（１６４）を介して入力されるクロック信号の立ち上がりエッジ（Ｒｉｓｉｎｇ  Ｅｄｇｅ）または立ち下がりエッジ（Ｆａｌｌｉｎｇ  Ｅｄｇｅ）によってトリガーされる。
【００７３】
スキャン入力ポート（１６２）から複数個のフリップフロップ（１２０、１３０、１４０）を経てスキャン出力ポート（１６６）につながる経路（点線で示した経路）をスキャンチェーン（Ｓｃａｎ  Ｃｈａｉｎ）またはスキャン経路（Ｓａｃｎ  Ｐａｔｈ）という。図１では単一スキャン経路を示しているが、複数のスキャン経路を用いることもできる。
【００７４】
機能モードの場合、組み合わせ回路（１１０）は、メイン入力ポート（１５０）を介してデータの入力を受け、メイン出力ポート（１５２）を介して結果を出力する動作を行う。機能モードで、フリップフロップ（１２０、１３０、１４０）は、クロック信号によって組み合わせ回路（１１０）の出力値の入力を受け、スキャンテスト時には、このような動作をスキャンキャプチャー（Ｓｃａｎ  Ｃａｐｔｕｒｅ）という。
【００７５】
スキャンモードで、スキャンパターンの各ビットはクロック信号によってスキャン経路上に存在するフリップフロップ（１２０、１３０、１４０）に順次シフトイン（Ｓｈｉｆｔ−Ｉｎ）され、またスキャン出力ポート（１６６）を介してシフトアウト（Ｓｈｉｆｔ−Ｏｕｔ）される。ここで、フリップフロップ（１２０、１３０、１４０）にスキャンパターンがシフトインされるのをロード（Ｌｏａｄ）といい、フリップフロップ（１２０、１３０、１４０）に記憶されている値がスキャン出力ポート（１６６）を介してシフトアウトされることをアンロード（Ｕｎｌｏａｄ）という。
【００７６】
例えば、ＩＣチップ内のスキャン経路上のフリップフロップ（１２０、１３０、１４０）の数が３個だとすると、各スキャンパターンの長さはスキャン経路上のフリップフロップの数と同一な３ビットの長さを有し、３ビットのスキャンパターンはクロック信号によって順次スキャン経路上のフリップフロップ（１２０、１３０、１４０）にシフトインされる。
【００７７】
即ち、クロック信号の立ち上がりエッジでフリップフロップに値が格納されるとすると、一番目のクロック信号の立ち上がりエッジで一番目のフリップフロップ（１４０）にスキャンパターンの一番目のビットが格納され、二番目のクロック信号の立ち上がりエッジで一番目のフリップフロップ（１４０）の出力値は二番目のフリップフロップ（１３０）に格納され、一番目のフリップフロップ（１４０）にはスキャンパターンの二番目のビット値が格納される。三番目のクロック信号の立ち上がりエッジで二番目のフリップフロップ（１３０）の出力値が三番目のフリップフロップ（１２０）に格納され、一番目のフリップフロップ（１４０）の出力値は二番目のフリップフロップ（１３０）に格納され、一番目のフリップフロップ（１４０）にはスキャンパターンの三番目のビット値が格納される。従って、３回のクロック信号で一つのスキャンパターンがスキャン経路上のフリップフロップ（１２０、１３０、１４０）にロードされる。同様に、３回のクロック信号でスキャン経路上のフリップフロップ（１２０、１３０、１４０）の値がスキャン出力ポート（１６６）を介してアンロードされる。
【００７８】
以下、スキャンテスト工程をより具体的に説明する。
【００７９】
（１）ＩＣチップ（１００）のメイン入力ポート（１５０）にメイン入力テストデータを印加する。
【００８０】
（２）スキャン活性化ポート（１６０）にスキャン活性化信号を印加し、ＩＣチップ（１００）をスキャンモードに設定する。
【００８１】
（３）スキャン入力ポート（１６２）にスキャンパターンをシフトインし、スキャン経路上のフリップフロップ（１２０、１３０、１４０）にスキャンパターンをロードする。スキャン経路にロードされたスキャンパターンは組み合わせ回路（１１０）に印加される。スキャンパターンが組み合わせ回路（１１０）に印加された後、メイン出力ポート（１５２）を介して出力される結果を予測したメイン出力値と比較し、比較結果が異なると、当該ＩＣチップを不良品として判定する。
【００８２】
（４）スキャン活性化ポート（１６０）にスキャン非活性化信号を印加し、ＩＣチップ（１００）をスキャンモードから機能モードに切り替える。機能モードでクロック信号が印加されると、フリップフロップ（１２０、１３０、１４０）は組み合わせ回路（１１０）の出力値をキャプチャーする。このような動作をスキャンキャプチャーといい、この時のモードをスキャンキャプチャーモードという。
【００８３】
（５）スキャン活性化ポート（１６０）にスキャン活性化信号を印加し、ＩＣチップ（１００）を再び機能モードからスキャンモードに切り替える。
【００８４】
（６）そして、スキャン経路上のフリップフロップ（１２０、１３０、１４０）にキャプチャーされた値をスキャン出力ポート（１６６）を介してシフトアウトすることでアンロードする。
【００８５】
（７）アンロードされた出力パターンと事前に知っている予測パターンを比較し、ＩＣチップ（１００）の正常動作可否を把握する。ここで、予測パターンは、ＩＣチップ（１００）が正常の場合にメイン入力テストデータとスキャンパターンを印加してスキャンキャプチャー動作を行った後にスキャン出力ポート（１６６）を介して出力されるスキャンパターンで、テストの前に知っている値または予測される結果パターンである。ステップ（３）での比較結果が同一で、ステップ（７）での比較結果が同一であれば、テスト結果が正常（ＰＡＳＳ）であるので、ＩＣチップは良品であり、そうでないと、ＩＣチップは不良品である。テスト正常（ＰＡＳＳ）は、ＩＣチップに異常がないと（Ｆａｕｌｔ−Ｆｒｅｅ）判断される場合を意味し、テスト失敗（ＦＡＩＬ）は、ＩＣチップに異常があると判断される場合を意味する。
【００８６】
図２及び３は、本発明が適用されるＡＴＥ（Ａｕｔｏｍａｔｉｃ  Ｔｅｓｔ  Ｅｑｕｉｐｍｅｎｔ）と呼ばれるＩＣチップテストシステムの一実施例の構成を示すブロック図である。
【００８７】
図２及び３に示すように、ＩＣチップテストシステムは、ホストコンピューター（２００、３００）、テスター本体（２１０、３１０）、テストヘッド（２２０、３２０）、及びインタフェースボード（２３０、３３０）を備える。テストのためにインタフェースボード（２３０、３３０）にセットされるテスト対象デバイス（ＤＵＴ：Ｄｅｖｉｃｅ  Ｕｎｄｅｒ  Ｔｅｓｔ）は、ウェハー上のＩＣまたはパッケージングされたＩＣチップなどである。ＤＵＴがウェハー上のＩＣチップの場合、プローバー（３５０）をさらに備える。以下、ＩＣ回路、ウェハー上のＩＣチップ、パッケージングされたＩＣチップなどを、説明の便宜上ＩＣチップまたはチップと称する。
【００８８】
テスター本体（２１０、３１０）は、全体のスキャンテストを制御する。例えば、テスター本体（２１０、３１０）はＤＵＴテストのためのセットアップ、ＤＵＴテストのための電気的信号の発生、ＤＵＴテスト結果信号の観測及び測定などの全般的な工程を制御する。テスター本体（２１０、３１０）は、中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、メモリ、ハードディスク、ユーザーインタフェースなどを含むコンピューターで実現することができ、実施例によってＤＵＴ（２４０、３４０）に電源を供給するデバイスパワーサプライ装置（Ｄｅｖｉｃｅ  Ｐｏｗｅｒ  Ｓｕｐｐｌｙ）をさらに含むことができる。
【００８９】
テスター本体（２１０、３１０）は、各種のディジタル信号を処理する信号処理プロセッサ（ＤＳＰ：Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）（不図示）とテストヘッド（２２０、３２０）を制御し、ＤＵＴ（２４０、３４０）に信号を印加する制御器及び信号発生器などの専用ハードウェア、ソフトウェア、またはファームウェアなどを含むことができる。テスター本体（２１０、３１０）は、メインフレームまたはサーバーとも呼ばれる。
【００９０】
ホストコンピューター（２００、３００）は、パーソナルコンピューター、ワークステーションなどのコンピューターであり、ユーザーがテストプログラムを実行させ、テスト工程を制御し、テスト結果を分析できるようにする装置である。一般に、ホストコンピューター（２００、３００）は、ＣＰＵ、メモリまたはハードディスクのような格納装置、及びユーザーインタフェースなどを含み、テスター本体（２１０、３１０）と有線または無線通信で接続される。ホストコンピューター（２００、３００）はテストを制御するための専用ハードウェア、ソフトウェア、及びファームウェアなどを含む。本実施例ではホストコンピューター（２００、３００）とテスター本体（２１０、３１０）を分けて図示しているが、ホストコンピューター（２００、３００）とテスター本体（２１０、３１０）は一つの装置で実現することもできる。
【００９１】
テスター本体（２１０、３１０）またはホストコンピューター（２００、３００）のメモリにはＤＲＡＭ、ＳＲＡＭ、フラッシュメモリなどを用いることができる。メモリには、ＤＵＴテストを行うためのプログラムとデータを格納することができる。
【００９２】
テスター本体（２１０、３１０）またはホストコンピューター（２００、３００）のソフトウェアまたはファームウェアは、スキャンテストのためのデバイスドライバープログラム、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）プログラム、ＤＵＴテストを行うプログラムで、ＤＵＴテストのためのセットアップ、ＤＵＴテストのための信号の発生、ＤＵＴテスト結果信号の観測、分析などを行うための命令コード（Ｉｎｓｔｒｕｃｔｉｏｎ  Ｃｏｄｅ）の形態でメモリに格納され、ＣＰＵによって実行される。
【００９３】
従って、スキャンパターンは、このようなプログラムによってＤＵＴに印加される。さらに、ＤＵＴテスト及びテスト結果のレポーティング及び分析データをプログラムを介しての自動実行で得ることができる。プログラムに用いられる言語として、Ｃ、Ｃ＋＋、Ｊａｖａなど、様々な言語を用いることができる。プログラムは、ハードディスク、磁気テープ、またはフラッシュメモリなどの記録装置に格納することができる。
【００９４】
テスター本体（２１０、３１０）またはホストコンピューター（２００、３００）のＣＰＵは、プロセッサ（Ｐｒｏｃｅｓｓｏｒ）であり、メモリに格納されたソフトウェアまたはプログラムのコードを実行する。例えば、キーボードやマウスなどのユーザーインタフェースを介してユーザー命令を受けると、ＣＰＵはユーザーの命令を分析し、該当する作業をソフトウェアまたはプログラムを介して行った後、その結果をスピーカー、プリンター、モニターなどのユーザーインタフェースを介してユーザーに提供する。
【００９５】
テスター本体（２１０、３１０）またはホストコンピューター（２００、３００）のユーザーインタフェースは、ユーザーと装置との間で情報を取り交わし、命令を伝達できるようにする。例えば、キーボード、タッチスクリーン、マウスなどのようなユーザー入力のためのインタフェース装置と、スピーカー、プリンター、モニターなどのような出力インタフェース装置などがある。
【００９６】
テストヘッド（２２０、３２０）は、テスター本体（２１０、３１０）とＤＵＴ（２４０、３４０）との間に電気的信号を転送するためのチャネルなどを含む。テストヘッド（２２０、３２０）の上部にはインタフェースボード（２３０、３３０）が備えられる。パッケージングされたＩＣチップに用いられるインタフェースボードを通常ロードボード（Ｌｏａｄ  Ｂｏａｒｄ）といい、ウェハー上のＩＣチップのテストに用いられるインタフェースボードを通常プローブカード（Ｐｒｏｂｅ  Ｃａｒｄ）という。
【００９７】
本発明の少なくとも一つの実施例で、ホストコンピューター（２００、３００）はＩＣチップテスト装置（２５０、３６０）を含む。
【００９８】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）は、スキャンパターン集合に含まれる少なくとも二つ以上のスキャンセクションのうち、使用可能なシフト周波数を検索する対象である対象スキャンセクションをスキャン経路にシフトしてスキャンテストの結果が正常または失敗であるシフト周波数を検索するシフト周波数検索部（２５１、３６１）を備える。
【００９９】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）で、シフト周波数検索部（２５１、３６１）は、対象スキャンセクションに対するシフト周波数の検索時に、対象スキャンセクションのシフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、スキャンテストの結果が正常または失敗であるシフト周波数を検索する。
【０１００】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）で、シフト周波数検索部（２５１、３６１）は、対象スキャンセクションに対し使用可能なシフト周波数の検索時に、対象スキャンセクションのシフト周波数を増加または減少しながらスキャンテストの結果が正常から失敗に変わる領域または失敗から正常に変わる領域のシフト周波数を検索する。
【０１０１】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）で、シフト周波数検索部（２５１、３６１）は、対象スキャンセクションに対して使用可能なシフト周波数の検索時に、対象スキャンセクションに対して第１シフト周波数を用いて得られた第１スキャンテストの結果と、対象スキャンセクション以前の何れか一つのスキャンセクションに対して第１シフト周波数とは異なる第２シフト周波数を用いて得られた第２スキャンテストの結果と、が両方とも正常な場合に第１シフト周波数を対象スキャンセクションに対して使用可能なシフト周波数として決定する。
【０１０２】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）は、第１スキャンセクションを含む第１スキャンパターンをＩＣチップのスキャン経路にシフトしてテストを行う第１テスト工程及び第１スキャンセクション以降の第２スキャンセクションを含む第２スキャンパターンをスキャン経路にシフトしてテストを行う第２テスト工程を実行して、第２スキャンセクションに対して使用可能なシフト周波数を検索するシフト周波数検索部（２５１、３６１）を備える。
【０１０３】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）で、シフト周波数検索部（２５１、３６１）は、第１テスト工程で第１スキャンセクションを第１シフト周波数でスキャン経路にシフトし、第２テスト工程で第２スキャンセクションを第１シフト周波数とは異なる第２シフト周波数でスキャン経路にシフトし、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第１テスト工程でのテスト結果と第２テスト工程でのテスト結果とが両方とも正常な場合に、第２シフト周波数を第２スキャンセクションに対して使用可能なシフト周波数として決定する。
【０１０４】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）で、第１スキャンセクションは、第１スキャンパターンまたは第１スキャンパターンの一部であり、第２スキャンセクションは、第２スキャンパターンまたは第２スキャンパターンの一部である。
【０１０５】
本発明の少なくとも一つの実施例に係るＩＣチップテスト装置（２５０、３６０）で、シフト周波数検索部（２５１、３６１）は、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第２シフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、第２スキャンセクションに対する使用可能なシフト周波数を検索する。
【０１０６】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法は、スキャンパターン集合に含まれる少なくとも二つ以上のスキャンセクションのうち、使用可能なシフト周波数を検索する対象である対象スキャンセクションをスキャン経路にシフトしてスキャンテストの結果が正常または失敗であるシフト周波数を検索するシフト周波数検索工程を備える。
【０１０７】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法において、シフト周波数検索工程は、対象スキャンセクションに対するシフト周波数の検索時に、対象スキャンセクションのシフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、スキャンテストの結果が正常または失敗であるシフト周波数を検索する工程を含む。
【０１０８】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法において、シフト周波数検索工程は、対象スキャンセクションに対し使用可能なシフト周波数の検索時に、対象スキャンセクションのシフト周波数を増加または減少しながらスキャンテストの結果が正常から失敗に変わる領域または失敗から正常に変わる領域のシフト周波数を検索する工程を含む。
【０１０９】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法において、シフト周波数検索工程は、対象スキャンセクションに対して使用可能なシフト周波数の検索時に、対象スキャンセクションに対して第１シフト周波数を用いて得られた第１スキャンテストの結果と、対象スキャンセクション以前の何れか一つのスキャンセクションに対して第１シフト周波数とは異なる第２シフト周波数を用いて得られた第２スキャンテストの結果と、が両方とも正常な場合に第１シフト周波数を対象スキャンセクションに対して使用可能なシフト周波数として決定する工程を含む。
【０１１０】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法は、第１スキャンセクションを含む第１スキャンパターンをＩＣチップのスキャン経路にシフトしてテストを行う第１テスト工程及び第１スキャンセクション以降の第２スキャンセクションを含む第２スキャンパターンをスキャン経路にシフトしてテストを行う第２テスト工程を実行して、第２スキャンセクションに対して使用可能なシフト周波数を検索するシフト周波数検索工程を備える。
【０１１１】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法において、シフト周波数検索工程は、第１テスト工程で第１スキャンセクションを第１シフト周波数でスキャン経路にシフトし、第２テスト工程で第２スキャンセクションを第１シフト周波数とは異なる第２シフト周波数でスキャン経路にシフトする工程と、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第１テスト工程でのテスト結果と第２テスト工程でのテスト結果とが両方とも正常な場合に、第２シフト周波数を第２スキャンセクションに対して使用可能なシフト周波数として決定する工程と、を含む。
【０１１２】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法において、第１スキャンセクションは、第１スキャンパターンまたは第１スキャンパターンの一部であり、第２スキャンセクションは、第２スキャンパターンまたは第２スキャンパターンの一部である。
【０１１３】
本発明の少なくとも一つの実施例に係るＩＣチップのテスト方法において、シフト周波数検索工程は、第２スキャンセクションに対する使用可能なシフト周波数の検索時に、第２シフト周波数を、スキャン経路にシフトする他のスキャンセクションのうち少なくとも一つのスキャンセクションとは異なるように増加または減少して、または異なるシフト周波数に設定して、第２スキャンセクションに対する使用可能なシフト周波数の検索する工程を含む。
【０１１４】
図２及び３ではＩＣチップテスト装置（２５０、３６０）がホストコンピューター（２００、３００）に含まれると説明しているが、これは単に一つの実施例であり、プロセッサを有する別途のコンピューターがＩＣチップテスト装置（２５０、３６０）を含み、ホストコンピューター（２００、３００）またはテスター本体（２１０、３１０）に接続されて機能を行うこともできる。
【０１１５】
図２及び３に示すＩＣチップテストシステムは、本発明の理解を深めるための一つの例に過ぎないので、それぞれの構成を統合して一体型に実現するか、または一つの構成を複数の構成に分離して実現するなど、実施例によって様々な設計変更が可能である。
【０１１６】
スキャンパターンは、スキャンテストを行うためにスキャン経路に入力されるビットパターンまたはスキャン経路から出力されるビットパターンを意味する。
【０１１７】
スキャンパターンのビットの長さは、１回のスキャンテスト動作のために必要なビットパターンの長さである。例えば、スキャンパターンのビットの長さはスキャンキャプチャー動作を行う前までスキャン経路にシフトされるビットパターンのビットの長さと同一であっても良い。他には、スキャンパターンのビットの長さは、スキャン経路上のフリップフロップなどのようなビット記憶素子（Ｓｔｏｒａｇｅ  Ｅｌｅｍｅｎｔ）の数と同一であっても良い。スキャンパターンのビットの長さは、以上の説明に限定されず、スキャンテスト回路によって様々な形態に設定することができる。
【０１１８】
本発明の実施例は、図１に示すＩＣチップのみならず、スキャン経路にビットパターンをシフトインしてスキャン経路から出力パターンをシフトアウトする様々な種類のチップに適用することができる。
【０１１９】
例えば、本発明の実施例は、スキャンパターンをスキャン経路にシフトインする動作、スキャンキャプチャー動作、そしてキャプチャーされたビットパターンをシフトアウトする動作が行える回路を含む様々な種類のチップに適用することができる。
【０１２０】
図４は、本発明の少なくとも一つの実施例に係るチップテストに適用可能なスキャンパターンの一例を示す概略図である。
【０１２１】
図４に示すように、スキャンモードでシフトイン動作とシフトアウト動作をそれぞれ行う場合にかかる時間を短縮するためにシフトインとシフトアウト動作が同時に行われる。即ち、ロードとアンロード動作が同時に行われる。
【０１２２】
例えば、入力パターンＫ（４３０）がスキャン入力ポートを介してスキャン経路にシフトインされロードされるとき、入力パターンＫ−１（４００）によるテスト結果がスキャン出力ポートを介して同時にシフトアウトされアンロードされる。この時、アンロードされた出力パターンは入力パターンＫ−１（４００）に対する予測パターンＫ−１（４４０）と比較される。一般に入力パターンＫ−１（４００）に対する予測パターンＫ−１（４４０）と入力パターンＫ（４３０）はテストデータまたはファイルでペアーで管理することができる。
【０１２３】
本発明の少なくとも一つの実施例において、シフトインとシフトアウト動作を重ねて（Ｏｖｅｒｌａｐｐｉｎｇ）スキャンテストを行うために、スキャン入力ポートを介してシフトインされる入力パターンＫ（４３０）と入力パターンＫ−１（４００）に対する予測パターンをペアーで管理する。このように、スキャンパターンは互いに順番を有することができる。実施例によっては、スキャンパターンは順番なしに様々な方法で再配置することができる。
【０１２４】
本発明の少なくとも一つの実施例において、一番目のスキャンパターンをスキャン経路にシフトインするとき、同時にシフトアウトされる出力パターンはドンケア（Ｄｏｎ’ｔ  Ｃａｒｅ）パターンまたはテスト対象チップのリセットによるスキャン経路状態値である。
【０１２５】
スキャンテスト時間を最小化するためのもう一つの方法として、スキャンテストのためのスキャンパターンの総数を減らす方法とスキャンシフト速度を上げる方法がある。
【０１２６】
ここで、スキャンシフト速度を上げるのは、スキャンパターンのシフトインまたはシフトアウトのシフト周波数上げるかシフト周波数の周期を短くすることを意味する。反対に、スキャンシフト速度を下げるのは、シフト周波数を下げるかシフト周波数の周期を長くすることを意味する。さらに、スキャンシフト速度を最適化するのは、シフト周波数を最適化するかシフト周波数の周期を最適化することを意味する。
【０１２７】
シフト周波数の増加または減少はシフト周波数の周期の減少または増加と実質的に同一であるので、以下では、説明の便宜のため、主にシフト周波数の増減の観点からスキャンテスト時間を最小化する方法について説明する。従って、以下では、明視的な記載がないとしても、周波数の増加または減少は周波数の周期の減少または増加と同等に解釈されても良いし、反対に、周波数の周期の増加または減少は周波数の減少または増加と同等に解釈されても良い。以下、周波数の周期は単に周期とも称する。
【０１２８】
図５ないし９は、本発明の少なくとも一つの実施例に係るチップテスト時間を最小化するためにテストデータを少なくとも一つ以上のスキャンセクションに分割する方法の様々な例を示す概略図である。
【０１２９】
図５に示すように、ＩＣチップのテストのためにスキャン経路にシフトされるテストデータ（５００）のビットパターンを複数のスキャンセクション（５１０、５１２、５１４、５１６、５１８）に分割し、スキャンセクション（５１０、５１２、５１４、５１６、５１８）別の最適なシフト周波数を決定してスキャンテストに適用することで、スキャンテスト時間を短縮することができる。
【０１３０】
本発明の少なくとも一つの実施例において、テストデータ（５００）のビットパターンは、図６に示すような複数のスキャンパターンで構成することができる。
【０１３１】
図６に示すように、ＩＣチップのテストのために複数のスキャンパターンを用いることができる。スキャンセクションは、少なくとも一つ以上のスキャンパターンで構成するかスキャンパターンの一部で構成することができ、スキャンセクション別に最適なシフト周波数を決定してスキャンテストに適用することで、スキャンテスト時間をより短縮することができる。
【０１３２】
第１実施例で、スキャンセクション（６００）は、一つのスキャンパターンで構成され、スキャンパターンと一対一に対応する。即ち、スキャンパターンがそのままスキャンセクションになる。
【０１３３】
第２実施例で、スキャンセクション（６１０）は、二つのスキャンパターンを含むことができる。スキャンセクションに含まれるスキャンパターンの数は実施例によって変更可能である。
【０１３４】
第３実施例で、スキャンセクション（６２０）は、第１スキャンパターンの一部と第２スキャンパターンの一部で構成することができる。
【０１３５】
第４実施例で、スキャンセクション（６３０）は、一つのスキャンパターンの一部で構成することができる。
【０１３６】
第５実施例で、一つのスキャンパターンを二つのスキャンセクション（６４０、６５０）に分割することができる。一つのスキャンパターンに含まれるスキャンセクションの数は実施例によって変更可能である。
【０１３７】
テストデータは、様々な実施例に係るスキャンセクション（６００、６１０、５２０、６３０、６４０、６５０）のうち何れの形態に分割できるし、これらの実施例を二つ以上適用して分割することができる。例えば、図６に示すようにＮ個のスキャンパターンで構成されたテストデータは、一つのスキャンパターンを含む第１スキャンセクション（６００）、二つのスキャンパターンを含む第２スキャンセクション（６１０）、一つのスキャンパターンの一部を含む第３スキャンセクション（６４０）及び第４スキャンセクション（６５０）に分割することができる。
【０１３８】
図７に示すように、テストデータ（７００）のビットパターンで同一で連続したビット値を有する区間をスキャンセクション（７０２、７０４、７０６、７０８、７１０）に分割することができる。同一のビット値が連続してスキャン経路にシフトされると、スキャン経路のビット値スイッチング動作（Ｓｗｉｔｃｈｉｎｇ  Ａｃｔｉｖｉｔｉｅｓ）が減り、電力消耗が低くなるので、連続したビット値を有するスキャンセクションに高いシフト周波数を割り当てることができる。
【０１３９】
例えば、テストデータ（７００）のビットパターンで、ビット値が０から１に、または１から０に変わる境界を基準に、テストデータ（７００）は少なくとも一つ以上のスキャンセクション（７０２、７０４、７０６、７０８、７１０）に分割することができる。さらに、０または１のビット値が連続するビットパターンの区間（７１０）内でＭ（Ｍは、整数）個のビットを一つのスキャンセクション（７２０、７２２）に分割することができる。
【０１４０】
さらに、テストデータのビットパターンで同一で連続したビット値を有する区間の長さが所定の長さより短いと、この区間をスキャンセクションとして分割しないで、少なくとも二つ以上の区間（７０２、７０４）を一つのスキャンセクション（７０３）に分割することができる。
【０１４１】
図８に示すように、スキャンセクション（８１０）は、再び複数のサブスキャンセクション（Ｓｕｂ  Ｓｃａｎ  Ｓｅｃｔｉｏｎ）（８１２、８１４）に分割することができる。例えば、スキャンセクション（８１０、８２０）別に検索した最適シフト周波数のうち相対的に低いシフト周波数を有するスキャンセクション（８１０）を再び複数のサブスキャンセクション（８１２、８１４）に分割し、サブスキャンセクション（８１２、８１４）に対して再び最適なシフト周波数を検索することができる。
【０１４２】
図９に示すように、テストデータ（９００、９１０）の各スキャンセクションに適用する最適なシフト周波数を検索するのにかかる予想時間（以下、「予想所要時間」と称する）を考慮してテストデータを分割するスキャンセクションの数を決めることができる。スキャンセクションの数が多いほど全体のスキャンセクションの最適なシフト周波数を検索するのにかかる予想所要時間が長くなる。予想所要時間は、スキャンセクションの数と予想所要時間との関係を表す前もって設定された数式によって算出することができる。
【０１４３】
図９に示す例で、最適なシフト周波数を検索するのにＡ時間の制約があるとすると、予想所要時間がＡ時間以下になるようにテストデータ（９００）を分割するスキャンセクションの数Ｎが決められる。最適なシフト周波数を検索するのにＢ（Ａ＞Ｂ）時間の制約があるとすると、予想所要時間がＢ時間以下になるようにテストデータ（９１０）を分割するスキャンセクションの数Ｍ（Ｎ＞Ｍ）が決められる。
【０１４４】
テストデータ（９００）を分割する数がＮ個に決まると、テストデータ（９００）は決められてＮ個のスキャンセクションに分割される。例えば、テストデータ（９００）を均等なビットの長さを有するＮ個のスキャンセクションに分割する方法、図７に示すように同一で連続したビット値を有する区間をスキャンセクションに分割するが、区間の数がＮ個になるまで分割する方法など、様々な方法を適用することができる。
【０１４５】
予想所要時間を算出するためには、次のような情報を用いることができる。
・最適なシフト周波数を検索するための開始周波数
・最適なシフト周波数を検索するための終了周波数
・最適なシフト周波数を検索するための周波数の増減単位
・最適なシフト周波数を検索するための周波数の増減方法（連続的な増減または二進検索方法による増減など）
・テストデータに含まれたスキャンパターンの数（ＳＰＮ）
・スキャンパターンのビットの長さ（ＳＢＬ）
・テストデータをスキャンセクションに分割する方法や基準（一定のビットの長さ単位で分割、一定の数で分割、またはビット値が変わる境界を基準に分割など）
・スキャンセクションの数（ＳＳＮ）
・最適なシフト周波数を検索する方法を実行する装置の性能（例えば、プロセッサの性能（ＣＰＵ速度など）、メモリやハードディスクの容量及び速度など）
・最適なシフト周波数を検索する方法を実行する装置のデータ入出力時間などを考慮したその他のマージン時間
【０１４６】
本発明の少なくとも一つの実施例において、最適なシフト周波数を検索する際に開始周波数から終了周波数まで一定の間隔で順次増加する方法を用いるとすると、予想所要時間を算出するための数式の一例は次のようである。
【０１４７】
（数１）
予想所要時間（Ｔ）＝ＳＳＮ＊ＳＰＮ＊ＳＢＬ＊ＳＦＰ＊ＦＮ
ここで、ＳＳＮはスキャンセクションの数、ＳＰＮはスキャンパターンの数、ＳＢＬはスキャンパターンのビットの長さ、ＳＦＰはシフト周波数の周期、ＦＮはスキャンセクション当り最適なシフト周波数を検索するためのシフト周波数の増加回数を表す。
【０１４８】
数１で予想所要時間が与えられると、これを満足させるスキャンセクションの数を決めることができる。
【０１４９】
図１０は、本発明の少なくとも一つの実施例に係るスキャンセクションの数とスキャンテスト時間の低減率との関係を示すグラフである。
【０１５０】
図１０に示すように、スキャンセクションの数やスキャンセクションの分割方法によるスキャンテスト時間減少率の推移情報を用いてテストデータのスキャンセクションの分割数を決めることができる。シフト周波数が最適化されたスキャンセクションの数が多いほど、テストデータを用いたスキャンテストの時間減少率が高くなる。
【０１５１】
図１０で、縦軸はテストデータ全体に単一シフト周波数（Ｃｏｎｓｔａｎｔ  Ｓｈｉｆｔ  Ｆｒｅｑｕｅｎｃｙ）を用いる場合にかかるスキャンテスト時間対スキャンセクション別に最適なシフト周波数を用いる場合かかるスキャンテスト時間の減少率である。横軸はシフト周波数が最適化されたスキャンセクションの数を表す。
【０１５２】
テストデータを分割するスキャンセクションの数が多いほどスキャンセクションの平均ビットの長さは短くなる。そして、スキャンセクションのビットの長さが短いほど最適なシフト周波数は高くなり、スキャンテスト時間をより短縮することができる。
【０１５３】
以上で考察したスキャンセクションの様々な分割方法は、本発明の理解を深めるための実施例であり、本発明が図５ないし１０に示す方法に限定されるものではない。図５ないし１０に示す方法以外にもテストデータを分割する様々な方法を適用できるのは言うまでもない。
【０１５４】
図１１は、本発明の少なくとも一つの実施例に係るＩＣチップのテスト時間を最小化するために各スキャンセクション別にシフト周波数を割り当てた一例を示す概略図である。
【０１５５】
図１１に示すように、複数のシフト周波数が各スキャンセクションに割り当てられる。従来のスキャンテストの場合、テストデータの全てのスキャンパターンをＩＣチップのスキャン経路に正常にシフトできる単一シフト周波数が用いられている。このような単一シフト周波数を名目（Ｎｏｍｉｎａｌ）シフト周波数ともいう。
【０１５６】
一般に、名目周波数はＡＴＰＧソフトウェアでスキャンパターンを作成するときに用いられるシフト周波数またはこれを基準に若干調整したシフト周波数であり、ＩＣチップをテストするための全てのスキャンパターンをＩＣチップのスキャン経路に正常にシフトできる単一周波数で、比較的に低い周波数（例えば、約５ＭＨｚ）である。
【０１５７】
従って、名目周波数をテストデータを構成する数千ないし数万個以上のスキャンパターンにそのまま用いる場合、スキャンテスト時間が相当かかることになり、特にＩＣチップの量産テストの場合には、ＩＣチップの原価と市場進入時間（Ｔｉｍｅ−ｔｏ−Ｍａｒｋｅｔ）に相当な影響を与えることになる。例えば、１個のＩＣチップをテストするのに２秒がかかるとすると、１千万個チップを順次テストすると約５、５５６時間、即ち、約２３１日がかかる。高価の装置を用いて数個のチップを同時にテストしても比較的長いテスト時間が必要である。通常ＩＣチップテストサービス業者は使用するテスト装置の台数とテスト時間に基づいて費用を請求するので、チップテストにかかる時間はチップの原価に大きな影響を及ぼすことになる。
【０１５８】
このような問題を解決するために、名目シフト周波数を単に上げる場合、スキャンパターンをシフトインまたはシフトアウトする際に発生する電力消耗がＩＣチップが許容する電力消耗の範囲から外れることがあるので、ノーマルなスキャンテストを行うことができなくなる場合がある。さらに、オーバーシフト周波数によってクリティカル経路遅延時間問題、パワーサプライノイズの影響、信号ライン間の干渉影響などにより、良品を不良品と判定するオーバーキル問題が発生する場合がある。これは、ＩＣチップの量産において大変重要な収率と原価に影響を及ぼすことになる。
【０１５９】
従って、本発明の実施例は、全体のスキャンパターンに対して名目シフト周波数のような単一のシフト周波数を適用するのではなく、スキャンセクション別にスキャン経路に正常にシフトできる最適なシフト周波数を割り当てる。スキャンセクション別に最適なシフト周波数を検索する工程は、図１２以下を参照し、より詳しく説明する。最適なシフト周波数は、スキャンセクションに対して使用可能な最大シフト周波数またはこれより低いシフト周波数を意味する。
【０１６０】
図１１に示す例で、スキャンセクション１にはシフト周波数Ａが割り当てられ、スキャンセクション２にはシフト周波数Ｂが割り当てられる。スキャンセクション３には、スキャンセクション１と同様にシフト周波数Ａが割り当てられる。このように、各スキャンセクションには同一なシフト周波数または互いに異なるシフト周波数を割り当てられる。
【０１６１】
例えば、一つのスキャンパターンが複数のスキャンセクションに分割された場合に、一つのスキャンパターンに複数のシフト周波数が割り当てられる。図６を参照すると、一つのスキャンパターンに属する二つのスキャンセクション（６４０、６５０）には互いに異なるシフト周波数が割り当てられる。即ち、一つのスキャンパターンに二つのシフト周波数が割り当てられる。
【０１６２】
シフト周波数が割り当てられたスキャンセクションは、実施例によってはセクショングループに統合することができる。例えば、二番目のスキャンセクションと三番目のスキャンセクションをセクショングループとし、各スキャンセクションのシフト周波数ＡとＢのうちより低いシフト周波数以下を当該セクショングループに割り当てることができる。
【０１６３】
スキャンテスト工程でメイン入力ポートにメイン入力テストデータの印加及びスキャン経路にスキャンパターンを入力した後でメイン出力からのテスト結果の観察は、以下の実施例のチップテスト工程に適用される場合と適用されない場合がある。
【０１６４】
図１２は、本発明の少なくとも一つの実施例に係るＩＣチップのテスト時間を最小化するためにシフト周波数を検索する一例を示す概略図である。
【０１６５】
まず、入力パターン、スキャンセクション、スキャンパターン、及び出力パターンとの関係について説明する。
【０１６６】
入力パターン（１２０２、１２０４、１２０６）は、スキャン経路（１２１０）に入力されるビットパターンである。図１２で、シフト周波数を決定する対象である。スキャンセクションＫは入力パターンＫ（１２０４）と一対一に対応する。最適なシフト周波数を検索または決定しようとするスキャンセクションＫ（以下、「対象スキャンセクションＫ」と称する）を含む入力パターンＫ（１２０４）の前または後に位置するビットパターンは、対象スキャンセクションに対する補助スキャンセクションまたは補助ビットパターンと称することができる。
【０１６７】
（スキャンセクションとスキャンパターンが一対一対応する場合の入力パターン）
対象スキャンセクションＫ（１２０４）がスキャンパターンＭと一対一に対応する場合に、入力パターンＫ−１（１２０２）、入力パターンＫ（１２０４）、及び入力パターンＫ＋１（１２０６）はそれぞれスキャンパターンＭ−１、スキャンパターンＭ、及びスキャンパターンＭ＋１と一対一に対応することができる。
【０１６８】
（スキャンセクションとスキャンパターンが一対一対応する場合の出力パターンＫ）
対象スキャンセクションＫ（１２０４）がスキャンパターンＭと一対一に対応する場合に、対象スキャンセクションＫ（１２０４）に対するスキャン経路（１２１０）の出力パターンはスキャンパターンＭに対するスキャン経路（１２１０）の出力パターンＫ（１２２４）に該当する。出力パターンＫ（１２２４）は、対象スキャンセクションＫ（１２０４）に対するスキャンキャプチャー結果パターンまたはスキャンパターンＭがスキャン経路からそのまま出力されたパターンである。
【０１６９】
（スキャンセクションとスキャンパターンが一対一対応する場合の出力パターンＫ−１）
対象スキャンセクションＫ（１２０４）がスキャンパターンＭと一対一に対応する場合、入力パターンＫ−１（１２０２）に対するスキャン経路の出力パターンはスキャンパターンＭ−１に対するスキャン経路の出力パターンＫ−１（１２２２）に該当する。出力パターンＫ−１（１２２２）は、スキャンパターンＭ−１に対するスキャンキャプチャー結果またはスキャンパターンＭ−１がスキャン経路からそのまま出力されたパターンである。
【０１７０】
（スキャンセクションとスキャンパターンが一対一対応する場合の出力パターンＫ＋１）
対象スキャンセクションＫ（１２０４）がスキャンパターンＭと一対一に対応する場合、入力パターンＫ＋１（１２０６）に対するスキャン経路の出力パターンは、スキャンパターンＭ＋１に対するスキャン経路の出力パターンＫ＋１である。出力パターンＫ＋１は、スキャンパターンＭ＋１に対するスキャンキャプチャー結果またはスキャンパターンＭ＋１がスキャン経路からそのまま出力されたパターンである。
【０１７１】
（スキャンセクションがスキャンパターンの一部の場合の入力パターンＫ−１、Ｋ＋１）
例えば、図１４に示すように、対象スキャンセクションＫ（１２０４）がスキャンパターンＭの一部である場合に、入力パターンＫ−１（１２０２）は、スキャンパターンＭ−１及びスキャンパターンＭからスキャンセクションＫ（１２０４）以外一部を含むことができる。入力パターンＫ＋１は、スキャンパターンＭ＋１及びスキャンパターンＭからスキャンセクションＫ（１２０４）以外の一部を含むことができる。
【０１７２】
（スキャンセクションがスキャンパターンの一部の場合の出力パターンＫ）
対象スキャンセクションＫ（１２０４）が、図１４に示すように、スキャンパターンＭの一部である場合、対象スキャンセクションＫ（１２０４）に対するスキャン経路の出力パターンＫ（１２２４）は、対象スキャンセクションＫ（１２０４）に対するスキャンキャプチャー結果パターンまたはスキャンセクションＫが含まれたスキャンパターンＭに対するスキャンキャプチャー結果パターンである。或いは、出力パターンＫ（１２２４）は、スキャンセクションＫ（１２０４）がスキャン経路からそのまま出力されたパターンまたはスキャンセクションＫ（１２０４）が含まれたスキャンパターンＭがスキャン経路からそのまま出力されたパターンである。
【０１７３】
（スキャンセクションがスキャンパターンの一部の場合の出力パターンＫ−１、Ｋ＋１）
対象スキャンセクションＫ（１２０４）が、図１４に示すように、スキャンパターンＭの一部である場合、入力パターンＫ−１（１２０２）に対するスキャン経路の出力パターンＫ―１（１２２２）は、スキャンパターンＭ―１に対する出力パターンまたはスキャンパターンＭ―１及びスキャンパターンＭの一部に対する出力パターンである。さらに、入力パターンＫ＋１（１２０６）に対するスキャン経路の出力パターンＫ＋１は、スキャンパターンＭ＋１に対する出力パターンまたはスキャンパターンＭ＋１及びスキャンパターンＭの一部に対する出力パターンである。他の例では、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）に含まれたスキャンパターンＭの一部に対するスキャン経路の出力パターンは、対象スキャンセクションＫ（１２０４）が含まれたスキャンパターンＭに対するスキャン経路の出力パターンに反映される。さらにほかの例では、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）に対する出力パターンは、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）がスキャン経路からそのまま出力されたパターンである。
【０１７４】
（スキャンセクションが複数のスキャンパターンにわたる場合）
例えば、図１５に示すように、対象スキャンセクションＫ（１２０４）が複数のスキャンパターンにわたる場合がある。このような場合、入力パターンＫ−１（１２０２）は、スキャンパターンＭ―１から対象スキャンセクションＫ（１２０４）の部分を除いた部分を含み、入力パターンＫ＋１（１２０６）は、スキャンパターンＭ＋１から対象スキャンセクションＫ（１２０４）の部分を除いた部分を含む。この場合、各スキャンパターンにかかっている対象スキャンセクションＫ（１２０４）の各部分に対して最適なシフト周波数をそれぞれ検索し、対象スキャンセクションＫ（１２０４）に対して割り当てられる最適なシフト周波数を決めることができる。
【０１７５】
以上の例は本発明の理解を深めるための例に過ぎないので、本発明はこれに限定されない。さらに、スキャンパターンは、図５ないし１０を参照して説明したように、様々な形態のスキャンセクションに分割することができ、スキャンセクションの分割形態により入力パターンＫとその前後に位置する入力パターンＫ−１または入力パターンＫ＋１の形態も適切に変えることができる。即ち、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）は、少なくとも一つ以上のスキャンセクションで構成することができる。
【０１７６】
図１２は、図４を参照して説明したシフトインとシフトアウトが重なって行われる場合にスキャンテスト時間を最小化するための一例を示す。図１２は本発明の少なくとも一つの実施例に係る例を説明するためのもので、本発明は図４を参照して説明したシフトインとシフトアウトが同時に行われる場合に限定されないのは言うまでもない。
【０１７７】
ＩＣチップのスキャンテストにおいては、入力パターン（１２００）に対するテスト結果パターン（１２２０）を予測パターン（１２３０）と比較してテスト結果が正常か否かを判断する。即ち、入力パターン（１２００）をスキャン経路（１２１０）にロードした後、キャプチャー動作を行って得られた結果パターン（１２２０）をアンロードするか、入力パターンをロードした後、キャプチャー動作なしにアンロードし、予測パターン（１２３０）とアンロードされた結果パターン（１２２０）とを比較してテスト正常可否を判断する。
【０１７８】
本発明の少なくとも一つの実施例において、スキャンパターンまたはスキャンセクションに対するシフト周波数の最適化のためには、対象スキャンパターンまたは対象スキャンセクションがスキャン経路にシフトインされる時、同時に（または順次に）シフトアウトされる出力パターンも正常であるか確認する。例えば、対象スキャンパターン対象スキャンセクションが増加したシフト周波数でスキャン経路に正常にシフトインされても増加したシフト周波数でシフトアウトされる以前の入力パターンに対するテスト結果パターンにエラーが発生する場合があるからである。
【０１７９】
図１２に示す例で、現在シフト周波数を決める対象であるスキャンセクションＫ（１２０４）が特定のシフト周波数でスキャン経路に正常にシフトインされるのかを確認するために、入力パターンＫ−１（１２０２）と入力パターンＫ＋１（１２０６）を共に用いることができる。即ち、対象スキャンセクションＫ（１２０４）を繰り返しスキャン経路（１２１０）に入力する前にスキャン経路を一定のビットパターンで初期化できる入力パターンＫ−１（１２０２）を用いることができる。さらに、ｋ番目のスキャンセクション（１２０４）に対するスキャン経路の出力パターンが繰り返しシフトされるごとに、一定のビットパターンでスキャン経路にシフトインされる入力パターンＫ＋１（１２０６）を用いることができる。
【０１８０】
対象スキャンセクションＫ（１２０４）がスキャンパターンＭと一対一に対応する場合に、入力パターンＫ−１（１２０２）は、対象スキャンセクションＫ（１２０４）の前に位置する実際テストに用いられるスキャンパターンＭ―１またはスキャンパターンＭ―１をスキャン経路にロードした後にスキャンキャプチャーして得られた結果パターンに対する予測パターンである。
【０１８１】
他の例では、対象スキャンセクションＫ（１２０４）が図１４に示すようにスキャンパターンＭの一部である場合、入力パターンＫ−１（１２０２）は、対象スキャンセクションＫ（１２０４）の前に位置する実際テストに用いられるスキャンパターンＭ―１またはスキャンパターンＭ―１をスキャン経路にロードした後スキャンキャプチャーして得られた結果パターンに対する予測パターンを含む。さらに、入力パターンＫ−１（１２０２）は、スキャンパターンＭから対象スキャンセクションＫ（１２０４）以外の一部を含む。ここで、スキャンパターンＭから対象スキャンセクションＫ（１２０４）以外の一部は実際スキャンテストに用いられるビットパターンの一部である。
【０１８２】
さらに、入力パターンＫ−１（１２０２）は、スキャン経路のスイッチング動作を減らすためにビット０または１で主に構成されるか、連続したビット０または１で主に構成されるなど予め設定された任意のパターンである。
【０１８３】
さらに、他の例では、入力パターンＫ−１（１２０２）は、図１３に示すように少なくとも一つ以上のスキャンセクションで構成される。
【０１８４】
対象スキャンセクションＫ（１２０４）がスキャンパターンＭと一対一に対応する場合に、ｋ＋１番目の入力パターンＫ＋１（１２０６）は、スキャンセクションＫ（１２０４）の後に位置する実際スキャンテストに用いられるスキャンパターンＭ＋１またはスキャンパターンＭ＋１をスキャン経路にロードした後スキャンキャプチャーして得られた結果パターンに対する予測パターンである。
【０１８５】
さらに他の例では、対象スキャンセクションＫ（１２０４）が図１４に示すようにスキャンパターンＭの一部である場合、入力パターンＫ＋１（１２０６）は、対象スキャンセクションＫ（１２０４）の後に位置する実際スキャンテストに用いられるスキャンパターンＭ＋１などを含む。さらに、入力パターンＫ＋１（１２０６）は、スキャンパターンＭから対象スキャンセクションＫ（１２０４）以外の一部を含む。ここで、対象スキャンセクションＫ（１２０４）以外の一部は実際スキャンテストに用いられるビットパターンの一部である。
【０１８６】
さらに他の例では、入力パターンＫ＋１（１２０６）は、スキャン経路上のスイッチング動作を減らすためにビット０または１で主に構成されるか、連続したビット０または１で主に構成されるなど予め設定された任意のパターンである。
【０１８７】
さらに他の例では、入力パターンＫ＋１（１２０６）は、図１３に示すように少なくとも一つ以上のスキャンセクションで構成される。
【０１８８】
そして、スキャンテストにおいて一番目のスキャンセクションの前と最後のスキャンセクションの後に位置する入力パターンは、スキャン経路のスイッチング動作を減らすためにビット０または１で主に構成されるか、連続したビット０または１で主に構成されるなど予め設定された任意のパターンである。さらに、最初のスキャンセクションの前に位置する入力パターンは、テスト対象チップがリセット状態のときのスキャン経路上の値であっても良い。
【０１８９】
本発明の少なくとも一つの実施例において、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）は、それぞれ一つ以上のスキャンセクションで構成され、これらセクションのシフト周波数は現在シフト周波数を決める対象であるスキャンセクションＫ（１２０４）の最大シフト周波数を検索するのに制約を与えないようにすることができる。
【０１９０】
例えば、入力パターンＫ−１（１２０２）は最大３０ＭＨｚまでスキャン経路に正常にシフトイン可能であり、対象スキャンセクションＫ（１２０４）は最大５０ＭＨｚまでスキャン経路に正常にシフトイン可能であるとする。シフト周波数を上げながら入力パターンＫ−１（１２０２）と対象スキャンセクションＫ（１２０４）を同一のシフト周波数でスキャン経路に順次シフトインすると、対象スキャンセクションＫ（１２０４）に対して検索できる最大シフト周波数は３０ＭＨｚに制約される。シフト周波数が３０ＭＨｚを超えると入力パターンＫ−１（１２０２）に対する出力パターンと予測パターンが互いに異なる場合が出て来るからである。さらに、入力パターンＫ＋１（１２０６）が最大３０ＭＨｚまでスキャン経路に正常にシフトイン可能な場合でも、対象スキャンセクションＫ（１２０４）に対して検索できる最大シフト周波数は３０ＭＨｚに制約される。
【０１９１】
従って、このような制約を避けるために、本発明の少なくとも一つの実施例においては、入力パターンＫ−１（１２０２）または入力パターンＫ−１（１２０２）のシフト周波数は予め設定されたシフト周波数（前述した例では３０ＭＨｚ）を超えないようにすることができる。
【０１９２】
例えば、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）のシフト周波数を予め設定されたシフト周波数（前述した例の場合、３０ＭＨｚ）に固定し、対象スキャンセクションＫ（１２０４）のシフト周波数のみを上げ、対象スキャンセクションＫ（１２０４）に使用可能な最大シフト周波数を検索することができる。
【０１９３】
さらに他の例では、入力パターンＫ−１（１２０２）、対象スキャンセクションＫ（１２０４）、及び入力パターンＫ＋１（１２０６）に対して予め設定したシフト周波数（前述の例の場合、３０ＭＨｚ）まで一緒にシフト周波数を上げ、予め設定されたシフト周波数を超える場合に対象スキャンセクションＫ（１２０４）のシフト周波数のみを上げることができる。
【０１９４】
言い換えれば、対象スキャンセクションＫ（１２０４）のシフト周波数と他の入力パターン（１２０２、１２０６）のシフト周波数を互いに異なるように制御することができる。入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）の最大許容シフト周波数が対象スキャンセクションＫ（１２０４）の最大シフト周波数より高ければ、対象スキャンセクションＫ（１２０４）と他の入力パターン（１２０２、１２０６）のシフト周波数を同一に上げることができる。ここで、予め設定されたシフト周波数は、名目シフト周波数または名目シフト周波数を調整したシフト周波数またはプログラムによってテスト装置に予め設定された値またはユーザーが予め設定した値など、実施例によって適切に変更可能であり、上記の例に限定されるのではない。
【０１９５】
本発明の少なくとも一つの実施例において、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）に対して、本発明の少なくとも一つの実施例に係る方法を用いて最適なシフト周波数が既に決められた場合は、最適なシフト周波数以下を適用して入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）をスキャン経路にシフトインすることもできる。
【０１９６】
例えば、本発明の少なくとも一つの実施例に係る方法をスキャンパターンに対して順次適用する場合、対象スキャンセクションＫ（１２０４）のシフト周波数を決定する以前に入力パターンＫ−１を構成する少なくとも一つ以上のスキャンセクションに対する最適なシフト周波数が先に決定される場合がある。従って、スキャンテスト時間を最小化する装置は、入力パターンＫ−１（１２０２）のスキャンセクション別の最適なシフト周波数を用い、入力パターンＫ＋１（１２０６）に対しては名目シフト周波数または名目シフト周波数を調整したシフト周波数を適用することができる。
【０１９７】
そして、対象スキャンセクションＫ（１２０４）のシフト周波数を上げながら入力パターン（１２０２、１２０４、１２０６）をスキャン経路（１２１０）上に順次入力し、実際出力パターン（１２２０）が予測パターン（１２３０）と同一であるのかを判断する。この際に、必要に応じて入力パターン（１２０２、１２０４、１２０６）のうち少なくとも一つ以上の入力パターンに対するスキャンキャプチャー動作を行っても良い。
【０１９８】
例えば、スキャンテスト時間を最小化する装置は、初期シフト周波数として名目シフト周波数を用い、スキャンテスト時間を最小化する装置に予め設定されたシフト周波数の増減単位でシフト周波数を上げる。即ち、入力パターンＫ−１（１２０２）をスキャン経路に名目周波数のように予め設定されたシフト周波数でシフトインすることでロードした後、対象スキャンセクションＫ（１２０４）を「初期シフト周波数＋増加単位」のシフト周波数でスキャン経路にシフトインし、同時に入力パターンＫ−１（１２０２）によるテスト結果（即ち、出力パターンＫ−１）（１２２２）をシフトアウトし、既知の予測パターンＫ−１（１２３２）と同一であるかを比較する。
【０１９９】
このとき、入力パターンＫ−１（１２０２）または入力パターンＫ−１（１２０２）に含まれた少なくとも一つ以上のスキャンセクションに対して予め設定されたシフト周波数は、対象スキャンセクションＫ（１２０４）の初期シフト周波数と互いに異なる場合がある。そして、再び入力パターンＫ＋１（１２０６）のシフトインと同時に対象スキャンセクションＫ（１２０４）に対するテスト結果をシフトアウトして得られた出力パターンＫ（１２２４）を既知の予測パターン（１２３４）と同一であるのかを比較する。このとき、対象スキャンセクションＫ（１２０４）が図１４に示すようにスキャンパターンの一部である場合、入力パターンＫ−１（１２０２）、対象スキャンセクションＫ（１２０４）、及び入力パターンＫ＋１（１２０６）とそれぞれに対する出力パターンは前述のようである。
【０２００】
本発明の少なくとも一つの実施例において、前述した予め設定されたシフト周波数は、対象スキャンセクションＫ（１２０４）の最適なシフト周波数を検索するのに制約を与えないようにすることができる。本発明の少なくとも一つの実施例において、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）のシフト周波数は対象スキャンセクションＫ（１２０４）のシフト周波数と共に増減されないようにするか、対象スキャンセクションＫ（１２０４）と異なる周波数を用いることができる。このとき、入力パターンＫ−１（１２０２）または入力パターンＫ＋１（１２０６）のスキャンセクションをスキャン経路に正常に入力可能なシフト周波数を用いる。
【０２０１】
本発明の少なくとも一つの実施例において、予め設定されたシフト周波数は、名目シフト周波数以外にも名目シフト周波数を調整した値またはプログラムによって装置に設定された値またはユーザーが設定した値など、実施例によって変更可能であり、前述の例に限定されるものではない。
【０２０２】
出力パターンＫ−１（１２２２）と予測パターンＫ−１（１２３２）が同一で、出力パターンＫ（１２２４）と予測パターンＫ（１２３４）が同一ならば、現在のシフト周波数が対象スキャンセクションＫ（１２０４）に対して使用可能なシフト周波数である。スキャンテスト時間を最小化する装置は、対象スキャンセクションＫ（１２０４）に対するシフト周波数を再び所定の大きさだけ増加し、同様に入力パターンＫ−１（１２０２）からスキャン経路に入力する工程を行いながら出力パターン（１２２０）と予測パターン（１２３０）とを比較する工程を再び行う。
【０２０３】
このように、対象スキャンセクションＫ（１２０４）に対するシフト周波数を続けて増加し、出力パターン（１２２０）と予測パターン（１２３０）が同一でなくなるまで行い、それ以前のシフト周波数以下を対象スキャンセクションＫ（１２０４）の最適なシフト周波数として決定することができる。
【０２０４】
前述した実施例はシフト周波数を上げて最適なシフト周波数を検索する方法を主に説明しているが、他の実施例としてシフト周波数を対象スキャンセクションＫ（１２０４）の出力パターン（１２２０）と予測パターン（１２３０）が異なる高い周波数から繰り返し下げながら出力パターン（１２２０）と予測パターン（１２３０）が同一になるシフト周波数を検索することができる。そして、出力パターン（１２２０）と予測パターン（１２３０）が同一になるシフト周波数以下を対象スキャンセクションＫ（１２０４）の最適なシフト周波数として決定することができる。
【０２０５】
さらに、シフト周波数を増減しながらスキャンセクションまたはスキャンパターンに対する出力パターンと予測パターンとの繰り返し比較を行う際のシフト周波数増減範囲の例として、スキャンテスト時間を最小化する装置に設定された範囲内で増減するか、出力パターン（１２２０）と予測パターン（１２３０）が同一であったのが同一でなくなるシフト周波数または同一でなかったのが同一になるシフト周波数が見つかったらシフト周波数の増減を止める。この場合、スキャンセクション別に使用可能な最大シフト周波数を検索するのにかかる時間を短縮することができる。
【０２０６】
実施例によって、対象スキャンセクションＫ（１２０４）に対する最適なシフト周波数を検索するための初期シフト周波数は名目周波数以外に様々な値を設定することができる。さらに、低いシフト周波数から上げるのではなく、出力パターンと予測パターンが互いに異なる高いシフト周波数から始め、シフト周波数を下げながら出力パターンと予測パターンが同一になるシフト周波数を検索することができる。さらに、対象スキャンセクションＫ（１２０４）のシフト周波数の変化を順次増加または減少するのではなく、様々なアルゴリズムを介して様々な方法で変更し、より短い時間に最適なシフト周波数を検索することも可能である。
【０２０７】
本発明の少なくとも一つの実施例において、二進検索（Ｂｉｎａｒｙ  Ｓｅａｒｃｈ）アルゴリズムを用いることができる。例えば、シフト周波数が１０ＭＨｚでテスト正常で、２０ＭＨｚでテスト失敗なら、次のシフト周波数はその間の１５ＭＨｚを試してみる。そして、テスト正常であれば、１５ＭＨｚと２０ＭＨｚの間を試し、テスト失敗であれば、１０ＭＨｚと１５ＭＨｚの間を試してみる方法である。テスト正常は、テスト対象チップが良品として判定されるのを意味し、テスト失敗は、テスト対象チップが不良品として判定されるのを意味する。
【０２０８】
二進検索を採用すると、線形検索（Ｌｉｎｅａｒ  Ｓｅａｒｃｈ）に比べ、テスト正常とテスト失敗の境界になる周波数またはテスト正常で使用可能な周波数範囲を検索するまでかかる時間を短縮できるという効果がある。例えば、線形検索を用いてＮ回の周波数増減回数でテスト正常の最大周波数を検索すると、二進検索を用いると、約ｌｏｇ２（Ｎ）の回数でテスト正常の最大周波数を検索することができる。二進検索を用いてテスト正常の最大周波数を検索するまでかかる検索時間短縮効果は、スキャンセクションの総数及びテスト装置によって増減される周波数の単位値が小さいほど線形検索方法より効果的である。
【０２０９】
さらに他の例では、テスト対象チップに供給される電圧（Ｓｕｐｐｌｙ  Ｖｏｌｔａｇｅ）の変化（Ｖａｒｉａｔｉｏｎ）マージンを考慮して最適な周波数や周期を決めることができる。例えば、次のようなステップを経てテスト対象チップに供給される電圧の範囲内で最適な周波数または周期を迅速に検索することができる。
【０２１０】
ステップ１
スキャンテスト時間を最小化する装置は、テスト対象チップに供給される電圧を所定の単位で変更しながら電圧別にテストデータのテスト結果が正常である最大シフト周波数またはシフト周波数の範囲を検索する。即ち、テストデータを分割したスキャンセクション別にシフト周波数を検索するのではなく、テストデータ全体に使用可能な最大シフト周波数またはシフト周波数の範囲を検索する。
【０２１１】
ステップ２
ステップ１での結果から、スキャンテスト時間を最小化する装置は、テスト対象チップに供給する特定の電圧を選択する。ここで、テスト対象チップに供給する特定の電圧は、ステップ１で検索した電圧別最大シフト周波数のうち最も低いシフト周波数に対応する電圧またはそれに隣接した電圧である。他には、テストセットアップ、製造工程（Ｍａｎｕｆａｃｔｕｒｉｎｇ  Ｐｒｏｃｅｓｓ）、またはテスト工程（Ｔｅｓｔ  Ｐｒｏｃｅｓｓ）などを考慮してテスト対象チップに供給する電圧を選択することができる。
【０２１２】
ステップ３
スキャンテスト時間を最小化する装置は、ステップ２で選択した特定の電圧をテスト対象チップに供給する。そして、スキャンテスト時間を最小化する装置は、特定の電圧を供給した状態で、スキャンセクション別にシフト周波数を増加または減少しながら各スキャンセクションのシフト周波数別にテスト正常またはテスト失敗を把握する。
【０２１３】
ステップ４
スキャンテスト時間を最小化する装置は、ステップ３で得られたスキャンセクション別のテスト正常またはテスト失敗の結果がマッピングされたシフト周波数情報を用いてスキャンセクション別に最適なシフト周波数を検索または決定する。
【０２１４】
ステップ５
スキャンテスト時間を最小化する装置は、テスト対象チップに供給される電圧を変更しながらステップ４で検索または決定したスキャンセクション別最適なシフト周波数を用いてテスト結果が正常であるのかを確認する。
【０２１５】
本発明の少なくとも一つの実施例において、ステップ５での電圧の変更範囲はステップ１での電圧変更範囲と同一であっても良い。さらに、ステップ５での電圧の変更範囲はテストセットアップ、製造工程、またはテスト工程などを考慮してステップ１での変更範囲を調整した範囲でも良い。電圧の変更範囲内で電圧を変更しながらステップ４で検索または決定したスキャンセクション別最適なシフト周波数を用いたスキャンテスト結果が正常であるのかを確認する。
【０２１６】
各スキャンセクションが電圧の変更範囲内ですべてテスト正常であれば、正常的にシフト周波数が最適化されたのである。他に、テストセットアップ、製造工程、及びテスト工程などを考慮してスキャンセクション別にシフト周波数が正常的に最適化されたと判断する様々な基準があり得る。例えば、特定の電圧の場合にはテスト失敗をもたらすこともある。
【０２１７】
テスト対象チップに供給される電圧の変化マージンを考慮して最適な周波数を検索しないといけない場合、全てのスキャンセクションに対して電圧と周波数をそれぞれ変更しながら検索する方法より、前述したステップのような方法を用いると、最適なシフト周波数またはシフト周波数の周期を迅速に検索または決定することができる。
【０２１８】
例えば、ＳＮ（スキャンセクションの数）＝１、０００、ＶＮ（電圧変更回数）＝１０、ＦＮ（周波数変更回数）＝１０だとして、以下の場合を考察する。
【０２１９】
場合１
全てのスキャンセクションに対して電圧と周波数をそれぞれ変更しながらテスト正常またはテスト失敗を把握するために必要な検索回数＝ＳＮｘＶＮｘＦＮ＝１００、０００
【０２２０】
場合２
前述したステップ１ないし５を用いてテスト正常またはテスト失敗を把握するために必要な検索回数＝（ステップ１）ＶＮｘＦＮ＋（ステップ３）ＳＮｘＦＮ＋（ステップ５）ＶＮ＝（ＶＮ＋ＳＮ）ｘＦＮ＋ＶＮ＝１０、１１０
【０２２１】
場合２が場合１の約１０％まで回数が減っているのがわかる。
【０２２２】
最適なシフト周波数検索するためのスキャンセクションＫ（１２０４）は、図１４に示すようにスキャンパターンＭの一部で構成される場合がある。即ち、対象スキャンセクションＫ（１２０４）の長さがスキャン経路の長さより短い場合がある。このような場合、対象スキャンセクションＫ（１２０４）を含むスキャンパターンＭで対象スキャンセクションＫ（１２０４）を除いた部分のシフト周波数は対象スキャンセクションＫ（１２０４）の最適なシフト周波数を検索するのに制約を与えないようにする。
【０２２３】
例えば、スキャンパターンＭで対象スキャンセクションＫ（１２０４）を除いた部分のシフト周波数は、対象スキャンセクションＫ（１２０４）のシフト周波数と共に増減されないようにするか、対象スキャンセクションＫ（１２０４）と異なるシフト周波数を用いることができる。本発明の少なくとも一つの実施例において、スキャンパターンＭで対象スキャンセクションＫ（１２０４）を除いた部のシフト周波数としては、対象スキャンセクションＫ（１２０４）を除いた部分をスキャン経路に正常ン入力できるシフト周波数を用いることができる。
【０２２４】
他の例で、スキャンパターンＭで対象スキャンセクションＫ（１２０４）を除いた部分に適用されるシフト周波数は、名目シフト周波数以下または対象スキャンセクションＫ（１２０４）を除いた部分に対して本発明の少なくとも一つの実施例に係る方法を用いて最適なシフト周波数が既に決まっている場合は、当該最適なシフト周波数以下のように、予め設定されたシフト周波数を用いることができる。対象スキャンセクションＫ（１２０４）に対しては、以上で説明したように、シフト周波数増減を介して最適な周波数を検索する。予め設定されたシフト周波数は、名目シフト周波数を調整した値またはプログラムによって装置に設定された値またはユーザーが設定した値など、実施例によって変更可能であり、前述の例に限定されるものではない。
【０２２５】
図１２は、入力パターンＫ−１（１２０２）を一緒に用いて対象スキャンセクションＫ（１２０４）の最適なシフト周波数を検索する方法を示しているが、これに限定されるものではない。実施例によって、対象スキャンセクションＫ（１２０４）または対象スキャンセクションＫ（１２０４）を含むスキャンパターンに対するスキャン経路の出力パターンのみを予測パターンと比較して最適なシフト周波数検索または決定することができる。
【０２２６】
（前の入力パターンに対する出力パターンの予測パターンとの比較）
本発明の少なくとも一つの実施例において、対象スキャンセクションＫ（１２０４）の最適なシフト周波数を検索または決定する際に、対象スキャンセクションＫ（１２０４）の直前に位置する入力パターンＫ−１（１２０２）に対する出力パターンまたは対象スキャンセクションＫ（１２０４）が含まれたスキャンパターン直前に位置するスキャンパターンに対する出力パターンも予測パターンと比較することができる。
【０２２７】
例えば、対象スキャンセクションＫ（１２０４）に対するスキャン経路の出力パターンが予測パターンと同一で、入力パターンＫ−１（１２０２）に対する出力パターンも予測パターンと同一な場合に、対象スキャンセクションＫ（１２０４）をスキャン経路にシフトするときに用いたシフト周波数は対象スキャンセクションＫ（１２０４）の使用可能なシフト周波数である。
【０２２８】
他の例で、対象スキャンセクションＫ（１２０４）が図１４に示すようにスキャンパターンの一部の場合、対象スキャンセクションＫ（１２０４）を含むスキャンパターンＭに対するスキャン経路の出力パターンＫ（１２２４）が予測パターンＫ（１２３４）と同一で、スキャンパターンＭの前に位置するスキャンパターンＭ−１に対するスキャン経路の出力パターンＫ−１（１２２２）が予測パターンＫ−１（１２３２）と同一な場合に、対象スキャンセクションＫ（１２０４）をスキャン経路にシフトするときに用いたシフト周波数は対象スキャンセクションＫ（１２０４）の使用可能なシフト周波数である。
【０２２９】
このように、対象スキャンセクションＫ（１２０４）のみならず、その前に位置する入力パターン（１２０２）に対する出力パターン（１２２２）と予測パターン（１２３２）とを比較する理由は、対象スキャンセクションＫ（１２０４）の前に位置する入力パターン（または入力パターンの一部）に対するスキャン経路の出力パターンが対象スキャンセクションＫ（１２０４）のシフトイン周波数によって影響を受けるからである。ここで、入力パターンに対するシフトアウト出力パターンは、対象スキャンセクションＫ（１２０４）の前に位置する入力パターン（または入力パターンの一部）がスキャン経路に入力された後にスキャンキャプチャー動作を行って得られるパターンまたはスキャンキャプチャー操作なしにスキャン経路から出力されるパターンである。
【０２３０】
図１６は、本発明の少なくとも一つの実施例に係るスキャンパターンの使用可能なシフト周波数を検索する方法の一例を示すグラフである。図１７は、本発明の少なくとも一つの実施例に係る最適シフト周波数を検索しようとするスキャンパターンのシフト周波数を増加または減少させる際に、他のスキャンパターンのテスト結果が失敗である場合を示すグラフである。
【０２３１】
図１６に示すように、第２スキャンパターンの最適なシフト周波数を検索するために第１スキャンパターン、第２スキャンパターン、第３スキャンパターンが順次スキャン経路に入力される。本発明の少なくとも一つの実施例において、第１スキャンパターンのシフトインには第１スキャンパターンをスキャン経路に正常に入力可能なシフト周波数（例えば、５ＭＨｚ）が用いられる。即ち、第１スキャンパターンによるスキャンテスト結果が正常であるシフト周波数が第１スキャンパターンのシフティングに用いられる。
【０２３２】
第２スキャンパターンのシフト周波数を５ＭＨｚから順次２５ＭＨｚまで上げた場合に、第１スキャンパターン及び第２スキャンパターンのテスト結果は両方とも正常である。この場合、２５ＭＨｚ以下の全てのシフト周波数は第２スキャンパターンに使用可能なシフト周波数である。
【０２３３】
図１７に示すように、第２スキャンパターンのシフト周波数を３０ＭＨｚに上げると、第２スキャンパターンのテスト結果は正常であるが、第１スキャンパターンのテスト結果は失敗である。シフトアウトされる第１スキャンパターンのテスト結果が第２スキャンパターンのシフト周波数によって影響を受けるからである。従って、本発明の少なくとも一つの実施例において、最適なシフト周波数を検索しようとする第２スキャンパターンのみならず、第２スキャンパターンの前の入力パターンである第１スキャンパターンのテスト結果も正常の場合のシフト周波数が第２スキャンパターンの使用可能な周波数である。
【０２３４】
最適なシフト周波数を検索しようとするスキャンセクションがスキャンパターンの一部である場合がある。このような場合、前述したように、最適なシフト周波数を検索しようとする対象スキャンセクションが含まれた第２スキャンパターンのみならず、第１スキャンパターンのテスト結果も正常の場合のシフト周波数が対象スキャンセクションの使用可能な周波数である。対象スキャンセクションを除いたビットパターンにはビットパターンをスキャン経路に正常に入力可能なシフト周波数が用いられる。
【０２３５】
第３スキャンパターンは、正常にスキャン経路にシフトインされ、同時に第２スキャンパターンに対するテスト結果を正常にシフトアウト可能なシフト周波数が用いられる。
【０２３６】
スキャンセクションの最適なシフト周波数を検索するまたはチップの量産テスト時間を短縮するために互いに隣り合う第１スキャンセクションと第２スキャンセクションを順次チップのスキャン経路に入力する際に、第１スキャンセクションのシフト周波数と第２スキャンセクションのシフト周波数を互いに異なるようにしてスキャンテストを行うことができる。例えば、二つのスキャンセクションに用いられた互いに異なるそれぞれのシフト周波数は二つのスキャンセクションを用いたスキャンテストが正常になるシフト周波数以下である。
【０２３７】
互いに隣り合う第１スキャンセクションと第２スキャンセクションに対して第１スキャンセクションのシフト周波数より第２スキャンセクションのシフト周波数を高くまたは低くしてスキャンテストを行うことができる。このとき、故障のない（Ｆａｕｌｔ−Ｆｒｅｅ）チップに対するテスト結果が正常の場合の隣り合う二つのスキャンセクションのそれぞれのシフト周波数以下をチップの量産テスト時間を短縮するために用いる。即ち、互いに隣り合うスキャンセクションがスキャンテスト時に互いに及ぼす影響を考慮しなければならない。
【０２３８】
例えば、第１スキャンセクションと第２スキャンセクションが互いに隣り合うスキャンパターンだとすると、第１スキャンセクションによるスキャンキャプチャー結果がシフトアウトされるとき、続いて入力される第２スキャンセクションのシフト周波数の影響を考慮しなければならない。例えば、スキャンキャプチャー結果パターンがシフトアウトされるときにシフト周波数によって結果パターンのビット値が変わる場合があるからである。
【０２３９】
他の例で、互いに隣り合う第１スキャンセクションと第２スキャンセクションが一つのスキャンパターンに含まれる場合、第１スキャンセクションがシフトインされるときに続いてシフトインされる第２スキャンセクションのシフト周波数の影響を考慮しなければならない。例えば、第２スキャンセクションのシフト周波数によってスキャン経路でシフトされる第１スキャンセクションのビット値が変わる場合があるからである。
【０２４０】
さらに他の例で、第１スキャンセクションと第２スキャンセクションを含む第２スキャンパターンの前でシフトインされた第１スキャンパターンのスキャンキャプチャー結果がシフトアウトされるとき、第２スキャンパターンに属する第１スキャンセクション及び第２スキャンセクションの影響を考慮しなければならない。このような影響を考慮しないと、量産テスト時に故障のないチップに対するスキャンテスト結果がテスト失敗になる場合があるからである。
【０２４１】
（最適シフト周波数を検索しようとする対象スキャンセクションの前または後の入力パターンに対する出力結果の考慮）
対象スキャンセクションの最適なシフト周波数を検索または決定しようとする場合、対象スキャンセクションのみならず、その前または後に位置する入力パターンまたは対象スキャンセクション（１２０４）を含むスキャンパターンの前または後に位置するスキャンパターンに対するスキャン経路の出力パターンを予測パターンと比較して実際に正常なテスト対象ＩＣチップが正常なものとしてテストされるのかを把握する。
【０２４２】
本発明の少なくとも一つの実施例において、このような工程をシフト周波数を増減しながら繰り返し、対象スキャンセクションの最適なシフト周波数を検索することができる。このとき、テスト結果が正常なシフト周波数は、対象スキャンセクションの使用可能なシフト周波数である。対象スキャンセクションに対するスキャン経路の出力パターンは対象スキャンセクションをスキャン経路にロードしてからキャプチャー動作を行って得られるパターンであるか、対象スキャンセクションまたは対象スキャンセクションが含まれたスキャンパターンをスキャンキャプチャー動作なしにスキャン経路から出力したパターンである。
【０２４３】
（最適シフト周波数を検索しようとする対象スキャンセクションの後に入力される入力パターンに対する出力結果の考慮）
最適なシフト周波数を検索または決定するために、対象スキャンセクションの後に位置する入力パターンまたは対象スキャンセクション（１２０４）を含むスキャンパターンの後に位置するスキャンパターンに対するスキャン経路の出力パターンも予測パターンと比較する工程を含むことができる。
【０２４４】
例えば、対象スキャンセクションの最適なシフト周波数を検索する際に、スキャン経路からシフトアウトされる対象スキャンセクションに対する出力パターンが対象スキャンセクションの直後に位置してシフトインされる入力パターンのビット値に影響を与える場合がある。他の例で、対象スキャンセクションの最適なシフト周波数を検索または決定する際に、スキャン経路からシフトアウトされる対象スキャンセクションを含むスキャンパターンに対する出力パターンが対象スキャンセクションを含むスキャンパターンの直後に位置してシフトインされるスキャンパターンのビット値に影響を与える場合がある。
【０２４５】
（後のパターンが最適シフト周波数を検索しようとする対象スキャンセクションに影響を与えられる場合）
対象スキャンセクションまたは対象スキャンセクションを含むスキャンパターンに対するスキャン経路の出力パターンがシフトアウトされるとき、後ろに位置してシフトインされる入力パターンが対象スキャンセクションの出力パターンのビット値に影響を与える場合がある。
【０２４６】
（後の入力パターンのシフト周波数の考慮）
入力パターン（またはスキャンパターン）による影響を減らすまたはなくすために、対象スキャンセクションまたは対象スキャンセクションを含むスキャンパターンに対するスキャン経路の出力パターンがシフトアウトされるときに直後に位置してシフトインされる入力パターン（またはスキャンパターン）のシフト周波数として、対象スキャンセクションの後に位置してシフトインされる入力パターン（またはスキャンパターン）をスキャン経路に正常にシフトできるシフト周波数を用いることができる。
【０２４７】
（前または後の入力パターンのシフト周波数の考慮）
対象スキャンセクションの最適なシフト周波数を検索または決定する際に、対象スキャンセクションの前または後に位置する入力パターン（または入力パターンの一部）のシフト周波数として、対象スキャンセクションと同一又は異なるシフト周波数を用いることができる。このとき、本発明の少なくとも一つの実施例において、対象スキャンセクションの前または後に位置する入力パターンがスキャン経路に正常にシフトできるシフト周波数が用いられる。
【０２４８】
これは、現在使用可能な最大シフト周波数を検索しようとする対象スキャンセクションの前または後に位置する入力パターンが前述のように対象スキャンセクションの使用可能な最大シフト周波数に制約を与える場合があるからである。例えば、対象スキャンセクションの前または後に位置する入力パターンの使用可能な最大シフト周波数が対象スキャンセクションの使用可能な最大シフト周波数より低い場合がある。
【０２４９】
図１８ないし２０は、本発明の少なくとも一つの実施例に係る最適なシフト周波数を得るために必要なスキャンパターン、スキャンセクション、及びシフト周波数情報の構成に関する一例を示す概略図である。
【０２５０】
図１８に示すように、チップを正常にテストできる使用可能なシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションがスキャンパターンの場合である。テストデータ（１８００）の各スキャンパターンＮ＋１、スキャンパターンＮ＋２、及びスキャンパターンＮ＋３は、使用可能なシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションである。図１８は、スキャンパターンＮ＋１、スキャンパターンＮ＋２、及びスキャンパターンＮ＋３それぞれの使用可能なシフト周波数または最適なシフト周波数を検索または決定するために必要なスキャンパターン、スキャンセクション、及びシフト周波数情報の構成を示す。
【０２５１】
本発明の少なくとも一つの実施例において、図１８で、Ｔ１、Ｔ２、Ｔ３、及びＴａｒｇｅｔ＿Ｔは、スキャンシフト周波数またはスキャンシフト周波数の周期と関連した情報を表し、説明の便宜上、タイミング識別子（Ｔｉｍｉｎｇ  Ｉｄｅｎｔｉｆｉｅｒ）、タイミングセット、またはタイミング情報とも称する。
【０２５２】
本発明の少なくとも一つの実施例において、タイミング情報は、シフト周波数またはシフト周波数の周期と関連する情報で、シフト周波数またはシフト周波数の周期を含むか表すことができる。タイミング情報は、スキャンパターンまたはスキャンセクションを識別または制御するのに用いることができる。例えば、テスト装置がタイミング情報によって識別されるスキャンパターンまたはスキャンセクションのシフト周波数またはシフト周波数の周期を増減することができる。
【０２５３】
図１８で、Ｔ１はスキャンパターンＮに対するシフト周波数またはシフト周波数の周期と関連する情報を表し、スキャンパターンＮのタイミング情報である。図１８で、スキャンパターンＮ＋１に対するＴａｒｇｅｔ＿Ｔは使用可能なシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションであるスキャンパターンＮ＋１に対するシフト周波数またはスキャンシフト周波数の周期と関連する情報を表し、スキャンパターンＮ＋１のタイミング情報である。即ち、図１８で、Ｔ１、Ｔ２、及びＴ３は最適なシフト周波数を検索しようとするスキャンセクションの前に位置するスキャンパターンのタイミング情報で、Ｔａｒｇｅｔ＿Ｔはシフト周波数最適化対象であるスキャンセクションのタイミング情報である。
【０２５４】
図１８で、Ｔａｒｇｅｔ＿Ｔ、Ｔ１、Ｔ２、及びＴ３のうち少なくとも二つ以上は互いに同一であるまたは異なるシフト周波数またはシフト周波数の周期を用いることができる。
【０２５５】
図１８で、Ｔ１、Ｔ２、またはＴ３のシフト周波数またはシフト周波数の周期情報はＴ１、Ｔ２、またはＴ３に該当するスキャンパターンまたはスキャンセクションがスキャン経路に正常に入力できるようにするシフト周波数またはシフト周波数の周期を用いる。このとき、Ｔａｒｇｅｔ＿Ｔに該当するシフト周波数またはシフト周波数の周期は最適な値を検索するため増減される場合がある。さらに、図１８に示す例に限定されずに、一つのスキャンパターンには一つ以上のシフト周波数、シフト周波数の周期、またはタイミング情報が割り当てられるか用いられても良い。
【０２５６】
本発明の少なくとも一つの実施例において、あるスキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データ（１８１０、１８２０、１８３０）は、図１８に示すように少なくとも二つ以上のスキャンパターンを含むことができる。
【０２５７】
スキャンパターンＮ＋１の使用可能なシフト周波数または最適なシフト周波数を検索するための検索用データ（１８１０）は少なくともスキャンパターンＮ＋１をその前に位置するスキャンパターンＮを含む。例えば、検索用データ（１８１０、１８２０、１８３０）に含まれたスキャンセクションまたはスキャンパターンは、特定のスキャンセクションにおいて使用可能なシフト周波数または最適なシフト周波数を検索するためにスキャン経路に繰り返し入力されても良い。
【０２５８】
このとき、検索用データ（１８１０、１８２０、１８３０）に含まれた少なくとも二つ以上のスキャンパターンを使用するチップのスキャンテスト出力パターンに基づいて各スキャンパターンに対するテスト正常またはテスト失敗を判断する。例えば、出力パターンと予測パターンとを比較することができる。予測パターンは検索用データ（１８１０、１８２０、１８３０）に含まれて管理される。即ち、検索用データ（１８１０、１８２０、１８３０）はそれぞれのスキャンパターンＮ＋１とその前に位置するスキャンパターンＮに対する各出力パターンに対応する各予測パターンを共に含むことができる。そして、テスト正常またはテスト失敗情報に基づいてスキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索することができる。例えば、Ｔａｒｇｅｔ＿Ｔに該当するスキャンパターンＮ＋１の使用可能なシフト周波数または最適なシフト周波数を検索することができる。
【０２５９】
スキャンパターンＮ＋１の使用可能なシフト周波数または最適なシフト周波数を検索するために、スキャンパターンＮ＋１とその前に位置するスキャンパターンＮを用いてスキャンテストを行う。このとき、二つのスキャンパターンＮ＋１とＮそれぞれに対するチップのスキャンテスト出力パターンに基づいてテスト正常またはテスト失敗を判断することができる。そして、スキャンパターンＮ＋１に対する使用可能なシフト周波数または最適なシフト周波数を検索することができる。スキャンパターンＮ＋１とその前に位置するスキャンパターンＮを用いたスキャンテスト結果がともに正常であるシフト周波数はスキャンパターンＮ＋１の使用可能なシフト周波数である。
【０２６０】
図１９に示すように、使用可能なシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションはスキャンパターンである。スキャンセクションに対する最適なシフト周波数を検索するために、対象スキャンセクションの前と後ろに位置するスキャンパターンを含む少なくとも三つ以上のスキャンパターンが用いられる。
【０２６１】
例えば、スキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データ（１９１０、１９２０、１９３０）は、図１９に示すように少なくとも三つ以上のスキャンパターンを含む。使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データ（１９１０、１９２０、１９３０）のスキャンパターンまたはスキャンセクションはスキャン経路に繰り返し入力されても良い。このとき、検索用データ（１９１０、１９２０、１９３０）に含まれたスキャンパターンの出力パターンと予測パターンとの比較に基づいてＩＣチップのテスト正常またはテスト失敗を判断する。そして、テスト正常可否に基づいて最適なシフト周波数を検索しようとするスキャンセクションの使用可能なシフト周波数を検索することができる。
【０２６２】
検索用データ（１９１０）でスキャンパターンＮ＋１の使用可能なシフト周波数または最適なシフト周波数を検索するために、スキャンパターンＮ＋１とその前に位置するスキャンパターンＮによるチップテストを行う。このとき、テスト結果が正常のときのシフト周波数はスキャンパターンＮ＋１の使用可能なシフト周波数である。このとき、スキャンパターンＮ＋１の後に位置するスキャンパターンＮ＋２はスキャン経路に正常にシフトされるシフト周波数を用いることで、スキャンパターンＮ＋２によるチップテストを省略することができる。スキャンパターンＮ＋２によるチップテスト結果も正常な場合のシフト周波数をスキャンパターンＮ＋２の使用可能なシフト周波数として決めることができる。
【０２６３】
図１９に示すように、タイミング情報Ｔａｒｇｅｔ＿Ｔ、Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、及びＴ６のうち少なくとも二つ以上は互いに同一であるかまたは異なるシフト周波数またはシフト周波数の周期であっても良い。シフト周波数の周期とは、シフト周波数でスキャンパターンがシフトする場合のシフト動作の時間間隔であり、シフト周波数の逆数である。本発明の少なくとも一つの実施例において、タイミング情報Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、またはＴ６のシフト周波数またはシフト周波数の周期情報は、Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、またはＴ６に該当するスキャンパターンまたはスキャンセクションがスキャン経路に正常に入力されるようにするシフト周波数またはシフト周波数の周期を用いる。このとき、Ｔａｒｇｅｔ＿Ｔに該当するシフト周波数またはシフト周波数の周期は最適な値を検索するために増減されても良い。
【０２６４】
さらに、図１９に示す例に限定されずに、一つのスキャンパターンには一つ以上のシフト周波数、シフト周波数の周期、またはタイミング情報が多様に用いられても良い。
【０２６５】
図２０に示すように、使用可能なシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションがスキャンパターンの一部の場合である。即ち、スキャンパターンＮ＋１のスキャンセクションＡ，Ａ＋１、及びＡ＋２は、最適なシフト周波数を検索しようとするスキャンセクションである。
【０２６６】
タイミング情報Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７、Ｔ８、Ｔ９、及びＴ１０は、使用可能なシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションの前または後に位置するスキャンパターンまたはスキャンセクションのタイミング情報である。そして、Ｔａｒｇｅｔ＿Ｔは、シフト周波数の最適化対象であるスキャンセクションのタイミング情報である。
【０２６７】
Ｔａｒｇｅｔ＿Ｔ、Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７、Ｔ８、Ｔ９、及びＴ１０のうち少なくとも二つ以上は互いに同一のまたは互いに異なるシフト周波数またはシフト周波数の周期を用いることができる。
【０２６８】
本発明の少なくとも一つの実施例において、Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７、Ｔ８、Ｔ９、またはＴ１０のシフト周波数またはシフト周波数の周期情報には、Ｔ１、Ｔ２、Ｔ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７、Ｔ８、Ｔ９、またはＴ１０に該当するスキャンパターンまたはスキャンセクションがスキャン経路に正常に入力されるようにするシフト周波数またはシフト周波数の周期が用いられる。このとき、Ｔａｒｇｅｔ＿Ｔに該当するシフト周波数またはシフト周波数の周期はテスト正常な値または最適な値を検索するために増減される。さらに、図２０に示す例に限定されず、一つのスキャンパターンには一つ以上のシフト周波数、シフト周波数の周期またはタイミング情報が多様に用いられる。
【０２６９】
スキャンパターンまたはスキャン経路の長さより短いあるスキャンセクションに対する最適なシフト周波数を検索するための検索用データ（２０１０、２０２０、２０３０）の一例を図２０に示す。検索用データ（２０１０、２０２０、２０３０）に含まれるスキャンパターンは、図１８に示すように少なくとも二つ以上または図１９に示すように少なくとも三つ以上のスキャンパターンで構成されても良い。検索用データ（２０１０、２０２０、２０３０）が三つのスキャンパターンで構成されている場合に、少なくとも三つ以上のスキャンパターンに対するスキャン経路の出力パターンが予測パターンと比較される。
【０２７０】
図１８ないし２０を参照して例を挙げたように、スキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するための検索用データに含まれたスキャンパターンまたはスキャンセクションはスキャン経路に繰り返し入力されても良い。
【０２７１】
さらに、図１８ないし２０に示す例に限定されず、検索用データに含まれた少なくとも二つ以上のスキャンパターンまたはスキャンセクションに対するタイミング情報は互いに同一であるか、または互いに異なる。
【０２７２】
スキャンセクションの最適なシフト周波数を検索するために用いられる検索用データは、図１８、１９、または２０に示す場合のように、少なくとも二つ以上のスキャンパターンを含んで構成することができる。本発明の少なくとも一つの実施例において、検索用データは、図１８、１９、または２０に示すタイミング情報と関連する情報を含むことができる。タイミング情報は、テスト装置によってスキャンパターンまたはスキャンセクションをスキャン経路に入力するタイミングを制御するために用いることができる。タイミングは、シフト周波数またはシフト周波数の周期である。他の一例で、図１８ないし２０に示すように、互いに隣り合うスキャンセクションに対する最適なシフト周波数を検索するために用いられるそれぞれの検索用データには互いに重なるスキャンパターンが含まれても良い。
【０２７３】
本発明の少なくとも一つの実施例において、数多いスキャンセクションのそれぞれの最適なシフト周波数を検索するために用いられる検索用データを作成する工程は、コンピュータープログラムまたはソフトウェアを用いて一括的に処理するのが効率的な場合がある。
【０２７４】
例えば、図１８ないし２０に示すように、それぞれのスキャンセクションの最適なシフト周波数を検索するために用いられるスキャンパターン、スキャンセクション、及びシフト周波数と関連するタイミング情報またはデータを構成または分割する作業はコンピュータープログラムまたはソフトウェアを用いて一括的に処理することができる。さらに、このような作業で最適化しようとするスキャンセクションの数、スキャンセクションのビットの長さ、スキャンセクションの位置などの情報を用いることができる。
【０２７５】
さらに、特定のスキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データには、予測パターンも含まれても良い。さらに、特定のスキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データには、スキャンテスト時に一緒に用いられるＩＣチップのメイン入力（Ｐｒｉｍａｒｙ  Ｉｎｐｕｔ）テストデータまたはメイン出力（Ｐｒｉｍａｒｙ  Ｏｕｔｐｕｔ）予測データも含まれても良い。
【０２７６】
図２１ないし２８は、本発明の少なくとも一つの実施例に係る検索用データを生成する方法の一例を示す概略図である。このうち、図２１ないし２３は、スキャンセクションがスキャンパターンの場合に検索用データを生成する方法に関し、図２４ないし２６は、スキャンセクションがスキャンパターンの一部の場合に検索用データを生成する方法に関する。
【０２７７】
図２１は、複数のスキャンパターンを含むテストデータの一例を示す概略図である。
【０２７８】
図２１に示すように、テストデータ（２１００）内のすべてのスキャンパターンに単一シフト周波数（例えば、Ｔ１＝５０ｎｓ（２０ＭＨｚ））が与えられている。従って、すべてのスキャンパターンはＩＣチップのスキャン経路に同一のシフト周波数でシフトイン及びシフトアウトされる。
【０２７９】
テストデータ（２１００）は、入力スキャンパターンと予測パターンをペアーで含む複数のサブテストデータで構成することができる。例えば、５１番目の入力スキャンパターンは５０番目の入力スキャンパターンの予測パターンとペアーになる。テストデータは、ＳＴＩＬ（Ｓｔａｎｄａｒｄ  Ｔｅｓｔ  Ｉｎｔｅｒｆａｃｅ  Ｌａｎｇｕａｇｅ）またはＷＧＬ（Ｗａｖｅｆｏｒｍ  Ｇｅｎｅｒａｔｉｏｎ  Ｌａｎｇｕａｇｅ）などのフォーマットで作成することができる。
【０２８０】
一番目のサブテストデータのドンケア予測パターンは第１入力スキャンパターンがスキャン経路にシフトインされるときに、シフトアウトされる出力パターンを特定の予測パターンと比較しないとの意味である。フリップフロップが特定の値にセット（Ｓｅｔ）またはリセット（Ｒｅｓｅｔ）された後に最初の入力スキャンパターンが入力されるときシフトアウトされる出力パターンはドンケア予測パターンではない場合がある。
【０２８１】
図２２は、スキャンセクションがスキャンパターンである場合にスキャンセクション別の最適なシフト周波数を検索するための検索用データを生成する方法の一例を示す概略図である。
【０２８２】
図２２に示すように、図２１のオリジナルテストデータ（２１００）で最適なシフト周波数を検索しようとする対象スキャンセクション（２２１０）にタイミング情報Ｔａｒｇｅｔ＿Ｔを与える。タイミング情報Ｔａｒｇｅｔ＿Ｔは、対象スキャンセクション（２２１０）を識別するか、対象スキャンセクションのシフト周波数を制御するために用いられる。例えば、Ｔａｒｇｅｔ＿Ｔは、初期状態で５０ｎｓであり、テスト装置によって増減されても良い。
【０２８３】
対象スキャンセクション（２２１０）が入力スキャンパターン５１の場合、入力スキャンパターン５１の使用可能なシフト周波数または最適なシフト周波数を検索するため、Ｔａｒｇｅｔ＿Ｔが与えたれた検索用データ（２２００）をチップに繰り返し入力する。繰り返し入力するたびにＴａｒｇｅｔ＿Ｔに該当する対象スキャンセクション（２２１０）のシフト周波数の周期を変更する。このとき、対象スキャンセクション（２２１０）を除いた入力スキャンパターンのシフト周波数の周期はスキャンパターンがスキャン経路に正常に入力できるシフト周波数の周期（例えば、Ｔ１＝５０ｎｓ）である。
【０２８４】
例えば、対象スキャンセクション（２２１０）の使用可能な最大シフト周波数を検索するまでＴａｒｇｅｔ＿Ｔに該当するシフト周波数の周期を減少しながら検索用データ（２２００）をチップに繰り返し入力する。このとき、入力スキャンパターン５０に対する出力パターンはサブテストデータ５１に含まれた入力スキャンパターン５０に対する予測パターンと比較される。さらに、入力スキャンパターン５１に対する出力パターンはサブテストデータ５２に含まれた入力スキャンパターン５１に対する予測パターンと比較される。入力スキャンパターン５０と入力スキャンパターン５１のテスト結果が両方とも正常であれば、シフト周波数は対象スキャンセクション（２２１０）の使用可能なシフト周波数である。
【０２８５】
対象スキャンセクション（２２１０）の使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データ（２２００）の大きさが小さいほど最適なシフト周波数を検索するのにかかる時間を短縮できる。
【０２８６】
図２３は、最適シフト周波数を検索するのにかかる時間を短縮するための検索用データの生成方法の一例を示す概略図である。
【０２８７】
図２３に示すように、対象スキャンセクション（２３１０）である入力スキャンパターン５１の使用可能なシフト周波数または最適なシフト周波数を検索するための検索用データ（２３００）は、対象スキャンセクション（２３１０）とその前後に位置する入力スキャンパターン５０，５２を含む。そして、対象スキャンセクション（２３１０）の前に位置するサブテストデータ５０に含まれた予測パターンはドンケア予測パターンである。即ち、入力スキャンパターン５０がスキャン経路にシフトインされると、シフトアウトされる出力パターンは特定の予測パターンと比較されない。
【０２８８】
対象スキャンセクション（２３１０）の使用可能な最大シフト周波数を検索するまでＴａｒｇｅｔ＿Ｔに該当するシフト周波数の周期を変更しながら検索用データ（２３００）をチップのスキャン経路に繰り返し入力する。入力スキャンパターン５０を用いたテスト結果はサブテストデータ５１に含まれた入力スキャンパターン５０に対する予測パターンと比較される。さらに、入力スキャンパターン５１を用いたテスト結果はサブテストデータ５２に含まれた入力スキャンパターン５１に対する予測パターンと比較される。入力スキャンパターン５０と入力スキャンパターン５１のテスト結果が両方とも正常であれば、シフト周波数は対象スキャンセクション（２３１０）の使用可能なシフト周波数である。
【０２８９】
検索用データ（２３００）は図２３に示す例に限定されるものではなく、対象スキャンセクションの前または後に位置する二つ以上の入力スキャンパターンを含むことができる。
【０２９０】
図２４は、複数のスキャンパターンを含むテストデータの一例を示す概略図である。図２５ないし２８は、スキャンセクションがスキャンパターンの一部の場合に最適なシフト周波数を検索するための検索データを生成する方法の一例を示す概略図である。
【０２９１】
図２４に示すように、テストデータ（２４００）内の全てのスキャンパターンに単一のシフト周波数（例えば、Ｔ１＝５０ｎｓ（２０ＭＨｚ））が与えられている。従って、すべてのスキャンパターンはＩＣチップのスキャン経路に同一のシフト周波数でシフトインまたはシフトアウトされる。
【０２９２】
テストデータ（２４００）は、入力スキャンパターンと予測パターンをペアーで含む複数のサブテストデータで構成することができる。例えば、５１番目の入力スキャンパターンは５０番目の入力スキャンパターンの予測パターンとペアーをなす。
【０２９３】
テストデータ（２４００）は複数のスキャンセクションに分割することができる。本実施例では、説明の便宜上、入力スキャンパターン５１を三つのスキャンセクション（２４１０、２４２０、２４３０）に分割した場合に各スキャンセクションの最適なシフト周波数を検索するための検索用データを生成する方法について図２５ないし２８を参照して説明する。
【０２９４】
図２５ないし２７に示すように、検索用データ（２５００、２６００、２７００）は、対象スキャンセクション（２５１０、２６１０、２７１０）を含む入力スキャンパターン５１とその前後に位置する入力スキャンパターン５０、５２を含む。そして、サブテストデータ５０に含まれた予測パターンはドンケア予測パターンである。即ち、入力スキャンパターン５０がスキャン経路にシフトインされるときにシフトアウトされる出力パターンは特定の予測パターンと比較されない。タイミング情報Ｔａｒｇｅｔ＿Ｔは対象スキャンセクション（２５１０、２６１０、２７１０）を識別するか、または対象スキャンセクションのシフト周波数を制御するために用いられる。例えば、Ｔａｒｇｅｔ＿Ｔは初期５０nｓであり、テスト装置によって増減されても良い。
【０２９５】
図２５に示すように、検索用データ（２５００）は、入力スキャンパターン５１の一部である第１対象スキャンセクション（２５１０）にＴａｒｇｅｔ＿Ｔのタイミング情報を与え、入力スキャンパターン５１の残りにはＴ１のタイミング情報をそのまま維持する。第１対象スキャンセクション（２５１０）の使用可能な最大シフト周波数を検索するまでＴａｒｇｅｔ＿Ｔに該当するシフト周波数の周期を変更しながら検索用データ（２５００）をチップのスキャン経路に繰り返し入力する。入力スキャンパターン５０を用いたテスト結果はサブテストデータ５１に含まれた入力スキャンパターン５０に対する予測パターンと比較される。さらに、入力スキャンパターン５１を用いたテスト結果はサブテストデータ５２に含まれた入力スキャンパターン５１に対する予測パターンと比較される。入力スキャンパターン５０と入力スキャンパターン５１を用いたテスト結果が両方とも正常であれば、シフト周波数は第１対象スキャンセクションの使用可能なシフト周波数である。
【０２９６】
第２対象スキャンセクション（２６１０）や第３対象スキャンセクション（２７１０）の最適なシフト周波数を検索するときにもそれぞれ図２６及び２７の検索用データ（２６００、２７００）を図２５と同じ方法でチップに繰り返し入力してスキャンテストする。
【０２９７】
一つのスキャンパターンが複数のスキャンセクションに分割された場合に各スキャンセクションの最適なシフト周波数を検索するために図２５ないし２７に示すようにスキャンセクション別検索用データ（２５００、２６００、２７００）を作成しないで、図２８に示すように一つの検索用データ（２８００）を作成することができる。
【０２９８】
図２８に示すように、検索用データ（２８００）は第１ないし第３対象スキャンセクション（２８１０、２８２０、２８３０）にそれぞれのタイミング情報Ｔａｒｇｅｔ＿Ｔ１、Ｔａｒｇｅｔ＿Ｔ２、Ｔａｒｇｅｔ＿Ｔ３を含む。即ち、使用可能なシフト周波数または最適なシフト周波数を同時に検索しようとする対象スキャンセクションの数ほどタイミング識別子を作成し、各対象スキャンセクション（２８１０、２８２０、２８３０）に割り当てる。例えば、第１対象スキャンセクション（２８１０）の使用可能なシフト周波数または最適なシフト周波数を検索する際にはＴａｒｇｅｔ＿Ｔ１に該当するシフト周波数を増減することができる。
【０２９９】
図２８に示すように、複数の対象スキャンセクションのための一つの検索用データ（２８００）を生成すると、対象スキャンセクション別検索用データを生成するのに比べ、記録媒体の格納容量を節約することができる。但し、テスト装置の使用可能なタイミング識別子の数またはシフト周波数の数に制約が発生する場合がある。
【０３００】
例えば、テスト装置で使用可能なタイミング識別子の数が３個に制限されていて、スキャンパターンが４個の対象スキャンセクションに分割されると、図２５ないし２７に示すように対象スキャンセクション別に検索用データ（２５００、２６００、２７００）を作成して最適なシフト周波数を検索すれば良い。
【０３０１】
検索用データ（２５００、２６００、２７００、２８００）は、図２５ないし２８に限定されるものではなく、対象スキャンセクションを含む入力スキャンパターンの前または後に位置する二つ以上の入力スキャンパターンを含むことができる。
【０３０２】
スキャンパターンまたはスキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データの大きさはできるだけ小さいほどシフト周波数を検索するのにかかる時間を短縮できる。例えば、スキャンパターンまたはスキャンセクションの数を小さくするほど使用可能なシフト周波数または最適なシフト周波数を検索するのにかかる時間を短縮することができる。
【０３０３】
テストデータの全てのスキャンパターンに対して最適なシフト周波数を検索するためにかかるシフトクロックサイクルの総数を計算するため、ＳＮ、ＢＬ、ＦＮを次のように定義する。
ＳＮ：テストデータを構成するスキャンパターンの数。
ＢＬ：一つのスキャンパターンのビットの長さで、１ビットをシフトするのに一つのシフトクロックサイクルが用いられる。
ＦＮ：スキャンパターン当りの最適なシフト周波数を検索するためのシフト周波数の増加回数。予め設定された低いシフト周波数から予め設定された高いシフト周波数まで所定の間隔で順次増加する。
【０３０４】
本発明の少なくとも一つの実施例において、ＳＮ＝５，０００、ＢＬ＝１，０００で、ＦＮ＝２０とする。次の方法１及び方法２に対してテストデータの全てのスキャンパターンに対して最適なシフト周波数を検索するためにかかるシフトクロックサイクルの総数は次のとおりである。
【０３０５】
方法１
図２２に示すように、全入力スキャンパターンを含む検索用データを用いて各スキャンパターンの最適なシフト周波数を検索するときにかかるシフトクロックサイクルの総数は次の通りである。
総所要時間＝ＳＮxＳＮxＢＬxＦＮ＝５００，０００，０００，０００  Ｓｈｉｆｔ  Ｃｌｏｃｋ  Ｃｙｃｌｅｓ
総所要時間＝ＳＮｘＳＮｘＢＬｘＦＮ＝５００、０００、０００  Ｓｈｉｆｔ  Ｃｌｏｃｋ  Ｃｙｃｌｅｓ
【０３０６】
方法２
図２３に示すように、三つの入力スキャンパターンを含む検索用データを用いて各スキャンパターンの最適なシフト周波数を検索するときにかかるシフトクロックサイクルの総数は次のとおりである（このとき、一番目のスキャンパターンの最適なシフト周波数を検索する際には一番目及び二番目の二つの入力スキャンパターンを含む検索用データが用いられる。最後のスキャンパターンの最適なシフト周波数を検索する際には最後の入力スキャンパターンとその前の入力スキャンパターンの二つの入力スキャンパターンを含む検索用データが用いられる）。
総所要時間＝（３ｘ（ＳＮ−２）ｘＢＬｘＦＮ）＋（２ｘ２ｘＢＬｘＦＮ）＝２９９、９６０、０００  Ｓｈｉｆｔ  Ｃｌｏｃｋ  Ｃｙｃｌｅｓ
【０３０７】
上式で、（３ｘ（ＳＮ−２）ｘＢＬｘＦＮ）はスキャンパターン集合の二つのスキャンパターン（即ち、チップに最初に入力されるスキャンパターンと最後に入力されるスキャンパターン）を除いたスキャンパターンの最適なシフト周波数を検索するために用いられるシフトクロックサイクルの総数である。
【０３０８】
上式で、（２ｘ２ｘＢＬｘＦＮ）はチップに最初に入力されるスキャンパターンと最後に入力されるスキャンパターンの最適なシフト周波数を検索するために用いられるシフトクロックサイクルの総数である。
【０３０９】
方法２を用いると、方法１で用いられたシフトクロックサイクルの総数の９９．９４％が減少したのがわかる。
【０３１０】
従って、スキャンパターンまたはスキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データはできるだけ少ない数のスキャンパターンまたはスキャンセクションを含むようにする。
【０３１１】
本発明の少なくとも一つの実施例において、図１８を参照して例を挙げたように、検索用データはシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションとその前または後に位置するスキャンパターンを含む少なくとも二つ以上のスキャンパターンで構成することができる。
【０３１２】
さらに、図１９ないし２８に示すように、検索用データはシフト周波数または最適なシフト周波数を検索しようとするスキャンセクションとその前後に位置するスキャンパターンを含む少なくとも三つ以上のスキャンパターンで構成することができる。
【０３１３】
本発明の少なくとも一つの実施例において、スキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データはデータコードやファイルなどの形態でコンピューターで読み取り可能な記録媒体に格納されていても良い。
【０３１４】
さらに、スキャンセクションの使用可能なシフト周波数または最適なシフト周波数を検索するために用いられる検索用データを作成する工程は実施例によって同一装置または異なる装置で行うことができ、テスト装置またはコンピューターなど装置で行っても良い。
【０３１５】
図２９は、本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法の一例を示すフローチャートである。
【０３１６】
図２９に示すように、スキャンテスト時間を最小化する装置は、ビットパターンまたは一つ以上のスキャンパターンを少なくとも二つ以上のスキャンセクションに分割する（ステップＳ２９００）。テストデータのビットパターンまたはスキャンパターン集合をスキャンセクションに分割する例を図５ないし１０に示す。
【０３１７】
分割する工程において、ＩＣチップをテストするための数千または数万個以上のスキャンパターンを分割したスキャンセクションやセクショングループに対する検索用データまたはこれらのデータを含むファイルを作成する作業はコンピュータープログラムまたはソフトウェアを用いて一括的に処理するのが効率的な場合がある。
【０３１８】
例えば、コンピュータープログラムまたはソフトウェアはシフト周波数を最適化しようとするスキャンセクションの数、スキャンセクションのビットの長さ、スキャンセクションの位置などのスキャンセクションの分割に関連する情報を用いてテストデータをスキャンセクションやスキャンセクショングループに分割し、分割したスキャンセクションやスキャンセクショングループに対する検索用データまたは検索用データを含むファイルを一括して作成することができる。
【０３１９】
スキャンセクションの分割に関連する情報は、キーボード、マウス、音声認識装置のようなユーザーインタフェース装置やスキャンセクションの分割に関連する情報を含む情報データコードやファイル、またはデータ通信ネットワークなどを介して取得し、コンピュータープログラムまたはソフトウェアによって用いられる。
【０３２０】
スキャンパターンの分割の例として図５ないし１０に示す方法を用いることができる。スキャンテスト時間を最小化する装置は、複数のシフト周波数を各スキャンセクションに割り当てる（ステップＳ２９１０）。ここで、各スキャンセクションに割り当てられたシフト周波数はスキャン経路の出力パターンが予測パターンと異なる前のシフト周波数以下である。スキャンパターンのスキャンセクションへの分割（ステップＳ２９００）とシフト周波数のスキャンセクションへの割り当て（ステップＳ２９１０）は実施例によって同一装置または異なる装置でそれぞれ行っても良いし、テスト装置またはコンピューターなどの装置で行っても良い。
【０３２１】
即ち、スキャンテスト時間を最小化する装置は、シフト周波数の増加によって出力パターンと予測パターン異なる直前のシフト周波数を当該スキャンセクションに割り当て可能な最大シフト周波数として検索することができる。他の例で、スキャンテスト時間を最小化する装置は、シフト周波数の減少によって出力パターンと予測パターンが異なる状態から同一になる時のシフト周波数を当該スキャンセクションに割り当て可能な最大シフト周波数として検索することができる。例えば、スキャンセクションのシフト周波数を増減しながらスキャンテストの正常と失敗の境界に近接し、テスト結果が正常であるシフト周波数を検出し、テスト結果が正常であるシフト周波数を当該スキャンセクションに割り当て可能な最大シフト周波数として決定する。
【０３２２】
図３０は、本発明の少なくとも一つの実施例に係るチップテストの時間を最小化するためにスキャンセクション別の最適なシフト周波数を決定する方法の一例を示すフローチャートである。
【０３２３】
図３０に示すように、スキャンテスト時間を最小化する装置は、一つ以上のスキャンパターンを少なくとも二つ以上のスキャンセクションに分割する（ステップＳ３０００）。
【０３２４】
スキャンテスト時間を最小化する装置は、スキャンセクションをスキャン経路にシフトインする周波数を増減しながら出力パターンが予測パターンと同一状態から異なる状態になるか、または異なる状態から同一になるまでのシフト周波数を検索する（ステップＳ３０１０）。例えば、最適なシフト周波数を検索するために用いられるチップは前もって良品として検査されたチップを用いることができる。例えば、名目シフト周波数を用いてスキャンテストを行った結果がテスト正常である良品のチップを用いて本実施例によって最適なシフト周波数を検索する。この点は、以下の他の実施例でも同様である。
【０３２５】
そして、スキャンテスト時間を最小化する装置は、出力パターンと予測パターンが同一状態から異なる状態になる時点以前のテスト正常であるシフト周波数を当該スキャンセクションのシフト周波数として決定する（ステップＳ３０２０）。以前のシフト周波数というのは、異なる状態になる時点のシフト周波数より低いシフト周波数も含む。
【０３２６】
例えば、第１シフト周波数で出力パターンと予測パターンが同一であったが、第１シフト周波数を所定の周波数だけ上げた第２シフト周波数でスキャン経路の出力パターンと予測パターンが異なる場合、スキャンテスト時間を最小化する装置は第２シフト周波数より低く、テスト正常であるシフト周波数をスキャンセクションのシフト周波数として決定するか、決定するための情報を提供する。
【０３２７】
最適なシフト周波数を検索するために増減する周波数の単位はテスト装置に前もって設定されているか、ユーザーによって単位を変更または設定されても良い。
【０３２８】
本実施例では、説明の便宜上、シフトインするシフト周波数の増減を介してスキャンセクション別に最適なシフト周波数を検索する方法を記述しているが、実施例によって、シフトアウトする周波数を増減しながら最適なシフト周波数を検索することもできる。この点は、以下の実施例においても同様である。
【０３２９】
図３０を参照して説明した各ステップは実施例によってはスキャンテスト時間を最小化する装置ですべて実行されるものではなく、少なくともその一部がコンピューターなどの他の装置で実施されても良い。
【０３３０】
図３１は、本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法のより具体的な工程の一例を示すフローチャートである。
【０３３１】
図３１に示すように、スキャンテスト時間を最小化する装置は一つ以上のスキャンパターンを複数のスキャンセクションに分割する（ステップＳ３１００）。
【０３３２】
スキャンテスト時間を最小化する装置は、分割したスキャンセクションのうち本実施例によってシフト周波数が決定されてないスキャンセクションを一つ選択する（ステップＳ３１１０）。例えば、スキャンテストのためのスキャンパターンの間に所定の順番が決まっている場合なら、スキャンテスト時間を最小化する装置は一番目のスキャンセクションから順次選択することができる。或いは、ユーザーがシフト周波数を最適化しようとするスキャンセクションを選択し、スキャンテスト時間を最小化する装置は選択されたスキャンセクションに対してシフト周波数の最適化を行うことができる。他にも、シフト周波数を最適化しようとするスキャンセクションを選択するのに、様々の方法を用いることができる。
【０３３３】
スキャンテスト時間を最小化する装置はシフト周波数を上げる（ステップＳ３１２０）。例えば、スキャンテスト時間を最小化する装置に初期シフト周波数は名目シフト周波数などを設定することができる。
【０３３４】
スキャンテスト時間を最小化する装置は、スキャンテスト結果が正常である初期シフト周波数から始め、増加したシフト周波数でスキャンセクションをスキャン経路に正常にシフトインできるか否かを判断する（ステップＳ３１３０）。選択されたシフト周波数検索対象スキャンセクションが現在のシフト周波数で正常にシフトインできるか否かを判断する具体的な方法の一例を図３２を参照して説明する。
【０３３５】
スキャンセクションの正常なシフトインが可能であれば（ステップＳ３１４０）、スキャンテスト時間を最小化する装置は再びシフト周波数を上げて（ステップＳ３１２０）正常なシフトインが可能か否かを判断する工程を繰り返す（ステップＳ３１３０）。
【０３３６】
シフト周波数の増加によってスキャンセクションの正常なシフトインが不可能な場合が発生すると（ステップＳ３１４０）、スキャンテスト時間を最小化する装置は正常なシフトインが可能だった最大シフト周波数以下を当該スキャンセクションのシフト周波数として決定するか、または決定するための情報をコンピューターで読み取り可能な記録媒体に格納する（ステップＳ３１５０）。そして、全てのスキャンセクションに対するシフト周波数が決定されるか、またはシフト周波数を決定するための情報をコンピューターで読み取り可能な記録媒体に格納するまで前述の工程を繰り返し行う（ステップＳ３１６０）。ここで、記録媒体に格納する情報は、テスト対象ＩＣチップに対して各シフト周波数に対するシフトまたはテスト正常または失敗に関する情報を含む。
【０３３７】
スキャンテスト時間を最小化する装置は、必要に応じてスキャンセクションをセクショングループにグループ化する（ステップＳ３１７０）。例えば、実際にスキャンテストを行うテスト装置がスキャンテストの間に支援可能な最大シフト周波数変更回数、シフト周波数の最大数、シフト周波数の変更に必要な遅延時間などの制約事項を有する場合に、スキャンテスト時間を最小化する装置はスキャンセクションの数がこの制約事項を満足するようにスキャンセクションをグループ化する。このとき、スキャンテストにかかる総時間が最小化されるよう考慮しても良い。この場合、一つのスキャンセクショングループに含まれる少なくとも二つ以上のスキャンセクションのそれぞれの最適なシフト周波数のうち最も低いシフト周波数以下を当該セクショングループのシフト周波数として決定することができる。セクションをグループ化する工程（ステップＳ３１７０）は実施例によって省略しても良い。
【０３３８】
例えば、テスト装置で支援可能な最大シフト周波数の変更回数が５の場合、スキャンテスト時間を最小化する装置は現在スキャンセクションの数が５を超えると、スキャンセクションを５個以下のセクショングループに分け、各セクショングループ内セクションの最適なシフト周波数のうち最も低い最適なシフト周波数以下を当該セクショングループのシフト周波数として決定する。セクショングループにグループ化する方法は、同一或いは類似な最適なシフト周波数を有するスキャンセクションをグループ化するなスキャンテストにかかる総時間が最小化されるような様々な方法を含む。
【０３３９】
以上で説明した実施例では、主にシフト周波数の増加を考慮して最適なシフト周波数を検索した。他の例では、シフト周波数を減少しながら当該スキャンセクションの最適なシフト周波数を検索することができる。
【０３４０】
例えば、スキャンテスト時間を最小化する装置は、テスト失敗である初期シフト周波数から始め、所定の単位で減少したシフト周波数でスキャンセクションをスキャン経路に正常にシフトイン可能か否かを判断する。シフト周波数の減少によってスキャンセクションの正常なシフトインが得られると、スキャンテスト時間を最小化する装置は正常なシフトインが得られた最大シフト周波数以下を当該スキャンセクションのシフト周波数として決定する、または決定するための情報をコンピューターで読み取り可能な記録媒体に格納する。
【０３４１】
さらに他の例では、チップは供給電圧や周辺温度などンよっても影響を受けるので、このような環境条件を反映して最適なシフト周波数を検索することができる。即ち、スキャンテスト時間を最小化する装置は、供給電圧や外部温度などの条件を変更しながら最適なシフト周波数を検索する工程を行うことができる。
【０３４２】
例えば、スキャンテスト時間を最小化する装置は、チップの仕様またはＱＡ（Ｑｕａｌｉｔｙ  Ａｓｓｕｒａｎｃｅ）、ＱＣ（Ｑｕａｌｉｔｙ  Ｃｏｎｔｒｏｌ）などのような品質関連政策などを考慮してチップに供給される電圧を増減できる（ステップＳ３１２０）。そして、スキャンテスト時間を最小化する装置は、それぞれの増減された供給電圧で本発明の少なくとも一つの実施例に従ってスキャンセクション別に最適なシフト周波数を検索する。スキャンセクションの供給電圧別に検索した最適なシフト周波数が複数存在すると、スキャンテスト時間を最小化する装置は、このうち最も低い最適なシフト周波数以下を選択されたスキャンセクションのシフト周波数として決定する（ステップＳ３１５０）。他には、温度増減や色々な条件別に最適なシフト周波数を検索する工程を繰り返し、このうち最も低い最適なシフト周波数以下を当該スキャンセクションのシフト周波数として決定することができる。
【０３４３】
ここで、ＩＣチップの供給電圧または周辺温度などを変更しながらＩＣチップの動作周波数範囲のような特性を把握するのを一般に電気的特性テスティング（Ｅｌｅｃｔｒｉｃａｌ  Ｔｅｓｔｉｎｇ）またはシムイング（Ｓｈｍｏｏｉｎｇ）という。電気的特性テスティングまたはシムイングを介して特性情報に対する表を作成するのをシムプロッティング（Ｓｈｍｏｏ  Ｐｌｏｔｔｉｎｇ）という。作成した表はシムプロット（Ｓｈｍｏｏ  Ｐｌｏｔ）という。
【０３４４】
図３１の各工程はスキャンテスト時間を最小化する装置のみならず、コンピューターなどの他の装置によって行われても良い。
【０３４５】
図３２は、本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法で、正常なシフトインを把握する具体的な工程の一例を示すフローチャートである。即ち、図３２は、図３１のステップＳ３１３０に対応するが、図３１の特定のステップに限定されるものではなく、スキャン経路にシフトインが正常に行われているのかを判定または決定する工程を含む多様な実施例に適用することができる。
【０３４６】
図１２及び３２に示すように、スキャンテスト時間を最小化する装置は、現在選択されたシフト周波数を決定しようとする対象スキャンセクションＫ（１２０４）の前に位置する入力パターンＫ−１（１２０２）をスキャン経路（１２１０）にシフトインする（ステップＳ３２００）。例えば、入力パターンＫ−１（１２０２）は、対象スキャンセクションＫ（１２０４）を含むスキャンパターンＭの前に位置し、次のように（１）または（２）の例を挙げることができる。
【０３４７】
（１）入力パターンＫ−１（１２０２）が実際にスキャンテストに用いられるスキャンパターンである場合
スキャンテスト時間を最小化する装置は、スキャンパターンＭ−１をスキャン経路にシフトし、スキャンキャプチャーする工程を行う。この場合、実際のスキャンテスト動作を反映できるというメリットがある。ここで、スキャンパターンＭ−１は対象スキャンセクションＫを含むスキャンパターンＭの前に位置するパターンである。
【０３４８】
（２）スキャンパターンＭ−１が実際にスキャンテストに用いられるスキャンパターンＭ−１を用いたスキャンテスト結果として予測される出力パターンの場合
スキャンテスト時間を最小化する装置は、スキャンパターンＭ−１をスキャン経路にシフトした後に別途のスキャンキャプチャー工程を行う必要がなくなる。従って、この場合スキャンキャプチャーのためのクロックにかかる時間を減らすことができ、結果的に最適なシフト周波数を検索するのにかかる時間を短縮できる。
【０３４９】
スキャンテスト時間を最小化する装置は、入力パターンＫ−１（１２０２）をスキャン経路にシフト（ステップＳ３２００）した後にスキャンキャプチャー動作を行う。他の実施例では、スキャンキャプチャー動作を行わない。次に、スキャンテスト時間を最小化する装置は、対象スキャンセクションＫ（１２０４）を増減したシフト周波数でスキャン経路にシフトインする（ステップＳ３２１０）。対象スキャンセクションＫ（１２０４）が図１４に示すようにスキャンパターンＭの一部である場合、対象スキャンセクションＫ（１２０４）を含むスキャンパターンＭをスキャン経路にシフトインする。
【０３５０】
このとき、対象スキャンセクションＫ（１２０４）または対象スキャンセクションＫ（１２０４）を含むスキャンパターンＭがスキャン経路にシフトインされ、スキャン経路上に記憶されているビットパターンは同時にシフトアウトされる（ステップＳ３２１０）。ここで、シフトアウトされるビットパターンはこの例に限定されず、スキャン経路に対してシフトインとシフトアウト動作が同時に行われるスキャン回路の種類により様々な形態を取り得る。
【０３５１】
例えば、対象スキャンセクションＫ（１２０４）が図１４に示すようにスキャンパターンＭの一部でスキャン経路の長さより短い場合、対象スキャンセクションＫ（１２０４）を含むスキャンパターンＭをスキャン経路にシフトインする。この時、対象スキャンセクションＫ（１２０４）を除いたスキャンパターンＭの部分のシフト周波数は対象スキャンセクションＫ（１２０４）の最適なシフト周波数を検索するのに制約を与えないようにする。このため、スキャンパターンＭで対象スキャンセクションＫ（１２０４）を除いた部分のシフト周波数は対象スキャンセクションＫ（１２０４）のシフト周波数と共に増減されないようにするか、対象スキャンセクションＫ（１２０４）とは異なる周波数を用いる。或いは、スキャンパターンＭで対象スキャンセクションＫ（１２０４）を除いた部分のシフト周波数は対象スキャンセクションＫ（１２０４）を除いた部分をスキャン経路にに入力できるシフト周波数を用いる。
【０３５２】
本発明の少なくとも一つの実施例において、対象スキャンセクションＫ（１２０４）を除いた部分のシフト周波数は、名目シフト周波数以下または本発明の少なくとも一つの実施例に係る方法で最適なシフト周波数が既に決められた場合は当該最適なシフト周波数以下のように予め設定されたシフト周波数を用いることができる。予め設定されたシフト周波数は名目シフト周波数を調整した値、プログラムによって装置に設定された値、またはユーザーが設定した値など、実施例によって変更可能であり、上記の例に限定されるものではない。
【０３５３】
スキャンテスト時間を最小化する装置は、テスト対象チップの入力パターンＫ−１の出力パターンＫ−１と予測パターンＫ−１とを比較する（ステップＳ３２２０）。出力パターンＫ−１と予測パターンＫ−１が同一でなければ（ステップＳ３２２０）、スキャンテスト時間を最小化する装置は現在のシフト周波数で対象スキャンセクションＫ（１２０４）をスキャン経路に正常にシフトインできないと判断または決定する（ステップＳ３２７０）。例えば、スキャンテスト時間を最小化する装置はテスト失敗の情報をコンピューターで読み取り可能な記録媒体に格納する。
【０３５４】
入力パターンＫ−１の出力パターンＫ−１と予測パターンＫ−１が同一であれば（ステップＳ３２２０）、スキャンテスト時間を最小化する装置は対象スキャンセクションＫ（１２０４）に対するスキャンキャプチャー（ステップＳ３２３０）動作を行った後にシフトアウト（ステップＳ３２４０）動作を行う。他の実施例では、スキャンキャプチャー（ステップＳ３２３０）動作を行わないで、シフトアウト（ステップＳ３２４０）動作を行う。さらに、シフトアウト（ステップＳ３２４０）されるビットパターンは、スキャン経路に対してシフトインとシフトアウト動作が同時に行えるスキャン回路の種類によって異なる。
【０３５５】
対象スキャンセクションＫ（１２０４）に対する出力パターンがシフトアウト（ステップＳ３２４０）されるときに同時にシフトインされる入力パターンＫ＋１（１２０６）にはシフトアウト（ステップＳ３２４０）される対象スキャンセクションＫ（１２０４）のビットパターンを不要に変えたりしないシフト周波数が用いられる。即ち、シフトアウト（ステップＳ３２４０）動作が正常に行えるシフト周波数が用いられる。さらに、対象スキャンセクションＫ（１２０４）のシフトアウト（ステップＳ３２４０）動作が行われるときに同時にシフトインされる入力パターンＫ＋１（１２０６）はスキャン経路に正常にシフトインできるシフト周波数が用いられる。
【０３５６】
スキャンテスト時間を最小化する装置は、テスト対象チップの対象スキャンセクションＫ（１２０４）の出力パターンＫと予測パターンＫとを比較する（ステップＳ３２５０）。対象スキャンセクションＫ（１２０４）の出力パターンＫと予測パターンＫが同一でないと（ステップＳ３２５０）、スキャンテスト時間を最小化する装置は現在用いられたシフト周波数で対象スキャンセクションＫ（１２０４）をスキャン経路に正常にシフトインできないと判断または決定する（ステップＳ３２７０）。例えば、スキャンテスト時間を最小化する装置はテスト失敗の情報をコンピューターで読み取り可能な記録媒体に格納する。
【０３５７】
対象スキャンパターンＫ（１２０４）の出力パターンＫと予測パターンＫが同一ならば（ステップＳ３２５０）、スキャンテスト時間を最小化する装置は現在用いられたシフト周波数で対象スキャンセクションＫ（１２０４）をスキャン経路に正常にシフトインできると判断または決定する（ステップＳ３２６０）。例えば、スキャンテスト時間を最小化する装置はテスト正常の情報をコンピューターで読み取り可能な記録媒体に格納する。
【０３５８】
本発明の少なくとも一つの実施例において、対象スキャンセクションＫ（１２０４）を含むスキャンパターンのみならず、その前に位置するスキャンパターンに対するチップの出力パターンも該当する予測パターンと比較し、対象スキャンセクションＫ（１２０４）の使用可能なシフト周波数または最適なシフト周波数を検索することができる。
【０３５９】
本発明の少なくとも一つの実施例において、テスト装置は対象スキャンセクションＫ（１２０４）とその前に位置する入力パターンＫ−１（１２０２）に対するスキャンテスト結果が両方とも正常であるかを判断または決定する。そして、両方ともテスト正常であれば、対象スキャンセクションＫ（１２０４）に用いられたシフト周波数は、対象スキャンセクションＫ（１２０４）をスキャン経路に正常にシフトインできるシフト周波数である。
【０３６０】
図３３は、本発明の少なくとも一つの実施例に係るチップテスト時間を最小化する方法の一例を示すフローチャートである。
【０３６１】
チップ製造工程（Ｐｒｏｃｅｓｓ）の種類及び状態によっては、異なるウェハー上のＩＣチップ間または同一ウェハー上のＩＣチップ間のプロセスばらつき（Ｐｒｏｃｅｓｓ  Ｖａｒｉａｔｉｏｎ）が発生する場合があり、これはＩＣチップの動作周波数及び電力消耗などに大きい影響を及ぼすことになる。特に、微細工程及び低電力工程ではその影響がより大きくなる。
【０３６２】
図３３に示すように、スキャンテスト時間を最小化する装置は、複数のチップに対して前述したようにスキャンセクション別に最適な周波数を決定する工程を行う（ステップＳ３３００）。ここで、複数のチップは同一ウェハー上のＩＣチップまたは異なるウェハー上のＩＣチップであり、前もって良品として検査されたチップである。
【０３６３】
スキャンテスト時間を最小化する装置は、ある一つのスキャンセクションに対して複数のＩＣチップをもって検索した複数の最適なシフト周波数のうち、最も低いシフト周波数以下を当該スキャンセクションの最適なシフト周波数として決定するか、シフト周波数を決定するための情報をコンピューターで読み取り可能な記録媒体に格納し（ステップＳ３３１０）、これを各スキャンセクションに対して行う。ここで、記録媒体に格納する情報は、各シフト周波数に対するシフトまたはテストの成功（ＰＡＳＳ）または失敗（ＦＡＩＬ）に関する情報を含む。
【０３６４】
例えば、第１チップの対象スキャンセクションＫのシフト周波数がＡで、第２チップの対象スキャンセクションＫのシフト周波数がＢだとすると、シフト周波数Ａがシフト周波数Ｂより低いと、テスト装置は対象スキャンセクションＫのシフト周波数としてＡまたはそれ以下を選択するか、選択するための情報をコンピューターで読み取り可能な記録媒体に格納する。
【０３６５】
図３３の各ステップはスキャンパターンの集合と複数のチップに対してスキャンセクション別に検索したシフト周波数情報を用いてスキャンテスト時間を最小化する装置のみならず、コンピューターなどの他の装置でも行うことができる。
【０３６６】
図３４は、本発明の少なくとも一つの実施例に係るＩＣチップのテスト時間を最小化する装置の構成を示すブロック図である。
【０３６７】
図３４に示すスキャンテスト時間を最小化する装置は、各スキャンセクションのシフト周波数の最適化のために前述した本発明の少なくとも一つの実施例に係る方法を行うことができ、本発明の少なくとも一つの実施例において、図１２ないし３３に示す方法の一部または全部を適用することができる。
【０３６８】
図３４に示すように、スキャンテスト時間を最小化する装置は、条件設定部（３４００）、パターン分割部（３４０５）、パターン入力部（３４１０）、パターン比較部（３４２０）、及び周波数把握部（シフト周波数検索部）（３４３０）を備える。条件設定部（３４００）は、周波数増減部（３４０２）、供給電圧増減部（３４０４）、温度増減部（３４０６）などを含む。
【０３６９】
まず、条件設定部（３４００）は、スキャンセクション別に最適なシフト周波数を検索するための各種の条件を設定する。具体的に、周波数増減部（３４０２）はシフト周波数を増減し、供給電圧増減部（３４０４）はチップに供給される電圧を増減し、温度増減部（３４０６）はテスト環境の周辺温度を増減する。条件設定部（３４００）は、供給電圧、周辺温度などの条件を設定し、シフト周波数を草原することができる。例えば、条件設定部（３４００）は、ホストコンピューター（２００、３００）、テスター本体（２１０、３１０）、テストヘッド（２２０、３２０）またはプロバー（３５０）などに備えられる。
【０３７０】
パターン分割部（３４０５）は、一つ以上のスキャンパターンを複数のスキャンセクションに分割することができる。例えば、パターン分割部（３４０５）はホストコンピューター（２００、３００）、テスター本体（２１０、３１０）、テストヘッド（２２０、３２０）またはプロバー（３５０）などに備えられる。パターン分割部（３４０５）は、図５ないし１０に示す方法を用いてテストデータを少なくとも一つ以上のスキャンセクションに分割することができる。
【０３７１】
パターン入力部（３４１０）は、条件設定部（３４００）で設定した条件でスキャンセクションをテスト対象チップのスキャン経路にシフトインされるようにする。具体的に、パターン入力部（３４１０）は最適なスキャンシフト周波数を検索しようとするスキャンセクションの前と後ろにそれぞれ位置するスキャンパターンまたはスキャンセクションをシフト周波数決定対象スキャンセクションと共に順次スキャン経路にシフトインされるようにできる。例えば、パターン入力部（３４１０）はホストコンピューター（２００、３００）、テスター本体（２１０、３１０）、テストヘッド（２２０、３２０）またはプロバー（３５０）などに備えられる。
【０３７２】
パターン比較部（３４２０）は、パターン入力部（３４１０）によってテスト対象チップにシフトインされたスキャンセクションによるテスト結果とシフトアウトされた出力パターンが予測パターンとを比較する。例えば、パターン比較部（３４２０）は、ホストコンピューター（２００、３００）、テスター本体（２１０、３１０）、テストヘッド（２２０、３２０）、またはプロバー（３５０）などに備えられる。条件設定部（３４００）によるシフト周波数の増減によって出力パターンと予測パターンが同一の状態から異なる状態になる、または異なる状態から同一の状態になる時点または周波数が存在し得る。
【０３７３】
周波数把握部（３４３０）は、パターン比較部（３４２０）による比較結果情報または比較結果に基づいて出力パターンが予測パターンと異なる前のシフト周波数または同一のシフト周波数を検索するためのシフト周波数情報をコンピューターで読み取り可能な記録媒体に格納することができる。例えば、スキャンセクションに対して正常に使用可能なシフト周波数情報をコンピューターで読み取り可能な記録媒体に格納する。さらに、このような情報を用いてスキャンセクションの最適なシフト周波数を決定することも可能である。
【０３７４】
本発明の少なくとも一つの実施例において、周波数把握部（３４３０）は、少なくとも現在シフト周波数を決定しようとする対象スキャンセクションの前に位置するスキャンセクションと対象スキャンセクションに対する出力パターンが両方とも予測パターンと統一な場合のシフト周波数を対象スキャンセクションの使用可能なシフト周波数情報としてコンピューターで読み取り可能な記録媒体に格納する。さらに、図３４で二つ以上の各部は互いに一つのモジュールに統合するか、またはより細分化することができる。例えば、周波数把握部（２０３０）は、ホストコンピューター（２００、３００）、テスター本体（２１０、３１０）、テストヘッド（２２０、３２０）、またはプロバー（３５０）などに備えられる。
【０３７５】
前述したスキャンテスト時間を最小化する装置は、ハードウェアまたはソフトウェアなどを用いて様々な形態で実現することができる。さらに、スキャンテスト時間を最小化する装置の全部または一部は、図２及び３に示すテスト装置内に含まれるか、またはコンピューターのような別途の装置を用いて実現することができる。
【０３７６】
図３５は、本発明の少なくとも一つの実施例に係る複数のスキャンセクションの最適なシフト周波数を並列で検索または決定する方法の一例を示す概略図である。
【０３７７】
図３５に示すように、スキャンテスト時間を最小化する装置は、複数のＩＣチップのそれぞれに対して互いに異なるスキャンセクションの最適なシフト周波数を並列で（Ｉｎ  Ｐａｒａｌｌｅｌ）検索または決定することで、最適なシフト周波数の検索または決定にかかる時間を短縮することができる。
【０３７８】
例えば、テスト装置のテストインタフェースボード（３５０0）に位置する複数のＩＣチップ（３５１０、３５１２、３５１４、３５１６）のそれぞれに対して互いに異なるスキャンセクションの最適なシフト周波数を同時に検索または決定することができる。本発明の少なくとも一つの実施例において、複数のテスト装置または複数のテストインタフェースボードで互いに異なるスキャンセクションの最適なシフト周波数を並列に検索または決定することができる。
【０３７９】
全体のスキャンセクションに対してひとつずつ順次最適なシフト周波数を検索または決定する場合ｈ時間がかかるとすると、ｎ個のスキャンセクションを並列にシフト周波数検索または決定すると、約ｈ／ｎ時間に所要時間を短縮できる。従って、同一の時間以内にＩＣチップをテストするための数千ないし数万個以上のスキャンパターンをより短いスキャンセクションに分割して最適化できる効果を得ることができる。
【０３８０】
図３６は、本発明の少なくとも一つの実施例に係るＩＣチップのテストの時間を最小化するためにスキャンパターンを再配置する方法の一例を示す概略図である。
【０３８１】
図３６に示すように、スキャンテストのためのスキャンパターンの集合上のスキャンパターンは所定の順番を有する。しかし、このようなスキャンパターンの順番は固定的なものではなく、スキャンセクション別に高いシフト周波数を割り当て、全体のスキャンテストにかかる時間を減らすために再配置することができる。例えば、図３６に示すようにオリジナルスキャンパターンの集合上の２番目のスキャンパターンと３番目のスキャンパターンの順番を変えても良い。これによって予測出力スキャンパターンの順番も変わる。
【０３８２】
スキャン経路にシフトされるスキャンパターンの順番を再配置する場合、スキャンシフトによってＩＣチップ上で回路のスイッチングされる部分及びスイッチング動作の回数が変更される場合があり、これによって電力消耗も変更され得るので、スキャンパターン（またはスキャンセクション）に割り当てられるシフト周波数が高くなる場合がある。従って、このようなことを利用してスキャンパターンの再配置後に、前述した本発明の実施例を用いてスキャンセクション別に最適なシフト周波数を検索または決定し、全体的なスキャンテスト時間をより短縮することができる。
【０３８３】
スキャンパターンを再配置する方法としては、一回以上オリジナルスキャンパターン集合上のスキャンパターンを任意に再配置し、再配置されたスキャンパターン集合に対して前述した実施例によって最適なシフト周波数を把握してスキャンテスト時間が最も短い場合をスキャンパターンの配置として決めることができる。他の実施例では、スキャンパターン間のビットパターンの差が最も小さいスキャンパターンを互いに隣り合うように配置するなど、様々な方法がある。
【０３８４】
スキャンパターンの再配置の他の例として、Ｋ（Ｋは１以上の整数）番目のスキャンパターンの次に順番が決まってないスキャンパターンを順次位置させながら前述した最適なシフト周波数を検索する方法と用いて最も高いシフト周波数を有するスキャンパターンをＫ番目のスキャンパターンの次のパターンにすることができる。
【０３８５】
スキャンパターンの順番を再配置する動作の一部または全部はテスト装置に備えられたプロセッサのようなハードウェアとファームウェアまたはソフトウェアによって実行するか、またはコンピューターのような別途の装置で実行することができる。
【０３８６】
さらに、最適なスキャンパターンの配置を探すのに多くの時間がかかる場合、最適なスキャンパターンの配置を探すために最大スキャンパターン再配置可能回数または所要時間などの制約事項を設けても良い。
【０３８７】
本発明の少なくとも一つの実施例において、少なくとも二つ以上のテストデータの最適な周波数を用いてＩＣチップのストレステストまたはバーンイン（Ｂｕｒｎ−ｉｎ）テストにかかる時間を短縮し、テストの品質を高めることができる。本発明の少なくとも一つの実施例において、少なくとも二つ以上のスキャンパターンまたはスキャンセクションに最適なシフト周波数を用いてＩＣチップのストレステストまたはバーンインテスト時間を短縮し、テストの品質を高めることができる。各スキャンパターンまたはスキャンセクションに対する最適なシフト周波数は、本発明の少なくとも一つの実施例に係るスキャンテスト時間最小化方法を用いて検索することができる。
【０３８８】
ここで、ストレステストまたはバーンインテストというのは、一般にＩＣチップを長時間動作させ、ＩＣチップにストレスを与えるか、高い電圧と高温をＩＣチップに印加し、老化（Ａｇｉｎｇ）を加速させることで、ＩＣチップの品質をテストしたり、初期不良（Ｅａｒｌｙ−Ｌｉｆｅ  Ｆａｉｌｕｒｅ）ＩＣチップを事前に発見したりすることである。通常、１００℃を超える高温環境で数十時間以上バーンインテストする。以下、ストレステストまたはバーンインテストを合わせてバーンインテストと称する。さらに、このようなバーンインテストを行えるテスト装置をバーンインテスト装置と称する。
【０３８９】
ＩＣチップの老化は発熱によって多大な影響を受け、発熱はＩＣチップの電力消耗によって多くの影響を受ける。
【０３９０】
例えば、数２は、ＩＣチップの回路が動作する際の電力消耗である動的電力消耗（Ｄｙｎａｍｉｃ  Ｐｏｗｅｒ  Ｄｉｓｓｉｐａｔｉｏｎ）に影響を及ぼす要素を表す。
【０３９１】
（数２）
Ｐ＝α×Ｃ×ｆ×ＶＤＤ２
α：Ａｃｔｉｖｉｔｙ  Ｆａｃｔｏｒ
Ｃ：Ａｖｅｒａｇｅ  Ｓｗｉｔｃｈｅｄ  Ｃａｐａｃｉｔａｎｃｅ  （ａｔ  ｅａｃｈ  ｃｙｃｌｅ）
ｆ：Ｃｉｒｃｕｉｔ  Ｆｒｅｑｕｅｎｃｙ
ＶＤＤ：Ｓｕｐｐｌｙ  Ｖｏｌｔａｇｅ
【０３９２】
ＩＣチップのスキャンモードでは、スキャンパターンのビットパターンによって活性化されるＩＣチップの回路部分が異なる場合がある。一般に、ＩＣチップのスキャンモードでは、機能モードより回路のより多い部分にスイッチング動作（Ｓｗｉｔｃｈｉｎｇ  Ａｃｔｉｖｉｔｉｅｓ）が発生する。従って、スキャンモードで数２に示すように平均スイッチングされるキャパシタンス値Ｃが増加し、電力消耗Ｐが増加し得る。
【０３９３】
さらに、シフト周波数が上がると、数２に示すようにＩＣチップ回路の動作周波数ｆに比例してＩＣチップの電力消耗Ｐが増加し得る。
【０３９４】
ＩＣチップの増加したスイッチング動作はＩＣチップの電力消耗をもっと増加させ、ＩＣチップの発熱温度も高くなる。従って、ＩＣチップの老化がより加速化される。
【０３９５】
本発明の少なくとも一つの実施例において、バーンインテスト装置は、バーンインテスト時に老化をより加速化させ、バーンインテスト時間を短縮できるように、テストデータまたは前述した各スキャンセクションに割り当て可能な最大シフト周波数を用いることができる。
【０３９６】
例えば、バーンインテスト装置は、ＩＣチップのバーンインテストの間に、スキャンパターンまたはスキャンセクションを利用してバーンインテストを加速化することができる。このとき、スキャンテストも一緒に行うことができる。
【０３９７】
さらに、スキャンシフト動作時に名目シフト周波数を用いるとスキャンパターンによって活性化される回路部位のうち、一部には高いストレスが印加され、他の一部には相対的に低いストレスが印加される場合がある。一例として、テストデータのスキャンパターンをスキャンセクションに分割し、分割した各スキャンセクションに割り当て可能な最大シフト周波数を用いてバーンインテストを行うことで、回路上の特定の部位だけ老化が速く進行するか、または相対的に遅く進行する現象を減らすことができる。
【０３９８】
例えば、図４１はテストデータのスキャンパターンに対してシフト周波数を最適化してない場合（４１００）とスキャンパターンをスキャンセクションに分割してシフト周波数を最適化した場合（４１１０）のスキャンシフト動作時に同一のＩＣチップの発熱の差を示す。即ち、シフト周波数が最適化されてないテストデータを用いた場合（４１００）よりシフト周波数が最適化されたスキャンセクションを用いた場合（４１１０）がよりバランス良く高い発熱が発生しているのがわかる。
【０３９９】
即ち、スキャンパターンのビットパターンによって活性化されるＩＣチップの異なる部位に対してよりバランス良くストレスを最大限印加し、バーンインテストの速度に加え、品質も向上させる効果がある。チップをテストするためのテストデータの各スキャンセクションの使用可能な最大周波数を用いてバーンインテスト時間を減らし、品質を高めることができる。
【０４００】
図３７及び３８は、本発明の少なくとも一つの実施例に係るバーンインテストシステムの構成を示すブロック図である。
【０４０１】
図３７及び３８に示すように、バーンインテスト装置は、ホストコンピューター（３７００、３８００）、テスター本体（３７１０、３８１０）、テストヘッド（３７２０、３８２０）、インタフェースボード（３７３０、３８３０）、温度制御部（３７６０、３８７０）、チャンバー（３７５０、３８６０）、及びプロバー（３８５０）を備える。
【０４０２】
テストのためにインタフェースボードに位置するテスト対象デバイス（ＤＵＴ：Ｄｅｖｉｃｅ  Ｕｎｄｅｒ  Ｔｅｓｔ）は、ウェハー上のＩＣまたはパッケージングされたＩＣチップなどである。ＤＵＴがウェハー上のＩＣチップの場合、プローバー（３８５０）をさらに備える。
【０４０３】
テスター本体（３７１０、３８１０）は、スキャンテストとバーンインテストを全体的に制御する。例えば、テスター本体（３７１０、３８１０）は、ＤＵＴテストのためのセットアップ、ＤＵＴテストのための電気的信号の発生、ＤＵＴテスト結果信号の観測及び測定、温度制御部を介してのチャンバーの温度制御などの全般的な工程を制御する。テスター本体（３７１０、３８１０）は、中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、メモリ、ハードディスク、ユーザーインタフェースなどを含むコンピューターで実現することができ、実施例によってＤＵＴに電源を供給するデバイスパワーサプライ装置（Ｄｅｖｉｃｅ  Ｐｏｗｅｒ  Ｓｕｐｐｌｙ）をさらに含むことができる。さらに、テスター本体（３７１０、３８１０）は、各種のディジタル信号を処理する信号処理プロセッサ（ＤＳＰ：Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）（不図示）とテストヘッドを制御し、ＤＵＴ（３７４０、３８４０）に信号を印加する制御器及び信号発生器などの専用ハードウェア、ソフトウェア、またはファームウェアなどを含むことができる。テスター本体（３７１０、３８１０）は、メインフレームまたはサーバーとも呼ばれる。
【０４０４】
ホストコンピューター（３７００、３８００）は、パーソナルコンピューター、ワークステーションなどのコンピューターであり、ユーザーがテストプログラムを実行させ、テスト工程を制御し、テスト結果を分析できるようにする装置である。一般に、ホストコンピューター（３７００、３８００）は、ＣＰＵ、メモリまたはハードディスクのような格納装置、及びユーザーインタフェースなどを含み、テスター本体（３７１０、３８１０）と有線または無線通信で接続される。ホストコンピューター（３７００、３８００）は、テストを制御するための専用ハードウェア、ソフトウェア、及びファームウェアなどを含む。本実施例ではホストコンピューター（３７００、３８００）とテスター本体（３７１０、３８１０）を分けて図示しているが、ホストコンピューター（３７００、３８００）とテスター本体（３７１０、３８１０）は一つの装置で実現することもできる。
【０４０５】
テスター本体（３７１０、３８１０）またはホストコンピューター（３７００、３８００）のメモリにはＤＲＡＭ、ＳＲＡＭ、フラッシュメモリなどを用いることができる。メモリには、ＤＵＴテストを行うためのプログラムとデータを格納することができる。
【０４０６】
テスター本体（３７１０、３８１０）またはホストコンピューター（３７００、３８００）のソフトウェアまたはファームウェアは、スキャンテストのためのデバイスドライバープログラム、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）プログラム、ＤＵＴテストを行うプログラムで、ＤＵＴテストのためのセットアップ、ＤＵＴテストのための信号の発生、ＤＵＴテスト結果信号の観測、分析などを行うための命令コード（Ｉｎｓｔｒｕｃｔｉｏｎ  Ｃｏｄｅ）の形態でメモリに格納され、ＣＰＵによって実行される。
【０４０７】
従って、スキャンパターンは、このようなプログラムによってＤＵＴに印加される。さらに、ＤＵＴテスト及びテスト結果のレポーティング及び分析データをプログラムを介しての自動実行で得ることができる。プログラムに用いられる言語として、Ｃ、Ｃ＋＋、Ｊａｖａなど、様々な言語を用いることができる。プログラムは、ハードディスク、磁気テープ、またはフラッシュメモリなどの記録装置に格納することができる。
【０４０８】
テスター本体（３７１０、３８１０）またはホストコンピューター（３７００、３８００）のＣＰＵは、プロセッサ（Ｐｒｏｃｅｓｓｏｒ）であり、メモリに格納されたソフトウェアまたはプログラムのコードを実行する。例えば、キーボードやマウスなどのユーザーインタフェースを介してユーザー命令を受けると、ＣＰＵはユーザーの命令を分析し、該当する作業をソフトウェアまたはプログラムを介して行った後、その結果をスピーカー、プリンター、モニターなどのユーザーインタフェースを介してユーザーに提供する。
【０４０９】
テスター本体（３７１０、３８１０）またはホストコンピューター（３７００、３８００）のユーザーインタフェースは、ユーザーと装置との間で情報を取り交わし、命令を伝達できるようにする。例えば、キーボード、タッチスクリーン、マウスなどのようなユーザー入力のためのインタフェース装置と、スピーカー、プリンター、モニターなどのような出力インタフェース装置などがある。
【０４１０】
テストヘッド（３７２０、３８２０）はテスター本体（３７１０、３８１０）とＤＵＴとの間に電気的信号を転送するためのチャネルなどを含む。テストヘッド（３７２０、３８２０）の上部にはインタフェースボードが備えられる。パッケージングされたＩＣチップに用いられるインタフェースボードを通常ロードボード（Ｌｏａｄ  Ｂｏａｒｄ）といい、ウェハー上のＩＣチップのテストに用いられるインタフェースボードを通常プローブカード（Ｐｒｏｂｅ  Ｃａｒｄ）という。
【０４１１】
チャンバー（３７５０、３８６０）は、ＤＵＴに老化を加えられる空間である。チャンバー（３７５０、３８６０）は、温度制御部の制御によってチャンバー内に位置するＤＵＴの温度を制御する。温度制御部は、テスター本体（３７１０、３８１０）またはホストコンピューター（３７００、３８００）に含まれても良い。さらに、テスター本体（３７１０、３８１０）またはホストコンピューター（３７００、３８００）はＤＵＴに対するバーンインテスト時間または供給電圧を制御することができる。
【０４１２】
図３７及び３８に示すバーンインテスト装置は、本発明の理解を深めるための一つの例に過ぎないので、それぞれの構成を統合して一体型に実現するか、または一つの構成を複数の構成に分離して実現するなど、実施例によって様々な設計変更が可能である。
【０４１３】
さらに、図３７及び３８に示すバーンインテスト装置は、バーンインテストとスキャンテストを同時に行うか、またはこのうち一つのみを行うように実現することもできる。
【０４１４】
本発明の少なくとも一つの実施例において、バーンインテスト装置は、前述したように、スキャンセクション別に最適なシフト周波数を用いてバーンインテストを行うことができる。本発明の少なくとも一つの実施例において、このときチップの正常または失敗を判断するテスト一緒に行うことができる。
【０４１５】
本発明の少なくとも一つの実施例において、バーンインテスト装置は、前述のように、各スキャンパターンまたはスキャンセクションに対して最適なシフト周波数を用いてスキャンテストと共にバーンインテストを行うことができる。ＩＣチップは機能モードよりスキャンモードでより多くのＩＣチップ回路部分にスイッチング動作が発生するので、スキャンテストを介して老化をより加速化し、バーンインテスト時間を短縮することができる。さらに、分割した各スキャンセクションに割り当て可能な最大シフト周波数を用いてバーンインテストを行うと、バーンインテスト時間をさらに短縮できるだけでなく、特定のスキャンパターンによって回路上の特定の部位だけ老化が早まる現象も減らすことができる。即ち、ＩＣチップに対して全体的にバランス良くストレスを最大限印加し、バーンインテストの品質も向上させる効果がある。最適化されたシフト周波数を用いるスキャンセクションの長さを短くするほどその効果はより高まる。
【０４１６】
本発明は、バーンインテストと共にスキャンテストを同時に行う場合に限定されず、バーンインテスト時にスキャンパターンをシフティングする工程のみを含んで、スキャンテスト自体は行わなくても良い。
【０４１７】
図３９は、本発明の少なくとも一つの実施例に係る単一スキャンシフト周波数を用いてバーンインテストを行う場合にＩＣチップに及ぶ温度の影響の一例を示す概略図である。
【０４１８】
図３９に示すように、複数のスキャンパターンは全て同一のスキャンシフト周波数（例えば、２５ＭＨｚ）を用いてＩＣチップ（３９００）のスキャン経路にシフトされる。各スキャンパターンによってＩＣチップの活性化される部分は異なる場合がある。例えば、スキャンパターン１（３９３０）によって活性化されるＩＣチップ部分（３９１０）とスキャンパターン２（３９３２）によって活性化されるＩＣチップ部分（３９２０）が互いに異なる。
【０４１９】
さらに、各スキャンパターンによってＩＣチップ上の活性化される部分はスキャンシフト周波数やスキャンパターンによる回路のスイッチング回数などによって発生する熱が異なる場合がある。例えば、スキャンパターン１によって活性化されるＩＣチップの部分（３９１０）の温度はａ℃で、スキャンパターン２によって活性化されるＩＣチップの部分（３９２０）の温度はｂ℃である。
【０４２０】
ＩＣチップにより多いストレスや熱を発生させてバーンインテストの老化を加速化するためにシフト周波数を上げることができる。しかし、シフト周波数上げすぎると、正常なＩＣチップを不良品として判定するオーバーキルの問題などが発生し得る。反対に、シフト周波数を下げる場合、ＩＣチップで発生するストレスや熱が足りなくてバーンインテストの老化を効率的に加速できなくなる問題がある。
【０４２１】
図４０は、本発明の少なくとも一つの実施例に係るスキャンパターン別の最適なシフト周波数を用いてバーンインテストを行う場合にＩＣチップに及ぶ温度の影響の一例を示す概略図である。図３９と４０は、同じＩＣチップと同じスキャンパターンを用いた例である。
【０４２２】
図４０に示すように、スキャンパターン別に最適なシフト周波数を用いてスキャン経路にシフトすることで、ＩＣチップの老化を加速化することができる。
【０４２３】
バーンインテストは、通常１００℃を超える高温環境で数十時間以上行うので、バーンインテスト時の時間と電力消耗はテスト費用の上昇をもたらす。即ち、一般にＩＣチップテストサービスプロバイダーはテスト時間に比例して費用を請求するので、チップテストの所要時間はチップの原価に大きい影響を与える。さらに、バーンインテストに用いられるチャンバーに形成する１００℃を超える高温は多くの場合電気を使用するので、このための費用も相当であり、テストサービスプロバイダーの費用とチップの原価に多大な影響を及ぼすことになる。
【０４２４】
従って、バーンインテスト時間とバーンインテストによって消耗される電力を減らすことはテスト費用の削減において大変重要である。さらに、バーンインテスト時間を減らすことは、製品の市場進入時間（Ｔｉｍｅ−ｔｏ−Ｍａｒｋｅｔ）においても大変重要である。
【０４２５】
例えば、図３９に示すスキャンパターン１（３９３０）の最大スキャンシフト周波数が２５ＭＨｚで、スキャンパターン２（３９３２）のシフト周波数はもっと高く設定できる場合、図４０に示すように、スキャンパターン２（４０３２）のシフト周波数を最適化することで上げ、図３９に示す温度（ｂ℃）より高い温度（ｃ℃）によってＩＣチップの老化をより加速化することができる。
【０４２６】
図３９及び４０は、説明の便宜上、スキャンパターンに対してシフト周波数を割り当ててスキャン経路にシフトする場合を説明しているが、図５ないし１０に示すように、スキャンパターンを少なくとも二つ以上のスキャンセクションに分割し、互いに異なるシフト周波数でスキャン経路にシフトすることができる。
【０４２７】
例えば、バーンインテスト時間またはバーンインテスト品質を予測できるように、テスト対象チップのジャンクション温度を所定の範囲内に維持する必要がある。例えば、テスト対象デバイスまたはＩＣチップのジャンクション温度は、数３のように決めることができる。
【０４２８】
（数３）
Ｔｊ＝Ｔａ＋Ｐ＋θｊａ
ここで、Ｔｊはテスト対象デバイスまたはＩＣチップのジャンクション温度、Ｔａは周辺環境の温度（Ａｍｂｉｅｎｔ  Ｔｅｍｐｅｒａｔｕｒｅ）、Ｐはテスト対象デバイスまたはＩＣチップの電力消耗、θｊａはテスト対象デバイスまたはＩＣチップの熱抵抗を表す。
【０４２９】
数３を参照すると、Ｔｊの制御度（Ｃｏｎｔｒｏｌｌａｂｉｌｉｔｙ）は、ＴａとＰの制御度に依存する。例えば、Ｔａはテスト対象デバイスまたはＩＣチップの外部環境の温度を制御するチャンバーまたはサーマルチャック（Ｔｈｅｒｍａｌ  Ｃｈｕｃｋ）などの装置を使用して適正温度に制御することができる。従って、チップのバーンインテストの間に電力消耗Ｐを制御する方法が必要である。例えば、チップのバーンインテストの間に電力消耗の変動（Ｆｌｕｃｔｕａｔｉｏｎ）はチップのジャンクション温度（Ｊｕｎｃｔｉｏｎ  Ｔｅｍｐｅｒａｔｕｒｅ）Ｔｊに相当影響を与える可能性があり、チップの信頼度検査工程（Ｒｅｌｉａｂｉｌｉｔｙ  Ｓｃｒｅｅｎｉｎｇ  Ｐｒｏｃｅｓｓ）に悪い影響を及ぼす場合がある。
【０４３０】
バーンインテストに必要な時間は、数３のジャンクション温度Ｔｊの中央値（Ｍｅｄｉａｎ  Ｖａｌｕｅ）に基づいて予測することができる。例えば、ジャンクション温度は図４２の電力消耗Ｐｂｕｒｎ−ｉｎの値によって決めることができる。Ｐｂｕｒｎ−ｉｎはテストデータによる電力消耗の中央値または平均値或いは良質のバーンインテスト時に予測される電力消耗値である。
【０４３１】
図４２は、テストデータの電力消耗を調整する前のバーンインテストの間に発生する電力消耗の一例を示すグラフである。図４３は、テストデータの電力消耗を調整した後のバーンインテストの間に発生する電力消耗の一例を示すグラフである。
【０４３２】
図４２に示すように、電力消耗がＰｂｕｒｎ−ｉｎまたはマージンが反映されたＰｍａｒｇｉｎ−ｈｉｇｈより高くなると、オーバーバーンイン（Ｏｖｅｒ  ｂｕｒｎ−ｉｎ）状態が発生する場合がある。これが発生すると、チップの収率に悪い影響を与える。
【０４３３】
電力消耗がＰｂｕｒｎ−ｉｎまたはマージンが反映されたＰｍａｒｇｉｎ−ｈｉｇｈより低くなると、アンダーバーンイン（Ｕｎｄｅｒ  ｂｕｒｎ−ｉｎ）状態が発生する場合がある。これが発生すると、潜在的な欠陥（Ｄｅｆｅｃｔ）があるチップがテスト工程（Ｔｅｓｔ  Ｐｒｏｃｅｓｓ）をパスする状況を作り上げることになる。
【０４３４】
従って、バーンイン時間とバーンイン品質に対する予測が正確になるようにテストデータによる電力消耗が図４３に示すようにＰｂｕｒｎ−ｉｎに近づける必要がある。即ち、テストデータによる電力消耗の変動が大きくならないようにし、ＩＣチップの発熱の変移を最小化する必要がある。
【０４３５】
バーンインテスト時の電力消耗を最適化してバーンイン時間を短縮するか、予測可能にし、バーンイン品質を高める方法の実施例を以下に説明する。
【０４３６】
ステップ１
テストデータを少なくとも二つ以上のサブデータに分割する。例えば、図４３に示すように、テストデータはテスト時間軸を基準に３個のサブデータに分割することができる。
【０４３７】
ステップ２
ステップ１で分割された少なくとも二つ以上のサブデータの電力消耗の差が最小化されるように各サブデータをチップに入力するのに用いられるシフト周波数を検索または決定する。各サブデータによる電力消耗がバーンインテストのための予測電力消耗（または予測電流消耗）と近接するか同一になるように各サブデータをチップに入力するのに用いられる周波数を検索または決定する。例えば、図４３に示すように、各サブデータの周波数を調整し、テストデータによる電力消耗がＰｂｕｒｎ−ｉｎに近づくようにする。
【０４３８】
ステップ３
サブデータ別にステップ２で検索または決定した周波数を用いてバーンインテストを行う。例えば、図４３に示すように、各サブデータ区間の電力消耗がＰｂｕｒｎ−ｉｎに近づくようにしてバーンインテストを行う。
【０４３９】
ステップ１ないし３のサブデータは、スキャンセクションまたは機能的テストデータ（チップの機能に関するテストに用いられるデータ）である。
【０４４０】
ステップ１ないし３の各ステップは、実施例によって同一の装置または異なる装置でそれぞれ実行することができる。例えば、テスト装置またはコンピューターなどの装置で実行することができる。
【０４４１】
他の実施例として、バーンインテスト時の電力消耗を最適化してバーンイン時間を短縮または予測可能にし、バーンイン品質を高める他の方法は次の通りである。
【０４４２】
ステップ１
テストデータを少なくとも二つ以上のサブデータに分割する。
【０４４３】
ステップ２
各サブデータに対して正常なチップのテスト結果が正常と現れる最大シフト周波数を検索または決定する。例えば、最大シフト周波数はテスト時間を最小化するために最適化された周波数または最大シフト周波数にマージンを反映した周波数である。
【０４４４】
ステップ３
ステップ２で各サブデータに対して検索または決定した最大シフト周波数を用いて電力消耗や電流消耗を測定または推定する。
【０４４５】
ステップ４
ステップ３で測定または推定した電力消耗や電流消耗が最適なバーンインテストのための電力消耗の基準より大きい場合があるサブデータを探す。例えば、最適なバーンインテストのための電力消耗の基準は図４２または４３でＰｂｕｒｎ−ｉｎまたはＰｍａｒｇｉｎ−ｈｉｇｈである。
【０４４６】
ステップ５
ステップ４で検索したサブデータの周波数を下げてサブデータの電力消耗が最適なバーンインテストのための電力消耗または電流消耗と同一になるかそれに近接するように調整する。例えば、最適なバーンインテストのための電力消耗の基準は図４２または４３でＰｂｕｒｎ−ｉｎ、Ｐｍａｒｇｉｎ−ｈｉｇｈまたはＰｍａｒｇｉｎ−ｌｏｗであっても良い。さらに、ステップ３で測定または推定された各サブデータの電力消耗や電流消耗が最適なバーンインテストのための電力消耗または電流消耗より小さい場合がある。しかし、このとき該当するサブデータの周波数を最適なバーンインテストのための電力消耗または電流消耗と同一になるかそれに隣接するように上げるとテスト失敗が発生し得るので、注意が必要である。
【０４４７】
ステップ６
ステップ５で調整された各サブデータのシフト周波数を用いてバーンインテストを行う。
【０４４８】
本発明の少なくとも一つの実施例において、ステップ１ないし６のサブデータはスキャンセクションまたは機能的テストデータである。
【０４４９】
ステップ１ないし６の各ステップは、実施例によって同一の装置または異なる装置でそれぞれ実行することができる。例えば、テスト装置またはコンピューターなどの装置で実行することができる。
【０４５０】
他の実施例として、狙いの電力消耗に該当する周波数を検索または決定する方法は次の通りである。ある周波数を用いてサブデータによって消耗される電力消耗値を測定または推定する。そして、数２で示すように電力消耗と周波数との関係式を用いてαｘＣｘＶｄｄ２に対する常数の値を計算する。そして、常数の値と狙いの電力消耗値を数２に代入して目的の周波数値を計算することができる。
【０４５１】
本発明の少なくとも一つの実施例において、周波数を増加または減少しながらサブデータによって消耗される電力消耗を測定または推定し、狙いの周波数を検索または決定することができる。
【０４５２】
本発明の少なくとも一つの実施例において、サブデータによって消耗される電力消耗は電力または電流消耗を測定または推定する装置またはソフトウェアを用いて測定または推定することができる。
【０４５３】
図４４は、本発明の少なくとも一つの実施例に係るバーンインテスト時間を最小化するためにスキャンセクション別の最適なシフト周波数を検索する方法の一例を示すフローチャートである。
【０４５４】
図４４に示すように、バーンインテスト時間最小化装置は、一つ以上のスキャンパターンを少なくとも二つ以上のスキャンセクションに分割する（ステップＳ４４００）。スキャンパターンの分割の例は、図５ないし１０に示す方法を用いることができる。バーンインテスト時間最小化装置は複数のシフト周波数をスキャンセクションにそれぞれ割り当てる（ステップＳ４４１０）。ここで、各スキャンセクション割り当てられるシフト周波数の値はスキャン経路の出力パターンが予測パターンと異なる状態になるシフト周波数より低い値である。そして、バーンインテスト時間最小化装置は、スキャンセクション別に割り当てられたシフト周波数を用いて当該スキャンセクションをシフトしながらバーンインテストを行う（ステップＳ４４２０）。
【０４５５】
スキャンパターンのスキャンセクションへの分割（ステップＳ４４００）とシフト周波数のスキャンセクションへの割り当て（ステップＳ４４１０）、バーンインテストの遂行（ステップＳ４４２０）などは、実施例によって同一の装置または異なる装置でそれぞれ行うことができる。
【０４５６】
バーンインテスト時間最小化装置は、シフト周波数の増減によって出力パターンと予測パターンが異なる直前のシフト周波数を検索し、当該スキャンセクションに割り当て可能な最大シフト周波数として決定する。実施例によって、各スキャンセクションはシフト周波数の増減を介して検索した最大シフト周波数より低いシフト周波数を割り当てられる場合がある。
【０４５７】
本発明の少なくとも一つの実施例に係るバーンインテストのためにスキャンセクション別に最適なシフト周波数を検索する方法として、前述した様々な実施例を用いることができる。例えば、バーンインテスト時間最小化装置は、図１２ないし３３に示す方法を実行してスキャンセクション別に最適なシフト周波数を検索することができる。さらに、図３６に示すスキャンパターンの配置順番を変更する方法もバーンインテスト時間短縮及びバーンインテスト品質向上のために適用することができる。
【０４５８】
図４５は、本発明の少なくとも一つの実施例に係るバーンインテスト時間を最小化する装置の一例を示すブロック図である。
【０４５９】
図４５に示すように、本発明の少なくとも一つの実施例に係るバーンインテスト時間を最小化する装置は、チャンバー制御部（４５００）、シフティング部（４５１０）、及びシフト周波数把握部（シフト周波数検索部）（４５２０）を備える。
【０４６０】
チャンバー制御部（４５００）は、検査対象ＩＣチップに供給される電圧、温度、バーンインテスト時間などを制御する。
【０４６１】
シフト周波数把握部（４５２０）は、バーンインテスト時にＩＣチップのスキャン経路にシフトする最適なシフト周波数をスキャンセクション別に検索する。例えば、シフト周波数把握部（４５２０）は前述した様々な実施例のうち少なくとも一つ以上に基づいてスキャンセクション別に最適なシフト周波数を決定することができる。さらに、最適なシフト周波数の把握は、バーンインテスト時間最小化装置のみならず、別途の装置で行って検索または決定することができ、検索または決定されたシフト周波数はシフト周波数把握部（４５２０）によって用いられても良い。
【０４６２】
シフティング部（４５１０）は、チャンバー制御部（４５００）によってバーンインテストが行われる間に、シフト周波数把握部（４５２０）によって把握された最適なシフト周波数を用いてスキャン経路にスキャンセクションをシフトすることでバーンインテスト時間を最小化する。
【０４６３】
本発明の少なくとも一つの実施例において、スキャンセクション別に最適化された周波数を用いてバーンインテストのみを行うか、バーンインテストと共にチップのテストを行うことができる。バーンインテスト時間最小化装置はバーンインテストと共に前述したスキャンテストを行うことができる。
【０４６４】
バーンインテスト時間最小化装置は、図３７及び３８に示すバーンインテスト装置の一部として実現することができる。本発明の少なくとも一つの実施例において、スキャンセクション別に最適化された周波数を用いてバーンインテストのみを行うか、バーンインテストと共にチップのテストを行うことができる。例えば、スキャンセクション別に最適化されたシフト周波数が割り当てられたスキャンパターンの集合を用いてバーンインテストのみを行うか、バーンインテストとスキャンテストを共に行うことができる。
【０４６５】
バーンインテスト時間最小化装置は、図３６に示すスキャンパターンの再配置方法を用いてスキャン経路にシフトされるスキャンパターンの順番を再配置することができる。この場合、スキャンパターンの集合上で再配置されたパターン位置のスキャンパターンのシフトによってＩＣチップ上で回路のスイッチングされる部分及びスイッチング動作回数が再配置の前と異なり、これによって電力消耗など回路の動作特性が変更される場合がある。従って、スキャンパターン（または スキャンセクション）に割り当てられるシフト周波数が高くなる可能性がある。従って、このような性質を利用してスキャンパターンの再配置後に前述した実施例を用いてスキャンセクション別に最適なシフト周波数を検索または決定し、全体的なバーンインテスト時間をより短縮し、テスト品質を高めることができる。さらに、スキャンパターンの再配置はバーンインテスト時間最小化装置のみならず、コンピューターなどの別途の装置行って、バーンインテスト時間最小化装置によって用いられても良い。
【０４６６】
図４６は、ＭＣＵ（Ｍｉｃｒｏ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）プロセッサＩＣチップとＩＣチップのテストパターンを用いた実験結果を表す表で、シフト周波数決定対象スキャンセクションが一つのスキャンパターンに一対一に対応する場合である。図４６は、スキャンパターンによる電力消耗がＩＣチップの許容可能な電力消耗以下を維持しながら、最大限可能なシフト周波数を検索する臨界電力基盤方法（Ｐｏｗｅｒ−Ｌｉｍｉｔ−Ｂａｓｅｄ  Ｍｅｔｈｏｄ）及び前述した本発明の少なくとも一つの実施例に係るシフト周波数増減基盤方法（Ｓｈｉｆｔ−Ｆｒｅｑｕｅｎｃｙ−Ｓｃａｌｉｎｇ−Ｂａｓｅｄ  Ｍｅｔｈｏｄ）を用いて各スキャンパターンに対して検索した最大シフト周波数を示す。
【０４６７】
図４６に示すように、シフト周波数増減基盤方法を用いた最適化は図１２の方法を用いた。さらに、図４６に示すように、臨界電力基盤方法とシフト周波数増減基盤方法による最大シフト周波数の結果の差があるのは実際ＩＣチップとＩＣチップのテスト環境ではＩＣチップの電力消耗の他にシフト周波数に影響を与え得る回路構造と特徴、様々な物理的条件と環境などがあるからである。
【０４６８】
図４６の電力消耗限界（Ｐｏｗｅｒ  Ｃｏｎｓｕｍｐｔｉｏｎ  Ｌｉｍｉｔ）は、ＩＣチップの機能的周波数の限界である８０ＭＨｚでＩＣチップを機能モードで動作させた場合の平均電力消耗で、約２８５ｍＷである。
【０４６９】
通常、機能的周波数の限界はＩＣチップが損傷される周波数限界またはスキャンシフト周波数限界とは異なる。例えば、周波数限界はスキャンテストまたは機能的動作モードによる回路動作特性、電力消耗（Ｐｏｗｅｒ  Ｃｏｎｓｕｍｐｔｉｏｎ）、信号ライン間干渉（Ｓｉｇｎａｌ  Ｃｒｏｓｓｔａｌｋ）の影響、臨界タイミング経路（Ｃｒｉｔｉｃａｌ  Ｔｉｍｉｎｇ  Ｐａｔｈ）などが異なるからである。さらに、回路上の互いに異なる位置に供給される電圧または電力の差などの様々な制約を受ける場合があるからである。
【０４７０】
図４６の一番目の列はスキャンパターン番号で、二番目の列はＩＣチップの漏洩電流による電力消耗である。三番目の列は名目シフト周波数２５ＭＨｚを用いたスキャンシフトによって消耗される動的（Ｄｙｎａｍｉｃ）電力消耗である。四番目の列は二番目の列と三番目の列の和で、名目シフト周波数２５ＭＨｚを用いた場合スキャンパターン当りの総電力消耗である。五番目の列は電力消耗の限界値２８５ｍＷを超えないで各スキャンパターンの最大限可能なシフト周波数である。
【０４７１】
六番目の列は各スキャンパターンに対して五番目の列のシフト周波数でテストした場合のＭＣＵＩＣチップのテスト結果で、テスト正常または失敗を表す。
【０４７２】
七番目の列は前述した本発明の少なくとも一つの実施例に係る方法によるシフト周波数増減基盤方法を用いて検索した最大シフト周波数で、全てテスト結果正常を表している。
【０４７３】
八番目の列は臨界電力基盤方法による結果である五番目の列対比シフト周波数増減基盤方法による結果である七番目の列に対する増減比率（％）を表す。
【０４７４】
図４６に示すように、臨界電力基盤方法でスキャンテストが正常に行われなかった六番目のスキャンパターンの場合を除いて平均約３０％以上シフト周波数増減基盤方法でのシフト周波数が高いことがわかる。例えば、シフトされるビットパターンによって偽（Ｆａｌｓｅ）クリティカル経路の場合が発生するか、テスト結果に影響を与えないドンケアビットに該当するスキャンパターン上のビットなど様々な理由が挙げられる。
【０４７５】
図４６で六番目のスキャンパターンの場合のように、スキャンパターンによって消耗される電力消耗がＩＣチップの許容可能な電力消耗超えないようにするシフト周波数を用いてもＩＣチップを正常にテストできない場合もあり得ることがわかる。この理由は、シフト周波数限界は電力消耗のみならず、ＩＣチップの回路構造による臨界タイミング経路の信号遅延時間、信号干渉、回路上の互いに異なる位置に供給される電圧または電力の差、信号または電力ノイズ、チップ製造プロセスばらつき、及び回路の物理的特性などの様々な影響を受けることがあるからである。さらに、テスト対象チップの周辺温度、チップとチップテスト装置との瀬戸族状態などテスト環境及び条件の影響も受けることがあるからである。
【０４７６】
さらに、シフト周波数増減を介して最適なシフト周波数を把握する工程でスキャンセクションまたはスキャンパターンのビットの値が、シフトインされる間に予期せぬ理由により変わってスキャン経路にロードされても、ＩＣチップ回路の構造によってスキャンキャプチャー動作後の結果パターンがスキャン経路上に正常なビットパターンとして現れる場合がある。
【０４７７】
従って、シフト周波数の増減を介してスキャン経路にスキャンセクションロードしてスキャンキャプチャーを行う前に、ＩＣチップのメイン出力ポートの出力結果を予測結果と比較し、メイン出力結果が正常（ＰＡＳＳ）であるかを確認することで、より正確に最適なシフト周波数を検索することができる。
【０４７８】
図４７は、ＩＣチップのテストの際に発生し得るテストフェイルホールの一例を示すグラフである。
【０４７９】
ＩＣチップをテストするためにテスト装置、テストデータ、またはテストプログラムをセットアップする工程がある。ＩＣチップに故障がないと（Ｆａｕｌｔ−Ｆｒｅｅ）されるべき正常なシフト周波数の範囲内で非正常的なテスト失敗が発生する場合がある。このような非正常的なテスト失敗（４７００）をテストフェイルホール（Ｆａｉｌ  Ｈｏｌｅ）と称し、テスト周波数フェールホールまたはテスト周波数の周期のフェールホールとも呼ぶ。
【０４８０】
図４７に示す例は、ＩＣチップをテストするとき、３０ＭＨｚで非正常的なテスト失敗（４７００）が発生した場合である。テストフェイルホールは、ＩＣチップの量産テストを不安定にし、収率に悪い影響を与える場合があるので、除去した方が望ましい。
【０４８１】
図４８は、本発明の少なくとも一つの実施例に係るテストフェイルホール問題を解決する方法の一例を示すグラフである。
【０４８２】
図４８に示すのは、テストフェイルホールの問題を解決するための一例である。テストフェイルホールの問題を解決するには、テストフェイルホールが発生するが、フェイルホールの発生に影響を与える特定のサブデータに対するテストが行われないようにする方法がある。
【０４８３】
例えば、フェイルホールが発生したサブデータに対するＩＣチップのテスト出力データが予測データと比較されないようにする方法がある。このような方法はテストデータマスキングまたはテストデータの予測結果マスキング（Ｅｘｐｅｃｔｅｄ  Ｒｅｓｕｌｔ  Ｍａｓｋｉｎｇ）という。以下の実施例で、サブデータはスキャンパターン、スキャンセクションまたは機能的テストデータを意味する。テストデータマスキング方法がスキャンパターンに適用された場合をスキャンパターンマスキング（Ｓｃａｎ  Ｐａｔｔｅｒｎ  Ｍａｓｋｉｎｇ）またはスキャンテストの予測結果マスキングと称することができる。他の例として、テストフェイルホールの発生に影響を与えるサブデータを除去するかまたは使用しない方法がある。
【０４８４】
図４８に示す例では、３０ＭＨｚでフェイルホールが発生した第２サブデータを検索し、マスキングまたは除去することができる。しかし、サブデータをマスキングまたは除去する方法はテスト対象ＩＣの故障検出率（Ｆａｕｌｔ  Ｃｏｖｅｒａｇｅ）を下げる恐れがある。さらに、サブデータをマスキングまたは除去する方法によって故障のある（Ｆａｕｌｔｙ）ＩＣチップに故障がないと（Ｆａｕｌｔ−Ｆｒｅｅ）テスト判定される恐れがある。そして、これによって故障のあるＩＣチップがフィールドに出て行くフィールドエスケープ（Ｆｉｅｌｄ  Ｅｓｃａｐｅ）問題が発生する恐れがある。
【０４８５】
従って、テストフェイルホールの問題を解決するための方法の他の実施例として、フェイルホールが発生するかまたはフェイルホールの発生に影響を与えるサブデータ及びフェイルホールに該当する周波数を探し、フェイルホールが発生するかまたはフェイルホールの発生に影響を与える特定のサブデータでフェイルホールが発生しない周波数を用いる。
【０４８６】
図４９は、本発明の少なくとも一つの実施例に係るテストフェイルホール問題を解決する方法の一例を示すフローチャートである。
【０４８７】
図４９に示すように、テスト装置はテストデータを構成するサブデータを選択する（ステップＳ４９００）。ここで、サブデータは、スキャンパターンまたはスキャンセクションである。テスト装置は、サブデータの周波数を増減しながらＩＣチップのテストを行い（ステップＳ４９１０）、ＩＣチップのＰＡＳＳまたはＦＡＩＬテスト結果に基づいて選択したサブデータに対して使用可能な周波数またはフェイルホールを検索する（ステップＳ４９２０）。そして、選択したサブデータに対してフェイルホールが発生しない周波数を用いてＩＣチップをテストする（ステップＳ４９３０）。
【０４８８】
例えば、スキャンパターンまたはスキャンセクションに対してフェイルホールを検索する際には、シフト周波数の増減を用いてスキャンパターンまたはスキャンセクションの使用可能なシフト周波数を検索する前述した様々な方法を用いることができる。
【０４８９】
図５０は、本発明の少なくとも一つの実施例に係るテストフェイルホール問題を解決する方法の一例を示すグラフである。
【０４９０】
図５０に示すように、テストフェイルホール（５０００）が発生した第２サブデータには２５ＭＨｚ以下の周波数を用いることができる。ここで、サブデータは、スキャンパターン、スキャンセクションまたは機能的テストデータである。
【０４９１】
第１サブデータ、第２サブデータ、第３サブデータがそれぞれ第１スキャンパターン、第２スキャンパターン、及び第３スキャンパターンだとすると、第１スキャンパターン、第２スキャンパターン、及び第３スキャンパターンは順にテスト対象ＩＣチップのスキャン経路にシフトされる。第２スキャンパターンまたは第２スキャンパターンに含まれたスキャンセクションに対するテストフェイルホール（５０００）を検索する方法は、シフト周波数の増減を用いてスキャンパターンまたはスキャンセクションの使用可能なシフト周波数を検索する前述した様々な方法を適用することができる。
【０４９２】
例えば、第２スキャンパターンのシフト周波数を増減しながら第２スキャンパターンの前または後に位置する第１スキャンパターンまたは第３スキャンパターンをスキャン経路に正常に入力できる周波数を用いてシフトインする。そして、スキャンテスト結果を用いて第２スキャンパターンに対するフェイルホール及び使用可能なシフト周波数範囲を検索することができる。第２スキャンパターンに対するフェイルホールまたは使用可能な周波数範囲を検索する際に用いる第１スキャンパターンまたは第３スキャンパターンのシフト周波数は同一であるかまたは互いに異なる周波数であっても良い。
【０４９３】
第２スキャンパターンに対するフェイルホールまたは使用可能な周波数範囲を検索するためのスキャンテスト工程で、第２スキャンパターンの出力パターンのみならず、第２スキャンパターンの前に位置する第１スキャンパターンの出力パターンも該当する予測パターンと比較することができる。このとき、第１スキャンパターン及び第２スキャンパターンのテスト結果が両方とも正常の場合、現在のシフト周波数は第２スキャンパターンの使用可能なシフト周波数である。他の例として、第２スキャンパターンの後に位置するスキャンパターンである第３スキャンパターンの出力パターンと予測パターンを比較することができる。そして、第２スキャンパターン及び第３スキャンパターンのテスト結果が両方とも正常であれば、現在のシフト周波数は第２スキャンパターンの使用可能なシフト周波数である。
【０４９４】
テストフェイルホールが発生するかまたはフェイルホールの発生に影響を与えるスキャンパターンは第２スキャンパターンの前または後で入力される第１スキャンパターンまたは第３スキャンパターンである場合がある。第２スキャンパターンのシフト周波数が第１スキャンパターンの出力パターンがシフトアウトされる際にスキャン経路上のビット値に影響を与える場合があるからである。さらに、第２スキャンパターンによるテスト結果がシフトアウトされる際にスキャン経路上のビット値が第３スキャンパターンをスキャン経路にシフトインするシフト周波数により影響を受ける場合があるからである。従って、特定のスキャンセクションまたはスキャンパターンによるテスト結果にテストフェイルホールがある場合、スキャンセクションまたはスキャンパターンの前または後に位置するスキャンセクションまたはスキャンパターンがフェイルホールの発生に影響を与えるかを把握する。
【０４９５】
例えば、第２スキャンパターンにはスキャン経路に正常にシフトできる周波数が用いられ、第３スキャンパターンのシフト周波数を上げながらテスト結果を確認する。このとき、もし第２スキャンパターンによるテスト結果は失敗で、第３スキャンパターンによるテスト結果は正常の場合が発生したら、第３スキャンパターンのシフト周波数は第２スキャンパターンのテスト失敗が発生しない周波数を用いる。このようにすることで、第２スキャンパターンのテスト結果に現れるフェイルホールに対する第３スキャンパターンの影響を除去することができる。
【０４９６】
本発明の少なくとも一つの実施例において、シフト周波数を増加または減少しながらスキャンテストを行う。そして、ある特定のシフト周波数でフェイルホールが発生すると、フェイルホールに該当するシフト周波数を用いたスキャンテストが失敗だった特定のスキャンパターンを探す。そして、特定のスキャンパターン及び特定のスキャンパターンと隣り合う前または後のスキャンパターンにはフェイルホールが発生したシフト周波数より低いシフト周波数を用いてチップテストを行う。即ち、フェイルホールの発生に影響を与える隣り合うスキャンパターンにフェイルホールが発生したシフト周波数より低いシフト周波数を用いる。
【０４９７】
本発明の少なくとも一つの実施例において、シフト周波数の増減を用いてフェイルホールが発生するスキャンセクションまたはスキャンパターンと該当するシフト周波数を探す。そして、製造工程及びテストなどを考慮したシフト周波数のマージンの範囲内でフェイルホールが発生しないシフト周波数をスキャンセクションまたはスキャンパターンに使用する。例えば、フェイルホールが発生したシフト周波数より高くてマージン範囲内ではフェイルホールが発生しないシフト周波数を用いることができる。他の例では、フェイルホールが発生したスキャンセクションまたはスキャンパターンと隣り合うスキャンセクションまたはスキャンパターンにもフェイルホールが発生したシフト周波数より高くてマージン範囲内ではフェイルホールが発生しないシフト周波数を用いることができる。
【０４９８】
前述のように、特定のサブデータに対してフェイルホールが発生しない周波数または周波数の周期をチップの量産テストに使用すると、サブデータをマスキングまたは除去する方法によってＩＣチップの故障検出率が低下する問題を解決することができる。さらに、故障のあるＩＣチップがフィールドに出て行くフィールドエスケープの問題を解決することができる。フェイルホールが発生しない特定の周波数または周波数の周期の範囲を探い、チップのテストに用いることができる。
【０４９９】
図５１は、本発明の少なくとも一つの実施例に係るテスト時間短縮及び収率向上のためのシフト周波数を検索する方法の一例を示すグラフである。
【０５００】
図５１に示すように、少なくとも二つ以上のスキャンセクションをチップのスキャン経路に互いに異なるシフト周波数を用いてシフトしてチップのテストを行うとする。このとき、二つ以上のスキャンセクションにテスト結果がすべて正常である特定のシフト周波数（５１００）を基準にテスト正常マージンが小さい第１スキャンセクションにはマージンを増やしたシフト周波数が用いられる。シフト周波数のテスト正常マージンが大きい第２スキャンセクションにはマージンを減らしたシフト周波数が用いられる。
【０５０１】
スキャンセクションのシフト周波数マージンはスキャンセクションのテスト正常または失敗情報を用いて検索または決定することができる。例えば、スキャンセクションのテスト正常と失敗の境界になる周波数または周波数の周期と特定のシフト周波数（５１００）の間の間隔を表すマージンを検索または決定することができる。マージンが反映されたシフト周波数を用いるスキャンセクションとその前に位置するスキャンセクションによるテスト結果が両方とも正常でなければならない。
【０５０２】
シフト周波数のマージンが小さいスキャンセクションに対してマージンを増やすとチップの製造工程やテスト環境などの変移に対してテスト時により少ない影響を受ける。従って、収率改善に効果がある場合がある。
【０５０３】
さらに、シフト周波数またはシフト周波数の周期のマージンが大きいスキャンセクションに対してマージンを減らすと、テスト時間を短縮できる効果がある。
【０５０４】
従って、収率改善とテスト時間短縮という互いに反する効果をスキャンセクション別に周波数のマージンを考慮することで共に得ることができる。
【０５０５】
図５１に示すように、第１スキャンセクションと第２スキャンセクションは名目シフト周波数（５１００）２０ＭＨｚで両方ともテストパスである。２０ＭＨｚを基準に第１スキャンセクションのシフト周波数のマージンが予め設定された基準値より小さいと、テスト装置は第１スキャンセクションのシフト周波数のマージンを増やしてチップの量産テスト時の収率を改善することができる。即ち、第１スキャンセクションの使用シフト周波数を基準値を満足するように２０ＭＨｚより小さい値に変更する。さらに、２０ＭＨｚを基準に第２スキャンセクションのシフト周波数またはシフト周波数の周期のマージンが基準値より大きいと、第２スキャンセクションの周波数または周波数の周期のマージンを減らし、チップの量産テスト時にテストの総時間を短縮することができる。即ち、第２スキャンセクションの使用シフト周波数を、基準値を満足するように２０ＭＨｚより大きい値に変更する。
【０５０６】
以上のように少なくとも二つ以上のスキャンセクションに対して最適なシフト周波数を探してチップテストを行うにおいて、互いに隣り合うスキャンセクションの境界ビットのシフトタイミングが問題になる場合がある。
【０５０７】
スキャンセクションＳ１の最後のビットをその後ろに順次スキャン経路にシフトインされるスキャンセクションＳ２の一番目のビットの間のシフト周波数の周期をＣＰ＿ｂｏｕｎｄａｒｙ（Ｃｌｏｃｋ  Ｐｅｒｉｏｄ  ｏｆ  Ｂｏｕｎｄａｒｙ  Ｂｉｔｓ）とすると、スキャンセクションＳ２の最適な最大シフト周波数の周期を検索したとき、Ｓ１とＳ２の第１ＣＰ＿ｂｏｕｎｄａｒｙと最適なシフト周波数の周期を決定したＳ１とＳ２の第２ＣＰ＿ｂｏｕｎｄａｒｙは異なる場合がある。例えば、第１ＣＰ＿ｂｏｕｎｄａｒｙより第２ＣＰ＿ｂｏｕｎｄａｒｙが小さい場合、スキャンセクションＳ１とＳ２を用いたスキャンテストは正常なチップに対して故障があると判断する可能性がある。
【０５０８】
このような場合に、互いに隣り合うスキャンセクションの境界ビットのシフトタイミング問題を解決するためには次のような方法を用いることができる。
【０５０９】
（１）スキャンセクションＳ１の最適な最大シフト周波数が決まっている場合、スキャンセクションＳ１の次にシフトインされるスキャンセクションＳ２の最適な最大シフト周波数を検索する際に、スキャンセクションＳ１には、Ｓ１に対して決められた最適なシフト周波数を用いる。
【０５１０】
（２）ＣＤＰ（Ｃｌｏｃｋ  Ｄｅｆｉｎｉｔｉｏｎ  Ｐｅｒｉｏｄ）の境界または境界に近接した位置にスキャンビットのシフト動作が行われるクロックエッジが位置するようにする。ＣＤＰは、クロックの形が定義される時間区間で、この区間内でクロック信号の立ち上がりまたは立ち下がり時期などが定義される。ＣＤＰは装置やテストデータで設定することができる。
【０５１１】
（３）スキャンセクションＳ１の最後のビットとその後に順次スキャン経路にシフトインされるスキャンセクションＳ２の一番目のビットの間のシフト周波数の周期またはシフト時間間隔を調整する。例えば、Ｓ１とＳ２を含むスキャンパターンを用いてスキャンテストを行う場合正常なチップを正常と判断できるシフト周波数の周期に調整する。シフト周波数の周期またはシフト時間間隔はテストデータで定義されるか、テスト装置で設定される。例えば、スキャンセクションＳ１とＳ２それぞれに対して最適なシフト周波数の周期が割り当てられた新規テストデータを作成する際に、スキャンセクションＳ１の最後のビットまたはＳ２の一番目のビットに対するタイミング情報を改めて作成し、タイミング情報にはＳ１とＳ２を含むスキャンパターンを用いてスキャンテストを行う場合正常なチップを正常と判断できるシフト周波数の周期が割り当てられる。例えば、名目シフト周波数の周期などが割り当てられる。
【０５１２】
（４）互いに隣り合うスキャンセクションの境界ビットのシフトタイミング問題によって正常なチップに対してスキャンテスト時に故障があると判断する場合、当該境界ビットを含むスキャンセクションまたはスキャンパターンのシフト周波数の周期を増加する。
【０５１３】
本発明の少なくとも一つの実施例を実行するための機能及び本発明の少なくとも一つの実施例を実行して得られたスキャンシフト周波数情報またはこの情報が反映されたスキャンセクション情報は、コンピューターで読み取り可能な記録媒体にコンピューターで読み取り可能なコードまたはデータとして格納することができる。コードの一例として、実行可能なコンピュータープログラムまたはソフトウェアなどが挙げられる。コードまたはデータは、スキャンテスト装置、バーンインテスト装置、またはコンピューターなどの装置で実行されるか用いられる。コンピューターで読み取り可能な記録媒体は、コンピューターシステムによって読み込むことができるデータが格納されるすべての種類の記録装置を含む。コンピューターで読み取り可能な記録媒体の例として、様々な形態のＲＯＭ、ＲＡＭ、ＦＬＡＳＨメモリ、ＣＤ−ＲＯＭ、磁気テープ、フロッピーディスク、ハードディスク、光データ記録装置などが挙げられる。
【０５１４】
さらに、コンピューターで読み取り可能な記録媒体は、ネットワークで接続されたコンピューターシステムに分散され、分散方式でコンピューターで読み取り可能なコードまたはデータとして格納及び実行される形態を含む。本発明の少なくとも一つの実施例において、コンピュータープログラムコードまたはデータは、サーバーコンピューターに格納され、クライアントコンピューターでサーバーコンピューターに接続してコードまたはデータを使用したり、クライアントコンピューターにダウンロードして格納または実行したりことができる。例えば、サーバーコンピューターまたはクライアントコンピューターでプログラムコードを実行することができる。
【０５１５】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。本明細書は前記構成の精神及び必須的特徴を外れない範囲で他の特定の形態で具体化されることを当業者へ自明する。前記詳細な説明はすべての面で制限的に解釈してはならず、例示的であることを考慮しなくてはならない。本明細書の範囲は添付された請求項の合理的会社により決定されなくてはならないうえ、本明細書の等価的範囲内でのすべての変更は本発明の範囲に含むものとする。
【図１】
2018185343.tif 000003
【図２】
2018185343.tif 000004
【図３】
2018185343.tif 000005
【図４】
2018185343.tif 000006
【図５】
2018185343.tif 000007
【図６】
2018185343.tif 000008
【図７】
2018185343.tif 000009
【図８】
2018185343.tif 000010
【図９】
2018185343.tif 000011
【図１０】
2018185343.tif 000012
【図１１】
2018185343.tif 000013
【図１２】
2018185343.tif 000014
【図１３】
2018185343.tif 000015
【図１４】
2018185343.tif 000016
【図１５】
2018185343.tif 000017
【図１６】
2018185343.tif 000018
【図１７】
2018185343.tif 000019
【図１８】
2018185343.tif 000020
【図１９】
2018185343.tif 000021
【図２０】
2018185343.tif 000022
【図２１】
2018185343.tif 000023
【図２２】
2018185343.tif 000024
【図２３】
2018185343.tif 000025
【図２４】
2018185343.tif 000026
【図２５】
2018185343.tif 000027
【図２６】
2018185343.tif 000028
【図２７】
2018185343.tif 000029
【図２８】
2018185343.tif 000030
【図２９】
2018185343.tif 000031
【図３０】
2018185343.tif 000032
【図３１】
2018185343.tif 000033
【図３２】
2018185343.tif 000034
【図３３】
2018185343.tif 000035
【図３４】
2018185343.tif 000036
【図３５】
2018185343.tif 000037
【図３６】
2018185343.tif 000038
【図３７】
2018185343.tif 000039
【図３８】
2018185343.tif 000040
【図３９】
2018185343.tif 000041
【図４０】
2018185343.tif 000042
【図４１】
2018185343.tif 000043
【図４２】
2018185343.tif 000044
【図４３】
2018185343.tif 000045
【図４４】
2018185343.tif 000046
【図４５】
2018185343.tif 000047
【図４６】
2018185343.tif 000048
【図４７】
2018185343.tif 000049
【図４８】
2018185343.tif 000050
【図４９】
2018185343.tif 000051
【図５０】
2018185343.tif 000052
【図５１】
2018185343.tif 000053