(57)【特許請求の範囲】
【請求項１】
半導体集積回路の設計に際して、第１マクロセルの出力端からｎ個（ｎ≧１）の第２マクロセルの入力端を配線する配線長における仮想配線遅延値を算出する配線遅延計算装置であって、
前記配線長に対して、前記第１マクロセルの前記出力端と分岐点との間に接続された第１抵抗及び前記分岐点と接地との間に接続された第１容量を有する共通部分と、前記分岐点から前記ｎ個の第２マクロセルのそれぞれを接続し、且つファンアウト数ｎに対して均等に分岐するものと設定された分岐配線のそれぞれは、前記分岐点と対応する前記第２マクロセルの前記入力端との間に接続された第２抵抗、対応する前記第２マクロセルの前記入力端と前記接地との間に接続された寄生容量としての第２容量及び対応する前記第２マクロセルの前記入力端と前記接地との間に接続されたピン容量を有する、前記ファンアウト数（ｎ）の分岐部分とから構成される回路モデルについての所定のデータを電気的に格納する記憶手段と、
前記記憶手段より抽出した前記所定のデータに基づいて、前記第１及び第２抵抗と前記第１及び第２容量と前記ピン容量との時定数で規定される所定の遅延計算式より前記仮想配線遅延値を電気的に算出する計算手段とを、
備え、
前記回路モデルの前記配線長に対して前記共通部分及び前記分岐部分が占めるパーセント率はそれぞれ第１係数及び（１００−第１係数）として定義され、
前記第１抵抗、前記第２抵抗、前記第１容量及び前記第２容量の値はそれぞれ（第１係数・仮想配線抵抗値／１００）、（（１００−第１係数）・仮想配線抵抗値／（１００ｎ））、（第１係数・仮想配線容量値／１００）及び（（１００−第１係数）・仮想配線容量値／（１００ｎ））として定義されており、
前記記憶手段は、
前記半導体集積回路の設計すべき前記配線長に前記回路モデルを適用した際の回路図データを格納する第１記憶手段と、
前記第２マクロセルとして利用可能な複数種類の半導体デバイスについての前記ピン容量に関するデータをライブラリィとして格納する第２記憶手段と、
前記第１係数に関する情報を与える第１係数テーブルデータ、単位配線長当たりの配線抵抗値を与える第２係数テーブルデータ、単位配線長当たりの配線容量値を与える第３係数テーブルデータ及び前記ファンアウト数毎に仮想配線長を与える第４係数テーブルデータを記憶する第３記憶手段とを備え、
前記回路図データは、設計すべき前記配線長に含まれている前記第２マクロセルの種類情報及びピン情報と、設計すべき前記配線長の前記ファンアウト数とに関するデータを備えており、
前記仮想配線長とは前記共通部分の長さ及び前記分岐部分の長さの和に相当しており、
前記第１及び前記第４係数テーブルデータは、共に統計的手法により予め決定されているものであり、
前記計算手段は、
前記第１記憶手段より前記第２マクロセルの前記種類情報及び前記ピン情報のデータを抽出し、当該抽出データに基づき前記第２記憶手段より前記第２マクロセルのそれぞれの前記ピン容量のデータを抽出する第１抽出手段と、
前記第１抽出手段により抽出された前記ピン容量の和のデータを電気的に計算する第１計算手段と、
前記第１記憶手段より前記ファンアウト数のデータを抽出する第２抽出手段と、
前記第２抽出手段により抽出された前記ファンアウト数のデータに基づき前記第３記憶手段より対応する前記第１、前記第２、前記第３及び前記第４係数テーブルデータを抽出して前記第２、前記第３及び前記第４係数テーブルデータをそれぞれ第２、第３及び第４係数データに決定し、前記第２係数データと前記第４係数データとの積算処理及び前記第３係数データと前記第４係数データとの積算処理に基づき前記仮想配線抵抗値のデータ及び前記仮想配線容量値のデータをそれぞれ電気的に計算すると共に、前記第１係数テーブルデータに基づいて、設計すべき前記配線長に於ける前記第１係数を与える第１係数データを決定する第２計算手段と、
前記第１及び第２計算手段の出力信号に基づき、前記第１係数データ、前記仮想配線抵抗値のデータ、前記仮想配線容量値のデータ、前記ピン容量の和のデータ及び前記ファンアウト数のデータに基づき規定される前記所定の遅延計算式より、前記仮想配線遅延値を電気的に算出する第３計算手段とを、
備える配線遅延計算装置。
【請求項２】
請求項１記載の配線遅延計算装置において、
前記第１係数テーブルデータは、予め統計的手法により前記ファンアウト数毎に決定されており、
前記第２計算手段は、
前記ファンアウト数のデータに基づき当該ファンアウト数に対応した前記第１係数テーブルデータがあるか否かを選択し、該当する前記第１係数テーブルデータがある場合には当該第１係数テーブルデータを計算に必要な前記第１係数のデータとして決定する一方、該当する前記第１係数テーブルデータがない場合には線形補間法により必要な前記第１係数のデータを決定する第１係数決定手段を備える、
配線遅延計算装置。
【請求項３】
請求項１記載の配線遅延計算装置において、
前記第１係数テーブルデータは、予め統計的手法により決定された、全ての前記ファンアウト数に共通な一定値のデータのみからなり、
前記第２計算手段は、
前記ファンアウト数のデータに基づき前記第１係数テーブルデータを選択して、当該第１係数テーブルデータを計算に必要な前記第１係数のデータとして決定する第１係数決定手段を備える、
配線遅延計算装置。
【請求項４】
請求項１乃至請求項３の何れかに記載の配線遅延計算装置において、
前記回路モデルにおいて、それぞれの前記第２マクロセルの前記ピン容量の値は（前記ピン容量の和のデータ）／（前記ファンアウト数のデータ）で与えられるものと設定されており、
前記第３計算手段は、
前記第１及び第２計算手段の出力信号に基づき、前記第１係数データ、前記仮想配線抵抗値のデータ、前記仮想配線容量値のデータ、（前記ピン容量の和のデータ）／（前記ファンアウト数のデータ）、及び前記ファンアウト数のデータによって規定される前記所定の遅延計算式より、前記仮想配線遅延値を電気的に算出する仮想配線遅延値計算手段を、
備える配線遅延計算装置。
【請求項５】
請求項１乃至請求項３の何れかに記載の配線遅延計算装置において、
前記回路モデルにおいて、それぞれの前記第２マクロセルの前記ピン容量の値は前記第１抽出手段により抽出された対応する前記ピン容量のデータで与えられるものと設定されており、
前記第３計算手段は、
前記第１及び第２計算手段の出力信号と前記第１抽出手段により抽出されたそれぞれの前記ピン容量のデータの出力信号とに基づき、前記第１係数データ、前記仮想配線抵抗値のデータ、前記仮想配線容量値のデータ、前記ピン容量の和のデータ、前記ファンアウト数のデータ及びそれぞれの前記ピン容量のデータに基づき規定される前記所定の遅延計算式より、前記仮想配線遅延値を電気的に算出する仮想配線遅延値計算手段を、
備える配線遅延計算装置。
【請求項６】
半導体集積回路の設計時に前記半導体集積回路のパス遅延値を計算するための機能を備えたパス遅延値検証装置であって、
請求項１乃至請求項５の何れかに記載の前記配線遅延計算装置を利用して前記半導体集積回路内の個々の配線長の仮想配線遅延値を電気的に計算することを特徴とする、パス遅延値検証装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体集積回路における仮想配線遅延値を電気的に計算する種々の装置に関するものである。特に、本発明は、複数のマクロセルから成る半導体集積回路の設計時において、各マクロセル間を接続する配線により生ずる遅延時間を予め計算するために広く適用されるものである。
【０００２】
【従来の技術】
従来は、半導体集積回路の設計時においては、マクロセル内部で生じる信号の遅延時間Ｔgateのみを求めて、それを仮想遅延値ＴPDとして設定していた。そのような一例として、特開平８−３０６４８号公報に開示されたものがある。
【０００３】
しかしながら、そのように素子のセル遅延のみを計算するだけでは、仮想遅延値と実際の半導体集積回路で得られる遅延値との間に著しい相違が生じるため、最近では、セル遅延Ｔgateのみならず、仮想配線遅延Ｔlineをも計算で求めて、両者の和で以て仮想遅延値ＴPD（＝Ｔgate＋Ｔline）を与える設計技術へと移行している。
【０００４】
しかしながら、各マクロセル間をつなぐ配線の経路ないし分岐や配線数は各設計毎に様々であり且つ複雑であるため、上記仮想配線遅延値Ｔlineを計算するに際しては回路モデルを設定する必要がある。そこで、以下に示す２種類の回路モデルが考え出されている。
【０００５】
（従来の技術１）
先ず、その第１は、米国Synopsys社のオンラインマニュアル（Ver.3.4a） Library Compiler Reference Vol.1のp.p.4・9〜4・12に開示された「Worst-Case RC Tree」と呼ばれる回路モデルである。
【０００６】
図１６に、そのような回路モデルを示す。同回路モデルでは、配線の最終端にマクロセルが接続するものであり、そこでは、配線分岐がないという回路モデルが設定されている。同図中、記号Ｒｗはこの配線の総仮想抵抗値、記号Ｃｗはこの配線の総仮想容量値、記号Ｃｐはこの配線の接続先のマクロセルのピン容量値の和である。この回路モデルにおいては、仮想配線遅延値Ｔlineは、遅延計算式＝Ｒｗ（Ｃｗ＋Ｃｐ）を用いた計算により与えられる。
【０００７】
図１７は、図１６の上記回路モデルに基づいて、仮想配線遅延値Ｔlineを計算する際の配線遅延計算装置の構成を示す機能ブロック図である。同図中、符号１は、図１６で示した回路モデルを用いた場合の、設計すべき回路の情報（ファンアウト数等）のデータを記憶する回路図ファイルである。符号２は、仮想配線容量の計算に必要な係数をテーブル値としてファイルするファイル手段である。係数ファイル手段２には、▲１▼単位配線長当りの配線抵抗値と、▲２▼単位配線長当りの配線容量値と、▲３▼ファンアウト数ごとの仮想配線長とが記述されている。また、この係数ファイル手段２にはおいて、ファンアウト数ごとの仮想配線長のかわりに、仮想配線長を一次式で計算するときには、その一次式の係数を設定するようにしても良い。
【０００８】
更に、符号３は配線の接続先のマクロセルのピン容量値を抽出する手段、符号３Ａは、複数の種類のマクロセルのそれぞれのピン容量値をライブラリィとして記憶するファイル手段、符号４は上記抽出手段３により抽出したピン容量値の和を計算する手段、符号５は配線のファンアウト数を抽出する手段、符号６は仮想配線容量値の計算に必要な係数を係数ファイル手段２より抽出する手段、符号７は抽出手段６によって抽出された係数をもとに仮想配線容量値を計算する手段、符号８は仮想配線抵抗値の計算に必要な係数を係数ファイル手段２より抽出する手段、符号９は抽出手段８により抽出された係数をもとに仮想配線抵抗値を計算する手段、符号１０は、求められた、ピン容量値の和と仮想配線容量値と仮想配線抵抗値とより、上記遅延計算式に基づき仮想配線遅延値を計算する手段を、それぞれ示す。符号１１は、算出された仮想配線遅延値を格納した出力ファイル手段である。出力ファイル手段１１に代えて、メモリ上に上記仮想配線遅延値を格納してもよい。
【０００９】
図１８は、図１７で示した配線遅延装置の動作を示すフローチャートであり、係数ファイル手段２にファンアウト数ごとに仮想配線長が設定される場合の、各配線の仮想遅延値の計算手順を示している。
【００１０】
計算手順は、はじめに、配線の接続先のマクロセルのピン容量値を抽出する。次に、抽出したピン容量値より、ピン容量値の和Ｃｐを計算する。次に、ファンアウト数を抽出する。次に、抽出したファンアウト数より、係数ファイル手段２の中から仮想配線長を抽出する。次に、単位配線長当りの容量値を抽出する。次に、単位配線長当りの抵抗値を抽出する。次に、その仮想配線長と単位配線長当りの容量値とより、仮想配線容量値Ｃｗを計算する。次に、その仮想配線長と単位配線長当りの抵抗値とより、仮想配線抵抗値Ｒｗを計算する。次に、ピン容量値の和Ｃｐと、仮想配線容量値Ｃｗと、仮想配線抵抗値Ｒｗとを用いて、遅延計算式＝Ｒｗ（Ｃｗ＋Ｃｐ）より、各配線の仮想遅延値を計算する。
【００１１】
尚、図１７及び図１８と、後述する図２０及び図２１に示される配線遅延計算装置の構成・動作自体は、非公知の技術と考えられる。
【００１２】
（従来技術２）
第二の回路モデルは、前述したオンラインマニュアルに同じく開示された「Balanced-Case RC Tree」と呼ばれるものである。そのような回路モデルを、図１９に示す。同図の回路モデルでは、両マクロセル間は配線分岐のみから成ると想定されている。
【００１３】
同図中、符号ｎはファンアウト数を、符号Ｒｗはこの配線の総仮想抵抗値を、符号Ｃｗはこの配線の総仮想容量値を、符号Ｃｐはこの配線の接続先のマクロセルのピン容量値の和を、各々示している。この回路モデルでは、仮想配線遅延値Ｔlineは、遅延計算式＝（１／ｎ2）Ｒｗ（Ｃｗ＋Ｃｐ）を用いた計算によって与えられる。
【００１４】
図２０は、上記回路モデルを用いて仮想配線遅延値を計算するための配線遅延計算装置の構成を示す機能ブロック図である。同図中、符号１２は、図１９で示した回路モデルを実際に設計すべき回路のマクロセル間配線に適用する場合の、回路図情報（ファンアウト数等）に関するデータを保持する回路図ファイル手段である。符号１３は、係数ファイル手段である。係数ファイル手段１３内には、▲１▼単位配線長当りの配線抵抗値と、▲２▼単位配線長当りの配線容量値と、▲３▼ファンアウト数ごとの仮想配線長が記述されている。また、▲３▼ファンアウト数ごとの仮想配線長の代わりに、仮想配線長を一次式で計算するものとして、その一次式の係数を係数ファイル手段１３に設定することも可能である。符号１４は配線の接続先のマクロセルのピン容量値を抽出する手段、符号１５は抽出手段１４で抽出されたピン容量値の和Ｃｐを計算する手段、符号１６は配線のファンアウト数ｎを抽出する手段、符号１７は仮想配線容量値の計算に必要な係数を抽出する手段、符号１８は抽出手段１７によって抽出された係数をもとに仮想配線容量値Ｃｗを計算する手段、符号１９は仮想配線抵抗値の計算に必要な係数を抽出する手段、符号２０は抽出手段１９によって抽出された係数をもとに仮想配線抵抗値Ｒｗを計算する手段、符号２１はピン容量値の和Ｃｐと仮想配線容量値Ｃｗと仮想配線抵抗値Ｒｗとファンアウト数ｎとより、上記の計算式に基づき仮想配線遅延値Ｔlineを計算する手段を、各々示す。符号２２は、仮想配線遅延値を格納した出力ファイル手段である。この出力ファイル手段２２に代えて、メモリを用いてもよいことは勿論である。
【００１５】
図２１は、図２０に示した配線遅延計算装置の動作を示すフローチャートである。計算手順は、はじめに、配線の接続先のマクロセルのピン容量値を抽出する。次に、抽出したピン容量値より、ピン容量値の和Ｃｐを計算する。次に、ファンアウト数ｎを抽出する。次に、抽出したファンアウト数ｎより、係数ファイル手段１３の中から仮想配線長を抽出する。次に、単位配線長当りの容量値を抽出する。次に、単位配線長当りの抵抗値を抽出する。次に、その仮想配線長と単位配線長当りの容量値とより、仮想配線容量値Ｃｗを計算する。次に、その仮想配線長と単位配線長当りの抵抗値とより、仮想配線抵抗値Ｒｗを計算する。次に、ピン容量値の和Ｃｐと、仮想配線容量値Ｃｗと、仮想配線抵抗値Ｒｗと、ファンアウト数ｎとを用いて、上述した遅延計算式＝（１／ｎ2）Ｒｗ（Ｃｗ＋Ｃｐ）より 、各配線の仮想遅延値を計算する。
【００１６】
【発明が解決しようとする課題】
従来の回路モデルでは、図１６で示される様に両マクロセル間配線には配線分岐がないと想定されていたり、あるいは、図１９で示される様に両マクロセル間配線は配線分岐のみで構成されていると想定されている。このような両極端な回路モデルを用いて仮想配線遅延値を計算した場合には、仮想配線遅延値の精度が著しく低いという問題点がある。
【００１７】
即ち、図１６の「Worst Case RC Tree」の回路モデルでは、当該モデルを用いて計算した設計上の仮想配線遅延値の方が、実際に製作された回路より求められる配線遅延値よりも常に大きくなりすぎるという問題点が顕出している。この問題点は、他面では、本回路モデルでは設計上の余裕度が大きく設定されていると換言することもできる。このような設計上の余裕度は、回路の動作速度が比較的遅いような場合には利点をもたらすとも言えるが、昨今の様に回路の動作速度が増々高速化しつつある傾向の下では、このような過分な設計上の余裕度を有するような回路モデルは、寧ろ半導体集積回路の設計技術においては好ましくない結果をもたらす。即ち、従来技術１の回路モデルを用いて各配線長毎の配線遅延時間を大きく設定していくと、最終的には半導体集積回路全体のスペックを満足することができなくなる。この場合には、ユーザは、スペックを完全に満足する様に、設計済みの配線の内で適当な部分を抽出して、再度、設計し直していかなければならないこととなり、回路設計自体が勢い非効率的、且つ複雑な設計方法とならざるを得ない。
【００１８】
他方、図１９の「Balanced-Case RC Tree」の回路モデルでは、逆に、当該モデルを用いて計算した配線遅延値が、常に実際の遅延値よりも小さくなってしまうという問題点をもたらしている。従って、当該回路モデルを用いて各配線長の仮想配線遅延値を設定していき、設計上はスペックを満たすという結果が得られていても、実際の製品上ではスペックを満たさず、半導体集積回路が動作しないという問題点をもたらす。従って、当該回路モデルを用いた設計ではリスクが大きくなってしまう。これは、本回路モデルでは、元々、配線遅延値を０値として設計していたのが、配線の微細化に伴い配線遅延値を無視しえなくなった結果、とりあえず配線の遅延を考慮して設計しておこう、という消極的な設計思想に起因しているものと考えられる。
【００１９】
本発明は、このような従来の回路モデルを用いた設計技術が直面している問題点を克服するためになされたものである。
【００２０】
その第１の目的とするところは、従来の回路モデルよりも現実のマクロセル間配線により適合した新たな回路モデルを提供し、この新規な回路モデルを用いることにより、実際の配線遅延値に対する仮想配線遅延値の計算精度を向上させることができる装置を提供することにある。
【００２１】
又、この発明の第２の目的は、同一の新回路モデルを採用しつつ、同一精度で以てより一層速く仮想配線遅延値を算出できる装置を提供することにある。
【００２２】
又、この発明の第３の目的は、より高精度を実現する観点から上記新回路モデルを改良して、より高精度な仮想配線遅延値計算装置を提供することにある。
【００２３】
更に、この発明の第４の目的は、上記改良型の新回路モデルを採用しつつ、より速く且つより高精度で以て仮想配線遅延値を算出できる装置を提供することにある。
【００２４】
更に、この発明の第５の目は、上記新回路モデルや改良型の新回路モデルを用いた電気的計算に際して、統計的手法により定まるデータを駆使することで過去の設計データを積極的に活用可能とすることにある。
【００２５】
【課題を解決するための手段】
請求項１に係る発明は、半導体集積回路の設計に際して、第１マクロセルの出力端からｎ個（ｎ≧１）の第２マクロセルの入力端を配線する配線長における仮想配線遅延値を算出する配線遅延計算装置であって、前記配線長に対して、前記第１マクロセルの前記出力端と分岐点との間に接続された第１抵抗及び前記分岐点と接地との間に接続された第１容量を有する共通部分と、前記分岐点から前記ｎ個の第２マクロセルのそれぞれを接続し、且つファンアウト数ｎに対して均等に分岐するものと設定された分岐配線のそれぞれは、前記分岐点と対応する前記第２マクロセルの前記入力端との間に接続された第２抵抗、対応する前記第２マクロセルの前記入力端と前記接地との間に接続された寄生容量としての第２容量及び対応する前記第２マクロセルの前記入力端と前記接地との間に接続されたピン容量を有する、前記ファンアウト数（ｎ）の分岐部分とから構成される回路モデルについての所定のデータを電気的に格納する記憶手段と、前記記憶手段より抽出した前記所定のデータに基づいて、前記第１及び第２抵抗と前記第１及び第２容量と前記ピン容量との時定数で規定される所定の遅延計算式より前記仮想配線遅延値を電気的に算出する計算手段とを備えるものである。
【００２６】
記憶手段は、回路モデルに於ける所定のデータを電気的に記憶している。そこで、計算手段は、上記記憶手段より前記所定のデータを電気的に抽出し、当該所定のデータに基づき上記回路モデルの設定により定まる遅延計算式の実行を電気的に処理して仮想配線遅延値を設計データとして与える。これにより、上記回路モデルを基礎とした当該配線長に於ける仮想配線遅延値の算出が可能となる。上記回路モデルは現実のマクロセル間の配線の構造により近いモデルであるので、実際の回路の配線遅延値に極めて近い仮想配線遅延値が設計段階において得られる。
【００２７】
請求項１の発明では、配線遅延計算装置において更に、前記回路モデルの前記配線長に対して前記共通部分及び前記分岐部分が占めるパーセント率はそれぞれ第１係数及び（１００−第１係数）として定義され、前記第１抵抗、前記第２抵抗、前記第１容量及び前記第２容量の値はそれぞれ（第１係数・仮想配線抵抗値／１００）、（（１００−第１係数）・仮想配線抵抗値／（１００ｎ））、（第１係数・仮想配線容量値／１００）及び（（１００−第１係数）・仮想配線容量値／（１００ｎ））として定義されており、前記記憶手段は、前記半導体集積回路の設計すべき前記配線長に前記回路モデルを適用した際の回路図データを格納する第１記憶手段と、前記第２マクロセルとして利用可能な複数種類の半導体デバイスについての前記ピン容量に関するデータをライブラリィとして格納する第２記憶手段と、前記第１係数に関する情報を与える第１係数テーブルデータ、単位配線長当たりの配線抵抗値を与える第２係数テーブルデータ、単位配線長当たりの配線容量値を与える第３係数テーブルデータ及び前記ファンアウト数毎に仮想配線長を与える第４係数テーブルデータを記憶する第３記憶手段とを備え、前記回路図データは、設計すべき前記配線長に含まれている前記第２マクロセルの種類情報及びピン情報と、設計すべき前記配線長の前記ファンアウト数とに関するデータを備えており、前記仮想配線長とは前記共通部分の長さ及び前記分岐部分の長さの和に相当しており、前記第１及び前記第４係数テーブルデータは、共に統計的手法により予め決定されているものであり、前記計算手段は、前記第１記憶手段より前記第２マクロセルの前記種類情報及び前記ピン情報のデータを抽出し、当該抽出データに基づき前記第２記憶手段より前記第２マクロセルのそれぞれの前記ピン容量のデータを抽出する第１抽出手段と、前記第１抽出手段により抽出された前記ピン容量の和のデータを電気的に計算する第１計算手段と、前記第１記憶手段より前記ファンアウト数のデータを抽出する第２抽出手段と、前記第２抽出手段により抽出された前記ファンアウト数のデータに基づき前記第３記憶手段より対応する前記第１、前記第２、前記第３及び前記第４係数テーブルデータを抽出して前記第２、前記第３及び前記第４係数テーブルデータをそれぞれ第２、第３及び第４係数データに決定し、前記第２係数データと前記第４係数データとの積算処理及び前記第３係数データと前記第４係数データとの積算処理に基づき前記仮想配線抵抗値のデータ及び前記仮想配線容量値のデータをそれぞれ電気的に計算すると共に、前記第１係数テーブルデータに基づいて、設計すべき前記配線長に於ける前記第１係数を与える第１係数データを決定する第２計算手段と、前記第１及び第２計算手段の出力信号に基づき、前記第１係数データ、前記仮想配線抵抗値のデータ、前記仮想配線容量値のデータ、前記ピン容量の和のデータ及び前記ファンアウト数のデータに基づき規定される前記所定の遅延計算式より、前記仮想配線遅延値を電気的に算出する第３計算手段とを備えている。
【００２８】
請求項２の発明では、請求項１記載の配線遅延計算装置において、前記第１係数テーブルデータは、予め統計的手法により前記ファンアウト数毎に決定されており、前記第２計算手段は、前記ファンアウト数のデータに基づき当該ファンアウト数に対応した前記第１係数テーブルデータがあるか否かを選択し、該当する前記第１係数テーブルデータがある場合には当該第１係数テーブルデータを計算に必要な前記第１係数のデータとして決定する一方、該当する前記第１係数テーブルデータがない場合には線形補間法により必要な前記第１係数のデータを決定する第１係数決定手段を備えている。
【００２９】
請求項３の発明では、請求項１記載の配線遅延計算装置において、前記第１係数テーブルデータは、予め統計的手法により決定された、全ての前記ファンアウト数に共通な一定値のデータのみからなり、前記第２計算手段は、前記ファンアウト数のデータに基づき前記第１係数テーブルデータを選択して、当該第１係数テーブルデータを計算に必要な前記第１係数のデータとして決定する第１係数決定手段を備えている。
【００３０】
請求項４の発明では、請求項１乃至請求項３の何れかに記載の配線遅延計算装置において、前記回路モデルにおいて、それぞれの前記第２マクロセルの前記ピン容量の値は（前記ピン容量の和のデータ）／（前記ファンアウト数のデータ）で与えられるものと設定されており、前記第３計算手段は、前記第１及び第２計算手段の出力信号に基づき、前記第１係数データ、前記仮想配線抵抗値のデータ、前記仮想配線容量値のデータ、（前記ピン容量の和のデータ）／（前記ファンアウト数のデータ）、及び前記ファンアウト数のデータによって規定される前記所定の遅延計算式より、前記仮想配線遅延値を電気的に算出する仮想配線遅延値計算手段を備えている。
【００３１】
請求項５の発明では、請求項１乃至請求項３の何れかに記載の配線遅延計算装置において、前記回路モデルにおいて、それぞれの前記第２マクロセルの前記ピン容量の値は前記第１抽出手段により抽出された対応する前記ピン容量のデータで与えられるものと設定されており、前記第３計算手段は、前記第１及び第２計算手段の出力信号と前記第１抽出手段により抽出されたそれぞれの前記ピン容量のデータの出力信号とに基づき、前記第１係数データ、前記仮想配線抵抗値のデータ、前記仮想配線容量値のデータ、前記ピン容量の和のデータ、前記ファンアウト数のデータ及びそれぞれの前記ピン容量のデータに基づき規定される前記所定の遅延計算式より、前記仮想配線遅延値を電気的に算出する仮想配線遅延値計算手段を備えている。
【００３２】
請求項６の発明は、半導体集積回路の設計時に前記半導体集積回路のパス遅延値を計算するための機能を備えたパス遅延値検証装置であって、請求項１乃至請求項５の何れかに記載の前記配線遅延計算装置を利用して前記半導体集積回路内の個々の配線長の仮想配線遅延値を電気的に計算することを特徴とする。
【００３３】
【発明の実施の形態】
図１９の回路モデルでは、マクロセル間の配線を最初から分岐点で始まるとした点に問題がある。その点に、計算した配線遅延時間が実際よりも常に短くなってしまう原因があるものと考えられる。
【００３４】
他方、図１６の回路モデルでは、配線の接続先の各マクロセルへの分岐点を無視している点に根本的な問題がある。なる程、当該回路モデルでは遅延値の計算値に余裕が生ずるという面があるが、そのような設計上の余裕をもたせておく技術的思想では回路の動作速度の高速化（従って、配線の微細化）には対応しきれなくなるという問題点があることは、既述した通りである。従って、図１６の回路モデルにおける設計思想は、高速動作の半導体集積回路の設計においては破綻をきたす。従って、このような設計思想を根本的に捨てさせる必要がある。
【００３５】
即ち、本発明の配線遅延計算装置では、あるマクロセル間の配線における各配線経路を、(1)共通部分と(2)ファンアウト数ｎ（ｎ≧１）の分岐部分とから成る新回路モデルに立脚して、ユーザが予め統計的手法によりファンアウト数毎に、又は全ファンアウト数に対して共通となるように決定した、配線の共通部分と分岐部分との比率を示す係数Ａのデータに基づき、上記回路モデル上の共通部分と分岐部分のそれぞれの寄生抵抗値及び寄生容量値とを与える仮想配線抵抗値及び仮想配線容量値と、各分岐毎のピン容量値とのデータを用いて、仮想配線遅延値を計算するようにしている。
【００３６】
以下、本発明の装置の各実施の形態を、図面に基づいて説明する。
【００３７】
（実施の形態１）
図１は、本願出願人が提案する新規な回路モデルを示す図である。同図の回路モデルでは、マクロセル間の配線の総配線長に対して、共通部分Ｐ１が占める配線長の率をＡ％、分岐部分Ｐ２が占める配線長の総和の率を”１００−Ａ”％とする、共通部分Ｐ１と分岐部分Ｐ２とがあるものと想定されている。そして、同回路モデルでは、分岐部分Ｐ２は、ファンアウト数ｎに対して均等に分岐するものと仮定されている。かかる仮定は、設計の容易性、設計回路の評価のしやすさを考慮したものである。ここで、「ファンアウト数」とは、設計すべき回路において、あるマクロセル（第１マクロセル）の出力端から信号が伝達すべき次のマクロセル（第２マクロセル）の入力端をみたときの、行先の数ｎ（ｎ≧１）を意味する。
【００３８】
共通部分Ｐ１は、図１５に示すように、統計的平均値として決定される概念であって、当該配線の最初の分岐点までの配線長を示すものでない。
【００３９】
図１に示すように、共通部分Ｐ１は、寄生抵抗，寄生容量として、第１マクロセルの出力端ＩＮ１（図１５）と分岐点ＢＰとの間に接続された第１抵抗（Ａ／１００）Ｒｗ及び分岐点ＢＰと接地との間に接続された第１容量（Ａ／１００）Ｃｗを有する。
【００４０】
他方、分岐部Ｐ２を構成するｎ個（ｎ≧１）の分岐線ＢＬ１，ＢＬ２，…，ＢＬｎの各々は、寄生抵抗及び寄生容量として、分岐点ＢＰと接続先の対応する第２マクロセルの入力ピンないし入力端ＩＮ２（図１５参照）との間に接続された第２抵抗（（１００−Ａ）／１００）（Ｒｗ／ｎ）、及び上記入力ピンＩＮ２と接地間に接続された第２容量（（１００−Ａ）／１００）（Ｃｗ／ｎ）を有している。そして、各分岐線ＢＬｉ（１≦ｉ≦ｎ）の入力ピンＩＮ２には、第２マクロセルのピン容量（Ｃｐ／ｎ）が接続されている。
【００４１】
同図中、記号Ｒｗはこの配線の総仮想抵抗値を、記号Ｃｗはこの配線の総仮想容量値を、記号Ｃｐはこの配線の接続先のマクロセルのピン容量値の和を、各々示している。この実施の形態１では、配線の接続先の各マクロセル（第２マクロセル）のピン容量値には、ピン容量値の和Ｃｐの平均値（Ｃｐ／ｎ）を用いている。
【００４２】
図１の回路モデルにおける仮想配線遅延値は、次の計算式、即ち、遅延計算式＝｛Ａ／１００＋（１００−Ａ）／（１００ｎ2）｝Ｒｗ（Ｃｗ＋Ｃｐ）に基づく計算によって与えられる。上式計算式の導出は、次の通りである。
【００４３】
抵抗と容量の積（時定数）で以て配線遅延値を表すと、
【００４４】
【数１】
0003908303.tif 000002
【００４５】
の様になる。ここで、ｊ＝（Ａ／１００），ｋ＝（（１００−Ａ）／１００）と定義すると、数１は、
【００４６】
【数２】
0003908303.tif 000003
【００４７】
となる。
【００４８】
ここで、ｎ＞＝１，０＜＝（Ａ／１００）＜＝１，０＜＝（１００−Ａ／１００）＜＝１の範囲では、
【００４９】
【数３】
0003908303.tif 000004
【００５０】
と近似できるので、
【００５１】
【数４】
0003908303.tif 000005
【００５２】
と近似できる。従って、遅延計算式は、上述の式で表わされることとなる。
【００５３】
ユーザは、予め、過去の設計データより統計的手法を用いて、ファンアウト数ｎごとに係数Ａを求める。もし、あるファンアウト数ｎに対して設計データが無いときには、ユーザは、その周りのファンアウト数について既に求められている係数より線形補間することで、そのようなファンアウト数ｎに対する係数Ａを求めることができる。そして、ユーザは、そのようにして求めた各ファンアウト数ｎ毎の係数Ａのデータをファイルしておく。
【００５４】
そこで、本装置は、設計対象の配線のファンアウト数ｎに対応する係数Ａを選択して、上述の計算式、即ち、遅延計算式＝｛Ａ／１００＋（１００−Ａ）／（１００ｎ2）｝Ｒｗ（Ｃｗ＋Ｃｐ）を用いて、仮想配線遅延値Ｔlineを計算する。
【００５５】
以下では、図１に示した配線の新回路モデルに基づいて仮想配線遅延値を電気的に計算する方法について、詳述する。
【００５６】
図２は、そのような新回路モデルに基づいた電気的計算方法を実行するためのシステムを示すブロック図である。同システムは、ＣＰＵ７１を中核として、他に、記憶装置としてのディスク装置７２及びメモリ装置７３、キーボードやマウス等の入力装置７４及びＣＲＴモニタやプリンタ等の出力装置７５を備える。ユーザは、入力装置７４を用いて、ＣＰＵ７１を介してディスク装置７２へ、後述する各種のファイル用データを入力する。
【００５７】
図２に示したシステムを用いて構成されるのが、本発明の配線遅延計算装置である。
【００５８】
図３は、図１の回路モデルを基礎として仮想配線遅延値を電気的に計算するための配線遅延計算装置の構成を示す機能ブロック図である。
【００５９】
同図において、符号２３は、設計すべき半導体集積回路中のあるマクロセル間の配線に対して図１で示した回路モデルを用いる場合の、回路図情報データ（例えば、当該配線内に用いられる第２マクロセルの種類（タイプ）や、つながっているピン情報や当該配線のファンアウト数ｎ等）を与えるデータ信号を電気的に格納する回路図ファイル手段であり、符号７６は、第２マクロセルとして利用可能な複数の種類の半導体デバイスのそれぞれに固有なピン容量値に関するデータ信号をライブラリィとして電気的に保有するピン容量値ファイル手段であり、符号２４は図１で示した回路モデルを用いた配線遅延値の計算に必要な各係数テーブルデータ信号を電気的に格納する係数ファイル手段である。これらのファイル手段２３，２４，７６に格納されている各種データ信号は、いずれも図２の入力装置７４を用いて、ユーザにより予め入力されたものである。ここで、係数ファイル手段２４内には、▲１▼単位配線長当りの配線抵抗値（第２係数テーブルデータ）と、▲２▼単位配線長当りの配線容量値（第３係数テーブルデータ）と、▲３▼ファンアウト数毎の仮想配線長（第４係数テーブルデータ）と、▲４▼ファンアウト数毎の係数Ａ（第１係数データ）に関するデータが記述されている。これらの係数テーブルデータの内で、▲３▼及び▲４▼は、過去の設計データを用いた統計的手法によって、予めユーザにより決定される。又、係数テーブルデータ▲１▼，▲２▼は、トランジスタの各寸法値や、Ａｌ配線が一層か二層か等に依存しているが、半導体製作プロセスや配線数が決まるならば固定値として決定できるものである。又、係数テーブルデータ▲３▼の仮想配線長とは、図１のモデルで言えば、共通部分と全ての分岐部分とから成る、全配線長である。
【００６０】
尚、上記係数ファイル手段の係数テーブルデータ▲３▼としては、ファンアウト数毎の仮想配線長を個別に設定する代わりに、仮想配線長を一次式（ｙ＝αｘ＋β）で計算するものとして、その一次式の係数（α（ｎ））をファンアウト数ｎ毎に設定するようにしても良い。
【００６１】
符号２７は、回路図ファイル手段２３よりファンアウト数ｎのデータを抽出する手段、符号２５は上記手段２３より第２マクロセルの種類情報やピン情報等のデータを抽出し、これらのデータに基づいて、ピン容量値ファイル手段７６より、対応する配線の接続先の各マクロセルのピン容量値を抽出する手段、符号２６はピン容量値抽出手段２５により抽出された各接続先のピン容量値の和Ｃｐを電気的に計算する手段、符号２８は、ファンアウト数ｎのデータに基づいて、係数ファイル手段２４より仮想配線容量値の計算に必要な係数テーブルデータ▲２▼，▲３▼を抽出する手段、符号２９は上記抽出手段２８により抽出された係数テーブルデータ▲２▼，▲３▼を基に仮想配線容量値Ｃｐを電気的に計算する手段、符号３０は、ファンアウト数ｎのデータに基づいて、係数ファイル手段２４より仮想配線抵抗値の計算に必要な係数テーブルデータ▲１▼，▲３▼を抽出する手段、符号３１は上記抽出手段３０により抽出された係数テーブルデータ▲１▼，▲３▼を基に仮想配線抵抗値を電気的に計算する手段、符号３２は、上記手段２４より抽出した係数テーブルデータ▲４▼に基づき、ファンアウト数ｎに対応する係数Ａを決める手段である。比率決定手段３２は、基本的には、ファンアウト数ｎに対応する係数Ａを係数ファイル手段２４より選択して決めるのであるが、もし係数ファイル手段２４内に当該ファンアウト数ｎに対応する係数Ａがない場合には、その周りのファンアウト数の係数テーブルデータＡ（ｎ−ａ），Ａ（ｎ＋ｂ）を抽出し、これらの係数テーブルデータＡ（ｎ−ａ），Ａ（ｎ＋ｂ）を用いた線形補間法により、当該ファンアウト数ｎに対応する係数Ａのデータを求める。例えば、ファンアウト数ｎが３のときにはＡ（３）＝２０％であり、ファンアウト数ｎが５のときにはＡ（５）＝１６％であるものとすると、データの無いファンアウト数４における係数データＡ（４）は、線形補間により１８％と決定される。
【００６２】
符号３３は、各手段２６，２９，３１，３２によって求められた、ピン容量値の和Ｃｐと仮想配線容量値Ｃｗと仮想配線抵抗値Ｒｗと係数Ａとファンアウト数ｎとの各データを用いて、上述した計算式、即ち、遅延計算式＝｛Ａ／１００＋（１００−Ａ）／（１００ｎ2）｝Ｒｗ（Ｃｗ＋Ｃｐ）に基づいて、仮想配線遅延値Ｔlineを電気的に計算する手段を示す。
【００６３】
符号３４は、手段３３により求められた仮想配線遅延値のデータ信号を格納した出力ファイル手段である。尚、出力ファイル手段３４の代わりに、メモリ（例えば図２のメモリ装置７３）上に仮想配線遅延値のデータ信号を格納してもよい。
【００６４】
図４は、図３に示した配線遅延計算装置の動作を示すフローチャートであり、図３の係数ファイル手段２４にファンアウト数ｎ毎に仮想配線長のデータが設定される場合の、各配線の仮想遅延値の計算手順を示す。
【００６５】
計算手順は、はじめに、手段２５が、回路図ファイル手段２３より、回路図情報データ（ピン情報，第２マクロセルの種類情報等）を抽出し、これらの抽出データに基づいて、ピン容量値ファイル手段７６より、対応する、配線の接続先の各マクロセルのピン容量値を一つずつ抽出する。次に、手段２６が上記手段２５により抽出された各ピン容量値のデータの和算を電気的に実行することにより、ピン容量値の和Ｃｐを計算する。
【００６６】
次に、手段２７が回路図ファイル手段２３よりファンアウト数ｎのデータを抽出する。
【００６７】
次に、手段３２は、係数ファイル手段２４にアクセスして、手段２７により抽出されたファンアウト数ｎのデータに基づき当該手段２４のファイル中の係数Ａのテーブルデータを選択し、選択した係数Ａのテーブルデータを係数Ａのデータ（第１係数データ）として抽出する。この場合、対応する係数Ａのテーブルデータが上記ファイル中に見つからないときには、同手段３２は、既述した通り、線形補間法を用いて係数Ａのデータを決定する。
【００６８】
次に、手段２８は、手段２７により抽出されたファンアウト数ｎのデータに基づき、係数ファイル手段２４のファイル中から、対応する仮想配線長の係数テーブルデータ▲３▼を第４係数データとして抽出する。更に、同手段２８は、同ファイル中から単位配線長当りの容量値の係数テーブルデータ▲２▼を第３係数データとして抽出する。次に、手段３０は、単位配線長当りの抵抗値の係数テーブルデータ▲１▼を第２係数データとして係数ファイル手段２４より抽出する。尚、仮想配線抵抗Ｒｗの計算に必要な仮想配線長の係数テーブルデータ▲３▼は、手段２８による先行するステップにおいて既に第４係数データとして抽出され、ＣＰＵ７１内の図示しないレジスタに格納されているので、手段３０は当該レジスタにアクセスして上記係数データ▲３▼を用いることができる。
【００６９】
次に、手段２９は、その仮想配線長のデータ▲３▼と単位配線長当りの容量値のデータ▲２▼の積算処理の電気的実行により、仮想配線容量値Ｃｗを計算する。次に、手段３１は、その仮想配線長のデータ▲３▼と単位配線長当りの抵抗値のデータ▲１▼との積算処理の電気的実行により、仮想配線抵抗値Ｒｗを計算する。
【００７０】
次に、手段３３は、ピン容量値の和と、仮想配線容量値と、仮想配線抵抗値と、ファンアウト数と、係数Ａの各データとを用いて、次の計算式、即ち、遅延計算式＝｛Ａ／１００＋（１００−Ａ）／（１００ｎ2）｝Ｒｗ（Ｃｗ＋Ｃｐ）に基づき、各配線の仮想遅延値を計算し、出力ファイル手段３４に計算したデータを出力する。即ち、ここでは各分岐先ＢＬｉ（１≦ｉ≦ｎ）毎の遅延計算値は上述の遅延計算式で求められる値に等しいので（各ピン容量値は等しいと設定されているため）、一回計算すれば、その計算値が各配線の仮想配線遅延値として用いられる。この点は、後述する実施の形態３，４と比較して、計算スピードの点で有利である。
【００７１】
以上の構成とすることにより、従来の回路モデルを用いた場合よりも格段に高精度で仮想配線遅延値を計算することができ、従来生じていたような設計終了後の設計のやり直しという問題点を払拭することができる。
【００７２】
この実施の形態１の遅延計算装置を用いて得られた仮想配線遅延値と実際に製作された回路の配線遅延値とを、従来の技術１の回路モデル（Worst-Case RC Tree）及び従来の技術２の回路モデル（Balanced-Case RC Tree）を用いて得られる結果をも併せて、図５に示す。同図の横軸（ＦＯ）は、ファンアウト数ｎを示す。
【００７３】
図５より明かな通り、実施の形態１により得られる仮想配線遅延値は、広いファンアウト数の範囲にわたって、殆ど実際の回路の配線遅延値と一致していることが理解されるであろう。
【００７４】
以上の対比結果より、本発明の有効性が顕著に実証されている。
【００７５】
（実施の形態２）
ここで用いる回路モデルとその遅延計算式は、実施の形態１で既述したのと同じである。但し、ここでは、ユーザは、予め、過去の設計データより統計的手法を用いて、どのファンアウト数にも共通な係数Ａを求めることとしている。これは、実験を繰り返した結果、各ファンアウト数の係数Ａ同士の間にはそれ程差がないので、係数Ａを固定値としても十分に良好な結果が得られることがわかった、という事実に立脚している。
【００７６】
そのような実験結果の一例を、図６に示す。同図の横軸はファンアウト数ｎであり、縦軸は遅延計算式中の係数Ａに依存する部分である。同図より理解されるように、係数Ａをファンアウト数毎に個別化した場合と一定値に統一した場合とでは、差が殆どない。従って、本図は、係数Ａがファンアウト数に依存せず、常に同じものを係数Ａに使えることを意味している。
【００７７】
実施の形態１では、ファンアウト数毎に係数Ａを選択して仮想配線遅延値を計算していたのに対して、実施の形態２における配線遅延計算装置は、共通な係数Ａのデータを全てのファンアウト数に対してそのまま用いて、既述の遅延計算式＝｛Ａ／１００＋（１００−Ａ）／（１００ｎ2）｝Ｒｗ（Ｃｗ＋Ｃｐ）に基づいて仮想配線遅延値を計算する。以下に、その詳細を説明する。
【００７８】
図７は、図１の回路モデルに基づいて配線遅延を計算する、実施の形態２に係る遅延計算装置の構成を示す機能ブロック図である。同図中、符号３５は、図３の回路図ファイル手段２３に相当する手段である。符号３６は、以下の係数データをテーブル値として有する係数ファイル手段である。本係数ファイル手段３６には、▲１▼単位配線長当りの配線抵抗値と、▲２▼単位配線長当りの配線容量値と、▲３▼ファンアウト数毎の仮想配線長と、▲４▼どのファンアウト数にも共通な係数Ａ（第１係数テーブル）とが、記述されている。従って、上記▲４▼の第１係数テーブルデータのみが、図１の係数ファイル手段２４中の対応する第１係数テーブルデータと異なっている。同じく、この係数ファイル手段３６には、ファンアウト数毎の仮想配線長のかわりに、仮想配線長を一次式で計算することとした際の、その一次式の係数を設定することもできる。符号７７は、図３のピン容量値ファイル手段７６に対応する。符号３７は、図３の抽出手段２５に相当しており、符号３８は図３の手段２６に、符号３９は図３の抽出手段２７に、符号４０は図３の抽出手段２８に、符号４１は図３の仮想配線容量値計算手段２９に、符号４２は図３の係数抽出手段３０に、符号４３は図３の仮想配線抵抗値計算手段３１に、それぞれ対応している。
【００７９】
他方、符号４４は、どのファンアウト数にも共通な係数Ａのテーブルデータ▲４▼を係数ファイル手段３６のファイル中より第１係数データとして抽出する手段であり、符号４５は、ピン容量値の和Ｃｐのデータと仮想配線容量値Ｃｗのデータと仮想配線抵抗値Ｒｗのデータと一定値である係数Ａを与えるデータとファンアウト数ｎを与えるデータとを用いて、既述の遅延計算式＝｛Ａ／１００＋（１００−Ａ）／（１００ｎ2）｝Ｒｗ（Ｃｗ＋Ｃｐ）に基づいて、仮想配線遅延値を計算する手段を示す。符号４６は図３の出力ファイル手段３４に相当しており、この出力ファイル手段に代えて、図１のメモリ装置７３を用いてもよい。
【００８０】
図８は、図７に示す配線遅延値計算装置の動作を示すフローチャートであり、係数ファイル手段３６に、ファンアウト数毎に仮想配線長がユーザにより予め設定される場合の、各配線の仮想遅延値の計算手順を示す。
【００８１】
計算手順は、はじめに、図５の手段３７が、回路図ファイル手段３５より抽出した第２マクロセルの種類等のデータに基づいて、ピン容量値ファイル手段７７のファイル中より、配線の接続先の各マクロセル（第２マクロセル）のピン容量値Ｃｐｉ（１≦ｉ≦ｎ）を抽出する。次に、手段３８は、抽出されたピン容量値Ｃｐｉのデータの和演算ΣＣｐｉを電気的に行うことにより、ピン容量値の和Ｃｐを電気的に計算する。次に、手段３９が、回路図ファイル手段３５のファイル中より、当該設計回路の配線のファンアウト数ｎ（ｎ≧１）のデータを抽出する。次に、手段４４は、ファンアウト数ｎのデータに基づき、係数ファイル手段３６のファイル中より共通な係数Ａのテーブルデータを第１係数データ（Ａ）として抽出する。次に、手段４０は、抽出されたファンアウト数ｎのデータより、係数ファイル手段３６のファイル中から仮想配線長の係数テーブルデータ▲３▼を第４係数データとして抽出し、更に単位配線長当りの容量値の係数テーブルデータ▲２▼をも第３係数データとして抽出する。次に、手段４２は、単位配線長当りの抵抗値の係数テーブルデータ▲１▼を係数ファイル手段３６のファイル中から第２係数データとして抽出する。係数データ▲３▼は、ＣＰＵ７１の図示しないレジスタに既に格納されているので、手段４２はそれを利用する。
【００８２】
その後、手段４１は、抽出された仮想配線長▲３▼と単位配線長当りの容量値▲２▼とのデータの積算により、仮想配線容量値を電気的に計算する。次に、手段４３は、抽出済みの仮想配線長▲３▼と単位配線長当りの抵抗値▲１▼とのデータの積算を実行することにより、仮想配線抵抗値を電気的に計算する。
【００８３】
次に、手段４５は、ピン容量値の和と、仮想配線容量値と、仮想配線抵抗値と、ファンアウト数と、係数Ａ（一定値）との各データを用いて、遅延計算式＝｛Ａ／１００＋（１００−Ａ）／（１００ｎ2）｝Ｒｗ（Ｃｗ＋Ｃｐ）に基づき、各配線の仮想遅延値を電気的に計算する。
【００８４】
本実施の形態２によれば、係数Ａの決定ステップが簡単化されているので、実施の形態１と同一の精度を維持しつつ（図６参照）、実施の形態１よりも速く計算することができるという効果が得られる。
【００８５】
（実施の形態３）
ここでは、配線の接続先のマクロセル（第２マクロセル）毎にピン容量値Ｃｐｉ（１≦ｉ≦ｎ）を個々に決定するという計算方法を採用している。このように、きめ細かくピン容量値を決定していくことにより、より高速化に対応することが可能となる。
【００８６】
図９は、図１とは別の新たな回路モデルであり、本回路モデルでも共通部分と分岐部分とが想定されている。同図中、記号Ｒｗはこの配線の総仮想抵抗値、記号Ｃｗはこの配線の総仮想容量値、記号Ｃｐ１，Ｃｐ２，…，Ｃｐｎ（Ｃｐｉ）は、それぞれこの配線の接続先の各マクロセルのピン容量値である。ここでも、この配線の総配線長に対して、共通部分が占める配線長の率をＡ％とし、分岐部分が占める配線長の総和の率を”１００−Ａ”％とすると共に、分岐部分はファンアウト数ｎで均等に分岐するものと想定している点は、実施の形態１の場合と同じである。一般的に、記号Ｃｐｉは、この配線の接続先の内の第ｉ番目の第２マクロセルのピン容量値として定義される。
【００８７】
この新規な回路モデルを用いた場合の仮想配線遅延値は、周知のＥｌｍｏｒｅ遅延モデルを用いると、遅延計算式＝（Ａ／１００）Ｒｗ（Ｃｗ＋Ｃｐ）＋｛（１００−Ａ）／１００｝2（１／ｎ2）Ｒｗ・Ｃｗ＋｛（１００−Ａ）／（１００ｎ）｝Ｒｗ・Ｃｐｉで与えられる。
【００８８】
ユーザは、予め、過去の設計データより統計的手法を用いて、ファンアウト数ｎごとに係数Ａを求め、それらのデータを後述する各種ファイル手段（記憶手段）にライブラリィないしテーブル値として入力しておく。本装置は、それらの記憶手段から当該ファンアウト数ｎに対応した係数Ａのデータを選択し決定する。その際、データがないファンアウト数ｎについては、本装置は、まわりの求められた係数より、当該ファンアウト数ｎに対応する係数Ａのデータを線形補間法で求める。そして、本装置は、遅延計算式＝（Ａ／１００）Ｒｗ（Ｃｗ＋Ｃｐ）＋｛（１００−Ａ）／１００｝2（１／ｎ2）Ｒｗ・Ｃｗ＋｛（１００−Ａ）／（１００ｎ）｝Ｒｗ・Ｃｐｉを用いて、仮想配線遅延値を電気的に計算する。以下、その詳細を説明する。
【００８９】
図１０は、図９の回路モデルで配線遅延を計算する遅延計算装置の構成を示す機能ブロック図である。同図中、符号４７は図３の回路図ファイル手段２３に相当するものである。符号４８は、図９で示した回路モデルで配線遅延値を計算するために必要な各種係数テーブルデータを保有する係数ファイル手段である。即ち、同係数ファイル手段４８のファイル中には、▲１▼単位配線長当りの配線抵抗値と、▲２▼単位配線長当りの配線容量値と、▲３▼ファンアウト数毎の仮想配線長と、▲４▼ファンアウト数毎の係数Ａとが、テーブル値として記述されている。尚、この係数ファイル手段４８のファイル中には、ファンアウト数毎の仮想配線長に代えて、仮想配線長を一次式で計算するとしたときの、その一次式の係数を設定しても良い。
【００９０】
符号７８は、図３の符号７６に対応する、ピン容量値のライブラリィをなすファイル手段であり、符号４９は配線の接続先の各マクロセルのピン容量値Ｃｐｉを抽出する手段、符号５０は手段４９で抽出されたピン容量値Ｃｐｉの和Ｃｐを計算する手段である。又、符号５１は図３の手段２７に、符号５２は図３の抽出手段２８に、符号５３は図３の仮想配線容量値計算手段２９に、符号５４は図３の抽出手段３０に、符号５５は図３の仮想配線抵抗値計算手段３１に、符号５６は図３の手段３２に、それぞれ対応している。手段５６は、ファンアウト数ｎに対応する係数Ａのデータを選択して決めるが、係数ファイル内に対応する係数Ａのデータがない場合には、まわりのファンアウト数の係数データを用いて、当該ファンアウト数ｎに対応する係数Ａのデータを線形補間法で決定する。
【００９１】
符号５７は、配線の接続先の第ｉ番目の第２マクロセルのピン容量値Ｃｐｉと、ピン容量値の和Ｃｐと、仮想配線容量値Ｃｗと、仮想配線抵抗値Ｒｗと、係数Ａと、ファンアウト数ｎとを用いて、遅延計算式＝（Ａ／１００）Ｒｗ（Ｃｗ＋Ｃｐ）＋｛（１００−Ａ）／１００｝2（１／ｎ2）Ｒｗ・Ｃｗ＋｛（１００−Ａ）／（１００ｎ）｝Ｒｗ・Ｃｐｉに基づき、仮想配線遅延値を電気的に計算する手段を示す。符号５８は、計算手段５７により求められた仮想配線遅延値のデータを格納した出力ファイル手段である。同手段５８の代わりに、メモリ上に仮想配線遅延値のデータを格納してもよい。
【００９２】
図１１は、図１０の配線遅延計算装置の動作を示すフローチャートであり、係数ファイル手段４８にファンアウト数ｎごとに仮想配線長のデータが設定される場合の、各配線の仮想遅延値の計算手順を示す。
【００９３】
計算手順は、はじめに、手段４９が、回路図ファイル手段４７のファイル中より、当該配線の接続先の各マクロセルの種類の情報を与えるデータ等を抽出し、これらの抽出データに基づき、ピン容量値ファイル手段７８の中から、配線の接続先の各マクロセルのピン容量値Ｃｐｉのデータを抽出する。次に、手段５０は、抽出されたピン容量値Ｃｐｉの和算の実行により、ピン容量値の和Ｃｐを電気的に計算する。
【００９４】
次に、手段５１は、回路図ファイル手段４７よりファンアウト数ｎを与えるデータを抽出する。次に、手段５６は、抽出されたファンアウト数ｎに基づき、係数ファイル手段４８のファイル中より対応する係数Ａのテーブルデータを選択し、選択した係数Ａのテーブルデータを係数Ａのデータとして抽出する。次に、手段５２は、抽出されたファンアウト数ｎのデータに基づき、係数ファイル手段４８の中から仮想配線長のデータを抽出する。更に、同手段５２は、単位配線長当りの容量値のデータを抽出する。次に、手段５４は、単位配線長当りの抵抗値のデータを、同様に抽出する。
【００９５】
次に、手段５３は、仮想配線長のデータと単位配線長当りの容量値のデータの積算により、仮想配線容量値を計算する。更に、手段５５は、仮想配線長のデータと単位配線長当りの抵抗値のデータの積算により、仮想配線抵抗値を電気的に計算する。
【００９６】
次に、手段５７は、配線の接続先の第ｉ番目のマクロセルのピン容量値Ｃｐｉと、ピン容量値の和Ｃｐと、仮想配線容量値Ｃｗと、仮想配線抵抗値Ｒｗと、ファンアウト数ｎと、係数Ａとのデータを用いて、遅延計算式＝（Ａ／１００）Ｒｗ（Ｃｗ＋Ｃｐ）＋｛（１００−Ａ）／１００｝2｛（１／ｎ2）Ｒｗ・Ｃｗ＋｛（１００−Ａ）／（１００ｎ）｝Ｒｗ・Ｃｐｉに基づき、各配線の仮想遅延値を電気的に計算する。即ち、本実施の形態３では、各分岐線ＢＬｉ（１≦ｉ≦ｎ）毎に、上記遅延計算式を用いて仮想配線遅延値Ｔline（ｉ）を計算することとなる。従って、実施の形態１，２よりも計算時間は長くなってしまうが、逆に各配線の仮想配線遅延値の計算精度はより向上する。
【００９７】
以上に述べた通り、実施の形態３によれば、各ピン容量値Ｃｐｉを平均値とせずに個別に決定しているので、実施の形態１，２よりも一層高精度で仮想配線遅延値を計算することが可能となり、設計すべき回路の動作がより高速化した場合でも高精度で半導体集積回路を設計することができる。
【００９８】
（実施の形態４）
実施の形態４は、実施の形態３に実施の形態２の技術的思想を適用したものである。
【００９９】
ここでの回路モデルとその遅延計算式は、実施の形態３と同じである。しかも、ユーザは、予め、過去の設計データより統計的手法を用いて、どのファンアウト数にも共通な係数Ａを求める。実施の形態３では、ファンアウト数ｎごとに係数Ａを選択して仮想配線遅延値を計算していたが、本装置は、共通な係数Ａ（一定値）をそのまま用いて、遅延計算式＝（Ａ／１００）Ｒｗ（Ｃｗ＋Ｃｐ）＋｛（１００−Ａ）／１００｝2（１／ｎ2）Ｒｗ・Ｃｗ＋｛（１００−Ａ）／（１００ｎ）｝Ｒｗ・Ｃｐｉに基づき、仮想配線遅延値を計算する。その技術的裏付け（有効性）は、図６に基づいている。
【０１００】
図１２は、上記回路モデルに基づき仮想配線遅延を計算する遅延計算装置の構成を示す機能ブロック図である。同図中、符号５９は、図１０の回路図ファイル手段４７に対応するものである。符号６０は図９の回路モデルに基づき配線遅延値を計算するために必要な各種係数テーブルデータを有する係数ファイル手段である。同係数ファイル手段６０のファイル中には、▲１▼単位配線長当りの配線抵抗値と、▲２▼単位配線長当りの配線容量値と、▲３▼ファンアウト数ごとの仮想配線長と、▲４▼どのファンアウト数にも共通な係数Ａとが、テーブルデータとして記述されている。同様に、この係数ファイル手段６０に対しては、ファンアウト数ｎごとの仮想配線長の代わりに、仮想配線長を一次式で計算するための、その一次式の係数を設定するようにしても良い。符号６１，符号７９，符号６２，符号６３，符号６４，符号６５，符号６６及び符号６７は、それぞれ図１０の手段４９，７８，５０，５１，５２，５３，５４，５５に相当しており、又、手段６８は図７の手段４４に相当する手段である。
【０１０１】
又、手段６９は、ピン容量値の和と、仮想配線容量値と、仮想配線抵抗値と、係数Ａと、ファンアウト数とを用いて、遅延計算式＝（Ａ／１００）Ｒｗ（Ｃｗ＋Ｃｐ）＋｛（１００−Ａ）／１００｝2（１／ｎ2）Ｒｗ・Ｃｗ＋｛（１００−Ａ）／（１００ｎ）｝Ｒｗ・Ｃｐｉに基づき、仮想配線遅延値を電気的に計算する手段である。符号７０は、仮想配線遅延値を格納した出力ファイルであり、同手段７０に代えて、メモリ装置上に仮想配線遅延値を格納してもよい。
【０１０２】
図１３は、図１２の装置の動作を示すフローチャートであり、係数ファイル手段６０にファンアウト数毎に仮想配線長が設定される場合の、各配線の仮想遅延値の計算手順を示す。
【０１０３】
計算手順は、はじめに、手段６１が手段５９より抽出した回路図データに基づき手段７９にアクセスし、配線の接続先の各マクロセルのピン容量値を抽出する。次に、手段６２は、抽出されたピン容量値Ｃｐｉの和算ΣＣｐｉを実行することにより、ピン容量値の和Ｃｐを計算する。
【０１０４】
次に、手段６３は、手段５９よりファンアウト数ｎのデータを抽出する。次に、手段６８は、抽出されたファンアウト数ｎのデータに基づき、手段６０のファイル中より、共通な係数Ａのデータを抽出する。次に、手段６４は、抽出したファンアウト数ｎより、係数ファイル手段６０のファイル中から仮想配線長のデータを抽出する。次に、同手段６４は、単位配線長当りの容量値のデータをも抽出する。次に、手段６６は、同様にして、単位配線長当りの抵抗値のデータを抽出する。
【０１０５】
次に、手段６５は、仮想配線長のデータと単位配線長当りの容量値のデータの積算より、仮想配線容量値を電気的に計算する。次に、手段６７は、仮想配線長のデータと単位配線長当りの抵抗値のデータの積算により、仮想配線抵抗値を電気的に計算する。
【０１０６】
次に、手段６９は、配線の接続先の第ｉ番目のマクロセルのピン容量値Ｃｐｉと、ピン容量値の和Ｃｐと、仮想配線容量値Ｃｗと、仮想配線抵抗値Ｒｗと、ファンアウト数ｎと、係数Ａとの各データを用いて、遅延計算式＝（Ａ／１００）Ｒｗ（Ｃｗ＋Ｃｐ）＋｛（１００−Ａ）／１００｝2（１／ｎ2）Ｒｗ・Ｃｗ＋｛（１００−Ａ）／（１００ｎ）｝Ｒｗ・Ｃｐｉに基づき、各配線の仮想遅延値を電気的に計算し、計算値を手段７０に出力する。
【０１０７】
以上の通り、本実施の形態４によれば、実施の形態３の利点を生かしつつ、これに実施の形態２の利点を加味することができるので、より高精度で、より高速な仮想配線遅延値の計算を可能とすることができる。
【０１０８】
（実施の形態５）
上述した各実施の形態１〜４の配線遅延計算装置を、複数のマクロセルとそれらの複数の配線とを備えた全体の半導体集積回路（図１４参照）に関して、パス遅延値を計算する機能を有する装置（パス遅延時間検証装置）における、仮想配線遅延値を計算する部分に、適用することができる。これにより、パス遅延値の計算の際に、精度良く計算した仮想配線遅延値を用いることができ、パス遅延値の見積り精度を向上させることができる。
【０１０９】
（まとめ）
実施の形態１から４における本発明の装置は、配線の共通部分と分岐部分との比率を示す係数Ａの値により、従来の技術１の回路モデルと従来の技術２の回路モデルという、２つの両極端な回路モデルの間に位置する回路モデルを用いることができ、実配線遅延値に近い仮想配線遅延値を計算することができる。
【０１１０】
実施の形態１及び実施の形態３では、ファンアウト数ごとの係数Ａのデータを用いることにより、精度よく仮想配線遅延値を見積もることができる。
【０１１１】
実施の形態２では、実施の形態１の技術的思想に対して共通な係数Ａを用いるという修正を施すことにより、係数Ａを選択する手順をなくすことができるので、実施の形態１と同様程度の計算精度を維持しつつも、実施の形態１よりも速く計算することができる。
【０１１２】
実施の形態４では、実施の形態３の技術的思想に対して共通な係数Ａを用いるという修正を施しているので、係数Ａを選択する手順がなくなり、実施の形態３と同程度の計算精度を維持しつつ、実施の形態３よりも速く計算することができる。
【０１１３】
実施の形態５では、パス遅延値の計算の際に上述の仮想配線遅延値計算装置を用いることで、パス遅延値の精度を向上させることができる。
【０１１４】
【発明の効果】
請求項１ないし請求項５の各発明によれば、実際の回路のマクロセル間配線の構造に従来の回路モデルよりもより一層近い構造を有する回路モデルを用いた仮想配線遅延値の計算を、電気的に行うことが可能となり、計算上の仮想配線遅延値を実際の回路の配線長の実測配線遅延値に極めて近い値とすることができる。即ち、本発明では、設計段階における配線遅延の計算精度を従来の回路モデルを用いて得られる場合よりも飛躍的に向上させることが可能となり、半導体集積回路の動作速度の高速化に対しても高精度で設計可能な配線遅延装置を提供することができる。
【０１１５】
請求項１の発明によれば、回路モデルにおける共通部分と分岐部分との比率を決定する第１係数のデータを、過去の設計データから統計的手法により求められたものを用いることができ、回路モデルの構造をより現実の回路の配線長に近いものとして実現することができる。しかも、第１〜第２抵抗、第１〜第２容量を上記第１係数と共に仮想配線抵抗値、仮想配線容量値を用いて定めると共に、上記仮想配線抵抗値と仮想配線容量値も、（１）単位配線長当りの配線抵抗値、（２）単位配線長当りの配線容量値、（３）仮想配線長の各データによって定めている。これらのデータ（１）〜（３）もまた、製作プロセスや用いる半導体デバイスにより固定的に定めうるもの、又は過去の設計データを用いた統計的手法より定めうるものである。従って、過去の設計データに基礎付けられた、本回路モデルとそれより導かれる遅延計算式とを用いることが可能となり、確実に計算精度を向上させることができる。
【０１１６】
請求項２の発明では、上記第１係数のデータとして、ファンアウト数毎に統計的手法を用いて決定したものを用いているので、仮想配線遅延値の計算精度をより確実に高めることができる。
【０１１７】
請求項３の発明では、請求項２の発明で得られる計算精度をほぼ維持しつつ計算ステップの簡略化を図っているので、より高速で仮想配線遅延値を計算することができる。
【０１１８】
請求項４の発明では、回路モデル上の個々のピン容量値のデータを平均値として算出することとしているので、請求項５の発明よりも遅延計算式を単純な式とすることができるので、その点でより実用的な仮想配線遅延値の計算技術を提供することができる。
【０１１９】
請求項５の発明によれば、回路モデルにおいて各々のピン容量値を用いているので、請求項１〜４の発明よりもより一層に高精度で仮想配線遅延値を計算することが可能となる。
【０１２０】
請求項６の発明によれば、パス遅延値の計算の際に高精度で計算した仮想配線遅延値を用いているので、パス遅延値の見積り精度が向上する。
【図面の簡単な説明】
【図１】  この発明の実施の形態１，２に適用される新規な回路モデルを示す図である。
【図２】  本発明が適用されるシステムの構成を示す図である。
【図３】  図１に示した回路モデルを用いた、実施の形態１における遅延計算装置の構成を示すブロック図である。
【図４】  図１に示した回路モデルを用いて、ファンアウト数ごとの係数Ａで、以て仮想配線遅延値を計算する手順を示す図である。
【図５】  本発明による配線遅延値の計算の有効性を示す図である。
【図６】  実施の形態２の技術的思想の根拠を示す図である。
【図７】  実施の形態２における遅延計算装置の構成を示すブロック図である。
【図８】  実施の形態２における仮想配線遅延値を計算する手順を示す図である。
【図９】  実施の形態３，４で用いられる新規な回路モデルを示す図である。
【図１０】  実施の形態３における遅延計算装置の構成を示すブロック図である。
【図１１】  実施の形態３における仮想配線遅延値を計算する手順を示す図である。
【図１２】  実施の形態４における遅延計算装置の構成を示すブロック図である。
【図１３】  実施の形態４における仮想配線遅延値を計算する手順を示す図である。
【図１４】  実施の形態５におけるパス遅延検証装置が適用される半導体集積回路の一例を示す図である。
【図１５】  本発明で用いる回路モデルにおける、共通部分の概念を示す図である。
【図１６】  従来の技術１としての回路モデルを示す図である。
【図１７】  図１６に示した回路モデルを用いて、仮想配線遅延を計算する遅延計算装置の構成を示すブロック図である。
【図１８】  図１６に示した回路モデルを用いて、仮想配線遅延値を計算する手順を示す図である。
【図１９】  従来の技術２としての回路モデルを示す図である。
【図２０】  図１９に示した回路モデルを用いて、仮想配線遅延を計算する遅延計算装置の構成を示すブロック図である。
【図２１】  図１９に示した回路モデルを用いて、仮想配線遅延値を計算する手順を示す図である。
【符号の説明】
２３  回路図ファイル手段、２４  係数ファイル手段、２５  ピン容量抽出手段、２６，２９，３１，３３  計算手段、２７  ファンアウト数抽出手段、３２ファンアウト数決定手段及びパス遅延値検証装置。
【図１】
0003908303.tif 000006
【図２】
0003908303.tif 000007
【図３】
0003908303.tif 000008
【図４】
0003908303.tif 000009
【図５】
0003908303.tif 000010
【図６】
0003908303.tif 000011
【図７】
0003908303.tif 000012
【図８】
0003908303.tif 000013
【図９】
0003908303.tif 000014
【図１０】
0003908303.tif 000015
【図１１】
0003908303.tif 000016
【図１２】
0003908303.tif 000017
【図１３】
0003908303.tif 000018
【図１４】
0003908303.tif 000019
【図１５】
0003908303.tif 000020
【図１６】
0003908303.tif 000021
【図１７】
0003908303.tif 000022
【図１８】
0003908303.tif 000023
【図１９】
0003908303.tif 000024
【図２０】
0003908303.tif 000025
【図２１】
0003908303.tif 000026