JP3455085B2 - セル自動配置方法 - Google Patents

セル自動配置方法

Info

Publication number
JP3455085B2
JP3455085B2 JP28889097A JP28889097A JP3455085B2 JP 3455085 B2 JP3455085 B2 JP 3455085B2 JP 28889097 A JP28889097 A JP 28889097A JP 28889097 A JP28889097 A JP 28889097A JP 3455085 B2 JP3455085 B2 JP 3455085B2
Authority
JP
Japan
Prior art keywords
cell
procedure
horizontal direction
vertical
merging
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.)
Expired - Fee Related
Application number
JP28889097A
Other languages
English (en)
Other versions
JPH10189750A (ja
Inventor
星 佳 記 月
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 JP28889097A priority Critical patent/JP3455085B2/ja
Publication of JPH10189750A publication Critical patent/JPH10189750A/ja
Application granted granted Critical
Publication of JP3455085B2 publication Critical patent/JP3455085B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、セル自動配置方法
に係り、特に、スタンダードセル方式による半導体装置
のセル配置設計において、セルを2次元に配列するセル
自動配置方法に関する。
【0002】
【従来の技術】従来より、半導体集積回路のセル配置設
計においては、スタンダードセル配置方法が用いられ
る。
【0003】図17に、スタンダードセル配置方法によ
り設計された半導体装置のレイアウト図を示す。この方
法は、まず、基本論理回路を組み合わせた論理回路・論
理ブロックを、最小の占有面積で、高性能が得られるよ
うに最適設計されスタンダードセルをコンピュータに登
録しておく。そして、半導体装置を設計する際に、登録
された各種スタンダードセルを選択し、組み合わせるこ
とにより、セルの配置設計を行うものである。図17に
示すように、外部端子145、146等を有する半導体
集積回路上に、所望のセル141、142等を複数列に
並べて、各セル及び外部端子を接続する配線143、1
44等の配線長の合計が最も短くなるように、セル配
置、セル列間隔及び配線パターン等を決定する。
【0004】このようなセル配置等の代表的なアルゴリ
ズムとしては、ミニマム・カット(minimun-cut)法が
知られている(I. Bhandari et al. " The Min-Cut Shu
ffle:Toward a Solution for the Global Effect Probl
em of Min-Cut Placement" 25th ACM/IEEE Design Auto
mation Conference, Paper 41.6, pp.681-685,1988 IEE
E、等参照)。この方法では、セルの2次元座標配置
を、大きいセル群について分割し、分割したセル群間の
接続ネットの本数を最小化し、その後、さらに逐次細分
割して、それら分割したセル群間の接続ネットの本数を
最小化していく操作を繰り返していくものである。
【0005】
【発明が解決しようとする課題】しかしながら、このよ
うなミニマム・カット(minimun-cut)法においては、
セル・クラスタ間を接続するネット(信号線)数を重視
しているために、配線の長短の差が生じやすい。また、
大小の基本セルが混在する場合に、小さいセル同士が集
中するなど、全体の接続端子の分布に偏りが生じやす
い。
【0006】そのため、全体のチップサイズの増大につ
ながるので、生産コストの増大を引き起こす。さらに、
回路動作に必要な回路動作タイミングを満たすことが困
難になるので、設計作業の繰り返しによる設計期間及び
設計コストの増大を引き起こしていた。
【0007】本発明の目的は、スタンダードセル方式の
配置設計において集積度を向上させ、且つ、1回の設計
作業で所望の配置設計を完了することにより、生産コス
ト、設計期間及び設計コストを大幅に低減させることの
可能なセル自動配置方法を提供することである。
【0008】
【課題を解決するための手段】本発明によれば、各セル
の接続情報に基づいて、列毎又は行毎に、外部端子の縦
方向又は横方向成分のみにより、複数の前記セルを1次
元縦方向又は横方向に配列してセル群を形成する配列手
順と、前記配列手順により形成された前記セル群を、列
毎又は行毎に、縦方向又は横方向の所定数に分割する分
割手順と、前記分割手順により縦方向又は横方向に分割
された複数のセル群を、所定数の1次元横方向又は縦方
向にマージすることにより他のセル群を形成するマージ
手順とを備え、前記配列手順及び前記分割手順による各
処理動作を、縦方向成分及び横方向成分に関して交互に
繰り返すことにより、複数の前記セルを所定の行数及び
列数になるように2次元以上に配置するようにしたスタ
ンダードセル方式によるセル自動配置方法が提供され
る。
【0009】また、本発明によれば、各セルの接続情報
に基づいて、各列毎に外部端子の縦方向成分のみによ
り、複数の前記セルを1次元縦方向に配列して第1のセ
ル群を形成する縦方向1次元配列手順と、前記縦方向1
次元配列手順により形成された前記縦方向セル群を、各
列毎に2n分割(nは処理動作の回数で整数)して第2
のセル群を形成する縦方向分割手順と、前記縦方向分割
手順により分割されたセル群を、各行毎に各横方向毎に
マージして第3のセル群を形成する横方向マージ手順
と、前記横方向マージ手順によりマージされた前記第3
のセル群を、各行毎に外部端子の横方向成分のみによ
り、1次元横方向に配列して第4のセル群を形成する横
方向1次元配列手順と、前記横方向1次元配列手順によ
り形成された第4のセル群を、各行毎に2n分割(nは
処理動作の回数で整数)して第5のセル群を形成する横
方向分割手順と、前記横方向分割手順により分割された
セル群を、各列毎にマージして第5のセル群を形成する
縦方向マージ手順とを備え、以下、前記縦方向マージ手
順、前記縦方向1次元配列手順、前記縦方向分割手順に
よる縦方向一連動作処理と、前記横方向マージ手順、前
記横方向1次元配列手順、前記横方向分割手順による横
方向一連処理動作とを、所定の行数及び列数に応じて縦
方向又は横方向について適宜繰り返すことにより、複数
の前記セルを2次元以上に配置するようにしたスタンダ
ードセル方式により半導体装置の配置設計を行うセル自
動配置方法が提供される。
【0010】このような方法では縦と横を交換して処理
を行うことができる。
【0011】このように、本発明は、単純に1次元配
列、分割及びマージの作業を繰り返すことにより、接続
関係を有する複数のセルの2次元配列を実現するもので
ある。動作フローとしては、例えば、(1)縦方向1次
元配列、(2)縦方向分割、(3)横方向セル群マー
ジ、(4)横方向1次元配列、(5)横方向分割、
(6)縦方向セル群マージ、という各動作の繰り返しと
なる。または、(1)横方向1次元配列、(2)横方向
分割、(3)縦方向セル群マージ、(4)縦方向1次元
配列、(5)縦方向分割、(6)横方向セル群マージ、
という各動作の繰り返しとしてもよい。
【0012】このような動作フローにより、セル内部の
接続ピンの分布密度の偏りが少ない、理想的な配置設計
を高速に求めることができる。
【0013】また、本発明の配置方法においては、単純
な1次元配列を基本として分割及びマージの作業を繰り
返しているため、半導体装置全体のフロアプランの影響
を受けにくく、且つ、回路中のフリップフロップ間の信
号遅延時間の制約を与える、又は1次元のセル配列の制
約を与える等のパス制約を満たすのに非常に適してい
る。
【0014】また、配線リソースの残存量のバランスを
調べる手順と、このバランスが良好であるときには前記
縦方向でのマージ、配列改善、分割の第1の一連動作処
理と前記横方向でのマージ、配列改善、分割の第2の一
連動作処理を交互に選択し、バランスが不良であるとき
には交互選択処理を停止させる手順をさらに含むことが
できる。
【0015】さらに、縦方向でのマージ、配列改善、分
割の第1の一連動作処理と横方向でのマージ、配列改
善、分割の第2の一連動作処理を単位繰り返しステップ
として、所定数の繰り返し後に配線リソースの残存量の
バランスを調べる手順と、このバランスが良好でないと
きにはセルデータを変更する手順と、適当な繰り返し単
位へ移行する手順を備え、あるいは単にセルデータの一
部を変更して次の繰り返し処理に移行することができ
る。
【0016】このような配線リソースのバランスを考慮
したセル配置方法では、配線の集中を避けることがで
き、より適切な配置設計が可能となる。
【0017】
【発明の実施の形態】以下に、本発明のセル自動配置方
法について詳細に説明する。
【0018】まず、図1に、本発明が適用される半導体
集積回路チップの配置概観図を示す。
【0019】図1においては、一例として、端子1〜1
6は、外部入力又は外部出力のための端子であり、これ
らの座標は既に定められている。また、半導体集積回路
のチップ上に、セル群17〜20を含むような4行のセ
ル構成として、各セルを最適に配列する場合を想定す
る。また、各セルは、例えば、セルの幅、長さ又は面
積、セルへの入力ネット(信号)名及び入力端子番号、
セルからの出力ネット(信号)名及び出力端子番号等の
接続情報を有する。接続情報としては、周知の接続記述
言語等により、各セルに対して定めることができる。
【0020】図2に、本発明の第1の実施の形態にかか
るセル自動配置方法の動作フローチャートを示す。
【0021】最初にセルの初期配置が行われる(ステッ
プS01)。ここでは、すべてのセル情報を識別名順等
で1つずつ図示しない記憶部から取り出し、初期配置を
しようとするセルにつながる配線長が最小になるよう
に、そのセルに接続される外部端子位置や既配置セルと
の関係から初期配置を求める。具体的には、まず外部端
子に接続されるセルを先に配置し、次にこの外部端子に
接続されたセルに接続されるセルを配線長が最短になる
ように配置する。これらの処理をすべてのセルについて
繰り返し、決定されたセルの位置を初期配置状態とす
る。
【0022】次に、行(row )の数及び列(columun )
の数を初期化する(ステップS02)。すなわち、行数
及び列数の初期値を、それぞれ「1」とする。
【0023】次に、行数が、最終値に達しているか否か
を判断する(ステップS03)。なお、行数及び列数の
最終値は、予め設定されているものとする。ここでは、
一例として、4行4列のセル配置を持つ半導体集積回路
を想定し、行及び列の最終値はそれぞれ「4」と設定さ
れているものとする。行数が設定された最終値に達して
いる場合、列数を判定する処理動作(ステップS07)
に移行する。
【0024】行数が最終値に達していない場合、縦方向
1次元セル配列を得るために、同一列のセルをマージす
る(ステップS04)。図3に、縦方向1次元配列を行
った半導体集積回路の概観図を示す。図3(a)に示さ
れるように、縦方向1次元配列端子1〜4及び端子9〜
12は、それぞれのY座標が同じなので、それぞれ上下
端の位置にある1点に配置する。最初は列は一つである
ので、全セルがマージされている状態であり、図3
(a)に示すように、半導体集積回路チップ上の全セル
は、セル群21として示されるように縦方向に1列に配
置された。
【0025】次に、1次元配列された列群を、各セルの
接続情報に基づきY軸方向成分のみでソートすることに
より配置改善する(ステップS05)。この目的のた
め、各セルの接続情報に基づき、そのセルの理想Y座標
を算出する。この理想Y座標は具体的には、そのセルに
接続される外部端子の位置および他のセルとの接続情報
から、配線の混み具合を参酌しつつ例えば配線長の合計
が最小になるような位置として求められる。例えば、図
3(b)に示されるように、セル28の理想Y座標につ
いては、セルの接続情報から端子23、24の位置関係
を考慮してセル28’の位置として算出される。この理
想座標は一般的には接続先についての重心位置として求
められる。
【0026】そして、この計算を全てのセルについて実
行した後に、それぞれのセルの理想Y座標の順にソート
して、1次元配列を得る。このようなソートのための動
作を、必要に応じて何度か繰り返すことにより、理想1
次元配置を得ることもできる。
【0027】次に、得られた1次元配列を上下2つの行
のセル群に分割する(ステップS06)。分割後、行数
を2倍に設定する。すなわち、 行数=行数*2 と定義する。
【0028】図4に、縦方向1次元配列について縦方向
分割を行った半導体集積回路の概観図を示す。この操作
により、セル群(T)31及び(B)32という、上下
2分割の1次元配列が求められた。
【0029】次に、列数が、最終値に達したか否かを判
断する(ステップS07)。列数が設定された最終値に
達している場合、行数及び列数を判定する処理動作(ス
テップS11)に移行する。ステップS11で、行数及
び列数の両者が最終値に達した場合は、終了となる。
【0030】ここで、列数が最終値に達していない場合
(ステップS07)、同一行のセルをマージする(ステ
ップS08)。
【0031】図5に、横方向1次元配列について横方向
セル群マージ及び横方向1次元配列改善を行った半導体
集積回路の概観図を示す。
【0032】最初はいずれの行についても列数が一つで
あるので、分割された行ごとに全セルがマージされてい
る状態である。ここでは、セル群31に対応する端子7
及び8、端子13及び14は、それぞれX座標が等しい
ので、左右端のそれぞれ1点に配置する。同様に、セル
群32に対応する端子5及び6、端子15及び16も、
それぞれX座標が等しいので、左右端のそれぞれ1点に
配置する。
【0033】さらに、得られた1次元配列内で、行毎に
配置改善する(ステップS09)。すなわち、上述した
列の場合と同様に、得られた上下2つの横方向セル群
(T)41、(B)42について、それぞれ外部端子等
の接続情報のX軸方向成分のみを考慮してソートして配
置改善する。
【0034】次に、配置改善した各列のセル群(T)4
1及び(B)42を、それぞれ2つに分割し、分割後、
行数を2倍に設定する(ステップS10)。
【0035】図6に、横方向分割を行った半導体集積回
路の概観図を示す。
【0036】このようにして、全体のセル群は、行数
「2」及び列数「2」の4つのセル群(TL)51,
(TR)52,(BL)53,(BR)54に分割され
た。
【0037】次に、ステップS03からの動作を繰り返
すことになる。すなわち、行数が現在「2」であり、最
終値「4」に達していないので(ステップS03)、図
6で分割された左右の同一列毎にセル群をマージする
(ステップS04)。図7に、縦方向のセル群マージ、
配列及び分割を行った半導体集積回路の概観図を示す。
【0038】ここでは、図7(a)に示すように、セル
群(TL)51及び(BL)53をマージすることによ
り、セル群(TL+BL)60が求められる。同様に、
セル群(TR)52及び(BR)54をマージすること
により、セル群(BR+TLR)61が求められる。以
下、上述したように、ステップS04により、列毎に、
各セル群60及び61をセルの接続情報に基づき縦方向
にソートして配置改善する。また、その後、図7(b)
に示すように、ステップS05により、列毎に分割す
る。ここでは、2回目の処理であるので、4分割するこ
とになる。すなわち、セル群60については、セル群
(TLT)62,(TLB)63,(BLT)64およ
び(BLB)65に分割し、セル群61については、セ
ル群(TRT)66,(TRB)67,(BRT)68
および(BRB)69に分割する。
【0039】さらに、ステップS07からの動作を繰り
返す。すなわち列行数が「2」であり、最終値「4」に
達していないので(ステップS07)、まず、図7
(b)で4分割された、各行毎にセル群をマージする
(ステップS08)。
【0040】図8に、横方向のセル群マージ、配列及び
分割を行った半導体集積回路の概観図を示す。
【0041】ここでは、図8(a)に示すように、セル
群(TLT)62及び(TRT)66をマージしてセル
群(TLT+TRT)71を構成する。同様にセル群
(TLB)63及び(TRB)67をマージしてセル群
(TLB+TRB)72を構成し、セル群(BLT)6
4及び(BRT)68をマージしてセル群(BLT+B
RT)73を構成し、セル群(BLB)65及び(BR
B)69をマージしてセル群(BLB+BRB)74を
構成する。
【0042】以下、上述したように、ステップS09に
より、各セル群71〜74をセルの接続情報に基づき横
方向にソートして配置改善する。また、その後、図8
(b)に示すように、ステップS10により分割する。
ここでは、2回目の分割処理なので、行毎に4分割する
ことになる。すなわち、セル群(TLT+TRT)71
については、セル群71a(TLTL),71b(TL
TR),71c(TRTL),71d(TRTR)に分
割する。同様にセル群72については、セル群72a〜
72dに分割し、セル群73については、セル群73a
〜73dに分割し、セル群74については、セル群74
a〜74dに分割する。
【0043】ここで、初期設定の行数「4」及び列数
「4」に達したので、ステップS10を経て、処理を終
了する。
【0044】図9に、以上のような本発明に係る処理動
作により配置された半導体集積回路の概観図を示す。こ
のように、各セル又はセル群が半導体集積回路チップ上
の割り当てられた位置に配置される。
【0045】上述の実施の形態の説明では、先に縦方向
に1列に配置したが、先に横方向に1次元配列して処理
を実行することもできる。図10はこのような第2の実
施の形態を示すもので、ステップS21,S22,S3
1およびS32は図2のステップS01,S02,S1
1およびS12に、ステップS23〜S26は図2のス
テップS07〜S10に、ステップS27〜S30は図
2のステップS03〜S06にそれぞれ対応しており、
その詳細な説明は省略する。
【0046】なお、図2と図10の実施例において、行
数と列数は異なる数に設定することができる。
【0047】以下に、先に横方向に1次元配列して処理
を実行するようにした第2の実施の形態における具体的
なセル自動配置について、簡単な例に基づいて詳細に説
明する。なお、この実施例ではセル面積等の情報も考慮
して配置を決定するようにしている。
【0048】ここで、半導体集積回路のチップ上に、セ
ルNo.1〜No.8の8個のセルを配置することを想定す
る。また、これらのセルを2行4列に配置するものと想
定すると、設定される行数は「2」、列数は「4」とな
る。
【0049】セル接続情報としては、外部端子との接続
関係又は他のセルとの接続関係、セルの大きさ等が含ま
れ、例えば、 ”and (N002、P001、N001)” のような接続記述言語等により与えられる。この接続記
述言語の例は、セル種類が「andゲート」であり、所
定の大きさを有し、入力ネット(信号)が「P001」
及び「N001」、出力ネットが「N002」であるこ
とを示す。
【0050】図11に、横方向1次元配列及び横方向分
割を行った半導体集積回路の概観図を示す。図11
(a)に示すように、セルNo.1〜No.8を、X方向のみ
の接続情報を基にして、横方向1次元配列するととも
に、この配列を、各セルNo.1〜No.8の各中心点の位置
関係を用いてソートして、配置改善する。その際、各セ
ルの右上点、左下点等、4隅の各点の位置関係を利用し
ても良い。
【0051】次に、図11(b)に示すように、1次元
セル配列を2分割する。その際、上記のように各セルの
中心点又は4隅の所望の点の位置で2分割しても良い
し、また、面積比を用いて分割しても良い。このように
して、セル群101は、セルNo.1、No.2、No.5、No.
3、No.6から構成され、一方セル群102は、セルNo.
7、No.4、No.8から構成されるように求められた。
【0052】次に、図12に、縦方向1次元配列及び縦
方向分割を行った半導体集積回路の概観図を示す。図1
2(a)に示すように、横方向の場合と同様に、セル群
を縦方向に配列し、Y軸についてソートを行う。ここ
で、図11(a)においては、各区セルのX座標に基づ
いてソートしたのに対し、図12(a)においては、Y
座標に基づいてソートする動作を行うため、各セルの順
番が入れ替わることもある。ここでは、例えば、セルN
o.5とセルNo.3との順番が入れ替わる場合を想定し
た。
【0053】次に、図12(b)に示すように、縦方向
分割を行う。このステップでは、中心付近のセルについ
ては、中心点、面積比等により上下に分割する。このよ
うにして、セル群103〜106のように4分割された
セル群が構成される。ここで、例えば、セル群103
は、セルNo.1、No.2、No.3から構成され、セル群1
04は、セルNo.4及びNo.7から構成され、セル群10
5は、セルNo.5及びNo.6、No.3から構成され、セル
群106は、セルNo.8から構成される。
【0054】次に、図13に、横方向1次元配列及び横
方向分割を行った半導体集積回路の概観図を示す。図1
2(b)において各セルが2行2列に配置されており、
設定された最終値の行数「2」は満たされたが、列数
「4」となっていない。そこで、列をさらに分割する動
作を実行する。
【0055】再び、横方向について処理動作を行う。す
なわち、図12(b)に示されるセル群103と104
とをマージすることにより、図13(a)に示されるよ
うなセル群107を形成する。同様に、セル群105と
106とをマージすることにより、セル群108を形成
する。ここで、セル群107及び108を、各行毎に、
各セルの中心位置等によりソートして、最適の位置に配
置改善する。さらに、それぞれの行毎に、セル群107
及び108を4分割する。
【0056】このようにして、図1(b)のように、半
導体集積回路チップ上の2行4列の各位置に、所望の各
セルが最適配置される。ここで、条件等によっては、例
えば、所定の行及び列の位置が、空きの場合又は複数セ
ルが配置される場合等もある。
【0057】以上のように、この実施例ではセルの接続
関係のみでなく、セルの面積比等の他のセルデータを参
照して配置を決めるようにしているので、より精度の良
い配置が可能となる。
【0058】次に、図14に、配線密度分布図を示す。
従来のミニマム・カット方法によるセル配置を行った場
合の配線密度分布を波線で示し、一方、本発明のセル自
動配置方法によるセル配置を行った場合の配線密度分布
を実線で示す。ここで、横軸は、セルの行番号、縦軸は
各セル行間に跨って配線された配線数を示す。また、こ
の例では、セル数7000個、ネット数7000本の接
続記述言語情報を、行数40及び列数16で配置した場
合を想定した。
【0059】従来では、波線で示すように、2分割又は
4分割したセル行番号の位置では、配線数が少なくなっ
ているものの、全体的な配線分布に偏りがある。これに
対して、本発明のセル自動配線方法を用いた場合には、
配線密度は、各セル行番号にわたってほぼ均一になって
いる。また、このときの合計配線長を計算すると、従来
においては、8.4×106 であったのに対し、本発明
による場合には、7.2×106 となり、14%程改善
された。さらに、全体チップサイズに関しても最大20
%縮小した。
【0060】これにより、製造コストの削減効果が期待
できる。
【0061】また、あるセルの出力に接続されるセル数
(ネット数)であるファンアウト数を調べ、ファン・ア
ウト数毎に最長ネット(配線)の長さを比較した。その
結果、本発明を用いた場合の方が20〜40%程短いこ
とがわかった。さらに、配線長の長短の差を比較する
と、本発明を用いた場合の方がその差も小さくなった。
これにより配置前の予想配線長から大幅にはずれない配
線を実現でき、さらに、回路中に複数存在するフリップ
フロップ間信号経路のパス制約も配線の長短の差なく制
約以内とすることができる。
【0062】この結果、配置設計変更、論理回路変更の
繰り返しを大幅に削減し、設計期間及び設計コストを押
さえることができる。
【0063】次に、配線リソースのバランスを考慮した
本発明にかかるセル自動配置法の他の実施例を示す。こ
こで、配線リソースとはセルを配置しようとする領域内
での最大配線可能量を言う。この配線リソースの残りが
各セルでばらついていると、配線が困難になる局面が予
想されるので、残存配線リソースは各セル間でバランス
がとれていることが必要となる。このため、残存配線リ
ソースのバランスがくずれているときにはこのバランス
を回復する手法が必要となる。
【0064】図15は配線リソース残存量のバランスを
回復するための第1の手法を採用した本発明のセル自動
配置方法の第3の実施の形態を示すフローチャートであ
る。この方法によれば、初期配置(ステップS101)
および初期化(ステップS102)の後、図2のステッ
プS03−S10を単位として1回目(ステップS11
0)からk回目(ステップS130)までを繰り返すこ
とになるが、途中のi回目(ステップS120)では配
線リソースのバランスが良好であるかどうかを調べる
(ステップS122)ようにし、良好でないときにはこ
れまでに決定された配置データを消去し(ステップS1
23)、さらにセルデータを変更して(ステップS12
4)、適当な前の(途中の)繰り返しステップに戻って
配置のやり直しをするようにしている。どのステップま
で戻るかは配線リソースのアンバランスの程度による。
なお、ステップS124におけるセルデータの変更とし
ては、みかけの接続情報やみかけのセル幅変更等があ
る。セルデータを変更して処理をやり直すことにより、
配置結果が異なり、配線リソースのばらつきが解消され
ることが期待できる。
【0065】さらに、図15に示されるように、いずれ
かの前のステップに戻る必要は必ずしもない。すなわ
ち、ステップS122で残存配線リソースのアンバラン
スが発見された場合、これまでの配置データを消去する
ことなく、変更されたセルデータを用いて次のステップ
へ進むこともできる。
【0066】図16は配線リソース残存量のバランスを
回復するための第2の手法を採用した本発明のセル自動
配置方法の第4の実施の形態を示すフローチャートであ
る。この方法によれば、初期配置(ステップS201)
および初期化(ステップS202)の後、図2のステッ
プS03〜S06(ステップS210)とステップS0
7〜S10(ステップS220)が交互に選択され(ス
テップS203)、実行される。そして、ステップS2
10あるいはS220の終了後、行と列が最終値に達し
ていないときには配線リソースのバランスが良好である
かどうかが調べられ(ステップS231)、良好である
ときにはそのまま処理が続行されるが、良好でないとき
には交互選択機能が一時停止される。この結果、縦と横
のいずれかが繰り返されるため、配線リソースのバラン
スが解消されることが期待できる。
【0067】なお、以上の説明では、行及び列の2次元
についてセルを配置したが、座標パラメータを増やすこ
とにより、さらに3次元以上に配置することも可能であ
る。特に3次元とすれば、複数層を有する半導体装置の
設計に適用することができる。
【0068】また、実施例ではセル配置領域は正方形あ
るいは長方形であったが、これに限ることなく、他の任
意の形状であってもセルを配置することができる。
【0069】さらに、実施例では処理の容易さから分割
を2分割としていたが、これに限ることなく、自然数に
分割することができる 。
【0070】
【発明の効果】本発明のようなセル自動配置方法によれ
ば、スタンダードセル方式の配置設計において集積度を
向上させ、且つ、1回の設計作業で所望の配置設計を完
了することにより、生産コスト、設計期間及び設計コス
トを大幅に低減させることができる。
【0071】また、本発明のようなセル自動配置方法に
おいては、単純な1次元配列を基本として分割及びマー
ジの作業を繰り返しているため、半導体装置全体のフロ
アプランの影響を受けにくく、且つ、回路中のフリップ
フロップ間の信号遅延時間に制約を与え、又は1次元の
セル配列制約を与える等のパス制約を満たすのに非常に
適している。
【0072】さらに、信号の流れに沿った配置を行うこ
とができ、配線混雑度が緩和され、配線の偏りが少なく
なる。
【0073】また、配線リソース残量によりセルデータ
の変更を行ったり、縦と横の処理の順を変えるようにし
た場合には配線の集中を適切に避けることができ、より
良好なセル配置を実現することができる。
【図面の簡単な説明】
【図1】本発明の半導体集積回路チップの配置概観図。
【図2】本発明のセル自動配置方法の一実施例にかかる
動作フローチャート。
【図3】縦方向1次元配列を行った半導体集積回路の概
観図。
【図4】縦方向1次元配列について縦方向分割を行った
半導体集積回路の概観図。
【図5】横方向1次元配列について横方向セル群マージ
及び横方向1次元配列改善を行った半導体集積回路の概
観図。
【図6】横方向分割を行った半導体集積回路の概観図。
【図7】縦方向のセル群マージ、配列及び分割を行った
半導体集積回路の概観図。
【図8】横方向のセル群マージ、配列及び分割を行った
半導体集積回路の概観図。
【図9】本発明に係る処理動作により配置された半導体
集積回路の概観図。
【図10】本発明のセル自動配置方法の他の実施例の動
作フローチャート。
【図11】横方向1次元配列及び横方向分割を行った半
導体集積回路の概観図。
【図12】縦方向1次元配列及び縦方向分割を行った半
導体集積回路の概観図。
【図13】横方向1次元配列及び横方向分割を行った半
導体集積回路の概観図。
【図14】本発明と従来技術による配線結果を比較する
配線密度分布図。
【図15】配線リソース残存量のバランスを回復するた
めの第1の手法を採用した本発明のセル自動配置方法の
第3の実施例を示すフローチャート。
【図16】配線リソース残存量のバランスを回復するた
めの第2の手法を採用した本発明のセル自動配置方法の
第4の実施例を示すフローチャート。
【図17】従来のスタンダードセル方法による配置設計
および配線された半導体装置のレイアウト図。
【符号の説明】
1〜16 外部端子 17〜20 セル群 22、27 まとめられた外部端子 23〜26 端子 31、32、41、42、51〜54、60〜69、7
1〜74、101〜108 セル群
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H01L 21/82 H01L 21/822 H01L 27/04 G06F 17/50

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】各セルの接続情報に基づいて、列毎又は行
    毎に、外部端子の縦方向又は横方向成分のみにより、複
    数の前記セルを1次元縦方向又は横方向に配列してセル
    群を形成する配列手順と、 前記配列手順により形成された前記セル群を、列毎又は
    行毎に、縦方向又は横方向の所定数に分割する分割手順
    と、 前記分割手順により縦方向又は横方向に分割された複数
    のセル群を、所定数の1次元横方向又は縦方向にマージ
    することにより他のセル群を形成するマージ手順とを備
    え、 前記配列手順及び前記分割手順による各処理動作を、縦
    方向成分及び横方向成分に関して交互に繰り返すことに
    より、複数の前記セルを所定の行数及び列数になるよう
    に2次元以上に配置するようにしたスタンダードセル方
    式によるセル自動配置方法。
  2. 【請求項2】前記配列手順は、 各セルの接続情報に基づき、配列順序をソートして配置
    改善するソート手順をさらに備えたことを特徴とする請
    求項1に記載のセル自動配置方法。
  3. 【請求項3】前記分割手順は、 各々のセルの面積比、中心位置又は左右上下の端点のい
    ずれかの位置に基づいて、所定数に分割するものである
    ことを特徴とする請求項1に記載のセル自動配置方法。
  4. 【請求項4】前記分割手順は、 所定数に分割する際、最初は2分割とし、以降順次、前
    記分割手順による処理動作を経る際に2n分割(nは処
    理動作の回数で、2以上の整数)とするように分割数を
    設定する手順を含むことを特徴とする請求項1に記載の
    セル自動配置方法。
  5. 【請求項5】各セルの接続情報に基づいて、各列毎に外
    部端子の縦方向成分のみにより、複数の前記セルを1次
    元縦方向に配列して第1のセル群を形成する縦方向1次
    元配列手順と、 前記縦方向1次元配列手順により形成された前記縦方向
    セル群を、各列毎に2n分割(nは処理動作の回数で整
    数)して第2のセル群を形成する縦方向分割手順と、 前記縦方向分割手順により分割されたセル群を、各行毎
    に各横方向毎にマージして第3のセル群を形成する横方
    向マージ手順と、 前記横方向マージ手順によりマージされた前記第3のセ
    ル群を、各行毎に外部端子の横方向成分のみにより、1
    次元横方向に配列して第4のセル群を形成する横方向1
    次元配列手順と、 前記横方向1次元配列手順により形成された第4のセル
    群を、各行毎に2n分割(nは処理動作の回数で整数)
    して第5のセル群を形成する横方向分割手順と、 前記横方向分割手順により分割されたセル群を、各列毎
    にマージして第5のセル群を形成する縦方向マージ手順
    とを備え、 以下、前記縦方向マージ手順、前記縦方向1次元配列手
    順、前記縦方向分割手順による縦方向一連動作処理と、
    前記横方向マージ手順、前記横方向1次元配列手順、前
    記横方向分割手順による横方向一連処理動作とを、所定
    の行数及び列数に応じて縦方向又は横方向について適宜
    繰り返すことにより、複数の前記セルを2次元以上に配
    置するようにしたスタンダードセル方式により半導体装
    置の配置設計を行うセル自動配置方法。
  6. 【請求項6】スタンダードセル方式により半導体装置の
    配置設計を行うセル自動配置方法において、 各セルの接続情報に基づいて、各行毎に外部端子の横方
    向成分のみにより、複数の前記セルを1次元横方向に配
    列して第1のセル群を形成する横方向1次元配列手順
    と、 前記横方向1次元配列手順により形成された前記横方向
    セル群を、各行毎に2n分割(nは処理動作の回数で整
    数)して第2のセル群を形成する横方向分割手順と、 前記横方向分割手順により分割されたセル群を、各列毎
    に各縦方向毎にマージして第3のセル群を形成する縦方
    向マージ手順と、 前記縦方向マージ手順によりマージされた前記第3のセ
    ル群を、各列毎に外部端子の縦方向成分のみにより、1
    次元縦方向に配列して第4のセル群を形成する縦方向1
    次元配列手順と、 前記縦方向1次元配列手順により形成された第4のセル
    群を、各列毎に2n分割(nは処理動作の回数で整数)
    して第5のセル群を形成する縦方向分割手順と、 前記縦方向分割手順により分割されたセル群を、各行毎
    にマージして第5のセル群を形成する横方向マージ手順
    とを備え、 以下、前記横方向マージ手順、前記横方向1次元配列手
    順、前記横方向分割手順による縦方向一連動作処理と、
    前記縦方向マージ手順、前記縦方向1次元配列手順、前
    記縦方向分割手順による横方向一連処理動作とを、所定
    の行数及び列数に応じて縦方向又は横方向について適宜
    繰り返すことにより、複数の前記セルを2次元以上に配
    置するようにしたセル自動配置方法。
  7. 【請求項7】配線リソースの残存量のバランスを調べる
    手順と、 このバランスが良好であるときには前記縦方向でのマー
    ジ、配列改善、分割の第1の一連動作処理と前記横方向
    でのマージ、配列改善、分割の第2の一連動作処理を交
    互に選択し、バランスが不良であるときには交互選択処
    理を停止させる手順を含むことを特徴とする請求項6に
    記載のセル自動配置方法。
  8. 【請求項8】縦方向でのマージ、配列改善、分割の第1
    の一連動作処理と横方向でのマージ、配列改善、分割の
    第2の一連動作処理を単位繰り返しステップとして、所
    定数の繰り返し後に配線リソースの残存量のバランスを
    調べる手順と、このバランスが良好でないときにはセル
    データを変更する手順と、適当な繰り返し単位へ移行す
    る手順を含むことを特徴とする請求項7に記載のセル自
    動配置方法。
  9. 【請求項9】前記配線リソースの残存量のバランスが良
    好でないときには、単にセルデータの一部を変更して次
    の繰り返し処理に移行することを特徴とする請求項8に
    記載のセル自動配置方法。
  10. 【請求項10】前記配線リソースの残存量のバランスが
    良好でないときには、これまでの配置データを消去し、
    適当な前の繰り返しステップに戻ることを特徴とする請
    求項9に記載のセル自動配置方法。
JP28889097A 1996-10-21 1997-10-21 セル自動配置方法 Expired - Fee Related JP3455085B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28889097A JP3455085B2 (ja) 1996-10-21 1997-10-21 セル自動配置方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP27840996 1996-10-21
JP8-278409 1996-10-21
JP28889097A JP3455085B2 (ja) 1996-10-21 1997-10-21 セル自動配置方法

Publications (2)

Publication Number Publication Date
JPH10189750A JPH10189750A (ja) 1998-07-21
JP3455085B2 true JP3455085B2 (ja) 2003-10-06

Family

ID=26552867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28889097A Expired - Fee Related JP3455085B2 (ja) 1996-10-21 1997-10-21 セル自動配置方法

Country Status (1)

Country Link
JP (1) JP3455085B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4400428B2 (ja) 2004-11-22 2010-01-20 エルピーダメモリ株式会社 半導体集積回路の設計方法と設計装置並びにプログラム

Also Published As

Publication number Publication date
JPH10189750A (ja) 1998-07-21

Similar Documents

Publication Publication Date Title
US6230306B1 (en) Method and apparatus for minimization of process defects while routing
US6370673B1 (en) Method and system for high speed detailed placement of cells within an integrated circuit design
US4630219A (en) Element placement method
US5790841A (en) Method for placement of clock buffers in a clock distribution system
US6324674B2 (en) Method and apparatus for parallel simultaneous global and detail routing
US6289495B1 (en) Method and apparatus for local optimization of the global routing
US8418115B1 (en) Routability based placement for multi-die integrated circuits
JP2007043049A (ja) セル、スタンダードセル、スタンダードセル配置方法、スタンダードセルライブラリ、ならびに半導体集積回路
US10312192B2 (en) Integrated circuit having staggered conductive features
Chang et al. Essential issues in analytical placement algorithms
Chen et al. Global and detailed routing
US6074430A (en) Automatic cell placing method
US6327696B1 (en) Method and apparatus for zero skew routing from a fixed H trunk
JP3455085B2 (ja) セル自動配置方法
US6907594B2 (en) Wiring route determining apparatus, group determining apparatus, wiring route determining program storing medium and group determining program storing medium
Lee et al. A global router for sea-of-gates circuits
US5825659A (en) Method for local rip-up and reroute of signal paths in an IC design
US6243850B1 (en) Allocation apparatus and method for determining cell allocation of semiconductor circuit
JPH0630376B2 (ja) 半導体装置の製造方法
US6560761B1 (en) Method of datapath cell placement for bitwise and non-bitwise integrated circuit designs
Torabi et al. A fast hierarchical adaptive analog routing algorithm based on integer linear programming
JP3498674B2 (ja) 半導体集積回路装置及びクロック配線方法並びに記録媒体
EP1538540A2 (en) Configurable circuit with cells having predefined functionality and configurable subcells
JP2001274255A (ja) 半導体集積回路の自動配置配線方法
Khokhani et al. Placement of variable size Circuits on LSI Masterslices

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030708

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

Free format text: PAYMENT UNTIL: 20080725

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090725

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees