(57)【要約】【課題】ストローブタイミングの余裕度を短時間で算出することができるテスタシミュレーション装置および方法を提供する。【解決手段】ＤＵＴモデル２２からの出力波形と、この出力波形の期待値と、前記出力波形と期待値との比較を行うストローブタイミングを示すストローブタイミング波形とを記憶する記憶部３と、この記憶部３に記憶された出力波形、期待値およびストローブタイミング波形と、前記ストローブタイミングのオフセットの量および方向を示すオフセット値とに基づいて、所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定する波形判定手段８と、この波形判定手段８による判定結果に基づいて、前記ストローブタイミングのオフセットの余裕度を算出する余裕度算出手段６とを備えている。【選択図】図１
2008008718.tif 000002
【特許請求の範囲】
【請求項１】
被試験対象のテスタによる試験を、被試験対象の動作をシミュレーションするＤＵＴモデルと、テスタの動作をシミュレーションするテスタモデルとによりシミュレーションするテスタシミュレーション装置において、
前記ＤＵＴモデルからの出力波形と、この出力波形の期待値と、前記出力波形と期待値との比較を行うストローブタイミングを示すストローブタイミング波形とを記憶する記憶部と、
この記憶部に記憶された出力波形、期待値およびストローブタイミング波形と、前記ストローブタイミングのオフセットの量および方向を示すオフセット値とに基づいて、所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定する波形判定手段と、
この波形判定手段による判定結果に基づいて、前記ストローブタイミングのオフセットの余裕度を算出する余裕度算出手段と
を備えていることを特徴とするテスタシミュレーション装置。
【請求項２】
前記波形判定手段は、
前記ストローブタイミング波形と期待値との論理積演算を行って第１の波形を生成し、前記出力波形をオフセット値が示す方向とは逆方向にオフセット値が示す量だけシフトして第２の波形を生成し、この第２の波形と前記ストローブタイミング波形との論理積演算を行って第３の波形を生成し、前記第１の波形および第３の波形を出力する波形生成手段と、
前記第１の波形と第３の波形との排他的論理和演算を行って、これらの波形どうしが一致するか否かを判定し、これにより所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定する波形比較手段と
を有している
ことを特徴とする請求項１に記載のテスタシミュレーション装置。
【請求項３】
前記波形判定手段は、
前記ストローブタイミング波形と期待値との論理積演算を行って第１の波形を生成し、前記ストローブタイミング波形をオフセット値だけシフトして第４の波形を生成し、前記第１の波形をオフセット値だけシフトして第５の波形を生成し、前記出力波形と第４の波形との論理積演算を行って第６の波形を生成し、前記第５の波形および第６の波形を出力する波形生成手段と、
前記第５の波形と第６の波形との排他的論理和演算を行って、これらの波形どうしが一致するか否かを判定し、これにより所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定する波形比較手段と
を有している
ことを特徴とする請求項１に記載のテスタシミュレーション装置。
【請求項４】
被試験対象のテスタによる試験を、被試験対象の動作をシミュレーションするＤＵＴモデルと、テスタの動作をシミュレーションするテスタモデルとによりシミュレーションするテスタシミュレーション方法において、
前記ＤＵＴモデルからの出力波形と、この出力波形の期待値と、前記出力波形と期待値との比較を行うストローブタイミングを示すストローブタイミング波形と、前記ストローブタイミングのオフセットの量および方向を示すオフセット値とに基づいて、所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定するステップと、
この判定結果に基づいて、前記ストローブタイミングのオフセットの余裕度を算出するステップと
を有していることを特徴とするテスタシミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テスタシミュレーション装置および方法に関し、特に、期待値判定タイミング（ストローブタイミング）の余裕度を算出することができるテスタシミュレーション装置および方法に関する。
【背景技術】
【０００２】
ＩＣテスタは、テストプログラムに基づいて、被試験対象（以下、ＤＵＴと呼ぶ）に入力パターンを与え、ＤＵＴからの出力パターンと、その期待値パターンとを期待値判定タイミング（ストローブタイミング）で比較して、ＤＵＴの良否を判定するものである。
【０００３】
近年では、ＩＣテスタで実際にＤＵＴのテストを行う前に、ＩＣテスタおよびＤＵＴをモデル化してシミュレーションを行い、ＩＣテスタのテストプログラムの動作を確認している。このような動作確認を行うための装置は、例えば、下記特許文献１等に開示されている。
【０００４】
ところで、実際のテスタやＤＵＴには、個体毎に特性のばらつきがある。また、テストを実行する度に特性値の測定結果がばらつくことも考えられる。従って、このようなばらつきがあっても適切な判定ができるように、期待値判定タイミング（ストローブタイミング）が時間軸上でどの程度ずれても適切な判定ができるかを知っておく必要がある。この許容範囲を余裕度と呼ぶ。
【０００５】
通常、ＤＵＴのテストにおいては、テストレートに基づいて、期待値判定タイミング（ストローブタイミング）を決定する。すなわち、テストレートの先頭から所定時間経過後に、期待値判定タイミング（ストローブタイミング）が発生する。テストパターンは、このようなテストレートを多数有しているので、全てのテストレートで適切な判定ができるような余裕度を算出する必要がある。
【０００６】
図８は、このような余裕度を算出する装置の一従来例の構成図である。テストプログラム記憶部１０１は、テストプログラムを記憶している。テストプログラムは、ＤＵＴのテストに用いるテストパターンを含んでいる。テストパターンは、ＤＵＴへの入力パターン、ＤＵＴからの出力パターンの期待値等からなる。
【０００７】
シミュレーション手段１０２は、テストプログラム記憶部１０１からテストプログラムを入力し、このテストプログラムに従って、テスタの動作のシミュレーションを実行する。シミュレーション手段１０２は、テスタモデル１２１と、ＤＵＴモデル１２２とを有している。テスタモデル１２１は、テスタの動作をシミュレーションし、ＤＵＴモデル１２２は、ＩＣやＬＳＩなどのＤＵＴの動作をシミュレーションする。シミュレーションにおいては、テスタモデル１２１からＤＵＴモデル１２２に入力パターンが送られ、ＤＵＴモデル１２２からテスタモデル１２１に出力パターンが返される。テスタモデル１２１内の比較手段１２３は、ＤＵＴモデル１２２からの出力パターンと、この出力パターンの期待値とを比較し、両者が一致しているか否かを判定する。一致していればパス、一致していなければフェイルと判定する。
【０００８】
余裕度解析手段１０３は、設定手段１３１と、余裕度算出手段１３２とを有している。設定手段１３１は、設定データを有していて、この設定データにより、テストプログラム記憶部１０１内のテストプログラムの設定を行う。余裕度算出手段１３２は、設定手段１３１内の設定データと、比較手段１２３による判定結果（パスまたはフェイル）とにより、余裕度を算出する。
【０００９】
図９は上記の装置の動作を示すフローチャートであり、図１０はタイミングチャートである。図９および図１０を参照し、上記の装置の動作を説明する。まず、設定手段１３１が、テストプログラム記憶部１０１内のテストプログラムにおける期待値判定タイミングの値を初期値に設定する（ステップＳ１０１）。次に、シミュレーション手段１０２が、テストプログラム記憶部１０１内のテストプログラムを読み出し、このテストプログラムに従って、ＤＵＴのテストのシミュレーションを実行し（ステップＳ１０２）、比較手段１２３が判定結果を出力する。
【００１０】
すると、余裕度解析手段１０３内の余裕度算出手段１３２が、上記判定結果を取得する（ステップＳ１０３）。そして、設定手段１３１が、期待値判定タイミングの値が終了値に達したかどうかを判断し（ステップＳ１０４）、達していなければ（Ｎ）、期待値判定タイミングの値を予め決められた値Δだけ増加させ（ステップＳ１０５）、ステップＳ１０２に戻り、再度シミュレーションを実行する。期待値判定タイミングの値が終了値に達したら（Ｙ）、余裕度算出手段１３２が、パスした期待値判定タイミングの最大値と最小値の差を余裕度として算出する（ステップＳ１０６）。
【特許文献１】特開２００３−２５６４９３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
大規模なＬＳＩのテストのシミュレーションは長時間を要する。従って、上記の余裕度を算出するためにシミュレーションを繰り返すと、さらに長い時間が必要になる。
【００１２】
本発明の目的は、期待値判定タイミング（ストローブタイミング）の余裕度を短時間で算出することができるテスタシミュレーション装置および方法を提供することである。
【課題を解決するための手段】
【００１３】
本発明は、被試験対象のテスタによる試験を、被試験対象の動作をシミュレーションするＤＵＴモデルと、テスタの動作をシミュレーションするテスタモデルとによりシミュレーションするテスタシミュレーション装置において、前記ＤＵＴモデルからの出力波形と、この出力波形の期待値と、前記出力波形と期待値との比較を行うストローブタイミングを示すストローブタイミング波形とを記憶する記憶部と、この記憶部に記憶された出力波形、期待値およびストローブタイミング波形と、前記ストローブタイミングのオフセットの量および方向を示すオフセット値とに基づいて、所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定する波形判定手段と、この波形判定手段による判定結果に基づいて、前記ストローブタイミングのオフセットの余裕度を算出する余裕度算出手段とを備えていることを特徴とする。
【００１４】
前記波形判定手段は、前記ストローブタイミング波形と期待値との論理積演算を行って第１の波形を生成し、前記出力波形をオフセット値が示す方向とは逆方向にオフセット値が示す量だけシフトして第２の波形を生成し、この第２の波形と前記ストローブタイミング波形との論理積演算を行って第３の波形を生成し、前記第１の波形および第３の波形を出力する波形生成手段と、前記第１の波形と第３の波形との排他的論理和演算を行って、これらの波形どうしが一致するか否かを判定し、これにより所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定する波形比較手段とを有していてもよい。
【００１５】
また、前記波形判定手段は、前記ストローブタイミング波形と期待値との論理積演算を行って第１の波形を生成し、前記ストローブタイミング波形をオフセット値だけシフトして第４の波形を生成し、前記第１の波形をオフセット値だけシフトして第５の波形を生成し、前記出力波形と第４の波形との論理積演算を行って第６の波形を生成し、前記第５の波形および第６の波形を出力する波形生成手段と、前記第５の波形と第６の波形との排他的論理和演算を行って、これらの波形どうしが一致するか否かを判定し、これにより所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定する波形比較手段とを有していてもよい。
【００１６】
また、本発明は、被試験対象のテスタによる試験を、被試験対象の動作をシミュレーションするＤＵＴモデルと、テスタの動作をシミュレーションするテスタモデルとによりシミュレーションするテスタシミュレーション方法において、前記ＤＵＴモデルからの出力波形と、この出力波形の期待値と、前記出力波形と期待値との比較を行うストローブタイミングを示すストローブタイミング波形と、前記ストローブタイミングのオフセットの量および方向を示すオフセット値とに基づいて、所定のオフセット値だけオフセットされたストローブタイミングにおいて前記出力波形と期待値とが一致するか否かを判定するステップと、この判定結果に基づいて、前記ストローブタイミングのオフセットの余裕度を算出するステップとを有していることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、ストローブタイミング（期待値判定タイミング）の余裕度を算出するためにシミュレーションを繰り返す必要がなく、１回のシミュレーションで余裕度を算出することができるので、余裕度を短時間で算出することができる。
【発明を実施するための最良の形態】
【００１８】
図１は、本発明の第１実施形態に係るテスタシミュレーション装置の構成図である。このテスタシミュレーション装置は、テストプログラム記憶部１と、シミュレーション手段２と、シミュレーション結果データ記憶部３と、波形生成手段４と、波形比較手段５と、余裕度算出手段６と、余裕度記憶部７とを備えている。シミュレーション手段２は、テスタモデル２１と、ＤＵＴモデル２２とを有している。波形生成手段４と波形比較手段５とは、波形判定手段８を形成している。
【００１９】
テストプログラム記憶部１は、テストプログラムを記憶している。テストプログラムは、ＤＵＴのテストに用いるテストパターンを含んでいる。テストパターンは、ＤＵＴへの入力パターン、ＤＵＴからの出力パターンの期待値等からなる。
【００２０】
シミュレーション手段２は、テストプログラム記憶部１からテストプログラムを入力し、このテストプログラムに従って、テスタの動作のシミュレーションを実行する。テスタモデル２１は、テスタの動作をシミュレーションし、ＤＵＴモデル２２は、ＩＣやＬＳＩなどのＤＵＴの動作をシミュレーションする。シミュレーションにおいては、テスタモデル２１からＤＵＴモデル２２に入力パターンが送られ、ＤＵＴモデル２２からテスタモデル２１に出力パターンが返される。シミュレーション実行中は、シミュレーション手段２からシミュレーション結果データが逐次出力される。シミュレーション結果データは、ＤＵＴモデル２２からの出力波形（出力パターン）と、この出力波形の期待値と、ストローブタイミング（期待値判定タイミング）波形とを含んでいる。
【００２１】
シミュレーション結果データ記憶部３は、シミュレーション手段２から出力されたシミュレーション結果データを記憶する。波形生成手段４は、シミュレーション結果データに含まれている各波形から、必要な波形を生成する。波形比較手段５は、波形生成手段４が生成した波形どうしを比較し、波形どうしが一致しているかどうかを判定する。余裕度算出手段６は、波形比較手段５による判定結果に基づいて、ストローブタイミングの余裕度を算出する。余裕度記憶部７は、余裕度算出手段６が算出した余裕度を記憶する。
【００２２】
なお、テストプログラム記憶部１、シミュレーション結果データ記憶部３、余裕度記憶部７は、ハードディスク、光ディスク、メモリ等によって構成されてもよい。また、シミュレーション手段２、テスタモデル２１、ＤＵＴモデル２２、波形生成手段４、波形比較手段５、余裕度算出手段６、波形判定手段８は、コンピュータのＣＰＵ（Central Processing Unit）およびＲＡＭ（Random Access Memory）によって構成され、ＲＡＭにロードされるコンピュータ・プログラムをＣＰＵが実行することによって、その機能を実現させるものであってもよいし、専用のハードウェアによって実現されるものであってもよい。
【００２３】
図２は本実施形態の動作を示すフローチャートであり、図３はタイミングチャートである。図２および図３を参照し、本実施形態に係るテスタシミュレーション装置の動作を説明する。
【００２４】
まず、フローチャートに記載された動作を開始する前に、以下の動作が実行される。まず、シミュレーション手段２が、テストプログラム記憶部１からテストプログラムを入力し、このテストプログラムに従って、テスタの動作のシミュレーションを１回実行する。シミュレーションにおいては、テスタモデル２１からＤＵＴモデル２２に入力波形（入力パターン）が送られ、ＤＵＴモデル２２からテスタモデル２１に出力波形（出力パターン）が返される。そして、１回のシミュレーションの実行中に、シミュレーション手段２からシミュレーション結果データ（ＤＵＴモデル２２からの出力波形、出力波形の期待値、ストローブタイミング波形）が逐次出力され、シミュレーション結果データ記憶部３に記憶される。
【００２５】
以上の動作を実行した後に、フローチャートに記載された動作を開始する。まず、波形生成手段４が、ストローブタイミングをオフセットさせる際のオフセット値を初期値に設定する（ステップＳ１）。ここで、オフセット値は、符号を含む値とする。すなわち、ストローブタイミングを、時間軸上で、時間が戻る方向にオフセットさせる場合には、オフセット値の符号をマイナス（−）とし、時間が進む方向にオフセットさせる場合には、オフセット値の符号をプラス（＋）とする。ただし、本実施形態においては、ストローブタイミングを実際にオフセットさせることは行わず、ストローブタイミングのオフセットと等価な処理を行う。
【００２６】
波形生成手段４は、シミュレーション結果データ記憶部３からシミュレーション結果データ（ＤＵＴモデル２２からの出力波形、出力波形の期待値、ストローブタイミング波形）を受け取り、ストローブタイミング波形と期待値との論理積（ＡＮＤ）演算を行って、波形Ａを生成する（ステップＳ２）。すなわち、この波形Ａは、期待値をストローブタイミング波形で切り出した波形となる。
【００２７】
次に、波形生成手段４は、ＤＵＴモデル２２からの出力波形を時間軸方向にシフトして、波形Ｂを生成する（ステップＳ３）。このときのシフトの大きさは、オフセット値が示すオフセット量と同じ大きさで、シフトの方向は、オフセット値の符号が示す方向とは逆方向である。
【００２８】
次に、波形生成手段４は、波形Ｂとストローブタイミング波形との論理積（ＡＮＤ）演算を行って、波形Ｃを生成する（ステップＳ４）。そして、波形生成手段４は、波形Ａおよび波形Ｃを出力する。
【００２９】
すると、波形比較手段５が、波形生成手段４から波形Ａおよび波形Ｃを受け取り、この波形Ａと波形Ｃの排他的論理和（ＤＩＦＦ）演算を行う（ステップＳ５）。この演算は、２つの波形の不一致箇所を検出する演算である。すなわち、波形Ａと波形Ｃが一致した場合には、演算結果の波形に何も変化点が出てこないが、波形Ａと波形Ｃが一致しなかった場合には、ストローブタイミングで変化点が出てくる。波形Ａと波形Ｃが一致したということは、オフセットされたストローブタイミングでの出力波形と、期待値とが一致したことを意味する。反対に、波形Ａと波形Ｃが一致しなかったということは、オフセットされたストローブタイミングでの出力波形と、期待値とが一致しなかったことを意味する。このように、本実施形態では、波形Ａと波形Ｃの排他的論理和（ＤＩＦＦ）演算を１回行うだけで、オフセットされたストローブタイミングでの出力波形と、期待値との一致／不一致を判定することができる。すなわち、波形演算を使って、波形全体を一括して処理できる。
【００３０】
波形比較手段５は、排他的論理和（ＤＩＦＦ）演算結果の波形上で変化点を探し（ステップＳ６）、変化点の有無を調べ（ステップＳ７）、変化点が無ければ（ＮＯ）パスと判定し（ステップＳ８）、変化点が有れば（ＹＥＳ）フェイルと判定する（ステップＳ９）。
【００３１】
次に、波形生成手段４が、ストローブタイミングのオフセット値が終了値に達したかどうかを判断し（ステップＳ１０）、達していなければ（ＮＯ）、オフセット値を予め決められた値Δだけ増加させ（ステップＳ１１）、ステップＳ２に戻り、上記と同様の動作を繰り返す。オフセット値が終了値に達したら（ＹＥＳ）、余裕度算出手段６が、連続してパスしたオフセット値の領域を余裕度として算出する（ステップＳ１２）。算出された余裕度は、余裕度記憶部７に記憶される。
【００３２】
図４は本発明の第２実施形態に係るテスタシミュレーション装置の動作を示すフローチャートであり、図５はタイミングチャートである。図４および図５を参照し、本実施形態の動作を説明する。なお、本実施形態の構成は、図１に示した第１実施形態の構成と同じである。また、図４のフローチャートには、波形生成手段４の動作の一部と、波形比較手段５の動作とのみが記載されているが、記載されていない部分の動作は、第１実施形態と同じである。
【００３３】
以下、図４のフローチャートに記載されている動作のみを説明する。波形生成手段４が、シミュレーション結果データ記憶部３からシミュレーション結果データ（ＤＵＴモデル２２からの出力波形、出力波形の期待値、ストローブタイミング波形）を受け取り、ストローブタイミング波形と期待値との論理積（ＡＮＤ）演算を行って、波形Ａを生成する（ステップＳ２１）。
【００３４】
次に、波形生成手段４は、ストローブタイミング波形をオフセット値だけシフトして、波形Ｌを生成し（ステップＳ２２）、波形Ａをオフセット値だけシフトして、波形Ｍを生成する（ステップＳ２３）。そして、ＤＵＴモデル２２からの出力波形と、波形Ｌとの論理積（ＡＮＤ）演算を行って、波形Ｎを生成する（ステップＳ２４）。そして、波形生成手段４は、波形Ｍおよび波形Ｎを出力する。
【００３５】
すると、波形比較手段５が、波形生成手段４から波形Ｍおよび波形Ｎを受け取り、この波形Ｍと波形Ｎの排他的論理和（ＤＩＦＦ）演算を行う（ステップＳ２５）。
【００３６】
波形比較手段５は、排他的論理和（ＤＩＦＦ）演算結果の波形上で変化点を探し（ステップＳ２６）、変化点の有無を調べ（ステップＳ２７）、変化点が無ければ（ＮＯ）パスと判定し（ステップＳ２８）、変化点が有れば（ＹＥＳ）フェイルと判定する（ステップＳ２９）。
【００３７】
図６は、波形Ｍのパルスのタイミングが、ＤＵＴモデル２２からの出力波形が立ち上がる瞬間と重なった場合を示すタイミングチャートである。ストローブタイミングは、ストローブタイミング波形のパルスの立ち上がりの瞬間だが、ストローブタイミング波形のパルス自体には有限の幅があるため、波形Ｍにも同じ有限の幅がある。この有限の幅の間に、ＤＵＴモデル２２からの出力波形が変化すると、この出力波形から生成される波形Ｎのパルス幅は、ストローブタイミング波形のパルス幅より狭くなる。すると、波形Ｍと波形Ｎの排他的論理和（ＤＩＦＦ）演算結果の波形には、ストローブタイミング波形のパルス幅より狭いパルスが出てきて、フェイルと判定される。この現象を利用して、ストローブタイミング波形のパルス幅を任意に変えられるようにすれば、テスタのウィンドストローブに相当する機能として使える。
【００３８】
図７は、任意のパルス幅のストローブタイミング波形を生成する方法を示すタイミングチャートである。任意のパルス幅のストローブタイミング波形を生成するには、例えば、ストローブタイミング波形をそのパルス幅以下の量だけシフトした波形と、元のストローブタイミング波形とを論理和（ＯＲ）演算で合成する操作を必要なだけ繰り返せばよい。図７は、ちょうどパルス幅だけシフトした波形と、元の波形とを合成して、２倍の幅のパルスを生成した例を示している。
【産業上の利用可能性】
【００３９】
本発明は、テスタシミュレーション装置および方法において、期待値判定タイミング（ストローブタイミング）の余裕度を算出することに利用できる。
【図面の簡単な説明】
【００４０】
【図１】本発明の第１実施形態に係るテスタシミュレーション装置の構成図である。
【図２】第１実施形態の動作を示すフローチャートである。
【図３】第１実施形態の動作を示すタイミングチャートである。
【図４】本発明の第２実施形態に係るテスタシミュレーション装置の動作を示すフローチャートである。
【図５】本発明の第２実施形態に係るテスタシミュレーション装置の動作を示すタイミングチャートである。
【図６】波形Ｍのパルスのタイミングが、ＤＵＴモデル２２からの出力波形が立ち上がる瞬間と重なった場合を示すタイミングチャートである。
【図７】任意のパルス幅のストローブタイミング波形を生成する方法を示すタイミングチャートである。
【図８】余裕度を算出する装置の一従来例の構成図である。
【図９】一従来例の装置の動作を示すフローチャートである。
【図１０】一従来例の装置の動作を示すタイミングチャートである。
【符号の説明】
【００４１】
１  テストプログラム記憶部
２  シミュレーション手段
２１  テスタモデル
２２  ＤＵＴモデル
３  シミュレーション結果データ記憶部
４  波形生成手段
５  波形比較手段
６  余裕度算出手段
７  余裕度記憶部
８  波形判定手段
【図１】
2008008718.tif 000003
【図２】
2008008718.tif 000004
【図３】
2008008718.tif 000005
【図４】
2008008718.tif 000006
【図５】
2008008718.tif 000007
【図６】
2008008718.tif 000008
【図７】
2008008718.tif 000009
【図８】
2008008718.tif 000010
【図９】
2008008718.tif 000011
【図１０】
2008008718.tif 000012