JP2008204340A - Working/change verification method in layout processing, verification device and program - Google Patents
Working/change verification method in layout processing, verification device and program Download PDFInfo
- Publication number
- JP2008204340A JP2008204340A JP2007042137A JP2007042137A JP2008204340A JP 2008204340 A JP2008204340 A JP 2008204340A JP 2007042137 A JP2007042137 A JP 2007042137A JP 2007042137 A JP2007042137 A JP 2007042137A JP 2008204340 A JP2008204340 A JP 2008204340A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- change
- layout
- satisfied
- confirm
- 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.)
- Withdrawn
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
本発明は、半導体集積回路の設計方法、設計装置及びプログラムに関し、特に半導体装置の論理情報を含む入力ネットリストに基づいてレイアウト処理を行う場合に入力ネットリストを加工及び変更する必要が生じるが、入力ネットリストを加工及び変更した場合の加工・変更検証方法、検証装置及びプログラムに関する。 The present invention relates to a semiconductor integrated circuit design method, design apparatus, and program, and in particular, when layout processing is performed based on an input net list including logic information of the semiconductor device, it is necessary to process and change the input net list. The present invention relates to a processing / change verification method, a verification apparatus, and a program when an input netlist is processed and changed.
これまで、大規模半導体集積回路(LSI)の設計は、所定の設計ルールに基づいてLSIの論理設計を行い、論理設計が所定の設計ルールを満たしていることを確認してネットリストが生成される。次に、ネットリストに基づいてレイアウト処理を行う。 Until now, large-scale semiconductor integrated circuits (LSIs) have been designed based on a predetermined design rule, and an LSI is logically designed, and a netlist is generated after confirming that the logical design satisfies the predetermined design rule. The Next, layout processing is performed based on the net list.
図1は、レイアウト処理の流れを示すフローチャートである。図1に示すように、レイアウト処理11は、入力される入力ネットリスト10を受けてインスタンス(回路要素)を配置する配置処理12と、配置されたインスタンスに対して動作タイミングを最適化するタイミング最適化処理13と、クロックが供給されるインスタンスへのクロック供給経路を生成するクロック生成処理14と、電源配線及び信号配線を決定する配線処理15と、決定したレイアウトを最終的に検証する検証処理16と、を有する。検証処理16で、仕様を満たしていると判定されるとレイアウト処理が完了し、マスクレイアウトデータとして製造部門に渡される。製造部門でも、最大の歩留まりが得られるように、マスクレイアウトデータを補正するが、本発明には直接関係しない。
FIG. 1 is a flowchart showing the flow of layout processing. As shown in FIG. 1, the
入力ネットリスト10は、論理設計データであるが、論理設計データだけでなく、タイミング制約やデザイン(設計)制約と呼ばれるレイアウト(物理)設計を行う場合の様々な制約を含んでいる。この制約は、例えば、使用してはいけないインスタンスや、部分的なクロックの分岐、ポートの個数、等価なピン間の交換制約などである。
The
レイアウト処理11に含まれる各処理では、CADツールで自動設計が行われるが、論理設計に基づいて配置・配線を行っただけでは物理的な仕様を満たすことができないのが現状である。そこで、入力ネットリストを様々な形で加工及び変更しながら、物理的な仕様を満たすように処理を進める。この加工及び変更は、CADツールを使用して、自動修正、タイミング最適化、クロック・ツリー・シンセシス(CTS)を行うと共に、マニュアル(人手)で修正を行う。CADツールでの修正及びマニュアル修正では、インスタンスの追加、修正及び削除、ネット(配線)の追加、修正及び削除、ポートの追加、修正及び削除が行われる。更に、マニュアル修正では、複数のインスタンスとネットとポートをまとめた単位であるモジュールの追加、修正及び削除が行われる。
In each process included in the
上記のようなレイアウト処理における加工・変更処理では、論理設計が変更されると回路動作が異なることになるので論理設計を変更しないことが必要であり、CADツールの形式検証ツールにより加工・変更処理後でも論理的に等価であることの確認が行われる。しかし、論理的に等価であるように変更しても、変更した内容がタイミング制約やデザイン(設計)制約を満たした上で等価であるとは限らない。以下、このような等価性の判定が困難な例を説明する。 In the processing / change processing in the layout processing as described above, the circuit operation differs when the logical design is changed. Therefore, it is necessary not to change the logical design, and the processing / change processing is performed by the CAD tool format verification tool. Later, it is confirmed that it is logically equivalent. However, even if it is changed so as to be logically equivalent, the changed content does not always become equivalent after satisfying the timing constraint and the design (design) constraint. Hereinafter, an example in which it is difficult to determine such equivalence will be described.
図2は、タイミング制約に関する等価性の判定が困難な事例の1つを説明する図である。図2の(A)は、入力ネットリストから生成したレイアウトであり、そこでは、クロック源であるPLL回路21から出力されるクロックは、クロック信号配線22を介してクロック・ゲーティング・セル(ここではANDゲート)23に供給される。クロック信号配線22は、途中で分岐などが行われる場合がある。クロック・ゲーティング・セル23から出力されたゲーティング後のクロックはクロック信号配線24を介して複数のフリップ・フロップ(FF)25A−25Nに供給される。セル23から出力されたクロックには、例えばCLK1との名称が与えられ、FF25A−25Nには同じクロックCLK1が供給されるとの設計データになっている。
FIG. 2 is a diagram illustrating one example where it is difficult to determine equivalence regarding timing constraints. FIG. 2A shows a layout generated from an input netlist, in which a clock output from a
図2の(A)のようなレイアウトでは物理制約を満たすことができないので、図2の(B)に示すように変更を行ったとする。変更されたレイアウトでは、クロック・ゲーティング・セル23の代わりに2個の同種のクロック・ゲーティング・セル23と23Bを配置する。すなわち、セル23はそのまま残し、セル23Bが追加されたことになる。セル23と23Bにクロックを供給するため、クロック信号配線22をクロック信号配線22と22Bに分岐する。FF25A−25NもFF25A−25MとFF25B−25Nの2組に分け、セル23から配線24を介してFF25A−25Mにクロックを供給し、セル23Bから配線24Bを介してFF25B−25Nにクロックを供給する。図2の(B)の回路は、論理的には図2の(A)の回路と等価であるが、FF25B−25Nにはセル23から出力されたクロックCLK1が供給されず、セル23から出力されたクロックが供給されるため、タイミング制約的に等価であるか判定できないという事態が生じる。もちろん論理的にも物理的にも問題を生じない場合があるが、判定できないことが問題である。
Since the physical constraints cannot be satisfied with the layout as shown in FIG. 2A, it is assumed that the change is made as shown in FIG. In the modified layout, two similar types of
図3は、タイミング制約に関する等価性の判定が困難な別の事例を説明する図であり、図2の事例の逆の事例である。図3の(A)は、入力ネットリストから生成したレイアウトであり、そこでは、クロック源であるPLL回路21から出力されるクロックは、クロック信号配線22を介してクロック・ゲーティング・セル(ここではANDゲート)23に供給されると共に、クロック信号配線22から分岐したクロック信号配線22Bを介してクロック・ゲーティング・セル(ここではANDゲート)23Bに供給される。セル23から出力されたゲーティング後のクロックはクロック信号配線24を介して複数のFF25A−25Mに供給される。セル23Bから出力されたゲーティング後のクロックはクロック信号配線24Bを介して複数のFF25B−25Nに供給される。セル23から出力されたクロックにはCLK1との名称が与えられ、FF25A−25Mには同じクロックCLK1が供給され、セル23Bから出力されたクロックにはCLK2との名称が与えられ、FF25B−25Nには同じクロックCLK2が供給されるとの設計データになっている。
FIG. 3 is a diagram for explaining another example in which it is difficult to determine equivalence regarding the timing constraint, and is a case opposite to the case of FIG. FIG. 3A shows a layout generated from an input netlist, in which a clock output from a
図3の(A)のようなレイアウトで、セル23とセル23Bを統合して、それに応じて配線も変更して図3の(B)の回路に変更したとする。論理的には図3の(A)の回路と図3の(B)の回路は等価であるが、FF25B−25NにはクロックCLK2が供給されず、クロックCLK1が供給されるため、タイミング制約的に等価であるか判定できないという事態が生じる。
Assume that the
図4は、タイミング制約に関する等価性の判定が困難な別の事例を説明する図である。図4の(A)は、入力ネットリストから生成したレイアウトであり、そこでは、クロック源であるPLL回路21から出力されるクロックは、クロック信号配線26を介してモジュール27のポート29に供給される。モジュール27は、内部に例えば2個のモジュール28Aと28Bを有し、ポート29からモジュール28Aと28Bのポート31Aと31Bに、途中で30Aと30Bに分岐するクロック配線30を介してクロックが供給される。モジュール28A内では、ポート31Aから複数のFF33A−33Mにクロック配線32Aを介してクロックが供給され、モジュール28B内では、ポート31Bから複数のFF33B−33Nにクロック配線32Bを介してクロックが供給される。ポート29から出力されたクロックにはCLK3との名称が与えられ、モジュール28Aと28B内のFFにCLK3が供給されるとの設計データになっている。
FIG. 4 is a diagram for explaining another example in which it is difficult to determine equivalence regarding timing constraints. 4A shows a layout generated from the input netlist, in which the clock output from the
図4の(A)のようなレイアウトでは物理制約を満たすことができないので、図4の(B)に示すように、モジュール27にクロック用ポート29Bを追加し、更にモジュール28Aと28Bのそれぞれでクロック用ポート31ABと31BBを追加し、クロック配線にバッファ34、34A、34B、35AA、35AB、35BA、35BB、36AA、36AB、36BA、36BBを追加し、モジュール28Aと28B内のFFをそれぞれ2つの組に分けて異なるバッファからクロックが供給されるようにする。
The layout shown in FIG. 4A cannot satisfy the physical constraints. Therefore, as shown in FIG. 4B, a
論理的には図4の(A)の回路と図4の(B)の回路は等価であるが、FF25A−25NにはクロックCLK3が供給されないので、タイミング制約的に等価であるか判定できないという事態が生じる。
Although the circuit of FIG. 4A is logically equivalent to the circuit of FIG. 4B, the clock CLK3 is not supplied to the
図5は、図4の(A)の回路を変更した別の事例を示し、この事例は論理的にもタイミング制約的にも等価であると判定される。図5に示すように、クロック配線26に2個のバッファ34、34Aが設けられ、モジュール27のポート29からのクロック配線30は4本に分岐され、分岐された各配線にそれぞれバッファ35AA、35AB、35BA、35BBが設けられる。モジュール28A、28Bでは、それぞれポート31AB、31BBが追加され、バッファ35AA、35AB、35BA、35BBからポート31AA、31AB、31BA、31BBにクロックが供給される。更に、モジュール28A、28Bでは、ポート31AA、31AB、31BA、31BBからのクロック配線にバッファ36AA、36AB、36BA、36BBが設けられ、それぞれ2組に分けられたFFにクロックが供給される。
FIG. 5 shows another case where the circuit of FIG. 4A is changed, and this case is determined to be equivalent in terms of both logic and timing. As shown in FIG. 5, the
図5のレイアウト回路では、バッファやポートが増加しているが、タイミング制約としては問題なく、修正の前後でも、CLK3が供給されるモジュール28Aと28B内のFFの個数及び論理極性は変化しておらず、論理的にもタイミング制約的にも等価であると判定される。
In the layout circuit of FIG. 5, the number of buffers and ports are increased, but there is no problem as a timing constraint, and the number and logic polarity of the FFs in the
図6は、タイミング制約に関する等価性の判定が困難な別の事例を説明する図である。図6の(A)は、入力ネットリストから生成したレイアウトであり、そこでは、クロック・ゲーティング・セル(ここではNANDゲート)38のA入力(ピン)にFF37Aからの出力が、B入力(ピン)にFF37Bの出力が供給される。ここで、FF37Aからの出力がAピンに供給されるとの設計データになっている。
FIG. 6 is a diagram for explaining another example in which it is difficult to determine equivalence regarding timing constraints. 6A shows a layout generated from an input netlist, in which the output from the
図7は、NANDゲートの回路図である。AピンとBピンは論理的には等価であるが、AピンとBピンで伝播遅延に差があることが知られている。そこで、FF37Aからの出力がAピンに供給されるとして設計され、そのような設計制約が設けられている。
FIG. 7 is a circuit diagram of the NAND gate. Although the A pin and the B pin are logically equivalent, it is known that there is a difference in propagation delay between the A pin and the B pin. Therefore, it is designed that the output from the
図6のNANDゲート38のAピンにタイミング制約が設定されているとする。ここで、タイミングを改善するために、図6の(B)に示すように、NANDゲート38のAピンにFF37Bからの出力が、BピンにFF37Bの出力が供給されるように変更が行われた。このように、タイミング制約を無視して、NANDゲートのピンスワップを実施すると、タイミング制約の意味が変化してしまい、タイミング制約的に等価であるか判定できないという事態が生じる。
Assume that a timing constraint is set on the A pin of the
図8は、デザイン制約に関する等価性の判定が困難な事例の1つを説明する図である。図8の(A)は、入力ネットリストから生成したレイアウトであり、モジュール39内のFF41の出力がポート43に出力され、ポート43からの出力は、モジュール40のポート44に入力され、その後分岐して内部のFF45A、45Bにデータとして入力される。モジュール40のポート44には、変更不可のデザイン制約が設けられている。
FIG. 8 is a diagram illustrating one example where it is difficult to determine equivalence regarding design constraints. FIG. 8A shows a layout generated from the input netlist. The output of the
図8の(A)の構成を、図8の(B)に示すように、モジュール40にポート44Bを追加し、ポート43からの出力は分岐してポート44、44Bに入力され、ポート44の入力がFF45Aにデータとして入力され、ポート44Bの入力がFF45Bにデータとして入力されるように変更した例である。図8の(A)と図8の(B)は、論理的には等価であるが、変更不可のデザイン制約が設けられているポート44に関連して、ポートを増加させており、デザイン制約に違反するように変更されている。
8A, the
図9は、図8の(A)の構成を変更した他の例を示す。この例では、図8の(A)の構成において、モジュール39内でFF41の出力がポート43に出力される信号配線の途中にバッファ46を設け、モジュール40内でポート44からの入力が分岐した後、FF45Bに入力される方の信号配線の途中にバッファ47を設けるように変更されている。図9の構成では、変更不可のデザイン制約が設けられているポート44に関連しては変更が行われておらず、データの経路にバッファを設けても問題ないので、デザイン制約について問題はない。
FIG. 9 shows another example in which the configuration of FIG. In this example, in the configuration of FIG. 8A, a
図10は、デザイン制約に関する等価性の判定が困難な他の事例を説明する図である。図10の(A)は、入力ネットリストから生成したレイアウトであり、モジュール48内に更にモジュール49が設けられている。モジュール48のポート50A、50B及びモジュール49のポート51A、51Bを介して入力された2つのデータはANDゲート52に入力し、ANDゲート52の出力がモジュール49のポート53及びモジュール48のポート54を介して出力される。ここで、モジュール49には変更不可のデザイン制約が設けられている。
FIG. 10 is a diagram for explaining another example in which it is difficult to determine equivalence regarding design constraints. FIG. 10A shows a layout generated from the input netlist, and a
図10の(A)の構成で、ANDゲート52の出力とポート53の間にバッファ55を設けるように変更した。この変更は、論理的には等価であるが、変更不可のデザイン制約が設けられているモジュール49内部にバッファ55を追加しているため、デザイン制約違反である。
In the configuration of FIG. 10A, the
以上説明した論理的には等価であるが、タイミング制約及びデザイン制約からは等価性の判定が困難な事例をまとめると、以下のようになる。 The cases described above that are logically equivalent but difficult to determine equivalence from the timing constraints and design constraints are summarized as follows.
(タイミング制約関連)
(1)所定の名称のクロックが入力されない。(図2、図3、図4)
(2)タイミングの異なるインスタンスのピンが変化している(ピンスワップ)(図6)
(デザイン制約関連)
(3)変更不可制約のオブジェクト(インスタンス、ポート、配線)と同等のオブジェクトが増加している。(図8)
(4)変更不可制約のオブジェクト(インスタンス、ポート、配線)が削除されている(同等のオブジェクトにまとめられている)。
(Related to timing constraints)
(1) A clock with a predetermined name is not input. (Fig. 2, Fig. 3, Fig. 4)
(2) The pin of the instance with different timing has changed (pin swap) (FIG. 6)
(Design constraints related)
(3) The number of objects equivalent to non-changeable objects (instances, ports, wirings) is increasing. (Fig. 8)
(4) Objects (instances, ports, wirings) that cannot be changed are deleted (collected into equivalent objects).
(5)移動禁止制約のインスタンスが移動されている。 (5) The instance of the movement prohibition constraint has been moved.
(6)使用禁止制約のセル(インスタンス)が追加されている。 (6) A cell (instance) of a use prohibition constraint is added.
(7)変更不可制約の配線にバッファが追加されている。 (7) A buffer is added to the unchangeable restriction wiring.
(8)変更不可制約のモジュールが変更されている。(図10) (8) The module of the restriction that cannot be changed has been changed. (Fig. 10)
レイアウト処理において、仕様を満たすように変更を行うと、上記のような事例の発生が避けられないが、これまでのCADツールではこのような事例の発生を検証することができなかった。そのため、仕様を満たすための変更で、逆に仕様を満たせなくなるという事態が生じるという問題があった。 If the layout process is changed so as to satisfy the specifications, the occurrence of the case as described above is unavoidable, but conventional CAD tools have not been able to verify the occurrence of such a case. For this reason, there has been a problem that a change to satisfy the specification may cause a situation in which the specification cannot be satisfied.
本発明は、このような問題点を解決して、レイアウト処理で論理的に等価であるように変更した構成が、タイミング制約条件及びデザイン制約条件を満たすように変更されているかを検証可能にし、レイアウト処理のオペレータが、変更した構成で問題が発生する可能性があるかを容易に判定可能にすることを目的とする。 The present invention solves such problems and makes it possible to verify whether the configuration changed to be logically equivalent in the layout process is changed so as to satisfy the timing constraint condition and the design constraint condition. It is an object of the present invention to make it possible for a layout processing operator to easily determine whether there is a possibility of a problem occurring in the changed configuration.
上記目的を実現するため、本発明のレイアウト処理を行う場合の加工・変更検証方法及び装置は、論理情報に含まれるタイミング制約条件及びデザイン制約条件が、加工・変更後も満たされていることを確認する確認処理を行い、満たされていない場合に、満たされない部分の情報を出力する、ことを特徴とする。 In order to achieve the above object, the processing / change verification method and apparatus for performing layout processing according to the present invention confirms that the timing constraint condition and the design constraint condition included in the logical information are satisfied after the processing / change. A confirmation process for confirming is performed, and when the condition is not satisfied, the information of the unsatisfied part is output.
論理情報に含まれるタイミング制約条件及びデザイン制約条件が、加工・変更後も満たされていることを、どのように確認するかについては、以下に具体的に説明される。 How to confirm that the timing constraint condition and the design constraint condition included in the logical information are satisfied after the processing / change will be specifically described below.
本発明によれば、半導体装置の論理情報を含む入力ネットリストを加工及び変更しながらレイアウト処理を行う場合に、これまで検証できなかったことが検証可能になる。従って、オペレータが、変更した構成で問題が発生する可能性がある部分に注目して、例えば、デザイン制約を修正する、ネットリスト自体を修正する、などの対処を、オペレータ自身が判断して行えるようになる。 According to the present invention, when layout processing is performed while processing and changing an input net list including logic information of a semiconductor device, it is possible to verify that verification has not been possible so far. Accordingly, the operator can determine the part where the problem may occur in the changed configuration, and can take measures such as correcting the design constraint, correcting the net list itself, etc. by the operator himself / herself. It becomes like this.
本発明は、LSIレイアウト処理CAD装置の形で実現され、CAD装置を利用しての本発明の検証方法、本発明の方法を実行できるようにしたCAD装置、すなわち検証装置や、本発明の検証方法を行うようにCAD装置にインストールされるプログラムを対象とする。従って、本発明の検証装置は、コンピュータの内部に、レイアウト処理において半導体装置の論理情報を含む入力ネットリストを加工及び変更した場合の加工・変更検証装置として実現され、機能的には、論理情報に含まれるタイミング制約条件及びデザイン制約条件が、加工・変更後も満たされていることを確認する確認処理部と、満たされていない場合に、満たされない部分の情報を出力する出力部と、を備える形で実現される。 The present invention is realized in the form of an LSI layout processing CAD device. The verification method of the present invention using the CAD device, the CAD device that enables the method of the present invention to be executed, that is, the verification device, and the verification of the present invention. Targeted is a program installed in a CAD device to perform the method. Therefore, the verification apparatus of the present invention is realized as a processing / change verification apparatus when processing and changing an input netlist including logical information of a semiconductor device in layout processing in a computer. A confirmation processing unit for confirming that the timing constraint condition and the design constraint condition included in are satisfied even after processing / change, and an output unit that outputs information on a portion that is not satisfied when it is not satisfied. Realized in the form of provision.
図11は、本発明の検証装置の位置づけを説明する図である。論理的には所望の動作を行うことが検証済みのLSIの設計データが提供され、それに基づいてレイアウト処理が行われ、レイアウトが決定される。CAD装置による通常のレイアウト処理だけでは、物理的な仕様を満たすことが難しく、物理的な仕様を満たすように入力ネットリストの加工・変更が行われる。ここでは、加工・変更が行われる前のLSIの設計データをGoldenデータベース61と称し、加工・変更が行われた後のLSIの設計データをRevisedデータベース62と称する。本発明の検証装置63は、Goldenデータベース61とRevisedデータベース62を比較して、Revisedデータベース62がデザイン制限64を満たしているかを検証し、満たさない時にはオペレータにフィードバックする情報65を生成し、満たせば完了する(66)。
FIG. 11 is a diagram for explaining the positioning of the verification device of the present invention. Logically, LSI design data that has been verified to perform a desired operation is provided, layout processing is performed based on the LSI design data, and a layout is determined. It is difficult to satisfy physical specifications only with normal layout processing by a CAD device, and the input netlist is processed and changed so as to satisfy physical specifications. Here, the LSI design data before processing / change is referred to as a
LSIの設計データには、ネットリスト情報(Verilogなど)、物理情報(DEFなど)及び各種属性(例えばクロック)が含まれる。 LSI design data includes netlist information (such as Verilog), physical information (such as DEF), and various attributes (such as a clock).
デザイン制限64は、タイミング制約(いわゆるSDCファイルで表現される制約)と、デザイン制約と、で構成される。デザイン制約には、変更不可制約、使用不可制約、物理情報保持制約(配置移動禁止、配線経路変更禁止)が含まれる。
The
オペレータにフィードバックする情報65には、例えば、問題のある箇所、問題箇所のデザイン制約変更方法、問題箇所のデータベース(ネットリスト)変更方法などが含まれる。オペレータは、フィードバックされた情報65に基づいて必要な処理を行う。この処理では、たとえ変更されていても問題を生じないことが確認されれば、そのまま変更されたネットリストを有効とし、もし問題を生じるのであれば、物理的な仕様を満たす他の変更方法を検討し、必要に応じて、デザイン制約やネットリスト自体の変更を検討する。
The
図12は、本発明の検証装置の使用方法を説明する図である。入力ネットリスト10に基づいてレイアウト処理11が行われるが、レイアウト処理11は、図1に示したように、配置処理12、タイミング最適化処理13、クロック生成処理14、配線処理15、検証処理16の順に行われ、処理12−16のそれぞれでネットリストの変更が行われる。そこで、配置処理12が終了した時には、入力ネットリスト10と配置処理12において変更されたRevisedネットリストとの間で、本発明の検証装置63を使用して検証が行われ、検証結果がオペレータにフィードバックされる。これに基づいて、オペレータは上記のような必要な処理を行なう。検証の終了したRevisedネットリストは、次の処理のGoldenネットリストになる。この場合は、配置処理12により変更され、検証が終了したRevisedネットリストが、次のタイミング最適化処理のGoldenネットリストになる。以下同様に、タイミング最適化処理13、クロック生成処理14、配線処理15、検証処理16で変更されたネットリストについて、前の処理で検証が終了したネットリストをGoldenネットリストとして本発明の検証が行われる。
FIG. 12 is a diagram for explaining how to use the verification apparatus of the present invention. A
図13は、本発明の検証装置の既存の論理等価性検証装置との連携を説明する図である。従来からデザインルール制限が守られているかを検証するために、論理等価性検証装置67が一部活用されている。本発明の検証装置63は、後述するファンインコーン・ファンアウトコーンの論理等価性検証を自動的に行うために、論理等価性検証装置67を随時利用する。本発明の検証装置63は、GoldenネットリストとRevisedネットリスト、及び論理等価性検証を行いたいファンインコーン・ファンアウトコーンに関する情報を、論理等価性検証装置67に送る。論理等価性検証装置67は、この情報に基づいて論理等価性を検証し、検証結果を本発明の検証装置63に送る。
FIG. 13 is a diagram for explaining the cooperation of the verification apparatus of the present invention with an existing logical equivalence verification apparatus. Conventionally, in order to verify whether the design rule restrictions are observed, a logical
次に、具体的にどのように検証を行うかについて説明する。 Next, how the verification is performed will be described in detail.
(検証1)
検証1では、Goldenネットリストでデザイン制約及びタイミング制約が付されているオブジェクトが、Revisedネットリストでもそのまま変更なしに存在するか判定する。オブジェクトとしては、インスタンス(回路要素)、インスタンスピン(例えば、ゲートの入力ピン、出力ピン)、モジュール、ネット、ポートがある。ここで、そのまま変更なしに存在するとは、Goldenネットリスト内のオブジェクトが削除されておらず、Goldenネットリスト内では1個であったオブジェクトが、2個以上に増加していないことである。言い換えれば、デザイン制約及びタイミング制約が付されているあるオブジェクトの個数が増減しないことである。
(Verification 1)
In the verification 1, it is determined whether the object to which the design constraint and the timing constraint are attached in the Golden netlist exists without change in the Revised netlist. Objects include instances (circuit elements), instance pins (eg, gate input pins and output pins), modules, nets, and ports. Here, the fact that there is no change is that the object in the Golden netlist has not been deleted, and the number of objects that were one in the Golden netlist has not increased to two or more. In other words, the number of objects with design constraints and timing constraints is not increased or decreased.
この判定により、前述の等価性の判定が困難な事例のうち事例(3)及び(4)、例えば図2から図4、図8に示した例が発見できる。 By this determination, cases (3) and (4), for example, the examples shown in FIGS. 2 to 4 and FIG. 8, can be found out of the cases where it is difficult to determine the equivalence described above.
(検証2)
検証2では、使用不可制約が付されているセルが、Revisedネットリストに存在しないか判定する。この判定により、前述の等価性の判定が困難な事例のうち事例(6)が発見できる。
(Verification 2)
In verification 2, it is determined whether or not a cell to which an unusable restriction is attached exists in the Revised netlist. By this determination, it is possible to find the case (6) among the cases where it is difficult to determine the equivalence described above.
(検証3)
検証3では、デザイン制約及びタイミング制約が付されているオブジェクトについて、オブジェクトの種別に応じて所定の検証が行われる。具体的には、オブジェクトがインスタンスの場合には、
(検証3−1)インスタンスで使用しているセル名が比較される。
(Verification 3)
In the verification 3, predetermined verification is performed on the object to which the design constraint and the timing constraint are attached according to the type of the object. Specifically, if the object is an instance,
(Verification 3-1) The cell names used in the instances are compared.
(検証3−2)インスタンスに付随する物理情報が比較される。 (Verification 3-2) The physical information accompanying the instance is compared.
検証3−1及び3−2により、前述の等価性の判定が困難な事例のうち事例(3)及び(4)が発見できる。 By the verifications 3-1 and 3-2, the cases (3) and (4) can be found out of the cases where the equivalence determination is difficult.
ネットの場合には、
(検証3−3)ネットに接続しているインスタンスが一致しているか判定され、
(検証3−4)ネットに接続しているインスタンスに変更不可制約が付けられている場合に、変更不可制約が満たされているか判定される。
In the case of the net,
(Verification 3-3) It is determined whether the instances connected to the net match,
(Verification 3-4) When the non-changeable constraint is attached to the instance connected to the net, it is determined whether the non-changeable constraint is satisfied.
検証3−3及び3−4により、前述の等価性の判定が困難な事例のうち事例(3)、(4)及び(7)が発見できる。 By the verifications 3-3 and 3-4, the cases (3), (4), and (7) can be found among the cases where it is difficult to determine the equivalence described above.
インスタンスピンの場合には、
(検証3−5)対象インスタンスピンのファンインコーンの論理等価性を満たすか判定され、
(検証3−6)対象インスタンスピンのファンアウトコーンの論理等価性を満たすか判定される。
For instance pins,
(Verification 3-5) It is determined whether the logical equivalence of the fan-in cone of the target instance pin is satisfied,
(Verification 3-6) It is determined whether the logical equivalence of the fan-out cone of the target instance pin is satisfied.
図14は、図2に示した事例で、インスタンスピンのファンインコーン及びファンアウトコーンの論理等価性が満たされるか判定する方法を説明する図であり、(A)が修正前を、(B)が修正後を示す。ANDゲート23の出力ピンが比較対象ピンである。修正前には、図14の(A)に示すように、ANDゲート23の一方の入力ピンから、順序セルであるクロックを出力するPLL21まで上流に遡る。同様に、ANDゲート23の他方の入力ピンから他の順序セルまで遡ることができ、合わせてファンインコーンが求まる。一方、ANDゲート23の出力ピンは、複数のFF25A−25Nのクロックピンに接続されており、ファンアウトコーンが求まる。
FIG. 14 is a diagram for explaining a method for determining whether the logical equivalence of the fan-in cone and the fan-out cone of the instance pin is satisfied in the case shown in FIG. ) Indicates after correction. The output pin of the AND
図14の(B)に示すように、修正後のANDゲート23の出力ピンについてファンインコーンを求めると、修正前と同じである。しかし、ファンアウトコーンは、FFの個数が減少しており、異なる。そのため、修正前と修正後でファンインコーン及びファンアウトコーンを比較すると、ファンインコーンは一致するが、ファンアウトコーンは不一致で、等価でないと判定されることになる。
As shown in FIG. 14B, when the fan-in cone is obtained for the output pin of the AND
検証3−5及び3−6により、前述の等価性の判定が困難な事例のうち事例(2)、(3)及び(4)、例えば図2、図3、図5、図6に示した例が発見できる。 Cases (2), (3), and (4) among the cases where it is difficult to determine equivalence by the verifications 3-5 and 3-6, for example, shown in FIG. 2, FIG. 3, FIG. 5, and FIG. An example can be found.
また、検証3−5及び3−6は、図13で説明した論理等価性検証装置67と連携して行われる。
The verifications 3-5 and 3-6 are performed in cooperation with the logical
ポートの場合には、
(検証3−7)対象ポートのファンインコーンの論理等価性を満たすか判定され、
(検証3−8)対象ポートのファンアウトコーンの論理等価性を満たすか判定される。
In the case of ports
(Verification 3-7) It is determined whether the logical equivalence of the fan-in cone of the target port is satisfied,
(Verification 3-8) It is determined whether the logical equivalence of the fan-out cone of the target port is satisfied.
図15は、図8に示した事例で、インスタンスピンのファンインコーン及びファンアウトコーンの論理等価性が満たされるか判定する方法を説明する図であり、(A)が修正前を、(B)が修正後を示す。モジュール40のポート44が比較対象ピンである。修正前には、図15の(A)に示すように、ポート44から、モジュール39のポート43を介して、順序セルであるクロックを出力するPLL41まで上流に遡り、ファンインコーンが求まる。一方、ポート44は、複数のFF45Aと45Bのクロックピンに接続されており、ファンアウトコーンが求まる。
FIG. 15 is a diagram for explaining a method for determining whether the logical equivalence of the fan-in cone and the fan-out cone of the instance pin is satisfied in the example shown in FIG. ) Indicates after correction. The
図14の(B)に示すように、修正後のポート44についてファンインコーンを求めると、修正前と同じである。しかし、ファンアウトコーンは、FFの個数が減少しており、異なる。そのため、修正前と修正後でファンインコーン及びファンアウトコーンを比較すると、ファンインコーンは一致するが、ファンアウトコーンは不一致で、等価でないと判定されることになる。
As shown in FIG. 14B, when the fan-in cone is obtained for the corrected
検証3−7及び3−8により、前述の等価性の判定が困難な事例のうち事例(3)及び(4)、例えば図2から図4、図8に示した例が発見できる。 From the verifications 3-7 and 3-8, cases (3) and (4), for example, the examples shown in FIGS. 2 to 4 and FIG.
また、検証3−7及び3−8も、図13で説明した論理等価性検証装置67と連携して行われる。
The verifications 3-7 and 3-8 are also performed in cooperation with the logical
モジュールの場合には、
(検証3−9)変更不可制約が付けられているモジュール内部の全オブジェクト(インスタンス、ネット、ポート、インスタンスピン、子モジュール)に対して、変更不可制約が満たされているか判定される。
For modules,
(Verification 3-9) It is determined whether the non-changeable constraint is satisfied for all the objects (instance, net, port, instance pin, child module) in the module to which the non-changeable constraint is attached.
検証3−9により、前述の等価性の判定が困難な事例のうち事例(9)、図10に示した事例が発見できる。 By the verification 3-9, it is possible to find the case (9) and the case shown in FIG.
(検証4)
検証4では、物理情報を持つオブジェクトに対し、Golden及びRevisedデータベースの(物理情報)値が一致するか判定する。この判定により、前述の等価性の判定が困難な事例のうち事例(5)が発見できる。
(Verification 4)
In
本発明は、ネットリストに基づいてレイアウト処理を行う時に、仕様を満たすようにネットリストを加工・変更する場合であれば、本発明を適用可能である。 The present invention can be applied to the case where the netlist is processed / changed so as to satisfy the specifications when layout processing is performed based on the netlist.
10 入力ネットリスト
11 レイアウト処理
61 Goldenデータベース(加工・変更前)
62 Revisedデータベース(加工・変更後)
63 検証装置(本発明)
64 デザイン制限
10
62 Revised Database (after processing / change)
63 Verification device (present invention)
64 Design restrictions
Claims (10)
前記論理情報に含まれるタイミング制約条件及びデザイン制約条件が、加工・変更後も満たされていることを確認する確認処理を行い、
満たされていない場合に、満たされない部分の情報を出力する、ことを特徴とするレイアウト処理における加工・変更検証方法。 A processing / change verification method for performing layout processing while processing and changing an input netlist including logic information of a semiconductor device,
Perform a confirmation process to confirm that the timing constraint condition and the design constraint condition included in the logical information are satisfied even after processing and change,
A processing / change verification method in layout processing, characterized by outputting information on a portion that is not satisfied when it is not satisfied.
前記論理情報に含まれるタイミング制約条件及びデザイン制約条件が、加工・変更後も満たされていることを確認する確認処理部と、
満たされていない場合に、満たされない部分の情報を出力する出力部と、を備えることを特徴とするレイアウト処理における加工・変更検証装置。 A processing / change verification device when processing and changing an input netlist including logic information of a semiconductor device in layout processing,
A confirmation processing unit for confirming that the timing constraint condition and the design constraint condition included in the logical information are satisfied even after processing and change;
A processing / change verification apparatus in layout processing, comprising: an output unit that outputs information on a portion that is not satisfied when it is not satisfied.
前記論理情報に含まれるタイミング制約条件及びデザイン制約条件が、加工・変更後も満たされていることを確認する確認処理を行い、
満たされていない場合に、満たされない部分の情報を出力する、ことを特徴とするプログラム。 A CAD program for causing a computer to verify processing and change processing of an input netlist including logic information of a semiconductor device, which is performed in layout processing of a semiconductor integrated circuit,
Perform a confirmation process to confirm that the timing constraint condition and the design constraint condition included in the logical information are satisfied even after processing and change,
A program characterized by outputting information on an unsatisfied part when it is not satisfied.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007042137A JP2008204340A (en) | 2007-02-22 | 2007-02-22 | Working/change verification method in layout processing, verification device and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007042137A JP2008204340A (en) | 2007-02-22 | 2007-02-22 | Working/change verification method in layout processing, verification device and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008204340A true JP2008204340A (en) | 2008-09-04 |
Family
ID=39781760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007042137A Withdrawn JP2008204340A (en) | 2007-02-22 | 2007-02-22 | Working/change verification method in layout processing, verification device and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008204340A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114626323A (en) * | 2022-05-16 | 2022-06-14 | 飞腾信息技术有限公司 | Timing convergence method and device of integrated circuit, server and readable storage medium |
-
2007
- 2007-02-22 JP JP2007042137A patent/JP2008204340A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114626323A (en) * | 2022-05-16 | 2022-06-14 | 飞腾信息技术有限公司 | Timing convergence method and device of integrated circuit, server and readable storage medium |
CN114626323B (en) * | 2022-05-16 | 2022-08-16 | 飞腾信息技术有限公司 | Timing convergence method and device of integrated circuit, server and readable storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5751596A (en) | Automated system and method for identifying critical timing paths in integrated circuit layouts for use with automated circuit layout system | |
US20090064069A1 (en) | Method and system for generating a layout for an integrated electronic circuit | |
US5422833A (en) | Method and system for propagating data type for circuit design from a high level block diagram | |
US7519927B1 (en) | Wiring methods to reduce metal variation effects on launch-capture clock pairs in order to minimize cycle-time overlap violations | |
US20050268268A1 (en) | Methods and systems for structured ASIC electronic design automation | |
US7870528B2 (en) | Method and system for unfolding/replicating logic paths to facilitate modeling of metastable value propagation | |
US11003821B1 (en) | Deterministic loop breaking in multi-mode multi-corner static timing analysis of integrated circuits | |
WO2002086771A1 (en) | Circuit group design methodologies | |
JP4918934B2 (en) | Semiconductor integrated circuit delay analysis apparatus, delay analysis method, and program thereof | |
US8171440B2 (en) | Timing analyzing apparatus, timing analyzing method and program thereof | |
JP2010257164A (en) | Design method of semiconductor integrated circuit device, and program | |
US20060101363A1 (en) | Method of associating timing violations with critical structures in an integrated circuit design | |
US8443313B2 (en) | Circuit design optimization | |
JP5444985B2 (en) | Information processing device | |
JP2008204340A (en) | Working/change verification method in layout processing, verification device and program | |
US8739093B1 (en) | Timing characteristic generation and analysis in integrated circuit design | |
US20110022996A1 (en) | Methods for designing integrated circuits employing context-sensitive and progressive rules and an apparatus employing one of the methods | |
JP5447547B2 (en) | Macro delay analysis device, macro boundary path delay analysis method, macro boundary path delay analysis program | |
US20090064082A1 (en) | Method for custom register circuit design | |
US8689161B2 (en) | Methods for designing integrated circuits employing pre-determined timing-realizable clock-insertion delays and integrated circuit design tools | |
US9524364B1 (en) | Method and system for creating improved routing polygon abstracts | |
WO2010101029A1 (en) | Device for designing semiconductor integrated circuit, method for designing semiconductor integrated circuit, and program for designing semiconductor integrated circuit | |
US7284217B2 (en) | Method of LSI designing and a computer program for designing LSIS | |
Dhar et al. | A Technique to Optimize Clock Latency after CCOpt exploiting Useful Skew | |
JP3561661B2 (en) | Semiconductor integrated circuit and method of designing semiconductor integrated circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20080730 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091201 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20101201 |