説明

半導体集積回路のテスト方法とシステムとプログラム

【課題】ロット全体のテスト時間の短縮を図り、良品を不良と誤判定することを回避する方法、システム、プログラムの提供。
【解決手段】同一構成のLSI(被試験デバイス)のロットをテストするにあたり、一のLSIのファンクションテストを実行テストレート1で行い、前記ファンクションテストの結果がパスの場合、次のLSIのファンクションテストを実行テストレート1で行い、フェイルの場合、実行テストレート2で再び前記一のLSIの再テストを行い、再テストがパスした場合、実行テストレート1を現在値に加算テストレートを加算した値に更新して次のLSIのファンクションテストを前記更新した実行テストレート1で行い、前記一のLSIの実行テストレート1、2によるファンクションテストがいずれもフェイルの場合、前記一のLSIを不良と判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体集積回路のテスト技術に関する。
【0002】
電子機器の多機能化、高性能化の要望を受けて、多様なIP(Intellectual Property)コアが搭載され、大規模化の進んだ半導体集積回路(LSI)が開発・製造(量産)されている。半導体集積回路(LSI)の大規模化、高機能化等に伴い、テスト装置等を用いた半導体集積回路(LSI)のテストにおいてテスト時間が増大している。テスト時間の増大がテストコストの上昇につながる。特に、テスト対象の半導体集積回路(LSI)(被試験デバイス:Device Under Test:「DUT」ともいう)にテスト装置から印加されるテストパタン数が増えたため、ファンクションテスト(Functional Test)が全体のテスト時間に占める割合が高くなり、これらファンクションテストのテスト時間短縮の必要性が高まっている。
【0003】
例えば特許文献1には、半導体デバイスのテスト方法において、テストレートをテスト環境に拘わらずテスト時間を短縮化するための最適なテストレートを得ることを目的として、本来の半導体デバイスのテストである通常でのファンクションテストを行う前に、予備テストとして、各ファンクションテストのSHMOOを実行し、そのSHMOOの結果から、テストレート(試験速度:ファンクショナル試験における1テスト周期の時間、テスト周波数の逆数)の余裕度を算出し、算出された余裕度に応じてテストレートを修正、短縮化し、その後、通常通り、前記修正されたテストレートを用いて半導体デバイスのファンクションテストを行うことで、テストレートが適切に短縮され、半導体デバイスの全テスト時間を短縮化できるようにした方法が開示されている。
【0004】
図10は、特許文献1の図1に引用した図であり、LSIのファンクションテスト方法を示すフローチャートである(図10において、特許文献1の図1の参照符号は変更してある)。図10を用いて、各ファンクションテストの最適テストレートを決定する方法について説明する。
【0005】
工程(ステップ)1004では、テストプログラムをメモリ10(特許文献1の図5)内に転送する。工程(ステップ)1001において、ファンクションテスト1のSHMOOを実行し、被試験デバイスの動作テストレートの限界値を抽出する。なお、SHMOOの実行ステップでは、被試験デバイスの電源端子の電圧とテストレートを段階的に変化させ、その各変化点でファンクションテストを実行させて、当該被試験デバイスが何れの値の電源端子の電圧及びテストレートの範囲まで正常に動作するか(パスするか)を示す被試験デバイスの電源電圧対テストレートの2次元特性を得るためのステップであり、SHMOOは、ファンクションテストが予め設定された電源端子の電圧とテストレートにおいて、十分マージンがあるか否かを調査するために実行される。SHMOO機能を実装したテスト装置もある。
【0006】
工程1002は、工程1001で抽出した被試験デバイスの動作テストレートの限界値と元々設定されていた動作テストレートとの差分(余裕度)が、任意に決められたしきい値よりも大きいか小さいかの判定を実行し、各ファンクションテストの余裕度がしきい値以上であれば、テストレートを短縮可能であると判断し、メモリ10上のテストレート情報部(特許文献1の図5)を更新する。すなわち、余裕度がしきい値よりも大きいと判定した場合は、ファンクションテストを実行するテストレートを元々設定されたテストレートと、前記工程1001で抽出した被試験デバイスの動作テストレートの限界値との間の中間レートに更新し、小さいと判定した場合は、ファンクションテストを実行するテストレートは、元々の設定値から更新しない。
【0007】
全ファンクションテストにつき以上の予備テスト(工程1001、1002)を完了すると、通常テストである工程1003に移る。工程1003では、前記工程1002で設定した動作テストレートでファンクションテストを実行する。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2002−156424号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
上記関連技術に関する本発明者の分析を以下に示す。
【0010】
上記関連技術において、図10の工程1001のSHMOO実行ステップでは、電源電圧、テストレートの設定値の組み合せに対応して、被試験デバイスに対して、ファンクションテストが複数回実行される。一般的に、SHMOOの実行結果からファンクションテストの最適テストレートを設定するには、与えられた電源電圧に対して、少なくともテストレートを、初期設定値から、例えば5回〜10回程度段階的に変化させ、各設定値でファンクションテストを実行する必要がある。この場合、SHMOOにおけるファンクションテストの実行時間は、工程1003(通常テスト)のファンクションテストよりも、少なくとも5倍〜10倍大きくなる。
【0011】
図10に示した特許文献1のテスト方法においては、工程1003(通常テスト)のファンクションテストを実行する前に、予備テストとして、工程1001と工程1002を実行することで、工程1003のテスト時間の短縮を図るものである。しかしながら、被試験デバイス(LSI)の数が多数の場合に、各被試験デバイスのテスト毎に、予備テスト(工程1001と工程1002)を実行した場合、予備テストに要するテスト時間は膨大なものとなる。
【0012】
このため、テスト対象となる多数のLSIに対して、予備テスト(図10の工程1001、1002)と、通常テスト(図10の工程1003)とをあわせた総合テスト時間の短縮を図る場合、予備テストを実行する回数(予備テストのテスト時間の総計)を、工程1003で短縮できたテスト時間を超えないように設定する必要がある。
【0013】
その結果、予備テスト(工程1001、1002)の実行回数は、工程1003の通常テスト(最適テストレート)でテストされる被試験デバイス(LSI)の数よりも少ない回数となる。この場合、図10において、フロー全体のテスト時間が最短となるのは、初回の被試験デバイス(LSI)の通常テストの実行(工程1003)に対してのみ(1回だけ)、予備テスト(工程1002、1003)を実行する場合である。
【0014】
図9は、LSIのロットのファンクションテストにおける各LSIの正常動作可能な最小のテストレートの分布を模式的に表したものである。なお、図9は、関連技術の問題点を説明するために、本発明者が今回、本明細書用に新たに作成した図である。図9は、図10において、通常テスト(図10の1003)を実行するLSIに、予備テスト(図10の1001、1002)を実行し、最適テストレートを算出し、当該ロットの全てのLSIのテストを実行した場合を表している。
【0015】
図9において、横軸902はテストレートを表し、縦軸901はLSI(被試験デバイス)の個数を表している。903はロット(LSI集団)における各LSIの正常動作可能な最小のテストレートの分布を示す(ほぼ正規分布となる)。横軸902上の906は、最適テストレートに短縮する前の通常テストのテストレート(デフォルト値)の一例を示す。
【0016】
例えば、予備テストのSHMOO(図10の1101)でテストした最初のLSIの最小の動作レート(SHMOOにおいて、被試験デバイスのファンクションテストがパスしたテストレートの下限)が点907の動作レートであった場合、算出した通常テストの最適テストレートを点907とテストレート906の中間の値であるテストレート908とする。
【0017】
この場合、当該ロットにおいて、その動作レート(正常の動作する動作周波数の逆数)がテストレート908より右側に分布しているLSIは、通常テスト(図10の1003)において、テストレート908でのファンクションテストの結果、FAIL(不良)と判定されてしまう。
【0018】
すなわち、通常テスト(図10の1003)において、テストレート906でファンクションテストを実行していれば、PASS(良品)と判断されることになるLSIが、テストレート908でファンクションテストを実行した結果、FAILと誤判定されてしまうことになる。この結果、ロットの歩留まりを、当該ロットの本来の値よりも、低下させる結果となる。
【0019】
また、例えば、予備テストにおいて、SHMOOでテストした最初のLSIの最小の動作レートが点905の動作レートであった場合、算出された通常テストの最適テストレートを点905とテストレート906の中間の値であるテストレート909とする。この場合、当該ロットにおいて、動作レートがテストレート909より右側に分布しているLSIは、ほとんど存在せず、通常テスト(図10の1103)でPASSするため、歩留まりを下げることはない。しかし、テストレート909は、最適テストレートに短縮する前のテストレート906に近い値であるため、予備テストを実行したことによるテスト時間の短縮効果は小さくなる。
【0020】
前述したように、予備テストのSHMOO(図10の1001)のテスト時間は、通常テストの5倍〜10倍の時間がかかるため、算出した最適テストレートにより、通常テスト(図10の1003)のテスト時間を短縮した分よりも、1回の予備テストのSHMOO(図10の1001)で増加したテスト時間が大きくなった場合、図10のフロー全体の総合テスト時間は増加することになる。
【0021】
以上のとおり、上記関連技術においては、予備テストの実行回数を増やした場合、予備テストと通常テストをあわせた全体のテスト時間を短縮することは出来ず、また、予備テストの実行回数を減らしたとしても、算出された最適テストレートの値如何によっては、歩留まりを本来の値から低下させたり、あるいは、全体のテスト時間を増加させる、という問題が生じる。
【課題を解決するための手段】
【0022】
上記問題点の少なくとも1つを解決するため、本発明は概略以下の構成とされる(但し、以下に制限されない)。
【0023】
本発明の一つの側面によれば、同一構成の半導体集積回路からなる、少なくとも第1、第2の被試験デバイスのテストにあたり、
前記第1の被試験デバイスの第1のテストレートによるファンクションテストのテスト結果に基づき、
フェイルの場合には、前記第1のテストレートよりも値の大きな、予め定められた第2のテストレートによる前記第1の被試験デバイスのファンクションテストのテスト結果に基づき、パスの場合には、
前記第1のテストレートを予め定められた値の加算テストレート分増加させた値に更新し、且つ、前記第1の被試験デバイスを、前記第1のテストレートによる前記ファンクションテストの結果がパスした場合と同様に、前記ファンクションテストに関して良品と判定し、
前記第1の被試験デバイスの前記第1及び前記第2のテストレートによるファンクションテストのテスト結果がともにフェイルの場合に、前記第1の被試験デバイスを前記ファンクションテストに関して不良品と判定し、
前記第2の被試験デバイスのファンクションテストを、前記第1テストレート、又は、前記第1及び前記第2のテストレートを用いて、前記第1の被試験デバイスと同様の手順で行う、半導体集積回路のテスト方法が提供される。あるいは、上記方法をテスタ上で実現するテストプログラム、あるいは、上記方法をテスタ上で実現するシステムが提供される。
【発明の効果】
【0024】
本発明によれば、被試験デバイスの集合であるロット全体のテスト時間の短縮を図り、良品を不良と誤判定することを回避することができる。
【図面の簡単な説明】
【0025】
【図1】本発明の一実行形態のLSIのテスト方法を説明するためのフローチャートである。
【図2】本発明の一実行形態において初期テストレートを求める手順を説明するフローチャートである。
【図3】本発明の一実行形態において最大テストレートを求める手順を説明するフローチャートである。
【図4】本発明の一実行形態において加算テストレートを求める手順を説明するフローチャートである。
【図5】図4の工程213を説明するフローチャートである。
【図6】4個の平均テストレートから極小値の存在する範囲を決める例を説明する図である。
【図7】複数のLSIの動作レートの分布を示す図である。
【図8】本発明の一実行形態のテストシステムの全体の構成の一例を示す図である。
【図9】LSIの動作レートの分布をしめし、従来技術の問題点を示す図である。
【図10】特許文献1のテスト方法を示すフローチャートである。
【発明を実施するための形態】
【0026】
本発明のいくつかの好ましい形態によれば、同一構成の半導体集積回路からなる、少なくとも第1及び第2の被試験デバイスを順にテストするにあたり、前記第1の被試験デバイスのファンクションテストを第1のテストレート(実行テストレート1)で行い、前記第1の被試験デバイスの前記第1のテストレート(実行テストレート1)による前記ファンクションテストのテスト結果に基づき、前記第1のテストレートのテスト結果がフェイルの場合(図1の102B1のFAIL)、前記第1のテストレート(実行テストレート1)よりも値の大きな、予め定められた第2のテストレート(実行テストレート2)で前記第1の被試験デバイスのファンクションテストを行い、前記第1の被試験デバイスの前記第2のテストレート(実行テストレート2)による前記ファンクションテストのテスト結果に基づき、前記第2のテストレートのテスト結果がパスの場合(図1の102B2のPASS)、前記第1のテストレート(実行テストレート1)を、予め定められた値の加算テストレート分増加させた値に更新し(図1の102B3)、且つ、前記第1の被試験デバイスを、前記第1のテストレートによる前記ファンクションテストの結果がパスした場合と同様にて前記ファンクションテストに関して良品判定し(図1の102B4)、
前記第1の被試験デバイスの前記第1及び前記第2のテストレートによるファンクションテストがともにフェイルである場合に(図1の102B1のFAIL、且つ、図1の102B2のFAIL)、前記第1の被試験デバイスを前記ファンクションテストに関して不良品と判定し(図1の102B5)、前記第2の被試験デバイスのファンクションテストを、前記第1テストレート(図1の102B1の実行テストレート1)、又は前記第1及び前記第2のテストレート(図1の102B1、102B2の実行テストレート1、2)を用いて、前記第1の被試験デバイスと同様の手順で行う。
【0027】
より詳しくは、好ましい形態の1つによれば、被試験デバイス集合(ロット)の中の最初の被試験デバイス(LSI)に実行するファンクションテストの初期テストレートを、第1のテストレート(実行テストレート1)とし、
前記複数のLSI全ての正常動作を保証する上限テストレートである最大テストレートを第2のテストレート(実行テストレート2)として設定する工程1(図1の102A)と、
前記第1のテストレートを用いてLSIのファンクションテストを行う工程2(図1の102B1)と、
前記工程2のファンクションテストの結果がフェイルの場合に、前記工程2で前記ファンクションテストを行った前記LSIに対して、前記第2のテストレートを用いて、再度、ファンクションテストを行う工程3(図1の102B2)と、
前記工程3の前記ファンクションテストのテスト結果がパスの場合、前記第1のテストレート(実行テストレート1)に前記加算テストレートを加算した値を、次のLSIの第1のテストレート(実行テストレート1)として設定する工程4(図1の102B3)と、
を有し、前記工程2のファンクションテストのテスト結果がパスの場合、前記LSIを良品として(図1の102B4)、次のLSIのファンクションテストへ移行し、
前記工程2のファンクションテストのテスト結果がフェイルの場合、前記工程3を実行し、前記工程3の前記ファンクションテストのテスト結果がフェイルの場合、前記LSIを不良品として(図1の102B5)、次のLSIのファンクションテストの実行ステップである前記工程2(図1の102B1)へ移行し、前記工程3の前記ファンクションテストの前記テスト結果がパスの場合、前記工程4(図1の102B3)を実行し、前記LSIを良品として(図1の102B4)、次のLSIのファンクションテストの実行ステップである前記工程2(図1の102B1)へ移行する、という一連の処理を、ロットの全てのLSIのファンクションテストが終了するまで繰り返す。
【0028】
これまで(本願出願時以前)、LSI製造の出来栄えに関わらず、タイミング検証における動作テストレートのワースト値(最大テストレート)に固定されていた動作テストレートでファンクションテストを実行していた。
【0029】
これに対して、本発明の好ましい形態によれば、工程2では、LSIの製造の出来栄えに応じた、短縮した値の第1のテストレート(初期テストレート)でテストすることができる。このため、当該ロット全体のテスト時間を短縮することが可能となる。
【0030】
また、LSIの製造範囲内における動作テストレート特性ばらつきが生じ、工程2にて、FAILした場合でも、工程3において、最大テストレートでテストすることができるため、良品を不良品と誤判定することはない。以下、例示的ないくつかの実施形態に即して説明する。
【0031】
<例示的な実施形態>
図8は、本発明によるテストプログラムの作成手法およびLSIのファンクションテストを実行するためのLSIテスタによるテストシステムのシステム構成の一例を示す図である。
【0032】
図8を参照すると、LSIテスタ401、コンピュータ装置407、これらを接続するネットワーク406を備えている。LSIテスタ401は、CPU(Central Processing Unit)で構成される処理部402、記録媒体403、入出力インターフェースである入出力部404、LSIテスタテスト制御部405を備えている。コンピュータ装置407は、記録媒体409、CPU(Central Processing Unit)で構成される処理部408、入出力インターフェースである入出力部410を備える。
【0033】
ネットワーク406は、コンピュータ装置407とLSIテスタ401との間の通信を接続する。例えば、ネットワーク406は、移動体通信網や、専用線網や、LAN(Local Area Network)といった有線通信や無線通信を含めた各種のネットワーク、あるいはこれらのネットワークが相互に接続されたネットワークを適用可能である。
【0034】
LSIテスタ401の記録媒体403は、テストプログラムとテストパタンを記憶する。記録媒体403は、ハードディスクやRAM(Random Access Memory)やROM(Read Only Memory)といった記憶装置で構成される。さらに、LSIテスタ401は、処理部402により記録媒体403に記憶されたLSIテスタ401の機能を実現するためのテストプログラムとテストパタンを読み込んで実行し、LSIテスタテスト制御部405を介して、テスト対象のLSI(被試験デバイス)400と信号の送受信を行うことで、LSIテスタ401の機能を実現する。なお、各実行プログラムやパタンは、LSIテスタの管理者により、キーボードやマウスや、LCD(Liquid Crystal Display)といった入出力部404を用いて外部から記録媒体403へ記憶される。テスト対象のLSI400は、LSIテスタ401が備えるLSI実装装置(411)に実装することにより、上述のテストを実行する。
【0035】
コンピュータ装置407は、後述のテストパラメータの作成を実行する。コンピュータ装置407は、例えば、パーソナルコンピュータのような一般的な汎用コンピュータである。入出力部410を介して、後述のION値やタイミング検証結果の情報が、記憶媒体409に格納される。処理部408は、記憶媒体409に格納された、ION値やタイミング検証結果の情報を用いて、後述のテストパラメータ作成を行う。コンピュータ装置407は、ネットワーク406を介してLSIテスタ401と通信が可能である。コンピュータ装置407は、ネットワーク406を介してLSIテスタ401へ接続して、テストパラメータを、記憶部403へ記憶する。
【0036】
なお、図8のテストシステムは、あくまで、典型的な構成の一例を示したものであり、本発明に係る方法、プログラム等は、コンピュータ制御され、LSIのファンクションテストが実行可能な任意のテストシステムに実装可能である。また、図8では、コンピュータ装置407を一般的な汎用コンピュータとしているが、LSIテスタにおいて、マンマシンインタフェースやネットワークインタフェース等を備えたコンピュータ(処理部、CPU)等で置き換えることも可能である。
【0037】
図1は、本発明の一実施形態において、図8のテストシステムによる被試験デバイス(LSI)のファンクションテストの手順を説明するためのフローチャートである。図1及び図8を参照して、本実施形態におけるLSIのファンクションテストの手順を説明する。
【0038】
工程101:
コンピュータ装置407において、ファンクションテストに必要な各種パラメータ値(初期テストレート、最大テストレート、加算テストレート)を算出し、記憶媒体409に格納する。
【0039】
初期テストレートは、テスト対象となる当該ロットのテスト開始時におけるテストレートであり、当該ロットの製造ばらつきや特性を考慮して算出した最適テストレートである。
【0040】
最大テストレートは、当該ロットの各LSIのテストレートの最大値である。
【0041】
加算テストレートは、初期テストレートで不良判定された際に、次のLSIのファンクションテストに実行するテストレートを増加する時の増分値である。
【0042】
これらの3つテストレートの算出方法については後述する。
【0043】
工程102:
LSIテスタ401において、ファンクションテストの対象となるLSIの集団(ロット)のファンクションテストを実行する。以下、工程102における処理を詳細に説明する。ここで工程102では、ロット内のLSIを1個ずつ順にテストを実行していくものとする。
【0044】
工程102A:
後述する工程102B1で、最初のLSIに実行するファンクションテストのテストレートに工程101で算出した初期テストレートを設定し、後述する工程102B2で実行するファンクションテストのテストレートに工程101で算出した最大テストレートを設定する。このとき、工程102B1で実行するテストレートを「実行テストレート1」とし、工程102B2で実行するテストレートを「実行テストレート2」とする。この工程102Aでは、コンピュータ装置407の記憶媒体409に格納する初期テストレートと最大テストレートを、ネットワーク406を介してLSIテスタ401の記憶媒体403の実行テストレート1の領域(図示せず)と、実行テストレート2の領域(図示せず)に格納する。なお、工程102Aは、あるロットのファンクションテストにおいては1度実行すれば良い。
【0045】
工程102B:
ロット内の1個のLSIに対してファンクションテストを実行する。テストされるLSIは、LSIテスタ401にて任意に選択される。このとき、入出力部404より、外部から、テストされるLSIを選択することも可能である。
【0046】
以下、工程102Bにおける処理を詳細に説明する。
【0047】
工程102B1:
LSIテスタ401において、記憶媒体403に格納された実行テストレート1を用いてファンクションテストを実行する。テスト結果は、記憶媒体403に格納され、処理部402にて判定される。テスト結果の判定がFAILした場合、工程102B2に進み、PASSした場合は工程102B4へ進む。
【0048】
工程102B2:
記憶媒体403に格納された実行テストレート2を用いて、再度、ファンクションテストを実行する。テスト結果は、工程102B1と同様に、記憶媒体403に格納され、処理部402にて、判定される。テスト結果の判定がPASSした場合は、工程102B3に進み、FAILした場合は工程102B5に進む。
【0049】
なお、工程102B2における、実行テストレート2を用いたファンクションテストのテストパタンは、工程102B1における実行テストレート1を用いてファンクションテストのテストパタンと同一とする。
【0050】
工程102B3:
工程102B1でファンクションテストを実行した実行テストレート1の値に対して、工程101で算出した加算テストレートの値を加算してテストレートを更新し、工程102B4に進む。この工程102B3では、コンピュータ装置107の記憶媒体409に格納する加算テストレートを、インターネット406を介してLSIテスタ401の記憶媒体403の実行テストレート1に加算し、実行テストレート1を更新する。
【0051】
工程102B4:
ファンクションテストを実行した当該LSIを良品と判定し、工程102Cに進む。なお、図1には、ロットのテストにおいて、被試験デバイスであるLSIのファンクションテスト以外のテスト(例えばDCテスト等)は省略されている。したがって、工程102B4の良品判定は、ファンクションテストに関して良品判定が為されたことを意味するとともに、図示されない、当該ファンクションテスト以外のテスト(DCテスト等)は全てパスしているものとする。
【0052】
工程102B5:
ファンクションテストを実行した当該LSIを不良品と判定し、工程102Cに進む。
【0053】
工程102C:
ロット内の全てのLSIのファンクションテストが終了したかどうかの判定を行う。ここでは、例えばLSIテスタ401においてテスト対象となるLSIの個数回のテストを実行したかによって判定することが出来る。
【0054】
工程102Cにおいて、ロット内の全てのLSIのファンクションテストが終了したと判定された場合、テストを終了する。
【0055】
一方、工程102Cにおいて、ロット内の全てのLSIのファンクションテストが終了していないと判定された場合は、工程102B1に戻り、工程102B3にて更新したテストレートにて、次のLSIのファンクションテストを実行する。
【0056】
次に、コンピュータ装置407において実行される、ファンクションテストに必要な各種パラメータ値(初期テストレート、最大テストレート、加算テストレート)を算出する方法を説明する。
【0057】
図2、図3、図4は、図1の工程101において、LSIのファンクションテストのテストパラメータを設定するフローを詳細に示したものである。
【0058】
<初期テストレート>
図2は、図1の工程101における初期テストレートを求める手順を示すフローチャートである。初期テストレートは以下のような工程で求められる。
【0059】
工程204:
複数のLSIのトランジスタのON電流値(ION値という)201と、
LSI製造ばらつきの中央付近におけるION値を想定したタイミング検証で得られた平均動作レートの値202と、
LSI製造ばらつきのワースト条件におけるION値を想定したタイミング検証より得られた最大動作レートの値203と、
を記憶装置から読み出し、以下の式(1)を用いて、抜き取られた複数のLSI毎の動作レートRnを算出し記憶装置に記憶する。
【0060】
なお、ION値201は、LSIの製造後に例えば予めロットのLSIを数個抜き取って、例えば当該LSIに予め用意されている特性測定用の専用トランジスタを用いて測定される。
【0061】
動作レート値202は、LSI設計時に行うタイミング検証(タイミング検証ツール等を用いてLSIのタイミング動作を解析し検証する工程)において、LSI製造ばらつきの中央付近のトランジスタのION値を用いることによって、当該LSI内のフリップフロップ間の最大遅延値(タイミング検証された各フリップフロップ間の遅延の最大値)として求められる。
【0062】
同様に、動作レート値203は、LSI設計時に行うタイミング検証において、LSI製造ばらつきの動作速度が最も遅くなるトランジスタのION値を用いることによって、得られる全てのフリップフロップ間の最大遅延値である。
【0063】

【0064】
ただし、

【0065】
工程206:
工程205で算出された動作レートRn205(分布として正規分布を想定)の平均動作レートμ207を算出する。
【0066】
工程209:
工程206で算出された平均動作レート207を、初期テストレート(Rmin)210に設定する(記憶装置に格納する)。
【0067】
<最大テストレート>
図3は、図1の工程101における最大テストレートを求める手順を示すフローチャートである。最大テストレートは以下のような工程で求められる。
【0068】
工程211:
LSI製造ばらつきのワースト条件ION値を想定したタイミング検証より得られた最大動作レート203の値を最大テストレート212に設定する。
【0069】
<加算テストレート>
図4は、図1の工程101における加算テストレートを求める手順を示すフローチャートである。加算テストレートは以下のような工程で求められる。
【0070】
工程216:
動作レートRn205に関し正規分布に近似し、その標準偏差σ208を算出する。
【0071】
工程213:
工程216で算出された標準偏差208、初期テストレート210、最大テストレート212と1ロット内のLSI個数214より、加算テストレート215を算出する。
【0072】
図5は、図4の工程213の加算テストレートの算出の手順を説明する図である。図5は、図4における、標準偏差σ208、最大テストレートRmax212、初期テストレートRmin210、1ロットのLSIの個数S214より、加算テストレートα215を数値計算より求めるフローを示したものである。
【0073】
工程301:
加算テストレートαの最大値αmax302を、図2の工程209で算出した初期テストレート210と、図3の工程211で算出した最大テストレート212を用いて、次式(2)で算出する。
【0074】
αmax=(最大テストレート212)−(初期テストレート210) ・・・(2)
【0075】
同様に、加算テストレートαの最小値αmin303を次式(3)で算出する。
【0076】
αmin=(最大テストレート212−初期テストレート210)÷(1ロットのLSI個数S214) ・・・(3)
【0077】
工程304:
工程301で算出した最大値αmax302、最小値αmin303を用いて、次式(4)、式(5)より、最大値αmax302、最小値αmin303の間(区間)を3分割した地点の値(第1、第2中間値)α1(305)、α2(306)を算出する。
【0078】

【0079】
工程307:
標準偏差208、
初期テストレート210、
最大テストレート212、
αmax 302、
αmin 303、
α1 305、
α2 306と、
1ロット内のLSI個数S 214
を用いて、次式(6)、式(7)、式(8)より、4つの加算テストレート
αmax 302、
αmin 303、
α1 305、
α2 306
における、それぞれの平均テストレート
t(αmax)311、
t(αmin)308、
t(α1)309、
t(α2)310を算出する。
【0080】

【0081】

【0082】

【0083】
上記(6)、(7)において、
α:加算テストレート、
max:最大テストレート、
min:初期テストレート、
S:1ロット内のLSIの個数
σ:標準偏差、
t:平均動作レート。
【0084】
式(6)、(7)中のF(r)は、正規分布の累積分布関数で次式(9)で表される。
【0085】

【0086】
ここで、erfは誤差関数

である。
【0087】
式(6)、(7)において、累積分布関数の差F(Rmax)−F(α×i+Rmin)は、確率P(α×i+Rmin<X≦Rmax)(確率変数Xがα×i+RminとRmaxの間にある確率)に対応し、1−F(α×i+Rmin)は、確率P(α×i+Rmin<X≦∞)(確率変数Xがα×iと+∞の間にある確率)に対応する。また、累積分布関数の変数(α×i+Rmin)は、初期テストレートに対する加算テストレートの加算演算に対応し、インデックスi(0≦i≦n)のnは、例えば、Rmin+α×n<Rmax、Rmin+α×(n+1)≧Rmaxの値の正整数である。
【0088】
工程307において、式(6)、(7)のαをαminとしたT、Sから、式(8)のt=T/Sにより、t(αmin)308を求める。同様にして、式(6)、(7)のαをα1、α2、αmaxとしたT、Sから、式(8)のt=S/Tにより、t(α1)309、t(α2)310、t(αmax)311を求める。
【0089】
なお、式(6)、(7)中のF(r)は、正規分布の累積分布関数で次式(9)で表される。
【0090】
工程312:
工程307において、求めたt(αmin)308、t(α1)309、t(α2)310、t(αmax)311について、各値の大小関係を比較し、αmax、αminの値を更新する。
【0091】
具体的な方法について図6を用いて説明する。図6において、横軸601は、加算テストレートαを表し、縦軸602は、平均テストレートtを表す。
【0092】
図6では、平均テストレートtの値が、
t(αmax)>t(αmin)>t(α1)>t(α2)
となっている場合の加算テストレートαと平均テストレートtの関係を示している。
【0093】
各ポイントを曲線で近似した場合、想定される曲線は、曲線603、曲線604のようになり、曲線603の場合は、平均テストレートtの極小値はα1とα2の間にあり、曲線604の場合は、平均テストレートtの極小値はα2とαmaxの間にあることが推定できる。
【0094】
そこで、この場合、αmaxの値はそのままの値とし、αminの値をα1の値に更新する。すなわち、図6において、曲線603、曲線604とも、αminとα1の間には極小値は存在しないため、α1を新たなαminとし、平均テストレートtの極小値を間に挟むαmin、αmaxの区間を狭める。
【0095】
工程313:
αmaxとαminの値の差が、所定の値(>0)よりも小さいか否かを判定し、小さかった場合(|αmax−αmin|≦所定の値)、工程314に進み、大きかった場合(|αmax−αmin|>所定の値)、工程307に進む。図6の場合、工程307では、αmaxと、更新されたαminとを用いて、上式(4)、(5)からα1、α2を求める。
【0096】
なお、工程313の判定(|αmax−αmin|<所定の値)における所定の値は、加算テストレートそのものを指し、これ以上小さな値に設定しても、テストレートの短縮効果が見込めないであろう任意の値である。この所定の値が小さく設定されている場合、図5の工程307、312、313のルーチンの実行回数が多くなり、より、テストレート短縮効果の高い加算テストレートを算出することができる。
【0097】
工程314:
工程312で算出され、αmin、αmax(条件:|αmin−αmax|<所定の値を満たす)の平均値((αmin+αmax)/2)を算出し、加算テストレート215とする。
【0098】
本実施形態は、ファンクションテスト開始前に、予め工程101で、初期テストレート、最大テストレート、加算テストレートを算出し、実行テストレート1を初期テストレートとして、最初のLSIのテストを実行(工程102B1)し、そのPASS/FAILを判定し、PASSであれば、良品と判定して、次のLSIのテストに移行する。
【0099】
一方、FAILであれば、実行テストレート2を最大テストレートとして同じLSIのテストを実行(工程102B2)し、再度、PASS/FAILを判定する。
【0100】
工程102B2の再テストがFAILであれば、不良品と判定して、次のLSIのテストへ移行し、PASSであれば、初期テストレートに加算テストレートを加算して、次LSIのテストを実行する。この一連の処理をロットの全LSIに対して良品/不良品の判定が終了するまで繰り返す。
【0101】
よって、本実施形態は、本来良品であるLSIが、工程102B1において最適テストレートである初期テストレートでファンクションテストを実行した結果、FAILと判定されても、工程102B2において最大テストレートでの再テストで良品と判定されるため、歩留まりを低下する問題は発生しない。
【0102】
また、本実施形態によれば、工程102B1のテストでFAILしても、工程102B2で良品と判定された場合に、次のLSIに対して工程102B1の実行テストレート1に加算テストレートを加算して実行することを繰り返す。このため、本来良品であるLSIを、工程102B1のテストでPASSする最も効率的な最適テストレートを見出すことが可能なロットに関して、当該ロット全体のテスト時間を短縮することができる。この効果について、図7を参照して、以下に説明する。図7は、ロットのファンクションテストにおける、各LSIの動作レートの分布を模式的に表したものである。
【0103】
図7において、横軸702はテストレートであり、縦軸701はLSIの個数である。703は1ロットの中の各LSIの動作レートの分布を表している。また、横軸702上の706は、図3の手順で算出された最大テストレート212、
704は、LSIの平均動作レート207、
705は、LSIの動作レートの最大値、
707は、任意のLSIの動作レートを示す。
【0104】
一般的に、LSIは、該LSIを構成するトランジスタのオン電流IONの値が、製造ばらつき範囲の中央付近になるように製造されている。LSIの動作テストレートの分布は、平均値704(LSI製造ばらつきの中央付近を想定したタイミング検証より得られたテストレート)を中心に分布する。このため、最大テストレート706に分布するLSIは限りなく0個となる。したがって、1ロットの中で最も大きい動作テストレート705は、平均値704と最大テストレート706の間に存在することになる。
【0105】
ある任意のテストレート707でファンクションテストした場合、そのLSIの動作レートがテストレート707より短い場合には、すなわち、図7において、LSIの動作レートが707の位置よりも左側にある場合、当該LSIは、テストレート707のファンクションテストにPASSする。LSIの動作レートが707の位置よりも右側にある場合、当該LSIは、テストレート707のファンクションテストにFAILする。
【0106】
LSIの動作レートがテストレート707より長い場合、すなわち、図7において、707の位置より右側にある場合PASSする。
【0107】
よって、任意のテストレート707が1ロットの中で最も大きい動作テストレート705より右側にある場合は、必ずPASSすることになる。
【0108】
図1の工程102B1で実行される実行テストレート1は、ロットのテスト開始時に、例えば初期テストレート704の位置にあり、該実行テストレート1でテストしたLSIがFAILの場合に、加算テストレート215を加算していく。そのため、ロットの中で最も大きい動作テストレート705+加算テストレート215よりも大きくなることはない。
【0109】
したがって、図1の工程109におけるテスト時間は、最大テストレート706と1ロットの中で最も遅い動作のLSIの動作値705+加算テストレート215の差分だけテストタイムを短くできる。よって、本発明の実行例1のテストタイムは、従来の方法に比べ、テストタイムを短縮することが可能となる。
【0110】
また、LSIの良品は、たとえ実行テストレート1でFAILしたとしても、必ず実行テストレート2でテストされる。実行テストレート2でのファンクションテストは必ずPASSとなり、良品を不良品と誤判定することはない。
【0111】
なお、上記の特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【0112】
201 複数のLSIのION値
202 製造ばらつき中央条件におけるタイミング検証結果の平均動作レート
203 製造ばらつきワースト条件におけるタイミング検証結果の最大動作レート
205 動作レート
207 平均動作レート
208 標準偏差
210 初期テストレート
212 最大テストレート
214 1ロットのLSIの個数
215 加算テストレート
302 αmax
303 αmin
305 α1
306 α2
308 t(αmin)
309 t(α1)
310 t(α2)
311 t(αmax)
400 テスト対象のLSI
401 LSIテスタ
402 処理部
403 記録媒体
404 入出力部
405 LSIテスタテスト制御部
406 ネットワーク
407 コンピュータ装置
408 処理部
409 記録媒体
410 入出力部
411 LSI実装装置
601 加算テストレートα表す横軸
602 平均テストレートtを表す縦軸
603 想定される、加算テストレートと平均テストレートtの関係をしめす曲線
604 想定される、加算テストレートと平均テストレートtの関係をしめす曲線
701 LSIの分布を示す縦軸
702 テストレートを示す横軸
703 LSIの動作レートの分布
704 LSIの動作レートの分布における平均の値
705 1ロットの中で最も遅い動作のLSIの動作値
706 最大テストレート
707 任意のテストレート
901 LSIの個数
902 テストレート
903 ロットにおける各LSIの正常動作可能な最小のテストレートの分布
905、907、908 テストレート(動作レート)
906 最適テストレートに短縮する前の通常テストのテストレート

【特許請求の範囲】
【請求項1】
同一構成の半導体集積回路からなる、少なくとも第1、第2の被試験デバイスのテストにあたり、
前記第1の被試験デバイスの第1のテストレートによるファンクションテストのテスト結果に基づき、
フェイルの場合には、前記第1のテストレートよりも値の大きな、予め定められた第2のテストレートによる前記第1の被試験デバイスのファンクションテストのテスト結果に基づき、パスの場合には、
前記第1のテストレートを予め定められた値の加算テストレート分増加させた値に更新し、且つ、前記第1の被試験デバイスを、前記第1のテストレートによる前記ファンクションテストの結果がパスした場合と同様に、前記ファンクションテストに関して良品と判定し、
前記第1の被試験デバイスの前記第1及び前記第2のテストレートによるファンクションテストのテスト結果がともにフェイルの場合に、前記第1の被試験デバイスを前記ファンクションテストに関して不良品と判定し、
前記第2の被試験デバイスのファンクションテストを、前記第1テストレート、又は、前記第1及び前記第2のテストレートを用いて、前記第1の被試験デバイスと同様の手順で行う、半導体集積回路のテスト方法。
【請求項2】
前記被試験デバイスがLSIであり、LSI集合であるロットのLSIを連続してファンクションテストを実行するにあたり、
前記ロットの最初のLSIのファンクションテストの初期テストレートを前記第1のテストレートとし、前記複数のLSI全ての正常動作を保証する上限テストレートである最大テストレートを第2のテストレートに設定する第1の工程と、
前記第1のテストレートを用いてLSIのファンクションテストを行う第2の工程と、
前記第2の工程の前記ファンクションテストの結果がフェイルの場合に、前記第2の工程で前記ファンクションテストを行った前記LSIに対して、前記第2のテストレートを用いて、再度、ファンクションテストを行う第3の工程と、
前記第3の工程の前記ファンクションテストのテスト結果がパスの場合、前記第1のテストレートに前記加算テストレートを加算した値を、次のLSIの第1のテストレートとして設定する第4の工程と、
を有し、
前記第2の工程の前記ファンクションテストのテスト結果がパスの場合、前記LSIを良品として、次のLSIのファンクションテストへ移行し、
前記第2の工程のファンクションテストのテスト結果がフェイルの場合、前記第3の工程を実行し、前記第3の工程の前記ファンクションテストのテスト結果がフェイルの場合、前記LSIを不良品として、次のLSIのファンクションテストの実行ステップである前記第2の工程へ移行し、前記第3の工程の前記ファンクションテストの前記テスト結果がパスの場合、前記第4の工程を実行し、前記LSIを良品として、次のLSIのファンクションテストの実行ステップである前記第2の工程へ移行する、という一連の処理を、ロットの全てのLSIのファンクションテストが終了するまで繰り返す、請求項1記載の半導体集積回路のテスト方法。
【請求項3】
前記初期テストレートを、前記ロットのLSIの正常動作可能な最小レートの分布の平均値または中央値、あるいは、標準偏差値以内の値とする、ことを特徴とする請求項2記載の半導体集積回路のテスト方法。
【請求項4】
前記初期テストレートを、
前記LSIの複数のLSIのトランジスタのオン電流値と、
LSI製造ばらつきの中央付近におけるオン電流値を想定したタイミング検証で得られた平均動作レートの値と、
LSI製造ばらつきのワースト条件におけるオン電流値を想定したタイミング検証より得られた最大動作レートの値と、
を記憶装置から読み出して複数のLSI毎の動作レートを算出し、
前記算出された動作レートの平均動作レートを算出し、
前記算出された平均動作レートを前記初期テストレートとする、ことを特徴とする請求項2記載の半導体集積回路のテスト方法。
【請求項5】
前記最大テストレートを、予めLSI製造ばらつきのワースト条件を想定したタイミング検証の結果出力されるフリップフロップ間のパス遅延の最大値とする、ことを特徴とする請求項2記載の半導体集積回路のテスト方法。
【請求項6】
前記加算テストレートを、
前記初期テストレートと、
前記最大テストレートと、
1ロットのLSIの個数と、
前記ロットにおけるLSIの動作レートの分布と、
に基づき算出する、ことを特徴とする請求項2記載の半導体集積回路のテスト方法。
【請求項7】
(a)前記加算テストレートの最大値を、前記初期テストレートと前記最大テストレートの差分から求め、
前記加算テストレートの最小値を、前記初期テストレートと前記最大テストレートの前記差分を1ロットのLSI個数で除算することで求め、
前記加算テストレートの前記最小値、前記最小値の区間を等分に3分割する第1と第2中間値を算出し、
(b)前記動作レートの標準偏差と、前記初期テストレートと、前記最大テストレートと、前記加算テストレートの前記最大値と前記最小値、前記第1及び第2中間値と、1ロットのLSI個数と、を用いて、前記最大値、前記最小値、前記第1及び第2の中間値の4つの加算テストレートにおけるそれぞれの平均テストレートを算出し、
(c)前記4つの加算テストレートの前記平均テストレートの各値の大小関係を比較し、前記最大値及び/又は前記最小値を更新し、
(d)更新された前記最大値と前記最小値の値の差が、予め定められた所定の値よりも小さいか否かを判定し、大きい場合、前記(b)に戻り、小さい場合、前記最大値と前記最小値の平均値を、前記加算テストレートとする、請求項6記載の半導体集積回路のテスト方法。
【請求項8】
被試験デバイスの少なくともファンクションテストを設定されたテストレートで行うテスタを備えたテストシステムであって、
同一構成の半導体集積回路からなる、少なくとも第1、第2の被試験デバイスのテストにあたり、
前記第1の被試験デバイスの第1のテストレートによるファンクションテストのテスト結果に基づき、
フェイルの場合には、前記第1のテストレートよりも値の大きな、予め定められた第2のテストレートによる前記第1の被試験デバイスのファンクションテストのテスト結果に基づき、パスの場合には、
前記第1のテストレートを予め定められた値の加算テストレート分増加させた値に更新し、且つ、前記第1の被試験デバイスを、前記第1のテストレートによる前記ファンクションテストの結果がパスした場合と同様に、前記ファンクションテストに関して良品と判定し、
前記第1の被試験デバイスの前記第1及び前記第2のテストレートによるファンクションテストのテスト結果がともにフェイルの場合に、前記第1の被試験デバイスを前記ファンクションテストに関して不良品と判定し、
前記第2の被試験デバイスのファンクションテストを、前記第1テストレート、又は、前記第1及び前記第2のテストレートを用いて、前記第1の被試験デバイスと同様の手順で行うように、制御する、テストシステム。
【請求項9】
前記被試験デバイスがLSIであり、LSI集合であるロットのLSIを連続してファンクションテストを実行するにあたり、前記ロットの最初のLSIのファンクションテストの初期テストレートを、前記第1のテストレートとして前記テスタに設定し、前記複数のLSI全ての正常動作を保証する上限テストレートである最大テストレートを前記第2のテストレートとして、前記テスタに設定するコンピュータ装置を備えた、請求項8記載のテストシステム。
【請求項10】
被試験デバイスをテストするテスタで実行されるテストプログラムであって、
同一構成の半導体集積回路からなる、少なくとも第1、第2の被試験デバイスのテストにあたり、
前記第1の被試験デバイスの第1のテストレートによるファンクションテストのテスト結果に基づき、
フェイルの場合には、前記第1のテストレートよりも値の大きな、予め定められた第2のテストレートによる前記第1の被試験デバイスのファンクションテストのテスト結果に基づき、パスの場合には、
前記第1のテストレートを予め定められた値の加算テストレート分増加させた値に更新し、且つ、前記第1の被試験デバイスを、前記第1のテストレートによる前記ファンクションテストの結果がパスした場合と同様に、前記ファンクションテストに関して良品と判定し、
前記第1の被試験デバイスの前記第1及び前記第2のテストレートによるファンクションテストのテスト結果がともにフェイルの場合に、前記第1の被試験デバイスを前記ファンクションテストに関して不良品と判定し、
前記第2の被試験デバイスのファンクションテストを、前記第1テストレート、又は、前記第1及び前記第2のテストレートを用いて、前記第1の被試験デバイスと同様の手順で行うように、制御する、テストプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate