JP2006259904A - 信号立ち上がり時間設定方法 - Google Patents

信号立ち上がり時間設定方法 Download PDF

Info

Publication number
JP2006259904A
JP2006259904A JP2005073769A JP2005073769A JP2006259904A JP 2006259904 A JP2006259904 A JP 2006259904A JP 2005073769 A JP2005073769 A JP 2005073769A JP 2005073769 A JP2005073769 A JP 2005073769A JP 2006259904 A JP2006259904 A JP 2006259904A
Authority
JP
Japan
Prior art keywords
value
net
wiring
rise time
storage area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005073769A
Other languages
English (en)
Inventor
Tomoyuki Yoda
友幸 依田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2005073769A priority Critical patent/JP2006259904A/ja
Publication of JP2006259904A publication Critical patent/JP2006259904A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】 クロストークの影響の低減に要する設計期間の増大を抑制する信号立ち上がり時間設定方法を提供する。
【解決手段】 半導体集積回路を構成する回路素子の配置情報に基づきネットの仮クロストークノイズ値を算出するステップと、半導体集積回路が正常動作するように設定されるノイズしきい値と仮クロストークノイズ値とを比較するステップと、仮クロストークノイズ値がノイズしきい値より大きい場合に、ネットの信号立ち上がり時間の第1の制約値を算出するステップと、ネットの信号立ち上がり時間が第1の制約値以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む。
【選択図】 図1

Description

本発明は、半導体集積回路の設計方法に係り、特にネットの信号立ち上がり時間設定方法に関する。
近年の半導体集積回路の微細化に伴い、配線間容量に起因する配線間のクロストークが原因による設計期間の増大が大きな問題となっている。配線間のクロストークの影響は、クロストークノイズやクロストーク遅延等がある。「クロストークノイズ」とは、影響を及ぼす配線を伝搬する信号の変化により、隣接する配線に電圧変化が発生することをいう。以下において、クロストークの影響を受ける配線を「ビクティム」、影響を及ぼす配線を「アグレッサ」という。又、「クロストーク遅延」とは、アグレッサとビクティムの信号到着時刻が重なった場合に、アグレッサの信号の変化の影響を受け、ビクティムの信号の伝搬時間に遅延が発生することをいう。そのため、クロストークノイズ、或いはクロストーク遅延により、半導体集積回路が誤動作する可能性がある。予測されるクロストークノイズ値が、半導体集積回路が誤動作するクロストークノイズ値より大きい場合を「クロストークノイズ違反」という。一方、予測されるクロストーク遅延が、半導体集積回路が誤動作するクロストーク遅延より大きい場合を「クロストーク遅延違反」という。
クロストークノイズ違反及びクロストーク遅延違反を解消するために、さまざまな方法が提案されている。例えば、アグレッサのノイズ発生タイミングと、ビクティムのノイズ受信タイミングが重ならないネットを隣接させることによりクロストークを防止する方法が提案されている。又、駆動能力が等しいセルで駆動される配線を隣接させることによりクロストークを減少させる方法、或いは長い配線と短い配線を隣接させることによりクロストークを減少させる方法が提案されている。更に、クロストークノイズが、設定された上限値を超えるネットに対してクロストークを防止する方法が提案されている(例えば、特許文献1参照。)。
一般に、半導体集積回路の配線方法は、先ず、回路素子が配置された半導体集積回路のチップ領域を複数の概略格子に分割する。次に、回路素子同士を接続する配線がどの概略格子を通過するかを決定する概略配線を行う。その後、それぞれの概略格子内の配線の配置を決定する詳細配線を行う。上述したクロストークを防止する方法は、詳細配線における方法である。しかし、詳細配線におけるクロストーク防止方法は、配線混雑度が高い場合には効果が小さい。詳細配線におけるクロストーク防止方法でクロストークノイズ、或いはクロストーク遅延を十分に抑制できない場合には、より上流の設計工程に戻ってクロストーク防止方法を検討しなければならないため、設計期間が増大する。
一方、セルの駆動力を変更してビクティム或いはアグレッサの信号立ち上がり時間を調整し、クロストークの影響を低減する方法も提案されている。例えば、ビクティムを伝搬する信号を出力するビクティムドライバを、駆動力の大きいドライバに置換する。更に、アグレッサを伝搬する信号を出力するアグレッサドライバを駆動力の小さいドライバに置換することにより、クロストーク遅延を抑制する方法が提案されている。又、クリティカルパス上のセルのリサイジング、及びトランジスタ閾値変更を行う方法が提案されている。これらのセル駆動力を変更する方法では、クリティカルパスであるネットのクロストーク遅延を計算し、クロストーク遅延が小さくなるように、セルの置換を行う。セルの置換のために正確なクロストーク遅延の計算が必要であるが、その計算は詳細配線後でなければ行うことができない。つまり、セル駆動力を変更する方法を詳細配線前の段階で使用することは困難である。そのため、セル駆動力を変更する方法は、主に詳細配線後の修正に使用されることになる。その場合には、詳細配線、クロストーク解析、セル駆動力の変更、という設計工程の繰り返しが発生し、クロストークの影響を低減するために設計期間が増大する。
特開2003−186934号公報
本発明は、クロストークの影響の低減に要する設計期間の増大を抑制する信号立ち上がり時間設定方法を提供する。
本発明の第1の特徴は、(イ)ノイズ算出部が、半導体集積回路を構成する回路素子の配置情報を回路情報記憶領域から読み出し、その配置情報に基づき、ネットの仮クロストークノイズ値を算出するステップと、(ロ)ノイズ値比較部が、半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、そのノイズしきい値と仮クロストークノイズ値とを比較するステップと、(ハ)仮クロストークノイズ値がノイズしきい値より大きい場合に、第1制約値算出部がネットの信号立ち上がり時間の第1の制約値を算出し、その第1の制約値を第1制約値記憶領域に格納するステップと、(ニ)ネットの信号立ち上がり時間が第1の制約値以下になるまで、置換部がネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む信号立ち上がり時間設定方法であることを要旨とする。
本発明の第2の特徴は、(イ)自己配線容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、概略配線の単位長さあたりの自己配線容量を単位容量記憶領域からそれぞれ読み出し、読み出した配線密度及び単位長さあたりの自己配線容量に基づきネットの自己配線容量を算出し、そのネットの自己配線容量を自己配線容量記憶領域に格納するステップと、(ロ)配線間容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、概略配線の単位長さあたりの配線間容量を単位容量記憶領域からそれぞれ読み出し、読み出した配線密度及び単位長さあたりの配線間容量に基づきネットの配線間容量を算出し、そのネットの配線間容量を配線間容量記憶領域に格納するステップと、(ハ)立ち上がり時間算出部が、ネットの自己配線容量及びネットの配線間容量を用いて、ネットの信号立ち上がり時間を算出し、その信号立ち上がり時間を立ち上がり時間記憶領域に格納するステップと、(ニ)ノイズ算出部が、ネットの自己配線容量を自己配線容量記憶領域から、ネットの配線間容量を配線間容量記憶領域からそれぞれ読み出し、ネットの自己配線容量、ネットの配線間容量及び信号立ち上がり時間に基づき、ネットの仮クロストークノイズ値を算出するステップと、(ホ)ノイズ値比較部が、半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、そのノイズしきい値と仮クロストークノイズ値とを比較するステップと、(ヘ)仮クロストークノイズ値がノイズしきい値より大きい場合に、第1制約値算出部がネットの信号立ち上がり時間の第1の制約値を算出し、その第1の制約値を第1制約値記憶領域に格納するステップと、(ト)信号立ち上がり時間が第1の制約値以下になるまで、置換部がネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む信号立ち上がり時間設定方法であることを要旨とする。
本発明によれば、クロストークの影響の低減に要する設計期間の増大を抑制する信号立ち上がり時間設定方法を提供できる。
次に、図面を参照して、本発明の第1乃至第3の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。又、以下に示す第1乃至第3の実施の形態は、この発明の技術的思想を具体化するための装置や方法を例示するものであって、この発明の技術的思想は、構成部品の構造、配置等を下記のものに特定するものでない。この発明の技術的思想は、特許請求の範囲において、種々の変更を加えることができる。
(第1の実施の形態)
本発明の第1の実施の形態に係る信号立ち上がり時間設定方法は、図1に示すように、半導体集積回路を構成する回路素子の配置情報に基づきネットの仮クロストークノイズ値を算出するステップと、半導体集積回路が正常動作するように設定されるノイズしきい値と仮クロストークノイズ値とを比較するステップと、仮クロストークノイズ値がノイズしきい値より大きい場合に、ネットの信号立ち上がり時間の第1の制約値を算出するステップと、ネットの信号立ち上がり時間が第1の制約値以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む。図1に示した信号立ち上がり時間設定方法は、例えば、図2に示す信号立ち上がり時間設定装置によって実行可能である。図2に示す信号立ち上がり時間設定装置は、処理装置10、記憶装置200、ライブラリ部30、入力装置40及び出力装置50を備える。処理装置10は、ネット選択部11、ノイズ算出部12、ノイズ値比較部13、第1制約値算出部14、制約値比較部15及び置換部16を備える。ネット選択部11は、半導体集積回路の回路情報に含まれる複数のネットから、一つのネットを選択する。ノイズ算出部12は、ネットの仮クロストークノイズ値Niを算出する。ノイズ値比較部13は、ネットの仮クロストークノイズ値Niとノイズしきい値Vthnoise を比較する。「ノイズしきい値」は、半導体集積回路が正常動作するために許容できる最大のクロストークノイズ値として設定される。ノイズしきい値Vthnoise は、例えば電源電圧の30%の値として設定される。第1制約値算出部14は、第1の制約値S1を算出する。第1の制約値S1については後述する。制約値比較部15は、ネットの信号立ち上がり時間と第1の制約値S1を比較する。置換部16は、ネットの信号立ち上がり時間が第1の制約値S1以下になるように、ネットを駆動するドライバをより駆動力の大きなドライバに置換する。
記憶装置200は、回路情報記憶領域201、ノイズしきい値記憶領域202、ネット記憶領域203、ノイズ値記憶領域204及び第1制約値記憶領域205を備える。回路情報記憶領域201に半導体集積回路の回路情報が格納される。回路情報は、チップ領域上に配置された回路素子の配置情報や回路素子間を接続する複数のネットの情報等を含む。ノイズしきい値記憶領域202に、ノイズしきい値Vthnoise が格納される。ネット記憶領域203に、ネット選択部11により選択されたネットの情報が格納される。ノイズ値記憶領域204に、ノイズ算出部12により算出された仮クロストークノイズ値Niが格納される。第1制約値記憶領域205に、第1制約値算出部14により算出された第1の制約値S1 が格納される。
ライブラリ部30に、ネットを駆動するドライバとして使用可能な複数のドライバの情報が格納される。ライブラリ部30に格納された複数のドライバから、置換部16が一つのドライバを選択する。
入力装置40はキーボード、マウス、ライトペン又はフレキシブルディスク装置等で構成される。入力装置40より、入出力データを指定できる。更に、入力装置40より出力データの形態等を設定することも可能で、又、信号立ち上がり時間の設定や中止などの指示の入力も可能である。
又、出力装置50としては、信号立ち上がり時間の設定結果を表示するディスプレイやプリンタ、或いはコンピュータ読み取り可能な記録媒体に保存する記録装置等が使用可能である。ここで、「コンピュータ読み取り可能な記録媒体」とは、例えばコンピュータの外部メモリ装置、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープ等の電子データを記録することができるような媒体等を意味する。具体的には、フレキシブルディスク、CD−ROM、MOディスク、カセットテープ、オープンリールテープ等が「コンピュータ読み取り可能な記録媒体」に含まれる。
図1に示した信号立ち上がり時間の設定方法を説明する前に、ネットの仮クロストークノイズ値Niの算出方法を説明する。最も大きなクロストークノイズがビクティムに発生するのは、ビクティムの両側にアグレッサが隣接する場合である。つまり、図3に示すように、ネット101、ネット103がアグレッサであり、ネット102がビクティムの場合に、ネット102に最も大きなクロストークノイズが発生する。ネット101−ネット102間の距離、及びネット102−ネット103間の距離は、適用される設計ルールの最小配線間隔dである。ネット102の総配線長Ln、総容量値Cnは、概略配線が行われていない段階であっても、ネット102が接続する全てのポートを囲む最小矩形等に基づき見積もることができる。例えば図4に示すように、ネット102が接続されるポートP1〜P3の配置情報から得られるポートP1〜P3を含む矩形21の形状に基づき、矩形21の隣り合う2辺の和としてネット102の総配線長Lnを見積もることができる。ポートP1〜P3の配置情報は、回路素子の配置情報を含む回路情報から得られる。ネット102の総容量値Cnは、ネット102の自己配線容量、配線間容量及びネットに接続する入力ポート、出力ポートの全ての容量の合計である。ネット102の仮クロストークノイズ値Niは、式(1)を用いて算出される。

Ni=(2×K×Ln)/Cn ・・・・・(1)

式(1)で、係数Kはネット102の総容量値Cnに対するネット102の配線間容量の割合を示す定数である。例えば、90nmプロセスでは、係数Kは0.4程度である。式(1)の分子(2×K×Ln)は、ネット102の配線間容量として見積もられる値である。式(1)を用いることにより、ネットに発生するクロストークノイズが最大になる場合の仮クロストークノイズ値Niを、算出することができる。
次に、ネット102に発生するクロストークノイズに起因する回路の誤動作を防止するために、ネット102の信号立ち上がり時間に対して設定される第1の制約値S1の算出方法を説明する。
一般に、ビクティムとアグレッサが隣接して配置された場合のクロストークノイズ値Vnoiseは、式(2)を用いて算出される。

noise=1/(1+tx/tv))×(Cx/Ctotal)・・・・・(2)

式(2)において、txはアグレッサの信号立ち上がり時間、tvはビクティムの信号立ち上がり時間である。又、Cxは配線間容量、Ctotalはネットの総容量である。式(2)で計算されるクロストークノイズ値Vnoise が、ノイズしきい値Vthnoise 以下であるためには、式(3)が満足されればよい。

1/(1+tx/tv)×(Cx/Ctotal) ≦ Vthnoise ・・・・・(3)

式(3)を変形すると、以下の式(4)になる。

v ≦ tx/{(Cx/Ctotal)×(1/Vthnoise)−1} ・・・・・(4)

ここで、アグレッサの信号立ち上がり時間を回路全体の信号立ち上がり時間の平均値Taveと仮定して、ビクティムの信号立ち上がり時間の第1の制約値を設定する。ビクティムの信号立ち上がり時間tv が式(4)を満足すれば、ビクティムに発生するクロストークノイズの大きさがノイズしきい値Vthnoise以下になる。つまり、第1の制約値S1は、式(5)を用いて算出される。

S1= Tave/{(Cx/Ctotal)×(1/Vthnoise)−1} ・・・・・(5)

配線間容量Cxをネット102の配線間容量(2×K×Ln)とし、ネットの総容量Ctotalをネット102の総容量値Cnとして、式(6)を用いて算出される第1の制約値S1を、ネット102の信号立ち上がり時間の上限に設定する。

S1= Tave/{(2×K×Ln/Cn)×(1/Vthnoise)−1} ・・・・(6)

式(1)を用いて算出された仮クロストークノイズ値Niは、図3に示したような、クロストークノイズ値が最大になる配線の配置を想定して計算された値である。そのため、仮クロストークノイズ値Ni以下であるネットに発生するクロストークノイズはノイズしきい値Vthnoise 以上にならない。又、式(6)を用いて算出される第1の制約値S1は、図3に示したネット101及びネット103の信号立ち上がり時間が平均値Taveの場合に、ノイズしきい値Vthnoise を超えるクロストークノイズが発生しないネット102の信号立ち上がり時間の最大値である。各ネットの信号立ち上がり時間を第1の制約値S1以下に設定することにより、平均的な信号立ち上がり時間を有するアグレッサによるクロストークノイズ違反を防止することができる。つまり、各ネットにおいて、クロストークノイズ違反が発生する可能性を最小限にすることができる。
以下に、本発明の第1の実施の形態に係る信号立ち上がり時間設定方法を、図1のフローチャート及び図2の信号立ち上がり時間設定装置を用いて説明する。
(イ)図1に示すステップS101において、図2に示した入力装置40を介して、半導体集積回路の回路情報が回路情報記憶領域201に格納される。又、ノイズしきい値記憶領域202に、ノイズしきい値Vthnoiseが格納される。
(ロ)ステップS102において、ネット選択部11が、回路情報記憶領域201に格納された回路情報を読み出す。そして、ネット選択部11は、回路情報に基づき、半導体集積回路に含まれる一つのネットを選択する。選択されたネットの情報は、ネット記憶領域203に格納される。
(ハ)ステップS103において、ノイズ算出部12が、ネット記憶領域203に格納されたネットの情報を読み出す。そして、ノイズ算出部12は、式(1)を用いて、選択されたネットの仮クロストークノイズ値Niを算出する。算出された仮クロストークノイズ値Niは、ノイズ値記憶領域204に格納される。
(ニ)ステップS104において、ノイズ値比較部13が、ノイズしきい値記憶領域202に格納されたノイズしきい値Vthnoise 及びノイズ値記憶領域204に格納された仮クロストークノイズ値Niを読み出す。そして、ノイズ値比較部13は、ノイズしきい値Vthnoise と仮クロストークノイズ値Niを比較する。仮クロストークノイズ値Niがノイズしきい値Vthnoise 以下の場合には、ステップS109に進む。仮クロストークノイズ値Niがノイズしきい値Vthnoise より大きい場合には、ステップS105に進む。
(ホ)ステップS105において、第1制約値算出部14が、回路情報記憶領域201に格納された回路情報を読み出す。そして、第1制約値算出部14は、回路情報に基づき、回路に含まれるすべてのネットの信号立ち上がり時間の平均値Taveを算出する。更に、第1制約値算出部14は、ネット記憶領域203に格納されたネットの情報を読み出し、式(6)を用いて第1の制約値S1を算出する。算出された第1の制約値S1は、第1制約値記憶領域205に格納される。
(ヘ)ステップS106において、制約値比較部15が、ネット記憶領域203に格納されたネットの情報を読み出す。そして、制約値比較部15は、選択されたネットの信号立ち上がり時間Tsを算出する。次いで、ステップS107において、制約値比較部15は、第1制約値記憶領域205から第1の制約値S1を読み出し、ステップS106において算出された信号立ち上がり時間Tsと第1の制約値S1を比較する。信号立ち上がり時間Tsが第1の制約値S1以下の場合には、ステップS109に進む。信号立ち上がり時間Tsが第1の制約値S1より大きい場合には、ステップS108に進む。
(ト)ステップS108において、置換部16が回路情報記憶領域201に格納された回路情報、及びネット記憶領域203に格納されたネットの情報を読み出す。そして、置換部16は、選択されたネットの駆動ドライバを駆動力の大きなドライバで置換する。置換部16は、ライブラリ部30に格納された複数のドライバから、駆動ドライバを選択することができる。置換部16によりドライバが置換された回路情報は、回路情報記憶領域201に格納される。その後、ステップS106に戻る。つまり、ネットの信号立ち上がり時間Taが第1の制約値S1以下になるまで、ネットを駆動するドライバの置換が繰り返される。
(チ)ステップS109において、ネット選択部11が、回路情報記憶領域201に格納された回路情報に含まれるすべてのネットを選択したか否かを判断する。選択されていないネットがある場合には、ステップS102に戻る。すべてのネットが選択されていれば、処理を終了する。
以上に説明したように、本発明の第1の実施の形態に係る信号立ち上がり時間設定方法では、ネットに発生する最大のクロストークノイズがノイズしきい値Vthnoise より大きい場合に、ネットの信号立ち上がり時間Taが第1の制約値S1より大きいか否かが判定される。そして、ネットの信号立ち上がり時間Taが第1の制約値S1より大きい場合には、ネットの信号立ち上がり時間Taが第1の制約値S1以下になるように、ネットを駆動するドライバが駆動力の高いドライバで置換される。ネットを駆動するドライバを置換することにより、ネットの信号立ち上がり時間が設定される。その結果、ネットにおいてクロストークノイズ違反が発生する可能性を低減することができる。一方、ネットに発生する最大のクロストークノイズがノイズしきい値Vthnoise 以下である場合には、ネットを駆動するドライバを置換する必要がない。又、信号立ち上がり時間Taの算出は、クロストークノイズ値の算出より高速に行える。そのため、図1に示した信号立ち上がり時間設定方法によれば、クロストークノイズ値の算出とドライバの置換を繰り返してクロストークノイズ遅延の発生を予防する方法に比べ、設計期間を短縮することができる。
式(1)を用いて算出される仮クロストークノイズ値Ni、及び式(6)を用いて算出される第1の制約値S1は、詳細配線を行う前に算出可能である。そのため、例えばセル配置直後等の、半導体集積回路のレイアウト設計の上位段階において、図1に示した信号立ち上がり時間設定方法を適用可能である。つまり、詳細配線前に配線を駆動するドライバを置換するため、詳細配線後にセル配置の工程に戻る必要がない。その結果、クロストークノイズ違反の無い半導体集積回路を、設計期間の増大を招くことなく設計できる。特に、配線ルールが0.18μm以下の場合に、クロストークに起因する回路の誤動作が増加する傾向があるため、以上に説明した信号立ち上がり時間設定方法は有効である。
(第2の実施の形態)
本発明の第2の実施の形態に係る信号立ち上がり時間設定方法は、図5に示すように、配置情報に基づきネットの仮クロストーク遅延値を算出するステップと、半導体集積回路が正常動作するように設定される遅延しきい値と仮クロストーク遅延値とを比較するステップと、仮クロストーク遅延値が遅延しきい値より大きい場合に、ネットの信号立ち上がり時間の第2の制約値を算出するステップと、第1の制約値と第2の制約値との比較に基づき、第1の制約値を新たな第1の制約値に更新するステップとを更に含む点が、図1に示した信号立ち上がり時間設定方法と異なる。
図5に示した信号立ち上がり時間設定方法は、例えば図6に示す信号立ち上がり時間設定装置によって実行可能である。図6に示す信号立ち上がり時間設定装置は、遅延算出部17、遅延値比較部18、第2制約値算出部19、及び制約値更新部20を更に備える点が図2と異なる。又、図6に示す信号立ち上がり時間設定装置は、遅延しきい値記憶領域206、遅延値記憶領域207及び第2制約値記憶領域208を更に備える。その他の構成については、図2に示す信号立ち上がり時間設定装置と同様である。
遅延算出部17は、ネットの仮クロストーク遅延値Tiを算出する。遅延値比較部18は、ネットの仮クロストーク遅延値Tiと遅延しきい値Dthdelayを比較する。「遅延しきい値」は、半導体集積回路が正常動作するために許容できる最大のクロストーク遅延値として設定される。遅延しきい値Dthdelayは、例えばクリティカルパスのタイミングスラック値である。「タイミングスラック値」は、要求されるクリティカルパスの遅延時間と、回路素子が配置された後に見積もられるクリティカルパスの遅延時間の差である。例えば、要求されるクリティカルパスの遅延時間が5nsecの場合に、回路素子が配置された後に計算されるクリティカルパスの遅延時間が4.8nsecであれば、タイミングスラック値は0.2nsecになる。第2制約値算出部19は、第2の制約値S2を算出する。第2の制約値S2については後述する。制約値更新部20は、第1の制約値と第2の制約値との比較に基づき、第1の制約値を新たな第1の制約値に更新する。
遅延しきい値記憶領域206に、遅延しきい値Dthdelayが格納される。遅延値記憶領域207に、遅延算出部17により算出された仮クロストーク遅延値Tiが格納される。第2制約値記憶領域208に、第2制約値算出部19により算出された第2の制約値S2が格納される。
図5に示した信号立ち上がり時間の設定方法を説明する前に、ネットの仮クロストーク遅延値Tiの算出方法を説明する。最も大きなクロストーク遅延ノイズが発生する配線の配置は、ビクティムの両側にアグレッサが隣接する場合である。つまり、図3に示すように、ネット101、ネット103がアグレッサであり、ネット102がビクティムの場合に、ネット102に最も大きなクロストーク遅延が発生する。ネット102の総配線長Ln、ネット102の総容量値Cn、及びネット102の信号立ち上がり時間Taを用いて、ネット102の仮クロストーク遅延値Tiは、式(7)を用いて算出される。

Ti={(2×K×Ln)/Cn}×Ta ・・・・・(7)

第1の実施の形態で説明したように、係数Kはネット102の総容量値Cnに対するネット102の配線間容量の割合を示す定数である。
次に、ネット102に発生するクロストーク遅延に起因する回路の誤動作を防止するために、ネット102の信号立ち上がり時間に対して設定される第2の制約値の算出方法を説明する。
一般に、ビクティムとアグレッサが隣接して配置された場合のクロストーク遅延値Ddelayは、式(8)を用いて見積られる。

delay=1/(1+tx/tv))×(Cx/Ctotal)×tv ・・・・・(8)

式(8)において、txはアグレッサの信号立ち上がり時間、tvはビクティムの信号立ち上がり時間である。つまり、クロストーク遅延値Ddelayは、式(2)に示されたクロストークノイズ値Vnoiseにビクティムの信号立ち上がり時間tvを乗じた値である。又、Cxは配線間容量、Ctotalはネットの総容量である。式(8)で計算されるクロストーク遅延値Ddelayが、遅延しきい値Dthdelay以下であるためには、式(9)が満足されればよい。

1/(1+tx/tv)(Cx/Ctotal)×tv ≦ Dthdelay ・・・・・(9)

式(9)を変形すると、以下の式(10)になる。

x×tv 2−Ctotal×Dthdelay−Ctotal×Dthdelay×tx≦0 ・・・・・(10)

式(10)をビクティムの信号立ち上がり時間tv について解くと式(11)が得られる。

v≦P×{(1+(1+4×tx/P)1/2 )/ 2} ・・・・・(11)

式(11)で、

P=(Dthdelay×Ctotal)/Cx ・・・・・(12)

である。ここで、アグレッサの信号立ち上がり時間を回路全体の信号立ち上がり時間の平均値Taveと仮定して、ビクティムの信号立ち上がり時間の第2の制約値S2を設定する。ビクティムの信号立ち上がり時間tv が式(11)を満足すれば、ビクティムに発生するクロストーク遅延の大きさが遅延しきい値Dthdelay以下になる。つまり、第2の制約値S2は、式(13)を用いて算出される。

S2=P×{(1+(1+4×Tave/P)1/2 )/ 2} ・・・・・(13)

式(7)を用いて算出された仮クロストーク遅延値Tiは、図3に示したような、クロストーク遅延値が最大になる配線の配置を想定して計算された値である。そのため、仮クロストーク遅延値Ti以下であるネットに発生するクロストーク遅延は遅延しきい値Dthdelay以上にならない。又、式(13)を用いて算出される第2の制約値S2は、図3に示したネット101及びネット103の信号立ち上がり時間が平均値Taveの場合に、遅延しきい値Dthdelayを超えるクロストーク遅延が発生しないネット102の信号立ち上がり時間の最大値である。各ネットの信号立ち上がり時間を第2の制約値S2以下に設定することにより、平均的な信号立ち上がり時間を有するアグレッサによるクロストーク遅延違反を防止することができる。つまり、各ネットにおいて、クロストーク遅延違反が発生する可能性を最小限にすることができる。
以下に、本発明の第2の実施の形態に係る信号立ち上がり時間設定方法を、図5のフローチャート及び図6の信号立ち上がり時間設定装置を用いて説明する。
(イ)図5に示すステップS101において、図6に示した入力装置40を介して、半導体集積回路の回路情報が回路情報記憶領域201に格納される。又、ノイズしきい値記憶領域202に、ノイズしきい値Vthnoiseが格納される。更に、遅延しきい値記憶領域206に、遅延しきい値Dthdelayが格納される。
(ロ)ステップS102〜ステップS104において、図1を用いて説明したのと同様にして、半導体集積回路に含まれる一つのネットが選択され、選択されたネットの仮クロストークノイズ値Niが算出される。そして、仮クロストークノイズ値Niがノイズしきい値Vthnoise以下の場合は、ステップS110に進む。仮クロストークノイズ値Niがノイズしきい値Vthnoiseより大きい場合は、ステップS105に進み、式(6)を用いて第1の制約値S1が算出される。
(ハ)ステップS110において、遅延算出部17が、ネット記憶領域203に格納されたネットの情報を読み出す。そして、遅延算出部17は、式(7)を用いて、選択されたネットの仮クロストーク遅延値Tiを算出する。算出された仮クロストーク遅延値Tiは、遅延値記憶領域207に格納される。
(ニ)ステップS111において、遅延値比較部18が、遅延しきい値記憶領域206に格納された遅延しきい値Dthdelay及び遅延値記憶領域207に格納された仮クロストーク遅延値Tiを読み出す。そして、遅延値比較部18は、遅延しきい値Dthdelayと仮クロストーク遅延値Tiを比較する。仮クロストーク遅延値Tiが遅延しきい値Dthdelayより大きい場合には、ステップS113に進む。仮クロストーク遅延値Tiが遅延しきい値Dthdelay以下の場合には、ステップS112に進む。ステップS112において、仮クロストークノイズ値Niがノイズしきい値Vthnoise以下の場合は、ネットに発生する最大のクロストークノイズがノイズしきい値Vthnoise 以下であり、且つ、ネットに発生する最大のクロストーク遅延が遅延しきい値Dthnoise以下である。そのため、選択されたネットの駆動ドライバを置換する必要がなく、ステップS109に進む。一方、仮クロストークノイズ値Niがノイズしきい値Vthnoiseより大きい場合は、ステップS114に進む。
(ホ)ステップS113において、第2制約値算出部19が、回路情報記憶領域201に格納された回路情報を読み出す。そして、第2制約値算出部19は、回路情報に基づき、回路に含まれるすべてのネットの信号立ち上がり時間の平均値Taveを算出する。更に、第2制約値算出部19は、ネット記憶領域203に格納されたネットの情報を読み出し、式(13)を用いて第2の制約値S2を算出する。算出された第2の制約値S2は、第2制約値記憶領域208に格納される。
(ヘ)ステップS114において、制約値更新部20が第1の制約値S1を更新する。具体的には、制約値更新部20が第1の制約値S1と第2の制約値S2を比較する。そして、第2の制約値S2が第1の制約値S1より小さい場合は、制約値更新部20は、第2の制約値S2を新たな第1の制約値S1として更新する。仮クロストークノイズ値Niがノイズしきい値Vthnoise以下の場合には第1の制約値S1が算出されていない。その場合は、第2の制約値S2を新たな第1の制約値S1に更新する。
(ト)ステップS115において、制約値比較部15が、ネット記憶領域203に格納されたネットの情報を読み出す。そして、制約値比較部15は、選択されたネットの信号立ち上がり時間Taを算出する。次いで、ステップS116において、制約値比較部15は、ステップS115において算出された信号立ち上がり時間Taと、第1の制約値S1を比較する。信号立ち上がり時間Taが第1の制約値S1以下の場合には、ステップS109に進む。信号立ち上がり時間Taが第1の制約値S1より大きい場合には、ステップS117に進む。
(チ)ステップS117において、置換部16が回路情報記憶領域201に格納された回路情報、及びネット記憶領域203に格納されたネットの情報を読み出す。そして、置換部16は、選択されたネットの駆動ドライバを駆動力の大きなドライバで置換する。置換部16によりドライバが置換された回路情報は、回路情報記憶領域201に格納される。その後、ステップS115に戻る。つまり、ネットの信号立ち上がり時間Taが第1の制約値S1以下になるまで、ネットを駆動するドライバの置換が繰り返される。
(リ)ステップS109において、ネット選択部11が、回路情報記憶領域201に格納された回路情報に含まれるすべてのネットを選択したか否かを判断する。選択されていないネットがある場合には、ステップS102に戻る。すべてのネットが選択されていれば、処理を終了する。
以上に説明したように、本発明の第2の実施の形態に係る信号立ち上がり時間設定方法では、ネットに発生する最大のクロストーク遅延が遅延しきい値Dthnoiseより大きい場合に、第2の制約値S2が算出される。そして、第1の制約値S1及び第2の制約値S2のいずれか小さい値よりネットの信号立ち上がり時間Taが大きい場合には、ネットを駆動するドライバが駆動力の高いドライバで置換される。その結果、ネットにおいてクロストークノイズ違反及びクロストーク遅延違反が発生する可能性を低減することができる。一方、ネットに発生する最大のクロストークノイズがノイズしきい値Vthnoise 以下であり、且つ最大のクロストーク遅延が遅延しきい値Dthnoise以下である場合には、ネットを駆動するドライバを置換する必要がない。
式(7)を用いて算出される仮クロストーク遅延値Ti、及び式(13)を用いて算出される第2の制約値S2は、詳細配線を行う前に算出可能である。そのため、例えばセル配置直後等の、半導体集積回路のレイアウト設計の上位段階において、図5に示した信号立ち上がり時間設定方法を適用可能である。つまり、詳細配線後にセル配置の工程等に戻る必要がない。その結果、クロストーク遅延違反の無い半導体集積回路を、設計期間の増大を招くことなく設計することができる。他は、第1の実施の形態と実質的に同様であり、重複した記載を省略する。
(第3の実施の形態)
本発明の第3の実施の形態に係る信号立ち上がり時間設定方法は、図7に示すように、半導体集積回路の概略配線の配線密度及び単位長さあたりの自己配線容量に基づきネットの自己配線容量を算出するステップと、半導体集積回路の概略配線の配線密度及び単位長さあたりの配線間容量に基づきネットの配線間容量を算出するステップと、ネットの自己配線容量及び配線間容量を用いて、ネットの信号立ち上がり時間を算出するステップと、ネットの自己配線容量、配線間容量及び信号立ち上がり時間に基づき、ネットの仮クロストークノイズ値を算出するステップと、半導体集積回路が正常動作するように設定されるノイズしきい値と仮クロストークノイズ値とを比較するステップと、仮クロストークノイズ値がノイズしきい値より大きい場合に、ネットの信号立ち上がり時間の第1の制約値を算出するステップと、信号立ち上がり時間が第1の制約値以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換するステップとを含む。
図7に示した信号立ち上がり時間設定方法は、例えば図8に示す信号立ち上がり時間設定装置によって実行可能である。図8に示す信号立ち上がり時間設定装置は、概略配線部21、配線密度算出部22、自己配線容量算出部23、配線間容量算出部24、及び立ち上がり時間算出部25を更に備える点が図6と異なる。又、図8に示す信号立ち上がり時間設定装置は、単位容量記憶領域209、概略配線記憶領域210、配線密度記憶領域211、自己配線容量記憶領域212、配線間容量記憶領域213、立ち上がり時間記憶領域214、及び平均値記憶領域215を更に備える。その他の構成については、図6に示す信号立ち上がり時間設定装置と同様である。
概略配線部21は、回路情報に基づき概略配線処理を行う。「概略配線処理」については後述する。配線密度算出部22は、後述する方法により、概略配線の配線密度を算出する。自己配線容量算出部23は、ネットの自己配線容量を算出する。配線間容量算出部24は、概略配線の配線密度及び単位長さあたりの配線間容量に基づき、半導体集積回路に含まれるネットの配線間容量を算出する。立ち上がり時間算出部25は、半導体集積回路に含まれるネットの信号立ち上がり時間を算出する。
単位容量記憶領域209に、配線密度毎の単位長さあたりの自己配線容量及び配線間容量が格納される。概略配線記憶領域210に、概略配線処理の結果が格納される。配線密度記憶領域211に、概略配線の配線密度が格納される。自己配線容量記憶領域212にネットの自己配線容量が格納される。配線間容量記憶領域213にネットの配線間容量が格納される。立ち上がり時間記憶領域214にネットの信号立ち上がり時間が格納される。平均値記憶領域215にすべてのネットの信号立ち上がり時間の平均値が格納される。
「概略配線処理」は、回路情報に含まれる各ネットの配置を概略的に行う工程である。概略配線処理を行った例を図9に示す。図9に示した例では、破線で示された12行12列の概略格子に分割されたチップ領域300に、回路素子301〜308が配置されている。回路素子301と回路素子302が概略配線311で接続され、回路素子303と回路素子304が概略配線312で接続されている。更に、回路素子305と回路素子306が概略配線313で接続され、回路素子307と回路素子308が概略配線314で接続されている。概略配線311〜314が、それぞれ通過する概略格子を決定する処理が概略配線処理である。概略配線311〜314がそれぞれ通過する概略格子は、図9に示した例以外にも選択することができる。又、通常の概略配線処理では、各概略格子に10本〜30本程度の概略配線が通過可能である。
本発明の第3の実施の形態に係る信号立ち上がり時間設定方法では、概略配線の配線密度、及び配線密度に基づいて算出される概略配線の自己配線容量及び配線間容量を使用する。そのため、概略格子の配線密度を計算する方法を以下に説明する。概略格子の配線密度は、概略格子を通過可能な概略配線の総数に対する、実際に概略格子を通過する概略配線の本数の比として計算される。例えば、20本の概略配線が通過可能な概略格子に15本の概略配線が通過している場合は、配線密度は75%である。
次に、概略格子の配線密度に基づき、概略配線の配線間容量を算出する方法を説明する。例えば、図10に示した概略配線320の配線間容量を算出する例を以下に示す。図10に示すように、概略配線320は回路素子307と回路素子308間に配置され、概略格子330a〜330lを通過する。図10の概略格子330a〜330lの下に、各概略格子の配線密度が記載されている。ここで、概略格子330a〜330lを通過可能な概略配線の総数を4本とする。概略格子330a〜330c、330lは、概略配線320のみが通過しているため、配線密度は25%である。概略格子330d〜330fは、概略配線320及び概略配線321が通過しているため、配線密度は50%である。概略格子330h〜330kは、概略配線320、概略配線321及び概略配線322が通過しているため、配線密度は75%である。
一方、配線密度毎の単位長さあたりの配線間容量は、電磁界シミュレータ等により予め求めることができる。そのため、概略配線320が通過する概略格子330a〜330lの配線密度に基づき、概略配線320の配線間容量を算出できる。図11に、概略配線320の配線間容量を算出した例を示す。図11に示した例では、配線密度25%、50%及び75%における概略格子あたりの配線間容量が、それぞれ0fF、2fF及び4fFである。概略配線320が通過する概略格子の数は、配線密度25%の概略格子が4個、配線密度50%の概略格子が5個、配線密度75%の概略格子が4個である。その結果、図11に示すように、概略配線320の配線間容量は26fFである。自己配線容量も配線間容量と同様の方法で求めることができる。
以上に説明した方法により算出された概略配線の配線間容量に基づき、半導体集積回路に含まれる各ネットの配線間容量を算出することができる。つまり、各ネットに含まれる概略配線の配線間容量の和として、各ネットの配線間容量をそれぞれ算出することができる。各ネットの自己配線容量も同様に求めることができる。更に、算出されたネットの自己配線容量及び配線間容量から、それぞれのネットの信号立ち上がり時間、及びすべてのネットの信号立ち上がり時間の平均値を算出することができる。
概略配線の自己配線容量、配線間容量及びピン容量に基づき算出されたネットの総容量Cn、概略配線の配線間容量に基づき算出されたネットの配線間容量Cl、ネットの信号立ち上がり時間Tb、及びすべてのネットの信号立ち上がり時間の平均値Taveを用いて、ネットの仮クロストークノイズ値Niは式(14)により算出される。

Ni=(1/(1+Tave/Tb))×Cl/Cn ・・・・・(14)

第1の制約値S1は、式(15)を用いて算出される。

S1= Tave/{(Cl/Cn)×(1/Vthnoise)−1} ・・・・・(15)

又、ネットの配線間容量Cl、信号立ち上がり時間Tb、及び平均値Taveを用いてネットの仮クロストーク遅延値Tiは、式(16)を用いて算出される。

Ti=(1/(1+Tave/Tb)){Cl/Cn}×Tb ・・・・・(16)

更に、第2の制約値S2は、式(17)を用いて算出される。

S2=PEST×{(1+(1+4×Tave/PEST1/2 )/ 2}・・・・・(17)

式(17)で、

EST=(Dthdelay×Ctotal)/Cl ・・・・・(18)

である。
式(14)〜式(18)を用いて算出される仮クロストークノイズ値Ni、第1の制約値S1、仮クロストーク遅延値Ti、及び第2の制約値S2は、概略配線の配線間容量に基づき算出されたネットの配線間容量Cl、信号立ち上がり時間Tb、及び平均値Taveを用いて算出される。そのため、係数Kを用いてネットの配線間容量を2×K×Lnに仮定して算出された場合より精度が高い。
以下に、本発明の第3の実施の形態に係る信号立ち上がり時間設定方法を、図7のフローチャート及び図8の信号立ち上がり時間設定装置を用いて説明する。
(イ)図7に示すステップS101において、図8に示した入力装置40を介して、半導体集積回路の回路情報が回路情報記憶領域201に格納される。又、ノイズしきい値記憶領域202に、ノイズしきい値Vthnoiseが格納される。更に、遅延しきい値記憶領域206に、遅延しきい値Dthdelayが格納される。配線密度毎の単位長さあたりの自己配線容量及び配線間容量が、単位容量記憶領域209に格納される。
(ロ)ステップS11において、概略配線部21が、回路情報記憶領域201に格納された回路情報を読み出す。そして、概略配線部21は、回路素子が配置されたチップ領域を複数の概略格子に分割する。次いで、概略配線部21は、概略配線処理を行う。概略配線処理の結果は、概略配線記憶領域210に格納される。
(ハ)ステップS12において、配線密度算出部22が、概略配線記憶領域210に格納された概略配線処理の結果を読み出す。そして、配線密度算出部22は、図10を用いて説明した方法により、各概略配線の配線密度を算出する。算出された配線密度は、配線密度記憶領域211に格納される。
(ニ)ステップS13において、自己配線容量算出部23が、配線密度記憶領域211に格納された配線密度、及び単位容量記憶領域209に格納された単位長さあたりの自己配線容量を読み出す。そして、自己配線容量算出部23は、各ネットの自己配線容量を算出する。算出された自己配線容量は、自己配線容量記憶領域212に格納される。
(ホ)ステップS14において、配線間容量算出部24が、配線密度記憶領域211に格納された配線密度、及び単位容量記憶領域209に格納された単位長さあたりの配線間容量を読み出す。そして、配線間容量算出部24は、図11を用いて説明した方法により、各ネットの配線間容量を算出する。算出された配線間容量は、配線間容量記憶領域213に格納される。
(ヘ)ステップS15において、立ち上がり時間算出部25が、自己配線容量記憶領域212に格納された自己配線容量及び配線間容量記憶領域213に格納された配線間容量を読み出す。そして、立ち上がり時間算出部25は、半導体集積回路に含まれる各ネットの信号立ち上がり時間Tbを算出する。算出された信号立ち上がり時間Tbは、立ち上がり時間記憶領域214に格納される。又、立ち上がり時間算出部25は、すべてのネットの信号立ち上がり時間の平均値Taveを算出する。算出された信号立ち上がり時間の平均値Taveは、平均値記憶領域215に格納される。
(ト)ステップS102〜ステップS117において、図5を用いて説明したのと同様にして、ネットにおいてクロストークノイズ違反及びクロストーク遅延違反が発生する可能性を低減する。即ち、半導体集積回路に含まれる一つのネットが選択される。そして、ノイズ算出部12が選択されたネットの仮クロストークノイズ値Niを算出する。仮クロストークノイズ値Niは、式(14)を用いて算出される。仮クロストークノイズ値Niがノイズしきい値Vthnoise より大きい場合には、第1制約値算出部14が、式(15)を用いて第1の制約値S1を算出する。更に、遅延算出部17が、式(16)を用いて仮クロストーク遅延値Tiを算出する。仮クロストーク遅延値Tiが遅延しきい値Dthdelayより大きい場合は、第2制約値算出部19が、式(17)を用いて第2の制約値S2を算出する。その後、第1の制約値S1と第2の制約値S2の比較に基づき、第1の制約値S1を新たな第1の制約値S1に更新する。そして、信号立ち上がり時間Tbが第1の制約値S1以下になるまで、ネットを駆動するドライバを駆動力の高いドライバで置換する。なお、ステップS115において、立ち上がり時間算出部25が、配線間容量記憶領域213に格納された配線間容量を用いて、選択されたネットの信号立ち上がり時間Tbを算出する。
以上に説明したように、本発明の第3の実施の形態に係る信号立ち上がり時間設定方法では、概略配線の配線間容量に基づき計算されたネットの配線間容量Clを用いることにより、仮クロストークノイズ値Ni、仮クロストーク遅延値Ti及び信号立ち上がり時間等を、ネットの総配線長Ln及び係数Kを用いて計算されたネットの配線間容量を用いる場合よりも、高い精度で算出することができる。その結果、クロストークノイズ違反及びクロストーク遅延違反が発生する可能性を更に低減できる。又、本発明の第3の実施の形態に係る信号立ち上がり時間設定方法によれば、詳細配線の前にネットの信号立ち上がり時間を設定できる。その結果、クロストークノイズ違反及びクロストーク遅延違反の無い半導体集積回路を、設計期間の増大を招くことなく設計することができる。他は、第2の実施の形態と実質的に同様であり、重複した記載を省略する。
(その他の実施の形態)
上記のように、本発明は第1乃至第3の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
既に述べた第1乃至第3の実施の形態の説明においては、先ずクロストークノイズ違反について判定され、その後、クロストーク遅延違反について判定されていた。しかし、クロストーク遅延違反についてのみ判定し、ネットの信号立ち上がり時間を設定してもよい。
このように、本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
本発明の第1の実施の形態に係る信号立ち上がり時間設定方法を示すフローチャートである。 本発明の第1の実施の形態に係る信号立ち上がり時間設定装置の構成を示す模式図である。 本発明の第1の実施の形態に係る信号立ち上がり時間設定方法によりクロストークの影響が計算される配線の配置を示す模式図である。 本発明の第1の実施の形態に係る信号立ち上がり時間設定方法によりクロストークの影響が計算される配線の総配線長を見積もる方法の例を説明するための模式図である。 本発明の第2の実施の形態に係る信号立ち上がり時間設定方法を示すフローチャートである。 本発明の第2の実施の形態に係る信号立ち上がり時間設定装置の構成を示す模式図である。 本発明の第3の実施の形態に係る信号立ち上がり時間設定方法を示すフローチャートである。 本発明の第3の実施の形態に係る信号立ち上がり時間設定装置の構成を示す模式図である。 本発明の第3の実施の形態に係る信号立ち上がり時間設定方法による概略配線処理を説明するためのチップ領域の上面図である。 本発明の第3の実施の形態に係る信号立ち上がり時間設定方法による概略配線の配線間容量を算出する方法を説明するための模式図である。 本発明の第3の実施の形態に係る信号立ち上がり時間設定方法により算出された概略配線の配線間容量の例を示す表である。
符号の説明
12…ノイズ算出部
13…ノイズ値比較部
14…第1制約値算出部
16…置換部
17…遅延算出部
18…遅延値比較部
19…第2制約値算出部
20…制約値更新部
23…自己配線容量算出部
24…配線間容量算出部
25…立ち上がり時間算出部
201…回路情報記憶領域
202…ノイズしきい値記憶領域
205…第1制約値記憶領域
206…遅延しきい値記憶領域
209…単位容量記憶領域
211…配線密度記憶領域
212…自己配線容量記憶領域
213…配線間容量記憶領域
214…立ち上がり時間記憶領域

Claims (5)

  1. ノイズ算出部が、半導体集積回路を構成する回路素子の配置情報を回路情報記憶領域から読み出し、該配置情報に基づき、ネットの仮クロストークノイズ値を算出するステップと、
    ノイズ値比較部が、前記半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、該ノイズしきい値と前記仮クロストークノイズ値とを比較するステップと、
    前記仮クロストークノイズ値が前記ノイズしきい値より大きい場合に、第1制約値算出部が前記ネットの信号立ち上がり時間の第1の制約値を算出し、該第1の制約値を第1制約値記憶領域に格納するステップと、
    前記ネットの信号立ち上がり時間が前記第1の制約値以下になるまで、置換部が前記ネットを駆動するドライバを駆動力の高いドライバで置換するステップ
    とを含むことを特徴とする信号立ち上がり時間設定方法。
  2. 前記ノイズ算出部は、前記ネットの仮クロストークノイズを前記ネットの配線長に基づき算出することを特徴とする請求項1に記載の信号立ち上がり時間設定方法。
  3. 遅延算出部が、前記配置情報を前記回路情報記憶領域から読み出し、該配置情報に基づき、前記ネットの仮クロストーク遅延値を算出するステップと、
    遅延値比較部が、前記半導体集積回路が正常動作するように設定される遅延しきい値を遅延しきい値記憶領域から読み出し、該遅延しきい値と前記仮クロストーク遅延値とを比較するステップと、
    前記仮クロストーク遅延値が前記遅延しきい値より大きい場合に、第2制約値算出部が前記ネットの信号立ち上がり時間の第2の制約値を算出するステップと、
    制約値更新部が、前記第1の制約値を前記第1制約値記憶領域から読み出し、前記第1の制約値と前記第2の制約値との比較に基づき、前記第1の制約値を新たな第1の制約値に更新するステップ
    とを更に含むことを特徴とする請求項1又は2に記載の信号立ち上がり時間設定方法。
  4. 自己配線容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、前記概略配線の単位長さあたりの自己配線容量を単位容量記憶領域からそれぞれ読み出し、読み出した前記配線密度及び前記単位長さあたりの自己配線容量に基づきネットの自己配線容量を算出し、該ネットの自己配線容量を自己配線容量記憶領域に格納するステップと、
    配線間容量算出部が、半導体集積回路の概略配線の配線密度を配線密度記憶領域から、前記概略配線の単位長さあたりの配線間容量を単位容量記憶領域からそれぞれ読み出し、読み出した前記配線密度及び前記単位長さあたりの配線間容量に基づきネットの配線間容量を算出し、該ネットの配線間容量を配線間容量記憶領域に格納するステップと、
    立ち上がり時間算出部が、前記ネットの自己配線容量及び前記ネットの配線間容量を用いて、前記ネットの信号立ち上がり時間を算出し、該信号立ち上がり時間を立ち上がり時間記憶領域に格納するステップと、
    ノイズ算出部が、前記ネットの自己配線容量を前記自己配線容量記憶領域から、前記ネットの配線間容量を前記配線間容量記憶領域からそれぞれ読み出し、前記ネットの自己配線容量、前記ネットの配線間容量及び前記信号立ち上がり時間に基づき、前記ネットの仮クロストークノイズ値を算出するステップと、
    ノイズ値比較部が、前記半導体集積回路が正常動作するように設定されるノイズしきい値をノイズしきい値記憶領域から読み出し、該ノイズしきい値と前記仮クロストークノイズ値とを比較するステップと、
    前記仮クロストークノイズ値が前記ノイズしきい値より大きい場合に、第1制約値算出部が前記ネットの信号立ち上がり時間の第1の制約値を算出し、該第1の制約値を第1制約値記憶領域に格納するステップと、
    前記信号立ち上がり時間が前記第1の制約値以下になるまで、置換部が前記ネットを駆動するドライバを駆動力の高いドライバで置換するステップ
    とを含むことを特徴とする信号立ち上がり時間設定方法。
  5. 遅延算出部が、前記ネットの自己配線容量を前記自己配線容量記憶領域から、前記ネットの配線間容量を前記配線間容量記憶領域から、前記信号立ち上がり時間を前記立ち上がり時間記憶領域からそれぞれ読み出し、読み出した前記ネットの自己配線容量、前記ネットの配線間容量及び前記信号立ち上がり時間に基づき、前記ネットの仮クロストーク遅延値を算出するステップと、
    遅延値比較部が、前記半導体集積回路が正常動作するように設定される遅延しきい値を遅延しきい値記憶領域から読み出し、該遅延しきい値と前記仮クロストーク遅延値とを比較するステップと、
    前記仮クロストーク遅延値が前記遅延しきい値より大きい場合に、第2制約値算出部が前記ネットの信号立ち上がり時間の第2の制約値を算出するステップと、
    制約値更新部が、前記第1の制約値を前記第1制約値記憶領域から読み出し、前記第1の制約値と前記第2の制約値との比較に基づき、前記第1の制約値を新たな第1の制約値に更新するステップ
    とを更に含むことを特徴とする請求項4に記載の信号立ち上がり時間設定方法。
JP2005073769A 2005-03-15 2005-03-15 信号立ち上がり時間設定方法 Pending JP2006259904A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005073769A JP2006259904A (ja) 2005-03-15 2005-03-15 信号立ち上がり時間設定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005073769A JP2006259904A (ja) 2005-03-15 2005-03-15 信号立ち上がり時間設定方法

Publications (1)

Publication Number Publication Date
JP2006259904A true JP2006259904A (ja) 2006-09-28

Family

ID=37099124

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005073769A Pending JP2006259904A (ja) 2005-03-15 2005-03-15 信号立ち上がり時間設定方法

Country Status (1)

Country Link
JP (1) JP2006259904A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016038848A1 (ja) * 2014-09-09 2016-03-17 日本電気株式会社 制御回路、制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016038848A1 (ja) * 2014-09-09 2016-03-17 日本電気株式会社 制御回路、制御方法
CN106688090A (zh) * 2014-09-09 2017-05-17 日本电气株式会社 控制电路和控制方法
JPWO2016038848A1 (ja) * 2014-09-09 2017-08-03 日本電気株式会社 制御回路、制御方法

Similar Documents

Publication Publication Date Title
JP4501728B2 (ja) クロストークエラー制御装置、クロストークエラー制御方法およびクロストークエラー制御プログラム
US8171446B2 (en) Method for designing a semiconductor device by computing a number of vias, program therefor, and semiconductor device
US20110055784A1 (en) Multi-threaded global routing
KR102103617B1 (ko) 자동 클럭 트리 라우팅 규칙 생성
US8266570B2 (en) Density-based area recovery in electronic design automation
US11030383B2 (en) Integrated device and method of forming the same
US20120299627A1 (en) Clock mesh synthesis with gated local trees and activity driven register clustering
JP4630718B2 (ja) クロック配線装置及びクロック配線方法
US7454724B2 (en) Method and apparatus distribution power suply pad of semiconductor integrated circuit
US9147030B2 (en) Multiple-instantiated-module (mim) aware pin assignment
US10089433B2 (en) Method for triple-patterning friendly placement
JP2005142226A (ja) 半導体集積回路およびその設計方法
US10424518B2 (en) Integrated circuit designing system and a method of manufacturing an integrated circuit
JP2006252319A (ja) 半導体集積回路の設計装置及び自動設計方法
JP2006259904A (ja) 信号立ち上がり時間設定方法
US8527927B2 (en) Zone-based area recovery in electronic design automation
JP4521309B2 (ja) 半導体集積回路の解析装置及び解析方法
US11126770B2 (en) Method of semiconductor integrated circuit, circuit design system, and non-transitory computer-readable medium
JP2006261458A (ja) クロックツリー安定化装置、および半導体装置
JP2008130710A (ja) 半導体集積回路のレイアウト方法および半導体集積回路のレイアウトプログラム
JP2000322462A (ja) 自動レイアウト装置および半導体集積回路設計方法
JP2002141471A (ja) 半導体集積回路設計方法と半導体集積回路
JP5298946B2 (ja) 設計支援プログラム、設計支援装置、および設計支援方法
Moosa On Improving Maze Routing Algorithms
JP2009086700A (ja) 半導体特性調整プログラム、半導体特性調整方法および半導体特性調整装置