JP3305176B2 - Automatic element placement device - Google Patents
Automatic element placement deviceInfo
- Publication number
- JP3305176B2 JP3305176B2 JP30274695A JP30274695A JP3305176B2 JP 3305176 B2 JP3305176 B2 JP 3305176B2 JP 30274695 A JP30274695 A JP 30274695A JP 30274695 A JP30274695 A JP 30274695A JP 3305176 B2 JP3305176 B2 JP 3305176B2
- Authority
- JP
- Japan
- Prior art keywords
- placement
- data
- unit
- constraint
- 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.)
- Expired - Fee Related
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【0001】[0001]
【発明の属する技術分野】本発明は、半導体集積回路や
プリント基板、マルチチップモジュール等のレイアウト
設計を自動的に行うための自動素子配置装置に関するも
のである。[0001] 1. Field of the Invention [0002] The present invention relates to an automatic element arranging apparatus for automatically performing a layout design of a semiconductor integrated circuit, a printed circuit board, a multi-chip module, and the like.
【0002】[0002]
【従来の技術】従来より、半導体集積回路やプリント基
板、マルチチップモジュール等のレイアウト設計を自動
的に行う方法として、フロアプラン工程を用いるものが
知られている。2. Description of the Related Art Conventionally, as a method for automatically designing a layout of a semiconductor integrated circuit, a printed circuit board, a multi-chip module, etc., a method using a floor plan process is known.
【0003】フロアプラン工程とは、素子間での信号の
接続に関する情報、素子の形状、素子のピン位置等の制
約条件を用いて配置の制約条件を決定する工程である。
このフロアプラン工程は、後工程としての配置工程・配
線工程における配置・配線の容易度や、チップのサイ
ズ、チップのパフォーマンス(動作特性)等に大きな影
響を与える。[0003] The floor plan step is a step of determining an arrangement constraint using information relating to signal connection between elements, element shape, element pin position, and the like.
This floor plan process greatly affects the ease of placement and wiring in the subsequent placement and wiring processes, chip size, chip performance (operating characteristics), and the like.
【0004】このフロアプラン工程を実行する方法とし
ては、コンピュータを用いて自動計算する方法と、手作
業による方法とがある。As a method of executing the floor plan process, there are a method of performing automatic calculation using a computer and a method of performing manual calculation.
【0005】ここで、コンピュータを用いたフロアプラ
ン工程においては、回路構成が簡単な場合は、素子単位
で配置の制約条件を決定する方法が一般的である。この
方法においては、素子間の接続情報やパフォーマンス制
約等を考慮して、配置の制約条件を決定すればよい。Here, in a floor plan process using a computer, when the circuit configuration is simple, a method of determining the placement restriction conditions in units of elements is generally used. In this method, the placement constraint may be determined in consideration of connection information between elements, performance constraints, and the like.
【0006】一方、コンピュータを用いたフロアプラン
工程において、回路構成が複雑な場合は、回路全体を複
数のグループに分割して、このグループ単位で配置の制
約条件を決定する方法が一般的である。この方法におい
ては、まず、回路の階層構造や信号の接続情報を考慮し
て、回路全体を複数のグループに分割する。次に、グル
ープを素子の一種と見なして、グループ間の接続情報、
パフォーマンス制約、グループの形状、グループの重な
り等をコスト関数として最適化問題(グループの配置問
題)を解き、これによって制約条件を決定する。そし
て、これを素子配置の制約として、後工程としての配置
工程・配線工程を実行する。On the other hand, in a floor plan process using a computer, when the circuit configuration is complicated, a general method is to divide the entire circuit into a plurality of groups and determine the placement constraints on a group basis. . In this method, first, the entire circuit is divided into a plurality of groups in consideration of the circuit hierarchical structure and signal connection information. Next, regarding the group as a kind of element, connection information between the groups,
An optimization problem (group placement problem) is solved using performance constraints, group shapes, group overlaps, and the like as cost functions, thereby determining constraint conditions. Then, using this as a constraint on the element arrangement, an arrangement step and a wiring step are executed as subsequent steps.
【0007】[0007]
【発明が解決しようとする課題】従来のフロアプラン工
程においてグループ化を行う場合には、上述のように、
素子間の接続情報やパフォーマンス制約等に加えて、グ
ループの形状や重なり等をも考慮して制約条件を同時に
決定しなければならない。このため、コスト関数の自由
度が大きく非常に複雑になってしまうので、適切なコス
ト関数を設定することおよび最適解を得ることが非常に
困難である。When grouping is performed in a conventional floor plan process, as described above,
In addition to connection information between elements, performance constraints, and the like, constraint conditions must be determined at the same time in consideration of the shape and overlap of the groups. For this reason, the cost function has a large degree of freedom and becomes very complicated, so that it is very difficult to set an appropriate cost function and obtain an optimal solution.
【0008】また、このようにコスト関数が複雑なため
に、従来のフロアプラン工程では、フロアプラン作成過
程及び決定後において配線混雑度やパフォーマンス等の
正確な予測を行うことが困難である。Further, since the cost function is complicated as described above, it is difficult in the conventional floor plan process to accurately predict the degree of wiring congestion and the performance in the floor plan creation process and after the determination.
【0009】このため、従来は、フロアプラン工程の後
工程としての配置・配線工程を行う際に、レイアウトサ
イズが大きくなってしまったり、配線が不可能になって
しまったりする場合があった。[0009] For this reason, conventionally, when the placement and wiring process is performed as a post-process of the floor plan process, the layout size may become large or the wiring may not be possible.
【0010】本発明は、このような従来技術の欠点に鑑
みてなされたものであり、大規模な回路においてもレイ
アウトサイズを小さくすることができ、且つ、パフォー
マンスを保障することができる自動素子配置装置を提供
することを目的とする。The present invention has been made in view of the above-mentioned drawbacks of the prior art, and has an automatic element arrangement capable of reducing the layout size and guaranteeing the performance even in a large-scale circuit. It is intended to provide a device.
【0011】[0011]
【課題を解決するための手段】本発明に係る自動素子配
置装置によれば、各素子についての仮の素子配置を行う
仮配置部と、前記仮配置部により配置された各素子につ
いての仮の配線経路を決定して、これらの配線経路の混
雑度を見積もる配線混雑度見積部と、前記仮配置部によ
り配置された各素子についてのパフォーマンス解析を行
うパフォーマンス解析部と、前記仮配置部による仮配
置、前記配線混雑度見積部による配線混雑度見積、及
び、前記パフォーマンス解析部によるパフォーマンス解
析の結果に基づいて、各素子の最終的なグループ分けを
決定するとともに、各グループの最終的な配置制約を生
成する本配置制約生成部と、前記本配置制約生成部によ
り生成された前記配置制約に基づいて、最終的な素子配
置を行う本配置部と、を備えたことを特徴とする。各素
子を仮のグループに分割して、各グループの配置制約を
仮配置制約として生成する仮配置制約生成部をさらに備
え、前記仮配置制約生成部により生成された前記仮配置
制約を用いて前記仮の素子配置を行うこととするとよ
い。According to the automatic element arranging apparatus of the present invention, a temporary arranging section for arranging a temporary element for each element and a temporary arranging section for each element arranged by the temporary arranging section are provided. A wiring congestion degree estimating unit that determines a wiring path and estimates the degree of congestion of these wiring paths, a performance analyzing unit that performs performance analysis on each element arranged by the temporary arrangement unit, and a temporary Based on the placement, the wiring congestion estimation by the wiring congestion estimation unit, and the result of the performance analysis by the performance analysis unit, the final grouping of each element is determined, and the final placement constraint of each group is determined. A main placement constraint generation unit that generates a final placement unit that performs a final element placement based on the placement constraints generated by the main placement constraint generation unit; Characterized by comprising. Each element is further divided into temporary groups, and further includes a temporary placement constraint generation unit that generates a placement constraint of each group as a temporary placement constraint, wherein the temporary placement constraint generation unit generates the temporary placement constraint using the temporary placement constraint. It is advisable to perform a provisional element arrangement.
【0012】[0012]
【発明の実施の形態】以下、本発明に係る自動素子配置
装置の一実施形態について、図1乃至図3を用いて説明
する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of an automatic element placement device according to the present invention will be described below with reference to FIGS.
【0013】図1は、本実施形態に係る自動素子配置装
置のシステム構成を示すブロック図である。FIG. 1 is a block diagram showing a system configuration of the automatic element placement device according to the present embodiment.
【0014】同図において、制御部101は、システム
全体のコントロールを行う。In FIG. 1, a control unit 101 controls the entire system.
【0015】また、データ入出力部102は、フロアプ
ラン工程で使用される部品情報、信号接続情報、パフォ
ーマンス制約、制御パラメータ等(後述)を読み込ん
で、データ格納部103に格納する。また、これらの入
力データやシステム内で生成されたデータ(配置デー
タ、配置制約データ、配線混雑度見積データ、パフォー
マンスデータ等;後述)をデータ格納部103から読み
込んでシステムから出力する際にも使用される。The data input / output unit 102 reads component information, signal connection information, performance constraints, control parameters, and the like (described later) used in the floor plan process, and stores them in the data storage unit 103. These input data and data generated in the system (placement data, placement constraint data, wiring congestion degree estimation data, performance data, etc .; described later) are also used when reading from the data storage unit 103 and outputting from the system. Is done.
【0016】配置制約生成部104は、データ格納部1
03から読み込んだデータ等に基づいて、配置制約を決
定する。そして、これにより生成された配置制約データ
を、データ格納部103に格納する。The placement constraint generation unit 104 includes a data storage unit 1
The placement constraint is determined based on the data and the like read from the program 03. Then, the generated placement constraint data is stored in the data storage unit 103.
【0017】配置部105は、データ格納部103から
読み込んだ配置制約データ等を用いて、本配置工程と同
様の手法による配置処理を行う。そして、生成された配
置データを、データ格納部103に格納する。この配置
部105は、後述するように、グループの相対位値を決
定するための仮配置工程と、フロアプラン工程後の配置
工程とで、使用される。The arranging unit 105 performs an arranging process by using the same arrangement constraint data read from the data storage unit 103 as in the main arranging step. Then, the generated arrangement data is stored in the data storage unit 103. As will be described later, the arranging unit 105 is used in a tentative arranging process for determining a relative position value of a group and an arranging process after a floor plan process.
【0018】配線混雑度見積部106は、データ格納部
103から読み込んだ配置データを用いて、確率的仮想
配線手法により、高速に配線経路の予測を行う。そし
て、この予測結果に基づいて、配線混雑度マップを作成
する。この配線混雑度マップは、配線混雑度見積データ
として、データ格納部103に格納される。この配線混
雑度見積データは、後述するように、グループのユーテ
ィリティを決定する際やマージ処理を行う際に使用され
る。The wiring congestion estimating unit 106 uses the placement data read from the data storage unit 103 to predict the wiring route at high speed by a stochastic virtual wiring method. Then, a wiring congestion degree map is created based on the prediction result. This wiring congestion degree map is stored in the data storage unit 103 as wiring congestion degree estimation data. As will be described later, the wiring congestion degree estimation data is used when determining a utility of a group or when performing a merge process.
【0019】パフォーマンス解析部107は、データ格
納部103から読み込んだ配置データを用いて、回路の
パフォーマンス解析(動作速度を保障するための解析)
を行なう。このパフォーマンス解析の結果は、パフォー
マンスデータとして、データ格納部103に格納され
る。このパフォーマンスデータは、後述するように、グ
ループのユーティリティを決定する際やマージ処理を行
う際に使用される。The performance analysis unit 107 analyzes the performance of the circuit (analysis for guaranteeing the operation speed) using the arrangement data read from the data storage unit 103.
Perform The result of the performance analysis is stored in the data storage unit 103 as performance data. As will be described later, the performance data is used when determining a utility of a group or when performing a merge process.
【0020】次に、図1に示したようなシステムを使用
して自動素子配置を行なう手順について、図2および図
3を用いて説明する。Next, a procedure for performing automatic element placement using the system as shown in FIG. 1 will be described with reference to FIGS.
【0021】図2は、本実施態様に係る自動素子配置装
置による自動素子配置の手順を概略的に示すフローチャ
ートである。FIG. 2 is a flowchart schematically showing the procedure of automatic element placement by the automatic element placement apparatus according to this embodiment.
【0022】まず、データ入出力部102が、システ
ムの外部から、部品データ、接続情報、パフォーマンス
制約および制御パラメータを入力し、データ格納部10
3に格納する(S201)。First, the data input / output unit 102 inputs component data, connection information, performance constraints and control parameters from outside the system, and
3 (S201).
【0023】ここで、部品データは、論理ゲートの大き
さおよび形状、ピン位置、配線の禁止領域、信号入力か
ら信号出力までの所要時間、ピンに配線を接続した場合
の容量等のデータによって構成されている。Here, the component data is composed of data such as the size and shape of the logic gate, the pin position, the prohibited area of the wiring, the required time from signal input to signal output, and the capacitance when the wiring is connected to the pin. Have been.
【0024】また、接続情報は、素子間の接続関係を表
す情報であり、階層情報を含む。The connection information is information indicating a connection relationship between elements, and includes hierarchical information.
【0025】パフォーマンス制約は、チップの動作周波
数や、入力から出力までの到達時間に対する制約を表す
データである。The performance constraint is data representing a constraint on the operating frequency of the chip and the arrival time from input to output.
【0026】制御パラメータは、配線混雑度やパフォー
マンス等について、配置制約を決定する際の重要度を表
すパラメータである。The control parameter is a parameter indicating the degree of importance in determining the placement constraint with respect to the degree of wiring congestion and the performance.
【0027】ここで、ステップS201で入力されるデ
ータは仮配置のためのデータなので、パフォーマンス制
約および制御パラメータは、本配置のときと同等或いは
緩い制約とする。Here, since the data input in step S201 is data for provisional placement, the performance constraints and control parameters are assumed to be the same or less restrictive as in the case of the regular placement.
【0028】次に、配置制約生成部104が、仮配置
制約を生成する(S202;請求項2の「仮配置制約生
成部」による動作に相当する)。Next, the placement constraint generation unit 104 generates a provisional placement constraint (S202; corresponding to the operation of the "temporary placement constraint generation unit" in claim 2).
【0029】この生成過程では、まず、ステップ201
で入力したデータ(部品データ、接続情報、パフォーマ
ンス制約および制御パラメータ)を、データ格納部10
3から読み込む。次に、これらの入力データに基づい
て、素子を仮のグループに分割する。そして、各グルー
プについて、緩やかな配置制約を決定する。このように
して得られた仮配置制約は、配置制約データとして、デ
ータ格納部103に格納される。In this generation process, first, at step 201
(Part data, connection information, performance constraints and control parameters)
Read from 3. Next, elements are divided into temporary groups based on these input data. Then, a loose arrangement constraint is determined for each group. The temporary placement constraint obtained in this way is stored in the data storage unit 103 as placement constraint data.
【0030】この配置制約は、縦・横の長さや半周の長
さ(縦の長さと横の長さとの和)の制約を、グループご
とに定めたものである。In this arrangement restriction, restrictions on the vertical and horizontal lengths and the length of a half circumference (the sum of the vertical and horizontal lengths) are defined for each group.
【0031】なお、この仮配置制約は、必要がない場合
は実行しなくてもよい。The provisional placement constraint need not be executed if it is not necessary.
【0032】続いて、配置部105が、仮配置を行う
(S203;請求項1、2の「仮配置部」による動作に
相当する)。Subsequently, the arranging unit 105 performs a tentative arrangement (S203; corresponding to the operation of the "temporary arranging unit" in claims 1 and 2).
【0033】この過程では、まず、ステップS202で
生成された仮配置制約(配置制約データ)を、データ格
納部103から読み出す。そして、このデータを用い
て、各素子の絶対位置を決定する。このとき、後述する
本配置と同様の手法(例えばミニカット法等)を用いる
ことにより、仮配置の精度を高めることができ、本配置
制約の最適化を促進することができる。その後、このよ
うにして得られた仮配置のデータを、配置データとし
て、データ格納部103に格納する。In this process, first, the temporary placement constraint (location constraint data) generated in step S202 is read from the data storage unit 103. Then, the absolute position of each element is determined using this data. At this time, by using the same method (for example, the mini-cut method or the like) as the later-described real arrangement, the accuracy of the temporary arrangement can be increased, and the optimization of the real arrangement restriction can be promoted. After that, the data of the temporary arrangement thus obtained is stored in the data storage unit 103 as arrangement data.
【0034】なお、上述のステップS202を実行しな
かった場合は、ステップS201で入力した部品デー
タ、接続情報、パフォーマンス制約および制御パラメー
タをデータ格納部103から読み出し、これらのデータ
を用いて仮配置を行う。If step S202 is not executed, the component data, connection information, performance constraints, and control parameters input in step S201 are read from the data storage unit 103, and the provisional arrangement is performed using these data. Do.
【0035】次に、配線混雑度見積部106が、配線
混雑箇所の見積もりを行う(S204;請求項1の「配
線混雑度見積部」による動作に相当する)。Next, the wiring congestion degree estimating section 106 estimates a wiring congestion location (S204; this corresponds to the operation of the "wiring congestion degree estimating section" in claim 1).
【0036】この過程では、まず、ステップS203で
生成された仮配置のデータ(配置データ)を、データ格
納部103から読み出す。次に、この配置データに基づ
き、確率的仮想配線技術を用いて、配線経路を予想す
る。さらに、かかる予想結果に基づいて、配線が混雑す
る箇所の見積もりを行う。そして、この見積もりの結果
を示すマップ(配線混雑度見積データ)を、データ格納
部103に格納する。この配線混雑度見積データは、グ
ループごとのユーティリティ(回路面積に対する素子面
積の比)の調整やマージ(複数のグループを統合するこ
と)等の制約条件の生成に使用される。In this process, first, the temporary arrangement data (arrangement data) generated in step S203 is read from the data storage unit 103. Next, based on the placement data, a wiring route is predicted using a stochastic virtual wiring technique. Further, based on the expected result, an estimation of a portion where the wiring is congested is performed. Then, a map (wiring congestion degree estimation data) indicating the result of the estimation is stored in the data storage unit 103. The wiring congestion degree estimation data is used for adjustment of utility (ratio of element area to circuit area) for each group and generation of constraint conditions such as merging (integrating a plurality of groups).
【0037】次に、パフォーマンス解析部107が、
パフォーマンスの解析を行う(S205;請求項1の
「パフォーマンス解析部」による動作に相当する)。Next, the performance analysis unit 107
The performance is analyzed (S205; corresponds to the operation of the "performance analysis unit" in claim 1).
【0038】この過程でも、まず、ステップS203で
生成された仮配置のデータ(配置データ)を、データ格
納部103から読み出す。次に、この配置データに基づ
き、パフォーマンスの解析を行う。そして、この解析結
果を示すデータ(パフォーマンスデータ)を、データ格
納部103に格納する。このパフォーマンスデータも、
グループごとのユーティリティの調整やマージ等の制約
条件の生成に使用される。Also in this process, first, the data (arrangement data) of the temporary arrangement generated in step S203 is read from the data storage unit 103. Next, performance analysis is performed based on the arrangement data. Then, data (performance data) indicating the analysis result is stored in the data storage unit 103. This performance data also
It is used for adjusting the utility for each group and generating constraints such as merging.
【0039】その後、配置制約生成部104が、上述
のようにして得られた仮配置のデータ、配線混雑度見積
データおよびパフォーマンスデータを用いて、本配置制
約を決定する(S206;請求項1の「本配置制約生成
部」による動作に相当する)。After that, the placement constraint generation unit 104 determines the main placement constraint using the data of the provisional placement, the estimated data of wiring congestion, and the performance data obtained as described above (S206; claim 1). This corresponds to the operation performed by the “real arrangement constraint generation unit”).
【0040】この過程では、まず、ステップS203〜
S205で生成された仮配置のデータ(配置データ)、
配線混雑度見積データおよびパフォーマンスデータを、
データ格納部103から読み出す。In this process, first, in steps S203 to S203,
Data of the temporary arrangement (arrangement data) generated in S205,
Wiring congestion estimation data and performance data
The data is read from the data storage unit 103.
【0041】次に、これらの入力データに基づいて、上
述のグループ(S203)の相対的な位置関係の制約を
決定する。また、複数のグループを統合した方がよいと
判断された場合は、それらのグループをマージする。そ
して、このマージ後のグループについて、相対的な位置
関係の制約を更新する。Next, based on these input data, constraints on the relative positional relationship of the above-mentioned group (S203) are determined. If it is determined that it is better to integrate a plurality of groups, those groups are merged. Then, for the group after the merge, the constraint of the relative positional relationship is updated.
【0042】さらに、この過程では、グループの形状や
ユーティリティの最適化も、行われる。これらの最適化
は、グループ内における素子の面積(仮配置のデータか
ら得られる)や配線混雑度見積データを用いて行われ
る。Further, in this process, the shape of the group and the utility are optimized. These optimizations are performed using the area of the element in the group (obtained from the data of the provisional arrangement) and the data of the degree of congestion of the wiring.
【0043】そして、このようにして得られた本配置制
約のデータを、配置制約データとして、データ格納部1
03に格納する。The data of the main placement constraint obtained in this way is used as placement constraint data in the data storage unit 1.
03.
【0044】最後に、この配置制約データを用いて、
最終的な配置を行う(S207;請求項1の「本配置
部」による動作に相当する)。Finally, using this placement constraint data,
The final arrangement is performed (S207; corresponds to the operation by the "main arrangement unit" in claim 1).
【0045】この過程では、まず、ステップS206で
生成された配置制約データを、データ格納部103から
読み出す。そして、このデータを用い、仮配置と同様の
手法によって、各素子の絶対位置を決定する。その後、
このようにして得られた本配置のデータを、配置データ
として、データ格納部103に格納し、自動素子配置を
終了する。In this process, first, the placement constraint data generated in step S206 is read from the data storage unit 103. Then, using this data, the absolute position of each element is determined by the same method as the temporary arrangement. afterwards,
The data of the real arrangement thus obtained is stored in the data storage unit 103 as arrangement data, and the automatic element arrangement is completed.
【0046】次に、上述の本配置制約生成過程(S20
6)および本配置過程(S207)の具体例について、
図3を用いて説明する。Next, the above-described placement constraint generation process (S20)
6) and a specific example of the main placement process (S207)
This will be described with reference to FIG.
【0047】図3において、(a)は仮配置過程(S2
03)後の各グループの位置を示す概念図であり、
(b)は本配置過程(S207)後の各グループの位置
を示す概念図である。In FIG. 3, (a) shows a provisional arrangement process (S2
03) It is a conceptual diagram showing the position of each group after,
(B) is a conceptual diagram showing the position of each group after the main placement process (S207).
【0048】ここでは、仮配置過程(S203)後に行
った配線混雑度見積過程(S204)の結果、グループ
Aの配線混雑度が非常に大きくなることが判明したもの
とする(図3(a)参照)。このため、本配置制約生成
過程(S207)では、ユーティリティの調整により、
グループAの面積の制約を緩くする。これにより、本配
置においては、グループAの面積が、仮配置のときより
も大きくなる(図3(b)参照)。Here, it is assumed that as a result of the wiring congestion estimation process (S204) performed after the tentative placement process (S203), it is found that the wiring congestion of the group A becomes extremely large (FIG. 3A). reference). For this reason, in the present placement constraint generation process (S207), the utility is adjusted to
Relax the restrictions on the area of group A. Thus, in the actual arrangement, the area of the group A is larger than that in the temporary arrangement (see FIG. 3B).
【0049】また、仮配置過程(S203)後のパフォ
ーマンス解析過程(S205)の結果、グループBから
出力された信号が所望の時間内にグループC,Iに到達
することができず、タイミング違反が発生してしまうこ
とが判明したものとする(図3(a)参照)。このた
め、本配置制約生成過程(S207)では、グループ
B,C,Iのマージと形状変更を行う。これにより、グ
ループB,C,Iが一つのグループとして取り扱われる
ので(図3(b)参照)、本配置での素子配置の自由度
が高まり、タイミング違反の発生を防止し易くなる。As a result of the performance analysis step (S205) after the provisional arrangement step (S203), the signals output from the group B cannot reach the groups C and I within a desired time, and a timing violation occurs. It is assumed that it has occurred (see FIG. 3A). Therefore, in the placement constraint generation process (S207), the groups B, C, and I are merged and the shape is changed. As a result, the groups B, C, and I are treated as one group (see FIG. 3B), so that the degree of freedom in element arrangement in this arrangement is increased, and it is easy to prevent occurrence of timing violation.
【0050】一方、グループD,Eは、境界部が複雑に
入り組んでおり、仮配置(S203)の際に、最適な素
子配置(すなわち、レイアウトサイズや配線混雑度が小
さくなるような配置)が困難である。したがって、本配
置制約生成過程(S207)ではグループD,Eのマー
ジを行うこととし、本配置過程での素子配置の最適化を
容易にしている(図3(b)参照)。On the other hand, in the groups D and E, the boundary portions are complicated and complicated, and the optimal element arrangement (that is, the arrangement that reduces the layout size and the degree of wiring congestion) during the provisional arrangement (S203). Have difficulty. Therefore, in the main placement constraint generation step (S207), the groups D and E are merged, thereby facilitating the optimization of the element arrangement in the main placement step (see FIG. 3B).
【0051】さらに、グループHはグループGに包含さ
れており、無意味な仮配置制約の原因となっている(図
3(a)参照)。このため、本配置制約生成過程(S2
07)では、グループHとグループIとのマージを行
い、本配置過程での素子配置の最適化を容易にしている
(図3(b)参照)。Further, the group H is included in the group G, and causes a meaningless provisional placement constraint (see FIG. 3A). For this reason, the main placement constraint generation process (S2
In 07), the group H and the group I are merged to facilitate the optimization of the element arrangement in the actual arrangement process (see FIG. 3B).
【0052】このように、本実施態様に係る自動素子配
置装置は、部品データ、接続情報、パフォーマンス制約
等のデータを外部から入力してそのまま配置制約を決定
するのではなく、まず、これらのデータを用いて仮配置
制約を決定し、この仮配置制約に基づいて生成された仮
配置データ、配線混雑度見積データおよびパフォーマン
ス解析データを用いて最終的な配置制約を決定すること
としたものである。As described above, the automatic element placement apparatus according to the present embodiment does not input data such as component data, connection information, and performance constraints from the outside to determine placement constraints as they are, but first, Is used to determine a temporary placement constraint, and final placement constraints are determined using temporary placement data, wiring congestion estimation data, and performance analysis data generated based on the temporary placement constraint. .
【0053】このため、本実施態様に係る自動素子配置
装置によれば、最適化問題を簡略化することができるの
で、最適化効率を高めることができ、レイアウトサイズ
や配線混雑度の低減、パフォーマンスの保障等に対して
有効である。また、仮配置工程(S203)で、本配置
(S207)と同様の手法(例えばミニカット法等)を
用いることとしたので、仮配置の精度を高めることがで
き、本配置制約の最適化を促進することができる。Therefore, according to the automatic element placement apparatus according to the present embodiment, the optimization problem can be simplified, the optimization efficiency can be increased, the layout size and the degree of wiring congestion can be reduced, and the performance can be reduced. It is effective for the security of In addition, since the same method (for example, the mini-cut method) as that of the real placement (S207) is used in the temporary placement step (S203), the accuracy of the temporary placement can be improved, and the optimization of the real placement constraint can be performed. Can be promoted.
【0054】[0054]
【発明の効果】以上詳細に説明したように、本発明によ
れば、大規模な回路においてもレイアウトサイズを小さ
くすることができ、且つ、パフォーマンスを保障するこ
とができる自動素子配置装置を提供することができる。As described above in detail, according to the present invention, there is provided an automatic element placement device capable of reducing the layout size even in a large-scale circuit and guaranteeing the performance. be able to.
【図1】本発明の実施形態に係る自動素子配置装置のシ
ステム構成を示すブロック図である。FIG. 1 is a block diagram showing a system configuration of an automatic element placement device according to an embodiment of the present invention.
【図2】図1に示した実施態様に係る自動素子配置装置
による自動素子配置の手順を概略的に示すフローチャー
トである。FIG. 2 is a flowchart schematically showing a procedure of automatic element arrangement by the automatic element arrangement apparatus according to the embodiment shown in FIG. 1;
【図3】図2に示した本配置制約生成過程および本配置
過程の具体例を説明するための図であり、(a)は仮配
置後の各グループの位置を示す概念図、(b)は本配置
後の各グループの位置を示す概念図である。3A and 3B are diagrams for explaining a specific example of a real placement constraint generation process and a real placement process shown in FIG. 2, wherein FIG. 3A is a conceptual diagram showing the position of each group after provisional placement, and FIG. Is a conceptual diagram showing the position of each group after the actual arrangement.
101 制御部 102 入出力部 103 データ格納部 104 配置制約生成部 105 配置部 106 配線混雑度見積部 107 パフォーマンス解析部 Reference Signs List 101 control unit 102 input / output unit 103 data storage unit 104 placement constraint generation unit 105 placement unit 106 wiring congestion degree estimation unit 107 performance analysis unit
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平6−180733(JP,A) 特開 平5−35822(JP,A) 特開 平5−2626(JP,A) 特開 平4−48651(JP,A) 特開 平3−242953(JP,A) 特開 平3−25953(JP,A) 秋山寿博、外2名,高性能ASICの レイアウト技術,東芝レビュー,株式会 社東芝,1995年 6月 1日,Vol. 50、No.6,p.460−464,CSNS 199700246005 (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 658 ────────────────────────────────────────────────── ─── Continuation of front page (56) References JP-A-6-180733 (JP, A) JP-A-5-35822 (JP, A) JP-A-5-2626 (JP, A) JP-A-4- 48651 (JP, A) JP-A-3-242953 (JP, A) JP-A-3-25953 (JP, A) Toshihiro Akiyama, two others, layout technology of high-performance ASIC, Toshiba Review, Toshiba Corporation, Vol. 50, No. 1, June 1, 1995. 6, p. 460-464, CSNS 199700246005 (58) Fields investigated (Int. Cl. 7 , DB name) G06F 17/50 658
Claims (2)
置部と、 前記仮配置部により配置された各素子についての仮の配
線経路を決定して、これらの配線経路の混雑度を見積も
る配線混雑度見積部と、 前記仮配置部により配置された各素子についてのパフォ
ーマンス解析を行うパフォーマンス解析部と、 前記仮配置部による仮配置、前記配線混雑度見積部によ
る配線混雑度見積、及び、前記パフォーマンス解析部に
よるパフォーマンス解析の結果に基づいて、各素子の最
終的なグループ分けを決定するとともに、各グループの
最終的な配置制約を生成する本配置制約生成部と、 前記本配置制約生成部により生成された前記配置制約に
基づいて、最終的な素子配置を行う本配置部と、 を備えたことを特徴とする自動素子配置装置。1. A tentative placement unit for arranging tentative elements for each element, and tentative wiring paths for each element arranged by the tentative placement unit are determined, and the congestion degree of these wiring paths is estimated. A wiring congestion degree estimating unit, a performance analysis unit that performs performance analysis on each element arranged by the temporary arrangement unit, a temporary arrangement by the temporary arrangement unit, a wiring congestion degree estimation by the wiring congestion degree estimation unit, and A final placement constraint generation unit that determines a final grouping of each element based on a result of the performance analysis by the performance analysis unit and generates a final placement constraint of each group; And a main placement unit that performs a final placement of elements based on the placement constraint generated by the automatic placement apparatus.
ープの配置制約を仮配置制約として生成する仮配置制約
生成部をさらに備え、前記仮配置制約生成部により生成
された前記仮配置制約を用いて前記仮の素子配置を行う
ことを特徴とする請求項1に記載の自動素子配置装置。2. The apparatus according to claim 1, further comprising: a provisional placement constraint generation unit that divides each element into a provisional group and generates a placement constraint of each group as a provisional placement constraint. The automatic element placement device according to claim 1, wherein the temporary element placement is performed using a constraint.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP30274695A JP3305176B2 (en) | 1995-11-21 | 1995-11-21 | Automatic element placement device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP30274695A JP3305176B2 (en) | 1995-11-21 | 1995-11-21 | Automatic element placement device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09146997A JPH09146997A (en) | 1997-06-06 |
JP3305176B2 true JP3305176B2 (en) | 2002-07-22 |
Family
ID=17912655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP30274695A Expired - Fee Related JP3305176B2 (en) | 1995-11-21 | 1995-11-21 | Automatic element placement device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3305176B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8099702B2 (en) * | 2008-07-30 | 2012-01-17 | Synopsys, Inc. | Method and apparatus for proximate placement of sequential cells |
-
1995
- 1995-11-21 JP JP30274695A patent/JP3305176B2/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
秋山寿博、外2名,高性能ASICのレイアウト技術,東芝レビュー,株式会社東芝,1995年 6月 1日,Vol.50、No.6,p.460−464,CSNS199700246005 |
Also Published As
Publication number | Publication date |
---|---|
JPH09146997A (en) | 1997-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5719783A (en) | Method and apparatus for performing timing analysis on a circuit design | |
US8719742B2 (en) | Conversion of circuit description to an abstract model of the circuit | |
US9152742B1 (en) | Multi-phase models for timing closure of integrated circuit designs | |
JPH04101274A (en) | Logic design processing device and timing adjusting method | |
JPH10313058A (en) | Semiconductor integrated circuit designing device and method therefor and computer readable recording medium for recording semiconductor integrated circuit design program and manufacture of the same circuit | |
JP3005538B1 (en) | LSI design system by model creation of functional block and LSI design method | |
US6609241B2 (en) | Method of designing clock wiring | |
US8806407B2 (en) | Multiple-instantiated-module (MIM) aware pin assignment | |
JP3424997B2 (en) | Circuit design equipment | |
US20100275168A1 (en) | Design method of semiconductor integrated circuit device and program | |
US6567966B2 (en) | Interweaved integrated circuit interconnects | |
Liu et al. | Maximizing performance by retiming and clock skew scheduling | |
US6141631A (en) | Pulse rejection circuit model program and technique in VHDL | |
JP3305176B2 (en) | Automatic element placement device | |
JPH09106407A (en) | Design supporting system | |
KR19980079812A (en) | How to optimize the circuit structure included in the circuit layout | |
US6928401B1 (en) | Interactive repeater insertion simulator (IRIS) system and method | |
JP4053969B2 (en) | Semiconductor integrated circuit design apparatus and semiconductor integrated circuit design method | |
US7010774B1 (en) | Bottom-up approach for synthesis of register transfer level (RTL) based design | |
US6532584B1 (en) | Circuit synthesis method | |
JP2000099561A (en) | Power voltage fluctuation analysis device for semiconductor device | |
US7290225B2 (en) | Method for compressing semiconductor integrated circuit, using design region divided into plural blocks | |
JP3107207B2 (en) | Logic circuit improvement method and logic circuit improvement method | |
JPH09232436A (en) | Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit | |
US20230259684A1 (en) | Novel approach to child block pinning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090510 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090510 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100510 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110510 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110510 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120510 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |