JPH1012740A - 網重み付けによるタイミング・ドリブン配置 - Google Patents

網重み付けによるタイミング・ドリブン配置

Info

Publication number
JPH1012740A
JPH1012740A JP9059255A JP5925597A JPH1012740A JP H1012740 A JPH1012740 A JP H1012740A JP 9059255 A JP9059255 A JP 9059255A JP 5925597 A JP5925597 A JP 5925597A JP H1012740 A JPH1012740 A JP H1012740A
Authority
JP
Japan
Prior art keywords
slack
design
network
weight
resistance
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
JP9059255A
Other languages
English (en)
Inventor
T Gora Robert
ロバート・ティ・ゴラ
H Olson Christopher
クリストファー・エイチ・オルソン
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH1012740A publication Critical patent/JPH1012740A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 集積回路を設計するためのタイミング・ドリ
ブン配置システム及び方法を提供する。 【解決手段】 本方法は、導電要素により接続される回
路コンポーネントのブロックを有する、複数の網を識別
するステップと、網内のタイミング及び抵抗−容量性
(RC)効果に比例して、網に重みを割当てるステップ
とを含む。好適な実施例では、重みが従来の配置プログ
ラムにより、最終配置を獲得するために使用される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はコンピュータ・シス
テムに関し、特に、集積回路及びその自動物理レイアウ
トのコンピュータ支援設計のためのシステム及び技術に
関する。
【0002】
【従来の技術】大規模集積回路設計は、数千の回路及び
コンポーネントがチップ上に物理的に配置され、接続さ
れることを要求する。これは特に、回路をチップ上で設
計、配置、及び接続する実際のプロセスが、その性能及
びタイミング要求に影響を及ぼす場合、非常に時間を消
費する。従って、予め設計された回路を機能チップに迅
速に配置し、配線するために、設計プロセスを自動化す
ることが必要となる。自動化は通常、1時間当たりのコ
ストが高い強力なコンピュータを用いて達成される。
【0003】従って従来の自動化技術は、しばしば、最
小の設計計算時間のために、回路性能を犠牲にした。設
計される機能チップがコンピュータの中央処理ユニット
であったり、または性能が重要視され、設計の複雑度が
高い他のチップの場合、性能面の犠牲は許容されず、自
動化技術は制限付きの有用性を有することになる。
【0004】この性能面の犠牲は通常、複雑な論理回路
においてタイミング閉鎖(timing closure)を獲得でき
ない事実として明らかになる。タイミング閉鎖は、論理
設計時にチップ上で情報を処理するために許容される時
間と、物理設計時にチップ上で情報を処理するために要
求される時間との差である。従ってタイミング閉鎖は、
物理的に配置され配線されたチップが論理設計により要
求されるほど高速でない場合、遭遇されない。
【0005】従来の自動配置及び配線技術の性能面の犠
牲は、2つの主な領域に当てはまる。第1は、従来の技
術が主に、個々の回路を接続する個々の配線の長さに関
連することである。IBMによるCPLACEが、こう
した配置アルゴリズムの1つの例である。CPLACE
は、非常に多数の回路素子ブロックにわたる総線長を最
小化しようとする。しかしながら、CPLACEはタイ
ミング及び負荷を考慮しない。
【0006】第2は、他の従来技術において、タイミン
グに対する物理配置効果を分析する際、それらを回路全
体の詳細なタイミング・モデルから計算することであ
る。この分析は多大な計算時間を要求するため、全ての
回路配置変更におけるタイミング・モデルの使用を限定
する。
【0007】上述の問題に対する幾つかの解決策には、
クリティカルな論理網に対して、配線プログラムの感度
を向上させることが含まれる。クリティカルな論理網と
は、他の論理網と比較して、チップ性能全体に及ぼす影
響が大きいチップ内の回路である。配線プログラムの高
感度化は、これらの論理網を識別し、それらをプログラ
ムの開始時近くに配線することにより、後のチップ配線
の混雑を処理する必要性を回避し、従って、できる限り
短く配線する大きな機会を与える。この種の高感度化は
また、基準線の最大交差数の最小化を含む。交差数は、
チップ性能を向上させる配線内の屈曲の数、すなわち最
小の屈曲数を示す。なぜなら、屈曲は回路性能を妨げる
からである。この技術は性能を改良するが、クリティカ
ル網を生成した回路の物理配置を解決しない。
【0008】別のアプローチは、物理設計の後に、チッ
プの完全なタイミング分析を実施し、クリティカル領
域、すなわち物理設計がクリティカル論理網に多大な遅
延を追加した領域を識別する。これらの領域が見い出さ
れると、性能への影響を最小化するように、個々の回路
が再編成され得る。これに関する問題は、回路の数が増
加するとき、または配線チャネルが密集するとき、個々
の変更が困難になり、その実現に時間を要することであ
る。また、個々の変更の複雑性及びそれらが設計に与え
る影響を軽減するために、実行される変更の数が制限さ
れなければならない。自動化を要求するチップは、通
常、多数の回路を有するので、これらの難点が代わりに
この設計を制限することになる。
【0009】更に別の設計自動化アプローチでは、チッ
プが配線された後に、チップ内の回路の位置を自動的に
交換し、タイミング・パラメータを再計算する。このプ
ロシジャは、過度な計算時間を招く。なぜなら、2つの
回路だけの交換によっても、通常多くのパスが影響を受
けるからである。従って、位置交換が、特定の形式にお
いて、回路に多大な影響を与えると判定される物理的及
び論理的クリティカル・パスだけに制限される。どの回
路を交換するかに関するこの制限は、自動化プロシジャ
の有効性を制限する。なぜなら、回路の多くの物理位置
が評価されないために、どの回路を交換するかの判定が
これらの可能性を考慮しないからである。
【0010】更に別の設計自動化アプローチは、チップ
設計の全ての論理網内の配線の最大長に対して、上限を
設定する。自動配線は困難であるが、上限の使用は線長
を最小化するよりもむずかしくない。このアプローチ
は、スラックを、特殊な注意を要する論理網を配線プロ
グラムにより優先順位化する手段として評価する。スラ
ックは、設計(論理)遅延と、配線プログラムからの実
際の遅延(配線遅延の追加後)との差である。スラック
が正の場合、論理網は設計基準を満足し、追加のプログ
ラムの注意を得ることはない。スラックが負の場合に
は、スラックが正になるまで、論理網が再経路指定され
る。
【0011】他の技術の場合同様、このプログラムは配
線される回路の配置を考慮しない。従って、多くの配置
のケースが決して考慮されず、配線または性能が最適に
なりにくい。
【0012】以上から、改良された配置技術が要求され
る。この要求はある程度、Agrawalらによる米国特許番
号第5218551号"Timing Driven Placement"(1
993年6月8日出願)により解決される。この特許
は、集積回路の設計のための配置方法を開示し、そこで
は工程(ステップ)が、形式タイミング・ドリブン階層
により最適化される。この特許は上述の要求をある程度
解決するが、容量性素子及び抵抗−容量性(RC)遅延
の存在により生成される効果を十分には解決しない。抵
抗性及び容量性効果は、コンポーネント間の配線、及び
回路内の多数の半導体接合に固有である。容量性素子
は、遅延要素を追加することにより、回路の設計に影響
を及ぼす。この遅延は動作スピード、従ってシステムの
性能を制限する。
【0013】
【発明が解決しようとする課題】こうした要因が配置プ
ロセスの間に考慮されるべきであり、集積回路の配置設
計における抵抗性及び容量性効果、並びに遅延を解決す
る効果的なシステム及び技術が期待される。
【0014】
【課題を解決するための手段】上述の要求が、集積回路
設計のためのタイミング・ドリブン配置システム及び方
法を提供する本発明により、解決される。本方法は、導
電要素により接続される回路コンポーネントのブロック
を有する、複数の論理網を識別するステップと、タイミ
ング及び抵抗−容量性(RC)効果に比例して、論理網
に重みを割当てるステップと、重みに従い回路コンポー
ネント間の線長を最小化するように、回路コンポーネン
トの位置を選択するステップとを含む。
【0015】特定の実施例では、重みの割当てが次のよ
うに達成される。すなわち、考慮中の論理網のシンク・
ピンの最悪な場合の抵抗−容量性遅延(Net_RC)を計算
し、論理網のピンに関連付けられる最小抵抗−容量性遅
延しきい値(Min_RC_Design)を設定し、考慮中の論理
網のシンク・ピンの最悪な場合の抵抗−容量性遅延(Ne
t_RC)から、最小抵抗−容量性遅延しきい値(Min_RC_D
esign)を減算して第1の差分項(Net_RC−Min_RC_Desi
gn)を獲得し、論理網の抵抗−容量性遅延の上限(UPPE
R_RC)を設定し、上限(UPPER_RC)から最小抵抗−容量
性遅延しきい値(Min_RC_Design)を減算して第2の差
分項(UPPER_RC−Min_RC_Design)を獲得し、第1の差
分項を第2の差分項により除算して第1の比率(Net_RC
−Min_RC_Design)/(UPPER_RC−Min_RC_Design)を獲
得し、RC遅延値対スラック値に割当てる相対百分率重
み(FRAC_RC)を設定し(ここでスラック値は考慮中の
論理網における論理結果の測定到来時刻と期待到来時刻
との差を表す)、第1の比率を相対百分率重み(FRAC_R
C)の100倍と乗算して第1の総和項を獲得し、考慮
中の論理網の最大または最悪スラック(Net_SLACK)を
決定し、UPPER_SLACKからNet_SLACKを減算して第3の差
分項を獲得し、回路内の任意の論理網に関連付けられる
最小スラック(Min_SLACK_Design)を決定し、UPPER_SL
ACKから任意の論理網に関連付けられる最小スラックを
減算して第4の差分項を獲得し、第3の差分項を第4の
差分項により除算して第2の比率を獲得し、第2の比率
を(1−FRAC_RC)×100と乗算して第2の総和項を獲得
し、第1及び第2の総和項を加算し、第1及び第2の総
和項に定数を加算して論理網に対する重みを獲得する。
【0016】好適な実施例では、重みがCPLACEな
どの従来の配置プログラムにより、最終配置を獲得する
ために使用される。本方法は、CPLACEまたは他の
互換プログラムを実行する従来のコンピュータ・システ
ムにおいて、前処理ステップとしてコンピュータ・プロ
グラム内で実現されうる。
【0017】
【発明の実施の形態】添付の図面を参照しながら、本発
明の実施例及び典型的なアプリケーションについて述
べ、その利点を開示することにする。
【0018】本発明はここでは、特定のアプリケーショ
ンにおける実施例に関して述べられるが、本発明がそれ
らに制限されるものでないことを最初に述べておく。当
業者並びにここで提示される教示を参照する者は、本発
明の範囲内で、追加の変更、アプリケーション、及び実
施例を認識されよう。
【0019】本方法は、配置プロセスの間にRC問題及
びタイミング問題を考慮するために、IBMによるCP
LACEや、Cadense Design Systems社によるCell
3などの、標準的なセル配置アルゴリズムを許容する。
本発明のプログラムが一連の重みを生成し、これらが配
置プロセスの間に従来の配置プログラムにより使用され
る。例えばCPLACEは設計内のあらゆる論理網を、
デフォルト指定の10の網重みにより処理する。配置プ
ログラム内における100の網重みは、その網が1個の
網である代わりに、あたかも10個の網であるかのよう
に処理されることを可能にする。網重みのこの増加は、
CPLACEに対して、配置プロセスの間に、10の網
重みよりも100の網重みの方に、より大きな配慮を払
うように指示する。配置プログラムは所与の設計におい
て、総線長を最小化しようと努める。従って、100の
網重みは、網が10の網重みの場合よりも短い経路を有
するように指示し、このことは容量性効果、RC遅延、
及びタイミング問題の点で有利である。
【0020】本発明は網重み付けの使用を通じて、タイ
ミング・ドリブン配置を達成する。クリティカル網及び
(または)大きなRC遅延を有する網の網重みを増加す
ることにより、設計自身の配線能力を犠牲にすること無
しに、タイミングの点でより好適な配置に至ることを可
能にする。
【0021】図1は、本発明に従う集積回路設計方法の
実施例のフロー図である。この方法10は、コンピュー
タ支援設計(CAD)システム(図示せず)において実
現されうる。最初に、回路の論理設計が従来通りにセッ
トされる(ステップ14)。次に、論理設計の要求を満
足する回路が設計される(ステップ16)。ステップ1
8で、初期タイミング評価が完了される。次にステップ
20で、本発明に従い、回路の網に対して、タイミング
及び抵抗−容量性(RC)効果を考慮した一連の重みが
提供される。重みが次に、CPLACEなどの従来の大
域配置プログラムにより、回路のコンポーネント間の電
気接続の長さを最小化するために使用される(ステップ
22)。最後にステップ24で、回路がステップ22で
決定された配置に従い配線される。
【0022】図2は、本発明に従い、初期の抵抗−容量
性及びタイミング・ドリブン網重みを割当てる方法のフ
ロー図である。各網が個々に考慮される。考慮中の網の
最大スラックが、スラックのユーザ定義上限よりも大き
い場合、ステップ20で、タイミング的にクリティカル
な全ての網に対して、重みが生成される('スラック'
は、考慮中の網における論理結果の測定到来時刻と期待
到来時刻との差を表す技術用語である)。
【0023】本発明の方法によれば、ステップ28で、
考慮中の網のシンク・ピンの最悪な場合の抵抗−容量性
遅延が、従来のタイミング・ツールを用いて計算され
る。ステップ30で、網のピンに対する最小抵抗−容量
性遅延しきい値が設定される。ステップ32で、最小抵
抗−容量性遅延しきい値が、考慮中の網のシンク・ピン
の最悪な場合の抵抗−容量性遅延から減算され、第1の
差分項が獲得される。次にステップ34で、網の抵抗−
容量性遅延の上限が設定される。ステップ36で、最小
抵抗−容量性遅延しきい値が、網のRC遅延の上限から
減算され、第2の差分項が獲得される。ステップ38
で、第1の差分項が第2の差分項により除算され、第1
の比率が獲得される。ステップ40で、第1の比率が、
ステップ42でRC遅延値対スラック値に割当てられた
相対百分率重みと乗算される。ステップ40で、第1の
比率が相対百分率RC重みの100倍と乗算され、第1
の総和項が獲得される。
【0024】スラックの重みを調整するために、ステッ
プ44で、考慮中の網の最大または最悪スラックが入力
される。ステップ46で、スラックの上限が入力され
る。ステップ48で、最大スラックがスラックの上限か
ら減算され、第3の差分項が獲得される。ステップ50
で、回路内の任意の網に関連付けられる最小スラックが
決定される。ステップ52で、スラックの上限から回路
内の任意の網に関連付けられた最小スラックを減算し、
第4の差分項を獲得する。ステップ54で、第3の差分
項が第4の差分項により除算され、第2の比率が獲得さ
れる。ステップ56で、第2の比率が(1−相対百分率
RC重み)×100と乗算され、第2の総和項が獲得さ
れる。ステップ60で、第1及び第2の総和項が定数
(例えば10)と加算され、考慮中の網に対する初期重
みが獲得される。
【0025】従って、本発明のタイミング及びRCドリ
ブン配置方法は、次のように表すことができる。 If(Net_Slack > UPPER_SLACK) then Net_wt = 10.0 + ((Net_RC - Min_RC_Design)/(UPPER_R
C - Min_RC_Design)*FRAC_RC*100) + (UPPER_SLACK - N
et_Slack)/(UPPER_SLACK -Min_SLACK_Design)*(1-FRAC_
RC)*100); Else Net_wt = 10.0; ここで、 Net_Slack = 考慮中の網の最小または最悪スラック UPPER_SLACK = 許容最大スラックの上限を設定するユー
ザ指定パラメータ Net_RC = 考慮中の網のシンク・ピンに関連付けられる
最悪RC遅延 Min_RC_Design = 設計内の任意の入力ピンに関連付けら
れる最小RC遅延 UPPER_RC = 許容最大RC遅延の上限を設定するユーザ
指定パラメータ FRAC_RC = RC値対スラック値に割当てる相対百分率重
み Min_SLACK_Design = 設計内の任意の網に関連付けられ
る最小スラック 通常の設計では、次のようになる。 FRAC_RC = 0.5(ユーザ指定) UPPER_RC = 0.6 UPPER_SLACK = 0.5 Min_RC_Design = 0(設計自身から決定される) Min_SLACK_Design = 8.0
【0026】ここでユーザ指定のUPPER_SLACKパラメー
タよりも大きな網だけが、本発明の方法により重み付け
される点に注意されたい。UPPER_SLACK値0.0では、
クリティカル網(すなわちサイクル時間制限に適合しな
い網)だけが重み付けされる。
【0027】本発明の方法は、網のNet_RC値及びNet_Sl
ack値にもとづき、網の重みを一様にスケールしようと
する。Net_RCが設計内のRCの散布量に正規化される。
UPPER_RCが、大きな正の値として表現される未知のRC
により、Max_RC_Designの代わりに使用される。同様
に、Net_Slackが設計内のスラックのデルタ(増分)に
正規化される。UPPER_SLACKは、大きな正の値として表
現されるdon't careにより、Max_Slack_Designの代わり
に使用される。
【0028】以上、本発明は特定のアプリケーションに
おける特定の実施例に関連して述べてきたが、当業者並
びに本教示を参照する者は、本発明の範囲内において、
追加の変更、アプリケーション、及び実施例を認識され
ることであろう。従って、本発明はこうした全ての変
更、アプリケーション、及び実施例を含むものである。
【0029】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0030】(1)集積回路を設計するためのタイミン
グ・ドリブン配置方法であって、導電要素により接続さ
れる回路コンポーネントのブロックを有する、複数の網
を識別するステップと、前記網内のタイミング及び抵抗
−容量性効果に比例して、前記網に重みを割当てるステ
ップと、前記重みに従い、前記回路コンポーネント間の
線長を最小化するように、前記回路コンポーネントの位
置を選択するステップと、を含む、方法。 (2)前記重み割当てステップが、考慮中の前記網のシ
ンク・ピンの最悪な場合の抵抗−容量性遅延(Net_RC)
を計算するステップを含む、前記(1)記載の方法。 (3)前記計算ステップがタイミング・ツールにより実
行される、前記(2)記載の方法。 (4)前記重み割当てステップが、前記網のシンク・ピ
ンに関連付けられる最小抵抗−容量性遅延しきい値(Mi
n_RC_Design)を設定するステップを含む、前記(2)
記載の方法。 (5)前記重み割当てステップが、考慮中の前記網のシ
ンク・ピンの前記最悪な場合の抵抗−容量性遅延(Net_
RC)から、前記最小抵抗−容量性遅延しきい値(Min_RC
_Design)を減算し、第1の差分項(Net_RC−Min_RC_De
sign)を獲得するステップを含む、前記(4)記載の方
法。 (6)前記重み割当てステップが、前記網の抵抗−容量
性遅延の上限(UPPER_RC)を設定するステップを含む、
前記(5)記載の方法。 (7)前記重み割当てステップが、前記上限(UPPER_R
C)から前記最小抵抗−容量性遅延しきい値(Min_RC_De
sign)を減算し、第2の差分項(UPPER_RC−Min_RC_Des
ign)を獲得するステップを含む、前記(6)記載の方
法。 (8)前記重み割当てステップが、前記第1の差分項を
前記第2の差分項により除算し、第1の比率(Net_RC−
Min_RC_Design)/(UPPER_RC−Min_RC_Design)を獲得
する、前記(7)記載の方法。 (9)前記重み割当てステップが、抵抗−容量性遅延値
対スラック値に割当てる相対百分率重み(FRAC_RC)を
設定するステップを含み、前記スラック値が、考慮中の
前記網における論理結果の測定到来時刻と期待到来時刻
との差を表す、前記(8)記載の方法。 (10)前記重み割当てステップが、前記第1の比率を
前記相対百分率重み(FRAC_RC)の100倍と乗算し、
第1の総和項を獲得する、前記(9)記載の方法。 (11)前記重み割当てステップが、考慮中の前記網の
最大または最悪スラック(Net_SLACK)を決定するステ
ップを含む、前記(10)記載の方法。 (12)前記重み割当てステップが、スラックの上限
(UPPER_SLACK)を設定するステップを含む、前記(1
1)記載の方法。 (13)前記重み割当てステップが、前記UPPER_SLACK
から前記Net_SLACKを減算し、第3の差分項を獲得する
ステップを含む、前記(12)記載の方法。 (14)前記重み割当てステップが、前記回路内の任意
の網に関連付けられる最小スラック(Min_SLACK_Desig
n)を決定するステップを含む、前記(13)記載の方
法。 (15)前記重み割当てステップが、前記UPPER_SLACK
から前記任意の網に関連付けられる最小スラックを減算
し、第4の差分項を獲得するステップを含む、前記(1
4)記載の方法。 (16)前記重み割当てステップが、前記第3の差分項
を前記第4の差分項により除算し、第2の比率を獲得す
るステップを含む、前記(15)記載の方法。 (17)前記重み割当てステップが、前記第2の比率を
(1−FRAC_RC)×100と乗算し、第2の総和項を獲得す
るステップを含む、前記(16)記載の方法。 (18)前記重み割当てステップが、前記第1及び第2
の総和項を加算するステップを含む、前記(17)記載
の方法。 (19)前記重み割当てステップが、前記第1及び第2
の総和項に定数を加算し、前記網に対する重みを獲得す
るステップを含む、前記(18)記載の方法。 (20)前記回路コンポーネントの位置選択ステップ
が、前記網の重みを用いて、配置プログラムを実行する
ステップを含む、前記(19)記載の方法。 (21)集積回路を設計するためのタイミング・ドリブ
ン配置方法であって、導電要素により接続される回路コ
ンポーネントのブロックを有する、複数の網を識別する
ステップと、前記網内のタイミング及び抵抗−容量性効
果に比例して、前記網に重みを割当てるステップであっ
て、考慮中の前記網のシンク・ピンの最悪な場合の抵抗
−容量性遅延(Net_RC)を計算するステップと、前記網
のシンク・ピンに関連付けられる最小抵抗−容量性遅延
しきい値(Min_RC_Design)を設定するステップと、考
慮中の前記網のシンク・ピンの最悪な場合の抵抗−容量
性遅延(Net_RC)から、前記最小抵抗−容量性遅延しき
い値(Min_RC_Design)を減算し、第1の差分項(Net_R
C−Min_RC_Design)を獲得するステップと、前記網の抵
抗−容量性遅延の上限(UPPER_RC)を設定するステップ
と、前記上限(UPPER_RC)から前記最小抵抗−容量性遅
延しきい値(Min_RC_Design)を減算し、第2の差分項
(UPPER_RC−Min_RC_Design)を獲得するステップと、
前記第1の差分項を前記第2の差分項により除算し、第
1の比率(Net_RC−Min_RC_Design)/(UPPER_RC−Min
_RC_Design)を獲得するステップと、抵抗−容量性遅延
値対スラック値に割当てる相対百分率重み(FRAC_RC)
を設定するステップであって、前記スラック値が、考慮
中の前記網における論理結果の測定到来時刻と期待到来
時刻との差を表す、前記設定ステップと、前記第1の比
率を前記相対百分率重み(FRAC_RC)の100倍と乗算
し、第1の総和項を獲得するステップと、考慮中の前記
網の最大または最悪スラック(Net_SLACK)を決定する
ステップと、スラックの上限(UPPER_SLACK)を設定す
るステップと、前記UPPER_SLACKから前記Net_SLACKを減
算し、第3の差分項を獲得するステップと、前記回路内
の任意の前記網に関連付けられる最小スラック(Min_SL
ACK_Design)を決定するステップと、前記UPPER_SLACK
から前記任意の網に関連付けられる前記最小スラックを
減算し、第4の差分項を獲得するステップと、前記第3
の差分項を前記第4の差分項により除算し、第2の比率
を獲得するステップと、前記第2の比率を(1−FRAC_R
C)×100と乗算し、第2の総和項を獲得するステップ
と、前記第1及び第2の総和項を加算するステップと、
前記第1及び第2の総和項に定数を加算し、前記網に対
する重みを獲得するステップと、を含む、前記割当てス
テップと、前記重みに従い、前記回路コンポーネント間
の線長を最小化するように、前記回路コンポーネントの
位置を選択するステップであって、前記網の重みを用い
て、配置プログラムを実行するステップを含む、前記選
択ステップと、を含む、方法。 (22)導電要素により接続される回路コンポーネント
のブロックを含む複数の網を有する集積回路を設計する
システムであって、プロセッサと、前記プロセッサによ
り実行され、前記網内のタイミング及び抵抗−容量性効
果に比例して、前記網に重みを割当てる第1のプログラ
ムと、を含む、システム。 (23)前記第1のプログラムが、考慮中の前記網のシ
ンク・ピンの最悪な場合の抵抗−容量性遅延(Net_RC)
を計算する手段と、前記網のシンク・ピンに関連付けら
れる最小抵抗−容量性遅延しきい値(Min_RC_Design)
を設定する手段と、考慮中の前記網のシンク・ピンの前
記最悪な場合の抵抗−容量性遅延(Net_RC)から、前記
最小抵抗−容量性遅延しきい値(Min_RC_Design)を減
算し、第1の差分項(Net_RC−Min_RC_Design)を獲得
する手段と、前記網の抵抗−容量性遅延の上限(UPPER_
RC)を設定する手段と、前記上限(UPPER_RC)から前記
最小抵抗−容量性遅延しきい値(Min_RC_Design)を減
算し、第2の差分項(UPPER_RC−Min_RC_Design)を獲
得する手段と、前記第1の差分項を前記第2の差分項に
より除算し、第1の比率(Net_RC−Min_RC_Design)/
(UPPER_RC−Min_RC_Design)を獲得する手段と、抵抗
−容量性遅延値対スラック値に割当てる相対百分率重み
(FRAC_RC)を設定する手段であって、前記スラック値
が、考慮中の前記網における論理結果の測定到来時刻と
期待到来時刻との差を表す、前記設定手段と、前記第1
の比率を前記相対百分率重み(FRAC_RC)の100倍と
乗算し、第1の総和項を獲得する手段と、考慮中の前記
網の最大または最悪スラック(Net_SLACK)を決定する
手段と、スラックの上限(UPPER_SLACK)を設定する手
段と、前記UPPER_SLACKから前記Net_SLACKを減算し、第
3の差分項を獲得する手段と、前記回路内の任意の前記
網に関連付けられる最小スラック(Min_SLACK_Design)
を決定する手段と、前記UPPER_SLACKから前記任意の網
に関連付けられる前記最小スラックを減算し、第4の差
分項を獲得する手段と、前記第3の差分項を前記第4の
差分項により除算し、第2の比率を獲得する手段と、前
記第2の比率を(1−FRAC_RC)×100と乗算し、第2の
総和項を獲得する手段と、前記第1及び第2の総和項を
加算する手段と、前記第1及び第2の総和項に定数を加
算し、前記網に対する重みを獲得する手段と、を含む、
前記(22)記載のシステム。 (24)前記重みに従い、前記回路コンポーネント間の
線長を最小化するように、前記回路コンポーネントの位
置を選択する第2のプログラムを含む、前記(23)記
載のシステム。
【図面の簡単な説明】
【図1】本発明に従う集積回路設計方法の実施例のフロ
ー図である。
【図2】本発明に従い、初期の抵抗−容量性及びタイミ
ング・ドリブン網重みを割当てる方法のフロー図であ
る。
フロントページの続き (72)発明者 クリストファー・エイチ・オルソン アメリカ合衆国78730、テキサス州オース ティン、ランチ・クリーク・ドライブ 3649

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】集積回路を設計するためのタイミング・ド
    リブン配置方法であって、 導電要素により接続される回路コンポーネントのブロッ
    クを有する、複数の網を識別するステップと、 前記網内のタイミング及び抵抗−容量性効果に比例し
    て、前記網に重みを割当てるステップと、 前記重みに従い、前記回路コンポーネント間の線長を最
    小化するように、前記回路コンポーネントの位置を選択
    するステップと、 を含む、方法。
  2. 【請求項2】前記重み割当てステップが、考慮中の前記
    網のシンク・ピンの最悪な場合の抵抗−容量性遅延(Ne
    t_RC)を計算するステップを含む、請求項1記載の方
    法。
  3. 【請求項3】前記計算ステップがタイミング・ツールに
    より実行される、請求項2記載の方法。
  4. 【請求項4】前記重み割当てステップが、前記網のシン
    ク・ピンに関連付けられる最小抵抗−容量性遅延しきい
    値(Min_RC_Design)を設定するステップを含む、請求
    項2記載の方法。
  5. 【請求項5】前記重み割当てステップが、考慮中の前記
    網のシンク・ピンの前記最悪な場合の抵抗−容量性遅延
    (Net_RC)から、前記最小抵抗−容量性遅延しきい値
    (Min_RC_Design)を減算し、第1の差分項(Net_RC−M
    in_RC_Design)を獲得するステップを含む、請求項4記
    載の方法。
  6. 【請求項6】前記重み割当てステップが、前記網の抵抗
    −容量性遅延の上限(UPPER_RC)を設定するステップを
    含む、請求項5記載の方法。
  7. 【請求項7】前記重み割当てステップが、前記上限(UP
    PER_RC)から前記最小抵抗−容量性遅延しきい値(Min_
    RC_Design)を減算し、第2の差分項(UPPER_RC−Min_R
    C_Design)を獲得するステップを含む、請求項6記載の
    方法。
  8. 【請求項8】前記重み割当てステップが、前記第1の差
    分項を前記第2の差分項により除算し、第1の比率(Ne
    t_RC−Min_RC_Design)/(UPPER_RC−Min_RC_Design)
    を獲得する、請求項7記載の方法。
  9. 【請求項9】前記重み割当てステップが、抵抗−容量性
    遅延値対スラック値に割当てる相対百分率重み(FRAC_R
    C)を設定するステップを含み、前記スラック値が、考
    慮中の前記網における論理結果の測定到来時刻と期待到
    来時刻との差を表す、請求項8記載の方法。
  10. 【請求項10】前記重み割当てステップが、前記第1の
    比率を前記相対百分率重み(FRAC_RC)の100倍と乗
    算し、第1の総和項を獲得する、請求項9記載の方法。
  11. 【請求項11】前記重み割当てステップが、考慮中の前
    記網の最大または最悪スラック(Net_SLACK)を決定す
    るステップを含む、請求項10記載の方法。
  12. 【請求項12】前記重み割当てステップが、スラックの
    上限(UPPER_SLACK)を設定するステップを含む、請求
    項11記載の方法。
  13. 【請求項13】前記重み割当てステップが、前記UPPER_
    SLACKから前記Net_SLACKを減算し、第3の差分項を獲得
    するステップを含む、請求項12記載の方法。
  14. 【請求項14】前記重み割当てステップが、前記回路内
    の任意の網に関連付けられる最小スラック(Min_SLACK_
    Design)を決定するステップを含む、請求項13記載の
    方法。
  15. 【請求項15】前記重み割当てステップが、前記UPPER_
    SLACKから前記任意の網に関連付けられる最小スラック
    を減算し、第4の差分項を獲得するステップを含む、請
    求項14記載の方法。
  16. 【請求項16】前記重み割当てステップが、前記第3の
    差分項を前記第4の差分項により除算し、第2の比率を
    獲得するステップを含む、請求項15記載の方法。
  17. 【請求項17】前記重み割当てステップが、前記第2の
    比率を(1−FRAC_RC)×100と乗算し、第2の総和項を
    獲得するステップを含む、請求項16記載の方法。
  18. 【請求項18】前記重み割当てステップが、前記第1及
    び第2の総和項を加算するステップを含む、請求項17
    記載の方法。
  19. 【請求項19】前記重み割当てステップが、前記第1及
    び第2の総和項に定数を加算し、前記網に対する重みを
    獲得するステップを含む、請求項18記載の方法。
  20. 【請求項20】前記回路コンポーネントの位置選択ステ
    ップが、前記網の重みを用いて、配置プログラムを実行
    するステップを含む、請求項19記載の方法。
  21. 【請求項21】集積回路を設計するためのタイミング・
    ドリブン配置方法であって、 導電要素により接続される回路コンポーネントのブロッ
    クを有する、複数の網を識別するステップと、 前記網内のタイミング及び抵抗−容量性効果に比例し
    て、前記網に重みを割当てるステップであって、 考慮中の前記網のシンク・ピンの最悪な場合の抵抗−容
    量性遅延(Net_RC)を計算するステップと、 前記網のシンク・ピンに関連付けられる最小抵抗−容量
    性遅延しきい値(Min_RC_Design)を設定するステップ
    と、 考慮中の前記網のシンク・ピンの最悪な場合の抵抗−容
    量性遅延(Net_RC)から、前記最小抵抗−容量性遅延し
    きい値(Min_RC_Design)を減算し、第1の差分項(Net
    _RC−Min_RC_Design)を獲得するステップと、 前記網の抵抗−容量性遅延の上限(UPPER_RC)を設定す
    るステップと、 前記上限(UPPER_RC)から前記最小抵抗−容量性遅延し
    きい値(Min_RC_Design)を減算し、第2の差分項(UPP
    ER_RC−Min_RC_Design)を獲得するステップと、 前記第1の差分項を前記第2の差分項により除算し、第
    1の比率(Net_RC−Min_RC_Design)/(UPPER_RC−Min
    _RC_Design)を獲得するステップと、 抵抗−容量性遅延値対スラック値に割当てる相対百分率
    重み(FRAC_RC)を設定するステップであって、前記ス
    ラック値が、考慮中の前記網における論理結果の測定到
    来時刻と期待到来時刻との差を表す、前記設定ステップ
    と、 前記第1の比率を前記相対百分率重み(FRAC_RC)の1
    00倍と乗算し、第1の総和項を獲得するステップと、 考慮中の前記網の最大または最悪スラック(Net_SLAC
    K)を決定するステップと、 スラックの上限(UPPER_SLACK)を設定するステップ
    と、 前記UPPER_SLACKから前記Net_SLACKを減算し、第3の差
    分項を獲得するステップと、 前記回路内の任意の前記網に関連付けられる最小スラッ
    ク(Min_SLACK_Design)を決定するステップと、 前記UPPER_SLACKから前記任意の網に関連付けられる前
    記最小スラックを減算し、第4の差分項を獲得するステ
    ップと、 前記第3の差分項を前記第4の差分項により除算し、第
    2の比率を獲得するステップと、 前記第2の比率を(1−FRAC_RC)×100と乗算し、第2
    の総和項を獲得するステップと、 前記第1及び第2の総和項を加算するステップと、 前記第1及び第2の総和項に定数を加算し、前記網に対
    する重みを獲得するステップと、 を含む、前記割当てステップと、 前記重みに従い、前記回路コンポーネント間の線長を最
    小化するように、前記回路コンポーネントの位置を選択
    するステップであって、前記網の重みを用いて、配置プ
    ログラムを実行するステップを含む、前記選択ステップ
    と、 を含む、方法。
  22. 【請求項22】導電要素により接続される回路コンポー
    ネントのブロックを含む複数の網を有する集積回路を設
    計するシステムであって、 プロセッサと、 前記プロセッサにより実行され、前記網内のタイミング
    及び抵抗−容量性効果に比例して、前記網に重みを割当
    てる第1のプログラムと、 を含む、システム。
  23. 【請求項23】前記第1のプログラムが、 考慮中の前記網のシンク・ピンの最悪な場合の抵抗−容
    量性遅延(Net_RC)を計算する手段と、 前記網のシンク・ピンに関連付けられる最小抵抗−容量
    性遅延しきい値(Min_RC_Design)を設定する手段と、 考慮中の前記網のシンク・ピンの前記最悪な場合の抵抗
    −容量性遅延(Net_RC)から、前記最小抵抗−容量性遅
    延しきい値(Min_RC_Design)を減算し、第1の差分項
    (Net_RC−Min_RC_Design)を獲得する手段と、 前記網の抵抗−容量性遅延の上限(UPPER_RC)を設定す
    る手段と、 前記上限(UPPER_RC)から前記最小抵抗−容量性遅延し
    きい値(Min_RC_Design)を減算し、第2の差分項(UPP
    ER_RC−Min_RC_Design)を獲得する手段と、 前記第1の差分項を前記第2の差分項により除算し、第
    1の比率(Net_RC−Min_RC_Design)/(UPPER_RC−Min
    _RC_Design)を獲得する手段と、 抵抗−容量性遅延値対スラック値に割当てる相対百分率
    重み(FRAC_RC)を設定する手段であって、前記スラッ
    ク値が、考慮中の前記網における論理結果の測定到来時
    刻と期待到来時刻との差を表す、前記設定手段と、 前記第1の比率を前記相対百分率重み(FRAC_RC)の1
    00倍と乗算し、第1の総和項を獲得する手段と、 考慮中の前記網の最大または最悪スラック(Net_SLAC
    K)を決定する手段と、 スラックの上限(UPPER_SLACK)を設定する手段と、 前記UPPER_SLACKから前記Net_SLACKを減算し、第3の差
    分項を獲得する手段と、 前記回路内の任意の前記網に関連付けられる最小スラッ
    ク(Min_SLACK_Design)を決定する手段と、 前記UPPER_SLACKから前記任意の網に関連付けられる前
    記最小スラックを減算し、第4の差分項を獲得する手段
    と、 前記第3の差分項を前記第4の差分項により除算し、第
    2の比率を獲得する手段と、 前記第2の比率を(1−FRAC_RC)×100と乗算し、第2
    の総和項を獲得する手段と、 前記第1及び第2の総和項を加算する手段と、 前記第1及び第2の総和項に定数を加算し、前記網に対
    する重みを獲得する手段と、 を含む、請求項22記載のシステム。
  24. 【請求項24】前記重みに従い、前記回路コンポーネン
    ト間の線長を最小化するように、前記回路コンポーネン
    トの位置を選択する第2のプログラムを含む、請求項2
    3記載のシステム。
JP9059255A 1996-03-25 1997-03-13 網重み付けによるタイミング・ドリブン配置 Pending JPH1012740A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/620734 1996-03-25
US08/620,734 US5815406A (en) 1996-03-25 1996-03-25 Method and system for designing a circuit using RC and timing weighting of nets

Publications (1)

Publication Number Publication Date
JPH1012740A true JPH1012740A (ja) 1998-01-16

Family

ID=24487168

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9059255A Pending JPH1012740A (ja) 1996-03-25 1997-03-13 網重み付けによるタイミング・ドリブン配置

Country Status (2)

Country Link
US (1) US5815406A (ja)
JP (1) JPH1012740A (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6405345B1 (en) * 1999-05-28 2002-06-11 Cadence Design Systems, Inc. Updating placement during technology mapping
US6378116B1 (en) 1999-05-28 2002-04-23 Cadence Design Systems, Inc. Using budgeted required time during technology mapping
US6507938B1 (en) * 1999-11-12 2003-01-14 Intel Corporation Methods for improving the performance of VLSI layouts designed by a timing driven physical design tool
US6792585B1 (en) 2000-01-26 2004-09-14 Arcadia Design Systems, Inc. Method and apparatus of relative datapath cell placement with structure bonding
US6601226B1 (en) * 2000-03-14 2003-07-29 Synopsys, Inc. Tightloop method of timing driven placement
US6789248B1 (en) 2002-06-24 2004-09-07 Taiwan Semiconductor Manufacturing Company Method and apparatus to perform resistance and capacitance (RC) parameter customization for better timing closure results in physical synthesis and optimization
US7120888B2 (en) * 2004-07-12 2006-10-10 International Business Machines Corporation Method, system and storage medium for determining circuit placement
US8040813B2 (en) * 2005-06-02 2011-10-18 International Business Machines Corporation Apparatus and method for reduced loading of signal transmission elements
US7895539B2 (en) * 2007-10-17 2011-02-22 International Business Machines Corporation System for improving a logic circuit and associated methods
US8024679B2 (en) * 2007-12-06 2011-09-20 International Business Machines Corporation Structure for apparatus for reduced loading of signal transmission elements
US8972920B1 (en) * 2014-02-11 2015-03-03 Xilinx, Inc. Re-budgeting connections of a circuit design
US10360341B2 (en) 2017-08-31 2019-07-23 Synopsys, Inc. Integrated metal layer aware optimization of integrated circuit designs

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5617325A (en) * 1990-06-22 1997-04-01 Vlsi Technology, Inc. Method for estimating interconnect delays in integrated circuits
EP0643855A1 (en) * 1992-06-04 1995-03-22 Xilinx, Inc. Timing driven method for laying out a user's circuit onto a programmable integrated circuit device
US5648913A (en) * 1993-03-29 1997-07-15 Xilinx, Inc. Frequency driven layout system and method for field programmable gate arrays
US5461576A (en) * 1993-09-01 1995-10-24 Arcsys, Inc. Electronic design automation tool for the design of a semiconductor integrated circuit chip
US5666290A (en) * 1995-12-27 1997-09-09 Vlsi Technology, Inc. Interactive time-driven method of component placement that more directly constrains critical paths using net-based constraints

Also Published As

Publication number Publication date
US5815406A (en) 1998-09-29

Similar Documents

Publication Publication Date Title
JP4719265B2 (ja) 確率的相互接続構造設計のためのシステムおよび方法
US7051310B2 (en) Two-stage clock tree synthesis with buffer distribution balancing
TW567528B (en) Method for generating a partitioned IC layout
US6763506B1 (en) Method of optimizing the design of electronic systems having multiple timing constraints
JP3548070B2 (ja) 多端子ネットを自動的に発生する方法及び装置並びに多端子ネット自動発生方法を実行するためのプログラムを記憶したプログラム記憶媒体
US5778216A (en) Method for hierarchical time drive circuit layout by rebudgeting timing constraints of plurality of logical blocks after placement
US5477460A (en) Early high level net based analysis of simultaneous switching
US9092591B2 (en) Automatic generation of wire tag lists for a metal stack
JPS60130843A (ja) 接続路を設定する方法
JPH1012740A (ja) 網重み付けによるタイミング・ドリブン配置
WO2004044793A1 (en) Placement processing for programmable logic devices
US7134112B1 (en) Incremental routing in integrated circuit design
JP5779237B2 (ja) 合成中に非同期および同期リセット解除を実行するための方法および装置
JP2001338006A (ja) 論理自動設計支援方法および装置
US9773083B1 (en) Post-placement and pre-routing processing of critical paths in a circuit design
US6826740B2 (en) Automated buffer insertion incorporating congestion relief for use in connection with physical design of integrated circuit
US6654943B2 (en) Method, system, and computer program product for correcting anticipated problems related to global routing
US6516453B1 (en) Method for timing analysis during automatic scheduling of operations in the high-level synthesis of digital systems
JP3193167B2 (ja) 論理合成システム
Christie et al. Pre-layout prediction of interconnect manufacturability
JPH08194725A (ja) 論理分割装置
TW573261B (en) Method for performing sizing-driven placement
US20050015737A1 (en) System and method for designing a circuit wherein a single timing analysis ensures adequate performance in multiple applications
Toi et al. Wire congestion aware synthesis for a dynamically reconfigurable processor
JPH04165470A (ja) Lsiのレイアウト設計方式