(57)【要約】【課題】ソースコードの可読性やＩＰモデルの品質の向上を図ること。【解決手段】  本開示技術では、ＥＳＬのＩＰモデルを、ＩＦ、レジスタ、ビヘビアの３つの構成（ＩＰ）に分離する。ＩＦは、データの入出力をあらわすＩＰであり、レジスタは、データの記憶をあらわすＩＰであり、ビヘビアは、データを利用した設計対象の振る舞いをあらわすＩＰである。３つの構成には、それぞれ接続関係がある。この３つの構成とこれら相互の接続関係をモデル化する。ビヘビアは、部品化しリファクタリングのコーディングを利用する。図１中、矩形のブロックは、上述したＩＦ、レジスタ、ビヘビアとなるＩＰであり、ＩＰ間の矢印は、ＩＰ間相互の接続関係を示している。このブロック構成は、後述するＩＰモデル構成データである。【選択図】図１
2010003195.tif 000002
【特許請求の範囲】
【請求項１】
ハードウェア化する機能をプログラム記述でモデル化したＩＰ（知的所有権）モデルを管理するＩＰモデル管理装置であって、
前記ＩＰモデルを、外部との通信を定義するＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、入出力するデータを定義するレジスタ、関数または演算を定義するビヘビアの３つのＥＳＬ（Ｅｌｅｃｔｒｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ：構成要素）に分けて、データ保存手段に管理保存し、
前記レジスタとビヘビア間、前記ビヘビアとビヘビア間、前記ビヘビアとＡＰＩ間の３つの接続関係を定義した接続データを前記データ保存手段に保存することを特徴とするＩＰモデル管理装置。
【請求項２】
ハードウェア化する機能をプログラム記述でモデル化したＩＰ（知的所有権）モデルを設計するＩＰモデル生成装置であって、
ＩＰモデルを構成する外部との通信を定義するＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、入出力するデータを定義するレジスタ、関数または演算を定義するビヘビアの３つのＥＳＬ（Ｅｌｅｃｔｒｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ：構成要素）を保存するデータ保存手段と、
前記データ保存手段から、前記ハードウェア化する機能に適合するＥＳＬを抽出する抽出手段と、
前記抽出したＥＳＬを基に、前記レジスタとビヘビア間、前記ビヘビアとビヘビア間、前記ビヘビアとＡＰＩ間の３つの接続関係を定義するデータを作成するモデル生成手段と、
を有することを特徴とするＩＰモデル生成装置。
【請求項３】
ハードウェア化する機能をプログラム記述でモデル化したＩＰ（知的所有権）モデルを設計するＩＰモデルの生成方法であって、
ＩＰモデルを構成する外部との通信を定義するＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、入出力するデータを定義するレジスタ、関数または演算を定義するビヘビアの３つのＥＳＬ（Ｅｌｅｃｔｒｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ：構成要素）を保存するデータ保存手段より、前記ハードウェア化する機能に適合するＥＳＬを抽出する工程と、
前記抽出したＥＳＬを基に、前記レジスタとビヘビア間、前記ビヘビアとビヘビア間、前記ビヘビアとＡＰＩ間の３つの接続関係を定義するデータを作成する工程と、
を含むことを特徴とするＩＰモデル生成方法。
【請求項４】
データの入出力をあらわすＩＦ、前記データを保持するレジスタ、前記データに基づいて処理をおこなうビヘビアに分離されたＩＰのソースコードを記憶するＩＰデータベースと、前記ＩＰ間の接続関係を定義する接続属性ファイルを記憶する接続属性データベースと、前記ＩＰと前記接続属性ファイルにより定義されたＩＰモデルの構成をあらわす構成データを記憶するＩＰモデル構成データベースと、にアクセス可能なＩＰモデル生成装置であって、
流用対象ＩＰモデルの選択を受け付ける選択手段と、
前記選択手段によって選択された流用対象ＩＰモデルに関する構成データを前記ＩＰモデル構成データベースから抽出する構成データ抽出手段と、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰ間の接続関係を定義する接続属性ファイルを、前記接続属性データベースから抽出する接続属性ファイル抽出手段と、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰのソースコードを前記ＩＰデータベースから抽出するＩＰ抽出手段と、
前記接続属性ファイル抽出手段によって抽出された接続属性ファイルと前記ＩＰ抽出手段によって抽出されたＩＰのソースコードを前記流用対象ＩＰモデルとして出力する出力手段と、
を備えることを特徴とするＩＰモデル生成装置。
【請求項５】
データの入出力をあらわすＩＦ、前記データを保持するレジスタ、前記データに基づいて処理をおこなうビヘビアに分離されたＩＰのソースコードを記憶するＩＰデータベースと、前記ＩＰ間の接続関係を定義する接続属性ファイルを記憶する接続属性データベースと、前記ＩＰと前記接続属性ファイルにより定義されたＩＰモデルの構成をあらわす構成データを記憶するＩＰモデル構成データベースと、にアクセス可能なコンピュータが、
流用対象ＩＰモデルの選択を受け付ける選択工程と、
前記選択工程によって選択された流用対象ＩＰモデルに関する構成データを前記ＩＰモデル構成データベースから抽出する構成データ抽出工程と、
前記構成データ抽出工程によって抽出された構成データにより定義されているＩＰ間の接続関係を定義する接続属性ファイルを、前記接続属性データベースから抽出する接続属性ファイル抽出工程と、
前記構成データ抽出工程によって抽出された構成データにより定義されているＩＰのソースコードを前記ＩＰデータベースから抽出するＩＰ抽出工程と、
前記接続属性ファイル抽出工程によって抽出された接続属性ファイルと前記ＩＰ抽出工程によって抽出されたＩＰのソースコードを前記流用対象ＩＰモデルとして出力する出力工程と、
を実行することを特徴とするＩＰモデル生成方法。
【請求項６】
データの入出力をあらわすＩＦ、前記データを保持するレジスタ、前記データに基づいて処理をおこなうビヘビアに分離されたＩＰのソースコードを記憶するＩＰデータベースと、前記ＩＰ間の接続関係を定義する接続属性ファイルを記憶する接続属性データベースと、前記ＩＰと前記接続属性ファイルにより定義されたＩＰモデルの構成をあらわす構成データを記憶するＩＰモデル構成データベースと、にアクセス可能なコンピュータを、
流用対象ＩＰモデルの選択を受け付ける選択手段、
前記選択手段によって選択された流用対象ＩＰモデルに関する構成データを前記ＩＰモデル構成データベースから抽出する構成データ抽出手段、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰ間の接続関係を定義する接続属性ファイルを、前記接続属性データベースから抽出する接続属性ファイル抽出手段、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰのソースコードを前記ＩＰデータベースから抽出するＩＰ抽出手段、
前記接続属性ファイル抽出手段によって抽出された接続属性ファイルと前記ＩＰ抽出手段によって抽出されたＩＰのソースコードを前記流用対象ＩＰモデルとして出力する出力手段、
として機能させることを特徴とするＩＰモデル生成プログラム。
【請求項７】
前記コンピュータを、
前記構成データ抽出手段によって抽出された構成データ内のＩＰの選択を受け付けるＩＰ選択手段、
前記ＩＰ選択手段によって選択されたＩＰの派生品の選択を受け付ける派生品選択手段、
前記接続属性ファイル抽出手段によって抽出された接続属性ファイルにおいて、前記ＩＰ選択手段によって選択されたＩＰを、前記派生品選択手段によって選択された派生品に変換する変換手段として機能させ、
前記ＩＰ抽出手段は、
前記変換手段によって変換された接続属性ファイルに記述されている前記派生品のソースコードを、前記ＩＰデータベースから抽出することを特徴とする請求項６に記載のＩＰモデル生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で開示する技術は、ＥＳＬ（Ｅｌｅｃｔｏｒｏｎｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ）ツールのＰＶ（Ｐｒｏｇｒａｍｍｅｒ'ｓ  Ｖｉｅｗ）またはＵＴ（ＵｎＴｉｍｅｄ）、ＰＶＴ（Ｐｒｏｇｒａｍｍｅｒ'ｓ  Ｖｉｅｗ  ｗｉｔｈ  Ｔｉｍｉｎｇ）またはＬＴ(Ｌｏｏｓｅｌｙ−Ｔｉｍｅｄ)、ＣＸ（Ｃｙｃｌｅ  Ａｐｐｒｏｘｉｍａｔｅ）またはＡＴ（Ａｐｐｒｏｘｉｍａｔｅｌｙ−Ｔｉｍｅｄ）、ＣＡ（Ｃｙｃｌｅ  Ａｃｃｕｒａｔｅ）レベルの抽象度モデルに関連するＩＰモデル（ＳｙｓｔｅｍＣなどの上位設計で利用されるモデル）に関する技術である。
【背景技術】
【０００２】
従来、ソースコードのテンプレートを用いてソースコードを自動生成する方法がある（たとえば、下記特許文献１を参照。）。
【０００３】
【特許文献１】特開２００８−０５２３５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
１つのＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）モデルを開発すると、そのＩＰモデルをベースにソースコードを利用して派生品種およびソースコードを作成するケースが多い。そのため、少しマイナーチェンジしたソースコードが複数存在してしまう。これにより発生したソースコードはさらに繰り返し利用されて幾重にも分岐してしまう。この状況のモデルのソースコードや仕様の管理方法は品種単位といった大きなものとなっている。これによりソースコードの可読性は損なわれてしまい、ソースコードの再利用性はない状態となるという問題があった。
【０００５】
開発したソースコードの検証も一部変更であれば一部の検証で済むはずであるが、開発担当者が異なるとソースコードをすべて見切れない状態なので、検証も不十分となるという問題があった。これによりバグを含むモデルができてしまい、さらにそのモデルを利用し開発したモデルはバグを埋め込んだ状態になり、次世代へと伝播してしまうという問題があった。
【０００６】
このように、現状は、上述した方法では、テンプレートが全品種を吸収しなければならいため、品種単位で爆発的にテンプレートコードが増えてしまい、ソースコードの可読性が既に損なわれてしまうという問題があった。
【０００７】
本技術は、上述した従来技術による問題点を解消するため、ソースコードの可読性の向上と、ＩＰモデルの品質の向上を図ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、開示技術は、ハードウェア化する機能をプログラム記述でモデル化したＩＰ（知的所有権）モデルを管理するにあたって、前記ＩＰモデルを、外部との通信を定義するＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、入出力するデータを定義するレジスタ、関数または演算を定義するビヘビアの３つのＥＳＬ（Ｅｌｅｃｔｒｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ：構成要素）に分けて管理保存し、前記レジスタとビヘビア間、前記ビヘビアとビヘビア間、前記ビヘビアとＡＰＩ間の３つの接続関係を定義した接続データを前記データ保管部に保存することを要件とする。
【発明の効果】
【０００９】
この開示技術によれば、ソースコードの可読性やＩＰモデルの品質の向上を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１０】
以下に添付図面を参照して、本開示技術の好適な実施の形態を詳細に説明する。本開示技術は、ＥＳＬ（Ｅｌｅｃｔｏｒｏｎｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ）ツールのＰＶ（Ｐｒｏｇｒａｍｍｅｒ‘ｓ  Ｖｉｅｗ）またはＵＴ（ＵｎＴｉｍｅｄ）、ＰＶＴ（Ｐｒｏｇｒａｍｍｅｒ’ｓ  Ｖｉｅｗ  ｗｉｔｈ  Ｔｉｍｉｎｇ）またはＬＴ（Ｌｏｏｓｅｌｙ−Ｔｉｍｅｄ）、ＣＸ（Ｃｙｃｌｅ  Ａｐｐｒｏｘｉｍａｔｅ）またはＡＴ（Ａｐｐｒｏｘｉｍａｔｅｌｙ−Ｔｉｍｅｄ）、ＣＡ（Ｃｙｃｌｅ  Ａｃｃｕｒａｔｅ）レベルの抽象度モデルに関連するＩＰモデル（ＳｙｓｔｅｍＣなどの上位設計で利用されるモデル）の管理およびＩＰモデル生成に関する技術である。
【００１１】
（開示技術の概要）
「発明が解決しようとする課題」の項で説明したように、従来では、（１）内部状態の追加はソースコードを巨大化し、再利用性の低下を招く。たとえば、１つのクラスに複数内部状態を保持した場合、その内部状態によって同じ外部からの要求であっても処理（動作）内容が異なる。その原因としては、１クラスの責務が多すぎるためである。このことは基準となるソースコードあるいはテンプレートに責務が集中してしまい、ソースコードの可読性や再利用性の低下を招いてしまう。さらにテンプレートなどに１つに固定されているとそのソースコードの行は膨大となり、メンテナンス性を損なうことになる。
【００１２】
また、（２）他のシステムに移植できず、フレキシブルなフレームワークが構築されていない。通常、開発管理システム内であれば問題ないのだが、他の管理システムに移植するときに情報を提供できないことで利用できない場合がある。モデルに関する情報を管理し抽出できる環境がないためである。
【００１３】
そのため、本開示技術では、ＥＳＬのＩＰモデルを、ＩＦ（Ｉｎｔｅｒｆａｃｅ）、レジスタ、ビヘビアの３つの構成（ＩＰ）に分離する。ＩＦは、データの入出力をあらわすＩＰであり、レジスタは、データの記憶をあらわすＩＰであり、ビヘビアは、データを利用した設計対象の振る舞いをあらわすＩＰである。３つの構成には、それぞれ接続関係がある。この３つの構成とこれら相互の接続関係をモデル化する。ビヘビアは、部品化する。また部品化したパーツはリファクタリングのコーディングを利用してもよい。
【００１４】
図１は、本開示技術のＩＰモデルの一例を示すブロック構成図である。図１中、矩形のブロックは、上述したＩＦ、レジスタ、ビヘビアとなるＩＰであり、ＩＰ間の矢印は、ＩＰ間相互の接続関係を示している。このブロック構成は、後述するＩＰモデル構成データである。
【００１５】
図２は、本開示技術のＩＰモデル管理／生成を示す概略図である。本開示技術では、ＩＰＤＢ（データベース）２０１と、ＩＰモデル構成ＤＢ２０３と、接続属性ＤＢ２０２とにアクセスし、図１に示したようなＩＰモデル構成データの作成２１１やＩＰモデルの生成２１２をおこなう。データ保存部となるＩＰＤＢ２０１、ＩＰモデル構成ＤＢ２０３、接続属性ＤＢ２０２の記憶内容については後述する。
【００１６】
ＩＰモデル構成データ作成２１１は、設計者がコンピュータを操作することでＩＰモデル構成データを作成する処理である。ＩＰモデル生成２１２は、設計者がコンピュータに生成指示を与えると、自動実行によりＩＰモデルを生成する処理である。
【００１７】
このようなＩＰモデルの管理／生成をおこなうことにより、ＩＰモデルを構成するＩＰ間の接続属性の再利用性の向上を図ることができる。また、各処理を分割し修正箇所を局所化することにより再利用性を向上することができる。また、この局所化により、派生品種の検証範囲の絞込みをおこなうことができる。したがって、テンプレートのように全品種を吸収する必要がなくなり、品種単位で爆発的にテンプレートコードが増大することも生じない。したがって、ソースコードの可読性が損なわれず、また、バグが伝播しないため、ＩＰモデルの品質向上を図ることができる。
【００１８】
（ＩＰＤＢ２０１の記憶内容）
ここで、上述したＩＰＤＢ２０１の記憶内容について図３〜図８を用いて説明する。図３は、ＩＦ属性リストテーブルを示す説明図であり、図４は、ＩＦ属性リストテーブルとソースコードとの関係を示す説明図である。なお、ＩＰＤＢ２０１にはＩＰのソースコードが登録されており、新規に作成された場合には、そのソースコードがエントリされる。
【００１９】
図３において、ＩＦ属性リストテーブル３００は、ＩＰモデルの３構成要素であるＩＦ、レジスタ、ビヘビアのうちＩＦの属性をリスト化したテーブルである。ＩＦ属性リストテーブル３００では、レコードごとに、構成要素種別、構成要素、属性、仕様、親要素を記憶する。構成要素種別では、そのＩＦが、ポート、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、シグナル、クロックなどに分類される。
【００２０】
構成要素は、そのＩＦの具体的な内容を特定するＩＰ名であり、そのＩＰへのポインタが記憶されている。たとえば、構成要素「ｗｒｉｔｅ（）」は、「ｗｒｉｔｅ（）」のソースコードにリンクする。属性には、そのＩＦの構成要素に関する特徴が記憶されている。仕様には、そのＩＦの構成要素に関する仕様へのポインタが記憶されている。たとえば、構成要素「ｗｒｉｔｅ（）」は、「ｗｒｉｔｅ（）」の仕様データである「仕様ｗｒｉｔｅ」にリンクする。親要素は、そのＩＦのＩＰの親となるＩＰ名およびそのＩＰへのポインタが記憶されている。たとえば、図３において、構成要素「Ｓｉｇ＿Ｂ２」は、「Ｓｉｇ＿Ｂ」の派生品種であり、「Ｓｉｇ＿Ｂ」のソースコードにリンクする。
【００２１】
図５は、レジスタ属性リストテーブルを示す説明図であり、図６は、レジスタ属性リストテーブルとソースコードとの関係を示す説明図である。図６において、レジスタ属性リストテーブル５００は、ＩＰモデルの３構成要素であるＩＦ、レジスタ、ビヘビアのうちレジスタの属性をリスト化したテーブルである。レジスタ属性リストテーブル５００では、レコードごとに、構成要素種別、構成要素、属性、仕様、親要素を記憶する。構成要素種別では、そのレジスタなどに分類される。
【００２２】
構成要素は、そのレジスタの具体的な内容を特定するＩＰ名であり、そのＩＰへのポインタが記憶されている。たとえば、構成要素「ｒｅｇ＿Ａ」は、「ｒｅｇ＿Ａ」のソースコードにリンクする。属性には、そのレジスタの構成要素に関する特徴が記憶されている。仕様には、そのレジスタの構成要素に関する仕様へのポインタが記憶されている。たとえば、構成要素「ｒｅｇ＿Ａ」は、ＩＰＤＢ２０１内の「ｒｅｇ＿Ａ」の仕様データである「仕様ｒｅｇ＿Ａ」にリンクする。親要素は、そのレジスタのＩＰの親となるＩＰ名およびそのＩＰへのポインタが記憶されている。たとえば、構成要素「ｒｅｇ＿Ａ２」は、「ｒｅｇ＿Ａ」の派生品種であり、「ｒｅｇ＿Ａ」のソースコードにリンクする。
【００２３】
図７は、ビヘビア属性リストテーブル７００を示す説明図であり、図８は、ビヘビア属性リストテーブル７００とソースコードとの関係を示す説明図である。図７において、ビヘビア属性リストテーブル７００は、ＩＰモデルの３構成要素であるＩＦ、レジスタ、ビヘビアのうちビヘビアの属性をリスト化したテーブルである。ビヘビア属性リストテーブル７００では、レコードごとに、構成要素種別、構成要素、属性、仕様、親要素を記憶する。構成要素種別では、そのビヘビアなどに分類される。
【００２４】
構成要素は、そのビヘビアの具体的な内容を特定するＩＰ名であり、そのＩＰへのポインタが記憶されている。たとえば、構成要素「Ｂｅｈａｖｉｏｒ＿Ａ」は、「Ｂｅｈａｖｉｏｒ＿Ａ」のソースコードにリンクする。属性には、そのビヘビアの構成要素に関する特徴が記憶されている。
【００２５】
仕様には、そのビヘビアの構成要素に関する仕様へのポインタが記憶されている。たとえば、構成要素「Ｂｅｈａｖｉｏｒ＿Ａ」は、「Ｂｅｈａｖｉｏｒ＿Ａ」の仕様データである「仕様Ｂｅｈａｖｉｏｒ＿Ａ」にリンクする。親要素は、そのビヘビアのＩＰの親となるＩＰ名およびそのＩＰへのポインタが記憶されている。たとえば、構成要素「Ｂｅｈａｖｉｏｒ＿Ａ２」は、「Ｂｅｈａｖｉｏｒ＿Ａ」の派生品種であり、「Ｂｅｈａｖｉｏｒ＿Ａ」のソースコードにリンクする。
【００２６】
（接続属性ＤＢ２０２の記憶内容）
つぎに、上述した接続属性ＤＢ２０２の記憶内容について説明する。図９は、接続属性ＤＢ２０２の記憶内容を示す説明図である。接続属性ＤＢ２０２は、ＩＰ間相互の接続属性ファイルを記憶する。
【００２７】
具体的には、たとえば、ＩＦとレジスタ間の接続関係を定義するＩＦ−レジスタ間接続属性ファイル群９０１、レジスタを介してＩＦとビヘビア間の接続関係を定義するＩＦ−レジスタ−ビヘビア間接続属性ファイル群９０２、ビヘビア間の接続関係を定義するビヘビア間接続属性ファイル群９０３、ＩＦとビヘビア間の接続関係を定義するＩＦ−ビヘビア間接続属性ファイル群９０４を記憶する。なお、新規作成された場合は、あらたにエントリされる。
【００２８】
以下、各接続属性ファイル群内のファイルの具体例を列挙する。列挙された内容は一例であり、これら以外にも接続関係を定義する記述は存在する。また、図１０−１〜図１４−１中、矩形で囲まれた記述はＩＰに関する記述であり、設計者により任意のＩＰを選択することができる。選択されたＩＰは、ＩＰＤＢ２０１内の該当するソースコードにリンクする。
【００２９】
図１０−１は、ＩＦ−レジスタ間接続属性ファイルの一例を示す説明図である。図１０−１は、独自ＡＰＩとレジスタの接続関係を示している。書き込むデータによって書き込み先を選択する場合は、このＩＦ−レジスタ間接続属性ファイル１００１を使用する。
【００３０】
図１０−２は、図１０−１に示したＩＦ−レジスタ間接続属性ファイルの適用例を示す説明図である。図１０−２は、独自ＡＰＩである「ｗｒｉｔｅ（）」とレジスタである「Ｒｅｇ＿Ａ」および「Ｒｅｇ＿Ｂ」の接続関係を示している。書き込むデータによって書き込み先「Ｒｅｇ＿Ａ」または「Ｒｅｇ＿Ｂ」を選択する場合は、このＩＦ−レジスタ間接続属性ファイル１００２のように記述する。
【００３１】
図１１−１は、ＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。図１１−１は、ポートのＩＦとビヘビアとの接続関係と、シグナルのＩＦとビヘビアとの接続関係を示している。ポートをトリガとしてビヘビアを起動したり、シグナルによりビヘビアを起動する場合に、このＩＦ−ビヘビア間接続属性ファイル１１０１を使用する。
【００３２】
図１１−２は、図１１−１に示したＩＦ−ビヘビア間接続属性ファイルの適用例を示す説明図である。図１１−２は、ポートのＩＦである「ｉｎｐｕｔ＿ａ」とビヘビアである「Ｂｅｈａｖｉｏｒ＿Ａ」との接続関係と、シグナルのＩＦである「ｓｉｇ＿１」とビヘビアである「Ｂｅｈａｖｉｏｒ＿Ｂ」との接続関係を示している。「ｉｎｐｕｔ＿ａ」をトリガとして「Ｂｅｈａｖｉｏｒ＿Ａ」を起動し、シグナル定義された「ｓｉｇ＿１」により「Ｂｅｈａｖｉｏｒ＿Ｂ」を起動する場合に、このＩＦ−ビヘビア間接続属性ファイル１１０２を使用する。
【００３３】
図１２−１は、ＩＦ−レジスタ−ビヘビア間接続属性ファイルの一例を示す説明図である。図１２−１は、独自ＡＰＩとレジスタとビヘビアとの接続関係を示している。書き込むデータによって書込みの実行主体および書込み先を選択する場合は、このＩＦ−レジスタ−ビヘビア間接続属性ファイル１２０１を使用する。
【００３４】
図１２−２は、図１２−１に示したＩＦ−レジスタ−ビヘビア間接続属性ファイルの適用例を示す説明図である。図１２−２は、独自ＡＰＩである「ｗｒｉｔｅ（）」とレジスタである「Ｒｅｇ＿Ａ」とビヘビアである「Ｂｅｈａｖｉｏｒ＿Ａ（）」との接続関係と、独自ＡＰＩである「ｗｒｉｔｅ（）」とレジスタである「Ｒｅｇ＿Ｂ」とビヘビアである「Ｂｅｈａｖｉｏｒ＿Ｂ（）」との接続関係を示している。書き込むデータによって選択的に「Ｂｅｈａｖｉｏｒ＿Ａ（）」が「Ｒｅｇ＿Ａ」に書き込んだり、「Ｂｅｈａｖｉｏｒ＿Ｂ（）」が「Ｒｅｇ＿Ｂ」に書き込んだりする場合は、このＩＦ−レジスタ−ビヘビア間接続属性ファイル１２０２のように記述する。
【００３５】
図１３−１は、ＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。図１３−１は、シグナルのＩＦとビヘビアとの接続関係を示している。ビヘビアが実行されることにより、シグナルが出力される場合に、このＩＦ−ビヘビア間接続属性ファイル１３０１を使用する。
【００３６】
図１３−２は、図１３−１に示したＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。図１３−２は、シグナルのＩＦである「ｓｉｇ＿Ａ」とビヘビアである「Ｂｅｈａｖｉｏｒ＿Ａ（ｖｏｉｄ）」との接続関係を示している。「Ｂｅｈａｖｉｏｒ＿Ａ（ｖｏｉｄ）」が実行されることにより、「ｓｉｇ＿Ａ」が出力される場合に、このＩＦ−ビヘビア間接続属性ファイル１３０２のように記述する。
【００３７】
図１３−３は、図１３−１に示したＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。図１３−３は、シグナルのＩＦである「ｓｉｇ＿Ｂ」とビヘビアである「Ｂｅｈａｖｉｏｒ＿Ｂ（ｖｏｉｄ）」との接続関係を示している。「Ｂｅｈａｖｉｏｒ＿Ｂ（ｖｏｉｄ）」が実行されることにより、「ｓｉｇ＿Ｂ」が出力される場合に、このＩＦ−ビヘビア間接続属性ファイル１３０３のように記述する。
【００３８】
図１４−１は、ビヘビア間接続属性ファイルの一例を示す説明図である。図１４−１は、一のビヘビアと他のビヘビアの接続関係を示している。一のビヘビアを実行し、その実行結果のデータを用いて他のビヘビアを実行する場合に、このビヘビア間接続属性ファイル１４０１を使用する。
【００３９】
図１４−２は、図１４−１に示したビヘビア間接続属性ファイルの一例を示す説明図である。図１４−２は、ビヘビアである「Ｂｅｈａｖｉｏｒ＿Ａ」と「Ｂｅｈａｖｉｏｒ＿Ｂ」の接続関係を示している。「Ｂｅｈａｖｉｏｒ＿Ａ」を実行し、その実行結果のデータを用いて「Ｂｅｈａｖｉｏｒ＿Ｂ」を実行する場合に、このビヘビア間接続属性ファイル１４０２を使用する。
【００４０】
（ＩＰモデル構成ＤＢ２０３の記憶内容）
図１５は、ＩＰモデル構成ＤＢ２０３の記憶内容を示す説明図である。図１５において、ＩＰモデル構成ＤＢ２０３は、レコードごとに、構成ＩＤとＩＰモデル構成データを記憶する。構成ＩＤは、ＩＰモデル構成データを特定する識別情報である。ＩＰモデル構成データは、設計者により作成されたデータであり、設計対象であるＩＰモデルのブロック構成を示している。図１において説明したように、矩形のブロックは、上述したＩＦ、レジスタ、ビヘビアとなるＩＰであり、ＩＰ間の矢印は、ＩＰ間相互の接続関係を示している。
【００４１】
図１６は、構成ＩＤ：Ｃ１のＩＰモデル構成データを示す説明図である。図１６において、このＩＰモデル構成データ１６００では、図１２−２に示したＩＦ−レジスタ−ビヘビア間接続属性ファイル１２０２と図１３−２に示したＩＦ−ビヘビア間接続属性ファイル１３０２とリンクする。
【００４２】
図１７は、構成ＩＤ：Ｃ２のＩＰモデル構成データを示す説明図である。図１７において、このＩＰモデル構成データ１７００では、図１１−２に示したＩＦ−ビヘビア間接続属性ファイル１１０２と図１３−３に示したＩＦ−ビヘビア間接続属性ファイル１３０３とリンクする。
【００４３】
図１８は、構成ＩＤ：Ｃ３のＩＰモデル構成データを示す説明図である。図１８において、このＩＰモデル構成データ１８００では、図１２−２に示したＩＦ−レジスタ−ビヘビア間接続属性ファイル１２０２と、図１４−２に示したビヘビア間接続属性ファイル１４０２と、図１３−３に示したＩＦ−ビヘビア間接続属性ファイル１３０３とリンクする。
【００４４】
（派生品との関係）
図１９は、派生品との関係を示す説明図である。派生品とは、親要素（図３、図５、図７を参照）から改良されたＩＰのソースコードである。派生品は、先祖となるソースコードをルートとしてツリー構造を形成する。図１９では、ビヘビア「Ｂｅｈａｖｉｏｒ＿Ａ」について示している。図７に示したように、各ビヘビアについて親要素とリンクしておくことにより、図１９のようなツリー構造を得ることができる。このような派生品は、接続属性ファイルにより定義することができる。
【００４５】
このようなツリー構造を派生品リストと称す。派生品リストは、ＩＰモデル構成データのＩＰ（矩形のブロック）が選択されると、呼び出される。図１９の派生品リストは、たとえば、図１６に示したビヘビアである「Ｂｅｈａｖｉｏｒ＿Ａ」が設計者に選択されると、コンピュータが「Ｂｅｈａｖｉｏｒ＿Ａ」を親要素とするビヘビアとして「Ｂｅｈａｖｉｏｒ＿Ａ２」を取得し、つぎに、「Ｂｅｈａｖｉｏｒ＿Ａ２」を親要素とするビヘビアとして「Ｂｅｈａｖｉｏｒ＿Ａ３−１」、「Ｂｅｈａｖｉｏｒ＿Ａ３−２」を取得する。このように取得されなくなるまで繰り返すことで、派生品リストが自動的に得られることとなる。
【００４６】
図２０は、派生品を作成する場合の接続属性ファイルの具体例を示す説明図である。図２０の接続属性ファイル２０００は、クラスの継承による接続関係を示している。「Ｂｅｈａｖｉｏｒ＿Ａ」はパラメータ「ＰａｒａｍＡ」を持ち、「Ｂｅｈａｖｉｏｒ＿Ａ２」はパラメータ「ＰａｒａｍＡ２」を持つ。「Ｂｅｈａｖｉｏｒ＿Ａ２」は「ＰａｒａｍＡ２」と「Ｂｅｈａｖｉｏｒ＿Ａ」のパラメータも持つことになる。つまり、「Ｂｅｈａｖｉｏｒ＿Ａ」の派生品として「Ｂｅｈａｖｉｏｒ＿Ａ」を開発したことになる。なお、派生品の開発は、この手法に限らず、親要素のソースコードを設計者自ら追加変更してＩＰＤＢ２０１にエントリすることで、派生品とすることもできる。この場合、親要素へのポインタも生成しておく。
【００４７】
（ＩＰモデル生成装置のハードウェア構成）
図２１は、実施の形態にかかるＩＰモデル生成装置のハードウェア構成を示すブロック図である。図２１において、ＩＰモデル生成装置は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）２１０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２１０３と、磁気ディスクドライブ２１０４と、磁気ディスク２１０５と、光ディスクドライブ２１０６と、光ディスク２１０７と、ディスプレイ２１０８と、レジスタ（Ｉｎｔｅｒｆａｃｅ）２１０９と、キーボード２１１０と、マウス２１１１と、スキャナ２１１２と、プリンタ２１１３と、を備えている。また、各構成部はバス２１００によってそれぞれ接続されている。
【００４８】
ここで、ＣＰＵ２１０１は、ＩＰモデル生成装置の全体の制御を司る。ＲＯＭ２１０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ２１０３は、ＣＰＵ２１０１のワークエリアとして使用される。磁気ディスクドライブ２１０４は、ＣＰＵ２１０１の制御にしたがって磁気ディスク２１０５に対するデータのリード／ライトを制御する。磁気ディスク２１０５は、磁気ディスクドライブ２１０４の制御で書き込まれたデータを記憶する。
【００４９】
光ディスクドライブ２１０６は、ＣＰＵ２１０１の制御にしたがって光ディスク２１０７に対するデータのリード／ライトを制御する。光ディスク２１０７は、光ディスクドライブ２１０６の制御で書き込まれたデータを記憶したり、光ディスク２１０７に記憶されたデータをコンピュータに読み取らせたりする。
【００５０】
ディスプレイ２１０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ２１０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００５１】
インターフェース（以下、「Ｉ／Ｆ」と略する。）２１０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク２１１４に接続され、このネットワーク２１１４を介して他の装置に接続される。そして、レジスタ２１０９は、ネットワーク２１１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。レジスタ２１０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００５２】
キーボード２１１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス２１１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００５３】
スキャナ２１１２は、画像を光学的に読み取り、ＩＰモデル生成装置内に画像データを取り込む。なお、スキャナ２１１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ２１１３は、画像データや文書データを印刷する。プリンタ２１１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００５４】
（ＩＰモデル生成装置の機能的構成）
つぎに、ＩＰモデル生成装置の機能的構成について説明する。図２２は、ＩＰモデル生成装置の機能的構成を示すブロック図である。ＩＰモデル生成装置２２００は、ＩＰＤＢ２０１と、接続属性ＤＢ２０２と、ＩＰモデル構成ＤＢ２０３と、ＩＰモデル選択部２２０１と、構成データ抽出部２２０２と、接続属性ファイル抽出部２２０３と、ＩＰ抽出部２２０４と、出力部２２０５と、ＩＰ選択部２２０６と、派生品リスト取得部２２０７と、派生品選択部２２０８と、変換部２２０９と、を含む構成である。
【００５５】
この制御部となる機能（ＩＰモデル選択部２２０１〜変換部２２０９）は、具体的には、たとえば、図２１に示したＲＯＭ２１０２、ＲＡＭ２１０３、磁気ディスク２１０５、光ディスク２１０７などの記憶領域に記憶されたプログラムをＣＰＵ２１０１に実行させることにより、または、Ｉ／Ｆ２１０９により、その機能を実現する。ＩＰＤＢ２０１、接続属性ＤＢ２０２、およびＩＰモデル構成ＤＢ２０３は、具体的には、たとえば、図２１に示したＲＯＭ２１０２、ＲＡＭ２１０３、磁気ディスク２１０５、光ディスク２１０７などの記憶領域によりその機能を実現する。
【００５６】
ＩＰモデル選択部２２０１は、流用対象ＩＰモデルの選択を受け付ける機能を有する。具体的には、たとえば、図１５に示したＩＰモデル構成ＤＢ２０３の記憶内容がディスプレイ２１０８に表示された場合、マウスなどを用いて、流用したいＩＰモデル構成データの構成ＩＤを選択する。
【００５７】
構成データ抽出部２２０２は、ＩＰモデル選択部２２０１によって選択されたＩＰモデルの構成データを、ＩＰモデル構成ＤＢ２０３から抽出する機能を有する。具体的には、たとえば、構成ＩＤが選択されたのをトリガとして、選択構成ＩＤをＩＰモデル構成ＤＢ２０３に送り、その選択構成ＩＤにより特定されるＩＰモデル構成データを読み出す。
【００５８】
接続属性ファイル抽出部２２０３は、構成データ抽出部２２０２によって抽出されたＩＰモデル構成データにより定義されているＩＰ間の接続関係を定義する接続属性ファイルを、接続属性データベースから抽出する機能を有する。具体的には、抽出されたＩＰモデル構成データにリンクされている接続属性ファイルを、接続属性ＤＢ２０２から読み出す。たとえば、図１７に示したＩＰモデル構成データ１７００が抽出された場合、ＩＦ−ビヘビア間接続属性ファイル１１０２、１３０３を読み出す。
【００５９】
ＩＰ抽出部２２０４は、構成データ抽出部２２０２によって抽出された構成データにより定義されているＩＰのソースコードをＩＰＤＢ２０１から抽出する機能を有する。接続属性ファイルには、接続されるＩＰへのポインタが埋め込まれているため、そのポインタにより該当するＩＰのソースコードをＩＰＤＢ２０１から読み出す。
【００６０】
出力部２２０５は、接続属性ファイル抽出部２２０３によって抽出された接続属性ファイルとＩＰ抽出部２２０４によって抽出されたＩＰのソースコードを流用対象ＩＰモデルとして出力する機能を有する。具体的には、たとえば、抽出された接続属性ファイルとＩＰのソースコードをそのまま出力する。また、これらを単にまとめて、単一のファイルとして出力することとしてもよい。ＩＰモデルの出力形式は、ディスプレイへの表示、プリンタによる印刷出力、外部のコンピュータへの送信、記憶領域への書き出しなどがある。
【００６１】
ＩＰ選択部２２０６は、構成データ抽出部２２０２によって抽出された構成データ内のＩＰの選択を受け付ける機能を有する。具体的には、たとえば、ＩＰモデル構成データがディスプレイに表示された場合、マウスなどを用いて、ＩＰを選択する。
【００６２】
派生品取得部２２０７は、ＩＰ選択部２２０６によりＩＰが選択されるのをトリガとして、選択ＩＰの派生品リストを取得する。具体的には、たとえば、図１９において、ビヘビア「Ｂｅｈａｖｉｏｒ＿Ａ」を選択すると、接続属性ＤＢ２０２にアクセスして、コンピュータが「Ｂｅｈａｖｉｏｒ＿Ａ」を親要素とするビヘビアとして「Ｂｅｈａｖｉｏｒ＿Ａ２」を取得し、つぎに、「Ｂｅｈａｖｉｏｒ＿Ａ２」を親要素とするビヘビアとして「Ｂｅｈａｖｉｏｒ＿Ａ３−１」、「Ｂｅｈａｖｉｏｒ＿Ａ３−２」を取得する。このように取得されなくなるまで繰り返すことで、派生品リストが自動的に得られることとなる。
【００６３】
派生品選択部２２０８は、ＩＰ選択部２２０６によって選択されたＩＰの派生品の選択を受け付ける機能を有する。具体的には、たとえば、派生品リストがディスプレイに表示された場合、マウスなどを用いて、派生品リストの中から派生品を選択する。
【００６４】
変換部２２０９は、接続属性ファイル抽出部２２０３によって抽出された接続属性ファイルにおいて、ＩＰ選択部２２０６によって選択されたＩＰを、派生品選択部２２０８によって選択された派生品に変換する機能を有する。具体的には、派生品の選択が受け付けられると、接続属性ファイル内の選択ＩＰの記述を選択派生品の記述に変換する。たとえば、図１６のＩＰモデル構成データ１６００において、ビヘビア「Ｂｅｈａｖｉｏｒ＿Ａ」をその派生品「Ｂｅｈａｖｉｏｒ＿Ａ２」に変更する場合、ビヘビア「Ｂｅｈａｖｉｏｒ＿Ａ」が記述されているＩＦ−レジスタ−ビヘビア間接続属性ファイル１２０２内の「Ｂｅｈａｖｉｏｒ＿Ａ（）」を「Ｂｅｈａｖｉｏｒ＿Ａ２（）」に変換する。
【００６５】
図２３は、変換後のＩＦ−レジスタ−ビヘビア間接続属性ファイル２３００を示す説明図である。同様に、ＩＦ−ビヘビア間接続属性ファイル１３０２内の「Ｂｅｈａｖｉｏｒ＿Ａ（ｖｉｏｄ）」を「Ｂｅｈａｖｉｏｒ＿Ａ２（ｖｉｏｄ）」に変換する。図２４は、変換後のＩＦ−レジスタ−ビヘビア間接続属性ファイル２４００を示す説明図である。また、図２５は、変換後のＩＰモデル構成データ２５００を示す説明図である。
【００６６】
これにより、ＩＰ抽出部２２０４は、変換部２２０９によって変換された接続属性ファイルに記述されている派生品のソースコードを、ＩＰＤＢ２０１から抽出することとなる。なお、変換により得られたＩＦ−レジスタ−ビヘビア間接続属性ファイル２３００およびＩＦ−レジスタ−ビヘビア間接続属性ファイル２４００は、接続属性ＤＢ２０２にエントリ（新規登録）され、ＩＰモデル構成データ２５００は、ＩＰモデル構成ＤＢ２０３にエントリ（新規登録）される。
【００６７】
（ＩＰモデル生成処理手順）
図２６は、ＩＰモデル生成装置によるＩＰモデル生成処理手順を示すフローチャートである。本フローチャートは、ＩＰモデル生成装置による自動実行の手順を示している。まず、ＩＰモデル選択部２２０１により、流用対象ＩＰモデルのＩＰモデル構成データの構成ＩＤが選択されるのを待ち受ける（ステップＳ２６０１：Ｎｏ）。
【００６８】
選択された場合（ステップＳ２６０１：Ｙｅｓ）、構成データ抽出部２２０２により、その構成ＩＤを手がかりとして流用対象ＩＰモデルのＩＰモデル構成データをＩＰモデル構成ＤＢ２０３から抽出する（ステップＳ２６０２）。つぎに、接続属性ファイル抽出部２２０３により、抽出ＩＰモデル構成データの接続属性ファイルを接続属性ＤＢ２０２から抽出する（ステップＳ２６０３）。
【００６９】
そして、抽出ＩＰモデル構成データのＩＰが選択されたか否かを判断する（ステップＳ２６０４）。ＩＰが選択されない場合（ステップＳ２６０４：Ｎｏ）、ステップＳ２６０９に移行する。ＩＰが選択された場合（ステップＳ２６０４：Ｙｅｓ）、派生品リスト取得部２２０７により、選択ＩＰの派生品リストを取得する（ステップＳ２６０５）。すでに取得済みである場合は、つぎのステップＳ２６０６に移行する。
【００７０】
そして、選択ＩＰの派生品が選択されなかった場合（ステップＳ２６０６：Ｎｏ）、ステップＳ２６０９に移行する。一方、選択ＩＰの派生品が選択された場合（ステップＳ２６０６：Ｙｅｓ）、ＩＰモデル構成データ上の選択ＩＰを派生品に変換し、接続属性ファイルに記述されている選択ＩＰを、派生品に変換する（ステップＳ２６０７）ことで、接続属性ファイルを変換する（ステップＳ２６０８）。
【００７１】
このあと、ステップＳ２６０９に移行する。ステップＳ２６０９では、選択終了入力されたか否かを判断する（ステップＳ２６０９）。選択終了入力がない場合（ステップＳ２６０９：Ｎｏ）、ステップＳ２６０４に戻る。一方、選択終了入力があった場合（ステップＳ２６０９：Ｙｅｓ）、ＩＰ抽出部２２０４により、ステップＳ２６０２で抽出されたＩＰモデル構成データ（派生品への変換があった場合はステップＳ２６０８の変換後のＩＰモデル構成データ）を構成するＩＰ（派生品も含む）のソースコードをＩＰＤＢ２０１から抽出する（ステップＳ２６１０）。
【００７２】
そして、出力部２２０５により、接続属性ファイルおよびＩＰのソースコードを出力する（ステップＳ２６１１）。これにより、ＩＰモデル生成処理を終了する。なお、このあと、必要に応じて、ラッパを生成して、外部ＩＦと接続することとしてもよい。
【００７３】
以上説明したように、本実施の形態によれば、ＩＰモデルの構成要素の種別を、ＩＦ、レジスタ、およびビヘビアというたかだか３種類に分類するだけで、接続属性という単純な記述内容に局所化することができる。また、接続属性の組み合わせによりＩＰモデルを表現することができる。
【００７４】
したがって、ＩＰモデルを構成するＩＰ間の接続属性の再利用性の向上を図ることができる。また、各処理を分割し修正箇所を局所化することにより再利用性を向上することができる。また、この局所化により、派生品種の検証範囲の絞込みをおこなうことができる。したがって、テンプレートのように全品種を吸収する必要がなくなり、品種単位で爆発的にテンプレートコードが増大することも生じない。したがって、ソースコードの可読性が損なわれず、また、バグが伝播しないため、ＩＰモデルの品質向上を図ることができる。
【００７５】
なお、本実施の形態で説明したＩＰモデル生成方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な媒体であってもよい。
【００７６】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００７７】
（付記１）ハードウェア化する機能をプログラム記述でモデル化したＩＰ（知的所有権）モデルを管理するＩＰモデル管理装置であって、
前記ＩＰモデルを、外部との通信を定義するＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、入出力するデータを定義するレジスタ、関数または演算を定義するビヘビアの３つのＥＳＬ（Ｅｌｅｃｔｒｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ：構成要素）に分けて、データ保存部に管理保存し、
前記レジスタとビヘビア間、前記ビヘビアとビヘビア間、前記ビヘビアとＡＰＩ間の３つの接続関係を定義した接続データを前記データ保管部に保存することを特徴とするＩＰモデル管理装置。
【００７８】
（付記２）ハードウェア化する機能をプログラム記述でモデル化したＩＰ（知的所有権）モデルを設計するＩＰモデル生成装置であって、
ＩＰモデルを構成する外部との通信を定義するＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、入出力するデータを定義するレジスタ、関数または演算を定義するビヘビアの３つのＥＳＬ（Ｅｌｅｃｔｒｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ：構成要素）を保存するデータ保存手段と、
前記データ保存手段から、前記ハードウェア化する機能に適合するＥＳＬを抽出する抽出手段と、
前記抽出したＥＳＬを基に、前記レジスタとビヘビア間、前記ビヘビアとビヘビア間、前記ビヘビアとＡＰＩ間の３つの接続関係を定義するデータを作成するモデル生成手段と、
を有することを特徴とするＩＰモデル生成装置。
【００７９】
（付記３）ハードウェア化する機能をプログラム記述でモデル化したＩＰ（知的所有権）モデルを設計するＩＰモデルの生成方法であって、
ＩＰモデルを構成する外部との通信を定義するＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、入出力するデータを定義するレジスタ、関数または演算を定義するビヘビアの３つのＥＳＬ（Ｅｌｅｃｔｒｉｃ  Ｓｙｓｔｅｍ  Ｌｅｖｅｌ：構成要素）を保存するデータ保存手段より、前記ハードウェア化する機能に適合するＥＳＬを抽出する工程と、
前記抽出したＥＳＬを基に、前記レジスタとビヘビア間、前記ビヘビアとビヘビア間、前記ビヘビアとＡＰＩ間の３つの接続関係を定義するデータを作成する工程と、
を含むことを特徴とするＩＰモデル生成方法。
【００８０】
（付記４）データの入出力をあらわすＩＦ、前記データを保持するレジスタ、前記データに基づいて処理をおこなうビヘビアに分離されたＩＰのソースコードを記憶するＩＰデータベースと、前記ＩＰ間の接続関係を定義する接続属性ファイルを記憶する接続属性データベースと、前記ＩＰと前記接続属性ファイルにより定義されたＩＰモデルの構成をあらわす構成データを記憶するＩＰモデル構成データベースと、にアクセス可能なＩＰモデル生成装置であって、
流用対象ＩＰモデルの選択を受け付ける選択手段と、
前記選択手段によって選択された流用対象ＩＰモデルに関する構成データを前記ＩＰモデル構成データベースから抽出する構成データ抽出手段と、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰ間の接続関係を定義する接続属性ファイルを、前記接続属性データベースから抽出する接続属性ファイル抽出手段と、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰのソースコードを前記ＩＰデータベースから抽出するＩＰ抽出手段と、
前記接続属性ファイル抽出手段によって抽出された接続属性ファイルと前記ＩＰ抽出手段によって抽出されたＩＰのソースコードを前記流用対象ＩＰモデルとして出力する出力手段と、
を備えることを特徴とするＩＰモデル生成装置。
【００８１】
（付記５）前記構成データ抽出手段によって抽出された構成データ内のＩＰの選択を受け付けるＩＰ選択手段と、
前記ＩＰ選択手段によって選択されたＩＰの派生品の選択を受け付ける派生品選択手段と、
前記接続属性ファイル抽出手段によって抽出された接続属性ファイルにおいて、前記ＩＰ選択手段によって選択されたＩＰを、前記派生品選択手段によって選択された派生品に変換する変換手段と、を備え、
前記ＩＰ抽出手段は、
前記変換手段によって変換された接続属性ファイルに記述されている前記派生品のソースコードを、前記ＩＰデータベースから抽出することを特徴とする付記４に記載のＩＰモデル生成装置。
【００８２】
（付記６）データの入出力をあらわすＩＦ、前記データを保持するレジスタ、前記データに基づいて処理をおこなうビヘビアに分離されたＩＰのソースコードを記憶するＩＰデータベースと、前記ＩＰ間の接続関係を定義する接続属性ファイルを記憶する接続属性データベースと、前記ＩＰと前記接続属性ファイルにより定義されたＩＰモデルの構成をあらわす構成データを記憶するＩＰモデル構成データベースと、にアクセス可能なコンピュータが、
流用対象ＩＰモデルの選択を受け付ける選択工程と、
前記選択工程によって選択された流用対象ＩＰモデルに関する構成データを前記ＩＰモデル構成データベースから抽出する構成データ抽出工程と、
前記構成データ抽出工程によって抽出された構成データにより定義されているＩＰ間の接続関係を定義する接続属性ファイルを、前記接続属性データベースから抽出する接続属性ファイル抽出工程と、
前記構成データ抽出工程によって抽出された構成データにより定義されているＩＰのソースコードを前記ＩＰデータベースから抽出するＩＰ抽出工程と、
前記接続属性ファイル抽出工程によって抽出された接続属性ファイルと前記ＩＰ抽出工程によって抽出されたＩＰのソースコードを前記流用対象ＩＰモデルとして出力する出力工程と、
を実行することを特徴とするＩＰモデル生成方法。
【００８３】
（付記７）前記構成データ抽出工程によって抽出された構成データ内のＩＰの選択を受け付けるＩＰ選択工程と、
前記ＩＰ選択工程によって選択されたＩＰの派生品の選択を受け付ける派生品選択工程と、
前記接続属性ファイル抽出工程によって抽出された接続属性ファイルにおいて、前記ＩＰ選択工程によって選択されたＩＰを、前記派生品選択工程によって選択された派生品に変換する変換工程と、前記コンピュータが実行し、
前記ＩＰ抽出工程は、
前記変換工程によって変換された接続属性ファイルに記述されている前記派生品のソースコードを、前記ＩＰデータベースから抽出することを特徴とする付記６に記載のＩＰモデル生成方法。
【００８４】
（付記８）データの入出力をあらわすＩＦ、前記データを保持するレジスタ、前記データに基づいて処理をおこなうビヘビアに分離されたＩＰのソースコードを記憶するＩＰデータベースと、前記ＩＰ間の接続関係を定義する接続属性ファイルを記憶する接続属性データベースと、前記ＩＰと前記接続属性ファイルにより定義されたＩＰモデルの構成をあらわす構成データを記憶するＩＰモデル構成データベースと、にアクセス可能なコンピュータを、
流用対象ＩＰモデルの選択を受け付ける選択手段、
前記選択手段によって選択された流用対象ＩＰモデルに関する構成データを前記ＩＰモデル構成データベースから抽出する構成データ抽出手段、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰ間の接続関係を定義する接続属性ファイルを、前記接続属性データベースから抽出する接続属性ファイル抽出手段、
前記構成データ抽出手段によって抽出された構成データにより定義されているＩＰのソースコードを前記ＩＰデータベースから抽出するＩＰ抽出手段、
前記接続属性ファイル抽出手段によって抽出された接続属性ファイルと前記ＩＰ抽出手段によって抽出されたＩＰのソースコードを前記流用対象ＩＰモデルとして出力する出力手段、
として機能させることを特徴とするＩＰモデル生成プログラム。
【００８５】
（付記９）前記コンピュータを、
前記構成データ抽出手段によって抽出された構成データ内のＩＰの選択を受け付けるＩＰ選択手段、
前記ＩＰ選択手段によって選択されたＩＰの派生品の選択を受け付ける派生品選択手段、
前記接続属性ファイル抽出手段によって抽出された接続属性ファイルにおいて、前記ＩＰ選択手段によって選択されたＩＰを、前記派生品選択手段によって選択された派生品に変換する変換手段として機能させ、
前記ＩＰ抽出手段は、
前記変換手段によって変換された接続属性ファイルに記述されている前記派生品のソースコードを、前記ＩＰデータベースから抽出することを特徴とする付記８に記載のＩＰモデル生成プログラム。
【図面の簡単な説明】
【００８６】
【図１】本開示技術のＩＰモデルの一例を示すブロック構成図である。
【図２】本開示技術のＩＰモデル管理／生成を示す概略図である。
【図３】ＩＦ属性リストテーブルを示す説明図である。
【図４】ＩＦ属性リストテーブルとソースコードとの関係を示す説明図である。
【図５】レジスタ属性リストテーブルを示す説明図である。
【図６】レジスタ属性リストテーブルとソースコードとの関係を示す説明図である。
【図７】ビヘビア属性リストテーブルを示す説明図である。
【図８】ビヘビア属性リストテーブルとソースコードとの関係を示す説明図である。
【図９】接続属性ＤＢの記憶内容を示す説明図である。
【図１０−１】ＩＦ−レジスタ間接続属性ファイルの一例を示す説明図である。
【図１０−２】図１０−１に示したＩＦ−レジスタ間接続属性ファイルの適用例を示す説明図である。
【図１１−１】ＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。
【図１１−２】図１１−１に示したＩＦ−ビヘビア間接続属性ファイルの適用例を示す説明図である。
【図１２−１】ＩＦ−レジスタ−ビヘビア間接続属性ファイルの一例を示す説明図である。
【図１２−２】図１２−１に示したＩＦ−レジスタ−ビヘビア間接続属性ファイルの適用例を示す説明図である。
【図１３−１】ＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。
【図１３−２】図１３−１に示したＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。
【図１３−３】図１３−１に示したＩＦ−ビヘビア間接続属性ファイルの一例を示す説明図である。
【図１４−１】ビヘビア間接続属性ファイルの一例を示す説明図である。
【図１４−２】図１４−１に示したビヘビア間接続属性ファイルの一例を示す説明図である。
【図１５】ＩＰモデル構成ＤＢの記憶内容を示す説明図である。
【図１６】構成ＩＤ：Ｃ１のＩＰモデル構成データを示す説明図である。
【図１７】構成ＩＤ：Ｃ２のＩＰモデル構成データを示す説明図である。
【図１８】構成ＩＤ：Ｃ３のＩＰモデル構成データを示す説明図である。
【図１９】派生品との関係を示す説明図である。
【図２０】派生品を作成する場合の接続属性ファイルの具体例を示す説明図である。
【図２１】実施の形態にかかるＩＰモデル生成装置のハードウェア構成を示すブロック図である。
【図２２】ＩＰモデル生成装置の機能的構成を示すブロック図である。
【図２３】変換後のＩＦ−レジスタ−ビヘビア間接続属性ファイルを示す説明図である。
【図２４】変換後のＩＦ−レジスタ−ビヘビア間接続属性ファイルを示す説明図である。
【図２５】変換後のＩＰモデル構成データを示す説明図である。
【図２６】ＩＰモデル生成装置によるＩＰモデル生成処理手順を示すフローチャートである。
【符号の説明】
【００８７】
２０１  ＩＰＤＢ
２０２  接続属性ＤＢ
２０３  ＩＰモデル構成ＤＢ
２２００  ＩＰモデル生成装置
２２０１  ＩＰモデル選択部
２２０２  構成データ抽出部
２２０３  接続属性ファイル抽出部
２２０４  ＩＰ抽出部
２２０５  出力部
２２０６  ＩＰ選択部
２２０７  派生品リスト取得部
２２０８  派生品選択部
２２０９  変換部
【図１】
2010003195.tif 000003
【図２】
2010003195.tif 000004
【図３】
2010003195.tif 000005
【図４】
2010003195.tif 000006
【図５】
2010003195.tif 000007
【図６】
2010003195.tif 000008
【図７】
2010003195.tif 000009
【図８】
2010003195.tif 000010
【図９】
2010003195.tif 000011
【図１０−１】
2010003195.tif 000012
【図１０−２】
2010003195.tif 000013
【図１１−１】
2010003195.tif 000014
【図１１−２】
2010003195.tif 000015
【図１２−１】
2010003195.tif 000016
【図１２−２】
2010003195.tif 000017
【図１３−１】
2010003195.tif 000018
【図１３−２】
2010003195.tif 000019
【図１３−３】
2010003195.tif 000020
【図１４−１】
2010003195.tif 000021
【図１４−２】
2010003195.tif 000022
【図１５】
2010003195.tif 000023
【図１６】
2010003195.tif 000024
【図１７】
2010003195.tif 000025
【図１８】
2010003195.tif 000026
【図１９】
2010003195.tif 000027
【図２０】
2010003195.tif 000028
【図２１】
2010003195.tif 000029
【図２２】
2010003195.tif 000030
【図２３】
2010003195.tif 000031
【図２４】
2010003195.tif 000032
【図２５】
2010003195.tif 000033
【図２６】
2010003195.tif 000034