JPH0536832A - Parallel placement method of logic cells - Google Patents
Parallel placement method of logic cellsInfo
- Publication number
- JPH0536832A JPH0536832A JP3347412A JP34741291A JPH0536832A JP H0536832 A JPH0536832 A JP H0536832A JP 3347412 A JP3347412 A JP 3347412A JP 34741291 A JP34741291 A JP 34741291A JP H0536832 A JPH0536832 A JP H0536832A
- Authority
- JP
- Japan
- Prior art keywords
- parallel
- area
- cells
- processing
- parallel processing
- 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
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】
【目的】 半導体集積回路上に初期配置される複数の論
理セルの配置改良処理を、高速にかつ効率よく行うこと
を目的とする。
【構成】 レイアウト対象領域1をカットライン(図中
点線)で複数の格子に分割する。カットライン毎のカッ
ト数(括弧内数字)と、格子毎のピン分散値(格子内数
字)を算出する。最大カット数(9)を示すカットライ
ンを含む複数の格子からなる任意形状の矩形領域である
並列処理領域6と、最大ピン分散値(10)を示す格子
を含む複数の格子からなる任意形状の矩形領域である並
列処理領域7を設定する。領域6にはカット数を減少さ
せる手法を、領域7にはピン分散値を均一化させる手法
を用い、各領域6,7内での論理セルの配置改良を並列
に処理する。
(57) [Abstract] [Purpose] An object of the present invention is to perform a layout improvement process of a plurality of logic cells initially arranged on a semiconductor integrated circuit at high speed and efficiently. [Structure] The layout target area 1 is divided into a plurality of grids by cut lines (dotted lines in the figure). The number of cuts (number in parentheses) for each cut line and the pin dispersion value (number in lattice) for each grid are calculated. The parallel processing area 6 which is a rectangular area having an arbitrary shape including a plurality of cut lines including the cut lines showing the maximum number of cuts (9) and the arbitrary shape including a plurality of grids including the lattice showing the maximum pin dispersion value (10) A parallel processing area 7 which is a rectangular area is set. A method for reducing the number of cuts is used for the area 6, and a method for equalizing the pin distribution values is used for the area 7, and the improvement of the logic cell arrangement in each of the areas 6 and 7 is processed in parallel.
Description
【0001】[0001]
【産業上の利用分野】本発明は、半導体集積回路のレイ
アウト設計における、論理セルの並列配置処理方法に関
する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel layout processing method of logic cells in a layout design of a semiconductor integrated circuit.
【0002】[0002]
【従来の技術】ULSI製造技術の進歩による集積度の
向上により、ULSIに搭載されるトランジスタの数は
毎年数倍の割合で増大してきており、数年内には、メガ
ゲートクラスLSIが実現可能となると予想される一
方、短期間に制作されることが強く要求されている。こ
のため、レイアウトCADは大量のデータを高速に処理
しなければならない。2. Description of the Related Art The number of transistors mounted on a ULSI is increasing at a rate of several times every year due to the improvement of the degree of integration due to the progress of ULSI manufacturing technology, and a megagate class LSI can be realized within a few years. Although it is expected that it will be, there is a strong demand for production in a short period of time. Therefore, the layout CAD must process a large amount of data at high speed.
【0003】これまで、自動配置において種々の方法が
提案されているが、ほとんどの場合単一のCPUを用い
てシーケンシャルに処理が行われてきたために計算速度
には限界がある。計算速度を上げるために、マルチCP
Uによって並列処理を行い、計算時間の短縮を図る配置
処理方法も提案されている。Up to now, various methods have been proposed for automatic placement, but in most cases, a single CPU is used to perform sequential processing, so that the calculation speed is limited. Multi-CP to increase the calculation speed
An arrangement processing method has also been proposed in which U performs parallel processing to reduce the calculation time.
【0004】従来の並列配置処理方法として、チップ上
を縦横のラインで複数の矩形領域に分割し、それぞれの
矩形領域を処理装置となるプロセッサーに割当て、プロ
セッサーごとに矩形領域内の論理セルの配置状態を改良
する方法がある(J.Rose,W.snelgrove,and Z.Vranesic,"
Parallel Simulated Annealing,"IEEEtrans.Computer A
ided Design,Vol.CAD-7,No.3,Mar.1988,pp.387-396.)
。As a conventional parallel arrangement processing method, a chip is divided into a plurality of rectangular areas by vertical and horizontal lines, each rectangular area is allocated to a processor which is a processing device, and a logical cell is arranged in each rectangular area for each processor. There are ways to improve the condition (J. Rose, W. snelgrove, and Z. Vranesic, "
Parallel Simulated Annealing, "IEEEtrans.Computer A
ided Design, Vol.CAD-7, No.3, Mar.1988, pp.387-396.)
..
【0005】しかしながらこの方法は、全ての矩形領域
で一つの評価項目のみを改良するように配置状態を変化
させるために、改良の必要の無い矩形領域についても配
置状態が変化してしまう。また、矩形領域内の配置状態
を考慮せずに同一形状の矩形領域を設定するため、改良
の必要の無い矩形領域に割当てられたプロセッサーが実
際に動作してない場合があり、並列の効果を下げてい
る。However, according to this method, the arrangement state is changed so that only one evaluation item is improved in all the rectangular areas, and therefore the arrangement state is changed also in the rectangular areas which need not be improved. In addition, since the rectangular area of the same shape is set without considering the arrangement state in the rectangular area, the processor allocated to the rectangular area that does not need to be improved may not actually operate, and the parallel effect can be achieved. I'm lowering it.
【0006】一方、セルの配置に於いては、接続情報や
タイミングなどを考慮すると、ある程度近傍に配置する
事が望ましいセルの集合があり、場合によっては配置の
条件として、近傍に配置するセルの集合が指定されてい
る事もある。On the other hand, in the placement of cells, there is a set of cells that should be placed near to some extent in consideration of connection information, timing, etc. A set may be specified.
【0007】しかしながら、従来提案されている並列配
置処理方法は、すべての並列用分割領域が一定形状の矩
形に設定されているため、近傍に配置する事が望ましい
セルの集合が、複数のプロセッサーに分割されて処理さ
れてしまう場合があった。However, in the conventional parallel arrangement processing method, since all the parallel divided areas are set in a rectangular shape having a constant shape, a set of cells, which should be arranged in the vicinity, is distributed to a plurality of processors. In some cases, it was divided and processed.
【0008】この場合、配置の条件を満たすように、当
該集合内のセルの配置を行う為には、各プロセッサー間
でお互いに当該集合に属するセルの位置を考慮しなけれ
ばならない。即ち、集合に属しているセルにより形成さ
れている現在の矩形の外には、集合に属するセルを移動
させない方法、あるいはセルを移動する際、他のプロセ
ッサーに属し、かつ当該セルに接続しているセルは同時
に動かさない方法等で、配置の条件を満たす必要があっ
た。そのため、セルの配置の自由度が下がり、配置の改
良効果も下がってしまう。In this case, in order to arrange the cells in the set so as to satisfy the arrangement condition, the positions of the cells belonging to the set must be considered among the processors. That is, outside the current rectangle formed by the cells that belong to the set, there is a method of not moving the cells that belong to the set, or when moving the cells that belong to another processor and are connected to the cell. It was necessary to satisfy the conditions for placement, such as by not moving the existing cells at the same time. As a result, the degree of freedom in cell placement is reduced, and the improvement effect of placement is also reduced.
【0009】[0009]
【発明が解決しようとする課題】上述のように、従来の
並列配置処理方法では、改良の必要の無い矩形領域につ
いても処理を行ってしまったり、プロセッサーの並列動
作の効果を下げているという問題があった。As described above, in the conventional parallel arrangement processing method, a rectangular area that does not need to be improved is processed and the effect of parallel operation of processors is reduced. was there.
【0010】また、すべての並列用分割領域で一定形状
の矩形を設定するため、近傍に配置する事が望ましいセ
ルの集合が複数のプロセッサーに分割されてしまい、配
置の条件を満たすように当該集合内のセルの配置を行う
為には、各プロセッサー間でお互いに当該集合に属する
セルの配置位置を考慮しなければならなかった。そのた
め、セルの配置の自由度が下がり、配置の改良効果も下
がってしまうという問題があった。Further, since a rectangular shape having a constant shape is set in all the parallel division areas, a set of cells which should be arranged in the vicinity is divided into a plurality of processors, and the set is set so that the arrangement condition is satisfied. In order to arrange the cells in the inside, the arrangement positions of the cells belonging to the set must be considered among the processors. Therefore, there is a problem in that the degree of freedom in arranging cells is reduced and the effect of improving the arrangement is also reduced.
【0011】上記のような問題を解決するために、第1
の発明は、いくつかの評価項目ごとに任意形状の矩形領
域を並列処理領域として設定し、各並列処理領域に応じ
た改良手法を用いることにより、高速でかつ効果的に論
理セルの並列配置処理を行うことを目的としている。In order to solve the above problems, the first
Of the present invention sets a rectangular area of an arbitrary shape for each of several evaluation items as a parallel processing area, and uses an improved method according to each parallel processing area, thereby enabling high-speed and effective parallel placement processing of logic cells. Is intended to do.
【0012】また、第2の発明は、並列に処理する際に
セルの配置条件を考慮した上、近傍に配置されるべきセ
ルの集合を一つのプロセッサーに割り当てられるよう
な、任意のアスペクト比(矩形の縦横比)の矩形領域を
任意の位置に設定することにより、セルの配置の自由度
を上げ、高速でかつ効果的に配置結果を得ることを目的
としている。The second aspect of the present invention takes into consideration the cell placement conditions when processing in parallel, and assigns a set of cells to be placed in the vicinity to one processor with an arbitrary aspect ratio ( By setting a rectangular area having a rectangular aspect ratio) at an arbitrary position, it is possible to increase the degree of freedom of cell arrangement and obtain an arrangement result at high speed and effectively.
【0013】[0013]
【課題を解決するための手段】上記課題を解決するた
め、第1の発明は、半導体集積回路上に初期配置された
複数の論理セルからなるレイアウト対象領域を複数の格
子に分割し、論理セルの配置状態を表すいくつかの評価
項目におけるそれぞれの評価値を各格子ごとに求め、同
一の評価項目における評価値の改良を要する複数の格子
からなる任意形状の矩形領域を並列処理領域として設定
し、各評価項目に対する並列処理領域に応じた改良手法
を用いて、各並列処理領域内での論理セルの配置改良
を、全ての並列処理領域について並列に処理することを
特徴としている。In order to solve the above-mentioned problems, a first invention is to divide a layout target area composed of a plurality of logic cells initially arranged on a semiconductor integrated circuit into a plurality of grids, The evaluation values of several evaluation items that represent the arrangement state of each of the grids are obtained for each grid, and a rectangular area of arbitrary shape consisting of multiple grids that requires improvement of the evaluation values of the same evaluation item is set as the parallel processing area. , It is characterized in that the improvement method of the logic cell in each parallel processing area is processed in parallel for all the parallel processing areas by using the improvement method according to the parallel processing area for each evaluation item.
【0014】また、第2の発明は、半導体集積回路上に
初期配置された複数の論理セルからなるレイアウト対象
領域内の、近傍に配置されるべきセル集合内のセルの移
動範囲が制約されている最大限界範囲を含む矩形領域を
並列処理領域として設定し、複数の並列処理領域をそれ
ぞれ異なるプロセッサーに割当て、並列配置を繰り返す
ことを特徴としている。According to the second aspect of the invention, the movement range of the cells in the cell set to be arranged in the vicinity is restricted in the layout target area consisting of a plurality of logic cells initially arranged on the semiconductor integrated circuit. It is characterized by setting a rectangular area including the maximum limit range as a parallel processing area, allocating a plurality of parallel processing areas to different processors, and repeating parallel arrangement.
【0015】[0015]
【作用】第1の発明は、論理セルが初期配置されている
レイアウト対象領域を、カットラインで複数の格子に分
割する。カットライン毎のカット数、格子毎のピン分散
値、あるいはセル同士の重なりの値などの評価値を各格
子ごとに算出する。同一の評価値の改良を要する複数の
格子からなる任意形状の矩形領域を並列処理領域として
設定する。各評価値に対する並列処理領域に応じた改良
手法を用い、全ての並列処理領域内での配置処理を並列
に行っている。According to the first aspect of the invention, the layout target area in which logic cells are initially arranged is divided into a plurality of grids by cut lines. An evaluation value such as the number of cuts for each cut line, a pin dispersion value for each grid, or a value for overlapping cells is calculated for each grid. A rectangular area of arbitrary shape made up of a plurality of grids that require improvement of the same evaluation value is set as a parallel processing area. By using the improved method according to the parallel processing area for each evaluation value, the placement processing in all the parallel processing areas is performed in parallel.
【0016】また、第2の発明は、レイアウト対象領域
内において、近傍に配置されるべきセル集合内のセルの
移動範囲が制約されている最大限界範囲を含む矩形領域
を並列処理領域として設定する。設定された複数の並列
処理領域をそれぞれ異なるプロセッサーに割当て、並列
配置処理を繰り返し行っている。According to a second aspect of the invention, in the layout target area, a rectangular area including a maximum limit range in which a moving range of cells in a cell set to be arranged in the vicinity is restricted is set as a parallel processing area. .. The plurality of parallel processing areas that have been set are assigned to different processors, and the parallel placement processing is repeated.
【0017】[0017]
【実施例】第1の発明 以下、図面を用いて、第1の発明の並列配置処理方法に
係わる一実施例について説明する。BEST MODE FOR CARRYING OUT THE INVENTION First Embodiment An embodiment of the parallel arrangement processing method of the first invention will be described below with reference to the drawings.
【0018】図1は、第1の発明の一実施例における処
理フローを示す図である。FIG. 1 is a diagram showing a processing flow in an embodiment of the first invention.
【0019】図2は、本実施例で用いるゲートアレイの
パターンを示す半導体チップの平面図である。本実施例
では、論理セルが初期配置されたレイアウト対象領域
1、およびその周囲に配置されたI/O領域2からなる
半導体チップ3について配置改良を行う場合を説明す
る。FIG. 2 is a plan view of a semiconductor chip showing the pattern of the gate array used in this embodiment. In the present embodiment, a case will be described in which the layout improvement is performed on the semiconductor chip 3 including the layout target area 1 in which the logic cells are initially arranged and the I / O area 2 arranged around the layout target area 1.
【0020】まず、図3で示すようにレイアウト対象領
域1全体に対して予め水平垂直両方向に仮想的なカット
ライン4を設定し、複数の格子5に分割する(S1)。
次に、レイアウト対象領域1全体について格子5毎にピ
ン分布、カット分布、セル同士の重なり等の評価値を算
出する(S2)。First, as shown in FIG. 3, virtual cut lines 4 are set in advance in both horizontal and vertical directions for the entire layout target area 1 and divided into a plurality of lattices 5 (S1).
Next, the evaluation values such as the pin distribution, the cut distribution, and the overlap between cells are calculated for each grid 5 in the entire layout target area 1 (S2).
【0021】ここでピン分布は格子内のピン(端子)数
の分散値、カット分布はカットライン毎のカット数、セ
ル同士の重なりは改良時においてセルの移動を行い易く
するために許容したセル同士の重なりの値である。Here, the pin distribution is a dispersion value of the number of pins (terminals) in the lattice, the cut distribution is the number of cuts for each cut line, and the overlap between cells is an allowable cell for facilitating the movement of cells during improvement. It is the value of the overlap between each other.
【0022】これらの評価値をもとに図4のようにレイ
アウト対象領域1のどの部分がどの評価項目について悪
いかという事を評価する。ここで、括弧内の数字はカッ
トライン毎のカット数、格子内数字は格子毎のピン数を
示す。Based on these evaluation values, it is evaluated which part of the layout target area 1 is bad for which evaluation item as shown in FIG. Here, the number in parentheses indicates the number of cuts for each cut line, and the number in the grid indicates the number of pins for each grid.
【0023】この評価によって、レイアウト対象領域1
を図5のように格子境界に沿った2つの並列処理領域
6,7に分割する(S3)。ここで、並列処理領域6
は、最大カット数(9)を示す水平カットラインを含む
任意形状の矩形領域であり、並列処理領域7は、ピン分
布の最大値(10)を示す格子を含む任意形状の矩形領
域である。Based on this evaluation, the layout target area 1
Is divided into two parallel processing regions 6 and 7 along the grid boundary as shown in FIG. 5 (S3). Here, the parallel processing area 6
Is a rectangular area of an arbitrary shape including a horizontal cut line indicating the maximum number of cuts (9), and the parallel processing area 7 is a rectangular area of an arbitrary shape including a grid indicating the maximum value (10) of the pin distribution.
【0024】なお、並列処理領域6,7は、この例に限
るものではなく、最大カット数を示す水平カットライ
ン、あるいはピン分布の最大値を示す格子を含む任意形
状の矩形領域であれば良いものである。但し、これらの
並列処理領域6,7は、交わってはいけないものであ
る。The parallel processing areas 6 and 7 are not limited to this example, and may be rectangular areas of any shape including a horizontal cut line indicating the maximum number of cuts or a grid indicating the maximum value of the pin distribution. It is a thing. However, these parallel processing areas 6 and 7 must not intersect.
【0025】次に、これらの並列処理領域6,7をそれ
ぞれ2台のプロセッサーに割当て、プロセッサー毎にそ
れぞれの領域に最適な配置手法を決定する(S4,
5)。ここで、並列処理領域6では最大カット数を減少
させるような配置改良処理を、並列処理領域7ではピン
分散値を均一化させるような配置改良処理を実行する事
を決定する。Next, the parallel processing areas 6 and 7 are respectively assigned to two processors, and the optimum arrangement method for each area is determined for each processor (S4).
5). Here, it is determined that the parallel processing area 6 executes the layout improving processing for reducing the maximum number of cuts, and the parallel processing area 7 executes the layout improving processing for equalizing the pin distribution values.
【0026】さらに、決定された配置手法を実行し、着
目している評価項目について収束するまで、もしくは決
められた数のセル移動が行われるまで各並列処理領域毎
に配置改良を進める(S6,7)。Further, the determined layout method is executed, and the layout is improved for each parallel processing area until the evaluation items of interest are converged or a predetermined number of cells are moved (S6). 7).
【0027】全ての並列処理領域6,7について以上の
ような処理が終了したら、レイアウト対象領域1全体に
ついて再び評価を行い、収束判定を行う。収束が認めら
れない場合には収束するまで、上記と同様に複数の並列
処理領域に分割し、それぞれプロセッサー毎に配置改良
処理の決定および実行を繰り返す(S2〜8)。When the above processing is completed for all the parallel processing areas 6 and 7, the entire layout target area 1 is evaluated again and the convergence judgment is performed. If the convergence is not recognized, it is divided into a plurality of parallel processing areas in the same manner as described above until the convergence, and the determination and execution of the placement improvement processing are repeated for each processor (S2 to 8).
【0028】以下に、第1の発明の他の実施例について
説明する。Another embodiment of the first invention will be described below.
【0029】上記実施例同様、図3で示すようにレイア
ウト対象領域1全体に対して予め水平垂直方向に仮想的
なカットライン4を設定し、複数の格子5に分割する
(S1)。次に、レイアウト対象領域1全体について格
子5毎にピン分布、カット分布、セル同士の重なり等の
評価値を算出する(S2)。Similar to the above embodiment, as shown in FIG. 3, a virtual cut line 4 is set in the horizontal and vertical directions in advance for the entire layout target area 1 and divided into a plurality of lattices 5 (S1). Next, the evaluation values such as the pin distribution, the cut distribution, and the overlap between cells are calculated for each grid 5 in the entire layout target area 1 (S2).
【0030】この実施例に於いては、レイアウト対象領
域1全面に渡り同一の評価値が悪い例を考える。例え
ば、図6(a)ではカット分布値が悪い例を、図6
(b)ではピン分散値が悪い例を示す。図6(a)の括
弧内の数字は各カットライン上のカット数、図6(b)
の格子内数字は格子毎のピン数を示す。In this embodiment, consider an example in which the same evaluation value is bad over the entire layout target area 1. For example, in FIG. 6A, an example in which the cut distribution value is bad is shown in FIG.
(B) shows an example in which the pin dispersion value is bad. The numbers in parentheses in Fig. 6 (a) are the number of cuts on each cut line, and Fig. 6 (b).
The numbers in the grid indicate the number of pins for each grid.
【0031】まず、評価値を改良するような配置改良処
理を決定する。図6(a)の例では配置改良処理として
カット分布均一化処理を選択する。この処理は、最大カ
ット数(9)を示す垂直カットライン上を横切る仮想配
線に接続するセルを当該カットラインの反対側に移動さ
せる事により、カット数を減少させる処理である。First, a layout improvement process for improving the evaluation value is determined. In the example of FIG. 6A, the cut distribution equalizing process is selected as the arrangement improving process. This process is a process of reducing the number of cuts by moving a cell connected to a virtual wiring crossing a vertical cut line showing the maximum number of cuts (9) to the opposite side of the cut line.
【0032】このときこの垂直カットライン上以外のカ
ット数は考慮しないため、セルを移動させる水平方向は
図7(a)のような3つの並列処理領域8の範囲が最適
となる。そこで、この処理の効果を上げる領域として同
図のような矩形領域を設定する(S3)。At this time, since the number of cuts other than those on the vertical cut line is not considered, the range of the three parallel processing areas 8 as shown in FIG. Therefore, a rectangular area as shown in the figure is set as an area in which the effect of this processing is enhanced (S3).
【0033】また、図6(b)の例では配置改良処理と
してピン分布均一化処理を選択する。この処理は、ピン
ボックス(予め設定されている、複数の格子からなる最
小範囲、例えば2×2個)を含む矩形領域を設定し、ピ
ン数の多い格子から少ない格子へセルを移動する処理で
ある。In the example of FIG. 6B, the pin distribution equalizing process is selected as the placement improving process. This process is a process of setting a rectangular area including a pin box (predetermined minimum range of a plurality of grids, for example, 2 × 2) and moving cells from a grid with a large number of pins to a grid with a small number of pins. is there.
【0034】このとき矩形領域外へのセル移動は無いた
め、セルを移動させる範囲は、図7(b)のような4つ
の並列処理領域9の範囲が最適となる。そこで、この処
理の効果を上げる領域として同図の様な矩形領域を設定
する(S3)。At this time, since the cell is not moved to the outside of the rectangular area, the optimum range of moving the cell is the range of the four parallel processing areas 9 as shown in FIG. 7B. Therefore, a rectangular area as shown in the figure is set as an area in which the effect of this processing is enhanced (S3).
【0035】次に、図7(a)あるいは(b)で設定し
た並列処理領域8,9をそれぞれ3台あるいは4台のプ
ロセッサーに割当て、それぞれ着目している評価項目に
ついて収束するまで、もしくは決められた数のセル移動
が行われるまで配置改良処理を実行する(S4〜7)。Next, the parallel processing areas 8 and 9 set in FIG. 7A or 7B are assigned to three or four processors, respectively, until the evaluation items of interest are converged or determined. The arrangement improving process is executed until the specified number of cell movements are performed (S4 to 7).
【0036】すべての領域について以上のような処理が
終了したら、レイアウト対象領域1全体について再び評
価を行い、収束判定を行う(S8)。収束が認められな
い場合には収束するまで、上記と同様に複数の並列処理
領域に分割し、それぞれプロセッサー毎に配置改良処理
を決定、実行する事を繰り返す(S2〜8)。When the above processing is completed for all areas, the entire layout target area 1 is evaluated again and a convergence judgment is made (S8). When the convergence is not recognized, the processing is divided into a plurality of parallel processing areas in the same manner as described above until the convergence, and the arrangement improvement processing is determined and executed for each processor repeatedly (S2 to 8).
【0037】実験によると、同一カット分布均一化処理
を適用する際に、従来の方法で改良処理を行った場合と
図7(a)のように改良処理を行った場合を比較する
と、総カット数で7%、最大カット数で13%ほどカッ
ト数が減少した。According to the experiment, when the same cut distribution equalizing process is applied, the case where the improvement process is performed by the conventional method and the case where the improvement process is performed as shown in FIG. The number of cuts decreased by 7% and the maximum number of cuts decreased by 13%.
【0038】第2の発明 本実施例においては、図2で示したゲートアレイのレイ
アウト対象領域1に初期配置が与えられている時におい
て、並列に配置改良処理を行い、セルの配置位置を決定
する場合について説明する。Second Invention In the present embodiment, when the layout target area 1 of the gate array shown in FIG. 2 is provided with an initial layout, layout improvement processing is performed in parallel to determine a cell layout position. A case will be described.
【0039】また、本実施例に於いては近傍に配置され
るべきセルの集合の制約条件として縦方向、横方向、及
び(縦+横)方向についての最大範囲が指定されている
場合について説明する。即ち、各集合に属するセルの形
成する最小矩形の横方向の長さが制約条件としての最大
範囲を越える事の無いように、同様に縦方向の長さが制
約条件としての最大範囲を越える事の無いように配置す
る必要がある。In the present embodiment, the case where the maximum range in the vertical direction, the horizontal direction, and the (vertical + horizontal) direction is designated as the constraint condition of the set of cells to be arranged in the vicinity will be described. To do. That is, in order that the length of the minimum rectangle formed by the cells belonging to each set in the horizontal direction does not exceed the maximum range as a constraint condition, the length in the vertical direction similarly exceeds the maximum range as a constraint condition. Need to be placed so that there is no.
【0040】なお、(横+縦)の長さが制約条件として
設定されている場合も同様である。また、このような
縦、横各方向についての最大範囲の指定は無く、レイア
ウト対象領域1上の絶対座標として集合に属するセルを
配置する範囲が設定される場合にも本実施例を適用す
る。The same applies when the (horizontal + vertical) length is set as a constraint condition. The present embodiment is also applied to the case where the maximum range in each of the vertical and horizontal directions is not specified and the range in which the cells belonging to the set are arranged as the absolute coordinates on the layout target area 1.
【0041】第1実施例 図8は、第2の発明の第1実施例における処理フローを
示す図である。First Embodiment FIG. 8 is a diagram showing a processing flow in the first embodiment of the second invention.
【0042】まず、図9(a)で示すように与えられた
配置状態より、近傍に配置されるべきセルの集合の形成
する矩形104〜107の重心108〜111を求め
る。求めた重心の座標を中心とし縦方向、横方向それぞ
れについて、各集合の縦方向、横方向の制約条件より最
大の限界位置112〜115を求める(S11,S1
2)。First, the centers of gravity 108 to 111 of the rectangles 104 to 107 formed by the set of cells to be arranged in the vicinity are determined from the given arrangement state as shown in FIG. 9A. The maximum limit positions 112 to 115 are determined in the vertical and horizontal directions centering on the obtained coordinates of the center of gravity, respectively, based on the constraint conditions in the vertical and horizontal directions of each set (S11, S1).
2).
【0043】次に、一般セル(近傍に配置されるべきセ
ル集合以外のセル)も処理対象とするために、当該限界
位置を最小限含む様な矩形116〜119を並列用配置
領域として互いに重ならないように設定し(S13)、
各プロセッサーに割り当てる。当該並列用領域が、プロ
セッサー数より少ない場合には上記で設定した領域に重
ならないような領域120〜122を新たに設定し、プ
ロセッサーに割り当てる。各プロセッサー毎に収束する
まで、当該領域に対し並列配置改良を行う(S14)。Next, in order to process general cells (cells other than the cell set to be arranged in the vicinity) as well, rectangles 116 to 119 which include the limit position at a minimum are overlapped as parallel arrangement areas. Set so that it does not become (S13),
Assign to each processor. When the parallel area is smaller than the number of processors, areas 120 to 122 that do not overlap the area set above are newly set and assigned to the processors. The parallel arrangement is improved for the area until convergence is achieved for each processor (S14).
【0044】さらに、一般セルの改良のため、従来の方
法と同様にレイアウト対象領域1を、図9(b)に示す
ように一定形状の矩形に分割し並列改良を行う(S1
5)。この時、図9(b)に示す様に近傍に配置される
べきセルの集合104〜107は複数の矩形領域123
〜128に分割されてしまう場合があるが、近傍に配置
されるべき指定のあるセルはこれらの矩形領域123〜
128を越えないように移動し、収束が得られるまで移
動を繰り返す。Further, in order to improve the general cell, the layout target area 1 is divided into rectangles of a constant shape as shown in FIG. 9B as in the conventional method, and parallel improvement is performed (S1).
5). At this time, as shown in FIG. 9B, a set of cells 104 to 107 to be arranged in the vicinity is a plurality of rectangular regions 123.
There is a case where the cells are divided into ~ 128, but cells having a designation to be arranged in the vicinity are the rectangular areas 123 ~.
The movement is performed so as not to exceed 128, and the movement is repeated until convergence is obtained.
【0045】最後に、チップ全体について収束判定を行
い、収束が認められるまで上記の処理を繰り返す(S1
6)。Finally, the convergence judgment is performed on the entire chip, and the above processing is repeated until the convergence is recognized (S1).
6).
【0046】ここで、上記第1実施例に関連して近傍に
配置されるべきセルの各集合の大きさの差の少ない例に
関して説明する。図10(a)に示すように、近傍に配
置されるべき集合の大きさに差が無いような配置が与え
られた場合、従来の並列処理の方法に従うと各集合12
9〜134の矩形を考慮して並列処理用の部分領域を設
定しても領域が一定形状の矩形135になってしまうた
め、全ての集合が一つの領域内に収まる事は難しい。Here, an example in which the size difference between the sets of cells to be arranged in the vicinity is small will be described with reference to the first embodiment. As shown in FIG. 10A, in the case where an arrangement such that there is no difference in the size of sets to be arranged in the vicinity is given, each set 12 can be processed according to the conventional parallel processing method.
Even if the partial regions for parallel processing are set in consideration of the rectangles 9 to 134, the region becomes the rectangle 135 having a constant shape, so that it is difficult for all the sets to fit in one region.
【0047】本発明に従うと、図8で示した処理フロー
に基づいて各集合の矩形のアスペクト比及び位置を考慮
するため、図10(b)に示すように任意形状の矩形1
36〜147を並列用領域として設定し、各集合をそれ
ぞれ一つのプロセッサーに割当てることができる。これ
により、各プロセッサーの処理する情報量に大差が無い
ように並列処理を行う事が可能となる。According to the present invention, in order to consider the aspect ratio and position of the rectangle of each set based on the processing flow shown in FIG. 8, the rectangle 1 having an arbitrary shape as shown in FIG.
It is possible to set 36 to 147 as parallel regions and allocate each set to one processor. As a result, it is possible to perform parallel processing so that there is no great difference in the amount of information processed by each processor.
【0048】第2実施例 以下に、第2の発明における第2の実施例を示す。Second Embodiment A second embodiment of the second invention will be described below.
【0049】まず、並列用領域として図11(a)のよ
うにレイアウト対象領域1に一定形状の矩形148を設
定する。この時同図に示すように、近傍に配置されるべ
きセルの集合が並列用領域の境界149〜151によっ
て複数の並列用領域に分割されてしまう場合は、集合の
範囲の制約条件を最大限に満たすような、最大限界範囲
の境界位置を算出する。First, as a parallel area, a rectangle 148 having a constant shape is set in the layout target area 1 as shown in FIG. At this time, as shown in the figure, when the set of cells to be arranged in the vicinity is divided into a plurality of parallel regions by the parallel region boundaries 149 to 151, the constraint condition of the set range is maximized. The boundary position of the maximum limit range that satisfies the above condition is calculated.
【0050】次に、図11(b)のように、当該領域の
境界149〜151を算出した境界位置152〜154
までずらして設定し、当該各領域を各プロセッサーに割
当て、並列配置処理を行う。Next, as shown in FIG. 11B, the boundary positions 152 to 154 where the boundaries 149 to 151 of the area are calculated.
The areas are shifted and set, the respective areas are assigned to the respective processors, and the parallel arrangement processing is performed.
【0051】そして、チップ全体について収束するま
で、上記の処理を繰り返す。Then, the above process is repeated until the entire chip is converged.
【0052】[0052]
【発明の効果】以上のように、第1の発明の並列配置処
理方法によれば、各評価項目の改良を要する複数の格子
からなる任意形状の矩形領域を並列処理領域として設定
し、各並列処理領域に応じた改良手法で並列処理してい
る。このため、並列効果が高く、論理セルの配置処理時
間を短縮することができる。As described above, according to the parallel layout processing method of the first invention, a rectangular area of an arbitrary shape consisting of a plurality of grids requiring improvement of each evaluation item is set as a parallel processing area, and each parallel processing area is set. Parallel processing is performed by an improved method according to the processing area. Therefore, the parallel effect is high, and the logic cell placement processing time can be shortened.
【0053】また、第2の発明の並列配置処理方法によ
れば、並列処理用領域をセルの集合が配置されている状
態、及びセルの集合の配置に対する制約条件をもとに決
定するため、セルの配置の自由度が上がり、改良効果の
高い並列用領域を設定する事ができる。Further, according to the parallel arrangement processing method of the second invention, the parallel processing area is determined based on the state in which the set of cells is arranged and the constraint condition for the arrangement of the set of cells. The degree of freedom in arranging cells is increased, and it is possible to set a parallel area having a high improvement effect.
【0054】[0054]
【0055】[0055]
【図1】第1の発明の並列配置処理方法に係わる一実施
例の処理手順を示すフローチャートである。FIG. 1 is a flowchart showing a processing procedure of an embodiment relating to a parallel arrangement processing method of the first invention.
【0056】[0056]
【図2】実施例で用いたゲートアレイのパターンを示す
半導体チップの平面図である。FIG. 2 is a plan view of a semiconductor chip showing a pattern of a gate array used in an example.
【0057】[0057]
【図3】格子を設定したレイアウト対象領域の平面図で
ある。FIG. 3 is a plan view of a layout target area in which a grid is set.
【0058】[0058]
【図4】各評価値が付されたレイアウト対象領域の平面
図である。FIG. 4 is a plan view of a layout target area to which each evaluation value is added.
【0059】[0059]
【図5】並列処理領域に分割されたレイアウト対象領域
の平面図である。FIG. 5 is a plan view of a layout target area divided into parallel processing areas.
【0060】[0060]
【図6】全体的に同一の評価値が悪いレイアウト対象領
域の平面図である。FIG. 6 is a plan view of a layout target area having the same overall poor evaluation value.
【0061】[0061]
【図7】並列処理領域に分割されたレイアウト対象領域
の平面図である。FIG. 7 is a plan view of a layout target area divided into parallel processing areas.
【0062】[0062]
【図8】第2の発明の第1実施例に係わる配置処理手順
を表わすフローチャートである。FIG. 8 is a flowchart showing an arrangement processing procedure according to the first embodiment of the second invention.
【0063】[0063]
【図9】第2の発明の第1実施例に於ける並列用領域を
示す図である。FIG. 9 is a diagram showing a parallel area in the first embodiment of the second invention.
【0064】[0064]
【図10】第1実施例に於けるセル集合の大きさに差が
ない場合の並列用領域を示す図である。FIG. 10 is a diagram showing a parallel area in the case where there is no difference in cell set size in the first embodiment.
【0065】[0065]
【図11】第2の発明の第2実施例に於ける並列用領域
を示す図である。FIG. 11 is a diagram showing a parallel region in a second embodiment of the second invention.
【0066】[0066]
1 レイアウト対象領域 2 I/O領域 3 半導体チップ 4 カットライン 5 格子 6〜9 並列処理領域 104〜107,129〜134 セル集合の形成する
矩形 108〜111 矩形の重心 112〜115 最大限界範囲 116〜119 集合の限界配置位置を含む矩形 120〜122 セル集合を含まない並列領域 123〜128 各並列領域の集合矩形 135、148 一定形状の矩形 136〜147 任意形状の並列用領域 149〜151 並列用領域の境界 152〜154 最大限界範囲の境界1 Layout Target Area 2 I / O Area 3 Semiconductor Chip 4 Cut Line 5 Lattice 6-9 Parallel Processing Area 104-107, 129-134 Rectangular Formed by Cell Set 108-111 Rectangular Center of Gravity 112-115 Maximum Limit Range 116- 119 Rectangle including limit arrangement position of set 120 to 122 Parallel region not including cell set 123 to 128 Set rectangle 135 of each parallel region 135, 148 Constant shape rectangle 136 to 147 Arbitrary shape parallel region 149 to 151 Parallel region Boundary 152-154 Boundary of maximum limit range
─────────────────────────────────────────────────────
─────────────────────────────────────────────────── ───
【手続補正書】[Procedure amendment]
【提出日】平成4年1月6日[Submission date] January 6, 1992
【手続補正1】[Procedure Amendment 1]
【補正対象書類名】明細書[Document name to be amended] Statement
【補正対象項目名】発明の詳細な説明[Name of item to be amended] Detailed explanation of the invention
【補正方法】変更[Correction method] Change
【補正内容】[Correction content]
【発明の詳細な説明】Detailed Description of the Invention
【0001】[0001]
【産業上の利用分野】本発明は、半導体集積回路のレイ
アウト設計における、論理セルの並列配置処理方法に関
する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel layout processing method of logic cells in a layout design of a semiconductor integrated circuit.
【0002】[0002]
【従来の技術】ULSI製造技術の進歩による集積度の
向上により、ULSIに搭載されるトランジスタの数は
毎年数倍の割合で増大してきており、数年内には、メガ
ゲートクラスLSIが実現可能となると予想される一
方、短期間に制作されることが強く要求されている。こ
のため、レイアウトCADは大量のデータを高速に処理
しなければならない。2. Description of the Related Art The number of transistors mounted on a ULSI is increasing at a rate of several times every year due to the improvement of the degree of integration due to the progress of ULSI manufacturing technology, and a megagate class LSI can be realized within a few years. Although it is expected that it will be, there is a strong demand for production in a short period of time. Therefore, the layout CAD must process a large amount of data at high speed.
【0003】これまで、自動配置において種々の方法が
提案されているが、ほとんどの場合単一のCPUを用い
てシーケンシャルに処理が行われてきたために計算速度
には限界がある。計算速度を上げるために、マルチCP
Uによって並列処理を行い、計算時間の短縮を図る配置
処理方法も提案されている。Up to now, various methods have been proposed for automatic placement, but in most cases, a single CPU is used to perform sequential processing, so that the calculation speed is limited. Multi-CP to increase the calculation speed
An arrangement processing method has also been proposed in which U performs parallel processing to reduce the calculation time.
【0004】従来の並列配置処理方法として、チップ上
を縦横のラインで複数の矩形領域に分割し、それぞれの
矩形領域を処理装置となるプロセッサーに割当て、プロ
セッサーごとに矩形領域内の論理セルの配置状態を改良
する方法がある(J.Rose,W.snelgrove,and Z.Vranesic,"
Parallel Simulated Annealing,"IEEEtrans.Computer A
ided Design,Vol.CAD-7,No.3,Mar.1988,pp.387-396.)
。As a conventional parallel arrangement processing method, a chip is divided into a plurality of rectangular areas by vertical and horizontal lines, each rectangular area is allocated to a processor which is a processing device, and a logical cell is arranged in each rectangular area for each processor. There are ways to improve the condition (J. Rose, W. snelgrove, and Z. Vranesic, "
Parallel Simulated Annealing, "IEEEtrans.Computer A
ided Design, Vol.CAD-7, No.3, Mar.1988, pp.387-396.)
..
【0005】しかしながらこの方法は、全ての矩形領域
で一つの評価項目のみを改良するように配置状態を変化
させるために、改良の必要の無い矩形領域についても配
置状態が変化してしまう。また、矩形領域内の配置状態
を考慮せずに同一形状の矩形領域を設定するため、改良
の必要の無い矩形領域に割当てられたプロセッサーが実
際に動作してない場合があり、並列の効果を下げてい
る。However, according to this method, the arrangement state is changed so that only one evaluation item is improved in all the rectangular areas, and therefore the arrangement state is changed also in the rectangular areas which need not be improved. In addition, since the rectangular area of the same shape is set without considering the arrangement state in the rectangular area, the processor allocated to the rectangular area that does not need to be improved may not actually operate, and the parallel effect can be achieved. I'm lowering it.
【0006】一方、セルの配置に於いては、接続情報や
タイミングなどを考慮すると、ある程度近傍に配置する
事が望ましいセルの集合があり、場合によっては配置の
条件として、近傍に配置するセルの集合が指定されてい
る事もある。On the other hand, in the placement of cells, there is a set of cells that should be placed near to some extent in consideration of connection information, timing, etc. A set may be specified.
【0007】しかしながら、従来提案されている並列配
置処理方法は、すべての並列用分割領域が一定形状の矩
形に設定されているため、近傍に配置する事が望ましい
セルの集合が、複数のプロセッサーに分割されて処理さ
れてしまう場合があった。However, in the conventional parallel arrangement processing method, since all the parallel divided areas are set in a rectangular shape having a constant shape, a set of cells, which should be arranged in the vicinity, is distributed to a plurality of processors. In some cases, it was divided and processed.
【0008】この場合、配置の条件を満たすように、当
該集合内のセルの配置を行う為には、各プロセッサー間
でお互いに当該集合に属するセルの位置を考慮しなけれ
ばならない。即ち、集合に属しているセルにより形成さ
れている現在の矩形の外には、集合に属するセルを移動
させない方法、あるいはセルを移動する際、他のプロセ
ッサーに属し、かつ当該セルに接続しているセルは同時
に動かさない方法等で、配置の条件を満たす必要があっ
た。そのため、セルの配置の自由度が下がり、配置の改
良効果も下がってしまう。In this case, in order to arrange the cells in the set so as to satisfy the arrangement condition, the positions of the cells belonging to the set must be considered among the processors. That is, outside the current rectangle formed by the cells that belong to the set, there is a method of not moving the cells that belong to the set, or when moving the cells that belong to another processor and are connected to the cell. It was necessary to satisfy the conditions for placement, such as by not moving the existing cells at the same time. As a result, the degree of freedom in cell placement is reduced, and the improvement effect of placement is also reduced.
【0009】[0009]
【発明が解決しようとする課題】上述のように、従来の
並列配置処理方法では、改良の必要の無い矩形領域につ
いても処理を行ってしまったり、プロセッサーの並列動
作の効果を下げているという問題があった。As described above, in the conventional parallel arrangement processing method, a rectangular area that does not need to be improved is processed and the effect of parallel operation of processors is reduced. was there.
【0010】また、すべての並列用分割領域で一定形状
の矩形を設定するため、近傍に配置する事が望ましいセ
ルの集合が複数のプロセッサーに分割されてしまい、配
置の条件を満たすように当該集合内のセルの配置を行う
為には、各プロセッサー間でお互いに当該集合に属する
セルの配置位置を考慮しなければならなかった。そのた
め、セルの配置の自由度が下がり、配置の改良効果も下
がってしまうという問題があった。Further, since a rectangular shape having a constant shape is set in all the parallel division areas, a set of cells which should be arranged in the vicinity is divided into a plurality of processors, and the set is set so that the arrangement condition is satisfied. In order to arrange the cells in the inside, the arrangement positions of the cells belonging to the set must be considered among the processors. Therefore, there is a problem in that the degree of freedom in arranging cells is reduced and the effect of improving the arrangement is also reduced.
【0011】上記のような問題を解決するために、第1
の発明は、いくつかの評価項目ごとに任意形状の矩形領
域を並列処理領域として設定し、各並列処理領域に応じ
た改良手法を用いることにより、高速でかつ効果的に論
理セルの並列配置処理を行うことを目的としている。In order to solve the above problems, the first
Of the present invention sets a rectangular area of an arbitrary shape for each of several evaluation items as a parallel processing area, and uses an improved method according to each parallel processing area, thereby enabling high-speed and effective parallel placement processing of logic cells. Is intended to do.
【0012】また、第2の発明は、並列に処理する際に
セルの配置条件を考慮した上、近傍に配置されるべきセ
ルの集合を一つのプロセッサーに割り当てられるよう
な、任意のアスペクト比(矩形の縦横比)の矩形領域を
任意の位置に設定することにより、セルの配置の自由度
を上げ、高速でかつ効果的に配置結果を得ることを目的
としている。The second aspect of the present invention takes into consideration the cell placement conditions when processing in parallel, and assigns a set of cells to be placed in the vicinity to one processor with an arbitrary aspect ratio ( By setting a rectangular area having a rectangular aspect ratio) at an arbitrary position, it is possible to increase the degree of freedom of cell arrangement and obtain an arrangement result at high speed and effectively.
【0013】[0013]
【課題を解決するための手段】上記課題を解決するた
め、第1の発明は、半導体集積回路上に初期配置された
複数の論理セルからなるレイアウト対象領域を複数の格
子に分割し、論理セルの配置状態を表すいくつかの評価
項目におけるそれぞれの評価値を各格子ごとに求め、同
一の評価項目における評価値の改良を要する複数の格子
からなる任意形状の矩形領域を並列処理領域として設定
し、各評価項目に対する並列処理領域に応じた改良手法
を用いて、各並列処理領域内での論理セルの配置改良
を、全ての並列処理領域について並列に処理することを
特徴としている。In order to solve the above-mentioned problems, a first invention is to divide a layout target area composed of a plurality of logic cells initially arranged on a semiconductor integrated circuit into a plurality of grids, The evaluation values of several evaluation items that represent the arrangement state of each of the grids are obtained for each grid, and a rectangular area of arbitrary shape consisting of multiple grids that requires improvement of the evaluation values of the same evaluation item is set as the parallel processing area. , It is characterized in that the improvement method of the logic cell in each parallel processing area is processed in parallel for all the parallel processing areas by using the improvement method according to the parallel processing area for each evaluation item.
【0014】また、第2の発明は、半導体集積回路上に
初期配置された複数の論理セルからなるレイアウト対象
領域内の、近傍に配置されるべきセル集合内のセルの移
動範囲が制約されている最大限界範囲を含む矩形領域を
並列処理領域として設定し、複数の並列処理領域をそれ
ぞれ異なるプロセッサーに割当て、並列配置を繰り返す
ことを特徴としている。According to the second aspect of the invention, the movement range of the cells in the cell set to be arranged in the vicinity is restricted in the layout target area consisting of a plurality of logic cells initially arranged on the semiconductor integrated circuit. It is characterized by setting a rectangular area including the maximum limit range as a parallel processing area, allocating a plurality of parallel processing areas to different processors, and repeating parallel arrangement.
【0015】[0015]
【作用】第1の発明は、論理セルが初期配置されている
レイアウト対象領域を、カットラインで複数の格子に分
割する。カットライン毎のカット数、格子毎のピン分散
値、あるいはセル同士の重なりの値などの評価値を各格
子ごとに算出する。同一の評価値の改良を要する複数の
格子からなる任意形状の矩形領域を並列処理領域として
設定する。各評価値に対する並列処理領域に応じた改良
手法を用い、全ての並列処理領域内での配置処理を並列
に行っている。According to the first aspect of the invention, the layout target area in which logic cells are initially arranged is divided into a plurality of grids by cut lines. An evaluation value such as the number of cuts for each cut line, a pin dispersion value for each grid, or a value for overlapping cells is calculated for each grid. A rectangular area of arbitrary shape made up of a plurality of grids that require improvement of the same evaluation value is set as a parallel processing area. By using the improved method according to the parallel processing area for each evaluation value, the placement processing in all the parallel processing areas is performed in parallel.
【0016】また、第2の発明は、レイアウト対象領域
内において、近傍に配置されるべきセル集合内のセルの
移動範囲が制約されている最大限界範囲を含む矩形領域
を並列処理領域として設定する。設定された複数の並列
処理領域をそれぞれ異なるプロセッサーに割当て、並列
配置処理を繰り返し行っている。According to a second aspect of the invention, in the layout target area, a rectangular area including a maximum limit range in which a moving range of cells in a cell set to be arranged in the vicinity is restricted is set as a parallel processing area. .. The plurality of parallel processing areas that have been set are assigned to different processors, and the parallel placement processing is repeated.
【0017】[0017]
【実施例】第1の発明以下、図面を用いて、第1の発明
の並列配置処理方法に係わる一実施例について説明す
る。BEST MODE FOR CARRYING OUT THE INVENTION First Embodiment An embodiment of the parallel arrangement processing method of the first invention will be described below with reference to the drawings.
【0018】図1は、第1の発明の一実施例における処
理フローを示す図である。FIG. 1 is a diagram showing a processing flow in an embodiment of the first invention.
【0019】図2は、本実施例で用いるゲートアレイの
パターンを示す半導体チップの平面図である。本実施例
では、論理セルが初期配置されたレイアウト対象領域
1、およびその周囲に配置されたI/O領域2からなる
半導体チップ3について配置改良を行う場合を説明す
る。FIG. 2 is a plan view of a semiconductor chip showing the pattern of the gate array used in this embodiment. In the present embodiment, a case will be described in which the layout improvement is performed on the semiconductor chip 3 including the layout target area 1 in which the logic cells are initially arranged and the I / O area 2 arranged around the layout target area 1.
【0020】まず、図3で示すようにレイアウト対象領
域1全体に対して予め水平垂直両方向に仮想的なカット
ライン4を設定し、複数の格子5に分割する(S1)。
次に、レイアウト対象領域1全体について格子5毎にピ
ン分布、カット分布、セル同士の重なり等の評価値を算
出する(S2)。First, as shown in FIG. 3, virtual cut lines 4 are set in advance in both horizontal and vertical directions for the entire layout target area 1 and divided into a plurality of lattices 5 (S1).
Next, the evaluation values such as the pin distribution, the cut distribution, and the overlap between cells are calculated for each grid 5 in the entire layout target area 1 (S2).
【0021】ここでピン分布は格子内のピン(端子)数
の分散値、カット分布はカットライン毎のカット数、セ
ル同士の重なりは改良時においてセルの移動を行い易く
するために許容したセル同士の重なりの値である。Here, the pin distribution is a dispersion value of the number of pins (terminals) in the lattice, the cut distribution is the number of cuts for each cut line, and the overlap between cells is an allowable cell for facilitating the movement of cells during improvement. It is the value of the overlap between each other.
【0022】これらの評価値をもとに図4のようにレイ
アウト対象領域1のどの部分がどの評価項目について悪
いかという事を評価する。ここで、括弧内の数字はカッ
トライン毎のカット数、格子内数字は格子毎のピン数を
示す。Based on these evaluation values, it is evaluated which part of the layout target area 1 is bad for which evaluation item as shown in FIG. Here, the number in parentheses indicates the number of cuts for each cut line, and the number in the grid indicates the number of pins for each grid.
【0023】この評価によって、レイアウト対象領域1
を図5のように格子境界に沿った2つの並列処理領域
6,7に分割する(S3)。ここで、並列処理領域6
は、最大カット数(9)を示す水平カットラインを含む
任意形状の矩形領域であり、並列処理領域7は、ピン分
布の最大値(10)を示す格子を含む任意形状の矩形領
域である。Based on this evaluation, the layout target area 1
Is divided into two parallel processing regions 6 and 7 along the grid boundary as shown in FIG. 5 (S3). Here, the parallel processing area 6
Is a rectangular area of an arbitrary shape including a horizontal cut line indicating the maximum number of cuts (9), and the parallel processing area 7 is a rectangular area of an arbitrary shape including a grid indicating the maximum value (10) of the pin distribution.
【0024】なお、並列処理領域6,7は、この例に限
るものではなく、最大カット数を示す水平カットライ
ン、あるいはピン分布の最大値を示す格子を含む任意形
状の矩形領域であれば良いものである。但し、これらの
並列処理領域6,7は、交わってはいけないものであ
る。The parallel processing areas 6 and 7 are not limited to this example, and may be rectangular areas of any shape including a horizontal cut line indicating the maximum number of cuts or a grid indicating the maximum value of the pin distribution. It is a thing. However, these parallel processing areas 6 and 7 must not intersect.
【0025】次に、これらの並列処理領域6,7をそれ
ぞれ2台のプロセッサーに割当て、プロセッサー毎にそ
れぞれの領域に最適な配置手法を決定する(S4,
5)。ここで、並列処理領域6では最大カット数を減少
させるような配置改良処理を、並列処理領域7ではピン
分散値を均一化させるような配置改良処理を実行する事
を決定する。Next, the parallel processing areas 6 and 7 are respectively assigned to two processors, and the optimum arrangement method for each area is determined for each processor (S4).
5). Here, it is determined that the parallel processing area 6 executes the layout improving processing for reducing the maximum number of cuts, and the parallel processing area 7 executes the layout improving processing for equalizing the pin distribution values.
【0026】さらに、決定された配置手法を実行し、着
目している評価項目について収束するまで、もしくは決
められた数のセル移動が行われるまで各並列処理領域毎
に配置改良を進める(S6,7)。Further, the determined layout method is executed, and the layout is improved for each parallel processing area until the evaluation items of interest are converged or a predetermined number of cells are moved (S6). 7).
【0027】全ての並列処理領域6,7について以上の
ような処理が終了したら、レイアウト対象領域1全体に
ついて再び評価を行い、収束判定を行う。収束が認めら
れない場合には収束するまで、上記と同様に複数の並列
処理領域に分割し、それぞれプロセッサー毎に配置改良
処理の決定および実行を繰り返す(S2〜8)。When the above processing is completed for all the parallel processing areas 6 and 7, the entire layout target area 1 is evaluated again and the convergence judgment is performed. If the convergence is not recognized, it is divided into a plurality of parallel processing areas in the same manner as described above until the convergence, and the determination and execution of the placement improvement processing are repeated for each processor (S2 to 8).
【0028】以下に、第1の発明の他の実施例について
説明する。Another embodiment of the first invention will be described below.
【0029】上記実施例同様、図3で示すようにレイア
ウト対象領域1全体に対して予め水平垂直方向に仮想的
なカットライン4を設定し、複数の格子5に分割する
(S1)。次に、レイアウト対象領域1全体について格
子5毎にピン分布、カット分布、セル同士の重なり等の
評価値を算出する(S2)。Similar to the above embodiment, as shown in FIG. 3, a virtual cut line 4 is set in the horizontal and vertical directions in advance for the entire layout target area 1 and divided into a plurality of lattices 5 (S1). Next, the evaluation values such as the pin distribution, the cut distribution, and the overlap between cells are calculated for each grid 5 in the entire layout target area 1 (S2).
【0030】この実施例に於いては、レイアウト対象領
域1全面に渡り同一の評価値が悪い例を考える。例え
ば、図6(a)ではカット分布値が悪い例を、図6
(b)ではピン分散値が悪い例を示す。図6(a)の括
弧内の数字は各カットライン上のカット数、図6(b)
の格子内数字は格子毎のピン数を示す。In this embodiment, consider an example in which the same evaluation value is bad over the entire layout target area 1. For example, in FIG. 6A, an example in which the cut distribution value is bad is shown in FIG.
(B) shows an example in which the pin dispersion value is bad. The numbers in parentheses in Fig. 6 (a) are the number of cuts on each cut line, and Fig. 6 (b).
The numbers in the grid indicate the number of pins for each grid.
【0031】まず、評価値を改良するような配置改良処
理を決定する。図6(a)の例では配置改良処理として
カット分布均一化処理を選択する。この処理は、最大カ
ット数(9)を示す垂直カットライン上を横切る仮想配
線に接続するセルを当該カットラインの反対側に移動さ
せる事により、カット数を減少させる処理である。First, a layout improvement process for improving the evaluation value is determined. In the example of FIG. 6A, the cut distribution equalizing process is selected as the arrangement improving process. This process is a process of reducing the number of cuts by moving a cell connected to a virtual wiring crossing a vertical cut line showing the maximum number of cuts (9) to the opposite side of the cut line.
【0032】このときこの垂直カットライン上以外のカ
ット数は考慮しないため、セルを移動させる水平方向は
図7(a)のような3つの並列処理領域8の範囲が最適
となる。そこで、この処理の効果を上げる領域として同
図のような矩形領域を設定する(S3)。At this time, since the number of cuts other than those on the vertical cut line is not considered, the range of the three parallel processing areas 8 as shown in FIG. Therefore, a rectangular area as shown in the figure is set as an area in which the effect of this processing is enhanced (S3).
【0033】また、図6(b)の例では配置改良処理と
してピン分布均一化処理を選択する。この処理は、ピン
ボックス(予め設定されている、複数の格子からなる最
小範囲、例えば2×2個)を含む矩形領域を設定し、ピ
ン数の多い格子から少ない格子へセルを移動する処理で
ある。In the example of FIG. 6B, the pin distribution equalizing process is selected as the placement improving process. This process is a process of setting a rectangular area including a pin box (predetermined minimum range of a plurality of grids, for example, 2 × 2) and moving cells from a grid with a large number of pins to a grid with a small number of pins. is there.
【0034】このとき矩形領域外へのセル移動は無いた
め、セルを移動させる範囲は、図7(b)のような4つ
の並列処理領域9の範囲が最適となる。そこで、この処
理の効果を上げる領域として同図の様な矩形領域を設定
する(S3)。At this time, since the cell is not moved to the outside of the rectangular area, the optimum range of moving the cell is the range of the four parallel processing areas 9 as shown in FIG. 7B. Therefore, a rectangular area as shown in the figure is set as an area in which the effect of this processing is enhanced (S3).
【0035】次に、図7(a)あるいは(b)で設定し
た並列処理領域8,9をそれぞれ3台あるいは4台のプ
ロセッサーに割当て、それぞれ着目している評価項目に
ついて収束するまで、もしくは決められた数のセル移動
が行われるまで配置改良処理を実行する(S4〜7)。Next, the parallel processing areas 8 and 9 set in FIG. 7A or 7B are assigned to three or four processors, respectively, until the evaluation items of interest are converged or determined. The arrangement improving process is executed until the specified number of cell movements are performed (S4 to 7).
【0036】すべての領域について以上のような処理が
終了したら、レイアウト対象領域1全体について再び評
価を行い、収束判定を行う(S8)。収束が認められな
い場合には収束するまで、上記と同様に複数の並列処理
領域に分割し、それぞれプロセッサー毎に配置改良処理
を決定、実行する事を繰り返す(S2〜8)。When the above processing is completed for all areas, the entire layout target area 1 is evaluated again and a convergence judgment is made (S8). When the convergence is not recognized, the processing is divided into a plurality of parallel processing areas in the same manner as described above until the convergence, and the arrangement improvement processing is determined and executed for each processor repeatedly (S2 to 8).
【0037】実験によると、同一カット分布均一化処理
を適用する際に、従来の方法で改良処理を行った場合と
図7(a)のように改良処理を行った場合を比較する
と、総カット数で7%、最大カット数で13%ほどカッ
ト数が減少した。According to the experiment, when the same cut distribution equalizing process is applied, the case where the improvement process is performed by the conventional method and the case where the improvement process is performed as shown in FIG. The number of cuts decreased by 7% and the maximum number of cuts decreased by 13%.
【0038】第2の発明 本実施例においては、図2で示したゲートアレイのレイ
アウト対象領域1に初期配置が与えられている時におい
て、並列に配置改良処理を行い、セルの配置位置を決定
する場合について説明する。Second Invention In the present embodiment, when the layout target area 1 of the gate array shown in FIG. 2 is provided with an initial layout, layout improvement processing is performed in parallel to determine a cell layout position. A case will be described.
【0039】また、本実施例に於いては近傍に配置され
るべきセルの集合の制約条件として縦方向、横方向、及
び(縦+横)方向についての最大範囲が指定されている
場合について説明する。即ち、各集合に属するセルの形
成する最小矩形の横方向の長さが制約条件としての最大
範囲を越える事の無いように、同様に縦方向の長さが制
約条件としての最大範囲を越える事の無いように配置す
る必要がある。In the present embodiment, the case where the maximum range in the vertical direction, the horizontal direction, and the (vertical + horizontal) direction is designated as the constraint condition of the set of cells to be arranged in the vicinity will be described. To do. That is, in order that the length of the minimum rectangle formed by the cells belonging to each set in the horizontal direction does not exceed the maximum range as a constraint condition, the length in the vertical direction similarly exceeds the maximum range as a constraint condition. Need to be placed so that there is no.
【0040】なお、(横+縦)の長さが制約条件として
設定されている場合も同様である。また、このような
縦、横各方向についての最大範囲の指定は無く、レイア
ウト対象領域1上の絶対座標として集合に属するセルを
配置する範囲が設定される場合にも本実施例を適用す
る。The same applies when the (horizontal + vertical) length is set as a constraint condition. The present embodiment is also applied to the case where the maximum range in each of the vertical and horizontal directions is not specified and the range in which the cells belonging to the set are arranged as the absolute coordinates on the layout target area 1.
【0041】第1実施例 図8は、第2の発明の第1実施例における処理フローを
示す図である。First Embodiment FIG. 8 is a diagram showing a processing flow in the first embodiment of the second invention.
【0042】まず、図9(a)で示すように与えられた
配置状態より、近傍に配置されるべきセルの集合の形成
する矩形104〜107の重心108〜111を求め
る。求めた重心の座標を中心とし縦方向、横方向それぞ
れについて、各集合の縦方向、横方向の制約条件より最
大の限界位置112〜115を求める(S11,S1
2)。First, the centers of gravity 108 to 111 of the rectangles 104 to 107 formed by the set of cells to be arranged in the vicinity are determined from the given arrangement state as shown in FIG. 9A. The maximum limit positions 112 to 115 are determined in the vertical and horizontal directions centering on the obtained coordinates of the center of gravity, respectively, based on the constraint conditions in the vertical and horizontal directions of each set (S11, S1).
2).
【0043】次に、一般セル(近傍に配置されるべきセ
ル集合以外のセル)も処理対象とするために、当該限界
位置を最小限含む様な矩形116〜119を並列用配置
領域として互いに重ならないように設定し(S13)、
各プロセッサーに割り当てる。当該並列用領域が、プロ
セッサー数より少ない場合には上記で設定した領域に重
ならないような領域120〜122を新たに設定し、プ
ロセッサーに割り当てる。各プロセッサー毎に収束する
まで、当該領域に対し並列配置改良を行う(S14)。Next, in order to process general cells (cells other than the cell set to be arranged in the vicinity) as well, rectangles 116 to 119 which include the limit position at a minimum are overlapped as parallel arrangement areas. Set so that it does not become (S13),
Assign to each processor. When the parallel area is smaller than the number of processors, areas 120 to 122 that do not overlap the area set above are newly set and assigned to the processors. The parallel arrangement is improved for the area until convergence is achieved for each processor (S14).
【0044】さらに、一般セルの改良のため、従来の方
法と同様にレイアウト対象領域1を、図9(b)に示す
ように一定形状の矩形に分割し並列改良を行う(S1
5)。この時、図9(b)に示す様に近傍に配置される
べきセルの集合104〜107は複数の矩形領域123
〜128に分割されてしまう場合があるが、近傍に配置
されるべき指定のあるセルはこれらの矩形領域123〜
128を越えないように移動し、収束が得られるまで移
動を繰り返す。Further, in order to improve the general cell, the layout target area 1 is divided into rectangles of a constant shape as shown in FIG. 9B as in the conventional method, and parallel improvement is performed (S1).
5). At this time, as shown in FIG. 9B, a set of cells 104 to 107 to be arranged in the vicinity is a plurality of rectangular regions 123.
There is a case where the cells are divided into ~ 128, but cells having a designation to be arranged in the vicinity are the rectangular areas 123 ~.
The movement is performed so as not to exceed 128, and the movement is repeated until convergence is obtained.
【0045】最後に、チップ全体について収束判定を行
い、収束が認められるまで上記の処理を繰り返す(S1
6)。Finally, the convergence judgment is performed on the entire chip, and the above processing is repeated until the convergence is recognized (S1).
6).
【0046】ここで、上記第1実施例に関連して近傍に
配置されるべきセルの各集合の大きさの差の少ない例に
関して説明する。図10(a)に示すように、近傍に配
置されるべき集合の大きさに差が無いような配置が与え
られた場合、従来の並列処理の方法に従うと各集合12
9〜134の矩形を考慮して並列処理用の部分領域を設
定しても領域が一定形状の矩形135になってしまうた
め、全ての集合が一つの領域内に収まる事は難しい。Here, an example in which the size difference between the sets of cells to be arranged in the vicinity is small will be described with reference to the first embodiment. As shown in FIG. 10A, in the case where an arrangement such that there is no difference in the size of sets to be arranged in the vicinity is given, each set 12 can be processed according to the conventional parallel processing method.
Even if the partial regions for parallel processing are set in consideration of the rectangles 9 to 134, the region becomes the rectangle 135 having a constant shape, so that it is difficult for all the sets to fit in one region.
【0047】本発明に従うと、図8で示した処理フロー
に基づいて各集合の矩形のアスペクト比及び位置を考慮
するため、図10(b)に示すように任意形状の矩形1
36〜147を並列用領域として設定し、各集合をそれ
ぞれ一つのプロセッサーに割当てることができる。これ
により、各プロセッサーの処理する情報量に大差が無い
ように並列処理を行う事が可能となる。According to the present invention, in order to consider the aspect ratio and position of the rectangle of each set based on the processing flow shown in FIG. 8, the rectangle 1 having an arbitrary shape as shown in FIG.
It is possible to set 36 to 147 as parallel regions and allocate each set to one processor. As a result, it is possible to perform parallel processing so that there is no great difference in the amount of information processed by each processor.
【0048】第2実施例 以下に、第2の発明における第2の実施例を示す。Second Embodiment A second embodiment of the second invention will be described below.
【0049】まず、並列用領域として図11(a)のよ
うにレイアウト対象領域1に一定形状の矩形148を設
定する。この時同図に示すように、近傍に配置されるべ
きセルの集合が並列用領域の境界149〜151によっ
て複数の並列用領域に分割されてしまう場合は、集合の
範囲の制約条件を最大限に満たすような、最大限界範囲
の境界位置を算出する。First, as a parallel area, a rectangle 148 having a constant shape is set in the layout target area 1 as shown in FIG. At this time, as shown in the figure, when the set of cells to be arranged in the vicinity is divided into a plurality of parallel regions by the parallel region boundaries 149 to 151, the constraint condition of the set range is maximized. The boundary position of the maximum limit range that satisfies the above condition is calculated.
【0050】次に、図11(b)のように、当該領域の
境界149〜151を算出した境界位置152〜154
までずらして設定し、当該各領域を各プロセッサーに割
当て、並列配置処理を行う。Next, as shown in FIG. 11B, the boundary positions 152 to 154 where the boundaries 149 to 151 of the area are calculated.
The areas are shifted and set, the respective areas are assigned to the respective processors, and the parallel arrangement processing is performed.
【0051】そして、チップ全体について収束するま
で、上記の処理を繰り返す。Then, the above process is repeated until the entire chip is converged.
【0052】[0052]
【発明の効果】以上のように、第1の発明の並列配置処
理方法によれば、各評価項目の改良を要する複数の格子
からなる任意形状の矩形領域を並列処理領域として設定
し、各並列処理領域に応じた改良手法で並列処理してい
る。このため、並列効果が高く、論理セルの配置処理時
間を短縮することができる。As described above, according to the parallel layout processing method of the first invention, a rectangular area of an arbitrary shape consisting of a plurality of grids requiring improvement of each evaluation item is set as a parallel processing area, and each parallel processing area is set. Parallel processing is performed by an improved method according to the processing area. Therefore, the parallel effect is high, and the logic cell placement processing time can be shortened.
【0053】また、第2の発明の並列配置処理方法によ
れば、並列処理用領域をセルの集合が配置されている状
態、及びセルの集合の配置に対する制約条件をもとに決
定するため、セルの配置の自由度が上がり、改良効果の
高い並列用領域を設定する事ができる。Further, according to the parallel arrangement processing method of the second invention, the parallel processing area is determined based on the state in which the set of cells is arranged and the constraint condition for the arrangement of the set of cells. The degree of freedom in arranging cells is increased, and it is possible to set a parallel area having a high improvement effect.
【手続補正2】[Procedure Amendment 2]
【補正対象書類名】明細書[Document name to be amended] Statement
【補正対象項目名】図面の簡単な説明[Name of item to be corrected] Brief explanation of the drawing
【補正方法】変更[Correction method] Change
【補正内容】[Correction content]
【図面の簡単な説明】[Brief description of drawings]
【図1】第1の発明の並列配置処理方法に係わる一実施
例の処理手順を示すフローチャートである。FIG. 1 is a flowchart showing a processing procedure of an embodiment relating to a parallel arrangement processing method of the first invention.
【図2】実施例で用いたゲートアレイのパターンを示す
半導体チップの平面図である。FIG. 2 is a plan view of a semiconductor chip showing a pattern of a gate array used in an example.
【図3】格子を設定したレイアウト対象領域の平面図で
ある。FIG. 3 is a plan view of a layout target area in which a grid is set.
【図4】各評価値が付されたレイアウト対象領域の平面
図である。FIG. 4 is a plan view of a layout target area to which each evaluation value is added.
【図5】並列処理領域に分割されたレイアウト対象領域
の平面図である。FIG. 5 is a plan view of a layout target area divided into parallel processing areas.
【図6】全体的に同一の評価値が悪いレイアウト対象領
域の平面図である。FIG. 6 is a plan view of a layout target area having the same overall poor evaluation value.
【図7】並列処理領域に分割されたレイアウト対象領域
の平面図である。FIG. 7 is a plan view of a layout target area divided into parallel processing areas.
【図8】第2の発明の第1実施例に係わる配置処理手順
を表わすフローチャートである。FIG. 8 is a flowchart showing an arrangement processing procedure according to the first embodiment of the second invention.
【図9】第2の発明の第1実施例に於ける並列用領域を
示す図である。FIG. 9 is a diagram showing a parallel area in the first embodiment of the second invention.
【図10】第1実施例に於けるセル集合の大きさに差が
ない場合の並列用領域を示す図である。FIG. 10 is a diagram showing a parallel area in the case where there is no difference in cell set size in the first embodiment.
【図11】第2の発明の第2実施例に於ける並列用領域
を示す図である。FIG. 11 is a diagram showing a parallel region in a second embodiment of the second invention.
【符号の説明】 1 レイアウト対象領域 2 I/O領域 3 半導体チップ 4 カットライン 5 格子 6〜9 並列処理領域 104〜107,129〜134 セル集合の形成する
矩形 108〜111 矩形の重心 112〜115 最大限界範囲 116〜119 集合の限界配置位置を含む矩形 120〜122 セル集合を含まない並列領域 123〜128 各並列領域の集合矩形 135、148 一定形状の矩形 136〜147 任意形状の並列用領域 149〜151 並列用領域の境界 152〜154 最大限界範囲の境界[Explanation of Codes] 1 Layout target area 2 I / O area 3 Semiconductor chip 4 Cut line 5 Lattice 6-9 Parallel processing area 104-107, 129-134 Rectangle formed by cell set 108-111 Rectangle centroid 112-115 Maximum limit range 116 to 119 Rectangle including limit arrangement position of set 120 to 122 Parallel region not including cell set 123 to 128 Set rectangle of each parallel region 135, 148 Constant shape rectangle 136 to 147 Arbitrary shape parallel region 149 〜 151 Boundary for parallel area 152 〜 154 Boundary for maximum limit range
Claims (2)
の論理セルからなるレイアウト対象領域を複数の格子に
分割し、論理セルの配置状態を表すいくつかの評価項目
におけるそれぞれの評価値を各格子ごとに求め、同一の
評価項目における評価値の改良を要する複数の格子から
なる任意形状の矩形領域を並列処理領域として設定し、
各評価項目に対する並列処理領域に応じた改良手法を用
いて、各並列処理領域内での論理セルの配置改良を、全
ての並列処理領域について並列に処理することを特徴と
する論理セルの並列配置処理方法。1. A layout target area composed of a plurality of logic cells initially arranged on a semiconductor integrated circuit is divided into a plurality of grids, and respective evaluation values of a plurality of evaluation items representing the arrangement state of the logic cells are divided into respective grids. Obtained for each grid, set a rectangular area of arbitrary shape consisting of multiple grids that require improvement of the evaluation value in the same evaluation item as the parallel processing area,
A parallel arrangement of logic cells characterized by processing the arrangement of logic cells in each parallel processing area in parallel for all parallel processing areas by using an improved method according to the parallel processing area for each evaluation item. Processing method.
の論理セルからなるレイアウト対象領域内の、近傍に配
置されるべきセル集合内のセルの移動範囲が制約されて
いる最大限界範囲を含む矩形領域を並列処理領域として
設定し、複数の並列処理領域をそれぞれ異なるプロセッ
サーに割当て、並列配置を繰り返すことを特徴とする論
理セルの並列配置処理方法。2. A maximum limit range in which a movement range of cells in a cell set to be arranged in the vicinity is constrained in a layout target area composed of a plurality of logic cells initially arranged on a semiconductor integrated circuit. A parallel arrangement processing method of logic cells, characterized in that a rectangular area is set as a parallel processing area, a plurality of parallel processing areas are allocated to different processors, and parallel arrangement is repeated.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3071491 | 1991-02-26 | ||
| JP3-30714 | 1991-02-26 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0536832A true JPH0536832A (en) | 1993-02-12 |
Family
ID=12311312
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3347412A Pending JPH0536832A (en) | 1991-02-26 | 1991-12-27 | Parallel placement method of logic cells |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0536832A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022126827A (en) * | 2017-06-18 | 2022-08-30 | コベンター・インコーポレーテッド | Systems and methods for performing process model calibration in a virtual semiconductor device fabrication environment |
| US12423486B2 (en) | 2019-05-10 | 2025-09-23 | Coventor, Inc. | System and method for process window optimization in a virtual semiconductor device fabrication environment |
-
1991
- 1991-12-27 JP JP3347412A patent/JPH0536832A/en active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022126827A (en) * | 2017-06-18 | 2022-08-30 | コベンター・インコーポレーテッド | Systems and methods for performing process model calibration in a virtual semiconductor device fabrication environment |
| US11861289B2 (en) | 2017-06-18 | 2024-01-02 | Coventor, Inc. | System and method for performing process model calibration in a virtual semiconductor device fabrication environment |
| US12475297B2 (en) | 2017-06-18 | 2025-11-18 | Coventor, Inc. | System and method for performing process model calibration in a virtual semiconductor device fabrication environment |
| US12423486B2 (en) | 2019-05-10 | 2025-09-23 | Coventor, Inc. | System and method for process window optimization in a virtual semiconductor device fabrication environment |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4910680A (en) | Wiring method for semiconductor integrated circuit | |
| US5636129A (en) | Electrical routing through fixed sized module and variable sized channel grids | |
| JP4880151B2 (en) | Method and apparatus for forming interconnect lines in an integrated circuit | |
| US4823276A (en) | Computer-aided automatic wiring method for semiconductor integrated circuit device | |
| US5801959A (en) | Integrated circuit layout | |
| US6590289B2 (en) | Hexadecagonal routing | |
| US5946477A (en) | Positioning/wiring method for flip-chip semiconductor device | |
| JP2001313339A (en) | Design method of flip-chip type semiconductor device | |
| US5768146A (en) | Method of cell contouring to increase device density | |
| US6038385A (en) | Physical design automation system and process for designing integrated circuit chip using "chessboard" and "jiggle" optimization | |
| US5796625A (en) | Physical design automation system and process for designing integrated circuit chip using simulated annealing with "chessboard and jiggle" optimization | |
| US6615399B2 (en) | Semiconductor device having dummy pattern | |
| JP2001306641A (en) | Automatic arranging and wiring method for semiconductor integrated circuit | |
| JPH0536832A (en) | Parallel placement method of logic cells | |
| JPS59145541A (en) | Lsi layout processing method | |
| CN111027274B (en) | Three-dimensional chip layout method | |
| US5798541A (en) | Standard semiconductor cell with contoured cell boundary to increase device density | |
| JP2001244342A (en) | Layout method of integrated circuit, integrated circuit and macro cell | |
| US20010045572A1 (en) | Semiconductor interated circuit and method of manufacturing the same | |
| EP0414412A2 (en) | Semiconductor integrated circuit device having wiring layers | |
| JP3068892B2 (en) | Automatic wiring method | |
| US12107076B2 (en) | Through-silicon via layout for multi-die integrated circuits | |
| JPS59175747A (en) | Semiconductor integrated circuit | |
| JPH03196661A (en) | Semiconductor integrated circuit device and method for forming the same | |
| JPH06216249A (en) | IC chip automatic layout design system |