(57)【要約】  動作確認試験の回数を抑制しつつ、波形ファイルに出力する情報の情報量を抑制することを課題とする。この課題を解決するため、回路設計支援装置は、所定の回路網を示す回路情報に基づいて、回路網内の各回路の動作をシミュレートし、シミュレーション波形情報を生成するシミュレート部（１４ｃ）を有する。また、回路設計支援装置は、シミュレート部（１４ｃ）によりシミュレートされた回路網内の各回路の端子の信号の状態を示す情報であって、回路の順序回路の段数に応じた時間分のシミュレーション波形情報を記憶部（１３）に記憶するように制御する記憶制御部（１４ｄ）を有する。また、回路設計支援装置は、所定の端子でエラーを検出した場合には、記憶部（１３）に記憶された時間分のシミュレーション波形情報を、エラー解析用の波形ファイル（１３ｅ）に出力する出力部（１４ｅ）を有する。
2012105013.tif 000002
【特許請求の範囲】
【請求項１】
所定の回路網を示す回路情報に基づいて、前記回路網内の各回路の動作をシミュレートし、シミュレーション波形情報を生成するシミュレート部と、
前記シミュレート部によりシミュレートされた前記回路網内の各回路の端子の信号の状態を示す情報であって、前記回路の順序回路の段数に応じた時間分のシミュレーション波形情報を記憶部に記憶するように制御する制御部と、
所定の端子でエラーを検出した場合には、前記記憶部に記憶された前記時間分の前記シミュレーション波形情報を、エラー解析用の波形ファイルに出力する出力部と、
を有することを特徴とする回路設計支援装置。
【請求項２】
前記制御部は、前記回路の外部入力端子に所定の情報が入力されてから、前記所定の情報が前記回路内で加工された情報が前記回路の外部出力端子から出力されるまでの前記順序回路の段数に応じた時間分の前記シミュレーション波形情報を記憶部に記憶するように制御する
ことを特徴とする請求項１記載の回路設計支援装置。
【請求項３】
前記制御部は、前記端子ごとに、該端子に対応する外部入力端子から、前記回路の外部出力端子までに存在する順序回路の最大経路における順序回路の段数に応じた時間分の前記シミュレーション波形情報を記憶部に記憶するように制御する
ことを特徴とする請求項１または２に記載の回路設計支援装置。
【請求項４】
前記出力部は、所定の端子でエラーを検出した場合には、該所定の端子から、該所定の端子に対応する外部入力端子までの間に存在する各端子の前記時間分の前記シミュレーション波形情報を、前記波形ファイルに出力する
ことを特徴とする請求項１または２に記載の回路設計支援装置。
【請求項５】
コンピュータに、
所定の回路網を示す回路情報に基づいて、前記回路網内の各回路の動作をシミュレートし、シミュレーション波形情報を生成し、
シミュレートされた前記回路網内の各回路の端子の信号の状態を示す情報であって、前記回路の順序回路の段数に応じた時間分のシミュレーション波形情報を記憶部に記憶するように制御し、
所定の端子でエラーを検出した場合には、前記記憶部に記憶された前記時間分の前記シミュレーション情報を、エラー解析用の波形ファイルに出力する
処理を実行させることを特徴とする回路設計支援プログラム。
【請求項６】
コンピュータが実行する回路設計支援方法であって、
所定の回路網を示す回路情報に基づいて、前記回路網内の各回路の動作をシミュレートし、シミュレーション波形情報を生成し、
シミュレートされた前記回路網内の各回路の端子の信号の状態を示す情報であって、前記回路の順序回路の段数に応じた時間分のシミュレーション波形情報を記憶部に記憶するように制御し、
所定の端子でエラーを検出した場合には、前記記憶部に記憶された前記時間分の前記シミュレーション情報を、エラー解析用の波形ファイルに出力する
ことを特徴とする回路設計支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路設計支援装置、回路設計支援プログラムおよび回路設計支援方法に関する。
【背景技術】
【０００２】
近年、Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ（ＬＳＩ）などの集積回路の回路規模は、大きくなっている。これに伴い、集積回路の動作をシミュレーションにより確認する動作確認試験では、試験１回に要する時間は、長くなっている。特に、ゲートレベルで集積回路の動作をシミュレーションする必要がある場合には、動作確認試験に多くの時間を要する。それゆえ、近年、集積回路を設計する設計フロー工程全体に要する時間についても、長くなっている。【０００３】
ここで、図１６を用いて、従来の設計フロー工程の一例について説明する。図１６は、従来の設計フロー工程の一例を説明するためのフローチャートである。図１６に例示する設計フロー工程では、まず、設計者は、集積回路の仕様を設計する（ステップＳ１）。そして、設計者は、所定のツールを用いて、仕様設計された集積回路の論理設計を行い（ステップＳ２）、論理合成を行う（ステップＳ３）。例えば、論理設計においては、設計者は、ＲＴＬ（Register  Transfer  Level）等の記述言語を用いて集積回路の仕様に基づいて集積回路の論理を記述する。論理合成においては、設計者は、論理合成を行うためのツールを用いて、集積回路に用いられる素子を選択し、ＲＴＬ等で記述された論理を合成することにより、集積回路をゲート（素子）レベルで記述したネットリストを生成する。尚、ＲＴＬ等の記述言語を用いずに、直接ゲートレベルで回路設計を行った回路がある場合、ゲートレベルで設計された回路については論理合成（Ｓ３）の処理は省略できる。また、例えばＲＴＬ等の高位レベルの記述言語を用いて論理設計を行った場合には、ＲＴＬ等を用いた論理検証が行われるが、図１６のフローにおいては記載を省略する。【０００４】
次に、設計者などは、動作検証（動作試験）を行うコンピュータに、所定の入力値と入力値に対応する出力期待値とを含むテストパターンを入力して、論理合成された集積回路に対する論理設計時の動作検証を行わせる（ステップＳ４）。そして、設計者などは、コンピュータに、論理合成等により生成したネットリストに基づいて配置および配線などの集積回路のレイアウト設計を行わせる（ステップＳ５）。続いて、設計者などは、コンピュータに、レイアウト設計後の集積回路の各素子や配線の遅延情報を抽出させる（ステップＳ６）。そして、設計者などは、コンピュータに、タイミング違反が発生するか否かを判別させるために、次のような処理を実行させる。すなわち、設計者などは、コンピュータに、遅延情報及びレイアウト後の集積回路の情報であるレイアウト設計データなどを入力し、レイアウト設計後の集積回路に対する静的タイミング検証を実行させる（ステップＳ７）。通常、静的タイミング検証（Ｓ７）でタイミングエラーがある場合には、タイミングエラーが無くなるまで、レイアウト修正、遅延情報抽出、静的タイミング検証の各処理を繰り返すが、図１６のフローでは省略する。【０００５】
次に、設計者などは、ゲートレベルでの動的な動作確認をするため、次のような処理をシミュレーション装置に実行させる。すなわち、設計者などは、レイアウト設計データ、ステップＳ４で用いたテストパターン、遅延情報などをシミュレーション装置に入力し、レイアウト設計データが示す集積回路の動作確認試験をシミュレーション装置に実行させる（ステップＳ８）。ここでいう動作確認試験は、集積回路の機能を検証するための機能試験や、後述の出荷試験等において回路素子の不良が無いか否かを検証するためのスキャン試験等をいう。この動作確認試験では、集積回路の動作に異常がある場合には、外部出力端子から出力される値と、出力期待値とが一致せず、エラーとして検出される。それゆえ、動作確認試験によって、エラーを検出したか否かを判定することにより、レイアウト設計後の集積回路が仕様に沿った動作をするか否かの確認が可能となる。【０００６】
そして、動作確認試験では、コンピュータは、エラーが検出されたか否かを判定する（ステップＳ９）。コンピュータによりエラーが検出されなかった場合（ステップＳ９肯定）、集積回路を製造する工場などで、集積回路を製造する各種装置によって、レイアウト設計データに基づいた集積回路が製造される（ステップＳ１０）。そして、試験者などは、製造された集積回路に対して、所定のテストパターンを用いて出荷試験を行う（ステップＳ１１）。そして、出荷試験でエラーが検出されない場合には、製造した集積回路が出荷される（ステップＳ１２）。【０００７】
一方、動作確認試験によって、エラーが検出された場合（ステップＳ９否定）には、設計者などは、エラーの原因を特定するための解析を行う（ステップＳ１３）。このような解析の一例としては、設計者などは、集積回路の信号伝播の状態が出力された波形ファイルの内容を表示する波形表示ツールを用いて、集積回路の信号伝播の状態を確認し、集積回路の動作を確認し、エラーの原因を特定する方法が挙げられる。エラーの原因の一例としては、レイアウト設計データに問題がある場合、例えばタイミングエラーが残っている場合等が挙げられる。また、エラーの原因の他の一例としては、テストパターンに問題がある場合が挙げられる。【０００８】
そこで、レイアウト設計データに問題がある場合には、設計者などは、レイアウトを修正する（ステップＳ１４）。そして、ステップＳ６に戻り、設計者などは、コンピュータに、修正後のレイアウト設計後の集積回路の各素子や配線の遅延情報を抽出させる。【０００９】
一方、テストパターンに問題がある場合には、設計者などは、テストパターンを修正する（ステップＳ１５）。そして、ステップＳ８に戻り、設計者などは、修正後のテストパターン、レイアウト設計データ、遅延情報などをシミュレーション装置に入力して、レイアウト設計データが示す集積回路の動作確認試験をシミュレーション装置に実行させる。【００１０】
ここで、波形ファイルへは、一般的には、レイアウト設計データが示す集積回路の外部出力端子から出力される信号の情報と、外部入力端子へ入力する情報が出力される。【００１１】
また、レイアウトを修正する（ステップＳ１４）か、テストパターンを修正して（ステップＳ１５）、再び動作確認をシミュレータに実行させる（ステップＳ８）場合には、外部出力端子から出力される信号の情報が再び波形ファイルへ出力される。【００１２】
上記のエラー解析の手順の一例について説明する。エラー解析時には、波形ファイルへ出力された信号情報を基に集積回路の解析を行う。設計者は、波形ファイルへ情報出力する端子の追加と、動作確認試験とを繰り返し行い、エラーの原因を特定する。【００１３】
具体例を挙げて説明する。図１７は、エラー解析手順の一例を説明するための図である。図１７の例では、レイアウト設計データが示す回路の一部に、セルＡ〜Ｈ、外部出力端子Ｐｋが含まれている。図１７の例において、動作確認試験で、外部出力端子Ｐｋの出力値Ｘと、予め設定された外部出力端子Ｐｋの期待値Ｘ´とが異なる場合を想定する。このような場合では、動作確認試験では、出力値Ｘと期待値Ｘ´とが異なるため、エラーが検出される。そこで、設計者は、波形ファイルの内容を確認する。例えば、外部出力端子Ｐｋの出力値が“Ｘ”である原因を特定するために、次のような作業を行う。すなわち、設計者は、まず、外部出力端子Ｐｋと出力端子ＥＢが接続されたセルＡの入力端子Ａから遡ったセルＢの入力端子Ｂ１〜Ｂ３の各端子を、波形ファイルへ情報出力する端子として追加する。そして、動作確認試験を再び行う。これにより、波形ファイルへは、セルＢの入力端子Ｂ１〜Ｂ３の信号伝播の状態が新たに出力される。【００１４】
そして、設計者は、波形ファイルへ出力されたセルＢの入力端子Ｂ１〜Ｂ３の信号伝播の状態を確認し、セルＢの入力端子Ｂ１〜Ｂ３の何れの端子の信号が、外部出力端子Ｐｋの出力値が“Ｘ”となる原因となっているのかを特定する。例えば、正常動作時のセルＢの入力端子Ｂ１〜Ｂ３の期待値が予め定められている場合には、その期待値と、セルＢの入力端子Ｂ１〜Ｂ３の各端子の信号とを比較することで、原因となる入力端子を特定することができる。そして、設計者は、特定した入力端子から遡って、この入力端子に出力端子が接続されたセルに対して同様の処理を行い、外部出力端子Ｐｋの出力値が“Ｘ”となる原因であるセルまたは外部入力端子を特定する。【００１５】
例えば、図１７の例で、セルＢの入力端子Ｂ１の信号が、外部出力端子Ｐｋの出力値が“Ｘ”となる原因である場合を想定する。このような場合には、入力端子Ｂ１に、出力端子Ｃ５が接続されたセルＣの入力端子Ｃ１〜Ｃ４の何れの端子の信号が、外部出力端子Ｐｋの出力値が“Ｘ”となる原因となっているのかを特定する。例えば、設計者は、まず、セルＣの入力端子Ｃ１〜Ｃ４の各端子を、波形ファイルへ情報出力する端子として追加する。そして、動作確認試験を再び行う。これにより、波形ファイルへは、セルＣの入力端子Ｃ１〜Ｃ４の信号伝播の状態が新たに出力される。そして、設計者は、正常動作時のセルＣの入力端子Ｃ１〜Ｃ４の期待値と、セルＣの入力端子Ｃ１〜Ｃ４の各端子の信号とを比較することで、原因となる入力端子を特定する。【００１６】
図１７の例で、セルＣの入力端子Ｃ２の信号が、外部出力端子Ｐｋの出力値が“Ｘ”となる原因である場合を想定する。このような場合には、入力端子Ｃ２に、出力端子Ｅ３が接続されたセルＥの入力端子Ｅ１、Ｅ２の何れの端子の信号が、外部出力端子Ｐｋの出力値が“Ｘ”となる原因となっているのかを特定する。例えば、設計者は、まず、セルＥの入力端子Ｅ１、Ｅ２の各端子を、波形ファイルへ情報出力する端子として追加する。そして、動作確認試験を再び行う。これにより、波形ファイルへは、セルＥの入力端子Ｅ１、Ｅ２の信号伝播の状態が新たに出力される。そして、設計者は、正常動作時のセルＥの入力端子Ｅ１、Ｅ２の期待値と、セルＥの入力端子Ｅ１、Ｅ２の各端子の信号とを比較することで、原因となる入力端子を特定する。【００１７】
設計者は、このような処理を繰り返し行い、外部出力端子Ｐｋの出力値が“Ｘ”となる原因であるセルまたは外部入力端子を特定する。そして、設計者は、外部出力端子Ｐｋの出力値が“Ｘ”となる前後の信号状態であって、特定したセルまたは外部入力端子から入力される信号状態を解析し、外部出力端子Ｐｋの出力値が“Ｘ”となった原因を解析する。そして、設計者は、解析結果から、レイアウト設計データに問題がある場合には、レイアウト設計データの修正を行う。また、設計者は、解析結果から、テストパターンに問題がある場合には、テストパターンの修正を行い、再び動作確認試験を行う。【００１８】
このように、波形ファイルへは、最初は、外部出力端子から出力される信号の情報が出力され、その後、追加された端子から入力される信号の情報が出力される。しかしながら、このような波形ファイルへの情報の出力では、上記のエラー解析では、動作確認試験の回数が多くなる。これは、最初から全てのセルの端子、又はエラーの原因となるセルの端子から入力される信号の情報を波形ファイルへ出力するのではなく、動作確認試験の結果からエラーの原因と考えられるセルの端子を追加して、波形ファイルへ信号の情報を出力するからである。【００１９】
そこで、動作確認試験の回数を少なくするために、動作確認試験時に、波形ファイルへ、動作確認試験期間の間、回路内部の全ての端子の信号の情報を出力する方法が存在する。以下、この方法を第１の方法と称する。第１の方法では、動作確認試験期間の間における、全ての端子の信号の情報が波形ファイルから確認できるので、動作確認試験が１回で済む。図１８は、第１の方法により波形ファイルに出力される情報量を示す図である。図１８の横軸は、動作確認試験開始から動作確認試験終了までの時間を示し、縦軸は、波形ファイルへ信号の情報を出力する端子の個数である。図１８に示すように、第１の方法では、波形ファイルに出力される情報量９０は、全端子の数と、動作確認試験期間との積に比例する。【００２０】
また、動作確認試験の回数を少なくするために、動作確認試験時に、波形ファイルへ、動作確認試験期間の間、回路内部の全ての端子のうち、設計者が予め定めた範囲の回路の端子の信号の情報を出力する方法が存在する。以下、この方法を第２の方法と称する。第２の方法では、設計者は、予めエラーが発生する回路の範囲を予測し、予測した回路の範囲内部の端子の信号の情報を波形ファイルへ出力するように設定する。これにより、第２の方法では、設計者が予測した範囲内の回路でエラーが発生した場合には、動作確認試験が１回で済む。図１９は、第２の方法により波形ファイルに出力される情報量を示す図である。図１９の横軸は、動作確認試験開始から動作確認試験終了までの時間を示し、縦軸は、波形ファイルへ信号の情報を出力する端子の個数である。図１９に示すように、第２の方法では、波形ファイルに出力される情報量９１は、設計者が予め定めた範囲の回路の端子の数と、動作確認試験期間との積に比例する。そのため、この範囲を回路全範囲より狭い範囲とした場合には、図１９に示すように、第１の方法よりも、波形ファイルに出力される情報量が少なくなる。【００２１】
また、動作確認試験の回数を少なくするために、動作確認試験時に、波形ファイルへ、所定時間間隔で、回路内部の全ての端子の信号の情報を出力する方法が存在する。以下、この方法を第３の方法と称する。第３の方法では、設計者は、予め波形ファイルへ信号の情報を出力する時間間隔を定め、定めた時間間隔で、回路内部の全ての端子の信号の情報を波形ファイルへ出力するように設定する。図２０は、第３の方法により、波形ファイルに出力される情報量を示す図である。図２０の横軸は、動作確認試験開始から動作確認試験終了までの時間を示し、縦軸は、波形ファイルへ信号の情報を出力する端子の個数である。図２０に示すように、第３の方法では、所定時間間隔が短くなるほど、波形ファイルへ信号の情報を出力する回数が増えるため、波形ファイルに出力される情報量９２は、所定時間間隔の逆数と、全端子の数との積に比例する。そのため、第３の方法では、第１の方法よりも波形ファイルの情報量が少なくなるように時間間隔を定め、波形ファイルへ信号の情報が出力されるタイミングでエラーが検出された場合には、次のような効果を得ることができる。すなわち、第３の方法では、第１の方法よりも波形ファイルに出力される情報量が少なくエラーを検出することができる。【００２２】
また、動作確認試験の回数を少なくするために、各素子が出力する情報の内容に、各素子の出力の原因となった入力情報を含め、外部出力端子から出力される情報を波形ファイルに出力する技術が知られている。具体例を挙げると、この技術では、各素子ごとに、出力イベントの情報と、その出力イベントの原因となった入力イベントの情報とを出力する。そして、最終出力となる外部出力端子から出力される情報を波形ファイルに出力して、試験者が波形ファイルの内容を確認する。
【先行技術文献】
【特許文献】
【００２３】
【特許文献１】特開２００１−５８４１号公報
【発明の概要】
【発明が解決しようとする課題】
【００２４】
しかしながら、上記の方法や技術では、動作確認試験の回数を抑制しつつ、波形ファイルに出力する情報の情報量を抑制することができないという問題がある。【００２５】
上記の問題について説明する。上記の第１の方法では、波形ファイルへ、動作確認試験期間の間、回路内部の全ての端子の信号の情報を出力するので、波形ファイルに出力する情報の情報量が他の第２の方法および第３の方法よりも多い。【００２６】
また、上記の第２の方法では、第１の方法に比べて、波形ファイルに出力する情報の情報量が少ないものの、設計者が予め定めた範囲の回路以外の他の回路でエラーが発生した場合には、回路の範囲を変更して、再び動作確認試験を行う必要がある。図２１は、第２の方法において、設計者が予め定めた範囲の回路以外の他の回路でエラーが発生した場合を説明するための図である。図２１の例は、レイアウト設計データが示す集積回路９６内の部分回路９３および部分回路９４のうち、部分回路９３の範囲内の端子の信号の情報を波形ファイルへ出力するように設定したが、部分回路９４内の素子９５でエラーが発生した場合を示す。このような場合、波形ファイルに出力する回路の範囲を再設定して、再び動作確認試験を行わなければならない。このとき、エラーが発生した素子９５を含むように、回路の範囲を再設定する必要があるが、どの箇所でエラーが発生したかを設計者は特定できないため、原因箇所の特定が可能となるまで動作確認試験を繰り返し行う必要がある。【００２７】
また、上記の第３の方法では、第１の方法に比べて、波形ファイルに出力する情報の情報量が少ないものの、設計者が予め定めた時間間隔での波形ファイルへの情報の出力以外のタイミングでエラーが発生した場合には、エラーが発生した箇所を特定できない。そのため、このような場合、エラーが発生した原因箇所の特定が可能となるまで、時間間隔を変更して、動作確認試験を繰り返し行う必要がある。【００２８】
また、上記の技術では、各素子ごとに、出力イベントの情報と、その出力イベントの原因となった入力イベントの情報とを出力するため、情報量が膨大となり、解析に時間を要し、実用的ではない。【００２９】
開示の技術は、上記に鑑みてなされたものであって、動作確認試験の回数を抑制しつつ、波形ファイルに出力する情報の情報量を抑制することができる回路設計支援装置、回路設計支援プログラムおよび回路設計支援方法を提供することを目的とする。
【課題を解決するための手段】
【００３０】
本願の開示する回路設計支援装置は、一つの態様において、シミュレート部と、制御部と、出力部とを有する。シミュレート部は、所定の回路網を示す回路情報に基づいて、回路網内の各回路の動作をシミュレートし、シミュレーション波形情報を生成する。制御部は、シミュレート部によりシミュレートされた回路網内の各回路の端子の信号の状態を示す情報であって、回路の順序回路の段数に応じた時間分のシミュレーション波形情報を記憶部に記憶するように制御する。出力部は、所定の端子でエラーを検出した場合には、記憶部に記憶された時間分のシミュレーション波形情報を、エラー解析用の波形ファイルに出力する。
【発明の効果】
【００３１】
本願の開示する回路設計支援装置の一つの態様によれば、動作確認試験の回数を抑制しつつ、波形ファイルに出力する情報の情報量を抑制することができる。
【図面の簡単な説明】
【００３２】
【図１】図１は、実施例１に係る回路設計支援装置の構成を示す図である。
【図２】図２は、論理回路情報が示す回路網の一例である。
【図３】図３は、回路遅延情報が示す遅延時間の一例である。
【図４】図４は、論理回路情報が示す回路網の一例である。
【図５】図５は、論理回路情報が示す回路網の一例である。
【図６】図６は、実施例１に係る一時データの一例を示す図である。
【図７】図７は、図６の時点から所定時間経過後の一時データの一例を示す図である。
【図８】図８は、実施例１に係る記憶制御部の記憶方法の一例について説明するための図である。
【図９】図９は、波形ファイルに情報を出力する端子を説明するための図である。
【図１０】図１０は、一時データから波形ファイルに出力する情報を抽出する処理を説明するための図である。
【図１１】図１１は、一時データから波形ファイルに出力する情報を抽出する処理を説明するための図である。
【図１２】図１２は、実施例１に係る回路設計支援処理の手順を示すフローチャートである。
【図１３】図１３は、実施例１に係る回路設計支援処理の手順を示すフローチャートである。
【図１４】図１４は、実施例１に係る一時データ記憶処理の手順を示すフローチャートである。
【図１５】図１５は、回路設計支援プログラムを実行するコンピュータを示す図である。
【図１６】図１６は、従来の設計フロー工程の一例を説明するためのフローチャートである。
【図１７】図１７は、エラー解析手順の一例を説明するための図である。
【図１８】図１８は、第１の方法により波形ファイルに出力される情報量を示す図である。
【図１９】図１９は、第２の方法により波形ファイルに出力される情報量を示す図である。
【図２０】図２０は、第３の方法により、波形ファイルに出力される情報量を示す図である。
【図２１】図２１は、第２の方法において、設計者が予め定めた範囲の回路以外の他の回路でエラーが発生した場合を説明するための図である。
【発明を実施するための形態】
【００３３】
以下に、本願の開示する回路設計支援装置の実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例１】
【００３４】
［回路設計支援装置の構成］
図１は、実施例１に係る回路設計支援装置の構成を示す図である。本実施例に係る回路設計支援装置１０は、所定の回路網を示す回路情報に基づいて、回路網内の回路の動作をシミュレートする。そして、本実施例に係る回路設計支援装置１０は、シミュレートされた回路の各端子の信号の状態を示す情報のうち、エラー解析に必要となる最小限の情報を、エラー解析用の波形ファイルに出力する。【００３５】
図１に示すように、回路設計支援装置１０は、入力部１１と、出力部１２と、記憶部１３と、制御部１４とを有する。【００３６】
入力部１１は、各種情報を制御部１４に入力する。例えば、入力部１１は、ユーザの指示を受け付けて、受け付けた指示に従って、通信により外部装置から各種情報を取得し、取得した各種情報を制御部１４に入力する。入力部１１は、マウスやキーボードなどの操作受付デバイスであってもよい。具体例を挙げて説明すると、入力部１１は、動作試験の対象となる回路網を示す情報である論理回路情報を制御部１４に入力する。【００３７】
図２は、論理回路情報が示す回路網の一例である。図２の例では、回路網２０は、外部入力端子２０ａ，２０ｂ、ＡＮＤ回路２０ｃ、フリップフロップ（Flip  Flop）２０ｄ、外部出力端子２０ｅを有する。また、図２の例では、ＡＮＤ回路２０ｃは、入力端子２２ａ，２２ｂ及び出力端子２２ｃを有する。また、図２の例では、順序回路であるフリップフロップ２０ｄは、データ入力端子２２ｄ、データ出力端子２２ｅ、クロック入力端子２２ｆを有する。また、図２の例では、回路網２０は、外部入力端子２０ａと入力端子２２ａとを接続する配線２１ａ、外部入力端子２０ｂと入力端子２２ｂとを接続する配線２１ｂを有する。また、図２の例では、回路網２０は、出力端子２２ｃとデータ入力端子２２ｄとを接続する配線２１ｃ、データ出力端子２２ｅと外部出力端子２０ｅとを接続する配線２１ｄを有する。なお、以下の説明では、「フリップフロップ」を「ＦＦ」と略記する。【００３８】
また、入力部１１は、論理回路情報が示す回路網内の各回路の入力端子から出力端子までの情報の伝達の遅延時間、及び、回路間を接続する配線の遅延時間を示す情報である回路遅延情報を制御部１４に入力する。ここで、回路間を接続する配線の遅延時間とは、例えば、ある回路の出力端子から、その回路に配線を介して接続される他の回路の入力端子までの情報の伝達の遅延時間を指す。【００３９】
図３は、回路遅延情報が示す遅延時間の一例である。図３の例では、配線２１ａの遅延時間が、１０［ｐｓｅｃ］である場合が示されている。また、図３の例では、配線２１ｂの遅延時間が、５［ｐｓｅｃ］である場合が示されている。また、図３の例では、ＡＮＤ回路２０ｃの遅延時間が、７［ｐｓｅｃ］である場合が示されている。また、図３の例では、配線２１ｃの遅延時間が、４［ｐｓｅｃ］である場合が示されている。また、図３の例では、ＦＦ２０ｄの遅延時間が、５［ｐｓｅｃ］である場合が示されている。また、図３の例では、配線２１ｄの遅延時間が、３［ｐｓｅｃ］である場合が示されている。【００４０】
また、入力部１１は、テストパターンを制御部１４に入力する。ここで、テストパターンは、動作確認試験に用いられる情報である。例えば、テストパターンは、動作確認試験の際に、回路動作の基準となるテストクロックの周期やタイミング、テストクロックの名称が定義された情報を含む。また、テストパターンは、動作確認試験対象の回路網に対して外部から動作変化させる外部入力端子の名称、外部入力端子に入力される信号のパターン、外部入力端子にパターンを入力するタイミングが定義された情報を含む。また、テストパターンは、動作確認試験対象の回路網内の各回路によって加工された情報を出力する外部出力端子の名称、および上記のパターンを外部入力端子に入力した場合に、外部出力端子から出力されると期待された値である期待値が定義された情報を含む。また、テストパターンは、外部出力端子から出力された信号の値と、期待値とが、相違があるか否かを判定するタイミングが定義された情報を含む。【００４１】
また、入力部１１は、シミュレーションオプションを制御部１４に入力する。ここで、シミュレーションオプションは、動作確認試験のシミュレーションの実施条件である。例えば、シミュレーションオプションは、動作確認試験を行う試験者などによって設定される。シミュレーションオプションは、シミュレーション用ライブラリが存在する場所や、各種実施条件を含む。【００４２】
また、入力部１１は、一時データ制約を制御部１４に入力する。ここで、一時データ制約は、後述の一時データ１３ｄを定義した情報である。例えば、一時データ制約は、端子の信号の状態の情報を一時データ１３ｄとして記憶させる対象となる回路の範囲が定義された情報を含む。この回路の範囲は、論理階層を特定したり、順序回路素子名などを特定することで設定される。また、一時データ制約は、後述する一時データ１３ｄの時間幅が定義された情報を含む。なお、回路の範囲は、試験者により回路ビューワが用いられて選択される。また、時間幅は、テストクロックの何周期分であるかという情報や、または、１００μｓなどの特定の数値で表される。【００４３】
出力部１２は、各種の情報を出力する。例えば、出力部１２は、後述の動作確認試験におけるシミュレーション結果や、波形ファイル１３ｅに出力された端子の信号の状態を表示装置に表示する。なお、出力部１２は、シミュレーション結果や、端子の信号の状態を音声で出力してもよい。出力部１２のデバイスの一例としては、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などの表示デバイスや、音声を出力する音声出力デバイスが挙げられる。【００４４】
記憶部１３は、各種情報を記憶する。例えば、記憶部１３は、制御部１４で実行される各種プログラムを記憶する。また、記憶部１３は、回路データベース（Data  Base）１３ａを記憶する。回路データベース１３ａには、動作確認試験のシミュレーションの際に必要な各種情報が登録される。例えば、回路データベース１３ａの各レコードには、後述の解析部１４によって論理回路情報、および論理回路情報に対応する回路遅延情報が登録される。なお、以下の説明では、「回路データベース」を「回路ＤＢ」と略記する。【００４５】
また、記憶部１３は、テスト入力値情報１３ｂを記憶する。テスト入力値情報１３ｂには、動作確認試験のシミュレーションの際に、回路網の外部入力端子に入力する信号のテストパターンの情報が含まれる。例えば、テスト入力値情報１３ｂとして、次のような情報が解析部１４ｂにより記憶部１３に格納される。すなわち、解析部１４ｂによりテストパターンを解析した結果得られた、外部から動作変化させる外部入力端子の名称と、外部入力端子に入力される信号のパターンと、外部入力端子にパターンを入力するタイミングとを含む情報が記憶部１３に格納される。【００４６】
また、記憶部１３は、テスト期待値情報１３ｃを記憶する。テスト期待値情報１３ｃには、動作確認試験のシミュレーションの際に、回路網の外部出力端子から出力されると期待される信号の値が含まれる。例えば、テスト期待値情報１３ｃには、解析部１４ｂによりテストパターンを解析した結果得られた、動作確認試験対象の回路網内の各回路によって加工された情報を出力する外部出力端子の名称が含まれる。また、テスト期待値情報１３ｃには、解析部１４ｂによりテストパターンを解析した結果得られた、上記のパターンを外部入力端子に入力した場合に、外部出力端子から出力される期待値が含まれる。【００４７】
また、記憶部１３は、一時データ１３ｄを記憶する。一時データ１３ｄは、１回の動作確認試験で、エラーを発生した回路を特定するのに必要かつ情報量が最小限のエラー解析用の情報である。例えば、一時データ１３ｄとして、シミュレーションで検出されたエラーを発生した素子を特定可能な必要最小限の情報が、後述の記憶制御部１４ｄにより記憶部１３に格納される。なお、一時データ１３ｄの詳細については、後述する。【００４８】
また、記憶部１３は、波形ファイル１３ｅを記憶する。波形ファイル１３ｅは、エラー解析用のファイルである。例えば、波形ファイル１３ｅには、シミュレーションでエラーが検出された場合に、後述の出力部１４ｅにより、一時データ１３ｄのうちエラーと関係がある情報が入力される。これにより、試験者は、情報量がエラー解析の際に必要最小限である波形ファイル１３ｅの内容を解析することで、１回の確認動作試験で、簡易にエラー解析を行うことが可能となる。【００４９】
また、記憶部１３は、シミュレーションログ１３ｆを記憶する。シミュレーションログ１３ｆは、シミュレーション結果などを示すログである。例えば、シミュレーションログ１３ｆには、シミュレーションで発生したエラーのタイミングなどが含まれる。【００５０】
記憶部１３は、例えば、ＲＡＭ（Random  Access  Memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部１３は、上記の種類の記憶装置に限定されるものではなく、フラッシュメモリなどの半導体メモリ素子であってもよい。【００５１】
制御部１４は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。制御部１４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部１４は、図１に示すように、取得部１４ａと、解析部１４ｂと、シミュレート部１４ｃと、記憶制御部１４ｄと、出力部１４ｅとを有する。【００５２】
取得部１４ａは、各種情報を取得する。例えば、取得部１４ａは、入力部１１から入力された論理回路情報を取得する。また、取得部１４ａは、入力部１１から入力された回路遅延情報を取得する。また、取得部１４ａは、入力部１１から入力されたテストパターンを取得する。また、取得部１４ａは、入力部１１から入力されたシミュレーションオプションを取得する。また、取得部１４ａは、入力部１１から入力された一時データ制約を取得する。【００５３】
解析部１４ｂは、各種情報を解析する。例えば、解析部１４ｂは、取得部１４ａで取得した論理回路情報を解析し、論理回路情報が示す回路網において、外部出力端子から外部入力端子へ向かって回路のトレースを行う。そして、解析部１４ｂは、外部出力端子毎に、外部入力端子までの経路に含まれる回路の最大段数を算出する。そして、算出部１４ｂは、最大段数に基づいて、１回の確認動作試験で、エラーが発生した回路を特定するために必要最小限のエラー解析用の情報の時間幅を算出する。ここで、図４、図５を参照して具体例を挙げて最大段数の算出方法および時間幅の算出方法について説明する。図４、図５は、論理回路情報が示す回路網の一例である。【００５４】
図４の例では、論理回路情報が示す回路網３００は、順序回路であるＦＦ３０１〜ＦＦ３３０を有する。ＦＦ３０１〜ＦＦ３３０の各々は、データ入力端子、データ出力端子及びクロック入力端子を有する。また、ＦＦ３０１〜ＦＦ３３０の各々は、データ入力端子から入力された信号を、クロック入力端子に入力されたテストクロックに同期させて、テストクロックの１周期分遅延させてデータ出力端子から出力する。【００５５】
また、図４の例では、ＦＦ３０１のデータ入力端子３０１ａに外部入力端子３５０が接続されている。また、図４の例では、ＦＦ３０３のデータ入力端子３０３ａに外部入力端子３５１が接続されている。また、図４の例では、ＦＦ３１１のデータ入力端子３１１ａ及びＦＦ３１３のデータ入力端子３１３ａに外部入力端子３５２が接続されている。また、図４の例では、ＦＦ３２７のデータ入力端子３２７ａに外部入力端子３５３が接続されている。【００５６】
また、図４の例では、ＦＦ３０２のデータ出力端子３０２ｂ及びＦＦ３１０のデータ出力端子３１０ｂに外部出力端子３６０が接続されている。また、図４の例では、ＦＦ３１２のデータ出力端子３１２ｂ及びＦＦ３１８のデータ出力端子３１８ｂに外部出力端子３６１が接続されている。また、図４の例では、ＦＦ３２６のデータ出力端子３２６ｂに外部出力端子３６２が接続されている。【００５７】
また、図４の例では、ＦＦ３０１のデータ出力端子とＦＦ３０２のデータ入力端子とが接続されている。また、図４の例では、ＦＦ３０３〜ＦＦ３１０がシリアルに接続されている。また、図４の例では、ＦＦ３１１のデータ出力端子とＦＦ３１２のデータ入力端子とが接続されている。また、図４の例では、ＦＦ３１３〜ＦＦ３１８がシリアルに接続されている。また、図４の例では、ＦＦ３１４のデータ出力端子とＦＦ３１９のデータ入力端子とが接続されている。また、図４の例では、ＦＦ３１９〜ＦＦ３２６がシリアルに接続されている。また、図４の例では、ＦＦ３２７〜ＦＦ３３０がシリアルに接続されている。また、図４の例では、ＦＦ３３０のデータ出力端子とＦＦ３２３のデータ入力端子とが接続されている。【００５８】
図４の例において、解析部１４ｂは、外部出力端子３６０から、外部出力端子３６０に対応する外部入力端子３５０，３５１のそれぞれまでのＦＦの段数を算出する。図４の例では、外部出力端子３６０から外部入力端子３５０までのＦＦ３０１，３０２を通る経路については、解析部１４ｂは、ＦＦの段数「２」を算出する。また、図４の例では、外部出力端子３６０から外部入力端子３５１までのＦＦ３０３〜３１０を通る経路については、ＦＦの段数「８」を算出する。よって、図４の例では、解析部１４ｂは、外部出力端子３６０に対応する外部入力端子までの経路に含まれる回路の最大段数として、「８」を算出する。【００５９】
ここで、ＦＦ３０１〜ＦＦ３３０の各々がテストクロック１周期分遅延させて情報を出力することから、外部入力端子から外部出力端子までの最大遅延時間は、「最大段数×テストクロックの１周期」となる。さらに、ある回路でエラーが発生した場合に、１回の確認動作試験で、そのエラーが発生した回路を特定するためには、少なくとも、エラーが発生した時点から「（最大段数＋１）×テストクロックの１周期」前までの各端子の信号の状態を示す情報が必要となる。この理由は、外部入力端子に接続された初段の回路でエラーが発生し、外部出力端子の出力結果からエラーが検出された場合には、エラーの原因となった初段の回路の端子の信号の状態は、次のような状態だからである。すなわち、エラーの原因となった初段の回路の端子の信号の状態は、エラー検出時から「（最大段数＋１）×テストクロックの１周期」前の状態である。それゆえ、図４の例では、外部出力端子３６０の出力結果からエラーが検出された場合に、１回の確認動作試験でエラーが発生した回路を特定するためには、次のような情報が必要となる。すなわち、少なくとも、エラーが発生した時点から「（８＋１）×テストクロックの１周期」前までの各端子の信号の状態の情報が必要となる。そこで、図４の例では、解析部１４ｂは、外部出力端子３６０と外部入力端子３５０，３５１との間に存在する各回路の端子の信号の状態を示すエラー解析用の情報の時間幅を「（８＋１）×テストクロックの１周期」として算出する。【００６０】
また、図４の例において、解析部１４ｂは、外部出力端子３６１から、外部出力端子３６１に対応する外部入力端子３５２までのＦＦの段数を算出する。図４の例では、外部出力端子３６１から外部入力端子３５２までの経路については、２つある。図４の例において、ＦＦ３１１，３１２を通る経路については、解析部１４ｂは、ＦＦの段数「２」を算出する。また、図４の例では、ＦＦ３１３〜３１８を通る経路については、解析部１４ｂは、ＦＦの段数「６」を算出する。よって、図４の例では、解析部１４ｂは、外部出力端子３６１に対応する外部入力端子までの経路に含まれる回路の最大段数として、「６」を算出する。それゆえ、図４の例では、外部出力端子３６１の出力結果からエラーが検出された場合に、１回の確認動作試験でエラーが発生した回路を特定するためには、次のような情報が必要となる。すなわち、少なくとも、エラーが発生した時点から「（６＋１）×テストクロックの１周期」前までの各端子の信号の状態の情報が必要となる。そこで、図４の例では、解析部１４ｂは、外部出力端子３６１と外部入力端子３５２との間に存在する各回路の端子の信号の状態を示すエラー解析用の情報の時間幅を「（６＋１）×テストクロックの１周期」として算出する。【００６１】
また、図４の例において、解析部１４ｂは、外部出力端子３６２から、外部出力端子３６２に対応する外部入力端子３５２，３５３のそれぞれまでのＦＦの段数を算出する。図４の例では、外部出力端子３６２から外部入力端子３５２までのＦＦ３１３，３１４，３１９〜３２６を通る経路については、解析部１４ｂは、ＦＦの段数「１０」を算出する。また、図４の例では、外部出力端子３６２から外部入力端子３５３までのＦＦ３２７〜３３０，３２３〜３２６を通る経路については、解析部１４ｂは、ＦＦの段数「８」を算出する。よって、図４の例では、解析部１４ｂは、外部出力端子３６２に対応する外部入力端子までの経路に含まれる回路の最大段数として、「１０」を算出する。それゆえ、図４の例では、外部出力端子３６２の出力結果からエラーが検出された場合に、１回の確認動作試験でエラーが発生した回路を特定するためには、次のような情報が必要となる。すなわち、少なくとも、エラーが発生した時点から「（１０＋１）×テストクロックの１周期」前までの各端子の信号の状態の情報が必要となる。そこで、図４の例では、解析部１４ｂは、外部出力端子３６２と外部入力端子３５２，３５３との間に存在する各回路の端子の信号の状態を示すエラー解析用の情報の時間幅を「（１０＋１）×テストクロックの１周期」として算出する。【００６２】
図５の例では、論理回路情報が示す回路網３７０は、順序回路であるＦＦ３７１〜ＦＦ３８８を有する。ＦＦ３７１〜ＦＦ３７３、ＦＦ３７６〜ＦＦ３８３、ＦＦ３８５〜ＦＦ３８８の各々は、データ入力端子、データ出力端子及びクロック入力端子を有する。また、ＦＦ３７１〜ＦＦ３７３、ＦＦ３７６〜ＦＦ３８３、ＦＦ３８５〜ＦＦ３８８の各々は、データ入力端子から入力された信号を、クロック入力端子に入力されたテストクロックに同期させて、テストクロックの１周期分遅延させてデータ出力端子から出力する。また、ＦＦ３７４、ＦＦ３７５、ＦＦ３８４は、第１のデータ入力端子、第２のデータ入力端子、データ出力端子及びクロック入力端子を有する。また、ＦＦ３７４，３７５，３８４の各々は、第１のデータ入力端子及び第２のデータ入力端子から入力された各信号に基づいた信号を、クロック入力端子に入力されたテストクロックに同期させて、クロックの１周期分遅延させてデータ出力端子から出力する。【００６３】
また、図５の例では、ＦＦ３７１のデータ入力端子３７１ａ及びＦＦ３７３のデータ入力端子３７３ａに外部入力端子３９０が接続されている。また、図５の例では、ＦＦ３７２のデータ出力端子３７２ｂ及びＦＦ３８０のデータ出力端子３８０ｂに外部出力端子３９１が接続されている。【００６４】
また、図５の例では、ＦＦ３７１のデータ出力端子とＦＦ３７２のデータ入力端子とが接続されている。また、図５の例では、ＦＦ３７３のデータ出力端子とＦＦ３７４の第１のデータ入力端子とが接続されている。また、図５の例では、ＦＦ３７４のデータ出力端子とＦＦ３７５の第１のデータ入力端子とが接続されている。また、図５の例では、ＦＦ３７５〜ＦＦ３８０がシリアルに接続されている。また、図５の例では、ＦＦ３７７のデータ出力端子とＦＦ３８１のデータ入力端子とが接続されている。また、図５の例では、ＦＦ３８１〜ＦＦ３８３がシリアルに接続されている。また、図５の例では、ＦＦ３８３のデータ出力端子とＦＦ３８４の第１のデータ入力端子とが接続されている。また、図５の例では、ＦＦ３８４〜ＦＦ３８８がシリアルに接続されている。また、図５の例では、ＦＦ３８８のデータ出力端子とＦＦ３７５の第２のデータ入力端子とが接続されている。また、図５の例では、ＦＦ３８６のデータ出力端子とＦＦ３７４の第２のデータ入力端子とが接続されている。また、図５の例では、ＦＦ３７８のデータ出力端子とＦＦ３８４の第２のデータ入力端子とが接続されている。【００６５】
図５の例において、解析部１４ｂは、外部出力端子３９１から、外部出力端子３９１に対応する外部入力端子３９０までのＦＦの段数を算出する。図５の例では、外部出力端子３９１から外部入力端子３９０までの経路については、６つある。図５の例において、ＦＦ３７１，３７２を通る１つ目の経路については、解析部１４ｂは、ＦＦの段数「２」を算出する。また、図５の例では、ＦＦ３７３〜３８０を通る２つ目の経路については、解析部１４ｂは、ＦＦの段数「８」を算出する。また、図５の例では、ＦＦ３７３〜３７７、３８１〜３８８、３７５〜３８０を通るような経路の一部にループを有する３つ目の経路については、解析部１４ｂは、ＦＦの段数「１９」を算出する。また、図５の例では、ＦＦ３７３〜３７８、３８４〜３８６、３７４〜３８０を通るような経路の一部にループを有する４つ目の経路については、解析部１４ｂは、ＦＦの段数「１６」を算出する。また、図５の例では、ＦＦ３７３〜３７７、３８１〜３８６、３７４〜３８０を通るような経路の一部にループを有する５つ目の経路については、解析部１４ｂは、ＦＦの段数「１８」を算出する。また、図５の例では、ＦＦ３７３〜３７８、３８４〜３８８、３７５〜３８０を通るような経路の一部にループを有する６つ目の経路については、解析部１４ｂは、ＦＦの段数「１７」を算出する。よって、図５の例では、解析部１４ｂは、外部出力端子３９１に対応する外部入力端子までの経路に含まれる回路の最大段数として、「１９」を算出する。このように、経路の一部にループ含まれる場合には、解析部１４ｂは、そのループを１周廻って最大段数を算出する。また、図５の例では、解析部１４ｂは、外部出力端子３９１と外部入力端子３９０との間に存在する各回路の端子の信号の状態を示すエラー解析用の情報の時間幅を「（１９＋１）×テストクロックの１周期」として算出する。【００６６】
また、解析部１４ｂは、回路ＤＢ１３ａの未登録の１レコードに、取得部１４ａにより取得された論理回路情報、および回路遅延情報を登録する。【００６７】
また、解析部１４ｂは、取得部１４ａにより取得されたテストパターンを解析し、外部から動作変化させる外部入力端子の名称と、外部入力端子に入力される信号のパターンと、外部入力端子にパターンを入力するタイミングとを取得する。そして、解析部１４ｂは、外部入力端子の名称、信号のパターン、タイミングを含む情報を、テスト入力値情報１３ｂとして記憶部１３に格納する。【００６８】
また、解析部１４ｂは、取得部１４ａにより取得されたテストパターンを解析し、動作確認試験対象の回路網内の各回路によって加工された情報を出力する外部出力端子の名称、外部出力端子から出力される期待値を取得する。また、解析部１４ｂは、テストパターンを解析し、外部出力端子から出力された信号の値と、期待値とが、相違があるか否かをチェックするタイミングを取得する。そして、解析部１４ｂは、外部出力端子の名称、期待値、タイミングを含む情報を、テスト期待値情報１３ｃとして、記憶部１３に格納する。【００６９】
シミュレート部１４ｃは、回路の動作をシミュレートする。例えば、シミュレート部１４ｃは、回路ＤＢ１３ａから動作確認試験対象の論理回路情報及び回路遅延情報を取得する。また、シミュレート部１４ｃは、テスト入力値情報１３ｂを記憶部１３から取得する。また、シミュレート部１４ｃは、テスト期待値情報１３ｃを記憶部１３から取得する。そして、シミュレート部１４ｃは、論理回路情報が示す回路網内の回路の動作を、回路遅延情報が示す各素子の遅延情報を考慮してシミュレートする。このシミュレートの際、シミュレート部１４ｃは、テスト入力値情報１３ｂに含まれる名称の外部入力端子に、テスト入力値情報１３ｂに含まれるテストパターンを、テスト入力値情報１３ｂに含まれるタイミングで入力する。そして、シミュレート部１４ｃは、シミュレートの結果、テスト期待値情報１３ｃに含まれる名称の外部出力端子の出力値と、テスト期待値情報１３ｃに含まれる期待値とが相違があるか否かを、テスト期待値情報１３ｃに含まれるタイミングで判定する。すなわち、シミュレート部１４ｃは、テスト期待値情報１３ｃに基づいて、エラーを検出する。【００７０】
記憶制御部１４ｄは、シミュレート部１４ｃにより動作がシミュレートされた回路の端子の信号の状態を示す情報のうち、情報量がエラー解析に必要な最小限の情報を記憶部１３に格納する。すなわち、記憶制御部１４ｄは、かかる情報を記憶部１３に記憶させるように制御する。【００７１】
例えば、記憶制御部１４ｄは、シミュレートされた回路の端子の信号の状態を示す情報のうち、現時点から、解析部１４ｂにより算出された時間幅分前までの情報を一時データ１３ｄとして記憶部１３に格納する。【００７２】
図４の例では、記憶制御部１４ｄは、ＦＦ３０１〜３１０の各々のデータ入力端子及びデータ出力端子の信号の状態並びに時間を示す情報であって、現時点から、時間幅「（８＋１）×テストクロックの１周期」前までの情報を記憶部１３に格納する。また、図４の例では、記憶制御部１４ｄは、ＦＦ３１１，３１２，３１５〜３１８の各データ入力端子及びデータ出力端子の信号の状態並びに時間を示す情報であって、現時点から、時間幅「（６＋１）×クロックの１周期」前までの情報を記憶部１３に格納する。また、図４の例では、記憶制御部１４ｄは、ＦＦ３１３，３１４，３１９〜３３０の各データ入力端子及びデータ出力端子の信号の状態並びに時間を示す情報であって、次のような情報を記憶部１３に格納する。すなわち、記憶制御部１４ｄは、現時点から時間幅「（１０＋１）×テストクロックの１周期」前までの情報を記憶部１３に格納する。図４の例では、これらのＦＦ３０１〜３３０の各々のデータ入力端子及びデータ出力端子の信号の状態並びに時間を示す情報の和が、一時データ１３ｄとして記憶部１３に記憶される。【００７３】
図５の例では、記憶制御部１４ｄは、ＦＦ３７１〜３８８の各々のデータ入力端子及びデータ出力端子の信号の状態並びに時間を示す情報であって、現時点から、時間幅「（１９＋１）×テストクロックの１周期」前までの情報を記憶部１３に格納する。図５の例では、これらのＦＦ３７１〜３８８の各々のデータ入力端子及びデータ出力端子の信号の状態を示す情報の和が、一時データ１３ｄとして記憶部１３に記憶される。【００７４】
なお、図４および図５の例では、記憶制御部１４ｄが、データ入力端子及びデータ出力端子の信号の状態を示す情報を記憶部１３に格納する場合について説明した。しかしながら、記憶制御部１４ｄは、データ入力端子又はデータ出力端子の何れかの端子の信号の状態を示す情報を記憶部１３に格納するようにしてもよい。また、記憶制御部１４ｄは、全範囲に限らず、試験者などによって指定された範囲の回路の端子の信号の状態及び時間を示す情報を記憶部１３に格納することもできる。さらに、記憶制御部１４ｄは、各回路に入力されるテストクロックの立ち上がりで、信号の値が変化、例えば、０から１又は１から０に変化した端子のみ、変化後の状態と、端子名と、時間とを対応付けた情報を記憶部１３に格納するようにすることもできる。【００７５】
また、記憶制御部１４ｄは、各端子ごとに、端子と外部出力端子との遅延時間に応じた時間幅を算出し、現時点から算出した時間幅までの信号の状態を示す情報を記憶部１３に格納するようにしてもよい。【００７６】
図６は、実施例１に係る一時データの一例を示す図である。図６の横軸は、動作確認試験開始から動作確認試験終了までの時間を示し、縦軸は、一時データ１３ｄとして記憶部１３に記憶される情報を出力する端子の個数である。図６の例では、一時データ１３ｄが、現時点Ｔ０から、時間幅ｔ１前までの回路網内の全端子の信号の状態を示す情報である場合が示されている。【００７７】
図７は、図６の時点から所定時間経過後の一時データの一例を示す図である。図７の横軸は、動作確認試験開始から動作確認試験終了までの時間を示し、縦軸は、一時データ１３ｄとして記憶部１３に記憶される情報を出力する端子の個数である。図７の例では、一時データ１３ｄは、図６の例の時刻Ｔ０から所定時間Ｔ１経過した現時点Ｔ２から、時間幅ｔ１前までの回路網内の全端子の信号の状態を示す情報であることを示す。【００７８】
図８は、実施例１に係る記憶制御部の記憶方法の一例について説明するための図である。図８には、記憶制御部１４ｄが、一つの端子の信号の状態を示す情報を記憶部に記憶させる記憶方法の一例が示されている。図８の例では、テストクロック４周期分の時間幅の情報が、記憶制御部１４ｄにより記憶部１３に記憶される。図８に示すように、まず、記憶制御部１４ｄは、一つの端子の信号の状態を示す情報の記憶場所を管理する管理領域５０を記憶部１３上に確保する。そして、記憶制御部１４ｄは、テストクロックが立ち上がるごとに、記憶部１３上の記憶領域５１〜５４のうち情報が記憶されていない記憶領域に、記憶対象の端子の信号の状態を示す情報を記憶するように記憶部１３を制御する。また、記憶領域５１〜５４の全ての記憶領域に情報が記憶されている場合には、記憶制御部１４ｄは、テストクロックが立ち上がるごとに、記憶部１３上の記憶領域５１〜５４のうち、記憶された情報が最も古い記憶領域の情報を削除する。なお、記憶制御部１４ｄは、管理領域５０に記憶された記憶内容から、記憶された情報が最も古い記憶領域を検索することができる。そして、記憶制御部１４ｄは、テストクロックが立ち上がるごとに、情報が削除された記憶領域に、記憶対象の端子の信号の状態を示す情報を記憶するように記憶部１３を制御する。そして、記憶制御部１４ｄは、テストクロックが立ち上がるごとに、情報を記憶した記憶領域のアドレスおよび情報を記憶した時刻を管理領域５０に記憶させるように記憶部１３を制御する。このような処理を記憶制御部１４ｄは、動作確認試験が終了するまで行う。【００７９】
また、一時データ制約で時間幅をテストクロック１０周期分と設定された場合には、記憶制御部１４ｄは、最初の１０周期は順次メモリの空き領域に信号の状態を示す情報を記憶させる。そして、１１周期目以降では、記憶制御部１４ｄは、管理領域５０に記憶された情報から、その時点で最も古い情報の記憶領域を検索し、検索した記憶領域に記憶された情報を削除し、新たな１周期分の情報をその記憶領域に記憶させる。また、一時データ制約で、時間幅を１００μｓなどの特定時間で設定された場合には、その特定時間をテストクロック１周期分の長さで割った数の分だけ記憶領域を用意しておき、記憶制御部１４ｄは、上記の処理と同様にして情報を記憶させればよい。【００８０】
出力部１４ｅは、エラーが検出された場合に、一時データ１３ｄの中から、エラーに関係がある端子の信号の状態を示す情報を波形ファイル１３ｅに出力する。例えば、出力部１４ｅは、エラーが検出された外部出力端子と、この外部入力端子に対応する外部入力端子との間に存在する端子の信号の状態を示す情報を一時データ１３ｄの中から抽出し、抽出した情報を波形ファイル１３ｅに出力する。具体例を挙げて説明すると、出力部１４ｅは、記憶部１３の各記憶領域に記憶された情報を１つにつなげて、波形ファイル１３ｅに出力する。【００８１】
図９は、波形ファイルに情報を出力する端子を説明するための図である。図９の例では、回路網５００は、遅延回路５０１〜５１５を有する。遅延回路５０１〜５１５のそれぞれは、複数の入力端子と、一つの出力端子とを有する。図９の例では、外部出力端子６００と、外部入力端子７００との間には、遅延回路５０１〜５０４が存在する。また、図９の例では、外部出力端子６００と、外部入力端子７０１との間には、遅延回路５０１〜５０４の回路が存在する。また、図９の例では、外部出力端子６００と、外部入力端子７０２との間には、遅延回路５０１〜５０４が存在する。また、図９の例では、外部出力端子６００と、外部入力端子７０３との間には、遅延回路５０２〜５０５が存在する。また、図９の例では、外部出力端子６００と、外部入力端子７０４との間には、遅延回路５０２〜５０５が存在する。【００８２】
また、図９の例では、外部出力端子６００と、外部入力端子７０６との間には、遅延回路５０４，５１０〜５１２が存在する。また、図９の例では、外部出力端子６００と、外部入力端子７０７との間には、遅延回路５０４，５１１〜５１３が存在する。【００８３】
また、図９の例では、外部出力端子６０１と、外部入力端子７００との間には、遅延回路５０１，５０２，５０７，５０８が存在する。また、図９の例では、外部出力端子６０１と、外部入力端子７０１との間には、遅延回路５０１，５０２，５０７，５０８，５１０，５１１，５１５が存在する。また、図９の例では、外部出力端子６０１と、外部入力端子７０２との間には、遅延回路５０１，５０２，５０７，５０８，５１０，５１１，５１５が存在する。また、図９の例では、外部出力端子６０１と、外部入力端子７０３との間には、遅延回路５０５〜５０８が存在する。【００８４】
また、図９の例では、外部出力端子６０１と、外部入力端子７０４との間には、遅延回路５０５〜５０８，５１３〜５１５が存在する。また、図９の例では、外部出力端子６０１と、外部入力端子７０５との間には、遅延回路５０６〜５０８が存在する。また、図９の例では、外部出力端子６０１と、外部入力端子７０６との間には、遅延回路５０８，５１０，５１１，５１５が存在する。また、図９の例では、外部出力端子６０１と、外部入力端子７０７との間には、遅延回路５０８，５１３〜５１５が存在する。また、図９の例では、外部出力端子６０１と、外部入力端子７０８との間には、遅延回路５０８，５１４，５１５が存在する。【００８５】
また、図９の例では、外部出力端子６０２と、外部入力端子７０３との間には、遅延回路５０５，５０６，５０９が存在する。また、図９の例では、外部出力端子６０２と、外部入力端子７０４との間には、遅延回路５０５，５０６，５０９，５１３，５１４が存在する。また、図９の例では、外部出力端子６０２と、外部入力端子７０５との間には、遅延回路５０６，５０９が存在する。また、図９の例では、外部出力端子６０２と、外部入力端子７０７との間には、遅延回路５０９，５１３，５１４が存在する。また、図９の例では、外部出力端子６０２と、外部入力端子７０８との間には、遅延回路５０９，５１４が存在する。【００８６】
図９の例において、外部出力端子６０２でエラーが検出された場合には、出力部１４ｅは、次のような処理を行う。すなわち、出力部１４ｅは、外部出力端子６０２と、外部入力端子７０３〜７０５，７０７，７０８との間に存在する遅延回路５０５，５０６，５０９，５１３，５１４の入力端子及び出力端子の信号の状態を示す情報を一時データ１３ｄから抽出する。そして、出力部１４ｅは、抽出した情報を波形ファイル１３ｅに出力する。これにより、試験者は、情報量がエラー解析の際に必要最小限である波形ファイル１３ｅの内容を解析することで、１回の確認動作試験で、簡易にエラー解析を行うことが可能となる。【００８７】
図１０、図１１は、一時データから波形ファイルに出力する情報を抽出する処理を説明するための図である。図１０の横軸は、動作確認試験開始から動作確認試験終了までの時間を示し、縦軸は、波形ファイル１３ｅへ信号の情報を出力する端子の個数である。図１０の例では、時間Ｔ５にエラーが検出されると、出力部１４ｅは、一時データ１３ｄの中から、エラーに関係する情報７０を抽出し、情報７０を波形ファイル１３ｅに出力する。【００８８】
図１１の横軸は、動作確認試験開始から動作確認試験終了までの時間を示し、縦軸は、波形ファイル１３ｅへ信号の情報を出力する端子の個数である。図１１の例では、図１０の例と同様に、時間Ｔ５にエラーが検出されると、出力部１４ｅは、一時データ１３ｄの中から、エラーに関係する情報７０を抽出し、情報７０を波形ファイル１３ｅに出力する。また、図１１の例では、時間Ｔ６にエラーが検出されると、出力部１４ｅは、一時データ１３ｄの中から、エラーに関係する情報７１を抽出し、情報７１を波形ファイル１３ｅに出力する。【００８９】
このように、出力部１４ｅは、エラーが検出されるごとに、一時データ１３ｄの中から、エラーに関係する情報を抽出し、抽出した情報を波形ファイル１３ｅに出力する。【００９０】
また、出力部１４ｅは、シミュレーションで発生したエラーのタイミングなどのシミュレーション結果を含むシミュレーションログ１３ｆを生成し、シミュレーションログ１３ｆを記憶部１３に格納する。【００９１】
［処理の流れ］
次に、本実施例に係る回路設計支援装置１０の処理の流れを説明する。図１２、図１３は、実施例１に係る回路設計支援処理の手順を示すフローチャートである。この回路設計支援処理は、入力部１１から制御部１４に回路設計支援処理を実行する指示が入力された場合に実行される。【００９２】
図１２に示すように、取得部１４ａは、一時データ制約を取得する（ステップＳ１０１）。【００９３】
解析部１４ｂは、一時データ制約に、回路の範囲が定義された情報が含まれているか否かを判定する（ステップＳ１０２）。【００９４】
一時データ制約に、回路の範囲が定義された情報が含まれていない場合（ステップＳ１０２否定）には、解析部１４ｂは、端子の信号の状態の情報を記憶させる対象となる回路の範囲を回路網の全範囲として設定する（ステップＳ１０３）。一方、一時データ制約に回路の範囲が定義された情報が含まれている場合（ステップＳ１０２肯定）には、ステップＳ１０４へ進む。【００９５】
取得部１４ａは、論理回路情報及び回路遅延情報を取得する（ステップＳ１０４）。解析部１４ｂは、回路ＤＢ１３ａの未登録の１レコードに、論理回路情報及び回路遅延情報を登録する（ステップＳ１０５）。【００９６】
解析部１４ｂは、一時データ制約に、時間幅が定義された情報が含まれているか否かを判定する（ステップＳ１０６）。一時データ制約に時間幅が定義された情報が含まれていない場合（ステップＳ１０６否定）には、解析部１４ｂは、外部出力端子ごとに、最大段数を算出する（ステップＳ１０７）。解析部１４ｂは、外部出力端子ごとに、時間幅を算出する（ステップＳ１０８）。一時データ制約に時間幅が定義された情報が含まれている場合（ステップＳ１０６肯定）には、ステップＳ１０９へ進む。【００９７】
取得部１４ａは、テストパターンを取得する（ステップＳ１０９）。解析部１４ｂは、テストパターンを解析し、テスト入力値情報１３ｂ及びテスト期待値情報１３ｃを記憶部１３に格納する（ステップＳ１１０）。【００９８】
シミュレート部１４ｃは、テスト入力値情報１３ｂ、テスト期待値情報１３ｃ、論理回路情報、回路遅延情報に基づいて、論理回路情報が示す回路網内の回路の動作をシミュレートする（ステップＳ１１１）。【００９９】
記憶制御部１４ｄは、一時データ１３ｄを記憶部１３に記憶させる、後述する一時データ記憶処理を実行する（ステップＳ１１２）。【０１００】
シミュレート部１４ｃは、エラーを検出したか否かを判定する（ステップＳ１１３）。エラーを検出した場合（ステップＳ１１３肯定）には、出力部１４ｅは、一時データ１３ｄの中から、エラーに関係がある情報を抽出する（ステップＳ１１４）。出力部１４ｅは、抽出した情報を波形ファイル１３ｅに出力する（ステップＳ１１５）。出力部１４ｅは、シミュレーションログ１３ｆを生成し、シミュレーションログ１３ｆを記憶部１３に格納する（ステップＳ１１６）。一方、エラーを検出しない場合（ステップＳ１１３否定）には、ステップＳ１１６へ進む。シミュレート部１４ｃは、全サイクルで動作確認試験を行ったか否かを判定し（ステップＳ１１７）、全サイクルで動作確認試験が行われていない場合（ステップＳ１１７否定）には、ステップＳ１１１へ戻る。一方、全サイクルで動作確認試験が行われた場合（ステップＳ１１７肯定）には、処理を終了する。【０１０１】
次に、ステップＳ１１２の一時データ記憶処理の流れを説明する。図１４は、実施例１に係る一時データ記憶処理の手順を示すフローチャートである。【０１０２】
図１４に示すように、記憶制御部１４ｄは、各端子ごとに、管理領域５０を記憶部１３上に確保する（ステップＳ２０１）。記憶制御部１４ｄは、テストクロックが立ち上がるたびに、各端子ごとに、記憶部１３上の記憶領域の全ての記憶領域で情報が記憶されているか否かを判定する（ステップＳ２０２）。全ての記憶領域で情報が記憶されている場合（ステップＳ２０２肯定）には、記憶制御部１４ｄは、各端子ごとの管理領域５０から、記憶された情報が最も古い記憶領域を検索する（ステップＳ２０３）。【０１０３】
記憶制御部１４ｄは、検索された記憶領域の情報を削除する（ステップＳ２０４）。記憶制御部１４ｄは、検索された記憶領域に、対応する端子の信号の状態を示す情報を記憶させる（ステップＳ２０５）。記憶制御部１４ｄは、情報を記憶した記憶領域のアドレスおよび情報を記憶した時刻を管理領域５０に記憶させる（ステップＳ２０６）。記憶制御部１４ｄは、テストパターン全てに対してシミュレーションを行ったか否かを判定し（ステップＳ２０７）、テストパターン全てに対してシミュレーションを行っていない場合（ステップＳ２０７否定）には、ステップＳ２０２に戻る。一方、テストパターン全てに対してシミュレーションを行った場合（ステップＳ２０７肯定）には、処理を終了する。【０１０４】
［実施例１の効果］
上述してきたように、本実施例に係る回路支援設計装置１０は、所定の回路網を示す回路情報に基づいて、回路網内の各回路の動作をシミュレートする。本実施例に係る回路支援設計装置１０は、シミュレートされた回路網内の各回路の端子の信号の状態を示す情報であって、回路の遅延時間に応じた時間分の情報を記憶部１３に記憶するように制御する。本実施例に係る回路支援設計装置１０は、所定の端子でエラーを検出した場合には、記憶部１３に記憶された時間分の信号の状態の情報を、エラー解析用の波形ファイル１３ｅに出力する。このように、本実施例に係る回路支援設計装置１０は、１回の動作確認試験でエラーが発生した素子を特定できる最小限の情報を波形ファイル１３ｅに出力する。したがって、本実施例に係る回路支援設計装置１０によれば、動作確認試験の回数を抑制しつつ、波形ファイルに出力する情報の情報量を抑制することができる。【０１０５】
また、本実施例に係る回路支援設計装置１０は、端子ごとに、各端子に対応する外部入力端子から、回路の外部出力端子までに存在する順序回路の最大経路に応じた遅延時間分の情報を記憶部１３に記憶するように制御する。このため、本実施例に係る回路支援設計装置１０によれば、各端子ごとに、エラー解析に適切な遅延時間分の情報を記憶部１３に記憶することができる。【０１０６】
また、本実施例に係る回路支援設計装置１０は、所定の端子の一例である外部入力端子でエラーを検出した場合には、所定の端子から、所定の端子に対応する外部入力端子までの間に存在する各端子の時間分の信号の状態の情報を、波形ファイル１３ｅに出力する。そのため、本実施例に係る回路支援設計装置１０は、一時データ１３ｄの情報の中から、エラーと関係がある情報を絞って波形ファイル１３ｅに出力する。それゆえ、本実施例に係る回路支援設計装置１０によれば、１回の確認動作試験で、試験者にとってより簡易にエラー解析を行うことが可能な情報を波形ファイル１３ｅに出力することができる。【０１０７】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。【０１０８】
［時間幅］
上記の実施例１では、時間幅が回路の遅延時間に応じた場合について例示したが、開示の装置はこれに限定されない。例えば、開示の装置は、各端子と、エラーを検出するための情報が出力される端子との情報が出力されるタイミングの差に応じた時間幅を適用できる。また、時間幅は、上記の実施例１で説明したものに限定されない。例えば、開示の装置は、初段の回路でエラーが発生する確率が、平均のエラー発生率よりも低いことが既知である場合、上記の実施例１で説明した時間幅よりも、テストクロック所定周期、例えば１周期分短くした時間幅を適用できる。この場合、開示の装置は、波形ファイル１３ｅに出力する情報量がより少なくなり、ユーザにとってより簡易にエラー解析できる情報を波形ファイル１３ｅに出力することができる。【０１０９】
［適用範囲］
上記の実施例１では、回路網内の回路で遅延が発生する場合について例示したが、開示の装置はこれに限定されない。例えば、開示の装置は、遅延が発生しない回路についても適用できる。【０１１０】
また、各実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。また、本実施例において説明した各処理のうち、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。例えば、図１２のステップＳ１０１、Ｓ１０４、Ｓ１０９において、入力部１１を試験者が操作することにより、それぞれ一時データ制約、論理回路情報及び回路遅延情報、テストパターンを制御部１４に入力してもよい。【０１１１】
また、各種の負荷や使用状況などに応じて、各実施例において説明した各処理の各ステップでの処理を任意に細かくわけたり、あるいはまとめたりすることができる。また、ステップを省略することもできる。例えば、一時データ制約を取得するステップＳ１０１を省略することもでき、この場合、ステップＳ１０２、Ｓ１０６なども省略することができる。【０１１２】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図１に示すシミュレート部１４ｃと記憶制御部１４ｄとが統合されてもよい。また、記憶制御部１４ｄと出力部１４ｅとが統合されてもよい。【０１１３】
［回路設計支援プログラム］
また、上記の各実施例で説明した移動物特定装置の各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、図１５を用いて、上記の実施例で説明した回路設計支援装置と同様の機能を有する回路設計支援プログラムを実行するコンピュータの一例を説明する。図１５は、回路設計支援プログラムを実行するコンピュータを示す図である。【０１１４】
図１５に示すように、実施例２におけるコンピュータ３００は、ＣＰＵ（Central  Processing  Unit）３１０、ＲＯＭ（Read  Only  Memory）３２０、ＨＤＤ（Hard  Disk  Drive）３３０、ＲＡＭ（Random  Access  Memory）３４０とを有する。これら３００〜３４０の各部は、バス４００を介して接続される。【０１１５】
ＲＯＭ３２０には、上記の実施例１で示す取得部１４ａと、解析部１４ｂと、シミュレート部１４ｃと、記憶制御部１４ｄと、出力部１４ｅと同様の機能を発揮する回路設計支援プログラムが予め記憶される。すなわち、ＲＯＭ３２０には、図１５に示すように、回路設計支援プログラム３２０ａが記憶される。なお、プログラム３２０ａについては、適宜分離しても良い。【０１１６】
そして、ＣＰＵ３１０が、プログラム３２０ａをＲＯＭ３２０から読み出して実行する。【０１１７】
そして、ＨＤＤ３３０には、回路ＤＢ３３０ａと、テスト入力値情報３３０ｂと、テスト期待値情報３３０ｃと、一時データ３３０ｄと、波形ファイル３３０ｅと、シミュレーションログ３３０ｆとが設けられる。回路ＤＢ３３０ａ、テスト入力値情報３３０ｂ及びテスト期待値情報３３０ｃのそれぞれは、図１に示した回路ＤＢ１３ａ、テスト入力値情報１３ｂ及びテスト期待値情報１３ｃのそれぞれに対応する。また、一時データ３３０ｄ、波形ファイル３３０ｅ及びシミュレーションログ３３０ｆのそれぞれは、図１に示した一時データ１３ｄ、波形ファイル１３ｅ及びシミュレーションログ１３ｆのそれぞれに対応する。【０１１８】
そして、ＣＰＵ３１０は、回路ＤＢ３３０ａ、テスト入力値情報３３０ｂ、テスト期待値情報３３０ｃ、一時データ３３０ｄ、波形ファイル３３０ｅ及びシミュレーションログ３３０ｆを読み出してＲＡＭ３４０に格納する。ＣＰＵ３１０は、ＲＡＭ３４０に格納された回路ＤＢデータ３４０ａ、テスト入力値情報３４０ｂ、テスト期待値情報３４０ｃ、一時データ３４０ｄ、波形ファイルデータ３４０ｅ、シミュレーションログデータ３４０ｆを用いて、プログラム３２０ａを実行する。なお、ＲＡＭ３４０に格納される各データは、常に全てのデータがＲＡＭ３４０に格納される必要はなく、処理に必要なデータのみがＲＡＭ３４０に格納されれば良い。【０１１９】
なお、上記した回路設計支援プログラムについては、必ずしも最初からＨＤＤ３３０に記憶させておく必要はない。【０１２０】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。  【０１２１】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【０１２２】
１０        回路支援設計装置
１１        入力部
１２        出力部
１３        記憶部
１３ａ      回路ＤＢ
１３ｂ      テスト入力値情報
１３ｃ      テスト期待値情報
１３ｄ      一時データ
１３ｅ      波形ファイル
１３ｆ      シミュレーションログ
１４        制御部
１４ａ      取得部
１４ｂ      解析部
１４ｃ      シミュレート部
１４ｄ      記憶制御部
１４ｅ      出力部
【図１】
2012105013.tif 000003
【図２】
2012105013.tif 000004
【図３】
2012105013.tif 000005
【図４】
2012105013.tif 000006
【図５】
2012105013.tif 000007
【図６】
2012105013.tif 000008
【図７】
2012105013.tif 000009
【図８】
2012105013.tif 000010
【図９】
2012105013.tif 000011
【図１０】
2012105013.tif 000012
【図１１】
2012105013.tif 000013
【図１２】
2012105013.tif 000014
【図１３】
2012105013.tif 000015
【図１４】
2012105013.tif 000016
【図１５】
2012105013.tif 000017
【図１６】
2012105013.tif 000018
【図１７】
2012105013.tif 000019
【図１８】
2012105013.tif 000020
【図１９】
2012105013.tif 000021
【図２０】
2012105013.tif 000022
【図２１】
2012105013.tif 000023
【国際調査報告】
2012105013.tif 000024
2012105013.tif 000025
2012105013.tif 000026
2012105013.tif 000027