(57)【要約】【課題】誤接続や未接続のないＲＴＬを生成することが可能な回路生成装置を提供すること。【解決手段】ＲＴＬファイル２５は、複数のモジュールの回路記述を格納する。ＲＴＬ読み込み部２２は、上位のＲＴＬで使用されるモジュール名およびそのモジュール数が記述されたパラメータ２１を参照して、ＲＴＬファイル２５から該当するモジュールのＲＴＬを読み込む。端子名抽出部２３は、ＲＴＬ読み込み部２２によって読み込まれたモジュールのＲＴＬから端子名を抽出する。そして、ＲＴＬ生成部２４は、端子名抽出部２３によって抽出された端子名に該当する端子属性情報を参照して、上位のＲＴＬで使用されるモジュールを接続して上位のＲＴＬを生成する。したがって、誤接続や未接続のないＲＴＬを生成することが可能となる。【選択図】図２
2013004066.tif 000002
【特許請求の範囲】
【請求項１】
複数のモジュールを接続して上位の回路を生成する回路生成装置であって、
前記複数のモジュールの回路記述を格納するファイルと、
前記上位の回路で使用されるモジュール名が記述されたパラメータを参照して、前記ファイルから該当するモジュールの回路記述を読み込む読込手段と、
前記読込手段によって読み込まれたモジュールの回路記述から端子名を抽出する抽出手段と、
前記抽出手段によって抽出された端子名に該当する端子属性情報を参照して、前記上位の回路で使用されるモジュールを接続して前記上位の回路を生成する生成手段とを含む、回路生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のマクロを接続して上位ＲＴＬ（Register Transfer Level）を設計する技術に関し、特に、マクロ間の誤接続を防止でき、未結線の確認を容易に行なえる回路生成装置に関する。
【背景技術】
【０００２】
近年、半導体集積回路の高集積化が進んでおり、半導体集積回路の回路規模の増大が進んでいる。そのため、複数のマクロを接続して回路設計を行なう場合、マクロの接続数も増加する傾向にある。
【０００３】
一般に、ＲＴＬは階層化設計されており、複数のマクロを接続して上位ＲＴＬを設計することが多い。これに関連する技術として、下記の特許文献１に開示された発明がある。
【０００４】
特許文献１は、複数の機能ブロックを結線してＬＳＩを構成する設計方法において、結線ミスも未然に防ぎ、機能ブロック間の結線の正誤チェックも可能にすることを目的とする。各機能ブロックの信号線の接続先および入出力方向の情報を記述し、また信号線の接続先を接続機能毎に接続単位として束線化し、それらに接続グループ名を与えて登録したライブラリを用意する。さらに、このライブラリの生成に使用する接続グループの結線の規則や入出力方向の規則を記述した共通グループ定義ライブラリを用意する。システム設計に対する機能ブロック間の結線は、上記のライブラリを用いてＲＴＬを自動生成することで行なわれる。さらに、共通グループ定義ライブラリを用いて結線結果における信号線の機能の正誤や入出力方向の正誤チェックを行なう。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２４４２７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述のように、回路規模の増大に伴い、複数のマクロの接続数も増加する傾向にあるため、人的要因によるミスの発生や、接続チェックを行なうための工数が増大している。したがって、複数のマクロを接続して上位ＲＴＬの設計を行なう際、人的ミスを防ぐと共に、接続チェックを行なう工数を削減することが求められる。
【０００７】
上述の特許文献１においては、共通グループ定義ライブラリからグループライブラリを生成する。そして、グループライブラリおよびＩＰ（Intellectual Property）のＲＴＬを用いて結線を行なってＲＴＬを生成する。そして、共通グループ定義ライブラリを用いてＲＴＬのチェックを行なう。
【０００８】
しかしながら、チェック結果がＮＧであれば、ＲＴＬを人手により再確認する必要がある。また、ＲＴＬとライブラリ情報とが異なっている場合、結線時に誤接続や未結線が発生することとになり、ＲＴＬ修正やチェックも人手により行なう必要がある。
【０００９】
本発明は、上記問題点を解決するためになされたものであり、その目的は、誤接続や未接続のないＲＴＬを生成することが可能な回路生成装置を提供することである。
【課題を解決するための手段】
【００１０】
本発明の一実施例によれば、複数のＲＴＬを接続して上位のＲＴＬを生成する回路生成装置が提供される。ＲＴＬファイルは、複数のモジュールの回路記述を格納する。ＲＴＬ読み込み部は、上位のＲＴＬで使用されるモジュール名およびそのモジュール数が記述されたパラメータを参照して、ＲＴＬファイルから該当するモジュールのＲＴＬを読み込む。
【００１１】
端子名抽出部は、ＲＴＬ読み込み部によって読み込まれたモジュールのＲＴＬから端子名を抽出する。そして、ＲＴＬ生成部は、端子名抽出部によって抽出された端子名に該当する端子属性情報を参照して、上位のＲＴＬで使用されるモジュールを接続して上位のＲＴＬを生成する。
【発明の効果】
【００１２】
本発明の一実施例によれば、ＲＴＬ生成部が、端子名抽出部によって抽出された端子名に該当する端子属性情報を参照して、上位のＲＴＬで使用されるモジュールを接続して上位のＲＴＬを生成するので、誤接続や未接続のないＲＴＬを生成することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態における回路生成装置の構成例を示すブロック図である。
【図２】本発明の実施の形態における回路生成装置の機能的構成を示すブロック図である。
【図３】パラメータ２１のフォーマット例およびその記述例を示す図である。
【図４】ＲＴＬファイル２５に格納される下位ＲＴＬのモジュール名の記述例を示す図である。
【図５】端子属性情報ファイル２６に格納される端子属性情報の一例を示す図である。
【図６】ＲＴＬ生成部２４の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００１４】
図１は、本発明の実施の形態における回路生成装置の構成例を示すブロック図である。回路生成装置は、一般的なコンピュータによって実現され、コンピュータ本体１、ディスプレイ装置２、ＦＤ（Flexible Disk）４が装着されるＦＤドライブ３、キーボード５、マウス６、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）８が装着されるＣＤ−ＲＯＭ装置７、およびネットワーク通信装置９を含む。回路生成プログラムは、ＦＤ４またはＣＤ−ＲＯＭ８等の記録媒体によって供給される。回路生成プログラムがコンピュータ本体１によって実行されることにより、下位ＲＴＬから上位ＲＴＬの生成が行なわれる。また、回路生成プログラムは他のコンピュータより通信回線を経由し、コンピュータ本体１に供給されてもよい。
【００１５】
また、コンピュータ本体１は、ＣＰＵ１０、ＲＯＭ（Read Only Memory）１１、ＲＡＭ（Random Access Memory）１２およびハードディスク１３を含む。ＣＰＵ１０は、ディスプレイ装置２、ＦＤドライブ３、キーボード５、マウス６、ＣＤ−ＲＯＭ装置７、ネットワーク通信装置９、ＲＯＭ１１、ＲＡＭ１２またはハードディスク１３との間でデータを入出力しながら処理を行なう。ＦＤ４またはＣＤ−ＲＯＭ８に記録された回路生成プログラムは、ＣＰＵ１０によりＦＤドライブ３またはＣＤ−ＲＯＭ装置７を介してハードディスク１３に格納される。ＣＰＵ１０は、ハードディスク１３から適宜回路生成プログラムをＲＡＭ１２にロードして実行することによって、下位ＲＴＬから上位ＲＴＬの生成が行なわれる。
【００１６】
図２は、本発明の実施の形態における回路生成装置の機能的構成を示すブロック図である。この回路生成装置は、使用するモジュール名と使用するモジュール数を含んだパラメータ２１を入力情報とし、ＲＴＬファイル２５から下位ＲＴＬを読み込むＲＴＬ読み込み部２２と、ＲＴＬ読み込み部２２によって読み込まれた下位ＲＴＬから端子名と入出力とを抽出する端子名抽出部２３と、端子名抽出部２３によって抽出された端子名に該当する端子属性情報（接続先インスタンス名、接続先端子名または外部端子名）を端子属性情報ファイル２６から読み出して下位ＲＴＬを接続し、（上位）ＲＴＬ２７および接続チェック用アサーション２８を生成するＲＴＬ生成部２４とを含む。
【００１７】
パラメータ２１は、モジュール名と使用するモジュールの個数とが記述され、上位ＲＴＬの接続に必要なモジュールと、それぞれのモジュールの個数を決定するために使用される。
【００１８】
図３は、パラメータ２１のフォーマット例およびその記述例を示す図である。図３（ａ）は、フォーマット例を示しており、モジュール名の後に使用数が記述されることを示している。また、図３（ｂ）は、その記述例を示しており、モジュール“ＰＦ＿ＣＰＵ＿ＴＹＰＥＡ”が１個使用され、モジュール“ＰＦ＿ＴＩＭＥＲ＿Ａ”が２個使用されることを示している。
【００１９】
図４は、ＲＴＬファイル２５に格納される下位ＲＴＬのモジュール名の記述例を示す図である。ＲＴＬは、ＩＥＥＥ１３６４−１９９５などの標準規格に準拠しており、モジュール名および端子名が命名規則にしたがって記述される。図４（ａ）に示すように、モジュール名は、固定値の後に機能名が記述され、その後にユニーク名が記述される。
【００２０】
図４（ｂ）は、モジュール名の一例を示しており、ＣＰＵの機能を有するモジュール“ＰＦ＿ＣＰＵ＿ＴＹＰＥＡ”と、ＤＭＡＣの機能を有するモジュール“ＰＦ＿ＤＭＡ＿ＣＨ６４”とが記述されている。
【００２１】
ＲＴＬ読み込み部２２は、パラメータ２１に記述されたモジュール名にしたがって、ＲＴＬファイル２５から対象のＲＴＬを読み込む。
【００２２】
端子名抽出部２３は、ＩＥＥＥ１３６４−１９９５などの標準規格の文法にしたがって、ＲＴＬ読み込み部２２によって読み込まれたＲＴＬの外部端子名を抽出する。
【００２３】
図５は、端子属性情報ファイル２６に格納される端子属性情報の一例を示す図である。図５（ａ）は、端子属性情報のフォーマット例を示しており、モジュール名（＜固定値＞＿＜機能名＞）が記述された後、そのモジュールがインスタンスされるときのインスタンス名、そのモジュールの命名規則にしたがった外部端子名、それに対応する接続先インスタンス名、および接続先端子名が記述される。
【００２４】
図５（ｂ）は、端子属性情報の記述例を示している。端子属性情報のモジュール名は、モジュール命名規則にしたがい、機能を特定できるものとする。また、インスタンス名は、複数インスタンスされることを考慮して、特殊文字を付加しておく。
【００２５】
また、上位外部端子に接続される端子は、接続先インスタンス名として識別可能な文字列とする。接続先が特定されない端子は、接続先インスタンス名、接続先端子名ともに識別可能な文字列とする。
【００２６】
図６は、ＲＴＬ生成部２４の動作を説明するためのフローチャートである。まず、ＲＴＬ生成部２４は、パラメータ２１において記載されたモジュール名から、端子属性情報ファイル２６を検索し、モジュール名が一致する端子属性情報を検索する（Ｓ１１）。すなわち、＜固定値＞＿＜機能名＞が一致する端子属性情報のモジュールを検索する。
【００２７】
次に、一致するモジュール名があるか否かを判定する（Ｓ１２）。一致するモジュール名がなければ（Ｓ１２，Ｎｏ）、誤接続を防ぐためにモジュールで使用されている全端子を未結線として、中間ファイル（スプレットシート）に出力し（Ｓ１３）、ステップＳ１８に処理が進む。これは、ＲＴＬのモジュール名が命名規則にしたがっていない、端子属性情報に登録されていない、などの原因によるものである。
【００２８】
また、一致するモジュール名があれば（Ｓ１２，Ｙｅｓ）、端子名抽出部２３によって抽出された外部端子から、端子属性情報において該当する端子名を検索する（Ｓ１４）。そして、一致する端子名があるか否かを判定する（Ｓ１５）。
【００２９】
一致する端子名がなければ（Ｓ１５，Ｎｏ）、誤接続を防ぐためにその端子を未結線として、中間ファイル（スプレットシート）に出力し（Ｓ１６）、ステップＳ１８に処理が進む。これは、ＲＴＬの端子名が命名規則にしたがっていない、端子属性情報に登録されていない端子が存在する、などの原因によるものである。
【００３０】
一致する端子名があれば（Ｓ１５，Ｙｅｓ）、端子属性情報にしたがって対応する接続先インスタンス名、接続先端子名を中間ファイル（スプレットシート）に出力し（Ｓ１７）、ステップＳ１８に処理が進む。
【００３１】
ステップＳ１８において、中間ファイル（スプレットシート）を生成して、処理を終了する。以上の処理によって、接続するために必要な端子を、未接続のものを含めて全て記述されることになる。未結線端子が明示されると共に、未結線の端子については本シートに接続先を記述することにより、未結線状態がないＲＴＬを生成することが可能となる。
【００３２】
なお、端子接続情報に上位のテストベンチなどの接続情報を追加することで、テストベンチ階層のＲＴＬの生成も行なうことが可能となる。
【００３３】
また、ＲＴＬ生成部２４に特定のフォーマットで接続情報を出力する機能を追加することにより、リスト形式の接続情報を出力することも可能となる。
【００３４】
以上説明したように、本実施の形態における回路生成装置によれば、読み込んだ端子名に該当する端子属性情報（接続先インスタンス名、接続先端子名、外部端子名）を参照して接続を行なうようにしたので、誤接続を防止することが可能となった。
【００３５】
また、下位ＲＴＬの端子名に該当する端子属性情報がない場合でも、その端子名を出力することでユーザが未結線であることを認識することができ、ユーザが未結線の端子について接続先を与えることで、誤接続や未接続のないＲＴＬを生成することが可能となった。
【００３６】
さらには、ＲＴＬと共に接続チェック用アサーションを合わせて生成するので、アサーションのチェックも行なうことが可能となった。
【００３７】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００３８】
１  コンピュータ本体、２  ディスプレイ装置、３  ＦＤドライブ、４  ＦＤ、５  キーボード、６  マウス、７  ＣＤ−ＲＯＭ装置、８  ＣＤ−ＲＯＭ装置、９  ネットワーク通信装置、１０  ＣＰＵ、１１  ＲＯＭ、１２  ＲＡＭ、１３  ハードディスク、２１  パラメータ、２２  ＲＴＬ読み込み部、２３  端子名抽出部、２４  ＲＴＬ生成部、２５  ＲＴＬファイル、２６  端子属性情報ファイル、２７  ＲＴＬ、２８  接続チェック用アサーション。
【図１】
2013004066.tif 000003
【図２】
2013004066.tif 000004
【図３】
2013004066.tif 000005
【図４】
2013004066.tif 000006
【図５】
2013004066.tif 000007
【図６】
2013004066.tif 000008