JP2015191393A - timing constraint setting method - Google Patents

timing constraint setting method Download PDF

Info

Publication number
JP2015191393A
JP2015191393A JP2014067498A JP2014067498A JP2015191393A JP 2015191393 A JP2015191393 A JP 2015191393A JP 2014067498 A JP2014067498 A JP 2014067498A JP 2014067498 A JP2014067498 A JP 2014067498A JP 2015191393 A JP2015191393 A JP 2015191393A
Authority
JP
Japan
Prior art keywords
timing
timing constraint
path
setting method
violation
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.)
Abandoned
Application number
JP2014067498A
Other languages
Japanese (ja)
Inventor
哲弥 山中
Tetsuya Yamanaka
哲弥 山中
佳記 月星
Kaki Tsukihoshi
佳記 月星
聖恵 山澤
Masae Yamazawa
聖恵 山澤
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 JP2014067498A priority Critical patent/JP2015191393A/en
Publication of JP2015191393A publication Critical patent/JP2015191393A/en
Abandoned legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a timing constraint setting method capable of reducing the amount of low threshold cells used.SOLUTION: The timing constraint setting method of an embodiment includes: performing provisional placement using only the high threshold cells of a cell library 12 on the basis of the clock skew distribution set forth in an inputted timing constraint 11, with a value derived by subtracting an improvement in speed due to low threshold cells as a margin 13 from an original clock cycle being a layout clock cycle (step S1); verifying the timing of a signal propagation path on the basis of the result of provisional placement (step S2); extracting a path for which timing violation was detected by the timing verification (step S3); analyzing details of delay propagation relating to the detected path (step S4); and calculating a clock skew amount distributed to a signal propagation path relating to the detected path and updating the timing constraint 11 on the basis of the analysis result and outputting a timing constraint 21 for definite placement (step S5).

Description

本発明の実施形態は、タイミング制約設定方法に関する。   Embodiments described herein relate generally to a timing constraint setting method.

半導体集積回路のレイアウト工程では、論理合成段階で見積もられたタイミング制約にもとづいて、セルの自動配置、クロックツリーの生成、自動配線が、実行される。このとき、与えられたタイミング制約を満足するレイアウトが行われれば、レイアウト後のタイミング検証において、タイミング違反は発生しない。   In the layout process of a semiconductor integrated circuit, automatic placement of cells, generation of a clock tree, and automatic wiring are executed based on timing constraints estimated at the logic synthesis stage. At this time, if the layout satisfying the given timing constraint is performed, the timing violation does not occur in the timing verification after the layout.

しかし、論理合成段階での見積もりの精度は高くないので、レイアウト後のタイミング検証において、タイミング違反が発生することがある。タイミング違反が発生した場合、その対策の1つとして、高閾値セルを低閾値セルに置換することが行われる。低閾値セルは、低閾値のトランジスタで構成されるため、セルの動作速度が向上する。   However, since the accuracy of estimation at the logic synthesis stage is not high, timing violation may occur in timing verification after layout. When a timing violation occurs, as one of countermeasures, a high threshold cell is replaced with a low threshold cell. Since the low threshold cell is composed of a low threshold transistor, the operation speed of the cell is improved.

ただし、低閾値のトランジスタはリーク電流が多いため、低閾値セルを多用すると、半導体集積回路の消費電流が増大する、という問題が生じる。   However, since a low threshold transistor has a large leakage current, when a large number of low threshold cells are used, there is a problem that the current consumption of the semiconductor integrated circuit increases.

特開2003−16130号公報JP 2003-16130 A

本発明が解決しようとする課題は、低閾値セルの使用量を少なくすることのできるタイミング制約設定方法を提供することにある。   The problem to be solved by the present invention is to provide a timing constraint setting method capable of reducing the amount of low threshold cell usage.

実施形態のタイミング制約設定方法は、低閾値セルによる速度向上分をマージンとして本来のクロック周期から差し引いた値をレイアウト用クロック周期とし、入力されたタイミング制約に記載のクロックスキュー配分にもとづいて高閾値セルのみを使用して仮配置を行う。前記仮配置の結果にもとづいて信号伝搬経路のタイミング検証を行う。前記タイミング検証によりタイミング違反が検出された経路を抽出する。前記抽出された経路に関係する遅延伝搬の詳細を解析する。前記解析の結果にもとづいて前記抽出された経路に関連する信号伝搬経路に配分するクロックスキュー量を算出して前記タイミング制約の更新を行い、本配置用タイミング制約を出力する。   In the timing constraint setting method according to the embodiment, the value obtained by subtracting from the original clock cycle with the speed improvement due to the low threshold cell as a margin is used as the clock cycle for layout, and the high threshold is set based on the clock skew distribution described in the input timing constraint. Temporary placement is performed using only cells. Based on the result of the temporary arrangement, the timing of the signal propagation path is verified. A path where a timing violation is detected by the timing verification is extracted. The details of delay propagation related to the extracted path are analyzed. Based on the result of the analysis, the amount of clock skew to be distributed to the signal propagation path related to the extracted path is calculated, the timing constraint is updated, and the actual placement timing constraint is output.

第1の実施形態のタイミング制約設定方法の処理手順の例を示すフローチャート。5 is a flowchart illustrating an example of a processing procedure of a timing constraint setting method according to the first embodiment. 第1の実施形態のタイミング制約設定方法におけるマージンを説明するための図。The figure for demonstrating the margin in the timing constraint setting method of 1st Embodiment. 第1の実施形態のタイミング制約設定方法のクロックスキュー調整の例を示す図。FIG. 5 is a diagram illustrating an example of clock skew adjustment in the timing constraint setting method according to the first embodiment. 第2の実施形態のタイミング制約設定方法を説明するための図。The figure for demonstrating the timing constraint setting method of 2nd Embodiment. 第2の実施形態のタイミング制約設定方法を説明するための図。The figure for demonstrating the timing constraint setting method of 2nd Embodiment. 第3の実施形態のタイミング制約設定方法を説明するための図。The figure for demonstrating the timing constraint setting method of 3rd Embodiment. 第4の実施形態のタイミング制約設定方法を説明するための図。The figure for demonstrating the timing constraint setting method of 4th Embodiment.

以下、本発明の実施の形態について図面を参照して説明する。なお、図中、同一または相当部分には同一の符号を付して、その説明は繰り返さない。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and the description thereof will not be repeated.

(第1の実施形態)
本実施形態のタイミング制約設定方法の概要を述べると、まず、例えば論理合成段階で見積もられたタイミング制約にもとづいて、高閾値セルのみで仮配置を行い、その仮配置結果からタイミング制約違反が発生した信号伝搬経路を抽出する。その後、その違反が極力解消するように信号伝搬経路に分配するクロックスキュー量を算出してタイミング制約を更新し、本配置用のタイミング制約を生成する。
(First embodiment)
The outline of the timing constraint setting method of this embodiment will be described. First, for example, based on the timing constraint estimated in the logic synthesis stage, provisional placement is performed only with high threshold cells, and the timing constraint violation is found from the provisional placement result. The generated signal propagation path is extracted. Thereafter, the clock skew amount distributed to the signal propagation path is calculated so as to eliminate the violation as much as possible, the timing constraint is updated, and the timing constraint for the actual placement is generated.

本実施形態のタイミング制約設定方法の詳細について、図1および図2を用いて説明する。図1は、本実施形態のタイミング制約設定方法の処理手順の例を示すフローチャートであり、図2は、本実施形態の仮配置で使用するマージンを説明するための図である。   Details of the timing constraint setting method of the present embodiment will be described with reference to FIGS. FIG. 1 is a flowchart showing an example of a processing procedure of the timing constraint setting method of the present embodiment, and FIG. 2 is a diagram for explaining a margin used in the temporary arrangement of the present embodiment.

図1に示すフローチャートでは、まず、入力されたタイミング制約11に記載のクロックスキュー配分にもとづいて、セルライブラリ12に登録されているセルの中の高閾値セルのみを使用して仮配置を行う(ステップS1)。   In the flowchart shown in FIG. 1, first, provisional placement is performed using only the high threshold cells among the cells registered in the cell library 12 based on the clock skew distribution described in the input timing constraint 11 ( Step S1).

このとき、本実施形態では、高閾値セルを低閾値セルへ置換したときに見込める速度向上分をマージン13として予め算出しておき、本来のクロック周期からこのマージン13を差し引いた値をレイアウト用周期として用いる。   At this time, in this embodiment, the speed improvement expected when the high threshold cell is replaced with the low threshold cell is calculated in advance as the margin 13, and a value obtained by subtracting the margin 13 from the original clock cycle is used as the layout cycle. Used as

図2に、このマージン13の算出方法の例を示す。   FIG. 2 shows an example of a method for calculating the margin 13.

図2(a)に示すように、高閾値セルHTC1の入出力間の遅延時間をdT1、低閾値セルLTC1の入出力間の遅延時間をdT2とすると、高閾値セルHTC1を低閾値セルLTC1へ置換したときの速度向上率SPは、
SP=(dT1−dT2)/dT1
と表される。
As shown in FIG. 2A, when the delay time between the input and output of the high threshold cell HTC1 is dT1, and the delay time between the input and output of the low threshold cell LTC1 is dT2, the high threshold cell HTC1 is changed to the low threshold cell LTC1. The speed improvement rate SP at the time of replacement is
SP = (dT1-dT2) / dT1
It is expressed.

例えば、dT1=100ps、dT2=80psである場合、
SP=(100−80)/100=20/100=0.2
すなわち、速度向上率SPは20%となる。
For example, when dT1 = 100 ps and dT2 = 80 ps,
SP = (100-80) /100=20/100=0.2
That is, the speed improvement rate SP is 20%.

そこで、本実施形態では、半導体集積回路の本来のクロック周期T0に速度向上率SPを掛け合わせた値をマージン13として算出する。このマージン13の値をMとすると、
M=SP×T0
と表される。
Therefore, in this embodiment, a value obtained by multiplying the original clock cycle T0 of the semiconductor integrated circuit by the speed improvement rate SP is calculated as the margin 13. If the value of this margin 13 is M,
M = SP × T0
It is expressed.

ステップS1の仮配置では、本来のクロック周期T0からマージン13を差し引いた値をレイアウト用周期Tとして用いる。   In the temporary arrangement in step S1, a value obtained by subtracting the margin 13 from the original clock period T0 is used as the layout period T.

図2(b)に、本来のクロック周期T0とレイアウト用周期Tの関係を示す。レイアウト用周期Tは、マージン13の値をMとすると、
T=T0−M
と表される。
FIG. 2B shows the relationship between the original clock period T0 and the layout period T. The layout cycle T has a margin 13 value of M,
T = T0-M
It is expressed.

すなわち、配置処理を行うレイアウト装置にとっては、高閾値セルしか使用しないステップS1の仮配置は、タイミング的には最も厳しい条件での配置処理となる。そのため、レイアウト装置は、高閾値セルの駆動能力を最大限に引き出すようなセル配置の最適化処理を行う。   That is, for the layout apparatus that performs the placement process, the provisional placement in step S1 in which only the high threshold cell is used is the placement process under the strictest condition in terms of timing. Therefore, the layout apparatus performs a cell arrangement optimization process that maximizes the driving capability of the high threshold cell.

図1のフローに戻って、次に、ステップS1の仮配置の結果にもとづいて信号伝搬経路のタイミング検証を行い(ステップS2)、タイミング違反が検出された経路を抽出する(ステップS3)。   Returning to the flow of FIG. 1, next, the timing of the signal propagation path is verified based on the result of the temporary arrangement in step S1 (step S2), and the path where the timing violation is detected is extracted (step S3).

上述したように、ステップS1の仮配置では高閾値セルの駆動能力を最大限に引き出すような配置が行われている。そのため、ステップS3で抽出された経路は、高閾値セルだけではタイミング仕様を満たすことのできない経路である。本実施形態では、このような経路を、1回の仮配置で総て抽出することができる。   As described above, in the temporary placement in step S1, placement is performed so as to maximize the drive capability of the high threshold cell. Therefore, the route extracted in step S3 is a route that cannot satisfy the timing specification only by the high threshold cell. In the present embodiment, all such routes can be extracted by one temporary arrangement.

次に、ステップS3で抽出された経路に関係する遅延伝搬の詳細を解析する(ステップS4)。   Next, details of delay propagation related to the path extracted in step S3 are analyzed (step S4).

上述したように、ステップS3で抽出された経路は、高閾値セルだけではタイミング仕様を満たすことのできない経路であるが、その前後には、タイミング的に余裕のある経路が存在する場合がある。その場合、タイミング違反が検出された経路の前後の経路まで含めてクロックタイミングを調整することにより、タイミング違反の解消もしくはタイミング違反量の減少を図ることができる。   As described above, the route extracted in step S3 is a route that cannot satisfy the timing specification only with the high threshold cell, but there may be a route with sufficient timing before and after the route. In that case, the timing violation can be eliminated or the amount of timing violation can be reduced by adjusting the clock timing including the paths before and after the path where the timing violation is detected.

そこで、ステップS4では、ステップS3で抽出された経路およびその前後の経路の遅延の伝搬の様子を詳細に解析する。   Therefore, in step S4, the propagation state of the delay of the route extracted in step S3 and the route before and after the route is analyzed in detail.

次に、ステップS4の解析の結果にもとづいて、ステップS3で抽出された経路に関連する信号伝搬経路に配分するクロックスキュー量を算出してタイミング制約12の更新を行い、本配置用タイミング制約21を出力する(ステップS5)。   Next, based on the result of the analysis in step S4, the clock skew amount to be distributed to the signal propagation path related to the path extracted in step S3 is calculated, the timing constraint 12 is updated, and the actual placement timing constraint 21 is obtained. Is output (step S5).

本配置用タイミング制約21には、仮配置でタイミング違反が検出された経路のクロックスキュー量を調整したタイミング制約が記載されている。そのため、この本配置用タイミング制約21を用いることにより、本配置でのタイミング違反の発生を少なくすることができる。   The actual placement timing constraint 21 describes a timing constraint in which the clock skew amount of the path where the timing violation is detected in the temporary placement is adjusted. Therefore, by using the main arrangement timing constraint 21, the occurrence of timing violations in the main arrangement can be reduced.

次に、図3(a)に示す回路を例にとって、本実施形態のタイミング制約設定方法によるクロックスキュー調整の例を示す。   Next, taking the circuit shown in FIG. 3A as an example, an example of clock skew adjustment by the timing constraint setting method of this embodiment will be described.

図3(a)に示す回路では、レジスタセルREG1とレジスタセルREG2との間に論理回路やメモリなどのセルCT1が接続されて信号伝搬の経路path1が形成され、レジスタセルREG2とレジスタセルREG3との間に論理回路やメモリなどのセルCT2が接続されて信号伝搬の経路path2が形成されている。   In the circuit shown in FIG. 3A, a cell CT1 such as a logic circuit or a memory is connected between the register cell REG1 and the register cell REG2 to form a signal propagation path path1, and the register cell REG2 and the register cell REG3 Between these, a cell CT2 such as a logic circuit or a memory is connected to form a signal propagation path path2.

レジスタセルREG1、REG2、REG3には、それぞれ、クロック信号CK1、CK2、CK3が入力されている。ここでは、このクロック信号CK1、CK2、CK3に対して、タイミング制約11として、クロックスキューskew1、skew2、skew3が、それぞれ設定されているものとする。   Clock signals CK1, CK2, and CK3 are input to the register cells REG1, REG2, and REG3, respectively. Here, it is assumed that clock skews skew1, skew2, and skew3 are set as timing constraints 11 for the clock signals CK1, CK2, and CK3, respectively.

図3(b)〜図3(d)に、図3(a)に示した回路に対して図1のフローを実行したときのクロックスキュー調整の例を示す。   FIGS. 3B to 3D show examples of clock skew adjustment when the flow of FIG. 1 is executed on the circuit shown in FIG.

図3(b)に示す例は、図1のフローのステップS3のタイミング違反経路の抽出により、レジスタセルREG2の前段の経路path1にタイミング違反が検出された例である。   The example shown in FIG. 3B is an example in which the timing violation is detected in the path path1 in the previous stage of the register cell REG2 by the extraction of the timing violation path in step S3 of the flow of FIG.

この場合、ステップS4における詳細解析では、タイミング違反のない後段の経路path2も含めて、タイミングの余裕度を解析する。その結果、経路path1の余裕度が−s1、経路path2の余裕度が+s2であることが判明する。ここで、余裕度の負号(−)は、タイミング不足であることを示す。   In this case, in the detailed analysis in step S4, the margin of timing is analyzed including the subsequent path path2 in which there is no timing violation. As a result, it is found that the path path1 has a margin of -s1, and the path path2 has a margin of + s2. Here, the negative sign (−) of the margin indicates that the timing is insufficient.

この解析結果にもとづいて、ステップS5では、レジスタセルREG2のクロック信号CK2のスキュー量を調整する。このとき、ステップS5の処理は、レジスタセルREG2の後段の余裕度s2と前段の余裕度s1(不足量)との大小に応じて、調整するスキュー量を変える。   Based on the analysis result, in step S5, the skew amount of the clock signal CK2 of the register cell REG2 is adjusted. At this time, in the process of step S5, the skew amount to be adjusted is changed according to the size of the margin s2 at the subsequent stage of the register cell REG2 and the margin s1 (insufficient amount) at the preceding stage.

すなわち、s2≧s1の場合は、クロック信号CK2のスキュー量をskew2+s1に調整する。これにより、前段の余裕度がs1増加し、前段の経路path1のタイミング違反は解消する。このとき、後段の余裕度はs1減少するが、それでも後段の経路path2には、まだ(s2−s1)の余裕がある。   That is, when s2 ≧ s1, the skew amount of the clock signal CK2 is adjusted to skew2 + s1. As a result, the margin of the previous stage is increased by s1, and the timing violation of the path path1 of the previous stage is solved. At this time, the margin of the subsequent stage is decreased by s1, but the path path2 of the subsequent stage still has a margin of (s2-s1).

一方、s2<s1の場合は、クロック信号CK2のスキュー量をskew2+s2に調整する。この場合、前段の経路path1のタイミング違反は残るが、その違反量は(s1−s2)に減少する。また、後段の経路path2は余裕度が0になるが、タイミング違反は発生しない。   On the other hand, when s2 <s1, the skew amount of the clock signal CK2 is adjusted to skew2 + s2. In this case, the timing violation of the previous path path1 remains, but the amount of violation decreases to (s1-s2). Further, the path path2 in the subsequent stage has a margin of 0, but no timing violation occurs.

図3(c)に示す例は、レジスタセルREG2の後段の経路path2にタイミング違反が検出された例である。   The example shown in FIG. 3C is an example in which a timing violation is detected in the path path2 subsequent to the register cell REG2.

この場合、経路path1の余裕度が+s1、経路path2の余裕度が−s2であるとすると、ステップS5でのスキュー量の調整は、次のように行われる。   In this case, assuming that the margin of the path path1 is + s1 and the margin of the path path2 is -s2, the skew amount is adjusted in step S5 as follows.

すなわち、s1≧s2の場合は、クロック信号CK2のスキュー量をskew2−s2に調整し、s1<s2の場合は、クロック信号CK2のスキュー量をskew2−s1に調整する。   That is, when s1 ≧ s2, the skew amount of the clock signal CK2 is adjusted to skew2-s2, and when s1 <s2, the skew amount of the clock signal CK2 is adjusted to skew2-s1.

s1≧s2の場合、クロック信号CK2のスキュー量をskew2−s2に調整することにより、経路path2のタイミング違反が解消し、s1<s2の場合、クロック信号CK2のスキュー量をskew2−s1に調整することにより、経路path2のタイミング違反量が(s2−s1)に減少する。   When s1 ≧ s2, the skew of the clock signal CK2 is adjusted to skew2-s2, thereby eliminating the timing violation of the path path2, and when s1 <s2, the skew of the clock signal CK2 is adjusted to skew2-s1. As a result, the timing violation amount of the path path2 is reduced to (s2-s1).

図3(d)に示す例は、レジスタセルREG2の前段の経路path1、後段の経路path2ともにタイミング違反が検出された例である。   The example shown in FIG. 3D is an example in which a timing violation is detected in both the path path1 in the preceding stage and the path path2 in the subsequent stage of the register cell REG2.

この場合、クロック信号CK2のスキュー量を調整してもどちらのタイミング違反も解消しない。そこで、この場合、ステップS5での処理は、経路path1と経路path2のタイミング違反量が均等になるように、クロック信号CK2のスキュー量を調整する。   In this case, neither timing violation is eliminated even if the skew amount of the clock signal CK2 is adjusted. Therefore, in this case, the process in step S5 adjusts the skew amount of the clock signal CK2 so that the timing violation amounts of the path path1 and the path path2 are equal.

そのとき、経路path1の余裕度が−s1、経路path2の余裕度が−s2であるとすると、ステップS5でのスキュー量の調整は、次のように行われる。   At this time, assuming that the margin of the path path1 is −s1 and the margin of the path path2 is −s2, the adjustment of the skew amount in step S5 is performed as follows.

すなわち、s2≧s1の場合は、クロック信号CK2のスキュー量をskew2−(s2−s1)/2に調整し、s1<s2の場合は、クロック信号CK2のスキュー量をskew2+(s1−s2)/2に調整する。   That is, when s2 ≧ s1, the skew amount of the clock signal CK2 is adjusted to skew2- (s2-s1) / 2, and when s1 <s2, the skew amount of the clock signal CK2 is skew2 + (s1-s2) / Adjust to 2.

例えば、s1=1、s2=3、すなわち、経路path1のタイミング違反量が1、経路path2のタイミング違反量が3の場合、クロック信号CK2のスキュー量は,
skew2−(3−1)/2=skew2−1
と調整され、クロック信号CK2が1だけ早くなる。これにより、経路path1、経路path2のタイミング違反量はともに2となる。
For example, when s1 = 1 and s2 = 3, that is, the timing violation amount of the path path1 is 1 and the timing violation amount of the path path2 is 3, the skew amount of the clock signal CK2 is
skew2- (3-1) / 2 = skew2-1
And the clock signal CK2 is advanced by 1. As a result, the timing violation amounts of the path path1 and the path path2 are both 2.

逆に、s1=3、s2=1の場合、クロック信号CK2のスキュー量は,
skew2+(3−1)/2=skew2+1
と調整され、クロック信号CK2が1だけ遅くなる。これにより、経路path1、経路path2のタイミング違反量はともに2となる。
Conversely, when s1 = 3 and s2 = 1, the skew amount of the clock signal CK2 is
skew2 + (3-1) / 2 = skew2 + 1
And the clock signal CK2 is delayed by 1. As a result, the timing violation amounts of the path path1 and the path path2 are both 2.

このように2つの経路のタイミング違反量を均等化することにより、タイミング違反量が大きな経路を減らすことができ、本配置実行後のタイミング違反対策が容易になる。   By equalizing the timing violation amounts of the two routes in this way, it is possible to reduce routes having a large timing violation amount, and it becomes easy to take a countermeasure against timing violation after execution of this arrangement.

このような本実施形態によれば、低閾値セルによる速度向上分をマージンとして本来のクロック周期から差し引いたレイアウト用クロック周期を用いて高閾値セルのみにて仮配置を行う。そのため、高閾値セルの駆動能力が最大限に引き出され、高閾値セルだけではタイミング仕様を満たすことのできない経路を1回の仮配置で総て抽出することができる。   According to the present embodiment as described above, the temporary placement is performed only in the high threshold cell using the layout clock cycle that is subtracted from the original clock cycle with the speed improvement by the low threshold cell as a margin. Therefore, the driving capability of the high threshold cell is maximized, and all the paths that cannot satisfy the timing specifications with only the high threshold cell can be extracted in one temporary arrangement.

また、タイミング違反経路については、タイミング違反が解消または違反量が減少するようにクロック信号のスキュー量を調整した、本配置用タイミング制約を生成することができる。この本配置用タイミング制約を用いることにより、本配置における低閾値セルの使用量を少なくすることができる。   In addition, for the timing violation path, it is possible to generate a main arrangement timing constraint in which the skew amount of the clock signal is adjusted so that the timing violation is eliminated or the amount of violation is reduced. By using this real placement timing constraint, the amount of low threshold cells used in the real placement can be reduced.

(第2の実施形態)
本実施形態では、SRAMなどの多数の入力ピンと多数の出力ピンを有するセルのタイミング違反の改善に効果的なタイミング制約制定方法の例を示す。
(Second Embodiment)
In the present embodiment, an example of a timing constraint establishment method effective for improving timing violation of a cell having a large number of input pins and a large number of output pins such as an SRAM is shown.

図4は、第2の実施形態のタイミング制約制定方法を説明するための図である。   FIG. 4 is a diagram for explaining a timing constraint establishment method according to the second embodiment.

図4(a)に示す高閾値セルHTC11は、多数の入力ピンと多数の出力ピンを有するセルであり、クロック信号としてクロック信号CK11が入力される。このクロック信号CK11に対して、タイミング制約11には、スキュー量skew11が記載されているものとする。   The high threshold cell HTC11 shown in FIG. 4A is a cell having a large number of input pins and a large number of output pins, and a clock signal CK11 is input as a clock signal. It is assumed that the skew amount skew11 is described in the timing constraint 11 for the clock signal CK11.

図4(b)は、仮配置後(スキュー量調整前)の、入力ピンへの伝搬遅延値と出力ピンの伝搬遅延値の大きさを棒グラフで表したものである。このグラフでは、入力側タイミング仕様spec1と出力側タイミング仕様spec2の間が、タイミング仕様を満たす範囲である。   FIG. 4B is a bar graph showing the propagation delay value to the input pin and the propagation delay value of the output pin after provisional placement (before adjusting the skew amount). In this graph, the range between the input side timing specification spec1 and the output side timing specification spec2 is a range satisfying the timing specification.

図4(b)に示す例では、このタイミング仕様に違反する経路が、入力側に1本、出力側に5本ある。   In the example shown in FIG. 4B, there are one path on the input side and five paths on the output side that violate this timing specification.

そこで、本実施形態では、出力側のタイミング違反経路数を少なくするため、入力側経路の最小余裕Δt1だけ、クロック信号CK11を早くする。そのため、タイミング制約上のクロック信号CK11のスキュー量を、skew11から(skew11−Δt1)へ変更する。   Therefore, in this embodiment, in order to reduce the number of timing violation paths on the output side, the clock signal CK11 is advanced by the minimum margin Δt1 of the input side path. Therefore, the skew amount of the clock signal CK11 due to timing constraints is changed from skew 11 to (skew 11−Δt 1).

図4(c)は、クロック信号CK11のスキュー量調整の効果を示す図である。クロック信号CK11のスキュー量を(skew11−Δt1)へ調整すると、出力側のタイミング違反経路が、この例では5本から1本へ減少する。   FIG. 4C is a diagram illustrating the effect of adjusting the skew amount of the clock signal CK11. When the skew amount of the clock signal CK11 is adjusted to (skew11−Δt1), the timing violation path on the output side is reduced from five in this example to one.

一方、入力側のタイミング違反経路は、スキュー量調整前と同じく、1本のままである。   On the other hand, the number of timing violation paths on the input side remains the same as before the skew amount adjustment.

図5(a)は、タイミング仕様に違反する経路が、入力側に5本、出力側に1本ある例である。この場合、入力側のタイミング違反経路を少なくするため、出力側経路の最小余裕Δt2だけ、クロック信号CK11を遅くする。そのため、タイミング制約上のクロック信号CK11のスキュー量を、skew11から(skew11+Δt2)へ変更する。   FIG. 5A is an example in which there are five paths that violate the timing specifications on the input side and one path on the output side. In this case, in order to reduce the timing violation path on the input side, the clock signal CK11 is delayed by the minimum margin Δt2 of the output side path. Therefore, the skew amount of the clock signal CK11 due to timing constraints is changed from skew 11 to (skew 11 + Δt 2).

図5(b)は、クロック信号CK11のスキュー量調整の効果を示す図である。クロック信号CK11のスキュー量を(skew11+Δt2)へ調整すると、入力側のタイミング違反経路が、この例では5本から1本へ減少する。   FIG. 5B is a diagram illustrating the effect of adjusting the skew amount of the clock signal CK11. When the skew amount of the clock signal CK11 is adjusted to (skew11 + Δt2), the timing violation path on the input side is reduced from five to one in this example.

一方、出力側のタイミング違反経路は、スキュー量調整前と同じく、1本のままである。   On the other hand, the number of timing violation paths on the output side remains the same as before the skew amount adjustment.

このような本実施形態によれば、タイミング違反経路数が最小となるようにクロック信号のスキューを調整することにより、多数の経路のタイミング違反を同時に改善することができる。また、タイミング違反経路数を最小にできるので、本配置に使用する低閾値セルの個数を少なくすることができる。   According to the present embodiment as described above, the timing violation of a large number of paths can be improved at the same time by adjusting the skew of the clock signal so that the number of timing violation paths is minimized. In addition, since the number of timing violation paths can be minimized, the number of low threshold cells used in this arrangement can be reduced.

(第3の実施形態)
タイミング違反を評価する指標の1つとして、全違反経路のタイミング違反量の総計を表すTNS(Total Negative Slack)がある。本実施形態では、このTNSが最小となるようにクロック信号のスキュー量を調整するタイミング制約設定方法の例を示す。
(Third embodiment)
One index for evaluating timing violation is TNS (Total Negative Slack) that represents the total amount of timing violations of all violation paths. In the present embodiment, an example of a timing constraint setting method for adjusting the skew amount of the clock signal so that the TNS is minimized will be described.

図6は、第3の実施形態のタイミング制約制定方法を説明するための図である。   FIG. 6 is a diagram for explaining a timing constraint establishment method according to the third embodiment.

図6(a)は、仮配置後(スキュー量調整前)の、TNSを表す図である。この図でハッチングを施した部分の面積が、TNSを表す。また、クロック入力の前段側のTNSをTNS1、後段側のTNSをTNS2とする。この例では、前段側と後段側ではTNSに偏りがあり、TNS2≫TNS1である。   FIG. 6A is a diagram illustrating the TNS after provisional arrangement (before adjusting the skew amount). The area of the hatched portion in this figure represents TNS. Also, TNS on the front stage side of the clock input is TNS1, and TNS on the rear stage side is TNS2. In this example, TNS is biased between the front side and the rear side, and TNS2 >> TNS1.

そこで、この場合、後段側のTNSが減少するようにクロック信号のスキュー量を調整する。   Therefore, in this case, the skew amount of the clock signal is adjusted so that the TNS on the rear stage side is reduced.

図6(b)に示すように、スキュー量を調整すると、クロック入力の前段側のTNSがTNS11、後段側のTNSがTNS12へ変化する。この場合、前段側のTNSはやや増加するが、後段側のTNSは大幅に減少する。   As shown in FIG. 6B, when the skew amount is adjusted, the TNS on the front stage of the clock input changes to TNS11 and the TNS on the rear stage changes to TNS12. In this case, the TNS on the front stage side increases slightly, but the TNS on the rear stage side significantly decreases.

このような本実施形態によれば、クロック信号のスキュー量を調整によって削減されたタイミング違反量が、そのまま本配置における低閾値セルの削減量となるため、低閾値セルの使用率を低減させることができる。   According to the present embodiment as described above, the timing violation amount reduced by adjusting the skew amount of the clock signal becomes the reduction amount of the low threshold cell in this arrangement as it is, so that the usage rate of the low threshold cell is reduced. Can do.

(第4の実施形態)
本実施形態では、仮配置後のタイミング検証の解析結果によらず、高閾値セルに規定されたセットアップ時間とアクセス時間の値にもとづいてクロック信号のスキュー量を調整するタイミング制約設定方法の例を示す。本実施形態の方法は、セットアップ時間とアクセス時間との間に、数倍程度の差がある場合に有効である。
(Fourth embodiment)
In this embodiment, an example of a timing constraint setting method that adjusts the amount of skew of a clock signal based on the setup time and access time values specified for the high threshold cell, regardless of the timing verification analysis result after provisional placement. Show. The method of this embodiment is effective when there is a difference of several times between the setup time and the access time.

図7は、第4の実施形態のタイミング制約制定方法を説明するための図である。   FIG. 7 is a diagram for explaining a timing constraint establishment method according to the fourth embodiment.

図7(a)に示す高閾値セルHTC21は、クロック信号CK21に対する入力信号Dinのセットアップ時間がtsuと規定され、クロック信号CK21に対する出力信号Doutのアクセス時間がtasと規定されている。   In the high threshold cell HTC21 shown in FIG. 7A, the setup time of the input signal Din with respect to the clock signal CK21 is defined as tsu, and the access time of the output signal Dout with respect to the clock signal CK21 is defined as tas.

図7(b)に示す例は、アクセス時間tasが、セットアップ時間tsuよりも数倍大きい(tas≫tsu)例である。   The example shown in FIG. 7B is an example in which the access time tas is several times longer than the setup time tsu (tas >> tsu).

この場合、クロック信号CK21に設定するスキュー量skew21を
skew21=−(tas−tsu)/2
とする。すなわち、クロック信号CK21をskew21だけ早くする。
In this case, the skew amount skew21 set in the clock signal CK21 is set to skew21 =-(tas-tsu) / 2.
And That is, the clock signal CK21 is advanced by skew21.

このスキュー量の設定により、高閾値セルHTC21の後段に対するタイミング余裕が増加し、アクセス時間が大きくても、タイミング違反が発生する確率を低下させることができる。   By setting the skew amount, the timing margin for the subsequent stage of the high threshold cell HTC 21 is increased, and the probability of occurrence of a timing violation can be reduced even when the access time is large.

図7(c)に示す例は、セットアップ時間tsuがアクセス時間tasよりも数倍大きい(tsu≫tas)例である。   The example shown in FIG. 7C is an example in which the setup time tsu is several times longer than the access time tas (tsu >> tas).

この場合、クロック信号CK21に設定するスキュー量skew21を
skew21=+(tsu−tas)/2
とする。すなわち、クロック信号CK21をskew21だけ遅くする。
In this case, the skew amount skew21 set in the clock signal CK21 is set to skew21 = + (tsu-tas) / 2.
And That is, the clock signal CK21 is delayed by skew21.

このスキュー量の設定により、高閾値セルHTC21の前段に対するタイミング余裕が増加し、セットアップ時間の規定が大きくても、タイミング違反が発生する確率を低下させることができる。   By setting the skew amount, the timing margin with respect to the previous stage of the high threshold cell HTC21 is increased, and the probability of occurrence of a timing violation can be reduced even if the setup time is specified.

このような本実施形態によれば、仮配置後のタイミング検証の解析を行わなくても、タイミング制約を設定することができる。   According to the present embodiment as described above, it is possible to set timing constraints without analyzing timing verification after provisional placement.

以上説明した少なくとも1つの実施形態のタイミング制約設定方法によれば、低閾値セルの使用量を少なくすることができる。   According to the timing constraint setting method of at least one embodiment described above, the usage amount of the low threshold cell can be reduced.

また、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   Moreover, although some embodiment of this invention was described, these embodiment is shown as an example and is not intending limiting the range of invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

11 タイミング制約
12 セルライブラリ
13 マージン
21 本配置用タイミング制約
HTC1、HTC11、HTC21 高閾値セル
LTC1 低閾値セル
REG1〜REG3 レジスタセル
CT1、CT2 セル
11 Timing constraint 12 Cell library 13 Margin 21 Timing constraint for placement HTC1, HTC11, HTC21 High threshold cell LTC1 Low threshold cell REG1 to REG3 Register cell CT1, CT2 cell

Claims (5)

低閾値セルによる速度向上分をマージンとして本来のクロック周期から差し引いた値をレイアウト用クロック周期とし、入力されたタイミング制約に記載のクロックスキュー配分にもとづいて高閾値セルのみを使用して仮配置を行うステップと、
前記仮配置の結果にもとづいて信号伝搬経路のタイミング検証を行うステップと、
前記タイミング検証によりタイミング違反が検出された経路を抽出するステップと、
前記抽出された経路に関係する遅延伝搬の詳細を解析するステップと、
前記解析の結果にもとづいて前記抽出された経路に関連する信号伝搬経路に配分するクロックスキュー量を算出して前記タイミング制約の更新を行い、本配置用タイミング制約を出力するステップと
を備えることを特徴とするタイミング制約設定方法。
Temporary placement using only the high threshold cell based on the clock skew distribution described in the input timing constraint, using the value obtained by subtracting the speed improvement due to the low threshold cell as the margin and the clock cycle for layout. Steps to do,
Performing timing verification of the signal propagation path based on the result of the temporary placement;
Extracting a path in which a timing violation is detected by the timing verification;
Analyzing details of delay propagation related to the extracted path;
Calculating a clock skew amount to be distributed to a signal propagation path related to the extracted path based on a result of the analysis, updating the timing constraint, and outputting a timing constraint for actual placement. A characteristic timing constraint setting method.
前記マージンが、前記高閾値セルに対する前記低閾値セルの速度向上率を前記本来のクロック周期に掛け合わせた値である
ことを特徴とする請求項1に記載のタイミング制約設定方法。
2. The timing constraint setting method according to claim 1, wherein the margin is a value obtained by multiplying the original clock cycle by a speed improvement rate of the low threshold cell with respect to the high threshold cell.
前記タイミング制約の更新を行うステップが、
前記タイミング違反が発生する経路の数が最小となるように前記クロックスキュー量を算出する
ことを特徴とする請求項1または2に記載のタイミング制約設定方法。
Updating the timing constraint comprises:
The timing constraint setting method according to claim 1, wherein the clock skew amount is calculated so that the number of paths in which the timing violation occurs is minimized.
前記タイミング制約の更新を行うステップが、
前記タイミング違反の違反量の合計が最小となるように前記クロックスキュー量を算出する
ことを特徴とする請求項1または2に記載のタイミング制約設定方法。
Updating the timing constraint comprises:
3. The timing constraint setting method according to claim 1, wherein the clock skew amount is calculated such that a total amount of violations of the timing violation is minimized.
前記タイミング制約の更新を行うステップが、
前記解析の結果によらず、前記高閾値セルに設定されたアクセスタイムおよびセットアップタイムにもとづいて前記クロックスキュー量を算出する
ことを特徴とする請求項1または2に記載のタイミング制約設定方法。
Updating the timing constraint comprises:
3. The timing constraint setting method according to claim 1, wherein the clock skew amount is calculated based on an access time and a setup time set in the high threshold cell regardless of the analysis result. 4.
JP2014067498A 2014-03-28 2014-03-28 timing constraint setting method Abandoned JP2015191393A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014067498A JP2015191393A (en) 2014-03-28 2014-03-28 timing constraint setting method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014067498A JP2015191393A (en) 2014-03-28 2014-03-28 timing constraint setting method

Publications (1)

Publication Number Publication Date
JP2015191393A true JP2015191393A (en) 2015-11-02

Family

ID=54425837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014067498A Abandoned JP2015191393A (en) 2014-03-28 2014-03-28 timing constraint setting method

Country Status (1)

Country Link
JP (1) JP2015191393A (en)

Similar Documents

Publication Publication Date Title
US9727684B2 (en) Method and apparatus for physical-aware hold violation fixing
US9053281B2 (en) Dual-structure clock tree synthesis (CTS)
US8769470B2 (en) Timing closure in chip design
US8281275B2 (en) Reducing leakage power in integrated circuit designs
US20130219352A1 (en) Lsi design method
US8977998B1 (en) Timing analysis with end-of-life pessimism removal
US9754062B2 (en) Timing adjustments across transparent latches to facilitate power reduction
US9754063B2 (en) Reducing dynamic clock skew and/or slew in an electronic circuit
US20130239079A1 (en) System and method for taking inter-clock correlation into account in on-chip timing derating
CN110111020A (en) Retention time restorative procedure, system and medium based on automatic assessment settling time surplus
US8527925B2 (en) Estimating clock skew
US9785737B2 (en) Parallel multi-threaded common path pessimism removal in multiple paths
US20090271747A1 (en) Logic circuit designing device, logic circuit designing method and logic circuit designing program for asynchronous logic circuit
CN104969226A (en) Timing bottleneck analysis across pipelines to guide optimization with useful skew
CN106874593B (en) Digital electronic device design adjustment method and server
US8271922B2 (en) System and method for clock optimization to achieve timing signoff in an electronic circuit and electronic design automation tool incorporating the same
US10956639B1 (en) Method to reduce full-chip timing violation through time budgeting in integrated circuit design
JP2015191393A (en) timing constraint setting method
US10372851B2 (en) Independently projecting a canonical clock
Wu et al. Asynchronous circuit placement by lagrangian relaxation
JP2018142235A (en) Circuit design method, and circuit design support device
Bautz et al. A slew/load-dependent approach to single-variable statistical delay modeling
JP2004280439A (en) Crosstalk noise detecting method, method for designing semiconductor integrated circuit and design verifying method
JP2009163490A (en) Timing adjustment method of integrated circuit and computer program
US7844933B2 (en) Methods of optimizing timing of signals in an integrated circuit design using proxy slack values

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160217

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20160422

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20160725