(57)【要約】【課題】秘匿性を維持しつつ設計作業の精度を向上させる。【解決手段】プロセッサ２が、半導体装置に含まれる素子の接続状態を示す結線情報、その素子の素子名のほか、素子の機能名、素子の面積及び素子の遅延時間を含む設計情報５ａを記憶部３から取得する。そして、プロセッサ２が、設計情報５ａに含まれる素子名及び機能名を書き換え、設計情報５ａに含まれる結線情報、面積及び遅延時間を維持した設計情報５ｂを生成し、出力する。【選択図】図１
2016139203.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサが、半導体装置に含まれる素子の接続状態を示す結線情報、前記素子の素子名、前記素子の機能名、前記素子の面積及び前記素子の遅延時間を含む第１の設計情報を記憶部から取得し、
前記プロセッサが、前記素子名及び前記機能名を書き換え、前記結線情報、前記面積及び前記遅延時間を維持した第２の設計情報を生成し、出力する、
ことを特徴とする設計情報作成方法。
【請求項２】
前記プロセッサは、入力ピン及び出力ピンの数が同じ複数の素子のそれぞれの前記機能名を、同一名となるように書き換える、ことを特徴とする請求項１に記載の設計情報作成方法。
【請求項３】
前記プロセッサは、前記入力ピン及び前記出力ピンの数に対応付けられて、前記機能名の書き換え後の名前が記述された変換機能決定用情報に基づき、前記素子の前記機能名を書き換える、ことを特徴とする請求項２に記載の設計情報作成方法。
【請求項４】
半導体装置に含まれる素子の接続状態を示す結線情報、前記素子の素子名、前記素子の機能名、前記素子の面積及び前記素子の遅延時間を含む第１の設計情報を記憶部から取得する設計情報取得部と、
前記素子名及び前記機能名を書き換え、前記結線情報、前記面積及び前記遅延時間を維持した第２の設計情報を生成し、出力する設計情報書き換え部と、
を有することを特徴とする設計情報作成装置。
【請求項５】
半導体装置に含まれる素子の接続状態を示す結線情報、前記素子の素子名、前記素子の機能名、前記素子の面積及び前記素子の遅延時間を含む第１の設計情報を記憶部から取得し、
前記素子名及び前記機能名を書き換え、前記結線情報、前記面積及び前記遅延時間を維持した第２の設計情報を生成し、出力する、
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計情報作成方法、設計情報作成装置及びプログラムに関する。
【背景技術】
【０００２】
半導体装置の設計の際、設計の早期の段階で物理的な設計情報を考慮した論理合成処理（物理考慮合成と呼ばれることもある）が行われることがある。物理的な設計情報を考慮した論理合成を行うことで、論理合成時とレイアウト時の遅延時間が近づき、タイミング制約を満たすことが容易になる。
【０００３】
物理的な設計情報には、半導体装置に含まれる素子（以下セルという）の結線情報や、セルの面積、遅延情報などが含まれる。
ところで、このような設計情報は、たとえば、半導体装置の物理的な設計をする者（物理設計者）から、顧客などの社外の論理的な設計を行う者（論理設計者）に対して渡されることがある。このとき、渡される設計情報において、社外秘扱いとする部分を秘匿することが行われている。たとえば、結線情報は維持しつつ、設計情報で表される組み合わせ論理が秘匿されるように、セルを、同等のピン構成（たとえば、２入力１出力）、同等の駆動能力をもつ他のセルに置き換えるような手法があった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−３８４７１号公報
【特許文献２】特表２００９−５１８７１７号公報
【特許文献３】特開２００７−２６１７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来の設計情報を秘匿する技術では、同等のピン構成、駆動能力をもつ他のセルがない場合には、セルの置き換えができず、秘匿性が低下する。また、セルを置き換えるために、論理設計者に渡される設計情報に含まれる遅延情報やエリア情報がオリジナルのものと異なることから、設計作業の精度が悪化する可能性がある。
【０００６】
このように、従来の技術では、秘匿性を維持しつつ設計作業の精度を向上させることは困難であった。
【課題を解決するための手段】
【０００７】
発明の一観点によれば、プロセッサが、半導体装置に含まれる素子の接続状態を示す結線情報、前記素子の素子名、前記素子の機能名、前記素子の面積及び前記素子の遅延時間を含む第１の設計情報を記憶部から取得し、前記プロセッサが、前記素子名及び前記機能名を書き換え、前記結線情報、前記面積及び前記遅延時間を維持した第２の設計情報を生成し、出力する、設計情報作成方法が提供される。
【０００８】
また、発明の一観点によれば、半導体装置に含まれる素子の接続状態を示す結線情報、前記素子の素子名、前記素子の機能名、前記素子の面積及び前記素子の遅延時間を含む第１の設計情報を記憶部から取得する設計情報取得部と、前記素子名及び前記機能名を書き換え、前記結線情報、前記面積及び前記遅延時間を維持した第２の設計情報を生成し、出力する設計情報書き換え部と、を有する設計情報作成装置が提供される。
【０００９】
また、発明の一観点によれば、半導体装置に含まれる素子の接続状態を示す結線情報、前記素子の素子名、前記素子の機能名、前記素子の面積及び前記素子の遅延時間を含む第１の設計情報を記憶部から取得し、前記素子名及び前記機能名を書き換え、前記結線情報、前記面積及び前記遅延時間を維持した第２の設計情報を生成し、出力する、処理をコンピュータに実行させるプログラムが提供される。
【発明の効果】
【００１０】
開示の設計情報作成方法、設計情報作成装置及びプログラムによれば、秘匿性を維持しつつ設計作業の精度を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態の設計情報作成方法及び設計情報作成装置の一例を示す図である。
【図２】第１の実施の形態の設計情報作成装置の一例の機能ブロック図である。
【図３】ネットリストの書き換え例を示す図である。
【図４】第２の実施の形態の設計情報作成装置の一例を示す図である。
【図５】第２の実施の形態の設計情報作成方法の一例の処理の流れを示すフローチャートである。
【図６】モデル用論理ライブラリの生成処理の一例の流れを示すフローチャートである。
【図７】論理ライブラリの一例を示す図である。
【図８】セル情報テーブルの一例を示す図である。
【図９】変換機能決定用テーブルの一例を示す図である。
【図１０】変換機能名と変換セル名を追加したセル情報テーブルの一例を示す図である。
【図１１】モデル用論理ライブラリの一例を示す図である。
【図１２】モデル用物理ライブラリの生成処理の一例の流れを示すフローチャートである。
【図１３】物理ライブラリの一例を示す図である。
【図１４】モデル用物理ライブラリの一例を示す図である。
【図１５】機能ブロックモデルの生成処理の一例の流れを示すフローチャートである。
【図１６】ネットリストの一例を示す図である。
【図１７】機能ブロックモデルの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、発明を実施するための形態を、図面を参照しつつ説明する。
（第１の実施の形態）
図１は、第１の実施の形態の設計情報作成方法及び設計情報作成装置の一例を示す図である。
【００１３】
また、図２は、第１の実施の形態の設計情報作成装置の一例の機能ブロック図である。
設計情報作成装置１は、たとえば、顧客に渡す半導体装置の設計情報の一部を書き換えて秘匿化するものである。なお、顧客側では、ＲＴＬ（Register Transfer Level）記述から、設計情報作成装置１が作成した設計情報に含まれるセルの面積、遅延時間、結線情報を考慮した論理合成（物理考慮合成）が行われる。
【００１４】
設計情報作成装置１は、たとえば、コンピュータであり、プロセッサ２と記憶部３を有している。プロセッサ２は、記憶部３に記憶されているデータ及びプログラムに基づき、図２に示すような、設計情報取得部２ａ、設計情報書き換え部２ｂの機能を実現する。記憶部３は、プロセッサ２が実行するプログラムや、設計情報５ａなどの各種データを記憶する。
【００１５】
設計情報５ａには、ライブラリ６ａやネットリスト７ａが含まれている。ライブラリ６ａには、設計対象の半導体装置に含まれる各セルの、素子名（セル名）、機能名（たとえば、“Ａ＾Ｂ”）の他、面積（ａｒｅａ）と、遅延時間（ｔｉｍｉｎｇ）の情報が含まれている。また、ネットリスト７ａには、半導体装置のセルの接続状態を示す結線情報が含まれている。
【００１６】
上記のような設計情報作成装置１を用いた設計方法の一例を、図１、図２を用いて説明する。
設計情報取得部２ａは、上記のような設計情報５ａを記憶部３から取得する（ステップＳ１）。その後、設計情報書き換え部２ｂは、設計情報５ａに含まれる、セル名及び機能名を書き換え、結線情報、面積及び遅延時間を維持した設計情報５ｂを生成し、出力する（ステップＳ２）。出力された設計情報５ｂは記憶部３に格納され、その後、読み出されて、たとえば、ネットワーク経由または記録媒体などによって、顧客に提供される。
【００１７】
図１の例では、設計情報５ａのライブラリ６ａに含まれるセル名と機能名が、設計情報５ｂにおいては別の名前に書き換えられている。たとえば、ライブラリ６ａに含まれるセル名“ＸＯＲ１”と機能名“Ａ＾Ｂ”が、ライブラリ６ｂではセル名“ＣＥＬＬ＿ＸＸＸ”と、機能名“Ａ  Ｂ”に書き換えられている。ただし、面積と、遅延時間については変更がなく、そのまま維持されている。
【００１８】
図３は、ネットリストの書き換え例を示す図である。図３では、ネットリスト７ａ，７ｂが、回路図で示されている。
ネットリスト７ａには、レジスタ１０，１１，１２、バッファ１３、インバータ１４、ＯＲ回路１５、ＮＡＮＤ回路１６、ＸＯＲ回路１７、レジスタ１８が含まれている。
【００１９】
レジスタ１０の出力端子はバッファ１３の入力端子に接続され、バッファ１３の出力端子はＯＲ回路１５の一方の入力端子に接続されている。レジスタ１１の出力端子はＯＲ回路１５の他方の入力端子及び、ＮＡＮＤ回路１６の一方の入力端子に接続されている。レジスタ１２の出力端子はインバータ１４の入力端子に接続されており、インバータ１４の出力端子はＮＡＮＤ回路１６の他方の入力端子に接続されている。
【００２０】
ＯＲ回路１５の出力端子はＸＯＲ回路１７の一方の入力端子に接続されており、ＮＡＮＤ回路１６の出力端子はＸＯＲ回路１７の他方の入力端子に接続されている。ＸＯＲ回路１７の出力端子はレジスタ１８の入力端子に接続されている。
【００２１】
このようなネットリスト７ａにおいて、ＸＯＲ回路１７は、機能名が書き換えられることによって、ネットリスト７ｂにおいては、ＡＮＤ回路１７ａとなっている。また、同様にＯＲ回路１５、ＮＡＮＤ回路１６についても、機能名が書き換えられることによって、ＡＮＤ回路１５ａ，１６ａとなっている。また、インバータ１４については、機能名が書き換えられることによって、バッファ１４ａとなっている。
【００２２】
書き換えられる機能名は、たとえば、セルのピン構成によって決まる。図３の例では、１入力２出力のセルについては、機能名はＡＮＤ論理を示す“Ａ  Ｂ”に書き換えられる。なお、機能名書き換えのより具体的な例については後述する。
【００２３】
さらに、セル名についても、ネットリスト７ａのＸＯＲ回路１７のセル名“ＸＯＲ１”が、ネットリスト７ｂでは、“ＣＥＬＬ＿ＸＸＸ”書き換えられている。ネットリスト７ａのＯＲ回路１５、ＮＡＮＤ回路１６のセル名“ＯＲ１”、“ＮＡＮＤ１”についても、ネットリスト７ｂでは、“ＣＥＬＬ＿ＹＹＹ”、“ＣＥＬＬ＿ＺＺＺ”と書き換えられている。
【００２４】
ただ、ネットリスト７ａ，７ｂにおいて、結線情報については変更がなく、そのまま維持されている。
このように、セル名と機能名を書き換えた設計情報５ｂを生成することで、オリジナルの設計情報５ａが表している組み合わせ論理が顧客側で推測できなくなり、秘匿性が増す。また、単にセルを置き換えるのではなく、顧客が物理考慮造成などの設計作業に用いる面積、遅延時間、結線情報についてはオリジナルの設計情報５ａの値を維持しているため、タイミング最適化や、チップ面積の算出処理の精度を上げることができる。つまり、秘匿性を維持しつつ顧客側での設計作業の精度を向上させることができる。
【００２５】
（第２の実施の形態）
以下、第２の実施の形態の設計情報作成方法及び設計情報作成装置の一例を示す。
図４は、第２の実施の形態の設計情報作成装置の一例を示す図である。
【００２６】
設計情報作成装置は、たとえば、コンピュータ２０であり、プロセッサ２１によって装置全体が制御されている。プロセッサ２１には、バス２９を介してＲＡＭ（Random Access Memory）２２と複数の周辺機器が接続されている。プロセッサ２１は、マルチプロセッサであってもよい。プロセッサ２１は、たとえばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ２１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００２７】
ＲＡＭ２２は、コンピュータ２０の主記憶装置として使用される。ＲＡＭ２２には、プロセッサ２１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ２２には、プロセッサ２１による処理に必要な各種データが格納される。
【００２８】
バス２９に接続されている周辺機器としては、ＨＤＤ（Hard Disk Drive）２３、グラフィック処理装置２４、入力インタフェース２５、光学ドライブ装置２６、機器接続インタフェース２７及びネットワークインタフェース２８がある。
【００２９】
ＨＤＤ２３は、内蔵したディスクに対して、磁気的にデータの書き込み及び読み出しを行う。ＨＤＤ２３は、コンピュータ２０の補助記憶装置として使用される。ＨＤＤ２３には、ＯＳのプログラム、アプリケーションプログラム、及び各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。
【００３０】
グラフィック処理装置２４には、モニタ２４ａが接続されている。グラフィック処理装置２４は、プロセッサ２１からの命令にしたがって、画像をモニタ２４ａの画面に表示させる。モニタ２４ａとしては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置などがある。
【００３１】
入力インタフェース２５には、キーボード２５ａとマウス２５ｂとが接続されている。入力インタフェース２５は、キーボード２５ａやマウス２５ｂから送られてくる信号をプロセッサ２１に送信する。なお、マウス２５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００３２】
光学ドライブ装置２６は、レーザ光などを利用して、光ディスク２６ａに記録されたデータの読み取りを行う。光ディスク２６ａは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク２６ａには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。
【００３３】
機器接続インタフェース２７は、コンピュータ２０に周辺機器を接続するための通信インタフェースである。たとえば機器接続インタフェース２７には、メモリ装置２７ａやメモリリーダライタ２７ｂを接続することができる。メモリ装置２７ａは、機器接続インタフェース２７との通信機能を搭載した記録媒体である。メモリリーダライタ２７ｂは、メモリカード２７ｃへのデータの書き込み、またはメモリカード２７ｃからのデータの読み出しを行う装置である。メモリカード２７ｃは、カード型の記録媒体である。
【００３４】
ネットワークインタフェース２８は、ネットワーク２８ａに接続されている。ネットワークインタフェース２８は、ネットワーク２８ａを介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００３５】
以上のようなハードウェア構成によって、第２の実施の形態の処理機能を実現することができる。なお、図１に示した第１の実施の形態の設計情報作成装置１も、図４に示したコンピュータ２０と同様のハードウェアにより実現することができる。
【００３６】
コンピュータ２０は、たとえばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第２の実施の形態の処理機能を実現する。コンピュータ２０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。たとえば、コンピュータ２０に実行させるプログラムをＨＤＤ２３に格納しておくことができる。プロセッサ２１は、ＨＤＤ２３内のプログラムの少なくとも一部をＲＡＭ２２にロードし、プログラムを実行する。またコンピュータ２０に実行させるプログラムを、光ディスク２６ａ、メモリ装置２７ａ、メモリカード２７ｃなどの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、たとえばプロセッサ２１からの制御により、ＨＤＤ２３にインストールされた後、実行可能となる。またプロセッサ２１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００３７】
（設計情報作成方法の一例）
図５は、第２の実施の形態の設計情報作成方法の一例の処理の流れを示すフローチャートである。
【００３８】
コンピュータ２０において、プロセッサ２１は、ＨＤＤ２３に格納されたプログラムを読み出してＲＡＭ２２上に展開して、たとえば、図５に示すような各ステップの処理を実行する。
【００３９】
プロセッサ２１は、たとえば、ＨＤＤ２３に格納された論理ライブラリ３０、変換機能決定用テーブル３１に基づき、セル情報テーブル３２やモデル用論理ライブラリ３３を生成する（ステップＳ１０）。論理ライブラリ３０はオリジナルの設計情報であり、プロセッサ２１は、セル名と機能名を置き換えることで、顧客に渡すための設計情報である、モデル用論理ライブラリ３３を生成する。変換機能決定用テーブル３１、セル情報テーブル３２を用いたステップＳ１０の処理例については後述する。
【００４０】
さらにプロセッサ２１は、ＨＤＤ２３に格納された物理ライブラリ３４、ネットリスト３６と、セル情報テーブル３２に基づき、顧客に渡すための設計情報であるモデル用物理ライブラリ３５、機能ブロックモデル３７を生成する（ステップＳ２０，Ｓ３０）。
【００４１】
以下、図５の各処理ステップの例を説明する。
（モデル用論理ライブラリの生成）
図６は、モデル用論理ライブラリの生成処理の一例の流れを示すフローチャートである。
【００４２】
まず、プロセッサ２１は、ＨＤＤ２３から、オリジナルの論理ライブラリ３０を読み出して取得する（ステップＳ１１）。
図７は、論理ライブラリの一例を示す図である。
【００４３】
論理ライブラリ３０には、セル名“ＦＪＯＲ００１”のセルの面積情報（ａｒｅａ）と、ピン情報（ｐｉｎ（Ｙ）、ｐｉｎ（Ａ）、ｐｉｎ（Ｂ））が含まれている。“ｄｅｒｅｃｔｉｏｎ”はピン方向を示している。図７の例では、ｐｉｎ（Ａ）、ｐｉｎ（Ｂ）については、ピン方向は“ｉｎｐｕｔ”であることから、ピンＡ，Ｂは入力ピンであることを示している。また、ｐｉｎ（Ｙ）については、ピン方向は“ｏｕｔｐｕｔ”であることから、ピンＹは出力ピンであることを示している。
【００４４】
さらに、ｐｉｎ（Ｙ）では、機能名として“Ａ＾Ｂ”が表記されている。これは、ピンＹからは、ピンＡ，Ｂの値のＸＯＲ演算結果が出力されることを示している。さらに、ｐｉｎ（Ｙ）では、遅延時間情報として、“ｙｙｙｙ”が表記されている。これは、このセルで生じる遅延時間が“ｙｙｙｙ”であることを示している。
【００４５】
次に、プロセッサ２１は、取得した論理ライブラリ３０から、セル名、ピン情報を、それぞれ抽出する（ステップＳ１２，Ｓ１３）。
そして、プロセッサ２１は、抽出したセル名、ピン情報に基づき、セル情報テーブル３２を作成する（ステップＳ１４）。
【００４６】
図８は、セル情報テーブルの一例を示す図である。
セル情報テーブル３２には、論理ライブラリ３０から抽出された、セルごとの情報が含まれている。
【００４７】
図８の例では、セル情報テーブル３２には、セル名“ＦＪＯＲ００１”と、そのセル名をもつセルのピンのリスト、ピン方向、入力ピン数、出力ピン数が含まれている。
その後、プロセッサ２１は、変換機能決定用テーブル３１に基づき、セル情報テーブル３２に、オリジナルの機能名と入れ替える変換機能名を追加する（ステップＳ１５）。
【００４８】
図９は、変換機能決定用テーブルの一例を示す図である。
変換機能決定用テーブル３１には、セルの入力ピン及び出力ピンの数に対応付けられて、機能名の書き換え後の名前（変換機能名）が記述されている。図９には、各機能名に対応した回路例についても表記されている。
【００４９】
入力・出力ピン数の条件が、０入力１出力（入力ピン数が０、出力ピン数が１）の場合、変換機能名は“１”となる。これは、出力を１で固定（Ｔｉｅ  ｈｉｇｈ）することを意味し、回路としては１出力のレジスタに相当する。
【００５０】
入力・出力ピン数の条件が、１入力１出力（入力ピン数が１、出力ピン数が１）の場合、変換機能名は“Ａ”となる。これは、バッファ機能を意味し、回路としてはバッファに相当する。
【００５１】
入力・出力ピン数の条件が、２入力以上１出力（入力ピン数が２、出力ピン数が１）の場合、変換機能名は“（Ａ  Ｂ）”となる。これは、ＡＮＤ演算機能を意味し、回路としてはＡＮＤ回路に相当する。
【００５２】
入力・出力ピン数の条件が、２出力以上（出力ピン数が２以上）の場合、変換機能名は“（（（Ａ  Ｂ）＋（Ｂ  ＣＩＮ））＋（ＣＩＮ  Ａ））”となる。これは、加算演算機能を意味し、回路としては４入力２出力の加算回路に相当する。
【００５３】
このような変換機能決定用テーブル３１を用いることで、入力ピン及び出力ピンの数が同じ複数のセルの各機能名は、後述の処理で、同一名に書き換えられる。
ステップＳ１５の処理後、さらに、プロセッサ２１は、セル情報テーブル３２に、オリジナルのセル名と入れ替える変換セル名を追加する（ステップＳ１６）。プロセッサ２１は、各セルのセル情報ごとに、オリジナルのセルの機能が推測できないような名前（たとえば、番号）を、変換セル名として追加する。
【００５４】
図１０は、変換機能名と変換セル名を追加したセル情報テーブルの一例を示す図である。
図１０のセル情報テーブル３２ａでは、セルの入力ピン数が２、出力ピン数が１であるため、図９に示した変換機能決定用テーブル３１から、変換機能名として、“（Ａ  Ｂ）”が追加されている。さらに、変換セル名として、“ＣＥＬＬ＿３９２７”というオリジナルのセルの機能が推測できないような名前が追加されている。
【００５５】
ステップＳ１６の処理後、プロセッサ２１は、論理ライブラリ３０の複製を作成し（ステップＳ１７）、セル名と機能名とを、セル情報テーブル３２ａの変換セル名と変換機能名とに変換する（ステップＳ１８，Ｓ１９）。これによって、モデル用論理ライブラリ３３が作成される。
【００５６】
図１１は、モデル用論理ライブラリの一例を示す図である。
図１１のモデル用論理ライブラリ３３では、図７に示した論理ライブラリ３０の、セル名“ＦＪＯＲ００１”が、“ＣＥＬＬ＿３９２７”に書き換えられており、機能名“（Ａ＾Ｂ）”が、“（Ａ  Ｂ）”に書き換えられている。一方、面積情報と遅延時間情報については、変更されておらず、論理ライブラリ３０での値が、モデル用論理ライブラリ３３でも維持されている。
【００５７】
なお、上記の各処理ステップは一例であり、適宜入れ替えてもよい。
次に、モデル用物理ライブラリの生成処理の例を説明する。
（モデル用物理ライブラリの生成）
図１２は、モデル用物理ライブラリの生成処理の一例の流れを示すフローチャートである。
【００５８】
まず、プロセッサ２１は、ＨＤＤ２３から、オリジナルの物理ライブラリ３４を読み出して取得する（ステップＳ２１）。
図１３は、物理ライブラリの一例を示す図である。
【００５９】
物理ライブラリ３４には、各セルがどこに配置されているのかを示す情報が含まれている。たとえば、“ＦＯＲＥＩＧＮ  ＦＪＯＲ００１  ０  ０”は、セル名“ＦＪＯＲ００１”のセルが“０  ０”という座標に配置されることを意味している。
【００６０】
ステップＳ２１の処理後、プロセッサ２１は、物理ライブラリ３４の複製を作成し（ステップＳ２２）、物理ライブラリ３４に含まれているセル名を、セル情報テーブル３２ａの変換セル名に変換する（ステップＳ２３）。これによって、モデル用物理ライブラリ３５が作成される。
【００６１】
図１４は、モデル用物理ライブラリの一例を示す図である。
図１４のモデル用物理ライブラリ３５では、図１３に示した物理ライブラリ３４の、セル名“ＦＪＯＲ００１”が、“ＣＥＬＬ＿３９２７”に書き換えられている。
【００６２】
次に、機能ブロックモデル３７の生成処理の例を説明する。
（機能ブロックモデルの生成）
図１５は、機能ブロックモデルの生成処理の一例の流れを示すフローチャートである。
【００６３】
まず、プロセッサ２１は、ＨＤＤ２３から、オリジナルのネットリスト３６を読み出して取得する（ステップＳ３１）。
図１６は、ネットリストの一例を示す図である。
【００６４】
ネットリスト３６には、各セルのセル名と、結線情報のインスタンス名、セルの各ピンに接続されるネット（配線）の名前（ネット名）などが含まれている。
たとえば、図１６のネットリスト３６には、セル名“ＦＪＯＲ００１”、インスタンス名“ｕ＿ｃｃｄ＿ｂｍ＿ｕ＿ｗｒｉｔｅ＿Ｕ７１９”が記載されている。さらに、ピンＡ，Ｂ，Ｙに接続されているネットのネット名（“ｕ＿ｃｃｄ＿ｂｍ＿ｕ＿＿ａｗａｄｄｒ＿ｗｂ＿３１＿”など）が記載されている。
【００６５】
ステップＳ３１の処理後、プロセッサ２１は、ネットリスト３６の複製を作成し（ステップＳ３２）、ネットリスト３６に含まれているセル名を、セル情報テーブル３２ａの変換セル名に変換する（ステップＳ３３）。さらに、プロセッサ２１は、インスタンス名やネット名についても別の名前に変換する（ステップＳ３４，Ｓ３５）。これによって、機能ブロックモデル３７が作成される。
【００６６】
図１７は、機能ブロックモデルの一例を示す図である。
図１７の機能ブロックモデル３７では、図１６に示したネットリスト３６の、セル名“ＦＪＯＲ００１”が、“ＣＥＬＬ＿３９２７”に書き換えられている。さらに、インスタンス名やネット名についても書き換えられている。
【００６７】
上記の各処理ステップは一例であり、適宜入れ替えてもよい。
以上のような処理で生成されたモデル用論理ライブラリ３３、モデル用物理ライブラリ３５、機能ブロックモデル３７を含む設計情報は、たとえば、一旦ＨＤＤ２３に格納された後、読み出され、ネットワーク経由または記憶媒体を用いて、顧客側に提供される。顧客側では、物理考慮合成ツールを用いて、提供された設計情報を考慮した論理合成が行われ、タイミング検証やチップ面積の算出など、各種の設計作業が行われる。
【００６８】
上記の処理により、モデル用論理ライブラリ３３、モデル用物理ライブラリ３５、機能ブロックモデル３７に含まれるセル名と機能名は、オリジナルのものと異なるため、オリジナルの設計情報が表している組み合わせ論理は、顧客側で推測されない。つまり、オリジナルの設計情報の秘匿性が保たれる。また、単にセルを置き換えるのではなく、顧客が設計作業に用いる面積情報、遅延時間情報、結線情報についてはオリジナルの設計情報の値を維持しているため、タイミング最適化や、チップ面積の算出処理の精度を上げることができる。つまり、顧客側での設計作業の精度を向上できる。
【００６９】
また、プロセッサ２１は、図９に示したような変換機能決定用テーブル３１を用いて、同じピン構成のセルの機能名については、一律同じ機能名に書き換えることで、可逆性がなくなり、秘匿性がより向上する。また、図９に示したような変換機能決定用テーブル３１を用いて、オリジナルの機能名を、各ピン構成に対応付けられた機能名に書き換えることで、全てのセルの機能名をピン構成に応じた機能名に置き換えられ、秘匿性が増す。
【００７０】
以上、実施の形態に基づき、本発明の設計情報作成方法、設計情報作成装置及びプログラムの一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
【符号の説明】
【００７１】
１  設計情報作成装置（コンピュータ）
２  プロセッサ
３  記憶部
５ａ，５ｂ  設計情報
６ａ，６ｂ  ライブラリ
７ａ，７ｂ  ネットリスト
【図１】
2016139203.tif 000003
【図２】
2016139203.tif 000004
【図３】
2016139203.tif 000005
【図４】
2016139203.tif 000006
【図５】
2016139203.tif 000007
【図６】
2016139203.tif 000008
【図７】
2016139203.tif 000009
【図８】
2016139203.tif 000010
【図９】
2016139203.tif 000011
【図１０】
2016139203.tif 000012
【図１１】
2016139203.tif 000013
【図１２】
2016139203.tif 000014
【図１３】
2016139203.tif 000015
【図１４】
2016139203.tif 000016
【図１５】
2016139203.tif 000017
【図１６】
2016139203.tif 000018
【図１７】
2016139203.tif 000019