(57)【要約】仮目標値算出部２８において、目標値Ｅｘｐから所定値が減ぜられ（又は加えられ）仮目標値ＥｘｐＢとして算出される。この仮目標値ＥｘｐＢを含む一定領域まで、バイナリサーチ実行部２５でバイナリサーチが実行され探索領域が絞り込まれる。次いで、シーケンシャルサーチ実行部２９において、その絞り込まれた探索領域内で、仮目標値ＥｘｐＢを起点として、増加方向へ目標値Ｅｘｐが探索される。これにより、測定精度の低下防止と探索時間の短縮とを両立させるとともに、探索対象である数列が一部に減少を含んだ昇順数列を示すものであっても、確実かつ正常に目標値を見つけ出す。
2004038436.tif 000002
【特許請求の範囲】
【請求項１】
目標値を格納する目標値格納部と、
この目標値格納部から前記目標値を取り出すとともに、この取り出した目標値から所定値を減じ又は加えた値を仮目標値として設定する探索制御部と、
バイナリサーチにより前記仮目標値を含んだ一定領域まで探索範囲を絞り込むバイナリサーチ実行部と、
前記絞り込まれた探索範囲内で、シーケンシャルサーチにより前記仮目標値を起点として増加方向又は減少方向へ前記目標値を探索するシーケンシャルサーチ実行部とを有した
ことを特徴とする目標値の探索回路。
【請求項２】
目標値を格納する段階と、
前記目標値を取り出すとともに、この取り出した目標値から所定値を減じ又は加えた値を仮目標値として設定する段階と、
バイナリサーチにより前記仮目標値を含んだ一定領域まで探索範囲を絞り込む段階と、
前記絞り込まれた探索範囲内で、シーケンシャルサーチにより前記仮目標値を起点として増加方向又は減少方向へ前記目標値を探索する段階とを有した
ことを特徴とする目標値の探索方法。
【請求項３】
基準クロック信号を発生する基準クロック発生器と、
前記基準クロック信号に同期して半導体素子に印加する試験パターン信号を出力する試験パターン発生器と、
前記試験パターン信号を所定時間遅延させる可変遅延回路を備えたタイミング発生器と、
前記半導体素子から出力される応答出力信号と期待値パターンとを比較する比較器とを備えた半導体試験装置であって、
目標値を格納する格納部と、
前記試験パターン信号の遅延量測定値を求める遅延量測定部と、
前記格納部から前記目標値を取り出すとともに、この取り出した目標値から所定値を減じ又は加えた値を仮目標値として算出する仮目標値算出部と、
バイナリサーチによって、前記仮目標値を含んだ一定領域まで探索範囲を絞り込むように前記可変遅延回路の遅延量設定値を与えるバイナリサーチ実行部と、
前記絞り込まれた探索範囲内で、シーケンシャルサーチにより、前記仮目標値を起点として増加方向又は減少方向へ前記目標値を探索するように前記可変遅延回路の遅延量設定値を与えるシーケンシャルサーチ実行部と、
前記可変遅延回路の遅延量を設定するＶＤ設定部と、
前記仮目標値及び前記遅延量測定値を前記バイナリサーチ実行部へ送るとともに、前記バイナリサーチ実行部からの前記遅延量設定値を前記ＶＤ設定部へ送って前記可変遅延回路の遅延量を設定させ、前記仮目標値を含んだ一定領域まで探索範囲が絞り込まれると、この絞り込みで得られた前記遅延量設定値と、前記目標値と、前記遅延量測定値とを前記シーケンシャルサーチ実行部へ送り、前記シーケンシャルサーチ実行部からの前記遅延量設定値を前記ＶＤ設定部へ送って前記可変遅延回路の遅延量を設定させる探索制御部とを有する探索回路を備えた
ことを特徴とする半導体試験装置。
【請求項４】
前記仮目標値算出部が、シーケンシャルサーチの探索領域のうちの半分の領域を示す値を前記所定値として前記目標値から減じ又は加え、この減じ又は加えた値を前記仮目標値として算出する
ことを特徴とする請求項３記載の半導体試験装置。
【発明の詳細な説明】
【技術分野】  本発明は、一部に値の減少を含む昇順の数列において目標値の探索を実行する探索回路、探索方法及び半導体試験装置に関し、特に、タイミング可変遅延回路を備える半導体試験装置に好適な探索回路、探索方法及びこれを用いた半導体試験装置に関する。
【背景技術】  従来から、ロジックＩＣや半導体メモリ等の各種の半導体デバイスに対し試験を行う装置として半導体試験装置が知られている。
この半導体試験装置で行われる試験としては、たとえば、機能試験（ファンクション試験），直流特性試験（ＤＣパラメータ試験），交流特性試験（ＡＣパラメータ試験）等がある。
これらのうち機能試験は、半導体デバイスの機能を保証するために行う試験であって、たとえば、第５図に示すように、試験パターン発生器１１からの試験パターン信号を被試験ＩＣ（以下、「ＤＵＴ」（Ｄｅｖｉｃｅ  Ｕｎｄｅｒ  Ｔｅｓｔ）という）１２に与え、その出力信号と期待値パターンとを比較器１３で比較して、ＤＵＴ１２の諸機能の良否を判断するものである。
より具体的には、第６図に示すような構成の半導体試験回路１０によって、ＤＵＴ１２の機能試験が行われる。
同図において、複数のピンを有した１個のＤＵＴ（半導体素子）１２に対する試験パターンデータが、比較器１３へ送られる期待値データＳとともに、予めメモリ（期待値メモリ）１４に記憶されている。
メモリ１４の試験パターンデータにもとづいて試験パターン発生器１１によりＤＵＴ１２に与えられる試験パターン信号が、基準クロック発生器１５の基準クロック信号ＣＬＫに同期して発生され、可変遅延回路ＤＬ１，ＳＫ１を有するＤＵＴ入力遅延回路（タイミング発生器）１６を通って、ＤＵＴ１２の入力端子ｉに供給される。
また、基準クロック発生器１５の基準クロック信号は、可変遅延回路ＤＬ２，ＳＫ２を有する比較タイミング遅延回路１７を通り、ストローブ信号ＳＴＲＢとして、比較器１３のＤ型フリップフロップ回路（以下、「ＤＦ／Ｆ」という）１３−１のクロック端子へも供給される。
可変遅延回路ＤＬ１，ＳＫ１，ＤＬ２，ＳＫ２は、制御部１８のプログラム制御によって、遅延量Ｔｐｄが設定される。
それらのうち、可変遅延回路ＤＬ１，ＤＬ２は、ユーザプログラムによりＤＵＴ１２に対して時間位相を定義できる遅延回路である。
一方、可変遅延回路ＳＫ１，ＳＫ２は、上記ＤＬ１やＤＬ２等のハードウエアの遅延量Ｔｐｄが周囲温度変化や時間経過によって変動することから、ＤＵＴ１２に対する位相が所定値になるように補正する、つまりハードウエアの校正を行う。
ＤＵＴ１２の出力（応答出力信号）は、比較器１３のＤＦ／Ｆ１３−１に入力され、その出力は、不一致回路（Ｅｘｃｌｕｓｉｖｅ−ＯＲ回路；Ｅｘ−ＯＲ）１３−２に入力される。ここで、メモリ１４からの期待値データＳ＝“１”と比較され、この比較結果が、ＤＦ／Ｆ１３−３に入力される。
この比較器１３において、ＤＦ／Ｆ１３−１の出力（Ｃ点）が“Ｌ”（又は“Ｈ”）のとき、期待値データＳ＝“１”とは不一致（又は一致）であるので、不一致回路１３−２の出力（Ｅ点）は“Ｈ”（又は“Ｌ”）となり、ＤＦ／Ｆ１３−３の出力（Ｆ点）は“Ｈ”（又は“Ｌ”）となって、この比較器１３における比較の結果がＦａｉｌ（フェイル）（又はＰａｓｓ（パス））となる。
ところで、ＤＵＴ１２の機能試験を行う場合、そのＤＵＴ１２に数十から数百ある複数のピンに入力される各試験パターン信号は、それぞれ同期がとられていることが望ましい。
ところが、各試験パターン信号には、各経路の相違から、位相遅延時間すなわちタイミングの差異が生じている。
この位相遅延時間が生ずる原因である経路の相違は、その物理的条件の違い、波形整形器（試験パターン発生器１１からの出力信号をＤＵＴ１２の回路構成にあわせて形成する部分、図示せず）内における経路の変更、各経路内に使用される半導体素子が受ける熱的影響等によって起こる。
このため、各試験パターン信号の同期のずれにより、比較器１３における比較結果に誤差が生じてしまい、正しい機能試験が行えなくなっていた。
そこで、この半導体試験装置１０を用いて機能試験を行う場合は、イニシャライズ時に、試験パターン信号ごとに、それら試験パターン信号の同期をとるよう調整している。
各試験パターン信号の同期をとるために行われる試験パターン信号の遅延量Ｔｐｄの測定には、一般に、周波数測定器などが用いられている。
なお、試験パターン信号の遅延量Ｔｐｄの測定は、周波数を用いて行うことに限るものではなく、たとえば、反射波などを用いることもできる。
その周波数測定器を用いて試験パターン信号の遅延量Ｔｐｄを測定し、かつ、その遅延量Ｔｐｄを目標値に近づけるように可変遅延回路ＤＬ１の遅延量設定値を与えていく方法は、次のように行われる。
なお、可変遅延回路ＤＬ１の可変範囲は、τ（１〜ｎ）＝０ｎｓ〜２０ｎｓとし、ＤＵＴ入力遅延回路１６における最初の遅延量設定値は、可変遅延回路ＤＬ１の可変範囲τ（１〜ｎ）の中間値τ１＝１０ｎｓに設定されているものとする。そして、目標値は、１００ナノ秒（ｎｓ）に設定されているものとする。
また、可変遅延回路ＤＬ１の遅延量設定値の推移については、第７図に示す。
まず、周波数測定器において、ループ周波数により、試験パターン信号の遅延量が測定される。
１回目の測定（τ１＝１０ｎｓ）では、遅延量測定値が１０４ｎｓであったとする。
次いで、遅延量測定値（１０４ｎｓ）と目標値（１００ｎｓ）とが比較判断される。判断の結果、遅延量測定値が目標値を上回っているため、ＤＵＴ入力遅延回路１６における可変遅延回路ＤＬ１の遅延量設定値が、τ２＝τ１−（τ１／２＾１）＝５ｎｓのように算出される。
そして、可変遅延回路ＤＬ１の遅延量Ｔｐｄが、その算出された遅延量設定値となるように設定される。
次いで、２回目の測定では、遅延量測定値が９９ｎｓになったとする。
この場合、遅延量測定値が目標値を下回っているため、遅延量設定値は、τ３＝τ２＋（τ１／２＾２）＝７．５ｎｓのように算出される。
そして、この算出された遅延量設定値が、可変遅延回路ＤＬ１の遅延量Ｔｐｄとして設定される。
３回目の測定では、遅延量測定値が１０１．５ｎｓになったとする。
この場合、遅延量測定値が目標値を上回っているため、遅延量設定値は、τ４＝τ３−（τ１／２＾３）＝６．２５ｎｓのように算出され、可変遅延回路ＤＬ１の遅延量Ｔｐｄとして設定される。
４回目の測定では、遅延量測定値が１００．２５ｎｓになったとする。
この場合も、遅延量測定値が目標値を上回っているため、遅延量設定値は、τ５＝τ４−（τ１／２＾４）＝５．６２５ｎｓのように算出され、可変遅延回路ＤＬ１の遅延量Ｔｐｄとして設定される。
以下同様に、５回目の測定では、遅延量測定値が９９．６２５ｎｓになったとすると、この場合、遅延量測定値が目標値を下回っているため、遅延量設定値は、τ６＝τ５−（τ１／２＾５）＝５．９３７５ｎｓのように算出され、可変遅延回路ＤＬ１の遅延量Ｔｐｄとして設定される。
そして、６回目の測定では、遅延量測定値が９９．９３７５ｎｓになったとすると、この場合も、遅延量測定値が目標値を下回っているため、遅延量設定値は、τ７＝τ６−（τ１／２＾６）＝６．０９３７５ｎｓのように算出され、可変遅延回路ＤＬ１の遅延量Ｔｐｄとして設定される。
このように、ｉ−１回目の測定で遅延量測定値が目標値を上回るかあるいは下回るかによって、ｉ回目の測定では、可変遅延回路ＤＬ１の遅延量Ｔｐｄをバイナリ状にτ１／２＾（ｉ−１）ｎｓだけ減少させたりあるいは増加させたりして、遅延量測定値を目標値に近づけている。
このように遅延量測定値を目標値に向かってバイナリ状に追い込みながら測定することをバイナリサーチと呼んでいる。
このような方法によれば、周波数測定器が、ＤＵＴ１２の複数のピンに入力される各試験パターン信号の入力タイミングをすべて同期させるように、各試験パターン信号の通る経路ごとに可変遅延回路ＤＬ１の遅延量Ｔｐｄを与えるため、半導体試験装置１０を用いて行われるＤＵＴ１２の機能試験（ファンクション試験）におけるイニシャライズ時の初期調整を可能としている。
しかしながら、ＤＵＴ入力遅延回路１６の可変遅延回路ＤＬ１は、たとえば、ＩＣの周囲温度やＩＣに加えられた電源電圧の変化、ＩＣの製造ばらつき、自己発熱量の変動などにより遅延量Ｔｐｄが変動し、この変動により、第８図に示すように、１ＣＬＫ分周期毎に不連続点が発生していた。
そして、この不連続点を含んだ遅延量Ｔｐｄは、言い換えれば一部に減少を含んだ昇順の数列であることから、純粋な昇順の数列を探索対象とするバイナリサーチのみによって目標値を探索すること（つまり、試験パターン信号の遅延量Ｔｐｄの測定方法としてバイナリサーチのみを用いること）は、必ずしも適切であるとは言えなかった。
この場合、バイナリサーチで探索しきれない部分については、シーケンシャルサーチで補うようにすることが考えられる。
シーケンシャルサーチは、目標値と一致する値を、配列の端から順番に調べていくものであるため、配列の要素が多くなるにつれて探索に時間がかかるものの、配列が昇順あるいは降順に整列されている必要がない。
これに対して、バイナリサーチは、配列の中央の値（中央値）と探索したい値（目標値）との比較を行い、各値が等しくない場合は、配列の前半（あるいは後半）を削除して残りの後半（あるいは前半）部分の中央値と目標値とを比較し、それら中央値と目標値とが一致するまで、各値の比較と配列の半減とを繰り返し行うものである。このため、バイナリサーチは、探索時間を短縮できるものの、その配列が昇順あるいは降順に整列されていることが条件となる。
そして、従来の半導体試験装置における試験パターン信号の遅延量Ｔｐｄは、一部に減少を含む昇順配列の波形（鋸歯状の波形）であるため、バイナリサーチによって探索範囲をできるだけ絞り込み、この絞り込んだ探索範囲内でシーケンシャルサーチにより目標値を探索することにより、測定精度を低下させることなく、探索時間の短縮を図ることは可能である。
つまり、バイナリサーチによる探索時間の短縮と、シーケンシャルサーチによる測定精度の低下防止との両立が実現可能となる。
具体的には、たとえば、第９図に示すように、バイナリサーチにより、同じ傾きが連続する遅延量Ｔｐｄの中程付近あるいはそれより大きいところ（バイナリサーチの結果を中心とするシーケンシャルサーチの探索範囲のうち、下半分の範囲内に不連続点がないとき、例えば、点Ａ等）が探索されたとすると、その探索範囲内には不連続点が存在しないことから、この探索範囲内でシーケンシャルサーチにより正常に目標値を探索できる。
ところが、このようにバイナリサーチとシーケンシャルサーチとを併用しても、正常に目標値の探索ができない場合があった。
たとえば、バイナリサーチの結果が、遅延量Ｔｐｄの不連続点に近いところにある場合（鋸歯状波形の谷間付近など、例えば、同図の点Ｂ等）は、増加方向へのシーケンシャルサーチは可能であるものの、減少方向へのシーケンシャルサーチを行うと、不連続点にさしかかった時点で目標値より大きい値をふたたびサーチしていた。このため、目標値を見つけるまでに探索範囲内のサーチが終了してしまい、正常に目標値を探索できないという問題があった。
特に、バイナリサーチとシーケンシャルサーチとの組み合わせによって、従来の半導体試験装置における試験パターン信号の目標値の探索を実行する場合は、第１０図に示すように、それらバイナリサーチのＶＤ遅延特性とシーケンシャルサーチのＶＤ遅延特性との間にわずかな差異が生じることがあった。
この差異は、バイナリサーチのヒステリシスの影響により生じていた。
ここでいうヒステリシスの影響とは、前回設定されたエッジが今回設定したエッジに与える影響であって、前回と今回とのエッジの時間差の大小にもとづいて、その影響量が変わることにより、ＶＤ遅延誤差として現れることをいう。
なお、第１０図に示す差異は説明し易いように表したものである。実際の差異は、ランダムに現れる。ランダムになるのは、バイナリサーチの場合、前回のサイクルのエッジの位置がサーチをするたびに変わるからである。
同図に示すような場合、バイナリサーチのＶＤ遅延特性を表すグラフ線において目標値Ｅｘｐである遅延量Ｔｐｄｂと一致する点は、Ｂ１点及びＢ２点となるが、シーケンシャルサーチのＶＤ遅延特性を表すグラフ線において遅延量Ｔｐｄｂと一致する点は、Ｂ３点のみとなる。そして、Ｂ３点は、Ｂ１点を中心とするシーケンシャルサーチの探索範囲には含まれていない。
このことから、バイナリサーチを実行してＢ１点が発見されると、シーケンシャルサーチを実行してもＢ３を見つけることができず、正常に探索できないという問題があった。
本発明は、上記の問題を解決すべくなされたものであり、一部に値の減少を含んだ昇順の数列（たとえば、タイミングＶＤの設定値に対する遅延量Ｔｐｄの特性）においても、正常かつ確実な目標値Ｅｘｐ（遅延量Ｔｐｄｂ）のサーチを可能とするとともに、バイナリサーチとシーケンシャルサーチとの併用を可能にして、探索時間の短縮と測定精度の低下防止との両立を実現する目標値の探索回路、目標値の探索方法及びこれを用いた半導体試験装置の提供を目的とする。
【発明の開示】
この目的を達成するため、本発明の目標値の探索回路は、目標値を格納する目標値格納部と、この目標値格納部から目標値を取り出すとともに、この取り出した目標値から所定値を減じ又は加えた値を仮目標値として設定する探索制御部と、バイナリサーチにより仮目標値を含んだ一定領域まで探索範囲を絞り込むバイナリサーチ実行部と、絞り込まれた探索範囲内で、シーケンシャルサーチにより仮目標値を起点として増加方向又は減少方向へ目標値を探索するシーケンシャルサーチ実行部とを有した構成としてある。
目標値の探索回路をこのような構成とすると、探索対象となる数列が、一部に減少を含んだ昇順の数列である場合であって、バイナリサーチの特性とシーケンシャルサーチの特性との間で微小の差異が生じるときにおいても、正常かつ確実に目標値を探索できる。
従来の探索回路においては、バイナリサーチによって絞り込まれた探索範囲のうち、目標値よりも小さい値を示す範囲に、鋸歯状波形の谷間が含まれており、かつバイナリサーチの特性とシーケンシャルサーチの特性との間で微小な差異が生じる場合には、シーケンシャルサーチの探索範囲内に目標値が含まれなくなり、正常にその目標値を探索できないことがあった。
これに対して、本発明の探索回路は、所定値（たとえば、シーケンシャルサーチの探索領域のうち半分の領域を示す値）を目標値から減じ又は加えて仮目標値とし、この仮目標値をバイナリサーチによって探索し、さらに、この探索で得られた仮目標値を探索開始値（起点）として、増加方向へシーケンシャルサーチを実行することとしている。
これにより、不連続点があることと、バイナリサーチの特性とシーケンシャルサーチの特性との間に差異があることとによって、目標値が探索範囲から外れることを回避して、その目標値をサーチすることができる。
したがって、探索対象となる数列が、一部に減少を含んだ昇順の数列である場合や、バイナリサーチの特性とシーケンシャルサーチの特性との間で僅少な差異が生じる場合等においても、正常かつ確実に目標値を探索できる。
さらに、目標値の探索が、バイナリサーチとシーケンシャルサーチとの組み合わせによって実行されるため、測定精度の低下防止と探索時間の短縮との両立を実現できる。
なお、本発明において「探索範囲」とは、シーケンシャルサーチによりサーチされる範囲であって、調整側におけるサーチ範囲、たとえば、第１０図に示すＴｉｍｉｎｇ−ＶＤ設定値における探索範囲をいう。
さらに、「探索領域」とは、シーケンシャルサーチによりサーチされる領域であって、被調整側におけるサーチ領域、たとえば、第１０図に示す遅延量Ｔｐｄにおける探索領域をいう。
また、本発明の目標値の探索方法は、目標値を格納する段階と、目標値を取り出すとともに、この取り出した目標値から所定値を減じ又は加えた値を仮目標値として設定する段階と、バイナリサーチにより仮目標値を含んだ一定領域まで探索範囲を絞り込む段階と、絞り込まれた探索範囲内で、シーケンシャルサーチにより仮目標値を起点として増加方向又は減少方向へ目標値を探索する段階とを有した方法としてある。
目標値の探索方法をこのような方法とすれば、バイナリサーチによって仮目標値を含む一定領域が探索され、さらに、この一定領域内でシーケンシャルサーチにより仮目標値を起点として増加方向へ目標値の探索が実行されるため、測定精度を向上しつつ、探索時間の短縮を図ることができる。
そして、探索対象の数列が鋸歯状の波形を示す場合であって、バイナリサーチの特性とシーケンシャルサーチの特性とが異なる場合においても、目標値がシーケンシャルサーチの探索範囲内に存在しなくなるなどの不都合が生じないため、確実に目標値を探し出すことができる。
また、本発明の半導体試験装置は、基準クロック信号を発生する基準クロック発生器と、基準クロック信号に同期して半導体素子に印加する試験パターン信号を出力する試験パターン発生器と、試験パターン信号を所定時間遅延させる可変遅延回路を備えたタイミング発生器と、半導体素子から出力される応答出力信号と期待値パターンとを比較する比較器とを備えた半導体試験装置であって、目標値を格納する格納部と、試験パターン信号の遅延量測定値を求める遅延量測定部と、格納部から目標値を取り出すとともに、この取り出した目標値から所定値を減じ又は加えた値を仮目標値として算出する仮目標値算出部と、バイナリサーチによって、仮目標値を含んだ一定領域まで探索範囲を絞り込むように可変遅延回路の遅延量設定値を与えるバイナリサーチ実行部と、絞り込まれた探索範囲内で、シーケンシャルサーチにより、仮目標値を起点として増加方向又は減少方向へ目標値を探索するように可変遅延回路の遅延量設定値を与えるシーケンシャルサーチ実行部と、可変遅延回路の遅延量を設定するＶＤ設定部と、仮目標値及び遅延量測定値をバイナリサーチ実行部へ送るとともに、バイナリサーチ実行部からの遅延量設定値をＶＤ設定部へ送って可変遅延回路の遅延量を設定させ、仮目標値を含んだ一定領域まで探索範囲が絞り込まれると、この絞り込みで得られた遅延量設定値と、目標値と、遅延量測定値とをシーケンシャルサーチ実行部へ送り、シーケンシャルサーチ実行部からの遅延量設定値をＶＤ設定部へ送って可変遅延回路の遅延量を設定させる探索制御部とを有する探索回路を備えた構成としてある。
半導体試験装置をこのような構成とすると、バイナリサーチとシーケンシャルサーチとを組み合わせて目標値を探索するため、測定精度の向上と探索時間の短縮とを両立させることができる。
さらに、探索対象である遅延量Ｔｐｄが鋸歯状の波形を示すものであって、バイナリサーチの特性とシーケンシャルサーチの特性との間で差異が生じる場合であっても、所定値（たとえば、シーケンシャルサーチの探索領域のうち半分の領域を示す値）が目標値から減ぜられて（又は加えられて）仮目標値とされ、この仮目標値を起点としてシーケンシャルサーチが実行されるため、探索領域内に目標値を含めることができ、確実かつ正常にその目標値を探索できる。
また、本発明の半導体試験装置は、仮目標値算出部が、シーケンシャルサーチの探索領域のうちの半分の領域を示す値を所定値として目標値から減じ又は加え、この減じ又は加えた値を仮目標値として算出する構成としてある。
半導体試験装置をこのような構成とすれば、探索対象である遅延量Ｔｐｄが一部に減少を含んだ昇順の特性を示すものであって、バイナリサーチの特性とシーケンシャルサーチの特性との間で差異が生じる場合であっても、シーケンシャルサーチの探索範囲内に目標値を含めることができるため、そのシーケンシャルサーチによって目標値を確実に探索できる。
【図面の簡単な説明】  第１図は、本発明の探索回路の構成を示すブロック図である。
第２図は、第１図の探索回路を接続した半導体試験装置の構成を示すブロック図である。
第３図は、可変遅延回路における遅延量Ｔｐｄの変化を示すグラフである。
第４図は、本発明の探索回路の動作を示すフローチャートである。
第５図は、従来の半導体試験装置の構成を示すブロック図である。
第６図は、従来の半導体試験装置について、より具体的な構成を示すブロック図である。
第７図は、バイナリサーチによる目標値の探索の経緯を示すグラフである。
第８図は、従来の半導体試験装置におけるＴｉｍｉｎｇ−ＶＤ設定値に対する遅延量Ｔｐｄの変化を示すグラフである。
第９図は、第８図に示した遅延量Ｔｐｄの変化におけるバイナリサーチの探索ルートとシーケンシャルサーチの探索範囲とを示すグラフである。
第１０図は、従来の半導体試験装置におけるバイナリサーチのＶＤ遅延特性とシーケンシャルサーチのＶＤ遅延特性とを示すグラフである。
【発明を実施するための最良の形態】  以下、本発明の実施の形態について、図面を参照して説明する。
まず、本発明の目標値の探索回路、目標値の探索方法及びこれを用いた半導体試験装置の実施形態について、第１図を参照して説明する。
同図は、本実施形態の探索回路の構成を示すブロック図である。
本実施形態の探索回路は、たとえば、第２図に示す半導体試験装置１０の探索回路２０として使用可能である。
第１図に示すように、探索回路２０は、格納部２１と、遅延回路出力部Ｉ／Ｆ２２と、試験パターン発生器入力部Ｉ／Ｆ２３と、遅延量測定部２４と、バイナリサーチ実行部２５と、ＶＤ設定部２６と、探索制御部２７と、仮目標値算出部２８と、シーケンシャルサーチ実行部２９とを有している。
格納部（目標値格納部）２１は、目標値Ｅｘｐ，仮目標値ＥｘｐＢ、シーケンシャルサーチの探索範囲ｂ（あるいは、探索領域ｂ）を格納する。
遅延回路出力部Ｉ／Ｆ２２は、ＤＵＴ入力遅延回路１６の出力側と接続されており、ＤＵＴ入力遅延回路１６から入力した試験パターン信号（遅延クロック信号）を遅延量測定部２４へ送る。
試験パターン発生器入力部Ｉ／Ｆ２３は、試験パターン発生器１１の入力側に接続されている。これにより、試験パターン発生器１１及びＤＵＴ入力遅延回路１６を通る経路と、遅延回路出力部Ｉ／Ｆ２２，遅延量測定部２４及び試験パターン発生器入力部Ｉ／Ｆ２３を通る経路とがループで結ばれる。
遅延量測定部２４は、遅延回路出力部Ｉ／Ｆ２２からの試験パターン信号（遅延クロック信号）にもとづいて、この試験パターン信号の遅延量Ｔｐｄを測定する。そして、測定結果である遅延量測定値を探索制御部２７へ送る。
なお、試験パターン信号の遅延量Ｔｐｄの測定は、ループ周波数を用いたものに限るものではなく、たとえば，反射波などを用いることもできる。
バイナリサーチ実行部２５は、探索制御部２７から、仮目標値ＥｘｐＢと、遅延量測定値とを受け取る。そして、探索制御部２７からの実行指示にもとづいて、バイナリサーチを実行する。
このバイナリサーチ実行部２５で実行されるバイナリサーチは、可変遅延回路ＤＬ１のすべての設定値をＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ／Ｂｙｔｅ）からＬＳＢ（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ／Ｂｙｔｅ）まで１ビットずつ仮目標値ＥｘｐＢとの大小比較により変化させながら、探索領域を半分ずつ減らしていき、この過程を繰り返すことによって、仮目標値ＥｘｐＢを探索するように行われる。
ただし、ここでは、可変遅延回路ＤＬ１の設定値が二進数表示であることを前提として説明する。
そして、バイナリサーチ実行部２５は、仮目標値ＥｘｐＢが遅延量測定値Ｔｐｄより小さいときは、「可変遅延回路ＤＬ１の設定値（遅延量設定値、ＶＤ設定値）＝直前のＶＤ設定値−対象ビット」を算出して探索結果とする。一方、仮目標値ＥｘｐＢが遅延量測定値Ｔｐｄより大きいときは、「ＶＤ設定値＝直前のＶＤ設定値」を算出して探索結果とする。
すなわち、バイナリサーチ実行部２５においては、「直前のＶＤ設定値−対象ビット＋対象ビットを１ビットＬＳＢ側にシフトしたビット」と「直前のＶＤ設定値＋対象ビット＋対象ビットを１ビットＬＳＢ側にシフトしたビット」とを繰り返してＬＳＢまで探索した結果を探索結果としている。
さらに、バイナリサーチ実行部２５は、探索結果である遅延量設定値を探索制御部２７へ送る。
そして、バイナリサーチ実行部２５は、仮目標値ＥｘｐＢを含んだ一定領域まで探索範囲ｂが絞り込まれて探索が終了すると、この探索が終了した旨を示す探索終了信号を探索制御部２７へ送る。
ＶＤ設定部２６は、ＤＵＴ入力遅延回路１６の可変遅延回路ＤＬ１に対して、遅延量Ｔｐｄの初期値（ＶＤ可変範囲τ（１〜ｎ）の中間値）の設定を行う。
さらに、ＶＤ設定部２６は、探索制御部２７から遅延量設定値が送られてくると、その遅延量設定値に合わせるように可変遅延回路ＤＬ１を設定する。
探索制御部２７は、格納部２１から目標値Ｅｘｐと（シーケンシャルサーチの）探索範囲ｂとを取り出し、これら目標値Ｅｘｐ及び探索範囲ｂを仮目標値算出部２８へ送る。そして、この仮目標値算出部２８からの仮目標値ＥｘｐＢを格納部２１へ送って格納させる。
さらに、探索制御部２７は、格納部２１から取り出した仮目標値ＥｘｐＢと、遅延量測定部２４から受け取った遅延量測定値とを、バイナリサーチ実行部２５へ送ってバイナリサーチを実行するように指示（実行指示）し、可変遅延回路ＤＬ１の遅延量設定値を算出させる。そして、バイナリサーチ実行部２５からの遅延量設定値をＶＤ設定部２６へ送る。
その後、バイナリサーチ実行部２５から探索終了信号が送られてくると、探索制御部２７は、続いて、格納部２１から目標値Ｅｘｐ及び仮目標値ＥｘｐＢを取り出す。そして、これら目標値Ｅｘｐ及び仮目標値ＥｘｐＢと、バイナリサーチ実行部２５で最終的に得られた遅延量設定値と、遅延量測定部２４からの遅延量測定値とを、シーケンシャルサーチ実行部２９へ送ってシーケンシャルサーチを実行するように指示（実行指示）し、可変遅延回路ＤＬ１の遅延量設定値を算出させる。さらに、シーケンシャルサーチ実行部２９からの遅延量設定値をＶＤ設定部２６へ送る。
仮目標値算出部２８は、探索制御部２７から目標値Ｅｘｐと（シーケンシャルサーチの）探索範囲ｂとを受け取ると、その目標値Ｅｘｐから、その探索範囲ｂを示す値の半分の値を減じ又は加えた値を仮目標値ＥｘｐＢとして算出する。
そして、仮目標値算出部２８は、算出した仮目標値ＥｘｐＢを探索制御部２７へ送る。
なお、仮目標値算出部２８の有する機能、すなわち、目標値Ｅｘｐから、シーケンシャルサーチの探索範囲ｂを示す値の半分の値を減じ又は加えた値を仮目標値ＥｘｐＢとして算出する機能については、仮目標値算出部２８ではなく、探索制御部２７に備えることができる。
シーケンシャルサーチ実行部２９は、探索制御部２７からの実行指示にもとづいて、シーケンシャルサーチを実行する。
このシーケンシャルサーチ実行部２９で実行されるシーケンシャルサーチは、可変遅延回路ＤＬ１に設定可能なすべての遅延量設定値を順番に測定し、目標値Ｅｘｐに近い設定値を探すことにより行われる。
こうしてバイナリサーチ実行部２５におけるバイナリサーチとシーケンシャルサーチ実行部２９におけるシーケンシャルサーチとを併用することにより、半導体試験装置１０における目標値Ｅｘｐの探索において、測定精度の向上や探索時間の短縮を図ることができる。
ただし、バイナリサーチの測定精度がヒステリシスの影響により劣化するときは、以下のような問題が起こる場合がある。
第３図に示すように、試験パターン信号の遅延量Ｔｐｄが鋸歯状の特性を有している場合において、バイナリサーチの結果が、同図のＡ点のような平坦な場所であれば、正常にシーケンシャルサーチされる（Ａ点を中心に上方向あるいは下方向にシーケンシャルサーチを行えば、目標値Ｅｘｐを探し出せる）。
ところが、バイナリサーチの結果が、同図のＢ１点のような鋸の谷間（遅延量Ｔｐｄの不連続点におけるＶＤ設定値増加側近傍）にある場合は、Ｂ１点を中心に上方向へのシーケンシャルサーチは正しく実行されるものの、下方向へのシーケンシャルサーチは目標値Ｅｘｐより大きい場所（同図中、「Ｃ」として示した範囲）をサーチしてしまい、正常にサーチできない。
すなわち、Ｂ１点より上方（ＶＤ設定値増加側）に目標値Ｅｘｐがある場合は、Ｂ１点を起点として順次増加方向にシーケンシャルサーチされるため、その目標値Ｅｘｐを探し出すことができる。これに対し、Ｂ１点より下方（ＶＤ設定値減少側）に目標値Ｅｘｐがある場合は、Ｂ１点を起点として若干減少方向にシーケンシャルサーチされた後、遅延量Ｔｐｄの不連続点に達したところで、目標値Ｅｘｐより大きな遅延量Ｔｐｄでシーケンシャルサーチされ始め、目標値Ｅｘｐを探し出せないうちにシーケンシャルサーチの探索範囲が終了してしまうことがある。これは、バイナリサーチのＶＤ遅延特性とシーケンシャルサーチのＶＤ遅延特性とが若干異なった値をとる場合に、目標値Ｅｘｐがシーケンシャルサーチの探索範囲外となることがあるためである。
そこで、同図のＢ’点のように、バイナリサーチを実行するときの目標値Ｅｘｐを、次にシーケンシャルサーチで下方向にサーチする領域分だけ小さくした値（仮目標値ＥｘｐＢ）に設定し直す。
そして、この仮目標値ＥｘｐＢを目標にしてバイナリサーチを行い、終了後は、目標値Ｅｘｐを元に戻し、シーケンシャルサーチにより仮目標値ＥｘｐＢを起点として上方向だけをサーチする。
ここで、「次のシーケンシャルサーチで下方向にサーチする領域分だけ（目標値Ｅｘｐを）小さくした値」を仮目標値ＥｘｐＢとして設定するのは、次の理由による。
バイナリサーチにより最終的に絞り込まれた遅延量Ｔｐｄの探索領域には目標値Ｅｘｐが含まれており、この探索領域がシーケンシャルサーチによる探索範囲となる。バイナリサーチは、本来、純粋な昇順（又は降順）の数列を検索対象とするため、シーケンシャルサーチの探索範囲内における検索対象も純粋な昇順（又は降順）の数列となっているはずである。ところが、探索対象である可変遅延回路の遅延量Ｔｐｄは全体に増加する鋸歯状の波形であるため、全体的には昇順の数列でありながら一部に減少を含んでいる。ここで、その減少した波形部分（不連続点）がシーケンシャルサーチの探索範囲に含まれていなければ、その探索範囲内では純粋な昇順の数列のみが存在するため確実に目標値Ｅｘｐを探し出せる。ところが、減少した波形部分（不連続点）がシーケンシャルサーチの探索範囲に含まれているときは、そのシーケンシャルサーチの探索範囲内で二度以上探索される遅延量Ｔｐｄの値が存在する一方、純粋な昇順数列であれば探索されるものの不連続点があるために探索されない遅延量Ｔｐｄの値も存在する。この探索されない遅延量Ｔｐｄの値に目標値Ｅｘｐが含まれているときは、シーケンシャルサーチを行ってもその目標値Ｅｘｐを探し出すことができない。
そこで、シーケンシャルサーチの探索範囲内に不連続点が含まれないようにするために、仮目標値ＥｘｐＢを設定する。
仮目標値ＥｘｐＢは、「次のシーケンシャルサーチで下方向にサーチする領域分だけ（目標値Ｅｘｐを）小さくした値」であるため、言い換えれば、遅延量Ｔｐｄの探索領域の下限値である。遅延量Ｔｐｄの探索領域内には必ず目標値Ｅｘｐが含まれていることから、この探索領域内のＶＤ遅延特性が純粋な昇順数列であれば、下限値である仮目標値ＥｘｐＢから上方向にシーケンシャルサーチを行うことで、目標値Ｅｘｐを探し出すことができる。
しかも、第３図に示すように、バイナリサーチの結果であるＢ１点が不連続点のＶＤ設定値増加側近傍であっても、遅延量Ｔｐｄが全体に増加する波形であるため、仮目標値ＥｘｐＢは、「下方向に・・・小さくした値」とすることで不連続点から見て下方の離れた位置に設定される。このため、仮目標値ＥｘｐＢを起点として上方向にシーケンシャルサーチを行った場合は、不連続点に差し掛かるまでに、目標値Ｅｘｐを探し出すことができる。
したがって、目標値ＥｘｐがＢ１点のような鋸の谷間（遅延量Ｔｐｄの不連続点）付近にある場合においても、その目標値Ｅｘｐを正常にサーチすることができる。
次に、本実施形態の半導体試験装置の動作（探索方法）について、第４図を参照して説明する。
同図は、本実施形態の半導体試験装置における探索回路の動作を示すフローチャートである。
なお、可変遅延回路ＤＬ１の設定値は、説明の便宜上、二進数表示であることを前提とする。ただし、この可変遅延回路ＤＬ１の設定値は、二進数表示に限るものではなく、たとえば、１０進数表示や８進数表示などとすることもできる。
同図に示すように、シーケンシャルサーチの探索範囲ｂ（あるいは、探索領域ｂ）が、格納部２１に格納（準備）されている（ステップ１０）。このシーケンシャルサーチの探索範囲ｂは、取り得る誤差の絶対値の最大値として、「｜（バイナリサーチ）−（シーケンシャルサーチ）｜ＭＡＸ」によって求めることができる。
さらに、格納部２１には、目標値も格納（準備）されている（ステップ１１）。
そして、ＶＤ設定部２６において、可変遅延回路ＤＬ１の初期値（ＶＤ可変範囲τ（１〜ｎ）の中間値）の設定が行われる（ステップ１２）。
次いで、探索制御部２７において、格納部２１から目標値Ｅｘｐ及び（シーケンシャルサーチの）探索範囲ｂが取り出されて仮目標値算出部２８へ送られる。
仮目標値算出部２８において、目標値Ｅｘｐから、探索範囲ｂを示す値の半分の値を減じ又は加えた値（目標値Ｅｘｐ−探索範囲ｂ／２）が仮目標値ＥｘｐＢとして算出される（ステップ１３）。そして、この算出された仮目標値ＥｘｐＢが、仮目標値算出部２８から探索制御部２７へ送られ、さらに、格納部２１へ送られて格納される。
続いて、遅延量測定部２４において、遅延回路出力部２２からの試験パターン信号にもとづいて、この試験パターン信号の遅延量Ｔｐｄが測定される（ステップ１４）。
そして、この測定結果である遅延量測定値Ｔｐｄが、探索制御部２７へ送られる。
探索制御部２７において、遅延量測定値Ｔｐｄが受け取られると、格納部２１から仮目標値ＥｘｐＢが取り出され、遅延量測定値Ｔｐｄとともに、バイナリサーチ実行部２５へ送られて、バイナリサーチの実行が指示される。
バイナリサーチの実行が指示されたバイナリサーチ実行部２５において、仮目標値ＥｘｐＢと遅延量測定値Ｔｐｄとが一致しているか否かが判断される（ステップ１５）。
判断の結果、仮目標値ＥｘｐＢと遅延量測定値Ｔｐｄとが異なるときは、続いて、それら仮目標値ＥｘｐＢと遅延量測定値Ｔｐｄとの大小が比較判断される（ステップ１６）。
判断の結果、仮目標値ＥｘｐＢが遅延量測定値Ｔｐｄより小さいときは、「ＶＤ設定値（遅延量設定値）＝直前のＶＤ設定値−対象ビット」が実行されてＶＤ設定値が算出される（ステップ１７）。
一方、仮目標値ＥｘｐＢが遅延量測定値Ｔｐｄより大きいときは、「ＶＤ設定値＝直前のＶＤ設定値」が実行されてＶＤ設定値が算出される（ステップ１８）。
すなわち、バイナリサーチ実行部２５においては、「直前のＶＤ設定値−対象ビット＋対象ビットを１ビットＬＳＢ側にシフトしたビット」と「直前のＶＤ設定値＋対象ビット＋対象ビットを１ビットＬＳＢ側にシフトしたビット」とを繰り返してＬＳＢまで探索した結果を探索結果としている。
そして、これら算出されたＶＤ設定値が、バイナリサーチ実行部２５から探索制御部２７へ送られる。
探索制御部２７において、受け取ったＶＤ設定値がＶＤ設定部２６へ送られる。
ＶＤ設定部２６において、受け取ったＶＤ設定値にもとづいて、ＤＵＴ入力遅延回路１６における可変遅延回路ＤＬ１の設定が行われる。
この可変遅延回路ＤＬ１の設定後、遅延量測定部２４において、再度試験パターン信号の遅延量Ｔｐｄが測定されて探索制御部２７へ送られる（ステップ１４）。そして、探索制御部２７において、仮目標値ＥｘｐＢと遅延量測定値Ｔｐｄとがバイナリサーチ実行部２５へ送られて比較判断され（ステップ１５）、ＶＤ設定値が算出されて（ステップ１６〜ステップ１８）、ＶＤ設定部２６において可変遅延回路ＤＬ１の設定が行われる。
このようなバイナリサーチにもとづく可変遅延回路ＤＬ１の設定動作が、仮目標値ＥｘｐＢと遅延量設定値Ｔｐｄとが一致するまで繰り返し行われる（ステップ１４〜ステップ１８）。
その後、仮目標値ＥｘｐＢと遅延量測定値Ｔｐｄとが一致しているものとバイナリサーチ実行部２５で判断されると（ステップ１５）、このバイナリサーチ実行部２５から探索制御部２７へ、探索終了信号が送られる。
この探索終了信号を受けた探索制御部２７において、遅延量測定部２４に対し、試験パターン信号の遅延量Ｔｐｄの測定が指示される。
遅延量測定部２４において、遅延回路出力部Ｉ／Ｆ２２からの試験パターン信号にもとづいて、その試験パターン信号の遅延量Ｔｐｄが測定され（ステップ１９）、この測定された遅延量Ｔｐｄ（遅延量測定値Ｔｐｄ）が、探索制御部２７へ送られる。
探索制御部２７において、遅延量測定部２４からの遅延量測定値Ｔｐｄと、格納部２１から取り出した目標値Ｅｘｐと、バイナリサーチ実行部２５において最終的に得られた遅延量設定値とがシーケンシャルサーチ実行部２９へ送られて、シーケンシャルサーチの実行が指示される。
この実行指示を受けたシーケンシャルサーチ実行部２９において、目標値Ｅｘｐと遅延量測定値Ｔｐｄとが一致しているか否かが判断される（ステップ２０）。
判断の結果、目標値Ｅｘｐと遅延量測定値Ｔｐｄとが異なるときは、次のシーケンシャルサーチにおけるＶＤ設定値が算出される（ステップ２１）。このＶＤ設定値の算出は、「直前のＶＤ設定値＋ＶＤ最小１ビット」によって求めることができる。
そして、この算出されたＶＤ設定値が、探索制御部２７を介してＶＤ設定部２６へ送られ、このＶＤ設定値にもとづいて、ＤＵＴ入力遅延回路１６の可変遅延回路ＤＬ１の設定が行われる。
この可変遅延回路ＤＬ１の設定後、遅延量測定部２４において、再度試験パターン信号の遅延量Ｔｐｄが測定されて探索制御部２７へ送られる（ステップ１９）。そして、探索制御部２７において、目標値Ｅｘｐと遅延量測定値Ｔｐｄとがシーケンシャルサーチ実行部２９へ送られて比較判断され（ステップ２０）、ＶＤ設定値が算出されて（ステップ２１）、ＶＤ設定部２６において可変遅延回路ＤＬ１の設定が行われる。
このようなシーケンシャルサーチにもとづく可変遅延回路ＤＬ１の設定動作が、目標値Ｅｘｐと遅延量測定値Ｔｐｄとが一致するまで繰り返し行われる（ステップ１９〜ステップ２１）。
そして、目標値Ｅｘｐと遅延量測定値Ｔｐｄとが一致すると、目標値Ｅｘｐの探索が終了する。
なお、本発明の探索回路と探索方法は、半導体試験装置のＤＵＴ入力遅延回路における可変遅延回路ＤＬ１の遅延量Ｔｐｄを測定・調整するために用いることに限るものではなく、たとえば、一部に減少を含んだ昇順の数列における目標値Ｅｘｐの探索を、バイナリサーチとシーケンシャルサーチとの両方を用いて行う場合に用いることができる。
たとえば、比較器１３における比較タイミング遅延回路１７の可変遅延回路ＤＬ２の設定（応答出力信号と期待値パターンとの比較判断にもとづくＤＬ２の遅延量の設定）や、基準クロック発生器１５（タイミング信号発生回路）における基準クロック信号ＣＬＫ（タイミング信号）の出力タイミングの調整などに用いることができる。
以上のように、本発明によれば、探索対象である数列（例えば、試験パターン信号の遅延量Ｔｐｄ）が一部に減少を含んだ昇順数列（例えば、鋸歯状の波形等）を示すものであって、バイナリサーチの特性とシーケンシャルサーチの特性との間に差異が生じる場合であっても、確実かつ正常に目標値を探索することができる。
さらに、バイナリサーチとシーケンシャルサーチとを組み合わせて目標値を探索するため、測定精度の低下防止と、探索時間の短縮とを両立させることができる。
【産業上の利用可能性】  本発明の目標値の探索回路、目標値の探索方法及びこれを用いた半導体試験装置は、一部に減少を含む昇順又は降順の数列を探索対象として目標値を探索する装置や方法に利用できる。
【図１】
2004038436.tif 000003
【図２】
2004038436.tif 000004
【図３】
2004038436.tif 000005
【図４】
2004038436.tif 000006
【図５】
2004038436.tif 000007
【図６】
2004038436.tif 000008
【図７】
2004038436.tif 000009
【図８】
2004038436.tif 000010
【図９】
2004038436.tif 000011
【図１０】
2004038436.tif 000012
【国際調査報告】
2004038436.tif 000013
2004038436.tif 000014