(57)【要約】【課題】  ＬＳＩ設計データを生成する際に、ライブラリの属性情報に起因した不具合を容易に確認する。【解決手段】  複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を当該ライブラリと共に提供するライブラリ提供装置であって、複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を抽出し、抽出した属性情報が提供された所望の属性情報と一致するか否かを判定し、該判定結果を生成する。【選択図】      図１
2006221368.tif 000002
【特許請求の範囲】
【請求項１】
複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を当該ライブラリと共に提供するライブラリ提供方法であって、
複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を抽出する抽出工程と、
前記抽出した属性情報が提供された所望の属性情報と一致するか否かを判定し、該判定結果を生成する生成工程と、
を有することを特徴とするライブラリ提供方法。
【請求項２】
前記ライブラリの属性情報は、各ライブラリのバージョン情報のうち、少なくとも１つの情報からライブラリの統合バージョンにより構成されることを特徴とする請求項１記載のライブラリ提供方法。
【請求項３】
複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を当該ライブラリと共に提供するライブラリ提供装置であって、
複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を抽出する抽出手段と、
前記抽出した属性情報が提供された所望の属性情報と一致するか否かを判定し、該判定結果を生成する生成手段と、
を有することを特徴とするライブラリ提供装置。
【請求項４】
請求項１記載のライブラリ提供方法の各手順をコンピュータに実行させるためのプログラム。
【請求項５】
請求項４記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を当該ライブラリと共に提供する技術に関するものである。
【背景技術】
【０００２】
大規模集積回路（ＬＳＩ：Large Scale Integration Circuit）を設計する場合、コンピュータ上で動作するプログラムからなる設計自動化ツールを様々に組み合わせて用いることによって論理設計、論理検証を行い、設計データを生成している（例えば、特許文献１）。
【０００３】
これら複数の設計自動化ツールで必要となる各種ライブラリがライブラリプロバイダ（半導体メーカー）からライブラリユーザ（ＬＳＩ設計者）に提供され、ＬＳＩ設計が行われている。
【０００４】
ここで、ＬＳＩ設計に使用する設計自動化ツールとしては、論理機能をバブルチャートからＲＴＬ（Register Transfer Level）へ変換するＲＴＬエントリーツール、設計したＲＴＬの機能検証を行うための検証ツール、そのＲＴＬをゲート回路へと変換する論理合成ツール、そのＲＴＬと論理合成により生成されたゲート回路の等価性を検証するツール等がある。これら複数の設計自動化ツールの間で設計データの変換を行い、最終的にライブラリプロバイダによるＬＳＩ製造に必要とされる設計データを提供するデザインフローが構成される。
【０００５】
近年のように、ＬＳＩ設計データが数百万ゲートにもなる大規模システムＬＳＩの開発の場合には、通常の論理機能モジュール、Ｉ／Ｏセル、ＰＬＬ（phase-locked loop）やｄｌｌ（dynamic-link library）等の特殊マクロ、内蔵ＲＡＭモジュール以外にも、ＣＰＵなどのハードマクロ、外部作成ＩＰ（Intellectual Property）などの多種多様な機能モジュールがＬＳＩに搭載される。そのため、ライブラリプロバイダはライブラリユーザに、ＬＳＩに搭載される機能部品ごとに異なるライブラリを提供し、ライブラリユーザは提供された複数のライブラリを用いてＬＳＩ設計データを生成している。
【０００６】
また、ライブラリプロバイダがシステムＬＳＩに搭載されるハードマクロを開発して、ライブラリユーザに提供する場合や新規半導体プロセスの立ち上げ時には、ハードマクロや半導体プロセスの開発作業の進み具合に応じて順次ライブラリを提供するため、ライブラリユーザが開発に使用するライブラリは頻繁に更新されることになる。
【０００７】
このように頻繁にライブラリの更新が繰り返されると、設計者は使用すべきバージョンとは異なったライブラリを用いてしまう可能性があった。
【０００８】
従って、ＬＳＩ設計データが個々のライブラリで所望のバージョンを使用して生成した設計データであることをライブラリプロバイダとライブラリユーザの双方で、正確に把握しておくことが品質を確保する上で重要となっている。
【特許文献１】特開2002-024311号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した方法では、ライブラリユーザが複数のライブラリを用いて生成した設計データが所望のライブラリバージョンで生成されたものかを容易に確認することができなかった。
【００１０】
例えば、複数の開発拠点で同一ライブラリを使用して開発を行う場合、作業環境が複数存在するためオリジナルのライブラリが更新されると、複数の作業環境を同時に更新する必要が生じる。ところが、一方の開発拠点のみ、ライブラリのバージョンアップを行ってしまった場合、生成されるネットリストからはその情報が読み取れず、作業ミスが見逃されてしまう危険性があった。
【００１１】
特に、従来のライブラリ形態では、ライブラリのバージョンが設計データに詳細な情報として引き継がれなかったため、設計データが所望のライブラリで生成されたものか否かを容易に確認することができなかった。
【００１２】
更に、このような不具合が発生した場合、ライブラリユーザは再度所望のライブラリに設定し直してＬＳＩ設計データを生成する必要があるため、開発応答時間（ＴＡＴ：Turn Around Time）が増大する。結果として、ＬＳＩ設計データによって製造されるＬＳＩの供給が遅延し、搭載される製品の開発日程にも影響を及ぼすといった問題があった。
【００１３】
本発明は、上記問題点を解決するためになされたもので、ＬＳＩ設計データを生成する際に、ライブラリの属性情報に起因した不具合を容易に確認することを目的とする。
【課題を解決するための手段】
【００１４】
本発明は、複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を当該ライブラリと共に提供するライブラリ提供方法であって、複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を抽出する抽出工程と、前記抽出した属性情報が提供された所望の属性情報と一致するか否かを判定し、該判定結果を生成する生成工程とを有することを特徴とする。
【００１５】
また、本発明は、複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を当該ライブラリと共に提供するライブラリ提供装置であって、複数のライブラリを用いて生成した設計データにおける各ライブラリの属性情報を抽出する抽出手段と、前記抽出した属性情報が提供された所望の属性情報と一致するか否かを判定し、該判定結果を生成する生成手段とを有することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、ＬＳＩ設計データを生成する際に、ライブラリの属性情報に起因した不具合を容易に確認することができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。
【００１８】
図１は、本実施形態におけるライブラリプロバイダ提供データの一例を示す図である。図１において、１００はライブラリプロバイダ提供データであり、この例では、属性情報付加ライブラリ１０１、ライブラリ属性情報１０２、設計データライブラリ属性情報抽出モジュール１０３、ライブラリ属性情報判定結果生成モジュール１０４により構成されている。
【００１９】
１１０はライブラリプロバイダ（半導体メーカー）であり、ライブラリプロバイダ提供データを提供する。１２０はライブラリユーザ（ＬＳＩ設計者）であり、ライブラリプロバイダ１１０からライブラリプロバイダ提供データ１００の提供を受け、ＬＳＩの設計を行う。
【００２０】
ここで、ライブラリユーザ１２０に提供されるライブラリプロバイダ提供データ１００の属性情報付加ライブラリ１０１について、図２を用いて説明する。図２は、図１に示す属性情報付加ライブラリ１０１の詳細な構成を示す図である。
【００２１】
ＬＳＩを設計する過程では、コンピュータ上で動作するプログラムからなる設計自動化ツールを様々に組み合わせて用いるため、各設計自動化ツールで参照可能なライブラリを提供する必要がある。
【００２２】
そこで、図２に示す例では、属性情報付加ライブラリ１０１を４つのライブラリで構成している。例えば、論理検証用ライブラリ２０１は、設計者が論理動作を記述したＲＴＬ（Register Transfer Level）コードを論理検証するツールが参照するためのライブラリである。論理検証用ライブラリ２０１を用いて論理検証したＲＴＬコードを論理合成等によりＲＴＬコードから回路図レベル（ゲートレベル）へと変換する。その際に参照されるのが、論理合成用ライブラリ２０４である。また、上述のＲＴＬコードと、論理合成等によって生成されたゲートレベルのネットリストとの論理等価性を確認する際に使用されるのが、等価検証用ライブラリ２０２である。
【００２３】
更に、論理合成等によって生成されたゲートレベルのネットリストを用いてフロアプランの検討やレイアウト検討を行う場合に必要となる配置情報等を含んだ物理用ライブラリ２０３もある。
【００２４】
このような論理検証用ライブラリ２０１〜論理合成用ライブラリ２０４の各ライブラリは、更により詳細な複数種のライブラリで構成されている。
【００２５】
図２に示すように、論理合成用ライブラリ２０４は、NANDセルやINVERTERセル等で構成されるprimitive cell library２１１、ＲＡＭデータが含まれるmemory library２１２、入出力セルであるI/O library２１３、ＣＰＵブロック等が含まれるhard macro library２１４で構成されている。
【００２６】
また、論理検証用ライブラリ２０１、等価検証用ライブラリ２０２、物理検証用ライブラリ２０３も、論理合成用ライブラリ２０４と同様に、それぞれprimitive cell library２１１、memory library２１２、I/O library２１３、hard macro library２１４で構成されている。
【００２７】
次に、ライブラリプロバイダ提供データ１００のライブラリ属性情報１０２について、図３を用いて説明する。図３は、ライブラリ属性情報の統合バージョン情報生成例を示す図である。
【００２８】
ライブラリユーザ１２０がＬＳＩを設計する上で必要となる、primitive cell library２１１、memory library２１２、I/O library２１３、hard macro library２１４におけるバージョン情報からライブラリを一つのパッケージとして扱うために必要なライブラリ統合バージョン情報の生成過程を示したものである。
【００２９】
図３に示すように、第１回目のライブラリ提供では、primitive cell library３０１、I/O library３０２のみが提供され、ライブラリ統合バージョン情報３０５として「1.0」が定義される。第２回目のライブラリ提供では、memory library３０３が新規に提供され、I/O library３０２が「1.0」から「1.1」に更新され、ライブラリ統合バージョン情報３０５として「1.1」が定義される。第３回目のライブラリ提供では、更にhard macro library３０４が新規に提供され、primitive cell library３０１が「1.0」から「1.1」に更新され、ライブラリ統合バージョン情報３０５として「1.2」が定義される。
【００３０】
以下同様に、ライブラリが新規に提供されるか、或いは既に提供されているライブラリのバージョンが更新される毎にライブラリ統合バージョン情報３０５も更新される。
【００３１】
このようにして決定したライブラリ統合バージョン情報３０５がライブラリ属性情報となる。また、ここで定義されたライブラリ統合バージョン情報３０５がライブラリを構成するprimitive cell library２１１、I/O library２１２、memory library２１３、hard macro library２１４の各構成要素に組み込まれて属性情報付加ライブラリ１０１が構成される。
【００３２】
次に、図４及び図５を用いて、ライブラリプロバイダ１１０が提供するライブラリプロバイダ提供データ１００をライブラリユーザ１２０がＬＳＩ設計に用いた場合に、従来のデザインフローとの違いについて説明する。
【００３３】
図４は、従来のライブラリを用いてライブラリユーザ１２０がＬＳＩ設計を行う場合のデザインフローを示す図である。
【００３４】
ＲＴＬデータ４０１は、ＬＳＩ設計者が生成するハードウェア記述言語（ＨＤＬ）等の設計データである。論理検証モジュール４０２で、ＲＴＬデータ４０１が所望の論理動作をするか否かといった論理検証が行われる。この論理検証が終了した時点でＲＴＬデータ４０１は論理合成モジュール４０３により論理合成用ライブラリ４０６を参照してＲＴＬ記述からゲートレベルのネットリストへ変換される。
【００３５】
ここで、変換されたネットリストは、ネットリスト検証モジュール４０４に入力され、半導体プロセス依存のデザインルールに基づいた検証が行われる。このネットリスト検証モジュール４０４は、問題がないことを確認した段階で、ライブラリプロバイダ１１０に提供する設計データであるネットリストデータ４０５を出力する。
【００３６】
しかしながら、上述した従来のデザインフローでは、ライブラリプロバイダ１１０からライブラリバージョン情報等の属性情報が提供されたとしても、ライブラリユーザ１２０がＬＳＩ設計データを作成するために参照する論理合成用ライブラリ４０６の個々のライブラリには属性情報が存在しないため、ネットリストデータ４０５にはライブラリの属性情報が引き継がれない。
【００３７】
従って、ネットリストデータ４０５を作成した後で、ネットリストデータ４０５を参照したライブラリが適切なバージョンであるか否かを確認することができず、正否の判断をすることが容易ではなかった。
【００３８】
図５は、本実施形態における属性情報付加ライブラリを用いたライブラリユーザ１２０のデザインフローを示す図である。
【００３９】
ＲＴＬデータ５０１は、ＬＳＩ設計者が生成するハードウェア記述言語（ＨＤＬ）等の設計データである。論理検証モジュール５０２で、ＲＴＬデータ５０１が所望の論理動作をするか否かといった論理検証が行われる。この論理検証が終了した時点でＲＴＬデータ５０１は論理合成モジュール５０３により属性情報付加ライブラリ５０６を参照してＲＴＬ記述からゲートレベルのネットリストへ変換される。
【００４０】
尚、このネットリストには、論理合成モジュール５０３で参照した属性情報付加ライブラリ５０６に組み込まれている個々のライブラリ構成要素に付加された属性情報が引き継がれている。そのため、ネットリストを解析することにより、論理合成時に参照したライブラリの属性情報を抽出することが可能となる。
【００４１】
次に、変換されたネットリストは、ネットリスト検証モジュール５０４及び設計データライブラリ属性情報抽出モジュール５０７に入力される。ネットリスト検証モジュール５０４では、半導体プロセス依存のデザインルールに基づいた検証が行われる。ネットリスト検証モジュール５０４は、問題がないことを確認した段階で、ライブラリプロバイダ１１０に提供する設計データであるネットリストデータ５０５を出力する。
【００４２】
一方、設計データライブラリ属性情報抽出モジュール５０７は、入力されたネットリストからネットリストを構成する個々のライブラリ構成要素に付加されている属性情報を抽出する。ここで、設計データライブラリ属性情報抽出モジュール５０７を用いて抽出した属性情報の抽出例を図６を用いて説明する。
【００４３】
図６は、本実施形態で抽出されるライブラリ属性情報の一例を示す図である。例えば、図６に示すように、ネットリストが「Macro1」、「Mem1」、「Mem2」、「function1」、「function2」のブロック名で構成されている場合、個々のライブラリ構成要素毎に属性情報を抽出する。この例では、各ブロックに使用されたライブラリ構成要素毎にセル名、ライブラリバージョン及びライブラリを生成したツールバージョンを表示するように設定している。
【００４４】
一般に、同一の論理合成の場合、図７に示すインスタンスから抽出したライブラリ属性情報の例のように、同一のライブラリ構成要素である「NAND02」に対しては複数のインスタンス（inst-1,inst-14,inst-178,inst-234）が同一のライブラリに適用される。そのため、そのライブラリバージョンは同一のものが使用される。しかしながら、このように全インスタンスに対してバージョン管理を行うと属性情報を含むデータ量は非常に増大してしまう。
【００４５】
そこで、図８に示すインスタンスから抽出したライブラリ属性情報の例のように、論理合成単位毎に、例えば「NAND02」であれば１つのインスタンス（inst-1）を代表値として使用することで、属性情報を含むデータ量の増大を抑えることができる。
【００４６】
但し、設計データの不具合等により、ネットリストでのセル置き換えといった技術変更指示（ＥＣＯ：Engineering Change Order）処理が行われるような場合には、同一セルであってもライブラリバージョンが異なる可能性があるため、各ブロックを構成する個々のインスタンスを個別の構成要素として扱う図７に示すものを適用する必要がある。
【００４７】
図６では、図８に示すライブラリ属性情報に基づいて結果を表示している。図６に示す「function1」のブロックは、「NAND02」、「INV01」、「DFF01」で構成され、使用したライブラリバージョンは「3.6」、そのライブラリを生成したツールバージョンは「1.2」であったことを示し、これらのライブラリ属性情報が抽出される。
【００４８】
図５に戻り、設計データライブラリ属性情報抽出モジュール５０７で抽出された属性情報は、次のライブラリ属性情報判定結果生成モジュール５０８に入力される。また、ライブラリプロバイダ１１０から提供されたライブラリ属性情報５１０もライブラリ属性情報判定結果生成モジュール５０８に入力される。
【００４９】
尚、図１に示したライブラリ属性情報１０２は、図５に示すライブラリ属性情報５１０と同一のものである。
【００５０】
ライブラリ属性情報判定結果生成モジュール５０８では、ライブラリプロバイダ１１０から提供されたライブラリ自体のライブラリ属性情報５１０と、入力されたネットリストから設計データライブラリ属性情報抽出モジュール５０７で抽出された属性情報とを比較することで、ライブラリ属性情報判定結果５０９を生成する。
【００５１】
図９は、ライブラリ属性情報判定結果５０９の一例を示す図である。図９に示すように、ライブラリプロバイダ１１０から提供されたライブラリに含まれる属性情報は、ライブラリ属性情報（ライブラリ）で表示されている「3.6」がライブラリバージョンであり、ライブラリ属性情報（ツール）で表示されている「1.2」がライブラリを生成したツールバージョンであることを示し、その下に、ネットリストを構成する各ライブラリ構成要素の属性情報から抽出した属性情報との判定結果を示している。
【００５２】
図９に示す例では、ネットリストを構成する「Macro1」、「Mem1」、「function1」の各ブロックは設計データライブラリ属性情報抽出モジュール５０７で抽出したライブラリバージョンが「3.6」でライブラリ属性情報（ライブラリ）で表示されているライブラリバージョンの「3.6」と一致しているため、判定結果として「○」が表示されている。
【００５３】
また、ネットリストを構成する「Mem2」のブロックは、設計データライブラリ属性情報抽出モジュール５０７で抽出したライブラリバージョンが「3.5」でライブラリ属性情報（ライブラリ）で表示されているライブラリバージョンの「3.6」と一致しておらず、かつ、ネットリストから抽出したライブラリバージョンの方が古いため、判定結果として「×」が表示されている。
【００５４】
そして、ライブラリプロバイダ１１０から提供されたライブラリのバージョンと、設計データのバージョンとが異なるため、設計者へのメッセージとして、図９に示す例では、「Version is different」を表示し、設計者に注意を促している。
【００５５】
また、ネットリストを構成する「function2」のブロックは設計データライブラリ属性情報抽出モジュール５０７で抽出したライブラリバージョンが、ライブラリ属性情報（ライブラリ）よりも新しい場合や、ライブラリ属性情報が正しく読み取れない場合であり、ライブラリバージョンとして「ERROR」が表示されている。
【００５６】
この場合、ライブラリ属性情報の判定以前の問題であるため、ライブラリバージョンの判定結果として「？」を表示し、設計者へのメッセージとして「Unexpected Version」を表示し、設計者に不具合を明確な形で示している。
【００５７】
以上のように、ＬＳＩ設計者はライブラリプロバイダ１１０が提供するライブラリ属性情報１０２、属性情報付加ライブラリ１０１、設計データライブラリ属性情報抽出モジュール１０３、ライブラリ属性情報判定結果生成モジュール１０４を用いることで、従来ではできなかったネットリストからライブラリ属性情報を抽出することが可能となる。
【００５８】
これにより、ライブラリユーザ１２０が設計データライブラリ属性情報抽出モジュール５０７及び、ライブラリ属性情報判定結果生成モジュール５０８によって得られるライブラリ属性情報判定結果５０９に問題があればすぐに作業を中断することができる。
【００５９】
また、ライブラリプロバイダ１１０に設計データを提出する前に、ライブラリ取り違い等の人為的なミスを早い段階で検証することができるので、設計データの品質を確保することも可能となる。
【００６０】
更に、ライブラリプロバイダ１１０がライブラリ属性情報判定結果５０９の提出をＬＳＩ設計データの受け入れ条件に追加すれば、ライブラリユーザ１２０のみでなく、ライブラリプロバイダ１１０の双方での二重の確認になり、品質を確保することができる。
【００６１】
また、ライブラリプロバイダ１１０はライブラリの取り違い等の人為的なミスをＬＳＩ設計データ提出前に事前に排除することができるので、不用な作業を回避することができる。
【００６２】
ところで、属性情報生成の一例としては、前述のように各ライブラリのバージョン情報を用いてライブラリ統合バージョン情報を生成して使用する方法を示したが、例えば単にライブラリのバージョン情報だけでなく、ライブラリ生成者、ライブラリ生成日時、及びライブラリ生成したツール情報を属性値として新たに定義し、ライブラリの属性情報生成に組み込んでライブラリの統合バージョン情報を得ても同様にライブラリを判定するための属性情報としての効果が得られる。
【００６３】
最後に、ライブラリ、及びツールの提供方法について説明する。図１０は、ライブラリ及びツールの提供形態の一例を示す図である。この提供形態は、記録媒体、或いはネットワーク経由での提供時に、ライブラリ及びツールを１つの提供パッケージとして、一度にライブラリプロバイダ１１０からライブラリユーザ１２０に提供するものである。
【００６４】
図１０に示すように、提供パッケージ１００１は、属性情報付加ライブラリ１００２、ライブラリ属性情報１００３、設計データライブラリ属性情報抽出モジュール１００４、ライブラリ属性情報判定結果生成モジュール１００５で構成される。
【００６５】
この提供パッケージ１００１であれば、ライブラリがバージョンアップした場合など、その都度、属性情報付加ライブラリ１００２、ライブラリ属性情報１００３、設計データライブラリ属性情報抽出モジュール１００４、ライブラリ属性情報判定結果生成モジュール１００５を提供することができる。
【００６６】
図１１は、ライブラリ及びツールの他の提供形態の一例を示す図である。他の提供形態は、ライブラリを提供する場合には、ライブラリ提供パッケージを提供し、ツールを提供する場合には、ツール提供パッケージを提供するものである。
【００６７】
図１１に示すように、ライブラリ提供パッケージ１１０１は、属性情報付加ライブラリ１１０２、ライブラリ属性情報１１０３で構成される。
【００６８】
また、ツール提供パッケージ１１１１は、設計データライブラリ属性情報抽出モジュール１１０４、ライブラリ属性情報判定結果生成モジュール１１０５で構成される。
【００６９】
このように、ライブラリ及びツールのパッケージを切り分けることにより、ツール提供パッケージ１１１１は初回のみ提供し、ライブラリ提供パッケージ１１０１はライブラリが更新された場合に提供してもライブラリユーザ１２０はライブラリ属性情報を判定する環境を得ることができる。
【００７０】
以上のように、ＬＳＩ開発用ライブラリにライブラリのバージョン情報及びライブラリを生成したツール情報等からなるライブラリ属性情報と、ライブラリ属性情報を付加した属性情報付加ライブラリと、開発したＬＳＩ設計データのライブラリ属性情報を抽出し、抽出した設計データライブラリ属性情報がライブラリ属性情報と一致したか否かを判定し、その判定結果をライブラリプロバイダからライブラリユーザに提供する。
【００７１】
これにより、ライブラリユーザはその判定結果を確認することでライブラリ属性情報等に起因する問題を早期に修正することができる。
【００７２】
また、ライブラリプロバイダ側へリリースするＬＳＩ設計データの品質も向上させることができる。
【００７３】
更に、ライブラリプロバイダでは、ライブラリユーザの経験や設計能力に左右されずに、ライブラリ属性情報に起因した問題を回避できるので、ＬＳＩ設計の後工程の作業を効率良く進めることが可能となる。
【００７４】
尚、本発明は複数の機器（例えば、ホストコンピュータ，インターフェース機器，リーダ，プリンタなど）から構成されるシステムに適用しても、１つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用しても良い。
【００７５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００７６】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００７７】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー（登録商標）ディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００７８】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７９】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００８０】
【図１】本実施形態におけるライブラリプロバイダ提供データの一例を示す図である。
【図２】図１に示す属性情報付加ライブラリ１０１の詳細な構成を示す図である。
【図３】ライブラリ属性情報の統合バージョン情報生成例を示す図である。
【図４】従来のライブラリを用いてライブラリユーザ１２０がＬＳＩ設計を行う場合のデザインフローを示す図である。
【図５】本実施形態における属性情報付加ライブラリを用いたライブラリユーザ１２０のデザインフローを示す図である。
【図６】本実施形態で抽出したライブラリ属性情報の一例を示す図である。
【図７】インスタンスから抽出したライブラリ属性情報の一例を示す図である。
【図８】インスタンスから抽出したライブラリ属性情報の一例を示す図である。
【図９】ライブラリ属性情報判定結果５０９の一例を示す図である。
【図１０】ライブラリ及びツールの提供形態の一例を示す図である。
【図１１】ライブラリ及びツールの他の提供形態の一例を示す図である。
【符号の説明】
【００８１】
１００  ライブラリプロバイダ提供データ
１０１  属性情報付加ライブラリ
１０２  ライブラリ属性情報
１０３  設計データライブラリ属性情報抽出モジュール
１０４  ライブラリ属性情報判定結果生成モジュール
１１０  ライブラリプロバイダ
１２０  ライブラリユーザ
２０１  論理検証用属性情報付加ライブラリ
２０２  等価検証用属性情報付加ライブラリ
２０３  物理用属性情報付加ライブラリ
２０４  論理合成用属性情報付加ライブラリ
５０１  ＲＴＬデータ
５０２  論理検証モジュール
５０３  論理合成モジュール
５０４  ネットリスト検証モジュール
５０５  ネットリストデータ
５０６  属性情報付加ライブラリ
５０７  設計データライブラリ属性情報抽出モジュール
５０８  ライブラリ属性情報判定結果生成モジュール
５０９  ライブラリ属性情報判定結果
５１０  ライブラリ属性情報
【図１】
2006221368.tif 000003
【図２】
2006221368.tif 000004
【図３】
2006221368.tif 000005
【図４】
2006221368.tif 000006
【図５】
2006221368.tif 000007
【図６】
2006221368.tif 000008
【図７】
2006221368.tif 000009
【図８】
2006221368.tif 000010
【図９】
2006221368.tif 000011
【図１０】
2006221368.tif 000012
【図１１】
2006221368.tif 000013