JP2000243846A - Clock distribution layout method of semiconductor integrated circuit - Google Patents

Clock distribution layout method of semiconductor integrated circuit

Info

Publication number
JP2000243846A
JP2000243846A JP11046505A JP4650599A JP2000243846A JP 2000243846 A JP2000243846 A JP 2000243846A JP 11046505 A JP11046505 A JP 11046505A JP 4650599 A JP4650599 A JP 4650599A JP 2000243846 A JP2000243846 A JP 2000243846A
Authority
JP
Japan
Prior art keywords
divided
clock input
input terminal
relay
load
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP11046505A
Other languages
Japanese (ja)
Other versions
JP3231728B2 (en
Inventor
Yasuo Shimada
泰雄 島田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP04650599A priority Critical patent/JP3231728B2/en
Publication of JP2000243846A publication Critical patent/JP2000243846A/en
Application granted granted Critical
Publication of JP3231728B2 publication Critical patent/JP3231728B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

PROBLEM TO BE SOLVED: To enable a semiconductor integrated circuit to be lessened in clock skew that causes a malfunction enhancing it in degree of integration without deteriorating it in wiring properties and to be improved in reliability. SOLUTION: A F/F(flip-flop) dedicated layout lattice where the clock input terminals of the F/F as a load are lined up on the same straight line is previously formed (S101), and a cell layout region is divided into sub-regions of the same size (S102). A route driver is arranged at the center of the divided sub-region, relay buffers are uniformly arranged and wired like a tree corresponding to the number of the divided sub-regions, and the F/F is arranged on the layout lattice (S103 to S105). The total capacitance of the clock input terminals of the F/F connected to the relay buffers in a final stage is equalized by controlling the positions of cut lines among the divided sub-regions (S106 and S107), clock signal wirings extending from the output terminals of the relay buffers in a final stage to the clock input terminals of the F/F are radially and rectilinearly connected (S108).

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、半導体集積回路の
製造技術に関し、特に複数のF/F(フリップフロッ
プ)やラッチ等の負荷を同期して動作するクロック信号
を供給するクロック分配回路のレイアウト方法に関す
る。
[0001] 1. Field of the Invention [0002] The present invention relates to a semiconductor integrated circuit manufacturing technique, and more particularly to a layout of a clock distribution circuit for supplying a clock signal operating in synchronization with loads such as a plurality of F / Fs (flip-flops) and latches. About the method.

【0002】[0002]

【従来の技術】半導体集積回路を設計する場合に、複数
のF/Fやラッチ等の負荷を1つのクロック信号で同期
して動作させる回路が要求される場合があり、そのため
にクロック分配回路のレイアウトが要求される。従来、
このようなレイアウト方法として、特開平10−229
310号公報に記載の技術がある。この技術では、配線
長が均等なクロックツリー型のクロックラインを予め配
線したライブラリを用意しておき、この予め配線されて
いるクロックツリー型クロックラインに対して、対象回
路のF/Fなどの順序回路セルを前記クロックツリーの
最終段にオーバーラップさせてテスト配置を行い、次に
使用しないクロックラインについて、クロックラインの
元からの負荷が変わらないように削除し、配置配線結果
にエラーがある場合には再びテスト配置処理に戻るよう
にした構成を持つレイアウト方法が提案されている。こ
の技術の長所は、予め準備されている等距離に配置され
た中継バッファとF/Fなどの順序回路セルを置き換
え、クロックラインを全て等配線長とし、クロックスキ
ューを完全に零にすることである。
2. Description of the Related Art When designing a semiconductor integrated circuit, a circuit for operating loads such as a plurality of F / Fs and latches in synchronization with one clock signal is required in some cases. A layout is required. Conventionally,
As such a layout method, Japanese Patent Application Laid-Open No. H10-229
There is a technique described in JP-A-310-310. In this technique, a library in which clock tree-type clock lines having an equal wiring length are wired in advance is prepared, and an order such as F / F of a target circuit is provided with respect to the clock tree-type clock line that is wired in advance. When test placement is performed with circuit cells overlapped with the last stage of the clock tree, and the next unused clock line is deleted so that the original load of the clock line does not change, and there is an error in the placement and routing results. Has proposed a layout method having a configuration for returning to the test arrangement processing again. The advantage of this technique is that it replaces previously prepared relay buffers and sequential circuit cells, such as F / F, which are arranged at equal distances, makes all clock lines the same wiring length, and completely eliminates clock skew. is there.

【0003】また、他の技術として、特許第00269
5078号の明細書には、バイナリツリー上のクロック
配線経路の分岐点を一旦設定した後、共通の親分岐点を
持つ兄弟分岐点を結線し、その実配線経路上の地点でR
Cディレイのバランスするところを新たな親分岐点位置
として更新し、これをボトムアップに繰り返して詳細配
線経路を決定する。また、バッファセル挿入による階層
クロック分配方式において、バッファセル詳細位置決定
後、同一階層でのディレイを等しくするようバッファセ
ル近傍の経路に迂回部分を含ませて詳細配線を行なう。
更に、クラスタ内経路を除く部分に対して、専用配線層
による配線を行なうクロック分配方法が提案されてい
る。この発明の長所は、バイナリツリー上の各階層毎に
ディレイを等しくしてスキューの最小化を行なうことが
可能となる。
[0003] Another technique is disclosed in Japanese Patent No.
No. 5078 describes that once a branch point of a clock wiring path on a binary tree is set, a sibling branch point having a common parent branch point is connected, and R is set at a point on the actual wiring path.
The location where the C delay is balanced is updated as a new parent branch point position, and this is repeated bottom-up to determine a detailed wiring route. Further, in the hierarchical clock distribution method by buffer cell insertion, after determining the detailed position of the buffer cell, detailed wiring is performed by including a detour portion in the path near the buffer cell so that the delay in the same layer is equalized.
Further, a clock distribution method has been proposed in which wiring is performed by a dedicated wiring layer for a portion other than the intra-cluster path. An advantage of the present invention is that it is possible to minimize the skew by equalizing the delay for each layer on the binary tree.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、前記し
た従来技術には次のような問題が生じている。第1の従
来技術では、予め準備されたクロックツリー型クロック
ライン上にしかF/Fが配置できず、中継バッファの出
力の分岐数が限られているため、F/Fの配置に制約が
生じ、F/F数が増加した場合やシフトレジスタ回路の
ように一部の領域にF/Fを集中配置したい場合、中継
バッファ数と接続配線数が増加し配線性が低下し高集積
化に対応できない。また、クロックスキューは低減され
るが、等距離に配置された中継バッファとF/Fを置き
換えるため、F/Fの配置に制約を受けてF/Fが分散
して配置され、F/Fとその他のセルとの配線長が長く
なり、クロック以外の信号に遅延が発生し、タイミング
調整のために遅延素子やバッファを挿入し、信号配線を
余分に引回す必要が生じて、集積度及び配線性が低下す
る。
However, the above-mentioned prior art has the following problems. In the first prior art, the F / F can be arranged only on the clock tree type clock line prepared in advance, and the number of branches of the output of the relay buffer is limited, so that the arrangement of the F / F is restricted. When the number of F / Fs is increased or when it is desired to arrange F / Fs in some areas like a shift register circuit, the number of relay buffers and the number of connection wirings are increased, and the wiring property is reduced, thereby coping with high integration. Can not. Also, although the clock skew is reduced, the F / Fs are distributed and placed with restrictions on the placement of the F / Fs in order to replace the F / Fs with relay buffers arranged at equal distances. The length of wiring to other cells becomes longer, delays occur in signals other than clocks, delay elements and buffers must be inserted for timing adjustment, and signal wiring needs to be routed extra. Is reduced.

【0005】一方、第2の従来技術では、バイナリツリ
ーの階層毎にディレイ調整するために迂回配線を用いて
いるので、この迂回配線が余分な配線となり、配線性が
低下する。また、末端セルの存在する領域を格子状にク
ラスタ化し隣接するクラスタ間の末端セルの移動交換
で、負荷の調整を行なうため、クロック信号以外の配線
長が増加し、この点で配線性が低下する場合がある。さ
らに、2系統以上のクロック信号がある場合、1系統ず
つ単独でディレイを調整しているが、複数のクロック信
号を同期して動作させたい場合、バッファの挿入位置を
調整してディレイを合わせ込むため、クロック信号によ
ってディレイが異なり、2系統以上のクロック信号のデ
ィレイを合わせることができなくなる。
On the other hand, in the second prior art, since a detour wiring is used for delay adjustment for each hierarchy of the binary tree, the detour wiring becomes an extra wiring, and the wiring property is reduced. In addition, since the area where the terminal cells are present is clustered in a grid and the load is adjusted by moving and exchanging the terminal cells between adjacent clusters, the wiring length other than the clock signal increases, and in this respect, the wiring performance decreases. May be. Further, when there are two or more clock signals, the delay is adjusted independently for each system. However, when a plurality of clock signals are to be operated in synchronization, the delay position is adjusted by adjusting the buffer insertion position. Therefore, the delay differs depending on the clock signal, and the delay of two or more clock signals cannot be matched.

【0006】本発明の目的は、半導体集積回路の高集積
化を実現しながら、配線性を低下させることなく半導体
集積回路の誤動作の原因となるクロックスキューを低減
し、信頼性を向上させるレイアウト方法を提供すること
である。
SUMMARY OF THE INVENTION It is an object of the present invention to provide a layout method for realizing high integration of a semiconductor integrated circuit, reducing a clock skew which causes a malfunction of the semiconductor integrated circuit without deteriorating wiring properties, and improving reliability. It is to provide.

【0007】[0007]

【課題を解決するための手段】本発明のレイアウト方法
は、セル配置領域を一定の大きさで格子状に分割し、前
記分割した複数の分割領域数に応じてルートドライバか
らツリー状に中継バッファを均等に配置配線し、かつ前
記分割領域間の分割ライン位置を調整して最終段の中継
バッファに接続される負荷を均等に配置することを特徴
とする。この場合、前記負荷のクロック入力端子位置が
同一直線上に並ぶように前記負荷専用の配置格子を作成
しておき、最終段の中継バッファの出力端子から前記配
置格子上に整列配置した前記負荷のクロック入力端子ま
でのクロック信号配線を放射状かつ直線的に接続する。
According to a layout method of the present invention, a cell arrangement area is divided into a grid with a predetermined size, and a relay buffer is arranged in a tree form from a root driver in accordance with the number of the plurality of divided areas. Are arranged and routed uniformly, and the positions of the division lines between the division areas are adjusted to evenly arrange the loads connected to the final stage relay buffer. In this case, an arrangement grid dedicated to the load is created so that the clock input terminal positions of the load are aligned on the same straight line, and the output terminals of the relay buffer at the last stage are arranged on the arrangement grid from the output terminals of the loads. The clock signal wiring up to the clock input terminal is radially and linearly connected.

【0008】本発明のより具体的なレイアウト方法は、
負荷が配置される負荷専用の配置格子を作成し、前記配
置格子数を求める工程と、前記配置格子を縦横それぞれ
について2のべき乗に分割する工程と、前記分割した複
数の分割領域に対してルートドライバ及び前記ルートド
ライバからツリー状に中継バッファを配置しかつ相互に
配線する工程と、前記各分割領域に対して自動配置ツー
ルを使用して前記負荷を配置する工程と、前記各分割領
域内の負荷のクロック入力端子容量を計算し、各分割領
域の最終段中継バッファに接続される前記負荷が均等と
なるように各分割領域の分割ラインを微調整するととも
に前記中継バッファの個数の調整を行なう工程と、その
他の配線を行なう工程を含むことを特徴とする。
A more specific layout method of the present invention is as follows.
Creating a load-specific placement grid on which the loads are placed, determining the number of placement grids, dividing the placement grid into powers of 2 in each of the vertical and horizontal directions, and providing a route to the plurality of divided areas. Arranging a relay buffer in a tree form from the driver and the root driver and wiring them together; arranging the load using an automatic arrangement tool for each of the divided areas; Calculate the clock input terminal capacity of the load, finely adjust the divided lines of each divided area so that the loads connected to the final-stage relay buffer of each divided area are equal, and adjust the number of the relay buffers. And a step of performing other wiring.

【0009】また、この場合、負荷が配置される負荷専
用の配置格子を作成し、前記負荷を配置する工程と、前
記負荷が配置された範囲を抽出する工程と、前記抽出さ
れた範囲の前記配置格子数を求め、かつ求めた配置格子
を縦横それぞれについて2のべき乗に分割する工程と、
前記分割した複数の分割領域に対してルートドライバ及
び前記ルートドライバからツリー状に中継バッファを配
置しかつ相互に配線する工程と、前記各分割領域に対し
て自動配置ツールを使用して前記負荷を配置する工程
と、前記各分割領域内の負荷のクロック入力端子容量を
計算し、各分割領域の最終段中継バッファに接続される
前記負荷が均等となるように各分割領域の分割ラインを
微調整するとともに前記中継バッファの個数の調整を行
なう工程と、その他の配線を行なう工程を含む方法とし
てもよい。
Further, in this case, a step of preparing a load-specific placement grid in which the loads are to be placed and arranging the loads, a step of extracting a range in which the loads are placed, and A step of calculating the number of arrangement grids and dividing the obtained arrangement grid into powers of 2 in each of the vertical and horizontal directions;
Arranging and routing interconnect buffers in the form of a tree from the root driver and the root driver to the plurality of divided areas, and reducing the load by using an automatic arrangement tool for each of the divided areas. Arranging and calculating the clock input terminal capacity of the load in each of the divided areas, and fine-tuning the divided lines of each of the divided areas so that the loads connected to the final-stage relay buffer of each of the divided areas become equal. In addition, the method may include a step of adjusting the number of the relay buffers and a step of performing other wiring.

【0010】さらに、本発明のレイアウト方法において
は、前記した分割ラインの微調整及び前記中継バッファ
の個数数の調整工程は、各最終段中継バッファに接続す
る負荷のクロック入力端子容量の総和を計算する工程
と、前記計算により求めた総和から前記最終段中継バッ
ファの1個当たりに接続される平均のクロック入力端子
容量を計算する工程と、ある最終段中継バッファに接続
されるクロック入力端子容量の総和が前記平均のクロッ
ク入力端子容量の1/2以下のときは当該分割領域の負
荷を隣接する分割領域に含めるように分割ラインを調整
しかつその分割領域の最終段中継バッファを使用禁止と
する工程と、ある最終段中継バッファに接続されるクロ
ック入力端子容量の総和が前記平均のクロック入力端子
容量の3/2以上のときは当該分割領域を2分割する分
割ラインを調整しかつ最終段中継バッファを追加する工
程とを含み、各最終段中継バッファに接続される負荷の
クロック入力端子容量の総和が前記平均のクロック入力
端子容量に、予め設定した目標値の±1/2の範囲にな
るように前記分割ラインを微調整することを特徴とす
る。
Further, in the layout method according to the present invention, the fine adjustment of the divided lines and the adjustment of the number of the relay buffers are performed by calculating a total sum of clock input terminal capacitances of loads connected to each final-stage relay buffer. Calculating the average clock input terminal capacity connected to one of the final-stage relay buffers from the sum calculated by the calculation; and calculating the average clock input terminal capacitance connected to a certain final-stage relay buffer. If the sum is not more than の of the average clock input terminal capacitance, the divided line is adjusted so that the load of the divided region is included in the adjacent divided region, and use of the last-stage relay buffer of the divided region is prohibited. And the sum of the clock input terminal capacitances connected to a certain final stage relay buffer is 3/2 or more of the average clock input terminal capacitance. Adjusting the divided lines for dividing the divided area into two and adding a final-stage relay buffer, wherein the sum of the clock input terminal capacitances of the loads connected to each final-stage relay buffer is equal to the average clock input. The divided line is finely adjusted so that the terminal capacitance falls within a range of ± 1/2 of a preset target value.

【0011】本発明のレイアウト方法では、一定の大き
さでセル配置領域を分割し、分割領域数に応じてルート
ドライバからツリー状に中継バッファを均等に配置配線
することで、ルートドライバと中継バッファ間のクロッ
ク信号配線のディレイを揃える。また、最終段の中継バ
ッファに接続される負荷を分割領域間のカットライン位
置を調整することで均等にする。負荷のクロック入力端
子位置が同一直線上に並ぶように負荷を配置し、最終段
の中継バッファの出力端子から各負荷のクロック入力端
子までのクロック信号配線を、放射状かつ直線的に接続
することで、クロック信号配線の配線長の差が最小限に
なり、クロックスキューが低減できるとともに、余分な
迂回配線がなくなり配線性が向上する。負荷専用の配置
格子を作成することで、負荷の原点位置のみの配置制限
となるため、負荷以外のセルは自由に配置ができて高集
積を実現する。
In the layout method according to the present invention, the cell placement area is divided into a certain size, and the route driver and the relay buffer are equally arranged and wired in a tree form from the root driver according to the number of divided areas. Align clock signal wiring delays between them. Further, the load connected to the relay buffer at the last stage is equalized by adjusting the position of the cut line between the divided areas. The loads are arranged so that the clock input terminal positions of the loads are aligned on the same straight line, and the clock signal wiring from the output terminal of the final stage relay buffer to the clock input terminal of each load is connected radially and linearly. In addition, the difference in the wiring length of the clock signal wiring can be minimized, the clock skew can be reduced, and the extra bypass wiring is eliminated, so that the wiring property is improved. By creating an arrangement grid dedicated to the load, the arrangement of only the origin position of the load is restricted, so that cells other than the load can be freely arranged and high integration can be realized.

【0012】[0012]

【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。本発明の第1実施形態を図
1を参照して説明する。まず、ステップS101で、セ
ル配置領域に図2に示すような、F/Fのクロック入力
端子位置が同一直線上に並ぶようにF/F専用の配置格
子1を作成し、配置格子数を求める。次いで、ステップ
S102で、求めた前記配置格子1を縦横それぞれにつ
いて、図3に示すようにX方向、Y方向の格子数を2の
べき乗数で分割する。ここでは、同図に太線で示すよう
に、2の1乗(=2)で2×2の4つの分割領域10a
〜10dに分割している。また、このとき、各分割領域
10a〜10d内に配置されるF/Fのクロック入力端
子容量が、配置しようとする中継バッファの駆動能力程
度で、配線抵抗によるディレイの影響が小さくなるよう
に分割数を調整する。次いで、ステップS103で、図
4に示すように、ルートドライバ11を前記セル配置領
域の中央、ここでは各分割領域10a〜10dが接して
いる位置に配置し、また前記ルートドライバ11に同列
に接続される中継バッファ12は、前記4つの分割領域
10a〜10dに対して1個ずつ、前記ルートドライバ
11に対して等距離になるように分割領域10a〜10
dの中央に配置する。さらに、ステップS104で、前
記ルートドライバ11の出力から、前記各中継バッファ
12の入力に配線13を接続する。
Next, embodiments of the present invention will be described with reference to the drawings. A first embodiment of the present invention will be described with reference to FIG. First, in step S101, a layout grid 1 dedicated to F / F is created such that the clock input terminal positions of the F / F are arranged on the same straight line in the cell layout area as shown in FIG. 2, and the number of layout grids is obtained. . Next, in step S102, the number of grids in the X and Y directions is divided by a power of 2 as shown in FIG. Here, as shown by the bold line in FIG. 3, four 2 × 2 divided areas 10a are given by 2 (= 2).
-10d. At this time, the capacity of the clock input terminal of the F / F arranged in each of the divided areas 10a to 10d is about the driving capacity of the relay buffer to be arranged, and is divided so that the influence of the delay due to the wiring resistance is reduced. Adjust the number. Next, in step S103, as shown in FIG. 4, the root driver 11 is arranged at the center of the cell arrangement area, here, at a position where each of the divided areas 10a to 10d is in contact, and connected to the root driver 11 in the same row. The relay buffers 12 are divided one by one for the four divided regions 10a to 10d so that the divided regions 10a to 10d are equidistant from the route driver 11.
placed in the center of d. Further, in step S104, a wiring 13 is connected from the output of the route driver 11 to the input of each of the relay buffers 12.

【0013】なお、本実施形態では、中継バッファは1
段で構成されているが、図5(b)のように、ルートド
ライバ11に対して上位の中継バッファ14、下位の中
継バッファ12の2段構成、あるいはそれ以上の多段構
成で構成される場合は、図5(a)に2段構成の例の配
置を示すように、分割領域10a〜10dに対してそれ
ぞれルートドライバ11に接続する上位の中継バッファ
14を配置し、各分割領域を更に分割した分割領域10
aa〜10ad,〜,10da〜10ddに対してそれ
ぞれ上位の中継バッファ14に接続する下位の中継バッ
ファ12を接続し、各位の中継バッファがそれぞれツリ
ー状で等距離になるように各中継バッファ14,12を
配置配線する。
In this embodiment, the relay buffer is 1
5B, the route driver 11 has a two-stage configuration of the upper relay buffer 14 and the lower relay buffer 12 with respect to the route driver 11, or a multistage configuration of more than two. In FIG. 5A, as shown in an example of a two-stage configuration, a higher-order relay buffer 14 connected to the route driver 11 is arranged for each of the divided areas 10a to 10d, and each divided area is further divided. Divided area 10
A lower relay buffer 12 connected to an upper relay buffer 14 is connected to each of aa to 10ad, ..., and 10da to 10dd, and each of the relay buffers 14, 12 is arranged and wired.

【0014】次いで、ステップS105で、自動配置ツ
ールを使用して、設計する回路の接続情報に従い、前記
セル配置領域の各分割領域内に、図6に示すように負荷
(ここではF/F)のセルを配置する。このとき、ステ
ップS101において、F/F配置格子1を作成してお
り、この配置格子にしたがってF/Fを配置するため
に、F/Fはクロック入力端子位置が同一直線上になっ
ている。F/F以外のセルは、F/F専用の配置格子に
関係なく自由に配置を行なう。
Next, in step S105, according to the connection information of the circuit to be designed, the load (F / F here) is set in each divided area of the cell arrangement area as shown in FIG. Place cells. At this time, in step S101, the F / F arrangement grid 1 is created. In order to arrange the F / Fs according to this arrangement grid, the F / Fs have the clock input terminal positions on the same straight line. The cells other than the F / F are freely arranged regardless of the arrangement grid dedicated to the F / F.

【0015】続いて、負荷(F/F)の均等化処理とし
て、ステップS106を実行する。このステップS10
6では、詳細は後述するが、各分割領域10a〜10d
内のF/Fのクロック入力端子容量の総和を計算し、各
分割領域のカットラインを微調整し、最終段中継バッフ
ァに接続される負荷を均等にして、最終段中継バッファ
とF/F間のクロック信号配線を接続する。しかる後、
ステップS107で、ルートドライバから各F/Fまで
の負荷が変わらない範囲で不要な中継バッファを削除す
る。さらに、ステップS108で、その他の信号配線を
行なう。これにより、クロック分配レイアウトが完了す
る。
Subsequently, step S106 is executed as load (F / F) equalization processing. This step S10
6, the details will be described later, but each of the divided areas 10a to 10d
Calculate the sum of the capacitances of the clock input terminals of the F / Fs in each of the sub-regions, fine-tune the cut lines in each divided area, equalize the load connected to the last-stage relay buffer, and Clock signal wiring. After a while
In step S107, unnecessary relay buffers are deleted as long as the load from the root driver to each F / F does not change. Further, in step S108, other signal wiring is performed. This completes the clock distribution layout.

【0016】前記したステップS106における負荷の
均等化処理の詳細な手順を図7に示すフローチャートを
用いて説明する。ステップS201で、1つの最終段中
継バッファ、図4の実施形態の場合の中継バッファ12
に接続するF/Fのクロック入力端子容量の最大(Ma
x)、最小(Min)の各目標値を、当該中継バッファ
12におけるディレイがあまり大きくなならない範囲内
で設定する。その上で、ステップS202で、各分割領
域10a〜10dにおいて、それぞれの最終段中継バッ
ファ12に接続されるF/Fのクロック入力端子容量の
総和を計算する。ステップS203で、最終段中継バッ
ファ12の1個あたりに接続される「平均のクロック入
力端子容量」を求める。すなわち、 (平均のクロック入力端子容量)=(全部のF/Fのク
ロック入力端子容量の総和)÷(最終段中継バッファ
数) そして、各分割領域の「各最終段中継バッファに接続さ
れるクロック入力端子容量の総和」と、前記求めた「平
均のクロック入力端子容量」を比較する。
The detailed procedure of the load equalization process in step S106 will be described with reference to the flowchart shown in FIG. In step S201, one final-stage relay buffer, the relay buffer 12 in the embodiment of FIG.
Of the clock input terminal capacity of the F / F connected to
x) and the minimum (Min) target values are set within a range where the delay in the relay buffer 12 does not become too large. Then, in step S202, in each of the divided areas 10a to 10d, the total sum of the clock input terminal capacity of the F / F connected to each of the last-stage relay buffers 12 is calculated. In step S203, the “average clock input terminal capacity” connected to one of the last-stage relay buffers 12 is determined. That is, (average clock input terminal capacity) = (total of clock input terminal capacities of all F / Fs) ÷ (number of last-stage relay buffers) The "sum of input terminal capacitances" is compared with the "average clock input terminal capacitance" obtained above.

【0017】この比較により、ステップS204では、
「最終段中継バッファに接続されるクロック入力端子容
量の総和」が「平均のクロック入力端子容量」の1/2
以下のときには、その分割領域内のF/Fを隣接する分
割領域に含めて、その分割領域の最終段中継バッファを
使用禁止にする。例えば、図6の例では、図8のよう
に、分割領域10aを分割領域10cに含めて一体化す
るとともに、分割領域10aに配置されていた最終段中
継バッファ12aを使用禁止にする。一方、ステップS
205では、「最終段中継バッファに接続されるクロッ
ク入力端子容量の総和」が「平均のクロック入力端子容
量」の3/2倍以上のときには、その分割領域を2分割
して、新しい分割領域を生成し、図8に示すように最終
段中継バッファを追加する。例えば、図6の例では、図
8のように、分割領域10bを分割領域10e,10f
に2分割し、新しい分割領域10fに最終段中継バッフ
ァ12bを追加する。なお、2分割する方法は、分割領
域のカットラインを上下方向と左右方向から移動させな
がらF/Fのクロック入力端子容量の総和を計算し、上
下方向と左右方向のどちらが平均のクロック入力端子容
量に近いかを比較し、より近い分割方法を採用する。
According to this comparison, in step S204,
The “sum of the clock input terminal capacitances connected to the final stage relay buffer” is 1 / of the “average clock input terminal capacitance”
In the following cases, the F / F in the divided area is included in the adjacent divided area, and the use of the last-stage relay buffer of the divided area is prohibited. For example, in the example of FIG. 6, as shown in FIG. 8, the divided area 10a is included in the divided area 10c and integrated, and the use of the last-stage relay buffer 12a arranged in the divided area 10a is prohibited. On the other hand, step S
In 205, when the “sum of the clock input terminal capacitances connected to the final-stage relay buffer” is 3/2 times or more the “average clock input terminal capacitance”, the divided region is divided into two, and the new divided region is divided into two. Generate and add a final-stage relay buffer as shown in FIG. For example, in the example of FIG. 6, as shown in FIG. 8, the divided area 10b is divided into the divided areas 10e and 10f.
And the final stage relay buffer 12b is added to the new divided area 10f. In the method of dividing into two, the sum of the clock input terminal capacitances of the F / F is calculated while moving the cut line of the divided region in the vertical direction and the horizontal direction, and the average clock input terminal capacitance is determined in either the vertical direction or the horizontal direction. , And adopt a closer division method.

【0018】ここで、ステップS206で、前記ステッ
プS204,S205の処理によって最終段中継バッフ
ァ数に変更があった場合には、「各最終段中継バッファ
に接続されるクロック入力端子容量の総和」と「平均の
クロック入力端子容量」を前記したように再計算し、再
比較する。これにより、「各最終段中継バッファに接続
されるクロック入力端子容量の総和」は、「平均のクロ
ック入力端子容量」の1/2〜3/2の範囲になるよう
に設定される。
Here, in step S206, when the number of final-stage relay buffers is changed by the processing of steps S204 and S205, "the sum of the capacitances of the clock input terminals connected to each final-stage relay buffer" The "average clock input terminal capacitance" is recalculated and compared again as described above. As a result, the “sum of the clock input terminal capacitances connected to each final-stage relay buffer” is set to fall within a range of 2〜 to / of the “average clock input terminal capacitance”.

【0019】しかる上で、ステップS207では、前記
各最終段中継バッファについて求めた各「最終段中継バ
ッファに接続されるクロック入力端子容量の総和」のう
ち、最大値を抽出し、この最大値が、 (最大値)≦(平均のクロック入力端子容量)+(目標
値÷2) を満たしているか確認する。これが満たされていない場
合は、図10(a)に模式的に示すような、一の領域1
0Aに対して隣接する上下左右の領域10B〜10Eを
含めた「平均のクロック入力端子容量」を計算し、上下
左右を含む5つの分割領域すべてが前記平均のクロック
入力端子容量に一番近づくように、図10(b)のよう
に、対象分割領域のカットラインを内側に移動させ、前
記最大値が前記条件を満たすまで、この処理を繰り返
す。
In step S207, the maximum value is extracted from the "sum of the capacitances of the clock input terminals connected to the final-stage relay buffer" obtained for each of the final-stage relay buffers. , (Maximum value) ≦ (average clock input terminal capacitance) + (target value ÷ 2). If this is not satisfied, one region 1 as schematically shown in FIG.
"Average clock input terminal capacitance" including upper, lower, left and right regions 10B to 10E adjacent to 0A is calculated, and all five divided regions including the upper, lower, left, and right sides are closest to the average clock input terminal capacitance. Then, as shown in FIG. 10B, the cut line of the target divided area is moved inward, and this processing is repeated until the maximum value satisfies the condition.

【0020】また、今度は逆に、前記各最終段中継バッ
ファについて求めた「最終段中継バッファに接続される
クロック入力端子容量の総和」のうち、最小値を抽出
し、この最小値が、 (最小値)≧(平均のクロック入力端子容量)−(目標
値÷2) を満たしているか確認する。これが満たされていない場
合は、図10(c)のように、隣接する上下左右の分割
領域を含めた平均のクロック入力端子容量を計算し、上
下左右を含む5つの分割領域すべてが前記平均のクロッ
ク入力端子容量に一番近づくように、対象分割領域のカ
ットラインを外側に移動させ、前記最小値が前記条件を
満たすまでこの処理を繰り返す。この処理を行った結
果、図9に示すように分割領域間のカットラインの微調
整が行なわれる。
Conversely, a minimum value is extracted from the "sum of the clock input terminal capacitances connected to the final-stage relay buffer" obtained for each of the final-stage relay buffers. Check if (minimum value) ≧ (average clock input terminal capacitance) − (target value ÷ 2). When this condition is not satisfied, as shown in FIG. 10C, the average clock input terminal capacitance including the adjacent upper, lower, left, and right divided regions is calculated, and all five divided regions including the upper, lower, left, and right regions are equal to the average. The cut line of the target divided area is moved outward so as to come closest to the clock input terminal capacitance, and this processing is repeated until the minimum value satisfies the condition. As a result of performing this processing, fine adjustment of the cut line between the divided areas is performed as shown in FIG.

【0021】しかる上で、ステップS208で、各F/
F列のクロック入力端子を一直線に接続した配線をまと
めて、最終段の中継バッファの出力端子に接続し、図1
1に示すように最終段の中継バッファの出力端子から放
射状にクロック信号配線15を行なう。
Then, in step S208, each F /
The clock input terminals of the F-th column are connected in a straight line, and the lines are connected to the output terminal of the final-stage relay buffer.
As shown in FIG. 1, the clock signal wiring 15 is radiated from the output terminal of the final stage relay buffer.

【0022】以上のように、中継バッァを均等に配置配
線することで、ルートドライバ11から中継バッファ1
2間のディレイを揃えることができる。すなわち、各最
終段中継バッファに接続されるF/Fのクロック入力端
子容量を均等にすると共に、F/Fのクロック入力端子
が同一直線上に並ぶように配置し、最終段の中継バッフ
ァの出力端子から、各F/F列のクロック入力端子まで
クロック信号配線を放射状に直線的に接続し、各F/F
間の配線長の差を最小限にすることで、配線抵抗と配線
容量の差も小さくなり、クロックスキューの低減が可能
となる。また、分割領域の大きさを制御し、最終段中継
バッファの出力端子からF/Fのクロック入力端子まで
の配線抵抗と配線容量の差を調整することで、目標のク
ロックスキューが実現できる。さらに、F/Fのクロッ
ク入力端子位置を揃えてクロック信号配線を一直線に接
続することによって、クロック信号配線が蛇行して回り
込むことがなくなり、第2従来例のようなディレイ調整
用の迂回配線が必要なくなり、余分な配線領域を消費せ
ず配線性が向上する。
As described above, by arranging and wiring the relay buffers evenly, the route driver 11
The delay between the two can be equalized. That is, the clock input terminal capacity of the F / F connected to each final-stage relay buffer is equalized, and the clock input terminals of the F / F are arranged so as to be aligned on the same straight line. A clock signal line is radially connected linearly from the terminal to the clock input terminal of each F / F column, and each F / F
By minimizing the difference in the wiring length between them, the difference between the wiring resistance and the wiring capacitance is also reduced, and the clock skew can be reduced. Further, by controlling the size of the divided area and adjusting the difference between the wiring resistance and the wiring capacitance from the output terminal of the final-stage relay buffer to the clock input terminal of the F / F, a target clock skew can be realized. Furthermore, by aligning the clock input terminal positions of the F / F and connecting the clock signal wiring in a straight line, the clock signal wiring does not meander and wrap around, and the bypass wiring for delay adjustment as in the second conventional example is provided. This eliminates the necessity, and improves the wiring properties without consuming an extra wiring area.

【0023】また、ルートドライバ11と中継バッファ
12の位置を他のセルの配置前に決定した場合に、分割
領域の大きさと負荷の大きさを合わせ込むことで、複数
のクロック信号間のディレイとスキューを合わせ込み、
複数のクロック信号を同期して動作させることができ
る。また、最終段中継バッファの位置と分割領域の大き
さと負荷の大きさが決定されれば、クロック信号のスキ
ューを合わせられるため、セル配置領域を複数に分割し
て同時にレイアウトする手法にも対応が可能となる。
When the positions of the route driver 11 and the relay buffer 12 are determined before arranging other cells, the size of the divided area and the size of the load are adjusted to reduce the delay between a plurality of clock signals. Adjust the skew,
A plurality of clock signals can be operated in synchronization. Also, if the position of the last-stage relay buffer, the size of the divided region, and the size of the load are determined, the skew of the clock signal can be adjusted. It becomes possible.

【0024】また、F/Fのセル原点位置のみを固定
し、その他のセルは自由に配置できるため、第1従来例
のようなF/Fの配置制約がなくなり、使用する中継バ
ッファ数も削減することができるため、高集積化が可能
となる。ここで、本発明におてい中継バッファ数を削減
できることを、前記第1従来例と第2従来例と比較して
い説明する。第1従来例での高集積化が難しい理由は、
クロックツリーの最終段にF/Fをオーバーラップさせ
て配置するため、少なくともF/Fの総数以上の最終段
中継バッファが必要となり、各中継バッファから3方向
に分岐するため、中継バッファの段数が一段増加する毎
に中継バッファの個数が3倍に増加することである。最
終段の中継バッファ数は2×3n 個で全F/F数以上の
数が必要となり、実際に配置される中継バッファ数は、
2+2×(3+…+3n-1 +3n )個で、F/F数=1
000個の場合、最終段中継バッファ数は、2×36
1458個必要となり、中継バッファの総数は、2+2
×(31 +32 +33 +34+35 +36 )=2186
個で、最終段はF/Fに置き換えられ、削除しない未使
用バッファも残るため、実際に配置される中継バッファ
の総数は、最大で2186−1000=1186個とな
る。最小の場合、1000個のF/Fを接続し、各中継
バッファの負荷を均等にするための各段に最低必要な中
継バッファ数は1000→334→112→38→13
→5→2となり、負荷を変えないように、不要な中継バ
ッファを削除した後の中継バッファの総数は、2+6+
15+39+114+336+2=514個となる。
Further, since only the cell origin position of the F / F is fixed and the other cells can be freely arranged, there is no restriction on the arrangement of the F / F as in the first conventional example, and the number of relay buffers used is reduced. Therefore, high integration is possible. Here, the fact that the number of relay buffers can be reduced in the present invention will be described in comparison with the first conventional example and the second conventional example. The reason why high integration in the first conventional example is difficult is that
Since the F / Fs are overlapped and arranged at the last stage of the clock tree, at least the total number of the F / Fs is required for the last stage relay buffers. Since each relay buffer branches in three directions, the number of relay buffers is reduced. That is, the number of relay buffers is tripled with each increase. The number of relay buffers at the final stage is 2 × 3 n and needs to be equal to or more than the total number of F / Fs.
2 + 2 × (3+... +3 n -1 +3 n ), and the number of F / F = 1
In the case of 000, the number of final stage relay buffers is 2 × 3 6 =
1458 are required, and the total number of relay buffers is 2 + 2
× (3 1 +3 2 +3 3 +3 4 +3 5 +3 6 ) = 2186
In this case, the last stage is replaced with F / F, and unused buffers that are not deleted remain, so that the total number of relay buffers actually arranged is 2186-1000 = 1186 at the maximum. In the minimum case, 1000 F / Fs are connected, and the minimum number of relay buffers required at each stage to equalize the load on each relay buffer is 1000 → 334 → 112 → 38 → 13
→ 5 → 2, and the total number of relay buffers after deleting unnecessary relay buffers is 2 + 6 +
15 + 39 + 114 + 336 + 2 = 514.

【0025】本発明の前記第1の実施形態と対応させる
ため、第1従来例を4方向に分岐して考えると、最終段
中継バッファ数は、455 =1024個となり、実際に
配置される中継バッファの総数は最大で4+16+64
+256+24=364個となる。最小の場合、各段に
必要な中継バッファ数は1000→250→63→16
→4となり、負荷を変えないようにした中継バッファの
総数は4+16+64+252=336個となる。前記
第1の実施形態では、中継バッファの駆動能力によって
異なるが、中継バッファが40個のF/Fを駆動できる
と仮定すると、最終段中継バッファ数は1000個÷4
0=25個以上必要であるため、43 =64個となり、
実際に配置される中継バッファの総数は、最大で4+1
6+64=84個、最小の場合、各段に必要な中継バッ
ファ数は1000→25→7→2となり、負荷を変えな
いようにした中継バッファの総数は2+8+28=38
個となる。以上をまとめて(表1)に示す。本発明を使
用することにより、中継バッファ数は大幅に削減でき、
F/Fの配置制限もなくなるため高集積化が実現できる
ことが判る。
In order to correspond to the first embodiment of the present invention, when the first conventional example is branched into four directions, the number of final stage relay buffers is 45 5 = 1024, which is actually arranged. The maximum number of relay buffers is 4 + 16 + 64
+ 256 + 24 = 364. In the minimum case, the number of relay buffers required for each stage is 1000 → 250 → 63 → 16
→ 4, and the total number of relay buffers for which the load is not changed is 4 + 16 + 64 + 252 = 336. In the first embodiment, although it depends on the driving capacity of the relay buffer, assuming that the relay buffer can drive 40 F / Fs, the number of final-stage relay buffers is 100010004
Since 0 = 25 or more is required, 4 3 = 64, and
The total number of relay buffers actually arranged is 4 + 1 at the maximum.
In the case of 6 + 64 = 84, which is the minimum, the number of relay buffers required for each stage is 1000 → 25 → 7 → 2, and the total number of relay buffers for which the load is not changed is 2 + 8 + 28 = 38.
Individual. The above is summarized in Table 1 below. By using the present invention, the number of relay buffers can be significantly reduced,
It can be seen that high integration can be realized because there is no restriction on the arrangement of the F / F.

【0026】[0026]

【表1】 [Table 1]

【0027】次に本発明の第2の実施形態を説明する。
前記第1の実施形態では1系統のクロック信号の分配処
理手順を述べたが、第2の実施形態では、2系統以上の
クロック信号の分配処理を説明する。2系統以上の場合
は、図12に示すようにルートドライバ11A,11B
及び中継バッファ12A,12Bどうしを隣接して配置
配線を行ない、以後は各中継バッファに対して第1の実
施形態と同じ処理手順を行なうことで、複数系統のクロ
ック信号のディレイ及びスキューを合わせることが可能
となる。複数系統のクロック信号のディレイを合わせる
必要がない場合は、駆動する負荷に応じて中継バッファ
の段数を変えて配置配線を行なうこともできる。
Next, a second embodiment of the present invention will be described.
In the first embodiment, the procedure for distributing the clock signal of one system has been described. In the second embodiment, the processing for distributing the clock signal of two or more systems will be described. In the case of two or more systems, as shown in FIG. 12, the route drivers 11A and 11B
The relay buffers 12A and 12B are arranged and wired adjacent to each other, and thereafter, the same processing procedure as that of the first embodiment is performed on each relay buffer, thereby adjusting the delay and skew of the clock signals of a plurality of systems. Becomes possible. When it is not necessary to match the delays of the clock signals of a plurality of systems, the arrangement and wiring can be performed by changing the number of stages of the relay buffer according to the load to be driven.

【0028】また、回路接続情報の階層毎に配置位置を
決めてレイアウトし、セル配置領域の一部にF/Fが集
中して配置された場合、第1の実施形態では、ルートド
ライバをチップの中央に配置しているため、末端のF/
Fまでの配線長が伸びてクロック信号全体のディレイが
大きくなることが考えられる。これを解決するための方
法として第3の実施形態を説明する。図13は、本発明
の第3の実施形態によるクロック信号の分配処理手順を
示すフローチャートである。まず、ステップS301で
セル配置領域に図2に示すような、F/Fのクロック入
力端子位置が同一直線上に並ぶようにF/F専用の配置
格子1を作成し、配置格子数を求める。次いで、ステッ
プS302で全てのセルを自動配置する。ステップS3
03でF/Fが配置されている範囲を抽出し、前記の範
囲内の配置格子を縦横それぞれについて2のべき乗に分
割する。次いで、ステップS304でルートドライバと
中継バッファの配置を行ない、ステップS305でセル
のオーバーラップを除去する。さらに、ステップS30
6でルートドライバ及び中継バッファを配線する。以降
のステップS307からS309では第1の実施形態と
同様の処理手順、すなわち図1のステップS106と同
様の処理手順で負荷を均等にし、その他の配線を行な
う。図14は、本発明の第3の実施形態によるルートド
ライバと中継バッファを配置配線した状態を示す。
In the first embodiment, when the layout position is determined for each layer of the circuit connection information and the layout is performed, and the F / Fs are concentrated in a part of the cell layout area, the root driver is used in the first embodiment. At the center of the terminal F /
It is conceivable that the wiring length up to F increases and the delay of the entire clock signal increases. A third embodiment will be described as a method for solving this. FIG. 13 is a flowchart illustrating a clock signal distribution processing procedure according to the third embodiment of the present invention. First, in step S301, the layout grid 1 dedicated to the F / F is created such that the clock input terminal positions of the F / F are aligned on the same straight line in the cell layout area as shown in FIG. 2, and the number of layout grids is obtained. Next, in step S302, all cells are automatically arranged. Step S3
At 03, the range in which the F / Fs are arranged is extracted, and the arrangement grid within the range is divided into powers of 2 in each of the vertical and horizontal directions. Next, at step S304, a route driver and a relay buffer are arranged, and at step S305, cell overlap is removed. Further, step S30
At 6, the route driver and the relay buffer are wired. In the subsequent steps S307 to S309, the load is equalized and other wiring is performed in the same procedure as in the first embodiment, that is, in the same procedure as step S106 in FIG. FIG. 14 shows a state in which the route driver and the relay buffer according to the third embodiment of the present invention are arranged and wired.

【0029】ここで、前記各実施形態においては、負荷
としてF/Fを用いた例を示しているが、F/Fに限定
されるものではなく、クロック信号に基づいて動作され
るラッチ等の回路素子を含む種々の負荷を、複数個ツリ
ー状に接続して同期動作させる回路構成の半導体集積回
路であれば、本発明を同様に適用することが可能であ
る。
Here, in each of the above embodiments, an example is shown in which an F / F is used as a load, but the present invention is not limited to the F / F, and a latch or the like operated based on a clock signal may be used. The present invention can be similarly applied to a semiconductor integrated circuit having a circuit configuration in which a plurality of loads including circuit elements are connected in a tree shape and operated synchronously.

【0030】[0030]

【発明の効果】以上説明したように本発明によれば、セ
ル配置領域を一定の大きさで格子状に分割し、分割領域
数に応じてルートドライバからツリー状に中継バッファ
を均等に配置配線し、かつ前記分割領域間のカットライ
ン位置を調整することで最終段の中継バッファに接続さ
れる負荷を均等にしているので、半導体集積回路の高集
積化を実現しながらクロックスキューを低減し、かつ信
頼性の高い半導体集積回路のクロック分配レイアウトが
実現できる。また、前記負荷のクロック入力端子位置が
同一直線上に並ぶように前記負荷専用の配置格子を作成
しておき、最終段の中継バッファの出力端子から前記配
置格子上に整列配置した前記負荷のクロック入力端子ま
でのクロック信号配線を放射状かつ直線的に接続してい
るので、クロック信号配線が蛇行して回り込むことがな
くなり、余分な配線領域を消費せず配線性の高い半導体
集積回路のクロック分配レイアウトが実現できる。
As described above, according to the present invention, a cell arrangement area is divided into a grid with a fixed size, and a relay buffer is arranged and wired evenly in a tree form from a root driver according to the number of divided areas. And, by adjusting the cut line position between the divided regions, the load connected to the final stage relay buffer is equalized, so that the clock skew is reduced while realizing high integration of the semiconductor integrated circuit, A highly reliable clock distribution layout of a semiconductor integrated circuit can be realized. Also, an arrangement grid dedicated to the load is created so that the clock input terminal positions of the load are aligned on the same straight line, and the clocks of the loads arranged on the arrangement grid from the output terminals of the final stage relay buffer are arranged. Since the clock signal wiring to the input terminal is connected radially and linearly, the clock signal wiring does not meander and wrap around, and the clock distribution layout of the semiconductor integrated circuit with high wiring performance without consuming extra wiring area. Can be realized.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1の実施形態の処理手順を示すフロ
ーチャートである。
FIG. 1 is a flowchart illustrating a processing procedure according to a first embodiment of the present invention.

【図2】負荷としてのF/F専用の配置格子の例を示す
図である。
FIG. 2 is a diagram showing an example of an arrangement grid dedicated to F / F as a load.

【図3】セル配置領域を2のべき乗に分割した状態を示
す図である。
FIG. 3 is a diagram showing a state where a cell arrangement area is divided into powers of 2;

【図4】ルートドライバと中継バッファを配置配線した
状態を示す図である。
FIG. 4 is a diagram showing a state in which a route driver and a relay buffer are arranged and wired.

【図5】中継バッファが多段挿入されたツリー構造例を
示す簡略図である。
FIG. 5 is a simplified diagram showing an example of a tree structure in which relay buffers are inserted in multiple stages.

【図6】全ての素子が配置された状態を示す図である。FIG. 6 is a diagram showing a state where all elements are arranged.

【図7】本発明の第1の実施形態における負荷を均等に
する処理手順を示すフローチャートである。
FIG. 7 is a flowchart illustrating a processing procedure for equalizing loads according to the first embodiment of the present invention.

【図8】分割領域再構成後の初期状態を示す図である。FIG. 8 is a diagram showing an initial state after reconstruction of a divided area.

【図9】分割領域再構成後の負荷調整後の状態を示す図
である。
FIG. 9 is a diagram illustrating a state after load adjustment after reconstructing a divided area.

【図10】分割領域の負荷調整方法の簡略図である。FIG. 10 is a simplified diagram of a load adjustment method for a divided area.

【図11】最終段中継バッファの出力端子とF/Fのク
ロック入力端子の接続例を示す図である。
FIG. 11 is a diagram illustrating a connection example between an output terminal of a final-stage relay buffer and a clock input terminal of an F / F.

【図12】本発明の第2の実施形態のルートドライバと
中継バッファを配置配線した状態を示す図である。
FIG. 12 is a diagram illustrating a state in which a route driver and a relay buffer according to a second embodiment of the present invention are arranged and wired;

【図13】本発明の第3の実施形態の処理手順を示すフ
ローチャートである。
FIG. 13 is a flowchart illustrating a processing procedure according to the third embodiment of the present invention.

【図14】本発明の第3の実施形態におけるルートドラ
イバと中継バッファを配置配線した状態を示す図であ
る。
FIG. 14 is a diagram showing a state in which a route driver and a relay buffer are arranged and wired according to a third embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1 負荷(F/F)専用の配置格子 10a〜10d 分割領域 10aa〜10ad,…,10da〜10dd 分割領
域 11,11A,11B ルートドライバ 12,12A,12B 最終段の中継バッファ 13 ルートドライバと中継バッファを接続する配線 14 中継バッファ 15 信号配線
DESCRIPTION OF SYMBOLS 1 Arrangement grid dedicated to load (F / F) 10a to 10d Divided area 10aa to 10ad,..., 10da to 10dd Divided area 11, 11A, 11B Route driver 12, 12A, 12B Last stage relay buffer 13 Route driver and relay buffer 14 Relay buffer 15 Signal wiring

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B046 AA08 BA06 DA02 FA12 5F064 AA04 BB19 BB26 DD03 DD04 DD13 DD14 DD18 DD25 EE08 EE16 EE42 EE43 EE47 EE54 HH06  ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5B046 AA08 BA06 DA02 FA12 5F064 AA04 BB19 BB26 DD03 DD04 DD13 DD14 DD18 DD25 EE08 EE16 EE42 EE43 EE47 EE54 HH06

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 セル配置領域を一定の大きさで格子状に
分割し、前記分割した複数の分割領域数に応じてルート
ドライバからツリー状に中継バッファを均等に配置配線
し、かつ前記分割領域間の分割ライン位置を調整して最
終段の中継バッファに接続される負荷を均等に配置する
ことを特徴とする半導体集積回路のクロック分配レイア
ウト方法。
1. A cell arrangement area is divided into a grid with a certain size, and a relay driver is arranged and wired evenly in a tree form from a root driver according to the number of the divided areas. A clock distribution layout method for a semiconductor integrated circuit, characterized in that the positions of divided lines are adjusted to evenly distribute loads connected to the final stage relay buffer.
【請求項2】 前記負荷のクロック入力端子位置が同一
直線上に並ぶように前記負荷専用の配置格子を作成して
おき、最終段の中継バッファの出力端子から前記配置格
子上に整列配置した前記負荷のクロック入力端子までの
クロック信号配線を放射状かつ直線的に接続することを
特徴とする請求項1に記載の半導体集積回路のクロック
分配レイアウト方法。
2. An arrangement grid dedicated to the load is created so that the clock input terminal positions of the load are arranged on the same straight line, and the output lattice of the last stage is arranged on the arrangement lattice from the output terminal of the relay buffer. 2. The clock distribution layout method for a semiconductor integrated circuit according to claim 1, wherein clock signal wirings to a clock input terminal of the load are connected radially and linearly.
【請求項3】 負荷が配置される負荷専用の配置格子を
作成し、前記配置格子数を求める工程と、前記配置格子
を縦横それぞれについて2のべき乗に分割する工程と、
前記分割した複数の分割領域に対してルートドライバ及
び前記ルートドライバからツリー状に中継バッファを配
置しかつ相互に配線する工程と、前記各分割領域に対し
て自動配置ツールを使用して前記負荷を配置する工程
と、前記各分割領域内の負荷のクロック入力端子容量を
計算し、各分割領域の最終段中継バッファに接続される
前記負荷が均等となるように各分割領域の分割ラインを
微調整するとともに前記中継バッファの個数の調整を行
なう工程と、その他の配線を行なう工程を含むことを特
徴とする半導体集積回路のクロック分配レイアウト方
法。
3. A step of creating an arrangement grid dedicated to loads on which loads are arranged, calculating the number of arrangement grids, and dividing the arrangement grid into powers of 2 in each of the vertical and horizontal directions;
Arranging and routing interconnect buffers in the form of a tree from the root driver and the root driver to the plurality of divided areas, and reducing the load by using an automatic arrangement tool for each of the divided areas. Arranging and calculating the clock input terminal capacity of the load in each of the divided areas, and fine-tuning the divided lines of each of the divided areas so that the loads connected to the final-stage relay buffer of each of the divided areas become equal. And a step of adjusting the number of the relay buffers and a step of performing other wiring.
【請求項4】 負荷が配置される負荷専用の配置格子を
作成し、前記負荷を配置する工程と、前記負荷が配置さ
れた範囲を抽出する工程と、前記抽出された範囲の前記
配置格子数を求め、かつ求めた配置格子を縦横それぞれ
について2のべき乗に分割する工程と、前記分割した複
数の分割領域に対してルートドライバ及び前記ルートド
ライバからツリー状に中継バッファを配置しかつ相互に
配線する工程と、前記各分割領域に対して自動配置ツー
ルを使用して前記負荷を配置する工程と、前記各分割領
域内の負荷のクロック入力端子容量を計算し、各分割領
域の最終段中継バッファに接続される前記負荷が均等と
なるように各分割領域の分割ラインを微調整するととも
に前記中継バッファの個数の調整を行なう工程と、その
他の配線を行なう工程を含むことを特徴とする半導体集
積回路のクロック分配レイアウト方法。
4. A step of creating an arrangement grid dedicated to loads on which loads are arranged, arranging the loads, extracting a range in which the loads are arranged, and the number of arrangement grids in the extracted range. And dividing the determined arrangement grid into powers of 2 in each of the vertical and horizontal directions, arranging a relay driver in a tree shape from the root driver and the root driver for the divided plurality of divided areas, and interconnecting them. And allocating the load using an automatic placement tool for each of the divided areas; calculating a clock input terminal capacity of a load in each of the divided areas; Finely adjusting the divided lines of each divided region so that the loads connected to the divided regions are equal, and adjusting the number of the relay buffers, and a process of performing other wiring. And a clock distribution layout method for a semiconductor integrated circuit.
【請求項5】 前記分割ラインの微調整及び前記中継バ
ッファの個数数の調整工程は、各最終段中継バッファに
接続する負荷のクロック入力端子容量の総和を計算する
工程と、前記計算により求めた総和から前記最終段中継
バッファの1個当たりに接続される平均のクロック入力
端子容量を計算する工程と、ある最終段中継バッファに
接続されるクロック入力端子容量の総和が前記平均のク
ロック入力端子容量の1/2以下のときは当該分割領域
の負荷を隣接する分割領域に含めるように分割ラインを
調整しかつその分割領域の最終段中継バッファを使用禁
止とする工程と、ある最終段中継バッファに接続される
クロック入力端子容量の総和が前記平均のクロック入力
端子容量の3/2以上のときは当該分割領域を2分割す
る分割ラインを調整しかつ最終段中継バッファを追加す
る工程とを含み、各最終段中継バッファに接続される負
荷のクロック入力端子容量の総和が前記平均のクロック
入力端子容量に、予め設定した目標値の±1/2の範囲
になるように前記分割ラインを微調整することを特徴と
する請求項3または4に記載の半導体集積回路のクロッ
ク分配レイアウト方法。
5. The fine adjustment of the division line and the adjustment of the number of relay buffers are performed by calculating a total sum of clock input terminal capacitances of loads connected to the final-stage relay buffers, and by the calculation. Calculating an average clock input terminal capacitance connected to one of the last-stage relay buffers from the sum; and calculating a sum of the clock input terminal capacitances connected to a certain last-stage relay buffer to the average clock input terminal capacitance. When the value is equal to or less than 1/2, a step of adjusting the divided line so that the load of the divided area is included in the adjacent divided area and prohibiting use of the last-stage relay buffer of the divided area; When the sum of the connected clock input terminal capacitances is 3/2 or more of the average clock input terminal capacitance, the division line for dividing the divided region into two is adjusted. And adding a final-stage relay buffer, the sum of the clock input terminal capacitances of the loads connected to each final-stage relay buffer is added to the average clock input terminal capacitance by ± 1 / 1 / of a preset target value. 5. The clock distribution layout method for a semiconductor integrated circuit according to claim 3, wherein the division line is finely adjusted so as to fall within a range of 2.
JP04650599A 1999-02-24 1999-02-24 Clock distribution layout method for semiconductor integrated circuit Expired - Fee Related JP3231728B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04650599A JP3231728B2 (en) 1999-02-24 1999-02-24 Clock distribution layout method for semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04650599A JP3231728B2 (en) 1999-02-24 1999-02-24 Clock distribution layout method for semiconductor integrated circuit

Publications (2)

Publication Number Publication Date
JP2000243846A true JP2000243846A (en) 2000-09-08
JP3231728B2 JP3231728B2 (en) 2001-11-26

Family

ID=12749120

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04650599A Expired - Fee Related JP3231728B2 (en) 1999-02-24 1999-02-24 Clock distribution layout method for semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP3231728B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285572A (en) * 2005-03-31 2006-10-19 Toshiba Corp Layout method for semiconductor integrated circuit
JP2009152451A (en) * 2007-12-21 2009-07-09 Texas Instr Japan Ltd Integrated circuit device and its layout designing method
US8171440B2 (en) 2008-08-20 2012-05-01 Nec Corporation Timing analyzing apparatus, timing analyzing method and program thereof
US8788255B2 (en) 2009-08-21 2014-07-22 Nec Corporation Delay analysis processing of semiconductor integrated circuit
JP2014186648A (en) * 2013-03-25 2014-10-02 Fujitsu Ltd Design support device, design support method and design support program
US8984456B2 (en) 2012-02-02 2015-03-17 Nec Corporation Macro timing analysis device, macro boundary path timing analysis method and macro boundary path timing analysis program

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285572A (en) * 2005-03-31 2006-10-19 Toshiba Corp Layout method for semiconductor integrated circuit
JP2009152451A (en) * 2007-12-21 2009-07-09 Texas Instr Japan Ltd Integrated circuit device and its layout designing method
US8171440B2 (en) 2008-08-20 2012-05-01 Nec Corporation Timing analyzing apparatus, timing analyzing method and program thereof
US8788255B2 (en) 2009-08-21 2014-07-22 Nec Corporation Delay analysis processing of semiconductor integrated circuit
US8984456B2 (en) 2012-02-02 2015-03-17 Nec Corporation Macro timing analysis device, macro boundary path timing analysis method and macro boundary path timing analysis program
JP2014186648A (en) * 2013-03-25 2014-10-02 Fujitsu Ltd Design support device, design support method and design support program

Also Published As

Publication number Publication date
JP3231728B2 (en) 2001-11-26

Similar Documents

Publication Publication Date Title
JP3461443B2 (en) Semiconductor device, semiconductor device design method, recording medium, and semiconductor device design support device
JP2540762B2 (en) Clock signal supply method
US4577276A (en) Placement of components on circuit substrates
US7795943B2 (en) Integrated circuit device and layout design method therefor
JP2003516588A (en) Integrated circuit improvements
JP3317948B2 (en) Layout design method of semiconductor integrated circuit and semiconductor integrated circuit
US20030023938A1 (en) LSI layout method and apparatus for cell arrangement in which timing is prioritized
JP3231728B2 (en) Clock distribution layout method for semiconductor integrated circuit
US20040237060A1 (en) Integrated circuit device, clock layout system, clock layout method, and clock layout program
JP2001306641A (en) Automatic arranging and wiring method for semiconductor integrated circuit
JP2005184262A (en) Semiconductor integrated circuit and its fabricating process
JPH10308450A (en) Semiconductor integrated circuit and method for designing the same
EP0544164A1 (en) Semi custom-made integrated circuit having clock synchronous circuit improved in clock skew
JP2701779B2 (en) Clock skew reduction method
US7844935B2 (en) Wiring design system of semiconductor integrated circuit, semiconductor integrated circuit, and wiring design program
US20080079468A1 (en) Layout method for semiconductor integrated circuit
JP2000172367A (en) Clock signal distribution method and clock distribution circuit
JP3139750B2 (en) Timing adjustment method
JP3920124B2 (en) Semiconductor integrated circuit clock wiring method and semiconductor integrated circuit
JP2000035832A (en) Semiconductor integrated circuit and its clock distributing method
JP2952085B2 (en) Cluster generation method for clock signal distribution wiring
WO2008042109A2 (en) Structure cluster and method in programmable logic circuit
JPH0621223A (en) Automatic wiring method for semiconductor integrated circuit
JPH06216249A (en) Automatic layout design system for ic chip
JPH0844776A (en) Method for designing clock wiring circuit of semiconductor integrated circuit

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees