(57)【要約】【課題】  クロストークの影響の低減に要する設計期間の増大を抑制する信号立ち上がり時間設定方法を提供する。【解決手段】  半導体集積回路を構成する回路素子の配置情報に基づきネットの仮クロストークノイズ値を算出するステップと、半導体集積回路が正常動作するように設定されるノイズしきい値と仮クロストークノイズ値とを比較するステップと、仮クロストークノイズ値がノイズしきい値より大きい場合に、ネットの信号立ち上がり時間の第１の制約値を算出するステップと、ネットの信号立ち上がり時間が第１の制約値以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む。【選択図】      図１
2006259904.tif 000002
【特許請求の範囲】
【請求項１】
ノイズ算出部が、半導体集積回路を構成する回路素子の配置情報を回路情報記憶領域から読み出し、該配置情報に基づき、ネットの仮クロストークノイズ値を算出するステップと、
ノイズ値比較部が、前記半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、該ノイズしきい値と前記仮クロストークノイズ値とを比較するステップと、
前記仮クロストークノイズ値が前記ノイズしきい値より大きい場合に、第１制約値算出部が前記ネットの信号立ち上がり時間の第１の制約値を算出し、該第１の制約値を第１制約値記憶領域に格納するステップと、
前記ネットの信号立ち上がり時間が前記第１の制約値以下になるまで、置換部が前記ネットを駆動するドライバを駆動力の高いドライバで置換するステップ
とを含むことを特徴とする信号立ち上がり時間設定方法。  
【請求項２】
前記ノイズ算出部は、前記ネットの仮クロストークノイズを前記ネットの配線長に基づき算出することを特徴とする請求項１に記載の信号立ち上がり時間設定方法。  
【請求項３】
遅延算出部が、前記配置情報を前記回路情報記憶領域から読み出し、該配置情報に基づき、前記ネットの仮クロストーク遅延値を算出するステップと、
遅延値比較部が、前記半導体集積回路が正常動作するように設定される遅延しきい値を遅延しきい値記憶領域から読み出し、該遅延しきい値と前記仮クロストーク遅延値とを比較するステップと、
前記仮クロストーク遅延値が前記遅延しきい値より大きい場合に、第２制約値算出部が前記ネットの信号立ち上がり時間の第２の制約値を算出するステップと、
制約値更新部が、前記第１の制約値を前記第１制約値記憶領域から読み出し、前記第１の制約値と前記第２の制約値との比較に基づき、前記第１の制約値を新たな第１の制約値に更新するステップ
とを更に含むことを特徴とする請求項１又は２に記載の信号立ち上がり時間設定方法。    
【請求項４】
自己配線容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、前記概略配線の単位長さあたりの自己配線容量を単位容量記憶領域からそれぞれ読み出し、読み出した前記配線密度及び前記単位長さあたりの自己配線容量に基づきネットの自己配線容量を算出し、該ネットの自己配線容量を自己配線容量記憶領域に格納するステップと、
配線間容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、前記概略配線の単位長さあたりの配線間容量を単位容量記憶領域からそれぞれ読み出し、読み出した前記配線密度及び前記単位長さあたりの配線間容量に基づきネットの配線間容量を算出し、該ネットの配線間容量を配線間容量記憶領域に格納するステップと、
立ち上がり時間算出部が、前記ネットの自己配線容量及び前記ネットの配線間容量を用いて、前記ネットの信号立ち上がり時間を算出し、該信号立ち上がり時間を立ち上がり時間記憶領域に格納するステップと、
ノイズ算出部が、前記ネットの自己配線容量を前記自己配線容量記憶領域から、前記ネットの配線間容量を前記配線間容量記憶領域からそれぞれ読み出し、前記ネットの自己配線容量、前記ネットの配線間容量及び前記信号立ち上がり時間に基づき、前記ネットの仮クロストークノイズ値を算出するステップと、
ノイズ値比較部が、前記半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、該ノイズしきい値と前記仮クロストークノイズ値とを比較するステップと、
前記仮クロストークノイズ値が前記ノイズしきい値より大きい場合に、第１制約値算出部が前記ネットの信号立ち上がり時間の第１の制約値を算出し、該第１の制約値を第１制約値記憶領域に格納するステップと、
前記信号立ち上がり時間が前記第１の制約値以下になるまで、置換部が前記ネットを駆動するドライバを駆動力の高いドライバで置換するステップ
とを含むことを特徴とする信号立ち上がり時間設定方法。  
【請求項５】
遅延算出部が、前記ネットの自己配線容量を前記自己配線容量記憶領域から、前記ネットの配線間容量を前記配線間容量記憶領域から、前記信号立ち上がり時間を前記立ち上がり時間記憶領域からそれぞれ読み出し、読み出した前記ネットの自己配線容量、前記ネットの配線間容量及び前記信号立ち上がり時間に基づき、前記ネットの仮クロストーク遅延値を算出するステップと、
遅延値比較部が、前記半導体集積回路が正常動作するように設定される遅延しきい値を遅延しきい値記憶領域から読み出し、該遅延しきい値と前記仮クロストーク遅延値とを比較するステップと、
前記仮クロストーク遅延値が前記遅延しきい値より大きい場合に、第２制約値算出部が前記ネットの信号立ち上がり時間の第２の制約値を算出するステップと、
制約値更新部が、前記第１の制約値を前記第１制約値記憶領域から読み出し、前記第１の制約値と前記第２の制約値との比較に基づき、前記第１の制約値を新たな第１の制約値に更新するステップ
とを更に含むことを特徴とする請求項４に記載の信号立ち上がり時間設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計方法に係り、特にネットの信号立ち上がり時間設定方法に関する。
【背景技術】
【０００２】
近年の半導体集積回路の微細化に伴い、配線間容量に起因する配線間のクロストークが原因による設計期間の増大が大きな問題となっている。配線間のクロストークの影響は、クロストークノイズやクロストーク遅延等がある。「クロストークノイズ」とは、影響を及ぼす配線を伝搬する信号の変化により、隣接する配線に電圧変化が発生することをいう。以下において、クロストークの影響を受ける配線を「ビクティム」、影響を及ぼす配線を「アグレッサ」という。又、「クロストーク遅延」とは、アグレッサとビクティムの信号到着時刻が重なった場合に、アグレッサの信号の変化の影響を受け、ビクティムの信号の伝搬時間に遅延が発生することをいう。そのため、クロストークノイズ、或いはクロストーク遅延により、半導体集積回路が誤動作する可能性がある。予測されるクロストークノイズ値が、半導体集積回路が誤動作するクロストークノイズ値より大きい場合を「クロストークノイズ違反」という。一方、予測されるクロストーク遅延が、半導体集積回路が誤動作するクロストーク遅延より大きい場合を「クロストーク遅延違反」という。
【０００３】
クロストークノイズ違反及びクロストーク遅延違反を解消するために、さまざまな方法が提案されている。例えば、アグレッサのノイズ発生タイミングと、ビクティムのノイズ受信タイミングが重ならないネットを隣接させることによりクロストークを防止する方法が提案されている。又、駆動能力が等しいセルで駆動される配線を隣接させることによりクロストークを減少させる方法、或いは長い配線と短い配線を隣接させることによりクロストークを減少させる方法が提案されている。更に、クロストークノイズが、設定された上限値を超えるネットに対してクロストークを防止する方法が提案されている（例えば、特許文献１参照。）。
【０００４】
一般に、半導体集積回路の配線方法は、先ず、回路素子が配置された半導体集積回路のチップ領域を複数の概略格子に分割する。次に、回路素子同士を接続する配線がどの概略格子を通過するかを決定する概略配線を行う。その後、それぞれの概略格子内の配線の配置を決定する詳細配線を行う。上述したクロストークを防止する方法は、詳細配線における方法である。しかし、詳細配線におけるクロストーク防止方法は、配線混雑度が高い場合には効果が小さい。詳細配線におけるクロストーク防止方法でクロストークノイズ、或いはクロストーク遅延を十分に抑制できない場合には、より上流の設計工程に戻ってクロストーク防止方法を検討しなければならないため、設計期間が増大する。
【０００５】
一方、セルの駆動力を変更してビクティム或いはアグレッサの信号立ち上がり時間を調整し、クロストークの影響を低減する方法も提案されている。例えば、ビクティムを伝搬する信号を出力するビクティムドライバを、駆動力の大きいドライバに置換する。更に、アグレッサを伝搬する信号を出力するアグレッサドライバを駆動力の小さいドライバに置換することにより、クロストーク遅延を抑制する方法が提案されている。又、クリティカルパス上のセルのリサイジング、及びトランジスタ閾値変更を行う方法が提案されている。これらのセル駆動力を変更する方法では、クリティカルパスであるネットのクロストーク遅延を計算し、クロストーク遅延が小さくなるように、セルの置換を行う。セルの置換のために正確なクロストーク遅延の計算が必要であるが、その計算は詳細配線後でなければ行うことができない。つまり、セル駆動力を変更する方法を詳細配線前の段階で使用することは困難である。そのため、セル駆動力を変更する方法は、主に詳細配線後の修正に使用されることになる。その場合には、詳細配線、クロストーク解析、セル駆動力の変更、という設計工程の繰り返しが発生し、クロストークの影響を低減するために設計期間が増大する。
【特許文献１】特開２００３−１８６９３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、クロストークの影響の低減に要する設計期間の増大を抑制する信号立ち上がり時間設定方法を提供する。
【課題を解決するための手段】
【０００７】
本発明の第１の特徴は、（イ）ノイズ算出部が、半導体集積回路を構成する回路素子の配置情報を回路情報記憶領域から読み出し、その配置情報に基づき、ネットの仮クロストークノイズ値を算出するステップと、（ロ）ノイズ値比較部が、半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、そのノイズしきい値と仮クロストークノイズ値とを比較するステップと、（ハ）仮クロストークノイズ値がノイズしきい値より大きい場合に、第１制約値算出部がネットの信号立ち上がり時間の第１の制約値を算出し、その第１の制約値を第１制約値記憶領域に格納するステップと、（ニ）ネットの信号立ち上がり時間が第１の制約値以下になるまで、置換部がネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む信号立ち上がり時間設定方法であることを要旨とする。
【０００８】
本発明の第２の特徴は、（イ）自己配線容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、概略配線の単位長さあたりの自己配線容量を単位容量記憶領域からそれぞれ読み出し、読み出した配線密度及び単位長さあたりの自己配線容量に基づきネットの自己配線容量を算出し、そのネットの自己配線容量を自己配線容量記憶領域に格納するステップと、（ロ）配線間容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、概略配線の単位長さあたりの配線間容量を単位容量記憶領域からそれぞれ読み出し、読み出した配線密度及び単位長さあたりの配線間容量に基づきネットの配線間容量を算出し、そのネットの配線間容量を配線間容量記憶領域に格納するステップと、（ハ）立ち上がり時間算出部が、ネットの自己配線容量及びネットの配線間容量を用いて、ネットの信号立ち上がり時間を算出し、その信号立ち上がり時間を立ち上がり時間記憶領域に格納するステップと、（ニ）ノイズ算出部が、ネットの自己配線容量を自己配線容量記憶領域から、ネットの配線間容量を配線間容量記憶領域からそれぞれ読み出し、ネットの自己配線容量、ネットの配線間容量及び信号立ち上がり時間に基づき、ネットの仮クロストークノイズ値を算出するステップと、（ホ）ノイズ値比較部が、半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、そのノイズしきい値と仮クロストークノイズ値とを比較するステップと、（ヘ）仮クロストークノイズ値がノイズしきい値より大きい場合に、第１制約値算出部がネットの信号立ち上がり時間の第１の制約値を算出し、その第１の制約値を第１制約値記憶領域に格納するステップと、（ト）信号立ち上がり時間が第１の制約値以下になるまで、置換部がネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む信号立ち上がり時間設定方法であることを要旨とする。
【発明の効果】
【０００９】
本発明によれば、クロストークの影響の低減に要する設計期間の増大を抑制する信号立ち上がり時間設定方法を提供できる。
【発明を実施するための最良の形態】
【００１０】
次に、図面を参照して、本発明の第１乃至第３の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。又、以下に示す第１乃至第３の実施の形態は、この発明の技術的思想を具体化するための装置や方法を例示するものであって、この発明の技術的思想は、構成部品の構造、配置等を下記のものに特定するものでない。この発明の技術的思想は、特許請求の範囲において、種々の変更を加えることができる。
【００１１】
（第１の実施の形態）
本発明の第１の実施の形態に係る信号立ち上がり時間設定方法は、図１に示すように、半導体集積回路を構成する回路素子の配置情報に基づきネットの仮クロストークノイズ値を算出するステップと、半導体集積回路が正常動作するように設定されるノイズしきい値と仮クロストークノイズ値とを比較するステップと、仮クロストークノイズ値がノイズしきい値より大きい場合に、ネットの信号立ち上がり時間の第１の制約値を算出するステップと、ネットの信号立ち上がり時間が第１の制約値以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む。図１に示した信号立ち上がり時間設定方法は、例えば、図２に示す信号立ち上がり時間設定装置によって実行可能である。図２に示す信号立ち上がり時間設定装置は、処理装置１０、記憶装置２００、ライブラリ部３０、入力装置４０及び出力装置５０を備える。処理装置１０は、ネット選択部１１、ノイズ算出部１２、ノイズ値比較部１３、第１制約値算出部１４、制約値比較部１５及び置換部１６を備える。ネット選択部１１は、半導体集積回路の回路情報に含まれる複数のネットから、一つのネットを選択する。ノイズ算出部１２は、ネットの仮クロストークノイズ値Ｎｉを算出する。ノイズ値比較部１３は、ネットの仮クロストークノイズ値Ｎｉとノイズしきい値Ｖｔｈnoise を比較する。「ノイズしきい値」は、半導体集積回路が正常動作するために許容できる最大のクロストークノイズ値として設定される。ノイズしきい値Ｖｔｈnoise は、例えば電源電圧の３０％の値として設定される。第１制約値算出部１４は、第１の制約値Ｓ１を算出する。第１の制約値Ｓ１については後述する。制約値比較部１５は、ネットの信号立ち上がり時間と第１の制約値Ｓ１を比較する。置換部１６は、ネットの信号立ち上がり時間が第１の制約値Ｓ１以下になるように、ネットを駆動するドライバをより駆動力の大きなドライバに置換する。
【００１２】
記憶装置２００は、回路情報記憶領域２０１、ノイズしきい値記憶領域２０２、ネット記憶領域２０３、ノイズ値記憶領域２０４及び第１制約値記憶領域２０５を備える。回路情報記憶領域２０１に半導体集積回路の回路情報が格納される。回路情報は、チップ領域上に配置された回路素子の配置情報や回路素子間を接続する複数のネットの情報等を含む。ノイズしきい値記憶領域２０２に、ノイズしきい値Ｖｔｈnoise が格納される。ネット記憶領域２０３に、ネット選択部１１により選択されたネットの情報が格納される。ノイズ値記憶領域２０４に、ノイズ算出部１２により算出された仮クロストークノイズ値Ｎｉが格納される。第１制約値記憶領域２０５に、第１制約値算出部１４により算出された第１の制約値Ｓ１ が格納される。
【００１３】
ライブラリ部３０に、ネットを駆動するドライバとして使用可能な複数のドライバの情報が格納される。ライブラリ部３０に格納された複数のドライバから、置換部１６が一つのドライバを選択する。
【００１４】
入力装置４０はキーボード、マウス、ライトペン又はフレキシブルディスク装置等で構成される。入力装置４０より、入出力データを指定できる。更に、入力装置４０より出力データの形態等を設定することも可能で、又、信号立ち上がり時間の設定や中止などの指示の入力も可能である。
【００１５】
又、出力装置５０としては、信号立ち上がり時間の設定結果を表示するディスプレイやプリンタ、或いはコンピュータ読み取り可能な記録媒体に保存する記録装置等が使用可能である。ここで、「コンピュータ読み取り可能な記録媒体」とは、例えばコンピュータの外部メモリ装置、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープ等の電子データを記録することができるような媒体等を意味する。具体的には、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯディスク、カセットテープ、オープンリールテープ等が「コンピュータ読み取り可能な記録媒体」に含まれる。
【００１６】
図１に示した信号立ち上がり時間の設定方法を説明する前に、ネットの仮クロストークノイズ値Ｎｉの算出方法を説明する。最も大きなクロストークノイズがビクティムに発生するのは、ビクティムの両側にアグレッサが隣接する場合である。つまり、図３に示すように、ネット１０１、ネット１０３がアグレッサであり、ネット１０２がビクティムの場合に、ネット１０２に最も大きなクロストークノイズが発生する。ネット１０１−ネット１０２間の距離、及びネット１０２−ネット１０３間の距離は、適用される設計ルールの最小配線間隔ｄである。ネット１０２の総配線長Ｌｎ、総容量値Ｃｎは、概略配線が行われていない段階であっても、ネット１０２が接続する全てのポートを囲む最小矩形等に基づき見積もることができる。例えば図４に示すように、ネット１０２が接続されるポートＰ１〜Ｐ３の配置情報から得られるポートＰ１〜Ｐ３を含む矩形２１の形状に基づき、矩形２１の隣り合う２辺の和としてネット１０２の総配線長Ｌｎを見積もることができる。ポートＰ１〜Ｐ３の配置情報は、回路素子の配置情報を含む回路情報から得られる。ネット１０２の総容量値Ｃｎは、ネット１０２の自己配線容量、配線間容量及びネットに接続する入力ポート、出力ポートの全ての容量の合計である。ネット１０２の仮クロストークノイズ値Ｎｉは、式（１）を用いて算出される。
【００１７】
Ｎｉ＝（２×Ｋ×Ｌｎ）／Ｃｎ                  ・・・・・（１）
式（１）で、係数Ｋはネット１０２の総容量値Ｃｎに対するネット１０２の配線間容量の割合を示す定数である。例えば、９０ｎｍプロセスでは、係数Ｋは０．４程度である。式（１）の分子（２×Ｋ×Ｌｎ）は、ネット１０２の配線間容量として見積もられる値である。式（１）を用いることにより、ネットに発生するクロストークノイズが最大になる場合の仮クロストークノイズ値Ｎｉを、算出することができる。
【００１８】
次に、ネット１０２に発生するクロストークノイズに起因する回路の誤動作を防止するために、ネット１０２の信号立ち上がり時間に対して設定される第１の制約値Ｓ１の算出方法を説明する。
【００１９】
一般に、ビクティムとアグレッサが隣接して配置された場合のクロストークノイズ値Ｖnoiseは、式（２）を用いて算出される。
【００２０】
Ｖnoise＝１／（１＋ｔx／ｔv））×（Ｃx／Ｃtotal）・・・・・（２）
式（２）において、ｔxはアグレッサの信号立ち上がり時間、ｔvはビクティムの信号立ち上がり時間である。又、Ｃxは配線間容量、Ｃtotalはネットの総容量である。式（２）で計算されるクロストークノイズ値Ｖnoise が、ノイズしきい値Ｖｔｈnoise 以下であるためには、式（３）が満足されればよい。
【００２１】
１／（１＋ｔx／ｔv）×（Ｃx／Ｃtotal）  ≦  Ｖｔｈnoise   ・・・・・（３）
式（３）を変形すると、以下の式（４）になる。
【００２２】
ｔv  ≦  ｔx／｛（Ｃx／Ｃtotal）×（１／Ｖｔｈnoise）−１｝  ・・・・・（４）
ここで、アグレッサの信号立ち上がり時間を回路全体の信号立ち上がり時間の平均値Ｔaveと仮定して、ビクティムの信号立ち上がり時間の第１の制約値を設定する。ビクティムの信号立ち上がり時間ｔv が式（４）を満足すれば、ビクティムに発生するクロストークノイズの大きさがノイズしきい値Ｖｔｈnoise以下になる。つまり、第１の制約値Ｓ１は、式（５）を用いて算出される。
【００２３】
Ｓ１＝ Ｔave／｛（Ｃx／Ｃtotal）×（１／Ｖｔｈnoise）−１｝  ・・・・・（５）
配線間容量Ｃxをネット１０２の配線間容量（２×Ｋ×Ｌｎ）とし、ネットの総容量Ｃtotalをネット１０２の総容量値Ｃｎとして、式（６）を用いて算出される第１の制約値Ｓ１を、ネット１０２の信号立ち上がり時間の上限に設定する。
【００２４】
Ｓ１＝ Ｔave／｛（２×Ｋ×Ｌｎ／Ｃｎ）×（１／Ｖｔｈnoise）−１｝  ・・・・（６）
式（１）を用いて算出された仮クロストークノイズ値Ｎｉは、図３に示したような、クロストークノイズ値が最大になる配線の配置を想定して計算された値である。そのため、仮クロストークノイズ値Ｎｉ以下であるネットに発生するクロストークノイズはノイズしきい値Ｖｔｈnoise 以上にならない。又、式（６）を用いて算出される第１の制約値Ｓ１は、図３に示したネット１０１及びネット１０３の信号立ち上がり時間が平均値Ｔaveの場合に、ノイズしきい値Ｖｔｈnoise を超えるクロストークノイズが発生しないネット１０２の信号立ち上がり時間の最大値である。各ネットの信号立ち上がり時間を第１の制約値Ｓ１以下に設定することにより、平均的な信号立ち上がり時間を有するアグレッサによるクロストークノイズ違反を防止することができる。つまり、各ネットにおいて、クロストークノイズ違反が発生する可能性を最小限にすることができる。
【００２５】
以下に、本発明の第１の実施の形態に係る信号立ち上がり時間設定方法を、図１のフローチャート及び図２の信号立ち上がり時間設定装置を用いて説明する。
【００２６】
（イ）図１に示すステップＳ１０１において、図２に示した入力装置４０を介して、半導体集積回路の回路情報が回路情報記憶領域２０１に格納される。又、ノイズしきい値記憶領域２０２に、ノイズしきい値Ｖｔｈnoiseが格納される。
【００２７】
（ロ）ステップＳ１０２において、ネット選択部１１が、回路情報記憶領域２０１に格納された回路情報を読み出す。そして、ネット選択部１１は、回路情報に基づき、半導体集積回路に含まれる一つのネットを選択する。選択されたネットの情報は、ネット記憶領域２０３に格納される。
【００２８】
（ハ）ステップＳ１０３において、ノイズ算出部１２が、ネット記憶領域２０３に格納されたネットの情報を読み出す。そして、ノイズ算出部１２は、式（１）を用いて、選択されたネットの仮クロストークノイズ値Ｎｉを算出する。算出された仮クロストークノイズ値Ｎｉは、ノイズ値記憶領域２０４に格納される。
【００２９】
（ニ）ステップＳ１０４において、ノイズ値比較部１３が、ノイズしきい値記憶領域２０２に格納されたノイズしきい値Ｖｔｈnoise 及びノイズ値記憶領域２０４に格納された仮クロストークノイズ値Ｎｉを読み出す。そして、ノイズ値比較部１３は、ノイズしきい値Ｖｔｈnoise と仮クロストークノイズ値Ｎｉを比較する。仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoise 以下の場合には、ステップＳ１０９に進む。仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoise より大きい場合には、ステップＳ１０５に進む。
【００３０】
（ホ）ステップＳ１０５において、第１制約値算出部１４が、回路情報記憶領域２０１に格納された回路情報を読み出す。そして、第１制約値算出部１４は、回路情報に基づき、回路に含まれるすべてのネットの信号立ち上がり時間の平均値Ｔaveを算出する。更に、第１制約値算出部１４は、ネット記憶領域２０３に格納されたネットの情報を読み出し、式（６）を用いて第１の制約値Ｓ１を算出する。算出された第１の制約値Ｓ１は、第１制約値記憶領域２０５に格納される。
【００３１】
（ヘ）ステップＳ１０６において、制約値比較部１５が、ネット記憶領域２０３に格納されたネットの情報を読み出す。そして、制約値比較部１５は、選択されたネットの信号立ち上がり時間Ｔｓを算出する。次いで、ステップＳ１０７において、制約値比較部１５は、第１制約値記憶領域２０５から第１の制約値Ｓ１を読み出し、ステップＳ１０６において算出された信号立ち上がり時間Ｔｓと第１の制約値Ｓ１を比較する。信号立ち上がり時間Ｔｓが第１の制約値Ｓ１以下の場合には、ステップＳ１０９に進む。信号立ち上がり時間Ｔｓが第１の制約値Ｓ１より大きい場合には、ステップＳ１０８に進む。
【００３２】
（ト）ステップＳ１０８において、置換部１６が回路情報記憶領域２０１に格納された回路情報、及びネット記憶領域２０３に格納されたネットの情報を読み出す。そして、置換部１６は、選択されたネットの駆動ドライバを駆動力の大きなドライバで置換する。置換部１６は、ライブラリ部３０に格納された複数のドライバから、駆動ドライバを選択することができる。置換部１６によりドライバが置換された回路情報は、回路情報記憶領域２０１に格納される。その後、ステップＳ１０６に戻る。つまり、ネットの信号立ち上がり時間Ｔａが第１の制約値Ｓ１以下になるまで、ネットを駆動するドライバの置換が繰り返される。
【００３３】
（チ）ステップＳ１０９において、ネット選択部１１が、回路情報記憶領域２０１に格納された回路情報に含まれるすべてのネットを選択したか否かを判断する。選択されていないネットがある場合には、ステップＳ１０２に戻る。すべてのネットが選択されていれば、処理を終了する。
【００３４】
以上に説明したように、本発明の第１の実施の形態に係る信号立ち上がり時間設定方法では、ネットに発生する最大のクロストークノイズがノイズしきい値Ｖｔｈnoise より大きい場合に、ネットの信号立ち上がり時間Ｔａが第１の制約値Ｓ１より大きいか否かが判定される。そして、ネットの信号立ち上がり時間Ｔａが第１の制約値Ｓ１より大きい場合には、ネットの信号立ち上がり時間Ｔａが第１の制約値Ｓ１以下になるように、ネットを駆動するドライバが駆動力の高いドライバで置換される。ネットを駆動するドライバを置換することにより、ネットの信号立ち上がり時間が設定される。その結果、ネットにおいてクロストークノイズ違反が発生する可能性を低減することができる。一方、ネットに発生する最大のクロストークノイズがノイズしきい値Ｖｔｈnoise 以下である場合には、ネットを駆動するドライバを置換する必要がない。又、信号立ち上がり時間Ｔａの算出は、クロストークノイズ値の算出より高速に行える。そのため、図１に示した信号立ち上がり時間設定方法によれば、クロストークノイズ値の算出とドライバの置換を繰り返してクロストークノイズ遅延の発生を予防する方法に比べ、設計期間を短縮することができる。
【００３５】
式（１）を用いて算出される仮クロストークノイズ値Ｎｉ、及び式（６）を用いて算出される第１の制約値Ｓ１は、詳細配線を行う前に算出可能である。そのため、例えばセル配置直後等の、半導体集積回路のレイアウト設計の上位段階において、図１に示した信号立ち上がり時間設定方法を適用可能である。つまり、詳細配線前に配線を駆動するドライバを置換するため、詳細配線後にセル配置の工程に戻る必要がない。その結果、クロストークノイズ違反の無い半導体集積回路を、設計期間の増大を招くことなく設計できる。特に、配線ルールが０．１８μｍ以下の場合に、クロストークに起因する回路の誤動作が増加する傾向があるため、以上に説明した信号立ち上がり時間設定方法は有効である。
【００３６】
（第２の実施の形態）
本発明の第２の実施の形態に係る信号立ち上がり時間設定方法は、図５に示すように、配置情報に基づきネットの仮クロストーク遅延値を算出するステップと、半導体集積回路が正常動作するように設定される遅延しきい値と仮クロストーク遅延値とを比較するステップと、仮クロストーク遅延値が遅延しきい値より大きい場合に、ネットの信号立ち上がり時間の第２の制約値を算出するステップと、第１の制約値と第２の制約値との比較に基づき、第１の制約値を新たな第１の制約値に更新するステップとを更に含む点が、図１に示した信号立ち上がり時間設定方法と異なる。
【００３７】
図５に示した信号立ち上がり時間設定方法は、例えば図６に示す信号立ち上がり時間設定装置によって実行可能である。図６に示す信号立ち上がり時間設定装置は、遅延算出部１７、遅延値比較部１８、第２制約値算出部１９、及び制約値更新部２０を更に備える点が図２と異なる。又、図６に示す信号立ち上がり時間設定装置は、遅延しきい値記憶領域２０６、遅延値記憶領域２０７及び第２制約値記憶領域２０８を更に備える。その他の構成については、図２に示す信号立ち上がり時間設定装置と同様である。
【００３８】
遅延算出部１７は、ネットの仮クロストーク遅延値Ｔｉを算出する。遅延値比較部１８は、ネットの仮クロストーク遅延値Ｔｉと遅延しきい値Ｄｔｈdelayを比較する。「遅延しきい値」は、半導体集積回路が正常動作するために許容できる最大のクロストーク遅延値として設定される。遅延しきい値Ｄｔｈdelayは、例えばクリティカルパスのタイミングスラック値である。「タイミングスラック値」は、要求されるクリティカルパスの遅延時間と、回路素子が配置された後に見積もられるクリティカルパスの遅延時間の差である。例えば、要求されるクリティカルパスの遅延時間が５ｎｓｅｃの場合に、回路素子が配置された後に計算されるクリティカルパスの遅延時間が４．８ｎｓｅｃであれば、タイミングスラック値は０．２ｎｓｅｃになる。第２制約値算出部１９は、第２の制約値Ｓ２を算出する。第２の制約値Ｓ２については後述する。制約値更新部２０は、第１の制約値と第２の制約値との比較に基づき、第1の制約値を新たな第１の制約値に更新する。
【００３９】
遅延しきい値記憶領域２０６に、遅延しきい値Ｄｔｈdelayが格納される。遅延値記憶領域２０７に、遅延算出部１７により算出された仮クロストーク遅延値Ｔｉが格納される。第２制約値記憶領域２０８に、第２制約値算出部１９により算出された第２の制約値Ｓ２が格納される。
【００４０】
図５に示した信号立ち上がり時間の設定方法を説明する前に、ネットの仮クロストーク遅延値Ｔｉの算出方法を説明する。最も大きなクロストーク遅延ノイズが発生する配線の配置は、ビクティムの両側にアグレッサが隣接する場合である。つまり、図３に示すように、ネット１０１、ネット１０３がアグレッサであり、ネット１０２がビクティムの場合に、ネット１０２に最も大きなクロストーク遅延が発生する。ネット１０２の総配線長Ｌｎ、ネット１０２の総容量値Ｃｎ、及びネット１０２の信号立ち上がり時間Ｔａを用いて、ネット１０２の仮クロストーク遅延値Ｔｉは、式（７）を用いて算出される。
【００４１】
Ｔｉ＝｛（２×Ｋ×Ｌｎ）／Ｃｎ｝×Ｔａ      ・・・・・（７）
第１の実施の形態で説明したように、係数Ｋはネット１０２の総容量値Ｃｎに対するネット１０２の配線間容量の割合を示す定数である。
【００４２】
次に、ネット１０２に発生するクロストーク遅延に起因する回路の誤動作を防止するために、ネット１０２の信号立ち上がり時間に対して設定される第２の制約値の算出方法を説明する。
【００４３】
一般に、ビクティムとアグレッサが隣接して配置された場合のクロストーク遅延値Ｄdelayは、式（８）を用いて見積られる。
【００４４】
Ｄdelay＝１／（１＋ｔx／ｔv））×（Ｃx／Ｃtotal）×ｔv    ・・・・・（８）
式（８）において、ｔxはアグレッサの信号立ち上がり時間、ｔvはビクティムの信号立ち上がり時間である。つまり、クロストーク遅延値Ｄdelayは、式（２）に示されたクロストークノイズ値Ｖnoiseにビクティムの信号立ち上がり時間ｔvを乗じた値である。又、Ｃxは配線間容量、Ｃtotalはネットの総容量である。式（８）で計算されるクロストーク遅延値Ｄdelayが、遅延しきい値Ｄｔｈdelay以下であるためには、式（９）が満足されればよい。
【００４５】
１／（１＋ｔx／ｔv）（Ｃx／Ｃtotal）×ｔv    ≦  Ｄｔｈdelay  ・・・・・（９）
式（９）を変形すると、以下の式（１０）になる。
【００４６】
Ｃx×ｔv 2−Ｃtotal×Ｄｔｈdelay−Ｃtotal×Ｄｔｈdelay×ｔx≦０  ・・・・・（１０）
式（１０）をビクティムの信号立ち上がり時間ｔv について解くと式（１１）が得られる。
【００４７】
ｔv≦Ｐ×｛（１＋（１＋４×ｔx／Ｐ）1/2 ）／ ２｝  ・・・・・（１１）
式（１１）で、
Ｐ＝（Ｄｔｈdelay×Ｃtotal）／Ｃx        ・・・・・（１２）
である。ここで、アグレッサの信号立ち上がり時間を回路全体の信号立ち上がり時間の平均値Ｔaveと仮定して、ビクティムの信号立ち上がり時間の第２の制約値Ｓ２を設定する。ビクティムの信号立ち上がり時間ｔv が式（１１）を満足すれば、ビクティムに発生するクロストーク遅延の大きさが遅延しきい値Ｄｔｈdelay以下になる。つまり、第２の制約値Ｓ２は、式（１３）を用いて算出される。
【００４８】
Ｓ２＝Ｐ×｛（１＋（１＋４×Ｔave／Ｐ）1/2 ）／ ２｝  ・・・・・（１３）
式（７）を用いて算出された仮クロストーク遅延値Ｔｉは、図３に示したような、クロストーク遅延値が最大になる配線の配置を想定して計算された値である。そのため、仮クロストーク遅延値Ｔｉ以下であるネットに発生するクロストーク遅延は遅延しきい値Ｄｔｈdelay以上にならない。又、式（１３）を用いて算出される第２の制約値Ｓ２は、図３に示したネット１０１及びネット１０３の信号立ち上がり時間が平均値Ｔaveの場合に、遅延しきい値Ｄｔｈdelayを超えるクロストーク遅延が発生しないネット１０２の信号立ち上がり時間の最大値である。各ネットの信号立ち上がり時間を第２の制約値Ｓ２以下に設定することにより、平均的な信号立ち上がり時間を有するアグレッサによるクロストーク遅延違反を防止することができる。つまり、各ネットにおいて、クロストーク遅延違反が発生する可能性を最小限にすることができる。
【００４９】
以下に、本発明の第２の実施の形態に係る信号立ち上がり時間設定方法を、図５のフローチャート及び図６の信号立ち上がり時間設定装置を用いて説明する。
【００５０】
（イ）図５に示すステップＳ１０１において、図６に示した入力装置４０を介して、半導体集積回路の回路情報が回路情報記憶領域２０１に格納される。又、ノイズしきい値記憶領域２０２に、ノイズしきい値Ｖｔｈnoiseが格納される。更に、遅延しきい値記憶領域２０６に、遅延しきい値Ｄｔｈdelayが格納される。
【００５１】
（ロ）ステップＳ１０２〜ステップＳ１０４において、図１を用いて説明したのと同様にして、半導体集積回路に含まれる一つのネットが選択され、選択されたネットの仮クロストークノイズ値Ｎｉが算出される。そして、仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoise以下の場合は、ステップＳ１１０に進む。仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoiseより大きい場合は、ステップＳ１０５に進み、式（６）を用いて第１の制約値Ｓ１が算出される。
【００５２】
（ハ）ステップＳ１１０において、遅延算出部１７が、ネット記憶領域２０３に格納されたネットの情報を読み出す。そして、遅延算出部１７は、式（７）を用いて、選択されたネットの仮クロストーク遅延値Ｔｉを算出する。算出された仮クロストーク遅延値Ｔｉは、遅延値記憶領域２０７に格納される。
【００５３】
（ニ）ステップＳ１１１において、遅延値比較部１８が、遅延しきい値記憶領域２０６に格納された遅延しきい値Ｄｔｈdelay及び遅延値記憶領域２０７に格納された仮クロストーク遅延値Ｔｉを読み出す。そして、遅延値比較部１８は、遅延しきい値Ｄｔｈdelayと仮クロストーク遅延値Ｔｉを比較する。仮クロストーク遅延値Ｔｉが遅延しきい値Ｄｔｈdelayより大きい場合には、ステップＳ１１３に進む。仮クロストーク遅延値Ｔｉが遅延しきい値Ｄｔｈdelay以下の場合には、ステップＳ１１２に進む。ステップＳ１１２において、仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoise以下の場合は、ネットに発生する最大のクロストークノイズがノイズしきい値Ｖｔｈnoise 以下であり、且つ、ネットに発生する最大のクロストーク遅延が遅延しきい値Ｄｔｈnoise以下である。そのため、選択されたネットの駆動ドライバを置換する必要がなく、ステップＳ１０９に進む。一方、仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoiseより大きい場合は、ステップＳ１１４に進む。
【００５４】
（ホ）ステップＳ１１３において、第２制約値算出部１９が、回路情報記憶領域２０１に格納された回路情報を読み出す。そして、第２制約値算出部１９は、回路情報に基づき、回路に含まれるすべてのネットの信号立ち上がり時間の平均値Ｔaveを算出する。更に、第２制約値算出部１９は、ネット記憶領域２０３に格納されたネットの情報を読み出し、式（１３）を用いて第２の制約値Ｓ２を算出する。算出された第２の制約値Ｓ２は、第２制約値記憶領域２０８に格納される。
【００５５】
（ヘ）ステップＳ１１４において、制約値更新部２０が第１の制約値Ｓ１を更新する。具体的には、制約値更新部２０が第１の制約値Ｓ１と第２の制約値Ｓ２を比較する。そして、第２の制約値Ｓ２が第１の制約値Ｓ１より小さい場合は、制約値更新部２０は、第２の制約値Ｓ２を新たな第１の制約値Ｓ１として更新する。仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoise以下の場合には第１の制約値Ｓ１が算出されていない。その場合は、第２の制約値Ｓ２を新たな第１の制約値Ｓ１に更新する。
【００５６】
（ト）ステップＳ１１５において、制約値比較部１５が、ネット記憶領域２０３に格納されたネットの情報を読み出す。そして、制約値比較部１５は、選択されたネットの信号立ち上がり時間Ｔａを算出する。次いで、ステップＳ１１６において、制約値比較部１５は、ステップＳ１１５において算出された信号立ち上がり時間Ｔａと、第１の制約値Ｓ１を比較する。信号立ち上がり時間Ｔａが第１の制約値Ｓ１以下の場合には、ステップＳ１０９に進む。信号立ち上がり時間Ｔａが第１の制約値Ｓ１より大きい場合には、ステップＳ１１７に進む。
【００５７】
（チ）ステップＳ１１７において、置換部１６が回路情報記憶領域２０１に格納された回路情報、及びネット記憶領域２０３に格納されたネットの情報を読み出す。そして、置換部１６は、選択されたネットの駆動ドライバを駆動力の大きなドライバで置換する。置換部１６によりドライバが置換された回路情報は、回路情報記憶領域２０１に格納される。その後、ステップＳ１１５に戻る。つまり、ネットの信号立ち上がり時間Ｔａが第１の制約値Ｓ１以下になるまで、ネットを駆動するドライバの置換が繰り返される。
【００５８】
（リ）ステップＳ１０９において、ネット選択部１１が、回路情報記憶領域２０１に格納された回路情報に含まれるすべてのネットを選択したか否かを判断する。選択されていないネットがある場合には、ステップＳ１０２に戻る。すべてのネットが選択されていれば、処理を終了する。
【００５９】
以上に説明したように、本発明の第２の実施の形態に係る信号立ち上がり時間設定方法では、ネットに発生する最大のクロストーク遅延が遅延しきい値Ｄｔｈnoiseより大きい場合に、第２の制約値Ｓ２が算出される。そして、第１の制約値Ｓ１及び第２の制約値Ｓ２のいずれか小さい値よりネットの信号立ち上がり時間Ｔａが大きい場合には、ネットを駆動するドライバが駆動力の高いドライバで置換される。その結果、ネットにおいてクロストークノイズ違反及びクロストーク遅延違反が発生する可能性を低減することができる。一方、ネットに発生する最大のクロストークノイズがノイズしきい値Ｖｔｈnoise 以下であり、且つ最大のクロストーク遅延が遅延しきい値Ｄｔｈnoise以下である場合には、ネットを駆動するドライバを置換する必要がない。
【００６０】
式（７）を用いて算出される仮クロストーク遅延値Ｔｉ、及び式（１３）を用いて算出される第２の制約値Ｓ２は、詳細配線を行う前に算出可能である。そのため、例えばセル配置直後等の、半導体集積回路のレイアウト設計の上位段階において、図５に示した信号立ち上がり時間設定方法を適用可能である。つまり、詳細配線後にセル配置の工程等に戻る必要がない。その結果、クロストーク遅延違反の無い半導体集積回路を、設計期間の増大を招くことなく設計することができる。他は、第１の実施の形態と実質的に同様であり、重複した記載を省略する。
【００６１】
（第３の実施の形態）
本発明の第３の実施の形態に係る信号立ち上がり時間設定方法は、図７に示すように、半導体集積回路の概略配線の配線密度及び単位長さあたりの自己配線容量に基づきネットの自己配線容量を算出するステップと、半導体集積回路の概略配線の配線密度及び単位長さあたりの配線間容量に基づきネットの配線間容量を算出するステップと、ネットの自己配線容量及び配線間容量を用いて、ネットの信号立ち上がり時間を算出するステップと、ネットの自己配線容量、配線間容量及び信号立ち上がり時間に基づき、ネットの仮クロストークノイズ値を算出するステップと、半導体集積回路が正常動作するように設定されるノイズしきい値と仮クロストークノイズ値とを比較するステップと、仮クロストークノイズ値がノイズしきい値より大きい場合に、ネットの信号立ち上がり時間の第１の制約値を算出するステップと、信号立ち上がり時間が第１の制約値以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む。
【００６２】
図７に示した信号立ち上がり時間設定方法は、例えば図８に示す信号立ち上がり時間設定装置によって実行可能である。図８に示す信号立ち上がり時間設定装置は、概略配線部２１、配線密度算出部２２、自己配線容量算出部２３、配線間容量算出部２４、及び立ち上がり時間算出部２５を更に備える点が図６と異なる。又、図８に示す信号立ち上がり時間設定装置は、単位容量記憶領域２０９、概略配線記憶領域２１０、配線密度記憶領域２１１、自己配線容量記憶領域２１２、配線間容量記憶領域２１３、立ち上がり時間記憶領域２１４、及び平均値記憶領域２１５を更に備える。その他の構成については、図６に示す信号立ち上がり時間設定装置と同様である。
【００６３】
概略配線部２１は、回路情報に基づき概略配線処理を行う。「概略配線処理」については後述する。配線密度算出部２２は、後述する方法により、概略配線の配線密度を算出する。自己配線容量算出部２３は、ネットの自己配線容量を算出する。配線間容量算出部２４は、概略配線の配線密度及び単位長さあたりの配線間容量に基づき、半導体集積回路に含まれるネットの配線間容量を算出する。立ち上がり時間算出部２５は、半導体集積回路に含まれるネットの信号立ち上がり時間を算出する。
【００６４】
単位容量記憶領域２０９に、配線密度毎の単位長さあたりの自己配線容量及び配線間容量が格納される。概略配線記憶領域２１０に、概略配線処理の結果が格納される。配線密度記憶領域２１１に、概略配線の配線密度が格納される。自己配線容量記憶領域２１２にネットの自己配線容量が格納される。配線間容量記憶領域２１３にネットの配線間容量が格納される。立ち上がり時間記憶領域２１４にネットの信号立ち上がり時間が格納される。平均値記憶領域２１５にすべてのネットの信号立ち上がり時間の平均値が格納される。
【００６５】
「概略配線処理」は、回路情報に含まれる各ネットの配置を概略的に行う工程である。概略配線処理を行った例を図９に示す。図９に示した例では、破線で示された１２行１２列の概略格子に分割されたチップ領域３００に、回路素子３０１〜３０８が配置されている。回路素子３０１と回路素子３０２が概略配線３１１で接続され、回路素子３０３と回路素子３０４が概略配線３１２で接続されている。更に、回路素子３０５と回路素子３０６が概略配線３１３で接続され、回路素子３０７と回路素子３０８が概略配線３１４で接続されている。概略配線３１１〜３１４が、それぞれ通過する概略格子を決定する処理が概略配線処理である。概略配線３１１〜３１４がそれぞれ通過する概略格子は、図９に示した例以外にも選択することができる。又、通常の概略配線処理では、各概略格子に１０本〜３０本程度の概略配線が通過可能である。
【００６６】
本発明の第３の実施の形態に係る信号立ち上がり時間設定方法では、概略配線の配線密度、及び配線密度に基づいて算出される概略配線の自己配線容量及び配線間容量を使用する。そのため、概略格子の配線密度を計算する方法を以下に説明する。概略格子の配線密度は、概略格子を通過可能な概略配線の総数に対する、実際に概略格子を通過する概略配線の本数の比として計算される。例えば、２０本の概略配線が通過可能な概略格子に１５本の概略配線が通過している場合は、配線密度は７５％である。
【００６７】
次に、概略格子の配線密度に基づき、概略配線の配線間容量を算出する方法を説明する。例えば、図１０に示した概略配線３２０の配線間容量を算出する例を以下に示す。図１０に示すように、概略配線３２０は回路素子３０７と回路素子３０８間に配置され、概略格子３３０ａ〜３３０ｌを通過する。図１０の概略格子３３０ａ〜３３０ｌの下に、各概略格子の配線密度が記載されている。ここで、概略格子３３０ａ〜３３０ｌを通過可能な概略配線の総数を４本とする。概略格子３３０ａ〜３３０ｃ、３３０ｌは、概略配線３２０のみが通過しているため、配線密度は２５％である。概略格子３３０ｄ〜３３０ｆは、概略配線３２０及び概略配線３２１が通過しているため、配線密度は５０％である。概略格子３３０ｈ〜３３０ｋは、概略配線３２０、概略配線３２１及び概略配線３２２が通過しているため、配線密度は７５％である。
【００６８】
一方、配線密度毎の単位長さあたりの配線間容量は、電磁界シミュレータ等により予め求めることができる。そのため、概略配線３２０が通過する概略格子３３０ａ〜３３０ｌの配線密度に基づき、概略配線３２０の配線間容量を算出できる。図１１に、概略配線３２０の配線間容量を算出した例を示す。図１１に示した例では、配線密度２５％、５０％及び７５％における概略格子あたりの配線間容量が、それぞれ０ｆＦ、２ｆＦ及び４ｆＦである。概略配線３２０が通過する概略格子の数は、配線密度２５％の概略格子が４個、配線密度５０％の概略格子が５個、配線密度７５％の概略格子が４個である。その結果、図１１に示すように、概略配線３２０の配線間容量は２６ｆＦである。自己配線容量も配線間容量と同様の方法で求めることができる。
【００６９】
以上に説明した方法により算出された概略配線の配線間容量に基づき、半導体集積回路に含まれる各ネットの配線間容量を算出することができる。つまり、各ネットに含まれる概略配線の配線間容量の和として、各ネットの配線間容量をそれぞれ算出することができる。各ネットの自己配線容量も同様に求めることができる。更に、算出されたネットの自己配線容量及び配線間容量から、それぞれのネットの信号立ち上がり時間、及びすべてのネットの信号立ち上がり時間の平均値を算出することができる。
【００７０】
概略配線の自己配線容量、配線間容量及びピン容量に基づき算出されたネットの総容量Ｃｎ、概略配線の配線間容量に基づき算出されたネットの配線間容量Ｃｌ、ネットの信号立ち上がり時間Ｔｂ、及びすべてのネットの信号立ち上がり時間の平均値Ｔaveを用いて、ネットの仮クロストークノイズ値Ｎｉは式（１４）により算出される。
【００７１】
Ｎｉ＝（１／（１＋Ｔave／Ｔｂ））×Ｃｌ／Ｃｎ    ・・・・・（１４）
第１の制約値Ｓ１は、式（１５）を用いて算出される。
【００７２】
Ｓ１＝ Ｔave／｛（Ｃｌ／Ｃｎ）×（１／Ｖｔｈnoise）−１｝  ・・・・・（１５）
又、ネットの配線間容量Ｃｌ、信号立ち上がり時間Ｔｂ、及び平均値Ｔaveを用いてネットの仮クロストーク遅延値Ｔｉは、式（１６）を用いて算出される。
【００７３】
Ｔｉ＝（１／（１＋Ｔave／Ｔｂ））｛Ｃｌ／Ｃｎ｝×Ｔｂ  ・・・・・（１６）
更に、第２の制約値Ｓ２は、式（１７）を用いて算出される。
【００７４】
Ｓ２＝ＰEST×｛（１＋（１＋４×Ｔave／ＰEST）1/2 ）／ ２｝・・・・・（１７）
式（１７）で、
ＰEST＝（Ｄｔｈdelay×Ｃtotal）／Ｃｌ                      ・・・・・（１８）
である。
【００７５】
式（１４）〜式（１８）を用いて算出される仮クロストークノイズ値Ｎｉ、第１の制約値Ｓ１、仮クロストーク遅延値Ｔｉ、及び第２の制約値Ｓ２は、概略配線の配線間容量に基づき算出されたネットの配線間容量Ｃｌ、信号立ち上がり時間Ｔｂ、及び平均値Ｔaveを用いて算出される。そのため、係数Ｋを用いてネットの配線間容量を２×Ｋ×Ｌｎに仮定して算出された場合より精度が高い。
【００７６】
以下に、本発明の第３の実施の形態に係る信号立ち上がり時間設定方法を、図７のフローチャート及び図８の信号立ち上がり時間設定装置を用いて説明する。
【００７７】
（イ）図７に示すステップＳ１０１において、図８に示した入力装置４０を介して、半導体集積回路の回路情報が回路情報記憶領域２０１に格納される。又、ノイズしきい値記憶領域２０２に、ノイズしきい値Ｖｔｈnoiseが格納される。更に、遅延しきい値記憶領域２０６に、遅延しきい値Ｄｔｈdelayが格納される。配線密度毎の単位長さあたりの自己配線容量及び配線間容量が、単位容量記憶領域２０９に格納される。
【００７８】
（ロ）ステップＳ１１において、概略配線部２１が、回路情報記憶領域２０１に格納された回路情報を読み出す。そして、概略配線部２１は、回路素子が配置されたチップ領域を複数の概略格子に分割する。次いで、概略配線部２１は、概略配線処理を行う。概略配線処理の結果は、概略配線記憶領域２１０に格納される。
【００７９】
（ハ）ステップＳ１２において、配線密度算出部２２が、概略配線記憶領域２１０に格納された概略配線処理の結果を読み出す。そして、配線密度算出部２２は、図１０を用いて説明した方法により、各概略配線の配線密度を算出する。算出された配線密度は、配線密度記憶領域２１１に格納される。
【００８０】
（ニ）ステップＳ１３において、自己配線容量算出部２３が、配線密度記憶領域２１１に格納された配線密度、及び単位容量記憶領域２０９に格納された単位長さあたりの自己配線容量を読み出す。そして、自己配線容量算出部２３は、各ネットの自己配線容量を算出する。算出された自己配線容量は、自己配線容量記憶領域２１２に格納される。
【００８１】
（ホ）ステップＳ１４において、配線間容量算出部２４が、配線密度記憶領域２１１に格納された配線密度、及び単位容量記憶領域２０９に格納された単位長さあたりの配線間容量を読み出す。そして、配線間容量算出部２４は、図１１を用いて説明した方法により、各ネットの配線間容量を算出する。算出された配線間容量は、配線間容量記憶領域２１３に格納される。
【００８２】
（ヘ）ステップＳ１５において、立ち上がり時間算出部２５が、自己配線容量記憶領域２１２に格納された自己配線容量及び配線間容量記憶領域２１３に格納された配線間容量を読み出す。そして、立ち上がり時間算出部２５は、半導体集積回路に含まれる各ネットの信号立ち上がり時間Ｔｂを算出する。算出された信号立ち上がり時間Ｔｂは、立ち上がり時間記憶領域２１４に格納される。又、立ち上がり時間算出部２５は、すべてのネットの信号立ち上がり時間の平均値Ｔaveを算出する。算出された信号立ち上がり時間の平均値Ｔaveは、平均値記憶領域２１５に格納される。
【００８３】
（ト）ステップＳ１０２〜ステップＳ１１７において、図５を用いて説明したのと同様にして、ネットにおいてクロストークノイズ違反及びクロストーク遅延違反が発生する可能性を低減する。即ち、半導体集積回路に含まれる一つのネットが選択される。そして、ノイズ算出部１２が選択されたネットの仮クロストークノイズ値Ｎｉを算出する。仮クロストークノイズ値Ｎｉは、式（１４）を用いて算出される。仮クロストークノイズ値Ｎｉがノイズしきい値Ｖｔｈnoise より大きい場合には、第１制約値算出部１４が、式（１５）を用いて第１の制約値Ｓ１を算出する。更に、遅延算出部１７が、式（１６）を用いて仮クロストーク遅延値Ｔｉを算出する。仮クロストーク遅延値Ｔｉが遅延しきい値Ｄｔｈdelayより大きい場合は、第２制約値算出部１９が、式（１７）を用いて第２の制約値Ｓ２を算出する。その後、第１の制約値Ｓ１と第２の制約値Ｓ２の比較に基づき、第１の制約値Ｓ１を新たな第１の制約値Ｓ１に更新する。そして、信号立ち上がり時間Ｔｂが第１の制約値Ｓ１以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換する。なお、ステップＳ１１５において、立ち上がり時間算出部２５が、配線間容量記憶領域２１３に格納された配線間容量を用いて、選択されたネットの信号立ち上がり時間Ｔｂを算出する。
【００８４】
以上に説明したように、本発明の第３の実施の形態に係る信号立ち上がり時間設定方法では、概略配線の配線間容量に基づき計算されたネットの配線間容量Ｃｌを用いることにより、仮クロストークノイズ値Ｎｉ、仮クロストーク遅延値Ｔｉ及び信号立ち上がり時間等を、ネットの総配線長Ｌｎ及び係数Ｋを用いて計算されたネットの配線間容量を用いる場合よりも、高い精度で算出することができる。その結果、クロストークノイズ違反及びクロストーク遅延違反が発生する可能性を更に低減できる。又、本発明の第３の実施の形態に係る信号立ち上がり時間設定方法によれば、詳細配線の前にネットの信号立ち上がり時間を設定できる。その結果、クロストークノイズ違反及びクロストーク遅延違反の無い半導体集積回路を、設計期間の増大を招くことなく設計することができる。他は、第２の実施の形態と実質的に同様であり、重複した記載を省略する。
【００８５】
（その他の実施の形態）
上記のように、本発明は第１乃至第３の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
【００８６】
既に述べた第１乃至第３の実施の形態の説明においては、先ずクロストークノイズ違反について判定され、その後、クロストーク遅延違反について判定されていた。しかし、クロストーク遅延違反についてのみ判定し、ネットの信号立ち上がり時間を設定してもよい。
【００８７】
このように、本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【図面の簡単な説明】
【００８８】
【図１】本発明の第１の実施の形態に係る信号立ち上がり時間設定方法を示すフローチャートである。
【図２】本発明の第１の実施の形態に係る信号立ち上がり時間設定装置の構成を示す模式図である。
【図３】本発明の第１の実施の形態に係る信号立ち上がり時間設定方法によりクロストークの影響が計算される配線の配置を示す模式図である。
【図４】本発明の第１の実施の形態に係る信号立ち上がり時間設定方法によりクロストークの影響が計算される配線の総配線長を見積もる方法の例を説明するための模式図である。
【図５】本発明の第２の実施の形態に係る信号立ち上がり時間設定方法を示すフローチャートである。
【図６】本発明の第２の実施の形態に係る信号立ち上がり時間設定装置の構成を示す模式図である。
【図７】本発明の第３の実施の形態に係る信号立ち上がり時間設定方法を示すフローチャートである。
【図８】本発明の第３の実施の形態に係る信号立ち上がり時間設定装置の構成を示す模式図である。
【図９】本発明の第３の実施の形態に係る信号立ち上がり時間設定方法による概略配線処理を説明するためのチップ領域の上面図である。
【図１０】本発明の第３の実施の形態に係る信号立ち上がり時間設定方法による概略配線の配線間容量を算出する方法を説明するための模式図である。
【図１１】本発明の第３の実施の形態に係る信号立ち上がり時間設定方法により算出された概略配線の配線間容量の例を示す表である。
【符号の説明】
【００８９】
１２…ノイズ算出部
１３…ノイズ値比較部
１４…第１制約値算出部
１６…置換部
１７…遅延算出部
１８…遅延値比較部
１９…第２制約値算出部
２０…制約値更新部
２３…自己配線容量算出部
２４…配線間容量算出部
２５…立ち上がり時間算出部
２０１…回路情報記憶領域
２０２…ノイズしきい値記憶領域
２０５…第１制約値記憶領域
２０６…遅延しきい値記憶領域
２０９…単位容量記憶領域
２１１…配線密度記憶領域
２１２…自己配線容量記憶領域
２１３…配線間容量記憶領域
２１４…立ち上がり時間記憶領域
【図１】
2006259904.tif 000003
【図２】
2006259904.tif 000004
【図３】
2006259904.tif 000005
【図４】
2006259904.tif 000006
【図５】
2006259904.tif 000007
【図６】
2006259904.tif 000008
【図７】
2006259904.tif 000009
【図８】
2006259904.tif 000010
【図９】
2006259904.tif 000011
【図１０】
2006259904.tif 000012
【図１１】
2006259904.tif 000013