(57)【要約】【課題】集積回路の設計方法として、集積回路の性能を従来よりも最適化可能にする。【解決手段】初期レイアウト（Ｓ２０）後、集積回路評価工程Ｓ３０、変更セル選択工程Ｓ４０およびセル性能変更工程Ｓ５０を繰り返し実行する。変更セル選択工程Ｓ４０では、工程Ｓ３０による評価結果に基づいて、集積回路を構成するセルの中から、性能を変更するセルを選択する。セル性能変更工程Ｓ５０では、工程Ｓ４０によって選択されたセルの性能特性を、ライブラリ１５を参照して、その外部条件を用いて決定する。【選択図】　　図１
2004005578.tif 000002
【特許請求の範囲】
【請求項１】
集積回路の設計方法であって、
前記集積回路の性能を評価する集積回路評価工程と、
前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から、性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、
前記変更セル選択工程によって選択されたセルの性能を、変化させるセル性能変更工程とを備え、
前記セル性能変更工程は、前記選択されたセルについて、その外部条件を用いて、その性能特性を決定するものである
ことを特徴とする集積回路の設計方法。
【請求項２】
請求項１において、
セルの外部条件は、出力負荷容量、入力ドライブおよび入力波形のうちの少なくとも１つを含む
ことを特徴とする集積回路の設計方法。
【請求項３】
請求項１において、
セルの性能特性は、遅延、面積、消費電力、出力ドライブおよび入力負荷容量のうちの少なくとも１つを含む
ことを特徴とする集積回路の設計方法。
【請求項４】
集積回路の設計方法であって、
前記集積回路の性能を評価する集積回路評価工程と、
前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から、性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、
前記変更セル選択工程によって選択されたセルの性能を、変化させるセル性能変更工程とを備え、
前記集積回路評価工程、前記変更セル選択工程およびセル性能変更工程を繰り返し実行するものであり、
前記集積回路評価工程は、
複数の評価手法の中から、所定の条件に応じて、１つを選択し、選択した評価手法を用いて、前記集積回路に含まれたセルの性能評価を行うものである
ことを特徴とする集積回路の設計方法。
【請求項５】
請求項４において、
前記複数の評価手法の１つは、
セルを構成する各トランジスタのサイズを、当該セルの面積および性能を加味して最適化し、最適化したトランジスタサイズに基づいて当該セルの性能を評価するものである
ことを特徴とする集積回路の設計方法。
【請求項６】
請求項４において、
前記所定の条件は、
少なくとも、指定された設計期間と前記集積回路の性能目標との優先度を、考慮したものである
ことを特徴とする集積回路の設計方法。
【請求項７】
請求項４において、
前記所定の条件は、
少なくとも、工程の繰り返し回数を、考慮したものである
ことを特徴とする集積回路の設計方法。
【請求項８】
集積回路の設計方法であって、
前記集積回路内のセルおよびセル間配線の相対位置を決定する初期レイアウト工程と、
前記集積回路の性能を評価する集積回路評価工程と、
前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から、性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、
前記変更セル選択工程によって選択されたセルの性能を、変化させるセル性能変更工程とを備え、
前記集積回路評価工程、前記変更セル選択工程および前記セル性能変更工程を繰り返し実行するものであり、
各工程の繰り返しにおいて、前記初期レイアウト工程において決定したセルおよびセル間配線の相対位置を、継承する
ことを特徴とする集積回路の設計方法。
【請求項９】
請求項８において、
前記初期レイアウト工程は、
前記集積回路の面積が最小になるように、セルおよびセル間配線の相対位置を決定するものである
ことを特徴とする集積回路の設計方法。
【請求項１０】
請求項８において、
前記初期レイアウト工程は、
前記集積回路におけるセル密度分布が均一になるように、セルおよびセル間配線の相対位置を決定するものである
ことを特徴とする集積回路の設計方法。
【請求項１１】
請求項８において、
前記初期レイアウト工程は、セルを行列状に配置するものであり、
前記集積回路評価工程は、
前記集積回路の面積を、セル行長さの最大値とセル列長さの最大値との積に基づいて、評価するものである
ことを特徴とする集積回路の設計方法。
【請求項１２】
請求項８において、
前記集積回路評価工程は、
前記セル性能変更工程において性能を変化させたセルの面積変化に起因する配線形状の変化を推定し、推定した配線形状変化を加味して、前記集積回路の性能を評価するものである
ことを特徴とする集積回路の設計方法。
【請求項１３】
集積回路の設計方法であって、
前記集積回路の性能を評価する集積回路評価工程と、
前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から、性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、
前記変更セル選択工程によって選択されたセルの性能を、変化させるセル性能変更工程とを備え、
前記集積回路評価工程、前記変更セル選択工程および前記セル性能変更工程を繰り返し実行するものであり、
初期条件として、各セルの面積を最小に設定しておき、
前記セル性能変更工程は、
セルの性能変更を、その面積が増加する方向にのみ、行うものである
ことを特徴とする集積回路の設計方法。
【請求項１４】
集積回路の設計方法であって、
前記集積回路の性能を評価する集積回路評価工程と、
前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から、性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、
前記変更セル選択工程によって選択されたセルの性能を、変化させるセル性能変更工程とを備え、
前記集積回路評価工程、前記変更セル選択工程およびセル性能変更工程を繰り返し実行するものであり、
前記集積回路評価工程は、
セルを構成する各トランジスタのサイズを、当該セルの面積および性能を加味して最適化し、最適化したトランジスタサイズに基づいて当該セルの性能を評価するものである
ことを特徴とする集積回路の設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＭＯＳ・ＬＳＩ等の集積回路を設計する技術に属する。
【０００２】
【従来の技術】
従来、集積回路の設計においては、集積回路の面積、消費電力、動作クロック周波数等の性能を最適化するために、予め遅延や面積等が異なるライブラリセルを設計しておき、集積回路の性能評価とセル置換とを、所望の目標性能が達成されるまで繰り返し実行するような手法がとられていた。また、集積回路の性能に大きな影響を与える，配線容量等のレイアウトに依存する情報を正確に推定するために、レイアウト設計とセル置換とを繰り返し実行するような手法もとられていた。
【０００３】
【発明が解決しようとする課題】
集積回路の性能を向上させるために最適なセルの仕様は、その集積回路におけるそのセルの外部条件、例えば負荷容量やドライブ等に依存する。しかしながら、従来の設計方法では、既存のライブラリを用いて設計を行うため、各ライブラリセルが、実際の集積回路における外部条件を考慮した場合、必ずしも最適であるとは限らない。したがって、この結果、集積回路の性能を必ずしも最適化できない。また、より実際の外部条件に合うように、様々なバリエーションのライブラリセルを予め準備するためには、膨大な設計工数を要する。
【０００４】
前記の問題に鑑み、本発明は、集積回路の設計方法として、集積回路の性能を従来よりも最適化可能にすることを課題とする。
【０００５】
【課題を解決するための手段】
前記の課題を解決するために、本発明は、集積回路の設計方法として、前記集積回路の性能を評価する集積回路評価工程と、前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、前記変更セル選択工程によって選択されたセルの性能を変化させるセル性能変更工程とを備え、前記セル性能変更工程は、前記選択されたセルについて、その外部条件を用いてその性能特性を決定するものである。
【０００６】
この発明によると、変更対象として選択されたセルについて、その外部条件を用いてその性能特性が決定されるので、従来よりも、性能特性の推定精度が向上する。したがって、集積回路の性能を最適化することができるので、より最適な集積回路を設計することができる。
【０００７】
そして、セルの外部条件は、出力負荷容量、入力ドライブおよび入力波形のうちの少なくとも１つを含むのが好ましい。さらに、セルの性能特性は、遅延、面積、消費電力、出力ドライブおよび入力負荷容量のうちの少なくとも１つを含むのが好ましい。
【０００８】
また、本発明は、集積回路の設計方法として、前記集積回路の性能を評価する集積回路評価工程と、前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、前記変更セル選択工程によって選択されたセルの性能を変化させるセル性能変更工程とを備え、前記集積回路評価工程、前記変更セル選択工程およびセル性能変更工程を繰り返し実行するものであり、前記集積回路評価工程は、複数の評価手法の中から所定の条件に応じて１つを選択し、選択した評価手法を用いて前記集積回路に含まれたセルの性能評価を行うものである。
【０００９】
この発明によると、集積回路に含まれたセルの性能評価は、複数の評価手法の中から所定の条件に応じて選択した評価手法を用いて行われる。このため、セルの性能の推定精度を落とすことなく、処理速度を向上させることができる。
【００１０】
そして、前記複数の評価手法の１つは、セルを構成する各トランジスタのサイズを当該セルの面積および性能を加味して最適化し、最適化したトランジスタサイズに基づいて当該セルの性能を評価するものとするのが好ましい。
【００１１】
また、前記所定の条件は、少なくとも、指定された設計期間と前記集積回路の性能目標との優先度を考慮したものとするのが好ましい。
【００１２】
あるいは、前記所定の条件は、少なくとも、工程の繰り返し回数を考慮したものとするのが好ましい。
【００１３】
また、本発明は、集積回路の設計方法として、前記集積回路内のセルおよびセル間配線の相対位置を決定する初期レイアウト工程と、前記集積回路の性能を評価する集積回路評価工程と、前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、前記変更セル選択工程によって選択されたセルの性能を変更するセル性能変更工程とを備え、前記集積回路評価工程、前記変更セル選択工程および前記セル性能変更工程を繰り返し実行するものであり、各工程の繰り返しにおいて、前記初期レイアウト工程において決定したセルおよびセル間配線の相対位置を継承するものである。
【００１４】
この発明によると、セルおよびセル間配線の相対位置が、集積回路設計の過程において継承されるので、レイアウトに依存する集積回路の性能特性を正確に推定することができるとともに、局所解や無限ループに陥ることなく最適解を得ることができる。
【００１５】
そして、前記初期レイアウト工程は、前記集積回路の面積が最小になるようにセルおよびセル間配線の相対位置を決定するのが好ましい。
【００１６】
また、前記初期レイアウト工程は、前記集積回路におけるセル密度分布が均一になるようにセルおよびセル間配線の相対位置を決定するのが好ましい。
【００１７】
また、前記初期レイアウト工程は、セルを行列状に配置するものとし、前記集積回路評価工程は、前記集積回路の面積を、セル行長さの最大値とセル列長さの最大値との積に基づいて評価するのが好ましい。
【００１８】
また、前記集積回路評価工程は、前記セル性能変更工程において性能を変化させたセルの面積変化に起因する配線形状の変化を推定し、推定した配線形状変化を加味して、前記集積回路の性能を評価するのが好ましい。
【００１９】
また、本発明は、集積回路の設計方法として、前記集積回路の性能を評価する集積回路評価工程と、前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、前記変更セル選択工程によって選択されたセルの性能を変化させるセル性能変更工程とを備え、前記集積回路評価工程、前記変更セル選択工程および前記セル性能変更工程を繰り返し実行するものであり、初期条件として、各セルの面積を最小に設定しておき、前記セル性能変更工程は、セルの性能変更をその面積が増加する方向にのみ行うものである。
【００２０】
本発明によると、セルの性能変更が、その面積が増加する方向にのみ行われるため、性能推定のための計算量が少なくてすむので、処理速度が向上する。
【００２１】
また、本発明は、集積回路の設計方法として、前記集積回路の性能を評価する集積回路評価工程と、前記集積回路評価工程による評価結果に基づいて、前記集積回路を構成するセルの中から性能を変更するセルを少なくとも１つ選択する変更セル選択工程と、前記変更セル選択工程によって選択されたセルの性能を変化させるセル性能変更工程とを備え、前記集積回路評価工程、前記変更セル選択工程およびセル性能変更工程を繰り返し実行するものであり、前記集積回路評価工程は、セルを構成する各トランジスタのサイズを当該セルの面積および性能を加味して最適化し、最適化したトランジスタサイズに基づいて当該セルの性能を評価するものである。
【００２２】
【発明の実施の形態】
以下、本発明の一実施形態について、図面を参照しながら説明する。
【００２３】
図１は本発明の一実施形態に係る集積回路の設計方法を示すフローチャートである。図１に示すように、本実施形態では、設計対象の集積回路に関する回路情報１０を入力し（Ｓ１０）、初期レイアウト（Ｓ２０）を行った後、ライブラリ１５を参照しながら、集積回路評価工程Ｓ３０、変更セル選択工程Ｓ４０およびセル性能変更工程Ｓ５０を繰り返し実行して最適化を行い、レイアウト結果１８を出力する（Ｓ６０）。また、図２は集積回路評価工程Ｓ３０、変更セル選択工程Ｓ４０およびセル性能変更工程Ｓ５０の詳細なフローチャートである。
【００２４】
まず入力工程Ｓ１０において、設計対象の集積回路に関する回路情報１０を読み込む。回路情報１０は、集積回路を構成する各セルの論理情報とセル間の接続情報とを含んでいる。入力した回路情報１０にセル性能の初期値が含まれている場合はそれを継承し、含まれていない場合は、例えばすべてのセルが最小サイズになるように、初期設定を行っておく。
【００２５】
次に初期レイアウト工程Ｓ２０において、集積回路内の各セルの初期配置および初期配線を行う。この配置配線情報は、集積回路の性能に影響を与える配線容量や配線抵抗等を正確に見積もるために用いる。
【００２６】
すなわち、最適化の過程において各セルの形状は変化するので、面積的観点からみると、各セルの形状に応じてレイアウト変更を行うべきである。しかしながら、セル形状の変化のたびに毎回レイアウト変更を行うものとすると、膨大な計算時間が必要になるとともに、配線長が不連続に変化するために、最適化の過程で局所解や無限ループに陥ってしまう可能性がある。そこで、本実施形態では、初期レイアウトによって決定された各セルや各配線の前後左右の位置関係、すなわちセルおよびセル間配線の相対位置は、設計終了まで継承するものとし、各セルや各配線の座標のみをセル形状の変化に合わせて随時変更するものとする。セルおよび配線の座標変更は、あるセルの形状変化に応じて、その周囲のセルおよび配線を平行移動することによって行なう。このような方法を用いることによって、計算速度が短縮でき、性能の最適化にレイアウト情報をより正確に反映できるとともに、性能を連続的に変化させることが可能となる。
【００２７】
次に、集積回路評価工程Ｓ３０において、集積回路に含まれる各セルについてライブラリ１５を参照して、遅延、面積、消費電力等の性能を評価し（Ｓ３１）、各セルの性能に基づいて、集積回路全体の性能を評価する（Ｓ３５）。
【００２８】
図３はライブラリ１５に格納された情報の例を示している。同図中、（ａ）はライブラリラインナップの例、（ｂ）はあるライブラリセルの性能に関する情報の例である。本実施形態に係るライブラリでは、図３（ａ）に示すように、論理の異なるライブラリセルのみをそろえている。また図３（ｂ）に示すように、異なる外部条件に応じてそれぞれ最適化されたライブラリセルの性能特性が記憶されており、さらに、同一の外部条件であっても、異なる設計指標の下で最適化された複数の性能特性が記憶されている。
【００２９】
本実施形態では、図３に示すような、異なる外部条件に応じて最適化設計された性能特性のトレードオフ情報を有するライブラリを用いるので、動作周波数等の所望の集積回路性能を得るために、各セルについて、その外部条件に応じて、複数の性能特性の候補の中から１つの性能特性を選択することができる。セルの外部条件に応じた複数の性能特性は、例えば特開平１１−３９７３号公報に開示された方法や、または性能の異なる代表的なセルをいくつか生成する方法によって作成することができる。
【００３０】
セルの性能特性の項目としては、例えば、遅延、面積、消費電力、出力ドライブおよび入力負荷容量等がある。またセルの外部条件の項目としては、出力負荷容量、入力ドライブおよび入力波形等がある。図４はライブラリセルのモデルを示す図であり、同図中、（ａ）は回路モデル、（ｂ）は入力波形モデルである。図４（ａ）において、２０はセルモデル、２１は入力外部条件モデル、２２は出力外部条件モデルを表している。セル性能特性項目として、２３は入力負荷容量、２４は出力ドライブを示している。また外部条件項目として、２５は入力ドライブ、２６は出力負荷容量を示している。また、入力ドライブのかわりに入力波形を用いることもできる。入力波形は、図４（ｂ）に示す入力波形曲線２７によって近似し、入力電圧の変化の開始からから終了までの時間２８によって表現することができる。
【００３１】
例えば図３（ｂ）では、入力ドライブが１０ｋΩ、出力負荷容量が０．１ｐＦとなる外部条件の下でセルを最適化設計した場合の性能特性が複数種類あり、その１つは、面積が０．１μｍ２　、遅延が０．１ｎｓ、消費電力が１０μＷ、出力ドライブが３０ｋΩ、入力負荷容量が０．０１ｐＦであることを示している。なお、各性能特性の値の刻み幅を細かくすると、そのデータ量は膨大になるので、ライブラリとしては、そのうち代表的なもののみを記憶しておき、折線またはスプライン曲線によって近似すればよい。また、入力ドライブの代わりに入力波形を用いることも可能である。
【００３２】
図４（ｃ）はあるライブラリセルについて、いくつかの外部条件の下で最適化設計した場合における遅延および面積のトレードオフ曲線の例を示している。例えば、外部条件Ａに対する遅延面積トレードオフ曲線はＬＡ、外部条件Ｂに対する遅延面積トレードオフ曲線はＬＢ、外部条件Ｃに対する遅延面積トレードオフ曲線はＬＣとなる。図３（ｂ）の各行の性能特性は、図４（ｃ）に示す曲線上の１点となる。
【００３３】
図５は従来のライブラリに格納された情報の例である。従来のライブラリでは、図５（ａ）に示すように、論理が同一であっても異なる性能のライブラリセルが準備されており、このため、ライブラリ設計のために膨大な工数が必要であった。また、図５（ｂ）に示すように、外部条件に応じた設計はなされておらず、セルの性能特性は外部条件に関係なく固定されていた。
【００３４】
また、本実施形態において、最適化の外部条件や性能特性が異なるセルを複数個準備しておくことによって、ライブラリ１５による性能特性の推定精度を上げることができる。さらに、集積回路の設計過程で生成されるセルをライブラリ１５に随時登録することによって、ライブラリ１５による性能特性の推定精度をより向上させることができる。
【００３５】
集積回路評価工程Ｓ３０において、まずステップＳ３１において、図３に示すようなライブラリ１５に対し、各セルの外部条件として、入力ドライブおよび出力負荷容量を与え、遅延、面積、消費電力、出力ドライブおよび入力負荷容量等の性能特性を得る。入力ドライブは、対象セルを駆動するセルの出力ドライブと配線抵抗との和を用いる。また、出力負荷容量は、出力端子に接続された各セルの入力容量と、レイアウトから抽出した配線容量との総和を用いる。
【００３６】
そして、ステップＳ３５において、各セルの性能特性を用いて集積回路全体の性能を評価する。例えば、クリティカルパス遅延は、各パスを構成するセルの遅延の総和によって計算されたパス遅延の最大値である。また、各セルの消費電力の総和から集積回路全体の消費電力を計算する。またセル面積の変更に応じてレイアウト変更を行なうことによって、集積回路面積を計算することができる。
【００３７】
次に、変更セル選択工程Ｓ４０において、性能特性を変化させるセルを少なくとも１つ選択する。ここでは、各セルに対して性能特性の微小変化を行い、最も性能特性が改善されるセルを選択するものとする。例えば、最大遅延を同じ値だけ小さくしたとき、その面積が最も小さくなるセルを、変更対象セルとして選択する。あるいは、Ａ，Ｂ，Ｃを比例定数として、式（１）によって計算されるコストの値が最小となるようなセル変更を選択する。
コスト＝Ａ・面積＋Ｂ・最大遅延＋Ｃ・消費電力　‥‥（１）
【００３８】
また、性能特性を評価する際、遅延および消費電力の推定精度を向上させるために、配線容量や配線抵抗の変化を見積もる。すなわち、形状が変化したセル周辺の配線およびセルを平行移動し、配線長の変化量を見積もる。この配線長変化量を用いて、配線容量および配線抵抗の変化量を計算し、遅延や消費電力等の性能特性の評価に反映させる。
【００３９】
次に、セル性能変更工程Ｓ５０において、変更セル選択工程Ｓ４０において選択したセルの性能を変化させる。セルの性能変化を実現する方法としては、例えば以下の３通りの方法がある。
【００４０】
（ａ）ライブラリ１５に記憶された面積、遅延、消費電力、出力ドライブ、入力負荷容量等の性能特性値を用いる。
【００４１】
（ｂ）特開平１１−３９７３号公報に開示された方法を用いてトランジスタサイズの決定を行い、そのトランジスタサイズに基づいて、面積、遅延、消費電力、出力ドライブおよび入力負荷容量等のセル性能を推定する。
【００４２】
（ｃ）特開平１１−３９７３号公報に開示された方法を用いてトランジスタサイズの決定を行ない、さらに特開平９−２９８２４３号公報に開示された方法を用いてセルレイアウトを自動生成し、生成したレイアウトに基づいて、面積、遅延、消費電力、出力ドライブおよび入力負荷容量等のセル性能を推定する。
【００４３】
これらの方法のうち、計算処理速度の点では（ａ）が最も有効であり、精度の点では（ｃ）が最も効果がある。また（ｂ）は（ａ）と（ｃ）の中間である。（ｃ）のセルレイアウト生成処理は、最適化処理の繰り返しにおいて毎回行うと、計算処理時間が膨大になる。しかしながら、最適化の過程ではセル合成を全く行なわないで、最適化処理の終了後にセル合成を１度だけ行うものとすると、性能特性の推定精度が低くなる。
【００４４】
本実施形態では、現実的な処理時間で十分な精度を得るために、セル合成を行うか否かを所定の基準に基づいて自動的に制御する。すなわち、変更対象セルの外部条件の値が、すでにライブラリに登録された値と大きくかけ離れている場合は、新たにセル合成を行う一方、変更対象セルの外部条件の値がライブラリの値からみてそれぞれの所定の範囲内に収まっている場合は、セル合成を行わないで、性能の推定を行う。判定式としては例えば、次のような（２）式を用いる。ｋ（ｋ＞０）は精度パラメータ、ａはある外部条件についての現状セルの値、ｘはライブラリに準備された値をである。全ての外部条件の項目について（２）式が成立するセルがライブラリに存在するときは、新たなセル合成は行わない。
ａ／（１＋ｋ）＜ｘ＜ａ・（１＋ｋ）　‥‥（２）
【００４５】
なお、初期条件として、各セルの面積を最小に設定しておき、セル性能変更工程Ｓ５０において、セルの性能変更を、その面積が増加する方向にのみ、行うようにするのが好ましい。これにより、処理時間を短縮することができる。
【００４６】
また、このように最適化過程において生成したセルの性能特性等の情報は、ライブラリ１５に新たに追加するのが好ましい。これにより、ライブラリの持つ性能特性の精度を向上させることができる。
【００４７】
上述したような工程Ｓ３０，Ｓ４０，Ｓ５０を、集積回路の目標性能が得られるまで、例えば集積回路の遅延が制約値以下になるまで繰り返し行う。目標性能に達したとき、出力工程Ｓ６０を実行する。出力工程Ｓ６０では、各セルについて、その性能特性を実現するようなレイアウトを自動合成し、集積回路全体のレイアウト結果１８を出力し、設計を終了する。
【００４８】
なお、集積回路評価工程Ｓ３０において、複数の評価手法の中から所定の条件に応じて１つを選択し、選択した評価手法を用いて、集積回路に含まれたセルの性能評価を行うようにしてもよい。
【００４９】
図６は工程Ｓ３０におけるセル性能評価工程Ｓ３１の詳細を示すフローチャートである。図６に示すセル性能評価工程Ｓ３１では、４種類の評価手法Ｓ３３ａ〜Ｓ３３ｄが予め準備されており、所定の条件に応じて（Ｓ３２）、評価手法Ｓ３３ａ〜Ｓ３３ｄのうちのいずれかを選択して、集積回路のセルの性能を評価する。
【００５０】
評価手法Ｓ３３ａでは、トランジスタのサイジングを行い、セル内部のレイアウトを生成して、性能を評価する。トランジスタサイジングは、例えば特開平１１−３９７３号公報に開示された方法を用いて行えばよい。
【００５１】
評価手法Ｓ３３ｂでは、セル内部のレイアウトを生成しないで、トランジスタのサイジングを行い、その結果から性能を評価する。ここでのトランジスタサイジングは、任意の面積のセルを実現し、かつ、そのセルの性能が最も高くなるように、各トランジスタのサイズを決定する。すなわち、この評価手法では、セルを構成する各トランジスタのサイズを、当該セルの面積および性能を加味して最適化し、最適化したトランジスタサイズに基づいて当該セルの性能を評価する。これも例えば特開平１１−３９７３号公報に開示された方法を用いて実現できる。この手法により、レイアウトを生成するよりも格段に高速に、任意の面積に対するセルの性能を評価することが可能になる。また、性能評価を行う時点での外部条件に応じて各トランジスタのサイジングを行うので、セル性能を精度よく推定することができ、また、面積が同一であれば、遅延をより最小化できるというように、セル性能を向上させることも可能である。
【００５２】
評価手法Ｓ３３ｃでは、ライブラリ１５に準備された性能特性をそのまま採用するのではなく、例えばサイズや外部条件が近い性能特性を候補として複数選択し、これらの値を補間近似することによって、セル性能を推定する。補間の手法としては、直線近似、面近似、あるいはスプライン補間などがある。評価手法Ｓ３３ｄでは、ライブラリ１５に準備された性能特性をそのまま採用する。
【００５３】
工程Ｓ３２における条件判定の例について、説明する。いま、条件判定のためのコスト関数ｃｏｓｔを、次のように定義する。
ｃｏｓｔ＝Ｃ１＋Ｎ・Ｃ２＋Ｃ３・Ｉ＋Ｃ４・Ｓ
そして、ｐ１＜ｐ２＜ｐ３なる関係を持つ３個の定数ｐ１，ｐ２，ｐ３を用いて、例えば以下の条件に応じて、評価手法を切り替える。
ｃｏｓｔ＜ｐ１のとき　　　セル選択による性能評価（Ｓ３３ｄ）
ｐ１＜ｃｏｓｔ＜ｐ２のとき　補間近似による性能推定（Ｓ３３ｃ）
ｐ２＜ｃｏｓｔ＜ｐ３のとき　サイジングによる性能推定（Ｓ３３ｂ）
ｐ３＜　ｃｏｓｔのとき　　　　レイアウトによる性能評価（Ｓ３３ａ）
【００５４】
上式において、Ｃ１は設計目標係数であり、設計対象の集積回路の性能目標と開発期間との優先度から、設計者が決定することができる。例えば、開発期間が多少長くなっても、性能の高い設計が要求される場合は、係数Ｃ１を大きな値に設定すればよい。一方、納期に迫られている場合等、ある程度性能は犠牲にしても開発期間の短縮を優先したい場合は、係数Ｃ１は小さな値に設定すればよい。すなわち、コスト関数ｃｏｓｔに係数Ｃ１を含めることによって、手法選択のために、指定された設計期間と集積回路の性能目標との優先度が、考慮されている。
【００５５】
Ｃ２は収束係数であり、Ｎは最適化処理における工程の繰り返し回数である。すなわち、Ｎは、初期値が０であり、工程を繰り返す度に１ずつ増加する。これにより、最適化処理の序盤と終盤とでコスト関数ｃｏｓｔの値が変化し、性能をさほど犠牲にすることなく、処理時間の短縮を図ることができる。すなわち、最適化処理の序盤では最適解からかけ離れているため、回路性能の推定精度よりも処理速度の方が重視される。したがって、コスト関数ｃｏｓｔの値を相対的に小さくして、セル選択（Ｓ３３ｄ）や補間近似（Ｓ３３ｃ）が優先して採用されるようにする。一方、最適化処理が収束するにつれて、回路性能の推定精度をより重視するために、コスト関数ｃｏｓｔの値を相対的に大きくして、サイジングによる性能推定（Ｓ３３ｂ）やレイアウトによる性能評価（Ｓ３３ａ）が優先して採用されるようにする。
【００５６】
Ｃ３は外部条件依存係数であり、Ｉは当該セルの現在の出力負荷容量や入力駆動能力等の外部条件と、ライブラリ１５において想定された外部条件との差に応じて変化する変数である。セル選択（Ｓ３３ｄ）や補間近似（Ｓ３３ｃ）による推定精度は、現在の外部条件がライブラリ１５の外部条件とあまり変わらないときは、十分に高いが、外部条件が離れるほど、低くなる。このため、現在の外部条件がライブラリ１５の外部条件とあまり離れていないときは、係数Ｉの値を小さくする一方、大きく離れたときは、係数Ｉの値を大きくして、サイジングによる性能推定（Ｓ３３ｂ）やレイアウトによる性能評価（Ｓ３３ａ）が優先して採用されるようにする。
【００５７】
Ｃ４はセル変更依存係数であり、Ｓは当該セルの面積やトランジスタサイズ等のサイズ情報と、ライブラリ１５に準備されたサイズ情報との差に応じて変化する変数である。セル選択（Ｓ３３ｄ）や補間近似（Ｓ３３ｃ）による推定精度は、現在のサイズ情報がライブラリ１５のサイズ情報とあまり変わらないときは、十分に高いが、サイズ情報が離れるほど、低くなる。このため、現在のサイズ情報がライブラリ１５のサイズ情報とあまり離れていないときは、係数Ｓの値を小さくする一方、大きく離れたときは、係数Ｓの値を大きくして、サイジングによる性能推定（Ｓ３３ｂ）やレイアウトによる性能評価（Ｓ３３ａ）が優先して採用されるようにする。
【００５８】
なお、ここで示したコスト関数ｃｏｓｔの４つの項は、全て用いてもよいし、必要に応じてその一部を用いてもかまわない。また、ここで示したもの以外の項を含めてもかまわない。
【００５９】
なお、ここでは、評価手法を複数の候補の中から選択するものとしたが、評価手法の選択を行わないで、１つの評価手法、例えばＳ３３ｂを固定して用いるようにしてもかまわない。
【００６０】
また、初期レイアウト工程Ｓ２０においては、図７に示すように、集積回路の面積が最小になるように、セルおよびセル間配線の相対位置を決定してもよいし（ａ）、集積回路におけるセル密度分布が均一になるように、セルおよびセル間配線の相対位置を決定してもかまわない（ｂ）。
【００６１】
また、初期レイアウト工程Ｓ２０において、セルを行列状に配置した場合には、集積回路評価工程Ｓ３０において、集積回路の面積を、セル行長さの最大値とセル列長さの最大値との積に基づいて評価することができる。もちろん、セル面積と配線領域面積の総和に基づいて集積回路の面積を評価してもかまわない。
【００６２】
また、セル性能変更工程Ｓ５０によってセルの面積が変わったときには、集積回路評価工程Ｓ３０において、そのセルの面積変化に起因する配線形状の変化を推定し、推定した配線形状の変化を加味して、集積回路の性能を評価するのが好ましい。例えば図８に示すように、セル性能変更工程Ｓ５０の結果、セル２４の面積が増大したとすると、太線で示した配線の形状が変化する。集積回路の性能評価は、この配線形状の変化を加味して行えばよい。
【００６３】
【発明の効果】
以上のように本発明によると、実際の集積回路における外部条件に応じて各セルの性能が推定されるので、集積回路の性能をより最適化することが可能になる。また、セルの性能評価が、複数の評価手法の中から選択した評価手法を用いて行われるため、セルの性能の推定精度を落とすことなく、処理速度を向上させることができる。さらに、セルおよびセル間配線の相対位置が、集積回路設計の過程において継承されるので、レイアウトに依存する集積回路の性能特性を正確に推定することができる。さらに、セルの性能変更がその面積が増加する方向にのみ行われるため、性能推定のための計算量が少なくてすみ、処理速度が向上する。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る集積回路の設計方法を示すフローチャートである。
【図２】図１のフローにおける工程Ｓ３０〜Ｓ５０の詳細を示す図である。
【図３】本発明の一実施形態に係るライブラリの例を示す図である。
【図４】ライブラリセルのモデルを示す図である。
【図５】従来のライブラリの例を示す図である。
【図６】集積回路評価工程Ｓ３０におけるセル性能評価の詳細を示すフローチャートである。
【図７】初期レイアウトの例である。
【図８】配線形状変化を加味した性能評価を説明するための図である。
【符号の説明】
Ｓ２０　初期レイアウト工程
Ｓ３０　集積回路評価工程
Ｓ４０　変更セル選択工程
Ｓ５０　セル性能変更工程
Ｓ３３ａ〜Ｓ３３ｄ　複数の評価手法
１５　ライブラリ
【図１】
2004005578.tif 000003
【図２】
2004005578.tif 000004
【図３】
2004005578.tif 000005
【図４】
2004005578.tif 000006
【図５】
2004005578.tif 000007
【図６】
2004005578.tif 000008
【図７】
2004005578.tif 000009
【図８】
2004005578.tif 000010