JP3237991B2 - Path constraint generation method - Google Patents

Path constraint generation method

Info

Publication number
JP3237991B2
JP3237991B2 JP05428894A JP5428894A JP3237991B2 JP 3237991 B2 JP3237991 B2 JP 3237991B2 JP 05428894 A JP05428894 A JP 05428894A JP 5428894 A JP5428894 A JP 5428894A JP 3237991 B2 JP3237991 B2 JP 3237991B2
Authority
JP
Japan
Prior art keywords
path
delay
net
amount
delay reduction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP05428894A
Other languages
Japanese (ja)
Other versions
JPH07262245A (en
Inventor
真佐子 室伏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP05428894A priority Critical patent/JP3237991B2/en
Publication of JPH07262245A publication Critical patent/JPH07262245A/en
Application granted granted Critical
Publication of JP3237991B2 publication Critical patent/JP3237991B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【産業上の利用分野】この発明は、半導体集積回路のタ
イミング最適化設計のためのパス制約生成方法に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a path constraint generation method for designing a timing optimization of a semiconductor integrated circuit.

【0002】[0002]

【従来の技術】半導体集積回路(以下LSIと呼ぶ)
は、典型的には同期信号(クロックと呼ぶ)により演算
の同期をとり、動作を保障するような構成となってい
る。そのために、記憶素子と記憶素子(フリップフロッ
プ、以下F.F.と呼ぶ)の間に伝わる信号の伝搬時間
は、1クロック周期以内におさまっている必要がある。
2. Description of the Related Art Semiconductor integrated circuits (hereinafter referred to as LSIs)
Is typically configured to synchronize operations with a synchronization signal (referred to as a clock) to ensure operation. For that purpose, the propagation time of a signal transmitted between storage elements (a flip-flop, hereinafter referred to as FF) needs to be within one clock cycle.

【0003】これを検証することをタイミング検証と呼
び、その手段にパス解析がある。パス解析はF.F.の
出力端子を仮想的な開始点に、入力端子を仮想的な終点
に接続させ、この始点・終点間についてディレイをコス
トにして最長経路探索をする事でタイミングスペック以
上のパスを抽出する。そして、その情報に基づいて、回
路構成・回路のレイアウトの改良変更などを自動・人手
で行う必要がある。
[0003] Verification of this is called timing verification, and there is a path analysis as its means. For path analysis, see F.A. F. Is connected to the virtual start point and the input terminal is connected to the virtual end point, and a path longer than the timing specification is extracted by searching for the longest path between the start point and the end point with a delay as a cost. Then, based on the information, it is necessary to automatically / manually make improvements and changes in the circuit configuration and circuit layout.

【0004】近年のVLSIの微細化技術の進歩によ
り、大規模集積回路の実現が可能になってきた。回路が
大規模化するとパス数が爆発的に増えてしまう。筆者ら
の発明によれば、始点からいちばん上位のネットを次々
通ることで最長ディレイを持つパスを抽出できる。パス
を、(派生元の親パス、分岐点セル、分岐先セル、パス
ディレイ)の4項組で表現することができ、従来からの
セル、ネットの連鎖の表現方法に比べ、情報量を1/2
0〜1/100にすることが可能である。さらに、パス
の組み合わせ爆発を抑えるために、一度通った分岐点に
マークをつけ2度と選ばれないようにすることで、パス
数を指数関数のオーダーから、多項式オーダーに抑える
ことが可能である。しかしながら、この方法でも、クリ
ティカルネットが全ネットの1/4〜1/2にもおよび
制約はかなり多い。
Recent advances in VLSI miniaturization techniques have made it possible to realize large-scale integrated circuits. When the circuit becomes large, the number of paths increases explosively. According to the invention of the present inventors, a path having the longest delay can be extracted by successively passing through the nets of the highest rank from the start point. A path can be represented by a quaternary set of (a parent path of a derivation source, a branch point cell, a branch destination cell, and a path delay), and the information amount is reduced by one in comparison with the conventional method of expressing a chain of cells and nets. / 2
It can be set to 0/1/100. Furthermore, in order to suppress the explosion of combination of paths, by marking a branch point once passed so that it is not selected twice, it is possible to suppress the number of paths from an exponential function order to a polynomial order. . However, even in this method, the number of critical nets is 1/4 to 1/2 of all nets, and the restrictions are considerably large.

【0005】レイアウト用の制約生成方法として、Ze
ro Slack Algorithmがある。(Ha
uge,P.S.他,“Circuit Placem
ent for Predictable Perfo
rmance”,IEEE.ICCAD′87.)この
方法は、すべてのパスについてスペックと同じ実ディレ
イとなるようにスラックをネットに割り振っていくアル
ゴリズムであるが、割り振ったパスディレイをパスの前
後に伝搬させる必要があり、効率的ではなかった。
As a constraint generation method for layout, Ze is used.
There is ro Slack Algorithm. (Ha
Uge, P .; S. Other, "Circuit Placem
ent for Predicable Perfo
rmance ", IEEE.ICCAD'87.) This method is an algorithm for allocating slack to a net so that all paths have the same actual delay as the specification, but propagates the allocated path delay before and after the path. Needed and not efficient.

【0006】別の方法としては、発明者らの以前の発明
である方法もある。これは得られたクリティカルパスに
ついて順次各ネットにディレイを割り振ることで制約を
形成していく。この方法においても、ディレイ削減量の
伝搬の問題があった。また、他のパスに制約が付加され
ることで、クリティカルパスでなくなるネットやパスに
ついて、特に注意が払われることもなく、不必要な制約
も生成していた。
[0006] Another method is that of our earlier invention. In this method, restrictions are formed by sequentially allocating delays to each net for the obtained critical path. This method also has a problem of propagation of the amount of delay reduction. Also, by adding restrictions to other paths, no special attention is paid to nets and paths that are no longer critical paths, and unnecessary restrictions are generated.

【0007】[0007]

【発明が解決しようとする課題】扱うネットワークの規
模が大規模化すると抽出されたパス数が爆発的に増えて
しまうという問題点があった。また、得られたクリティ
カルパスに一度設定したディレイ削減量を他のパスに伝
搬させることなく、必要なディレイ削減量を割り振る方
法は知られていなかった。
However, there is a problem that the number of extracted paths explosively increases when the scale of a network to be handled increases. Further, there has been no known method of allocating a necessary delay reduction amount without transmitting the obtained delay reduction amount once set to the critical path to another path.

【0008】本発明は、このような問題に対し、十分少
ないパス数で、自動レイアウトや論理合成などでタイミ
ング最適化を行う際に考慮すべきクリティカルパスに基
づくタイミング制約生成方法を提供することを目的とす
る。
An object of the present invention is to provide a timing constraint generation method based on a critical path to be considered when performing timing optimization by automatic layout, logic synthesis, or the like with a sufficiently small number of paths to solve such a problem. Aim.

【0009】[0009]

【課題を解決するための手段】上記問題点を解決するた
めに本発明は、クリティカルパス抽出を実行する手段
と、(パスディレイ、タイミングスペック、パス内配線
ディレイ)から各ネットのディレイ削減量αをパスごと
に算出する手段と、αについて大きい順にソートする手
段と、既に決まっているネットのディレイ削減量の和と
もともとのそのパスのディレイから、そのパスをディレ
イ削減の対象とせずクリティカルパスから除外するか否
かを判定する手段と、パスディレイ削減の対象となった
場合そのディレイ量を、他のパスのディレイ削減の影響
を受けて調整する手段とからなることを特徴としたパス
制約生成方法である。
In order to solve the above-mentioned problems, the present invention provides a means for executing a critical path extraction and a delay reduction amount α for each net from (path delay, timing specification, wiring delay in path). Is calculated for each path, means for sorting α in ascending order, and the sum of the delay reduction amounts of the already determined nets and the delay of the original path. Path constraint generation characterized by comprising means for determining whether or not to be excluded, and means for adjusting the amount of delay in the case of being subject to path delay reduction under the influence of delay reduction of other paths. Is the way.

【0010】[0010]

【作用】タイミングスペック以上のディレイを持つクリ
ティカルパスを算出し、次にディレイ削減量αを、α=
(パスディレイ−タイミングスペック)/パス内配線デ
ィレイと算出する。そして、αの大きい順にパスをソー
トすることで、各ネットに対するディレイ削減要求の厳
しいパス順にディレイ削減量を確定していく。あるパス
の処理より前に決定したパスディレイ削減量により、そ
のパスをディレイ削減の対象とせずにクリティカルパス
から除外するか否かを判断する。そのパスがパスディレ
イ削減対象となった場合には、パスディレイ削減量を調
整し、必要以上に厳しいパス制約を付加しないこととす
る。それにより、必要以上のパス・ネットに制約をつけ
ずに必要な部分にのみ、制約を付加することが可能とな
る。
[Operation] A critical path having a delay equal to or longer than the timing specification is calculated, and then the delay reduction amount α is calculated as α =
(Path delay−timing specification) / inter-path wiring delay is calculated. Then, the paths are sorted in descending order of α, so that the delay reduction amount is determined in the order of the path in which the delay reduction request for each net is strict. Based on the path delay reduction amount determined before the processing of a certain path, it is determined whether or not the path is excluded from the critical path without being subjected to delay reduction. If the path becomes a target for path delay reduction, the path delay reduction amount is adjusted so that unnecessarily strict path restrictions are not added. As a result, it is possible to add a constraint only to a necessary portion without giving a constraint to an unnecessary path net.

【0011】[0011]

【実施例】以下この発明の実施例を、図に基づいて詳説
する。図1はこの発明の一実施例の構成を示すブロック
図である。各ブロックは、次のようなステップに沿って
実行される。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below in detail with reference to the drawings. FIG. 1 is a block diagram showing a configuration of one embodiment of the present invention. Each block is executed according to the following steps.

【0012】ステップ1:クリティカルパスを抽出す
る。 ステップ2:ディレイ削減量の割合αを算出する。 α=(パスディレイ−スペック)/パス内配線ディレイ
である。
Step 1: A critical path is extracted. Step 2: The ratio α of the delay reduction amount is calculated. α = (path delay−spec) / inter-path wiring delay.

【0013】ステップ3:αの大きい順にパスをソート
する。 ステップ4:各パスについて以下の処理を行う。 ステップ4(a):そのパス内で既に削減されると決ま
っているディレイ量Aを算出する。
Step 3: The paths are sorted in descending order of α. Step 4: The following processing is performed for each path. Step 4 (a): Calculate the delay amount A already determined to be reduced in the path.

【0014】ステップ4(b):ディレイ削減量Qを、
Q=(パスディレイ−スペック−A)、と算出する。 ステップ4(c):Q<0ならばそのパスのネットには
ディレイ制約をつけない。
Step 4 (b): The delay reduction amount Q is
Q = (path delay−spec−A) is calculated. Step 4 (c): If Q <0, no delay constraint is imposed on the net of the path.

【0015】ステップ4(d):Q≧0ならばそのパス
のネットに、Qに基づきディレイ削減割合を算出しなお
し、各ネットのディレイ削減量をきめていく。
Step 4 (d): If Q ≧ 0, the delay reduction ratio is recalculated based on Q for the net of the path, and the delay reduction amount of each net is determined.

【0016】ステップ5:各パスについて処理を繰り返
す。これらの各ステップをさらに詳細に説明する。ま
ず、クリティカルパスを抽出する(ステップ1)。クリ
ティカルパスは、典型的には、フリップフロップ間で、
与えられたスペック以上のディレイを持つパスのことで
ある。例として、クリティカルパスの様子を図2に示
す。次に、各パスについてディレイ削減量の割合αを算
出する(ステップ2)。これは、例えば、
Step 5: The process is repeated for each path. Each of these steps will be described in more detail. First, a critical path is extracted (step 1). The critical path is typically between flip-flops
This is a path that has a delay longer than the given specifications. As an example, a state of a critical path is shown in FIG. Next, a ratio α of the delay reduction amount is calculated for each path (step 2). This is, for example,

【0017】[0017]

【数1】α=(削減すべきディレイ量)/(削減可能な
ディレイ量)=(パスディレイ−スペック)/(パス内
配線ディレイ)のように算出できる。
Α = (delay amount to be reduced) / (reducible delay amount) = (path delay−spec) / (inter-path wiring delay).

【0018】次に、αの大きい順にパスをソートする
(ステップ3)。この処理は、あるネットのディレイ削
減量を厳しい方から処理していくために必要な処理であ
る。図3を参照すればわかるとおり、あるネットにつけ
られるディレイ削減量はパスディレイがスペックをどれ
だけ上回っているかのみではなく、削減可能なディレイ
量(ここでは、パス内配線ディレイ)によってもかわっ
てくる。例えば、図3出は、パス1のディレイ≦パス2
のディレイであるが、削減可能なディレイ量はパス2の
方が大きい。よってディレイ削減量の割合αはパス1の
方が大きくなり、制約の厳しさとしては、パス1による
ものの方が厳しいことになる。次にαのいちばん大きい
パス内ネットについてディレイ削減量を算出する(ステ
ップ4)。これは、例えば、
Next, the paths are sorted in ascending order of α (step 3). This process is necessary to process the delay reduction amount of a certain net from the severer one. As can be seen from FIG. 3, the amount of delay reduction added to a certain net depends not only on how much the path delay exceeds the specification, but also on the amount of delay that can be reduced (here, the wiring delay in the path). . For example, FIG. 3 shows that delay of path 1 ≦ path 2
However, the amount of delay that can be reduced is larger in pass 2. Therefore, the ratio α of the delay reduction amount is larger in the pass 1 and the strictness of the constraint is more severe in the pass 1. Next, the amount of delay reduction is calculated for the net in the path having the largest α (step 4). This is, for example,

【0019】[0019]

【数2】(ネットのディレイ削減量)=α×(そのネッ
トの配線ディレイ) となる。このとき、あるネットから、パスの終点までに
削減されるディレイ量を、そのネットの情報としてもた
せるようにする。パスの終点から順次算出する。
## EQU2 ## (delay reduction amount of the net) = α × (wiring delay of the net). At this time, the delay amount reduced from a certain net to the end point of the path is provided as information of the net. It is calculated sequentially from the end point of the path.

【0020】次に、2番目にαの大きいパス以降の処理
について説明する。ここで行うことは、既に制約の割り
振られているネットを考慮して、ステップ2で算出した
αから算出されるディレイ削減量を補正することと(よ
り緩い制約をつける)、既に制約の割り振られているネ
ットが制約を守ることにより、十分パスディレイが小さ
くなると予想される場合には、そのパスを制約生成対象
から削除することである。
Next, the processing after the pass having the second largest α will be described. What is performed here is to correct the delay reduction amount calculated from α calculated in step 2 in consideration of the net to which the constraint has already been assigned (giving a looser constraint), and to assign the constraint already. If it is anticipated that the path delay will be sufficiently small due to the net being obeyed the constraint, the path is deleted from the constraint generation target.

【0021】まず、当該パス内で既に削除されているデ
ィレイ量Aを求める(ステップ4(a))。これは、そ
のパスをトレースし、既に制約が設定されているネット
の削減ディレイ量の和をとることによりもとまる。
First, the delay amount A already deleted in the path is obtained (step 4 (a)). This is achieved by tracing the path and taking the sum of the reduced delay amounts of the nets for which constraints have already been set.

【0022】次に、Q=(そのパスのディレイ−A−ス
ペック)を算出する(ステップ4(b))。Q<0なら
ば、そのパスのまだ制約のついていないネットには、制
約をつけない。Q≧0ならば、
Next, Q = (delay of the path-A-spec) is calculated (step 4 (b)). If Q <0, no constraint is imposed on the unconstrained net of the path. If Q ≧ 0,

【0023】[0023]

【数3】α′=Q/(そのパス内で未制約付加のネット
のディレイ)と、α′を算出しなおし、
Α ′ = Q / (delay of an unconstrained net in the path) and α ′ are calculated again.

【0024】[0024]

【数4】(未制約付加のネットのディレイ削減量)=
α′×(ネットディレイ)とする。処理対象パスがなく
なるまで、ステップ4内の処理を繰り返す(ステップ
5)。
(Equation 4) (Delay reduction of unconstrained net) =
α ′ × (net delay). The process in step 4 is repeated until there are no more paths to be processed (step 5).

【0025】本発明では、不必要なネットに制約をつけ
ることがなく、また、制約をつけるときに、それまでに
ついているディレイ削減量の影響をネットワーク内に伝
搬させることがないので、高速に、必要なネットにのみ
制約を付加することが可能である。本発明は、上記実施
例に限定されるものではなく、適宜設計的変更により、
適宜の態様で実施し得るものである。
In the present invention, unnecessary restrictions are not imposed on the net, and when the restrictions are imposed, the effect of the delay reduction amount that has been applied to the net is not propagated in the network. It is possible to add a constraint only to a necessary net. The present invention is not limited to the above embodiment, and is appropriately designed and changed.
It can be carried out in an appropriate manner.

【0026】[0026]

【発明の効果】本発明によれば、不必要なネットに制約
をつけることがなく、また、制約をつけるときに、それ
までについているディレイ削減量の影響をネットワーク
内に伝搬させることがないので、高速に、必要なネット
にのみ制約を付加することが可能である。
According to the present invention, unnecessary nets are not constrained, and when the constraints are imposed, the effect of the existing delay reduction amount is not propagated in the network. It is possible to add constraints only to necessary nets at high speed.

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

【図1】 本発明の実施例を説明するためのブロック
図。
FIG. 1 is a block diagram for explaining an embodiment of the present invention.

【図2】 クリティカルパスを説明するための回路図。FIG. 2 is a circuit diagram for explaining a critical path.

【図3】 ディレイ削減量の割合αを説明するためのグ
ラフ図。
FIG. 3 is a graph for explaining a ratio α of a delay reduction amount.

【図4】 本手法によるディレイ削減を説明するための
説明図。
FIG. 4 is an explanatory diagram for explaining delay reduction according to the present technique.

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

ステップ1…クリティカルパス抽出ステップ ステップ2…α算出ステップ ステップ3…ソートステップ ステップ4…ディレイ削減量算出ステップ ステップ5…繰り返しステップ Step 1: Critical path extraction step Step 2: α calculation step Step 3: Sort step Step 4: Delay reduction amount calculation step Step 5: Repeat step

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 クリティカルパスを算出するステップ
と、各パスごとに各ネットのディレイ削減量の割合を決
定するステップと、算出したディレイ削減量の割合の大
きい順にパスをソートするステップと、既にディレイ削
減量の決まっているネットのディレイ削減量の総和とそ
のパスのディレイから、そのパスをディレイ削減の対象
とせずクリティカルパスから除外するか否かを判定する
ステップと、パスディレイ削減の対象となった場合その
ディレイ量を、他のパスのディレイ削減の影響を受けて
調整するステップとからなることを特徴とするパス制約
生成方法。
A step of calculating a critical path; a step of determining a ratio of a delay reduction amount of each net for each path; a step of sorting paths in descending order of a calculated ratio of a delay reduction amount; A step of determining whether or not to exclude the path from the critical path without making the path a target for delay reduction based on the sum of the delay reduction amounts of the nets for which the reduction amount is determined and the delay of the path; And adjusting the amount of delay under the influence of the delay reduction of another path.
JP05428894A 1994-03-25 1994-03-25 Path constraint generation method Expired - Fee Related JP3237991B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05428894A JP3237991B2 (en) 1994-03-25 1994-03-25 Path constraint generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05428894A JP3237991B2 (en) 1994-03-25 1994-03-25 Path constraint generation method

Publications (2)

Publication Number Publication Date
JPH07262245A JPH07262245A (en) 1995-10-13
JP3237991B2 true JP3237991B2 (en) 2001-12-10

Family

ID=12966386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05428894A Expired - Fee Related JP3237991B2 (en) 1994-03-25 1994-03-25 Path constraint generation method

Country Status (1)

Country Link
JP (1) JP3237991B2 (en)

Also Published As

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

Similar Documents

Publication Publication Date Title
US6701505B1 (en) Circuit optimization for minimum path timing violations
US7546567B2 (en) Method and apparatus for generating a variation-tolerant clock-tree for an integrated circuit chip
US6779158B2 (en) Digital logic optimization using selection operators
US5883808A (en) Logic circuit optimization apparatus and its method
US5751596A (en) Automated system and method for identifying critical timing paths in integrated circuit layouts for use with automated circuit layout system
US5553000A (en) Eliminating retiming bottlenecks to improve performance of synchronous sequential VLSI circuits
US6405345B1 (en) Updating placement during technology mapping
JP2005502133A (en) Integrated circuit chip design
US20060107244A1 (en) Method for designing semiconductor intgrated circuit and system for designing the same
JPH07192025A (en) Redesigning method of sequential circuit
US6907590B1 (en) Integrated circuit design system and method for reducing and avoiding crosstalk
US6651232B1 (en) Method and system for progressive clock tree or mesh construction concurrently with physical design
US5963730A (en) Method for automating top-down design processing for the design of LSI functions and LSI mask layouts
US20060044932A1 (en) Method for routing data paths in a semiconductor chip with a plurality of layers
US6378116B1 (en) Using budgeted required time during technology mapping
Sze et al. Path based buffer insertion
US20040049753A1 (en) System for estimating performance of integrated circuit in register transfer level
US6954909B2 (en) Method for synthesizing domino logic circuits
US6499125B1 (en) Method for inserting test circuit and method for converting test data
JP3237991B2 (en) Path constraint generation method
US6170072B1 (en) Logic circuit verification apparatus and method for semiconductor integrated circuit
US10902167B1 (en) Feedback-aware slack stealing across transparent latches empowering performance optimization of digital integrated circuits
US7006962B1 (en) Distributed delay prediction of multi-million gate deep sub-micron ASIC designs
US6507939B1 (en) Net delay optimization with ramptime violation removal
US11288425B1 (en) Path-based timing driven placement using iterative pseudo netlist changes

Legal Events

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

Free format text: PAYMENT UNTIL: 20081005

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20081005

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20091005

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees