JPH11338892A - セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体 - Google Patents

セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体

Info

Publication number
JPH11338892A
JPH11338892A JP10140921A JP14092198A JPH11338892A JP H11338892 A JPH11338892 A JP H11338892A JP 10140921 A JP10140921 A JP 10140921A JP 14092198 A JP14092198 A JP 14092198A JP H11338892 A JPH11338892 A JP H11338892A
Authority
JP
Japan
Prior art keywords
cell
area
usage rate
restricted area
restricted
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.)
Granted
Application number
JP10140921A
Other languages
English (en)
Other versions
JP3564295B2 (ja
Inventor
Yuji Kanazawa
裕治 金澤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP14092198A priority Critical patent/JP3564295B2/ja
Priority to US09/176,260 priority patent/US6327694B1/en
Publication of JPH11338892A publication Critical patent/JPH11338892A/ja
Application granted granted Critical
Publication of JP3564295B2 publication Critical patent/JP3564295B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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

Abstract

(57)【要約】 【課題】既配置セル等に起因したセル配置で特定領域の
配線密度が高くなって配線が困難になることを防止す
る。 【解決手段】制限領域指定部22により指定した制限領
域とそのセル最大使用率ρmax を制限領域管理部24に
入力して管理し、セル配置部26は、制限領域管理部2
4で管理されている制限領域のセル使用率ρが指定され
たセル最大使用率ρmax を越えないようにセルを配置す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、LSIやVLSI
のコンピュータ支援の自動設計において論理設計に続い
て行われるレイアウト設計で使用されるセル配置装置及
び方法並びにセル配置プログラムを格納したコンピュー
タ読取り可能な記録媒体に関し、特に、セル上の配線密
度が混雑する領域のセル使用率を制限して最適なセル配
置を実現するセル配置装置及び方法並びにセル配置プロ
グラムを格納したコンピュータ読取り可能な記録媒体に
関する。
【0002】
【従来の技術】VLSI、LSI等の大規模半導体集積
回路をコンピュータの支援により自動設計するCADシ
ステムにあっては、まずAND、OR等のセルと、セル
間の接続(ネット)を決定する論理設計を行い、次に、
論理設計で得られるネットリストに基づきチップ上のセ
ル位置を決定するセル配置処理を行い、最後に、チップ
上に配置したセル間のネットをどう引くかの配線を決め
る配線処理(ルーチング:routing) を行っている。
【0003】従来のセル配置処理としては、例えばパー
ティションニング・ベースド配置アルゴリズムが知られ
ている。パーティションニング・ベースド配置アルゴリ
ズムルは、まずチップ全体を2つの領域に分割し、全て
のセルを分割した2つの領域に振り分ける。セルの降り
分ける基準は、セルを2つの領域に降り分けたとき、2
つの領域に跨って存在するネットの数をコストとし、こ
のコストが最小となるようなグループ分けする。
【0004】このようなセル領域の分割とセルの振り分
けを、分割したブロックがセル1個に対応した最小ブロ
ックとなるまで繰り返す。この場合、チップ上にセルを
配置した結果、セルが1カ所に固まってしまったので
は、配線することができないので、セルの分布に制約条
件をつけて配置する。この制約条件は、まず2つの領域
のセル使用率ρ(1),ρ(2)を次式で求める。
【0005】ρ(2)=s1/S1 ρ(2)=s2/S2 次に2つの領域の使用率の差の絶対値が正の定数α以下
とする条件式、 |(s1/S1)−(s2/S2)|≦α (1) 但し、αは正の定数 を制約条件とし、この条件式を満すようにセルをグルー
プ分けする。
【0006】このようにブロック分割した際のセル使用
率の相違が一定の範囲に入っているという条件を満たし
て配置することにより、セルを適度に分散させる。この
ようなセル使用率の制約条件を面積制約と呼ぶことにす
る。
【0007】
【発明が解決しようとする課題】しかしながら、コンピ
ュータ支援のセル配置処理はチップ上に全てのセルを配
置するわけではなく、例えば、クロック信号の伝達用セ
ル、RAM等のセルは、セルの自動配置を行う前に、既
に位置が決定しているのが普通である。このためセル配
置の制約条件として面積制約を設定した従来のセル配置
処理にあっては、チップ上に予め配置位置の決った既配
置セルが存在する場合、これらの既配置セルに接続して
いるネットのため、セル配置完了に続いて行う配線処理
において配線密度に片寄りを生じる可能性がある。
【0008】このため配線密度が高い部分では、配線に
使用する面積が他の部分よりも大きくなるなどの理由か
ら、セルの配置時に、セルの使用面積を他の部分よりも
下げておかなければならない。配線密度は概略配線を行
ってみれば、ほぼ正確に見積もれるので、セル配置が略
終了した段階で概略配線を行い、配線密度が高い部分か
らセルを取り除く作業を追加する方法が考えられる。
【0009】しかし、配線密度の高い部分からセルを取
り除いて他の部分に移す場合、セル配置処理におけるセ
ル使用率の制約条件が崩れるため、セル配置の品質が全
体的に悪化し、やはり配線できない可能性がある。また
シミュレーティド・アニーリングなどのアルゴリズムを
用いて、セル配置の品質を保証しながら配線密度の高い
部分からセルを取り除いて他の部分に移す操作を行うこ
とも可能である。しかし、セル配置の品質は保たれるも
のの、この方法では処理時間がかかることになる。
【0010】特定の領域のセル使用面積を下げる方法と
して、従来はセル配置禁止領域やフロアプランなどが使
用されている。しかし、セル配置禁止領域は、その範囲
内にセルを配置することを完全に禁止することを目的と
している。このため、ある領域に、セル使用面積を下げ
るためにセル配置禁止領域を部分的に設定した場合、こ
のセル配置禁止領域により配置できるセルの大きさが制
約され、大きめセルが配置できないという不都合の方が
大きくなる。
【0011】またフロアプランは、あるロジックを構成
するモジュール(マクロセル)を配置する領域を指定す
るものであり、制御する単位がロジックによって決めら
れている。このためモジュール内に配線密度の高い領域
が存在しても、この部分のセル使用面積をフロアプラン
によって下げることはできない。また2つのモジュール
間に配線密度の高い領域が存在するような場合も、この
部分のセルの使用面積をフロアプランによって下げるこ
とはできない。
【0012】即ち、セル配置禁止領域とフロアプラン
は、両者とも別の目的のために作られたものであり、配
線密度の高い領域のセルの使用面積を下げるために使用
できない。従って、チップ上に既配置セル等が存在する
場合、ネット及びセルともに密度が高い部分が生じて配
線が困難になり、これを回避するためにセル配置をやり
直すと処理に時間がかかるという問題点があった。
【0013】本発明は、このような問題点に鑑みてなさ
れたもので、既配置セル等に起因したセル配置で特定領
域の配線密度が高くなって配線が困難になることを防止
するセル配置装置および方法並びにセル配置プログラム
を格納したコンピュータ読取り可能な記録媒体を提供す
ることを目的とする。
【0014】
【問題点を解決するための手段】図1は本発明の原理説
明図である。本発明のセル配置装置は、図1(A)のよ
うに、制限領域指定部22、制限領域管理部24、及び
セル配置部26で構成される。制限領域指定部22は、
チップ上に占めるセルの面積割合を表すセル使用率を制
限する制限領域40と、この制限領域のセル最大使用率
ρ、例えばρ=50%を各々指定する。制限領域管理モ
ジュール24は、制限域指定部22で指定された制限領
域50及びセル最大使用率を入力して管理する。
【0015】セル配置モジュール26は、制限領域管理
モジュール24で管理されている制限領域40のセル使
用率が指定されたセル最大使用率を越えないようにセル
を配置する。このように本発明の自動セル配置装置にあ
っては、チップ上の配線密度が高くなりそうな部分を、
セル使用率を制限する制限領域40として指定すると共
に、制限領域内での最大セル使用率を指定しておくこと
で、指定された制限領域40のセル使用率が、指定され
た最大セル使用率を超えないセルが配置され、配線密度
が高い領域はセル使用率が低いため、配線処理が確実に
でき、余分な時間をかけずに配線を完了できる。
【0016】制限領域の位置とセル最大使用率の決め方
として最も単純なものは、図18A)のように、ユーザ
が指定するものである。即ち、制限領域指定部22は、
チップ上の既配置セル36,38の間の配設混雑領域等
を判断した利用者の操作入力に基づいて、制限領域40
及びセル最大使用率を指定する。ここで制限領域40の
セル最大使用率としては、チップ全体のセル使用率より
低い使用率を指定する。例えば、通常のチップのセル使
用率60乃至70%に対し、制限領域のセル最大使用率
ρmax として使用率50%を指定する。
【0017】また制限領域の位置とセル最大使用率の別
の決め方として、制限領域指定部22は、配置位置が固
定的に決められた既配置セルの位置に基づいてチップ上
でブロック分割した各部分の配線密度を見積もり、この
配線密度に基づいてセル使用率を制限する制限領域及び
制限領域のセル最大使用率を決定する。即ち、制限領域
指定部22は、図1(B)のように、チップ上に配置位
置が固定的に決められた既配置セルを配置する既配置セ
ル配置モジュール66、既配置セルを対象に概略配線を
行う概略配線モジュール68、チップを所定サイズのブ
ロックに分割し、各ブロック毎に概略配線に基づいて配
線密度を検出して配線混雑領域か否か判定する配線混雑
領域判定モジュール70、及び配線混雑領域をセル使用
率を制限する制限領域に決定し、この制限領域に通常の
セル使用率より低い使用率をセル最大使用率として決定
する制限領域指定モジュール72で構成される。
【0018】更に制限領域の位置とセル最大使用率の別
の決め方として制限領域指定部22は、暫定配置(grob
al/rough placement) したセルの位置に基づいてチップ
上でブロック分割した各部分の配線密度を見積もり、こ
の配線密度に基づいてセル使用率を制限する制限領域及
び該制限領域のセル最大使用率を決定する。即ち、制限
領域指定部22は、図1(C)のように、チップ上にセ
ルを暫定的に配置するセル暫定高速配置モジュール9
4、暫定配置セルを対象に概略配線を行う概略配線モジ
ュール68、チップを所定サイズのブロックに分割し、
各ブロック毎に前記概略配線に基づいて配線密度を検出
して配線混雑領域か否か判定する配線混雑領域判定モジ
ュール、及び配線混雑領域をセル使用率を制限する制限
領域に決定し、制限領域に通常のセル使用率より低い使
用率をセル最大使用率として決定する制限領域指定モジ
ュール72で構成される。
【0019】ここでセルを暫定配置することで高速なセ
ル配置ができるが、最適化が不十分になるため、このセ
ル配置結果を使って配線処理を行うと、線長が長くな
り、配線がしにくく品質が下がり、配線処理に使用する
には不適切である。しかし、配線が混雑する領域をある
程度見積もることができるので、セル暫定配置の情報に
基づいた概略配線により配線混雑領域を判定して制限領
域と通常より低いセル最大使用率の指定を行うことで、
配線のしやすいセル配置結果が期待できる。
【0020】図1(B)(C)の制限領域決定モジュー
ル72は、制限領域のセル最大使用率としてチップのセ
ル使用率より低い使用率を決定する。また制限領域決定
モジュール72は、制限領域のセル最大使用率を予め登
録した使用率情報(使用率リスト)を有し、この使用率
情報の参照により制限領域のセル最大使用率を決定す
る。
【0021】セル配置モジュール26は、チップ領域に
ついて順次2分割を繰り返しながら、各分割毎に2分割
した領域間のネット数を示すコストが最小となるように
チップをグループ分けするパーティショニング・ベース
ド配置モジュール30と、分割した2領域の合計面積
(S1+S2)を、2領域の合計セル面積sに対する制
限領域のセル最大使用率に基づく各領域のセル有効面積
s1´,s2´ 比率で案分した各領域の面積S1´,S2´
に換算し、各領域の換算面積S1´,S2´に対する各
領域のセル合計面積に比率の差が所定の範囲内となるよ
うに、パーティショニング・ベースド配置モジュールに
よるセルのグループ分けを制御するセル配置制御モジュ
ール32を備える。
【0022】セル配置制御モジュール32は、次の処理
を行う。 2分割された第1領域と第2領域の各セル面積をs
1,s2、全セル面積をs(=s1+s2) 、第1領域の面
積をS1、第2領域の面積をS2、i番目の制限領域の
内の第1領域に入っている部分の面積をS1(i)、i
番目の制限領域の内の第2領域に入っている部分の面積
をS2(i)、i番目の制限領域で指定したセル使用率
をρ(i)とした場合、 第1及び第2領域の各々についてセル使用率の制限の
ない部分の面積S1(0)、S2(0)を、 S1(0)S1−ΣS1(i) S2(0)S2−ΣS2(i) として求め、 次にセル使用率の制限のない部分の使用率ρ(0)
を、 ρ(0) ={(全セル面積)−(使用率指定領域の合計セル面積)}/(全面積) =[s−Σ{ρ(i) × (S1(i)+S2(i))}]/S1(0)+S2(0)) として求め、 次に前記使用率ρ(0),ρ(i)に基づいた第1及
び第2領域のセル有効面積s1´,s2´を、 s1´ =ρ(0) × S1(0)) +Σ(ρ(i) × (S1(i)) s2´ =ρ(0) × S2(0)) +Σ(ρ(i) × (S1(i)) として求め、 次に第1及び第2領域のセル有効面積s1´,s2´
のセル合計面積sに対する比率で第1及び第2領域を案
分した面積S1´,S2´を S1´=(S1+S2)×(s1´/s) S2´=(S1+S2)×(s2´/s) として換算し、 この第1及び第2領域の換算面積S1´,S2´に対
する各セル面積s1,s2の差の絶対値が |s1/S1´−s2/S2´|≦α の条件を満たすように、パーティショニング・ベースド
配置モジュールによるセルのグループ分けを制御する。
【0023】また本発明は、セル配置方法を提供するも
のであり、次の手順をもつ。チップ上に占めるセルの面
積割合を表すセル使用率を制限する制限領域と制限領域
のセル最大使用率を指定する制限領域指定過程と;制限
領域指定過程で指定された制限領域及びセル最大使用率
を入力して管理する制限領域管理過程と、制限領域管理
過程で管理されている前記制限領域のセル使用率が指定
されたセル最大使用率を越えないようにセルを配置する
セル配置過程と、を備えたことを特徴とする。
【0024】このセル配置方法の詳細は、装置構成と同
じになる。また本発明は、セル配置プログラムを記録し
たコンピュータ読取り可能な記録媒体を提供するもので
あり、次の手順をもつ。チップ上に占めるセルの面積割
合を表すセル使用率を制限する制限領域と制限領域のセ
ル最大使用率を指定する制限領域指定過程;制限領域指
定過程で指定された制限領域及びセル最大使用率を入力
して管理する制限領域管理過程と、制限領域管理過程で
管理されている制限領域のセル使用率が指定されたセル
最大使用率を越えないようにセルを配置するセル配置過
程;このセル配置方法の詳細は、装置構成と同じにな
る。
【0025】
【発明の実施の形態】図2は本発明のセル配置装置が使
用されるコンピュータ支援のLSI又はVLSI自動設
計システムのブロック図である。このLSI自動設計シ
ステムは、論理設計システム10とレイアウト設計シス
テム14で構成される。論理設計システム10は、設計
対象となる大規模集積回路の動作内容を表す情報を入力
とし、ライブラリに登録されているセルとセル間の接続
情報で表現した論理的な接続情報でなるネットリストデ
ータ12を生成する。
【0026】レイアウト設計システム14は、論理設計
システム10で生成されたネットリストデータ12に基
づき、チップ上でのセルの配置と配置したセル間の配線
処理を行ってレイアウト設計データ16を生成する。こ
のためレイアウト設計システム14には、セル配置シス
テム18とセル間配線システム20が設けられている。
本発明のセル配置システムは、レイアウト設計システム
14に設けられたセル配置システム18として実現され
ている。
【0027】図3は、図2のレイアウト設計システム1
4に設けた本発明のセル配置装置としてのセル配置シス
テム18の第1実施形態であり、この実施形態にあって
は、ユーザによってチップ上のセル使用率を制限する制
限領域と、制限領域のセル最大使用率の指定を行うよう
にしたことを特徴とする。図3において、本発明のセル
配置装置として機能するセル配置システム18は、ユー
ザインタフェースとして機能する制限領域指定部22、
制限領域管理モジュール24、セル配置モジュール26
で構成される。セル配置モジュール26にはパーティシ
ョニング・ベースド配置モジュール30とセル配置制御
モジュール32の機能が設けられる。
【0028】ユーザインタフェースとして機能する制限
領域指定部22は、ユーザの操作入力に基づいてチップ
上に制限領域及びその制限領域のセル最大使用率を指定
する。制限領域指定部22によるユーザによるセル使用
率を制限する制限領域の指定方法は、例えば図4に示す
ようにして行う。図4はセル配置処理の対象となるチッ
プ領域34であり、このチップ領域34については例え
ば2つの既配置セル36,38が存在していたとする。
既配置セル36,38は、クロック信号伝達用セルやR
AMなどのメモリセルであり、チップ領域34に対する
配置位置が予め固定的に決まっており、図3のセル配置
モジュール26によるセル配置の対象から除外されたセ
ルである。
【0029】このようにチップ領域34に既配置セル3
6,38が存在する場合には、既配置セル36,38の
間の領域を通る配線数が図2の論理設計システム10で
生成されたネットリストデータ12の参照で分かり、こ
の既配置セル36,38に起因した配線に加えて、その
間に配置したセルの配線が加わることで、配線密度の高
い領域と判断することができる。
【0030】そこで、ユーザは既配置セル36と既配置
セル38で挟まれた矩形の領域が配線密度が高くなるこ
とが予想される配線密度混雑領域と判断し、この領域を
セル使用率を制限する制限領域40に指定する。このよ
うにしてユーザが既配置セル36,38の間の矩形領域
を制限領域40に指定したならば、次に制限領域40の
セル最大使用率を指定する。
【0031】このセル最大使用率の指定については、ま
ずチップ領域34の全体のセル使用率ρ(T)を求め
る。即ち、 ρ(T)=(全セル面積)/(チップ領域面積) とする。この場合、既配置セル36,38の設置面積は
セル禁止領域となることから、チップ領域面積から除
く。もちろん、既配置セル36,38のセル面積も全セ
ル面積には含めない。
【0032】このようにしてチップ領域34の全体のセ
ル使用率ρ(T)を算出し、例えばρ(T)=70%で
あったとすると、既配置セル36,38の間の制限領域
40のセル最大使用率ρ(i)=50%を指定する。こ
の種のコンピュータ支援による大規模集積回路の自動設
計において、経験的にチップ領域34の全体的な使用率
は60%〜70%である。したがって制限領域40につ
いては、この通常の使用率より低い例えば50%とする
ことが望ましい。また制限領域40の使用率は全体の使
用率に対応して変化させても良い。
【0033】例えば全体の使用率が80%であったなら
ば制限領域40の使用率は60%とし、また全体の使用
率が60%であったならば制限領域40の使用率は40
%とする。即ち、制限領域40の使用率は非制限領域の
使用率より低い値であれば必要に応じて適宜の値を指定
することができる。図5は図3のユーザインタフェース
としての制限領域指定部22によりユーザが指定する制
限領域の他の例である。図5(A)はセル配置対象とす
る大規模集積回路を構築するチップ44の側面図であ
り、このチップ44によっては例えば第0層46、第1
層48、第2層50及び第3層52の4層構造を持って
いる。このうち第0層46がセル配置に使用され、それ
以外の第1層48〜第3層52はパワー供給や信号伝送
の予定に使用される。
【0034】図5(B)は、図5(A)の第3層52の
平面図であり、第3層52には格子状にパワーライン5
4が形成されており、このパワーライン54に対し垂直
方向のスルーホールによる接続で、下位に位置する第0
層46から第2層50に対し電源供給ができるようにし
ている。このパワーライン54の幅は第0層46に配置
されるセルのサイズに比べ十分広く、パワーライン54
の幅の中に多数のセルが配置される関係にある。
【0035】図5(C)は、図5(A)の第0層46の
平面図であり、図5(B)の第3層52のパワーライン
54に対応した斜線で示す格子状の領域56に存在する
セルが、第3層52のパワーライン54と垂直方向の配
線接続により電源供給を受け、このため配線密度の高い
領域ということができる。そこでオペレータは、図5
(C)の第0層46で与えられるチップ領域のパワーラ
イン54に対応した斜線部の領域をセル使用率を制限す
る制限領域56に指定する。
【0036】このようにパワーライン54に対応した制
限領域56が指定できたならば、ユーザは第0層46を
セル領域とした全体のセル使用率を算出し、この全体の
セル使用率より低い使用率を制限領域56に指定する。
例えば図4と同様、全体の使用率が70%であればパワ
ーライン対応の制限領域56に使用率50%を指定す
る。再び図3を参照するに、制限領域指定部22による
ユーザ指定によって、例えば図4または図5(C)のよ
うに制限領域40,56とそのセル使用率が指定される
と、指定された制限領域とセル使用率は制限領域管理モ
ジュール24に入力され、セル配置モジュール26にお
けるセル配置処理の際の制御パラメータとして管理され
る。
【0037】セル配置モジュール26はパーティショニ
ング・ベースド配置モジュール30により、ネットリス
トデータ12に基づいて対象チップ上にセル配置を行
う。このときセル配置制御モジュール32が制限領域管
理モジュール24で管理されているユーザ指定の制限領
域とそのセル使用率に基づいたセルの振り分けを調整す
る。
【0038】パーティショニング・ベースド配置モジュ
ール30によるセル配置を簡単に説明する。パーティシ
ョニング・ベースド配置モジュール30は、対象チップ
領域についで順次2分割を繰り返しながら、各分割毎に
2分割した領域間のネット数を示すコストが最小となる
ようにチップをグループ分けする。このようなパーティ
ショニング・ベースド配置モジュール30のセル配置に
対し、セル配置制御モジュール32はパーティショニン
グ・ベースド配置モジュール30でチップ領域の2分割
によるチップグループ分けが行われる毎に、分割した2
領域の合計面積(S1+S2)を2領域の合計セル面積
sに対する制限領域のセル最大使用率に基づく各領域の
セル有効面積s1´,s2´との比率で案分した各領域
の面積s1´,s2´に換算し、この換算面積S1´,
S2´に対する各領域のセル合計面積sの比率の差が所
定の範囲内となるように、パーティショニング・ベース
ド配置モジュール30におけるセルのグループ分けを制
御する。
【0039】このパーティショニング・ベースド配置モ
ジュール30とセル配置制御モジュール32の処理の詳
細は後の説明で明らかにする。図6は、図3の実施形態
におけるセル配置処理のジェネリックなフローチャート
である。このセル配置処理にあっては、まずステップS
1でチップ上にセル使用率を制限する制限領域とそのセ
ル使用率を指定する。図3の実施形態にあっては、ユー
ザインタフェースとして機能する制限領域指定部22に
よって、図4または図5に示したようにしてチップ上の
配線密度が混雑すると思われる領域をセル使用率の制限
領域に指定し、この制限領域についてセル全体の使用率
より低い使用率例えば50%を指定している。
【0040】次にステップS2に進み、指定されたセル
使用率の制限領域に指定されたセル使用率を超えないよ
うにセル配置をセル配置モジュール26が行う。図7
は、図6のステップS1のセル使用率制限領域指定処理
の詳細フローチャートであり、図3の実施形態のユーザ
インタフェースとして機能する制限領域指定部22によ
るユーザ指定の場合のフローチャートである。このユー
ザ指定の制限領域指定処理にあっては、ステップS1で
例えば図4のように配置位置が固定的に決まっている既
配置セルがあれば、これを配置する。
【0041】次にステップS2で、図5に示したように
セル配置層に対する電源やネット用の他層との接続領域
を設定する。次にステップS3で、図4の既配置セル3
6,38の間の領域や図5(C)の他層のパワーライン
対応の領域56を配線混雑領域と判断してセル使用率の
制限領域を指定し、この制限領域に他の領域より低い使
用率を指定する。
【0042】図8は、図6のジェネリックフローチャー
トのステップS2における指定されたセル使用率の制限
領域に指定されたセル使用率を超えないようにセルを配
置するためのセル配置処理、即ち図3のセル配置モジュ
ール26に設けたパーティショニング・ベースド配置モ
ジュール30及びセル配置制御モジュール32によるセ
ル配置処理のフローチャートである。
【0043】図8のフローチャートにおいて、ステップ
S1,S2は図3のセル配置モジュール26におけるパ
ーティショニング・ベースド配置モジュール30の処理
であり、残りのステップS3〜S11がセル配置モジュ
ール32による処理となる。まずパーティショニング・
ベースド配置モジュール30によるセル配置処理は、ス
テップS1で対象チップ領域を2分割し、次にステップ
S2で対象チップ領域のセルを分割した2領域に振り分
け、領域間のネットのコストが最小となるようにグルー
プ分けして配置候補を決定する。
【0044】ステップS1における対象チップ領域の2
分割としては、図9(A)(B)(C)(D)のものが
ある。図9(A)は対象チップ領域34を垂直ライン、
水平ライン、垂直ライン、水平ラインの順番に交互に2
分割していく分割である。例えば垂直ラインL1、水平
ラインL2、垂直ラインL3、水平ラインL4と分割
し、この垂直、水平の順番による分割をセル1つが入る
所定の最小ブロックサイズまで繰り返す。
【0045】図9(B)は対象領域を同時に同一サイズ
に4分割する分割である。即ち、1回目は垂直ラインL
1aと水平ラインL1bを同時に引いて同一サイズの4
領域に分割する。2回目は4つの分割領域について2本
の垂直ラインL2aと2本の水平ラインL2bを引い
て、それぞれ同一サイズの4領域に分割する。図9
(C)は水平ラインL1、次に2本の水平ラインL2a
により垂直方向について最小サイズまで分割し、次に垂
直ラインL3と2本の垂直ラインL4aにより水平方向
について最小サイズまで順次分割する。
【0046】図9(D)は水平ラインL1〜L4の順番
に最小サイズで垂直方向に分割した後、垂直ラインL
5、2本の垂直ラインL6bの順番に水平方向で順次最
小サイズまで分割する。この図9(A)〜(D)のいず
れの分割法にあっても、1つの対象領域を2分割した際
の領域間のネットコストが最小となるようにセルをグル
ープ分けする。
【0047】図8のステップS2の分割された2領域に
領域間のネットコストが最小となるようにセルをグルー
プ分けするためのアルゴリズムとしては、次のものがあ
る。 Kernighan−Linアルゴリズム(K−Lア
ルゴリズム) 拡張K−Lアルゴリズム Fiduccia−Mattheysesアルゴリズ
ム これらのアルゴリズムは、例えばNaveed Sherwany 著の
「ALGORITHMS FORVLSI PHYSICAL DESIGN AUTOMATION」
(Kluwer Academic Publishers 1995年発行)に示され
る。
【0048】ここでステップS2にあっては、分割した
2領域間のネットのコストが最小となるようにグループ
分けをして配置候補を決定するが、決定した配置候補は
第1候補とし、それよりコストが大きい第2候補、第3
候補、第4候補などの下位の候補についても、グループ
分けの結果を保存しておく。ステップS2でネットコス
トを最小とするセルのグループ分けによる配置候補が決
定されたならば、図3のセル配置制御モジュール32に
よるステップS3〜S11の処理を実行する。
【0049】このステップS3〜S11の処理のため、
図10(A)の2分割された第1領域58と第2領域6
0について、第1領域58の面積をS1、第2領域60
の面積をS2、第1領域58に振り分けられたセル合計
面積をs1、第2領域60に振り分けられたセル合計面
積をs2、セルの全面積をs(=s1+s2)、対象チ
ップ領域34におけるi番目の制限領域のうちの第1領
域58に入っている部分の面積をS1(i)、同じくi
番目の制限領域のうちの第2領域60に入っている部分
の面積をS2(i)、i番目の制限領域で指定したセル
使用率をρ(i)として取得している。
【0050】このような条件の下に、まずステップS3
で第1領域58についてセル使用率の制限のない部分の
面積S1(0)を次式により算出する。 S1(0)=S1−ΣS1(i) (2) 次にステップS4で、第2領域60について同じくセル
使用率の制限のない部分の面積S2(0)を次式により
算出する。
【0051】 S2(0)=S2−ΣS2(i) (3) このステップS3,S4に対応して、図10(A)にあ
っては、第1領域58,第2領域60についてセル使用
率の制限のない部分62−1,62−2を斜線のセル使
用率の制限のある部分64−1,64−2に対し分けて
示し、それぞれの面積をS1(0),S2(0)と表し
ている。
【0052】次にステップS5に進み、対象チップ領域
34全体としてのセル使用率の制限のない部分62−
1,62−2の使用率ρ(0)を次式により算出する。 ρ(0) ={(全セル面積)−(使用率指定領域の合計セル面積)}/(全面積) =[s−Σ{ρ(i) × (S1(i)+S2(i))}]/S1(0)+S2(0)) (4) 続いてステップS6に進み、ステップS5で求めたセル
使用率の制限のない部分の使用率ρ(0)と既に指定さ
れているセル使用率の制限のある部分の使用率ρ(i)
に基づいて、第1領域58及び第2領域60の各セル有
効面積s1´,s2´を次式により算出する。
【0053】 s1´ =ρ(0) × S1(0)) +Σ{ρ(i) × (S1(i)} (5) s2´ =ρ(0) × S2(0)) +Σ{ρ(i) × (S1(i)} (6) 次にステップS7に進み、ステップS6で求めた第1及
び第2領域58,60のセル有効面積s1´,s2´の
セル合計面積sに対する比率で対象チップ領域34即ち
第1及び第2領域を合わせた領域の面積(S1+S2)
を案分した換算面積S1´,S2´を次式により求め
る。
【0054】 S1´=(S1+S2)×(s1´/s) (7) S2´=(S1+S2)×(s2´/s) (8) このようにしてステップS7で第1及び第2領域58,
60を換算した図10(B)の換算領域58−1,60
−1の換算面積S1´,S2´を求めたならば、この換
算面積S1´,S2´に対する図10(A)の元の第1
領域58,第2領域60の各セル面積s1,s2との比
率の差の絶対値が一定値α以下となる条件が成立するか
否か判定する。即ち、 |s1/S1´−s2/S2´|≦α (9) の条件を判定する。この(9)式の条件を満足すれば、
ステップS2で決定した配置候補が、指定した制限領域
の指定した使用率を超えていないものと見なし、ステッ
プS9で最小ブロックサイズか否かチェックし、最小ブ
ロックサイズでなければステップS1に戻り、図9
(A)の処理の済んだ第1領域58,第2領域60のそ
れぞれについて、次は水平線によりそれぞれを上下の2
領域に分割し、各2領域についてステップS2〜S9の
処理を繰り返し、これをステップS9で最小ブロックサ
イズとなるまで繰り返す。
【0055】一方、ステップS8で(9)式の条件が成
立しなかった場合には、ステップS10に進み、ステッ
プS2で決定している第1候補としての配置候補よりコ
ストが大きい第2候補を選択し、第2候補となるセルの
グループ分けについてステップS3〜S8の処理を繰り
返す。これによってステップS2で決定された複数の候
補のうち、ステップS8の条件を満足する候補が選択さ
れる。
【0056】ステップS9で最小ブロックサイズまでの
処理が終了すると、ステップS1でセル配置結果を保存
し、一連のセル配置処理を終了し、図2に示す次のセル
間配線システム20による配線処理に移行する。この図
8のフローチャートに示した本発明によるセル配置処理
によれば、図10(A)のように、第1領域58と第2
領域60に2分割してネットコストが最小となるように
セルを振り分けるグループ分けを行った際に、前記
(2)〜(8)式に従って、図10(B)のような換算
領域58−1,60−1に分けられる。
【0057】この換算領域58−1,60−1は、図1
0(A)における本来の第1領域58と第2領域60の
境界線65を大きなセル使用面積を制限した部分64−
2をもつ第2領域60側に移動して境界線65−1と
し、この換算領域58−1,60−1について前記
(9)式の条件を満足するように、即ち換算領域58−
1,60−1にセルを振り分けたときのセル使用率の差
が±αの範囲に収まるように振り分けたことに相当す
る。
【0058】その結果、図10(A)において、セル使
用率が制限された部分64−2が大きい第2領域60の
換算領域60−1の換算面積S2´が小さくなってお
り、第2領域60に振り分けられるセルが第1領域58
側に追い出されることになる。この結果、最小ブロック
サイズまで分割して同様なセル振り分け処理を行うと、
図10のセル使用率を制限した部分64−1,64−2
については、それぞれの指定したセル使用率を超えない
ようなセル配置が実現できる。
【0059】図11は図2のレイアウト設計システム1
4に設けられたセル配置システム18として実現される
本発明のセル配置装置の第2実施形態の機能ブロック図
である。この第2実施形態にあっては、セル使用率を制
限する制限領域の指定をチップ上に対する既配置セルの
配置に基づいて自動的に決定するようにしたことを特徴
とする。
【0060】図11において、本発明のセル配置装置を
構成するセル配置システム18は、制限領域指定部2
2、制限領域管理モジュール24、セル配置モジュール
26で構成され、セル配置モジュール26にはパーティ
ショニング・ベースド配置モジュール30とセル配置制
限モジュール32が設けられており、セル配置モジュー
ル26のセル配置処理で得られたセル配置データ28を
ファイルに格納している。
【0061】この構成は図3の第1実施形態と基本的に
同じであるが、第1実施形態のユーザが制限領域とその
セル最大使用率を指定しているのに対し、図11の第2
実施形態にあっては、制限領域指定部22はユーザの操
作を必要とすることなく、図2の論理設計システム10
の処理で得られたネットリストデータ12に基づいて自
動的にセル使用率を制限する制限領域とそのセル最大使
用率を決定するようにしている。
【0062】このため、制限領域指定部22には既配置
セル配置モジュール66、概略配線モジュール68、配
線混雑領域判定モジュール70、制限領域決定モジュー
ル72及び使用率リスト74が設けられている。既配置
セル配置モジュール66は例えば図12のように、対象
チップ領域34上に配置位置が固定的に決められた既配
置セルをネットリストデータ12に含まれる既配置セル
の上限を除き、予め決められた位置に例えば既配置セル
76,78を図示のように配置する。概略配線モジュー
ル68は図12の対象チップ34上に配置された例えば
2つの既配置セル76,78を対象に概略配線を行う。
この概略配線は既配置セル76,78のネットリストに
基づいて、例えば後の説明で明らかにするグリットグラ
フを利用して概略的な配線を行う。
【0063】配線混雑領域判定モジュール70は、図1
2のように対象チップ領域34を所定サイズのブロック
に分割し、各ブロック毎に概略配線モジュール68で行
った既配置セル76,78についての概略配線の結果か
ら配線密度を検出し、各ブロックについて配線混雑領域
か否か判定する。図12の2つの既配置セル76,78
の配置については、概略配線によってその間の6ブロッ
クが配線混雑領域と判別することができる。
【0064】ここで対象チップ領域34のブロックは左
上隅を原点として水平方向にi=0〜7、垂直方向にj
=0〜8を設定していることから、任意のブロックはB
ijで表すことができる。このため、2つの既配置セル
76,78の間に位置する6つのブロックB63,B64,
B65,B73,B74,B75が配線混雑領域のブロックと判
定される。
【0065】制限領域決定モジュール72は、配線混雑
領域判定モジュール70で配線混雑領域と判定されたブ
ロックで形成された領域をセル使用率を制限する制限領
域に決定する。即ち図12にあっては、2つの既配置セ
ル76,78の間の6つのブロックが配線混雑領域と判
定されていることから、この6つのブロックを合わせた
領域を制限領域80に決定する。
【0066】次に制限領域決定モジュール72は、決定
した制限領域80について使用率を制限するためのセル
最大使用率を通常のセル使用率より低い値として決定す
る。この制限領域80のセル最大使用率の決定は使用率
リスト74を参照して行う。この使用率リスト74に
は、図13のように、全体セル使用率77と制限領域セ
ル使用率78が格納されている。
【0067】全体セル使用率77は50%〜60%、6
0%〜70%、70%〜80%の3段階に分けられてお
り、これに対応して制限領域セル使用率78は40%、
50%、60%が設定されている。制限領域決定モジュ
ール72は図12のように、対象チップ領域34につい
て制限領域80が決定できたならば、セル合計面積をチ
ップ面積で割って全体セル使用率を算出し、図13の使
用率リスト74を参照し、該当する全体セル使用率77
に対応する制限領域セル使用率78を選択する。例えば
全体セル使用率77が60%〜70%の間にあったとき
には、制限領域セル使用率78として50%を選択し、
これを図12の制限領域80のセル最大使用率とする。
【0068】図14は図11の制限領域指定部22によ
る制限領域及びセル使用率の指定処理のフローチャート
である。まずステップS1で対象とするチップ上に配置
位置が固定的に決まっている既配置セルを配置する。次
にステップS2でチップ上に配置した既配置セルに対し
グリットグラフなどを利用して概略配線を行う。次にス
テップS3でチップを所定サイズのブロックに分割し、
ステップS4でブロック毎に配置セル間のネット数をコ
ストとして算出し、コストが所定値以上となるブロック
を配線混雑領域と判定する。最終的にステップS5で配
線混雑領域をセル使用率の制限領域に決定し、例えば図
13のような使用率リスト74の参照で他の領域より低
い使用率を指定する。
【0069】このようにして自動的に決定された制限領
域及びそのセル使用率は図11の制限領域管理モジュー
ル24に入力され、セル配置モジュール26による配置
処理のために保存される。セル配置モジュール26によ
る制限領域管理モジュール24に管理された制限領域と
そのセル使用率に基づくセル配置処理は、図3の第1実
施形態と同じであり、具体的には図8のセル配置処理の
フローチャートに従ったセル配置が行われ、これによっ
て指定されたセル使用率の制限領域に指定されたセル使
用率を超えないようにセルを配置することができる。
【0070】図15は、図14の使用率制限領域指定処
理のステップS2における既配置セルに対する概略配線
処理のフローチャートである。この概略配線処理は図2
のセル間配線システム20における配線処理が 第1段階のグローバルルーチング(ルーズルーチン
グ) 詳細ルーチング の2段階の処理で行われており、このうち第1段階で行
うグローバルルーチングを利用することで高速概略配線
が実現できる。
【0071】このグローバルルーチングは、セル配置が
完了した段階でネットリストに基づき、実際の物理的な
配線のレイアウトを行わずに各ネットについての配線の
割当てだけを行うものである。このグローバルルーチン
グにおける配線処理としてグリッドグラフモデル、チェ
ッカボードモデル、チャネルインターセクショングラフ
モデルなどの手法があるが、図15の概略配線処理にあ
っては処理が簡単なグリッドグラフモデルを使用してい
る。
【0072】図15の概略配線処理を図16のグリッド
グラフモデルによる配線処理の説明図を参照して説明す
ると次のようになる。まずステップS1でチップ上に配
置が決まった配置セルに対するピン割当てを行う。図1
6(A)が対象チップ34にセル82,84,86,8
8,90を配置した状態であり、これらのセルに対し例
えばピンt11,t12,t21,t22を図示のように割り当
てる。
【0073】ここでピンt11〜t12に対応したネットリ
ストは N1(t11,t12) N2(t21,t22) であったとする。続いてステップS2でグリッドグラフ
モデルを作成する。グリッドグラフモデルの作成は、図
16(B)のように対象チップ領域34を水平垂直のブ
ロックライン92により分割して矩形セルに分ける。こ
の矩形セルのサイズはチャネル幅をh、線幅をwとする
と、(h×w)に設定される。次に図16(C)のよう
にグリッドグラフ94を生成する。
【0074】グリッドグラフ94は図16(B)の矩形
セルを頂点に変換して格子で結んでいる。このため図1
6(B)におけるセル82は、図16(C)のグリッド
グラフ94においては黒丸の頂点82−1,82−2で
表現される。この点はセル84,86,88,90につ
いても同様であり、それぞれ黒丸の頂点84−1,86
−1,86−2、88−1,90−1〜90−3で表現
される。またピンt11〜t22は○の頂点の対応位置
にt11,t12,t21,t22として割り振られる。
【0075】このようにしてグリッドグラフが作成でき
たならば、ステップS3に進み、ネットNi=(ti1,
ti2)のパスを決定する。例えば図16(C)のグリッ
ドグラフ94について、ネットN1(t11,t12)を結
ぶルートは図16(D)のように右回りのルートR1と
左回りのルートR2がある。しかしながら、ルートR1
を図16(C)のグリッドグラフ94について見ると、
ピンt11からt12にいくためには他のネットN2のピン
t21,t22を横切らなければならない。ここでルーチン
グの規則には他のネットを横切らないことが規定されて
いるため、右回りのルートR1は成立せず、他のネット
を横切ることのない左周りのルートR2が決定される。
【0076】このようにしてステップS3でネットN1
のルートが決定できたならば、ステップS4で全ネット
の終了の有無をチェックし、終了していなければステッ
プS3に戻り、続いてネットN2のルートを決定する。
ネットN2については、ピンt21,t22を結ぶ図16
(D)のルートR3であり、グリッドグラフ94から、
この場合、他のネットを横切ることがないことから、ル
ートR3が決定される。
【0077】このようなグリッドグラフモデルを利用し
たルートの決定により、チップ上で配置が決まったセル
間のネットを実現するルートの概略が高速で生成され、
図14のステップS3〜S5の混雑領域の判定によるセ
ル使用率の制限領域の決定と、決定した制限領域のセル
最大使用率の決定が確実にできる。図17は図2のレイ
アウト設計システム14に設けたセル配置システム18
として提供される本発明のセル配置装置の第3実施形態
であり、この実施形態にあってはチップ上にセルを暫定
高速配置して概略配線を行うことにより自動的に配線混
雑領域を認識して、セル使用率の制限領域を決定するよ
うにしたことを特徴とする。
【0078】図17において、本発明のセル配置装置に
対応するセル配置システム18は、図3の第1実施形態
及び図11の第2実施形態と同様、制限領域指定部2
2、制限領域管理モジュール24、セル配置モジュール
26で構成されている。制限領域指定部22は図11の
第2実施形態における既配置セル配置モジュール66の
代わりにセル暫定高速配置モジュール94を設けてい
る。
【0079】それ以外の構成は図11の第2実施形態と
同様、概略配線モジュール68、配線混雑領域判定モジ
ュール70、制限領域決定モジュール72及び使用率リ
スト74を備えている。セル暫定高速配置モジュール9
4はチップ上にセルを暫定的に配置する。具体的には、
セル配置モジュール26に設けているパーティショニン
グ・ベースド配置モジュール30を使用しているが、対
象領域のブロック分割をチップサイズに対応した最小ブ
ロックサイズまで行わず、途中のブロックサイズ、例え
ば通常のパーティショニング・ベースド配置モジュール
30における分割回数の3分の1程度でセル配置を終了
させている。
【0080】このようなブロック分割サイズを処理サイ
ズに対応した最小ブロックサイズまで行わずに途中で止
めた場合のセル配置にあっては、セル配置の最適化が不
十分であり、このセル配置結果を使った配線処理では配
線長が長くなり、配線がしにくく品質が下がり、配線処
理のために使用するには不適切である。しかし、セル使
用率を制限するための配線混雑領域を判定するには十分
であり、且つ処理時間も短くて済む。
【0081】図18は図17の制限領域指定部22によ
る使用率制限領域の指定処理のフローチャートである。
まずステップS1で高速配置処理によりセルを暫定配置
する。この処理はパーティショニング・ベースド配置ア
ルゴリズムの領域分割を最小ブロックサイズまで行わず
に途中で止める処理となる。図19は図18のステップ
S1のセル暫定配置処理のフローチャートである。まず
ステップS1で対象チップ領域を2分割し、ステップS
2で対象チップ領域に割り当てられたセルを分割した2
領域に振り分け、領域間のネットコストが最小となるよ
うにグループ分けして配置候補を決定する。この配置候
補について、ステップS3で次式の条件を満足するか否
かチェックする。
【0082】 |s1/S1−s2/S2|≦α (1) この条件を満足しない場合には、ステップS4でネット
コストが低い下位の第2候補を選択して、ステップS3
で再度条件を判定する。ステップS3の条件が満足する
と、ステップS5で最小ブロックサイズに分割するまで
の途中の値である規定分割回数に達したか否かチェック
し、規定分割回数に達するまでステップS1〜S4の処
理を繰り返す。
【0083】規定分割回数に達すると、その時点でセル
配置処理を終了し、ステップS6でセル暫定配置結果を
保存し、図18に戻る。次に図18のステップS2で、
暫定配置された配置セルに対し概略配線を行う。この概
略配線は図11の第2実施形態の概略配線モジュール6
8と同様、図15の概略配線処理のフローチャートに従
い、グリッドグラフモデルを利用して行う。
【0084】暫定配置されたセルに対する概略配線が済
むと、ステップS3で図12に示したように対象チップ
領域34を所定のサイズのブロックに分割し、ステップ
S4でブロック毎に配置セル間のネット数をコストとし
て算出し、コストが所定値以上のブロックを配線混雑領
域のブロックと判定する。そしてステップS5で配線混
雑領域をセル使用率の制限領域に決定し、同時に図13
に示した内容を持つネットリスト74を参照して制限領
域のセル使用率を決定する。
【0085】このようにして図17の制限領域指定部2
2でセル暫定配置結果から決定された制限領域及び制限
領域のセル使用率は、制限領域管理モジュール24に入
力され、セル配置モジュール26によるセル配置処理の
パラメータとして取り込まれる。そして、第1実施形態
において図8に示したセル配置処理と同様に、パーティ
ショニング・ベースド配置モジュール30及びセル配置
制御モジュール32によるセル配置処理により、指定さ
れたセル使用率の制限領域について、指定されたセル使
用率を超えないようにセルを配置する処理が行われる。
【0086】更に本発明は、図3,図11及び図17に
示した各実施形態の機能ブロックで実現されるセル配置
システム18の機能を持つセル配置プログラムを記録し
たコンピュータ読取り可能な記録媒体を提供するもので
ある。このセル配置プログラムを記録したコンピュータ
読取り可能な記録媒体の実施形態としては、CD−RA
Mやフロッピーディスクなどのリムーバルな可搬型記憶
媒体、回線によりプログラムを提供するプログラム提供
者の記憶装置、更にプログラムをインストールした処理
装置のRAMやハードディスクなどのメモリ装置があ
る。また記録媒体によって提供されたセル配置プログラ
ムは処理装置にローディングされ、その主メモリ上で実
行される。
【0087】尚、本発明は、その目的と利点を損なわな
い範囲の適宜の変形を含む。また本発明は実施形態に示
された数値による限定は受けない。
【0088】
【発明の効果】以上説明してきたように本発明によれ
ば、チップ上の配線密度が高くなりそうな部分をセル使
用率を制限する制限領域として規定すると共に、制限領
域内での最大セル使用率を指定しておくことで、指定さ
れた制限領域のセル使用率が指定された最大セル使用率
を超えないようにセル配置が行われ、セル配置後の配線
処理において特定領域の配線密度が高くなって配線が困
難になることを確実に防止でき、セル配置のやり直しな
どの修正処理をほとんど必要とすることなく、余分な時
間を掛けずに最適なセル配置結果を得て、配線処理を余
分な時間を掛けずに完了することができる。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明のセル配置装置が使用されるLSI自動
設計システムのブロック図
【図3】本発明のセル配置装置を実現する図2に示すセ
ル配置システムの機能ブロック図
【図4】チップ上に既配置セルがある場合の制限領域の
ユーザ指定の説明図
【図5】他層のパワーラインとの接続を考慮したセル配
置層の制限領域のユーザ指定の説明図
【図6】図3のセル配置処理のジェネラル・フローチャ
ート
【図7】ユーザ指定による図3の制限領域指定処理の詳
細フローチャート
【図8】制限領域とセル最大使用率の指定に基づく図4
のセル配置処理詳細フローチャート
【図9】図8の対象チップ領域の分割方法の説明図
【図10】図8のセル配置処理における制限領域とセル
最大使用率に基づく分割領域の面積換算の説明図
【図11】既配置セルに基づいて制限領域を自動的に指
定する本発明のセル配置装置の機能ブロック図
【図12】図11の実施例によるチップ上の既配置セル
に基づく制限領域の決定処理の説明図
【図13】図11の使用率リストの説明図
【図14】既配置セルに基づく図11の制限領域指定処
理の詳細フローチャート
【図15】グリッドグラフを用いた図14の概略配線処
理の詳細フローチャート
【図16】図15の概略配線処理の説明図
【図17】暫定高速セル配置に基づいて制限領域を自動
的に指定する本発明のセル配置装置の機能ブロック図
【図18】暫定高速セル配置を用いた図17の制限領域
指定処理の詳細フローチャート
【図19】図18の概略配線処理の詳細フローチャート
【符号の説明】
10:論理設計システム 12:ネットリストデータ 14:レイアウト設計システム 16:レイアウト設計データ 18:セル配置システム(セル配置装置) 20:セル間配線システム 22:制限領域指定モジュール 24:制限領域管理モジュール 26:セル配置モジュール 28:セル配置データ 30:パーティショニング・ベースド配置モジュール 32:セル配置制御モジュール 34:チップ領域 36,38,76,78:既配置セル 40,80:制限領域 42:非制限領域 44:チップ 46:第0層 48:第1層 50:第2層 52:第3層 54:パワーライン 56:パワーライン対応の制限領域 58:第1領域 58−1,60−1:換算領域 60:第2領域 62−1,62−2:非制限部分 64−1,64−2:制限部分 66:既配置セル配置モジュール 68:概略配線モジュール 70:配線混雑領域判定モジュール 72:制限領域決定モジュール 74:使用率リスト 82,84,86,88,90:セル 82−1,82−2,84−1,86−1,86−2,
88−1,90−1〜90−3:セルポイント 92:ブロック分割ライン 94:セル暫定高速配置モジュール

Claims (30)

    【特許請求の範囲】
  1. 【請求項1】チップ上に占めるセルの面積割合を表すセ
    ル使用率を制限する制限領域と該制限領域のセル最大使
    用率を各々指定する制限領域指定部と、 前記制限領域指定部で指定された制限領域及びセル最大
    使用率を入力して管理する制限領域管理部と、 前記制限領域管理部で管理されている前記制限領域のセ
    ル使用率が指定された前記セル最大使用率を越えないよ
    うにセルを配置するセル配置部と、を備えたことを特徴
    とするセル配置装置。
  2. 【請求項2】請求項1記載のセル配置装置に於いて、前
    記制限領域指定部は、利用者の操作入力に基づいて前記
    制限領域及びセル最大使用率を設定することを特徴とす
    るセル配置装置。
  3. 【請求項3】請求項1記載のセル配置装置に於いて、前
    記制限領域指定部は、前記制限領域のセル最大使用率と
    して、チップ全体のセル使用率より低い使用率を指定す
    ることを特徴とするセル配置装置。
  4. 【請求項4】請求項1記載のセル配置装置に於いて、前
    記制限領域指定部は、通常のセル使用率60乃至70%
    に対し、前記制限領域のセル最大使用率として使用率5
    0%を指定することを特徴とするセル配置装置。
  5. 【請求項5】請求項1記載のセル配置装置に於いて、前
    記制限領域指定部は、配置位置が固定的に決められた既
    配置セルの位置に基づいてチップ上でブロック分割した
    各部分の配線密度を見積もり、該配線密度に基づいてセ
    ル使用率を制限する制限領域及び該制限領域のセル最大
    使用率を決定することを特徴とするセル配置装置。
  6. 【請求項6】請求項5記載のセル配置装置に於いて、前
    記制限領域指定部は、 チップ上に配置位置が固定的に決められた既配置セルを
    配置する既配置セル配置部と、 前記既配置セルを対象に概略配線を行う概略配線部と、 前記チップを所定サイズのブロックに分割し、各ブロッ
    ク毎に前記概略配線に基づいて配線密度を検出して配線
    混雑領域か否か判定する配線混雑領域判定部と、 前記配線混雑領域をセル使用率を制限する制限領域に決
    定し、該制限領域に通常のセル使用率より低い使用率を
    セル最大使用率として決定する制限領域指定部と、を備
    えたことを特徴とするセル配置装置。
  7. 【請求項7】請求項1記載のセル配置装置に於いて、前
    記制限領域指定部は、暫定配置したセルの位置に基づい
    てチップ上でブロック分割した各部分の配線密度を見積
    もり、該配線密度に基づいてセル使用率を制限する制限
    領域及び該制限領域のセル最大使用率を決定することを
    特徴とするセル配置装置。
  8. 【請求項8】請求項7記載のセル配置装置に於いて、前
    記制限領域指定部は、 チップ上にセルを暫定的に配置するセル暫定配置部と、 前記暫定配置セルを対象に概略配線を行う概略配線部
    と、 前記チップを所定サイズのブロックに分割し、各ブロッ
    ク毎に前記概略配線に基づいて配線密度を検出して配線
    混雑領域か否か判定する配線混雑領域判定部と、 前記配線混雑領域をセル使用率を制限する制限領域に決
    定し、該制限領域に通常のセル使用率より低い使用率を
    セル最大使用率として決定する制限領域指定部と、を備
    えたことを特徴とするセル配置装置。
  9. 【請求項9】請求項6又は8記載のセル配置装置に於い
    て、前記制限領域決定部は、前記制限領域のセル最大使
    用率としてチップの全体のセル使用率より低い使用率を
    決定することを特徴とするセル配置装置。
  10. 【請求項10】請求項6又は8記載のセル配置装置に於
    いて、前記制限領域決定部は、前記制限領域のセル最大
    使用率を予め登録した使用率情報を有し、該使用率情報
    の参照により前記制限領域のセル最大使用率を決定する
    ことを特徴とするセル配置装置。
  11. 【請求項11】請求項1記載のセル配置装置に於いて、
    前記セル配置部は、 チップ領域について順次2分割を繰り返しながら、各分
    割毎に2分割した領域間のネット数を示すコストが最小
    となるようにセルをグループ分けするパーティショニン
    グ・ベースド配置部と、 前記分割した2領域の合計面積(S1+S2)を、2領
    域の合計セル面積sに対する前記制限領域のセル最大使
    用率に基づく各領域のセル有効面積s1´,s2´の比率で
    案分した各領域の面積S1´,S2´に換算し、各領域
    の換算面積S1´,S2´に対する各領域のセル合計面
    積に比率の差が所定の範囲内となるように、前記パーテ
    ィショニング・ベースド配置部によるセルのグループ分
    けを制御するセル配置制御部と、を備えたことを特徴と
    するセル配置装置。
  12. 【請求項12】請求項1記載のセル配置装置に於いて、
    前記セル配置制御部は、 2分割された第1領域と第2領域の各セル面積をs1,
    s2、全セル面積をs(=s1+s2) 、第1領域の面積を
    S1、第2領域の面積をS2、i番目の制限領域の内の
    第1領域に入っている部分の面積をS1(i)、i番目
    の制限領域の内の第2領域に入っている部分の面積をS
    2(i)、i番目の制限領域で指定したセル使用率をρ
    (i)とした場合、 第1及び第2領域の各々についてセル使用率の制限のな
    い部分の面積S1(0)、S2(0)を、 S1(0)=S1−ΣS1(i) S2(0)=S2−ΣS2(i) として求め、 次にセル使用率の制限のない部分の使用率ρ(0)を、 ρ(0) ={(全セル面積)−(使用率指定領域の合計セル面積)}/(全面積) =[s−Σ{ρ(i) × (S1(i)+S2(i))}]/S1(0)+S2(0)) として求め、次に前記使用率ρ(0),ρ(i)に基づ
    いた第1及び第2領域のセル有効面積s1´,s2´
    を、 s1´ =ρ(0) × S1(0)) +Σ(ρ(i) × (S1(i)) s2´ =ρ(0) × S2(0)) +Σ(ρ(i) × (S1(i)) として求め、 次に第1及び第2領域のセル有効面積s1´,s2´の
    セル合計面積sに対する比率で第1及び第2領域を案分
    した面積S1´,S2´を S1´=(S1+S2)×(s1´/s) S2´=(S1+S2)×(s2´/s) として換算し、該第1及び第2領域の換算面積S1´,
    S2´に対する各セル面積s1,s2の差の絶対値が |s1/S1´−s2/S2´|≦α の条件を満たすように、前記パーティショニング・ベー
    スド配置部によるセルのグループ分けを制御することを
    特徴とするセル配置装置。
  13. 【請求項13】チップ上に占めるセルの面積割合を表す
    セル使用率を制限する制限領域と該制限領域のセル最大
    使用率を各々指定する制限領域指定過程と、 前記制限領域指定過程で指定された制限領域及びセル最
    大使用率を入力して管理する制限領域管理過程と、 前記制限領域管理過程で管理されている前記制限領域の
    セル使用率が指定された前記セル最大使用率を越えない
    ようにセルを配置するセル配置過程と、を備えたことを
    特徴とするセル配置方法。
  14. 【請求項14】請求項13記載のセル配置方法に於い
    て、前記制限領域指定過程は、利用者の操作入力に基づ
    いて前記制限領域及びセル最大使用率を設定することを
    特徴とするセル配置方法。
  15. 【請求項15】請求項13記載のセル配置方法に於い
    て、前記制限領域指定過程は、前記制限領域のセル最大
    使用率として、チップ全体のセル使用率より低い使用率
    を指定することを特徴とするセル配置方法。
  16. 【請求項16】請求項13記載のセル配置方法に於い
    て、前記制限領域指定過程は、通常のチップのセル使用
    率60乃至70%に対し、前記制限領域のセル最大使用
    率として使用率50%を指定することを特徴とするセル
    配置方法。
  17. 【請求項17】請求項13記載のセル配置方法に於い
    て、前記制限領域指定過程は、配置位置が固定的に決め
    られた既配置セルの位置に基づいてチップ上でブロック
    分割した各過程分の配線密度を見積もり、該配線密度に
    基づいてセル使用率を制限する制限領域及び該制限領域
    のセル最大使用率を決定することを特徴とするセル配置
    方法。
  18. 【請求項18】請求項17記載のセル配置方法に於い
    て、前記制限領域指定過程は、 チップ上に配置位置が固定的に決められた既配置セルを
    配置する既配置セル配置過程と、 前記既配置セルを対象に概略配線を行う概略配線過程
    と、 前記チップを所定サイズのブロックに分割し、各ブロッ
    ク毎に前記概略配線に基づいて配線密度を検出して配線
    混雑領域か否か判定する配線混雑領域判定過程と、 前記配線混雑領域をセル使用率を制限する制限領域に決
    定し、該制限領域に通常のセル使用率より低い使用率を
    セル最大使用率として決定する制限領域指定過程と、を
    備えたことを特徴とするセル配置方法。
  19. 【請求項19】請求項13記載のセル配置方法に於い
    て、前記制限領域指定過程は、暫定配置したセルの位置
    に基づいてチップ上でブロック分割した各過程分の配線
    密度を見積もり、該配線密度に基づいてセル使用率を制
    限する制限領域及び該制限領域のセル最大使用率を決定
    することを特徴とするセル配置方法。
  20. 【請求項20】請求項19記載のセル配置方法に於い
    て、前記制限領域指定過程は、 チップ上にセルを暫定的に配置するセル暫定配置過程
    と、 前記暫定配置セルを対象に概略配線を行う概略配線過程
    と、 前記チップを所定サイズのブロックに分割し、各ブロッ
    ク毎に前記概略配線に基づいて配線密度を検出して配線
    混雑領域か否か判定する配線混雑領域判定過程と、 前記配線混雑領域をセル使用率を制限する制限領域に決
    定し、該制限領域に通常のセル使用率より低い使用率を
    セル最大使用率として決定する制限領域指定過程と、を
    備えたことを特徴とするセル配置方法。
  21. 【請求項21】請求項18又は20記載のセル配置方法
    に於いて、前記制限領域決定過程は、前記制限領域のセ
    ル最大使用率としてチップ全体のセル使用率より低い使
    用率を決定することを特徴とするセル配置方法。
  22. 【請求項22】請求項18又は20記載のセル配置方法
    に於いて、前記制限領域決定過程は、前記制限領域のセ
    ル最大使用率を予め登録した使用率情報を有し、該使用
    率情報の参照により前記制限領域のセル最大使用率を決
    定することを特徴とするセル配置方法。
  23. 【請求項23】請求項13記載のセル配置方法に於い
    て、前記セル配置過程は、 チップ領域について順次2分割を繰り返しながら、各分
    割毎に2分割した領域間のネット数を示すコストが最小
    となるようにチップをグループ分けするパーティショニ
    ング・ベースド配置過程と、 前記分割した2領域の合計面積(S1+S2)を、2領
    域の合計セル面積sに対する前記制限領域のセル最大使
    用率に基づく各領域のセル有効面積s1´,s2´の比率で
    案分した各領域の面積S1´,S2´に換算し、各領域
    の換算面積S1´,S2´に対する各領域のセル合計面
    積に比率の差が所定の範囲内となるように、前記パーテ
    ィショニング・ベースド配置過程によるセルのグループ
    分けを制御するセル配置制御過程と、を備えたことを特
    徴とするセル配置方法。
  24. 【請求項24】請求項13記載のセル配置方法に於い
    て、前記セル配置制御過程は、 2分割された第1領域と第2領域の各セル面積をs1,
    s2、全セル面積をs(=s1+s2) 、第1領域の面積を
    S1、第2領域の面積をS2、i番目の制限領域の内の
    第1領域に入っている過程分の面積をS1(i)、i番
    目の制限領域の内の第2領域に入っている過程分の面積
    をS2(i)、i番目の制限領域で指定したセル使用率
    をρ(i)とした場合、 第1及び第2領域の各々についてセル使用率の制限のな
    い部分の面積S1(0)、S2(0)を、 S1(0)S1−ΣS1(i) S2(0)S2−ΣS2(i) として求め、次にセル使用率の制限のない部分の使用率
    ρ(0)を、 ρ(0) ={(全セル面積)−(使用率指定領域の合計セル面積)}/(全面積) =[s−Σ{ρ(i) × (S1(i)+S2(i))}]/S1(0)+S2(0)) として求め、 次に前記使用率ρ(0),ρ(i)に基づいた第1及び
    第2領域のセル有効面積s1´,s2´を、 s1´ =ρ(0) × S1(0)) +Σ(ρ(i) × (S1(i)) s2´ =ρ(0) × S2(0)) +Σ(ρ(i) × (S1(i)) として求め、 次に第1及び第2領域のセル有効面積s1´,s2´の
    セル合計面積sに対する比率で第1及び第2領域を案分
    した面積S1´,S2´を S1´=(S1+S2)×(s1´/s) S2´=(S1+S2)×(s2´/s) として換算し、該第1及び第2領域の換算面積S1´,
    S2´に対する各セル面積s1,s2の差の絶対値が |s1/S1´−s2/S2´|≦α の条件を満たすように、前記パーティショニング・ベー
    スド配置過程によるセルのグループ分けを制御すること
    を特徴とするセル配置方法。
  25. 【請求項25】チップ上に占めるセルの面積割合を表す
    セル使用率を制限する制限領域と該制限領域のセル最大
    使用率を各々指定する制限領域指定モジュールと、 前記制限領域指定モジュールで指定された制限領域及び
    セル最大使用率を入力して管理する制限領域管理モジュ
    ールと、 前記制限領域管理モジュールで管理されている前記制限
    領域のセル使用率が指定された前記セル最大使用率を越
    えないようにセルを配置するセル配置モジュールと、を
    有するセル配置プログラムを記録したコンピュータ読取
    り可能な記録媒体。
  26. 【請求項26】請求項25記載の記録媒体に於いて、前
    記制限領域指定モジュールは、利用者の操作入力に基づ
    いて前記制限領域及びセル最大使用率を設定することを
    特徴とする記録媒体。
  27. 【請求項27】請求項25記載の記録媒体に於いて、前
    記制限領域指定モジュールは、 チップ上に配置位置が固定的に決められた既配置セルを
    配置する既配置セル配置モジュールと、 前記既配置セルを対象に概略配線を行う概略配線モジュ
    ールと、 前記チップを所定サイズのブロックに分割し、各ブロッ
    ク毎に前記概略配線に基づいて配線密度を検出して配線
    混雑領域か否か判定する配線混雑領域判定モジュール
    と、 前記配線混雑領域をセル使用率を制限する制限領域に決
    定し、該制限領域に通常のセル使用率より低い使用率を
    セル最大使用率として決定する制限領域指定モジュール
    と、を備えたことを特徴とする記録媒体。
  28. 【請求項28】請求項25記載のセル配置装置に於い
    て、前記制限領域指定モジュールは、 チップ上にセルを暫定的に配置するセル暫定配置モジュ
    ールと、 前記暫定配置セルを対象に概略配線を行う概略配線モジ
    ュールと、 前記チップを所定サイズのブロックに分割し、各ブロッ
    ク毎に前記概略配線に基づいて配線密度を検出して配線
    混雑領域か否か判定する配線混雑領域判定モジュール
    と、 前記配線混雑領域をセル使用率を制限する制限領域に決
    定し、該制限領域に通常のセル使用率より低い使用率を
    セル最大使用率として決定する制限領域指定モジュール
    と、を備えたことを特徴とする記録媒体。
  29. 【請求項29】請求項25記載の記録媒体に於いて、前
    記セル配置モジュールは、 チップ領域について順次2分割を繰り返しながら、各分
    割毎に2分割した領域間のネット数を示すコストが最小
    となるようにチップをグループ分けするパーティショニ
    ング・ベースド配置モジュールと、 前記分割した2領域の合計面積(S1+S2)を、2領
    域の合計セル面積sに対する前記制限領域のセル最大使
    用率に基づく各領域のセル有効面積s1´,s2´の比率で
    案分した各領域の面積S1´,S2´に換算し、各領域
    の換算面積S1´,S2´に対する各領域のセル合計面
    積に比率の差が所定の範囲内となるように、前記パーテ
    ィショニング・ベースド配置モジュールによるセルのグ
    ループ分けを制御するセル配置制御モジュールと、を備
    えたことを特徴とする記録媒体。
  30. 【請求項30】請求項29記載の記録媒体に於いて、前
    記セル配置制御モジュールは、 2分割された第1領域と第2領域の各セル面積をs1,
    s2、全セル面積をs(=s1+s2) 、第1領域の面積を
    S1、第2領域の面積をS2、i番目の制限領域の内の
    第1領域に入っている部分の面積をS1(i)、i番目
    の制限領域の内の第2領域に入っている部分の面積をS
    2(i)、i番目の制限領域で指定したセル使用率をρ
    (i)とした場合、 第1及び第2領域の各々についてセル使用率の制限のな
    い部分の面積S1(0)、S2(0)を、 S1(0)S1−ΣS1(i) S2(0)S2−ΣS2(i) として求め、 次にセル使用率の制限のない部分の使用率ρ(0)を、 ρ(0) ={(全セル面積)−(使用率指定領域の合計セル面積)}/(全面積) =[s−Σ{ρ(i) × (S1(i)+S2(i))}]/S1(0)+S2(0)) として求め、 次に前記使用率ρ(0),ρ(i)に基づいた第1及び
    第2領域のセル有効面積s1´,s2´を、 s1´ =ρ(0) × S1(0)) +Σ(ρ(i) × (S1(i)) s2´ =ρ(0) × S2(0)) +Σ(ρ(i) × (S1(i)) として求め、 次に第1及び第2領域のセル有効面積s1´,s2´の
    セル合計面積sに対する比率で第1及び第2領域を案分
    した面積S1´,S2´を S1´=(S1+S2)×(s1´/s) S2´=(S1+S2)×(s2´/s) として換算し、該第1及び第2領域の換算面積S1´,
    S2´に対する各セル面積s1,s2の差の絶対値が |s1/S1´−s2/S2´|≦α の条件を満たすように、前記パーティショニング・ベー
    スド配置モジュールによるセルのグループ分けを制御す
    ることを特徴とする記録媒体。
JP14092198A 1998-05-22 1998-05-22 セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体 Expired - Fee Related JP3564295B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP14092198A JP3564295B2 (ja) 1998-05-22 1998-05-22 セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体
US09/176,260 US6327694B1 (en) 1998-05-22 1998-10-20 Cell placement apparatus and method, and computer readable record medium having cell placement program recorded thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14092198A JP3564295B2 (ja) 1998-05-22 1998-05-22 セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JPH11338892A true JPH11338892A (ja) 1999-12-10
JP3564295B2 JP3564295B2 (ja) 2004-09-08

Family

ID=15279921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14092198A Expired - Fee Related JP3564295B2 (ja) 1998-05-22 1998-05-22 セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体

Country Status (2)

Country Link
US (1) US6327694B1 (ja)
JP (1) JP3564295B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002083004A (ja) * 2000-06-22 2002-03-22 Fujitsu Ltd Lsiのセル配置方法及び装置及びプログラム
JP2010080833A (ja) * 2008-09-29 2010-04-08 Oki Semiconductor Co Ltd 半導体記憶装置
CN102087674A (zh) * 2009-12-07 2011-06-08 晨星软件研发(深圳)有限公司 防止壅塞配置装置及方法
US8156465B2 (en) 2005-09-09 2012-04-10 Fujitsu Semiconductor Limited Layout method and layout program for semiconductor integrated circuit device

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3349989B2 (ja) * 1999-06-18 2002-11-25 エヌイーシーマイクロシステム株式会社 半導体集積回路装置及びそのレイアウト方法及び装置
JP3986717B2 (ja) * 1999-12-01 2007-10-03 富士通株式会社 パス決定方法及び記憶媒体
JP2001306640A (ja) * 2000-04-17 2001-11-02 Mitsubishi Electric Corp 自動配置配線手法、自動配置配線装置、および半導体集積回路
US6889372B1 (en) 2000-07-15 2005-05-03 Cadence Design Systems Inc. Method and apparatus for routing
US6898773B1 (en) 2002-01-22 2005-05-24 Cadence Design Systems, Inc. Method and apparatus for producing multi-layer topological routes
TW451457B (en) * 2000-07-17 2001-08-21 Taiwan Semiconductor Mfg Method to optimize the placement design by adjusting the reference routing
US7080336B2 (en) 2000-12-06 2006-07-18 Cadence Design Systems, Inc. Method and apparatus for computing placement costs
US6957410B2 (en) 2000-12-07 2005-10-18 Cadence Design Systems, Inc. Method and apparatus for adaptively selecting the wiring model for a design region
US6516455B1 (en) * 2000-12-06 2003-02-04 Cadence Design Systems, Inc. Partitioning placement method using diagonal cutlines
EP1362373A2 (en) 2000-12-06 2003-11-19 Simplex Solutions, Inc. Method and apparatus for considering diagonal wiring in placement
US7024650B2 (en) * 2000-12-06 2006-04-04 Cadence Design Systems, Inc. Method and apparatus for considering diagonal wiring in placement
US7055120B2 (en) 2000-12-06 2006-05-30 Cadence Design Systems, Inc. Method and apparatus for placing circuit modules
US7003754B2 (en) 2000-12-07 2006-02-21 Cadence Design Systems, Inc. Routing method and apparatus that use of diagonal routes
US6826737B2 (en) * 2000-12-06 2004-11-30 Cadence Design Systems, Inc. Recursive partitioning placement method and apparatus
US7073150B2 (en) 2000-12-07 2006-07-04 Cadence Design Systems, Inc. Hierarchical routing method and apparatus that use diagonal routes
US6883154B2 (en) 2001-01-19 2005-04-19 Cadence Design Systems, Inc. LP method and apparatus for identifying route propagations
US6915501B2 (en) 2001-01-19 2005-07-05 Cadence Design Systems, Inc. LP method and apparatus for identifying routes
US6957411B1 (en) 2001-06-03 2005-10-18 Cadence Design Systems, Inc. Gridless IC layout and method and apparatus for generating such a layout
US6951005B1 (en) 2001-06-03 2005-09-27 Cadence Design Systems, Inc. Method and apparatus for selecting a route for a net based on the impact on other nets
US7107564B1 (en) 2001-06-03 2006-09-12 Cadence Design Systems, Inc. Method and apparatus for routing a set of nets
US6957408B1 (en) 2002-01-22 2005-10-18 Cadence Design Systems, Inc. Method and apparatus for routing nets in an integrated circuit layout
US6829757B1 (en) 2001-06-03 2004-12-07 Cadence Design Systems, Inc. Method and apparatus for generating multi-layer routes
US6877146B1 (en) 2001-06-03 2005-04-05 Cadence Design Systems, Inc. Method and apparatus for routing a set of nets
US7069530B1 (en) 2001-06-03 2006-06-27 Cadence Design Systems, Inc. Method and apparatus for routing groups of paths
US6931616B2 (en) 2001-08-23 2005-08-16 Cadence Design Systems, Inc. Routing method and apparatus
US7143382B2 (en) 2001-08-23 2006-11-28 Cadence Design Systems, Inc. Method and apparatus for storing routes
US6795958B2 (en) * 2001-08-23 2004-09-21 Cadence Design Systems, Inc. Method and apparatus for generating routes for groups of related node configurations
US7398498B2 (en) 2001-08-23 2008-07-08 Cadence Design Systems, Inc. Method and apparatus for storing routes for groups of related net configurations
US6877149B2 (en) 2001-08-23 2005-04-05 Cadence Design Systems, Inc. Method and apparatus for pre-computing routes
US7058913B1 (en) 2001-09-06 2006-06-06 Cadence Design Systems, Inc. Analytical placement method and apparatus
US7089524B1 (en) 2002-01-22 2006-08-08 Cadence Design Systems, Inc. Topological vias route wherein the topological via does not have a coordinate within the region
US7080329B1 (en) 2002-01-22 2006-07-18 Cadence Design Systems, Inc. Method and apparatus for identifying optimized via locations
US7013451B1 (en) 2002-01-22 2006-03-14 Cadence Design Systems, Inc. Method and apparatus for performing routability checking
US7117468B1 (en) 2002-01-22 2006-10-03 Cadence Design Systems, Inc. Layouts with routes with different spacings in different directions on the same layer, and method and apparatus for generating such layouts
US6973634B1 (en) 2002-01-22 2005-12-06 Cadence Design Systems, Inc. IC layouts with at least one layer that has more than one preferred interconnect direction, and method and apparatus for generating such a layout
US7096449B1 (en) 2002-01-22 2006-08-22 Cadence Design Systems, Inc. Layouts with routes with different widths in different directions on the same layer, and method and apparatus for generating such layouts
US6944841B1 (en) 2002-01-22 2005-09-13 Cadence Design Systems, Inc. Method and apparatus for proportionate costing of vias
US6892371B1 (en) 2002-01-22 2005-05-10 Cadence Design Systems, Inc. Method and apparatus for performing geometric routing
US6938234B1 (en) 2002-01-22 2005-08-30 Cadence Design Systems, Inc. Method and apparatus for defining vias
US6795955B2 (en) * 2002-03-15 2004-09-21 Numerical Technologies Method and apparatus for identifying an identical cell in an IC layout with an existing solution
US7069531B1 (en) 2002-07-15 2006-06-27 Cadence Design Systems, Inc. Method and apparatus for identifying a path between source and target states in a space with more than two dimensions
US7051298B1 (en) * 2002-06-04 2006-05-23 Cadence Design Systems, Inc. Method and apparatus for specifying a distance between an external state and a set of states in space
US7047512B1 (en) 2002-06-04 2006-05-16 Cadence Design Systems, Inc. Method and apparatus for specifying a cost function that represents the estimated distance between an external state and a set of states in a space
US7058917B1 (en) 2002-06-04 2006-06-06 Cadence Design Systems, Inc. Method and apparatus for specifying a cost function that represents the estimated distance between an external state and a set of states in a space
US7010771B2 (en) * 2002-11-18 2006-03-07 Cadence Design Systems, Inc. Method and apparatus for searching for a global path
US7171635B2 (en) * 2002-11-18 2007-01-30 Cadence Design Systems, Inc. Method and apparatus for routing
US7216308B2 (en) * 2002-11-18 2007-05-08 Cadence Design Systems, Inc. Method and apparatus for solving an optimization problem in an integrated circuit layout
US7003752B2 (en) * 2002-11-18 2006-02-21 Cadence Design Systems, Inc. Method and apparatus for routing
US6892369B2 (en) * 2002-11-18 2005-05-10 Cadence Design Systems, Inc. Method and apparatus for costing routes of nets
US7093221B2 (en) * 2002-11-18 2006-08-15 Cadence Design Systems, Inc. Method and apparatus for identifying a group of routes for a set of nets
US7624367B2 (en) 2002-11-18 2009-11-24 Cadence Design Systems, Inc. Method and system for routing
US7480885B2 (en) * 2002-11-18 2009-01-20 Cadence Design Systems, Inc. Method and apparatus for routing with independent goals on different layers
US6988257B2 (en) * 2002-11-18 2006-01-17 Cadence Design Systems, Inc. Method and apparatus for routing
US6996789B2 (en) * 2002-11-18 2006-02-07 Cadence Design Systems, Inc. Method and apparatus for performing an exponential path search
US7080342B2 (en) * 2002-11-18 2006-07-18 Cadence Design Systems, Inc Method and apparatus for computing capacity of a region for non-Manhattan routing
US7047513B2 (en) * 2002-11-18 2006-05-16 Cadence Design Systems, Inc. Method and apparatus for searching for a three-dimensional global path
US7013445B1 (en) 2002-12-31 2006-03-14 Cadence Design Systems, Inc. Post processor for optimizing manhattan integrated circuits placements into non manhattan placements
US7089519B1 (en) 2002-12-31 2006-08-08 Cadence Design System, Inc. Method and system for performing placement on non Manhattan semiconductor integrated circuits
US7506295B1 (en) 2002-12-31 2009-03-17 Cadence Design Systems, Inc. Non manhattan floor plan architecture for integrated circuits
JP4204444B2 (ja) * 2003-11-04 2009-01-07 パナソニック株式会社 半導体集積回路の設計方法
CN101739479B (zh) * 2008-11-25 2012-07-04 晨星软件研发(深圳)有限公司 防止壅塞配置方法及装置
US10325050B2 (en) * 2016-04-14 2019-06-18 Oracle International Corporation User-defined partitions for logical and physical circuit syntheses
US11113442B2 (en) * 2017-09-28 2021-09-07 Intel Corporation Methods and apparatus for reducing reliability degradation on an integrated circuit
KR20230114937A (ko) * 2022-01-26 2023-08-02 삼성전자주식회사 반도체 집적 회로의 레이아웃 설계 방법, 이를 이용한 반도체 집적 회로의 설계 방법, 및 이를 수행하는 설계 시스템
KR20230122516A (ko) * 2022-02-14 2023-08-22 주식회사 마키나락스 금지 영역 정보를 기반으로 반도체 소자를 배치하는 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0831580B2 (ja) 1987-04-17 1996-03-27 日本電気株式会社 集積回路の配置設計方法
JPH04160570A (ja) 1990-10-24 1992-06-03 Nec Corp 配置改良方式
JPH05190813A (ja) 1992-01-08 1993-07-30 Hitachi Ltd 集積回路の配置設計方法
JP3193167B2 (ja) 1992-12-11 2001-07-30 株式会社東芝 論理合成システム
US6067409A (en) * 1996-06-28 2000-05-23 Lsi Logic Corporation Advanced modular cell placement system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002083004A (ja) * 2000-06-22 2002-03-22 Fujitsu Ltd Lsiのセル配置方法及び装置及びプログラム
JP4486276B2 (ja) * 2000-06-22 2010-06-23 富士通株式会社 Lsiのセル配置情報生成装置及び変更装置及びプログラム
US8156465B2 (en) 2005-09-09 2012-04-10 Fujitsu Semiconductor Limited Layout method and layout program for semiconductor integrated circuit device
JP2010080833A (ja) * 2008-09-29 2010-04-08 Oki Semiconductor Co Ltd 半導体記憶装置
CN102087674A (zh) * 2009-12-07 2011-06-08 晨星软件研发(深圳)有限公司 防止壅塞配置装置及方法
CN102087674B (zh) * 2009-12-07 2014-10-29 晨星软件研发(深圳)有限公司 防止壅塞配置装置及方法

Also Published As

Publication number Publication date
US6327694B1 (en) 2001-12-04
JP3564295B2 (ja) 2004-09-08

Similar Documents

Publication Publication Date Title
JP3564295B2 (ja) セル配置装置及び方法並びにセル配置プログラムを記録したコンピュータ読取り可能な記録媒体
JP4719265B2 (ja) 確率的相互接続構造設計のためのシステムおよび方法
US7089523B2 (en) Method and apparatus for using connection graphs with potential diagonal edges to model interconnect topologies during placement
US6848091B2 (en) Partitioning placement method and apparatus
JP4474404B2 (ja) パッキングベースのマクロ配置方法とそれを用いた半導体チップ
US7032198B2 (en) Method of optimizing signal lines within circuit, optimizing apparatus, recording medium having stored therein optimizing program, and method of designing circuit and recording medium having stored therein program for designing circuit
US7080336B2 (en) Method and apparatus for computing placement costs
Chen et al. A high-quality mixed-size analytical placer considering preplaced blocks and density constraints
US8984465B1 (en) Methods, systems, and articles of manufacture for automatically assigning track patterns to regions for physical implementation of an electronic design
JP2009054172A (ja) 配線処理方法及び配線処理装置並びに配線処理プログラム用記録媒体
JPH04229375A (ja) 回路設計方法
US8201128B2 (en) Method and apparatus for approximating diagonal lines in placement
CN110795908A (zh) 偏差驱动的总线感知总体布线方法
JPH08221451A (ja) データパス回路のレイアウト設計方法
US6519745B1 (en) System and method for estimating capacitance of wires based on congestion information
JP2010066871A (ja) 半導体集積回路のレイアウト設計方法及びレイアウト設計装置
US8473881B1 (en) Multi-resource aware partitioning for integrated circuits
CN112100971A (zh) 构建用于集成电路的分层时钟树的方法
JP2018511928A (ja) 3d集積回路のための重畳ブロックおよび複製されたピンを用いた知的財産ブロック設計
CN112861466B (zh) 一种布线轨道分配方法、电子设备及计算机可读存储介质
US6317863B1 (en) Method and apparatus for irregular datapath placement in a datapath placement tool
US8555231B2 (en) Automatic wiring device, automatic wiring method, and automatic wiring program
US11222159B2 (en) Method, computer-based system and computer program product for planning partitions for a programmable gate array
US6260184B1 (en) Design of an integrated circuit by selectively reducing or maintaining power lines of the device
US8151232B2 (en) Repeater driven routing methodology

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040224

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040325

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040518

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040607

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090611

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100611

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110611

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120611

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120611

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140611

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees