(57)【要約】【課題】シミュレーション入力データを容易に作成することが可能なシミュレーション入力データ作成方法等を提供する。【解決手段】ＲＴＬシミュレーション結果データ変換処理装置４１は、ネットリストシミュレーション入力データファイル１９を生成するために必要な情報の入力をユーザに促すとともにユーザからの情報の入力を受け付けるためのＲＴＬシミュレーション結果データ解析処理部５３と、ピンのＩ／Ｏ種別の入力を受け付けるためのＩ／Ｏ種別入力処理部５４と、ピンの名称の入力を受け付けるためのピン名称入力処理部５５と、ピンの属性の入力を受け付けるためのピン属性入力処理部５６、入力された情報を用いてＲＴＬシミュレーション結果データファイル１４をネットリストシミュレーション入力データファイル１９に変換するためのＲＴＬシミュレーション結果データ変換処理部５７とを含む。【選択図】図４
2009193101.tif 000002
【特許請求の範囲】
【請求項１】
設計対象回路のシミュレーションの入力データを作成するためにコンピュータが実行する方法であって、
設計対象回路に関して所定の第１の工程で行われる第１のシミュレーションの結果データに基づいて、前記第１のシミュレーションの結果データを前記第１の工程よりも後の第２の工程で行われる第２のシミュレーションの入力データに変換するために必要な情報を決定するステップと、
前記情報の入力をユーザに促すステップと、
前記情報の入力をユーザから受けるステップと、
前記情報を用いて、前記第１のシミュレーションの結果データを前記第２のシミュレーションの入力データに変換するステップと、
を含むことを特徴とする方法。
【請求項２】
請求項１において、
前記第１のシミュレーションの結果データに基づいて前記情報の入力のための参考となる参考情報を作成してユーザに提示するステップを含むことを特徴とする方法。
【請求項３】
請求項２において、
前記参考情報の作成として、前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量を遅延量毎に計数するステップと、
前記参考情報の提示として、前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量及び計数値を遅延量毎にユーザに提示するステップと、
前記第２のシミュレーションの入力データを作成するために前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々をサンプリングするタイミングを表す１つ又は複数の遅延量の入力をユーザから受けるステップと、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々をユーザによって入力された１つ又は複数の遅延量で表されるタイミングでサンプリングすることにより、前記第２のシミュレーションの入力データを作成するステップと、
を含むことを特徴とする方法。
【請求項４】
請求項２又は３において、
前記情報が、ピンの種別に関する第１の種類の情報と、前記第１の情報の値に応じて必要となる１つ又は複数のピンの属性に関する第２の種類の情報と、を含み、
前記第１の種類の情報の入力をユーザに促すステップと、
前記第１の種類の情報の入力をユーザから受けるステップと、
ユーザから入力された前記第１の種類の情報に応じて、前記第２の種類の情報の入力をユーザに促すステップと、
前記第２の種類の情報の入力をユーザから受けるステップと、
を含むことを特徴とする方法。
【請求項５】
請求項２乃至４のいずれかにおいて、
前記参考情報を作成するために前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号をサンプリングする周期を表す第１のサイクル・タイム、及び前記参考情報を作成するために前記第１のシミュレーションの結果データ内の１つ又は複数の出力ピンの信号を期待値として詳細にサンプリングするタイミングを表す第１のストローブ・タイムの入力をユーザから受けるステップと、
前記参考情報の作成として、前記第１のサイクル・タイム及び／又は前記第１のストローブ・タイムによって表されるタイミングで前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量を遅延量毎に計数するステップと、
前記参考情報の提示として、前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量及び計数値を遅延量毎にユーザに提示するステップと、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンの名称を一覧表示するステップと、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンのＩ／Ｏ種別に関する情報の入力をユーザに促すステップと、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンの各々のＩ／Ｏ種別に関する情報の入力をユーザから受けるステップと、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンの各々に関して、ユーザから入力されたＩ／Ｏ種別に関する情報に応じたピン属性に関する情報の入力をユーザに促すステップと、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンの各々のピン属性に関する情報の入力をユーザから受けるステップと、
前記第２のシミュレーションの入力データを作成するために前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号をサンプリングする周期を表す第２のサイクル・タイム、及び前記第２のシミュレーションの入力データを作成するために前記第１のシミュレーションの結果データ内の１つ又は複数の出力ピンの信号を期待値として詳細にサンプリングするタイミングを表す第２のストローブ・タイムの入力をユーザから受けるステップと、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々を前記ピン属性に関する情報、前記第２のサイクル・タイム、及び／又は、前記第２のストローブ・タイムで表されるタイミングでサンプリングすることにより、前記第２のシミュレーションの入力データを作成するステップと、
を含むことを特徴とする方法。
【請求項６】
請求項５において、
前記ピン属性に関する情報が、
前記第１のシミュレーションの結果データ内の１つ又は複数のピンの信号が第１の値である場合に、当該第１の値を当該第１の値と異なる第２の値に変換することを表す情報を含むことを特徴とする方法。
【請求項７】
請求項１乃至６のいずれかにおいて、
ユーザによって入力された前記情報をテンプレートとして記憶するステップと、
前記情報の入力の一部又は全部に代えて前記テンプレートを選択することをユーザから受け付けるステップと、
を含むことを特徴とする方法。
【請求項８】
設計対象回路のシミュレーションの入力データを作成するための装置であって、
設計対象回路に関して所定の第１の工程で行われる第１のシミュレーションの結果データに基づいて、前記第１のシミュレーションの結果データを前記第１の工程よりも後の第２の工程で行われる第２のシミュレーションの入力データに変換するために必要な情報を決定し、前記情報の入力をユーザに促し、前記情報の入力をユーザから受け、前記情報を用いて、前記第１のシミュレーションの結果データを前記第２のシミュレーションの入力データに変換することを特徴とする装置。
【請求項９】
設計対象回路のシミュレーションの入力データを作成するためにコンピュータに実行させるためのプログラムであって、
設計対象回路に関して所定の第１の工程で行われる第１のシミュレーションの結果データに基づいて、前記第１のシミュレーションの結果データを前記第１の工程よりも後の第２の工程で行われる第２のシミュレーションの入力データに変換するために必要な情報を決定する手順と、
前記情報の入力をユーザに促す手順と、
前記情報の入力をユーザから受ける手順と、
前記情報を用いて、前記第１のシミュレーションの結果データを前記第２のシミュレーションの入力データに変換する手順と、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計対象回路のシミュレーションの入力データを作成するためのシミュレーション入力データ作成方法及び装置及びプログラムに関する。
【背景技術】
【０００２】
半導体集積回路の設計は、一般に、システム設計（テクノロジ、パッケージ選択を含む）、ハードウェア記述言語（hardware description language）を用いた機能設計、機能シミュレーション、ＲＴＬシミュレーション、論理合成、ネットリストシミュレーション、テスト容易化設計、デザインルールチェック、スタティックタイミング解析、レイアウト、機能検証・解析、レイアウト後シミュレーション等を含む多数の工程を経て行われる。そして、複数の工程においてシミュレーションが行われる。
【０００３】
シミュレーションを行うためには、テストベンチやシミュレーション入力パターン（シミュレーション入力データ）をユーザ（半導体集積回路の設計技術者）が作成する必要がある。そして、複数の工程においてシミュレーションをそれぞれ行うためには、各シミュレーション毎にテストベンチやシミュレーション入力パターンをユーザが作成する必要がある。
【０００４】
関連する技術として、下記の特許文献１には、半導体装置のテストパタン生成方法等が掲載されている。
【０００５】
【特許文献１】特開２０００−３４７８９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
例えば、ＲＴＬシミュレーションの後にネットリストシミュレーションを行う場合、ネットリストシミュレーション入力パターン（ネットリストシミュレーション入力データ）をＲＴＬシミュレーションのテストベンチ（ＲＴＬシミュレーション入力データ）とは別に作成する必要があるが、ネットリストシミュレーションパターン（ネットリストシミュレーション入力データ）を容易に作成することが望まれている。
【０００７】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、第１の工程において第１のシミュレーションが、第１の工程よりも後の第２の工程において第２のシミュレーションがそれぞれ行われる場合に、第２のシミュレーションの入力データを容易に作成することが可能なシミュレーション入力データ作成方法及び装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、設計対象回路のシミュレーションの入力データを作成するためにコンピュータが実行する方法であって、設計対象回路に関して所定の第１の工程で行われる第１のシミュレーションの結果データに基づいて、第１のシミュレーションの結果データを第１の工程よりも後の第２の工程で行われる第２のシミュレーションの入力データに変換するために必要な情報を決定するステップと、情報の入力をユーザに促すステップと、情報の入力をユーザから受けるステップと、情報を用いて、第１のシミュレーションの結果データを第２のシミュレーションの入力データに変換するステップと、を含むことを特徴とする方法に関係する。
【０００９】
本発明によれば、第１のシミュレーションの結果データを第２のシミュレーションの入力データに変換できるので、第２のシミュレーションの入力データを容易に作成することができるようになる。
【００１０】
また、本発明では、第１のシミュレーションの結果データに基づいて情報の入力のための参考となる参考情報を作成してユーザに提示するステップを含んでいても良い。
【００１１】
このようにすれば、参考情報を参考としながら情報を入力することができるので、第２のシミュレーションの入力データをより容易に作成することができるようになる。
【００１２】
また、本発明では、参考情報の作成として、第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量を遅延量毎に計数するステップと、参考情報の提示として、第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量及び計数値を遅延量毎にユーザに提示するステップと、第２のシミュレーションの入力データを作成するために第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々をサンプリングするタイミングを表す１つ又は複数の遅延量の入力をユーザから受けるステップと、第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々をユーザによって入力された１つ又は複数の遅延量で表されるタイミングでサンプリングすることにより、第２のシミュレーションの入力データを作成するステップと、を含んでいても良い。
【００１３】
このようにすれば、１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量及び計数値を参考としながら情報を入力することができるので、第２のシミュレーションの入力データをより容易に作成することができるようになる。
【００１４】
また、本発明では、情報が、ピンの種別に関する第１の種類の情報と、第１の情報の値に応じて必要となる１つ又は複数のピンの属性に関する第２の種類の情報と、を含み、第１の種類の情報の入力をユーザに促すステップと、第１の種類の情報の入力をユーザから受けるステップと、ユーザから入力された第１の種類の情報に応じて、第２の種類の情報の入力をユーザに促すステップと、第２の種類の情報の入力をユーザから受けるステップと、を含んでいても良い。
【００１５】
このようにすれば、ピンの種別に関する第１の種類の情報に応じてピンの属性に関する第２の種類の情報の入力を促すことができるので、第２のシミュレーションの入力データをより容易に作成することができるようになる。
【００１６】
また、本発明では、参考情報を作成するために第１のシミュレーションの結果データ内の１つ又は複数のピンの信号をサンプリングする周期を表す第１のサイクル・タイム、及び参考情報を作成するために第１のシミュレーションの結果データ内の１つ又は複数の出力ピンの信号を期待値として詳細にサンプリングするタイミングを表す第１のストローブ・タイムの入力をユーザから受けるステップと、参考情報の作成として、第１のサイクル・タイム及び／又は第１のストローブ・タイムによって表されるタイミングで第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量を遅延量毎に計数するステップと、参考情報の提示として、第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量及び計数値を遅延量毎にユーザに提示するステップと、第１のシミュレーションの結果データ内の１つ又は複数のピンの名称を一覧表示するステップと、第１のシミュレーションの結果データ内の１つ又は複数のピンのＩ／Ｏ種別に関する情報の入力をユーザに促すステップと、第１のシミュレーションの結果データ内の１つ又は複数のピンの各々のＩ／Ｏ種別に関する情報の入力をユーザから受けるステップと、第１のシミュレーションの結果データ内の１つ又は複数のピンの各々に関して、ユーザから入力されたＩ／Ｏ種別に関する情報に応じたピン属性に関する情報の入力をユーザに促すステップと、第１のシミュレーションの結果データ内の１つ又は複数のピンの各々のピン属性に関する情報の入力をユーザから受けるステップと、第２のシミュレーションの入力データを作成するために第１のシミュレーションの結果データ内の１つ又は複数のピンの信号をサンプリングする周期を表す第２のサイクル・タイム、及び第２のシミュレーションの入力データを作成するために第１のシミュレーションの結果データ内の１つ又は複数の出力ピンの信号を期待値として詳細にサンプリングするタイミングを表す第２のストローブ・タイムの入力をユーザから受けるステップと、第１のシミュレーションの結果データ内の１つ又は複数のピンの信号の各々をピン属性に関する情報、第２のサイクル・タイム、及び／又は、第２のストローブ・タイムで表されるタイミングでサンプリングすることにより、第２のシミュレーションの入力データを作成するステップと、を含んでいても良い。
【００１７】
このようにすれば、１つ又は複数のピンの信号の各々に関して１つ又は複数の遅延量及び計数値を参考としながら情報を入力することができ、ピンのＩ／Ｏ種別に関する第１の種類の情報に応じてピン属性に関する第２の種類の情報の入力を促すことができるので、第２のシミュレーションの入力データをより容易に作成することができるようになる。
【００１８】
また、本発明では、ピン属性に関する情報が、第１のシミュレーションの結果データ内の１つ又は複数のピンの信号が第１の値である場合に、当該第１の値を当該第１の値と異なる第２の値に変換することを表す情報を含んでいても良い。
【００１９】
このようにすれば、第１のシミュレーションの結果データ内の１つ又は複数のピンの信号が第１の値である場合に、当該第１の値を当該第１の値と異なる第２の値に変換することができるようになり、第２のシミュレーションの入力データをより容易に作成することができるようになる。
【００２０】
また、本発明では、ユーザによって入力された前記情報をテンプレートとして記憶するステップと、情報の入力の一部又は全部に代えてテンプレートを選択することをユーザから受け付けるステップと、を含んでいても良い。
【００２１】
このようにすれば、後に設計対象回路に対して別のテストパターン（テストベンチ）で再度第２のシミュレーションを行う場合に、情報の入力の手間を削減することができるようになる。
【００２２】
また、本発明は、設計対象回路のシミュレーションの入力データを作成するための装置であって、設計対象回路に関して所定の第１の工程で行われる第１のシミュレーションの結果データに基づいて、第１のシミュレーションの結果データを第１の工程よりも後の第２の工程で行われる第２のシミュレーションの入力データに変換するために必要な情報を決定し、情報の入力をユーザに促し、情報の入力をユーザから受け、情報を用いて、第１のシミュレーションの結果データを第２のシミュレーションの入力データに変換することを特徴とする装置に関係する。
【００２３】
本発明によれば、第１のシミュレーションの結果データを第２のシミュレーションの入力データに変換できるので、第２のシミュレーションの入力データを容易に作成することができるようになる。
【００２４】
また、本発明は、設計対象回路のシミュレーションの入力データを作成するためにコンピュータに実行させるためのプログラムであって、設計対象回路に関して所定の第１の工程で行われる第１のシミュレーションの結果データに基づいて、第１のシミュレーションの結果データを第１の工程よりも後の第２の工程で行われる第２のシミュレーションの入力データに変換するために必要な情報を決定する手順と、情報の入力をユーザに促す手順と、情報の入力をユーザから受ける手順と、情報を用いて、第１のシミュレーションの結果データを第２のシミュレーションの入力データに変換する手順と、をコンピュータに実行させるためのプログラムに関係する。
【００２５】
本発明によれば、第１のシミュレーションの結果データを第２のシミュレーションの入力データに変換できるので、第２のシミュレーションの入力データを容易に作成することができるようになる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施形態について詳細に説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。また同一の構成要素には同一の参照番号を付して説明を省略する。
【００２７】
１．  比較例
図１及び図２に本実施形態の比較例を示す。これらの比較例は、ＲＴＬ（register transfer level）設計工程（ＲＴＬシミュレーションを含む。）〜ネットリスト設計工程（ネットリストシミュレーションを含む。）の工程を処理するための半導体集積回路の設計システムの例である。
【００２８】
１．１  第１の比較例
図１の第１の比較例１０は、ＲＴＬ記述ファイル１１、テストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２、ＲＴＬシミュレーション処理装置１３、ＲＴＬシミュレーション結果データファイル１４、ＲＴＬシミュレーション結果波形表示処理装置１５、表示装置１６、論理合成処理装置１７、ネットリストファイル１８、シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９、ネットリストシミュレーション処理装置２０、ネットリストシミュレーション結果データファイル２１を含む。
【００２９】
ＲＴＬ記述ファイル１１及びテストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２は、ユーザ（半導体集積回路の設計技術者）がエディタ等を利用することにより、作成される。
【００３０】
ＲＴＬシミュレーション処理装置（ＲＴＬシミュレータ）１３は、ＲＴＬ記述ファイル１１及びテストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２を参照してＲＴＬシミュレーション処理を行い、ＲＴＬシミュレーション結果データファイル１４を生成する。
【００３１】
ＲＴＬシミュレーション結果波形表示処理装置１５は、ＲＴＬシミュレーション結果データファイル１４を参照してＲＴＬシミュレーション結果の波形を表示装置１６に表示させる。
【００３２】
論理合成処理装置１７は、ＲＴＬ記述ファイル１１を参照して論理合成処理を行い、ネットリストファイル１８を生成する。
【００３３】
シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９は、ユーザがエディタ等を利用してテストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２に変更を加えることにより、作成される。
【００３４】
ネットリストシミュレーション処理装置２０は、ネットリストファイル１８及びシミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９を参照してネットリストシミュレーション処理を行い、ネットリストシミュレーション結果データファイル２１を生成する。
【００３５】
この第１の比較例１０では、ユーザがシミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９を作成する必要があるが、シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９を作成する作業は非常に作業量が多いため、ユーザの負担が大きい。
【００３６】
１．２  第２の比較例
図２の第２の比較例３０は、ＲＴＬ記述ファイル１１、テストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２、ＲＴＬシミュレーション処理装置１３、ＲＴＬシミュレーション結果データファイル１４、ＲＴＬシミュレーション結果波形表示処理装置１５、表示装置１６、論理合成処理装置１７、ネットリストファイル１８、シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９、ネットリストシミュレーション処理装置２０、ネットリストシミュレーション結果データファイル２１、変換条件ファイル３１、ＲＴＬシミュレーション結果データ変換処理装置３２を含む。
【００３７】
変換条件ファイル３１は、ＲＴＬシミュレーション結果データファイル１４をシミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９に変換するための変換条件を記述したファイルであり、ユーザがエディタ等を利用することにより、作成される。
【００３８】
ＲＴＬシミュレーション結果データ変換処理装置３２は、変換条件ファイル３１を参照してＲＴＬシミュレーション結果データファイル１４を変換し、シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９を生成する。
【００３９】
この第２の比較例３０では、ユーザが変換条件ファイル３１を作成する必要があるが、変換条件ファイル３１を作成することは非常に難しい作業であるため、ユーザの負担が大きい。
【００４０】
２．  構成
図３に、以上のような問題を解決できる本実施形態の半導体集積回路の設計システムの構成例を示す。本実施形態は、ＲＴＬ設計工程（広義には、第１の工程。ＲＴＬシミュレーション（広義には、第１のシミュレーション）を含む。）〜ネットリスト設計工程（広義には、第２の工程。ネットリストシミュレーション（広義には、第２のシミュレーション）を含む。）の工程を処理するための半導体集積回路の設計システムの例である。
【００４１】
図３の半導体集積回路の設計システム４０は、ＲＴＬ記述ファイル１１、テストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２、ＲＴＬシミュレーション処理装置（ＲＴＬシミュレータ）１３、ＲＴＬシミュレーション結果データファイル（以下、「ＶＣＤファイル」とも言う。）１４、ＲＴＬシミュレーション結果波形表示処理装置１５、表示装置１６、論理合成処理装置１７、ネットリストファイル１８、シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル（以下、「ＡＰＦファイル」とも言う。）１９、ネットリストシミュレーション処理装置２０、ＲＴＬシミュレーション結果データ変換処理装置４１を含む。
【００４２】
ＲＴＬシミュレーション結果データ変換処理装置４１は、ＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４を解析して、ＡＰＦファイル（シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル）１９を生成するために必要な情報の入力をユーザに促し、ユーザによって入力された情報を用いてＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４をＡＰＦファイル（シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル）１９に変換する。
【００４３】
図４に、ＲＴＬシミュレーション結果データ変換処理装置４１の内部構成例を示す。図４に示すように、ＲＴＬシミュレーション結果データ変換処理装置４１は、入力部５１、表示部５２、ＲＴＬシミュレーション結果データ解析処理部５３、Ｉ／Ｏ種別入力処理部５４、ピン名称入力処理部５５、ピン属性入力処理部５６、ＲＴＬシミュレーション結果データ変換処理部５７を含む。
【００４４】
なお、ＲＴＬシミュレーション結果データ変換処理装置４１は図４の構成に限定されず、その構成要素の一部を省略したり、構成要素間の接続形態を変更したり、図４とは異なる構成要素を追加する変形実施が可能である。例えば、ＲＴＬシミュレーション結果データ変換処理装置４１において、入力部５１や表示部５２の構成を省いて、ネットワーク（インターネット、イントラネット等）経由でクライアント端末（ＰＣ等）から入力を受け付けたりクライアント端末に画像を表示させたりしても良い。またＲＴＬシミュレーション結果データ変換処理装置４１において、図４に示されるもの以外の構成要素（例えばプリンタ等）を追加してもよい。また、ＲＴＬシミュレーション結果データ変換処理装置４１をコンピュータとソフトウェア（プログラム）で構成することができる。
【００４５】
ＲＴＬシミュレーション結果データ解析処理部５３は、ＡＰＦファイル（シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル）１９を生成するために必要な情報の入力をユーザに促すとともにユーザからの情報の入力を受け付けるための画面を表示部５２に表示させる。
【００４６】
Ｉ／Ｏ種別入力処理部５４は、ＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４を解析し、シミュレーション対象の半導体集積回路のピン（端子）のＩ／Ｏ種別（広義には、第１の種類の情報）の入力をユーザに促すとともにユーザからピンのＩ／Ｏ種別の入力を受け付ける。
【００４７】
ピン名称入力処理部５５は、ＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４を解析し、シミュレーション対象の半導体集積回路のピン（端子）の名称（広義には、第２の種類の情報）の変更又は入力をユーザに促すとともにユーザからのピンの名称の変更又は入力を受け付ける。
【００４８】
ピン属性入力処理部５６は、ＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４を解析し、シミュレーション対象の半導体集積回路のピン（端子）の属性（信号の遅延量や出力イネーブル信号等（後述）であり、広義には、第２の種類の情報）の入力をユーザに促すとともにユーザからのピンの属性の入力を受け付ける。
【００４９】
ＲＴＬシミュレーション結果データ変換処理部５７は、ユーザによって入力された情報を用いてＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４をＡＰＦファイル（シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル）１９に変換する。
【００５０】
３．  シミュレーション対象の半導体集積回路例
図５に、シミュレーション対象（設計対象）の半導体集積回路の例を示す。図５に示すシミュレーション対象の半導体集積回路である実ＡＳＩＣ（実チップ）６０は、ＡＳＩＣモジュール６１、双方向モジュール６２を含む。実ＡＳＩＣ（実チップ）６０は、外部のクロック・リセットモジュール９１、ＣＰＵモジュール９２、ＲＡＭモジュール９３、ＣＰＵバス９４、周辺ＩＣモジュール９５に接続される。
【００５１】
ＡＳＩＣモジュール６１は、機能ブロック７０、ＢＩＮピン７１、ＥＮピン７２、ＤＴ［１：０］ピン７３、ＣＬＫピン７４、ＲＳＴピン７５、ＢＯＵＴピン７６、ＢＩＤピン７７、ＯＵＴピン７８、ＯＤピン７９を含む。
【００５２】
ＣＬＫピン７４、ＲＳＴピン７５には、ＣＬＫ信号（クロック信号）、ＲＳＴ信号（リセット信号）がクロック・リセットモジュール９１から供給される。なお、ＣＬＫ信号、ＲＳＴ信号は、ＣＰＵモジュール９２にも供給される。
【００５３】
ＤＴ［１：０］ピン７３には、２ビット幅のＤＴ［１：０］信号（データ信号）がＣＰＵバス９４を介してＣＰＵモジュール９２又はＲＡＭモジュール９３から供給される。
【００５４】
ＥＮピン７２には、ＥＮ信号（イネーブル信号）がＣＰＵモジュール９２から供給される。
ＢＩＮピン７１には、ＢＩＮ信号が双方向モジュール６２から供給される。
ＢＩＤピン７７には、条件、タイミングにより、周辺ＩＣモジュール９５から信号が供給される。
【００５５】
機能ブロック７０は、ＢＩＮピン７１、ＥＮピン７２、ＤＴ［１：０］ピン７３、ＣＬＫピン７４、ＲＳＴピン７５、ＢＩＤピン７７から供給される信号に基づいて動作し、ＢＯＵＴ信号をＢＯＵＴピン７６に、ＢＩＤ信号をＢＩＤピン７７に、ＯＵＴ信号をＯＵＴピン７８に、ＯＤ信号をＯＤピン７９に出力する。
【００５６】
双方向モジュール６２は、オン／オフ機能を有するバッファ８１、バッファ８２、ＢＩＤピン８３を含む。
【００５７】
バッファ８１の制御入力には、ＡＳＩＣモジュール６１のＥＮピン７２のＥＮ信号が供給される。バッファ８１は、ＥＮ信号がローレベルのときにオン状態となり、ＢＯＵＴピン７６のＢＯＵＴ信号をバッファ８２及びＢＩＤピン８３に出力する。
ＢＩＤピン８３には、条件、タイミングにより、周辺ＩＣモジュール９５から信号が供給される。
【００５８】
バッファ８２は、バッファ８１の出力信号又はＢＩＤピン８３の信号をＡＳＩＣモジュール６１のＢＩＮピン７１に出力する。
【００５９】
実ＡＳＩＣ（実チップ）６０をＲＴＬ記述したファイルが、図３のＲＴＬ記述ファイル１１に相当する。ＲＴＬシミュレーション処理装置（ＲＴＬシミュレータ）１３は、ＲＴＬ記述ファイル１１及びテストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２を参照してＲＴＬシミュレーション処理を行い、ＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４を生成する。
【００６０】
図６〜図７に、ＶＣＤ（ＲＴＬシミュレーション結果データ）の例を示す。このＶＣＤ（ＲＴＬシミュレーション結果データ）は１２９行を有している。
【００６１】
第１〜第３行は、ＶＣＤ（ＲＴＬシミュレーション結果データ）が生成された日付を表している。
第４〜第６行は、ＶＣＤ（ＲＴＬシミュレーション結果データ）のバージョン（ＲＴＬシミュレータのバージョン）を表している。
第７〜第９行は、タイムスケールが１ｎｓ（１ナノ秒）であることを表している。
【００６２】
第１１〜第２６行は、シミュレーション対象の半導体集積回路のモジュールや信号の定義を表している。ここでは、「ＴＢ」（第１１行参照）というモジュールが存在し、その中に「Ｉ＿ＳＡＭＰＬＥ」（第１３行参照）というモジュールが存在し、その中にＲＳＴ、ＣＬＫ、ＥＮ、ＢＩＮ、ＤＴ［１：０］、ＯＵＴ、ＢＯＵＴ、ＯＤ、ＢＩＤ、Ｒ＿ＢＯ１（第１４〜第２３行参照）という信号があることを表している。例えば、第１４行は、ＲＳＴ信号が１ビット幅であり記号「！」で示されることを表している。また、例えば、第１８行は、ＤＴ［１：０］信号が２ビット幅であり記号「％」で示されることを表している。なお、第２３行に示されているＲ＿ＢＯ１信号は、図５に示す機能ブロック７０の内部信号であり、図５には記載されていない。
【００６３】
再び図６を参照すると、第２８行は、各種の定義が終了したことを表している。
第２９行は、信号の初期値を表している。例えば、第３０行は、ＲＳＴ信号の初期値が「０」であることを表している。また、例えば、第３４行は、ＤＴ［１：０］信号の初期値が「０ｂ１１」であることを表している。
【００６４】
第４１行以降は、信号の変化したタイミングと、変化した信号名及びその値と、を順次表している。例えば、第４１行は、初期時（シミュレーションの時間的な原点）から５タイムスケール後（ここでは、５ｎｓ後）にいずれかの信号が変化したことを表している。また、例えば、第４２行は、ＲＳＴ信号が「１」に変化したことを表しており、第４３行は、ＣＬＫ信号が「０」に変化したことを表している。
【００６５】
また、第４４行は、初期時から１０タイムスケール後（ここでは、１０ｎｓ後）にいずれかの信号が変化したことを表している。また、例えば、第４５行は、ＣＬＫ信号が「１」に変化したことを表しており、第４６行は、Ｒ＿ＢＯ１信号が「１」に変化したことを表しており、第４７行は、ＯＤ信号が「１」に変化したことを表しており、第４８行は、ＢＩＤ信号が「１」に変化したことを表している。
以降の行も、上記と同様である。
【００６６】
再び図３を参照すると、ＲＴＬシミュレーション結果波形表示処理装置１５は、ＶＣＤファイル（ＲＴＬシミュレーション結果データファイル）１４を参照してＲＴＬシミュレーション結果の波形を表示装置１６に表示させる。
【００６７】
図８に、図６〜図７のＶＣＤ（ＲＴＬシミュレーション結果データ）に基づいて表示装置１６に表示される実ＡＳＩＣ（実チップ）６０のＲＴＬシミュレーション結果の波形の例を示す。
【００６８】
４．  動作
次に、図３に示すＲＴＬシミュレーション結果データ変換処理装置４１の動作について説明する。
【００６９】
図９は、ＲＴＬシミュレーション結果データ変換処理装置４１の動作を示すフローチャートである。
まず、ＲＴＬシミュレーション結果データ解析処理部５３が、ＶＣＤ（ＲＴＬシミュレーション結果データ）ファイルをＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））ファイル１９に変換するために必要な情報の入力をユーザに促すとともにユーザからの情報の入力を受け付けるための初期画面を表示部５２に表示させる（ステップＳ１０１）。
【００７０】
図１０に、表示部５２に表示される画面の例を示す。この画面１００は、領域１１０と、領域１２０と、を含んでいる。
【００７１】
領域１１０は、ＶＣＤ（ＲＴＬシミュレーション結果データ）ファイルを指定又は入力するための入力欄１１１と、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））の対象モジュールのインスタンスを指定又は入力するための入力欄１１２と、ユーザへの参考情報（後述）を作成するためにＶＣＤ（ＲＴＬシミュレーション結果データ）をサンプリングする周期を表すサイクル・タイム（広義には、第１のサイクル・タイム）を入力するための入力欄１１３と、ユーザへの参考情報（後述）を作成するために出力信号を期待値として詳細にサンプリングするタイミングを表すストローブ・タイム（広義には、第１のストローブ・タイム）を入力するための入力欄１１４と、を含んでいる。
【００７２】
領域１２０は、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））を作成するためにＶＣＤ（ＲＴＬシミュレーション結果データ）をサンプリングする周期を表すサイクル・タイム（広義には、第２のサイクル・タイム）を入力するための入力欄１２１と、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））を作成するためにＶＣＤ（ＲＴＬシミュレーション結果データ）の出力信号を期待値として詳細にサンプリングするタイミングを表すストローブ・タイム（広義には、第２のストローブ・タイム）を入力するための入力欄１２２と、ユーザによって入力される遅延量（後述）に乗じる遅延倍数を入力するための入力欄１２３と、ＶＣＤ（ＲＴＬシミュレーション結果データ）の解析情報（参考情報）を表示してユーザに提示したりユーザが各種の情報を入力するためのテーブル１２４と、を含んでいる。テーブル１２４は、ＶＣＤ（ＲＴＬシミュレーション結果データ）の解析情報（参考情報）を表示するためのＲＴＬシミュレーション結果データ解析情報表示領域と、ピンのＩ／Ｏ種別を入力するためのＩ／Ｏ種別入力領域と、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））のピンの名称を入力するためのピン名称入力領域と、ピンの属性（遅延、出力イネーブル等）を入力するためのピン属性入力領域と、コメントを表示するためのコメント表示領域と、を含んでいる。
【００７３】
ユーザ（半導体集積回路の設計技術者）は、ＶＣＤ（ＲＴＬシミュレーション結果データ）ファイル名（ここでは、「H:\for_Ext_ASIC_HP\DesignKit\Patent\tb.vcd」とする。）を入力欄１１１に指定又は入力し、トップ・モジュールのインスタンス（ここでは、「TB.I_SAMPLE」とする。）を入力欄１１２に指定又は入力し、ＶＣＤ（ＲＴＬシミュレーション結果データ）のサイクル・タイム（ここでは、「１０」とする。）を入力欄１１３に入力し、ストローブ・タイム（ここでは、「９」とする。）を入力欄１１４に入力する。
【００７４】
図１１に、ユーザがＶＣＤ（ＲＴＬシミュレーション結果データ）ファイル名等を入力した画面の例を示す。ここで、ユーザは、領域１１０内の「ＶＣＤ解析」ボタンを押下する。
【００７５】
ＲＴＬシミュレーション結果データ解析処理部５３は、領域１１０内の「ＶＣＤ解析」ボタンが押下されると、入力欄１１１〜１１４に入力された情報に基づいて、ＶＣＤ（ＲＴＬシミュレーション結果データ）の解析処理を行う（ステップＳ１０２）。詳細には、ＲＴＬシミュレーション結果データ解析処理部５３は、入力欄１１３に入力されたサイクル・タイム（ここでは、「１０」）と入力欄１１４に入力されたストローブ・タイム（ここでは、「９」）の周期で、入力欄１１１に入力されたＶＣＤ（ＲＴＬシミュレーション結果データ）ファイル内の入力欄１１２に入力されたインスタンスのモジュール（ここでは、「Ｉ＿ＳＡＭＰＬＥ」）の信号（ここでは、ＲＳＴ、ＣＬＫ、ＥＮ、ＢＩＮ、ＤＴ［１：０］、ＯＵＴ、ＢＯＵＴ、ＯＤ、ＢＩＤ、Ｒ＿ＢＯ１）をサンプリングする。そして、ＲＴＬシミュレーション結果データ解析処理部５３は、各信号毎に、遅延量の最小値、遅延量の最大値、遅延量の内の最も頻出した遅延量とその出現回数、遅延量の内の２番目に頻出した遅延量とその出現回数、遅延量の内の３番目に頻出した遅延量とその出現回数を計数する。
【００７６】
そして、ＲＴＬシミュレーション結果データ解析処理部５３は、解析処理の結果（参考情報）をテーブル１２４のＲＴＬシミュレーション結果データ解析情報表示領域内に表示する（ステップＳ１０３）。
【００７７】
図１２に、ＶＣＤ（ＲＴＬシミュレーション結果データ）の解析結果（参考情報）が表示された画面の例を示す。図１２に示すように、テーブル１２４のＲＴＬシミュレーション結果データ解析情報表示領域内の行方向には、ＶＣＤ（ＲＴＬシミュレーション結果データ）内の複数のピン名がそれぞれ表示されており、列方向には、各ピンの遅延量の最小値、遅延量の最大値、遅延量の内の最も頻出した遅延量とその出現回数、遅延量の内の２番目に頻出した遅延量とその出現回数、遅延量の内の３番目に頻出した遅延量とその出現回数がそれぞれ表示されている。
【００７８】
このとき、テーブル１２４のＲＴＬシミュレーション結果データ解析情報表示領域を強調表示（例えば、緑色表示等）すると好適である。これにより、ユーザはテーブル１２４のＲＴＬシミュレーション結果データ解析情報表示領域がＶＣＤ（ＲＴＬシミュレーション結果データ）の解析結果（参考情報）が表示されている領域であると容易に識別できる。
【００７９】
また、図１２に示すように、テーブル１２４のＩ／Ｏ種別入力領域を強調表示（例えば、赤色表示等）するようにすると好適である。これにより、Ｉ／Ｏ種別の入力をユーザに強く促すことができる。Ｉ／Ｏ種別は入力必須項目であり、本実施形態においては、このＩ／Ｏ種別のような必須項目を入力する欄を赤色に強調表示するものとする。
【００８０】
また、図１２に示すように、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））におけるピン名称の候補として、ＶＣＤ（ＲＴＬシミュレーション結果データ）におけるピン名称をテーブル１２４のピン名称入力領域に表示すると好適である。これにより、ＶＣＤ（ＲＴＬシミュレーション結果データ）におけるピン名称をＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））において流用する場合に、ピン名称の入力ミスを防ぐとともにユーザの入力負担を軽減することができる。
【００８１】
なお、図１２においては、テーブル１２４のコメント表示領域にＥｒｒｏｒ（エラー）が表示されている。これは、テーブル１２４のＩ／Ｏ種別入力領域にピンのＩ／Ｏ種別が未だ入力されていないためである。このとき、テーブル１２４のコメント表示領域を強調表示（例えば、ピンク色表示等）すると好適である。これにより、ユーザの注意をエラー表示に惹くことができる。
【００８２】
ここで、不要なピンに関する行を削除できるようにしても良い。例えば、図５に示すシミュレーション対象回路例では、先に説明したように、Ｒ＿ＢＯ１信号は機能ブロック７０の内部信号であり、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））には不要である。そこで、ユーザがＲ＿ＢＯ１信号に関する行を選択して削除できるようにしても良い。また、テーブル１２４内においてピンを見易くグループ分けするため、ユーザが空白行を挿入したり行を入れ替えることができるようにしても良い。また、ユーザがＶＣＤ（ＲＴＬシミュレーション結果データ）には無いピンを追加できるようにしても良い。
【００８３】
ユーザは、入力必須項目であるピンのＩ／Ｏ種別をテーブル１２４のＩ／Ｏ種別入力領域に入力する。
【００８４】
図１３に示すように、本実施形態においては、Ｉ／Ｏ種別の種類は（１）Ｉ、（２）Ｐ、（３）Ｎ、（４）Ｏ、（５）Ｂ、（６）Ｂｏ、（７）Ｂｉの７種類が設定できるものとする。
【００８５】
種別Ｉは、非周期的に変化する信号が入力される（ＮＲＺ入力）ピンの意である。ＲＴＬシミュレーション結果データ解析処理部５３は、種別Ｉが入力されたピンに関して、１つの遅延（遅延１）の入力を必須項目として促す。
【００８６】
種別Ｐは、周期的に変化する信号であってハイレベルから始まる信号が入力される（ＲＺ入力）ピンの意である。ＲＴＬシミュレーション結果データ解析処理部５３は、種別Ｐが入力されたピンに関して、２つの遅延（遅延１、遅延２）の入力を必須項目として促す。
【００８７】
種別Ｎは、周期的に変化する信号であってローレベルから始まる信号が入力される（ＲＺ入力）ピンの意である。ＲＴＬシミュレーション結果データ解析処理部５３は、種別Ｎが入力されたピンに関して、２つの遅延（遅延１、遅延２）の入力を必須項目として促す。
【００８８】
種別Ｏは、出力信号ピンの意である。ＲＴＬシミュレーション結果データ解析処理部５３は、種別Ｏが入力されたピンに関して、何らの入力も促さない。
【００８９】
種別Ｂは、双方向ピンの意である。例えば、図５に示すＢＩＤピン８３が種別Ｂに該当する。ＲＴＬシミュレーション結果データ解析処理部５３は、種別Ｂが入力されたピンに関して、１つの遅延（遅延１）と出力イネーブル信号の入力を必須項目として促す。
【００９０】
種別Ｂｏは、双方向用出力ピンの意である。例えば、図５に示すＢＯＵＴピン７６が種別Ｂｏに該当する。ＲＴＬシミュレーション結果データ解析処理部５３は、種別Ｂｏが入力されたピンに関して、出力イネーブル信号の入力を必須項目として促す。
【００９１】
種別Ｂｉは、双方向用ＮＲＺ入力ピンの意である。例えば、図５に示すＢＩＮピン７１が種別Ｂｉに該当する。ＲＴＬシミュレーション結果データ解析処理部５３は、種別Ｂｉが入力されたピンに関して、１つの遅延（遅延１）の入力を必須項目として促す。
【００９２】
再び図９を参照すると、Ｉ／Ｏ種別入力処理部５４は、Ｉ／Ｏ種別の入力を受け付ける（ステップＳ１０４）。このとき、Ｉ／Ｏ種別入力処理部５４は、入力されたＩ／Ｏ種別の入力欄の強調表示（ここでは、赤色表示）を解消する。
【００９３】
次に、ピン名称入力処理部５５は、ピン名称の入力を受け付ける（ステップＳ１０５）。なお、このとき、ピン名称入力処理部５５は、ＡＰＦピン名称がＡＰＦのピン名称ルールに違反していないかどうかをチェックし、違反している場合には該ピン名称入力欄を強調表示（例えば、赤色表示）し、違反が解消されると強調表示（ここでは、赤色表示）を解消する。
【００９４】
次に、ピン属性入力処理部５６は、遅延量、オプション等を含むピン属性の入力を受け付ける（ステップＳ１０６）。なお、このとき、ピン属性入力処理部５６は、ピン属性として入力が必須である欄を強調表示（例えば、赤色表示）し、ピン属性が入力されると強調表示（ここでは、赤色表示）を解消する。また、ＶＣＤ（ＲＴＬシミュレーション結果データ）を解析した結果、信号の遅延量が一義的に決まる場合は、その値を候補値として遅延１入力欄又は遅延２入力欄に表示するようにしても良い。
【００９５】
ユーザは、テーブル１２４のＲＴＬシミュレーション結果データ解析情報表示領域内に表示された情報（参考情報）を参考にして、遅延量等を入力することができる。例えば、ユーザは、ＣＬＫ信号はその参考情報からＲＺ信号であり最初の変化が時刻（タイムスケール）０で次の変化が時刻（タイムスケール）５であることを容易に判断でき、この参考情報を基に適切な遅延量を入力することができる。また、ユーザは、ＤＴ［１：０］信号のように複数のモジュール（図５では、ＣＰＵモジュール９２、ＲＡＭモジュール９３）から信号が入力される等により入力タイミングが複数ある信号の場合についても、テーブル１２４のＲＴＬシミュレーション結果データ解析情報表示領域内に表示された情報（参考情報）から適切な遅延量を入力することが可能である。
【００９６】
ここで入力された遅延量は、ＶＣＤ（ＲＴＬシミュレーション結果データ）をＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））に変換するときに、各信号のＶＣＤ（ＲＴＬシミュレーション結果データ）に記録されている値をサンプリングする時刻になる。
【００９７】
図１４に、ユーザがＩ／Ｏ種別、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））ピン名、遅延１、遅延２、出力イネーブル信号をテーブル１２４のＩ／Ｏ種別入力領域、ピン名称入力領域、ピン属性入力領域に入力した画面の例を示す。
【００９８】
図１４においては、ＥＮ及びＯＤのＩ／Ｏ種別が未だ入力されていないので、ＥＮ及びＯＤのＩ／Ｏ種別入力欄が強調表示（ここでは、赤色表示）されている。また、ＤＴ［１］及びＤＴ［０］がＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））のピン名称ルールに違反しているので、ＤＴ［１］及びＤＴ［０］のピン名称の修正を促すために、ＤＴ［１］及びＤＴ［０］のピン名称入力欄が強調表示（ここでは、赤色表示）されている。また、ＲＳＴの遅延１が未だ入力されていないので、ＲＳＴの遅延１の入力欄が強調表示（ここでは、赤色表示）されている。また、ＣＬＫの遅延２が未だ入力されていないので、ＣＬＫの遅延２の入力欄が強調表示（ここでは、赤色表示）されている。また、ＢＯＵＴの出力イネーブル信号名が未だ入力されていないので、ＢＯＵＴの出力イネーブル信号名の入力欄が強調表示（ここでは、赤色表示）されている。また、ＢＯＵＴ及びＢＩＮのピン名称入力欄並びにＤＴ［１］の遅延１が注意を喚起する強調表示（ここでは、黄色表示）されている。
【００９９】
図１５に、ユーザがＥＮ及びＯＤのＩ／Ｏ属性の入力、ＤＴ［１］及びＤＴ［０］のピン名称の修正、ＲＳＴの遅延１の入力、ＣＬＫの遅延２の入力、及び、ＢＯＵＴの出力イネーブル信号名の入力を行ったときの画面の例を示す。図１５においては、ＥＮ及びＯＤのＩ／Ｏ種別入力欄、ＤＴ［１］及びＤＴ［０］のピン名称入力欄、ＲＳＴの遅延１の入力欄、ＣＬＫの遅延２の入力欄、及び、ＢＯＵＴの出力イネーブル信号名の入力欄の強調表示（ここでは、赤色表示）が解消されている。次に説明するオプションが不要な場合には、これにて入力を終了することができる。
【０１００】
なお、図１５において、ＤＴ１の遅延１の入力欄が強調表示（ここでは、黄色表示）されている。その理由は、ＶＣＤ（ＲＴＬシミュレーション結果データ）を解析した結果のＤＴ１（ＤＴ［１］）の最大遅延値（ここでは、「４」）よりも小さな値（ここでは、「０」）がＤＴ１の遅延１の入力欄に入力されているためである。このように、ＶＣＤ（ＲＴＬシミュレーション結果データ）を解析した結果のＤＴ１（ＤＴ［１］）の最大遅延値（ここでは、「４」）よりも小さな値（ここでは、「０」）が遅延１（又は遅延２）に設定されると、設定された遅延１（又は遅延２）よりも大きな遅延で入力が変化するサイクルにおいて、変化前の状態がサンプリングされるため、変換後のＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））では、信号の変化が次のサイクルになってしまうことになる。この注意を喚起する意味で、ＤＴ１の遅延１の入力欄が強調表示（ここでは、黄色表示）されている。なお、ＤＴ１の遅延１の入力欄が赤色表示されていないのは、ユーザが意図的にそのような値を設定する場合があるためである。
【０１０１】
図１６に示すように、本実施形態においては、オプションとして、（１）「ｘ」、（２）「ｚ」、（３）「０」、（４）「１」を利用することができるものとする。
【０１０２】
オプション「ｘ」は入力ピンに設定することができるオプションであり、「０」又は「１」を設定することができる。オプション「ｘ」として「０」が設定されている場合には、ＶＣＤ（ＲＴＬシミュレーション結果データ）において該入力ピンに入力される信号の値が「ｘ」（不定）である場合に「ｘ」を「０」（ローレベル）に変換する。また、オプション「ｘ」として「１」が設定されている場合には、ＶＣＤ（ＲＴＬシミュレーション結果データ）において該入力ピンに入力される信号の値が「ｘ」（不定）である場合に「ｘ」を「１」（ハイレベル）に変換する。
【０１０３】
オプション「ｚ」は入力ピンに設定することができるオプションであり、「０」又は「１」を設定することができる。オプション「ｚ」として「０」が設定されている場合には、ＶＣＤ（ＲＴＬシミュレーション結果データ）において該入力ピンに入力される信号の値が「ｚ」（ハイインピーダンス）である場合に「ｚ」を「０」（ローレベル）に変換する。また、オプション「ｚ」として「１」が設定されている場合には、ＶＣＤ（ＲＴＬシミュレーション結果データ）において該入力ピンに入力される信号の値が「ｚ」（ハイインピーダンス）である場合に「ｚ」を「１」（ハイレベル）に変換する。
【０１０４】
オプション「０」は出力ピンに設定することができるオプションであり、「Ｚ」を設定することができる。オプション「０」として「Ｚ」が設定されている場合には、ＶＣＤ（ＲＴＬシミュレーション結果データ）において該出力ピンから出力される信号の値が「０」（ローレベル）である場合に「０」を「Ｚ」（ハイインピーダンス）に変換する。このオプションは、オープンドレインのピンに利用すると好適である。
【０１０５】
オプション「１」は出力ピンに設定することができるオプションであり、「Ｚ」を設定することができる。オプション「１」として「Ｚ」が設定されている場合には、ＶＣＤ（ＲＴＬシミュレーション結果データ）において該出力ピンから出力される信号の値が「１」（ハイレベル）である場合に「１」を「Ｚ」（ハイインピーダンス）に変換する。このオプションは、オープンドレインのピンに利用すると好適である。
【０１０６】
そして、ユーザは、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））を作成するためにＶＣＤ（ＲＴＬシミュレーション結果データ）をサンプリングする周期を表すＡＰＦサイクル・タイム（ここでは、１０００００とする。）を領域１２０の入力欄１２１に、ＶＣＤ（ＲＴＬシミュレーション結果データ）内の出力信号を期待値として詳細にサンプリングするタイミングを表すストローブ・タイム（ここでは、９００００とする。）を入力欄１２２に、遅延量に乗じるための遅延倍数（ここでは、１００００とする。）を入力欄１２３に入力する。
【０１０７】
なお、このとき、ユーザが画面１００の領域１２０内の「テンプレート保存」ボタンを押下し、テーブル１２４に入力した情報をテンプレートファイルとして保存、記憶することができる。そして、後に実ＡＳＩＣ（実チップ）６０に対して別のテストパターン（テストベンチ）で再度ネットリストシミュレーションを行う場合に、領域１２０内の「テンプレート読込」ボタンを押下して保存、記憶したテンプレートを読み込むことができる。これにより、実ＡＳＩＣ（実チップ）６０に対して異なるテストパターン（テストベンチ）でシミュレーションを行う場合に、情報の入力の手間を削減することが可能である。
【０１０８】
ユーザは、情報の入力が終了すると、領域１２０内の「ＡＰＦ作成」ボタンを押下する。
【０１０９】
再び図９を参照すると、ＲＴＬシミュレーション結果データ変換処理部５７は、領域１２０の「ＡＰＦ作成」ボタンが押下されると、ステップＳ１０４〜Ｓ１０６においてユーザによって入力された情報を用いて、ＶＣＤ（ＲＴＬシミュレーション結果データ）をＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））に変換し、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））ファイル１９を作成する（ステップＳ１０７）。
【０１１０】
図１７に、ＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））の例を示す。この（シミュレーションパターン（ネットリストシミュレーション入力データ））は４７行を有している。
【０１１１】
第１〜第２行は、コメント行（ヘッダ）である。
第６行は、サイクル・タイム（ここでは、１０００００）を表している。
第７行は、ストローブ・タイム（ここでは、９００００）を表している。
第８行は、分解能（ここでは、０．００１ｎｓ）を表している。
【０１１２】
第１６〜第２６行は、各ピンのＩ／Ｏ種別、遅延１に変換倍数を乗じた値、遅延２に変換倍数を乗じた値、出力イネーブルを表している。
第３０行〜第４６行は、上記の条件下でサンプリングされた各ピンの信号値を表している。
【０１１３】
本実施形態によれば、次のような利点がある。
比較例においては、変換対象の入出力ピン名称を１つずつ入力しなければならなかった。一方、本実施形態によれば、ＶＣＤ（ＲＴＬシミュレーション結果データ）に含まれる入出力ピン名称をＡＰＦ（シミュレーションパターン（ネットリストシミュレーション入力データ））ピン名称の候補として一覧表示するので、ピン名称を変更する場合以外は、不要なピンを削除するだけで済む。これにより、従前は変換時にピン名称の間違いによるエラーが発生してやり直さなければならないことがあったが、そのようなことをなくすことができる。
【０１１４】
比較例においては、信号の変化時間（遅延量）を知るために、ＲＴＬシミュレーション結果データを波形表示して目視で解析したり、テストベンチから目視で読み取ったり、ユーザの記憶に頼ったりしていた。このため、手間がかかったり、信号の変化時間（遅延量）が曖昧になってしまったりしていた。また、サイクル毎に変化時間（遅延量）が変わる信号の解析が困難であった。一方、本実施形態によれば、ＲＴＬシミュレーション結果データ変換処理装置４１が信号の変化時間（遅延量）を解析して表示するので、解析時間が大幅に短縮され、信号の変化時間（遅延量）が曖昧になることをなくすことができる。また、信号の変化時間（遅延量）が一義的に決まる場合は、その値が候補値として入力されるため、入力の手間を少なくすることができる。
【０１１５】
比較例においては、入出力ピンの値を置き換える必要がある場合、ピン毎に指定ができなかった。例えば、ＲＴＬシミュレーションにおいては、入力ピンに信号「Ｘ」（Un-known（不定））が入力されることがある。すなわち、テストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２において、入力ピンに信号「Ｘ」が入力されるような入力信号パターンが含まれていることがあり得る。しかしながら、ネットリストシミュレーションにおいては、入力ピンに信号「Ｘ」が入力されることは許されていない。すなわち、シミュレーションパターン（ネットリストシミュレーション入力データ）ファイル１９において、入力ピンに信号「Ｘ」が入力されるような入力信号パターンが含まれていることは許されていない。従ってテストベンチ（ＲＴＬシミュレーション入力データ）ファイル１２において、入力ピンに信号「Ｘ」が入力されるような入力信号パターンが含まれている場合には、信号「Ｘ」を信号「０」（ローレベル）又は信号「１」（ハイレベル）に変換する必要がある。しかしながら、比較例においては、信号「Ｘ」の信号「０」（ローレベル）又は信号「１」（ハイレベル）への変換を入力ピン毎に指定することが出来なかった。すなわち、比較例においては、信号「Ｘ」を信号「０」（又は信号「１」）に変換する指定をすると、全ての入力ピンにおいて信号「Ｘ」が信号「０」（又は信号「１」）に変換されてしまっていた。そのため、或る入力ピンに入力される信号「Ｘ」を信号「０」に変換し、他の入力ピンに入力される信号「Ｘ」を信号「１」に変換することを所望する場合には、ユーザがテキストエディタで信号を個別に修正したり、そのような修正を行うプログラムを別途作成したりしなければならず、大変な労力が必要であった。一方、本実施形態においては、表形式で置き換える値を指定できるので、ピン毎に値の置き換えを簡単に指定することができる。
【０１１６】
なお、本実施形態においては、便宜上、Ｉ／Ｏ種別の入力受付（図９のステップＳ１０４）、ピン名称の入力受付（ステップＳ１０５）、ピン属性の入力受付（ステップＳ１０６）の順序で説明したが、この順序以外の順序で入力を受け付けることも可能である。
【０１１７】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また半導体集積回路の設計システムやＲＴＬシミュレーション結果データ変換処理装置の構成、動作も本実施形態で説明したものに限定に限定されず、種々の変形実施が可能である。
【図面の簡単な説明】
【０１１８】
【図１】比較例の半導体集積回路設計システムを示す図。
【図２】比較例の半導体集積回路設計システムを示す図。
【図３】本実施形態を利用した半導体集積回路設計システムを示す図。
【図４】図３のＲＴＬシミュレーション結果データ変換処理装置の構成例を示す図。
【図５】設計対象回路の構成例を示す図。
【図６】設計対象回路のＲＴＬシミュレーション結果データの例を示す図。
【図７】設計対象回路のＲＴＬシミュレーション結果データの例を示す図。
【図８】設計対象回路のＲＴＬシミュレーション結果データの波形図の例を示す図。
【図９】本実施形態の動作を示すフローチャート。
【図１０】本実施形態の表示画面の例を示す図。
【図１１】本実施形態の表示画面の例を示す図。
【図１２】本実施形態の表示画面の例を示す図。
【図１３】本実施形態のピンのＩ／Ｏ種別の例を示す図。
【図１４】本実施形態の表示画面の例を示す図。
【図１５】本実施形態の表示画面の例を示す図。
【図１６】本実施形態のピン属性の例を示す図。
【図１７】設計対象回路のネットリストシミュレーション入力データの例を示す図。
【符号の説明】
【０１１９】
１０、３０、４０  半導体集積回路の設計システム、１１  ＲＴＬ記述ファイル、
１２  ＲＴＬシミュレーション入力データファイル、
１３  ＲＴＬシミュレーション処理装置、
１４  ＲＴＬシミュレーション結果データファイル、
１５  ＲＴＬシミュレーション結果波形表示処理装置、１６  表示装置、
１７  論理合成処理装置、１８  ネットリストファイル、
１９  ネットリストシミュレーション入力データファイル、
２０  ネットリストシミュレーション処理装置、
２１  ネットリストシミュレーション結果データファイル、
３１  変換条件ファイル、３２  ＲＴＬシミュレーション結果データ変換処理装置、
４１  ＲＴＬシミュレーション結果データ変換処理装置、５１  入力部、
５２  表示部、５３  ＲＴＬシミュレーション結果データ解析処理部、
５４  Ｉ／Ｏ種別入力処理部、５５  ピン名称入力処理部、
５６  ピン属性入力処理部、５７  ＲＴＬシミュレーション結果データ変換処理部、
６０  実ＡＳＩＣ、６１  ＡＳＩＣモジュール、６２  双方向モジュール、
７０  機能ブロック、７１〜７９、８３  ピン、８１、８２  バッファ、
９１  クロック・リセットモジュール、９２  ＣＰＵモジュール、
９３  ＲＡＭモジュール、９４  ＣＰＵバス、９５  周辺ＩＣモジュール
【図１】
2009193101.tif 000003
【図２】
2009193101.tif 000004
【図３】
2009193101.tif 000005
【図４】
2009193101.tif 000006
【図５】
2009193101.tif 000007
【図６】
2009193101.tif 000008
【図７】
2009193101.tif 000009
【図８】
2009193101.tif 000010
【図９】
2009193101.tif 000011
【図１０】
2009193101.tif 000012
【図１１】
2009193101.tif 000013
【図１２】
2009193101.tif 000014
【図１３】
2009193101.tif 000015
【図１４】
2009193101.tif 000016
【図１５】
2009193101.tif 000017
【図１６】
2009193101.tif 000018
【図１７】
2009193101.tif 000019