(57)【特許請求の範囲】
【請求項１】
バッファサイズ及びファンアウト数が実質的に等しい複数のバッファであって、それぞれがカスケード接続された入力側インバータ及び出力側インバータを有する複数のバッファを２点間の信号配線中に等間隔に挿入する、信号伝播回路の設計方法であって、
前記２点間の信号伝播遅延時間を最小とするバッファサイズ及びバッファ段数の計算に際して、
最小サイズのインバータのサイズに対する出力側インバータのサイズの拡大率ｈbf-outを求める計算式を、
a、dを遅延係数、mを入力側インバータのサイズに対する出力側インバータのサイズの拡大率、ファンアウト数を１、Rout0を最小サイズのインバータの出力抵抗、Cintを単位長当りの配線容量、Rintを単位長当りの配線抵抗、及び、Cin0を最小サイズのインバータのゲート入力容量として、
ｈbf-out＝√｛(a・m・Rout0・Cint)/(d・Rint・Cin0)}
とし、
前記バッファ段数を、前記バッファサイズの計算とは独立に計算することを特徴とする、信号伝播回路の設計方法。
【請求項２】
前記バッファ段数Nbfを求める計算式を、
c、bを遅延係数、Cds0を最小サイズのインバータのドレイン基板間容量、lintを前記入力位置と前記最終位置との間の距離として、
Nbf＝√{(c・Rint・Cint）/[b・{m+(１/m)+2・(Cds0/Cin0)}・Rout0・Cin0]}×lint
とする、請求項１に記載の信号伝播回路の設計方法。
【請求項３】
バッファの挿入段数Nを、
nをNbfの小数点以下を切り捨てた値として、
Nbf≦√{n(n+1)}の場合にN＝nとし、
Nbf＞√{n(n+1)}の場合にN＝n+1
と選定する、請求項２に記載の信号伝播回路の設計方法。
【請求項４】
a、b、c、dが夫々、0.8〜1.0、1.1〜1.5、0.35〜0.42、及び、0.8〜1.0の範囲にある、請求項２又は３に記載の信号伝播回路の設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、信号伝播回路の設計方法に関し、より詳細には、伝播する信号の遅延時間を最小とするためのバッファ又はインバータのサイズ及び段数の配置設計に関するものである。
【０００２】
【従来の技術】
ＬＳＩを設計する場合には、信号配線の選択にあたっては、その信号伝播時間をできるだけ短縮してＬＳＩの動作可能なスピードを上げている。この選択では、一般にＬＳＩ全域に亘るような長い信号配線の場合にはグローバル配線を使用し、２点間等の信号配線等のように短い配線の場合にはローカル配線を使用している。グローバル配線は、幅が大きな金属層によって形成され、ローカル配線に比して、配線抵抗及び配線容量が小さく、伝播する信号の遅延時間が小さくなるようにその形状が選定される。
【０００３】
図８は、従来行われている回路シミュレータを用いた信号伝播回路の設計手順を示すフローチャートである。対象とする信号伝播回路に対して、分岐数が単数又は複数の何れであるか等に関する回路構成や、バッファのサイズ及び間隔等に関する回路構成と、入力波形等に関するパラメータとを設定し（ステップＳ１１）、ＳＰＩＣＥ等の回路シミュレータにより、シミュレーションを実行する（ステップＳ１２）。このシミュレーション結果から信号伝播回路の遅延時間を解析し（ステップＳ１３）、遅延時間が所定の設計条件を満足するか否かを判断する（ステップＳ１４）。
【０００４】
“ＮＯ”であれば、ステップＳ１１に戻り、シミュレーション結果が所定の設計条件を満足するように、回路構成又はパラメータの設定を変更して、信号伝播回路を設計し直す。“ＹＥＳ”であれば、設定した回路構成及びパラメータを信号伝播回路の設定情報として決定する（ステップＳ１５）。
【０００５】
【発明が解決しようとする課題】
ステップＳ１１の設定では、一般に回路構成を決定してから、それに対応するパラメータを決定する。その際、パラメータの設定情報が多いので、１度で最適な信号伝播回路を設計することは困難である。遅延時間が設定条件を満足しない場合には、パラメータを何度も変更し、設定情報の見直し及び回路シミュレーションの実行と解析とを繰り返すこととなる。しかし、回路構成が不適当な場合には、パラメータの設定見直しだけでは、設計条件を満足することができない。
【０００６】
本発明は、上記したような従来の技術が有する問題点を解決するためになされたものであり、遅延時間が最小となる最適な回路構成の設計が容易に得られる、信号伝播回路の設計方法を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するため、本発明の信号伝播回路の設計方法は、バッファサイズ及びファンアウト数が実質的に等しい複数のバッファであって、それぞれがカスケード接続された入力側インバータ及び出力側インバータを有する複数のバッファを２点間の信号配線中に等間隔に挿入する、信号伝播回路の設計方法であって、前記２点間の信号伝播遅延時間を最小とするバッファサイズ及びバッファ段数の計算に際して、最小サイズのインバータのサイズに対する出力側インバータのサイズの拡大率ｈbf-outを求める計算式を、a、dを遅延係数、mを入力側インバータのサイズに対する出力側インバータのサイズの拡大率、ファンアウト数を１、Rout0を最小サイズのインバータの出力抵抗、Cintを単位長当りの配線容量、Rintを単位長当りの配線抵抗、及び、Cin0を最小サイズのインバータのゲート入力容量として、  ｈbf-out＝√｛(a・m・Rout0・Cint)/(d・Rint・Cin0)}とし、前記バッファ段数を、前記バッファサイズの計算とは独立に計算することを特徴とする。
【０００８】
本発明の信号伝播回路の設計方法では、信号伝播回路の遅延時間の式における最小条件から求めた計算式を用いて、バッファのサイズ及び挿入段数を決定するので、パラメータを何度も変更して回路シミュレータを繰り返し使用することなく、遅延時間が最小となる最適な回路構成の信号伝播回路の設計が容易に得られる。
【０００９】
本発明の信号伝播回路の設計方法では、前記バッファ段数Nbfを求める計算式を、c、bを遅延係数、Cds0を最小サイズのインバータのドレイン基板間容量、lintを前記入力位置と前記最終位置との間の距離として、Nbf＝√{(c・Rint・Cint）/[b・{m+(１/m)+2・(Cds0/Cin0)}・Rout0・Cin0]}×lintとすることができる。
【００１０】
本発明の信号伝播回路の設計方法では、バッファの挿入段数Nを、nをNbfの小数点以下を切り捨てた値として、Nbf≦√{n(n+1)}の場合にN＝nとし、Nbf＞√{n(n+1)}の場合にN＝n+1と選定することができる。
【００１１】
また、本発明の信号伝播回路の設計方法では、a、b、c、dが夫々、0.8〜1.0、1.1〜1.5、0.35〜0.42、及び、0.8〜1.0の範囲とすることが好ましい。
【００１２】
【発明の実施の形態】
以下、本発明の実施形態例に基づいて、本発明の信号伝播回路の設計方法について説明する。本実施形態例の設計では、例えばクロック配線等のようにチップ全体の領域で使用されるグローバル配線の設計に際して信号伝播時間を最小にする条件を求める。ここで、回路の入力端子に最も近いバッファの入力端から入力端子に最も遠いバッファの出力配線端までの距離をlintとし、距離lintまでにどのようにバッファを配置したら良いかを計算によって求め決定することとする。
【００１３】
距離lintの２点間にバッファを配置し信号を伝播させる際に、２点間に大きなサイズのバッファを唯１つ配置する構成と、２点間に適当なサイズのバッファを複数段に配置する構成とが考えられる。前者の場合、バッファのサイズを大きくすることにより、遅延時間が減少するが、配線長が或る限度を越えると逆に遅延時間が増加し、占有する面積が増える等の欠点が多い。後者の場合、バッファのサイズ及び配置数を考慮する必要があるものの、遅延時間が最小になる条件が得られ、信号を分岐させることが容易で設計の自由度が広い。本設計方法では、後者の方針を採用する。
【００１４】
図１は、適当なサイズのバッファを複数段に配置した場合の一般化された信号伝播回路の回路図である。同図の信号伝播回路は、Nbf段のバッファ回路が距離lintの２点間にカスケード接続される。各段のバッファ回路は、２つのインバータから成るバッファとして構成される。
【００１５】
図２は、２つのインバータ間の信号伝播を解析するためのモデルとなる、単純化された信号伝播回路の等価回路図である。この信号伝播回路は、入力端子から信号を入力する前段インバータ１、その出力端子から信号を出力する後段インバータ２、及び、その間で信号を伝播する配線３によって構成される。前段インバータ１は、出力側にインバータの出力抵抗Rout及びドレイン基板間容量Cdsを有する。後段インバータ２は、入力側にゲート入力容量Cinを有する。配線３は、配線長lintに応じた配線抵抗(Rint×lint)及び配線容量(Cint×lint)を有する。
【００１６】
図２の信号伝播回路で伝播する信号の遅延時間は、以下のような第１〜第３の遅延成分で構成される。第１の遅延成分は、前段のインバータの出力抵抗Ｒoutと前段のインバータのドレイン基板間容量Cdsとの積である、前段のインバータ定数に基づく遅延成分であり、第２の遅延成分は、前段のインバータの出力抵抗Routと配線容量(Cint×lint)及び後段のインバータのゲート入力容量Cinの和との積で表わされる時定数に基づく遅延成分であり、第３の遅延成分は、配線抵抗(Rint×lint)と配線容量(Cint×lint)及び後段のゲート入力容量Cinの和との積で表わされる時定数に基づく遅延成分である。
【００１７】
図１の信号伝播回路で伝播する信号の遅延時間の一般式を求めるために、以下のように設計条件を設定する。各段のバッファ回路は夫々、同じバッファサイズ及びファンアウト数brを有し、等間隔にカスケード接続される。各段の入力側インバータは、最小サイズのインバータのサイズのhbf-in倍である。つまり、hbf-inの拡大率を有する。各段の出力側インバータは、最小サイズのインバータのサイズのhbf-out倍である。つまり、hbf-outの拡大率を有する。ただし各インバータの拡大率hbfは、インバータを構成するＮＭＯＳトランジスタのチャネル幅をWgnとし、チャネル長をLgnとすると、hbf=Wgn/Lgnで示される。
【００１８】
ここで、最小サイズのインバータについて説明する。図３は、最小サイズのインバータを説明するための図である。一般に、ＰＭＯＳトランジスタのゲート長LgpとＮＭＯＳトランジスタのゲート長Lgnとは等しく、Lgp＝Lgnの関係がある。ＮＭＯＳトランジスタの出力抵抗Rgoutの逆数の値は、ゲート長Lgn当りのゲート幅Wgnの値に比例する。ＮＭＯＳトランジスタは、Wgn/Lgn=1の条件で製造することが困難であるため、Wgn/Lgn=1の条件の出力抵抗Rout0を基準として、出力抵抗Rgoutに対して所定の倍率を有するWgn/Lgnの条件で製造される。最小サイズのインバータは、Wgn/Lgn=1の条件を有するＮＭＯＳトランジスタと、その出力抵抗の値がRout0であるＰＭＯＳトランジスタとで構成されるインバータである。
【００１９】
図４は、２つのバッファ間の信号伝播を解析するためのモデルとなる、詳細な信号伝播回路の等価回路図である。同図の等価回路に対して、図２に対する遅延解析を同様に適用すると、最終段のインバータの出力配線端における遅延時間Td-bfは、
Td-bf =Nbf×[Rout0/(hbf-out/m)×b・[hbf-out・Cin0+(hbf-out/m)・Cds0] +Rout0/hbf-out×[br・(a・Cint・lint/Nbf+b・(hbf-out/m)・Cin0)+b・hbf-out・Cds0] +Rint・lint/Nbf×(c・Cint・lint/Nbf+d・(hbf-out/m)・Cin0)]  ・・・・  （１）
となる。
【００２０】
式（１）の[]内の第１項〜第３項は夫々、図２の等価回路に対する遅延時間の第１〜第３の遅延成分に対応する。ただし、a、b、c、dは遅延係数、Rout0は最小サイズのインバータの出力抵抗、Cin0は最小サイズのインバータのゲート入力容量、Cds0は最小サイズのインバータのドレイン基板間容量、Rintは単位長さ当りの配線抵抗、Cintは単位長さ当りの配線容量、brは分岐数（ファンアウト数）、mは各段のバッファにおける出力側インバータの入力側インバータに対する拡大率、lintは対象となる２点間の長さ（つまり、回路の入力端子に最も近いバッファの入力端から入力端子に最も遠いバッファの出力配線端までの距離）、hinvは最小サイズのインバータのサイズに対するインバータの拡大率、hbf-outは最小サイズのインバータのサイズに対する出力側インバータの拡大率、及び、hbf-inは最小サイズのインバータのサイズに対する入力側インバータの拡大率である。
【００２１】
式（１）をhbf-out及びNbfについて整理すると、
【００２２】
Td-bf =(a・br・Rout0・Cint・lint)/hbf-out +(d/m・Rint・lint・Cin0)×hbf-out + [b・[m+(br/m)+2・(Cds0/Cin0)]・Rout0・Cin0]×Nbf +(c・Rint・Cint・lint2)/Nbf  ・・・・  （２）
【００２３】
式（２）の右辺において、第１項と第２項とが変数ｈbf-outによって、第３項と第４項とが変数Nbfによって夫々独立に定まる。つまり、変数ｈbf-out及び変数Nbfを夫々独立に選定することによって、遅延時間を最小にできる。遅延時間Td-bfを最小とする出力側インバータの拡大率hbf-outは、式（２）の第１項と第２項について、相加相乗平均の定理を適用することにより求められる。
【００２４】
(a・br・Rout0・Cint・lint)/hbf-out + (d/m・Rint・lint・Cin0)×hbf-out ≧  2・√[(a・br・Rout0・Cint・lint)・(d/m・Rint・lint・Cin0)]  =2・√(a・d・br/m)・√(Rout0・Rint・Cin0・Cint)×lint   ・・・・  （３）
【００２５】
式（３）で等号が成立する際に、遅延時間最小の条件が成立する。その条件は、
hbf-out  = √[(a・m・br・Rout0・Cint)/(d・Rint・Cin0)]  ・・・・  （４）
hbf-in  = hbf-out/m = √[(a・br・Rout0・Cint)/(d・m・Rint・Cin0)]  ・・・・  （５）
である。つまり、式（４）及び（５）によってバッファサイズが決定される。
【００２６】
同様に、式（２）の第３項と第４項について、相加相乗平均の定理を適用することにより、遅延時間Td-bfを最小とする挿入段数Nbfが求められる。
【００２７】
[b・[m+(br/m)+2・(Cds0/Cin0)]・Rout0・Cin0]×Nbf +(c・Rint・Cint・lint2)/Nbf≧2・√[[b・[m+(br/m)+2・(Cds0/Cin0)]・Rout0・Cin0]・(c・Rint・Cint・lint2)]=2・√[b・c・[m+(br/m)+2・(Cds0/Cin0)]]・√(Rout0・Rint・Cin0・Cint)×lint   ・・・・  （６）
【００２８】
式（６）の等号の際に、最小条件が成立する。この条件は、
Nbf  = √[(c・Rint・Cint)/[b・[m+(br/m)+2・(Cds0/Cin0)]・Rout0・Cin0]]×lint   ・・・・  （７）
である。
【００２９】
計算された挿入段数Nbfは、以下のようにして整数化する。配線間隔であるバッファピッチPbfは、Pbf = lint/Nbfであるから、
Pbf = lint/Nbf =
√[[b・[m+(br/m)+2・(Cds0/Cin0)]・Rout0・Cin0]/(c・Rint・Cint)]  ・・・・  （８）
【００３０】
Nbf（=lint/Pbf）の値を小数点以下切り下げてnにする。Nbf≦√[n(n+1)]の場合、Nbfをnにし、Nbf>√[n(n+1)]の場合、Nbfをn+1にする。
【００３１】
図５は、この計算結果を示すグラフである。実線は挿入段数Nbfがｎとなる場合を示し、点線は挿入段数Nbfがn+1となる場合を示す。Nbf=nとすると、遅延時間Ｔd-bfとの関係が最適になる距離l1はn・Pbfであり、Nbf=n+1の際、遅延時間Td-bfとの関係が最適になる距離l3は(n+1)・Pbfである。また、段数Nbfがnとn+1との境界にある値の場合、これに対応する距離l2は√[n(n+1)]×Pbfである。
【００３２】
表１は、信号伝播回路の遅延時間が最小になるサイズ及び挿入段数を求める各計算式を示す表である。上記のようにして、信号伝播回路にインバータを用いた場合も、同様に求められる。
【００３３】
【表１】
0003722666.tif 000002
【００３４】
本発明の設計方法における計算式（１）の妥当性を以下のように確かめた。図６（ａ）及び（ｂ）は、ローカル配線における遅延時間の式（１）及びＳＰＩＣＥシュミレーションによる計算結果を示すグラフである。遅延時間の式（１）に求める遅延時間とシュミレーションによって求めた遅延時間とを対比している。同図（ａ）は拡大率hbf（＝１１．３２５）であり、同図（ｂ）は（ａ）に対し１０倍相当の拡大率hbf（＝１１３．２５）である。遅延係数は、a=0.85、b=1.47、c=0.37とし、好ましくは、aは0.8〜1.0、bは1.1〜1.5、cは0.35〜0.42、dは0.8〜1.0の範囲である。ローカル配線は、５００μｍ程度の長さを有し、２つのインバータの一方の出力と他方の入力とに接続される。配線材料をＡｌにし温度を５０度にして、各条件の基で計算されている。
【００３５】
実線はＳＰＩＣＥ等のシュミレーションによる計算結果であり、点線は式（１）による計算結果である。シュミレーションによる計算結果において、上向きの三角形は、入力信号が立上りの場合を示し、下向きの三角形は、入力信号が立下りの場合を示す。ひし形は、両者の計算結果が異なるので、双方の計算結果を平均した値を示す。
【００３６】
式（１）とシュミレーションとの計算結果は、各条件において殆ど一致するので、ローカル配線において式（１）の正当性が証明される。
【００３７】
図７（ａ）及び（ｂ）は、グローバル配線における遅延時間の式（１）及びＳＰＩＣＥシュミレーションによる計算結果を示すグラフである。同図（ａ）は拡大率hbf（＝１１．３２５）であり、同図（ｂ）は（ａ）に対し３２倍相当の拡大率hbf（＝３６２．４）である。
【００３８】
グローバル配線は、４０００μｍ程度の長さを有するものとしてあり、他の条件は図６の場合と同じである。式（１）とシュミレーションとの計算結果は、図６の場合と同様にグローバル配線において、式（１）の正当性が証明される。
【００３９】
上記により、式（１）から導かれた式（２）〜式（８）を用いてサイズ及び挿入段数を求め、等間隔に配置した信号伝播回路が、最小の遅延時間を与えることが理解できる。
【００４０】
図６及び図７に示すように、同じ２点間の距離においてバッファサイズhbfの増加に伴い、遅延時間Ｔｄは小さくなる。しかし、hbfが大きすぎると、逆にＴｄが大きくなる。この場合、従来の方法では、信号伝播回路に対して遅延が最小になるという絶対的な判断基準がないので、hbfを変化させながら何回もシュミレーションを実行し、シュミレーション結果を解析してhbfを決定する必要があった。
【００４１】
これに対し、本発明は、表１に示すように式（１）から導かれた計算式を用いて、バッファのサイズ及び挿入段数を計算しこれらを等間隔に配置するので、信号伝播回路の回路構成が定まり、これに基づいてパラメータを決定できる。
【００４２】
以上、本発明をその好適な実施形態例に基づいて説明したが、本発明の信号伝播回路の設計方法は、上記実施形態例の構成にのみ限定されるものでなく、上記実施形態例の構成から種々の修正及び変更を施した信号伝播回路の設計方法も、本発明の範囲に含まれる。
【００４３】
【発明の効果】
以上説明したように、本発明の信号伝播回路の設計方法では、信号伝播回路の遅延時間を、インバータ又はバッファのサイズ及び挿入段数を夫々、独立に決定するので、最適な回路構成が一意的に定まり、従って回路シミュレータを繰り返し使用することなく、遅延時間が最小となる最適な信号伝播回路の設計が容易にできる。
【図面の簡単な説明】
【図１】適当なバッファを複数段に配置した一般化された信号伝播回路の回路図である。
【図２】２つのインバータ間の信号伝播を解析するためのモデルとなる、単純化された信号伝播回路の等価回路図である。
【図３】最小サイズのインバータを説明するための図である。
【図４】２つのバッファ間の信号伝播を解析するためのモデルとなる、詳細な信号伝播回路の等価回路図である。
【図５】遅延時間Ｔd-bfと距離lintとの関係を示すグラフである。
【図６】同図（ａ）及び（ｂ）は、ローカル配線における遅延時間の式（１）及びＳＰＩＣＥシュミレーションによる計算結果を示すグラフである。
【図７】同図（ａ）及び（ｂ）は、グローバル配線における遅延時間の式（１）及びＳＰＩＣＥシュミレーションによる計算結果を示すグラフである。
【図８】従来行われている回路シミュレータを用いた信号伝播回路の設計手順を示すフローチャートである。
【符号の説明】
１  前段インバータ
２  後段インバータ
３  配線
【図１】
0003722666.tif 000003
【図２】
0003722666.tif 000004
【図３】
0003722666.tif 000005
【図４】
0003722666.tif 000006
【図５】
0003722666.tif 000007
【図６】
0003722666.tif 000008
【図７】
0003722666.tif 000009
【図８】
0003722666.tif 000010