JP3382026B2 - クロック信号分配回路及びバッファ回路ならびにそれらの設計方法 - Google Patents

クロック信号分配回路及びバッファ回路ならびにそれらの設計方法

Info

Publication number
JP3382026B2
JP3382026B2 JP21874794A JP21874794A JP3382026B2 JP 3382026 B2 JP3382026 B2 JP 3382026B2 JP 21874794 A JP21874794 A JP 21874794A JP 21874794 A JP21874794 A JP 21874794A JP 3382026 B2 JP3382026 B2 JP 3382026B2
Authority
JP
Japan
Prior art keywords
wiring
cascade
delay
width
tree
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
Application number
JP21874794A
Other languages
English (en)
Other versions
JPH0883849A (ja
Inventor
文裕 南
琢 内野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP21874794A priority Critical patent/JP3382026B2/ja
Publication of JPH0883849A publication Critical patent/JPH0883849A/ja
Application granted granted Critical
Publication of JP3382026B2 publication Critical patent/JP3382026B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、半導体集積回路のレ
イアウトにおいて、コンピュータを用いた処理によるク
ロック信号の分配方法に関する。
【0002】
【従来の技術】デジタル論理集積回路においては、フリ
ップフロップに代表される順序回路が使用されており、
位相・周期の異なる複数のクロック信号と同期をとりな
がら回路全体が動作するようになっている。クロック信
号は、チップ内部で作られたり外部から供給されたりす
るが、通常幾段かのバッファセルを介して回路ブロック
に供給され、バッファセル間およびバッファセルとフリ
ップフロップ間は、一般的にCAD技術によって自動的
に結線される。
【0003】フリップフロップに供給されるクロック信
号の伝搬遅延時間(以下ディレイ)は、各フリップフロ
ップ毎で異なるのがふつうであり、その位相差のことを
クロックスキュー(以下スキュー)と呼んでいる。デジ
タル論理集積回路の設計でよく問題になるのは、このス
キューが大きくなりすぎて所望のクロック周波数で回路
の同期動作をとることができなくなることである。従っ
て、チップ上のすべてのフリップフロップに対して、な
るべく同じタイミングでクロック信号が到着するよう
に、バッファセルの位置や配線径路を決めることが大切
である。また、チップ間のスキューを小さくするため
に、チップ内のクロックディレイを小さくすることも重
要である。
【0004】こうした問題を解決するため、特開平5−
54100に代表されるクロック配線手法が使われるよ
うになってきた。この方法では、2分木型の配線構造に
おいて、各径路分岐点の位置をそれより下流側のディレ
イが釣り合うように決定しており、また、チップ内ディ
レイを最小化するようにバッファセルの最適位置を決定
している。
【0005】さらに、特願平5−8932においては、
配線抵抗の増大に伴うディレイ増加を抑える目的で、デ
ィレイを最小化するように最適配線幅を決定する方法が
提案されている。この方法では、被駆動セル側から駆動
セルの出力端子側に向かうほど配線幅が太くなるような
径路が形成される。しかし、これらの方法では、駆動セ
ル内部のディレイまでは最適化されていなかったので、
多段バッファリングするときには、ディレイ減少効果が
半減してしまうという問題があった。
【0006】一方、駆動セル内部の構造を含めてディレ
イを最小化する方法としては、文献「H.B.Bakoglu,“Ci
rcuits, Interconnections, and Packaging for VLS
I”,Chapter 5, Addison-Wesley Publishing Co, Read
ing, Mass.,1990」に代表される、駆動セルをカスケー
ド構造(直列接続されたトランジスタのサイズが等比級
数的大きくしてある構造)にしたときの最適化手法があ
る。すなわち、駆動セルは図5に示すように、いくつか
のCMOSインバータをつなげることにより実現する。
入力段のインバータのチャネル幅ω0 、出力段の負荷容
量値CL が与えられた場合の遅延時間tdelay は、各イ
ンバータのチャネル幅ωi により次のように表すことが
できる。
【0007】
【数4】 ただし、τはデバイスに依存した定数である。上の表式
を用いて遅延時間が最小となるように各インバータのチ
ャネル幅ωi 及び段数N+1を決定すると、
【数5】 という結果を得る。ただしeは自然対数の底であり、ω
N+1 はCL に比例した定数である。以上がe倍ルールと
呼ばれる従来技術である。e倍ルールに従うと全遅延時
間は次のようになる。
【0008】 tdelay =τ(N+1)e (4) もし、同じ段数でインバータのチャネル幅を全て同じ大
きさω0 にしたとすると、全遅延時間tdelay ´は tdelay ´=τ(N+eN+1 ) (5) となり、確かにtdelay ≦tdelay ´となっている。
【0009】この方法では、駆動セル出力側にある配線
負荷が既知のときの、ディレイが最小となるカスケード
段数とカスケード比(後段トランジスタサイズの前段ト
ランジスタサイズに対する比)が求められる。しかし、
配線抵抗による配線RCディレイは無視された計算方法
のため、配線抵抗が大きい場合にはディレイ最小になら
ないという問題があった。
【0010】一方、充放電による全消費電力Pは
【数6】 と表される。ただし、cはデバイスに依存した定数であ
り、
【数7】 と定義されている。e倍ルールに従うと
【数8】 となる。ところが同じ段数でインバータのチャネル幅を
全て同じ大きさω0 にしたとすると、消費電力P´は
【数9】 となり、0以上のNに対してP≧P´となっている。
【0011】従って、遅延時間が最小化されたとしても
消費電力については必ずしもそうではない。バッファに
は大きなインバータが含まれるためにその消費電力が全
体に占める割合は必ずしも小さくはない。従ってバッフ
ァの消費電力を最小化する事には大きな意義がある。
【0012】
【発明が解決しようとする課題】従来の方法では、チッ
プ内のスキュー最小化は既に高水準の域に到達している
が、チップ間のスキューを減らすためのチップ内ディレ
イ最小化についてはまだ不十分であった。特に、駆動セ
ルの内部ディレイとツリー配線部の配線形状の双方を同
時に最適化してディレイを最小化する方法は確立されて
いなかった。
【0013】本発明の第1の目的は、ディレイを最小化
するような駆動セルの内部構造と配線ツリー部の配線幅
の最適化方法を含み、かつスキューを最小化するクロッ
ク信号分配方法を提供することである。
【0014】ところが「従来の技術」で示したように、
ディレイの最小化と消費電力の最小化とは相反する場合
がある。また、ディレイがある許容範囲内にあれば回路
として満足できるものとなる。
【0015】そこで、本発明の第2の目的は、負荷によ
る消費電力が遅延時間制約下で最小となるように各イン
バータの大きさを決定する方法を提供することにある。
【0016】
【課題を解決するための手段】ここでは、スキューとデ
ィレイをともに最小化するため、特願平5−8932に
あるように、「配線幅を固定してスキュー最小となる径
路分岐点を決定する処理と、径路分岐点を固定してディ
レイ最小となる配線幅を決定する処理とを、交互に繰り
返し、ディレイが収束したときの径路をクロック配線径
路の最終解とする」という処理の枠組みをそのまま用い
る。
【0017】その上で、上記の配線幅を決定する処理
は、配線幅がツリー上の深さに対して等比級数をなす近
似モデルを使って、カスケード型駆動セルのカスケード
段数・カスケード比および前記の配線幅の公比を決定す
る処理ステップ2Aと、前記処理ステップ2Aで決定し
たカスケード段数・カスケード比を固定し、前記処理ス
テップ2Aで決定した配線幅を初期値として、必ずしも
等比級数でない最適な配線幅を決定する処理ステップ2
B、とから構成されるようにする。
【0018】また、前記処理ステップ2Aにおいては、
カスケード段数・カスケード比・配線幅公比をパラメー
タとして、駆動セルの入力端子から被駆動セルの入力端
子までのディレイをElmoreの式で表現し、次に、当該デ
ィレイの各パラメータに対する偏導関数を求め、それら
偏導関数の値がすべてゼロ、または少なくとも一つがゼ
ロ、となるように各パラメータの値を決定する。
【0019】本発明の他の態様によれば、CMOSイン
バータを直列接続したバッファの回路入力段のCMOS
インバータのチャネル幅、出力段の負荷容量値を予め設
定し、その値に基づいて、各インバータの各チャネル幅
を決定し、前記バッファの遅延時間が、許される最大値
を超えないように、隣接するインバータのチャネル幅の
前段側に対する後段側の比率を、前記出力段に近づくに
従って増加させている。
【0020】
【0021】
【作用】上述の方法によれば、スキューを非常に小さく
した状態で、駆動セルの内部ディレイと配線ディレイの
双方を含めた全体ディレイを最小化することができる。
【0022】また、各インバータの大きさを定めると遅
延時間制約下で消費電力が最小となるような出力バッフ
ァ回路が得られる。
【0023】
【実施例】以下、本発明の実施例について説明する。
【0024】本実施例においては、スキューとディレイ
をともに最小化する全体処理フローは、「配線幅を固定
してスキュー最小となる径路分岐点を決定する処理と、
径路分岐点を固定してディレイ最小となる配線幅を決定
する処理とを、交互に繰り返し、ディレイが収束したと
きの径路をクロック配線径路の最終解とする」となって
おり、これは特願平5−8932にあるものと同様であ
る。
【0025】すなわち、図1は、この処理を示すフロー
チャートである。ただし、径路のトポロジー(ツリー構
造)は、予め別の方法により決定されているとする。
【0026】先ず、ステップ1で配線幅に適当な初期値
を設定する。ステップ2で、この配線幅でのスキュー最
小となる径路分岐点を求める。ここでは、特開平3−1
37851に記載されている従来の手法を用いる。ステ
ップ3では、収束判定を行うが、初回はすぐ次のステッ
プへ移行する。ステップ4では、径路分岐点をそのまま
固定して、配線幅を最適化する。その後、ステップ2へ
戻り、配線幅をステップ4で最適化された値に固定し
て、スキュー最小となる径路分岐点を求める。そして、
ステップ3で収束判定を行い、収束していれば終了し、
収束しなければ収束するまでステップ2〜4を繰り返
す。
【0027】このうち本発明を特徴づけるものは、ステ
ップ4である。
【0028】すなわち、図2に示すように、上記の配線
幅を決定する処理が、配線幅がツリー上の深さに対して
等比級数をなす近似モデルを使って、カスケード型駆動
セルのカスケード段数・カスケード比、および前記の配
線幅の公比を決定する処理ステップ2Aと、前記処理ス
テップ2Aで決定したカスケード段数・カスケード比を
固定し、前記処理ステップ2Aで決定した配線幅を初期
値として、必ずしも等比級数でない最適な配線幅を決定
する処理ステップ2B、とから構成されるようにしてい
る点である。
【0029】全体処理フローのなかのスキュー最小とな
る径路分岐点を決定する処理、および前記の処理ステッ
プ2Bについては、特願平5−8932にある手法をそ
のまま用いればよいので説明は省略する。
【0030】以下では、前記の処理ステップ2Aに関し
て、本発明によるカスケードドライバーセルのカスケー
ド段数・カスケード比、および出力側のツリー配線径路
の配線幅、の最適化方法について説明する。
【0031】(1)クロック分配のモデル クロック信号は、図3のように、カスケード型駆動セル
を経由して、2分木型のツリー配線径路により被駆動セ
ルに供給されるとする。カスケードの各段を構成するド
ライバーセル1は、通常2つのインバータからなってい
る。駆動セルは、等比級数的にトランジスタサイズが大
きくなるようなカスケード構造とし、カスケード比を
b、カスケード段数をn、とする。また、駆動セルの駆
動する配線ツリー部については、ツリーの深さ(ドライ
バーセルから被駆動セルへのパスにおいて経由するツリ
ーエッジの数)がm、配線幅が末端側から等比級数的に
太くなっており、その公比がa、となっているとする。
実際、ディレイを最小化するように配線幅を決定すると
経験的に等比級数に近くなっているので、このモデルは
最適化の為のよい近似であると考えられる。
【0032】このとき、カスケードドライバーセルの入
力端子から被駆動セルの入力端子までのディレイT、す
なわち駆動セルの内部ディレイと配線のディレイを合わ
せたものは、Elmoreの式を用いると、
【数11】 と表される。
【0033】ここに、 C(K) :配線ツリー部のツリー深さkのノードより下流
側の負荷容量 Lk :配線ツリー部のツリー深さkのノードそのその親
ノードとの配線距離 Rg :最小サイズのトランジスタのオン抵抗 Cg :最小サイズのトランジスタの入力端子容量 w:最小配線幅(配線ツリー部においてはツリー深さm
の部分の配線幅) ζ:配線負荷容量の計算における配線幅の比例係数 f:配線負荷容量の計算における配線幅に依存しない定
数(フリンジ効果分) ρ:配線のシート抵抗 とする。
【0034】上式において右辺第1項は、カスケードド
ライバーの内部ディレイを表し、第2項は、カスケード
ドライバーの最終段のオン抵抗によって配線ツリー部を
充放電するためのディレイを表し、第3項は、配線ツリ
ー部のRCディレイを表している。なお、配線負荷容量
の計算においては、配線幅ωのときの単位長さ当たりの
配線負荷容量値を、ζ(ω+f)と近似している。
【0035】(2)ディレイ最小となるn,b,aの求
め方 ディレイTの最小値を求めるには、n,b,aの各パラ
メータに対する偏導関数を求め、それら偏導関数の値が
すべてゼロになるように各パラメータの値を決定すれば
よい。すなわち、 ∂T/∂n=∂T/∂b=∂T/∂a=0 となるように各変数の数値を決定すればよい。このう
ち、∂T/∂n=0を解くと、 C(0) =Cg n ・lnb が得られ、∂T/∂b=0を解くと、 C(0) =Cg n が得られる。よって、この二つの式から、 b=e n=ln(C(0)/Cg ) が得られる。これは、e倍則としてよく知られているも
のである。
【0036】次に、この結果をTの式に代入すると、 T=eRg g ・ln(C(0)/Cg )+D(a) となる。ここで、∂T/∂a=0とすると、
【数12】 となる。
【0037】この方程式を満たすaを求めるには、ニュ
ートンラフソン法などを用いれば簡単である。なお、C
(k) は、aの多項式でありその次数はm−k−1次とな
っているので、∂T/∂aは、aについての有理関数に
なっている。
【0038】さらに、この解aを数式2に代入すること
で、bが求められ、以上から、n,b,aの各パラメー
タが決定できる。
【0039】(3)bやnが固定の時のディレイ最小化 実際の設計においては、セル面積を小さくするために、
bやnが予め決まっていることが多い。以下では、その
ような場合についてのディレイ最小化方法を説明する。
【0040】最初に、bが固定になっているときの方法
を述べる。このときは、∂T/∂n=0を解くと、 C(0) =Cg n ・lnb より n=(lnC(0) −ln(Cg ・lnb))/lnb となる。これを数式11に代入すると、
【数13】T=Rg g b{(lnC(0) −ln(Cg ・ln
b))/lnb+lnb−1}+D(a) となる。
【0041】さらに∂T/∂a=0とすると、
【数14】(b/lnb)Rg g ・(∂C(0) /∂a)
/C(0) +D’(a)=0 となる。この式は、前節の式と比べると(b/lnb)と
いう係数が、eの代わりに付いている点のみ異なる。な
お、D’(a)の定義は前節と同じである。従って、こ
の方程式の解も前節と同様にして求めることができる。
【0042】次に、nが固定になっているときの方法を
述べる。このときは、∂T/∂b=0を解くと、 C(0) =Cg n より b=(C(0)/Cg 1/n となる。これを数式1に代入すると、 T=nRg g (C(0)/Cg 1/n +D(a) となる。さらに∂T/∂a=0とすると、
【数15】Rg g (C(0)/Cg 1/n )∂C(0)/∂
a)/C(0) +D’(a)=0 となる。この方程式の解もニュートンラフソン法などで
簡単に解くことができる。
【0043】以上のように、nやbが固定のときも、前
節の手法と同様にしてディレイ最小となるパラメータ決
定をすることができる。
【0044】(4)パラメータn,bの上限値について 以下では、実用的な使用範囲において、パラメータn,
bの上限値の与え方について説明する。この上限値は、
実設計の目安として役立てるためのものである。
【0045】上限値を計算するにあたって、配線ツリー
部の配線径路が完全対称なH字形状の繰り返しになって
いると近似し、ツリー深さmは偶数であるとする。
【0046】このとき、ツリー末端の被駆動セルの入力
端子容量を無視すると、
【数16】L1 =L2 ,L3 =L4 =L1 /2,L5
6 =L1 /22 ,…,L2m-1=L2m=L1 /2m/2-1 より
【数17】 となる。
【0047】ここで、(a2 /2)m/2 ≫1≫(1/
2)m/2 と近似すると、
【数18】C(0) =ζL1 {wam (a+2)/(a2
/2−1)+6f2m/2 となる。
【0048】さて、ディレイを最小にするときのパラメ
ータaは、経験的に1≦a≦3であることがわかってい
る。よって、C(0) の上限値としては、a=3のときの
数値、すなわち
【数19】C(0) ≦C(0) max =ζL1 {w(10/7)3m
+6f2m/2 } と考えられる。
【0049】一方、ディレイを最小にするパラメータn
は、∂T/∂n=0という条件、すなわち、 n=(lnC(0) −ln(Cg ・lnb))/lnb を満たす。従って、パラメータnの上限値は、
【数20】n≦nmax=(1/lnb)ln[{w(10/7)3m
+6f2m/2 }ζL1 /(Cg ・lnb)] で与えられる。特に、b=eのときは、
【数21】nmax =ln[{w(10/7)3m +6f2m/2 }ζ
1 /Cg ] である。
【0050】同様にして、ディレイを最小にするパラメ
ータbは、∂T/∂b=0という条件、すなわち b=(C(0)/Cg 1/n を満たすから、このパラメータbの上限値は、
【数22】b≦bmax =[ζL1 {w(10/7)3m +6f
m/2 }/Cg 1/n で与えられる。
【0051】このように上記の式を用いれば、n,bの
上限値を設定することができ、レイアウト設計上の目安
を得ることができる。
【0052】なお、以上の実施例においては、配線ツリ
ーが1段の場合について説明したが、多段の配線ツリー
においても、各段ごとに上記処理を適用することで容易
に拡張利用することができる。
【0053】以上の実施例では、遅延時間を最小にする
条件を求めた。即ち、カスケード比は常に一定であり、
理想的にはeとなる。しかし、前述のように、消費電力
という観点からすれば、これは最も有利な設計とはなっ
ていない。もしも、遅延時間にゆとりがあるのであれ
ば、そのオーバースペックの分を消費電力の完全にまわ
すべきである。以下では、駆動セルに許される最大の遅
延時間Tを条件とし、消費電力を最低にする設計を考え
る。
【0054】初段のインバータのチャネル幅ω0 、及び
出力段の負荷容量値CL が与えられた図5のような出力
バッファ回路を考える。
【0055】まず、この回路の遅延時間を求めよう。
【0056】遅延時間に対するi番目のインバータから
の寄与tdelay i は、
【数23】 である。ただしCi はi番目のインバータに対する負荷
容量、βi はi番目のインバータのMOSトランジスタ
の利得係数、VDDは電源電圧、VT はしきい値電圧であ
る。Ci 及びβi はi番目及びi+1番目のインバータ
のチャネル幅ωi,ωi+1 により、次のように表すこと
が出来る。
【0057】 Ci =cωi+1 ,βi =γωi (i=0,…,N) (11) ここでは負荷容量Ci を次段のインバータのゲート容量
で近似してあり、cは単位面積当たりのゲート容量
ox、チャネル長Lにより、c=CoxLと表すことがで
きる。通常Lは全てのインバータに対して同じ値に設定
するので、cはインバータによらない定数となる。ま
た、γはプロセス利得係数KP およびチャネル長Lによ
り、γ=KP /Lと表すことができる。上の式でi=N
のとき左辺はCLとなるので、ωN+1 はωN+1 =CL
cによって定義されている定数である。以上から全遅延
時間tdelay は次のように表すことが出来る。
【0058】
【数24】 ただし、
【数25】 と定義した。
【0059】一方、充放電による全消費電力Pは
【数26】 となる。
【0060】以上から、全遅延時間がTであるという制
約条件のもとで、消費電力が最小となるための条件は、
ラグランジュの未定係数法により
【数27】 を最小化することによって得られる。ここでλはラグラ
ンジュの未定係数であり、0以上の実数である。また
【数28】 と定義した。Lが最小となるための条件はLのωi (i
=1,…,N)、λについての微分係数を0とおくこと
によって得られる。具体的には
【数29】 となる。ここで注意したいことは、λ=0の場合にはe
倍ルールに帰着するということである。また、2階微分
が正という極小値の条件からλ≧0なので不等式
【数30】 が成り立つ。
【0061】上式をより扱い易くするために次のような
定義を行う。
【0062】
【数31】 すると(16)は
【数32】 となる。さらに
【数33】 という関係が成り立つことにも注意しなければならな
い。ω0 、ωN+1 は定義により定数である。以上の式に
より、x0 ,…,xN+1 が決定されたとすると、ω1
…,ωN は次のように表すことが出来る。
【0063】 ωi =ω0 1 …xi (i=1,…,N) (22) これらの式を消費電力の式に代入して、消費電力をイン
バータの段数Nの関数として表すことが出来る。そのと
きに消費電力が最小となるようなNが最適なインバータ
の段数である。一方、Nのとり得る値には(16)により制
限がつく。(16)の第2式の左辺の最小値をNの関数とみ
てf(N)とおく。すると
【数34】 となる。Nはf(N)≦Sを満たさねばならない。これ
を満たす最大の非負の整数NをNmax 、最小の非負の整
数NをNmin とする。また、f(N)はN=logR−1
において最小値elog Rをとるので、解が存在するため
には elog R≦S (24) が満たされていなければならない。
【0064】さて、x0 ,…,xN+1 を求める方法を述
べよう。
【0065】N=0の場合には、(20),(21)はR=Sと
いう等式に帰着する。これが満たされていなければ、N
=0という解はありえないことになる。また、このとき
の消費電力は
【数35】 となる。
【0066】N=1の場合はx1 ,x2 は2次方程式x
2 −Sx+R=0の2根になるが、x1 ≦x2 のとき消
費電力が最適化される。
【0067】消費電力は
【数36】 で与えられる。ただし、
【数37】 である。この2つの解のうち、値の小さい方が消費電力
をより小さくするので、マイナス符号の方が解となる。
【0068】N≧2の場合はもっと複雑になる。(19)に
よりx2 ,…,xN+1 をx0 ,x1で表すことが出来る
が、それらを(20),(21)に代入すると、x0 ,x1 に関
する二つの方程式を得る。しかしその表式は複雑であ
り、任意のN≧2に対してその解を数式の形で求めるこ
とは不可能に近い。従って数値解法を用いるしかない。
その方法として2次元の場合のNewton-Raphson法を用い
る。2次元の場合のNewton-Raphson法を手短に述べよ
う。
【0069】2つの方程式 f0 (x0 ,x1 )=0,f1 (x0 ,x1 )=0 (28) を満たす解を数値的に求めることを考える。まず適当に
数値x0 ,x1 を与える。次にδx0 ,x1
【数38】 を満たすように定め、x0 +δx0 ,x1 +δx1 をあ
らためてx0 ,x1 とする。そしてあらかじめ設定され
たある値δmax に対し、δx0 2 +δx1 2 ≦δmax
満たされるまで以上の手続きを繰り返す。そのときのx
0 ,x1 が(28)の近似解となる。以上が2次元の場合の
Newton-Raphson法である。
【0070】以上述べてきたことを実際に行うためには
図4に示すように次のアルゴリズムに従えばよい。
【0071】1゜入力として初段のインバータのチャネ
ル幅ω0 、最終段に対する負荷容量値CL 、許容される
遅延時間の最大値Tを与える(ステップ1)。 2゜定数S,Rを以下の式によって定める(ステップ
2)。
【0072】
【数39】 ここで、c,γ,VDD,VT については既に述べた。
【0073】3゜(N+1)R1/N+1 ≦Sを満たす最小
の非負の整数Nmin および最大の非負の整数Nmax を求
める(ステップ3)。もしそのような整数Nmin ,N
max が存在しなければ中止する。 4゜N=Nmin とおく(ステップ4)。 5゜N≠0ならば8゜へ(ステップ5)。 6゜R≠Sならばω1 =∞とおいて14゜へ(ステップ
6,7)。 7゜R=Sならばω1 =CL /cとして14゜へ(ステ
ップ6,8)。 8゜適当な値x0 ,x1 を与える(ステップ9)。 9゜漸化式
【数40】 により
【数41】 を求める。
【0074】10゜
【数42】 およびそれらをx0 ,x1 で偏微分した式に代入する。
【0075】11゜δx0 ,δx1
【数43】 という式により定める(ステップ10)。
【0076】12゜δx0 2 +δx1 2 >δmax ならば
0 +δx0 ,x1 +δx1 をあらためてx0 ,x1
おいて9゜へ(ステップ11)。
【0077】13゜漸化式 ωi =ω0 1 …xi (i=1,…,N+1) (37) によってωi を求める(ステップ12)。
【0078】14゜消費電力
【数44】 を求める(ステップ13)。
【0079】15゜N+1をあらためてNとおく(ステ
ップ14)。 16゜N≦Nmax ならば8゜へ(ステップ15)。 17゜終了。
【0080】以上のアルゴリズムにおいていくつかのP
(N)が得られるが、そのうち最小のものを採用する。
以上によって遅延時間制約下で充放電による消費電力最
小のバッファが得られる。図4に以上のアルゴリズムを
示すフローが記載されている。
【0081】上の方法において、Newton-Raphson法が破
綻する場合がある。すなわち解が収束しない場合であ
る。そのようなときは初期値が悪いか、あるいは本当に
解が存在しないかのいずれかである。前者の場合につい
ては適当に初期値を取り直して、再びNewton-Raphson法
を適用することを繰り返せばよい。しかしそれを無限回
繰り返すわけにはいかないから、適当なところで切り上
げて後者の場合だと見なし、次のNに対する試行を行う
ことが必要である。また、場合によっては負のxi (i
=1,…,N)を解として得たりするような非現実的な
場合に陥ることもあるが、そのようなときにも同様の処
置が必要であろう。
【0082】表1に、VDD=5(volt)、VT =0.6
(volt)、KP =35.0(μA/V2 )、L=4.0
(μm)、Cox=3.5×10-4(pF/μm2 )とい
う値において、ω0 =2(μm)、CL =0.2494
3(pF)、T=0.0094656(nsec)という入
力に対する遅延時間と消費電力をe倍ルールのものと比
較してある。
【0083】以上の方法は入力段のチャネル幅と出力段
の負荷容量を与えて、各インバータのチャネル幅と段数
を決定する方法であるが、全く同様の方法で、出力段の
負荷容量およびインバータの段数を与えて、各インバー
タのチャネル幅と入力段のチャネル幅を決定する場合に
適用できる。あるいは入力段のチャネル幅およびインバ
ータの段数を与えて、各インバータのチャネル幅と出力
段の負荷容量を決定する場合にも適用できる。
【0084】
【表1】 以上の方法は一般的な応用が可能である。例えば図6の
ように、最終段のインバータのPMOSとNMOSのゲ
ートに別々のインバータのチェイン31,32が入力と
してつながれている場合にも、それぞれのインバータ・
チェインに対して同様の方法が適用できる。この場合、
それぞれのインバータ・チェインに対するロード・キャ
パシタンスはつながれているMOSトランジスタのゲー
ト容量で近似できる。
【0085】
【発明の効果】以上詳述したように本発明によれば、ゼ
ロに近いスキュー値、および最小のディレイ値を持つよ
うな駆動セル構造およびクロック配線径路を得ることが
できる。特に、ディレイについては、配線幅だけを最適
化してディレイを最小化する場合に比べて、さらにディ
レイを小さくすることが可能となる。
【0086】又、本発明に従って各インバータの大きさ
を定めると遅延時間制約下で消費電力が最小となるよう
な出力バッファ回路が得られる。
【図面の簡単な説明】
【図1】本発明の全体処理フローを示す図である。
【図2】本発明の特徴を表す処理フローを示す図であ
る。
【図3】クロック供給の構造を模式的に表した図であ
る。
【図4】省電力に適した本発明の特徴を表すフローを示
す図である。
【図5】CMOSインバータの連鎖からなる出力回路で
ある。
【図6】2つのCMOSインバータの連鎖が最終段のC
MOSインバータにつながれている出力回路である。
【符号の説明】
1 カスケード型駆動セルを構成するトランジスタ 2 ツリー配線 21 出力段のインバータに対する負荷容量 31 最終段のPMOSのゲートにつながれているイン
バータのチェイン 32 最終段のNMOSのゲートにつながれているイン
バータのチェイン
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H01L 21/82 H01L 27/04 H01L 21/822 H01L 27/08 H03K 19/00 G06F 17/50

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 直列接続されたトランジスタのサイズが
    等比級数的に大きくしてあるようなカスケード構造のセ
    ルを駆動セルとして用い、当該駆動セルを起点として2
    分木型のツリー配線径路によって複数の被駆動セルに信
    号供給するクロック信号分配回路において、前記駆動セ
    ルのトランジスタサイズの前段トランジスタサイズに対
    する比(カスケード比)をb、カスケード段数をn、前
    記駆動セルから被駆動セルへのパスにおいて経由するツ
    リーエッジの数をm、配線ツリー部のツリー深さ1の分
    岐ノードとその親ノードとの配線距離をL1 、最小サイ
    ズのトランジスタの入力端子容量をCg 、前記ツリー配
    線径路の最小配線幅をw、とし、配線幅ωのときの単位
    長さ当たりの配線負荷容量値をζ(ω+f)と近似した
    ときの配線幅に対する比例係数をζ、フリンジ効果をあ
    らわす配線幅に依存しない定数をf、とした場合、前記
    b,n,mは n≦(1/lnb)ln[{w(10/7)3m +6f2m/2 }ζL1 /(Cg ・lnb) ] という不等式、または、 b≦[ζL1{w(10/7)3m +6f2m/2 }Cg ]1/n
    という不等式の、少なくとも一方を満足することを特徴
    とするクロック信号分配回路。
  2. 【請求項2】 クロック信号がカスケード型駆動セルに
    よって駆動され、かつその出力側の配線形状が2分木型
    で、その径路のトポロジー構造を予め決定し、隣接する
    分岐点間の径路の各配線幅を固定して各分岐点から下流
    側のディレイが釣り合うように分岐点を決定する処理を
    ツリーの下位部から上位に向かって再帰的に繰り返すこ
    とでスキューを最小化する第1の処理と、各径路分岐点
    の位置を固定してディレイを最小化するように各配線幅
    を決定する第2の処理と、これらの処理を交互に繰り返
    しながら当該処理ステップ後のディレイ変化量が許容値
    以内に到達したかどうかを判定する第3の処理とからな
    り、この収束した状態の径路をクロック配線径路とする
    クロック信号分配回路の設計方法において、前記第2の
    処理は、配線幅がツリー上の深さに対して等比級数をな
    す近似モデルを使って、カスケード型駆動セルのカスケ
    ード段数・カスケード比および前記の配線幅の公比を決
    定する第1のステップと、前記第1のステップで決定し
    たカスケード段数・カスケード比を固定し前記第1のス
    テップで決定した配線幅を初期値として、前記等比級数
    による近似モデルを用いずに最適な配線幅を決定する第
    2のステップ、とから構成され、前記第1のステップに
    おいては、カスケード段数・カスケード比・配線幅公比
    をパラメータとする、駆動セルの入力端子から被駆動セ
    ルの入力端子までのディレイ関数を求め、各パラメータ
    に対する偏導関数の値の少なくとも一つがゼロとなるよ
    うに各パラメータの値を決定することを特徴とするクロ
    ック信号分配回路の設計方法。
  3. 【請求項3】 CMOSインバータを直列接続したバッ
    ファの回路入力段のCMOSインバータのチャネル幅、
    出力段の負荷容量値を予め設定し、その値に基づいて、
    各インバータの各チャネル幅を決定するバッファ回路設
    計方法であって、前記バッファの遅延時間が、許される
    最大値を超えないように、隣接するインバータのチャネ
    ル幅の前段側に対する後段側の比率を、前記出力段に近
    づくに従って増加させることを特徴とする、バッファ回
    路設計方法。
  4. 【請求項4】CMOSインバータを直列接続してなるバ
    ッファ回路であって、隣接するインバータのチャネル幅
    の前段側に対する後段側の比率が、前記バッファ回路の
    出力段に近づくに従って増加していることを特徴とする
    バッファ回路。
JP21874794A 1994-09-13 1994-09-13 クロック信号分配回路及びバッファ回路ならびにそれらの設計方法 Expired - Fee Related JP3382026B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21874794A JP3382026B2 (ja) 1994-09-13 1994-09-13 クロック信号分配回路及びバッファ回路ならびにそれらの設計方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21874794A JP3382026B2 (ja) 1994-09-13 1994-09-13 クロック信号分配回路及びバッファ回路ならびにそれらの設計方法

Publications (2)

Publication Number Publication Date
JPH0883849A JPH0883849A (ja) 1996-03-26
JP3382026B2 true JP3382026B2 (ja) 2003-03-04

Family

ID=16724790

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21874794A Expired - Fee Related JP3382026B2 (ja) 1994-09-13 1994-09-13 クロック信号分配回路及びバッファ回路ならびにそれらの設計方法

Country Status (1)

Country Link
JP (1) JP3382026B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11338439A (ja) * 1998-03-27 1999-12-10 Semiconductor Energy Lab Co Ltd 半導体表示装置の駆動回路および半導体表示装置

Also Published As

Publication number Publication date
JPH0883849A (ja) 1996-03-26

Similar Documents

Publication Publication Date Title
Cong et al. Simultaneous driver and wire sizing for performance and power optimization
Sapatnekar et al. An exact solution to the transistor sizing problem for CMOS circuits using convex optimization
Wei et al. Area-time optimal adder design
US5734917A (en) System for producing combination circuit to satisfy prescribed delay time by deleting selected path gate and allowing to perform the permissible function for initial circuit
US20020178432A1 (en) Method and system for synthesizing a circuit representation into a new circuit representation having greater unateness
US20060290436A1 (en) Apparatus for providing clock signals at different locations with minimal clock skew
Jiang et al. Crosstalk-driven interconnect optimization by simultaneous gate and wire sizing
US20050120319A1 (en) Timing closure methodology
US7292069B2 (en) Locally asynchronous, block-level synchronous, configurable logic blocks with sub-threshold analog circuits
JPH09107035A (ja) トランジスタ幅が可変の半導体セル
Levi et al. Logical effort for CMOS-based dual mode logic gates
JPH0554100A (ja) クロツク信号の分配方法
US20040078766A1 (en) Clock tree synthesis with skew for memory devices
JP3382026B2 (ja) クロック信号分配回路及びバッファ回路ならびにそれらの設計方法
US6230300B1 (en) Method and apparatus for the optimization of a tree depth for clock distribution in semiconductor integrated circuits
Tripathi et al. Optimal assignment of high threshold voltage for synthesizing dual threshold CMOS circuits
Rezvani et al. LEOPARD: A logical effort-based fanout optimizer for area and delay
US6539413B1 (en) Prefix tree adder with efficient sum generation
Adler et al. Repeater insertion to reduce delay and power in RC tree structures
Gao A graph based algorithm for optimal buffer insertion under accurate delay models
Rezvani et al. A fanout optimization algorithm based on the effort delay model
Chen et al. Simultaneous gate sizing and fanout optimization
Hatamian et al. High speed signal processing, pipelining, and VLSI
Awwad et al. On modeling of parallel repeater-insertion methodologies for SoC interconnects
Lai A generalized algorithm for CMOS circuit delay, power, and area optimization

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071220

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081220

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091220

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091220

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101220

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees