JP3425920B2 - Clock tree designing apparatus, clock tree designing method, and recording medium - Google Patents
Clock tree designing apparatus, clock tree designing method, and recording mediumInfo
- Publication number
- JP3425920B2 JP3425920B2 JP2000024860A JP2000024860A JP3425920B2 JP 3425920 B2 JP3425920 B2 JP 3425920B2 JP 2000024860 A JP2000024860 A JP 2000024860A JP 2000024860 A JP2000024860 A JP 2000024860A JP 3425920 B2 JP3425920 B2 JP 3425920B2
- Authority
- JP
- Japan
- Prior art keywords
- clock
- wiring
- configuration
- buffer
- designing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 25
- 239000000872 buffer Substances 0.000 claims description 148
- 238000013461 design Methods 0.000 claims description 24
- 230000003071 parasitic effect Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 238000012938 design process Methods 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 24
- 238000004364 calculation method Methods 0.000 description 19
- 238000012937 correction Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【0001】[0001]
【発明の属する技術分野】本発明は、クロック配線を設
計するクロックツリー設計装置に関する。また、本発明
は、クロック配線の設計方法に関する。さらに、本発明
は、クロック配線を設計するためのプログラムを記録し
た記録媒体に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a clock tree designing device for designing clock wiring. The present invention also relates to a clock wiring design method. Furthermore, the present invention relates to a recording medium in which a program for designing clock wiring is recorded.
【0002】[0002]
【従来の技術】大規模集積回路(LSI)等の微細な回
路を設計するために、特開平6−187391号公報、
特開平9−26988号公報、特開平9−232438
号公報、特開平11−8314号公報、及び、特許第2
877083号公報に開示されているような様々な技術
が開発されている。2. Description of the Related Art To design a fine circuit such as a large scale integrated circuit (LSI), Japanese Patent Laid-Open No. 6-187391,
JP-A-9-26988 and JP-A-9-232438.
Japanese Patent Laid-Open No. 11-8314 and Japanese Patent No.
Various techniques have been developed as disclosed in Japanese Patent No. 877083.
【0003】特開平6−187391号公報に開示され
ている技術は、配置配線により配線データが確定した後
にタイミング解析を行っている。そして、タイミング解
析によって見出された不要なバッファを論理回路から除
去し、過剰な駆動能力を有するセルを駆動能力の低いセ
ルに置換することによって、論理回路の消費電力を低減
している。なお、この技術は、回路設計の工程を低減す
るために、クロック信号を各セルに供給するためのクロ
ックツリーの設計を行った後に、上記タイミング解析を
行っている。In the technique disclosed in Japanese Patent Laid-Open No. 6-187391, timing analysis is performed after the wiring data is determined by the placement and wiring. Then, the unnecessary buffer found by the timing analysis is removed from the logic circuit, and the cell having the excessive driving capability is replaced with the cell having the low driving capability, thereby reducing the power consumption of the logic circuit. In this technique, in order to reduce the circuit design process, the timing analysis is performed after designing a clock tree for supplying a clock signal to each cell.
【0004】特開平9−26988号公報に開示されて
いる技術は、予め作成された配線長とセルの駆動能力と
の対応テーブルを用い、暫定的な配置配線から得られた
配線負荷に最適な駆動能力を有するセルを使用すること
により、短時間で半導体集積回路を設計している。The technique disclosed in Japanese Unexamined Patent Publication No. 9-26988 uses a correspondence table of wiring lengths and cell driving capabilities created in advance and is optimal for wiring loads obtained from temporary placement and wiring. A semiconductor integrated circuit is designed in a short time by using a cell having driving capability.
【0005】特開平9−232438号公報に開示され
ている技術は、クリティカルパスが形成された配線領域
に冗長セルを配置し、且つクリティカルパス上に配置さ
れた機能セルの内、任意のバッファセルを駆動能力を変
更可能なドライバビリティ可変セルに置換している。そ
して、上記冗長セル及びドライバビリティ可変セルを用
いて信号伝搬の遅延時間を調整している。The technique disclosed in Japanese Unexamined Patent Publication No. 9-232438 has a redundant cell arranged in a wiring area where a critical path is formed, and an arbitrary buffer cell among functional cells arranged on the critical path. Is replaced by a drivability variable cell whose drive capability can be changed. Then, the delay time of signal propagation is adjusted using the redundant cell and the drivability variable cell.
【0006】特開平11−8314号公報に開示されて
いる技術は、クロックツリーで消費される電力を最小と
するために、クロックツリーの深さ(段数)、即ちクロ
ックツリーに配置されたバッファの数を数値計算から求
めている。特許第2877083号公報に開示されてい
る技術は、回路のクリティカルパス上に存在するセルを
駆動能力の小さいセルに置換したり、クリティカルパス
上に新たにセルを挿入することにより、クリティカルパ
スで生じる信号遅延を改善している。The technique disclosed in Japanese Patent Application Laid-Open No. 11-8314 discloses a clock tree depth (number of stages), that is, a buffer arranged in the clock tree in order to minimize power consumed in the clock tree. The number is calculated by numerical calculation. The technique disclosed in Japanese Patent No. 2877083 occurs in a critical path by replacing a cell existing on a critical path of a circuit with a cell having a small driving ability or inserting a new cell on the critical path. The signal delay is improved.
【0007】[0007]
【発明が解決しようとする課題】しかし、上記特開平9
−26988号公報、特開平9−232438号公報、
及び、特許第2877083号公報に開示されている技
術は、クロック信号を各セルに供給するためのクロック
配線(クロックツリー)については全く考慮していない
ため、クロック配線の消費電力が大きい場合がある。However, the above-mentioned Japanese Unexamined Patent Application Publication No.
No. 26988, JP-A-9-232438,
Further, the technology disclosed in Japanese Patent No. 2877083 does not consider clock wiring (clock tree) for supplying a clock signal to each cell at all, and thus the power consumption of the clock wiring may be large. .
【0008】また、特開平6−187391号公報に開
示されている技術は、クロックツリーの設計を行った後
にタイミング解析を行っているが、クロックツリーでの
消費電力については全く考慮していない。このため、ク
ロックツリーでの消費電力が大きい場合がある。The technique disclosed in Japanese Patent Laid-Open No. 6-187391 performs timing analysis after designing a clock tree, but does not consider power consumption in the clock tree at all. Therefore, power consumption in the clock tree may be large.
【0009】特開平11−8314号公報に開示されて
いる技術は、クロックツリーの消費電力を低減するため
に技術であるが、バッファのタイプ(インバータタイプ
及びノンインバータタイプ)については全く考慮してい
ない。このため、消費電力を低減するために最適な構成
を有するクロックツリーを得られない場合がある。ま
た、この技術はクロックツリー以外の配線による消費電
力の影響を全く考慮していないため、実際に形成された
クロックツリーの消費電力は、数値計算で得られた値よ
りも大きくなってしまう場合がある。The technique disclosed in Japanese Patent Laid-Open No. 11-8314 is a technique for reducing the power consumption of the clock tree, but the types of buffers (inverter type and non-inverter type) are taken into consideration. Absent. Therefore, it may not be possible to obtain a clock tree having an optimum configuration for reducing power consumption. In addition, since this technology does not consider the influence of power consumption due to wiring other than the clock tree at all, the power consumption of the actually formed clock tree may be larger than the value obtained by numerical calculation. is there.
【0010】以上のことから、上記特開平6−1873
91号公報、特開平9−26988号公報、特開平9−
232438号公報、特開平11−8314号公報、及
び、特許第2877083号公報に開示されている技術
を組み合わせても、低消費電力のクロック配線を設計す
ることができない場合がある。従って、本発明は、低消
費電力のクロック配線を設計するクロックツリー設計装
置及びクロックツリー設計方法を提供することを目的と
する。また、本発明は、低消費電力のクロック配線を設
計するためのプログラムを記録した記録媒体を提供する
ことを目的とする。From the above, the above-mentioned JP-A-6-1873.
91, JP-A-9-26988, JP-A-9-
Even if the techniques disclosed in Japanese Patent No. 232438, Japanese Patent Laid-Open No. 11-8314, and Japanese Patent No. 2877083 are combined, it may not be possible to design a clock wiring with low power consumption. Therefore, an object of the present invention is to provide a clock tree designing apparatus and a clock tree designing method for designing clock wiring of low power consumption. Another object of the present invention is to provide a recording medium recording a program for designing low power consumption clock wiring.
【0011】[0011]
【課題を解決するための手段】上記目的を達成するため
に、本発明の第1の観点にかかるクロックツリー設計装
置は、クロック信号供給回路から複数の回路ブロックに
クロック信号を供給するためのクロック配線を設計する
配線設計手段と、前記クロック配線の所定位置にインバ
ータタイプとノンインバータタイプの一方のタイプのバ
ッファを配置することにより、第1構成を有するクロッ
ク配線を設計するバッファ配置手段と、前記バッファの
内、所定数のバッファをインバータタイプとノンインバ
ータタイプの他方のタイプのバッファに置換することに
より、第2構成を有するクロック配線を設計するバッフ
ァ置換手段と、前記第1構成及び前記第2構成のクロッ
ク配線全体で消費される電力をそれぞれ求める演算手段
と、前記演算手段が求めた第1構成を有するクロック配
線の消費電力と第2構成を有するクロック配線の消費電
力とを比較し、どちらの消費電力が小さいかを判別する
判別手段と、前記判別手段の判別結果に従って、クロッ
ク配線の構成を消費電力が小さい方の構成に決定する構
成決定手段と、を備えることを特徴とする。この発明に
よれば、構成の異なるクロック配線を設計し、それぞれ
のクロック配線で消費される電力を求め、消費電力が小
さい方の構成に決定するため、低消費電力のクロック配
線を設計することができる。In order to achieve the above object, a clock tree designing apparatus according to a first aspect of the present invention is a clock for supplying a clock signal from a clock signal supply circuit to a plurality of circuit blocks. Wiring design means for designing wiring; buffer placement means for designing clock wiring having a first configuration by placing a buffer of one of an inverter type and a non-inverter type at a predetermined position of the clock wiring; Buffer replacement means for designing a clock wiring having a second configuration by replacing a predetermined number of buffers with another type of buffer, an inverter type and a non-inverter type, and the first configuration and the second configuration. Calculating means for calculating the power consumed by the entire clock wiring of the configuration, and the calculating means The determined power consumption of the clock wiring having the first configuration and the power consumption of the clock wiring having the second configuration are compared to determine which power consumption is smaller, and according to the determination result of the determination means, And a configuration determining unit that determines the configuration of the clock wiring to the one with lower power consumption. According to the present invention, clock wirings having different configurations are designed, the power consumed by each clock wiring is obtained, and the configuration having the smaller power consumption is determined, so that the clock wiring with low power consumption can be designed. it can.
【0012】前記バッファ配置手段は、クロック配線の
分岐点に前記バッファを配置し、前記バッファ置換手段
は、クロック信号供給回路から各回路ブロックに向かっ
て同一番目の分岐点を示す段単位でバッファを置換して
もよい。前記バッファ置換手段は、各回路ブロックに入
力されるクロック信号の論理値が反転しないように、偶
数段単位で前記バッファを置換してもよい。前記配線設
計手段は、クロック信号以外の処理信号を各回路ブロッ
クに供給するための信号配線を設計し、前記演算手段
は、クロック配線と信号配線の寄生容量によって生じる
消費電力の増加を加えて前記消費電力を求めてもよい。
前記構成決定手段がクロック配線の構成を決定した後に
タイミングエラーの検証を行うエラー検証手段と、前記
エラー検証手段によって検出されたタイミングエラーを
除去するために、前記信号配線へのバッファの挿入と置
換を行う回路修正手段と、をさらに備えてもよい。The buffer arranging means arranges the buffer at a branch point of the clock wiring, and the buffer replacing means arranges the buffer in units of stages indicating the same branch point from the clock signal supply circuit toward each circuit block. You may substitute. The buffer replacement unit may replace the buffer in units of even stages so that the logical value of the clock signal input to each circuit block is not inverted. The wiring designing means designs a signal wiring for supplying a processing signal other than a clock signal to each circuit block, and the computing means adds an increase in power consumption caused by a parasitic capacitance of the clock wiring and the signal wiring. The power consumption may be obtained.
Error verifying means for verifying a timing error after the configuration determining means determines the configuration of the clock wiring, and insertion and replacement of a buffer in the signal wiring to remove the timing error detected by the error verifying means. Circuit modification means for performing the above may be further provided.
【0013】本発明の第2の観点にかかるクロックツリ
ー設計方法は、クロック信号供給回路から複数の回路ブ
ロックにクロック信号を供給するためのクロック配線を
設計する配線設計工程と、前記クロック配線の所定位置
にインバータタイプとノンインバータタイプの一方のタ
イプのバッファを配置することにより、第1構成を有す
るクロック配線を設計するバッファ配置工程と、前記バ
ッファの内、所定数のバッファをインバータタイプとノ
ンインバータタイプの他方のタイプのバッファに置換す
ることにより、第2構成を有するクロック配線を設計す
るバッファ置換工程と、前記第1構成及び前記第2構成
のクロック配線全体で消費される電力をそれぞれ求める
演算工程と、前記演算工程で求められた第1構成を有す
るクロック配線の消費電力と第2構成を有するクロック
配線の消費電力とを比較し、どちらの消費電力が小さい
かを判別する判別工程と、前記判別工程の判別結果に従
って、クロック配線の構成を消費電力が小さい方の構成
に決定する構成決定工程と、を備えることを特徴とす
る。A clock tree designing method according to a second aspect of the present invention is a wiring design process for designing a clock wiring for supplying a clock signal from a clock signal supply circuit to a plurality of circuit blocks, and a predetermined clock wiring. A buffer arranging step of designing a clock wiring having a first configuration by arranging a buffer of one of an inverter type and a non-inverter type at a position; A buffer replacement step of designing a clock wiring having a second configuration by substituting the other type of buffer for the type, and an operation for obtaining the power consumed by the entire clock wiring of the first configuration and the second configuration, respectively. And the clock wiring having the first configuration obtained in the calculation step. The power consumption and the power consumption of the clock wiring having the second configuration are compared to determine which power consumption is lower, and the power consumption of the clock wiring configuration is lower according to the determination result of the determination step. And a configuration determining step of determining the configuration of.
【0014】前記バッファ配置工程は、クロック配線の
分岐点に前記バッファを配置する工程を備え、前記バッ
ファ置換工程は、クロック信号供給回路から各回路ブロ
ックに向かって同一番目の分岐点を示す段単位でバッフ
ァを置換する工程を備えてもよい。前記バッファ置換工
程は、各回路ブロックに入力されるクロック信号の論理
値が反転しないように、偶数段単位で前記バッファを置
換する工程を備えてもよい。前記配線設計工程は、クロ
ック信号以外の処理信号を各回路ブロックに供給するた
めの信号配線を設計する工程を備え、前記演算工程は、
クロック配線と信号配線の寄生容量によって生じる消費
電力の増加を加えて前記消費電力を求める工程を備えて
もよい。前記構成決定工程でクロック配線の構成が決定
された後にタイミングエラーの検証を行うエラー検証工
程と、前記エラー検証工程で検出されたタイミングエラ
ーを除去するために、前記信号配線へのバッファの挿入
と置換を行う回路修正工程と、をさらに備えてもよい。The buffer arranging step includes a step of arranging the buffer at a branch point of a clock wiring, and the buffer replacing step shows a step unit indicating the same branch point from the clock signal supply circuit toward each circuit block. The step of replacing the buffer with may be provided. The buffer replacing step may include a step of replacing the buffer in units of even stages so that the logical value of the clock signal input to each circuit block is not inverted. The wiring designing step includes a step of designing a signal wiring for supplying a processing signal other than a clock signal to each circuit block, and the computing step includes
The method may include a step of obtaining the power consumption by increasing the power consumption caused by the parasitic capacitance of the clock wiring and the signal wiring. An error verifying step of verifying a timing error after the configuration of the clock wiring is determined in the configuration determining step, and a buffer insertion into the signal wiring to remove the timing error detected in the error verifying step. And a circuit modification step of performing replacement.
【0015】本発明の第3の観点にかかるコンピュータ
読み取り可能な記録媒体は、コンピュータを、クロック
信号供給回路から複数の回路ブロックにクロック信号を
供給するためのクロック配線を設計する配線設計手段
と、前記クロック配線の所定位置にインバータタイプと
ノンインバータタイプの一方のタイプのバッファを配置
することにより、第1構成を有するクロック配線を設計
するバッファ配置手段と、前記バッファの内、所定数の
バッファをインバータタイプとノンインバータタイプの
他方のタイプのバッファに置換することにより、第2構
成を有するクロック配線を設計するバッファ置換手段
と、前記第1構成及び前記第2構成のクロック配線全体
で消費される電力をそれぞれ求める演算手段と、前記演
算手段が求めた第1構成を有するクロック配線の消費電
力と第2構成を有するクロック配線の消費電力とを比較
し、どちらの消費電力が小さいかを判別する判別手段
と、前記判別手段の判別結果に従って、クロック配線の
構成を消費電力が小さい方の構成に決定する構成決定手
段と、を備えたクロックツリー設計装置として機能させ
るためのプログラムを記録している。A computer-readable recording medium according to a third aspect of the present invention includes wiring design means for designing clock wiring for supplying a clock signal from a clock signal supply circuit to a plurality of circuit blocks in a computer. A buffer arranging means for designing a clock wire having a first configuration by arranging one of an inverter type buffer and a non-inverter type buffer at a predetermined position of the clock wiring, and a predetermined number of the buffers among the buffers. Buffer replacement means for designing the clock wiring having the second configuration by replacing the buffer with the other type of the inverter type and the non-inverter type, and the entire clock wiring of the first configuration and the second configuration is consumed. Computation means for obtaining electric power and the first structure obtained by the computation means The power consumption of the clock wiring having the second configuration is compared with the power consumption of the clock wiring having the second configuration, and the configuration of the clock wiring is determined according to the determination means that determines which power consumption is smaller, and the determination result of the determination means. A program for functioning as a clock tree designing device having a configuration determining unit that determines the configuration with lower power consumption is recorded.
【0016】[0016]
【発明の実施の形態】次に、本発明の第1の実施の形態
にかかるクロックツリー設計装置について図面を参照し
て説明する。第1の実施の形態にかかるクロックツリー
設計装置は、例えば図1に示すように、配線部11と、
配線情報部12と、演算部13と、比較部14と、構成
決定部15と、から構成されている。配線部11は、既
知の配置配線ツールを備え、予め与えられた回路仕様に
従って、回路ブロックの配置位置や、クロック信号供給
回路から各回路ブロックにクロック信号を供給するため
のクロック配線(クロックツリー)を設計する。また、
配線部11は、設計したクロック配線の各分岐点にノン
インバータタイプのバッファを配置する。これにより、
配線部11は、回路ブロックの配置位置やクロック配線
の形成位置等を示すクロック配線図を生成する。DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, a clock tree designing device according to a first embodiment of the present invention will be described with reference to the drawings. The clock tree designing apparatus according to the first exemplary embodiment includes a wiring unit 11 as shown in FIG.
The wiring information unit 12, the calculation unit 13, the comparison unit 14, and the configuration determination unit 15 are configured. The wiring unit 11 includes a known placement and routing tool, and according to a circuit specification given in advance, a placement position of a circuit block and a clock wiring (clock tree) for supplying a clock signal from a clock signal supply circuit to each circuit block. To design. Also,
The wiring unit 11 arranges a non-inverter type buffer at each branch point of the designed clock wiring. This allows
The wiring unit 11 generates a clock wiring diagram showing the arrangement positions of circuit blocks, the formation positions of clock wirings, and the like.
【0017】配線情報部12は、配線部11が生成した
クロック配線図から、クロック配線の容量値及び抵抗値
を求める。また、配線情報部12は、配線部11が生成
したクロック配線図から、例えば図2(a)に示すよう
な、バッファの接続関係(配置位置等)を示すネットリ
ストを生成する。ネットリストで示されるバッファは、
クロック信号供給回路から回路ブロックまでに存在する
クロック配線の分岐点の内、何番目の分岐点に配置され
ているかによって、1段目、2段目、・・・と分類され
る。例えば、図2(a)では、バッファ21は1段目、
バッファ22及びバッファ23は2段目、バッファ24
〜27は3段目に分類される。配線情報部12は、この
ようなネットリストを生成した後、バッファのタイプを
インバータタイプに変更し、例えば図2(b)に示すよ
うなた仮ネットリストを生成する。なお、配線情報部1
2は、各回路ブロックに入力されるクロック信号の論理
値が反転しないように、偶数段単位でバッファを置換す
る。例えば図2(b)では、図2(a)に示すネットリ
ストの2段目に配置されたバッファ22,23がインバ
ータタイプのバッファ32,33に、3段目に配置され
たバッファ24〜27がインバータタイプのバッファ3
4〜37に置換されている。The wiring information unit 12 obtains the capacitance value and resistance value of the clock wiring from the clock wiring diagram generated by the wiring unit 11. Further, the wiring information unit 12 generates a netlist showing the connection relation (arrangement position etc.) of the buffer as shown in FIG. 2A from the clock wiring diagram generated by the wiring unit 11. The buffer shown in the netlist is
Of the branch points of the clock wiring existing from the clock signal supply circuit to the circuit block, the first branch is classified into the first branch, the second branch, etc., depending on the branch point. For example, in FIG. 2A, the buffer 21 is in the first stage,
The buffer 22 and the buffer 23 are the second stage, and the buffer 24
~ 27 are classified in the third row. After generating such a netlist, the wiring information unit 12 changes the buffer type to the inverter type and generates a temporary netlist as shown in FIG. 2B, for example. The wiring information section 1
2 replaces the buffer in units of even stages so that the logic value of the clock signal input to each circuit block is not inverted. For example, in FIG. 2B, the buffers 22 and 23 arranged in the second stage of the netlist shown in FIG. 2A are provided in the inverter type buffers 32 and 33 and the buffers 24 to 27 arranged in the third stage. Is an inverter type buffer 3
4 to 37.
【0018】演算部13は、ノンインバータタイプのバ
ッファの全て又は一部をインバータタイプのバッファに
置換する前後のそれぞれについて、クロック配線全体で
消費される電力を求める。具体的には、演算部13は、
配線情報部12からのネットリスト(仮ネットリス
ト)、配線容量、及び、配線抵抗から、クロック配線で
生じる信号の遅延時間を求め、遅延時間から各バッファ
に入力される信号波形の鈍りを求める。そして、演算部
13は、求めた信号波形の鈍りと配線容量とから、バッ
ファから出力される信号が”010”と一往復する際に
生じるクロック配線全体の消費電力を算出する。The operation unit 13 obtains the power consumed by the entire clock wiring before and after replacing all or part of the non-inverter type buffer with the inverter type buffer. Specifically, the calculation unit 13
The delay time of the signal generated in the clock wiring is obtained from the netlist (temporary netlist), the wiring capacitance, and the wiring resistance from the wiring information unit 12, and the dullness of the signal waveform input to each buffer is obtained from the delay time. Then, the calculation unit 13 calculates the power consumption of the entire clock wiring generated when the signal output from the buffer makes one round trip to “010” from the obtained signal waveform bluntness and the wiring capacitance.
【0019】比較部14は、演算部13がバッファの置
換を行う前と後についてそれぞれ算出した消費電力を比
較し、どちらの消費電力が小さいかを判別し、その判別
結果を構成決定部15に出力する。構成決定部15は、
比較部14から供給された判別結果に従って、クロック
配線の構成を決定する。具体的には、バッファを置換す
る前、即ち、インバータタイプのバッファを用いない方
が消費電力が小さいと判別された場合、構成決定部15
は、ノンインバータタイプのバッファのみを用いたクロ
ック配線の構成に決定する。一方、バッファを置換した
後の方が消費電力が小さいと判別された場合、構成決定
部15は、バッファを偶数段単位でインバータタイプに
置換した後のクロック配線の構成に決定する。The comparison unit 14 compares the power consumptions calculated by the arithmetic unit 13 before and after the buffer replacement, determines which power consumption is smaller, and the determination result is sent to the configuration determination unit 15. Output. The configuration determining unit 15
The configuration of the clock wiring is determined according to the determination result supplied from the comparison unit 14. Specifically, before replacing the buffer, that is, when it is determined that the power consumption is smaller when the inverter type buffer is not used, the configuration determination unit 15
Determines a clock wiring configuration using only non-inverter type buffers. On the other hand, when it is determined that the power consumption after replacing the buffer is smaller, the configuration determining unit 15 determines the configuration of the clock wiring after replacing the buffer with the inverter type in units of even stages.
【0020】図3は、上記ノンインバータタイプのバッ
ファ及びインバータタイプのバッファが有する入力波形
鈍り(TRF)−消費電力特性図である。ノンインバー
タタイプのバッファは、CMOS回路から形成されたイ
ンバータタイプのバッファを2つ直列に接続したもので
あるため、ノンインバータタイプのバッファを構成する
トランジスタ等の素子数はインバータタイプのバッファ
よりも多い。このため、図3に示すように、同一のTR
Fでは、インバータタイプバッファの消費電力は、ノン
インバータタイプバッファの消費電力よりも小さい。FIG. 3 is an input waveform blunt (TRF) -power consumption characteristic diagram of the non-inverter type buffer and the inverter type buffer. Since the non-inverter type buffer is formed by connecting two inverter type buffers formed of a CMOS circuit in series, the number of elements such as transistors forming the non-inverter type buffer is larger than that of the inverter type buffer. . Therefore, as shown in FIG.
In F, the power consumption of the inverter type buffer is smaller than the power consumption of the non-inverter type buffer.
【0021】一方、インバータタイプのバッファは1段
のCMOS回路から構成されているため、その入力波形
の鈍りは、出力側に接続される負荷によって大きく影響
される。言い換えると、バッファをノンインバータタイ
プからインバータタイプに変更すると、回路ブロックの
構成によっては、入力波形の鈍りがわずかしか増加しな
かったり、大きく増加したりする。このため、図3に示
すように、TRFの増加が図3中のABのように小さけ
れば、バッファをノンインバータタイプからインバータ
タイプに変更すると消費電力は小さくなる。一方、TR
Fの増加が図3中のACのように大きければ、バッファ
をノンインバータタイプからインバータタイプに変更す
ると、消費電力が大きくなってしまう。しかし、上記し
たように、比較部14が消費電力の大きさを比較し、構
成決定部15が消費電力が小さい方の構成を選択するこ
とにより、低消費電力のクロック配線を実現することが
できる。On the other hand, since the inverter type buffer is composed of a single-stage CMOS circuit, the dullness of the input waveform is greatly affected by the load connected to the output side. In other words, when the buffer is changed from the non-inverter type to the inverter type, the bluntness of the input waveform increases slightly or greatly depending on the configuration of the circuit block. Therefore, as shown in FIG. 3, if the increase in TRF is small as indicated by AB in FIG. 3, power consumption is reduced when the buffer is changed from the non-inverter type to the inverter type. On the other hand, TR
If the increase of F is large like AC in FIG. 3, the power consumption will be large when the buffer is changed from the non-inverter type to the inverter type. However, as described above, the comparison unit 14 compares the magnitudes of power consumption, and the configuration determination unit 15 selects the configuration with the smaller power consumption, whereby clock wiring with low power consumption can be realized. .
【0022】次に、以上のように構成されたクロックツ
リー設計装置の動作について説明する。なお、以下の説
明では、理解を容易にするために、回路ブロックが4つ
の場合を例として説明する。図4は、上記クロックツリ
ー設計装置のクロックツリー設計処理を示すフローチャ
ートである。始めに、配線部11は、予め与えられた回
路仕様に従って回路ブロックの配置位置、及び、クロッ
ク配線の形成位置を設計する。その後、配線部11は、
回路ブロックの数に応じた数のノンインバータタイプの
バッファをクロック配線の各分岐点に挿入したクロック
配線図を生成する(ステップS101)。クロック配線
図では、例えば図5に示すように、4つの回路ブロック
40a〜40dが所定位置に配置され、各分岐点から対
称に伸びたクロック配線CLが形成され、クロック配線
の各分岐点に、ノンインバータタイプのバッファ51〜
57が挿入される。Next, the operation of the clock tree designing device configured as described above will be described. In the following description, in order to facilitate understanding, a case where there are four circuit blocks will be described as an example. FIG. 4 is a flowchart showing a clock tree designing process of the clock tree designing apparatus. First, the wiring unit 11 designs the layout position of the circuit block and the formation position of the clock wiring according to the circuit specifications given in advance. After that, the wiring section 11
A clock wiring diagram in which a number of non-inverter type buffers corresponding to the number of circuit blocks are inserted at each branch point of the clock wiring is generated (step S101). In the clock wiring diagram, for example, as shown in FIG. 5, four circuit blocks 40a to 40d are arranged at predetermined positions, a clock wiring CL symmetrically extending from each branch point is formed, and each branch point of the clock wiring is Non-inverter type buffer 51-
57 is inserted.
【0023】次に、配線情報部12は、配線部11が生
成したクロック配線図から、クロック配線の配線容量及
び配線抵抗を求める(ステップS102)。続いて、配
線情報部12は、配線部11が生成したクロック配線図
から、図6(a)に示すようなネットリストを生成する
(ステップS103)。そして、配線情報部12は、バ
ッファのタイプを偶数段単位で置換し、仮ネットリスト
を生成する。具体的には、配線情報部12は、始めに最
下段である3段目のバッファ54〜57をインバータタ
イプのバッファ64〜67に置換する。そして、配線情
報部12は、クロック信号の論理値を保持するために、
2段目のバッファ52,53をインバータタイプのバッ
ファ62,63に置換し、図6(b)に示すような仮ネ
ットリストを生成する(ステップS104)。Next, the wiring information unit 12 obtains the wiring capacitance and wiring resistance of the clock wiring from the clock wiring diagram generated by the wiring unit 11 (step S102). Subsequently, the wiring information unit 12 generates a netlist as shown in FIG. 6A from the clock wiring diagram generated by the wiring unit 11 (step S103). Then, the wiring information unit 12 replaces the buffer type in units of an even number of stages to generate a temporary netlist. Specifically, the wiring information unit 12 first replaces the buffers 54 to 57 of the third stage, which is the lowest stage, with the buffers 64 to 67 of the inverter type. Then, the wiring information unit 12 holds the logical value of the clock signal,
The second stage buffers 52 and 53 are replaced with inverter type buffers 62 and 63 to generate a temporary netlist as shown in FIG. 6B (step S104).
【0024】次に、演算部13は、配線情報部12から
供給されたネットリスト、仮ネットリスト、配線容量、
及び、配線抵抗から、ノンインバータタイプのバッファ
をインバータタイプのバッファに置換する前と後のそれ
ぞれについて、クロック配線全体で消費される電力を算
出する(ステップS105)。そして、比較部14は、
演算部13がバッファの置換を行う前と後についてそれ
ぞれ算出した消費電力のどちらが小さいかを判別し(ス
テップS106)、その判別結果を配線決定部15に出
力する。Next, the calculation unit 13 supplies the netlist, the temporary netlist, the wiring capacitance, which are supplied from the wiring information unit 12,
Then, the power consumed by the entire clock wiring is calculated from the wiring resistance before and after the replacement of the non-inverter type buffer with the inverter type buffer (step S105). Then, the comparison unit 14
The calculation unit 13 determines which of the power consumptions calculated before and after the replacement of the buffer is smaller (step S106), and outputs the determination result to the wiring determination unit 15.
【0025】構成決定部15は、比較部14から供給さ
れた判別結果に従って、クロック配線の構成を決定する
(ステップS107)。例えば、バッファを置換する
前、即ち、インバータタイプのバッファを用いない方が
消費電力が小さいと判別された場合、配線決定部15
は、図5のクロック配線図で示された構成に決定する。
一方、バッファを置換した後の方が消費電力が小さいと
判別された場合、構成決定部15は、図7に示すよう
に、2段目及び3段目のバッファをインバータタイプの
バッファに置換した構成に決定する。以上で、クロック
ツリー設計装置は、クロックツリー設計処理を終了す
る。以上のように、クロック配線にインバータタイプの
バッファを用いた場合の消費電力と、用いない場合の消
費電力とを比較し、消費電力が小さい方の構成を採用す
ることにより、消費電力が小さいクロック配線(クロッ
クツリー)を設計することができる。The configuration determining unit 15 determines the configuration of the clock wiring according to the determination result supplied from the comparing unit 14 (step S107). For example, when it is determined that the power consumption is smaller before the buffer is replaced, that is, when the inverter type buffer is not used, the wiring determination unit 15
Determines the configuration shown in the clock wiring diagram of FIG.
On the other hand, when it is determined that the power consumption after replacing the buffer is smaller, the configuration determining unit 15 replaces the second-stage and third-stage buffers with inverter-type buffers as shown in FIG. Determine the configuration. Thus, the clock tree designing device ends the clock tree designing process. As described above, by comparing the power consumption when the inverter type buffer is used for the clock wiring and the power consumption when it is not used, and adopting the configuration with the smaller power consumption, the clock with the smaller power consumption is used. Wiring (clock tree) can be designed.
【0026】次に、本発明の第2の実施の形態にかかる
クロックツリー設計装置について図面を参照して説明す
る。第2の実施の形態にかかるクロックツリー設計装置
は、第1の実施の形態で示したクロック配線の設計に加
えて、クロック信号以外の処理信号(制御信号、データ
等)を各回路ブロックに供給するための信号配線の設計
を行う。第2の実施の形態にかかるクロックツリー設計
装置は、例えば図8に示すように、配線部71と、配線
情報部72と、第1演算部73と、比較部74と、クロ
ック配線決定部75と、第2演算部76と、修正部77
と、から構成されている。Next, a clock tree designing apparatus according to a second embodiment of the present invention will be described with reference to the drawings. In addition to the clock wiring design shown in the first embodiment, the clock tree designing apparatus according to the second embodiment supplies processing signals (control signals, data, etc.) other than clock signals to each circuit block. Design signal wiring for this purpose. The clock tree designing apparatus according to the second embodiment, as shown in FIG. 8, for example, has a wiring unit 71, a wiring information unit 72, a first calculation unit 73, a comparison unit 74, and a clock wiring determination unit 75. And a second calculation unit 76 and a correction unit 77.
It consists of and.
【0027】配線部71は、既知の配置配線ツールを備
え、予め与えられた回路仕様に従って全ての配線を設計
する。具体的には、配線部71は、予め与えられた回路
仕様に従って回路ブロックの配置位置、上記クロック配
線、及び、上記信号配線を設計する。そして、配線部7
1は、回路ブロックの数に応じた数のノンインバータタ
イプのバッファをクロック配線に挿入し、ノンインバー
タタイプ及び/又はインバータタイプのバッファを信号
配線に挿入して、回路の配置配線図を生成する。配線情
報部72は、配線部71が生成した配置配線図から、ク
ロック配線及び信号配線の配線容量及び配線抵抗を求め
る。また、配線情報部72は、第1の実施の形態と同様
のネットリスト及び仮ネットリストを生成する。なお、
第1の実施の形態と同様に、配線情報部72は、仮ネッ
トリストを生成する際、各回路ブロックに入力されるク
ロック信号の論理値が反転しないように、バッファの置
換を偶数段単位で行う。The wiring section 71 is provided with a known placement and routing tool, and designs all wirings according to circuit specifications given in advance. Specifically, the wiring unit 71 designs the layout position of the circuit block, the clock wiring, and the signal wiring according to the circuit specifications given in advance. And the wiring part 7
In No. 1, the number of non-inverter type buffers corresponding to the number of circuit blocks is inserted in the clock wiring, and the non-inverter type and / or inverter type buffers are inserted in the signal wiring to generate a circuit layout / wiring diagram. . The wiring information unit 72 obtains the wiring capacitance and wiring resistance of the clock wiring and the signal wiring from the layout wiring diagram generated by the wiring unit 71. The wiring information unit 72 also generates a netlist and a temporary netlist similar to those in the first embodiment. In addition,
Similar to the first embodiment, the wiring information unit 72 replaces the buffer in even-numbered stages so that the logical value of the clock signal input to each circuit block is not inverted when the temporary netlist is generated. To do.
【0028】第1演算部73は、第1の実施の形態と同
様にして、ノンインバータタイプのバッファの全て又は
一部をインバータタイプのバッファに置換する前後のそ
れぞれについて、クロック配線全体で消費される電力を
求める。但し、第2の実施の形態では、第1演算部73
は、クロック配線と信号配線との間で発生する寄生容量
による影響(例えば消費電力の増加)も含めて上記消費
電力を求める。比較部74は、第1の実施の形態で示し
た比較部14と実質的に同一であり、第1演算部73が
バッファの置換を行う前と後についてそれぞれ算出した
消費電力を比較し、どちらの消費電力が小さいかを判別
し、その判別結果をクロック配線決定部75に出力す
る。クロック配線決定部75は、第1の実施の形態で示
した構成決定部15と実質的に同一であり、比較部74
から供給された判別結果に従って、クロック配線の構成
を決定する。具体的には、クロック配線決定部75は、
消費電力が小さい方の構成に決定する。Similar to the first embodiment, the first arithmetic unit 73 is consumed by the entire clock wiring before and after replacing all or part of the non-inverter type buffer with the inverter type buffer. To obtain the required power. However, in the second embodiment, the first calculation unit 73
Calculates the power consumption including the influence of parasitic capacitance generated between the clock wiring and the signal wiring (for example, increase in power consumption). The comparison unit 74 is substantially the same as the comparison unit 14 described in the first embodiment, and compares the power consumption calculated before and after the buffer replacement by the first calculation unit 73, It is determined whether the power consumption is low, and the determination result is output to the clock wiring determination unit 75. The clock wiring determination unit 75 is substantially the same as the configuration determination unit 15 shown in the first embodiment, and the comparison unit 74
The configuration of the clock wiring is determined according to the determination result supplied from Specifically, the clock wiring determination unit 75
Decide the configuration with the smaller power consumption.
【0029】第2演算部76は、クロック配線決定部7
5が決定した構成のクロック配線を用い、クロック配線
及び信号配線全体でタイミングエラーが発生していない
かどうかを検証する。具体的には、第2演算部76は、
クロック配線及び信号配線全体で生じる信号の遅延時間
を求め、フリップフロップ回路のセットアップタイム及
びホールドタイム等が所定値を満たしているかどうかを
検証する。そして、第2演算部76は、タイミング検証
の結果を修正部77に出力する。修正部77は、第2演
算部76から供給された検証結果に従って、タイミング
エラーが発生する箇所にバッファを挿入することによ
り、配線部71が生成した配置配線図を修正する。これ
により、修正部77は、タイミングエラーが発生した箇
所のバッファにかかる負荷を分散したり、遅延時間を低
減したりする。The second arithmetic unit 76 is a clock wiring determining unit 7.
Using the clock wiring having the configuration determined in 5, it is verified whether or not a timing error has occurred in the entire clock wiring and signal wiring. Specifically, the second calculation unit 76
The delay time of the signal generated in the entire clock wiring and signal wiring is obtained, and it is verified whether the setup time, the hold time, etc. of the flip-flop circuit satisfy predetermined values. Then, the second calculation unit 76 outputs the result of the timing verification to the correction unit 77. The correction unit 77 corrects the layout / wiring diagram generated by the wiring unit 71 by inserting a buffer at a position where a timing error occurs according to the verification result supplied from the second calculation unit 76. As a result, the correction unit 77 disperses the load on the buffer at the location where the timing error has occurred or reduces the delay time.
【0030】次に、以上のように構成されたクロックツ
リー設計装置の動作について説明する。図9は、上記ク
ロックツリー設計装置の配線設計処理を示すフローチャ
ートである。始めに、配線部71は、予め与えられた回
路仕様に従って回路ブロックの配置位置、及び、クロッ
ク配線を設計し、回路ブロックの数に応じた数のノンイ
ンバータタイプのバッファをクロック配線に挿入する
(ステップS201)。続いて、配線部71は、信号配
線を設計し、回路ブロックの数に応じた数のノンインバ
ータタイプ及び/又はインバータタイプのバッファを信
号配線に挿入することにより、回路の配置配線図を生成
する(ステップS202)。Next, the operation of the clock tree designing device configured as described above will be described. FIG. 9 is a flowchart showing a wiring design process of the clock tree designing device. First, the wiring unit 71 designs the layout positions of the circuit blocks and the clock wirings in accordance with the circuit specifications given in advance, and inserts as many non-inverter type buffers into the clock wirings as the number of circuit blocks ( Step S201). Subsequently, the wiring unit 71 generates a circuit layout and wiring diagram by designing signal wirings and inserting as many non-inverter type and / or inverter type buffers as the number of circuit blocks into the signal wirings. (Step S202).
【0031】次に、配線情報部72は、配線部71が生
成した配置配線図から、クロック配線及び信号配線の配
線容量及び配線抵抗を求める(ステップS203)。続
いて、配線情報部72は、配線部71が生成した配置配
線図から、第1の実施の形態と同様に、ノンインバータ
タイプのバッファのみを用いた場合のネットリストを生
成する(ステップS204)。そして、配線情報部72
は、第1の実施の形態と同様に、バッファのタイプを偶
数段単位で置換し、仮ネットリストを生成する(ステッ
プS205)。その後、第1演算部73は、配線情報部
72から供給されたネットリスト、仮ネットリスト、配
線容量、及び、配線抵抗から、ノンインバータタイプの
バッファの全て又は一部をインバータタイプのバッファ
に置換する前後のそれぞれについて、クロック配線全体
で消費される電力をを算出する(ステップS206)。
この際、第1演算部73は、上記したように、クロック
配線と信号配線との間で発生する寄生容量による影響も
含めて上記消費電力を求める。Next, the wiring information unit 72 obtains the wiring capacitance and wiring resistance of the clock wiring and the signal wiring from the layout wiring diagram generated by the wiring unit 71 (step S203). Subsequently, the wiring information unit 72 generates a netlist in the case where only the non-inverter type buffer is used, from the layout and wiring diagram generated by the wiring unit 71 (step S204), as in the first embodiment. . Then, the wiring information section 72
In the same manner as in the first embodiment, replaces the buffer type in units of even stages and generates a temporary netlist (step S205). After that, the first calculation unit 73 replaces all or part of the non-inverter type buffer with the inverter type buffer from the netlist, the temporary netlist, the wiring capacitance, and the wiring resistance supplied from the wiring information unit 72. Before and after, the power consumed by the entire clock wiring is calculated (step S206).
At this time, the first calculation unit 73 obtains the power consumption including the influence of the parasitic capacitance generated between the clock wiring and the signal wiring as described above.
【0032】そして、比較部74は、第1演算部73が
バッファの置換を行う前と後についてそれぞれ算出した
消費電力のどちらが小さいかを判別し(ステップS20
7)、その判別結果をクロック配線決定部75に出力す
る。クロック配線決定部75は、第1の実施の形態と同
様に、比較部74から供給された判別結果に従って、ク
ロック配線の構成を決定する(ステップS208)。次
に、第2演算部76は、クロック配線決定部75が決定
したクロック配線を用い、クロック配線及び信号配線の
全体で生じる信号の遅延時間を求め、クロック配線及び
信号配線全体でタイミングエラー等が発生しないかどう
かを検証する(ステップS209)。Then, the comparison section 74 determines which of the power consumptions calculated by the first calculation section 73 before and after the buffer replacement is smaller (step S20).
7), and outputs the determination result to the clock wiring determining unit 75. The clock wiring determination unit 75 determines the configuration of the clock wiring according to the determination result supplied from the comparison unit 74, as in the first embodiment (step S208). Next, the second calculation unit 76 uses the clock wiring determined by the clock wiring determination unit 75 to obtain the delay time of the signal generated in the entire clock wiring and the signal wiring, and the timing error and the like in the entire clock wiring and the signal wiring. It is verified whether it does not occur (step S209).
【0033】そして、修正部77は、第2演算部76の
検証結果に従って、タイミングエラーが発生する箇所に
バッファを挿入することにより、配線部71が生成した
配置配線図を修正し(ステップS210)、配線設計処
理を終了する。以上に示したように、第2の実施の形態
にかかるクロックツリー設計装置は、クロック配線及び
信号配線を形成した後に、クロック配線での消費電力を
求めている。このため、クロック配線と信号配線との間
で発生する寄生容量等による影響を考慮することがで
き、消費電力をより正確に求めることができる。即ち、
上記クロックツリー設計装置は、低消費電力のクロック
配線を効率よく設計することができる。Then, the correction unit 77 corrects the layout / wiring diagram generated by the wiring unit 71 by inserting a buffer at the position where the timing error occurs in accordance with the verification result of the second operation unit 76 (step S210). , The wiring design process ends. As described above, the clock tree designing apparatus according to the second embodiment calculates the power consumption of the clock wiring after forming the clock wiring and the signal wiring. Therefore, the influence of the parasitic capacitance or the like generated between the clock wiring and the signal wiring can be considered, and the power consumption can be obtained more accurately. That is,
The clock tree designing device can efficiently design low power consumption clock wiring.
【0034】なお、上記実施の形態では、クロック配線
に挿入された2段目及び3段目のバッファをノンインバ
ータタイプからインバータタイプに変更する例を示した
が、偶数段単位であれば、上記以外のバッファを置換し
てもよい。例えば、1段目と3段目のバッファを置換し
てもよく、1段目と2段目のバッファを置換してもよ
い。また、置換のパターンが複数ある場合は、それらの
全て又はいくつかの消費電力を求め、それらのうちで最
も消費電力が低いクロック配線の構成を採用するように
してもよい。また、第2の実施の形態で示したクロック
ツリー設計装置は、図9に示した配線設計処理のステッ
プS203からステップS210の処理を、ステップS
209でタイミングエラーが検出されなくなるまで繰り
返してもよい。In the above embodiment, an example in which the buffers of the second and third stages inserted in the clock wiring are changed from the non-inverter type to the inverter type has been described. Buffers other than may be replaced. For example, the buffers in the first and third stages may be replaced, and the buffers in the first and second stages may be replaced. If there are a plurality of replacement patterns, the power consumption of all or some of them may be obtained, and the configuration of the clock wiring with the lowest power consumption may be adopted. Further, the clock tree designing apparatus shown in the second embodiment performs the processing from step S203 to step S210 of the wiring design processing shown in FIG.
It may be repeated until the timing error is not detected in 209.
【0035】また、上記実施の形態では、始めにノンイ
ンバータタイプのバッファをクロック配線に挿入し、そ
の後、バッファを偶数段単位でインバータタイプのバッ
ファに置換する例を示した。しかし、始めにインバータ
タイプのバッファをクロック配線に挿入し、その後、バ
ッファを偶数段単位でノンインバータタイプのバッファ
に置換してもよい。また、クロック信号の論理値が反転
してもよい場合は、偶数段単位、奇数段単位に関係な
く、バッファのタイプを段単位で置換し、最も消費電力
の小さい構成を採用するようにしてもよい。Further, in the above-described embodiment, an example is shown in which a non-inverter type buffer is first inserted in the clock wiring and then the buffer is replaced with an inverter type buffer in units of even stages. However, an inverter type buffer may be first inserted in the clock wiring, and then the buffer may be replaced with a non-inverter type buffer in units of even stages. If the logical value of the clock signal may be inverted, the buffer type may be replaced in units of stages, regardless of whether it is in units of even stages or units of odd stages, and the configuration with the lowest power consumption may be adopted. Good.
【0036】また、本発明の装置は、専用の装置を用い
る必要はなく、通常のコンピュータにより実現すること
ができる。例えば、コンピュータに上記各処理を実行す
るためのプログラム及びデータを記録媒体(フロッピー
ディスク、CD−ROM等)に記録して配布し、これを
インストールしてOS上で実行することにより、この発
明の装置を実現できる。また、プログラム及びデータの
配布は、CD−ROM等に限らず、通信回線等を介して
行われてもよい。Further, the device of the present invention does not need to use a dedicated device and can be realized by an ordinary computer. For example, by recording a program and data for executing each of the above processes on a computer in a recording medium (floppy disk, CD-ROM, etc.), distributing the program, installing the program, and executing the program on the OS, the present invention can be realized. The device can be realized. Further, the distribution of the program and data is not limited to the CD-ROM or the like, but may be performed via a communication line or the like.
【0037】[0037]
【発明の効果】以上の説明から明らかなように、本発明
によって、低消費電力のクロック配線を設計することが
できる。As is apparent from the above description, the present invention enables the design of low power consumption clock wiring.
【図1】第1の実施の形態にかかるクロックツリー設計
装置の構成図である。FIG. 1 is a configuration diagram of a clock tree designing apparatus according to a first embodiment.
【図2】クロック配線とバッファとの接続関係を示すネ
ットリストを示す図である。FIG. 2 is a diagram showing a netlist showing a connection relationship between clock wirings and buffers.
【図3】ノンインバータタイプのバッファとインバータ
タイプのバッファが有する、入力波形鈍り(TRF)−
消費電力特性を示す図である。FIG. 3 shows the input waveform blunting (TRF) of a non-inverter type buffer and an inverter type buffer.
It is a figure which shows a power consumption characteristic.
【図4】第1の実施の形態にかかるクロックツリー設計
装置が行うクロックツリー設計処理を示すフローチャー
トである。FIG. 4 is a flowchart showing a clock tree designing process performed by the clock tree designing apparatus according to the first embodiment.
【図5】クロックツリー設計装置が生成する回路の配置
配線図の例である。FIG. 5 is an example of a layout and wiring diagram of a circuit generated by the clock tree designing device.
【図6】図5の配置配線図から生成されたネットリスト
を示す図である。FIG. 6 is a diagram showing a netlist generated from the layout and wiring diagram of FIG. 5;
【図7】図5の配置配線図に示されたバッファのタイプ
を変更した配置配線図である。7 is a layout and wiring diagram in which the type of the buffer shown in the layout and wiring diagram of FIG. 5 is changed.
【図8】第2の実施の形態にかかるクロックツリー設計
装置の構成図である。FIG. 8 is a configuration diagram of a clock tree designing device according to a second embodiment.
【図9】第2の実施の形態にかかるクロックツリー設計
装置が行う配線設計処理を示すフローチャートである。FIG. 9 is a flowchart showing a wiring design process performed by the clock tree designing apparatus according to the second embodiment.
11 配線部 12 配線情報部 13 演算部 14 比較部 15 構成決定部 71 配線部 72 配線情報部 73 第1演算部 74 比較部 75 クロック配線決定部 76 第2演算部 77 修正部 11 Wiring part 12 Wiring information section 13 Operation part 14 Comparison section 15 Configuration determination unit 71 Wiring part 72 Wiring information section 73 First Operation Unit 74 Comparison Department 75 Clock wiring determination unit 76 Second operation unit 77 Correction Department
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H01L 21/82 G06F 17/50 H01L 21/822 H01L 27/04 ─────────────────────────────────────────────────── ─── Continuation of the front page (58) Fields surveyed (Int.Cl. 7 , DB name) H01L 21/82 G06F 17/50 H01L 21/822 H01L 27/04
Claims (11)
ックにクロック信号を供給するためのクロック配線を設
計する配線設計手段と、 前記クロック配線の所定位置にインバータタイプとノン
インバータタイプの一方のタイプのバッファを配置する
ことにより、第1構成を有するクロック配線を設計する
バッファ配置手段と、 前記バッファの内、所定数のバッファをインバータタイ
プとノンインバータタイプの他方のタイプのバッファに
置換することにより、第2構成を有するクロック配線を
設計するバッファ置換手段と、 前記第1構成及び前記第2構成のクロック配線全体で消
費される電力をそれぞれ求める演算手段と、 前記演算手段が求めた第1構成を有するクロック配線の
消費電力と第2構成を有するクロック配線の消費電力と
を比較し、どちらの消費電力が小さいかを判別する判別
手段と、 前記判別手段の判別結果に従って、クロック配線の構成
を消費電力が小さい方の構成に決定する構成決定手段
と、 を備えることを特徴とするクロックツリー設計装置。1. A wiring design means for designing a clock wiring for supplying a clock signal from a clock signal supply circuit to a plurality of circuit blocks, and one of an inverter type and a non-inverter type at a predetermined position of the clock wiring. By arranging a buffer, buffer arranging means for designing a clock wiring having the first configuration, and by replacing a predetermined number of the buffers with another type of buffer of the inverter type and the non-inverter type among the buffers, A buffer replacement means for designing a clock wiring having a second configuration; a computing means for determining the power consumed by the entire clock wiring of the first configuration and the second configuration; and a first configuration determined by the computing means. Comparing the power consumption of the clock wiring having it with the power consumption of the clock wiring having the second configuration In comparison, a determining unit that determines which of the power consumptions is smaller, and a configuration determining unit that determines the configuration of the clock wiring to the configuration with the smaller power consumption according to the determination result of the determining unit are provided. Clock tree design device.
分岐点に前記バッファを配置し、 前記バッファ置換手段は、クロック信号供給回路から各
回路ブロックに向かって同一番目の分岐点を示す段単位
でバッファを置換する、 ことを特徴とする請求項1に記載のクロックツリー設計
装置。2. The buffer arranging means arranges the buffer at a branch point of a clock wiring, and the buffer replacing means is in units of stages indicating the same branch point from the clock signal supply circuit toward each circuit block. The clock tree designing device according to claim 1, wherein the buffer is replaced.
に入力されるクロック信号の論理値が反転しないよう
に、偶数段単位で前記バッファを置換する、ことを特徴
とする請求項2に記載のクロックツリー設計装置。3. The buffer replacing means replaces the buffer in units of even stages so that the logical value of the clock signal input to each circuit block is not inverted. Clock tree design device.
処理信号を各回路ブロックに供給するための信号配線を
設計し、 前記演算手段は、クロック配線と信号配線の寄生容量に
よって生じる消費電力の増加を加えて前記消費電力を求
める、 ことを特徴とする請求項1乃至3の何れか1項に記載の
クロックツリー設計装置。4. The wiring design means designs a signal wiring for supplying a processing signal other than a clock signal to each circuit block, and the computing means calculates a power consumption caused by a parasitic capacitance between the clock wiring and the signal wiring. The clock tree designing device according to any one of claims 1 to 3, wherein the power consumption is calculated by adding an increase.
決定した後にタイミングエラーの検証を行うエラー検証
手段と、 前記エラー検証手段によって検出されたタイミングエラ
ーを除去するために、前記信号配線へのバッファの挿入
と置換を行う回路修正手段と、 をさらに備えることを特徴とする請求項4に記載のクロ
ックツリー設計装置。5. An error verifying means for verifying a timing error after the structure determining means determines a structure of a clock wiring, and an error verifying means for removing the timing error detected by the error verifying means. The clock tree designing apparatus according to claim 4, further comprising: a circuit modifying unit that inserts and replaces a buffer.
ックにクロック信号を供給するためのクロック配線を設
計する配線設計工程と、 前記クロック配線の所定位置にインバータタイプとノン
インバータタイプの一方のタイプのバッファを配置する
ことにより、第1構成を有するクロック配線を設計する
バッファ配置工程と、 前記バッファの内、所定数のバッファをインバータタイ
プとノンインバータタイプの他方のタイプのバッファに
置換することにより、第2構成を有するクロック配線を
設計するバッファ置換工程と、 前記第1構成及び前記第2構成のクロック配線全体で消
費される電力をそれぞれ求める演算工程と、 前記演算工程で求められた第1構成を有するクロック配
線の消費電力と第2構成を有するクロック配線の消費電
力とを比較し、どちらの消費電力が小さいかを判別する
判別工程と、 前記判別工程の判別結果に従って、クロック配線の構成
を消費電力が小さい方の構成に決定する構成決定工程
と、 を備えることを特徴とするクロックツリー設計方法。6. A wiring design process for designing a clock wiring for supplying a clock signal from a clock signal supply circuit to a plurality of circuit blocks, and one of an inverter type and a non-inverter type at a predetermined position of the clock wiring. By arranging the buffers, a buffer arranging step of designing a clock wiring having the first configuration, and by replacing a predetermined number of the buffers with the other type of buffers of the inverter type and the non-inverter type among the buffers, A buffer replacement step of designing a clock wiring having a second configuration, an operation step of obtaining electric power consumed by the entire clock wirings of the first configuration and the second configuration, and a first configuration obtained in the operation step. Of the clock wiring having the second configuration and the power consumption of the clock wiring having the second configuration And a configuration determining step of determining the configuration of the clock wiring to the configuration with the smaller power consumption according to the determination result of the determination step. Characteristic clock tree design method.
分岐点に前記バッファを配置する工程を備え、 前記バッファ置換工程は、クロック信号供給回路から各
回路ブロックに向かって同一番目の分岐点を示す段単位
でバッファを置換する工程を備える、 ことを特徴とする請求項6に記載のクロックツリー設計
方法。7. The buffer arranging step includes a step of arranging the buffer at a branch point of a clock wiring, and the buffer replacing step indicates the same branch point from the clock signal supply circuit toward each circuit block. 7. The clock tree designing method according to claim 6, further comprising a step of replacing the buffer in units of stages.
に入力されるクロック信号の論理値が反転しないよう
に、偶数段単位で前記バッファを置換する工程を備え
る、ことを特徴とする請求項7に記載のクロックツリー
設計方法。8. The buffer replacing step comprises a step of replacing the buffer in units of an even number of stages so that a logic value of a clock signal input to each circuit block is not inverted. Clock tree design method described in.
処理信号を各回路ブロックに供給するための信号配線を
設計する工程を備え、 前記演算工程は、クロック配線と信号配線の寄生容量に
よって生じる消費電力の増加を加えて前記消費電力を求
める工程を備える、 ことを特徴とする請求項6乃至8の何れか1項に記載の
クロックツリー設計方法。9. The wiring designing step comprises a step of designing a signal wiring for supplying a processing signal other than a clock signal to each circuit block, and the computing step is caused by a parasitic capacitance of the clock wiring and the signal wiring. 9. The clock tree designing method according to claim 6, further comprising a step of obtaining the power consumption by adding an increase in power consumption.
が決定された後にタイミングエラーの検証を行うエラー
検証工程と、 前記エラー検証工程で検出されたタイミングエラーを除
去するために、前記信号配線へのバッファの挿入と置換
を行う回路修正工程と、 をさらに備えることを特徴とする請求項9に記載のクロ
ックツリー設計方法。10. An error verifying step of verifying a timing error after the configuration of the clock wiring is determined in the configuration determining step, and the signal wiring to remove the timing error detected in the error verifying step. 10. The clock tree designing method according to claim 9, further comprising: a circuit modification step of inserting and replacing the buffer of.
ク信号を供給するためのクロック配線を設計する配線設
計手段と、 前記クロック配線の所定位置にインバータタイプとノン
インバータタイプの一方のタイプのバッファを配置する
ことにより、第1構成を有するクロック配線を設計する
バッファ配置手段と、 前記バッファの内、所定数のバッファをインバータタイ
プとノンインバータタイプの他方のタイプのバッファに
置換することにより、第2構成を有するクロック配線を
設計するバッファ置換手段と、 前記第1構成及び前記第2構成のクロック配線全体で消
費される電力をそれぞれ求める演算手段と、 前記演算手段が求めた第1構成を有するクロック配線の
消費電力と第2構成を有するクロック配線の消費電力と
を比較し、どちらの消費電力が小さいかを判別する判別
手段と、 前記判別手段の判別結果に従って、クロック配線の構成
を消費電力が小さい方の構成に決定する構成決定手段
と、 を備えたクロックツリー設計装置として機能させるため
のプログラムを記録したコンピュータ読み取り可能な記
録媒体。11. A wiring design means for designing a clock wiring for supplying a clock signal from a clock signal supply circuit to a plurality of circuit blocks, and one of an inverter type and a non-inverter type at a predetermined position of the clock wiring. Arranging a buffer of this type, a buffer arranging means for designing a clock wiring having the first configuration, and a predetermined number of buffers of the buffers are replaced with another type of buffer, an inverter type and a non-inverter type. Thus, the buffer replacement means for designing the clock wiring having the second configuration, the computing means for respectively determining the power consumed by the entire clock wiring of the first configuration and the second configuration, and the Power consumption of clock wiring having one configuration and clock having second configuration A determining unit that compares the power consumption of the lines and determines which of the power consumptions is smaller; and a configuration determining unit that determines the configuration of the clock wiring to the one with the smaller power consumption according to the determination result of the determining unit. A computer-readable recording medium having a program recorded thereon for functioning as a clock tree designing device.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000024860A JP3425920B2 (en) | 2000-02-02 | 2000-02-02 | Clock tree designing apparatus, clock tree designing method, and recording medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000024860A JP3425920B2 (en) | 2000-02-02 | 2000-02-02 | Clock tree designing apparatus, clock tree designing method, and recording medium |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001217316A JP2001217316A (en) | 2001-08-10 |
| JP3425920B2 true JP3425920B2 (en) | 2003-07-14 |
Family
ID=18550790
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000024860A Expired - Fee Related JP3425920B2 (en) | 2000-02-02 | 2000-02-02 | Clock tree designing apparatus, clock tree designing method, and recording medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3425920B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7437584B2 (en) | 2006-02-27 | 2008-10-14 | Atmel Corporation | Apparatus and method for reducing power consumption in electronic devices |
| JP4645843B2 (en) * | 2006-03-03 | 2011-03-09 | 日本電気株式会社 | Data processing apparatus, data processing method and program |
-
2000
- 2000-02-02 JP JP2000024860A patent/JP3425920B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2001217316A (en) | 2001-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3331968B2 (en) | Register transfer level power consumption optimization circuit, method and recording medium with emphasis on glitch analysis and reduction | |
| JP2572322B2 (en) | Method of arranging circuit cells and routing connecting between the circuit cells on an integrated circuit | |
| US7886245B2 (en) | Structure for optimizing the signal time behavior of an electronic circuit design | |
| US8151229B1 (en) | System and method of computing pin criticalities under process variations for timing analysis and optimization | |
| US6915497B2 (en) | Automatic design system for wiring on LSI | |
| US7162707B2 (en) | Scan path timing optimizing apparatus determining connection order of scan path circuits to realize optimum signal timings | |
| US20020029361A1 (en) | Logic circuit design method and logic circuit | |
| US20110283250A1 (en) | Method and apparatus for performing asynchronous and synchronous reset removal during synthesis | |
| JP3425920B2 (en) | Clock tree designing apparatus, clock tree designing method, and recording medium | |
| JP2006085576A (en) | Semiconductor integrated circuit layout method, semiconductor integrated circuit layout program, and semiconductor integrated circuit layout system | |
| US8341563B1 (en) | Method and apparatus for power gating stitching | |
| JP2008140821A (en) | Semiconductor device and method for designing semiconductor device | |
| US20030212976A1 (en) | Automated buffer insertion incorporating congestion relief for use in connection with physical design of integrated circuit | |
| JP2003173361A (en) | Layout design method and apparatus for semiconductor integrated circuit | |
| JP3125725B2 (en) | Low power automatic layout method and apparatus | |
| JPH10326303A (en) | Clock distribution system | |
| JP3102408B2 (en) | Method and apparatus for reducing signal delay | |
| JP2004280279A (en) | Top-down design equipment and top-down design program | |
| JP2002342400A (en) | Automatic design method for lsi | |
| JP3024241B2 (en) | Automatic placement and routing system for integrated circuits | |
| JP2008166981A (en) | Delay adjustment circuit and delay adjustment method | |
| Rajalakshmi et al. | Slew and Skew Analysis for Low Power Clock Tree Synthesis Using Clock Distribution Networks | |
| JP2626498B2 (en) | Automatic placement and routing processing method | |
| JP3209179B2 (en) | Semiconductor integrated circuit layout and wiring method | |
| US20040210689A1 (en) | Timing information generating apparatus |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090509 Year of fee payment: 6 |
|
| LAPS | Cancellation because of no payment of annual fees |