JP2000349160A - マクロ自動配置方法 - Google Patents

マクロ自動配置方法

Info

Publication number
JP2000349160A
JP2000349160A JP11159511A JP15951199A JP2000349160A JP 2000349160 A JP2000349160 A JP 2000349160A JP 11159511 A JP11159511 A JP 11159511A JP 15951199 A JP15951199 A JP 15951199A JP 2000349160 A JP2000349160 A JP 2000349160A
Authority
JP
Japan
Prior art keywords
macro
macros
input
group
arrangement
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
JP11159511A
Other languages
English (en)
Inventor
Hiroyuki Tsuchiya
裕幸 土屋
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 IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems Co 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP11159511A priority Critical patent/JP2000349160A/ja
Publication of JP2000349160A publication Critical patent/JP2000349160A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 好ましいマクロの配置をすることによって、
マクロ周辺の無駄な配線や空き領域を低減し、チップサ
イズの縮小化とレイアウト工期の短縮が可能なマクロ自
動配置方法を提供することである。 【解決手段】 まずネットリスト情報の展開を行う(ス
テップ101)。次にマクロ接続関係の情報分析(ステ
ップ102)を行う。次に接続関係の強いもの同士でグ
ループを生成(ステップ104)する。グループ中のマ
クロに分割線(ステップ105)を設け、分割されたそ
れぞれの区分に割り当てられている入出力端子数等に基
づき、マクロの重み付け(ステップ106)を行う。さ
らに予めマクロに入出力配線領域を確保(ステップ10
7)する。グループ毎にマクロの大きい順からマクロ配
置を行う。グループ毎のマクロ配置が完了すれば、最終
的にセル配置領域上により好ましいマクロ配置(ステッ
プ108)が得られる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、集積回路の設計に
おけるマクロの配置方法に関する。
【0002】
【従来の技術】集積回路の設計において、マクロの配置
を効率よく行えるか否かは、その集積回路の面積や性能
に大きな影響を及ぼす。そのため、従来からマクロの効
率的な自動配置方法に関して種々提案がなされている。
【0003】従来のマクロ自動配置方法の多くは、特定
のマクロに関してのみその配置位置を指定したパラメー
タを入力する手法を採用している。これは、従来のマク
ロ自動配置方法の多くは、レイアウト設計の工期短縮を
主な目的としているからである。
【0004】また、特開平4−318956号公報に
は、従来のマクロの自動配置装置を改良した装置につい
て開示がなされている。この改良された装置は、新たに
新規物理情報追加手段を備えていることを特徴としてい
る。この改良された装置の構成を表す構成ブロック図が
図10に示されている。
【0005】この装置は、後述する図2に示すように特
定のブロックセル(=マクロ)に対してグループ指定し
て、グループの方向や位置を入力するための新規物理情
報追加手段を新たに備えた装置であり、特定のブロック
セル以外のその他のブロックセルについては従来の配置
手法がそのまま用いられている。なお、図11には一般
的なレイアウト設計フローを表すフローチャートが示さ
れている。このフローは、当業者にとってよく知られて
おり、また本発明とは直接関係しないので、その詳細な
説明は省略する。
【0006】また、特開平4−174077号公報に
は、論理接続の強いもの同士を同一サブブロックに割り
付け、サブブロック間の接続本数が最小となるように、
ブロック交換を行う技術が開示されている。また、特開
平6−216250号公報には、多くのセルがつながっ
ているネットの重みを小さくすることによって、高い配
線率を求める方法が開示されている。
【0007】さらに、特開平6−349945号公報に
は、最小単位を1つのマクロセルとした2つの矩形状の
未配置のマクロ部を常に一方のマクロセル部の一辺と、
他方のマクロセル部の一辺とが配線領域を介して平行に
配置される技術が開示されている。また、特開平9−3
19786号公報には、フロアプラン時点において、マ
クロセルの配置の精度向上と、レイアウトの配線性を向
上させる技術が開示されている。
【0008】
【発明が解決しようとする課題】しかしながら、この改
良された装置も含めて従来のマクロ自動配置方法におい
ては、次のような課題がある。第1の課題は、入出力端
子の接続関係やマクロの向きが考慮された最適な配置を
実現するものではないため、迂回配線や未配線などが集
積回路上に発生し、レイアウトが不可能となる事態が生
じうることである。したがって、結局手戻りが多くなっ
てしまう。
【0009】第2の課題は、チップサイズが大規模にな
ることである。これは、前記の理由と同様に、すべての
マクロが最適配置されていないためである。
【0010】本発明の目的は、すべてのマクロについて
より好ましい配置をすることによって、マクロ周辺の無
駄な配線や空き領域を低減し、チップサイズの縮小化と
レイアウト工期の短縮が可能なマクロ自動配置方法を提
供することである。
【0011】
【課題を解決するための手段】上記目的を達成するため
に、請求項1記載のマクロ自動配線方法は、半導体集積
回路の設計の際に、マクロを自動配置する方法におい
て、前記マクロを分割線によって分割し、分割された各
部分の辺毎に、その部分に含まれる入出力配線数に基づ
く重み付けを行う重み付けステップと、前記重み付けに
基づき、前記マクロの向きを決定するマクロ方向決定ス
テップと、を含む構成としてある。このような構成によ
れば、マクロ毎に分割線を設けて入出力配線数に基づき
重み付けをしてマクロの向きを決定したので、より望ま
しい配線をすることができる。
【0012】また、請求項2記載のマクロ配置方法は、
半導体集積回路の設計の際に、マクロを自動配置する方
法において、前記マクロを分割線によって分割し、分割
された各部分の辺毎に、他のマクロとの間の接続関係に
基づく重み付けを行う重み付けステップと、前記重み付
けに基づき、前記マクロの向きを決定するマクロ方向決
定ステップと、を含む構成としてある。このような構成
によれば、マクロ毎に分割線を設けて接続関係に基づき
重み付けをしてマクロの向きを決定したので、より望ま
しい配線をすることができる。
【0013】請求項3記載のマクロ配置方法は、前記マ
クロを所定のグループに分割する分割ステップ、を含
み、前記グループ毎に、前記重み付けステップと、前記
マクロ方向決定ステップとを実行し、前記マクロの配置
を行う構成としてある。このような構成によれば、グル
ープ毎にマクロの配置が定められるので、マクロ配置を
効率的に行うことができる。
【0014】請求項4記載のマクロ配置方法は、前記分
割ステップは、前記マクロの接続関係に基づき前記マク
ロを所定のグループに分割する構成としてある。このよ
うな構成によれば、接続関係に基づき、グループ分けが
行われるので、マクロ間の配線を良好に行うことができ
るようにグループ分けを実行することができる。
【0015】請求項5記載のマクロ配置方法は、前記分
割ステップは、前記マクロの階層構造に基づき前記マク
ロを所定のグループに分割する構成としてある。このよ
うな構成によれば、階層関係に基づき、グループ分けが
行われるので、マクロ間の配線を階層を考慮して行うこ
とができるようにグループ分けを実行することができ
る。
【0016】請求項6記載のマクロ配置方法は、前記各
マクロの周囲に入出力配線領域を確保する入出力配線領
域確保ステップ、を含む構成としてある。このような構
成によって、マクロ間での配線混雑を避けることができ
るとともに、無駄な配線領域を作ることも少なくなる。
【0017】請求項7記載のマクロ配置方法は、前記入
出力配線領域の幅は、その入出力配線領域が設けられて
いるマクロの入出力端子の個数の半分の配線グリッドの
幅である構成としてある。このような構成によれば、入
出力端子の個数の半分の配線グリッドに相当する入出力
配線領域を設けているので、入出力配線のための領域を
より確実に確保することができる。
【0018】
【発明の実施の形態】まず、本発明の特徴について概説
する。本発明は、レイアウト設計に用いられるマクロ自
動配置方法において、以下の特徴を有するものである。
【0019】(1)まず、マクロを分割線によって細分
化したことである。 (2)次に、他のマクロとの間の接続情報を分析するこ
とによってマクロの方向付けを行うことである。 以上のような特徴を有することによって、短時間で、よ
り好ましいマクロ自動配置が可能となる。
【0020】[第一実施形態]図1には、本発明の好適
な第一実施形態にかかるマクロ自動配置方法の動作を表
すフローチャートが示されている。
【0021】図1において、本第一実施形態にかかるマ
クロ自動配置方法は、まずネットリスト情報の展開を行
っている(ステップ101)。そして、展開後にマクロ
接続関係の情報分析(ステップ102)を行っている。
【0022】次に、接続関係の強いもの同士でグループ
を生成(ステップ104)する。接続関係の強さについ
ては、後に詳述する。そして、そのグループ中の個々の
マクロに分割線(ステップ105)を設ける。
【0023】この分割線で分割されたそれぞれの区分に
割り当てられている入出力端子数や他のマクロとの間の
接続関係をもとに、マクロの重み付け(ステップ10
6)を行う。具体的な重み付けについては、後に詳述す
る。
【0024】さらに接続本数等の関係から、予め個々の
マクロに入出力配線領域を確保(ステップ107)す
る。具体的な確保の方法については後に詳述する。そし
て、グループ毎にマクロの大きい順からマクロ配置を行
う。グループ毎のマクロ配置が完了すれば、最終的にセ
ル配置領域上に自動的により好ましいマクロ配置(ステ
ップ108)が得られる。本発明は、以上の事項をその
基本的な特徴としている。本第一実施形態ではこのよう
にして、マクロ毎に分割線を設けて入出力端子の接続情
報を分析し、予め配線領域を確保している。したがっ
て、マクロ間での配線混雑のために未配線が生じること
もなく、短時間で容易により好ましい配置を得ることが
できる。
【0025】以下、本発明の第一実施形態について、図
面を用いてより詳細に説明する。図1において、まず、
ネットリスト情報展開(ステップ101)ではブロック
間やマクロ間の回路接続情報を認識しやすいように展開
している。その展開された情報から特にマクロとマクロ
間、マクロとブロック間の接続情報や階層情報の分析
(ステップ102)を行うことができる。分析した情報
をもとに、各マクロ毎にいずれかの階層グループに属し
ているか否かの判定(ステップ103)が行われる。
【0026】このとき、属する階層グループが存在する
場合はその階層グループ内でグループを構成する(ステ
ップ104a)。さらに、接続関係の強い他のグループ
との関係を分析し、接続関係グループ分けを行う(ステ
ップ104b)。
【0027】ここで、分析とは、ある階層グループに属
しているマクロが、別の階層グループに属しているマク
ロと非常に強い接続関係があるか否か分析することであ
る。そして、非常に強い接続関係があった場合には、そ
れは同一グループとみなして、後述するようにマクロ同
士を隣接して置くのである。
【0028】一方、ステップ103において、属する階
層グループがないマクロは、マクロ間の接続関係を分析
し、他の階層グループに属するか否かを決定する(ステ
ップ104b)。
【0029】次に、マクロ分割線の作成(ステップ10
5)においては、個々のマクロ毎にマクロの重心点から
水平及び垂直方向にマクロを4分割するように分割線を
設定する。
【0030】マクロ重み付け処理(ステップ106)で
はマクロ分割線の作成(ステップ105)によって分割
された部分毎に入出力端子数や他マクロとの接続ネット
数等のパラメータを付加することによって、マクロ毎に
重みを付ける。
【0031】さらに、入出力配線領域確保(ステップ1
07)では、マクロ分割線の作成(ステップ105)に
よって分割された部分毎の入出力端子数をもとに、例え
ば入出力端子数の半分の配線グリッドを予め確保する。
これによって、マクロ間での配線混雑を避けることがで
きるとともに、無駄な配線領域を作ることも少なくな
る。
【0032】上述したグループ情報やマクロ毎の重み付
け情報の関係に基づき、各グループのマクロ間における
接続方向が決定され、さらにセル配置領域上の配置規則
を設け、この規則に従ってマクロの配置を行う(ステッ
プ108)。
【0033】図2には、図1に示すマクロ重み付け処理
(ステップ106)及び入出力配線領域確保(ステップ
107)の動作を詳細に説明するための説明図が示され
ている。
【0034】この図において、マクロ分割線201はマ
クロ枠の中心から垂直及び水平方向に分割して外周辺を
8つに分け、それぞれの部分毎に入出力端子数202や
他マクロとの接続関係を保持しておく。さらにマクロの
入出力配線が通る領域203を確保しておく。この入出
力配線領域203の基準としては、例えば入出力配線本
数の半分のグリッド数を他ブロック等が配置されないよ
うに入出力配線領域203として確保することが好まし
い。なお、以上の説明では、ブロック等の配置を禁止す
る入出力配線領域203を設けたが、この入出力配線領
域203を設ける代わりにマクロのサイズを拡大するこ
ととしても好ましい。
【0035】また、図3及び以降の図においては、マク
ロにFが付されているが、このFはマクロの向きを表す
ものである。
【0036】次に、図1のフローチャートに示されたマ
クロ自動配置方法の動作を図3等を参照してより詳細に
説明する。レイアウト設計を行うために最低限必要なも
のは、ネットリストとブロック及びマクロのレイアウト
上の構成情報である。しかし、通常はネットリストは階
層構造になっているので、解析しやすくするために、本
実施形態ではそのネットリストをフラットな状態に展開
する(ステップ101)。その展開されたネットリスト
は階層構造情報を保持している。そして、この階層構造
情報に基づき、各マクロ毎にマクロ間の接続情報を分析
する(ステップ102)。さらに、階層構造又は接続関
係に基づきグループ分けを行う(ステップ104a、ス
テップ104b)。なお、以下の説明では、接続関係に
基づきグループ分けを行う例について説明する。階層構
造に基づきグループ分けを行う例については、後述す
る。
【0037】さて、図3には、マクロM1〜M7の接続
関係を表す説明図が示されている。この図に示されてい
るように、マクロM1〜M7には互いに矢印で示した接
続関係があり、また矢印上の数値は各マクロに接続され
る入出力端子の本数を示すものである。このような情報
を展開されたネットリストから抽出しておく。
【0038】さらに、グループ分けについては、同一グ
ループとみなす基準(接続関係の強さ)を例えば20本
以上と設定する。このような基準を設ければ、図3に示
すようにAとBというグループに分類できることにな
る。グループAとグループBに分類されたマクロ群は、
個々にマクロ分割線105が設けられる。そして、入出
力端子数の情報や接続関係情報から、マクロの向きを決
定する要素となる重み付けを行う(ステップ106)。
重み付けは、マクロ分割線105によって2分割された
各辺に対して行われる。すなわち重み付けは8本の1/
2された辺に対して行われる。
【0039】さらに、マクロM1〜M7間の配線やマク
ロM1〜M7同士の配置を容易にするために、予めブロ
ック等の配置が禁止される入出力配線領域203をマク
ロM1〜M7に付加しておく。これによって、マクロの
入出力配線が通る領域を確保する(ステップ107)。
【0040】図2に示されているように、マクロ分割線
201はマクロ枠の中心から垂直及び水平方向に分割し
てマクロ枠を便宜的に8つの部分に分けている。そし
て、それぞれの部分の辺毎に、入出力端子数202や他
マクロとの接続情報を保持させることによって、重み付
けが行われる。この重み付けに基づいてマクロM1〜M
7の向きが決定される。
【0041】マクロM1〜M7の向きについての説明図
が図4に示されている。この図に示すように、マクロM
1〜M7の向きについては、通常は4通りの向きが考え
られ、場合によってはマクロM1〜M7の向きを各々9
0度回転させた8通りの向きが考えられる。設計作業に
おいては、これら8通りの向きの中からマクロM1〜M
7の向きを選択することになる。
【0042】具体的には、マクロM1〜M7の向きは、
同一グループ内では互いに接続関係の強い辺を基準とし
て向きあわせるように決定される。また、セル配置領域
に配置する場合は、できるだけ入出力配線の存在する辺
が内側に向くように配置される。このようにして各マク
ロM1〜M7の向きが決定される。
【0043】さらにマクロM1〜M7の入出力配線が通
る入出力配線領域203を確保しておく。この入出力配
線領域203の幅の基準としては、例えば、入出力配線
本数の半分のグリッド数の幅とすることが好ましい。こ
のような幅で入出力配線領域203を設定し、その領域
中に他ブロック等が配置されないようにすることが好ま
しい。このような処理を施すことにより、マクロM1〜
M7同士を隣接して配置したい時には、接続端子の存在
する方向に向きあわせることによって、マクロM1〜M
7間の配線を短くすることができ、その分他のブロック
やマクロM1〜M7の配置、配線のためのスペースが確
保できることになる。次に、重み付けされた同一グルー
プのマクロ同士の位置を、まずグループ内で決定する。
その後、セル配置領域上にグループ単位で配置を行う。
以下、これらについて説明する。
【0044】図5には、マクログループの配置方法を説
明する説明図が示されている。この図に示すように、グ
ループAに含まれる4個のマクロM1〜M4について配
線方法を説明する。
【0045】まず、グループA中で一番大きなマクロを
選択する。図5に示されている例の場合、マクロM1と
マクロM2(図5における(a))が同じ大きさのため
選択される。複数のマクロ(この場合はマクロM1とマ
クロM2)が選択された場合、その複数のマクロ間で先
に相対位置を決定する。この時、マクロ間で接続関係の
強い(接続本数の多い)入出力端子の存在する辺(配線
領域)を向きを合わせることによって、マクロM1とマ
クロM2との間の配線を短くすることができる。
【0046】したがって、図5の場合、マクロM1とマ
クロM2の左辺同士のつながりがもっとも強いため、マ
クロM1とマクロM2を並べた場合、マクロM1を基準
としてマクロM2との配置関係を考慮して、マクロM2
をY軸を中心に反転し、マクロM1の左側に配置してい
る(図5における(b))。
【0047】次にグループ中で二番目に大きなマクロを
選択する。図5の場合、マクロM3,マクロM4が選択
される(図5における(c))、上述したのと同様に、
複数のマクロが選択された場合には、その複数のマクロ
M3,マクロM4間で先に相対位置を決定する。
【0048】マクロM3を基準としてマクロM4を配置
する場合には、マクロM3の下辺側に入出力端子が配列
されているので、マクロM4をX軸に対して反転し、マ
クロM3の下辺に配置する(図5における(d))。こ
れによって、配線長を短くしている。グループ内の小単
位(マクロM3,マクロM4が小単位)で配置が決まる
と、次に小単位マクロ同士の配置を行う(図5における
(e))。このときお互いの入出力端子の近傍に置くこ
とと、原則としてグループ内の最大マクロ(マクロM
1,マクロM2)の構成する辺に沿って配置することを
基本的な前提として決めておく。
【0049】図5の場合は、最大マクロ(マクロM1,
マクロM2)の位置を基準として、2番目に大きな小単
位のマクロ群(マクロM3,マクロM4)の配置位置を
決める。マクロM1,マクロM2の下辺側と、マクロM
3,マクロM4の接続関係が強いため、マクロM1,マ
クロM2の下辺部分と、マクロM1,マクロM2で構成
される左辺の延長線上に沿う形(デフォルト)でマクロ
M3,マクロM4の配置位置を決定する。この左辺側又
は右辺側に小単位マクロを寄せる意味は、できるだけデ
ッドスペースを無くすためである。よって、この時は配
線長を短くすることよりも優先して左辺側又は右辺側に
寄せて配置される。
【0050】マクログループの具体的な配置手法の他の
例の説明図が図6に示されている。この図6に示された
例では、マクロM5〜M7の配置(図6における
(d))についても上述したような手順でグループ単位
でマクロ配置を行っていく。
【0051】まず、最大マクロであるマクロM5を選択
するが、単独で存在するため、マクロ方向等に変更はな
い(図6における(a))。次に、2番目の大きさであ
るマクロM6,マクロM7の配置(図6における
(b))に関しては、マクロM6と、マクロM7は、マ
クロ6を基準とすれば下辺側のつながりが強い。そのた
め、マクロM7をX軸に対して反転して、マクロM6の
下辺側に配置している(図6における(c))。
【0052】マクロM5及びマクロM6,マクロM7の
配置については、マクロM5を基準とした場合、その左
辺側とマクロM6及びマクロM7の左辺側のつながりが
強い。そのため、マクロM6,マクロM7をY軸に対し
て反転させ、マクロM5を構成する下辺の延長線上にマ
クロM6,マクロM7を配置している。このとき、マク
ロM5の上辺の延長線上に寄せない理由は、図5と同様
にセル配置領域上に配置された場合にデッドスペースが
生じる可能性があるためである。
【0053】図7には、グループAとグループBをセル
配置領域上に配置する様子を表す説明図が示されてい
る。この時の制約としては、図7のようにグループ内の
最大マクロが構成する辺をセル配置領域のコーナ部に沿
わせるように配置を決定することである。このとき、グ
ループの矩形を基準として、空白領域(グループAの右
下、グループBの左上)や端子配線領域(グループBの
上辺)がある場合は、それをセル配置領域の内側に向く
ように配置する。その理由は、例えば、グループAを図
7の状態から、Y軸に対して反転させた場合、空白領域
が凹状になり、ここにセルが配置されるとマクロを回り
込むような配線が発生するためである。このように、い
わゆる配線性が悪化するため、デッドスペースとして扱
われてしまうのである。
【0054】また、外部端子から直接接続関係がある場
合は、配置位置をできるだけ近傍にするように考慮す
る。ただし、優先度は上述したパラメータの方が上であ
ることが望ましい。
【0055】また、本第一実施形態では、主に、接続関
係に基づきグループ分けを行う例について説明した。こ
の説明では、マクロが最上階層に存在することを前提と
して、接続関係のみからグループ分けを行っている。し
かし、既に述べたように、階層構造に基づいてグループ
分けを行うことも望ましい。
【0056】階層構造は、LSI回路設計時において通
常、ある機能回路単位のグループから徐々に大規模な回
路構成へと設計していく段階で、自動的に形成される。
この階層構造を利用してグループ分けを行う。例えば、
同一の階層構造内に存在するマクロ同士であれば接続関
係が強いのである。このようにして階層構造から接続関
係の強度を推察し、この推察した接続関係に基づきグル
ープ分けが行われる。
【0057】[第二実施形態]本第二実施形態は、基本
的構成は上述した第一実施形態と同様であるが、マクロ
自動配置方法についてさらに工夫している。本第二実施
形態にかかるマクロ自動配置方法の動作を表すフローチ
ャートが図8に示されている。
【0058】この図8に示されているフローチャートは
図1に示されているフローチャートとほとんど同様であ
る。図8が図1と異なっている点は、パラメータ入力ス
テップ309が備えられている点である。これによっ
て、指定されたマクロの属性を事前に設定できるよう
に、図1のマクロ情報分析ステップ302の後に、指定
されたマクロのパラメータを入力できるフローが実現さ
れている。具体的なパラメータの例が図9に示されてい
る。
【0059】このパラメータ入力ステップ309におい
ては、マクロ名が入力される。また、同ステップにおい
て、次に指定をしたいパラメータを選択(有・無)して
入力できるようになっている。
【0060】マクロ名には、個々のマクロを区別するた
めに付加されているインスタンス名を入力する。方向指
定は、マクロの都合上、方向が決まっている場合に指定
する。位置指定は、特定ピンの近辺に配置したい場合や
特定マクロに隣接して配置したい場合に指定する。グル
ープ指定は、マクロ間での直接のつながりはないが、ブ
ロックを介して緊密な関係があるマクロ同士を同一グル
ープに指定して隣接配置する際に指定される。配線領域
指定は、デフォルトで端子数の例えば1/2グリッド分
の領域確保を指定している場合に、その領域を変更でき
るようにするものである。これによって、より無駄な配
線領域を少なくすることができる。
【0061】このように、本第二実施形態では、配置要
素のパラメータを指定できるので、配置位置を指定する
ことができる。したがって、特定のクリティカルな回路
がある場合などにおいても、回路特性を満足できる配置
ができる。また、試行レイアウトの結果をフィードバッ
クしてより最適な配置を行うことも可能である。
【0062】
【発明の効果】以上説明したように、本発明において
は、以下のような効果を奏する。第1の効果は自動的に
マクロの方向を決定し、マクロをより適切に配置できる
ことである。その理由は、マクロを分割線によって細分
化して、個々の端子情報を分析しているため、接続すべ
き方向が容易に決定できることである。
【0063】第2の効果はマクロ間における未配線を防
止するとともに、空き配線領域を少なくでき、チップサ
イズの縮小化を図れることである。その理由は、事前に
配線領域を確保するために、端子本数からその半分のグ
リッド数分の入出力配線領域、すなわち他のマクロを配
置できないいわば禁止領域を設けているためである。
【0064】第3の効果は比較的短時間で最適配置が得
られることである。 その理由は、グループを分けて配
置位置を決定しており、また、予め入出力配線領域を確
保しているため、ブロック同士を密着して配置できるか
らである。その結果、容易にレイアウト処理が実行で
き、従来より短時間で、より適切な配置が得られる。
【図面の簡単な説明】
【図1】本発明の第一実施形態のマクロ自動配置方法の
動作を表すフローチャートである。
【図2】マクロ重み付け処理及び入出力配線領域確保の
動作を詳細に説明するための説明図である。
【図3】マクロM1〜M7の接続関係を表す説明図であ
る。
【図4】マクロM1〜M7の向きについての説明図であ
る。
【図5】マクログループの具体的な配置方法を説明する
説明図である。
【図6】マクログループの具体的な配置方法の他の例の
説明図である。
【図7】グループAとグループBをセル配置領域上に配
置する様子を表す説明図である。
【図8】第二実施形態にかかるマクロ自動配置方法の動
作を表すフローチャートである。
【図9】パラメータの例を示す説明図である。
【図10】従来の装置の構成を表す構成ブロック図であ
る。
【図11】一般的なレイアウト設計フローを表すフロー
チャートである。
【符号の説明】
202 入出力端子数 203 入出力配線領域 A、B グループ M1、M2、M3、M4、M5、M6、M7 マクロ

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 半導体集積回路の設計の際に、マクロを
    自動配置する方法において、 前記マクロを分割線によって分割し、分割された各部分
    の辺毎に、その部分に含まれる入出力配線数に基づく重
    み付けを行う重み付けステップと、 前記重み付けに基づき、前記マクロの向きを決定するマ
    クロ方向決定ステップと、 を含むことを特徴とするマクロ自動配置方法。
  2. 【請求項2】 半導体集積回路の設計の際に、マクロを
    自動配置する方法において、 前記マクロを分割線によって分割し、分割された各部分
    の辺毎に、他のマクロとの間の接続関係に基づく重み付
    けを行う重み付けステップと、 前記重み付けに基づき、前記マクロの向きを決定するマ
    クロ方向決定ステップと、 を含むことを特徴とするマクロ自動配置方法。
  3. 【請求項3】 前記マクロを所定のグループに分割する
    分割ステップ、 を含み、前記グループ毎に、前記重み付けステップと、
    前記マクロ方向決定ステップとを実行し、前記マクロの
    配置を行うことを特徴とする請求項1又は2記載のマク
    ロ自動配置方法。
  4. 【請求項4】 前記分割ステップは、前記マクロの接続
    関係に基づき前記マクロを所定のグループに分割するこ
    とを特徴とする請求項3記載のマクロ自動配置方法。
  5. 【請求項5】 前記分割ステップは、前記マクロの階層
    構造に基づき前記マクロを所定のグループに分割するこ
    とを特徴とする請求項3記載のマクロ自動配置方法。
  6. 【請求項6】 前記各マクロの周囲に入出力配線領域を
    確保する入出力配線領域確保ステップ、を含むことを特
    徴とする請求項1乃至4記載のマクロ自動配置方法。
  7. 【請求項7】 前記入出力配線領域の幅は、その入出力
    配線領域が設けられているマクロの入出力端子の個数の
    半分の配線グリッドの幅であることを特徴とする請求項
    6記載のマクロ自動配置方法。
JP11159511A 1999-06-07 1999-06-07 マクロ自動配置方法 Pending JP2000349160A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11159511A JP2000349160A (ja) 1999-06-07 1999-06-07 マクロ自動配置方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11159511A JP2000349160A (ja) 1999-06-07 1999-06-07 マクロ自動配置方法

Publications (1)

Publication Number Publication Date
JP2000349160A true JP2000349160A (ja) 2000-12-15

Family

ID=15695381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11159511A Pending JP2000349160A (ja) 1999-06-07 1999-06-07 マクロ自動配置方法

Country Status (1)

Country Link
JP (1) JP2000349160A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7124387B2 (en) 2004-07-29 2006-10-17 International Business Machines Corporation Integrated circuit macro placing system and method
US7856610B2 (en) 2006-05-10 2010-12-21 Elpida Memory, Inc. Method and apparatus for semiconductor integrated circuit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7124387B2 (en) 2004-07-29 2006-10-17 International Business Machines Corporation Integrated circuit macro placing system and method
US7856610B2 (en) 2006-05-10 2010-12-21 Elpida Memory, Inc. Method and apparatus for semiconductor integrated circuit

Similar Documents

Publication Publication Date Title
Sechen VLSI placement and global routing using simulated annealing
US5930499A (en) Method for mixed placement of structured and non-structured circuit elements
US20080127024A1 (en) Methods, Systems, and Media to Improve Manufacturability of Semiconductor Devices
JP2004501439A (ja) 集積回路をパーティション化して、配置及び配線をするシステム
US6385761B1 (en) Flexible width cell layout architecture
US8219959B2 (en) Generating integrated circuit floorplan layouts
US6938236B1 (en) Method of creating a mask-programmed logic device from a pre-existing circuit design
JP2001313339A (ja) フリップチップ型半導体装置の設計方法
US6075934A (en) Method for optimizing contact pin placement in an integrated circuit
US5972740A (en) Layout algorithm for generating power supply interconnections for an LSI circuit
JP2001306641A (ja) 半導体集積回路の自動配置配線方法
JP4410088B2 (ja) 半導体装置の設計支援方法、プログラム及び装置
JP2000349160A (ja) マクロ自動配置方法
JP3433025B2 (ja) モジュール配置方法
US6957406B1 (en) Analytical placement methods with minimum preplaced components
Donze et al. Masterimage approach to VLSI design
Donze et al. PHILO-a VLSI design system
JP3705737B2 (ja) 半導体集積回路のレイアウト方法
JPH077142A (ja) 半導体集積回路およびその設計支援装置
JP2910730B2 (ja) 階層レイアウト設計方法および階層レイアウト設計装置
Tien et al. GALA-an automatic layout system for high density CMOS gate arrays
JP3570883B2 (ja) 半導体集積回路の配線方法
JPH06310601A (ja) レイアウト設計方法
JPH06349945A (ja) マクロセル自動配置装置
JP3132554B2 (ja) 半導体装置の自動レイアウト設計方法および装置