JP3422839B2 - Logic cell division processing method for semiconductor integrated circuit - Google Patents

Logic cell division processing method for semiconductor integrated circuit

Info

Publication number
JP3422839B2
JP3422839B2 JP05428994A JP5428994A JP3422839B2 JP 3422839 B2 JP3422839 B2 JP 3422839B2 JP 05428994 A JP05428994 A JP 05428994A JP 5428994 A JP5428994 A JP 5428994A JP 3422839 B2 JP3422839 B2 JP 3422839B2
Authority
JP
Japan
Prior art keywords
cell
divided
area
computer
cells
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP05428994A
Other languages
Japanese (ja)
Other versions
JPH07262264A (en
Inventor
俊晃 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP05428994A priority Critical patent/JP3422839B2/en
Publication of JPH07262264A publication Critical patent/JPH07262264A/en
Application granted granted Critical
Publication of JP3422839B2 publication Critical patent/JP3422839B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明は、ゲートアレイ方式或い
はスタンダードセル方式で設計される半導体集積回路の
レイアウト設計に於いて、セル或いはブロックを計算機
を用いて自動的に配置する半導体集積回路の論理セル分
割処理方法に関する。 【0002】 【従来の技術】半導体集積回路装置は、所望の回路動作
が得られる様に論理機能や記憶機能を有するセル或いは
ブロックをチップ内に配置し、その入出力端子間をそれ
ぞれ配線して構成されている。 【0003】図5は、一般的なゲートアレイ方式による
半導体集積回路チップの概略構成を示したものである。
チップ上は、セルが配置される領域51、セル間の配線
が施される領域52、および周辺に設けられた入出力回
路の配置される領域53により構成される。配線には複
数の配線層が利用でき、水平・垂直方向の配線にそれぞ
れ別の層が割り当てられるのが一般的である。 【0004】この様な半導体集積回路のレイアウト設計
では、計算機を用いて自動的にセルの配置や端子間の配
線を最適化するのが通常の設計手法であり、計算機を用
いた配置処理を施す事によってセル配置を決定する際に
は、後の配線処理が容易とになる様にセルの配置位置を
決定する必要がある。例えば仮想配線長の最小化や配線
混雑度の均一化といった事を目的として適当な評価関数
を設定し、セルの配置位置を最適化する。また、計算機
による配置処理では、通常、配置の初期状態を決定する
初期配置フェーズと、その後の逐次配置改善フェーズに
より、最終的なセルの配置位置を決定していく事にな
る。 【0005】この初期配置フェーズに於いては、チップ
上に配置すべき論理セルの集合を分割し、チップ領域に
割り付けるという処理が必要となってくる。この様な工
程では様々な配置最適化手法が利用されているのが現状
であるが、その中で比較的に良い性能が得られるものと
して2分割処理をトップダウンに進めて論理セルの分割
を決定するという方法がある。これは、チップ上にカッ
トラインを設定し、カットラインを通過するネット数が
最小となるように配置すべき論理セルの集合を分割して
割り付け、最終的なセルの配置位置を決定するというミ
ニカット配置による論理セルの代表的な配置手法であ
り、一般的に良い性能が得られるとされている。また、
この様な2分割処理をトップダウンに進めて論理セルの
分割を決定していくミニカット配置方法ではTermi
nal Propagation(IEEE Tran
sactions on Computer−Aide
dDesign,Vol.CAD−4,No.1,Ja
nuary 1985,“A Procedure f
or Placement of Standard−
Cell VLSI Circuits”)と呼ばれる
端子の伝搬を最下位の分割レベルまで引き継がせて最終
的な分割性能の向上を図っていた。 【0006】ところが、図4の分割例でも判るように現
実的には各セルの大きさや分割に於けるセル数のばらつ
き、チップ母体上のセル配置可能領域となりうるリソー
ス面での不均衡の発生など考慮すべき課題も多い。そし
て最も重大な問題は、この様な端子の伝搬を持たせて
も、分割後の論理セルの集合を更に再帰的に分割してい
く際に、それぞれの分割が独立に取り扱われる限り相互
に干渉する論理セルの集合を最適に分割する事は難しか
った。つまりは、初期解に依存した局所的に最適な状態
に陥ってしまいそれ以降の改善が期待できないという問
題があった。以下でこの問題を図2、図3を使ってより
具体的に説明する。図2は既に4つの分割領域内に分割
されて割り付けられたセル集合を、点線で示したチップ
上に設定されるカットラインを基にして更に2分割し、
8つの分割領域にセルを分割して割り付けた状態を示し
ており、この図に於ける丸印はセル、そしてそれらを結
ぶ実線はセル間の接続関係を示しているものとする。こ
の例では、大局的にみると図3の様な最適な分割結果を
得る事が実際には可能であり、点線で示したカットライ
ンを通過するネットの数を4本に最小化できるはずであ
る。ところが、この様な分割処理に於いて、例えば最上
段の2分割処理を先に行い、端子の伝搬を行いながら次
々と下の段の2分割処理を繰り返していくと、最下段
(四段目)の2分割が終わった後の最終結果としては図
2の様な局所的に最適な配置状態に陥ってしまう。即
ち、既に分割済みの領域の隣接情報を継承したとしても
相互に干渉する各論理セル集合の分割を最適化する事は
難しく、制約の伝搬をさせたとしても例えば図2の様な
配置結果に収束してしまって図3の様な最適な配置状態
は得られなかった。 【0007】 【発明が解決しようとする課題】以上述べてきた様に、
自動配置に於いて既に提案されている従来の分割手法、
即ち、論理セルの2分割をトップダウン繰り返して配置
の最適化を図るミニカット配置方法の様な最適化手法で
は、分割を進めるにしたがって分割対象となるセル数が
等比数列的に半減し、後の分割になればなるほど処理時
間が一般的には減少していくというメリットはあるが、
下位のレベルの分割には上位のレベルの分割による制約
を継承しなければ著しく性能が悪化し、また継承したと
してもチップ全面での大局的な最適化は図れないという
問題点があった。本発明はこの様な問題点を解決するた
めに考案したものであり、相互に干渉する各論理セルの
集合の分割処理をお互いにうまく調整して大局的な最適
化を図る方法を提供する事を目的としている。 【0008】 【課題を解決するための手段】本発明は、半導体集積回
路のレイアウト設計に於いてセルの配置位置を計算機を
用いて自動的に決定する際に、LSIチップ上に配置す
べき論理セルの集合をチップ内の複数の領域に分割して
割り付けるにあたって、計算機が、LSIチップ上をカ
ットラインで2つの分割領域に分割する工程と、計算機
が、前記2つの分割領域をカットラインによる分割方向
と垂直な方向で複数の分割保持領域に分割し、これらの
分割保持領域間の分割状態及び仮の配置状態を保持する
工程と、計算機が、前記分割状態を保持したまま、前記
分割保持領域のそれぞれに対して、セルの移動によって
前記分割領域間を通過するネット数が最も減少するセル
を移動する2分割処理を行い、前記セルの移動により前
記配置状態を更新する工程と、計算機が、この更新され
た配置状態に基づき、前記2分割処理を繰り返す工程と
を具備し、前記2分割処理は、計算機が、チップ上の対
象領域内のセル配置可能面積を計算する工程と、計算機
が、割り当てられたセルの面積の総和を計算する工程
と、前記セル配置可能面積と前記セルの面積の総和によ
って、計算機が対象領域内のセル充填率を計算する工程
と、計算機が、セル充填率の高い側の対象領域を選択す
る工程と、計算機が、選択された領域内のセルから前記
分割領域間を通過するネット数が当該セルの移動によっ
て最も減少するセルを移動する工程とを有し、前記計算
機が、セル充填率の高い側の対象領域を選択する工程
は、計算機が、分割保持領域の中から2分割処理の相対
する分割保持領域内のセル充填率よりも当該分割保持領
域内のセル充填率が高い領域を選択することを特徴とし
ている。 【0009】 【作用】半導体基板上に複数のセルを計算機を用いて自
動的に配置する方法に於いて、本発明の規定する手段を
設ける事により、相互に干渉する各論理セルの集合の分
割処理をお互いにうまく調整して大局的な最適化を図る
事が可能となる。 【0010】 【実施例】以下、本発明の実施例について説明する。図
1は本発明の概略処理手順を示すフローチャートであ
り、これを実現するための詳細な処理手順は実施例の最
後に詳細処理手順step0〜step14の形で記述
してある。以下では本発明の一実施例を前出の図2、図
3及び詳細処理手順step0〜step14を利用し
ながら、図1のフローチャートの流れに沿って説明して
いく。 【0011】(START)後、まずLSIのチップ領
域をカットラインによって2分割し、カットラインの左
側の領域と右側の領域を構成する。これを以下分割領域
と呼ぶ。そして、更にこれら二つの分割領域をカットラ
インを挟んで相対する分割保持領域に分解し、それぞれ
の分割保持領域内のセルを仮決定し、これを初期の配置
状態として登録する。この様な初期配置状態は、例えば
ランダムなセル配置を採用しても良い。例えば、図2の
例では、点線で示されたカットラインで2分割された分
割領域が、水平方向に4分割されて4つの分割保持領域
に分解されているところを示している。そして、着目し
たカットラインを基にして2分割改善処理をする際に
は、この分割保持領域間の分割状態は保存される事にな
る。 【0012】次に、出来上がったこの初期分割をもとに
してカットラインの両側の分割保持領域それぞれについ
てセルが配置可能な領域のリソースRn を計算し(st
ep0)、登録されている配置状態からの改良度Gを0
に初期化(step1)する。改良度とは例えばカット
ラインを通過するネットの数である。 【0013】次に、カットラインの両側の分割保持領域
それぞれについて割り当てられているセルの面積の総和
n を計算する(step2)。次に、step0,s
tep2で計算されたセルが配置可能な領域のリソース
n と割り付けられたセルの面積の総和Sn からカット
ラインの両側の分割保持領域それぞれのセル充填率Fn
を下記の計算式により計算する(step3)。 【0014】 【数1】Fn =Sn /Rn 次にこのセル充填率Fn を集計してカットラインの両側
の分割領域として比較し、分割領域のセル充填率の高い
側Hを求める(step4)。以上の手順によりカット
ラインのどちら側のセルが分割改善を行う際の移動対象
候補となるかが決定される(S1)。ここで例えば、図
2の例ではカットラインの左側の領域が選ばれる事にな
る。 【0015】次にカットラインを挟んで相対する分割保
持領域間のセル充填率をそれぞれ比較し、高い方の分割
保持領域Am を求め(step5)、この中からste
p4で求めた分割領域の充填率の高い側Hに存在するも
のを抽出して分割改善領域候補Ck とする(step
6)。これにより、カットラインのどちら側のどの分割
保持領域が分割改善を行う際の対象候補となるかが決定
される(S2)。ここで例えば、図2の例ではカットラ
インの左側の領域の上から1段目(図中Y1)と上から
2段目(図中Y2)の分割保持領域が対象候補となる。 【0016】次に、step6で抽出された分割改善領
域候補Ck に割り付けられたセルの中から分割対象とな
る領域間を通過するネット数が当該セルの移動によって
最も減少するセルMを選択する(step7)。この様
なセルを選択する事により、カットラインのどちら側の
どの分割保持領域が分割改善を行う際の対象領域となる
かが決定され、当該セルが移動した場合のカット数の減
少度合い(ゲインG)も決定する(S3、S4)。ここ
で例えば、図2の例ではカットラインの左側の領域の上
から2段目の分割保持領域(図中Y2)が分割改善の際
の対象領域として確定する。 【0017】次にstep7で選択されたセルMの移動
を仮定し、このセルにネットで接続している分割改善領
域候補Ck 内のセルの中から分割対象となる領域間を通
過するネット数が当該セルの移動によって最も減少する
セルを選択し、このセルの移動を仮定するといった一連
の手順を再帰的に繰り返して移動が仮定されたセルの集
団Nを求める(step8)。これは、セルの単独の移
動では分割改善効果が薄い場合にセルをグループとして
纏めて動かし、改善効果を強化するための手段である。 【0018】次にstep7で選択されたセルM或いは
step8で求められたセルの集団Nをカットラインを
挟んで相対する分割保持領域へ移動して仮の配置状態を
作成し、カット数の減少値を累積Gする(step
9)。ここで例えば、図2の例ではカットラインの左側
の領域の上から2段目の分割保持領域内(図中Y2)の
セル2がカットラインの右側の領域の上から2段目の分
割保持領域内(図中Y6)へ移動される事になる。 【0019】次に分割改善過程に於ける改良度を表して
いる配置状態のカット数減少累積値Gが現在までの改良
過程でのGの値の最大値以上であれば登録されている配
置状態を更新する(step10)。これによって、対
象となった分割保持領域内の配置状態が改善されて更新
される(S)。ここで、例えば、図2の例ではste
p9で行われたセル2の移動が確定されて新しい配置状
態として登録される。従って、本発明によれば、図2の
上から2段目の相対する分割保持領域内(図中Y2−Y
6の領域内)のセル分割状態は図3の上から2段目の相
対する分割保持領域内のセル配置結果へと改善される事
になる。 【0020】次に、以上の様な処理手順step2−s
tep10を全てのセルが移動済みか予め設定した累積
値Gの下限を下回るまでを繰り返す(step11)。
これによって、例えば、図2の例では上から1段目の分
割保持領域内(図中Y1)のセル1、及び上から3段目
(図中Y7)と4段目(図中Y8)のセル3とセル4
も、それぞれカットラインの反対側の相対する分割保持
領域内へ移動されて、最終的には図3の様なセル配置結
果へと改善される。即ち、本発明によれば、図2の様な
配置状態からでも既に分割された水平方向の既分割情報
を保持しながら、垂直方向の4つの分割を相互に干渉・
反映させながら同時に最適化する事ができる。これによ
って、最終的には図3の様な理想的な分割結果が得られ
る事になる。 【0021】最後に本分割処理の収束判定を行う(S
6)。まず、分割改善過程に於ける改良度を表している
配置状態のカット数減少累積値Gの最大値が正であれば
step1へ戻って上記の処理手順を繰り返し、分割改
善を更に進める(step12)。また、累積値Gの最
大値が0で移動セルがあり、分割改善領域候補Ck 内の
全てのセルの中にゲイン正のセルがあった場合もste
p1へ戻って上記の処理手順を繰り返して分割改善を更
に進める(step13)。尚、step12の収束判
定は例えばB.W.KERNIGHAN and S.
LINの“AnEfficient Heuristi
c Procedure for Partition
ing Graphs”,THE BELL SYST
EM TECHNICAL JOURNAL,FEBR
UARY 1970.に提案されている様な方法を採用
しても良い。 【0022】これらの収束判定により分割改善の収束が
確認されたら、分割改善処理を終了する(step1
4)(END)。以上の様にして、本実施例では既分割
の情報を保持しながら、更にそれらの論理セルの集合を
細分割する際に、それぞれの分割改善状況を既分割の領
域間で相互に反映させながら最適化を同時に進める事が
でき、レイアウト設計の品質向上が実現できる。尚、本
発明は上記した一実施例に限られるものではなく、その
趣旨を逸脱しない範囲で種々変形して実施することがで
きる。 【0023】 【発明の効果】以上述べた様に本発明によれば、半導体
集積回路のレイアウト設計に於いて論理セルの2分割処
理を行ってセルの配置位置を計算機を用いて自動的に決
定する際に、既に分割された複数の領域間の分割状況を
保持したまま、分割された各領域内のセル集合の細分割
処理を分割済みの領域間で相互に干渉させながら同時に
最適化する事が可能となり、各領域内の2分割処理の最
適化進行状況が相互に反映されて大局的に最適な論理セ
ルの分割が行われ、半導体集積回路の集積度向上が実現
できる。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a layout design of a semiconductor integrated circuit designed by a gate array system or a standard cell system, in which cells or blocks are formed by using a computer. The present invention relates to a method for dividing a logic cell of a semiconductor integrated circuit to be automatically arranged. 2. Description of the Related Art In a semiconductor integrated circuit device, cells or blocks having a logical function or a memory function are arranged in a chip so that a desired circuit operation can be obtained, and wiring between input and output terminals is performed. It is configured. FIG. 5 shows a schematic configuration of a semiconductor integrated circuit chip using a general gate array system.
On the chip, an area 51 where cells are arranged, an area 52 where wiring between cells is provided, and an area 53 where peripheral input / output circuits are arranged are arranged. In general, a plurality of wiring layers can be used for wiring, and different layers are generally assigned to horizontal and vertical wirings. In such a layout design of a semiconductor integrated circuit, the usual design technique is to automatically optimize the arrangement of cells and the wiring between terminals by using a computer, and perform an arrangement process using a computer. When the cell arrangement is determined by the fact, it is necessary to determine the cell arrangement position so that the subsequent wiring processing becomes easy. For example, an appropriate evaluation function is set for the purpose of minimizing the virtual wiring length and equalizing the degree of wiring congestion, and optimizing the cell arrangement position. In a placement process by a computer, a final placement position of a cell is usually determined by an initial placement phase for determining an initial state of placement and a subsequent sequential placement improvement phase. [0005] In the initial placement phase, a process of dividing a set of logic cells to be placed on a chip and allocating the set to a chip area is required. At present, various layout optimization methods are used in such a process. Among them, assuming that relatively good performance can be obtained, the division into two parts is advanced from the top down to divide the logic cells. There is a way to decide. This involves setting a cut line on the chip, dividing and assigning a set of logic cells to be placed so that the number of nets passing through the cut line is minimized, and determining the final cell placement position. This is a typical arrangement method of the logic cells by the cut arrangement, and it is generally said that good performance is obtained. Also,
In the mini-cut placement method for determining the division of a logic cell by proceeding such a two-partitioning process from the top down, Termi
nal Propagation (IEEE Tran
Sactions on Computer-Aide
dDesign, Vol. CAD-4, No. 1, Ja
Nuary 1985, "A Procedure f
or Placement of Standard-
Cell VLSI Circuits ”) is propagated to the terminal to the lowest division level to improve the final division performance. However, as can be seen from the division example in FIG. There are many issues to consider, such as variations in the size of each cell and the number of cells in the division, and the occurrence of imbalance in resources that can be a cell allocable area on a chip matrix. Even if terminal propagation is provided, when a set of divided logic cells is further recursively divided, a set of mutually interfering logic cells is optimally divided as long as each division is handled independently. That is, there was a problem that the state was locally optimized depending on the initial solution and no further improvement could be expected. Use will be described more specifically. FIG. 2 is already set of cells allocated is divided into four divided regions, and further divided into two based on the cutting line that is set on the chip shown in dashed lines,
The figure shows a state in which cells are divided and allocated to eight divided areas. In this figure, circles indicate cells, and solid lines connecting them indicate connection relationships between cells. In this example, it is actually possible to obtain an optimal division result as shown in FIG. 3 from a global perspective, and the number of nets passing through the cut line indicated by the dotted line should be minimized to four. is there. However, in such a division process, for example, the uppermost two-division process is performed first, and the lower-stage two-division process is repeated one after another while propagating the terminal. As a final result after the two divisions of (2) have been completed, a locally optimum arrangement state as shown in FIG. 2 is obtained. That is, it is difficult to optimize the division of each set of logical cells that interfere with each other even if the adjacent information of the already divided areas is inherited, and even if the constraints are propagated, the arrangement result as shown in FIG. After convergence, the optimal arrangement state as shown in FIG. 3 could not be obtained. [0007] As described above,
Conventional division method already proposed for automatic placement,
In other words, in an optimization method such as a mini-cut placement method in which the layout is optimized by repeating top-down of two divisions of a logical cell, as the division proceeds, the number of cells to be divided halves in a geometric progression, There is an advantage that the processing time generally decreases as the number of later divisions increases,
If the lower level division does not inherit the restrictions imposed by the upper level division, the performance deteriorates remarkably, and even if inherited, there is a problem that global optimization over the entire chip cannot be achieved. The present invention has been devised in order to solve such a problem, and provides a method of globally optimizing by mutually adjusting a division process of a set of logical cells that interfere with each other. It is an object. According to the present invention, there is provided a logic circuit to be arranged on an LSI chip when automatically arranging cells using a computer in a layout design of a semiconductor integrated circuit. In dividing and assigning a set of cells to a plurality of regions in a chip, a computer divides the LSI chip into two divided regions by a cut line, and the computer divides the two divided regions by a cut line. Dividing into a plurality of divided holding areas in a direction perpendicular to the direction, and holding a divided state and a provisional arrangement state between these divided holding areas, and a computer, while holding the divided state, the divided holding area Is performed for each of the cells, the cell is divided into two cells by moving the cell in which the number of nets passing between the divided areas is the smallest. Updating the placement state, and the computer repeating the two-partitioning process based on the updated placement state, wherein the two-partitioning process is performed by the computer by arranging cells in a target area on a chip. Calculating the possible area, the computer calculating the sum of the areas of the allocated cells, and calculating the cell filling rate in the target area by the computer based on the sum of the cell allocable area and the area of the cells. And the computer selects the target region on the side with the higher cell filling factor. The computer determines that the number of nets passing between the divided regions from the cells in the selected region is reduced most by the movement of the cell. Moving the cell to be performed, and wherein the computer selects the target area on the side with a higher cell filling rate, the computer performs the following steps: cell Cell filling factor of the divided holding region is characterized by selecting a region higher than Hamaritsu. In a method of automatically arranging a plurality of cells on a semiconductor substrate by using a computer, by providing a means defined by the present invention, a set of logical cells which interfere with each other is divided. It is possible to adjust the processing well with each other to achieve global optimization. An embodiment of the present invention will be described below. FIG. 1 is a flowchart showing a schematic processing procedure of the present invention. The detailed processing procedure for realizing this is described in the form of detailed processing steps step0 to step14 at the end of the embodiment. Hereinafter, an embodiment of the present invention will be described in accordance with the flow of the flowchart of FIG. 1 using the above-described FIGS. 2 and 3 and the detailed processing procedures step0 to step14. After (START), first, the chip area of the LSI is divided into two by a cut line to form a left area and a right area of the cut line. This is hereinafter referred to as a divided area. Further, these two divided areas are decomposed into divided holding areas opposed to each other with the cut line interposed therebetween, cells in each of the divided holding areas are temporarily determined, and registered as an initial arrangement state. Such an initial arrangement state may employ, for example, a random cell arrangement. For example, the example of FIG. 2 shows that a divided area divided into two by a cut line indicated by a dotted line is divided into four in the horizontal direction and decomposed into four divided holding areas. Then, when performing the two-division improvement process based on the cut line of interest, the division state between the divided holding areas is preserved. [0012] Then, resulting cells each on both sides of the divided holding region of the initial divide based on cut line calculates the resource R n of possible arrangement area (st
ep0), the degree of improvement G from the registered arrangement state is set to 0
(Step 1). The degree of improvement is, for example, the number of nets passing through the cut line. [0013] Next, to calculate the sum S n of the area of cells assigned for each sides of the divided holding area of the cut line (step2). Next, step0, s
both sides of the divided holding regions each cell filling factor of the sum S n cut from the line of the area of the calculated cell the cell is allocated with the resource R n of the possible placement area tep2 F n
Is calculated by the following equation (step 3). [0014] Equation 1] by summing the F n = S n / R n then the cell filling factor F n compares the both sides of the divided regions of the cut line, obtains a high cell fill factor of the divided region side H (Step 4). According to the above procedure, it is determined which cell of the cut line is a movement target candidate when performing division improvement (S1). Here, for example, in the example of FIG. 2, the area on the left side of the cut line is selected. [0015] Then the cell fill factor of between opposing divided holding regions across the cutting line respectively compared obtains the divided holding area A m of higher (step5), ste from this
Those existing on the side H with the higher filling factor of the divided regions obtained in p4 are extracted and set as divided improved region candidates C k (step
6). In this way, which divided holding area on which side of the cut line is a target candidate for performing the division improvement is determined (S2). Here, for example, in the example of FIG. 2, the divided holding areas of the first row (Y1 in the figure) and the second row (Y2 in the figure) from the top on the left side of the cut line are the target candidates. Next, from among the cells allocated to the division-improved area candidate C k extracted in step 6, the cell M in which the number of nets passing between the areas to be divided decreases most by the movement of the cell is selected. (Step 7). By selecting such a cell, it is determined which divided holding region on which side of the cut line is a target region for performing division improvement, and the degree of reduction in the number of cuts (gain G) is also determined (S3, S4). Here, for example, in the example of FIG. 2, the division holding area (Y2 in the figure) in the second row from the top of the area on the left side of the cut line is determined as the target area for division improvement. Next, assuming the movement of the cell M selected in step 7, the number of nets passing between the areas to be divided from the cells in the division improvement area candidate C k connected to this cell by a net. Selects a cell that decreases the most due to the movement of the cell, and recursively repeats a series of steps of assuming the movement of the cell, thereby obtaining a group N of cells assumed to move (step 8). This is a means for strengthening the improvement effect by moving the cells as a group when the division improvement effect is small by the single movement of the cell. Next, the cell M selected in step 7 or the cell group N obtained in step 8 is moved to the corresponding divided holding area with the cut line interposed therebetween to create a provisional arrangement state, and the reduction value of the number of cuts is created. Is accumulated G (step
9). Here, for example, in the example of FIG. 2, the cell 2 in the divided holding area (Y2 in the drawing) in the second row from the area on the left side of the cut line is divided and held in the second row from the area on the right side of the cut line. It will be moved into the area (Y6 in the figure). Next, if the cut number reduction cumulative value G of the arrangement state representing the degree of improvement in the division improvement process is equal to or greater than the maximum value of G in the improvement process up to the present, the registered arrangement state. Is updated (step 10). Thus, arrangement of the divided holding region as the object is updated is improved (S 5). Here, for example, in the example of FIG.
The movement of the cell 2 performed at p9 is determined and registered as a new arrangement state. Therefore, according to the present invention, the inside of the corresponding divided holding area in the second stage from the top in FIG.
The cell division state (in the area of No. 6) is improved to the cell arrangement result in the corresponding division holding area in the second stage from the top in FIG. Next, the above-described processing procedure step2-s
Step 10 is repeated until all the cells have been moved or until the accumulated value G falls below the lower limit of the preset value (step 11).
Thereby, for example, in the example of FIG. 2, the cell 1 in the divided holding area (Y1 in the drawing) in the first row from the top, and the cells in the third row (Y7 in the drawing) and the fourth row (Y8 in the drawing) from the top Cell 3 and cell 4
Are also moved into the opposing divided holding areas on the opposite sides of the cut lines, respectively, and are finally improved to the cell arrangement results as shown in FIG. That is, according to the present invention, even in the arrangement state as shown in FIG. 2, while maintaining the already divided horizontal division information, the four divisions in the vertical direction interfere with each other.
It can be optimized at the same time while reflecting. As a result, an ideal division result as shown in FIG. 3 is finally obtained. Finally, the convergence of this division processing is determined (S
6). First, if the maximum value of the number-of-cuts reduction cumulative value G in the arrangement state indicating the degree of improvement in the division improvement process is positive, the process returns to step 1 and the above processing procedure is repeated to further advance the division improvement (step 12). . Also, when the maximum value of the accumulated value G is 0 and there is a moving cell, and there is a cell having a positive gain among all the cells in the division improvement area candidate C k , the stee is also set.
Returning to p1, the above processing procedure is repeated to further improve the division (step 13). The convergence determination in step 12 is performed, for example, according to W. KERNIGHAN and S.K.
LIN's “AnEfficient Heuristic
c Procedure for Partition
ing Graphs ", THE BELL SYST
EM TECHNICAL JOURNAL, FEBR
UARY 1970. May be adopted. When the convergence of the division improvement is confirmed by these convergence determinations, the division improvement processing ends (step 1).
4) (END). As described above, in the present embodiment, while retaining the already divided information, and further subdividing the set of the logic cells, the respective division improvement states are mutually reflected between the already divided areas. Optimization can be performed at the same time, and the quality of layout design can be improved. Note that the present invention is not limited to the above-described embodiment, and can be implemented with various modifications without departing from the spirit of the present invention. As described above, according to the present invention, in a layout design of a semiconductor integrated circuit, a logic cell is divided into two and a cell arrangement position is automatically determined using a computer. When performing the optimization, the subdivision processing of the cell set in each divided area should be optimized at the same time while interfering with each other between the divided areas, while maintaining the division state between the plurality of divided areas. This makes it possible to globally optimally divide a logic cell by mutually reflecting the optimization progress of the two-division process in each area, thereby realizing an improvement in the degree of integration of a semiconductor integrated circuit.

【図面の簡単な説明】 【図1】 本発明の一実施例の処理手順を示すフローチ
ャート。 【図2】 従来技術の問題点を説明するための概略図。 【図3】 本発明の一実施例を説明するための概略図。 【図4】 半導体集積回路の一分割例を示すための概略
図。 【図5】 半導体集積回路のチップ概略構成を示す平面
図。 【符号の説明】 S1〜S6…処理ステップ名。 51…セルの配置領域。 52…信号線の配線領域。 53…入出力回路の配置領域。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a flowchart showing a processing procedure according to an embodiment of the present invention. FIG. 2 is a schematic diagram for explaining a problem of the related art. FIG. 3 is a schematic diagram for explaining one embodiment of the present invention. FIG. 4 is a schematic view showing an example of division of a semiconductor integrated circuit. FIG. 5 is a plan view showing a schematic configuration of a semiconductor integrated circuit chip. [Explanation of Signs] S1 to S6 ... Processing step names. 51: Cell placement area. 52: Wiring area for signal lines. 53 ... I / O circuit arrangement area.

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 上原貴夫 外2名著,山田博編,VL SIコンピュータのCAD,産業図書株 式会社,1983年10月31日,p.77−80 上田俊晃,先読み検索に基づく新配置 最適化アルゴリズム,情報処理学会研究 報告,情報処理学会,1990年10月 8 日,Vol.90、No.81(DA− 54),p.85−91 (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 658 ────────────────────────────────────────────────── ─── Continuation of the front page (56) References Takao Uehara and two other authors, Hiroshi Yamada, CAD of VLSI computer, Sangyo Tosho Co., Ltd., October 31, 1983, p. 77-80 Toshiaki Ueda, New Allocation Optimization Algorithm Based on Look-Ahead Search, Information Processing Society of Japan Research Report, Information Processing Society of Japan, October 8, 1990, Vol. 90, no. 81 (DA-54), p. 85-91 (58) Field surveyed (Int. Cl. 7 , DB name) G06F 17/50 658

Claims (1)

(57)【特許請求の範囲】 【請求項1】 半導体集積回路のレイアウト設計に於い
てセルの配置位置を計算機を用いて自動的に決定する際
に、LSIチップ上に配置すべき論理セルの集合をチッ
プ内の複数の領域に分割して割り付けるにあたって、 計算機が、LSIチップ上をカットラインで2つの分割
領域に分割する工程と、 計算機が、前記2つの分割領域をカットラインによる分
割方向と垂直な方向で複数の分割保持領域に分割し、こ
れらの分割保持領域間の分割状態及び仮の配置状態を保
持する工程と、 計算機が、前記分割状態を保持したまま、前記分割保持
領域のそれぞれに対して、セルの移動によって前記分割
領域間を通過するネット数が最も減少するセルを移動す
る2分割処理を行い、前記セルの移動により前記配置状
態を更新する工程と、 計算機が、この更新された配置状態に基づき、前記2分
割処理を繰り返す工程とを具備し、 前記2分割処理は、計算機が、チップ上の対象領域内の
セル配置可能面積を計算する工程と、計算機が、割り当
てられたセルの面積の総和を計算する工程と、前記セル
配置可能面積と前記セルの面積の総和によって、計算機
が対象領域内のセル充填率を計算する工程と、計算機
が、セル充填率の高い側の対象領域を選択する工程と、
計算機が、選択された領域内のセルから前記分割領域間
を通過するネット数が当該セルの移動によって最も減少
するセルを移動する工程とを有し、前記計算機が、セル
充填率の高い側の対象領域を選択する工程は、計算機
が、分割保持領域の中から2分割処理の相対する分割保
持領域内のセル充填率よりも当該分割保持領域内のセル
充填率が高い領域を選択する事を特徴とする半導体集積
回路の論理セル分割処理方法。
(1) When automatically determining a cell arrangement position using a computer in a layout design of a semiconductor integrated circuit, a logic cell to be arranged on an LSI chip is determined. In dividing the set into a plurality of regions in the chip and allocating the divided regions, a computer divides the LSI chip into two divided regions by a cut line; Dividing into a plurality of divided holding areas in a vertical direction, and holding a divided state and a provisional arrangement state between these divided holding areas; and a computer holding the divided state while holding the divided state. , A two-division process is performed to move the cell in which the number of nets passing between the divided regions is reduced by the movement of the cell, and the arrangement state is updated by the movement of the cell. And a computer that repeats the two-division processing based on the updated arrangement state. In the two-division processing, the computer calculates a cell allocable area in a target area on a chip. A step in which a computer calculates the sum of the areas of the assigned cells; and a step in which the computer calculates the cell filling factor in the target area based on the sum of the cell allocable area and the area of the cells. Is a step of selecting a target area on the side with a high cell filling rate,
A step of moving a cell in which the number of nets passing between the divided areas from the cells in the selected area is reduced most by the movement of the cell, wherein the computer has a higher cell filling rate. In the step of selecting the target area, the computer selects, from among the divided holding areas, an area having a higher cell filling rate in the divided holding area than the cell filling rate in the corresponding divided holding area in the two-split processing. A method for dividing a logic cell of a semiconductor integrated circuit.
JP05428994A 1994-03-25 1994-03-25 Logic cell division processing method for semiconductor integrated circuit Expired - Fee Related JP3422839B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05428994A JP3422839B2 (en) 1994-03-25 1994-03-25 Logic cell division processing method for semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05428994A JP3422839B2 (en) 1994-03-25 1994-03-25 Logic cell division processing method for semiconductor integrated circuit

Publications (2)

Publication Number Publication Date
JPH07262264A JPH07262264A (en) 1995-10-13
JP3422839B2 true JP3422839B2 (en) 2003-06-30

Family

ID=12966415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05428994A Expired - Fee Related JP3422839B2 (en) 1994-03-25 1994-03-25 Logic cell division processing method for semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP3422839B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2910723B2 (en) 1997-04-09 1999-06-23 日本電気株式会社 Semiconductor integrated circuit design support method, system using the method, and recording medium storing the method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
上原貴夫 外2名著,山田博編,VLSIコンピュータのCAD,産業図書株式会社,1983年10月31日,p.77−80
上田俊晃,先読み検索に基づく新配置最適化アルゴリズム,情報処理学会研究報告,情報処理学会,1990年10月 8日,Vol.90、No.81(DA−54),p.85−91

Also Published As

Publication number Publication date
JPH07262264A (en) 1995-10-13

Similar Documents

Publication Publication Date Title
US6286128B1 (en) Method for design optimization using logical and physical information
US5984510A (en) Automatic synthesis of standard cell layouts
US5657242A (en) Method of determining routes for a plurality of wiring connections and a circuit board produced by such a method
US6006024A (en) Method of routing an integrated circuit
US5987086A (en) Automatic layout standard cell routing
US6480991B1 (en) Timing-driven global placement based on geometry-aware timing budgets
US6209123B1 (en) Methods of placing transistors in a circuit layout and semiconductor device with automatically placed transistors
JP2724317B2 (en) Hierarchical floor planning method and system
US6415422B1 (en) Method and system for performing capacitance estimations on an integrated circuit design routed by a global routing tool
US8015534B2 (en) Method and apparatus for estimating core size in designing semiconductor integrated circuit
EP0133466A2 (en) Simultaneous placement and wiring for VLSI chips
JPH077427B2 (en) How to interconnect nodes
US6519745B1 (en) System and method for estimating capacitance of wires based on congestion information
US7603640B2 (en) Multilevel IC floorplanner
Krohn An over-cell gate array channel router
Cho et al. A buffer distribution algorithm for high-speed clock routing
US6532580B1 (en) In-place method for inserting repeater buffers in an integrated circuit
JP3422839B2 (en) Logic cell division processing method for semiconductor integrated circuit
US6880143B1 (en) Method for eliminating via blocking in an IC design
US6813755B2 (en) Active region management techniques and associated methods of designing and manufacturing VLSI circuits
US20060043427A1 (en) Automatic-arrangement-wiring apparatus for and program for performing layout of integrated circuit
Lee et al. A global router for sea-of-gates circuits
US6609238B1 (en) Method of control cell placement to minimize connection length and cell delay
Dai Performance driven layout for thin-film multichip modules
EP0218420A2 (en) Constrained optimization component placement system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090425

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100425

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100425

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110425

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130425

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees