(57)【特許請求の範囲】
【請求項１】
回路検証するためのテスター用のテストパターンを作成するテストパターン作成装置において、
回路機能を検証する論理シミュレーション結果から抽出するパターンのタイミング定義を、オペレータに設定させるタイミング定義手段と、
上記タイミング定義のうち入力ディレイの開始時間を用いて上記抽出するパターンにおける変化点の抽出開始時間をずらす抽出開始変更手段と、
上記入力ディレイの開始時間を用いて上記タイミング定義を変更するタイミング定義変更手段と、
上記パターンにおける変化点を抽出ポイントとして該変化点からの１サイクル毎の該パターンの値を抽出して、該抽出したパターンの値と上記変更されたタイミング定義とを組み合わせることによってテスターでの入力波形を生成するパターン抽出手段とを有するようにしたテストパターン作成装置。
【請求項２】
請求項１記載のテストパターン作成装置において、
上記パターン抽出手段は、
上記パターンの値が変化する次の変化点を抽出ポイントとして抽出する変化点抽出手段と、
現在の変化点から次のサイクルが抽出ポイントを超えているか否かを判断する判断手段と、
上記判断手段によって上記次のサイクルが上記抽出ポイントを超えていないと判断された場合、該次のサイクルの値を現在の変化点の値に変更するサイクル値変更手段とを有するようにしたテストパターン作成装置。
【請求項３】
コンピュータが回路検証するためのテスター用のテストパターンを作成するテストパターン作成方法において、該コンピュータが、
回路機能を検証する論理シミュレーション結果から抽出するパターンのタイミング定義を、オペレータに設定させるタイミング定義手順と、
上記タイミング定義のうち入力ディレイの開始時間を用いて上記抽出するパターンにおける変化点の抽出開始時間をずらす抽出開始変更手順と、
上記入力ディレイの開始時間を用いて上記タイミング定義を変更するタイミング定義変更手順と、
上記パターンにおける変化点を抽出ポイントとして該変化点からの１サイクル毎の該パターンの値を抽出して、該抽出したパターンの値と上記変更されたタイミング定義とを組み合わせることによってテスターでの入力波形を生成するパターン抽出手順とを実行するようにしたテストパターン作成方法。
【請求項４】
請求項３記載のテストパターン作成方法において、
上記パターン抽出手順は、
上記パターンの値が変化する次の変化点を抽出ポイントとして抽出する変化点抽出手順と、
現在の変化点から次のサイクルが抽出ポイントを超えているか否かを判断する判断手順と、
上記判断手段によって上記次のサイクルが上記抽出ポイントを超えていないと判断された場合、該次のサイクルの値を現在の変化点の値に変更するサイクル値変更手順とを有するようにしたテストパターン作成方法。
【請求項５】
回路検証するためのテスター用のテストパターンを作成するテストパターン作成装置での処理をコンピュータに行なわせるためのプログラムにおいて、該コンピュータに、
回路機能を検証する論理シミュレーション結果から抽出するパターンのタイミング定義を、オペレータに設定させるタイミング定義手順と、
上記タイミング定義のうち入力ディレイの開始時間を用いて上記抽出するパターンにおける変化点の抽出開始時間をずらす抽出開始変更手順と、
上記入力ディレイの開始時間を用いて上記タイミング定義を変更するタイミング定義変更手順と、
上記パターンにおける変化点を抽出ポイントとして該変化点からの１サイクル毎の該パターンの値を抽出して、該抽出したパターンの値と上記変更されたタイミング定義とを組み合わせることによってテスターでの入力波形を生成するパターン抽出手順とを実行させるようにしたプログラム。
【請求項６】
請求項５記載のテストパターン作成装置での処理をコンピュータに行なわせるためのプログラムにおいて、
上記パターン抽出手順は、
上記パターンの値が変化する次の変化点を抽出ポイントとして抽出する変化点抽出手順と、
現在の変化点から次のサイクルが抽出ポイントを超えているか否かを判断する判断手順と、
上記判断手段によって上記次のサイクルが上記抽出ポイントを超えていないと判断された場合、該次のサイクルの値を現在の変化点の値に変更するサイクル値変更手順とを有するようにしたプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、双方向切り替えディレイ時の設定ディレイ分不定となる状態を回避することができるテストパターン作成装置を提供するものである。
【０００２】
【従来の技術】
近年のＬＳＩ設計はハードウエア記述言語（ＨＤＬ）が利用されており、抽象度の高いレジスタ・トランスファ・レベル（ＲＴＬ）から抽象度の低いゲートレベルでの回路の記述が行われている。このＨＤＬにはＶＨＤＬ、Ｖｅｒｉｌｏｇ−ＨＤＬ等が知られている。これらＨＤＬで記述された回路を検証するテストパターンも同様にさらにＨＤＬで記述し、論理シミュレーションを行なうことで記述された回路が正しく動作するかを確認している。
【０００３】
設計者はＨＤＬによる機能確認後、ＬＳＩテスターで利用する検査用のテストパターンを作成し、半導体メーカに提出しなくてはいけないが、そのテストパターンは、手作業で作成していたが（特開平６−１８７３９２など）、近年は機能確認で行った論理シミュレーションの結果から抽出を行ない作成することができるようになった。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記従来のＬＳＩテスターにおいては、波形生成に制限があるため、単純に抽出すると論理シミュレーションで使用したテストパターンと同じ入力パターンを得られないという問題があり、抽出したパターンでは動作しないケースが発生するため、回路が動作するように、もとの機能確認のテストパターンを修正したり、タイミングを変更したりする作業が必要であった。
【０００５】
図１（Ａ）に示すように、論理シミュレーション用パターンの波形では、双方向信号の切り換えディレイを設けることができるが、そのディレイでテストパターンを抽出し、テスターパターンとした場合、テスターパターンからシミュレーションの入力パターンを生成すると、図１（Ｂ）に示されるような波形となり、機能確認で行なった波形と違ってくる。つまり、テスタールールを適用した場合、テスターの双方向信号の制限によって、出力モードはサイクルの初めからＨｉｚとなり、出力から入力に切り替わり時は設定ディレイ分不定となるためである。
【０００６】
そこで、本発明の課題は、双方向切り替えディレイ時の設定ディレイ分不定となる状態を回避することができるテストパターン作成装置を提供することである。
【０００７】
【課題を解決するための手段】
上記課題を解決するため、本発明は、請求項１に記載されるように、回路検証するためのテスター用のテストパターンを作成するテストパターン作成装置において、
回路機能を検証する論理シミュレーション結果から抽出するパターンのタイミング定義を、オペレータに設定させるタイミング定義手段と、上記タイミング定義のうち入力ディレイの開始時間を用いて上記抽出するパターンにおける変化点の抽出開始時間をずらす抽出開始変更手段と、上記入力ディレイの開始時間を用いて上記タイミング定義を変更するタイミング定義変更手段と、上記パターンにおける変化点を抽出ポイントとして該変化点からの１サイクル毎の該パターンの値を抽出して、該抽出したパターンの値と上記変更されたタイミング定義とを組み合わせることによってテスターでの入力波形を生成するパターン抽出手段とを有するように構成される。
【０００８】
このようなテストパターン作成装置では、一度で論理シミュレーションによる機能確認時と同一パターンをテスターパターンとして抽出できるため、従来テスターの制限により、機能確認の入力タイミングを変更、確認を繰り返えす作業が軽減される。
【０００９】
タイミングの定義を変更するという観点において、本発明は、請求項２に記載されるように、請求項１記載のテストパターン作成装置において、上記パターン抽出手段は、上記パターンの値が変化する次の変化点を抽出ポイントとして抽出する変化点抽出手段と、現在の変化点から次のサイクルが抽出ポイントを超えているか否かを判断する判断手段と、上記判断手段によって上記次のサイクルが上記抽出ポイントを超えていないと判断された場合、該次のサイクルの値を現在の変化点の値に変更するサイクル値変更手段とを有するように構成される。
【００１０】
上記課題を解決するための手段として、本発明は、上記テストパターン作成装置を実現するテストパターン作成方法、及び、上記テストパターン作成装置による処理をコンピュータに行なわせるためのプログラムとすることもできる。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【００１２】
本発明の一実施例にかかるテストパターン作成装置１００は、図２に示されるように構成される。図２において、処理装置１１は、本発明の処理を実施するものであり、この処理装置に対して、オペレータからの操作情報を入力するためのキーボード１２、マウス１３，テストパターンを記憶する記憶装置１５が接続される。また表示装置１４はＣＲＴ（Cathode-Ray Tube）装置であり、処理装置１１からオペレータにたいする各種メッセージ及びテストパターンを表示するものである。
【００１３】
図３は、処理装置による処理の概略を示すブロック図である。
【００１４】
図３において、処理装置１１は、タイミング定義手段２１と、抽出開始変更手段２２と、タイミング定義変更手段２３と、パターン抽出手段２４とを有する。タイミング定義手段２１は、オペレータが機能を確認した結果に基づいて、抽出するテスター用パターンのタイミング（サイクル幅、波形の種類など）を設定する手段である。オペレータが機能確認のシミュレーションにて確認した双方向信号のずれ情報を設定すると、抽出開始時間変更手段２２は、そのずれを考慮したサイクルベースのシミュレーション結果へ置き換える手段である。タイミング定義変更手段２３は、タイミング定義手段２１によって設定されたタイミング定義に対し、抽出開始変更手段２２によって定義された抽出時間の開始時間のディレイ情報を反映させ、自動的にテスター用のタイミング定義を決定する手段である。パターン抽出手段２４は、抽出開始変更手段２２及びタイミング定義変更手段２３によって処理された情報に基づいて、サイクルごとの値を抽出する手段である。この抽出された値と、タイミング定義変更手段２３のタイミング定義とをあわせて、テスター用のテストパターンとなる。
【００１５】
次に、テストパターンが抽出されるまでの処理フローを図４、図５及び図６で説明する。
【００１６】
図４は、シミュレーション結果に基づくサイクル毎の変化点の取得処理を説明するフローチャート図である。図４において、変化時間を取得する（ステップＳ３１）。取得した変化時間から開始時間を差し引いて（取得時間―開始時間）変化時間を変更する（ステップＳ３２）。変化時間がマイナスか否かを判断する（ステップＳ３３）。変化時間がマイナスである場合、変化時間を時間０に変更して（ステップＳ３４）、ステップＳ３１０へ進む。
【００１７】
一方、変化時間がマイナスでない場合、変化時間をサイクル幅で割る（変化時間÷サイクル幅）ことによってサイクルを取得する（ステップＳ３５）。取得したサイクルがカレントサイクルを超えているか否かを判断する（ステップＳ３６）。カレントサイクルを超えている場合、カレントサイクルを更新し（ステップＳ３７）、ステップＳ３５へ戻る。
【００１８】
一方、カレントサイクルを超えていない場合、カレントサイクルに対する変化時間を取得する（ステップＳ３８）。つまり、変化時間から、カレントサイクルから１を引いた値にサイクル幅を掛けた値を差し引いた値（変化時間―サイクル幅×（カレントサイクル−１））を変化時間として取得する。カレントサイクルと変化時間を保持する（ステップＳ３９）。
【００１９】
まだ変化点があるか否かを判断する（ステップＳ３１０）。まだ変化点が有る場合、ステップＳ３１へ戻り、変化時間を取得する。一方、変化点がない場合、処理を終了する。
【００２０】
図５は、サイクル毎の値抽出処理を説明するフローチャート図である。図５において、抽出サイクルを設定する（ステップＳ４１）。変化点があるか否かを判断する（ステップＳ４２）。変化点がない場合、前サイクルの値をセットして（ステップＳ４３）、ステップＳ４８へ進む。一方、変化点がある場合、変化点を取得して（ステップＳ４４）、取得した変化点を抽出ポイントとし、サイクルがこの抽出ポイントを超えているか否かを判断する（ステップＳ４５）。
【００２１】
抽出ポイントを超えていない場合、サイクルの値を変化点の値に変更する（ステップＳ４６）。次の変化点があるか否かを判断する（ステップＳ４７）。次の変化点がある場合、ステップＳ４４へ戻り、次の変化点を取得する。
【００２２】
ステップＳ４５の判断処理において、サイクルが抽出ポイントを超えていると判断された場合、又は、ステップＳ４７の判断処理において、次の変化点がないと判断された場合、サイクルの値を確定して（ステップＳ４８）、次のサイクルへ進む。最終サイクルを超えているか否かを判断し（ステップＳ４１０）、最終サイクルを超えていない場合、ステップＳ４２へ戻り、上記同様の処理を繰り返す。一方、最終サイクルを越えている場合、処理を終了する。
【００２３】
図６は、新しいタイミングを導き出す方法を説明するフローチャート図である。ＤＴ形式の場合のあたらいいしタイミングの導き方を示す図６（Ａ）において、ＤＴのディレイにサイクル幅（Ｃ）から開始時間（Ｘ）を引いたものを足す（Ｚ＝ＤＴ+（Ｃ−Ｘ））（ステップＳ５１）。取得した値がサイクル幅を超えるか否かを判断する（ステップＳ５２）。サイクル幅を超える場合、ＤＴから開始時間（Ｘ）を引いた値を新しいＤＴとする（ＮｅｗＤＴ＝ＤＴ−Ｘ）（ステップＳ５３）。一方、サイクル幅を超えない場合、ＤＴのディレイにサイクル幅（Ｃ）から開始時間（Ｘ）を引いたものを足す（ＮｅｗＤＴ＝ＤＴ+Ｃ−Ｘ）（ステップＳ５４）。
【００２４】
ＰＰまたはＮＰ形式の場合の新しいタイミングの導き方を示す図６（Ｂ）において、ＤｅｌａｙにＷｉｄｔｈを加えた値にサイクル幅（Ｃ）から開始時間（Ｘ）を引いたものを足す（Ｚ＝（Ｄｅｌａｙ+Ｗｉｄｔｈ）+（Ｃ−Ｘ））（ステップＳ５５）。取得した値がサイクル値を超えているか否かを判断する（ステップＳ５６）。サイクル幅を超えている場合、波形タイプを反転させてＤｅｌａｙにＷｉｄｔｈを加えた値から開始時間（Ｘ）を引いた値を新しいＤｅｌａｙとする（ＮｅｗＤｅｌａｙ＝ｄｅｌａｙ+Ｗｉｄｔｈ−Ｘ）（ステップＳ５７）。一方、サイクル値を超えない場合、Ｄｅｌａｙに開始時間（Ｘ）を加えた値を新しいＤｅｌａｙとする（ＮｅｗＤｅｌａｙ＝ｄｅｌａｙ+Ｘ）（ステップＳ５８）。
【００２５】
次に、図７に示す機能シミュレーション結果の例に基づいて、テストパターンが作成される仕組みを説明する。
【００２６】
機能確認のシミュレーション結果が図７に示すような場合、オペレータは、パターン抽出後のタイミングとして、図８（Ａ）に示すようなタイミングを定義する。ただし，そのまま抽出し、テスターパターンとしてしまうと、テスタールールの制限より、ＡＳＩＣに入力される波形は、図８（Ｂ）に示すような波形となり、機能確認時の入力波形と違ってしまう。
【００２７】
次に、図８（Ａ）に示す例では、双方向信号において、ｄ＜７：０＞の入力ディレイを開始時間３０ｎｓと設定し、シミュレーション結果から、設定したディレイを引いたサイクルとその中の変化点情報が、ステップＳ３５〜Ｓ３１０の処理にて導き出される。
【００２８】
また、オペレータが定義したタイミング定義に対し、ステップＳ５１〜Ｓ５８の処理によって変換を行い、新しいタイミングが定義される。この例では、図８（Ａ）に示されるオペレータによって設定されたタイミング定義が、図９（Ａ）のようなタイミング定義となる。
【００２９】
そして、図５に示すフローチャートに従って、変化点を抽出ポイントとして１サイクルごとの値を抽出する。つまり、図９（Ａ）タイミング定義から導いた時間を超えているかの判断（ステップＳ４５）に基づき決定し（ステップＳ４８）、最終のサイクルまで抽出を行なう。すべての信号に対しても同様の処理を行い、各サイクルの値を決定し処理を終了する。抽出したパターン（サイクルごとの０，１情報）と、図９（Ａ）タイミング定義によってタイミングを組み合わせることで、図９（Ｂ）に示されるような入力波形を生成する。これにより、図７に示される波形と同パターンととなり、双方向切り替えディレイの問題を回避できる。
【００３０】
【発明の効果】
以上、説明してきたように、一度で論理シミュレーションによる機能確認時と同一パターンをテスターパターンとして抽出できるため、従来テスターの制限により、機能確認の入力タイミングを変更、確認を繰り返えす作業が軽減される。
【００３１】
【図面の簡単な説明】
【図１】テストパターンの例を示す図である。
【図２】テストパターン作成装置の構成例を示す図である。
【図３】処理装置による機能構成の概略を示すブロック図である。
【図４】シミュレーション結果に基づくサイクル毎の変化点の取得処理を説明するフローチャート図である。
【図５】サイクル毎の値抽出処理を説明するフローチャート図である。
【図６】新しいタイミングを導き出す方法を説明するフローチャート図である。
【図７】機能シミュレーション結果の例を示す図である。
【図８】シミュレーション結果に基づいたタイミング定義及び入力波形の例を示す図である。
【図９】自動修正されたタイミング定義及び作成された入力パターンの例を示す図である。
【符号の説明】
１１          処理装置
１２          キーボード
１３          マウス
１４          表示装置
１５          記憶装置
２１          タイミング定義手段
２２          抽出開始変更手段
２３          タイミング定義変更手段
２４          パターン抽出手段
【図１】
0004394311.tif 000002
【図２】
0004394311.tif 000003
【図３】
0004394311.tif 000004
【図４】
0004394311.tif 000005
【図５】
0004394311.tif 000006
【図６】
0004394311.tif 000007
【図７】
0004394311.tif 000008
【図８】
0004394311.tif 000009
【図９】
0004394311.tif 000010