JPH08213468A - 半導体集積回路の自動配置方式 - Google Patents

半導体集積回路の自動配置方式

Info

Publication number
JPH08213468A
JPH08213468A JP7039002A JP3900295A JPH08213468A JP H08213468 A JPH08213468 A JP H08213468A JP 7039002 A JP7039002 A JP 7039002A JP 3900295 A JP3900295 A JP 3900295A JP H08213468 A JPH08213468 A JP H08213468A
Authority
JP
Japan
Prior art keywords
wiring
block
critical
path
calculating
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
JP7039002A
Other languages
English (en)
Inventor
Mayumi Takahashi
真由美 高橋
Mikiko Tanaka
美樹子 田中
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP7039002A priority Critical patent/JPH08213468A/ja
Publication of JPH08213468A publication Critical patent/JPH08213468A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【目的】遅延を考慮した配置方法において、クリティカ
ルブロックを自動的に駆動能力の高いブロックに置き換
える場合、配線遅延に対し最も有効なクリティカルブロ
ックから置き換えて遅延を満足するまでにブロックを置
き換える処理及び置き換えるブロック数を必要最低限に
する配置を行う。 【構成】自動配置を行った後、配線長を算出して配線遅
延値を算出し、クリティカルパスを抽出し、クリティカ
ルブロックを抽出し、クリティカルブロックのパスの密
度を算出し、パスの密度が最も高いクリティカルブロッ
クを自動的に駆動能力の高いブロックに置き換え(「バ
ッファサイジング」という)、配線長、配線遅延値を算
出し、遅延制約を満足しているか判断し、満足していな
い場合にはパスの密度が次に高いクリティカルブロック
を抽出し、再度バッファサイジングを行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、半導体集積回路の自動
配置方式に関し、特に機能ブロック間の接続の遅延を考
慮する場合の自動配置方式に関する。
【0002】
【従来の技術】近年、半導体集積回路は高集積化、大規
模化が進み、これに伴う配線幅の縮小は配線抵抗を増大
させている。このため、配線抵抗と配線容量の積に比例
する配線の遅延時間も増大化している。
【0003】配線の遅延時間が増大することにより、特
にタイミングが重要なネットにおいて、誤動作を起こす
危険性がある。これを防ぐためにも、特にタイミングが
重要なネット上のブロックについては、配線遅延値に注
意しながら配置配線する必要がある。
【0004】従来の自動配置システムとして、例えば特
開平3−266082号公報には、配置前にクリティカ
ルパス上のクリティカルブロックを抽出した後、そのク
リティカルブロックをインタラクティブに配置すること
により、配線遅延値を満足させるようにした構成が開示
されている。
【0005】すなわち、図4に示すように、まず機能ブ
ロック間の接続関係を示す接続情報を記憶し(ステップ
21)、クリティカルパス(始まりのブロックのソース
ピンと終りのブロックのロードピン)を指定する(ステ
ップ22)。
【0006】次に、格納された接続情報に基づいてソー
スピンに接続されているパスを全てトレースし、そのパ
スの中からロードピンに接続しているクリティカルパス
を抽出する(ステップ23)。
【0007】そして、クリティカルパス上のブロックを
クリティカルブロックとして抽出する(ステップ2
4)。
【0008】抽出されたクリティカルブロックを、回路
制約条件を満足するようにその接続順にインタラクティ
プに配置する(ステップ25)。
【0009】次に、クリティカルブロックの配置情報と
接続関係より予測配線長を算出し(ステップ26)、配
線遅延値を算出する(ステップ27)。
【0010】配線遅延値が回路制約条件の制限値以下に
なるようにブロックを配置できたら、残りの(すなわ
ち、回路制約の厳しくない通常の)ブロックについて自
動配置を行う(ステップ28)。
【0011】しかし、上記従来例のように、配置の段階
だけで配線遅延値を考慮しても配線を実行した結果が配
置の段階での結果と異なり、配線遅延値を満足しない場
合がある。このような場合、配線までの処理を考慮し、
クリティカルパスに重み付けを行ってから配置配線を行
うことにより、配線遅延値を満足するようにしていた。
【0012】また、特開平2−120845号公報に
は、仮想線長シミュレーションから得る遅延情報と、タ
イミング検証から得る信号間のクリティカルパスの要求
される遅延時間情報を入力することにより、要求される
ICの動作速度を満足するように自動配置配線を行なう
装置が提案されている。
【0013】すなわち、図5を参照して、クリティカル
パスを指定した(ステップ31)後、クリティカルパス
に重みを付け(ステップ32)、自動配置を行ない(ス
テップ33)、概略配線を行う(ステップ34)。
【0014】次に、全て配置配線できたかを判定し(ス
テップ35)、全て配置配線できなかった場合には、仮
想遅延とタイミング情報を入力し(ステップ36)、配
置配線結果が要求されている遅延を満足しているかを比
較する(ステップ37)。
【0015】そして、遅延要求を満足しているか否かを
判定した結果(ステップ38)、満足している場合は、
再度同じ条件で配置、概略配線を行い、配置配線できる
まで繰り返す。
【0016】遅延要求を満足していない場合には、信号
の重み付けを変更してから(ステップ39)、再度、配
置、概略配線を行い、遅延を満足して配置配線できるま
で繰り返す。
【0017】そして、遅延要求を満足した配置・概略配
線が終了した段階で、詳細配線を実行する(ステップ4
0)。
【0018】次に、全ての詳細配線ができたか否かを判
定し(ステップ41)、全ての詳細配線ができなかった
場合には、詳細配線結果が要求している遅延を満足して
いるかどうかを比較し(ステップ42)、遅延要求を満
足しているか否かを判定した結果(ステップ43)、満
足している場合は、再度同じ条件で詳細配線を実行し
(ステップ40)、配線できるまで繰り返す。
【0019】遅延要求を満足していない場合には、信号
の配線順序と重みを変更してから(ステップ44)、再
度詳細配線を行い、配線できるまで繰り返す。
【0020】上記2つの従来例において、なお配線遅延
を満足しない場合は、クリティカルブロックを駆動能力
の高いブロックに人手で置き換えることにより、配線遅
延を満足していた。
【0021】
【発明が解決しようとする課題】前記従来の配線遅延値
を考慮した配置方法では、抽出したクリティカルブロッ
ク全てに対して、配線遅延を考慮しなくてはならなかっ
た。また人手でブロックを置き換えるなど、TATが増
大するという問題点があった。さらにブロックを置き換
える場合、人手により必要以上にブロックを置き換える
可能性があり、チップ面積が増大するという問題点があ
った。
【0022】従って、本発明は前記問題点を解消し、遅
延を考慮した配置方法において、遅延に有効なクリティ
カルブロックから自動的に駆動能力の高いブロックに置
き換え、遅延を満足するまでに置き換えるブロックの数
を低減し、TATの短縮とチップ面積の増大を抑止する
自動配置方式を提供することを目的とする。
【0023】
【課題を解決するための手段】前記目的を達成するた
め、本発明は、クリティカルパスを構成する機能ブロッ
ク(「クリティカルブロック」という)のパスの密度を
算出し、前記クリティカルブロックの中からパスの密度
が高いクリティカルブロックの順に該クリティカルブロ
ックを駆動能力の高いブロックと置き換え、配線遅延が
予め定めた遅延制約値を満たすようにすることを特徴と
する半導体集積回路の自動配置方式を提供する。
【0024】本発明の半導体集積回路の自動配置方式
は、好ましくは、配線長を算出する工程と、前記配線長
から配線遅延値を算出する工程と、前記配線遅延値をあ
らかじめ定められた対象回路の制約条件と比較すること
により、クリティカルパスを抽出する工程と、前記クリ
ティカルパスを構成する機能ブロックを抽出する工程
と、前記機能ブロックの各々のパス密度を算出する工程
と、前記機能ブロックの中から、最もパスの密度の高い
機能ブロックを選択する工程と、前記機能ブロックに対
して自動的にブロックの置き換えを行う工程と、ブロッ
クの置き換えを行った後、再度配線長を算出する工程
と、前記配線長から配線遅延値を算出する工程と、前記
配線遅延値と前記回路制約条件に示される制限値とを比
較する工程と、を備えている。
【0025】
【作用】本発明によれば、クリティカルブロックの中か
ら高いパス密度を有するクリティカルブロック順に駆動
能力の高いブロックと順次置き換えるものであり、配線
遅延値に対し有効なブロックから置き換えていくため、
遅延を満足するまでに行うブロックの置き換え処理が必
要最低限ですみ、TATを短縮する。また、本発明によ
れば、置き換えるブロック数が最小ですむため、チップ
面積の増大化を回避している。
【0026】
【実施例】図面を参照して、本発明の実施例を以下に説
明する。
【0027】
【実施例1】図1は、本発明の一実施例を説明する流れ
図である。
【0028】図1を参照して、まず機能ブロックの自動
配置を行い(ステップ1)、予測配線長を算出し(ステ
ップ2)、予測配線長から配線遅延値を算出する(ステ
ップ3)。
【0029】ステップ3で求めた配線遅延値を予め定め
られた対象回路の制限値と比較して、制限値以上の配線
遅延値をもつパス(「クリティカルパス」という)を抽
出する(ステップ4)。
【0030】次に、クリティカルパス上の全ての機能ブ
ロックをクリティカルブロックとして抽出する(ステッ
プ5)。
【0031】そして、クリティカルブロックのソースピ
ンに接続されているパスを全てトレースし、ステップ5
で抽出した全てのクリティカルブロック上を通過するパ
スの本数から、パスの密度を算出する(ステップ6)。
【0032】ステップ6で算出したパスの密度に基づ
き、最もパスの密度が高いクリティカルブロックを抽出
する(ステップ7)。
【0033】ステップ7で抽出したクリティカルブロッ
クを自動的に駆動能力の高いブロックに置き換える処理
(「バッファサイジング」という)を行う(ステップ
8)。
【0034】バッファサイジングを行った結果に基づき
配線長を算出し(ステップ9)、求めた予測配線長から
配線遅延値を算出する(ステップ10)。
【0035】ステップ10で求めた配線遅延値と回路制
約条件の制限値とを比較し(ステップ11)、遅延を満
足していない場合、パスの密度が次に高いクリティカル
ブロックを抽出し(ステップ7)、バッファサイジング
を行う(ステップ8)。
【0036】上記のようにして、遅延を満足するまで処
理を繰り返す。
【0037】このように、本実施例においては、配線遅
延値に対し有効なブロックから置き換えていくため、遅
延を満足するまでに行うブロックの置き換え処理が必要
最低限ですみ、TATの短縮となる。また、本実施例に
よれば、置き換えるブロックの数が最小で済むため、面
積の増大化を防ぐ。
【0038】図2は、機能ブロックとその接続関係を表
した回路図の一例である。図2を参照して、本実施例を
より具体的に説明する。
【0039】図2において、201から214は機能ブ
ロック、N01からN14はソースピン、H01からH
17はロードピンをそれぞれ示す。
【0040】図2に示す例で、機能ブロック201のソ
ースピンN01から機能ブロック214のロードピンH
13に至るパスが、クリティカルパスとして抽出された
として説明する。
【0041】次に、クリティカルパス上の機能ブロック
201から213をクリティカルブロックとして抽出す
る。そして、クリティカルブロックのソースピンに接続
されているパスを全てトレースし、クリティカルブロッ
ク上を通過するパスの本数から、パスの密度を算出す
る。
【0042】例えば、クリティカルブロック201のソ
ースピンN01に接続されているパスは、ブロック20
2、204、205、207、209、211を経て、
ブロック212のロードピンH13に至るパスと、ブロ
ック202、204、205、208のソースピンN0
8、ブロック210、211を経てブロック212のロ
ードピンH13に至るパスと、ブロック202、20
4、205、208のソースピンN09、ブロック21
0、211を経てブロック212のロードピンH13に
至るパスと、ブロック202、204、206、208
のソースピンN08、ブロック210、211を経てブ
ロック212のロードピンH13に至るパスと、ブロッ
ク202、204、206、208のソースピンN0
9、ブロック210、211を経てブロック212のロ
ードピンH13に至るパスと、ブロック203、21
3、208のソースピンN08、ブロック210、21
1を経て、ブロック212のロードピンH13に至るパ
スと、ブロック203、213、208のソースピンN
09、ブロック210、211を経て、ブロック212
のロードピンH13に至るパスの計7本である。
【0043】同様に、クリティカルブロック202を通
過するパスは5本、202は2本、204は5本、20
5は3本、206は2本、208は2本、210は2
本、209から214はそれぞれ1本である。
【0044】このうち最も多くパスが通過する、すなわ
ちパスの密度が最も高いブロック201を抽出し、バッ
ファサイジングを行う。
【0045】バッファサイジングを行った結果に基づき
予測配線長を算出し、配線遅延値を算出する。そして、
求めた配線遅延値と回路制約条件の制限値とを比較し、
遅延の制限値を満足していたら、処理を終了する。
【0046】制限値を満足していなかったら、パスの密
度が次に高いクリティカルブロック202を抽出し、遅
延を満足するように、バッファサイジングを行う。
【0047】このようにして、遅延を満足するまで、パ
スの密度の高い、すなわち配線遅延に対し有効なクリテ
ィカルブロックから置き換えていく。遅延を満足したと
ころで、処理は終了する。
【0048】
【実施例2】図3は本発明の第2の実施例を示す流れ図
である。
【0049】本実施例は、詳細配線後に、配線遅延に対
し有効なクリティカルブロックを置き換えるものであ
る。
【0050】概略配線(global routing:「グローバル
配線」ともいう)を行なった(ステップ101)後、詳細
配線(detaile routing)を行い(ステップ102)、実配
線長を算出する(ステップ103)。
【0051】次に、実配線長から配線遅延値を算出する
(ステップ104)。
【0052】そして、ステップ104で算出した配線遅延
値を予め定められた対象回路の制限値と比較して、クリ
ティカルパスを抽出する(ステップ105)。
【0053】クリティカルパス上のブロックをクリティ
カルブロックとして抽出する(ステップ106)。
【0054】クリティカルパス上の始まりのブロックの
ソースピンに接続されているパスの全てトレースし、ス
テップ106で抽出した全てのクリティカルブロックのパ
スの密度を算出する(ステップ107)。
【0055】次に、最もパスの密度が高いクリティカル
ブロックを抽出する(ステップ108)。
【0056】抽出した最もパスの密度が高いクリティカ
ルブロックに対してバッファサイジングを行う(ステッ
プ109)。
【0057】そして、ブロックの置き換えが行なわれた
エリアだけ再配線する(ステップ110)。
【0058】バッファサイジングを行った結果に基づき
再度配線長を算出し(ステップ111)、配線長から配線
遅延値を算出する(ステップ112)。
【0059】算出された配線遅延値と回路制約条件の制
限値とを比較し、遅延を満足していないなら、パスの密
度が次に高いクリティカルブロックを抽出し(ステップ
108)、バッファサイジングを行う(ステップ109)。
【0060】上記のようにして、遅延を満足するまで、
処理を繰り返す。
【0061】以上、本発明を上記各実施例に即して説明
したが、本発明は上記態様にのみ限定されるものでな
く、本発明の原理に準ずる各種態様を含むことは勿論で
ある。
【0062】
【発明の効果】以上説明したように本発明は、遅延に有
効なクリティカルブロックから自動的に駆動能力の高い
ブロックに置き換える処理を行うため、遅延を満足する
までに置き換えるブロックの数が最小ですみ、TATの
短縮とチップ面積の増大化を防ぐという効果を有する。
【図面の簡単な説明】
【図1】本発明の一実施例を説明するための流れ図であ
る。
【図2】本発明の一実施例により自動配置される回路の
一例を示す図である。
【図3】本発明の第2の実施例を説明するための流れ図
である。
【図4】従来例を説明するための流れ図である。
【図5】別の従来例を説明するための流れ図である。
【符号の説明】
1 自動配置を実行するステップ 2 予測配線長を算出するステップ 3 配線遅延値を算出するステップ 4 クリティカルネットを抽出するステップ 5 クリティカルパスを抽出するステップ 6 クリティカルブロックを抽出するステップ 7 クリティカルブロックのパスの密度を算出するステ
ップ 8 パスの密度が最も高いブロックを抽出するステップ 9 駆動能力の高いブロックに置き換える処理を行うス
テップ 10 予測配線長を算出するステップ 11 配線遅延値を算出するステップ 12 遅延を満足しているかを判断するステップ 21 機能ブロック間の接続情報を記憶するステップ 22 クリティカルパスを指定するステップ 23 クリティカルパスを抽出するステップ 24 クリティカルブロックを抽出するステップ 25 クリティカルブロックをインタラクティブに配置
するステップ 26 予測配線長を算出するステップ 27 配線遅延値を算出するステップ 28 残りのブロックに対して自動配置を実行するステ
ップ 31 クリティカルパスを指定するステップ 32 クリティカルパスに重みを付けるステップ 33 自動配置を実行するステップ 34 概略配線を実行するステップ 35 全て配置・配線を終了したかを判定するステップ 36 仮想遅延とタイミング情報を入力するステップ 37 配置・配線結果を要求している遅延を満足してい
るかどうか比較するステップ 38 要求を満足しているかどうかを判定するステップ 39 要求を満足するように信号の重みを変更するステ
ップ 40 詳細配線を実行するステップ 41 全て詳細配線を終了したかを判定するステップ 42 詳細配線結果が要求している遅延を満足している
かどうか比較するステップ 43 要求を満足しているかどうかを判定するステップ 44 要求を満足するように信号の配線順序と重みを変
更するステップ 101 概略配線を実行するステップ 102 詳細配線を実行するステップ 103 配線長を算出するステップ 104 配線遅延値を算出するステップ 105 クリティカルパスを抽出するステップ 106 クリティカルブロックを抽出するステップ 107 クリティカルブロックのパスの密度を算出する
ステップ 108 パスの密度が最も高いブロックを抽出するステ
ップ 109 駆動能力の高いブロックに置き換える処理を行
うステップ 110 配線長を算出するステップ 111 配線遅延値を算出するステップ 112 遅延を満足しているかを判断するステップ 201〜214 機能ブロック N01〜N14 ソースピン H01〜H17 ロードピン
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H01L 21/822 H01L 27/04 A

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】クリティカルパスを構成する機能ブロック
    (「クリティカルブロック」という)のパスの密度を算
    出し、前記クリティカルブロックの中からパスの密度が
    高いクリティカルブロックの順に該クリティカルブロッ
    クを駆動能力の高いブロックと置き換え、配線遅延が予
    め定めた遅延制約値を満たすようにすることを特徴とす
    る半導体集積回路の自動配置方式。
  2. 【請求項2】配線長を算出する工程と、 前記配線長から配線遅延値を算出する工程と、 前記配線遅延値を予め定められた対象回路の制約条件と
    比較してクリティカルパスを抽出する工程と、 前記クリティカルパスを構成する機能ブロックを抽出す
    る工程と、 前記機能ブロックについてそれぞれのパス密度を算出す
    る工程と、 前記機能ブロックの中から最もパスの密度の高い機能ブ
    ロックを選択する工程と、 前記選択された機能ブロックに対して自動的にブロック
    の置き換えを行う工程と、 前記ブロックの置き換えを行った後に再度配線長を算出
    する工程と、 前記配線長から配線遅延値を算出する工程と、 前記配線遅延値と前記回路制約条件に示される制限値と
    を比較する工程と、を備えることを特徴とする半導体集
    積回路の自動配置方式。
  3. 【請求項3】概略配線、詳細配線を行なった後配線長を
    算出する工程と、 前記配線長から配線遅延値を算出する工程と、 前記配線遅延値を予め定められた対象回路の制約条件と
    比較してクリティカルパスを抽出する工程と、 前記クリティカルパスを構成する機能ブロックを抽出す
    る工程と、 前記機能ブロックについてそれぞれのパス密度を算出す
    る工程と、 前記機能ブロックの中から最もパスの密度の高い機能ブ
    ロックを選択する工程と、 前記選択された機能ブロックに対して自動的にブロック
    の置き換えを行う工程と、 前記ブロックの置き換えを行った領域について再度配線
    を行なう工程と、 再度配線長を算出する工程と、 前記配線長から配線遅延値を算出する工程と、 前記配線遅延値と前記回路制約条件に示される制限値と
    を比較する工程と、を備えることを特徴とする半導体集
    積回路の自動配置方式。
JP7039002A 1995-02-03 1995-02-03 半導体集積回路の自動配置方式 Pending JPH08213468A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7039002A JPH08213468A (ja) 1995-02-03 1995-02-03 半導体集積回路の自動配置方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7039002A JPH08213468A (ja) 1995-02-03 1995-02-03 半導体集積回路の自動配置方式

Publications (1)

Publication Number Publication Date
JPH08213468A true JPH08213468A (ja) 1996-08-20

Family

ID=12540924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7039002A Pending JPH08213468A (ja) 1995-02-03 1995-02-03 半導体集積回路の自動配置方式

Country Status (1)

Country Link
JP (1) JPH08213468A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05326705A (ja) * 1992-05-22 1993-12-10 Toshiba Corp 半導体集積回路の設計方法
JPH0728876A (ja) * 1993-07-12 1995-01-31 Fujitsu Ltd 遅延時間解析装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05326705A (ja) * 1992-05-22 1993-12-10 Toshiba Corp 半導体集積回路の設計方法
JPH0728876A (ja) * 1993-07-12 1995-01-31 Fujitsu Ltd 遅延時間解析装置

Similar Documents

Publication Publication Date Title
US5737580A (en) Wiring design tool improvement for avoiding electromigration by determining optimal wire widths
EP0145925B1 (en) Iterative method for establishing connections between nodes and the resulting product
KR0153392B1 (ko) Lsi용 상호접속 배선 설계 방법
US5926397A (en) Routing design method and routing design apparatus
JPH10270563A (ja) 集積回路の自動概略配線方法
US6971082B2 (en) Method and apparatus for revising wiring of a circuit to prevent electro-migration
US7191420B2 (en) Net/wiring selection method, net selection method, wiring selection method, and delay improvement method
US5757657A (en) Adaptive incremental placement of circuits on VLSI chip
US20070022400A1 (en) Method, program, and apparatus for designing layout of semiconductor integrated circuit
JPH08213468A (ja) 半導体集積回路の自動配置方式
US6202195B1 (en) Semiconductor integrated circuit layout method
US6615401B1 (en) Blocked net buffer insertion
US6226775B1 (en) Semiconductor integrated circuit designing method of an interconnection thereof and recording medium in which the method is recorded for empty area
JP3193167B2 (ja) 論理合成システム
JP2000172738A (ja) Lsiの自動レイアウト方法
US6532583B1 (en) Global routing determination method and storage medium
JP3548398B2 (ja) 概略経路決定方法および概略経路決定方式
JPH04251961A (ja) Cadによる回路ブロックの配置設計方式
JP3134838B2 (ja) ブロック間配線装置
JP2715931B2 (ja) 半導体集積回路設計支援方法
JP2002313920A (ja) 半導体集積回路のレイアウト方法
JPH05243383A (ja) 自動配線方法
JP2005107556A (ja) 半導体集積回路の配線処理方法
JP2000057197A (ja) クロックネットのレイアウト設計変更方式
JPH04151853A (ja) 配線方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19980106