Movatterモバイル変換


[0]ホーム

URL:


JP2009016487A - Circuit design method and circuit design support apparatus - Google Patents

Circuit design method and circuit design support apparatus
Download PDF

Info

Publication number
JP2009016487A
JP2009016487AJP2007175177AJP2007175177AJP2009016487AJP 2009016487 AJP2009016487 AJP 2009016487AJP 2007175177 AJP2007175177 AJP 2007175177AJP 2007175177 AJP2007175177 AJP 2007175177AJP 2009016487 AJP2009016487 AJP 2009016487A
Authority
JP
Japan
Prior art keywords
delay time
subtree
clock
circuit
circuit design
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
Application number
JP2007175177A
Other languages
Japanese (ja)
Inventor
Nao Ishioka
岡 尚 石
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 CorpfiledCriticalToshiba Corp
Priority to JP2007175177ApriorityCriticalpatent/JP2009016487A/en
Publication of JP2009016487ApublicationCriticalpatent/JP2009016487A/en
Pendinglegal-statusCriticalCurrent

Links

Images

Landscapes

Abstract

<P>PROBLEM TO BE SOLVED: To provide a circuit design support device capable of reducing the degree of congestion of a circuit, and of reducing a circuit design period. <P>SOLUTION: This circuit design support device is provided with: an arrangement part 11 arranging elements in an element arrangement region based on circuit design information; wiring parts 12 and 13 carrying out clock wiring to the elements to satisfy predetermined timing restrictions; a delay distribution extraction part 14 calculating a delay time variation margin of each sub-tree based on the maximum delay time and the minimum delay time of a clock tree and each sub-tree and a delay time to each sub-tree; a sub-tree determination part 15 calculating the delay time variation margin and the degree of reduction of the degree of congestion of a circuit to determine a sub-tree of which the clock layout is changed; a layout change part 16 changing the clock layout of the sub-tree to set the delay time within a predetermined range. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

Translated fromJapanese

本発明は、回路設計方法及び回路設計支援装置に関するものである。  The present invention relates to a circuit design method and a circuit design support apparatus.

LSIのレイアウトにおいては、チップ内に散在するフリップフロップ等の複数の論理回路間に供給されるクロック信号の位相ずれ(クロックスキュー)を小さくするために、クロックツリー合成(クロックツリーシンセシス)が用いられている。  In an LSI layout, clock tree synthesis (clock tree synthesis) is used to reduce the phase shift (clock skew) of clock signals supplied between a plurality of logic circuits such as flip-flops scattered in a chip. ing.

従来のクロックツリー合成方法としては、例えば、基本回路セルを配置し、クロックネット合成によりクロックネットにバッファを挿入・配置し、配線を行い、実配線から配線抵抗・配線容量を考慮しての遅延計算を行い、遅延計算結果に基づいて既に配置済みのバッファを特性(ドライブ能力やセル内遅延時間)が異なるバッファに置換するものが知られている(例えば特許文献1参照)。特性が異なるバッファとは例えば複数のバッファを縦列接続又は並列接続したものである。  As a conventional clock tree synthesis method, for example, a basic circuit cell is placed, a buffer is inserted and placed in the clock net by clock net synthesis, wiring is performed, and the delay considering the wiring resistance / capacitance from the actual wiring It is known to perform calculation and replace a buffer that has already been arranged based on the delay calculation result with a buffer having different characteristics (drive capability and intra-cell delay time) (see, for example, Patent Document 1). The buffers having different characteristics are, for example, a plurality of buffers connected in cascade or in parallel.

クロックツリー合成はゼロスキュー(各セルまでの遅延を一定にする)を目標とするが、完全にゼロスキューとすることは困難であるため、ある範囲でのスキューは許容するように設定される。スキューは各セルまでのパスの最小遅延及び最大遅延で決定される。最小遅延、最大遅延を有するパス以外のパスの遅延は許容スキュー範囲に含まれていればどのような値でも良い。しかし、クロックツリー合成がゼロスキューを目標としているため、パスの遅延分布は、特定の遅延付近に集中するような分布となる。  The clock tree synthesis targets zero skew (constant delay to each cell). However, since it is difficult to achieve zero skew completely, skew within a certain range is set to be allowed. The skew is determined by the minimum delay and the maximum delay of the path to each cell. The delay of a path other than the path having the minimum delay and the maximum delay may be any value as long as it is included in the allowable skew range. However, since the clock tree synthesis is aimed at zero skew, the delay distribution of the path is a distribution that concentrates around a specific delay.

スキューを規定するパス(最大遅延パス、最小遅延パス)以外のパスは必要以上に遅延調整されており、不要なバッファの挿入、迂回配線が行われている。このような不要バッファ、迂回配線は回路の混雑度を上昇させ、後工程(信号配線等)を困難にし、設計期間を増加させるという問題を有する。
特開2004−326453号公報
Paths other than paths that define skew (maximum delay path, minimum delay path) are adjusted for delay more than necessary, and unnecessary buffer insertion and detour wiring are performed. Such unnecessary buffers and detour wiring have problems that the degree of circuit congestion is increased, post-processing (signal wiring and the like) is difficult, and the design period is increased.
JP 2004-326453 A

本発明は回路の混雑度を低減し、回路設計期間を短縮することができる回路設計方法及び回路設計支援装置を提供することを目的とする。  It is an object of the present invention to provide a circuit design method and a circuit design support apparatus that can reduce the degree of circuit congestion and shorten the circuit design period.

本発明の一態様による回路設計支援装置は、素子及び素子間の接続に関する回路設計情報を格納する回路情報格納部と、前記回路設計情報に基づき素子配置領域に前記素子を配置する配置部と、所定のタイミング制約を満たすように前記素子へのクロック配線を行う配線部と、クロックツリーにおける最大遅延時間及び最小遅延時間、各サブツリーにおける最大遅延時間及び最小遅延時間、及び前記各サブツリーまでの遅延時間に基づいて前記各サブツリーの遅延時間変動余裕度を算出する遅延分布抽出部と、各サブツリーに対しクロックレイアウトの変更を行った場合の前記遅延時間変動余裕度及び回路混雑度の低減度を算出し、この遅延時間変動余裕度及び回路混雑度の低減度に基づいてクロックレイアウトの変更を行うか否か判定するサブツリー判定部と、前記サブツリー判定部によりクロックレイアウトの変更を行うと判定されたサブツリーに対し、遅延時間が所定範囲内となるようにクロックレイアウトの変更を行うレイアウト変更部と、を備えるものである。  A circuit design support apparatus according to an aspect of the present invention includes a circuit information storage unit that stores circuit design information related to elements and connections between the elements, an arrangement unit that arranges the elements in an element arrangement region based on the circuit design information, A wiring unit that performs clock wiring to the element so as to satisfy a predetermined timing constraint, a maximum delay time and a minimum delay time in the clock tree, a maximum delay time and a minimum delay time in each subtree, and a delay time to each subtree A delay distribution extraction unit that calculates a delay time variation margin of each subtree based on the subtree, and calculates the delay time variation margin and the degree of circuit congestion reduction when the clock layout is changed for each subtree. Then, it is determined whether or not to change the clock layout based on the delay time variation allowance and the reduction degree of the circuit congestion. And a layout changing unit that changes the clock layout so that the delay time is within a predetermined range for the subtree determined to be changed by the subtree determining unit. .

本発明の一態様による回路設計方法は、素子及び素子間の接続に関する回路設計情報に基づき素子配置領域に前記素子を配置するステップと、所定のタイミング制約を満たすように前記素子へのクロック配線を行うステップと、クロックツリーにおける最大遅延時間及び最小遅延時間、各サブツリーにおける最大遅延時間及び最小遅延時間、及び前記各サブツリーまでの遅延時間に基づいて前記各サブツリーの遅延時間変動余裕度を算出するステップと、各サブツリーに対しクロックレイアウトの変更を行った場合の前記遅延時間変動余裕度及び回路混雑度の低減度を算出し、この遅延時間変動余裕度及び回路混雑度の低減度に基づいてクロックレイアウトの変更を行うか否か判定するステップと、前記クロックレイアウトの変更を行うと判定されたサブツリーに対し、遅延時間が所定範囲内となるようにバッファの削除、バッファのサイズ変更、及び迂回配線の再配線を行うステップと、を有するものである。  A circuit design method according to an aspect of the present invention includes a step of arranging the elements in an element arrangement region based on circuit design information relating to the elements and connections between the elements, and a clock wiring to the elements so as to satisfy a predetermined timing constraint. And calculating a delay time variation margin of each subtree based on the maximum delay time and minimum delay time in the clock tree, the maximum delay time and minimum delay time in each subtree, and the delay time up to each subtree. And calculating the delay time variation margin and the reduction degree of the circuit congestion degree when the clock layout is changed for each subtree, and the clock layout based on the delay time fluctuation margin and the reduction degree of the circuit congestion degree. Determining whether or not to change the clock layout, and determining that the clock layout is to be changed. To subtree, those with deletion of the buffer so that the delay time is within a predetermined range, a step of performing rewiring resizing buffer, and bypass wiring, a.

本発明によれば、回路の混雑度を低減し、回路設計期間を短縮することができる。  ADVANTAGE OF THE INVENTION According to this invention, the congestion degree of a circuit can be reduced and a circuit design period can be shortened.

以下、本発明の実施の形態による回路設計方法及び回路設計支援装置を図面に基づいて説明する。  Hereinafter, a circuit design method and a circuit design support apparatus according to embodiments of the present invention will be described with reference to the drawings.

図1に本発明の実施形態に係る回路設計支援装置の概略構成を示す。回路設計支援装置は演算装置1、記憶装置2、制御装置3を備え、表示装置4及び入出力装置5に接続されている。記憶装置2は回路情報格納部21、チップ情報格納部22、回路図データ格納部23、セル情報格納部24、サブツリー余裕度格納部25を有する。  FIG. 1 shows a schematic configuration of a circuit design support apparatus according to an embodiment of the present invention. The circuit design support device includes an arithmetic device 1, astorage device 2, and a control device 3, and is connected to a display device 4 and an input / output device 5. Thestorage device 2 includes a circuitinformation storage unit 21, a chipinformation storage unit 22, a circuit diagramdata storage unit 23, a cellinformation storage unit 24, and a subtreemargin storage unit 25.

回路情報格納部21は、チップに配置される論理ゲートや記憶素子(フリップフロップやラッチ)等の素子情報や各素子の接続情報(ネットリスト)等の回路設計情報を格納する。  The circuitinformation storage unit 21 stores element information such as logic gates and storage elements (flip-flops and latches) arranged on the chip, and circuit design information such as connection information (net list) of each element.

チップ情報格納部22は、素子が配置されるチップのサイズ等の情報を格納する。回路図データ格納部23は、素子が配置されたチップ情報である回路図データを格納する。セル情報格納部24は、素子に対応付けられた属性値等の情報を格納する。サブツリー余裕度格納部25は各サブツリーの余裕度(遅延時間変動余裕度)を格納する。  The chipinformation storage unit 22 stores information such as the size of the chip on which the element is arranged. The circuit diagramdata storage unit 23 stores circuit diagram data which is chip information on which elements are arranged. The cellinformation storage unit 24 stores information such as attribute values associated with elements. The subtreemargin storage unit 25 stores the margin (delay time variation margin) of each subtree.

余裕度とは「サブツリー内のパスのうち最大遅延及び最小遅延」と、「クロックツリー内のパスのうち最大遅延及び最小遅延からサブツリーまでの遅延を引いた値」との差である。  The margin is a difference between “the maximum delay and the minimum delay among the paths in the subtree” and “a value obtained by subtracting the delay to the subtree from the maximum delay and the minimum delay among the paths in the clock tree”.

例えば、図2に示すように、抽出されたサブツリーST1に含まれる複数のパスのうち、最小遅延パスの遅延時間が0.2ns、最大遅延パスの遅延時間が0.4ns、このサブツリーST1までの遅延時間、すなわちクロックツリーの頂点N1からサブツリーST1の頂点N2までの遅延時間(クロック信号伝播時間)が0.4nsとする。また、クロックツリー全体におけるパスのうち最小遅延パスの遅延時間が0.5ns、最大遅延パスの遅延時間が1.5ns、つまり許容遅延時間範囲が0.5ns〜1.5nsであるとする。  For example, as shown in FIG. 2, among the plurality of paths included in the extracted subtree ST1, the delay time of the minimum delay path is 0.2 ns, the delay time of the maximum delay path is 0.4 ns, The delay time, that is, the delay time (clock signal propagation time) from the vertex N1 of the clock tree to the vertex N2 of the subtree ST1 is 0.4 ns. Further, it is assumed that the delay time of the minimum delay path among the paths in the entire clock tree is 0.5 ns, the delay time of the maximum delay path is 1.5 ns, that is, the allowable delay time range is 0.5 ns to 1.5 ns.

このとき、頂点N1から見たサブツリーST1内のパスの遅延分布は0.6(=0.2+0.4)〜0.8(0.6+0.2)nsである。従って、クロックツリーの許容遅延時間範囲に収まるような遅延時間の変動範囲は遅延時間を小さくする方向に0.1ns、遅延時間を大きくする方向に0.7nsとなり、余裕度は(0.1、0.7)となる。  At this time, the delay distribution of the path in the subtree ST1 viewed from the vertex N1 is 0.6 (= 0.2 + 0.4) to 0.8 (0.6 + 0.2) ns. Therefore, the variation range of the delay time that falls within the allowable delay time range of the clock tree is 0.1 ns in the direction of decreasing the delay time, 0.7 ns in the direction of increasing the delay time, and the margin is (0.1, 0.7).

演算装置1は自動配置部11、配線部12、クロックツリー合成部13、遅延分布抽出部14、サブツリー判定部15、レイアウト変更部16を有する。  The arithmetic device 1 includes anautomatic placement unit 11, awiring unit 12, a clocktree synthesis unit 13, a delaydistribution extraction unit 14, asubtree determination unit 15, and alayout change unit 16.

自動配置部11は、回路設計情報、チップ情報、セル情報等に基づいて素子の自動配置を行う。配線部12は素子間のクロック配線を行う。素子の自動配置、クロック配線は公知の自動配置配線ツールを用いて行うことが出来る。  Theautomatic placement unit 11 automatically places elements based on circuit design information, chip information, cell information, and the like. Thewiring unit 12 performs clock wiring between elements. Automatic placement and clock wiring of elements can be performed using a known automatic placement and routing tool.

クロックツリー合成部13は、所定のタイミング制約を満たすようにクロックバッファの挿入や迂回配線を行う。遅延分布抽出部14はサブツリーの遅延分布を求める。また、各サブツリーの余裕度を求め、サブツリー余裕度格納部25に格納する。  The clocktree synthesizing unit 13 inserts a clock buffer and performs detour wiring so as to satisfy a predetermined timing constraint. The delaydistribution extraction unit 14 obtains a delay distribution of the subtree. Further, the margin of each subtree is obtained and stored in the subtreemargin storage unit 25.

サブツリー判定部15は、クロックツリーに含まれる複数のサブツリーそれぞれに対してレイアウト変更を行った場合の余裕度と混雑度低減度を算出する。  Thesubtree determination unit 15 calculates a margin and a congestion degree reduction when the layout is changed for each of the plurality of subtrees included in the clock tree.

混雑度は後工程で信号線等を配線できる面積等に基づく値であり、この面積が小さい程、混雑度は大きい値となる。  The degree of congestion is a value based on an area where signal lines and the like can be wired in a later process. The smaller the area, the larger the degree of congestion.

余裕度に負の値が含まれておらず、かつ混雑度低減度が所定値以上であればそのサブツリーに対してレイアウト変更を行うと判定する。  If the margin does not include a negative value and the degree of congestion reduction is equal to or greater than a predetermined value, it is determined that the layout is changed for the subtree.

一方、余裕度に負の値が含まれている場合は、サブツリーに含まれるパスのうち最大遅延パス又は最小遅延パスの遅延時間がクロックツリーの許容遅延時間範囲から外れることを意味するので、レイアウト変更は行わないと判定する。また、混雑度低減度が所定値未満の場合もレイアウト変更を行わないと判定する。  On the other hand, if the margin includes a negative value, it means that the delay time of the maximum delay path or the minimum delay path out of the paths included in the subtree is out of the allowable delay time range of the clock tree. It is determined that no change is made. It is also determined that the layout is not changed when the degree of congestion reduction is less than a predetermined value.

レイアウト変更を行うか否かの判定を行うサブツリーはサブツリー余裕度格納部25に格納された各サブツリーの余裕度を参照し、余裕度の大きい順に行うようにしても良い。余裕度が大きい方がレイアウト変更後の余裕度に負の値が含まれることが少ないためである。  The subtree for determining whether or not to change the layout may be performed in the descending order of the margin by referring to the margin of each subtree stored in the subtreemargin storage unit 25. This is because the larger margin has less negative values in the margin after the layout change.

レイアウト変更部16は、レイアウト変更を行うと判定されたサブツリーに対して、レイアウト変更を行う。レイアウト変更はバッファの削除、バッファのリサイズ、迂回配線の再配線である。  Thelayout changing unit 16 changes the layout for the subtree determined to change the layout. The layout change is buffer deletion, buffer resizing, and rerouting of rerouting wiring.

「バッファの削除」とは、それを削除しても遅延時間が許容遅延時間範囲内に収まるような過剰(無駄)なバッファを削除することである。  “Deleting a buffer” means deleting an excessive (waste) buffer whose delay time is within the allowable delay time range even if it is deleted.

例えば図3(a)に示すように、バッファb1、b2を介してクロック信号が1.3ns遅延して供給される回路ブロックC1とバッファb3、b4を介してクロック信号が1.5ns遅延して供給される回路ブロックC2を有するサブツリーがあり(つまり回路ブロックC1とC2のスキューは0.2ns)、このサブツリーの余裕度が(0.4、0.1)、つまり許容遅延時間が0.9ns(=1.3−0.4)〜1.6ns(=1.5+0.1)であるとする。  For example, as shown in FIG. 3A, the clock signal is delayed by 1.5 ns via the circuit block C1 and the buffers b3 and b4 supplied with a clock signal delayed by 1.3 ns through the buffers b1 and b2. There is a subtree having a circuit block C2 to be supplied (that is, the skew between the circuit blocks C1 and C2 is 0.2 ns), and the margin of this subtree is (0.4, 0.1), that is, the allowable delay time is 0.9 ns. It is assumed that (= 1.3−0.4) to 1.6 ns (= 1.5 + 0.1).

ここで、図3(b)に示すようにバッファb4を削除し、回路ブロックC2にクロック信号を1.0ns遅延して供給するようにした場合、回路ブロックC1とC2のスキューは0.3nsとなり、図3(a)の時よりもスキューが増加する。しかし、許容遅延時間範囲は0.9〜1.6nsであるため、許容遅延時間範囲に収まっている。つまりバッファb4を削除しても回路動作には影響がなく、バッファb4を削除した分このサブツリーの混雑度を低減することが出来る。  If the buffer b4 is deleted and the clock signal is supplied to the circuit block C2 with a delay of 1.0 ns as shown in FIG. 3B, the skew between the circuit blocks C1 and C2 becomes 0.3 ns. The skew increases compared to the case of FIG. However, since the allowable delay time range is 0.9 to 1.6 ns, it is within the allowable delay time range. That is, even if the buffer b4 is deleted, the circuit operation is not affected, and the degree of congestion of this subtree can be reduced by the amount of the buffer b4 deleted.

バッファの削除では、このバッファb4のような、許容遅延時間範囲内に収まる上で不要なバッファを削除し、回路の混雑度を低くする。  In the buffer deletion, an unnecessary buffer such as the buffer b4 within the allowable delay time range is deleted to reduce the degree of circuit congestion.

「バッファのリサイズ」とは、そのサイズを小さくして遅延時間を小さくしてもスキューが許容スキュー範囲内に収まるような過度(無駄)にサイズの大きいバッファを、サイズの小さいバッファに変更することである。  "Resize buffer" means changing an excessively large buffer to a smaller buffer so that the skew is within the allowable skew range even if the delay time is reduced by reducing the size of the buffer. It is.

例えば図4(a)に示すように、バッファb5、b6を介してクロック信号が1.3ns遅延して供給される回路ブロックC3とバッファb7、b8を介してクロック信号が1.5ns遅延して供給される回路ブロックC4を有するサブツリーがあり(つまり回路ブロックC3とC4のスキューは0.2ns)、このサブツリーの余裕度が(0.4、0.1)、つまり許容遅延時間が0.9ns〜1.6nsであるとする。  For example, as shown in FIG. 4A, the clock signal is delayed by 1.5 ns via the circuit block C3 and the buffers b7 and b8, which are supplied with a clock signal delayed by 1.3 ns through the buffers b5 and b6. There is a subtree having a circuit block C4 to be supplied (that is, the skew between the circuit blocks C3 and C4 is 0.2 ns), the margin of this subtree is (0.4, 0.1), that is, the allowable delay time is 0.9 ns. Suppose that it is -1.6ns.

ここで、図4(b)に示すように、バッファb8をサイズの小さいバッファb9に変更し、回路ブロックC4にクロック信号を1.0ns遅延して供給するようにした場合、回路ブロックC3とC4のスキューは0.3nsとなり、図4(a)の時よりもスキューが増加する。しかし、許容遅延時間範囲は0.9〜1.6nsであるため、許容遅延時間範囲に収まっている。つまりバッファb8をサイズの小さいバッファb9に置換しても回路動作には影響がなく、バッファサイズを小さくした分このサブツリーの混雑度を低減することが出来る。  Here, as shown in FIG. 4B, when the buffer b8 is changed to a small buffer b9 and the clock signal is supplied to the circuit block C4 with a delay of 1.0 ns, the circuit blocks C3 and C4 The skew becomes 0.3 ns, which is larger than that in the case of FIG. However, since the allowable delay time range is 0.9 to 1.6 ns, it is within the allowable delay time range. That is, even if the buffer b8 is replaced with a small buffer b9, the circuit operation is not affected, and the degree of congestion of the subtree can be reduced by reducing the buffer size.

バッファのリサイズでは、このバッファb8のような、許容遅延時間範囲に収まる上で不必要にサイズの大きいバッファのサイズを小さくし、回路の混雑度を低くする。  In the resizing of the buffer, the size of the buffer that is unnecessarily large within the allowable delay time range such as the buffer b8 is reduced to reduce the degree of congestion of the circuit.

また、「バッファの削除」と「バッファのリサイズ」を併せるようにしても良い。例えば図5(a)に示すように、バッファb10、b11を介してクロック信号が1.3ns遅延して供給される回路ブロックC5とバッファb12、b13を介してクロック信号が1.5ns遅延して供給される回路ブロックC6を有するサブツリーがあり(つまり回路ブロックC5とC6のスキューは0.2ns)、このサブツリーの余裕度が(0.4、0.1)、つまり許容遅延時間が0.9ns〜1.6nsであるとする。  Further, “buffer deletion” and “buffer resizing” may be combined. For example, as shown in FIG. 5A, the clock signal is delayed by 1.5 ns via the circuit block C5 and the buffers b12 and b13 supplied with a clock signal delayed by 1.3 ns through the buffers b10 and b11. There is a subtree having a circuit block C6 to be supplied (that is, the skew between the circuit blocks C5 and C6 is 0.2 ns), the margin of this subtree is (0.4, 0.1), that is, the allowable delay time is 0.9 ns. Suppose that it is -1.6ns.

ここで、図5(b)に示すように、2つのバッファb12、b13を1つのバッファb14(但し、バッファb12、b13のサイズ<バッファb14のサイズ<バッファb12とb13のサイズの和)に変更し、回路ブロックC6にクロック信号を1.0ns遅延して供給するようにした場合、回路ブロックC5とC6のスキューは0.3nsとなり、図5(a)の時よりもスキューが増加する。しかし、許容遅延時間範囲は0.9〜1.6nsであるため、許容遅延時間範囲に収まっている。つまりバッファb12、b13をまとめて1つのバッファb14に置換しても回路動作には影響がなく、合計バッファサイズを小さくした分このサブツリーの混雑度を低減することが出来る。  Here, as shown in FIG. 5B, the two buffers b12 and b13 are changed to one buffer b14 (however, the size of the buffers b12 and b13 <the size of the buffer b14 <the sum of the sizes of the buffers b12 and b13). When the clock signal is supplied to the circuit block C6 with a delay of 1.0 ns, the skew between the circuit blocks C5 and C6 becomes 0.3 ns, and the skew increases as compared with the case of FIG. However, since the allowable delay time range is 0.9 to 1.6 ns, it is within the allowable delay time range. That is, even if the buffers b12 and b13 are collectively replaced with one buffer b14, the circuit operation is not affected, and the degree of congestion of this subtree can be reduced by reducing the total buffer size.

「迂回配線の再配線」とは、配線を迂回させ遅延時間を確保している配線(迂回配線)のうち、迂回を小さくして遅延時間を短くしてもスキューが許容スキュー範囲内に収まるような過剰(無駄)な迂回をしている迂回配線の迂回を小さくするように配線し直すことである。例えば迂回配線を最短経路配線に再配線する。  “Rerouting of detour wiring” means that, among the wiring that bypasses the wiring and secures the delay time (detour wiring), even if the detour is shortened and the delay time is shortened, the skew is within the allowable skew range. In other words, the wiring is re-routed so as to reduce the detour of the detour wiring that makes excessive (waste) detouring. For example, the detour wiring is rewired to the shortest path wiring.

例えば図6(a)に示すように、 バッファb15を介してクロック信号が1.3ns遅延して供給される回路ブロックC7とバッファb16、迂回配線L1を介してクロック信号が1.5ns遅延して供給される回路ブロックC8を有するサブツリーがあり(つまり回路ブロックC7とC8のスキューは0.2ns)、このサブツリーの余裕度が(0.4、0.1)、つまり許容遅延時間が0.9ns〜1.6nsであるとする。  For example, as shown in FIG. 6A, the clock signal is delayed by 1.5 ns via the circuit block C7 and the buffer b16, which are supplied with a clock signal delayed by 1.3 ns through the buffer b15, and the bypass line L1. There is a subtree having a circuit block C8 to be supplied (that is, the skew between the circuit blocks C7 and C8 is 0.2 ns), and the margin of this subtree is (0.4, 0.1), that is, the allowable delay time is 0.9 ns. Suppose that it is -1.6ns.

ここで、図6(b)に示すように、迂回配線L1を迂回が小さく(遅延時間が短く)なるような最短経路配線L2に配線し直し、回路ブロックC8にクロック信号を1.0ns遅延して供給するようにした場合、回路ブロックC7とC8のスキューは0.3nsとなり、図6(a)の時よりもスキューが増加する。しかし、許容遅延時間範囲は0.9〜1.6nsであるため、許容遅延時間範囲に収まっている。つまり迂回配線L1を最短経路配線L2に変更しても回路動作には影響がなく、配線の迂回を小さくした分このサブツリーの混雑度を低減することが出来る。  Here, as shown in FIG. 6B, the bypass wiring L1 is re-routed to the shortest path wiring L2 that makes the bypass small (the delay time is short), and the clock signal is delayed by 1.0 ns to the circuit block C8. In this case, the skew between the circuit blocks C7 and C8 is 0.3 ns, which is larger than that in the case of FIG. However, since the allowable delay time range is 0.9 to 1.6 ns, it is within the allowable delay time range. That is, even if the detour line L1 is changed to the shortest path line L2, the circuit operation is not affected, and the degree of congestion of the subtree can be reduced by reducing the detour of the line.

迂回配線の再配線では、この迂回配線L1のような、許容遅延時間範囲に収まる上で不必要に迂回をして遅延時間を確保している配線を迂回が小さく(遅延時間が短く)なるように配線し直して、回路の混雑度を低くする。  In the rerouting of the detour wiring, the detour is small (delay time is short) for the wiring that is within the allowable delay time range and that is unnecessarily detoured to secure the delay time, such as the detour wiring L1. Rewiring to reduce circuit congestion.

制御装置3はデータ転送制御を行う。表示装置4は、論理ゲートや記憶素子の配置、配線等が行われた回路図を表示する。入出力装置5は、ユーザからのタイミング制約等の指示入力や回路図データの外部への出力などを行う。  The control device 3 performs data transfer control. The display device 4 displays a circuit diagram in which logic gates and storage elements are arranged and wired. The input / output device 5 inputs instructions such as timing constraints from the user and outputs circuit diagram data to the outside.

本実施形態による回路設計支援装置によれば許容遅延時間範囲を満たす上で不要なバッファの削除、不要に大きいバッファサイズの低減、不要に迂回した配線の再配線を行う。これにより、回路の混雑度が低減され、後工程(信号線の配線等)が容易になり、回路設計期間を短縮することができる。  The circuit design support apparatus according to the present embodiment deletes unnecessary buffers to satisfy the allowable delay time range, reduces an unnecessarily large buffer size, and rewirings unnecessarily bypassed wires. As a result, the degree of circuit congestion is reduced, post-processing (such as signal line wiring) is facilitated, and the circuit design period can be shortened.

本実施形態による回路設計方法を図7に示すフローチャートを用いて説明する。
(ステップS701)自動配置部11により素子が自動配置される。
(ステップS702)配線部12により配線処理が行われ、クロックツリー合成部13によりタイミング制約を満たすようにクロックツリーが構成される。
(ステップS703)遅延分布抽出部14により各サブツリーの遅延分布及び余裕度が算出される。
(ステップS704)サブツリー判定部15により、レイアウト変更(バッファの削除、バッファのリサイズ、迂回配線の再配線)を行った場合の各サブツリーの余裕度と、混雑度低減度が算出される。
(ステップS705)レイアウト変更後の余裕度に負の値がなく、かつ混雑度低減度が所定値以上のサブツリーがある場合はステップS706へ進む。無い場合は処理を終了する。
(ステップS706)サブツリーに対してレイアウト変更部16によりレイアウト変更(バッファの削除、バッファのリサイズ、迂回配線の再配線)が行われる。
The circuit design method according to the present embodiment will be described with reference to the flowchart shown in FIG.
(Step S701) Theautomatic placement unit 11 automatically places elements.
(Step S <b> 702) The wiring process is performed by thewiring unit 12, and the clock tree is configured so as to satisfy the timing constraint by the clocktree synthesis unit 13.
(Step S703) The delaydistribution extraction unit 14 calculates the delay distribution and margin of each subtree.
(Step S704) Thesubtree determination unit 15 calculates the margin of each subtree and the degree of congestion reduction when the layout is changed (buffer deletion, buffer resizing, bypass wiring rewiring).
(Step S705) If there is no negative value in the margin after the layout change and there is a subtree whose degree of congestion reduction is equal to or greater than a predetermined value, the process proceeds to step S706. If not, the process ends.
(Step S706) Thelayout change unit 16 performs layout change (buffer deletion, buffer resize, bypass wiring rewiring) on the subtree.

ステップS701、S702ではゼロスキューを目標としてクロックレイアウトを行うため、ステップS702終了時におけるサブツリー内のパスの遅延分布は、図8(a)に示すように特定の遅延(図中d1)に集中するような分布になる。  Since clock layout is performed with zero skew as a target in steps S701 and S702, the delay distribution of paths in the subtree at the end of step S702 is concentrated on a specific delay (d1 in the figure) as shown in FIG. 8A. It becomes distribution like this.

しかし、スキューを決定するのは最大遅延パスと最小遅延パスであり、その他のパスの遅延時間は最小遅延以上最大遅延以下であればどのような値でも良い。従って、上記のように許容スキュー範囲に収まる上で不要なバッファの削除等のレイアウト変更を行い、回路の混雑度を低減する。なお、レイアウト変更後の遅延分布は例えば図8(b)に示すような分布になる。  However, the skew is determined by the maximum delay path and the minimum delay path, and the delay time of the other paths may be any value as long as it is not less than the minimum delay and not more than the maximum delay. Therefore, the layout change such as unnecessary buffer deletion is performed while falling within the allowable skew range as described above, and the congestion degree of the circuit is reduced. The delay distribution after the layout change is, for example, as shown in FIG.

本実施形態に係る回路設計方法によれば許容遅延時間範囲を満たす上で不要なバッファの削除、不要に大きいバッファサイズの低減、不要に迂回した配線の再配線を行い、回路の混雑度を低減させる。これにより、後工程(信号線の配線等)が容易になり、回路設計期間を短縮することができる。  According to the circuit design method according to the present embodiment, unnecessary buffers are deleted in order to satisfy the allowable delay time range, an unnecessarily large buffer size is reduced, and unnecessary detour wiring is rewired to reduce the degree of circuit congestion. Let This facilitates post-processing (signal line wiring and the like) and shortens the circuit design period.

上述した実施の形態は一例であって限定的なものではないと考えられるべきである。本発明の技術的範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。  The above-described embodiment is an example and should not be considered as limiting. The technical scope of the present invention is defined by the terms of the claims, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

本実施形態による回路設計支援装置の概略構成図である。It is a schematic block diagram of the circuit design support apparatus by this embodiment.サブツリーの遅延分布の一例を示す図である。It is a figure which shows an example of delay distribution of a subtree.レイアウト変更の一例を示す図である。It is a figure which shows an example of a layout change.レイアウト変更の一例を示す図である。It is a figure which shows an example of a layout change.レイアウト変更の一例を示す図である。It is a figure which shows an example of a layout change.レイアウト変更の一例を示す図である。It is a figure which shows an example of a layout change.本実施形態による回路設計方法を示すフローチャートである。It is a flowchart which shows the circuit design method by this embodiment.レイアウト変更前後の遅延分布を示す図である。It is a figure which shows delay distribution before and after a layout change.

符号の説明Explanation of symbols

1 演算装置
2 記憶装置
3 制御装置
4 表示装置
5 入出力装置
11 自動配置部
12 配線部
13 クロックツリー合成部
14 遅延分布抽出部
15 サブツリー判定部
16 レイアウト変更部
21 回路情報格納部
22 チップ情報格納部
23 回路図データ格納部
24 セル情報格納部
25 サブツリー余裕度格納部
DESCRIPTION OF SYMBOLS 1Computation device 2 Storage device 3 Control device 4 Display device 5 Input /output device 11Automatic placement unit 12Wiring unit 13 Clocktree synthesis unit 14 Delaydistribution extraction unit 15Subtree determination unit 16Layout change unit 21 Circuitinformation storage unit 22 Chipinformation storage Unit 23 Circuit diagramdata storage unit 24 Cellinformation storage unit 25 Subtree margin storage unit

Claims (5)

Translated fromJapanese
素子及び素子間の接続に関する回路設計情報を格納する回路情報格納部と、
前記回路設計情報に基づき素子配置領域に前記素子を配置する配置部と、
所定のタイミング制約を満たすように前記素子へのクロック配線を行う配線部と、
クロックツリーにおける最大遅延時間及び最小遅延時間、各サブツリーにおける最大遅延時間及び最小遅延時間、及び前記各サブツリーまでの遅延時間に基づいて前記各サブツリーの遅延時間変動余裕度を算出する遅延分布抽出部と、
各サブツリーに対しクロックレイアウトの変更を行った場合の前記遅延時間変動余裕度及び回路混雑度の低減度を算出し、この遅延時間変動余裕度及び回路混雑度の低減度に基づいてクロックレイアウトの変更を行うか否か判定するサブツリー判定部と、
前記サブツリー判定部によりクロックレイアウトの変更を行うと判定されたサブツリーに対し、遅延時間が所定範囲内となるようにクロックレイアウトの変更を行うレイアウト変更部と、
を備える回路設計支援装置。
A circuit information storage unit for storing circuit design information related to elements and connections between elements;
An arrangement unit for arranging the element in an element arrangement region based on the circuit design information;
A wiring portion for performing clock wiring to the element so as to satisfy a predetermined timing constraint;
A delay distribution extraction unit that calculates a delay time variation margin of each subtree based on a maximum delay time and a minimum delay time in the clock tree, a maximum delay time and a minimum delay time in each subtree, and a delay time to each subtree; ,
When the clock layout is changed for each subtree, the delay time fluctuation margin and the reduction degree of the circuit congestion are calculated, and the clock layout is changed based on the delay time fluctuation margin and the reduction degree of the circuit congestion. A sub-tree determination unit that determines whether to perform
A layout changing unit for changing the clock layout so that the delay time is within a predetermined range for the subtree determined to be changed by the subtree determining unit;
A circuit design support device comprising:
前記レイアウト変更部は、前記クロックツリーにおける最小遅延時間をDmin、前記クロックツリーにおける最大遅延時間をDmax、前記サブツリーまでの遅延時間をDs、前記サブツリー内の各パスの遅延時間をDnとした場合、Dmin≦Dn+Ds≦Dmaxを満たすように前記サブツリーのクロックレイアウトの変更を行うことを特徴とする請求項1に記載の回路設計支援装置。  When the minimum delay time in the clock tree is Dmin, the maximum delay time in the clock tree is Dmax, the delay time to the subtree is Ds, and the delay time of each path in the subtree is Dn, The circuit design support apparatus according to claim 1, wherein the clock layout of the subtree is changed so as to satisfy Dmin ≦ Dn + Ds ≦ Dmax. 前記レイアウト変更部は、バッファの削除、バッファのサイズ変更、及び迂回配線の再配線を行うことを特徴とする請求項2に記載の回路設計支援装置。  The circuit design support apparatus according to claim 2, wherein the layout changing unit performs buffer deletion, buffer size change, and rerouting of rerouting wiring. 前記回路混雑度は後工程における信号線配線可能面積に基づいて求められることを特徴とする請求項1乃至3のいずれかに記載の回路設計支援装置。The circuit design support apparatus according to claim 1, wherein the circuit congestion degree is obtained based on a signal line routable area ina subsequent process. 素子及び素子間の接続に関する回路設計情報に基づき素子配置領域に前記素子を配置するステップと、
所定のタイミング制約を満たすように前記素子へのクロック配線を行うステップと、
クロックツリーにおける最大遅延時間及び最小遅延時間、各サブツリーにおける最大遅延時間及び最小遅延時間、及び前記各サブツリーまでの遅延時間に基づいて前記各サブツリーの遅延時間変動余裕度を算出するステップと、
各サブツリーに対しクロックレイアウトの変更を行った場合の前記遅延時間変動余裕度及び回路混雑度の低減度を算出し、この遅延時間変動余裕度及び回路混雑度の低減度に基づいてクロックレイアウトの変更を行うか否か判定するステップと、
前記クロックレイアウトの変更を行うと判定されたサブツリーに対し、遅延時間が所定範囲内となるようにバッファの削除、バッファのサイズ変更、及び迂回配線の再配線を行うステップと、
を有する回路設計方法。
Placing the element in the element placement region based on circuit design information relating to the elements and connections between the elements;
Performing clock wiring to the element to satisfy predetermined timing constraints;
Calculating a delay time variation margin of each subtree based on a maximum delay time and a minimum delay time in the clock tree, a maximum delay time and a minimum delay time in each subtree, and a delay time to each subtree;
When the clock layout is changed for each subtree, the delay time fluctuation margin and the reduction degree of the circuit congestion are calculated, and the clock layout is changed based on the delay time fluctuation margin and the reduction degree of the circuit congestion. Determining whether or not to perform
For the subtree determined to change the clock layout, deleting the buffer, changing the buffer size, and rerouting the bypass wiring so that the delay time is within a predetermined range;
A circuit design method comprising:
JP2007175177A2007-07-032007-07-03 Circuit design method and circuit design support apparatusPendingJP2009016487A (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
JP2007175177AJP2009016487A (en)2007-07-032007-07-03 Circuit design method and circuit design support apparatus

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
JP2007175177AJP2009016487A (en)2007-07-032007-07-03 Circuit design method and circuit design support apparatus

Publications (1)

Publication NumberPublication Date
JP2009016487Atrue JP2009016487A (en)2009-01-22

Family

ID=40357059

Family Applications (1)

Application NumberTitlePriority DateFiling Date
JP2007175177APendingJP2009016487A (en)2007-07-032007-07-03 Circuit design method and circuit design support apparatus

Country Status (1)

CountryLink
JP (1)JP2009016487A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2012124117A1 (en)*2011-03-172012-09-20富士通株式会社Timing error elimination method, design assistance device, and program
JP2013122705A (en)*2011-12-122013-06-20Renesas Electronics CorpLayout device and layout method
JP2013171503A (en)*2012-02-222013-09-02Renesas Electronics CorpLsi design method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2012124117A1 (en)*2011-03-172012-09-20富士通株式会社Timing error elimination method, design assistance device, and program
US8701064B2 (en)2011-03-172014-04-15Fujitsu LimitedTiming error removing method and design support apparatus
JPWO2012124117A1 (en)*2011-03-172014-07-17富士通株式会社 Timing error elimination method, design support apparatus, and program
JP2013122705A (en)*2011-12-122013-06-20Renesas Electronics CorpLayout device and layout method
JP2013171503A (en)*2012-02-222013-09-02Renesas Electronics CorpLsi design method

Similar Documents

PublicationPublication DateTitle
US8635577B2 (en)Timing refinement re-routing
US8887110B1 (en)Methods for designing intergrated circuits with automatically synthesized clock distribution networks
US7222318B2 (en)Circuit optimization for minimum path timing violations
US8782591B1 (en)Physically aware logic synthesis of integrated circuit designs
US8631378B2 (en)Implementing enhanced clock tree distributions to decouple across N-level hierarchical entities
US9830415B2 (en)Standard cell library, method of using the same, and method of designing semiconductor integrated circuit
US20190065656A1 (en)Integrated metal layer aware optimization of integrated circuit designs
JP2004502259A (en) Method and system for checking tiered metal terminations, surroundings, and exposure
US9047434B2 (en)Clustering for processing of circuit design data
JP4918934B2 (en) Semiconductor integrated circuit delay analysis apparatus, delay analysis method, and program thereof
JP2009016487A (en) Circuit design method and circuit design support apparatus
US9940422B2 (en)Methods for reducing congestion region in layout area of IC
CN101887469A (en) Method for designing integrated circuits and computer system using the method
US7415687B2 (en)Method and computer program for incremental placement and routing with nested shells
US8595668B1 (en)Circuits and methods for efficient clock and data delay configuration for faster timing closure
US9563736B2 (en)Placement aware functional engineering change order extraction
US20190392089A1 (en)Automated region based optimization of chip manufacture
US8151232B2 (en)Repeater driven routing methodology
JP3116915B2 (en) Clock net layout design change method
JP2011107769A (en)Layout device for semiconductor integrated circuit and clock gating method
US11113446B2 (en)Yield improving leaf cells optimization for semiconductor netlists
JP2020052807A (en)Layout design device and layout design program
US20080022253A1 (en)Generating a convergent circuit design from a functional description using entities having access to the functional description and to physical design information
Hakim et al.Routability-Driven Timing Optimization
JP5515757B2 (en) Scan flip-flop addition system and scan flip-flop addition method

[8]ページ先頭

©2009-2025 Movatter.jp