(57)【要約】【課題】設計期間を短縮すること。【解決手段】記憶部１ａは、集積回路のレイアウトを示す設計データＸ１を記憶する。演算部１ｂは、設計データＸ１に対して簡略化されたダミーメタル群を発生させた設計データＸ２を生成する。演算部１ｂは、設計データＸ２を用いたタイミング検証に応じてレイアウトが修正された設計データＸ１に対して簡略化されていないダミーメタル群を発生させることで、タイミング検証に用いられる設計データＸ３を生成する。【選択図】図１
2015194965.tif 000002
【特許請求の範囲】
【請求項１】
集積回路のレイアウトを示す第１の設計データを記憶する記憶部と、
前記第１の設計データに対して簡略化されたダミーメタル群を発生させた第２の設計データを生成し、
前記第２の設計データを用いたタイミング検証に応じてレイアウトが修正された前記第１の設計データに対して簡略化されていないダミーメタル群を発生させることで、タイミング検証に用いられる第３の設計データを生成する、演算部と、
を有する設計支援装置。
【請求項２】
前記演算部は、配線間の相対的な位置関係に応じた寄生容量として、簡略化されたダミーメタル群を用いたときの第１の寄生容量と簡略化されていないダミーメタル群を用いたときの第２の寄生容量とを取得し、前記第１の寄生容量に対する前記第２の寄生容量の比を用いて、前記第２の設計データから取得された配線間の寄生容量を補正する、請求項１記載の設計支援装置。
【請求項３】
前記演算部は、前記第３の設計データを用いたタイミング検証でエラーが検出されると、エラーが検出された配線を含む所定範囲の領域を、ダミーメタルの発生を禁止する領域として設定する、請求項１または２記載の設計支援装置。
【請求項４】
前記演算部は、前記領域の少なくとも一部を含む単位領域のメタル率が所定の範囲に含まれるか否かの確認に応じて、前記配線に対して前記領域の設定を行うか否かを決定する、請求項３記載の設計支援装置。
【請求項５】
前記演算部は、前記第２および前記第３の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて前記第１の設計データのレイアウトを修正する、請求項１乃至４の何れか１項に記載の設計支援装置。
【請求項６】
コンピュータが、
集積回路のレイアウトを示す第１の設計データに対して、簡略化されたダミーメタル群を発生させた第２の設計データを生成し、
前記第２の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて第１の設計データのレイアウトを修正し、
修正後の前記第１の設計データに対して簡略化されていないダミーメタル群を発生させた第３の設計データを生成し、
前記第３の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて前記第１の設計データの修正後のレイアウトを更に修正する、
設計支援方法。
【請求項７】
集積回路のレイアウトを示す第１の設計データに対して、簡略化されたダミーメタル群を発生させた第２の設計データを生成し、
前記第２の設計データを用いたタイミング検証に応じてレイアウトが修正された前記第１の設計データに対して簡略化されていないダミーメタル群を発生させることで、タイミング検証に用いられる第３の設計データを生成する、
処理をコンピュータに実行させる設計支援プログラム。
【請求項８】
集積回路のレイアウトを示す第１の設計データに対して簡略化されたダミーメタル群を発生させた第２の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて前記第１の設計データのレイアウトを修正する第１の処理を行い、
修正後の前記第１の設計データに対して簡略化されていないダミーメタル群を発生させた第３の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて前記第１の設計データの修正後のレイアウトを更に修正する第２の処理を行う、
処理をコンピュータに実行させる設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は設計支援装置、設計支援方法および設計支援プログラムに関する。
【背景技術】
【０００２】
現在、ＬＳＩ（Large Scale Integration）などの集積回路の設計を支援する種々の技術が利用されている。例えば、ＣＡＤ（Computer Aided Design）ツールは、集積回路のレイアウト（回路部品の配置や配線など）を編集するための回路図エディタなどを提供し、ユーザの設計作業を支援する。ＣＡＤツールには、レイアウトがデザインルールを満たすかの検証（ＤＲＣ：Design Rule Check）や電気的に正しく接続されているかの検証（ＥＲＣ：Electrical Rule Check）などのレイアウト検証を行うものもある。ＣＡＤツールには、集積回路内の信号遅延の有無を確認するタイミング検証を行うものもある。
【０００３】
ところで、ＬＳＩの製造工程では多層配線プロセスの各メタル層を平坦にするために、基板表面に対してＣＭＰ（Chemical Mechanical Polishing）が行われる。ＣＭＰでは研磨パッドと基板との間に研磨剤を供給しながら基板表面を研磨し平坦化する。ＣＭＰではメタルの密度にばらつきがあると基板表面の平坦性が損なわれる。そこで、メタル密度の上限、下限（密度ルール）が予め規定される。下限未達の領域には、信号線（メタル）のない部分に微小なメタル（ダミーメタル）を複数挿入することで下限を達成する。
【０００４】
ダミーメタルの挿入は、集積回路の寄生容量に影響を与え、信号が遅延する要因となる。このため、レイアウト設計では、回路部品の配置や配線を行った後の設計データにダミーメタルの情報を加えて、レイアウト検証やタイミング検証などが行われる。例えば、タイミングやＤＲＣでエラーを生じた配線の周囲に配置された複数のダミーメタルからエラー原因のダミーメタルを抽出し、所定のメタル密度以上となるようにしつつ、エラーが解消されるよう抽出したダミーメタルの中から削除対象を選択する提案がある。
【０００５】
また、発生されるダミーメタルが最大数の場合と最小数の場合との双方についてＲＣ抽出ルールを設ける提案もある。この提案では、ダミー影響最大／最小の場合の双方について対象レイアウトからＲＣ抽出しタイミング検証を行うことで、ダミーの影響の上限と下限とについてタイミングに問題がないか否かを判定しながらレイアウトを決定する。
【０００６】
なお、配線パターンライブラリ中のダミー配線（フィルメタル）パターンを高誘電率の絶縁体に置換し、絶縁体に付随する寄生容量の寄生容量値とフィルメタルパターンとを対応付けた寄生容量値情報をデータベースに蓄積する提案もある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−１７３７４６号公報
【特許文献２】特開２００４−２５３６５５号公報
【特許文献３】特開２００４−２４０８０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記のように、ダミーメタル生成後の設計データからタイミングエラーに関係するダミーメタルを削除し、寄生容量を削減することでタイミングの改善を図ることが考えられる。この方法では、論理修正やレイアウト修正の後で、再度ダミーメタルを発生させる処理からやり直しとなる。ダミーメタルの発生では、ダミーメタルの情報をレイアウトの空き領域に挿入する。ダミーメタルの数は膨大であり、ダミーメタル発生、発生後の設計データに対する入出力およびＲＣ抽出などの各種処理には時間を要する。このため、一連の改善処理（改善フロー）を繰り返し行うと設計に時間がかかるという問題がある。特に、設計の初期段階では多数のタイミングエラーの改善を要するため、ＲＣ抽出の精度よりも改善フローのＴＡＴ（Turn Around Time）の方が重要である。初期段階から詳細に検証していると改善フローのＴＡＴが長くなり易く、却って設計期間が長引くおそれがある。
【０００９】
１つの側面では、本発明は、設計期間を短縮できる設計支援装置、設計支援方法および設計支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
１つの態様では、設計支援装置が提供される。この設計支援装置は記憶部と演算部とを有する。記憶部は、集積回路のレイアウトを示す第１の設計データを記憶する。演算部は、第１の設計データに対して簡略化されたダミーメタル群を発生させた第２の設計データを生成し、第２の設計データを用いたタイミング検証に応じてレイアウトが修正された第１の設計データに対して簡略化されていないダミーメタル群を発生させることで、タイミング検証に用いられる第３の設計データを生成する。
【００１１】
また、１つの態様では、設計支援方法が提供される。この設計支援方法では、コンピュータが、集積回路のレイアウトを示す第１の設計データに対して、簡略化されたダミーメタル群を発生させた第２の設計データを生成し、第２の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて第１の設計データのレイアウトを修正し、修正後の第１の設計データに対して簡略化されていないダミーメタル群を発生させた第３の設計データを生成し、第３の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて第１の設計データの修正後のレイアウトを更に修正する。
【００１２】
また、１つの態様では、設計支援プログラムが提供される。この設計支援プログラムは、コンピュータに、集積回路のレイアウトを示す第１の設計データに対して、簡略化されたダミーメタル群を発生させた第２の設計データを生成し、第２の設計データを用いたタイミング検証に応じてレイアウトが修正された第１の設計データに対して簡略化されていないダミーメタル群を発生させることで、タイミング検証に用いられる第３の設計データを生成する、処理を実行させる。
【００１３】
また、１つの態様では、設計支援プログラムが提供される。この設計支援プログラムは、集積回路のレイアウトを示す第１の設計データに対して簡略化されたダミーメタル群を発生させた第２の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて第１の設計データのレイアウトを修正する第１の処理を行い、修正後の第１の設計データに対して簡略化されていないダミーメタル群を発生させた第３の設計データを用いてタイミング検証を行い、当該タイミング検証で得られたエラーに応じて第１の設計データの修正後のレイアウトを更に修正する第２の処理を行う、処理を実行させる。
【発明の効果】
【００１４】
１つの側面では、設計期間を短縮できる。
【図面の簡単な説明】
【００１５】
【図１】第１の実施の形態の設計支援装置を示す図である。
【図２】第２の実施の形態の設計支援装置のハードウェア例を示す図である。
【図３】設計支援装置の機能例を示す図である。
【図４】ダミーメタルの例を示す図である。
【図５】ＲＣ抽出の例を示す図である。
【図６】ダミーメタルの発生禁止領域の例を示す図である。
【図７】パスの例を示す図である。
【図８】補正係数情報の例を示す図である。
【図９】レイアウト設計の処理例を示すフローチャートである。
【図１０】レイアウト設計の処理例（続き）を示すフローチャートである。
【図１１】補正係数の算出例を示すフローチャートである。
【図１２】ダミーメタルの発生禁止領域の設定例を示すフローチャートである。
【図１３】レイアウト設計の処理の他の例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の設計支援装置を示す図である。設計支援装置１は、集積回路の設計を支援する。設計支援装置１は、配線後の設計データに対して複数のダミーメタル（ダミーメタル群）を発生させて、タイミング検証用の設計データを生成する処理に用いられる。
【００１７】
設計支援装置１は、記憶部１ａと演算部１ｂを有する。記憶部１ａは、ＲＡＭ（Random Access Memory）などの揮発性記憶装置でもよいし、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置でもよい。演算部１ｂは、ＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）などを含み得る。演算部１ｂはプログラムを実行するプロセッサであってもよい。「プロセッサ」には、複数のプロセッサの集合（マルチプロセッサ）も含まれ得る。
【００１８】
記憶部１ａは、集積回路のレイアウトを示す設計データを記憶する。例えば、記憶部１ａは、設計データＸ１（第１の設計データ）を記憶する。例えば、集積回路の配線には銅（Ｃｕ）が用いられる。集積回路は複数の配線層を含む。図１では設計データＸ１のうち複数の配線層のうちの何れか１つを図示していると考えてもよい。設計データＸ１は、配線Ｙ１，Ｙ２の情報（配線Ｙ１，Ｙ２の位置、長さ、線幅など）を含む。
【００１９】
演算部１ｂは、簡略化されたダミーメタル群Ｚ１を設計データＸ１に対して発生させた設計データＸ２（第２の設計データ）を生成する。ここで、集積回路の製造段階でどのサイズ、形状のダミーメタルがどの位置に挿入されるかを、設計者が設計段階で前もって正確に把握することは難しい。このため、集積回路の製造を請け負うファウンドリは、ダミーメタルの発生ツールを設計者に提供することもある。
【００２０】
ファウンドリが提供するダミーメタルの発生ツールを用いる場合、所定のアルゴリズムで、種々のサイズ、形状のダミーメタルが設計データＸ１に挿入される。例えば、簡略化されたダミーメタル群Ｚ１は、ファウンドリによって提供されるダミーメタルの発生ツールよりも単純な方法で発生されるダミーメタル群である。単純な方法とは、具体的には、各ダミーメタルを等間隔で格子状（あるいは升目状）に配置する、サイズ、形状を均一にするなどが考えられる。他方、例えば、ファウンドリが提供するダミーメタルの発生ツールにより挿入されるダミーメタル群を、簡略化されていないダミーメタル群といえる。
【００２１】
演算部１ｂは、設計データＸ２を用いたタイミング検証に応じてレイアウトが修正された設計データＸ１に対して簡略化されていないダミーメタル群Ｚ２を発生させることで、タイミング検証に用いられる設計データＸ３（第３の設計データ）を生成する。ここで、簡略化されたダミーメタル群を用いる処理の段階を第１段階、簡略化されていないダミーメタル群を用いる処理の段階を第２段階と呼べる。
【００２２】
また、演算部１ｂが、設計データＸ２を用いたタイミング検証およびレイアウト修正を行ってもよい。例えば、演算部１ｂは、設計データＸ２を用いてＲＣ抽出を行い、ＲＣ抽出の結果によりタイミング検証を行う。タイミングエラーがある場合、演算部１ｂはエラーに応じて設計データＸ１のレイアウトを修正する。例えば、演算部１ｂは、タイミングエラーを解消するように配線Ｙ１，Ｙ２の位置や長さなどを変更する。
【００２３】
その後、演算部１ｂは、簡略化されたダミーメタル群Ｚ１を、レイアウト修正後の設計データＸ１に対して再度発生させて、タイミング検証を行ってもよい。この場合、今回の簡略化されたダミーメタル群の配置は、レイアウト修正に応じて、前回のダミーメタル群とは異なる配置になる。演算部１ｂは、簡略化されたダミーメタル群の発生、タイミング検証、レイアウト修正という第１段階の一連の改善フローを複数回（例えば、タイミングエラーが解消されるまで、あるいはある程度収束するまで）繰り返してもよい。演算部１ｂは、第１段階の処理を複数回経たレイアウト修正後の設計データＸ１に対して、簡略化されていないダミーメタル群Ｚ２を発生させることで、設計データＸ３を生成してもよい。
【００２４】
演算部１ｂが、設計データＸ３を用いたタイミング検証を行ってもよい。また、演算部１ｂは、設計データＸ３を用いたタイミング検証に応じて、レイアウトが修正された設計データＸ１に対し、簡略化されたダミーメタル群を発生させることで、タイミング検証に用いられる他の設計データ（第４の設計データ）を生成してもよい。すなわち、第２段階の処理の後に第１段階の処理からやり直してもよい。
【００２５】
または、演算部１ｂは簡略化されていないダミーメタル群の発生、タイミング検証、レイアウト修正という第２段階の一連の改善フローを複数回（例えば、タイミングエラーが解消されるまで、あるいはある程度収束するまで）繰り返してもよい。
【００２６】
第１の実施の形態の設計支援装置１によれば、ダミーメタル群Ｚ１よりも簡略化されたダミーメタル群Ｚ２を設計データＸ１に対して発生させた設計データＸ２が生成される。設計データＸ２を用いたタイミング検証に応じてレイアウトが修正された設計データＸ１に対して簡略化されていないダミーメタル群Ｚ２を発生させることで、タイミング検証に用いられる設計データＸ３が生成される。これにより、ダミーメタルを用いたレイアウト設計の設計期間を短縮できる。
【００２７】
集積回路の設計では、ダミーメタル発生、タイミング検証、レイアウト修正という一連の改善フローを繰り返し行うことがある。設計の初期段階ではレイアウトは大まかに決定されているに過ぎず、タイミング検証では多数のタイミングエラーが検出され得る。したがって、設計の初期段階では多数のタイミングエラーの改善を要する。
【００２８】
このため、設計の初期段階ではＲＣ抽出の精度よりも改善フローのＴＡＴ（設計データの入力からダミーメタルの発生、ＲＣ抽出、タイミング検証、レイアウト修正を経た修正後の設計データの出力までの時間）の方が重要である。初期段階から詳細な情報を用いて改善フローを実行していると改善フローのＴＡＴが長くなり易く、却って設計期間が長引くおそれがある。
【００２９】
そこで、設計支援装置１は、まずは簡略化されたダミーメタル群を用いたタイミング検証によりレイアウトを修正し、その後、簡略化されていないダミーメタル群を用いたタイミング検証によりレイアウトを更に修正する。設計の初期段階では、ＲＣ抽出の精度が落ちても、改善フローのＴＡＴは短い方が設計期間の短縮には有利だからである。
【００３０】
ここで、簡略化された（配置のパターンを単純化する、サイズや形状を均一にするなど）ダミーメタル群を用いることで、ダミーメタル発生の処理時間の短縮化を図れる。ダミーメタルは周囲のメタルの配置状況を考慮しながら、複雑な形状を挿入するため、ダミーメタルの配置パターンが複雑化するほどダミーメタルの生成時間は長くなる傾向にあるからである。
【００３１】
また、簡略化されたダミーメタル群を用いることで、ＲＣ抽出の処理時間の短縮化を図れる。例えば、集積回路の一部の領域の配線間およびダミーメタルの相対的な位置関係のパターン毎に寄生容量を計算すれば、同一の位置関係のパターンをもつ他の部分にも寄生容量の計算結果を流用できる。このため、同じパターンをもつ領域が多いほど、ＲＣ抽出の処理時間を短縮できる。また、ダミーメタルに関するデータ量を低減でき、後続のＲＣ抽出などの処理時間の短縮化に寄与する。
【００３２】
これにより、設計の初期段階における改善フローのＴＡＴを短縮できる。また、第１段階の処理によりタイミングエラーの発生をある程度収束させた上で、第２段階の処理を行うので、第２段階でのタイミング検証やレイアウト修正の時間も短縮できる。このようにして、ダミーメタルを用いたレイアウト設計の設計期間を短縮できる。
【００３３】
［第２の実施の形態］
図２は、第２の実施の形態の設計支援装置のハードウェア例を示す図である。設計支援装置１００は、ＬＳＩなどの半導体集積回路の設計を支援する。設計支援装置１００は、プロセッサ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、読み取り装置１０６、通信インタフェース１０７を有する。各ユニットが設計支援装置１００のバスに接続されている。
【００３４】
プロセッサ１０１は、設計支援装置１００全体を制御する。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ１０１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組み合わせであってもよい。
【００３５】
ＲＡＭ１０２は、設計支援装置１００の主記憶装置である。ＲＡＭ１０２は、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０２は、プロセッサ１０１による処理に用いる各種データを記憶する。
【００３６】
ＨＤＤ１０３は、設計支援装置１００の補助記憶装置である。ＨＤＤ１０３は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。設計支援装置１００は、フラッシュメモリやＳＳＤ（Solid State Drive）などの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
【００３７】
画像信号処理部１０４は、プロセッサ１０１からの命令に従って、設計支援装置１００に接続されたディスプレイ１１に画像を出力する。ディスプレイ１１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイ、液晶ディスプレイ（ＬＣＤ：Liquid Crystal Display）、有機ＥＬ（Electro-Luminescence）ディスプレイなど各種のディスプレイを用いることができる。
【００３８】
入力信号処理部１０５は、設計支援装置１００に接続された入力デバイス１２から入力信号を取得し、プロセッサ１０１に出力する。入力デバイス１２としては、マウスやタッチパネルなどのポインティングデバイスやキーボードなどの各種の入力デバイスを用いることができる。設計支援装置１００には、複数の種類の入力デバイスが接続されてもよい。
【００３９】
読み取り装置１０６は、記録媒体１３に記録されたプログラムやデータを読み取る装置である。記録媒体１３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。また、記録媒体１３として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。読み取り装置１０６は、例えば、プロセッサ１０１からの命令に従って、記録媒体１３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００４０】
通信インタフェース１０７は、ネットワーク１０を介して他の情報処理装置と通信を行う。通信インタフェース１０７は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
【００４１】
図３は、設計支援装置の機能例を示す図である。図３に示すユニットの一部または全部は、各装置が備えるプロセッサによって実行されるプログラムのモジュールであってもよい。設計支援装置１００は、記憶部１１０、設計処理部１２０および検証部１３０を有する。
【００４２】
記憶部１１０は、設計処理部１２０および検証部１３０の処理に用いられる情報を記憶する。記憶部１１０が記憶する情報は、回路情報１１１、ＲＣ抽出情報１１２、補正係数情報１１３、メタル率情報１１４およびダミーメタル発生禁止情報１１５を含む。
【００４３】
回路情報１１１は、設計対象の回路のレイアウトを示す情報である。例えば、回路情報１１１は、回路部品間の配線の接続を示す情報（ネット情報）や配線層毎の配線の位置を示す座標などの情報を含む。回路部品（セル（回路ブロック）や所定の素子）の属性などの情報は、例えば所定のライブラリに登録されている。また、回路情報１１１は、ダミーメタルの挿入位置を示す座標の情報も含む。回路情報１１１は、第１の実施の形態の設計データの一例である。
【００４４】
ＲＣ抽出情報１１２は、検証部１３０が行うＲＣ抽出の結果を示す情報である。補正係数情報１１３は、ＲＣ抽出により取得された寄生容量を補正するための補正係数を示す情報である。補正係数は、配線間の相対的な位置関係に応じて取得される。メタル率情報１１４は、ウィンドウ（設計対象領域内を単位面積で区切った単位領域）毎のメタル率の計算結果である。
【００４５】
ダミーメタル発生禁止情報１１５は、周囲のダミーメタルの発生を制限する（禁止する）配線の識別情報である。ダミーメタル発生禁止情報１１５は、配線の配置位置に対してダミーメタルの発生を制限する領域を示す情報（例えば、当該領域の縁を定める辺と配線との距離）を含む。なお、記憶部１１０が記憶する情報（ライブラリも含む）は、ネットワーク１０に接続され、設計支援装置１００からアクセス可能な記憶装置（図示省略）に格納されていてもよい。
【００４６】
設計処理部１２０は、ユーザによる入力デバイス１２を用いた操作入力に応じて設計データを生成する。例えば、設計データには、配線の位置、長さ、線幅などの情報が含まれる。設計処理部１２０は、生成した設計データを回路情報１１１に登録する。設計処理部１２０は、簡略化されたダミーメタル群を、回路情報１１１に登録されている設計データに対して発生させることで、タイミング検証用の設計データを生成する。
【００４７】
ここで、簡略化されたダミーメタル群とは、例えばファウンドリが提供するダミーメタルの発生ツールによる配置パターンよりも単純な方法で配置されたダミーメタル群である。一方、簡略化されていないダミーメタル群とは、例えばファウンドリが提供するダミーメタルの発生ツールを用いて発生されたダミーメタル群である。
【００４８】
以下の説明では、簡略化されたダミーメタル群を指して簡易ダミーメタル群、簡略化されていないダミーメタル群を指して詳細ダミーメタル群と称することがある。
設計処理部１２０は、タイミング検証に応じてレイアウト修正された設計データに対して、詳細ダミーメタル群を発生させることで、タイミング検証用の設計データを生成することもある。
【００４９】
検証部１３０は、設計処理部１２０により生成された設計データを用いて、ＲＣ抽出およびタイミング検証を行う。例えば、パス（所定の回路部品間を繋ぐ配線や他の回路部品を経由する信号の経路）毎に目標の遅延時間を対応付けた情報を記憶部１１０に予め格納しておく。タイミング検証では、例えば検証部１３０は当該情報を基に、目標の遅延時間を達成しているかをパス毎に判断する。検証部１３０は、タイミング検証でタイミングエラーを検出すると、レイアウト修正を行う。例えば、検証部１３０は、タイミングエラーを解消するように配線の位置、長さなどを変更する。
【００５０】
図４は、ダミーメタルの例を示す図である。図４（Ａ）は、設計データＡ１を（模式的に）例示している。設計データＡ１は、ダミーメタル群を発生させる前の所定の配線層における配線の配置を示す。設計データＡ１は、配線Ｂ１，Ｂ２，Ｂ３を配置する座標の情報を含む。なお、図４では、隣接する配線Ｂ１，Ｂ３間の距離ｄ１、隣接する配線Ｂ２，Ｂ３間の距離ｄ２、および、配線Ｂ１の幅ｄ３も例示されている。
【００５１】
図４（Ｂ）は、設計データＡ２を例示している。設計データＡ２は、簡易ダミーメタル群Ｃ１を設計データＡ１に対して発生させた設計データである。簡易ダミーメタル群Ｃ１では、各ダミーメタルのサイズが均一である。簡易ダミーメタル群Ｃ１では、各ダミーメタルが（配線と被る位置を除いて）等間隔で格子状に配置されている（図４の紙面に対する縦横方向に沿って等間隔に整列されている）。
【００５２】
図４（Ｃ）は、設計データＡ３を例示している。設計データＡ３は、詳細ダミーメタル群Ｃ２を設計データＡ１に対して発生させた設計データである。詳細ダミーメタル群Ｃ２では、各ダミーメタルのサイズが不均一である。詳細ダミーメタル群Ｃ２では、各ダミーメタルの配置が簡易ダミーメタル群Ｃ１よりも複雑である。例えば詳細ダミーメタル群Ｃ２では、図４の紙面に対する縦横方向に沿って等間隔に整列されていない。
【００５３】
図５は、ＲＣ抽出の例を示す図である。図５（Ａ）は、ＲＣ抽出の例（その１）を示す図である。例えば、配線Ｂ２の周囲にはダミーメタルＣ１１，Ｃ１２，Ｃ１３，Ｃ１４が配置されている。ＲＣ抽出では各配線について単位長当たりの寄生容量が取得される。
【００５４】
図５（Ｂ）は、ＲＣ抽出の例（その２）を示す図である。例えば、配線Ｂ３の周囲にはダミーメタルＣ１５，Ｃ１６，Ｃ１７が配置されている。また、配線Ｂ３の周囲に配置されるダミーメタルの数は、配線Ｂ２の周囲に配置されるダミーメタルの数よりも少ない。配線Ｂ３とダミーメタルＣ１５〜Ｃ１７との距離は、配線Ｂ２とダミーメタルＣ１１〜Ｃ１４よりも長い。このように、ダミーメタルの数が減少することや配線とダミーメタルとの距離が長くなることは、寄生容量成分の低下に繋がる。すなわち、この例では、配線Ｂ２とダミーメタルＣ１１〜Ｃ１４との間の寄生容量よりも配線Ｂ３とダミーメタルＣ１５，Ｃ１６，Ｃ１７との間の寄生容量の方が小さい。このため、配線Ｂ３の方が、配線Ｂ２よりも信号遅延は小さい。
【００５５】
図６は、ダミーメタルの発生禁止領域の例を示す図である。設計データＡ４には、ダミーメタルの発生を制限する領域（発生禁止領域）Ｒ１，Ｒ２，Ｒ３が設けられている。領域Ｒ１は、配線Ｂ１に対するダミーメタルの発生禁止領域である。領域Ｒ２は、配線Ｂ２に対するダミーメタルの発生禁止領域である。領域Ｒ３は、配線Ｂ３に対するダミーメタルの発生禁止領域である。このように、配線Ｂ１，Ｂ２，Ｂ３の周囲にダミーメタルの発生を禁止する領域Ｒ１，Ｒ２，Ｒ３を設けることで、配線Ｂ１，Ｂ２，Ｂ３の周囲の領域に対してダミーメタルが挿入されなくなるので、配線Ｂ１，Ｂ２，Ｂ３における信号遅延を改善し得る。なお、図６には、領域Ｒ１の縁を定める辺と配線Ｂ１との距離ｄ１０も例示されている。設計支援装置１００は、何れの配線に対してダミーメタルの発生禁止領域を設けるかが指定されれば、距離ｄ１０の情報により、設計対象領域内の何れの領域をダミーメタルの発生禁止領域とするかを判断できる。
【００５６】
図７は、パスの例を示す図である。部品Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５は、複数の回路素子を含む回路ブロック、抵抗およびコンデンサなどの電子部品や、信号の入出力、電源、アースなどの端子である。部品間は配線で接続される。部品間を結ぶ配線は、ネットと呼ばれる。例えば、部品Ｄ１は端子Ｅ１および部品Ｄ２と接続されている。部品Ｄ２は、部品Ｄ１，Ｄ３，Ｄ５と接続されている。部品Ｄ３は、部品Ｄ２，Ｄ４と接続されている。部品Ｄ４は、端子Ｅ２および部品Ｄ３と接続されている。例えば、端子Ｅ１から部品Ｄ１，Ｄ２，Ｄ３，Ｄ４を介して端子Ｅ２までの信号の伝送路を１つのパスと考えることができる。また、端子Ｅ１から部品Ｄ１，Ｄ２，Ｄ５を介して端子Ｅ３までの信号の伝送路を１つのパスと考えることができる。前述のように、例えば、タイミング検証用に、目標とする信号遅延がパス毎に予め定められる。
【００５７】
図８は、補正係数情報の例を示す図である。補正係数情報１１３には、簡易ダミーメタル群を用いたＲＣ抽出により取得された寄生容量を補正するための係数が登録される。補正係数情報１１３は、記憶部１１０に格納される。補正係数情報１１３は、配線層、配線幅、関係配線層、隣接条件、容量Ｃｍ、容量Ｃｒおよび補正係数Ｋの項目を含む。
【００５８】
配線層の項目には、配線層の名称が登録される。配線幅の項目には、配線の幅が登録される。なお、長さや距離の単位は、例えば、ナノメートル（ｎｍ）である（以下、同様）。関係配線層の項目には、配線層の項目に登録される配線層との関係を示す配線層の名称が登録される。隣接条件の項目には、隣接する配線との距離を示す情報が登録される。値が１つの場合は、隣接する１つの配線との距離であり、値が２つの場合は、隣接する２つの配線との距離である。隣接条件は、配線間の相対的な配置関係を示しているともいえる。容量Ｃｍの項目には、簡易ダミーメタル群を用いてＲＣ抽出を行ったときの寄生容量の値が登録される。容量Ｃｒの項目には、詳細ダミーメタル群を用いてＲＣ抽出を行ったときの寄生容量の値が登録される。容量Ｃｍ，Ｃｒの単位は、例えば、ピコファラッド（ｐｆ）やフェムトファラッド（ｆＦ）である。補正係数Ｋの項目には、容量Ｃｍを補正する係数が登録される。
【００５９】
例えば、補正係数情報１１３には、配線層“Ｍｅｔａｌ１”、配線幅“１００”、関係配線層“Ｍｅｔａｌ１”、隣接条件“＞１０００，＞１０００”、容量Ｃｍ“１００”、容量Ｃｒ“１２１”、補正係数Ｋ“１．２１”という情報が登録されている。
【００６０】
これは、配線層“Ｍｅｔａｌ１”に配置された配線幅“１００”ｎｍの配線に対して、同じ配線層“Ｍｅｔａｌ１”に配置された他の配線との間の距離が“１０００”ｎｍよりも大きい場合（両側に隣接する配線なしの場合と考えてもよい）の補正係数Ｋを示す。具体的には、Ｋ＝Ｃｒ／Ｃｍ＝１２１／１００＝１．２１である。
【００６１】
また、例えば、補正係数情報１１３には、配線層“Ｍｅｔａｌ１”、配線幅“１００”、関係配線層“Ｍｅｔａｌ１”、隣接条件“２００”、容量Ｃｍ“５００”、容量Ｃｒ“５３０”、補正係数Ｋ“１．０６”という情報が登録されている。
【００６２】
これは、配線層“Ｍｅｔａｌ１”の配線幅“１００”ｎｍの配線について、その片側に同じ配線層“Ｍｅｔａｌ１”に配置された他の配線が隣接しており、当該他の配線までの距離が“２００”ｎｍであり、他方の片側には隣接する配線が存在しない場合の補正係数Ｋを示す。具体的には、Ｋ＝Ｃｒ／Ｃｍ＝５３０／５００＝１．０６である。
【００６３】
また、例えば、補正係数情報１１３には、配線層“Ｍｅｔａｌ１”、配線幅“１００”、関係配線層“Ｍｅｔａｌ２”、隣接条件“２００”、容量Ｃｍ“２００”、容量Ｃｒ“２５０”、補正係数Ｋ“１．２５”という情報が登録されている。
【００６４】
これは、配線層“Ｍｅｔａｌ１”の配線幅“１００”ｎｍの配線について、配線層“Ｍｅｔａｌ２”に距離“２００”ｎｍだけ隔てた位置にある他の配線が存在する場合の補正係数Ｋを示す。具体的には、Ｋ＝Ｃｒ／Ｃｍ＝２５０／２００＝１．２５である。
【００６５】
このように、設計支援装置１００は、詳細ダミーメタル群を用いた配線間の相対的な位置関係に応じた寄生容量Ｃｒを用いて補正係数Ｋを予め計算しておく。設計支援装置１００は、簡易ダミーメタル群を用いたＲＣ抽出の結果得られる寄生容量に対して、配線間の相対的な位置関係に応じた補正係数Ｋを乗じることで、当該寄生容量を補正する。
【００６６】
図９は、レイアウト設計の処理例を示すフローチャートである。以下、図９に示す処理をステップ番号に沿って説明する。
（Ｓ１１）設計処理部１２０は、集積回路のレイアウトを示す設計データを生成する。例えば、ユーザによる操作入力に応じて、回路部品の配置や配線の入力が行われる。設計処理部１２０は、当該入力に応じて設計データを生成し得る。
【００６７】
（Ｓ１２）設計処理部１２０は、生成した設計データに対して簡易ダミーメタル群を発生させた設計データを生成する。
（Ｓ１３）検証部１３０は、ステップＳ１２で生成した設計データを用いてＲＣ抽出を行う。ＲＣ抽出では、設計データに含まれる全てのパスについて単位長当たりの寄生容量が算出される。検証部１３０は、ＲＣ抽出を行った結果をＲＣ抽出情報１１２に登録する。ここで、補正係数情報１１３が既に生成されている場合、検証部１３０は、隣接条件に対応する補正係数ＫをＲＣ抽出で取得した寄生容量に乗じることで、当該寄生容量を補正する。例えば、配線層が“Ｍｅｔａｌ１”に存在する配線幅が“１００”ｎｍの配線の単位長の所定部分に着目した時に、当該部分の両側にある配線層”Ｍｅｔａｌ１”内の配線との距離が何れも“２００ｎｍ”であり、当該部分に対して取得された寄生容量が“７００”ｆＦであるとする。この場合、検証部１３０は、７００ｆＦ×１．０３＝７２１ｆＦを、当該部分の補正後の寄生容量として取得する。補正係数情報１１３が生成されていなければ、この補正は行われない。
【００６８】
（Ｓ１４）検証部１３０は、ステップＳ１２で生成した設計データおよびＲＣ抽出結果を用いてタイミング検証を行う。具体的には、検証部１３０は、タイミングエラーの有無（パス毎に目標遅延を達成しているか否か）をパス毎に検証する。
【００６９】
（Ｓ１５）検証部１３０は、補正係数情報１１３を生成済みであり、かつ、タイミング検証でタイミングエラーがあるか否かを判定する。補正係数情報１１３を生成済みであり、かつ、タイミング検証でタイミングエラーがある場合、処理をステップＳ１１に進める。設計処理部１２０は、タイミング検証のエラーに応じて、論理修正または配線の配置の移動など設計データのレイアウトを修正する。補正係数情報１１３を未生成である、または、タイミング検証でタイミングエラーがない場合、処理をステップＳ１６に進める。
【００７０】
（Ｓ１６）設計処理部１２０は、詳細ダミーメタル群をステップＳ１１で生成した設計データに対して発生させた設計データを生成する。
（Ｓ１７）検証部１３０は、ステップＳ１６で生成した設計データを用いてＲＣ抽出を行う。ステップＳ１３と同様に、ＲＣ抽出では、設計データに含まれる全てのパスについて単位長当たりの寄生容量が算出される。検証部１３０は、ＲＣ抽出結果をＲＣ抽出情報１１２に登録する。
【００７１】
（Ｓ１８）検証部１３０は、補正係数情報１１３が生成済みであるか否かを判定する。生成済みの場合、処理をステップＳ２０に進める。未生成の場合、処理をステップＳ１９に進める。
【００７２】
（Ｓ１９）検証部１３０は、隣接条件に応じた補正係数の算出処理を行う。検証部１３０は、算出した補正係数を隣接条件に対応付けて記録することで、補正係数情報１１３を生成する。そして、処理をステップＳ１２に進める。
【００７３】
（Ｓ２０）検証部１３０は、ステップＳ１６で生成した設計データおよびステップＳ１７のＲＣ抽出結果を用いてタイミング検証を行う。具体的には、検証部１３０は、タイミングエラーの有無（パス毎に目標遅延を達成しているか否か）をパス毎に検証する。そして、処理をステップＳ２１に進める。
【００７４】
図１０は、レイアウト設計の処理例（続き）を示すフローチャートである。以下、図１０に示す処理をステップ番号に沿って説明する。
（Ｓ２１）検証部１３０は、タイミング検証でエラーがあるか否かを判定する。エラーがある場合、処理をステップＳ２２に進める。エラーがない場合、処理を終了する。
【００７５】
（Ｓ２２）検証部１３０は、ダミーメタルの発生禁止領域の設定を行う。ステップＳ２２では、ステップＳ２１でタイミング検証のエラーがあるパス毎にダミーメタルの発生禁止領域を設定する。この処理により、検証部１３０は、ダミーメタル発生禁止情報１１５を生成し、記憶部１１０に格納する。詳細については後述する。
【００７６】
（Ｓ２３）検証部１３０は、ステップＳ２２でダミーメタルの発生禁止領域を設定したことで、レイアウト対象領域内の単位領域のメタル率が所定の密度ルールを満たしているか否かを判定する。密度ルールを満たしている場合（メタル率エラーがない場合）、処理をステップＳ２４に進める。密度ルールを満たしていない場合（メタル率エラーがある場合）、処理をステップＳ１１に進める。なお、密度ルールとして、例えば、メタル率１０〜８０％のような範囲が記憶部１１０に予め設定される。
【００７７】
（Ｓ２４）設計処理部１２０は、ダミーメタル発生禁止情報を参照し、ダミーメタルの発生禁止領域を現在着目する設計データに設定する。設計処理部１２０は、詳細ダミーメタル群を当該設計データに対して発生させることで、タイミング検証用の設計データを生成する。
【００７８】
（Ｓ２５）検証部１３０は、ステップＳ２４で生成された設計データを用いてＲＣ抽出を行う。ステップＳ１３と同様に、ＲＣ抽出では、設計データに含まれる全てのパスについて単位長当たりの寄生容量が算出される。検証部１３０は、ＲＣ抽出を行った結果をＲＣ抽出情報１１２に登録する。
【００７９】
（Ｓ２６）検証部１３０は、ステップＳ２４で生成した設計データを用いて、ＲＣ抽出の結果によりタイミング検証を行う。具体的には、検証部１３０は、タイミングエラーの有無（パス毎に目標遅延を達成しているか否か）をパス毎に検証する。
【００８０】
（Ｓ２７）検証部１３０は、タイミング検証でエラーがあるか否かを判定する。エラーがある場合、処理をステップＳ１１に進める。エラーがない場合、処理を終了する。ステップＳ１１に進める場合、検証部１３０は、ダミーメタル発生禁止情報１１５を削除する。設計処理部１２０は、タイミング検証のエラーに応じて、論理修正または配線の配置の移動など設計データのレイアウトを修正する。
【００８１】
図１１は、補正係数の算出例を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。図１１に示す処理はステップＳ１９に相当する。
（Ｓ３１）検証部１３０は、簡易ダミーメタル群を用いたＲＣ抽出（配線の単位長毎に行われる）の結果を同一配線層内および積層方向の隣接条件毎に分類する。
【００８２】
（Ｓ３２）検証部１３０は、ステップＳ３１で行った分類毎に寄生容量を平均化して単位長当たりの寄生容量Ｃｍを算出する。検証部１３０は、算出した寄生容量Ｃｍを、隣接条件に対応付けて補正係数情報１１３に登録する。
【００８３】
（Ｓ３３）検証部１３０は、詳細ダミーメタル群を用いたＲＣ抽出の結果を隣接条件毎に分類する。
（Ｓ３４）検証部１３０は、ステップＳ３３で行った分類毎に寄生容量を平均化して単位長当たりの寄生容量Ｃｒを算出する。検証部１３０は、算出した寄生容量Ｃｒを、隣接条件に対応付けて補正係数情報１１３に登録する。
【００８４】
（Ｓ３５）検証部１３０は、分類毎に補正係数Ｋ＝容量Ｃｒ／容量Ｃｍを算出する。検証部１３０は、算出した補正係数Ｋを隣接条件に対応付けて補正係数情報１１３に登録する。
【００８５】
図１２は、ダミーメタルの発生禁止領域の設定例を示すフローチャートである。以下、図１２に示す処理をステップ番号に沿って説明する。図１２に示す処理はステップＳ２２相当する。
【００８６】
（Ｓ４１）検証部１３０は、ステップＳ２０のタイミング検証でエラーが発生しているパスを全て抽出する。
（Ｓ４２）検証部１３０は、エラーが発生しているパスを１つ特定し、ダミーメタルの発生禁止領域を当該パス（以下、着目しているパスと称する）に含まれる配線に対して仮設定する。ダミーメタルの発生禁止領域は、対象の配線と同じ配線層および上下の配線層に対して設けることができる。
【００８７】
（Ｓ４３）検証部１３０は、着目しているパスに対して、禁止が設定された領域にはダミーメタルが存在しないものとして扱い、ＲＣ抽出を行う。
（Ｓ４４）検証部１３０は、着目しているパスに対して、ステップＳ４３のＲＣ抽出結果を用いたタイミング検証を行う。具体的には、検証部１３０は、当該パスのタイミングエラーの有無（目標遅延を達成しているか否か）を検証する。
【００８８】
（Ｓ４５）検証部１３０は、着目しているパスに対するタイミングエラー（ステップＳ２６，Ｓ２７で検出されたタイミングエラー）を解消できたか否か判定する。エラーを解消できた場合、処理をステップＳ４６に進める。エラーを解消できない場合、処理をステップＳ５０に進める。
【００８９】
（Ｓ４６）検証部１３０は、着目しているパス周辺の単位面積の各領域についてメタル率を算出する。検証部１３０は、算出したメタル率をメタル率情報１１４に登録する。
（Ｓ４７）検証部１３０は、着目しているパスにダミーメタルの発生禁止領域を設定したときの当該パス周辺の単位面積の各領域についてメタル率を算出する。
【００９０】
（Ｓ４８）検証部１３０は、ステップＳ４７で算出したメタル率が密度ルールを満たすか否か判定する。密度ルールを満たす場合、処理をステップＳ４９に進める。密度ルールを満たさない場合、処理をステップＳ５０に進める。
【００９１】
（Ｓ４９）検証部１３０は、ステップＳ４６でメタル率情報１１４に登録したメタル率をステップＳ４７で算出したメタル率に更新する。また、検証部１３０は、着目しているパスに対してダミーメタルの発生禁止領域を設定することを確定する。具体的には、検証部１３０は、ダミーメタルの発生禁止領域を設ける配線として、着目しているパスに含まれる配線（ネット）の識別情報をダミーメタル発生禁止情報１１５に登録する。
【００９２】
（Ｓ５０）検証部１３０は、エラーが発生している全てのパスに対して処理済みであるか否かを判定する。処理済みの場合、処理を終了する。処理済みでない場合、処理をステップＳ４２に進める。
【００９３】
このように、設計支援装置１００は、まずは簡易ダミーメタル群を用いてタイミング検証／レイアウト修正を行い（第１段階）、その後、詳細ダミーメタル群を用いてタイミング検証／レイアウト修正を行う（第２段階）。第１段階では、ＲＣ抽出で算出した寄生容量を前述の補正係数を用いて補正する。簡易ダミーメタル群を用いた場合の寄生容量と詳細ダミーメタル群を用いた場合の寄生容量との差を改善し、簡易ダミーメタル群を利用した時に取得される寄生容量の精度を向上するためである。これにより、第１段階におけるタイミング検証の精度低下を抑えることができる。その結果、ＲＣ抽出の誤差に起因する手戻りを低減できる。
【００９４】
また、第２段階でのタイミング検証において、エラーがある場合には、ダミーメタルの発生禁止領域を設定する。当該発生禁止領域の設定によりエラーが解消されれば、配線などのレイアウトの修正をせずに、エラーを解消することができるので、設計期間を短縮できる。
【００９５】
一方、ＣＭＰに関係する製造条件として、メタルの面積率の上限、下限が密度ルールとして決められており、ダミーメタル禁止を無条件に設定してしまうと、メタル率の下限を下回り製造できなくなるおそれもある。そこで、設計支援装置１００は、ダミーメタルの発生禁止領域を設定したパス周辺のメタル率が密度ルールを満たしているか否かの判定を行う。これにより、ダミーメタルの発生禁止領域を設定したパス周辺の密度ルールを満たすことも保証できる。
【００９６】
すなわち、配線遅延が存在するパスにおいて、軽微なダミーメタルの配置制御で遅延改善が見込まれるネットに対しては、ダミーメタルの禁止領域の設定とともにメタル率判定を行うことで、製造条件と遅延改善とを同時に満足できる。この方法により改善される比較的軽微なタイミングエラーに関しては、配置、配線フェーズへ戻らずに済む。このため、設計期間を短縮化できる。
【００９７】
更に、設計処理部１２０は、ダミーメタルの発生禁止領域を設けたネットに対しては、ステップＳ１１でそのネット自身が変更されない限りレイアウト変更が行われても禁止領域の設定を維持し、そのネットが変更されれば、対応する禁止領域の設定を削除する。これにより、ダミーメタルの発生禁止領域の再計算の無駄を省くことができる。
【００９８】
図１３は、レイアウト設計の処理の他の例を示すフローチャートである。以下、図１３に示す処理をステップ番号に沿って説明する。
（Ｓ５１）設計処理部１２０は、論理設計・実装設計により集積回路のレイアウトを決定し、設計データを生成する。検証部１３０によるタイミング検証でタイミングエラーが検出された場合（後述のステップＳ５５でＹｅｓの場合）、設計処理部１２０は、検証部１３０から取得した検証結果を基に、設計データのレイアウトを修正することもある。
【００９９】
（Ｓ５２）設計処理部１２０は、設計データに対して簡易ダミーメタル群を発生させる。
（Ｓ５３）検証部１３０は、簡易ダミーメタル群を発生させた設計データを用いてＲＣ抽出を行う。検証部１３０は、補正係数情報１１３を用いて、ＲＣ抽出により取得された寄生容量を補正する。
【０１００】
（Ｓ５４）検証部１３０は、設計データおよびＲＣ抽出の結果を用いてタイミング検証を行う。検証部１３０は、例えば、集積回路に含まれるパス毎に、タイミングエラーの有無（パス毎に目標遅延を達成しているか否か）を検証する。
【０１０１】
（Ｓ５５）検証部１３０は、何れかのパスでタイミングエラーを検出したか否かを判定する。タイミングエラーがある場合、処理をステップＳ５１に進める。タイミングエラーがない場合、処理をステップＳ５６に進める。具体的には、検証部１３０は、目標遅延を達成していないパスがあれば、タイミングエラーがあると判断する。その場合、検証部１３０は、検証結果の情報を設計処理部１２０に通知する（レイアウトを修正させる）。あるいは、検証部１３０が、タイミングエラーを解消するように設計データのレイアウトを修正してもよい。また、検証部１３０は、全てのパスが目標遅延を達成している場合には、タイミングエラーがないと判断する。
【０１０２】
（Ｓ５６）検証部１３０は、設計データに対し、簡易ダミーメタル群に代えて、詳細ダミーメタル群を発生させる。
（Ｓ５７）検証部１３０は、詳細ダミーメタル群を発生させた設計データを用いてＲＣ抽出を行う。
【０１０３】
（Ｓ５８）検証部１３０は、設計データおよびＲＣ抽出の結果を用いてタイミング検証を行う。タイミング検証の方法は、例えば、ステップＳ５４と同様である。
（Ｓ５９）検証部１３０は、検証部１３０は、何れかのパスでタイミングエラーを検出したか否かを判定する。タイミングエラーがある場合、処理をステップＳ５１に進める。タイミングエラーがない場合、処理を終了する。具体的には、検証部１３０は、目標遅延を達成していないパスがあれば、タイミングエラーがあると判断する。その場合、検証部１３０は、検証結果の情報を設計処理部１２０に通知する（レイアウトを修正させる）。あるいは、検証部１３０が、タイミングエラーを解消するように設計データのレイアウトを修正してもよい。また、検証部１３０は、全てのパスが目標遅延を達成している場合には、タイミングエラーがないと判断する。
【０１０４】
このように、設計支援装置１００は、第１段階（ステップＳ５１〜Ｓ５５）および第２段階（ステップＳ５６〜Ｓ５９）でタイミング検証／レイアウト修正を行う。上記のように、第２段階ではダミーメタルの発生禁止領域の設定を行わなくてもよい。
【０１０５】
なお、第１段階では、ダミーメタルの発生やタイミング検証の処理時間を、第２段階よりも高速化できるので、第１段階を高速フェーズと呼べる。また、第２段階では、第１段階よりも実際のダミーメタルを用いた場合に近い詳細な検証を行えるので、第２段階を詳細フェーズと呼べる。
【０１０６】
半導体集積回路の設計では、ダミーメタル発生、タイミング検証、レイアウト修正という一連の改善フローが繰り返し行われる。設計の初期段階ではレイアウトは大まかに決定されているに過ぎず、タイミング検証では多数のタイミングエラーが検出され得る。したがって、設計の初期段階では多数のタイミングエラーの改善を要する。
【０１０７】
このため、設計の初期段階ではＲＣ抽出の精度よりも改善フローのＴＡＴの方が重要である。初期段階から詳細な情報を用いて改善フローを実行していると改善フローのＴＡＴが長くなり易く、却って設計期間が長引くおそれがある。
【０１０８】
そこで、設計支援装置１００は、まずは簡易ダミーメタル群を用いたタイミング検証によりレイアウトを修正し、その後、詳細ダミーメタル群を用いたタイミング検証によりレイアウトを更に修正する。設計の初期段階では、ＲＣ抽出の精度が落ちても（チェックが粗くなったとしても）、改善フローのＴＡＴは短い方が設計期間の短縮には有利だからである。
【０１０９】
ここで、簡易ダミーメタル群を用いることで、ダミーメタル発生の処理時間の短縮化を図れる。ダミーメタルは周囲のメタルの配置状況を考慮しながら、複雑な形状を挿入するため、ダミーメタルの配置パターンが複雑化するほどダミーメタルの生成時間が長くなる傾向にあるからである。
【０１１０】
また、簡易ダミーメタル群を用いることで、ＲＣ抽出の処理時間の短縮化を図れる。例えば、集積回路の一部の領域の配線間およびダミーメタルの相対的な位置関係のパターン毎に寄生容量を計算すれば、同一の位置関係のパターンをもつ他の部分にも寄生容量の計算結果を流用できる。このため、同じパターンをもつ領域が多いほど、ＲＣ抽出の処理時間を短縮できる。また、ダミーメタルに関するデータ量を低減でき、後続のＲＣ抽出などの処理時間の短縮化に寄与する。
【０１１１】
このように、設計支援装置１００は、タイミングエラーが多数の状態では、高速フェーズで論理・実装の修正を短ＴＡＴで実行することで処理時間を大幅に改善し、エラーが少なくなった時点で詳細フェーズへ移行することで、全体のＴＡＴを改善する。エラーの大半を高速フェーズで処理できるため、詳細フェーズのみを繰り返し実行する場合よりも、全体の処理時間を短縮できる。
【０１１２】
なお、第１の実施の形態の情報処理は、演算部１ｂとして用いられるプロセッサに、プログラムを実行させることで実現できる。第２の実施の形態の情報処理は、プロセッサ１０１にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体１３に記録できる。
【０１１３】
例えば、プログラムを記録した記録媒体１３を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。更に、設計処理部１２０および検証部１３０に相当する機能を実現するプログラムを別個のプログラムとし、各プログラムを別個に配布してもよい。設計処理部１２０と検証部１３０との機能が別個のコンピュータにより実現されてもよい。コンピュータは、例えば、記録媒体１３に記録されたプログラムまたは他のコンピュータから受信したプログラムを、ＲＡＭ１０２やＨＤＤ１０３などの記憶装置に格納し（インストールし）、当該記憶装置からプログラムを読み込んで実行してもよい。
【符号の説明】
【０１１４】
１  設計支援装置
１ａ  記憶部
１ｂ  演算部
Ｘ１，Ｘ２，Ｘ３  設計データ
Ｙ１，Ｙ２  配線
Ｚ１，Ｚ２  ダミーメタル群
【図１】
2015194965.tif 000003
【図２】
2015194965.tif 000004
【図３】
2015194965.tif 000005
【図４】
2015194965.tif 000006
【図５】
2015194965.tif 000007
【図６】
2015194965.tif 000008
【図７】
2015194965.tif 000009
【図８】
2015194965.tif 000010
【図９】
2015194965.tif 000011
【図１０】
2015194965.tif 000012
【図１１】
2015194965.tif 000013
【図１２】
2015194965.tif 000014
【図１３】
2015194965.tif 000015