JP2924766B2 - Hold time error elimination method and method - Google Patents

Hold time error elimination method and method

Info

Publication number
JP2924766B2
JP2924766B2 JP8048017A JP4801796A JP2924766B2 JP 2924766 B2 JP2924766 B2 JP 2924766B2 JP 8048017 A JP8048017 A JP 8048017A JP 4801796 A JP4801796 A JP 4801796A JP 2924766 B2 JP2924766 B2 JP 2924766B2
Authority
JP
Japan
Prior art keywords
delay
path
time error
hold time
wiring
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
JP8048017A
Other languages
Japanese (ja)
Other versions
JPH09218888A (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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP8048017A priority Critical patent/JP2924766B2/en
Publication of JPH09218888A publication Critical patent/JPH09218888A/en
Application granted granted Critical
Publication of JP2924766B2 publication Critical patent/JP2924766B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、LSI(集積回
路)、PWB(プリント配線板)等のレイアウト設計に
おけるホールドタイムエラー除去方式及び方法に関し、
特に論理回路のホールドタイムエラーを除去するレイア
ウト設計方式及び方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and a method for removing a hold time error in a layout design of an LSI (integrated circuit), a PWB (printed wiring board) or the like.
In particular, the present invention relates to a layout design method and method for removing a hold time error of a logic circuit.

【0002】[0002]

【従来の技術】従来技術のレイアウト方式においては、
論理接続情報に基づいて総配線長の短縮、及び配線性の
向上を目的とする自動配置配線処理を行うことが一般的
とされており、配置配線後の遅延解析でパスのホールド
タイムエラーが発生した場合には、人手で配置配線修正
を行ったり、論理を修正し再度レイアウトする等してこ
のホールドタイムエラーを除去していた。あるいは、ホ
ールドタイムエラーを起こさないように、論理設計段階
で予めディレイゲート(遅延ゲート)を挿入しておく等
で対処していた。なお、従来のレイアウト方式について
は、刊行物(樹下行三(編者)、情報処理学会発行、
「論理装置のCAD」、昭和56年3月20日発行、第
30〜62頁)等が参照される。
2. Description of the Related Art In a conventional layout system,
It is generally assumed that automatic placement and routing processing is performed based on logical connection information for the purpose of shortening the total wiring length and improving wiring properties, and a path hold time error occurs in delay analysis after placement and routing. In such a case, the hold time error is removed by manually correcting the placement and routing, or by correcting the logic and laying out the layout again. Alternatively, a delay gate (delay gate) is inserted in advance in the logic design stage to prevent a hold time error. In addition, about the conventional layout method, the publication (Yukizo Kinoshita (editor), IPSJ published,
"CAD for Logic Devices", published March 20, 1981, pp. 30-62).

【0003】[0003]

【発明が解決しようとする課題】上述した従来のレイア
ウト方式における第1の問題点は、論理接続情報のみに
基づいて、総配線長の短縮、及び配線性の向上を目的と
して、自動配置配線処理が行われていることである。
A first problem in the above-mentioned conventional layout method is that automatic layout and wiring processing is performed based on only logical connection information for the purpose of shortening the total wiring length and improving the wiring property. Is what is happening.

【0004】このように、論理接続情報のみに基づいて
自動配置配線処理を行う場合、配置配線後の遅延解析に
より、スキュウが大きいパスや遅延時間が小さいパスに
ついて、ホールドタイムエラーを発生することがある。
なお、最小遅延時間エラー等の遅延解析に関する従来技
術としては、特開平5−6405号公報には、データパ
スの最小遅延時間が制限値を下回るエラーパスに対して
エラーパスの最大遅延時間が制限値以下を保ちつつ、エ
ラーパスの最小遅延時間が制限値以上となる修正手段を
提供することを目的として、ディレイバッファの挿入に
よる最大遅延時間の増加を考慮しつつ最小遅延時間を保
証するためにエラーパスに挿入するディレイバッファの
種類及び数の最適な組み合わせを求めることにより、最
小遅延時間エラーを保証し無駄なディレイバッファ挿入
に起因する新たな問題(例えば最大遅延時間エラーの発
生)を防ぐようにした遅延解析装置の構成が提案されて
いる。同様な従来技術として、特開平4−309179
号公報には、最小遅延時間エラーの自動修正システムを
提供することを目的として、エラーパスの個々に対して
最小遅延時間を保証するために、最小遅延時間が制限値
を下回ると判断されたエラーパスについて制限値との差
分に基づき、最小遅延時間を保証するため、エラーパス
に挿入するディレイバッファの種類及び数を選択するよ
うにしたシステムが提案されている。
As described above, when the automatic placement and routing process is performed based only on the logical connection information, a hold time error may occur in a path with a large skew or a path with a small delay time by delay analysis after the placement and routing. is there.
As a conventional technique relating to delay analysis of a minimum delay time error or the like, Japanese Patent Laid-Open Publication No. Hei 5-6405 discloses that an error path whose data path minimum delay time is less than a limit value has a maximum error path delay time limit. In order to provide a correction means in which the minimum delay time of the error path is equal to or greater than the limit value while maintaining the value equal to or less than the value, in order to guarantee the minimum delay time while considering the increase in the maximum delay time due to the insertion of the delay buffer. By finding the optimal combination of the type and number of delay buffers to be inserted into the error path, a minimum delay time error is guaranteed, and a new problem caused by useless delay buffer insertion (for example, occurrence of a maximum delay time error) is prevented. A configuration of the delay analysis device described above has been proposed. A similar prior art is disclosed in Japanese Patent Laid-Open No. 4-309179.
In order to provide an automatic correction system for the minimum delay time error, Japanese Patent Laid-Open Publication No. H10-15083 discloses an error in which the minimum delay time is determined to be less than the limit value in order to guarantee the minimum delay time for each error path. A system has been proposed in which the type and number of delay buffers to be inserted into an error path are selected in order to guarantee a minimum delay time based on a difference between a path and a limit value.

【0005】また、上記した従来の方式においては、発
生したホールドタイムエラーを、配置配線結果の人手修
正によって回避したり、あるいは論理設計を修正して再
度配置配線し直したりすることが必要とされるため、修
正作業や再度の配置配線に多大な工数を必要とするとい
う問題を有している。
Further, in the above-mentioned conventional method, it is necessary to avoid the generated hold time error by manually correcting the placement and routing results, or to correct the logic design and to perform the placement and routing again. Therefore, there is a problem that a large number of man-hours are required for repair work and re-arrangement and wiring.

【0006】さらに、論理設計段階で、予めディレイゲ
ートを挿入しておくようにした場合、論理接続情報のみ
から配線長を見積り、ホールドタイムエラーを起こす可
能性のあるパスにディレイゲートを挿入することになる
ので、必要以上にディレイゲートが挿入され、レイアウ
トの収容性が悪化するという問題点を有している。
Further, when a delay gate is inserted in advance in the logic design stage, the wiring length is estimated only from the logical connection information, and the delay gate is inserted into a path that may cause a hold time error. Therefore, there is a problem that the delay gate is inserted more than necessary and the accommodation capacity of the layout is deteriorated.

【0007】従って、本発明は、上記従来技術の問題点
に鑑みて為されたものであって、その目的は、配置配線
後の遅延解析によりスキュウが大きいパスや遅延時間が
小さいパスについて発生するホールドタイムエラーを自
動で除去することにより、ホールドタイムエラーの人手
による修正工数や、論理修正しての再レイアウトする作
業工数を不要とする方式及び方法を提供することにあ
る。
Accordingly, the present invention has been made in view of the above-mentioned problems of the prior art, and an object of the present invention is to generate a path with a large skew or a path with a small delay time by delay analysis after placement and routing. It is an object of the present invention to provide a method and a method of automatically eliminating a hold time error, thereby eliminating the need for manual correction of the hold time error and the number of work steps required to perform a logical correction and re-layout.

【0008】また、本発明は、論理設計段階でホールド
タイムエラーを除去するために、パスに必要以上のディ
レイゲートを予め挿入しておくことでレイアウトの収容
性が悪化することを回避した方式及び方法を提供するこ
とを目的とする。
Further, the present invention provides a method and a method for avoiding deterioration of layout accommodation by inserting delay gates more than necessary in a path in order to remove a hold time error in a logic design stage. The aim is to provide a method .

【0009】[0009]

【課題を解決するための手段】前記目的を達成するた
め、本発明に係るホールドタイムエラー除去方式は、L
SI、PWB等のレイアウト設計において、回路を構成
するブロック間の論理接続情報、ブロックの配置結果や
ブロック間接続の配線結果の物理情報、遅延解析に必要
なブロック内部遅延や配線遅延計算用パラメータ等の遅
延情報を入力する論理/ライブラリ入力手段と、回路の
目標性能を規定するパスの、(最小遅延時間制限、最大
遅延時間制限)からなる、遅延時間制限値を入力するパ
ス遅延制約入力手段と、パスの遅延解析を行うパス遅延
解析手段と、クロックネットを構成するパスを抽出し前
記パス遅延解析手段を用いてクロックスキュウを求める
クロックスキュウ算出手段と、前記パス遅延解析手段を
用いて、前記クロックスキュウ算出手段により求められ
たクロックスキュウを考慮したパス遅延解析を行いホー
ルドタイムエラー(最小遅延時間エラー)を起こしてい
るパスを検出するホールドタイムエラー検出手段と、前
記ホールドタイムエラー検出手段により検出されたホー
ルドタイムエラーを起こしているパス上のネットに対し
て、最大遅延時間エラーを起こさない範囲でホールドタ
イムエラーを除去可能なディレイゲートを選択し挿入す
るディレイゲート挿入手段と、前記ディレイゲート挿入
手段により挿入されたディレイゲートをホールドタイム
エラー回避可能な位置に配置するディレイゲート配置手
段と、挿入されたディレイゲートの配置によって変更の
必要が生じるネットについて再配線を行うインクリメン
タル配線手段と、配置配線結果を出力する出力手段と、
前記各手段を制御する制御手段と、を有している。
In order to achieve the above object, a hold time error elimination method according to the present invention comprises:
In the layout design of SI, PWB, etc., logical connection information between blocks constituting a circuit, physical information of a block arrangement result and a wiring result of connection between blocks, parameters for calculating a block internal delay and wiring delay required for delay analysis, etc. Logic / library input means for inputting delay information of the following, and path delay constraint input means for inputting a delay time limit value of (a minimum delay time limit and a maximum delay time limit) of a path defining a target performance of the circuit. A path skew calculating means for performing a delay analysis of a path, a clock skew calculating means for extracting a path constituting a clock net and obtaining a clock skew using the path delay analyzing means, and the path delay analyzing means, Perform path delay analysis taking into account the clock skew calculated by the clock skew calculation means and perform a hold time error. Hold time error detection means for detecting a path causing a minimum delay time error) and a maximum delay time error for a net on the path having a hold time error detected by the hold time error detection means. Delay gate inserting means for selecting and inserting a delay gate capable of removing a hold time error within a range that does not occur, and delay gate disposing means for disposing the delay gate inserted by the delay gate inserting means at a position where a hold time error can be avoided. Incremental wiring means for rewiring a net that needs to be changed due to the arrangement of the inserted delay gates, and output means for outputting a placement and routing result;
And control means for controlling each of the means.

【0010】また、本発明は、請求項1記載の発明にお
ける論理/ライブラリ入力手段が、ブロック間接続の配
線結果を入力しない場合に、配置結果から各ネットの仮
想配線を見積る仮想配線見積り手段と、前記仮想配線を
用いてパスの遅延解析を行うパス遅延解析手段を有し、
インクリメンタル配線手段を用いないで配置結果のみを
出力するような構成としてもよい。
Further, according to the present invention, there is provided a virtual wiring estimating means for estimating a virtual wiring of each net from an arrangement result when the logical / library input means according to the first aspect of the present invention does not input a wiring result of connection between blocks. Having path delay analysis means for performing path delay analysis using the virtual wiring,
A configuration in which only the arrangement result is output without using the incremental wiring means may be adopted.

【0011】[0011]

【作用】本発明によれば、クロックスキュウ算出手段に
より求められたクロックスキュウを考慮して、パス遅延
解析手段が配置配線結果に基づくパス遅延解析を行い、
ホールドタイムエラー検出手段がパスのホールドタイム
エラー(最小遅延時間エラー)を検出し、ディレイゲー
ト挿入手段がエラーを起こしているパス上のネットに対
して最大遅延時間エラーを起こさない範囲でホールドタ
イムエラーを回避可能なディレイゲートを選択して挿入
して、ディレイゲート配置手段が、選択されたディレイ
ゲートをホールドタイムエラーを回避可能な位置に配置
し、インクリメンタル配線手段(変更点及び該変更点に
より可及的に変更が生じる部位を配線する)がこのディ
レイゲートの配置によって変更の必要が生じるネットに
ついて再配線を行うことにより、ホールドタイムエラー
を除去した配置配線結果を自動で得ることができる。
According to the present invention, in consideration of the clock skew calculated by the clock skew calculating means, the path delay analyzing means performs a path delay analysis based on the placement and routing results.
The hold time error detection means detects the hold time error (minimum delay time error) of the path, and the delay gate insertion means does not cause the maximum delay time error for the net on the path where the error has occurred. The delay gate arranging means arranges the selected delay gate at a position where the hold time error can be avoided, and inserts the delay gate at a position where the hold time error can be avoided. By re-wiring the nets that need to be changed due to the arrangement of the delay gates, the arrangement and wiring results from which the hold time error has been eliminated can be automatically obtained.

【0012】そして、本発明によれば、実際の配置配線
結果を基に、ディレイゲート挿入手段が、必要な分だけ
のディレイゲートを挿入することから、配線収容性の悪
化も最小限に抑えられる。
According to the present invention, the delay gate inserting means inserts as many delay gates as necessary on the basis of the actual arrangement and wiring results, thereby minimizing the deterioration of wiring accommodation. .

【0013】さらに、本発明によれば、ディレイゲート
配置手段とインクリメンタル配線手段によって、初期レ
イアウト結果に対するインクリメンタルな配置配線修正
を行うため、エラー除去に要する時間も短く、新たなホ
ールドタイムエラーも発生しない。
Further, according to the present invention, the delay gate arranging means and the incremental wiring means perform incremental arrangement and wiring correction on the initial layout result, so that the time required for error removal is short and no new hold time error occurs. .

【0014】[0014]

【発明の実施の形態】図1に、本発明のホールドタイム
エラー除去方式の一実施形態の構成をブロック図にて示
す。図1を参照して、本実施形態は、回路を構成するブ
ロック間の論理接続情報111、ブロックの配置結果や
ブロック間接続の配線結果の物理情報112、遅延解析
に必要なブロック内部遅延や配線遅延計算用パラメータ
等の遅延情報113を入力する論理/ライブラリ入力手
段102と、回路の目標性能を規定するパスの遅延時間
制約情報(最小遅延時間制限、最大遅延時間制限)11
3を入力するパス遅延制約入力手段103と、パスの遅
延解析を行うパス遅延解析手段104と、クロックネッ
トを構成するパスを抽出しパス遅延解析手段104を用
いてクロックスキュウを求めるクロックスキュウ算出手
段105と、パス遅延解析手段104を用いて、クロッ
クスキュウ算出手段105により求められたクロックス
キュウを考慮したパス遅延解析を行いホールドタイムエ
ラー(最小遅延時間制約違反)を起こしているパスを検
出するホールドタイムエラー検出手段106と、ホール
ドタイムエラー検出手段106により検出されたホール
ドタイムエラーを起こしているパス上のネットに対し
て、最大遅延時間エラーを起こさない範囲でホールドタ
イムエラーを除去可能なディレイゲートを選択し挿入す
るディレイゲート挿入手段107と、ディレイゲート挿
入手段107により挿入されたディレイゲートをホール
ドタイムエラー回避可能な位置に配置するディレイゲー
ト配置手段108と、挿入されたディレイゲートの配置
によって変更の必要が生じるネットについて再配線を行
うインクリメンタル配線手段109と、配置配線結果情
報115を出力する出力手段110と、これらの各手段
を制御する制御手段101と、を備えている。
FIG. 1 is a block diagram showing the configuration of an embodiment of a hold time error elimination system according to the present invention. Referring to FIG. 1, in the present embodiment, logical connection information 111 between blocks constituting a circuit, physical information 112 of a block arrangement result and a wiring result of connection between blocks, a block internal delay and wiring required for delay analysis Logic / library input means 102 for inputting delay information 113 such as delay calculation parameters, and delay time constraint information (minimum delay time limit, maximum delay time limit) 11 for the path that defines the target performance of the circuit
3, a path delay constraint input means 103 for inputting a clock signal 3, a path delay analysis means 104 for delay analysis of a path, and a clock skew calculation means for extracting a path constituting a clock net and obtaining a clock skew using the path delay analysis means 104. A hold for detecting a path causing a hold time error (a violation of a minimum delay time constraint) by performing a path delay analysis in consideration of the clock skew calculated by the clock skew calculation means using the path delay analysis means and the path delay analysis means. Time error detecting means 106 and a delay gate capable of removing a hold time error within a range that does not cause a maximum delay time error for a net on a path having a hold time error detected by the hold time error detecting means 106 Select and insert delay gate Means 107, delay gate arranging means 108 for arranging the delay gate inserted by delay gate inserting means 107 at a position where a hold time error can be avoided, and rewiring for a net which needs to be changed by the arrangement of the inserted delay gate. , An output unit 110 that outputs placement and routing result information 115, and a control unit 101 that controls these units.

【0015】図2に示すような、クロックドライバ20
1、クロックバッファ202〜205、フリップフロッ
プ(FF)206、207、ゲート208、及びこれら
のブロック間を接続するネット209〜218から成る
論理接続関係の一部分を例に説明する。図2に示す例
は、論理の一部を表しているが、配置線処理は全体につ
いて行われるものとする。図2に示す論理接続の例で
は、フリップフロップ間のパスとしてパス312が存在
している。
A clock driver 20 as shown in FIG.
1. A part of a logical connection relationship composed of clock buffers 202 to 205, flip-flops (FF) 206 and 207, gate 208, and nets 209 to 218 connecting these blocks will be described as an example. Although the example shown in FIG. 2 shows a part of the logic, the arrangement line processing is performed for the whole. In the example of the logical connection shown in FIG. 2, a path 312 exists as a path between flip-flops.

【0016】ここで、全てのフリップフロップ間パスの
最大遅延時間制限が「20T」(「T」は時間の単
位)、最小遅延時間制限が「5T」である場合を例とし
て、レイアウト処理を行うものとする。
Here, layout processing is performed by taking as an example a case where the maximum delay time limit of all the paths between flip-flops is "20T"("T" is a unit of time) and the minimum delay time limit is "5T". Shall be.

【0017】従来のレイアウト方式を用いた場合、論理
接続情報に基づいて、総配線長の短縮、配線性の向上を
目的とする自動配置配線処理を行った結果、例として、
図3に示すような配置配線結果が得られたとする。ここ
で、従来の方式では、遅延時間制限を特に考慮していな
いので、配置配線後に遅延解析を行った結果から、フリ
ップフロップ(FF)206−フリップフロップ(F
F)207間のパス312が遅延時間は「5T」、また
クロックスキュウは「−1T」になっているとすると、
次式(1)から、最小遅延時間制約に違反する(ホール
ドタイムの規定を満たさない)。
When the conventional layout method is used, automatic placement and routing processing for the purpose of shortening the total wiring length and improving the wiring property is performed based on the logical connection information.
It is assumed that the placement and routing result as shown in FIG. 3 is obtained. Here, in the conventional method, since the delay time limitation is not particularly taken into consideration, the result of the delay analysis after the placement and routing indicates that the flip-flop (FF) 206-the flip-flop (F
F) Assuming that the delay time of the path 312 between 207 is “5T” and the clock skew is “−1T”,
From the following equation (1), the minimum delay time constraint is violated (the hold time is not satisfied).

【0018】 5T+(−1T)=4T < 5T …(1)5T + (− 1T) = 4T <5T (1)

【0019】本発明の一実施形態に係るホールドタイム
エラー除去方式では、図1に示した制御手段101の制
御のもとに、以下の各手段が実行される。
In the hold time error elimination system according to one embodiment of the present invention, the following units are executed under the control of the control unit 101 shown in FIG.

【0020】まず、論理/ライブラリ入力手段102
が、ブロック間の論理接続情報111、ブロックの配置
結果やブロック間接続の配線結果等の物理情報112及
び配置配線結果情報115、遅延解析に必要なブロック
内部遅延や配線遅延計算用パラメータ等の遅延情報11
3を入力する。入力された各情報は、後に説明するよう
に、各手段によって参照/更新される。
First, the logic / library input means 102
Are logical connection information 111 between blocks, physical information 112 such as a block arrangement result and a wiring result of inter-block connection, and arrangement and wiring result information 115, and delays such as internal delays required for delay analysis and parameters for calculating a wiring delay. Information 11
Enter 3. Each input information is referred / updated by each means as described later.

【0021】配置配線結果情報115としては、例えば
図3に示す配置配線結果が入力される。その後、パス遅
延制約入力手段103は、パスの最大遅延時間制約とし
て、この例では「20T」、最小遅延時間制約として
「5T」を、それぞれパス遅延制約情報114として入
力する。
As the placement and routing result information 115, for example, the placement and routing result shown in FIG. 3 is input. Thereafter, the path delay constraint input unit 103 inputs “20T” in this example as the maximum delay time constraint of the path and “5T” as the minimum delay time constraint as path delay constraint information 114.

【0022】次に、パス遅延解析手段104を用いてク
ロックスキュウ算出手段105が、パス接続のある全て
のフリップフロップ間のクロックスキュウを算出する。
Next, the clock skew calculating means 105 calculates the clock skew between all the flip-flops having the path connection by using the path delay analyzing means 104.

【0023】図3に示す例では、クロックドライバ20
1の出力ピンP1からクロックバッファ202、204
を経由してフリップフロップ206のクロック入力ピン
P10に至るパスの遅延時間と、クロックドライバ20
1の出力ピンP1からクロックバッファ203、205
を経由してフリップフロップ207のクロック入力ピン
P16に至るパスの遅延時間を求め、その時間差である
「−1T」をクロックスキュウとして算出する。
In the example shown in FIG.
1 from the output pin P1 to the clock buffers 202 and 204.
And the delay time of the path leading to the clock input pin P10 of the flip-flop 206 via the clock driver 20.
1 from output pin P1 to clock buffers 203 and 205
, The delay time of the path leading to the clock input pin P16 of the flip-flop 207 via the clock is obtained, and “−1T”, which is the time difference, is calculated as the clock skew.

【0024】次に、パス遅延解析手段104を用いてホ
ールドタイムエラー検出手段106が、各フリップフロ
ップ間パスの遅延時間を算出し、クロックスキュウ算出
手段105で求められたクロックスキュウを加算して、
パス遅延制約情報114の最小遅延時間制約と比較する
ことにより、ホールドタイムエラー(最小遅延時間制約
違反)を起こしているパスを検出する。
Next, the hold time error detecting means 106 calculates the delay time of each inter-flip-flop path by using the path delay analyzing means 104, and adds the clock skew obtained by the clock skew calculating means 105.
By comparing with the minimum delay time constraint of the path delay constraint information 114, a path causing a hold time error (a violation of the minimum delay time constraint) is detected.

【0025】図3に示す例では、従来方式の結果とし
て、前述したように、パス312がフリップフロップ2
06−フリップフロップ207間が「5T」、クロック
スキュウ「−1T」で、 5T+(−1T)=4T < 5T となり、ホールドタイムエラーを起こしていることが検
出される。
In the example shown in FIG. 3, as a result of the conventional method, the path 312 is connected to the flip-flop 2 as described above.
In the area between 06 and the flip-flop 207, "5T" and the clock skew "-1T", 5T + (-1T) = 4T <5T, and it is detected that a hold time error has occurred.

【0026】ディレイゲート挿入手段107が、ホール
ドタイムエラーを除去するために必要なディレイゲート
を、遅延情報113を参照して選択し挿入して、論理接
続情報111を更新する。
The delay gate inserting means 107 selects and inserts a delay gate necessary for removing the hold time error with reference to the delay information 113, and updates the logical connection information 111.

【0027】遅延情報113に登録されているディレイ
ゲートが、例えば図4に示すように、複数存在するもの
として、パス312に挿入するディレイゲートとして、
最大遅延時間制限20Tを越えない範囲で且つ最小遅延
時間制限「5T」を満足できるようなディレイゲート4
02が選択され挿入される。ディレイゲート402の回
路遅延時間は「2T」であるため、挿入後のパス312
の遅延時間は、次式(2)から、「6T」となり、ホー
ルドタイムエラーが除去できるものと予想される。
As shown in FIG. 4, for example, as shown in FIG. 4, a plurality of delay gates registered in the delay information 113 are used as delay gates to be inserted into the path 312.
A delay gate 4 that does not exceed the maximum delay time limit 20T and satisfies the minimum delay time limit "5T".
02 is selected and inserted. Since the circuit delay time of the delay gate 402 is “2T”, the path 312 after insertion is
Is (6T) from the following equation (2), and it is expected that the hold time error can be removed.

【0028】 [0028]

【0029】なお、実際の遅延時間は単純に加算できる
ものではなく、更に配置配線後でないと正確に求めるこ
とは難しいため、ある程度余裕をもってディレイゲート
選択は行われることになる。
It should be noted that the actual delay time cannot be simply added, and it is difficult to accurately obtain the delay time only after the placement and routing. Therefore, the delay gate is selected with some margin.

【0030】ここでの予測が失敗しディレイゲート選択
が失敗していることが、以降の処理で検出された場合に
は、再度選択をしなおすことになる。
If it is detected in the subsequent processing that the prediction here has failed and the delay gate selection has failed, the selection is performed again.

【0031】この例では、ディレイゲート挿入手段10
7により、図5に示すように、論理接続情報111が更
新される。
In this example, the delay gate inserting means 10
7, the logical connection information 111 is updated as shown in FIG.

【0032】挿入されたディレイゲート(ここで「ディ
レイゲート」は機能名)402は、「ゲート503」と
いう名称(ブロック名)になり、図2のネット217に
挿入され、ネット217はゲート503をはさんで分割
され、新たにネット501、502が生成される。すな
わち、図5に論理接続情報として示すように、フリップ
フロップ206、207のデータパス間においてゲート
208の後段に遅延時間が「2T」のディレイゲート5
03が挿入される。
The inserted delay gate (here, “delay gate” is a function name) 402 has a name (block name) “gate 503” and is inserted into the net 217 in FIG. The nets 501 and 502 are newly generated by dividing the nets 501 and 502. That is, as shown as logical connection information in FIG. 5, a delay gate 5 having a delay time of “2T” is provided after the gate 208 between the data paths of the flip-flops 206 and 207.
03 is inserted.

【0033】論理接続情報の更新にともなって、配置配
線結果から、図3のネット217の配線結果310は削
除され、図6に示すようなものとなる。
When the logical connection information is updated, the wiring result 310 of the net 217 in FIG. 3 is deleted from the placement and wiring result, and the result is as shown in FIG.

【0034】次に、ディレイゲート配置手段108は、
ディレイゲートとして挿入されたゲート503を、図7
に示すように、ホールドタイムエラーが除去できると予
想される位置に配置する。
Next, the delay gate arrangement means 108
The gate 503 inserted as a delay gate is shown in FIG.
As shown in (2), it is arranged at a position where it is expected that the hold time error can be removed.

【0035】この例では、除去した配線結果310の経
路上に配置しているが、挿入されたディレイゲートの回
路遅延時間が小さい場合には、配線を迂回させるような
位置に配置して遅延を発生することもある。
In this example, the circuit is arranged on the path of the removed wiring result 310. However, if the circuit delay time of the inserted delay gate is short, it is arranged at a position to bypass the wiring to reduce the delay. It can also occur.

【0036】また、図7に示した配置例では、ゲート5
03の配置位置に他のネットの配線は存在しないが、多
のネットの配線等が存在する場合には配線ショートや配
線禁止違反を起こすような配線を削除する。
In the arrangement example shown in FIG.
There is no wiring of other nets at the arrangement position of 03, but if wirings of many nets are present, wirings that cause wiring short-circuits or violation of wiring prohibition are deleted.

【0037】その後、インクリメンタル配線手段109
が、未配線状態となっているネットとして、この場合、
ネット501と502の配線を行い、図8に示すよう
な、ホールドタイムエラーが除去された配線結果80
1、802が得られる。
After that, the incremental wiring means 109
Is an unwired net, in this case,
Wiring of nets 501 and 502 is performed, and as shown in FIG.
1, 802 are obtained.

【0038】図9に、本発明のホールドタイムエラー除
去方式の別の実施形態の構成をブロック図にて示す。図
1に示した前記実施形態との相違点は、仮想配線見積り
手段904が追加され、インクリメンタル配線手段10
9に相当する手段が除去され、配置配線結果情報115
が、配置結果情報915に置き代えられていることであ
る。
FIG. 9 is a block diagram showing the configuration of another embodiment of the hold time error elimination system of the present invention. The difference from the embodiment shown in FIG. 1 is that a virtual wiring estimation unit 904 is added, and the incremental wiring unit 10
9 is removed, and the placement and routing result information 115 is removed.
Is replaced by the arrangement result information 915.

【0039】前記実施形態では、実際の配線結果を用い
てパス遅延解析手段104が遅延解析を行い、最終的に
インクリメンタル配線手段109により配線まで行って
配置配線結果を出力している。
In the above-described embodiment, the path delay analysis means 104 performs a delay analysis using the actual wiring result, and finally the wiring is output by the incremental wiring means 109 to output the arrangement and wiring result.

【0040】これに対して、本実施形態の方式では、配
置のみ実行された結果を用いて、図9に示す仮想配線見
積り手段904が、仮想配線を見積もり、これを用いて
パス遅延解析手段905が遅延解析を行い、クロックス
キュウ算出、ディレイゲートの挿入を行い、その後ディ
レイゲートを配置する。特に、詳細設計に入る前の設計
の初期段階で用いるような方式である。
On the other hand, in the method of the present embodiment, the virtual wiring estimating means 904 shown in FIG. 9 estimates the virtual wiring using the result of only the placement, and uses this to estimate the path delay analyzing means 905. Performs delay analysis, calculates clock skew, inserts a delay gate, and then places a delay gate. In particular, it is a method used in the initial stage of design before entering detailed design.

【0041】[0041]

【発明の効果】以上説明したように、本発明によれば、
ホールドタイムエラーを除去した配置配線結果を自動で
得ることができるという効果を有する。
As described above, according to the present invention,
There is an effect that a placement and routing result from which a hold time error has been removed can be automatically obtained.

【0042】これは、本発明が、クロックスキュウ算出
手段により求められたクロックスキュウを考慮して、パ
ス遅延解析手段が配置配線結果に基づくパス遅延解析を
行い、ホールドタイムエラー検出手段がパスのホールド
タイムエラー(最小遅延時間エラー)を検出し、ディレ
イゲート挿入手段がエラーを起こしているパス上のネッ
トに対して最大遅延時間エラーを起こさない範囲でホー
ルドタイムエラーを回避可能なディレイゲートを選択し
挿入し、ディレイゲート配置手段がそのディレイゲート
をホールドタイムエラー回避可能な位置に配置し、イン
クリメンタル配線手段がディレイゲートの配置によって
変更の必要が生じるネットについて再配線を行う、こと
による。
According to the present invention, the path delay analyzing means performs the path delay analysis based on the placement and routing results in consideration of the clock skew obtained by the clock skew calculating means, and the hold time error detecting means performs the hold of the path. A time error (minimum delay time error) is detected, and the delay gate insertion means selects a delay gate that can avoid a hold time error within a range that does not cause a maximum delay time error for a net on the path where the error occurs. The delay gate placement means places the delay gate at a position where a hold time error can be avoided, and the incremental wiring means performs rewiring for a net that needs to be changed due to the delay gate placement.

【0043】また、本発明によれば、ホールドタイムエ
ラーを改善するために挿入するディレイゲートの追加に
よる配線収容性の悪化は最小限に抑えることができると
いう効果を有する。これは、ホールドタイムエラーを除
去するために必要なディレイゲートのみ挿入するためで
ある。
Further, according to the present invention, there is an effect that the deterioration of the wiring accommodating property due to the addition of the delay gate inserted for improving the hold time error can be minimized. This is because only a delay gate necessary for removing a hold time error is inserted.

【0044】さらに、本発明によれば、ホールドタイム
エラーの除去に要する時間も短く、新たなホールドタイ
ムエラーも発生しないという効果を有する。これは、初
期レイアウト結果に対するインクリメンタルな配置配線
処理を行うためである。
Further, according to the present invention, there is an effect that the time required for removing the hold time error is short and no new hold time error occurs. This is for performing an incremental placement and routing process on the initial layout result.

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

【図1】本発明の一実施形態の構成を示すブロック図で
ある。
FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.

【図2】本発明の一実施形態を説明するための論理接続
情報の例である。
FIG. 2 is an example of logical connection information for describing an embodiment of the present invention.

【図3】図2の論理接続情報について従来技術による配
置配線結果の一例を示す図である。
FIG. 3 is a diagram illustrating an example of a placement and routing result according to a conventional technique for the logical connection information of FIG. 2;

【図4】本発明の一実施形態を説明するための図であ
り、ディレイゲート挿入手段が選択し挿入するディレイ
ゲートの一例を示す図ある。
FIG. 4 is a diagram for explaining an embodiment of the present invention, and is a diagram illustrating an example of a delay gate that is selected and inserted by a delay gate inserting unit.

【図5】本発明の一実施形態を説明するための図であ
り、図2の論理接続情報に対して、本発明の一実施形態
におけるディレイゲート挿入手段によりディレイゲート
が挿入された結果の論理接続情報の例を示す図である。
FIG. 5 is a diagram for explaining an embodiment of the present invention. FIG. 5 is a diagram illustrating a logic of a result of inserting a delay gate by the delay gate inserting unit according to the embodiment of the present invention with respect to the logical connection information of FIG. FIG. 7 is a diagram illustrating an example of connection information.

【図6】本発明の一実施形態を説明するための図であ
り、本発明の一実施形態におけるディレイゲート挿入手
段が削除した配線結果の例を示す図である。
FIG. 6 is a diagram for explaining one embodiment of the present invention, and is a diagram showing an example of a wiring result deleted by the delay gate inserting unit in one embodiment of the present invention.

【図7】本発明の一実施形態を説明するための図であ
り、本発明の一実施形態におけるディレイゲート配置手
段がディレイゲートを配置した配置結果の例を示す図で
ある。
FIG. 7 is a diagram for explaining an embodiment of the present invention, and is a diagram showing an example of an arrangement result in which delay gates are arranged by a delay gate arranging unit in one embodiment of the present invention;

【図8】本発明の一実施形態を説明するための図であ
り、本発明の一実施形態におけるインクリメンタル配線
手段による配線結果の例を示す図である。
FIG. 8 is a diagram for explaining one embodiment of the present invention, and is a diagram showing an example of a wiring result by the incremental wiring means in one embodiment of the present invention.

【図9】本発明の別の実施形態の構成を示すブロック図
である。
FIG. 9 is a block diagram showing a configuration of another embodiment of the present invention.

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

101 制御手段 102 論理/ライブラリ入力手段 103 パス遅延制約入力手段、 104 パス遅延解析手段 105 クロックスキュウ算出手段 106 ホールドタイムエラー検出手段 107 ディレイゲート挿入手段 108 ディレイゲート配置手段 109 インクリメンタル配線手段 110 配置配線結果出力手段 112 物理情報 113 遅延情報 114 パス遅延制約情報 115 配置配線結果情報 201 クロックドライバ 202〜205 クロックバッファ 206、207 フリップフロップ 208 ゲート 211〜217 ネット 301〜306、308〜311 配線結果 312 パス 401〜404 ディレイゲート 503 ゲート 801、802 配線結果 904 仮想配線見積もり手段 Reference Signs List 101 control means 102 logic / library input means 103 path delay constraint input means 104 path delay analysis means 105 clock skew calculation means 106 hold time error detection means 107 delay gate insertion means 108 delay gate placement means 109 incremental wiring means 110 placement / wiring results Output means 112 Physical information 113 Delay information 114 Path delay constraint information 115 Arrangement and wiring result information 201 Clock driver 202 to 205 Clock buffer 206, 207 Flip-flop 208 Gate 211 to 217 Net 301 to 306, 308 to 311 Wiring result 312 Path 401 to 401 404 delay gate 503 gate 801, 802 wiring result 904 virtual wiring estimation means

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】LSI、PWB等のレイアウト設計におい
て、 回路を構成するブロック間の論理接続情報、ブロックの
配置結果やブロック間接続の配線結果の物理情報、遅延
解析に必要なブロック内部遅延や配線遅延計算用パラメ
ータ等の遅延情報を入力する論理/ライブラリ入力手段
と、 回路の目標性能を規定するパスの、最小遅延時間制限、
及び最大遅延時間制限からなる、遅延時間制限値を入力
するパス遅延制約入力手段と、 パスの遅延解析を行うパス遅延解析手段と、 クロックネットを構成するパスを抽出し前記パス遅延解
析手段を用いてクロックスキュウを求めるクロックスキ
ュウ算出手段と、 前記パス遅延解析手段を用いて、前記クロックスキュウ
算出手段により求められたクロックスキュウを考慮した
パス遅延解析を行いホールドタイムエラー(すなわち最
小遅延時間エラー)を起こしているパスを検出するホー
ルドタイムエラー検出手段と、 前記ホールドタイムエラー検出手段により検出されたホ
ールドタイムエラーを起こしているパス上のネットに対
して、最大遅延時間エラーを起こさない範囲でホールド
タイムエラーを除去可能なディレイゲートを選択し挿入
するディレイゲート挿入手段と、 前記ディレイゲート挿入手段により挿入されたディレイ
ゲートをホールドタイムエラー回避可能な位置に配置す
るディレイゲート配置手段と、 挿入されたディレイゲートの配置によって変更の必要が
生じるネットについて再配線を行うインクリメンタル配
線手段と、 配置配線結果を出力する出力手段と、 前記各手段を制御する制御手段と、 を有することを特徴とするホールドタイムエラー除去方
式。
1. In a layout design of an LSI, a PWB or the like, logical connection information between blocks constituting a circuit, physical information of a block arrangement result and a wiring result of connection between blocks, a block internal delay and wiring required for delay analysis. Logic / library input means for inputting delay information such as delay calculation parameters, minimum delay time limitation of a path for defining a target performance of a circuit,
Path delay constraint input means for inputting a delay time limit value, and a maximum delay time limit; a path delay analysis means for performing path delay analysis; and a path for forming a clock net and extracting the path by using the path delay analysis means. A clock skew calculating means for obtaining a clock skew, and a path delay analysis in consideration of the clock skew obtained by the clock skew calculating means by using the path skew calculating means, and a hold time error (ie, a minimum delay time error). Hold time error detecting means for detecting a path that has caused a hold time error, and a hold time within a range that does not cause a maximum delay time error with respect to a net on a path having a hold time error detected by the hold time error detecting means. Select and insert a delay gate that can eliminate errors Delay gate inserting means, delay gate arranging means for arranging the delay gate inserted by the delay gate inserting means at a position where a hold time error can be avoided, and a net which needs to be changed depending on the arrangement of the inserted delay gate. A hold time error elimination method comprising: an incremental wiring means for performing rewiring; an output means for outputting a placement and routing result; and a control means for controlling each of the means.
【請求項2】前記論理/ライブラリ入力手段が、ブロッ
ク間接続の配線結果を入力しない場合において、 配置結果から各ネットの仮想配線を見積る仮想配線見積
り手段と、 前記仮想配線を用いてパスの遅延解析を行うパス遅延解
析手段と、を有し、 インクリメンタル配線手段を用いないで配置結果のみを
出力することを特徴とする請求項1記載のホールドタイ
ムエラー除去方式。
2. A virtual wiring estimating means for estimating a virtual wiring of each net from an arrangement result when the logic / library input means does not input a wiring result of inter-block connection, and a path delay using the virtual wiring. 2. The hold time error elimination method according to claim 1, further comprising a path delay analysis unit for performing an analysis, and outputting only the arrangement result without using the incremental wiring unit.
【請求項3】LSI、PWB等のレイアウトの設計方式
において、論理回路の配置及び配線結果から抽出された
クロック分配系回路のフリップフロップ間におけるクロ
ックパスの遅延解析から求めたクロックスキュウと、該
フリップフロップ間のデータパスの遅延時間と、から、
予め定めた最小遅延時間違反(「ホールドタイムエラ
ー」という)であるか否かを判定し、 ホールドタイムエラーが検出されたパスについて予め登
録されている複数の遅延ゲートの中から該ホールドタイ
ムエラーを解消すると共に予め定めた最大遅延時間制約
を満たすような遅延ゲートを選択して対応する論理接続
上のネットに挿入し、 この論理接続情報の更新に伴い更新される配線及び配置
結果に対して、該遅延ゲートを該ホールドタイムエラー
を回避可能な位置に自動配置し、インクリメンタル配線
手段により該遅延ゲートの配置によって変更の必要が生
じるネットについて再配線を行うことにより、ホールド
タイムエラーが除去された配置及び配線結果を自動で出
力することを特徴とするホールドタイムエラー除去方
法。
3. A clock skew obtained from a delay analysis of a clock path between flip-flops of a clock distribution system circuit extracted from a result of arrangement and wiring of a logic circuit in a layout design method of an LSI, a PWB, or the like; And the delay time of the data path between
It is determined whether or not a predetermined minimum delay time is violated (referred to as “hold time error”), and the hold time error is determined from a plurality of delay gates registered in advance for the path where the hold time error is detected. Select a delay gate that resolves and satisfies the predetermined maximum delay time constraint and inserts it into the net on the corresponding logical connection. The delay gate is automatically arranged at a position where the hold time error can be avoided, and the incremental wiring means performs rewiring for a net that needs to be changed due to the arrangement of the delay gate, thereby eliminating the hold time error. And a method of automatically outputting a wiring result.
【請求項4】LSI、PWB等のレイアウトの設計方式
において、論理回路の配置結果から仮想配線に基づきク
ロック分配系回路のフリップフロップ間におけるクロッ
クパスの遅延解析から求めたクロックスキュウと、該フ
リップフロップ間のデータパスの遅延時間と、から、予
め定めた最小遅延時間違反(「ホールドタイムエラー」
という)であるか否かを判定し、 ホールドタイムエラーが検出されたパスについて予め登
録された複数の遅延ゲートの中から該ホールドタイムエ
ラーを解消すると共に予め定めた最大遅延時間制約を満
たすように遅延ゲートを選択して対応する論理接続上の
ネットに挿入すると共に、該遅延ゲートを該ホールドタ
イムエラーを回避可能な位置に自動配置することを特徴
とするホールドタイムエラー除去方法。
4. A clock skew obtained from a delay analysis of a clock path between flip-flops of a clock distribution system circuit based on virtual wiring from a layout result of a logic circuit in a layout design method of an LSI, a PWB or the like, and From the delay time of the data path between, the violation of the predetermined minimum delay time ("hold time error"
Is determined, and the hold time error is eliminated from a plurality of delay gates registered in advance for the path where the hold time error is detected, and the predetermined maximum delay time constraint is satisfied. A method for removing a hold time error, wherein a delay gate is selected and inserted into a net on a corresponding logical connection, and the delay gate is automatically arranged at a position where the hold time error can be avoided.
JP8048017A 1996-02-09 1996-02-09 Hold time error elimination method and method Expired - Fee Related JP2924766B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8048017A JP2924766B2 (en) 1996-02-09 1996-02-09 Hold time error elimination method and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8048017A JP2924766B2 (en) 1996-02-09 1996-02-09 Hold time error elimination method and method

Publications (2)

Publication Number Publication Date
JPH09218888A JPH09218888A (en) 1997-08-19
JP2924766B2 true JP2924766B2 (en) 1999-07-26

Family

ID=12791551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8048017A Expired - Fee Related JP2924766B2 (en) 1996-02-09 1996-02-09 Hold time error elimination method and method

Country Status (1)

Country Link
JP (1) JP2924766B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651224B1 (en) 1998-01-26 2003-11-18 Fujitsu Limited Method of optimizing signal lines within circuit, optimizing apparatus, recording medium having stored therein optimizing program, and method of designing circuit and recording medium having stored therein program for designing circuit
FR2789247B1 (en) * 1999-01-28 2004-10-15 St Microelectronics Sa MODULAR ELECTRONIC CIRCUIT WITH IMPROVED SYNCHRONIZATION
KR100532946B1 (en) * 2001-12-24 2005-12-02 주식회사 하이닉스반도체 Circuit for delaying an input signal differently with respect to a clock signal
US7096442B2 (en) * 2003-07-10 2006-08-22 Lsi Logic Corporation Optimizing IC clock structures by minimizing clock uncertainty
JP4473163B2 (en) * 2005-03-18 2010-06-02 富士通マイクロエレクトロニクス株式会社 How to eliminate scan chain hold errors

Also Published As

Publication number Publication date
JPH09218888A (en) 1997-08-19

Similar Documents

Publication Publication Date Title
US6543041B1 (en) Method and apparatus for reducing signal integrity and reliability problems in ICS through netlist changes during placement
JP2882359B2 (en) Layout design equipment
JP4237434B2 (en) Integrated circuit hold time error correction method and correction program therefor
US5825661A (en) Method and apparatus for automatic post-layout optimization of an integrated circuit
JPH1140677A (en) System and method for improving crosstalk error
US11574101B2 (en) Techniques for providing optimizations based on categories of slack in timing paths
US7047504B2 (en) Method and program for designing semiconductor integrated circuits to optimize clock skews on plurality of clock paths
JP2924766B2 (en) Hold time error elimination method and method
US20060236281A1 (en) Logic circuit design method, computer-readable recording medium having logic circuit design program stored therein, and logic circuit design device
US20040216069A1 (en) Method of designing low-power semiconductor integrated circuit
US6230302B1 (en) Method and system for performing timing analysis on an integrated circuit design
US8312403B2 (en) Method of achieving convergence of hold time error, device and program therefor
JP4015807B2 (en) Timing-driven layout method
US5999715A (en) Circuit delay optimizing using circuit arrangement, layout information, and wiring delay information
US7051312B1 (en) Upper-bound calculation for placed circuit design performance
JPWO2004046975A1 (en) Electronic circuit design timing improvement method, program and apparatus
JP3077617B2 (en) Delay simulator
JP2904270B2 (en) Crosstalk error suppression method
JPH09330339A (en) Automatic description dividing device
JP2000150659A (en) Method for designing layout of semiconductor integrated circuit device
JP3230234B2 (en) A delay adjustment method for a semiconductor integrated circuit, a delay adjustment circuit block, and a recording medium.
JP2003256488A (en) Method for layout of lsi, program, and recording medium
JP2000231583A (en) Method and device for logical synthesis
JP2822741B2 (en) Clock wiring design method
JP4806535B2 (en) Spare cell set placement method

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990406

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

Free format text: PAYMENT UNTIL: 20090507

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100507

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110507

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20110507

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120507

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees