JP2001034644A - 回路素子を配置する配置装置および方法 - Google Patents

回路素子を配置する配置装置および方法

Info

Publication number
JP2001034644A
JP2001034644A JP11202576A JP20257699A JP2001034644A JP 2001034644 A JP2001034644 A JP 2001034644A JP 11202576 A JP11202576 A JP 11202576A JP 20257699 A JP20257699 A JP 20257699A JP 2001034644 A JP2001034644 A JP 2001034644A
Authority
JP
Japan
Prior art keywords
cell
net
arrangement
timing
block
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
JP11202576A
Other languages
English (en)
Other versions
JP3804901B2 (ja
Inventor
Toshiyuki Shibuya
利行 澁谷
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 JP20257699A priority Critical patent/JP3804901B2/ja
Publication of JP2001034644A publication Critical patent/JP2001034644A/ja
Application granted granted Critical
Publication of JP3804901B2 publication Critical patent/JP3804901B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 電子回路の自動レイアウトにおいて、タイミ
ング等のパラメータが設計者の要求を満たすように配置
を変更することが課題である。 【解決手段】 格納手段1は、階層的に繰り返される領
域分割の各分割レベルにおいて、その分割レベルに属す
る各ブロックのブロック情報およびセル配置の情報を格
納する。変更手段2は、1つまたは複数のブロック内の
セルを変更/削除/追加することで、設計者の要求が満
たされるように、セル配置を変更する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、電子装置の実装設
計に係り、電子回路の自動レイアウトを行う配置装置お
よび方法に関する。
【0002】
【従来の技術】最近の回路技術の進歩に伴い、VLSI
(very large scale integrated circuit )の集積度の
向上および回路規模の増大には目覚ましいものがある。
このような集積度の向上および回路規模の増大に伴っ
て、タイミング、配線率、および消費電力が設計者の要
求を満たすように、これらのパラメータをCAD(comp
uter-aided design )ツールで制御することが大きな問
題になっている。ここで、配線率とは、配線すべきネッ
トの総数に対する実際に配線されたネットの数の割合を
表し、これが100%になることが最終的な目標であ
る。
【0003】従来のVLSIの自動レイアウトは、一般
に、回路素子(セルまたはモジュール)の配置と素子間
の配線の2つの処理に分けて行われる。そして、配置お
よび配線が終了した後に、タイミングの厳しい信号パス
上のセルの置き換えや、ネットへのバッファの挿入を行
って、タイミング等を改善するようにしている。
【0004】また、従来の配置方法の1つとしては、m
in−cut法が知られている。この方法では、カット
数を評価基準としてLSIチップの論理分割を逐次繰り
返すことにより、セルの配置が決定される。ここで、カ
ット数とは、チップ上に引いたカットラインを横切る論
理的な配線(ネット)の数を表す。
【0005】
【発明が解決しようとする課題】しかしながら、上述し
た従来の回路設計には、次のような問題がある。自動レ
イアウトにおいて、配置および配線が完全に終了してし
まった状態では、新たにセルのサイズを大きくしたり、
パス上にバッファを挿入したりするためには、十分な空
きセルスペースが必要である。ところが、最近の配線層
の多層化に伴い狭い領域での配線が容易になったため
に、チップ上の配線領域の面積が減少し、逆にセルの使
用面積が増加している。このため、チップ面積に対する
セル使用面積の割合(セル使用率)は80%を越えてい
る。
【0006】したがって、配置および配線が完全に終了
してしまった状態においては、十分な空きセルスペース
が存在しないのが現状である。このため、タイミングを
最適化できるサイズにセルを変更したり、最適な場所に
バッファを挿入したりすることが必ずしも可能ではない
という問題がある。
【0007】また、一般に、タイミングが厳しいパスは
集中する傾向があり、仮にセルを置くためのスペースが
あったとしても、そのスペースにセルを置くことによっ
て、配線のためのスペースが不足することがある。この
ため、かえって配線が迂回することになり、タイミング
を悪化させるという問題も生じている。
【0008】本発明の課題は、電子回路の自動レイアウ
トにおいて、タイミング等のパラメータが設計者の要求
を満たすように配置を変更する配置装置および方法を提
供することである。
【0009】
【課題を解決するための手段】図1は、本発明の配置装
置の原理図である。図1の配置装置は、格納手段1と変
更手段2を備え、回路設計において、領域分割を繰り返
しながらセルの配置を決定する。
【0010】格納手段1は、ある分割レベルにおいて、
分割により生成されたブロックのブロック情報を格納す
る。変更手段2は、ブロック情報を用いて、その分割レ
ベルにおける配置を変更し、変更された配置を出力す
る。
【0011】領域分割の方法としては、例えば、上述し
たmin−cut法が用いられ、格納手段1は、階層的
に繰り返される論理分割のある分割レベルにおいて、そ
の分割レベルに属する各ブロックのブロック情報とセル
配置の情報を格納する。変更手段2は、その分割レベル
におけるブロック情報を用いて、1つまたは複数のブロ
ック内のセルを変更/削除/追加することで、設計者の
要求が満たされるように、セル配置を変更する。
【0012】このように、配置および配線が完全に終了
した後ではなく、配置処理の途中のある分割レベルにお
いてセル配置を変更することにより、タイミング等のパ
ラメータが最適化されるような変更を行うことが可能に
なる。また、このような変更を各分割レベルにおいて繰
り返すことで、配置はさらに最適化される。
【0013】例えば、図1の格納手段1は、後述する図
32のメモリ12に対応し、図1の変更手段2は、図3
2のCPU(中央処理装置)11およびメモリ12に対
応する。
【0014】
【発明の実施の形態】以下、図面を参照しながら、本発
明の実施の形態を詳細に説明する。本実施形態では、論
理分割に基づく配置方法の各分割レベル(階層)におい
て、分割されたブロックの情報と概略配線情報とを基に
ゲートのサイジングやバッファの挿入/削除を行うこと
により、設計者の要求を満たす配置を自動的に実現す
る。より具体的には、このような配置方法の1つである
min−cut法の各分割レベルにおいて、ゲートのパ
ワーを変更したり、ネットにバッファを挿入したり、バ
ッファを削除したりすることにより、タイミング、配線
率、および消費電力の制御を行う。
【0015】min−cut法においては、前述したよ
うに、チップ領域の論理分割を階層的に繰り返すことに
よりセル配置を決定しているが、分割における各レベル
でのブロックは、例えば、図2に示すような構造を持
つ。このとき、配置装置は、以下の情報を保持してい
る。 1.ライブラリ情報 ライブラリに登録された各回路素子の属性を表す。図2
の回路の場合、例えば、図3に示すようなライブラリテ
ーブルがライブラリ情報として保持される。ここでは、
L0〜L8の9個の素子が登録されている。
【0016】図3において、各素子の情報は、識別子
(libId)、種類(lib_kind(libI
d))、パワータイプ(lib_power(libI
d))、面積(lib_area(libId))、入
力端子のキャパシタンス(lib_inp_capa
(libId))、出力端子のドライブ能力(lib_
out_drive(libId))、およびゲート遅
延(lib_delay(libId))からなる。
【0017】例えば、L0はローパワーのインバータに
対応し、L1はノーマルパワーのインバータに対応し、
L2はハイパワーのインバータに対応する。また、L
3、L4、L5はNANDゲートに対応し、L6、L
7、L8はバッファに対応する。 2.セル情報 配置された各セルの属性を表す。図2の回路の場合、例
えば、図4に示すようなセルテーブルがセル情報として
保持される。ここでは、図2の4個のセルC0、C1、
C2、C3の情報が登録されている。
【0018】図4において、各セルの情報は、識別子
(cellId)、セルが属するブロックのブロック座
標(cell_x(cellId),cell_y(c
ellId))、およびセルに対応する素子のライブラ
リ識別子(cell_kind(cellId))から
なる。また、セルの面積(cell_area(cel
lId))を付加することもできる。
【0019】例えば、セルC0のブロック座標は(1,
0)であり、対応するライブラリ識別子はL0となって
いる。したがって、この時点では、セルC0としてロー
パワーのインバータが割り当てられていることが分か
る。図2においては、ローパワーのセルは細線で描かれ
ており、ハイパワーのセルは太線で描かれている。 3.ネット情報 セル間のネットの属性を表す。図2の回路の場合、例え
ば、図5に示すようなネットテーブルがネット情報とし
て保持される。ここでは、図2の6個のネットN0、N
1、N2、N3、N4、N5の情報が登録されている。
【0020】図5において、各ネットの情報は、識別子
(netId)、ネットのスラック(net_slac
k(netId))、および総キャパシタンス(net
_capa(netId))からなる。スラックは、パ
スに含まれる各ネットにおける信号のタイミング(到着
時刻)の余裕度を表し、例えば、次式により与えられ
る。 スラック=要求された到着時刻−実際の到着時刻 (1) また、ネットテーブルには、配線パターン識別子(ne
t_pattern(netId))やシミュレーショ
ン実行後の状態に基づく信号変化の周波数(net_f
(netId))を付加することもできる。配線パター
ンは、後述するように、タイミングを計算するためのモ
デルを構築する際に生成される。また、信号変化の周波
数は、1秒間にネットの電荷が放電される回数、言い換
えれば、1秒間にネット上の信号が変化する回数を表
す。 4.ブロック情報 分割により生成されたブロックの属性を表す。図2の回
路の場合、例えば、図6に示すようなブロックテーブル
がブロック情報として保持される。ここでは、図2の9
個のブロックの情報が登録されており、各ブロックは1
0×10の正方形であるものと仮定している。
【0021】図6において、各ブロックの情報は、ブロ
ック座標(x,y)、ブロックの中心位置の座標(bl
ock_center_x(x,y)),block_
center_y(x,y))、セル使用可能面積(b
lock_area_capa(x,y))、およびセ
ル使用面積(block_cell_area(x,
y))からなる。ブロック座標は、ブロックの識別子と
して用いられる。また、セル使用可能面積は、通常、ブ
ロックの面積から配線領域等に使用する面積を除いて設
定される。
【0022】例えば、ブロック座標(0,0)のブロッ
クの中心位置は(x,y)=(5,5)であり、セル使
用可能面積は“7”である。しかしながら、図2では、
このブロックにはセルが置かれていないため、セル使用
面積は“0”となっている。
【0023】また、ブロック座標(0,1)のブロック
の中心位置は(x,y)=(5,15)であり、セル使
用可能面積は“7”である。図2では、このブロックに
セルC2が置かれており、図4より、このセルに対応す
るライブラリ識別子はL0である。また、図3より、L
0の面積は“1”であるため、ブロック(0,1)のセ
ル使用面積には“1”が格納される。
【0024】また、配置装置は、各セルと各ネットの接
続関係を表す情報として、図7および図8に示すような
リストを保持している。図7のリストは、各セルの識別
子に1つ以上のネットの識別子をポインタで繋げた構造
を持ち、あるセルに接続されたネットを検索する際に用
いられる。また、図8のリストは、各ネットの識別子に
1つ以上のセルの識別子をポインタで繋げた構造を持
ち、あるネットに接続されたセルを検索する際に用いら
れる。
【0025】配置装置は、上述したライブラリ情報、セ
ル情報、ネット情報、およびブロック情報を入力とし
て、概略配線の配線パターンを生成し、タイミングを計
算するためのモデルを構築する。
【0026】この配線パターンにおいては、あるブロッ
ク(x,y)に含まれるセルの端子は、すべてそのブロ
ックの中心に位置すると仮定し、配線の分岐もブロック
の中心で行われると仮定する。そして、ネットの配線遅
延を計算するために、まず、ブロック内で閉じているネ
ットの配線長(wire_len_in_block
(netId,x,y))を求める。
【0027】この配線長は、そのネットに繋がってお
り、ブロックに含まれている端子の数(pin_num
ber(netId,x,y))を基に、次式により計
算される。 wire_len_in_block(netId,x,y) =α+β×pin_number(netId,x,y) (2) ここで、αおよびβは、あらかじめ決められた定数であ
り、pin_number(netId,x,y)は、
そのネットに関する混雑度(実際の配線の数)を表すと
考えられる。
【0028】次に、得られたブロック内の配線長と、ブ
ロック間の配線長と、単位長さあたりの遅延時間(単位
遅延量)から、次式によりネットの配線遅延が計算され
る。 配線遅延 =単位遅延量×(ブロック内の配線長+ブロック間の配線長) (3) 図9は、図2の回路のセルとネットの遅延を示してい
る。図9において、各セルの遅延としては、図3のライ
ブラリテーブルに登録された値が用いられており、各ネ
ットの遅延は、(3)式により計算されている。ただ
し、ここでは、簡単のために、単位遅延量=1、ブロッ
ク内の配線長=0(α=β=0)、ブロック間の配線長
=ネットがブロック間の境界をまたぐ回数、としてい
る。
【0029】例えば、ネットN3の場合、ブロック
(0,1)とブロック(0,2)の境界と、ブロック
(1,1)とブロック(1,2)の境界と、ブロック
(0,2)とブロック(1,2)の境界と、ブロック
(1,2)とブロック(2,2)の境界をまたいでい
る。したがって、ネットの配線長は“4”になり、遅延
も“4”になっている。
【0030】また、図10は、図9の遅延から計算され
たパスの遅延を示している。図10において、1つのパ
スはセルおよびネットからなり、パスの遅延はそれに含
まれるセルおよびネットの遅延の総和により与えられ
る。ネットN0、N1の左端に信号が到着した時刻を
“0”と仮定すると、各ネットの端点(各セルの入出力
端子)に信号が到着する時刻がパスの遅延に一致する。
【0031】例えば、ネットN1からネットN5に至る
パスの場合、図9より、ネットN1、セルC0、ネット
N2、セルC1、ネットN3、セルC3、およびネット
N5の遅延は、それぞれ、“1”、“4”、“1”、
“2”、“4”、“4”、および“2”であるので、パ
スの遅延は“18”となる。したがって、ネットN5の
右端における到着時刻は“18”となる。
【0032】また、図11は、図10の到着時刻から計
算されたネットのスラックを示している。図11におい
ては、各ネットの端点における“実際の到着時刻/要求
された到着時刻”が示されており、()内の数値は、
(1)式により計算されたスラックを表している。こう
して計算されたスラックは、図5のネットテーブルに格
納される。
【0033】一般に、スラックが“0”または負の場
合、そのネットはクリティカルであると考えられ、その
ネットに至るパスのタイミングを改善することが望まし
い。また、スラックが正の場合、そのネットのタイミン
グには余裕があると考えられる。
【0034】また、配置装置は、あるブロック(x,
y)に含まれるセルのサイズを大きくする操作、また
は、そのブロックにバッファを挿入する操作を、次式が
満たされることを条件として許可する。 block_area_capa(x,y) >block_cell_area(x,y) (4) (4)式は、セル使用面積がセル使用可能面積より小さ
いことを表しており、この式が満たされる限り、そのブ
ロック内での配線可能性が保証される。言い換えれば、
ブロック内でセル使用面積が増加するような配置変更
は、(4)式の条件により制限されている。
【0035】次に、図12から図31までを参照しなが
ら、本実施形態の配置装置による配置処理について詳細
に説明する。図12は、配置処理のフローチャートであ
る。配置装置は、まず、チップの論理分割の分割レベル
を表す制御変数Lを0とおき(ステップS1)、Lを分
割レベルの最大値max_levelと比較する(ステ
ップS2)。
【0036】Lがmax_level以下であれば、現
在のレベルにおける各ブロックをカット数が最適になる
ように分割して、次のレベルのブロックを生成する(ス
テップS3)。そして、グローバル配線を行って配線パ
ターンを生成し、遅延の評価等のためのモデルを構築す
る(ステップS4)。
【0037】次に、このモデルを用いて、得られた配置
のタイミングを改善する処理を行い(ステップS5)、
配線率を改善する処理を行い(ステップS6)、消費電
力を改善する処理を行う(ステップS7)。次に、Lに
1を加算して(ステップS8)、ステップS2以降の処
理を繰り返す。そして、ステップS2においてLがma
x_levelを越えれば、詳細配置を行って(ステッ
プS9)、処理を終了する。
【0038】ここで、ステップS5、S6、およびS7
における処理を説明するための準備として、これらの処
理に含まれる基本処理について、図13から図28まで
を参照しながら説明する。
【0039】図13は、タイミングを改善するために行
われるセル変更処理のフローチャートである。この処理
では、ある分割レベルにおいて、スラックの値が小さい
順にネットをソートし、スラックが負であるネット(n
et_slack(netId)<0)に関して、load
ing over等の与えられた制約条件を満たしている範囲内
で、そのネットに接続されているセルのライブラリのパ
ワータイプ(lib_power(libId))を変
更する。
【0040】スラックが負であるネットは、タイミング
の厳しいパスに含まれると考えられ、このネットのスラ
ックを改善することで、それを含むパスのタイミングを
改善することができる。また、スラックが正であるネッ
トは、タイミングに余裕のあるパスに含まれる。
【0041】また、ネットのloading overは、ネットの
総キャパシタンスに関する制限を表し、例えば、次式に
より与えられる。 Cmax ×γ>net_capa(netId) (5) ここで、Cmax は、そのネットをドライブするセルの出
力端子のドライブ能力を表し、γは、あらかじめ決めら
れた定数である。(5)式は、ネットの総キャパシタン
スを出力端子のドライブ能力のγ倍より小さい値に制限
することを表している。
【0042】配置装置は、まず、ネットテーブルのデー
タをスラックの値が小さい順にソートし(ステップS1
1)、スラックが負のネットがあるか否かをチェックす
る(ステップS12)。スラックが負のネットがあれ
ば、その中の1つを選択し(ステップS13)、選択さ
れたネットに接続されているセルを1つ選択する(ステ
ップS14)。
【0043】そして、(4)、(5)式を含む与えられ
た制約条件が満たされる範囲内でネットのスラックが改
善されるように、選択されたセルのパワータイプを変更
する(ステップS15)。これにより、セルテーブルに
おいて、対応するセルのライブラリ識別子が変更され
る。(4)式が満たされるようにセルを変更することに
より、セル使用率を一定値以内に抑えることができ、配
線率を落とさずにタイミングを改善することができる。
【0044】次に、変更されたセルを用いてネットの遅
延を評価し(ステップS16)、タイミングが改善され
たか否かをチェックする(ステップS17)。タイミン
グが改善されれば、ブロックテーブルにおいて、変更さ
れたセルを含むブロックのセル使用面積を変更する(ス
テップS18)。また、タイミングが改善されなけれ
ば、セルテーブルのライブラリ識別子を元に戻すこと
で、セルのパワータイプを元に戻す(ステップS1
9)。
【0045】次に、選択されたネットに他のセルがある
か否かをチェックし(ステップS20)、他のセルがあ
れば、ステップS14以降の処理を繰り返す。また、そ
のネットのすべてのセルについて処理が終了すると、他
のネットについてステップS12以降の処理を繰り返
す。そして、スラックが負のネットがなくなると、処理
を終了する。
【0046】例えば、図5のネットテーブルをスラック
の値でソートすると、図14のようになる(ステップS
11)。ただし、図14では、総キャパシタンスは省略
されている。ここでは、ネットN1、N2、N3、およ
びN5のスラックが負であるため、これらのネットが処
理対象となる。
【0047】このうちネットN5が処理対象として選択
されたとすると、図8のリストから、このネットにはセ
ルC3のみが接続されていることが分かる。そこで、セ
ルC3が処理対象として選択され、ネットN5のスラッ
クが改善されるように、このセルのパワータイプが変更
される。
【0048】ここで、図4のセルテーブルを参照する
と、セルC3のライブラリ識別子はL0であることが分
かり、図3のライブラリテーブルを参照すると、ライブ
ラリ識別子L0の種類はインバータであることが分か
る。さらに、ライブラリテーブルには3つの異なるパワ
ータイプのインバータが登録されており、パワーが大き
くなるほど遅延は小さくなっている。したがって、セル
C3をよりパワーの大きなインバータに変更すれば、ネ
ットN5のスラックが改善されると考えられる。
【0049】そこで、配置装置は、セルC3のライブラ
リ識別子をL0からL2に変更することで、そのパワー
タイプを“LOW”から“HIGH”に変更する(ステ
ップS15)。これにより、図2の配置は図15のよう
に変更される。図15においては、セルC3が太線で描
かれており、ハイパワーのセルに変更されたことを示し
ている。
【0050】また、図3のライブラリテーブルより、イ
ンバータL2の面積は“3”であるので、セルC3を含
むブロック(2,2)のblock_cell_are
a(2,2)は“3”となる。しかし、図6のブロック
テーブルより、ブロック(2,2)のblock_ar
ea_capa(2,2)は“7”であるため、セルC
3をL0からL2に変更しても、(4)式は満たされて
いる。
【0051】次に、図15の配置の遅延を評価すると、
図9、図10、および図11に示した数値は、それぞ
れ、図16、図17、および図18に示すように変更さ
れる(ステップS16)。図16においては、セルC3
の遅延が“4”から“2”に減少し、図17において
は、ネットN5のパスの遅延が“18”から“16”に
減少している。そして、図18においては、ネットN5
のスラックが“−1”から“1”に改善されている。
【0052】また、これに伴って、ネットN1、N2、
およびN3の各端点における“要求された到着時刻”に
“2”が加算され、これらのネットのスラックも“−
1”から“1”に改善されている。
【0053】このため、配置装置は、セルの変更を確定
し、図6のブロックテーブルにおいて、ブロック(2,
2)のセル使用面積を“1”から“3”に変更する(ス
テップS18)。こうして、スラックが負のネットに接
続されたセルのパワーが大きくなり、スラックが正に改
善される。
【0054】次に、図19は、配線率を改善するために
行われるセル変更処理のフローチャートである。この処
理では、ある分割レベルにおいて、次式により各ブロッ
クのセル使用余裕度(block_room(x,
y))を求める。 block_room(x,y) =block_area_capa(x,y) −block_cell_area(x,y) (6) そして、このセル使用余裕度の小さい順にブロックをソ
ートし、余裕のないブロックに含まれているセルに対し
て、与えられた制約条件を満たしている範囲内で、パワ
ーが小さくなるようにセルのライブラリのパワータイプ
を変更する。
【0055】配置装置は、まず、ブロックテーブルの各
ブロックについて、(6)式に基づいてセル使用余裕度
を計算し(ステップS21)、ブロックテーブルのデー
タをセル使用余裕度の値が小さい順にソートする(ステ
ップS22)。例えば、図6のブロックテーブルの各ブ
ロックのセル使用余裕度を計算し、ブロックテーブルを
セル使用余裕度でソートすると、図20のようになる。
【0056】次に、余裕のないブロックがあるか否かを
チェックする(ステップS23)。ここでは、各ブロッ
クのセル使用余裕度を所定値と比較し、セル使用余裕度
が所定値より小さいブロックを余裕のないブロックとし
て抽出する。所定値としては、例えば、“0”が用いら
れる。そして、余裕のないブロックがあれば、その中の
1つを選択し(ステップS24)、選択されたブロック
内のセルを1つ選択する(ステップS25)。
【0057】そして、(4)、(5)式を含む与えられ
た制約条件が満たされる範囲内でブロックのセル使用余
裕度が改善されるように、選択されたセルのパワーを小
さくする(ステップS26)。
【0058】このとき、(4)式が満たされるようにセ
ルのパワータイプを変更することにより、セル使用率を
一定値以内に抑えることができ、配線率の改善と消費電
力の最小化を図ることができる。さらに、タイミング破
綻(timing violation)を防止するために、タイミング
に余裕のあるパス上のセルのみを変更の対象とするよう
な制約条件を課しておく。
【0059】次に、選択されたブロック内に他のセルが
あるか否かをチェックし(ステップS27)、他のセル
があれば、ステップS25以降の処理を繰り返す。ま
た、そのブロック内のすべてのセルについて処理が終了
すると、他のブロックについてステップS23以降の処
理を繰り返す。そして、余裕のないブロックがなくなる
と、処理を終了する。
【0060】次に、図21は、消費電力を改善するため
に行われるセル変更処理のフローチャートである。この
処理では、ある分割レベルにおいて、シミュレーション
実行後の状態に基づく信号変化の周波数と総キャパシタ
ンスの積とネットの電圧Vから、次式により各ネットの
電力(net_power(netId))を求める。 net_power(netId) =net_capa(netId)×net_f(netId) ×(1/2)V2 (7) そして、この電力の大きい順にネットをソートし、与え
られた制約条件を満たしている範囲内で、各ネットに接
続されているセルのパワーを小さくしてみる。その結
果、すべてのネットの電力の総和が小さくなれば、セル
のパワータイプを変更する。
【0061】配置装置は、まず、ネットテーブルの各ネ
ットについて、(7)式に基づいて電力を計算し(ステ
ップS31)、ネットテーブルのデータを電力の値が大
きい順にソートする(ステップS32)。次に、ソート
順に1つのネットを選択し(ステップS33)、選択さ
れたネットに接続されたセルを1つ選択する(ステップ
S34)。
【0062】そして、(4)、(5)式を含む与えられ
た制約条件が満たされる範囲内でネットの電力が改善さ
れるように、選択されたセルのパワーを小さくする(ス
テップS35)。
【0063】このとき、(4)式が満たされるようにセ
ルのパワータイプを変更することにより、セル使用率を
一定値以内に抑えることができ、配線率を落とさずに消
費電力の最小化を図ることができる。さらに、タイミン
グ破綻を防止するために、タイミングに余裕のあるパス
上のセルのみを変更の対象とするような制約条件を課し
ておく。この場合、ステップS33において、スラック
が正のネットのみが処理対象として選択される。
【0064】次に、変更されたセルを用いてネットの電
力の総和を評価し(ステップS36)、総消費電力が改
善されたか否かをチェックする(ステップS37)。総
消費電力が減少していれば、ブロックテーブルにおい
て、変更されたセルを含むブロックのセル使用面積を変
更する(ステップS38)。また、総消費電力が減少し
ていなければ、セルのパワータイプを元に戻す(ステッ
プS39)。
【0065】次に、選択されたネットに接続された他の
セルがあるか否かをチェックし(ステップS40)、他
のセルがあれば、ステップS34以降の処理を繰り返
す。また、そのネットに接続されたすべてのセルについ
て処理が終了すると、未処理の他のネットがあるか否か
をチェックする(ステップS41)。他のネットがあれ
ば、ステップS33以降の処理を繰り返し、未処理のネ
ットがなくなると、処理を終了する。
【0066】次に、図22は、タイミングを改善するた
めに行われるバッファ挿入/削除処理のフローチャート
である。この処理では、ある分割レベルにおいて、スラ
ックの値が小さい順にネットをソートし、スラックが負
であるネットに関して、与えられた制約条件を満たして
いる範囲内で、そのネットにバッファを挿入したり、そ
のネットからバッファを削除したりする。
【0067】図22のステップS51〜S53の処理
は、図13のステップS11〜S13の処理と同様であ
る。配置装置は、ステップS53においてネットを選択
すると、(4)、(5)式を含む与えられた制約条件が
満たされる範囲内でネットのスラックが改善されるよう
に、選択されたネットに新たなバッファを挿入するか、
あるいは、そのネットから既存のバッファを削除する
(ステップS54)。このとき、バッファを挿入する位
置は、ブロック座標により指定される位置に限定する。
【0068】バッファの挿入/削除により、セルテーブ
ル、ブロックテーブル、ネットテーブル等の情報が変更
される。(4)式が満たされるようにバッファを挿入/
削除することにより、セル使用率を一定値以内に抑える
ことができ、配線率を落とさずにタイミングを改善する
ことができる。
【0069】そして、ステップS52以降の処理を繰り
返し、スラックが負のネットがなくなると、処理を終了
する。例えば、図14のソート結果において、ネットN
3が処理対象として選択されたとする。このとき、図1
4より、ネットN4のスラックは“5”であり、ネット
N4のタイミングには余裕があることが分かる。そこ
で、ネットN4に接続されたセルC2の入力側にバッフ
ァを挿入して、ネットN3のサイズを小さくすれば、ネ
ットN3の遅延が減少し、ネットN3、N5のスラック
が改善されると考えられる。
【0070】そこで、配置装置は、図23に示すよう
に、ネットN3上のブロック座標(0,2)の位置にパ
ワータイプ“LOW”のバッファC4を挿入して、ネッ
トN3を小さくし、新たなネットN6を生成する(ステ
ップS54)。これにより、図4のセルテーブルには、
ライブラリ識別子L6を持つセルC4が追加され、図5
のネットテーブルには、ネットN6が追加される。
【0071】また、図3のライブラリテーブルより、バ
ッファL6の面積は“2”であるので、図6のブロック
テーブルにおいて、ブロック(0,2)のblock_
cell_area(0,2)は“0”から“2”に変
更される。しかし、ブロック(0,2)のblock_
area_capa(0,2)は“7”であるため、バ
ッファL6を挿入しても、(4)式は満たされている。
【0072】また、図9、図10、および図11に示し
た数値は、それぞれ、図24、図25、および図26に
示すように変更される。図23においては、ネットN3
がまたぐブロック間の境界の数が“4”から“3”に減
少しているため、図24においても、ネットN3の遅延
が“4”から“3”に減少している。また、ネットN6
はブロック(0,1)とブロック(0,2)の境界をま
たいでいるため、ネットN6の遅延は“1”となってい
る。
【0073】また、図25においては、ネットN5のパ
スの遅延が“18”から“17”に減少し、逆に、ネッ
トN4のパスにおいては、遅延“4”のバッファC4が
挿入されたために、パスの遅延が“17”から“21”
に増加している。
【0074】そして、図26においては、ネットN5の
スラックが“−1”から“0”に改善されている。これ
に伴って、ネットN1、N2、およびN3の各端点にお
ける“要求された到着時刻”に“1”が加算され、これ
らのネットのスラックも“−1”から“0”に改善され
ている。逆に、ネットN4のスラックは“5”から
“1”に減少しているが、スラックが負のネットがなく
なったことで、回路全体としてはスラックが改善された
ことになる。
【0075】次に、図27は、配線率を改善するために
行われるバッファ削除処理のフローチャートである。こ
の処理では、ある分割レベルにおいて、各ブロックのセ
ル使用余裕度を求め、その値の小さい順にブロックをソ
ートする。そして、与えられた制約条件を満たしている
範囲内で、余裕のないブロックに含まれているバッファ
を削除する。
【0076】図27のステップS61〜S64の処理
は、図19のステップS21〜S24の処理と同様であ
る。配置装置は、ステップS64においてブロックを選
択すると、次に、選択されたブロック内のバッファを1
つ選択する(ステップS65)。
【0077】そして、(4)、(5)式を含む与えられ
た制約条件が満たされる範囲内でブロックのセル使用余
裕度が改善されるように、選択されたバッファを削除す
る(ステップS66)。
【0078】このとき、(4)式が満たされるようにバ
ッファを削除することにより、セル使用率を一定値以内
に抑えることができ、配線率の改善と消費電力の最小化
を図ることができる。さらに、タイミング破綻を防止す
るために、タイミングに余裕のあるパス上のバッファの
みを削除の対象とするような制約条件を課しておく。
【0079】次に、選択されたブロック内に他のバッフ
ァがあるか否かをチェックし(ステップS67)、他の
バッファがあれば、ステップS65以降の処理を繰り返
す。また、そのブロック内のすべてのバッファについて
処理が終了すると、他のブロックについてステップS6
3以降の処理を繰り返す。そして、余裕のないブロック
がなくなると、処理を終了する。
【0080】次に、図28は、消費電力を改善するため
に行われるバッファ削除処理のフローチャートである。
この処理では、ある分割レベルにおいて、各ネットの電
力を求め、その値の大きい順にネットをソートする。そ
して、与えられた制約条件を満たしている範囲内で、す
べてのネットの電力の総和が小さくなるように、各ネッ
トに接続されているバッファを削除する。
【0081】図28のステップS71〜S73の処理
は、図21のステップS31〜S33の処理と同様であ
る。配置装置は、ステップS73においてネットを選択
すると、選択されたネットに接続されたバッファを1つ
選択する(ステップS74)。
【0082】そして、(4)、(5)式を含む与えられ
た制約条件が満たされる範囲内でネットの電力が改善さ
れるように、選択されたバッファを削除する(ステップ
S75)。
【0083】このとき、(4)式が満たされるようにバ
ッファを削除することにより、セル使用率を一定値以内
に抑えることができ、配線率を落とさずに消費電力の最
小化を図ることができる。さらに、タイミング破綻を防
止するために、タイミングに余裕のあるパス上のバッフ
ァのみを削除の対象とするような制約条件を課してお
く。この場合、ステップS73において、スラックが正
のネットのみが処理対象として選択される。
【0084】次に、選択されたネットに接続された他の
バッファがあるか否かをチェックし(ステップS7
6)、他のバッファがあれば、ステップS74以降の処
理を繰り返す。また、そのネットに接続されたすべての
バッファについて処理が終了すると、未処理の他のネッ
トがあるか否かをチェックする(ステップS77)。他
のネットがあれば、ステップS73以降の処理を繰り返
し、未処理のネットがなくなると、処理を終了する。
【0085】以上説明した基本処理において、バッファ
を挿入/削除する処理には、バッファと同様の機能を持
つ1つ以上のセルを挿入/削除する処理も含まれる。例
えば、この処理において、連続した偶数個のインバータ
を挿入/削除してもよい。
【0086】次に、これらの基本処理を参照しながら、
図12のステップS5、S6、およびS7における処理
を説明する。図29は、図12のステップS5における
タイミング改善処理のフローチャートである。この処理
においては、図13のセル変更処理と図22のバッファ
挿入/削除処理を組み合わせることで、より効果的にタ
イミングを改善する。
【0087】図29のステップS81〜S83の処理
は、図13のステップS11〜S13の処理と同様であ
る。配置装置は、ステップS83においてネットを選択
すると、図13のステップS14〜S20の処理を行っ
て、選択されたネットに接続されたセルのパワータイプ
を変更する(ステップS84)。
【0088】そして、ステップS20において未処理の
他のセルがなくなると、次に、図22のステップS54
の処理を行って、選択されたネットにバッファを挿入し
たり、そのネットからバッファを削除したりする(ステ
ップS85)。そして、ステップS82以降の処理を繰
り返し、ステップS82においてスラックが負のネット
がなくなると、処理を終了する。
【0089】次に、図30は、図12のステップS6に
おける配線率改善処理のフローチャートである。この処
理においては、図19のセル変更処理と図27のバッフ
ァ削除処理を組み合わせることで、より効果的に配線率
を改善する。
【0090】図30のステップS91〜S94の処理
は、図19のステップS21〜S24の処理と同様であ
る。配置装置は、ステップS84においてブロックを選
択すると、図19のステップS25〜S27の処理を行
って、選択されたブロック内のセルのパワータイプを変
更する(ステップS95)。
【0091】そして、ステップS27において未処理の
他のセルがなくなると、次に、図27のステップS65
〜S67の処理を行って、選択されたブロック内のバッ
ファを削除する(ステップS96)。そして、ステップ
S67において未処理の他のバッファがなくなると、ス
テップS93以降の処理を繰り返し、ステップS93に
おいて余裕のないブロックがなくなると、処理を終了す
る。
【0092】図31は、図12のステップS7における
消費電力改善処理のフローチャートである。この処理に
おいては、図21のセル変更処理と図28のバッファ削
除処理を組み合わせることで、より効果的に消費電力を
改善する。
【0093】図31のステップS101〜S103の処
理は、図21のステップS31〜S33の処理と同様で
ある。配置装置は、ステップS103においてネットを
選択すると、図21のステップS34〜S40の処理を
行って、選択されたネットに接続されたセルのパワータ
イプを変更する(ステップS104)。
【0094】そして、ステップS40において未処理の
他のセルがなくなると、次に、図28のステップS74
〜S76の処理を行って、選択されたネットからバッフ
ァを削除する(ステップS105)。そして、ステップ
S76において未処理の他のバッファがなくなると、未
処理の他のネットがあるか否かをチェックする(ステッ
プS106)。他のネットがあれば、ステップS103
以降の処理を繰り返し、ステップS106において他の
ネットがなくなると、処理を終了する。
【0095】ところで、本実施形態の配置装置は、図3
2に示すような情報処理装置(コンピュータ)を用いて
構成することができる。図32の情報処理装置は、CP
U(中央処理装置)11、メモリ12、入力装置13、
出力装置14、外部記憶装置15、媒体駆動装置16、
およびネットワーク接続装置17を備え、それらはバス
18により互いに接続されている。
【0096】メモリ12は、例えば、ROM(read onl
y memory)、RAM(random access memory)等を含
み、処理に用いられるプログラムとデータを格納する。
CPU11は、メモリ12を利用してプログラムを実行
することにより、必要な処理を行う。
【0097】図3のライブラリテーブル、図4のセルテ
ーブル、図5のネットテーブル、図6のブロックテーブ
ル、図7および図8のリスト等のデータは、メモリ12
に保持される。
【0098】入力装置13は、例えば、キーボード、ポ
インティングデバイス、タッチパネル等であり、ユーザ
からの指示や情報の入力に用いられる。出力装置14
は、例えば、ディスプレイ、プリンタ、スピーカ等であ
り、ユーザへのメッセージや処理結果の出力に用いられ
る。
【0099】外部記憶装置15は、例えば、磁気ディス
ク装置、光ディスク装置、光磁気ディスク(magneto-op
tical disk)装置等である。情報処理装置は、この外部
記憶装置15に、上述のプログラムとデータを保存して
おき、必要に応じて、それらをメモリ12にロードして
使用することができる。また、外部記憶装置15は、図
3のライブラリテーブルを格納するデータベースとして
も用いられる。
【0100】媒体駆動装置16は、可搬記録媒体19を
駆動し、その記録内容にアクセスする。可搬記録媒体1
9としては、メモリカード、フロッピーディスク、CD
−ROM(compact disk read only memory )、光ディ
スク、光磁気ディスク等、任意のコンピュータ読み取り
可能な記録媒体が用いられる。ユーザは、この可搬記録
媒体19に上述のプログラムとデータを格納しておき、
必要に応じて、それらをメモリ12にロードして使用す
ることができる。
【0101】ネットワーク接続装置17は、任意のネッ
トワーク(回線)を介して外部の装置と通信し、通信に
伴うデータ変換を行う。情報処理装置は、必要に応じ
て、ネットワーク接続装置17を介して上述のプログラ
ムとデータを外部の装置から受け取り、それらをメモリ
12にロードして使用することができる。
【0102】図33は、図32の情報処理装置にプログ
ラムとデータを供給することのできるコンピュータ読み
取り可能な記録媒体を示している。可搬記録媒体19や
外部のデータベース20に保存されたプログラムとデー
タは、メモリ12にロードされる。そして、CPU11
は、そのデータを用いてそのプログラムを実行し、必要
な処理を行う。
【0103】
【発明の効果】本発明によれば、電子回路の自動レイア
ウトにおいて領域の論理分割に基づくセル配置を行うと
き、各分割レベルにおいてセルのパワータイプの変更や
バッファの挿入/削除を行うことで、タイミング、配線
率、および消費電力を改善することができる。これによ
り、配線による遅延を指定された範囲内に抑えることが
可能になり、回路のパフォーマンスが向上する。
【図面の簡単な説明】
【図1】本発明の配置装置の原理図である。
【図2】セルの配置を示す図である。
【図3】ライブラリテーブルを示す図である。
【図4】セルテーブルを示す図である。
【図5】ネットテーブルを示す図である。
【図6】ブロックテーブルを示す図である。
【図7】第1のリストを示す図である。
【図8】第2のリストを示す図である。
【図9】第1のセルとネットの遅延を示す図である。
【図10】第1のパス遅延を示す図である。
【図11】第1のスラックを示す図である。
【図12】配置処理のフローチャートである。
【図13】第1のセル変更処理のフローチャートであ
る。
【図14】ネットテーブルのソート結果を示す図であ
る。
【図15】ゲートの変更を示す図である。
【図16】第2のセルとネットの遅延を示す図である。
【図17】第2のパス遅延を示す図である。
【図18】第2のスラックを示す図である。
【図19】第2のセル変更処理のフローチャートであ
る。
【図20】ブロックテーブルのソート結果を示す図であ
る。
【図21】第3のセル変更処理のフローチャートであ
る。
【図22】バッファ挿入/削除処理のフローチャートで
ある。
【図23】バッファの挿入を示す図である。
【図24】第3のセルとネットの遅延を示す図である。
【図25】第3のパス遅延を示す図である。
【図26】第3のスラックを示す図である。
【図27】第1のバッファ削除処理のフローチャートで
ある。
【図28】第2のバッファ削除処理のフローチャートで
ある。
【図29】タイミング改善処理のフローチャートであ
る。
【図30】配線率改善処理のフローチャートである。
【図31】消費電力改善処理のフローチャートである。
【図32】情報処理装置の構成図である。
【図33】記録媒体を示す図である。
【符号の説明】
1 格納手段 2 変更手段 11 CPU 12 メモリ 13 入力装置 14 出力装置 15 外部記憶装置 16 媒体駆動装置 17 ネットワーク接続装置 18 バス 19 可搬記録媒体 20 データベース

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 回路設計において、領域分割を繰り返し
    ながらセルの配置を決定する配置装置であって、 ある分割レベルにおいて、分割により生成されたブロッ
    クのブロック情報を格納する格納手段と、 前記ブロック情報を用いて、前記ある分割レベルにおけ
    る配置を変更し、変更された配置を出力する変更手段と
    を備えることを特徴とする配置装置。
  2. 【請求項2】 前記ある分割レベルにおいて、前記ブロ
    ック情報と配置されたセル間の概略配線の情報に基づい
    て、タイミングを計算するためのモデルを生成する生成
    手段と、該モデルを用いてパスのタイミングを評価する
    評価手段とをさらに備え、前記変更手段は、該評価手段
    による評価に基づいて、前記ある分割レベルにおける配
    置を変更することを特徴とする請求項1記載の配置装
    置。
  3. 【請求項3】 前記変更手段は、タイミングが改善され
    るように、タイミングの厳しいパス上のセルのタイプを
    変更することを特徴とする請求項2記載の配置装置。
  4. 【請求項4】 前記変更手段は、タイミングが改善され
    るように、タイミングの厳しいパス上のネットにバッフ
    ァを挿入する処理および該ネットからバッファを削除す
    る処理のうち、少なくとも一方の処理を行うことを特徴
    とする請求項2記載の配置装置。
  5. 【請求項5】 前記変更手段は、タイミングが改善され
    るように、タイミングの厳しいパス上のセルのタイプを
    変更する処理と、該タイミングの厳しいパス上のネット
    にバッファを挿入する処理と、該タイミングの厳しいパ
    ス上のネットからバッファを削除する処理とを組み合わ
    せて、前記ある分割レベルにおける配置を変更すること
    を特徴とする請求項2記載の配置装置。
  6. 【請求項6】 前記変更手段は、セル使用率が一定値以
    内に抑えられるように、タイミングに余裕のあるパス上
    のセルのタイプを変更することを特徴とする請求項2記
    載の配置装置。
  7. 【請求項7】 前記変更手段は、セル使用率が一定値以
    内に抑えられるように、タイミングに余裕のあるパス上
    のバッファを削除することを特徴とする請求項2記載の
    配置装置。
  8. 【請求項8】 前記変更手段は、セル使用率が一定値以
    内に抑えられるように、セルのタイプを変更する処理と
    バッファを削除する処理とを組み合わせて、前記ある分
    割レベルにおける配置を変更することを特徴とする請求
    項2記載の配置装置。
  9. 【請求項9】 前記変更手段は、消費電力が低下するよ
    うに、タイミングに余裕のあるパス上のネットに接続さ
    れたセルのタイプを変更することを特徴とする請求項2
    記載の配置装置。
  10. 【請求項10】 前記変更手段は、消費電力が低下する
    ように、タイミングに余裕のあるパス上のネットに接続
    されたバッファを削除することを特徴とする請求項2記
    載の配置装置。
  11. 【請求項11】 前記変更手段は、消費電力が低下する
    ように、タイミングに余裕のあるパス上のネットに接続
    されたセルのタイプを変更する処理と、該ネットに接続
    されたバッファを削除する処理とを組み合わせて、前記
    ある分割レベルにおける配置を変更することを特徴とす
    る請求項2記載の配置装置。
  12. 【請求項12】 回路設計において、領域分割を繰り返
    しながらセルの配置を決定するコンピュータのためのプ
    ログラムを記録した記録媒体であって、 ある分割レベルにおいて、分割により生成されたブロッ
    クのブロック情報を生成するステップと、 前記ブロック情報を用いて、前記ある分割レベルにおけ
    る配置を変更するステップと、 変更された配置を出力するステップとを含む処理を前記
    コンピュータに実行させるためのプログラムを記録した
    コンピュータ読み取り可能な記録媒体。
  13. 【請求項13】 回路設計において、領域分割を繰り返
    しながらセルの配置を決定する配置方法であって、 ある分割レベルにおいて、分割により生成されたブロッ
    クのブロック情報を生成し、 前記ブロック情報を用いて、前記ある分割レベルにおけ
    る配置を変更することを特徴とする配置方法。
JP20257699A 1999-07-16 1999-07-16 回路素子を配置する配置装置および方法 Expired - Fee Related JP3804901B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20257699A JP3804901B2 (ja) 1999-07-16 1999-07-16 回路素子を配置する配置装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20257699A JP3804901B2 (ja) 1999-07-16 1999-07-16 回路素子を配置する配置装置および方法

Publications (2)

Publication Number Publication Date
JP2001034644A true JP2001034644A (ja) 2001-02-09
JP3804901B2 JP3804901B2 (ja) 2006-08-02

Family

ID=16459788

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20257699A Expired - Fee Related JP3804901B2 (ja) 1999-07-16 1999-07-16 回路素子を配置する配置装置および方法

Country Status (1)

Country Link
JP (1) JP3804901B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044536A (ja) * 2001-07-27 2003-02-14 Fujitsu Ltd タイミング優先でセル配置するlsiのレイアウト方法及びその装置
JP2003045976A (ja) * 2001-08-01 2003-02-14 Toppan Printing Co Ltd トランジスタサイズ設計方法及びトランジスタサイズ設計装置。
JP2010231631A (ja) * 2009-03-27 2010-10-14 Fujitsu Semiconductor Ltd 設計支援プログラム、設計支援装置、および設計支援方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044536A (ja) * 2001-07-27 2003-02-14 Fujitsu Ltd タイミング優先でセル配置するlsiのレイアウト方法及びその装置
JP2003045976A (ja) * 2001-08-01 2003-02-14 Toppan Printing Co Ltd トランジスタサイズ設計方法及びトランジスタサイズ設計装置。
JP2010231631A (ja) * 2009-03-27 2010-10-14 Fujitsu Semiconductor Ltd 設計支援プログラム、設計支援装置、および設計支援方法

Also Published As

Publication number Publication date
JP3804901B2 (ja) 2006-08-02

Similar Documents

Publication Publication Date Title
US5475607A (en) Method of target generation for multilevel hierarchical circuit designs
Sechen VLSI placement and global routing using simulated annealing
US6058252A (en) System and method for generating effective layout constraints for a circuit design or the like
US5696694A (en) Method and apparatus for estimating internal power consumption of an electronic circuit represented as netlist
US7222318B2 (en) Circuit optimization for minimum path timing violations
JP3331968B2 (ja) グリッチ分析と低減に重点をおいたレジスタトランスファレベルの電力消費最適化回路、方法、及び記録媒体
US20080189662A1 (en) Selection of cells from a multiple threshold voltage cell library for optimized mapping to a multi-vt circuit
US9792398B2 (en) Flip-flop clustering for integrated circuit design
JPH09212533A (ja) 論理回路の最適化装置及びその方法
Sarrafzadeh et al. Modern placement techniques
US20040158806A1 (en) Automatic insertion of clocked elements into an electronic design to improve system performance
US20130174114A1 (en) Changing the location of a buffer bay in a netlist
US6460166B1 (en) System and method for restructuring of logic circuitry
US7168057B2 (en) Targeted optimization of buffer-tree logic
Jongeneel et al. Area and search space control for technology mapping
US7178116B2 (en) Method and device for designing semiconductor integrated circuit and logic design program
JP3804901B2 (ja) 回路素子を配置する配置装置および方法
US6938232B2 (en) Floorplanning apparatus deciding floor plan using logic seeds associated with hierarchical blocks
Behjat et al. Integer linear programming models for global routing
US6282695B1 (en) System and method for restructuring of logic circuitry
Song et al. Buffer reduction for congestion control during timing optimization
US7146582B2 (en) Logic circuit optimizing method, logic circuit optimizing device and logic circuit composing device
JP5883633B2 (ja) レイアウト装置及びレイアウト方法
Yang Congestion and timing optimization for standard-cell placement
Watanabe et al. Area and search space control for technology mapping

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051025

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051226

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060223

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060410

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: 20060502

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060508

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: 20090519

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100519

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100519

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110519

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120519

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130519

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140519

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees