(57)【要約】      （修正有）【課題】ＬＳＩの開発効率を向上させることができ、又、設計作業や開発されるＬＳＩの品質を向上させることができるＬＳＩ設計システム及びＬＳＩ設計プログラムを提供すること。【解決手段】複数のＩＰ１５の各々は、ＬＳＩ設計の検証に用いられる設計制約を示すＩＰ制約情報ＣＯＮ−ＩＰを有する。システム構築部２０は、組み合わされた複数のＩＰ１５により決定されるシステムレベルのネットリストとしてのシステムネットリストＮＬ−ＳＹＳを生成する。システム制約情報生成部３０は、そのシステムネットリストＮＬ−ＳＹＳ及び複数のＩＰ１５のそれぞれが有する複数のＩＰ制約情報ＣＯＮ−ＩＰに基づいて、複数のＩＰ１５の組み合わせに依存するシステムレベルの設計制約を示すシステム制約情報ＣＯＮ−ＳＹＳを生成する。【選択図】図１
2006004313.tif 000002
【特許請求の範囲】
【請求項１】
設計資産（IP; Intellectual property）を用いることによりシステムレベルでＬＳＩの設計を行うＬＳＩ設計システムであって、
複数のＩＰを含むＩＰ群を格納するデータベースと、
前記データベースにアクセス可能に接続されたシステム構築部と、
前記データベースにアクセス可能に接続されたシステム制約情報生成部と、
前記システム構築部及び前記システム制約情報生成部に接続された記憶部と
を具備し、
前記複数のＩＰの各々は、ＬＳＩ設計の検証に用いられる設計制約を示すＩＰ制約情報を有し、
前記システム構築部は、組み合わされた前記複数のＩＰにより決定されるシステムレベルのネットリストとしてのシステムネットリストを生成し、前記システムネットリストを前記記憶部に出力し、
前記システム制約情報生成部は、前記記憶部に格納された前記システムネットリスト及び前記複数のＩＰのそれぞれが有する複数の前記ＩＰ制約情報に基づいて、前記複数のＩＰの組み合わせに依存するシステムレベルの設計制約を示すシステム制約情報を生成し、前記システム制約情報を前記記憶部に出力する
ＬＳＩ設計システム。
【請求項２】
請求項１に記載のＬＳＩ設計システムであって、
前記システム制約情報生成部は、階層情報変換部を備え、
前記階層情報変換部は、前記システムネットリストを参照し、前記複数のＩＰ制約情報の各々に含まれるＩＰレベルの階層情報をシステムレベルの階層情報に変換することによって、前記複数のＩＰ制約情報を前記システム制約情報に変換する
ＬＳＩ設計システム。
【請求項３】
請求項２に記載のＬＳＩ設計システムであって、
前記システム制約情報生成部は、接続制約検出部を更に備え、
前記接続制約検出部は、前記システムネットリストを参照することによって、前記複数のＩＰの接続関係に依存するシステムレベルの設計制約を示す接続制約情報を生成し、前記接続制約情報を前記システム制約情報に追加する
ＬＳＩ設計システム。
【請求項４】
請求項３に記載のＬＳＩ設計システムであって、
前記複数のＩＰは、ＩＰ間の接続に用いられ複数の端子が規定された接続ＩＰを含み、
前記接続制約検出部は、前記システムネットリストを参照することによって、前記複数の端子間のフォルスパスを検出し、前記フォルスパスを前記接続制約情報として生成する
ＬＳＩ設計システム。
【請求項５】
請求項４に記載のＬＳＩ設計システムであって、
前記接続ＩＰは、前記ＩＰ制約情報に加えて、前記フォルスパスを検出するための拡張プログラムを有し、
前記接続制約検出部は、前記拡張プログラムを前記データベースから読み込み実行する
ＬＳＩ設計システム。
【請求項６】
請求項１乃至５のいずれかに記載のＬＳＩ設計システムであって、
前記ＩＰ制約情報、前記接続制約情報、及び前記システム制約情報は、ＳＴＡ（Static Timing Analysis）に用いられる設計制約を示す
ＬＳＩ設計システム。
【請求項７】
請求項６に記載のＬＳＩ設計システムであって、
生成された前記システムネットリスト及び前記システム制約情報に基づいてＳＴＡを実行するＳＴＡ部を更に具備する
ＬＳＩ設計システム。
【請求項８】
設計資産（IP; Intellectual property）を用いることによりシステムレベルでＬＳＩの設計を行うＬＳＩ設計システムにおけるＬＳＩ設計プログラムであって、
前記ＬＳＩ設計システムは、複数のＩＰを含むＩＰ群を格納するデータベースを備え、前記複数のＩＰの各々は、設計上の制約でありＬＳＩ設計の検証に用いられる設計制約を示すＩＰ制約情報を有し、
（Ａ）組み合わされた前記複数のＩＰにより決定されるシステムレベルのネットリストとしてのシステムネットリストを生成するステップと、
（Ｂ）前記システムネットリストを参照することによって、複数の前記ＩＰ制約情報の各々に含まれるＩＰレベルの階層情報をシステムレベルの階層情報に変換するステップと、
（Ｃ）前記システムレベルの階層情報を用いることによって、前記複数のＩＰ制約情報から、システムレベルのＩＰ制約情報としての複数の第１制約情報をそれぞれ生成するステップと、
（Ｄ）前記システムネットリストを参照することによって、前記複数のＩＰの接続関係に依存するシステムレベルの設計制約を示す第２制約情報を生成するステップと、
（Ｅ）前記複数の第１制約情報及び前記第２制約情報を、前記複数のＩＰの組み合わせに依存するシステムレベルの設計制約を示すシステム制約情報として生成するステップと
をコンピュータに実行させるための
ＬＳＩ設計プログラム。
【請求項９】
請求項８に記載のＬＳＩ設計プログラムであって、
（Ｆ）前記システム制約情報が示す設計制約を用いることによって、ＳＴＡ（Static Timing Analysis）を実行するステップ
を更にコンピュータに実行させるための
ＬＳＩ設計プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ設計システム及びＬＳＩ設計プログラムに関し、特に、設計資産（ＩＰ；  Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）を用いてプラットフォームベースでＬＳＩの設計を行うＬＳＩ設計システム及びＬＳＩ設計プログラムに関する。
【背景技術】
【０００２】
ＬＳＩ集積度の向上によって、１つのシステムが１チップに構築されたシステムオンチップが開発されてきている。これに伴い、ＬＳＩの設計は、単なる部分回路の設計ではなく、システムの設計そのものになりつつある。つまり、ＬＳＩをシステムレベルで設計し、また、得られたＬＳＩ設計をシステムレベルで解析／検証することが必要となってきている。
【０００３】
このようなＬＳＩ設計において、開発効率を向上させるために、既存の「設計資産（ＩＰ；  Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）」を流用する技術が知られている。このＩＰとは、設計・検証済みの機能ブロックである。複数のＩＰを組み合わせてＬＳＩを設計することにより、設計期間が短縮され、生産性が向上する。特に、プラットフォームベース設計技術によれば、基本的なＩＰが集積された汎用プラットフォームに、製品独自の機能を実現するためのＩＰが搭載される。これにより、開発効率が一層向上する。
【０００４】
また、ＬＳＩの設計フローにおいて、ＬＳＩのフロアプランが決定される前に、回路の論理を解析／検証する「ＳＴＡ（Ｓｔａｔｉｃ  Ｔｉｍｉｎｇ  Ａｎａｌｙｓｉｓ：  静的タイミング解析）」が知られている。このＳＴＡとは、設定されたクロック周波数で同期回路等がタイミング的に正しく動作するかを、シミュレーションパターンを用いずに解析する手法のことである。具体的には、指定端子間のパスにおける遅延の解析や、回路におけるセットアップタイム及びホールドタイムの検証が行われる。
【０００５】
このＳＴＡにおいて、各種パラメータの指定が行われる。例えば、フォルスパスの指定や、クロックを設定するためのサイクルやデューティ比等の指定が行われる。フォルスパスとは、設計上の制約から用いられることのないパスであり、タイミング解析の対象から意図的に除外されるパスのことである。これら指定される各種パラメータは、設計上の制約を示し、又、ＳＴＡに制約を与えるパラメータである。以下、このパラメータは「ＳＴＡ制約」と参照される。
【０００６】
従来、プラットフォームベースのＬＳＩ設計工程において、システムレベルのＳＴＡ制約を示す制約情報は、開発されるシステムの構成に応じて、人手により生成されていた。この場合、使用するＩＰの数や回路規模の増大に伴い、ＳＴＡに要する時間が増加し、また、必要な情報の欠落等のミスが発生するという問題があった。これらは、デザインの開始からハードウェアの完成までの時間（ＴＡＴ；  Ｔｕｒｎ  Ａｒｏｕｎｄ  Ｔｉｍｅ）が長期化し、開発効率が低下する原因となる。また、ＳＴＡの不備により、開発されるＬＳＩの品質が低下する原因となる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、ＬＳＩの開発効率を向上させることができるＬＳＩ設計システム及びＬＳＩ設計プログラムを提供することにある。
【０００８】
本発明の他の目的は、設計作業や開発されるＬＳＩの品質を向上させることができるＬＳＩ設計システム及びＬＳＩ設計プログラムを提供することにある。
【０００９】
本発明の更に他の目的は、設計資産の再利用を促進することができるＬＳＩ設計システム及びＬＳＩ設計プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
以下に、［発明を実施するための最良の形態］で使用される番号・符号を用いて、［課題を解決するための手段］を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために括弧付きで付加されたものである。ただし、それらの番号・符号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１１】
本発明に係るＬＳＩ設計システム（１００）は、複数のＩＰ（１５）を含むＩＰ群を格納するデータベース（１０）と、そのデータベース（１０）にアクセス可能に接続されたシステム構築部（２０）と、そのデータベース（１０）にアクセス可能に接続されたシステム制約情報生成部（３０）と、システム構築部（２０）及びシステム制約情報生成部（３０）に接続された記憶部（４０）とを備える。複数のＩＰ（１５）の各々は、ＬＳＩ設計の検証に用いられる設計制約を示すＩＰ制約情報（ＣＯＮ−ＩＰ）を有する。システム構築部（２０）は、組み合わされた複数のＩＰ（１５）により決定されるシステムレベルのネットリストとしてのシステムネットリスト（ＮＬ−ＳＹＳ）を生成し、そのシステムネットリスト（ＮＬ−ＳＹＳ）を記憶部（４０）に出力する。システム制約情報生成部（３０）は、記憶部（４０）に格納されたシステムネットリスト（ＮＬ−ＳＹＳ）及びデータベース（１０）に格納された複数のＩＰ（１５）のそれぞれが有する複数のＩＰ制約情報（ＣＯＮ−ＩＰ）に基づいて、複数のＩＰ（１５）の組み合わせに依存するシステムレベルの設計制約を示すシステム制約情報（ＣＯＮ−ＳＹＳ）を生成する。生成されたシステム制約情報（ＣＯＮ−ＳＹＳ）は、記憶部（４０）に格納される。
【００１２】
このＬＳＩ設計システム（１００）において、システム制約情報生成部（３０）は、階層情報変換部（３２）を備える。この階層情報変換部（３２）は、システムネットリスト（ＮＬ−ＳＹＳ）を参照し、複数のＩＰ制約情報（ＣＯＮ−ＩＰ）の各々に含まれるＩＰレベルの階層情報をシステムレベルの階層情報に変換することによって、複数のＩＰ制約情報（ＣＯＮ−ＩＰ）をシステム制約情報（ＣＯＮ−ＳＹＳ）に変換する。ここで、階層情報とは、各ＩＰ（１５）に含まれるノードのパスのことである。
【００１３】
また、このＬＳＩ設計システム（１００）において、システム制約情報生成部（３０）は、接続制約検出部（３４）を更に備える。この接続制約検出部（３４）は、システムネットリスト（ＮＬ−ＳＹＳ）を参照することによって、複数のＩＰ（１５）の接続関係に依存するシステムレベルの設計制約を示す接続制約情報（ＣＯＮ２）を生成する。この接続制約情報（ＣＯＮ２）は、システム制約情報（ＣＯＮ−ＳＹＳ）に追加される。
【００１４】
複数のＩＰ（１５）は、ＩＰ（１５）間の接続に用いられ複数の端子（Ｔ１〜Ｔ４）が規定された接続ＩＰ（１５−２）を含む。この時、接続制約検出部（３４）は、システムネットリスト（ＮＬ−ＳＹＳ）を参照することによって、複数の端子（Ｔ１〜Ｔ４）間のフォルスパスを検出する。接続制約検出部（３４）によって生成される接続制約情報（ＣＯＮ２）は、検出されたフォルスパスを示す。また、接続ＩＰ（１５−２）は、ＩＰ制約情報（ＣＯＮ−ＩＰ）に加えて、そのフォルスパスを検出するための拡張プログラム（１６）を有してもよい。この時、接続制約検出部（３４）は、その拡張プログラム（１６）をデータベース（１０）から読み込み実行する。これにより、接続制約情報（ＣＯＮ２）が生成される。
【００１５】
上述のＩＰ制約情報（ＣＯＮ−ＩＰ）、接続制約情報（ＣＯＮ２）、及びシステム制約情報（ＣＯＮ−ＳＹＳ）は、ＳＴＡ（Static Timing Analysis）に用いられる設計制約を示す。この時、本発明に係るＬＳＩ設計システム（１００）は、ＳＴＡ部（８０）を更に備えてもよい。このＳＴＡ部（８０）は、生成され記憶部（４０）に格納されたシステムネットリスト（ＮＬ−ＳＹＳ）及びシステム制約情報（ＣＯＮ−ＳＹＳ）に基づいて、ＳＴＡを実行する。
【００１６】
このように、本発明に係るＬＳＩ設計システム（１００）によれば、ＬＳＩ設計の検証に用いられるシステムレベルの制約情報（ＣＯＮ−ＳＹＳ）は、自動的に生成される。従って、ＬＳＩ設計の検証に要する時間が短縮され、ＬＳＩの開発効率が向上する。また、検証工程におけるミスが抑制されるので、設計作業や開発されるＬＳＩの品質が向上する。更に、拡張プログラム（１６）によって、システム制約情報（ＣＯＮ−ＳＹＳ）は、自動的に更新される。従って、過去に設計された資産を再利用する際に、過去の設計と所望の設計の差分を詳細に把握する必要がない。従って、設計資産の再利用が促進される。
【００１７】
本発明に係るＬＳＩ設計プログラムは、（Ａ）組み合わされた複数のＩＰ（１５）により決定されるシステムネットリスト（ＮＬ−ＳＹＳ）を生成するステップと、（Ｂ）そのシステムネットリスト（ＮＬ−ＳＹＳ）を参照することによって、複数のＩＰ制約情報（ＣＯＮ−ＩＰ）の各々に含まれるＩＰレベルの階層情報をシステムレベルの階層情報に変換するステップと、（Ｃ）そのシステムレベルの階層情報を用いることによって、複数のＩＰ制約情報（ＣＯＮ−ＩＰ）から、システムレベルのＩＰ制約情報としての複数の第１制約情報（ＣＯＮ１）をそれぞれ生成するステップと、（Ｄ）システムネットリスト（ＮＬ−ＳＹＳ）を参照することによって、複数のＩＰ（１５）の接続関係に依存するシステムレベルの設計制約を示す第２制約情報（ＣＯＮ２）を生成するステップと、（Ｅ）生成された複数の第１制約情報（ＣＯＮ１）及び第２制約情報（ＣＯＮ２）を、システム制約情報（ＣＯＮ−ＳＹＳ）として生成するステップとをコンピュータに実行させる。
【００１８】
また、本発明に係るＬＳＩ設計プログラムは、（Ｆ）上記システム制約情報（ＣＯＮ−ＳＹＳ）が示す設計制約を用いることによって、ＳＴＡを実行するステップを更にコンピュータに実行させてもよい。
【発明の効果】
【００１９】
本発明に係るＬＳＩ設計システム及びＬＳＩ設計プログラムによれば、ＬＳＩの開発効率が向上する。
【００２０】
本発明に係るＬＳＩ設計システム及びＬＳＩ設計プログラムによれば、設計作業や開発されるＬＳＩの品質が向上する。
【００２１】
本発明に係るＬＳＩ設計システム及びＬＳＩ設計プログラムによれば、設計資産の再利用が促進される。
【発明を実施するための最良の形態】
【００２２】
添付図面を参照して、本発明によるＬＳＩ設計システム及びＬＳＩ設計プログラムを説明する。
【００２３】
図１は、本発明に係るＬＳＩ設計システムの構成を示すブロック図である。このＬＳＩ設計システム１００は、データベース１０、システム構築部２０、システム制約情報生成部３０、記憶部４０、制御部５０、入力部６０、及び出力部７０を備えている。システム構築部２０は、データベース１０にアクセス可能に接続されている。また、システム制約情報生成部３０は、データベース１０にアクセス可能に接続されている。このシステム制約情報生成部３０は、階層情報変換部３２と接続制約検出部３４とを備えている。
【００２４】
データベース１０には、ＬＳＩ設計に使用されるＩＰ１５のセット（ＩＰ１〜ＩＰｎ）が格納されている。このデータベース１０は、制御部５０に接続されている。例えば、複数のＬＳＩ設計システム１００のそれぞれの制御部５０が、ネットワークを介してこのデータベース１０に接続され、複数のＬＳＩ設計システム１００において、このデータベース１０が参照される。
【００２５】
記憶部４０は、制御部５０に接続されている。記憶部４０には、制御部５０によって処理される様々なデータが格納される。この記憶部４０として、ＲＡＭやハードディスク装置が例示される。
【００２６】
入力部６０は、制御部５０に接続されている。ユーザは、この入力部６０を用いることにより、ＬＳＩの設計や各種コマンド・データの入力を行うことができる。この入力部６０として、キーボードやマウスが例示される。また、出力部７０は、制御部５０に接続されている。この出力部７０として、ディスプレイが例示される。ユーザは、ディスプレイに表示される情報や図面を参照して、ＬＳＩの設計を行うことができる。
【００２７】
制御部５０は、後述されるシステム構築部２０とシステム制約情報生成部３０の動作を制御する。例えば、制御部５０は、システム構築部２０及びシステム制約情報生成部３０と、データベース１０及び記憶部４０との間の情報（データ）のやりとりを制御する。例えば、この制御部５０は、ＣＰＵ（中央演算処理装置）を含む。この時、システム構築部２０、システム制約情報生成部３０、階層情報変換部３２、及び接続制約検出部３４は、制御部５０のＣＰＵによって実行されるコンピュータプログラムである。
【００２８】
図２は、本発明に係るデータベース１０の構成を詳細に示す概念図である。データベース１０には、ＬＳＩ設計に使用されるＩＰ１５のセット（ＩＰ１：１５−１、ＩＰ２：１５−２、…、ＩＰｎ：１５−ｎ）が格納されている。ＩＰ１５の各々は、ネットリストＮＬ−ＩＰとＩＰ制約情報ＣＯＮ−ＩＰを有している。「ネットリストＮＬ−ＩＰ」は、ＩＰ１５内の回路の接続状態（回路網）を表現したデータであり、例えば、テキストリスト形式で記述されている。
【００２９】
「ＩＰ制約情報ＣＯＮ−ＩＰ」は、設計上の制約であり、ＬＳＩ設計の解析／検証に用いられるタイミング制約等の設計制約を示す。この設計制約として、ＳＴＡにおいて用いられる「ＳＴＡ制約」が例示される。このＳＴＡ制約は、具体的には、フォルスパス、クロック指定（サイクルやデューティ比）、ノードの階層名などを含む。つまり、ＩＰ制約情報ＣＯＮ−ＩＰは、ＩＰ１５の各々に固有の情報であり、ＩＰレベルのＳＴＡ制約を示す。
【００３０】
様々なＩＰ１５の中には、バスＩＰ等のＩＰ間の接続に用いられるＩＰが存在する。このようなＩＰは、以下「接続ＩＰ」と参照される。例えば、図２において、ＩＰ２：１５−２は、バスＩＰ等の接続ＩＰである。この接続ＩＰは、後に詳しく説明される「Ａｄｄ−ｏｎプログラム（拡張プログラム）１６」を有している。
【００３１】
これらネットリストＮＬ−ＩＰ、ＩＰ制約情報ＣＯＮ−ＩＰ、及びＡｄｄ−ｏｎプログラム１６が、パッケージ化され、１つのＩＰ１５として構成されている。これらＩＰ１５のセット（ＩＰ群）は、所定のアプリケーション（ツール）によって予め作成され、データベース１０に格納されている。
【００３２】
次に、以上の構成を有するＬＳＩ設計システム１００の動作を詳しく説明する。図３は、本発明に係るＬＳＩ設計システム１００の動作を概念的に示す図である。
【００３３】
まず、データベース１０に格納されたＩＰ１５のセットの中から、所望のＬＳＩに必要な複数のＩＰ１５が選択される。また、選択された複数のＩＰ１５は、その所望のＬＳＩの構成に応じて組み合わされる。ここで、複数のＩＰ１５の選択・合成は、設計者が入力部６０、出力部７０及び所定のアプリケーション（ツール）を用いることによって行う。あるいは、このＩＰ１５の選択・合成は、システム構築部２０がユーザに提供する機能の１つであってもよい。
【００３４】
システム構築部２０は、上記作業によって組み合わされた複数のＩＰに基づき、「システムネットリストＮＬ−ＳＹＳ」を自動的に生成する。このシステムネットリストＮＬ−ＳＹＳは、システム内のＩＰ１５の接続状態（ＩＰ網）を表現したデータ、すなわち、システムレベルのネットリストである。このシステムネットリストＮＬ−ＳＹＳは、組み合わされた複数のＩＰ１５によって決定され得る。そして、システム構築部２０は、生成されたシステムネットリストＮＬ−ＳＹＳを出力する。出力されたシステムネットリストＮＬ−ＳＹＳは、記憶部４０に格納される（図１参照）。
【００３５】
次に、階層情報変換部３２は、組み合わされた複数のＩＰ１５のそれぞれが有する複数のＩＰ制約情報ＣＯＮ−ＩＰを、データベース１０から読み込む。上述のように、ＩＰ制約情報ＣＯＮ−ＩＰは、ＩＰレベルの制約（ＳＴＡ制約）を示す。階層情報変換部３２は、上記システムネットリストＮＬ−ＳＹＳを参照し、複数のＩＰ制約情報ＣＯＮ−ＩＰを、複数の「変換制約情報ＣＯＮ１」にそれぞれ変換する。この「変換制約情報ＣＯＮ１」は、システムレベルのＩＰ制約情報である。
【００３６】
具体的には、階層情報変換部３２は、ＩＰ制約情報ＣＯＮ−ＩＰに含まれるＩＰレベルの階層情報を、システムレベルの階層情報に変換する。「階層情報」とは、各ＩＰ１５に含まれるノードの階層名（パス）のことである。この階層情報は、各ＩＰにおいて、所定のフォーマットに従って記述されている。例えば、あるＣＰＵ内部のあるノードは、そのＣＰＵに対応するＣＰＵ−ＩＰにおいて、「CPU_IP.main_alu.adder.reg1」（以下、階層情報１と参照される）という階層情報で指定される。
【００３７】
この階層情報１はＩＰレベルの階層情報（パス）であるが、システムレベルで設計を行う場合、システムレベルの階層情報（パス）が必要となる。例えば、設計されるＬＳＩシステムにおいて、上記ＣＰＵ−ＩＰが「ＣＰＵ＿０」と名付けられる場合を考える。この時、上記ノードは、例えば「SOC_TOP.CPU_0.main_alu.adder.reg1」（以下、階層情報２と参照される）という階層情報で指定される。つまり、階層情報変換部３２は、システムネットリストＮＬ−ＳＹＳを参照することによって、階層情報１を階層情報２に自動的に変換することができる。また、階層情報変換部３２は、組み合わされた複数のＩＰ１５に含まれる全ての階層情報を、システムレベルの階層情報に変換する。このようにして、設計されるＬＳＩシステム内部の全てのノードが、システムレベルの階層情報によって指定されることになる。
【００３８】
ＩＰ制約情報ＣＯＮ−ＩＰが示すフォルスパス等の設計制約（ＳＴＡ制約）は、これらノード名によって指定されている。つまり、ＩＰレベルの階層情報をシステムレベルの階層情報に変換することは、ＩＰ制約情報ＣＯＮ−ＩＰを、システムレベルのＩＰ制約情報である「変換制約情報ＣＯＮ１」に変換することを意味する。このように、階層情報変換部３２は、複数のＩＰ制約情報ＣＯＮ−ＩＰのそれぞれを、システム構成に応じて、複数の「変換制約情報ＣＯＮ１」に自動的に変換する。
【００３９】
この変換制約情報ＣＯＮ１は、システムレベルの全体的な制約情報である「システム制約情報ＣＯＮ−ＳＹＳ」の一部を構成する。この「システム制約情報ＣＯＮ−ＳＹＳ」は、設計されるシステムに用いられる複数のＩＰ１５に依存するシステムレベルの設計制約を示す。ここで、このシステム制約情報ＣＯＮ−ＳＹＳは、上記システムレベルのＩＰ制約情報（変換制約情報ＣＯＮ１）だけでなく、複数のＩＰ１５の“接続関係”に依存する制約情報をも含み得る。その接続関係に依存するシステムレベルの設計制約を示す制約情報は、以下、「接続制約情報ＣＯＮ２」と参照される。
【００４０】
接続制約検出部３４は、上記システムネットリストＮＬ−ＳＹＳを参照することによって、この接続制約情報ＣＯＮ２を自動的に生成する。具体的には、組み合わされた複数のＩＰ１５内に接続ＩＰ（例示：ＩＰ２（１５−２））が含まれる場合、接続制約検出部３４は、その接続ＩＰが有するＡｄｄ−ｏｎプログラム（拡張プログラム）１６を実行する。
【００４１】
このＡｄｄ−ｏｎプログラム１６は、上記システムネットリストＮＬ−ＳＹＳを処理することができる言語や関数群によって記述されている。また、このＡｄｄ−ｏｎプログラム１６は、接続ＩＰ１５に固有である。例えば、あるバスＩＰには、複数の端子が規定されており、ＬＳＩ設計において、その複数の端子にはマスタやスレーブが接続されるとする。また、そのバスＩＰの仕様によれば、スレーブ間でデータ転送が直接行われることは無いとする。この場合、ＳＴＡにおいて、スレーブ間の接続はフォルスパスとして指定されることになる。従って、このバスＩＰが有するＡｄｄ−ｏｎプログラムには、それらスレーブ間の接続をフォルスパスとして接続制約情報ＣＯＮ２に加える内容のコマンド群が記述される。
【００４２】
このように、接続制約検出部３４は、接続ＩＰ１５が有するＡｄｄ−ｏｎプログラム１６を実行し、このＡｄｄ−ｏｎプログラム１６は、システムネットリストＮＬ−ＳＹＳを参照することによって、接続制約情報ＣＯＮ２を出力する。この接続制約情報ＣＯＮ２は、システム制約情報ＣＯＮ−ＳＹＳに追加される。
【００４３】
以上に説明されたように、システム制約情報生成部３０は、システムネットリストＮＬ−ＳＹＳ及び複数のＩＰ制約情報ＣＯＮ−ＩＰに基づいて、システム制約情報ＣＯＮ−ＳＹＳ（変換制約情報ＣＯＮ１及び接続制約情報ＣＯＮ２）を生成し出力する。出力されたシステム制約情報ＣＯＮ−ＳＹＳは、記憶部４０に格納される（図１参照）。このシステム制約情報ＣＯＮ−ＳＹＳは、ＳＴＡにおいてＳＴＡ制約として用いられる。
【００４４】
すなわち、図１に示されたように、ＬＳＩ設計システム１００は、ＳＴＡ部８０を更に含んでもよい。このＳＴＡ部８０は、制御部５０に接続されている。図３に示されるように、このＳＴＡ部８０は、生成されたシステムネットリストＮＬ−ＳＹＳ及びシステム制約情報ＣＯＮ−ＳＹＳを記憶部４０から読み込み、それらを用いてＳＴＡを実行する。ＳＴＡの結果は、解析結果ＲＥＳとしてＳＴＡ部８０から出力される。この解析結果ＲＥＳは、例えば、ディスプレイ（出力部７０）に表示され、ユーザに通知される。
【００４５】
次に、例を挙げることにより、本発明に係るＬＳＩ設計システム１００の動作を更に詳しく説明する。図４は、ＬＳＩ設計システム１００により設計されるシステムの一例を示すブロック図である。図４に示されるように、設計されるシステムは、マスタ１１０、バス１２０、スレーブＡ１３０、及びスレーブＢ１４０を備えている。これらマスタ１１０、バス１２０、スレーブＡ１３０、及びスレーブＢ１４０のそれぞれは、データベース１０に格納されたＩＰ１（１５−１）、ＩＰ２（１５−２）、ＩＰ３（１５−３）、及びＩＰ４（１５−４）のそれぞれに対応しているものとする。ここで、図２に示されるように、このＩＰ２（１５−２）は、接続ＩＰである。よって、このＩＰ２には、複数の端子が規定されている。例えば、図４に示されるように、バス１２０は、複数の端子Ｔ１〜Ｔ４を備えている。マスタ１１０は、端子Ｔ１に接続されている。スレーブＡ１３０は、端子Ｔ２に接続されている。スレーブＢ１４０は、端子Ｔ４に接続されている。
【００４６】
まず、システム構築部２０は、図４に示された構成に基づき、複数のＩＰ１〜ＩＰ４の組み合わせ及び接続を示すシステムネットリストＮＬ−ＳＹＳを生成する。そしてシステム構築部２０は、生成されたシステムネットリストＮＬ−ＳＹＳを出力する。
【００４７】
次に、階層情報変換部３２は、マスタ１１０、バス１２０、スレーブＡ１３０、及びスレーブＢ１４０に含まれる全てのノードに対して、上述の階層情報（パス名）の変換を自動的に行う。この変換は、システムネットリストＮＬ−ＳＹＳを参照することにより行われる。これにより、全ての階層情報は、システムレベルの階層情報に変換される。このように、複数のＩＰ１〜ＩＰ４のそれぞれが有する複数のＩＰ制約情報ＣＯＮ−ＩＰは、システムレベルの階層情報に基づいて修正される。つまり、複数のＩＰ制約情報ＣＯＮ−ＩＰは、図４に示されたシステムに応じて、システムレベルの複数の変換制約情報ＣＯＮ１に変換される。この複数の変換制約情報ＣＯＮ１のそれぞれは、具体的には、マスタ１１０内部のＳＴＡ制約、バス１２０内部のＳＴＡ制約、スレーブＡ１３０内部のＳＴＡ制約、及びスレーブＢ１４０内部のＳＴＡ制約を示す。
【００４８】
次に、接続制約検出部３４は、ＩＰ２（１５−２）が有するＡｄｄ−ｏｎプログラム１６を実行する。
【００４９】
このＡｄｄ−ｏｎプログラム１６は、まず、システムネットリストＮＬ−ＳＹＳを参照して、自身（ＩＰ２；バス１２０）に接続されている全デバイス、及びそれら接続状態を検出する。図４に示されるように、バス１２０内には、端子Ｔ１−端子Ｔ２で規定されるパスＰａ、端子Ｔ１−端子Ｔ４で規定されるパスＰｂ、及び端子Ｔ２−端子Ｔ４で規定されるパスＰｃが存在する。パスＰａには、マスタ１１０とスレーブＡ１３０が接続されている。パスＰｂには、マスタ１１０とスレーブＢ１４０が接続されている。パスＰｃには、スレーブＡ１３０とスレーブＢ１４０が接続されている。
【００５０】
更に、Ａｄｄ−ｏｎプログラム１６は、全パスＰａ〜Ｐｃに対するＳＴＡ制約を検出する。例えば、ＩＰ２（１５−２）の仕様によれば、スレーブ間でデータ転送が直接行われることは無いとする。この場合、Ａｄｄ−ｏｎプログラム１６は、上記パスＰｃをフォルスパスとして指定する。その他のパスに対して制約は設けれない。このようにして検出された全パスに対するＳＴＡ制約を示す制約情報は、接続制約情報ＣＯＮ２として出力される。尚、Ａｄｄ−ｏｎプログラム１６は、各接続ＩＰに固有の“仕様”に基づき、予め作成される。
【００５１】
以上に示されたように、本発明に係るＬＳＩ設計システム１００によれば、ＳＴＡにおいて用いられるＳＴＡ制約を示すシステム制約情報ＣＯＮ−ＳＹＳは、自動的に生成される。従って、ＳＴＡに要する時間が短縮され、ＬＳＩの開発効率が向上する。また、ＳＴＡにおけるミスが抑制されるので、設計作業や開発されるＬＳＩの品質が向上する。
【００５２】
図５は、設計されるシステムの他の例を示すブロック図である。図５に示されるように、設計されるシステムは、マスタ１１０、バス１２０、スレーブＡ１３０、スレーブＢ１４０、及びスレーブＣ１５０を備えている。これらマスタ１１０、バス１２０、スレーブＡ１３０、スレーブＢ１４０、及びスレーブＣ１５０のそれぞれは、データベース１０に格納されたＩＰ１（１５−１）、ＩＰ２（１５−２）、ＩＰ３（１５−３）、ＩＰ４（１５−４）、及びＩＰ５（１５−５）のそれぞれに対応しているものとする。バス１２０は、複数の端子Ｔ１〜Ｔ４を備えている。マスタ１１０は、端子Ｔ１に接続されている。スレーブＡ１３０は、端子Ｔ２に接続されている。スレーブＢ１４０は、端子Ｔ３に接続されている。スレーブＣ１５０は、端子Ｔ４に接続されている。
【００５３】
まず、システム構築部２０は、図５に示された構成に基づき、複数のＩＰ１〜ＩＰ５の組み合わせ及び接続を示すシステムネットリストＮＬ−ＳＹＳを生成する。そしてシステム構築部２０は、生成されたシステムネットリストＮＬ−ＳＹＳを出力する。
【００５４】
次に、階層情報変換部３２は、マスタ１１０、バス１２０、スレーブＡ１３０、スレーブＢ１４０、及びスレーブＣ１５０に含まれる全てのノードに対して、上述の階層情報（パス名）の変換を自動的に行う。これにより、全ての階層情報は、システムレベルの階層情報に変換される。すなわち、複数のＩＰ制約情報ＣＯＮ−ＩＰは、図５に示されたシステムに応じて、システムレベルの複数の変換制約情報ＣＯＮ１に変換される。この複数の変換制約情報ＣＯＮ１のそれぞれは、具体的には、マスタ１１０内部のＳＴＡ制約、バス１２０内部のＳＴＡ制約、スレーブＡ１３０内部のＳＴＡ制約、スレーブＢ１４０内部のＳＴＡ制約、及びスレーブＣ１５０内部のＳＴＡ制約を示す。
【００５５】
次に、接続制約検出部３４は、ＩＰ２（１５−２）が有するＡｄｄ−ｏｎプログラム１６を実行する。
【００５６】
このＡｄｄ−ｏｎプログラム１６は、まず、システムネットリストＮＬ−ＳＹＳを参照して、自身（ＩＰ２；バス１２０）に接続されている全デバイス、及びそれら接続状態を検出する。図５に示されるように、バス１２０内には、端子Ｔ１−端子Ｔ２で規定されるパスＰａ、端子Ｔ１−端子Ｔ３で規定されるパスＰｂ、端子Ｔ１−端子Ｔ４で規定されるパスＰｃ、端子Ｔ２−端子Ｔ３で規定されるパスＰｄ、端子Ｔ３−端子Ｔ４で規定されるパスＰｅ、及び端子Ｔ２−端子Ｔ４で規定されるパスＰｆが存在する。パスＰａには、マスタ１１０とスレーブＡ１３０が接続されている。パスＰｂには、マスタ１１０とスレーブＢ１４０が接続されている。パスＰｃには、マスタ１１０とスレーブＣ１５０が接続されている。パスＰｄには、スレーブＡ１３０とスレーブＢ１４０が接続されている。パスＰｅには、スレーブＢ１４０とスレーブＣ１５０が接続されている。パスＰｆには、スレーブＡ１３０とスレーブＣ１５０が接続されている。
【００５７】
更に、Ａｄｄ−ｏｎプログラム１６は、全パスＰａ〜Ｐｆに対するＳＴＡ制約を検出する。例えば、ＩＰ２（１５−２）の仕様によれば、スレーブ間でデータ転送が直接行われることは無いとする。この場合、Ａｄｄ−ｏｎプログラム１６は、上記パスＰｄ〜Ｐｆをフォルスパスとして指定する。その他のパスに対して制約は設けれない。このようにして検出された全パスに対するＳＴＡ制約を示す制約情報は、接続制約情報ＣＯＮ２として出力される。
【００５８】
図５に示されるシステムは、図４に示された構成に新たなスレーブが付け加えられた構成を有している。よって、図５に示されるシステムを設計する場合、図４に示された設計を再利用することが可能である。ここで、本発明に係るＬＳＩ設計システム１００によれば、更新されたシステムネットリストＮＬ−ＳＹＳに基づいて、Ａｄｄ−ｏｎプログラム１６が自動的にシステム制約情報ＣＯＮ−ＳＹＳを更新する。つまり、図４に示されたシステム構成と図５に示されたシステム構成との差分を詳細に把握する必要がない。これにより、設計者にかかる負荷が低減される。すなわち、本発明に係るＬＳＩ設計システム１００によれば、設計資産の再利用が促進される。
【００５９】
本発明において、上述のシステム構築部２０、システム制約情報生成部３０、階層情報変換部３２、接続制約検出部３４、及びＳＴＡ部８０は、コンピュータプログラムによって実現され得る。この時、これらコンピュータプログラムは、メモリ上に読み込まれ、制御部５０のＣＰＵによって実行される。
【００６０】
図６に示されるフローチャートは、本発明に係るＬＳＩ設計方法を要約する。まず、データベース１０に格納されたＩＰ１５のセットから、所望のＬＳＩに必要な複数のＩＰ１５が選択され、選択された複数のＩＰ１５が組み合わされる（ステップＳ１）。次に、その複数のＩＰ１５の組み合わせに基づき、システム構築部２０が、システムネットリストＮＬ−ＳＹＳを自動的に生成する（ステップＳ２）。次に、階層情報変換部３２が、システムネットリストＮＬ−ＳＹＳを参照して、ＩＰレベルの階層情報をシステムレベルの階層情報に自動的に変換する（ステップＳ３）。これにより、ＩＰレベルのＩＰ制約情報ＣＯＮ−ＩＰは、システムレベルの変換制約情報ＣＯＮ１に自動的に変換される（ステップＳ４）。次に、接続制約検出部３４は、Ａｄｄ−ｏｎプログラム１６を実行し、システムレベルの接続制約情報ＣＯＮ２を自動的に生成する（ステップＳ５）。このように生成された変換制約情報ＣＯＮ１及び接続制約情報ＣＯＮ２により、システム制約情報ＣＯＮ−ＳＹＳが生成される（ステップＳ６）。そして、ＳＴＡ部８０は、生成されたシステム制約情報ＣＯＮ−ＳＹＳを用いて、ＳＴＡを実行する。
【００６１】
本発明に係るＬＳＩ設計システム１００及びＬＳＩ設計プログラムによれば、ＳＴＡにおいて用いられるＳＴＡ制約を示すシステム制約情報ＣＯＮ−ＳＹＳは、自動的に生成される。従って、ＳＴＡに要する時間が短縮され、ＬＳＩの開発効率が向上する。また、ＳＴＡにおけるミスが抑制されるので、設計作業や開発されるＬＳＩの品質が向上する。更に、設計資産の再利用が促進される。
【図面の簡単な説明】
【００６２】
【図１】図１は、本発明に係るＬＳＩ設計システムの構成を示すブロック図である。
【図２】図２は、本発明に係るＬＳＩ設計システムにおけるデータベースの構成を示す概念図である。
【図３】図３は、本発明に係るＬＳＩ設計システムの動作を示す概念図である。
【図４】図４は、本発明に係るＬＳＩ設計システムの動作を説明するための設計システム例を示すブロック図である。
【図５】図５は、本発明に係るＬＳＩ設計システムの動作を説明するための他の設計システム例を示すブロック図である。
【図６】図６は、本発明に係るＬＳＩ設計システムの動作を示すフローチャートである。
【符号の説明】
【００６３】
１０    データベース
１５    ＩＰ（設計資産）
１６    Ａｄｄ−ｏｎプログラム
２０    システム構築部
３０    システム制約情報生成部
３２    階層情報変換部
３４    接続制約検出部
４０    記憶部
５０    制御部
６０    入力部
７０    出力部
８０    ＳＴＡ部
１００    ＬＳＩ設計システム
１１０    マスタ
１２０    バス
１３０    スレーブＡ
１４０    スレーブＢ
１５０    スレーブＣ
ＮＬ−ＩＰ      ネットリスト
ＮＬ−ＳＹＳ    システムネットリスト
ＣＯＮ−ＩＰ    ＩＰ制約情報
ＣＯＮ−ＳＹＳ  システム制約情報
ＣＯＮ１        変換制約情報
ＣＯＮ２        接続制約情報
【図１】
2006004313.tif 000003
【図２】
2006004313.tif 000004
【図３】
2006004313.tif 000005
【図４】
2006004313.tif 000006
【図５】
2006004313.tif 000007
【図６】
2006004313.tif 000008