JP2007034668A - Layout method - Google Patents
Layout method Download PDFInfo
- Publication number
- JP2007034668A JP2007034668A JP2005216827A JP2005216827A JP2007034668A JP 2007034668 A JP2007034668 A JP 2007034668A JP 2005216827 A JP2005216827 A JP 2005216827A JP 2005216827 A JP2005216827 A JP 2005216827A JP 2007034668 A JP2007034668 A JP 2007034668A
- Authority
- JP
- Japan
- Prior art keywords
- driver
- output terminal
- layout
- output
- circuit diagram
- 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
本発明は、レイアウト・ソフトウェアを用いて大規模半導体集積回路(以下「LSI」という。)等の半導体集積回路におけるクロック配線をレイアウト(配置配線)するレイアウト方法、特に、レイアウト後に回路の設計変更(Engineering Change Order、以下「ECO」という。)を実施する際に可能な限り修正範囲を小さくして既存のタイミング関係を維持しながら所望の修正を行うようにしたクロック配線のレイアウト方法に関するものである。 The present invention relates to a layout method for laying out (placement and routing) clock wiring in a semiconductor integrated circuit such as a large-scale semiconductor integrated circuit (hereinafter referred to as “LSI”) using layout software, and in particular, to change the design of a circuit after layout ( The present invention relates to a clock wiring layout method in which a desired correction is performed while maintaining an existing timing relationship by reducing the correction range as much as possible when executing Engineering Change Order (hereinafter referred to as “ECO”). .
例えば、LSIのレイアウト設計において、クロック配線はタイミングを左右する重要なレイアウト工程である。クロック配線方法も多様な手法が検討されているが、最近はレイアウト・ソフトウェアが用意するクロック・ツリー・シンセシス(Clock Tree Synthesis、クロック・木構造・合成、以下「CTS」という。)を使用するのが主流となっている。 For example, in LSI layout design, clock wiring is an important layout process that affects timing. Various methods of clock wiring have been studied, but recently, clock tree synthesis (Clock Tree Synthesis, hereinafter referred to as “CTS”) prepared by layout software is used. Has become the mainstream.
図13は、従来のCTS後のクロック接続状態の一例を示す回路図である。
CTSは、図13に示すように、例えば、クロック信号CLKをクロック用ドライバ1,2,3により駆動しながら、末端のフリップ・フロップ回路(以下「F/F」という。)4−1〜4−4のクロック端子まで木構造状(ツリー状)にクロック用ドライバ1,2,3を配置し、F/F4−1〜4−4間のクロックスキュー(Clockskew、位相ずれ)を最小にするように配線するものである。なお、図13の末端のF/F4−1〜4−4を駆動するドライバ3のファンアウト(Fanout、以下「F/O」という。)の数は、4である。
FIG. 13 is a circuit diagram showing an example of a clock connection state after a conventional CTS.
As shown in FIG. 13, for example, the CTS drives the clock signal CLK by the
この工程はレイアウト・ソフトウェアにより最適化され、レイアウト後に発生したF/F追加等のECOを行う場合に、レイアウト・ソフトウェアによる自動配線を行うか、人手による配線修正を行う必要がある。軽微な修正内容であればECOの実施が可能だが、クロック配線に関するECOを実施する場合は、タイミング収束が難しくなり、全面レイアウトをやり直す場合もあり、設計工数や費用に大きく影響していた。 This process is optimized by the layout software, and when performing ECO such as F / F addition generated after layout, it is necessary to perform automatic wiring by the layout software or manually correct the wiring. Although it is possible to implement ECO with minor modifications, timing convergence is difficult when performing ECO related to clock wiring, and the entire layout may be re-executed, greatly affecting design man-hours and costs.
このようなレイアウト方法に関する技術として、例えば、次のような文献に記載されるものがあった。 As a technique related to such a layout method, for example, there are those described in the following documents.
図13に示すような従来のレイアウト方法では、図14に示すような課題があった。
図14は、図13のECO後のクロック接続状態の一例を示す回路図である。
The conventional layout method as shown in FIG. 13 has a problem as shown in FIG.
FIG. 14 is a circuit diagram showing an example of a clock connection state after ECO in FIG.
従来のレイアウト方法では、例えば、図14に示すように、レイアウト後のF/F追加等のECOを行う場合に、レイアウト・ソフトウェアにより自動配線、若しくは人手による配線修正を行う必要がある。特に、追加されたF/F4−5へ配線を行う際には、近くのクロック用ドライバ3から修正クロック配線5を新たに引き伸ばして接続するために、これまで合格(OK)となっていたタイミングが、F/F4−5の追加によるドライバ3のF/O増加(4+1)により、不合格(NG)になるケースが出てくる場合があった。そうなると、追加したF/F4−5の周辺での人手による微妙なタイミング調整が必要になったり、関連するドライバ3のドライブ能力の調整等、CTSの再実行や最悪レイアウトをやり直す必要があり、設計所要時間(Turn Around Time、以下「TAT」という。)に大きな影響を与えていた。
In the conventional layout method, for example, as shown in FIG. 14, when ECO such as F / F addition after layout is performed, it is necessary to perform automatic wiring or manual wiring correction by layout software. In particular, when wiring to the added F / F 4-5, since the corrected
本発明は、レイアウト・ソフトウェアによりクロック配線を行うレイアウト方法において、第1のドライバと第2のドライバとが含まれたレイアウト用ライブラリデータを用意し、第1のレイアウト工程と、第2のレイアウト工程と、修正工程とを行うようにしている。 The present invention provides a layout library data including a first driver and a second driver in a layout method in which clock wiring is performed by layout software, and includes a first layout step and a second layout step. And a correction process.
ここで、前記第1のドライバは、第1の入力端子及び第1の出力端子を有し、前記第1の入力端子から入力したクロック信号を駆動して一定時間tだけ遅れた被駆動クロック信号を前記第1の出力端子から出力するものである。前記第2のドライバは、前記第1の入力端子に対応する第2の入力端子、前記第1の出力端子に対応する第2の出力端子、及び前記第2の出力端子に対応する1つ又は複数の第3の出力端子を有し、前記第2の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第2の出力端子及び前記第3の出力端子からそれぞれ出力するものである。 Here, the first driver has a first input terminal and a first output terminal, and drives a clock signal input from the first input terminal and is a driven clock signal delayed by a predetermined time t. Are output from the first output terminal. The second driver includes a second input terminal corresponding to the first input terminal, a second output terminal corresponding to the first output terminal, and one corresponding to the second output terminal or A plurality of third output terminals, and driving the clock signal input from the second input terminal to drive the plurality of driven clock signals delayed by the predetermined time t to the second output terminal and the second output terminal; The signals are output from the third output terminals.
そして、前記第1のレイアウト工程において、第1の回路図データに基づき、前記第1のドライバを複数箇所に配置し、前記複数の第1のドライバにおける前記各第1の入力端子及び前記各第1の出力端子を用いてツリー状に前記クロック配線を行って第2の回路図データを作成する。前記第2のレイアウト工程において、前記第2の回路図データにおいて、前記クロック信号により動作する素子の追加が予想される箇所の近傍における最終段の前記第1のドライバを、前記第2のドライバにより置換した第3の回路図データに基づき、前記第2のドライバにおける前記第2の入力端子及び前記第2の出力端子を用いてツリー状に前記クロック配線を行って第4の回路図データを作成する。その後、前記修正工程において、前記素子の追加の必要が生じたときには、前記素子の近傍に位置する前記第2のドライバを検索し、この第2のドライバの前記第3の出力端子から修正クロック配線を引き出して前記素子に接続する。 Then, in the first layout step, the first drivers are arranged at a plurality of locations based on the first circuit diagram data, and the first input terminals and the first drivers in the plurality of first drivers are arranged. The second circuit diagram data is created by performing the clock wiring in a tree shape using one output terminal. In the second layout step, in the second circuit diagram data, the first driver at the final stage in the vicinity of a place where an element that operates by the clock signal is expected to be added is changed by the second driver. Based on the replaced third circuit diagram data, a fourth circuit diagram data is created by performing the clock wiring in a tree shape using the second input terminal and the second output terminal in the second driver. To do. Thereafter, in the correction step, when the element needs to be added, the second driver located in the vicinity of the element is searched, and the corrected clock wiring is searched from the third output terminal of the second driver. Is pulled out and connected to the element.
本発明の他のレイアウト方法では、前記第2のレイアウト工程及び前記修正工程において、次のような処理を行うようにしている。即ち、前記第2のレイアウト工程では、前記第2の回路図データにおいて、前記クロック信号により動作する素子の追加が予想される箇所の近傍の前記第1のドライバを、前記第2のドライバにより置換した第3の回路図データに基づき、前記第2のドライバにおける前記第2の入力端子及び前記第2の出力端子を用いてツリー状に前記クロック配線を行って第4の回路図データを作成する。その後、修正工程において、前記素子の追加の必要が生じたときには、前記素子の近傍に位置する前記第2のドライバを検索し、この第2のドライバの前記第3の出力端子から修正クロック配線を引き出して前記素子に接続する。 In another layout method of the present invention, the following processing is performed in the second layout step and the correction step. That is, in the second layout step, the second driver replaces the first driver in the second circuit diagram data in the vicinity of a place where an element to be operated by the clock signal is expected to be added. Based on the third circuit diagram data, the fourth wiring diagram data is created by performing the clock wiring in a tree shape using the second input terminal and the second output terminal in the second driver. . Thereafter, in the correction step, when the element needs to be added, the second driver located in the vicinity of the element is searched, and the corrected clock wiring is connected from the third output terminal of the second driver. Pull out and connect to the element.
本発明のレイアウト方法によれば、素子の追加の必要が生じたときには、この素子の近傍に位置する最終段の第2のドライバを検索し、この第2のドライバの第3の出力端子から修正クロック配線を引き出して素子に接続するようにしている。そのため、レイアウト完了後に、必要になった修正で、クロック配線に関連する修正を行う場合、短TATでタイミング収束を実現することが可能になる。 According to the layout method of the present invention, when an element needs to be added, the second driver in the final stage located in the vicinity of this element is searched for and corrected from the third output terminal of the second driver. The clock wiring is drawn out and connected to the element. Therefore, when the correction related to the clock wiring is performed after the layout is completed, the timing convergence can be realized with a short TAT.
本発明の他のレイアウト方法によれば、素子の追加の必要が生じたときには、この素子の近傍に位置する任意の段の第2のドライバを検索し、この第2のドライバの第3の出力端子から修正クロック配線を引き出して素子に接続するようにしている。そのため、レイアウト完了後に、必要になった修正で、クロック配線に関連する修正がある場合、最終段の第2のドライバを使用するのではなく、追加の素子の近傍に配置された任意の段(例えば、最終段より上位の段)に位置する第2のドライバを使用して、クロック配線を実施するので、遅延時間の短縮化を図りつつ、短TATでタイミング収束を実現することが可能になる。 According to another layout method of the present invention, when an element needs to be added, a second driver at an arbitrary stage located in the vicinity of the element is searched, and a third output of the second driver is obtained. The corrected clock wiring is drawn from the terminal and connected to the element. Therefore, after the layout is completed, if the correction required is related to the clock wiring, the second driver in the final stage is not used, but any stage (in the vicinity of the additional element) ( For example, since the clock wiring is performed using the second driver located at the upper stage), it is possible to achieve timing convergence with a short TAT while shortening the delay time. .
本発明を実施するための最良の形態は、レイアウト・ソフトウェアによりクロック配線を行うレイアウト方法において、第1のドライバと第2のドライバとが含まれたレイアウト用ライブラリデータを用意しておく。ここで、前記第1のドライバは、第1の入力端子及び第1の出力端子を有し、前記第1の入力端子から入力したクロック信号を駆動して一定時間tだけ遅れた被駆動クロック信号を前記第1の出力端子から出力するものである。又、前記第2のドライバは、前記第1の入力端子に対応する第2の入力端子、前記第1の出力端子に対応する第2の出力端子、及び前記第2の出力端子に対応する1つ又は複数の第3の出力端子を有し、前記第2の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第2の出力端子及び前記第3の出力端子からそれぞれ出力するものである。 The best mode for carrying out the present invention is to prepare layout library data including a first driver and a second driver in a layout method in which clock wiring is performed by layout software. Here, the first driver has a first input terminal and a first output terminal, and drives a clock signal input from the first input terminal and is a driven clock signal delayed by a predetermined time t. Is output from the first output terminal. The second driver has a second input terminal corresponding to the first input terminal, a second output terminal corresponding to the first output terminal, and a first output terminal corresponding to the second output terminal. Two or more third output terminals, and driving the clock signal input from the second input terminal to drive the plurality of driven clock signals delayed by the predetermined time t to the second output terminal And the third output terminal.
そして、先ず、第1のレイアウト工程では、第1の回路図データに基づき、前記第1のドライバを複数箇所に配置し、前記複数の第1のドライバにおける前記各第1の入力端子及び前記各第1の出力端子を用いて木構造状に前記クロック配線を行って第2の回路図データを作成する。次に、第2のレイアウト工程では、前記第2の回路図データにおいて、前記クロック信号により動作する素子の追加が予想される箇所の近傍の前記第1のドライバを、前記第2のドライバにより置換した第3の回路図データに基づき、前記第2のドライバにおける前記第2の入力端子及び前記第2の出力端子を用いてツリー状に前記クロック配線を行って第4の回路図データを作成する。その後、修正工程において、前記素子の追加の必要が生じたときには、前記素子の近傍に位置する前記第2のドライバを検索し、この第2のドライバの前記第3の出力端子から修正クロック配線を引き出して前記素子に接続している。 First, in the first layout step, based on the first circuit diagram data, the first drivers are arranged at a plurality of locations, and each of the first input terminals and each of the plurality of first drivers are arranged. The clock wiring is performed in a tree structure using the first output terminal to generate second circuit diagram data. Next, in the second layout step, in the second circuit diagram data, the first driver in the vicinity of a place where an element that operates by the clock signal is expected to be replaced is replaced with the second driver. Based on the third circuit diagram data, the fourth wiring diagram data is created by performing the clock wiring in a tree shape using the second input terminal and the second output terminal in the second driver. . Thereafter, in the correction step, when the element needs to be added, the second driver located in the vicinity of the element is searched, and the corrected clock wiring is connected from the third output terminal of the second driver. It is pulled out and connected to the element.
(実施例1の装置)
図3は、本発明の実施例1で使用するレイアウト装置を示す概略の構成図である。
(Device of Example 1)
FIG. 3 is a schematic configuration diagram showing the layout apparatus used in the first embodiment of the present invention.
このレイアウト装置10は、CTSが含まれたレイアウト・ソフトウェアを実行する中央処理装置(以下「CPU」という。)等で構成されたレイアウト装置本体11を有している。このレイアウト装置本体11には、レイアウト用ライブラリデータを格納するハードディスク(以下「HD」という。)等のライブラリ格納手段12、回路図データであるネットリスト(Netlist)を格納するHD等のネットリスト格納手段13、データ入力等を行うキーボードやマウス等の入力装置14、及び、データを表示する表示装置15等が接続されている。
The
図4(a)〜(c)は、本発明の実施例1で使用するクロック用ドライバを示す概略の回路図である。 4A to 4C are schematic circuit diagrams illustrating the clock driver used in the first embodiment of the present invention.
図4(a)に示すクロック用の第1のドライバ20は、第1の入力端子A及び第1の出力端子Y1を有し、この入力端子Aと出力端子Bとの間に、2個の信号反転用のインバータ21,22が直列に接続されている。このドライバ20は、入力端子Aから入力したクロック信号CLKをインバータ21で反転駆動し、更にこれをインバータ22で反転駆動して一定時間tだけ遅れた被駆動クロック信号を出力端子Y1から出力する回路であり、この回路のレイアウト用ライブラリデータが図3のライブラリ格納手段12に格納される。
The
図4(b)に示すクロック用の第2のドライバ30Aは、第2の入力端子A、第2の出力端子Y1、及び配線禁止に設定された第3の出力端子Y2を有し、この入力端子Aと出力端子Y1との間に、2個の信号反転用のインバータ31,32が直列に接続され、更に、インバータ31の出力端子と出力端子Y2との間に、信号反転用のインバータ33が接続された1入力2出力のドライバである。このドライバ30Aは、入力端子Aから入力したクロック信号CLKをインバータ31で反転駆動し、更にこれを各インバータ32,33で反転駆動してそれぞれ一定時間tだけ遅れた被駆動クロック信号を各出力端子Y1,Y2に与える回路であり、この回路のレイアウト用ライブラリデータが図3のライブラリ格納手段12に格納される。
The
ドライバ30Aにおいて、入力端子Aから出力端子Y1へのクロック信号CLKの伝送遅延時間tと、入力端子Aから出力端子Y2へのクロック信号CLKの伝送遅延時間tとは、ドライバ20における入力端子Aから出力端子Y1へのクロック信号CLKの伝送遅延時間tと同一になるように設計されている。レイアウトにおけるドライバ30Aの出力端子Y1の位置は、ドライバ20の出力端子Y1と同一の位置になるように設計されている。又、レイアウトにおけるドライバ30Aの面積も、ドライバ20の面積と同一になるように設計されている。配線禁止に設定された出力端子Y2は、例えば、この出力端子Y2部分を覆い隠すように配線禁止オブジェクトが設定されていて、誤配線等を防止するためにレイアウト・ツールがそこへの配線を実行できないようになっている。
In the
図4(c)に示すクロック用の第3のドライバ30Bは、第3の入力端子A、第4の出力端子Y1、及び配線許可に設定された第5の出力端子Y2を有し、この入力端子Aと出力端子Y1との間に、2個の信号反転用のインバータ31,32が直列に接続され、更に、インバータ31の出力端子と出力端子Y2との間に、信号反転用のインバータ33が接続された1入力2出力のドライバである。このドライバ30Bは、ドライバ30Aと同様の回路構成であるが、出力端子Y2が配線許可に設定されている点のみがドライバ30Aと異なり、この回路のレイアウト用ライブラリデータが図3のライブラリ格納手段12に格納される。ドライバ30Bにおける配線許可に設定された出力端子Y2は、例えば、ドライバ30Aにおける出力端子Y2部分を覆い隠す配線禁止オブジェクトが除去されたものであり、レイアウト・ツールによってそこへの配線を実行できるようになっている。
The
本実施例1の特徴は、ドライバ20,30A,30Bを用意し、通常のレイアウトではドライバ20,30Aの各出力端子Y1を使用し、タイミング確定したレイアウト後に発生する素子(例えば、F/F)の追加による修正に対しては、ドライバ30Bの出力端子Y2を使用して追加F/Fへの修正クロック配線をレイアウト・ソフトウェアによる自動修正、若しくは、人手修正を行えるようにし、又、これまで確定していた他のタイミングへ影響を与えることなく修正を行えるようにしている。これにより、ドライバ30A,30Bの構成上、面積は増加するが、クロック配線に関連するECOがある場合にはタイミング収束が容易になり、設計TATが短くなるという利点がある。
The feature of the first embodiment is that the
(実施例1のレイアウト方法)
図1は、本発明の実施例1のクロック配線のレイアウト方法を示すフローチャートである。図5は、図1中のネットリストNet2の一例を示す回路図、図6は、図1中のネットリストNet3の一例を示す回路図、図7は、図1中のネットリストNet5の一例を示す回路図である。
(Layout Method of Example 1)
FIG. 1 is a flowchart showing a clock wiring layout method according to the first embodiment of the present invention. 5 is a circuit diagram showing an example of the netlist Net2 in FIG. 1, FIG. 6 is a circuit diagram showing an example of the netlist Net3 in FIG. 1, and FIG. 7 is an example of the netlist Net5 in FIG. FIG.
本実施例1におけるクロック配線のレイアウト方法では、レイアウト・ソフトウェアを実行するレイアウト装置本体11の制御により、レイアウト処理(ステップS1〜S8)が行われる。
In the clock wiring layout method according to the first embodiment, layout processing (steps S1 to S8) is performed under the control of the layout apparatus
レイアウト処理が開始されると、レイアウト装置本体11により、ネットリスト格納手段13に格納された回路図データである第1のネットリストNet1が読み出されると共に(ステップS1)、ライブラリ格納手段13に格納された図4のドライバ20からなるレイアウト用ライブラリLIB1が読み出され、第1のレイアウト工程S2が行われる。このレイアウト工程S2では、ネットリストNet1に従って配置が実行され(ステップS2−1)、次にCTSが実施される(ステップS2−2)。CTS実施結果は、これが反映された図5のような回路図データの一例である第2のネットリストNet2として出力され(ステップS3)、ネットリスト格納手段13に格納される。
When the layout process is started, the
図5のネットリストNet2では、クロック信号CLKを駆動する初段のドライバ20の出力端子Y1に、2段目の複数のドライバ20の入力端子Aが接続され、これらの2段目の各ドライバ20の出力端子Y1に、3段目の複数のドライバ20の入力端子Aが接続されるといった、クロック配線がツリー状に形成されている。一点鎖線で囲まれた最終段EN1の複数のドライバ20の出力端子Y1には、クロック信号CLKにより動作する複数の素子(例えば、F/F)40−1〜40−4,・・・がそれぞれ接続されている。例えば、図5の4つのF/F40−1〜40−4にクロック信号CLKを供給する最終段のドライバ20のF/0の数は、4である。
In the netlist Net2 of FIG. 5, the input terminals A of the plurality of
レイアウト装置本体11により、図5のネットリストNet2に示す最終段EN1の複数のドライバ20を、ドライバ30Aに置換するように、CTSの構造情報を参考にしてネットリストNet2が図6のように修正され(ステップS4)、この修正された図6の第3のネットリストNet3がネットリスト格納手段13に格納される。ネットリストNet3は、レイアウト工程(ステップS2)からの出力であるネットリストNet2を、最終段のドライバ20からドライバ30Aに置換修正したレイアウト用回路図データである。最終段のドライバ20のみを置換しているのは、レイアウト完了後に使用される可能性が高いためである。過去の経験等で、他のCTSレベルに適用したい場合でも、同様なネット修正を必要なCTSレベルで行うことは可能である。
The netlist Net2 is modified as shown in FIG. 6 by referring to the structure information of the CTS so that the
次に、第2のレイアウト工程(ステップS5)において、レイアウト装置本体11により、ライブラリ格納手段12に格納された図4のドライバ20及び30Aを含むライブラリLIB2と、ネットリスト格納手段13に格納されたネットリストNet3とが読み込まれ(ステップS5−1)、詳細配線まで行われる(ステップS5−2)。ここで追加されたドライバ30Aは、出力端子Y2が配線禁止になっているため、出力端子Y1からF/F40−1〜40−4,・・・への配線が行われる。出力端子Y1は、置換されたドライバ20の出力端子Y1と同一の位置にあるため、レイアウトにおける詳細配線計画に違いはないので、タイミングの違いが生じることもない。このレイアウト工程(ステップS5)の配線結果は、第4のネットリストNet4として出力され、ネットリスト格納手段13に格納される(ステップS6)。
Next, in the second layout step (step S5), the
ネットリストNet4が格納された後、レイアウト装置本体11により、第3のレイアウト工程(ステップS7)が行われる。このレイアウト工程(ステップS7)において、オペレータにより入力装置14からECO処理の要求があったか否かがレイアウト装置本体11で判定される(ステップS7−1)。判定結果が要求無しのときには、タイミング情報である標準遅延フォーマット(Standard Delay Format、以下「SDF」という。)が出力され、レイアウト装置本体11によるレイアウト処理が終了する。
After the netlist Net4 is stored, the
ステップS7−1での判定結果が要求有りのときには、レイアウト装置本体11により、ネットリストNet4内に記述されているドライバ30Aが、ECOを考慮したドライバ30Bに置換され(ステップS7−2)、この置換された図7のような第5のネットリストNet5がネットリスト格納手段13に格納される。ドライバ30Aとドライバ30Bの違いは、ドライバ30Aでは出力端子Y2の配線属性を禁止にし、ドライバ30Bでは出力端子Y2の配線属性を許可にしている点である。これは、レイアウト完了後の修正時に、ドライバ30Bの出力端子Y2を新たなドライバ出力として使用するためである。
When the determination result in step S7-1 is requested, the layout device
オペレータにより入力装置14からF/Fの追加があったか否かがレイアウト装置本体11で判定される(ステップS7−3)。判定結果が追加無しのときには、タイミング情報であるSDFデータが出力され、レイアウト装置本体11によるレイアウト処理が終了する。
The
ステップS7−3での判定結果が追加有りのときには、レイアウト装置本体11により、ライブラリ格納手段13に格納されたドライバ20及びドライバ30Bを含むライブラリLIB3と、ネットリスト格納手段13に格納されたネットリストNet5とが読み込まれ、修正工程であるECO処理が行われる(ステップS7−4)。このECO処理では、レイアウト構造において同一であるドライバ30Aがドライバ30Bに置換されると共に、修正処理が行われる。ドライバ30Aをドライバ30Bに置換する際には、他のレイアウトデータに影響がない。最終レイアウト結果として、第6のネットリストNet6と、タイミング情報であるSDFデータとが出力され(ステップS8)、レイアウト処理が終了する。
When the determination result in step S7-3 is added, the
図2は、図1中のECO処理を示すフローチャート、図8は、図1中のECO処理のタイミング調整を示す図である。なお、図2中のステップS14,S15や、図8中の遅延調整素子50により、遅延調整手段が構成されている。
2 is a flowchart showing the ECO processing in FIG. 1, and FIG. 8 is a diagram showing timing adjustment of the ECO processing in FIG. Note that steps S14 and S15 in FIG. 2 and the
図2のECO処理(ステップS7−4)が開始されると、レイアウト装置本体11により、ライブラリ格納手段13に格納されたライブラリLIB3と、ネットリスト格納手段13に格納されたネットリストNet5とが読み込まれ、レイアウト構造において同一であるドライバ30Aがドライバ30Bに置換される(ステップS10)。新規F/F追加の必要が生じた場合、レイアウト装置本体11により、その修正箇所近傍に予め埋め込まれた図8に示すECO用予備F/F40−5を検索(サーチ)すると共に、同系統のクロック信号CLKを使用しているCTSドライバ30Bをサーチする(ステップS12)。レイアウト装置本体11により、見つけたCTSドライバ30BのECO用出力端子Y2を利用して、ECOで追加したF/F40−5を接続した場合の遅延時間を算出し、この算出値がタイミング制約を満足しているか否かを確認する(ステップS12,S13)。タイミング制約を満足しているときには(ステップS13)、ECO処理を終了する。
When the ECO processing (step S7-4) in FIG. 2 is started, the layout apparatus
タイミング制約を満足していないときには(ステップS13)、遅延時間が許容値より大きいか否かを判定し(ステップS14)、判定結果が大きいときには、ステップS11の処理へ戻る。判定結果が小さいときには、予め埋め込まれた近くのドライバ、インバータ等の予備セルを遅延調整素子50として利用して遅延調整を行い(ステップS15)、ステップS13へ戻ってタイミング制約を満足しているか否かを判定する。タンミング制約が満足されると、ECO処理が終了する。 When the timing constraint is not satisfied (step S13), it is determined whether or not the delay time is larger than the allowable value (step S14). When the determination result is large, the process returns to step S11. When the determination result is small, delay adjustment is performed by using spare cells such as nearby drivers and inverters embedded in advance as the delay adjustment element 50 (step S15), and the process returns to step S13 to determine whether timing constraints are satisfied. Determine whether. When the tamming constraint is satisfied, the ECO process ends.
このように、CTS構成図のF/F接続周辺で、新規F/F追加の必要が生じた場合には、この近傍のドライバ30Bの出力端子Y2から修正クロック配線35を引き出して追加F/F40−5のクロック端子に接続する。この際に遅延調整を行う場合は、この配線のみで実施可能なので、既にタイミングが確定している他のF/F40−1〜40−4,・・・へ影響を与えることがない。
As described above, when a new F / F needs to be added around the F / F connection in the CTS configuration diagram, the corrected
(実施例1の効果)
本実施例1によれば、次の(a)〜(d)のような効果がある。
(Effect of Example 1)
According to the first embodiment, there are the following effects (a) to (d).
(a) レイアウト完了後におけるクロック配線に関連するF/F追加の修正は、置換した最終段のドライバ30Bの出力端子Y2を使用して追加のF/F40−5に接続するようにしたので、既にタイミングが確定している他のF/F40−1〜40−4,・・・へ影響を与えることなく、短TATでタイミング収束を実現することが可能である。
(A) Since the F / F addition correction related to the clock wiring after the layout is completed is connected to the additional F / F 40-5 using the output terminal Y2 of the
(b) ECO処理時の遅延調整は、ECO修正箇所近傍に予め埋め込まれたドライバ、インバータ等の予備セルを遅延調整素子50として利用して遅延調整を行うので、遅延調整を容易に行うことができる。
(B) Since the delay adjustment during the ECO processing is performed by using a spare cell such as a driver or an inverter embedded in the vicinity of the ECO correction location as the
(c) ドライバ20を含むライブラリLIB1を用いてレイアウトし、出力端子Y2が配線禁止に設定されたドライバ30Aを含むライブラリLIB2を用いて、最終段のドライバ20をドライバ30Aで置換した後、出力端子Y2が配線許可に設定されたドライバ30Bを含むライブラリLIB3を用いて、最終段のドライバ30Aをドライバ30Bで置換しているので、出力端子Y2における誤配線等を防止できる。しかも、出力端子Y2が配線禁止に設定されたドライバ30Aを含むライブラリLIB2と、出力端子Y2が配線許可に設定されたドライバ30Bを含むライブラリLIB3とを2種類用意しておき、目的に応じてライブラリLIB2,LIB3の読み込みを切り替えることにより、クロック配線のレイアウトを行っているので、構成の簡単なレイアウト・ソフトウェアを用いて容易にドライバ30A,30Bの置き換えが可能になる。
(C) After laying out using the library LIB1 including the
(d) 本実施例1の他の方法として、ドライバ30Aの出力端子Y2に対して配線禁止設定と配線許可設定とをレイアウト・ソフトウェア等により切り替える構成にしておけば、1種類のドライバ30Aを用いて最終段のドライバ20の置き換えが可能になるので、レイアウト工程数を削減できる。
(D) As another method of the first embodiment, if the wiring prohibition setting and the wiring permission setting are switched by the layout software or the like for the output terminal Y2 of the
(実施例2の装置)
本発明の実施例2は、実施例1のレイアウト装置10及びライブラリLIB1,LIB2,LIB3を使用し、実施例1とは異なるレイアウト・ソフトウェアを実行してクロック配線のレイアウト方法を行うようにしている。
(Equipment of Example 2)
The second embodiment of the present invention uses the
即ち、実施例1では、CTSの最終段の図4(a)のドライバ20を、図4(b)のドライバ30Aで置換しているが、本実施例2では、CTSの任意のレベルのドライバ20をドライバ30Aで置換し、遅延調整をさらに容易にしている。
That is, in the first embodiment, the
(実施例2のレイアウト方法)
図9は、本発明の実施例2の図1中のネットリストNet3の一例を示す回路図、図10は、本発明の実施例2の図1中のネットリストNet5の一例を示す回路図である。
(Layout Method of Example 2)
9 is a circuit diagram showing an example of the netlist Net3 in FIG. 1 according to the second embodiment of the present invention. FIG. 10 is a circuit diagram showing an example of the netlist Net5 in FIG. 1 according to the second embodiment of the present invention. is there.
本実施例2のレイアウト方法では、図1のフローチャートにおいて、第1のレイアウト工程S2のCTS結果を示す図5のネットリストNet2に対して、2段目と最終段のドライバ20のうちの任意のドライバ20を、図9に示すようにドライバ30Aに置換してネットリストNet3を作成する。
In the layout method of the second embodiment, in the flowchart of FIG. 1, any of the
次に、実施例1と同様に、第2のレイアウト工程S5を実施し、この結果出力されるネットリストNet4に対して、第3のレイアウト工程S7においてECO処理が必要か否かを判定し(ステップS7−1)、ECO処理が必要なときには、図10に示すように、ドライバ30Aをドライバ30Bに置換してネットリストNet5を作成する(ステップS7−2)。その後、F/F追加有りか否かを判定し(ステップS7−3)、追加有りのときにはECO処理を行う(ステップS7−4)。
Next, as in the first embodiment, the second layout step S5 is performed, and it is determined whether or not ECO processing is necessary in the third layout step S7 for the netlist Net4 output as a result ( Step S7-1) When the ECO processing is necessary, as shown in FIG. 10, the
図11は、本発明の実施例2の図1中のECO処理(ステップS7−4)を示すフローチャートであり、実施例1の図2中の要素と共通の要素には共通の符号が付されている。図12は、本発明の実施例2の図1中のECO処理(ステップS7−4)のタイミング調整を示す図である。なお、図11中のステップS14,S15,S20や、図12中の遅延調整素子51により、遅延調整手段が構成されている。
FIG. 11 is a flowchart showing the ECO process (step S7-4) in FIG. 1 according to the second embodiment of the present invention. Elements common to the elements in FIG. ing. FIG. 12 is a diagram illustrating timing adjustment of the ECO process (step S7-4) in FIG. 1 according to the second embodiment of the present invention. Note that steps S14, S15, and S20 in FIG. 11 and the
本実施例2の図11のECO処理(ステップS7−4)では、実施例1の図2にステップS20を追加した点のみが異なる。 The ECO process (step S7-4) of FIG. 11 of the second embodiment is different only in that step S20 is added to FIG. 2 of the first embodiment.
即ち、図11のECO処理(ステップS7−4)が開始されると、図2と同様に、レイアウト装置本体11により、ライブラリ格納手段13に格納されたライブラリLIB3と、ネットリスト格納手段13に格納されたネットリストNet5とが読み込まれ、レイアウト構造において同一であるドライバ30Aがドライバ30Bに置換される(ステップS10)。新規F/F追加の必要が生じた場合、レイアウト装置本体11により、その修正箇所近傍に予め埋め込まれた図12に示す最終段付近のECO用予備F/F40−5をサーチすると共に、同系統のクロック信号CLKを使用しているCTSドライバ30Bをサーチする(ステップS12)。レイアウト装置本体11により、見つけたCTSドライバ30BのECO用出力端子Y2を利用して、ECOで追加したF/F40−5を接続した場合の遅延時間を算出し、この算出値がタイミング制約を満足しているか否かを確認する(ステップS12,S13)。タイミング制約を満足しているときには(ステップS13)、ECO処理を終了する。
That is, when the ECO process (step S7-4) in FIG. 11 is started, the library LIB3 stored in the library storage means 13 and the netlist storage means 13 are stored by the
タイミング制約を満足していないときには(ステップS13)、遅延時間が許容値より大きいか否かを判定し(ステップS14)、判定結果が大きいときには、修正箇所近傍で、1レベル上位のCTSドライバ30Bをサーチし、ステップS11の処理へ戻る。判定結果が小さいときには、予め埋め込まれた近くのドライバ、インバータ等の予備セルを遅延調整素子51として利用して遅延調整を行い(ステップS15)、ステップS13へ戻ってタイミング制約を満足しているか否かを判定する。タンミング制約が満足されると、ECO処理が終了する。
When the timing constraint is not satisfied (step S13), it is determined whether or not the delay time is larger than the allowable value (step S14). When the determination result is large, the
このように、本実施例2では、ECO修正時の遅延が大きい場合に、最終段のCTSドライバ30Bを使用するのではなく、最終段のCTSドライバ30Bの1レベル上位のCTSドライバ30Bを利用し、この出力端子Y2から追加のF/F40−5のクロック端子へ修正クロック配線36を接続している。
As described above, in the second embodiment, when the delay at the time of ECO correction is large, the
(実施例2の効果)
本実施例2によれば、次の(a)〜(c)のような効果がある。
(Effect of Example 2)
The second embodiment has the following effects (a) to (c).
(a) 実施例1では、レイアウト完了後におけるクロック配線に関連するF/F追加の修正は、置換した最終段のドライバ30Bの出力端子Y2を使用して追加のF/F40−5に接続している。ところが、最終段のドライバ30Bの出力を使用すると、従来の末端までのクロック遅延より短くすることが難しい場合がある。理由は追加するF/F40−5が修正箇所の近くにない場合には、遠く離れた場所にあるF/Fを使用することになるため、最終段のドライバ30Bからの遅延が大きくなるからである。この場合に、本実施例2のように、最終段より1レベル上位のドライバ30Bから修正クロック配線36を接続すれば、最終段ではできなかった遅延の短縮化を図ることができ、短TATでタイミング収束を実現することが可能となる。
(A) In the first embodiment, the F / F addition correction related to the clock wiring after the layout is completed is connected to the additional F / F 40-5 using the output terminal Y2 of the
(b) 本実施例2の他の方法として、最終段より1レベル上位のドライバ30Bに代えて、任意のレベルのドライバ30Bから修正クロック配線36を接続すれば、より効果が大きい。
(B) As another method of the second embodiment, if the modified
(c) 本実施例2の他の方法として、実施例1と同様に、ドライバ30Aの出力端子Y2に対して配線禁止設定と配線許可設定とをレイアウト・ソフトウェア等により切り替える構成にしておけば、1種類のドライバ30Aを用いてドライバ20の置き換えが可能になるので、レイアウト工程数を削減できる。
(C) As another method of the second embodiment, as in the first embodiment, if the wiring prohibition setting and the wiring permission setting are switched by the layout software or the like for the output terminal Y2 of the
なお、本発明は、上記実施例1、2に限定されず、種々の変形が可能である。この変形例としては、例えば、次の(1)〜(3)のようなものがある。 In addition, this invention is not limited to the said Example 1, 2, The various deformation | transformation is possible. Examples of this modification include the following (1) to (3).
(1) ドライバ30A,30Bは、1入力2出力型のものに限定されず、1入力で3以上の出力を行う構造のものを使用しても良く、これにより設計の自由度等がより向上する。又、ドライバ20,30A,30Bの構成は、インバータ2段に限定されず、他の段数にしたり、或いは、バッファゲート等の他の素子を用いて構成しても良い。
(2) クロック信号CLKで駆動される素子は、F/F以外の他の素子でも良い。
(3) 図1、図2、図11の処理は、他の処理内容に変更しても良い。
(1) The
(2) The element driven by the clock signal CLK may be an element other than the F / F.
(3) The processing of FIGS. 1, 2, and 11 may be changed to other processing contents.
10 レイアウト装置
11 レイアウト装置本体
12 ライブラリ格納手段
13 ネットリスト格納手段
14 入力装置
15 表示装置
20,30A,30B ドライバ
40−1〜40−5 F/F
DESCRIPTION OF
Claims (7)
第1の入力端子及び第1の出力端子を有し、前記第1の入力端子から入力したクロック信号を駆動して一定時間tだけ遅れた被駆動クロック信号を前記第1の出力端子から出力する第1のドライバと、
前記第1の入力端子に対応する第2の入力端子、前記第1の出力端子に対応する第2の出力端子、及び前記第2の出力端子に対応する1つ又は複数の第3の出力端子を有し、前記第2の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第2の出力端子及び前記第3の出力端子からそれぞれ出力する第2のドライバと、
が含まれたレイアウト用ライブラリデータを用意し、
第1の回路図データに基づき、前記第1のドライバを複数箇所に配置し、前記複数の第1のドライバにおける前記各第1の入力端子及び前記各第1の出力端子を用いて木構造状に前記クロック配線を行って第2の回路図データを作成する第1のレイアウト工程と、
前記第2の回路図データにおいて、前記クロック信号により動作する素子の追加が予想される箇所の近傍における最終段の前記第1のドライバを、前記第2のドライバにより置換した第3の回路図データに基づき、前記第2のドライバにおける前記第2の入力端子及び前記第2の出力端子を用いて木構造状に前記クロック配線を行って第4の回路図データを作成する第2のレイアウト工程と、
前記素子の追加の必要が生じたときには、前記素子の近傍に位置する前記第2のドライバを検索し、この第2のドライバの前記第3の出力端子から修正クロック配線を引き出して前記素子に接続する修正工程と、
を有することを特徴とするレイアウト方法。 In the layout method in which clock wiring is performed by layout software,
A first input terminal and a first output terminal are provided, a clock signal input from the first input terminal is driven, and a driven clock signal delayed by a predetermined time t is output from the first output terminal. A first driver;
A second input terminal corresponding to the first input terminal, a second output terminal corresponding to the first output terminal, and one or more third output terminals corresponding to the second output terminal And driving the clock signal input from the second input terminal to delay the plurality of driven clock signals delayed by the predetermined time t from the second output terminal and the third output terminal, respectively. A second driver to output;
Prepare library data for layout that includes
Based on the first circuit diagram data, the first drivers are arranged in a plurality of places, and each of the first input terminals and the first output terminals in the plurality of first drivers is used to form a tree structure. A first layout step of generating second circuit diagram data by performing the clock wiring,
In the second circuit diagram data, third circuit diagram data obtained by replacing the first driver in the final stage in the vicinity of a portion where an element to be operated by the clock signal is expected to be added with the second driver. And a second layout step of creating fourth circuit diagram data by performing the clock wiring in a tree structure using the second input terminal and the second output terminal in the second driver, ,
When it is necessary to add the element, the second driver located in the vicinity of the element is searched, and the corrected clock wiring is drawn from the third output terminal of the second driver and connected to the element. A correction process to
A layout method characterized by comprising:
第1の入力端子及び第1の出力端子を有し、前記第1の入力端子から入力したクロック信号を駆動して一定時間tだけ遅れた被駆動クロック信号を前記第1の出力端子から出力する第1のドライバと、
前記第1の入力端子に対応する第2の入力端子、前記第1の出力端子に対応する第2の出力端子、及び前記第2の出力端子に対応し且つ配線禁止に設定された1つ又は複数の第3の出力端子を有し、前記第2の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第2の出力端子及び前記第3の出力端子にそれぞれ与える第2のドライバと、
前記第2の入力端子に対応する第3の入力端子、前記第2の出力端子に対応する第4の出力端子、及び前記第3の出力端子に対応し且つ配線許可に設定された1つ又は複数の第5の出力端子を有し、前記第3の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第4の出力端子及び前記第5の出力端子からそれぞれ出力する第3のドライバと、
が含まれたレイアウト用ライブラリデータを用意し、
第1の回路図データに基づき、前記第1のドライバを複数箇所に配置し、前記複数の第1のドライバにおける前記各第1の入力端子及び前記各第1の出力端子を用いて木構造状に前記クロック配線を行って第2の回路図データを作成する第1のレイアウト工程と、
前記第2の回路図データにおいて、前記クロック信号により動作する素子の追加が予想される箇所の近傍における最終段の前記第1のドライバを、前記第2のドライバにより置換した第3の回路図データに基づき、前記第2のドライバにおける前記第2の入力端子及び前記第2の出力端子を用いて木構造状に前記クロック配線を行って第4の回路図データを作成する第2のレイアウト工程と、
設計変更の必要があるか否かの判定を行い、必要無しの判定結果のときには、レイアウト処理を終了し、必要有りの判定結果のときには、前記第4の回路図データにおける前記第2のドライバを前記第3のドライバにより置換した第5の回路図データに基づき、前記素子の追加があるか否かの判定を行い、追加無しの判定結果のときには、レイアウト処理を終了し、追加有りの判定結果のときには、前記第3のドライバにおける前記第3の入力端子及び前記第4の出力端子を用いて木構造状に前記クロック配線を行うと共に、前記素子の近傍に位置する前記第3のドライバを検索し、この第3のドライバの前記第5の出力端子から修正クロック配線を引き出して前記素子に接続した第6の回路図データを作成する第3のレイアウト工程と、
を有することを特徴とするレイアウト方法。 In the layout method in which clock wiring is performed by layout software,
A first input terminal and a first output terminal are provided, a clock signal input from the first input terminal is driven, and a driven clock signal delayed by a predetermined time t is output from the first output terminal. A first driver;
A second input terminal corresponding to the first input terminal, a second output terminal corresponding to the first output terminal, and one corresponding to the second output terminal and set to wiring prohibition or A plurality of third output terminals, and driving the clock signal input from the second input terminal to drive the plurality of driven clock signals delayed by the predetermined time t to the second output terminal and the second output terminal; A second driver applied to each of the third output terminals;
A third input terminal corresponding to the second input terminal, a fourth output terminal corresponding to the second output terminal, and one corresponding to the third output terminal and set to wiring permission or A plurality of fifth output terminals, and driving the clock signal input from the third input terminal to drive the plurality of driven clock signals delayed by the predetermined time t to the fourth output terminal and the A third driver that outputs from each of the fifth output terminals;
Prepare library data for layout that includes
Based on the first circuit diagram data, the first drivers are arranged in a plurality of places, and each of the first input terminals and the first output terminals in the plurality of first drivers is used to form a tree structure. A first layout step of generating second circuit diagram data by performing the clock wiring,
In the second circuit diagram data, third circuit diagram data obtained by replacing the first driver in the final stage in the vicinity of a portion where an element to be operated by the clock signal is expected to be added with the second driver. And a second layout step of creating fourth circuit diagram data by performing the clock wiring in a tree structure using the second input terminal and the second output terminal in the second driver, ,
It is determined whether or not a design change is necessary. When the determination result indicates that the design is not necessary, the layout processing is terminated. When the determination result indicates that the design is necessary, the second driver in the fourth circuit diagram data is determined. Based on the fifth circuit diagram data replaced by the third driver, it is determined whether or not the element is added. When the determination result indicates that there is no addition, the layout process is terminated, and the determination result indicating that there is an addition. In this case, the clock wiring is performed in a tree structure using the third input terminal and the fourth output terminal in the third driver, and the third driver located in the vicinity of the element is searched. A third layout step of creating sixth circuit diagram data in which the modified clock wiring is drawn out from the fifth output terminal of the third driver and connected to the element;
A layout method characterized by comprising:
第1の入力端子及び第1の出力端子を有し、前記第1の入力端子から入力したクロック信号を駆動して一定時間tだけ遅れた被駆動クロック信号を前記第1の出力端子から出力する第1のドライバと、
前記第1の入力端子に対応する第2の入力端子、前記第1の出力端子に対応する第2の出力端子、及び前記第2の出力端子に対応する1つ又は複数の第3の出力端子を有し、前記第2の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第2の出力端子及び前記第3の出力端子からそれぞれ出力する第2のドライバと、
が含まれたレイアウト用ライブラリデータを用意し、
第1の回路図データに基づき、前記第1のドライバを複数箇所に配置し、前記複数の第1のドライバにおける前記各第1の入力端子及び前記各第1の出力端子を用いて木構造状に前記クロック配線を行って第2の回路図データを作成する第1のレイアウト工程と、
前記第2の回路図データにおいて、前記クロック信号により動作する素子の追加が予想される箇所の近傍の前記第1のドライバを、前記第2のドライバにより置換した第3の回路図データに基づき、前記第2のドライバにおける前記第2の入力端子及び前記第2の出力端子を用いて木構造状に前記クロック配線を行って第4の回路図データを作成する第2のレイアウト工程と、
前記素子の追加の必要が生じたときには、前記素子の近傍に位置する前記第2のドライバを検索し、この第2のドライバの前記第3の出力端子から修正クロック配線を引き出して前記素子に接続する修正工程と、
を有することを特徴とするレイアウト方法。 In the layout method in which clock wiring is performed by layout software,
A first input terminal and a first output terminal are provided, a clock signal input from the first input terminal is driven, and a driven clock signal delayed by a predetermined time t is output from the first output terminal. A first driver;
A second input terminal corresponding to the first input terminal, a second output terminal corresponding to the first output terminal, and one or more third output terminals corresponding to the second output terminal And driving the clock signal input from the second input terminal to delay the plurality of driven clock signals delayed by the predetermined time t from the second output terminal and the third output terminal, respectively. A second driver to output;
Prepare library data for layout that includes
Based on the first circuit diagram data, the first drivers are arranged in a plurality of places, and each of the first input terminals and the first output terminals in the plurality of first drivers is used to form a tree structure. A first layout step of generating second circuit diagram data by performing the clock wiring,
In the second circuit diagram data, based on third circuit diagram data in which the first driver in the vicinity of a place where an element that operates by the clock signal is expected to be added is replaced by the second driver. A second layout step of creating fourth circuit diagram data by performing the clock wiring in a tree structure using the second input terminal and the second output terminal in the second driver;
When it is necessary to add the element, the second driver located in the vicinity of the element is searched, and the corrected clock wiring is drawn from the third output terminal of the second driver and connected to the element. A correction process to
A layout method characterized by comprising:
第1の入力端子及び第1の出力端子を有し、前記第1の入力端子から入力したクロック信号を駆動して一定時間tだけ遅れた被駆動クロック信号を前記第1の出力端子から出力する第1のドライバと、
前記第1の入力端子に対応する第2の入力端子、前記第1の出力端子に対応する第2の出力端子、及び前記第2の出力端子に対応し且つ配線禁止に設定された1つ又は複数の第3の出力端子を有し、前記第2の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第2の出力端子及び前記第3の出力端子にそれぞれ与える第2のドライバと、
前記第2の入力端子に対応する第3の入力端子、前記第2の出力端子に対応する第4の出力端子、及び前記第3の出力端子に対応し且つ配線許可に設定された1つ又は複数の第5の出力端子を有し、前記第3の入力端子から入力した前記クロック信号を駆動して前記一定時間tだけ遅れた複数の前記被駆動クロック信号を前記第4の出力端子及び前記第5の出力端子からそれぞれ出力する第3のドライバと、
が含まれたレイアウト用ライブラリデータを用意し、
第1の回路図データに基づき、前記第1のドライバを複数箇所に配置し、前記複数の第1のドライバにおける前記各第1の入力端子及び前記各第1の出力端子を用いて木構造状に前記クロック配線を行って第2の回路図データを作成する第1のレイアウト工程と、
前記第2の回路図データにおいて、前記クロック信号により動作する素子の追加が予想される箇所の近傍の前記第1のドライバを、前記第2のドライバにより置換した第3の回路図データに基づき、前記第2のドライバにおける前記第2の入力端子及び前記第2の出力端子を用いて木構造状に前記クロック配線を行って第4の回路図データを作成する第2のレイアウト工程と、
設計変更の必要があるか否かの判定を行い、必要無しの判定結果のときには、レイアウト処理を終了し、必要有りの判定結果のときには、前記第4の回路図データにおける前記第2のドライバを前記第3のドライバにより置換した第5の回路図データに基づき、前記素子の追加があるか否かの判定を行い、追加無しの判定結果のときには、レイアウト処理を終了し、追加有りの判定結果のときには、前記第3のドライバにおける前記第3の入力端子及び前記第4の出力端子を用いて木構造状に前記クロック配線を行うと共に、前記素子の近傍に位置する前記第3のドライバを検索し、この第3のドライバの前記第5の出力端子から修正クロック配線を引き出して前記素子に接続した第6の回路図データを作成する第3のレイアウト工程と、
を有することを特徴とするレイアウト方法。 In the layout method in which clock wiring is performed by layout software,
A first input terminal and a first output terminal are provided, a clock signal input from the first input terminal is driven, and a driven clock signal delayed by a predetermined time t is output from the first output terminal. A first driver;
A second input terminal corresponding to the first input terminal, a second output terminal corresponding to the first output terminal, and one corresponding to the second output terminal and set to wiring prohibition or A plurality of third output terminals, and driving the clock signal input from the second input terminal to drive the plurality of driven clock signals delayed by the predetermined time t to the second output terminal and the second output terminal; A second driver applied to each of the third output terminals;
A third input terminal corresponding to the second input terminal, a fourth output terminal corresponding to the second output terminal, and one corresponding to the third output terminal and set to wiring permission or A plurality of fifth output terminals, and driving the clock signal input from the third input terminal to drive the plurality of driven clock signals delayed by the predetermined time t to the fourth output terminal and the A third driver that outputs from each of the fifth output terminals;
Prepare library data for layout that includes
Based on the first circuit diagram data, the first drivers are arranged in a plurality of places, and each of the first input terminals and the first output terminals in the plurality of first drivers is used to form a tree structure. A first layout step of generating second circuit diagram data by performing the clock wiring,
In the second circuit diagram data, based on third circuit diagram data in which the first driver in the vicinity of a place where an element that operates by the clock signal is expected to be added is replaced by the second driver. A second layout step of creating fourth circuit diagram data by performing the clock wiring in a tree structure using the second input terminal and the second output terminal in the second driver;
It is determined whether or not a design change is necessary. When the determination result indicates that the design is not necessary, the layout processing is terminated. When the determination result indicates that the design is necessary, the second driver in the fourth circuit diagram data is determined. Based on the fifth circuit diagram data replaced by the third driver, it is determined whether or not the element is added. When the determination result indicates that there is no addition, the layout process is terminated, and the determination result indicating that there is an addition. In this case, the clock wiring is performed in a tree structure using the third input terminal and the fourth output terminal in the third driver, and the third driver located in the vicinity of the element is searched. A third layout step of creating sixth circuit diagram data in which the modified clock wiring is drawn out from the fifth output terminal of the third driver and connected to the element;
A layout method characterized by comprising:
前記第3のドライバは、1入力2出力型のドライバであって、面積が、前記第2のドライバと同一面積であり、且つ、前記第4及び第5の出力端子が、前記第2のドライバの前記第2及び第3の出力端子と同位置に配置されていることを特徴とする請求項4又は5記載のレイアウト方法。 The second driver is a one-input two-output driver, and has an area the same as that of the first driver, and the second output terminal is the first driver of the first driver. 1 is arranged at the same position as the output terminal,
The third driver is a one-input two-output driver, and has the same area as the second driver, and the fourth and fifth output terminals are the second driver. 6. The layout method according to claim 4, wherein the layout method is arranged at the same position as the second and third output terminals.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005216827A JP2007034668A (en) | 2005-07-27 | 2005-07-27 | Layout method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005216827A JP2007034668A (en) | 2005-07-27 | 2005-07-27 | Layout method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007034668A true JP2007034668A (en) | 2007-02-08 |
Family
ID=37793852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005216827A Withdrawn JP2007034668A (en) | 2005-07-27 | 2005-07-27 | Layout method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007034668A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8171440B2 (en) | 2008-08-20 | 2012-05-01 | Nec Corporation | Timing analyzing apparatus, timing analyzing method and program thereof |
US8788255B2 (en) | 2009-08-21 | 2014-07-22 | Nec Corporation | Delay analysis processing of semiconductor integrated circuit |
-
2005
- 2005-07-27 JP JP2005216827A patent/JP2007034668A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8171440B2 (en) | 2008-08-20 | 2012-05-01 | Nec Corporation | Timing analyzing apparatus, timing analyzing method and program thereof |
US8788255B2 (en) | 2009-08-21 | 2014-07-22 | Nec Corporation | Delay analysis processing of semiconductor integrated circuit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9953121B2 (en) | Accommodating engineering change orders in integrated circuit design | |
JP2009038072A (en) | Semiconductor integrated circuit, and development method thereof | |
US20060282810A1 (en) | Fullchip functional equivalency and physical verification | |
JP2882359B2 (en) | Layout design equipment | |
JP5063511B2 (en) | Method and system for efficiently utilizing a multi-source network of control logic to achieve timing closure in a clock-driven logic circuit | |
US20140019922A1 (en) | Optimization method and device for netlist used in logic circuit design for semiconductor integrated circuit | |
US9690893B1 (en) | Methods and systems for customizable editing of completed chain of abutted instances | |
JP2008065382A (en) | Power consumption calculating method for lsi and its calculation program | |
JP2007034668A (en) | Layout method | |
US20140337657A1 (en) | Design support device, design support method, and computer-readable recording medium having stored therein design support program | |
US20050251776A1 (en) | Integrated circuit design system | |
JP2010073136A (en) | Convergence method and convergence device for hold time error, and convergence program | |
JP2005316595A (en) | Method for verifying equivalence between circuit description and program for verifying equivalence between circuit description | |
JP4845400B2 (en) | Semiconductor device design method and semiconductor device | |
JP2008152329A (en) | Circuit analysis method, circuit analysis program, and circuit simulation device | |
JP2822741B2 (en) | Clock wiring design method | |
JP2002215707A (en) | Synchronous circuit designing method, and recording medium recorded with synchronous circuit designing program | |
JP2993488B2 (en) | Integrated circuit design method, integrated circuit, and storage medium | |
JP4140013B2 (en) | Semiconductor integrated circuit gate resizing apparatus and method and program thereof | |
JP2009003723A (en) | Layout design method of semiconductor integrated circuit, automatic layout design device for semiconductor integrated circuit, layout design assistance system of semiconductor integrated circuit, photomask, photomask manufacturing method, semiconductor integrated circuit, semiconductor integrated circuit manufacturing method, control program, and readable storage medium | |
JP2004234295A (en) | Method for creating system diagram of logic circuit, and device for creating system diagram of logic circuit | |
JP2003196335A (en) | Device and method for supporting semiconductor design | |
JP6435892B2 (en) | Circuit design method, cell library component for circuit design tool | |
US8782579B2 (en) | Connection verification method, recording medium thereof, and connection verification apparatus | |
US7302633B2 (en) | LSI design system, logic correction support equipment, logic correction support method used therefor, and program therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20081007 |