JP2000100950A - クロックスキュー低減方法及びシステム - Google Patents
クロックスキュー低減方法及びシステムInfo
- Publication number
- JP2000100950A JP2000100950A JP10263833A JP26383398A JP2000100950A JP 2000100950 A JP2000100950 A JP 2000100950A JP 10263833 A JP10263833 A JP 10263833A JP 26383398 A JP26383398 A JP 26383398A JP 2000100950 A JP2000100950 A JP 2000100950A
- Authority
- JP
- Japan
- Prior art keywords
- clock
- delay
- drivers
- driver
- output
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 28
- 238000012795 verification Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 11
- 230000009467 reduction Effects 0.000 claims description 9
- 230000003068 static effect Effects 0.000 claims description 7
- 238000009792 diffusion process Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 239000004065 semiconductor Substances 0.000 claims 3
- 238000010586 diagram Methods 0.000 description 10
- 238000000605 extraction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008707 rearrangement Effects 0.000 description 2
- CIWBSHSKHKDKBQ-JLAZNSOCSA-N Ascorbic acid Chemical compound OC[C@H](O)[C@H]1OC(=O)C(O)=C1O CIWBSHSKHKDKBQ-JLAZNSOCSA-N 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】
【課題】クロックツリー手法により生成されたクロック
配線について、再配置配線をすることなく、セルの置き
換えのみで、配線間のスキューをより精度で低減可能と
したクロックスキュー低減方法の提供。 【解決手段】レイアウトデータ上で、外形寸法、ピン配
置、入力容量がすべて等しく、駆動能力の異なる複数種
のクロックドライバをセルライブラリとして有し、配置
されたクロックドライバの各々に対して配置配線後のレ
イアウトデータから、複数種のクロックドライバのセル
の遅延情報を基にして複数種のクロックドライバのすべ
てについて出力遅延値を算出し、該出力遅延値をクロッ
クドライバ毎にファイルとして出力し、複数種のクロッ
クドライバのすべてに対する出力遅延値を、パラメタラ
イズし、静的又は動的遅延検証ツール上でパラーメータ
の値の変更に応じて他のクロックドライバの遅延値に差
し替える。
配線について、再配置配線をすることなく、セルの置き
換えのみで、配線間のスキューをより精度で低減可能と
したクロックスキュー低減方法の提供。 【解決手段】レイアウトデータ上で、外形寸法、ピン配
置、入力容量がすべて等しく、駆動能力の異なる複数種
のクロックドライバをセルライブラリとして有し、配置
されたクロックドライバの各々に対して配置配線後のレ
イアウトデータから、複数種のクロックドライバのセル
の遅延情報を基にして複数種のクロックドライバのすべ
てについて出力遅延値を算出し、該出力遅延値をクロッ
クドライバ毎にファイルとして出力し、複数種のクロッ
クドライバのすべてに対する出力遅延値を、パラメタラ
イズし、静的又は動的遅延検証ツール上でパラーメータ
の値の変更に応じて他のクロックドライバの遅延値に差
し替える。
Description
【0001】
【発明の属する技術分野】本発明は、論理集積回路装置
の設計技術に関し、特にクロックスキュー低減方法及び
クロックスキュー低減する配置配線システムに関する。
の設計技術に関し、特にクロックスキュー低減方法及び
クロックスキュー低減する配置配線システムに関する。
【0002】
【従来の技術】クロックツリー手法を用いて等長配線を
行ってもなお残るスキューや、物理的制約のために存在
するスキューを低減するクロックスキュー低減方法とし
て、例えば特開平8−274260号公報等の記載が参
照される。
行ってもなお残るスキューや、物理的制約のために存在
するスキューを低減するクロックスキュー低減方法とし
て、例えば特開平8−274260号公報等の記載が参
照される。
【0003】図7は、特開平8−274260号公報に
記載されるクロックスキュー低減方法におけるクロック
ドライバ差し替えの処理を説明するためのフローチャー
トである。予め駆動能力の異なる複数種類のクロックド
ライバをセルライブラリとして準備しておき、クロック
ツリー手法を用いて遅延も最も発生しにくい最大駆動能
力のクロックドライバを配置して各ブロック回路との配
線を行い(301)、さらに残ったスキューを低減する
ため、自動ツールで遅延最大パスを探索し(302〜3
04)、これを基準として、それよりも負荷の小さいパ
スに配置されている最大駆動能力のドライバ回路を、よ
り小駆動能力の(すなわちセル面積の小さい)クロック
ドライバと差し替えることにより(305〜307)、
スキューを低減している。
記載されるクロックスキュー低減方法におけるクロック
ドライバ差し替えの処理を説明するためのフローチャー
トである。予め駆動能力の異なる複数種類のクロックド
ライバをセルライブラリとして準備しておき、クロック
ツリー手法を用いて遅延も最も発生しにくい最大駆動能
力のクロックドライバを配置して各ブロック回路との配
線を行い(301)、さらに残ったスキューを低減する
ため、自動ツールで遅延最大パスを探索し(302〜3
04)、これを基準として、それよりも負荷の小さいパ
スに配置されている最大駆動能力のドライバ回路を、よ
り小駆動能力の(すなわちセル面積の小さい)クロック
ドライバと差し替えることにより(305〜307)、
スキューを低減している。
【0004】
【発明が解決しようとする課題】しかしながら、上記し
た従来のクロックスキュー低減方法においては、より小
駆動能力のクロックドライバとセルを差し替える場合、
ドライバのセル面積が小さくなり、形状の相違から、再
配置/配線が必要となり、また、セルの入れ替えによ
り、入力容量が小さくなるため、スキュー調整時に使用
された前段(前工程)での遅延値が、セル差し替え後の
実際の遅延値と異なり、スキュー精度が低下する、とい
う問題点を有している。
た従来のクロックスキュー低減方法においては、より小
駆動能力のクロックドライバとセルを差し替える場合、
ドライバのセル面積が小さくなり、形状の相違から、再
配置/配線が必要となり、また、セルの入れ替えによ
り、入力容量が小さくなるため、スキュー調整時に使用
された前段(前工程)での遅延値が、セル差し替え後の
実際の遅延値と異なり、スキュー精度が低下する、とい
う問題点を有している。
【0005】また、スキュー精度を上げるためには、実
際には、図7に示した処理フローに加えて、ステップ3
07から301への処理を数回繰り返す必要がある。
際には、図7に示した処理フローに加えて、ステップ3
07から301への処理を数回繰り返す必要がある。
【0006】なお、例えば特開平4−287963号公
報には、クリティカルパス中の1つ取り出し、ゲートを
ドライブ能力の高いゲートで置換したときの遅延時間値
を計算し、遅延時間減少があればそのゲート置換を受け
入れるようにしたレイアウトシステムが提案されてい
る。しかしながら、上記特開平4−287963号公報
記載のレイアウトシステムにおいても、ドライブ能力の
高いゲート置換によりゲート形状が異なり、再配置配線
が必要となる場合が生じる。
報には、クリティカルパス中の1つ取り出し、ゲートを
ドライブ能力の高いゲートで置換したときの遅延時間値
を計算し、遅延時間減少があればそのゲート置換を受け
入れるようにしたレイアウトシステムが提案されてい
る。しかしながら、上記特開平4−287963号公報
記載のレイアウトシステムにおいても、ドライブ能力の
高いゲート置換によりゲート形状が異なり、再配置配線
が必要となる場合が生じる。
【0007】したがって本発明は、上記問題点に鑑みて
なされたものであって、その目的は、クロックツリー手
法により生成されたクロック配線について、再配置配線
をすることなく、セルの置き換えのみで、配線間のスキ
ューをより精度で低減可能としたクロックスキュー低減
方法及びシステムを提供することにある。
なされたものであって、その目的は、クロックツリー手
法により生成されたクロック配線について、再配置配線
をすることなく、セルの置き換えのみで、配線間のスキ
ューをより精度で低減可能としたクロックスキュー低減
方法及びシステムを提供することにある。
【0008】
【課題を解決するための手段】前記目的を達成するた
め、本発明は、レイアウトデータ上で、外形寸法、ピン
配置、入力容量がすべて等しく、駆動能力の異なる複数
種のクロックドライバをセルライブラリとして有し、配
置されたクロックドライバの各々に対して、配置配線後
のレイアウトデータから、前記複数種のクロックドライ
バのセルの遅延情報を基にして、前記複数種のクロック
ドライバのすべてについて、出力遅延値を算出し、クロ
ックドライバ毎にファイルとして出力し、前記複数種の
クロックドライバのすべてに対する出力遅延値を、パラ
メタライズし、静的又は動的遅延検証ツール上で、前記
パラメータの値の変更に応じて他のクロックドライバの
遅延値に差し替え可能としたものである。
め、本発明は、レイアウトデータ上で、外形寸法、ピン
配置、入力容量がすべて等しく、駆動能力の異なる複数
種のクロックドライバをセルライブラリとして有し、配
置されたクロックドライバの各々に対して、配置配線後
のレイアウトデータから、前記複数種のクロックドライ
バのセルの遅延情報を基にして、前記複数種のクロック
ドライバのすべてについて、出力遅延値を算出し、クロ
ックドライバ毎にファイルとして出力し、前記複数種の
クロックドライバのすべてに対する出力遅延値を、パラ
メタライズし、静的又は動的遅延検証ツール上で、前記
パラメータの値の変更に応じて他のクロックドライバの
遅延値に差し替え可能としたものである。
【0009】
【発明の実施の形態】本発明の実施の形態について説明
する。本発明は、その好ましい実施の形態において、レ
イアウトデータ上で、外形寸法、ピン配置、入力容量が
すべて等しく、駆動能力の異なる複数種のクロックドラ
イバをセルライブラリとして有し、仮クロックドライバ
を使用しクロックツリー手法で自動配置配線を実行し、
次に、配置された仮クロックドライバの全ノードに対
し、予め用意された複数種の全てのクロックドライバを
配置した場合の出力遅延値について、レイアウトデータ
とセルの遅延情報から遅延値算出ツールで算出し、クロ
ックドライバ毎に別の遅延値情報ファイルに格納する。
そしてパラメタライズされた出力遅延値を用い、パラメ
ータ値を変更することにより、静的又は動的遅延検証ツ
ール上で最適なクロックドライバを選択し、選択された
パラメータに応じて対応するクロックドライバを差し替
えるようにしたものである。
する。本発明は、その好ましい実施の形態において、レ
イアウトデータ上で、外形寸法、ピン配置、入力容量が
すべて等しく、駆動能力の異なる複数種のクロックドラ
イバをセルライブラリとして有し、仮クロックドライバ
を使用しクロックツリー手法で自動配置配線を実行し、
次に、配置された仮クロックドライバの全ノードに対
し、予め用意された複数種の全てのクロックドライバを
配置した場合の出力遅延値について、レイアウトデータ
とセルの遅延情報から遅延値算出ツールで算出し、クロ
ックドライバ毎に別の遅延値情報ファイルに格納する。
そしてパラメタライズされた出力遅延値を用い、パラメ
ータ値を変更することにより、静的又は動的遅延検証ツ
ール上で最適なクロックドライバを選択し、選択された
パラメータに応じて対応するクロックドライバを差し替
えるようにしたものである。
【0010】
【実施例】本発明の実施例について図面を参照して説明
する。図1(a)〜図1(d)は、駆動能力の異なる4
個のクロックドライバセルA〜Dのレイアウトデータを
示す図である。4個のクロックドライバセルA〜Dは、
外形寸法、ピン配置が等しく、また、それぞれ、4出力
のコンタクト(スルーホール)の有無で入力容量を変え
ずに、駆動能力(電流駆動能力)のみを変化させてい
る。図2(a)〜図2(d)は、図1(a)〜図1
(d)のクロックドライバセルA〜Dの各セルの等価回
路を模式的に示したものであり、クロックドライバセル
Aでは、入力(In)を共通とする4つのインバータの
出力1〜4にそれぞれ接続する配線(図1の網掛けで示
す第1配線層)がスルーホールを介して出力Outに接
続する配線(図1の斜線(ハッチング)を施した第2配
線層)に接続されており、クロックドライバセルBで
は、入力を共通とする4つのインバータのうち3つの出
力がスルーホールを介して出力Outに接続する配線に
接続されており、クロックドライバセルCでは、入力を
共通とする4つのインバータのうち2つの出力がスルー
ホールを介して出力Outに接続する配線に接続されて
おり、クロックドライバセルDでは、入力を共通とする
4つのインバータのうち1つの出力がスルーホールを介
して出力Outに接続する配線に接続されている。な
お、図1において、網掛けで示す第1配線層はインバー
タの拡散層と不図示のコンタクトで接続されている。
する。図1(a)〜図1(d)は、駆動能力の異なる4
個のクロックドライバセルA〜Dのレイアウトデータを
示す図である。4個のクロックドライバセルA〜Dは、
外形寸法、ピン配置が等しく、また、それぞれ、4出力
のコンタクト(スルーホール)の有無で入力容量を変え
ずに、駆動能力(電流駆動能力)のみを変化させてい
る。図2(a)〜図2(d)は、図1(a)〜図1
(d)のクロックドライバセルA〜Dの各セルの等価回
路を模式的に示したものであり、クロックドライバセル
Aでは、入力(In)を共通とする4つのインバータの
出力1〜4にそれぞれ接続する配線(図1の網掛けで示
す第1配線層)がスルーホールを介して出力Outに接
続する配線(図1の斜線(ハッチング)を施した第2配
線層)に接続されており、クロックドライバセルBで
は、入力を共通とする4つのインバータのうち3つの出
力がスルーホールを介して出力Outに接続する配線に
接続されており、クロックドライバセルCでは、入力を
共通とする4つのインバータのうち2つの出力がスルー
ホールを介して出力Outに接続する配線に接続されて
おり、クロックドライバセルDでは、入力を共通とする
4つのインバータのうち1つの出力がスルーホールを介
して出力Outに接続する配線に接続されている。な
お、図1において、網掛けで示す第1配線層はインバー
タの拡散層と不図示のコンタクトで接続されている。
【0011】図1において、各クロックドライバA〜D
の駆動能力(電流駆動能力)の大小は、クロックドライ
バA>クロックドライバB>クロックドライバC>クロ
ックドライバDの順となる。
の駆動能力(電流駆動能力)の大小は、クロックドライ
バA>クロックドライバB>クロックドライバC>クロ
ックドライバDの順となる。
【0012】図4は、本発明の一実施例の処理を説明す
るための図であり、図1に示した4個のクロックドライ
バのセルの遅延情報102と、配置配線後のレイアウト
データ101から、遅延値抽出ツール103により、配
置されたクロックドライバの各々のノードに対して、4
個のクロックドライバすべての出力遅延値を、それぞれ
別のファイル105〜110に出力した例を示してい
る。
るための図であり、図1に示した4個のクロックドライ
バのセルの遅延情報102と、配置配線後のレイアウト
データ101から、遅延値抽出ツール103により、配
置されたクロックドライバの各々のノードに対して、4
個のクロックドライバすべての出力遅延値を、それぞれ
別のファイル105〜110に出力した例を示してい
る。
【0013】図5は、図4に示す処理で生成された各々
のクロックドライバの出力遅延値を動的遅延検証ツール
上でパラメタライズした例を示す図である。
のクロックドライバの出力遅延値を動的遅延検証ツール
上でパラメタライズした例を示す図である。
【0014】パラメータ(C1、C2、...、Cn)
の値を変えることで、直ちに他のクロックドライバの遅
延値に差し替えることができる。すなわち、パラメータ
C1、C2、...、Cnの値を変えるだけで、if
then else構文にて、該パラメータに該当する
遅延時間のクロックドライバ(のファイル)がanno
tate命令によって付加される。
の値を変えることで、直ちに他のクロックドライバの遅
延値に差し替えることができる。すなわち、パラメータ
C1、C2、...、Cnの値を変えるだけで、if
then else構文にて、該パラメータに該当する
遅延時間のクロックドライバ(のファイル)がanno
tate命令によって付加される。
【0015】パラメータの変更により、各クロック間の
スキューが最小(最適)になる組み合わせが判明した
ら、そのパラメータの値に応じて、セルの置き換えを行
う。
スキューが最小(最適)になる組み合わせが判明した
ら、そのパラメータの値に応じて、セルの置き換えを行
う。
【0016】図6は、本発明の一実施例におけるクロッ
クドライバ差し替えのフローチャートを示す図である。
本発明の一実施例の動作について図6を参照して説明す
る。
クドライバ差し替えのフローチャートを示す図である。
本発明の一実施例の動作について図6を参照して説明す
る。
【0017】まず、仮クロックドライバを使用しクロッ
クツリー手法で自動配置配線を実行する(ステップ20
1)。その際、クロックドライバセルは目的に応じて選
択される。例えば、高速動作が必要な場合、通常、最も
駆動能力の大きなセル、つまり、図1に示した例では、
クロックドライバAを仮クロックドライバとして選択す
る。
クツリー手法で自動配置配線を実行する(ステップ20
1)。その際、クロックドライバセルは目的に応じて選
択される。例えば、高速動作が必要な場合、通常、最も
駆動能力の大きなセル、つまり、図1に示した例では、
クロックドライバAを仮クロックドライバとして選択す
る。
【0018】次に、配置された仮クロックドライバの全
ノードに対し、用意された全てのクロックドライバ、つ
まりクロックドライバAからDを配置した場合の出力遅
延値を、レイアウトデータとセルの遅延情報から遅延値
算出ツールで算出し、図4に示すように、各々、別々の
ファイル105〜110に格納する(ステップ20
2)。
ノードに対し、用意された全てのクロックドライバ、つ
まりクロックドライバAからDを配置した場合の出力遅
延値を、レイアウトデータとセルの遅延情報から遅延値
算出ツールで算出し、図4に示すように、各々、別々の
ファイル105〜110に格納する(ステップ20
2)。
【0019】その際、パラメタライズを容易にするため
に、クロックドライバ以外のノードの遅延値は、別ファ
イル104に格納する。
に、クロックドライバ以外のノードの遅延値は、別ファ
イル104に格納する。
【0020】そして、生成されたクロックドライバ毎の
遅延値情報ファイルを、パラメータにより、リアルタイ
ムに選択可能とする仕組み(これをパラメタライズ機構
という)をつくる(ステップ203)。
遅延値情報ファイルを、パラメータにより、リアルタイ
ムに選択可能とする仕組み(これをパラメタライズ機構
という)をつくる(ステップ203)。
【0021】前述した通り、図5は、パラメータC1〜
Cnにより、動的遅延検証ツール上でリアルタイムに選
択可能な仕組みを実現した例を示す図である。例えば、
C1〜Cnがすべて“00”の場合、ファイルdelay_C1
A.sdf、delay_C2A.sdf、…、delay_CnA.sdfが選択され
る。つまり、すべてのクロックドライバのノードに、ク
ロックドライバA(の遅延値)が選択されるが、動的遅
延検証ツール上で、パラメータの値を変えることで、他
の遅延値にリアルタイムに変更できる。
Cnにより、動的遅延検証ツール上でリアルタイムに選
択可能な仕組みを実現した例を示す図である。例えば、
C1〜Cnがすべて“00”の場合、ファイルdelay_C1
A.sdf、delay_C2A.sdf、…、delay_CnA.sdfが選択され
る。つまり、すべてのクロックドライバのノードに、ク
ロックドライバA(の遅延値)が選択されるが、動的遅
延検証ツール上で、パラメータの値を変えることで、他
の遅延値にリアルタイムに変更できる。
【0022】例えば、動的遅延検証ツール上で、パラメ
ータC1〜Cnの値をすべて“11”に変えると、リア
ルタイムにクロックドライバD(の遅延値)が選択され
る。
ータC1〜Cnの値をすべて“11”に変えると、リア
ルタイムにクロックドライバD(の遅延値)が選択され
る。
【0023】このように、パラメータを変更し、動的遅
延検証ツール上で、各々のクロックドライバの波形を観
測することで、配線間のスキューが最小となるクロック
ドライバの組み合わせを選択する(図6のステップ20
4)。
延検証ツール上で、各々のクロックドライバの波形を観
測することで、配線間のスキューが最小となるクロック
ドライバの組み合わせを選択する(図6のステップ20
4)。
【0024】そして、クロックドライバの最適な組み合
わせが選択できたら、そのパラメータにより再生成した
ネットリストを、レイアウトツールに読み込ませ、EC
O等により、対応するクロックドライバセルの差し替え
を実行する(図6のステップ205)。なお、図6のス
テップ201〜205の各処理は、自動配置配線システ
ムを構成するコンピュータ上で実行されるプログラム
(ツール)を利用して行われ、本発明はこれらのプログ
ラムを格納した記録媒体も含む。
わせが選択できたら、そのパラメータにより再生成した
ネットリストを、レイアウトツールに読み込ませ、EC
O等により、対応するクロックドライバセルの差し替え
を実行する(図6のステップ205)。なお、図6のス
テップ201〜205の各処理は、自動配置配線システ
ムを構成するコンピュータ上で実行されるプログラム
(ツール)を利用して行われ、本発明はこれらのプログ
ラムを格納した記録媒体も含む。
【0025】図3(a)〜図3(d)は、本発明の第2
の実施例におけるクロックドライバA〜Dのレイアウト
データを示す図である。図1に示した前記実施例では、
4出力のコンタクト(スルーホール)の有無で、入力容
量を変えずに駆動能力のみ変化させたのに対し、本発明
の第2の実施例では、第一配線層(図中、網掛けで示す
配線)及び拡散層のコンタクトの有無で、入力容量を変
えずに駆動能力の異なる4個のクロックドライバセルを
実現している。図3(a)〜図3(d)は、第一配線層
と拡散層(ソース又はドレイン)のコンタクトの有無に
より、それぞれ、出力OUTに接続するインバータは4
つ、3つ、2つ、1つの構成とされている。
の実施例におけるクロックドライバA〜Dのレイアウト
データを示す図である。図1に示した前記実施例では、
4出力のコンタクト(スルーホール)の有無で、入力容
量を変えずに駆動能力のみ変化させたのに対し、本発明
の第2の実施例では、第一配線層(図中、網掛けで示す
配線)及び拡散層のコンタクトの有無で、入力容量を変
えずに駆動能力の異なる4個のクロックドライバセルを
実現している。図3(a)〜図3(d)は、第一配線層
と拡散層(ソース又はドレイン)のコンタクトの有無に
より、それぞれ、出力OUTに接続するインバータは4
つ、3つ、2つ、1つの構成とされている。
【0026】4個のクロックドライバは、ともに外形寸
法、ピン配置が等しく、クロックドライバA〜Dの駆動
能力の大小関係は、A>B>C>Dの順となる。
法、ピン配置が等しく、クロックドライバA〜Dの駆動
能力の大小関係は、A>B>C>Dの順となる。
【0027】
【発明の効果】以上説明したように、本発明によれば、
外形寸法、ピン配置、及び、入力容量が同一で駆動能力
が異なる複数種のクロックドライバを用意しておき、配
置に使用するクロックドライバのみならず、用意された
すべてのクロックドライバの遅延情報を、配置を想定し
て抽出し、パラメタライズすることで、一度配置配線し
たレイアウトデータに対して、静的あるいは動的遅延検
証ツール上でのリアルタイムなスキュー調整により、再
配置配線を行うことなく、セルの置き換えのみで、より
精度の高いスキュー調整ができる、という効果を奏す
る。
外形寸法、ピン配置、及び、入力容量が同一で駆動能力
が異なる複数種のクロックドライバを用意しておき、配
置に使用するクロックドライバのみならず、用意された
すべてのクロックドライバの遅延情報を、配置を想定し
て抽出し、パラメタライズすることで、一度配置配線し
たレイアウトデータに対して、静的あるいは動的遅延検
証ツール上でのリアルタイムなスキュー調整により、再
配置配線を行うことなく、セルの置き換えのみで、より
精度の高いスキュー調整ができる、という効果を奏す
る。
【図1】本発明の一実施例のクロックドライバのレイア
ウトデータの一例を示す図である。
ウトデータの一例を示す図である。
【図2】図1のクロックドライバのレイアウトデータの
等価回路を模式的に示す図である。
等価回路を模式的に示す図である。
【図3】本発明の第2の実施例のクロックドライバのレ
イアウトデータの一例を示す図である。
イアウトデータの一例を示す図である。
【図4】本発明の一実施例における遅延値抽出の処理の
一例を説明するための図である。
一例を説明するための図である。
【図5】本発明のの一実施例における遅延値パラメタラ
イズ処理の一例を説明するための図である。
イズ処理の一例を説明するための図である。
【図6】本発明の一実施例におけるクロックドライバの
差し替え処理を示すフローチャートである。
差し替え処理を示すフローチャートである。
【図7】従来のクロックスキュー低減方法におけるクロ
ックドライバの差し替え処理を示すフローチャートであ
る。
ックドライバの差し替え処理を示すフローチャートであ
る。
101 レイアウウトデータ 102 セル遅延情報 103 遅延値抽出ツール 104 クロックドライバのノード以外の遅延値を含む
ファイル 105〜110 クロックドライバの遅延値を含むファ
イル
ファイル 105〜110 クロックドライバの遅延値を含むファ
イル
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B046 AA08 BA06 JA01 KA03 KA06 5F038 BE07 CD06 CD09 EZ08 EZ10 EZ20 5F064 DD09 EE47 EE54 FF04 FF48 HH09 HH10 HH12
Claims (8)
- 【請求項1】レイアウトデータ上で、外形寸法、ピン配
置、入力容量がいずれも等しく、互いに駆動能力が異な
る複数種のクロックドライバをセルライブラリとして有
し、 配置されたクロックドライバの各々に対して配置配線後
のレイアウトデータから、前記配置に用いられたクロッ
クドライバだけでなく、予めライブラリとして用意され
ている前記複数種のクロックドライバのセルの遅延情報
を基にして、前記複数種のクロックドライバのすべてに
ついて出力遅延値を算出し、該出力遅延値をクロックド
ライバ毎にファイルとして出力し、 前記複数種のクロックドライバのすべてに対する出力遅
延値を、パラメータで選択可能とし、静的又は動的遅延
検証に際して、前記パラメータの値の変更に応じて他の
クロックドライバの遅延値に差し替え可能としたことを
特徴とするクロックスキュー低減方法。 - 【請求項2】レイアウトデータ上で、外形寸法、ピン配
置、入力容量がいずれも等しく、互いに駆動能力が異な
る複数種のクロックドライバをセルライブラリとして有
し、 (a)仮クロックドライバを用いてクロックツリー手法
で自動配置配線を実行し、 (b)次に、配置された仮クロックドライバの全ノード
に対し、予めセルライブラリとして用意された複数種の
全てのクロックドライバを配置した場合の出力遅延値に
ついて、レイアウトデータとセルの遅延情報から遅延値
算出ツールで算出し、該出力遅延値をクロックドライバ
毎に別の遅延値情報ファイルに格納し、 (c)パラメータで選択可能とされた出力遅延値を用
い、パラメータ値を変更することにより、静的又は動的
遅延検証ツール上で最適なクロックドライバを選択し、 (d)選択されたパラメータに応じて対応するクロック
ドライバを差し替える、 上記(a)〜(b)の各ステップを含み、一度配置配線
したクロックドライバのレイアウトデータに対して再配
置配線することなく、クロックドライバのセルを置き換
えることでスキューを調整可能としたことを特徴とする
クロックスキュー低減方法。 - 【請求項3】前記クロックドライバのレイアウトデータ
が、入力が共通入力端に接続され並列配置された複数の
ドライバを含み、各ドライバの出力を共通出力端に接続
するスルーホールの有無で駆動能力が可変される、こと
を特徴とする請求項1又は2記載のクロックスキュー低
減方法。 - 【請求項4】前記クロックドライバのレイアウトデータ
が、入力が共通入力端に接続され並列配置された複数の
ドライバを含み、各ドライバの第1配線層と拡散層のコ
ンタクトの有無で駆動能力が可変される、ことを特徴と
する請求項1又は2記載のクロックスキュー低減方法。 - 【請求項5】駆動能力の異なる複数種のクロックドライ
バをセルとして含むセルライブラリとして有し、 複数種のクロックドライバは、レイアウトデータ上で、
外形寸法、ピン配置、入力容量がすべて等しく、且つ、
各々、静的又は動的遅延検証用の遅延情報を有し、 前記複数種のクロックドライバの遅延情報を基にして、
クロックツリー手法で配置されたクロックドライバの各
々に対して、配置配線後のレイアウトデータから、ライ
ブラリとして用意されている前記複数種のクロックドラ
イバのすべてについて、出力遅延値を算出してそれぞれ
別ファイルに出力する手段と、 前記複数種のクロックドライバのすべてに対する出力遅
延値を、パラメータにて選択可能とし、前記パラメータ
の値の変更に応じて、他のクロックドライバの遅延値に
差し替える手段と、 を備え、 一度配置配線したクロックドライバのレイアウトデータ
に対して再配置配線することなく、クロックドライバの
セルを置き換えることでスキューを調整可能としたこと
を特徴とする半導体集積回路の配置配線システム。 - 【請求項6】前記クロックドライバのレイアウトデータ
が、入力が共通入力端に接続され並列配置された複数の
ドライバを含み、各ドライバの出力を共通出力端に接続
するスルーホールの有無で駆動能力が可変される、こと
を特徴とする請求項5記載の半導体集積回路の配置配線
システム。 - 【請求項7】前記クロックドライバのレイアウトデータ
が、入力が共通入力端に接続され並列配置された複数の
ドライバを含み、各ドライバの第1配線層と拡散層のコ
ンタクトの有無で駆動能力が可変される、ことを特徴と
する請求項5記載の半導体集積回路の配置配線システ
ム。 - 【請求項8】レイアウトデータ上で、外形寸法、ピン配
置、入力容量がいずれも等しく、互いに駆動能力が異な
る複数種のクロックドライバをセルライブラリとして有
し、 (a)仮クロックドライバを用いてクロックツリー手法
で自動配置配線を行う処理、 (b)次に、配置された仮クロックドライバの全ノード
に対し、予め用意された複数種の全てのクロックドライ
バを配置した場合の出力遅延値について、レイアウトデ
ータとセルの遅延情報からその遅延値を算出し、該出力
遅延値をクロックドライバ毎に別の遅延値情報ファイル
に格納する処理、 (c)パラメータで選択可能とされた出力遅延値を用
い、パラメータ値を変更することにより、静的又は動的
遅延検証に際して最適なクロックドライバを選択する処
理、 (d)選択されたパラメータに応じて対応するクロック
ドライバを差し替える処理、 の上記処理(a)〜(d)を自動配置配線システムを構
成するコンピュータ上で実行させるためのプログラムを
記録した記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10263833A JP2954194B1 (ja) | 1998-09-18 | 1998-09-18 | クロックスキュー低減方法及びシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10263833A JP2954194B1 (ja) | 1998-09-18 | 1998-09-18 | クロックスキュー低減方法及びシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2954194B1 JP2954194B1 (ja) | 1999-09-27 |
JP2000100950A true JP2000100950A (ja) | 2000-04-07 |
Family
ID=17394867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10263833A Expired - Lifetime JP2954194B1 (ja) | 1998-09-18 | 1998-09-18 | クロックスキュー低減方法及びシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2954194B1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006260299A (ja) * | 2005-03-17 | 2006-09-28 | Fujitsu Ltd | 半導体集積回路のレイアウト方法、およびセル枠共通化プログラム。 |
JP2009200217A (ja) * | 2008-02-21 | 2009-09-03 | Nec Corp | 半導体集積回路 |
JP2012239185A (ja) * | 2004-08-24 | 2012-12-06 | Agere Systems Inc | セル・ライブラリから選択された信号スキュー調整セルを備えた集積回路 |
US20240012975A1 (en) * | 2021-04-16 | 2024-01-11 | Taiwan Semiconductor Manufacturing Company Ltd. | Logic cell structures and related methods |
-
1998
- 1998-09-18 JP JP10263833A patent/JP2954194B1/ja not_active Expired - Lifetime
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012239185A (ja) * | 2004-08-24 | 2012-12-06 | Agere Systems Inc | セル・ライブラリから選択された信号スキュー調整セルを備えた集積回路 |
JP2006260299A (ja) * | 2005-03-17 | 2006-09-28 | Fujitsu Ltd | 半導体集積回路のレイアウト方法、およびセル枠共通化プログラム。 |
JP4536559B2 (ja) * | 2005-03-17 | 2010-09-01 | 富士通セミコンダクター株式会社 | 半導体集積回路のレイアウト方法、およびセル枠共通化プログラム。 |
JP2009200217A (ja) * | 2008-02-21 | 2009-09-03 | Nec Corp | 半導体集積回路 |
JP4552073B2 (ja) * | 2008-02-21 | 2010-09-29 | 日本電気株式会社 | 半導体集積回路 |
US20240012975A1 (en) * | 2021-04-16 | 2024-01-11 | Taiwan Semiconductor Manufacturing Company Ltd. | Logic cell structures and related methods |
US12223247B2 (en) * | 2021-04-16 | 2025-02-11 | Taiwan Semiconductor Manufacturing Company Ltd. | Logic cell structures and related methods |
Also Published As
Publication number | Publication date |
---|---|
JP2954194B1 (ja) | 1999-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7953956B2 (en) | Reconfigurable circuit with a limitation on connection and method of determining functions of logic circuits in the reconfigurable circuit | |
US20140021981A1 (en) | Integrated circuits with logic regions having input and output bypass paths for accessing registers | |
US5724557A (en) | Method for designing a signal distribution network | |
JP2954194B1 (ja) | クロックスキュー低減方法及びシステム | |
US7725855B1 (en) | Symmetry-based optimization for the physical synthesis of programmable logic devices | |
US6505340B2 (en) | Circuit synthesis method | |
US6516457B1 (en) | Method and system of data processing for designing a semiconductor device | |
EP0544164A1 (en) | Semi custom-made integrated circuit having clock synchronous circuit improved in clock skew | |
US6532584B1 (en) | Circuit synthesis method | |
US7389481B2 (en) | Integrated circuit design utilizing array of functionally interchangeable dynamic logic cells | |
US20070089083A1 (en) | Method and design system for semiconductor integrated circuit | |
JP3102408B2 (ja) | 信号遅延低減方法及び装置 | |
JPH11194848A (ja) | クロック遅延調整装置 | |
JP2817517B2 (ja) | Lsiの配置配線システム | |
JPH06310601A (ja) | レイアウト設計方法 | |
JP2930087B2 (ja) | 論理設計支援システム | |
JPH0794586A (ja) | 最適スタンダードセル選択方法 | |
JP3702475B2 (ja) | 回路自動生成装置 | |
US7363609B2 (en) | Method of logic circuit synthesis and design using a dynamic circuit library | |
JP3964483B2 (ja) | 集積回路の論理シミュレーション方法 | |
JP2737620B2 (ja) | 半導体集積回路の配線方法 | |
JPH09114875A (ja) | 半導体集積回路のレイアウト設計方法及びタイミング検証方法 | |
JP2972719B2 (ja) | 半導体集積回路装置及びその配置方法 | |
JP2002208638A (ja) | 情報処理方法およびシステム | |
JPH1145942A (ja) | Lsiレイアウト設計方法および装置、セルライブラリ、並びに半導体集積回路装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19990629 |