JP3943643B2 - Clock tree design method and apparatus for semiconductor integrated circuit - Google Patents
Clock tree design method and apparatus for semiconductor integrated circuit Download PDFInfo
- Publication number
- JP3943643B2 JP3943643B2 JP03050497A JP3050497A JP3943643B2 JP 3943643 B2 JP3943643 B2 JP 3943643B2 JP 03050497 A JP03050497 A JP 03050497A JP 3050497 A JP3050497 A JP 3050497A JP 3943643 B2 JP3943643 B2 JP 3943643B2
- Authority
- JP
- Japan
- Prior art keywords
- clock
- semiconductor integrated
- integrated circuit
- layout
- terminal flip
- 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
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、半導体集積回路のクロックツリー設計方法及びその装置に関し、半導体集積回路の各部にクロック信号を供給する半導体集積回路のクロックツリー設計方法及びその装置に関する。
近年、大規模かつ高集積化された半導体集積回路の設計期間短縮に伴い、論理記述による設計からレイアウトへの自動化を図るべく、合成ツール及び自動レイアウトツールを用いたクロックツリーの設計自動化が要求されている。
【0002】
【従来の技術】
従来のクロックツリー設計方法について図13を用いて説明する。まず、図14(A)に示すようにクロック入力端子10から供給されるクロックを入力クロックバッファ11を通して末端フリップフロップ12,13,14夫々に供給する回路が設計データとして構成されている場合について考える。
【0003】
図13は従来のシステムフローチャートを示す。ステップS10では上記の設計データに対して、クロックドライバセルの自動挿入を行う合成ツールでクロックツリーを発生させる。このステップでは入力クロックバッファ11から末端のフリップフロップ12〜14までの遅延時間を最小に抑えるようにしており、遅延時間は仮配線容量から求めている。これにより、図14(B)に示すように末端フリップフロップ12,13,14夫々に対応してクロックドライバセル15,16,17が挿入されたクロックツリーが得られる。この場合、入力クロックバッファ11から末端フリップフロップ12,13,14夫々までの配線容量は全て同一とみなしている。
【0004】
更に、上記のクロックツリーを自動レイアウトツールによりレイアウトを行う。
このステップでは各クロックドライバセル15〜17夫々から末端のフリップフロップ12〜14夫々までの配線が等長となるように配線を行う。これにより図14(C)に示すようなチップレイアウトが得られる。なお、クロックドライバセル15〜17の各個には複数のフリップフロップが接続されることが一般的である。
【0005】
【発明が解決しようとする課題】
大規模かつ大集積の半導体集積回路ではクロックドライバセルから末端のフリップフロップまでの配線を全て等配線長となるようにフリップフロップを配置してしまうと、回路素子の配置の自由度が小さくなってしまい、本来、集積回路内の全ての素子間配線が最短となるよう調整して高集積化を可能とする自動レイアウト手法が効果を発揮できないという問題があった。
【0006】
本発明は上記の点に鑑みなされたもので、集積回路内の全ての素子間配線を最短となるよう調整して高集積化が可能な半導体集積回路のクロックツリー設計方法及びその装置を提供することを目的とする。
【0007】
【課題を解決するための手段】
請求項1に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計方法において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行い、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行い、
上記マンハッタン長に基づいて、上記入力クロックバッファから各末端フリップフロップまでの遅延時間を小さく抑えるようにクロックドライバを挿入し、
上記マンハッタン長から推定される上記入力クロックバッファから上記各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成し、
上記合成されたクロックツリーに基づいて各クロックドライバセルから各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行う。
【0008】
このように事前レイアウトによって集積度を高くするような素子配置を行い、その後、各末端フリップフロップまでのマンハッタン長から配線容量を推定して各末端フリップフロップまでの遅延時間が小さくなるようにクロックドライバを挿入し、マンハッタン長から推定される入力クロックバッファから各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成し、更に各クロックドライバから各末端フリップフロップまでの配線長が最短となるようレイアウトを行うため、クロック入力端子から各末端フリップフロップまでの遅延時間を略同一とすることができ、かつ半導体集積回路の集積度を高くすることができる。
【0009】
請求項2に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計方法において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行い、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行い、
上記複数の末端フリップフロップ夫々のマンハッタン長に基づいて上記各末端フリップフロップで位相が略同一となるように上記末端フリップフロップ夫々に応じて遅延量の異なる複数のクロックを出力するPLL回路を設計し、
上記入力クロックバッファの出力するクロックを上記PLL回路に供給し、上記PLL回路の出力する遅延量の異なる複数のクロック夫々を対応する複数の末端フリップフロップ夫々に供給するよう接続してクロックツリーを合成し、
上記合成されたクロックツリーに基づいて上記PLL回路から各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行う。
【0010】
このように、事前レイアウトによって集積度を高くするような素子配置を行い、その後、各末端フリップフロップまでのマンハッタン長から遅延量を推定して各末端フリップフロップでクロックの位相が略同一となるように遅延量を異ならせた複数のクロックをPLL回路を設計し、このPLL回路を入力クロックバッファと末端フリップフロップとの間に接続してレイアウトを行うため、各末端フリップフロップにおけるクロックの位相を略同一とすることができる。
【0011】
請求項3に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計装置において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行う事前レイアウト手段と、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行う調査手段と、
上記マンハッタン長に基づいて、上記入力クロックバッファから各末端フリップフロップまでの遅延時間を小さく抑えるようにクロックドライバを挿入しし、上記マンハッタン長から推定される上記入力クロックバッファから上記各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成する合成手段と、
上記合成されたクロックツリーに基づいて各クロックドライバセルから各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行うレイアウト手段とを有する。
【0012】
このように、事前レイアウト手段と、調査手段と、合成手段と、レイアウト手段とを設けることにより、請求項1の方法を実現でき、集積度の高い半導体集積回路の設計が可能となる。
請求項4に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計装置において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行う事前レイアウト手段と、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行う調査手段と、
上記複数の末端フリップフロップ夫々のマンハッタン長に基づいて上記各末端フリップフロップで位相が略同一となるように上記末端フリップフロップ夫々に応じて遅延量の異なる複数のクロックを出力するPLL回路を設計するPLL設計手段と、
上記入力クロックバッファの出力するクロックを上記PLL回路に供給し、上記PLL回路の出力する遅延量の異なる複数のクロック夫々を対応する複数の末端フリップフロップ夫々に供給するよう接続してクロックツリーを合成する合成手段と、
上記合成されたクロックツリーに基づいて上記PLL回路から各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行う。
【0013】
このように、事前レイアウト手段と、調査手段と、PLL設計手段と、合成手段と、レイアウト手段とを設けることにより、請求項2の方法を実現でき、集積度の高い半導体集積回路の設計が可能となる。
【0014】
【発明の実施の形態】
図2は本発明のシステム構成図を示す。同図中、計算機本体1は後述の各種処理を実行するものであり、半導体集積回路の設計データを格納するハードディスク装置2,キーボード等の入力装置3,ディスプレイ装置4,印刷装置5が接続されている。上記のハードディスク装置2にはレイアウト前の基本データ2a,事前レイアウト処理で得られる事前レイアウトデータ2b,調査処理で得られるマンハッタン長データ2c,合成処理で得られる合成データ2d,レイアウト処理で得られるレイアウトデータ2e、PLL設計処理で得られるPLL設計データ2f等の半導体集積回路の設計データが格納される。
【0015】
図1は本発明の一実施例のシステムフローチャートを示す。同図中、ステップS30の事前レイアウト処理では基本データ2aに対してクロックツリーを意識せずにフリップフロップも含めた回路素子の集積度を高くするよう全素子間の配線長を最短とするようにレイアウトを行い事前レイアウトデータ2bを得る。図3は事前レイアウト処理でレイアウトされたクロック入力端子20と、入力クロックバッファ21と、末端フリップフロップ22,23,24,及びその間の配線を示している。なお、この半導体集積回路は論理回路であり、フリップフロップ等の順序回路と、アンド回路、オア回路等の各種の組み合わせ回路とから構成されており、上記末端フリップフロップ22〜24夫々の周辺に各種の組み合わせ回路が配置される。
【0016】
次のステップS40では事前レイアウトデータ2bに対して調査処理を行いマンハッタン長データ2cを得る。ここでは図3に示す事前レイアウトにおいて、入力クロックバッファ21から各末端フリップフロップ22,23,24までの配線の最短距離であるマンハッタン長を算出する。このマンハッタン長は配線容量を近似するために用いるものであり、入力クロックバッファ21から末端フリップフロップ22,24夫々までのマンハッタン長はα,入力クロックバッファ21から末端フリップフロップ23までのマンハッタン長は2αである。
【0017】
ステップS50の合成処理では事前レイアウトデータ2b及びマンハッタン長データ2cを用い、入力クロックバッファ21から末端フリップフロップ22〜24夫々までの遅延時間を最小に抑えるようにクロックドライバセルを自動挿入してクロックツリーを合成して合成データ2dを得る。このときの遅延時間はマンハッタン長で近似された配線容量に対応するものとする。図4はこの合成処理で得られたクロックツリーを示している。ここではマンハッタン長がαのフリップフロップ22,24は挿入されたクロックドライバセル25の出力端子に接続され、また、マンハッタン長が2αの末端フリップフロップ23は挿入されたクロックドライバセル26の出力端子に接続されている。
【0018】
つまり、クロックドライバセル25には末端フリップフロップ22,24夫々と接続する配線の配線長2α(=α+α)に対応する配線容量が付く。また、クロックドライバ26には末端のフリップフロップ23と接続する配線の配線長2αに対応する配線容量が付く。このため、入力クロックバッファ21から各末端フリップフロップ22〜24夫々までの遅延時間は同一となる。
【0019】
次のステップS50では合成データ2dを用いてレイアウト処理を行い、レイアウトデータ2eを得る。ここでは事前レイアウト処理での配置を基本とし、かつ合成処理で得られたクロックツリーの構成で、クロックドライバセル25,26から末端フリップフロップ22〜23までの配線長が夫々最短となるように配線を行う。
【0020】
これによって、図5に示すレイアウトが得られる。図5では末端フリップフロップ22と24とを最短で結ぶ配線の略中点位置にクロックドライバセル25の出力端子を接続し、入力クロックバッファ21の出力端子をクロックドライバセル25の入力端子に接続すると共に、クロックドライバセル25に隣接配置されたクロックドライバセル26の入力端子に接続している。そしてクロックドライバセル26の出力端子とフリップフロップ23との間を最短で結ぶ配線で接続している。
【0021】
上記のステップS30が事前レイアウト手段に対応し、ステップS40が調査手段に対応し、ステップS50が合成手段に対応し、ステップS60がレイアウト手段に対応する。
図6は本発明の第1実施例による半導体集積回路の回路配置の一実施例を示す。この半導体集積回路は極めて集積度が高く、末端フリップフロップFF1〜FF10夫々に関係する組み合わせ回路素子を対応するフリップフロップの近くに配置することは配線長を長くすることとなり、チップ全体の素子間の配線長をより短くするとフリップフロップ自体も優先的に配置できなくなった状態のものである。
【0022】
この半導体集積回路のクロックツリーでは入力クロックバッファ30からクロックドライバセル31及びクロックドライバセル32〜36夫々を経て末端フリップフロップFF1〜FF10夫々に至る配線は全て等配線長とはなっていない。しかし、各末端フリップフロップFF1〜FF10を事前レイアウトした際のマンハッタン長に基づいてクロックドライバセル32〜36を配置しているため、入力クロックバッファ30から末端フリップフロップFF1〜FF10夫々までの遅延時間は略同一、つまり遅延時間差が小さく抑えられる。なお、図中の破線はクロックドライバセル31からの遅延時間が略同一となる位置を示している。
【0023】
これに対して、図7は従来方法による半導体集積回路の回路配置の一例を示す。図7においては、クロックドライバセル41からの遅延時間が略同一となる破線上にクロックドライバセル42〜45を配置している。そして、各クロックドライバセル42〜45夫々から末端フリップフロップFF11〜FF18夫々までの配線長を略同一としている。
【0024】
この場合は末端フリップフロップFF11〜FF18夫々がある程度離れて配置されるため、末端フリップフロップFF11〜FF18夫々の近傍に、これらと関係のある組み合わせ回路を配置することになり、例えば末端フリップフロップFF14とFF17との間に図6に示すような末端フリップフロップFF4〜FF6を配置することができず、半導体集積回路の集積度を上げることができない。
【0025】
図8は本発明の第2実施例のシステムフローチャートを示す。同図中、ステップS70の事前レイアウト処理では基本データ2aに対してクロックツリーを意識せずにフリップフロップも含めた回路素子の集積度を高くするよう全素子間の配線長を最短とするようにレイアウトを行い事前レイアウトデータ2bを得る。図9は事前レイアウト処理でレイアウトされたクロック入力端子50と、入力クロックバッファ51と、末端フリップフロップ52,53,54,及びその間の配線を示している。なお、この半導体集積回路は論理回路であり、フリップフロップ等の順序回路と、アンド回路、オア回路等の各種の組み合わせ回路とから構成されており、上記末端フリップフロップ52〜54夫々の周辺に各種の組み合わせ回路が配置される。
【0026】
次のステップS80では事前レイアウトデータ2bに対して調査処理を行いマンハッタン長データ2cを得る。ここでは図9に示す事前レイアウトにおいて、入力クロックバッファ51から各末端フリップフロップ52,53,54までの配線の最短距離であるマンハッタン長を算出する。このマンハッタン長は遅延量を近似するために用いるものであり、入力クロックバッファ51から末端フリップフロップ52〜54夫々までのマンハッタン長はα,2α,3α夫々である。
【0027】
ステップS90では上記のマンハッタン長データ2cを用いてPLL(フェーズ・ロックト・ループ)回路設計処理を行い、PLL設計データ2fを得る。ここでは、図10に示すように遅延量の異なる複数のクロックを出力するPLL回路60を設計する。PLL回路60はPLLセル61と、クロックディレイセル62,63より構成される。PLLセル61は入力クロックバッファ51から供給されるクロックと、端子64から供給されるフィードバッククロックとを位相比較して、フィードバッククロックと位相が一致するクロックを出力する。このPLLセル61の出力するクロックは端子X3から出力されると共に、クロックディレイセル62に供給される。
【0028】
クロックディレイセル62は供給されるクロックをマンハッタン長αに対応する遅延量だけ遅延して端子X2から出力すると共に、クロックディレイセル63に供給する。クロックディレイセル63は供給されるクロックをマンハッタン長αに対応する遅延量だけ遅延して端子X1から出力する。これにより、端子X1から出力されるクロックに対して端子X2から出力されるクロックはマンハッタン長α分だけ進んでおり、端子X3から出力されるクロックは端子X2に対して更にマンハッタン長α分だけ進んでいる。
【0029】
次にステップS100で事前レイアウトデータ2bとマンハッタン長データ2cとPLL設計データ2fとを用い、PLL回路60の端子X1を末端フリップフロップ52のクロック入力端子に接続し、端子X2を末端フリップフロップ53のクロック入力端子に接続し、端子X3を末端フリップフロップ54のクロック入力端子に接続して図11に示すようなクロックツリーを合成データ2dを得る。また、ここでは、マンハッタン長が最長3αの末端フリップフロップ54に供給されるクロックをPLL回路60の端子64にフィードバックするよう配線を行う。
【0030】
次のステップS110では合成データ2dを用いてレイアウト処理を行いレイアウトデータ2eを得る。ここではPLL回路60は入力クロックバッファ51の近傍に配置され、末端フリップフロップ52〜54夫々は事前レイアウト処理で配置された通りであり、PLL回路60からのマンハッタン長は略α,2α,3α夫々であるので、PLL回路60から末端フリップフロップ52〜54夫々までの配線長が最短となるように配線を行う。
【0031】
図12は本発明の第2実施例による半導体集積回路の回路配置の一実施例を示す。この半導体集積回路は極めて集積度が高く、末端フリップフロップFF20〜FF29夫々に関係する組み合わせ回路素子を対応するフリップフロップの近くに配置することは配線長を長くすることになり、チップ全体の配線長をより短くするとフリップフロップ自体も優先的に配置できなくなった状態のものである。
【0032】
この半導体集積回路のクロックツリーでは入力クロックバッファ70から末端フリップフロップFF20〜FF29夫々までの配線長は夫々異なっている。しかし、予め調査したマンハッタン長に基づいてPLL回路71で出力するクロックの遅延量を調整しているため、各末端フリップフロップFF20〜FF29におけるクロックの位相は略同一となる。
【0033】
また、マンハッタン長が最長の末端フリップフロップFF22に供給されるクロックをPLL回路71にフィードバックしているため、PLL回路71に入力されるクロックと末端フリップフロップFF22に供給されるクロックとの遅延時間差を小さく抑えることができる。
【0034】
【発明の効果】
上述の如く、請求項1に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計方法において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行い、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行い、
上記マンハッタン長に基づいて、上記入力クロックバッファから各末端フリップフロップまでの遅延時間を小さく抑えるようにクロックドライバを挿入し、
上記マンハッタン長から推定される上記入力クロックバッファから上記各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成し、
上記合成されたクロックツリーに基づいて各クロックドライバセルから各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行う。
【0035】
このように事前レイアウトによって集積度を高くするような素子配置を行い、その後、各末端フリップフロップまでのマンハッタン長から配線容量を推定して各末端フリップフロップまでの遅延時間が小さくなるようにクロックドライバを挿入し、マンハッタン長から推定される入力クロックバッファから各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成し、更に各クロックドライバから各末端フリップフロップまでの配線長が最短となるようレイアウトを行うため、クロック入力端子から各末端フリップフロップまでの遅延時間を略同一とすることができ、かつ半導体集積回路の集積度を高くすることができる。
【0036】
また、請求項2に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計方法において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行い、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行い、
上記複数の末端フリップフロップ夫々のマンハッタン長に基づいて上記各末端フリップフロップで位相が略同一となるように上記末端フリップフロップ夫々に応じて遅延量の異なる複数のクロックを出力するPLL回路を設計し、
上記入力クロックバッファの出力するクロックを上記PLL回路に供給し、上記PLL回路の出力する遅延量の異なる複数のクロック夫々を対応する複数の末端フリップフロップ夫々に供給するよう接続してクロックツリーを合成し、
上記合成されたクロックツリーに基づいて上記PLL回路から各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行う。
【0037】
このように、事前レイアウトによって集積度を高くするような素子配置を行い、その後、各末端フリップフロップまでのマンハッタン長から遅延量を推定して各末端フリップフロップでクロックの位相が略同一となるように遅延量を異ならせた複数のクロックをPLL回路を設計し、このPLL回路を入力クロックバッファと末端フリップフロップとの間に接続してレイアウトを行うため、各末端フリップフロップにおけるクロックの位相を略同一とすることができる。
【0038】
また、請求項3に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計装置において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行う事前レイアウト手段と、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行う調査手段と、
上記マンハッタン長に基づいて、上記入力クロックバッファから各末端フリップフロップまでの遅延時間を小さく抑えるようにクロックドライバを挿入し、上記マンハッタン長から推定される上記入力クロックバッファから上記各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成する合成手段と、
上記合成されたクロックツリーに基づいて各クロックドライバセルから各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行うレイアウト手段とを有する。
【0039】
このように、事前レイアウト手段と、調査手段と、合成手段と、レイアウト手段とを設けることにより請求項1の方法を実現でき、集積度の高い半導体集積回路の設計が可能となる。
また、請求項4に記載の発明は、半導体集積回路の外部より供給されるクロックを上記半導体集積回路内の各部に供給するクロックツリーの設計を行う半導体集積回路のクロックツリー設計装置において、
上記半導体集積回路の集積度を高くするように事前レイアウトを行う事前レイアウト手段と、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々の配線の最短距離であるマンハッタン長を算出して調査を行う調査手段と、
上記複数の末端フリップフロップ夫々のマンハッタン長に基づいて上記各末端フリップフロップで位相が略同一となるように上記末端フリップフロップ夫々に応じて遅延量の異なる複数のクロックを出力するPLL回路を設計するPLL設計手段と、
上記入力クロックバッファの出力するクロックを上記PLL回路に供給し、上記PLL回路の出力する遅延量の異なる複数のクロック夫々を対応する複数の末端フリップフロップ夫々に供給するよう接続してクロックツリーを合成する合成手段と、
上記合成されたクロックツリーに基づいて上記PLL回路から各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行う。
【0040】
このように、事前レイアウト手段と、調査手段と、PLL設計手段と、合成手段と、レイアウト手段とを設けることにより、請求項2の方法を実現でき、集積度の高い半導体集積回路の設計が可能となる。
【図面の簡単な説明】
【図1】本発明のシステムフローチャートである。
【図2】本発明のシステム構成図である。
【図3】本発明を説明するための図である。
【図4】本発明を説明するための図である。
【図5】本発明を説明するための図である。
【図6】本発明方法による回路配置の一実施例を示す図である。
【図7】従来方法による回路配置の一例を示す図である。
【図8】本発明のシステムフローチャートである。
【図9】本発明を説明するための図である。
【図10】本発明を説明するための図である。
【図11】本発明を説明するための図である。
【図12】本発明を説明するための図である。
【図13】従来のシステムフローチャートである。
【図14】従来を説明するための図である。
【符号の説明】
20 クロック入力端子
21,40 入力クロックバッファ
22〜24,FF1〜FF10 末端フリップフロップ
25,26,31〜36 クロックドライバセル
S30,S70 事前レイアウト処理
S40,S80 調査処理
S50,S100 合成処理
S60,S110 レイアウト処理
S90 PLL設計処理[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a clock tree design method and apparatus for a semiconductor integrated circuit, and to a clock tree design method and apparatus for a semiconductor integrated circuit that supplies a clock signal to each part of the semiconductor integrated circuit.
In recent years, with the shortening of the design period of large-scale and highly integrated semiconductor integrated circuits, clock tree design automation using synthesis tools and automatic layout tools is required to automate the design from logic description to layout. ing.
[0002]
[Prior art]
A conventional clock tree design method will be described with reference to FIG. First, as shown in FIG. 14A, consider a case in which a circuit that supplies a clock supplied from the
[0003]
FIG. 13 shows a conventional system flowchart. In step S10, a clock tree is generated for the design data by a synthesis tool that automatically inserts clock driver cells. In this step, the delay time from the input clock buffer 11 to the terminal flip-
[0004]
Further, the above clock tree is laid out by an automatic layout tool.
In this step, the wiring is performed so that the wiring from each of the
[0005]
[Problems to be solved by the invention]
In large-scale and large-scale semiconductor integrated circuits, if flip-flops are arranged so that all the wires from the clock driver cell to the terminal flip-flops have the same wiring length, the degree of freedom of arrangement of circuit elements is reduced. In other words, there is a problem that an automatic layout method that enables high integration by adjusting all the inter-element wirings in the integrated circuit to the shortest is not effective.
[0006]
The present invention has been made in view of the above points, and provides a clock tree design method and apparatus for a semiconductor integrated circuit that can be highly integrated by adjusting all the inter-element wirings in the integrated circuit to be the shortest. For the purpose.
[0007]
[Means for Solving the Problems]
According to a first aspect of the present invention, there is provided a clock tree design method for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit.
Pre-layout is performed to increase the degree of integration of the semiconductor integrated circuit,
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. And
Based on the Manhattan length, insert a clock driver to keep the delay time from the input clock buffer to each terminal flip-flop small,
A clock tree is synthesized so that the delay time from the input clock buffer estimated from the Manhattan length to each terminal flip-flop is substantially the same,
Based on the synthesized clock tree, the wiring is performed so that the wiring length from each clock driver cell to each terminal flip-flop is the shortest.
[0008]
In this way, the device is arranged so as to increase the degree of integration by the prior layout, and then the clock capacity is estimated from the Manhattan length to each terminal flip-flop so that the delay time to each terminal flip-flop is reduced. Synthesize the clock tree so that the delay time from the input clock buffer estimated from the Manhattan length to each terminal flip-flop is substantially the same, and the wiring length from each clock driver to each terminal flip-flop is the shortest Therefore, the delay time from the clock input terminal to each terminal flip-flop can be made substantially the same, and the degree of integration of the semiconductor integrated circuit can be increased.
[0009]
According to a second aspect of the present invention, there is provided a clock tree design method for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit.
Pre-layout is performed to increase the degree of integration of the semiconductor integrated circuit,
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. And
Based on the Manhattan length of each of the plurality of terminal flip-flops, a PLL circuit that outputs a plurality of clocks having different delay amounts according to each terminal flip-flop is designed so that the phase of each terminal flip-flop is substantially the same. ,
The clock output from the input clock buffer is supplied to the PLL circuit, and a plurality of clocks with different delay amounts output from the PLL circuit are connected to corresponding terminal flip-flops to synthesize a clock tree. And
Based on the synthesized clock tree, the wiring is performed so that the wiring length from the PLL circuit to each terminal flip-flop is the shortest.
[0010]
In this way, element layout is performed so as to increase the degree of integration by pre-layout, and then the delay amount is estimated from the Manhattan length to each terminal flip-flop so that the clock phase is substantially the same in each terminal flip-flop. Since the PLL circuit is designed with a plurality of clocks with different delay amounts, and the PLL circuit is connected between the input clock buffer and the terminal flip-flop for layout, the phase of the clock at each terminal flip-flop is omitted. Can be the same.
[0011]
According to a third aspect of the present invention, there is provided a clock tree design apparatus for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit.
Pre-layout means for performing pre-layout so as to increase the degree of integration of the semiconductor integrated circuit;
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. Investigation means to perform,
Based on the Manhattan length, a clock driver is inserted so as to suppress a delay time from the input clock buffer to each terminal flip-flop, and from the input clock buffer estimated from the Manhattan length to each terminal flip-flop. Synthesizing means for synthesizing the clock tree so that the delay times of
Layout means for performing layout by wiring so as to minimize the wiring length from each clock driver cell to each terminal flip-flop based on the synthesized clock tree.
[0012]
Thus, by providing the pre-layout means, the investigation means, the synthesizing means, and the layout means, the method of
According to a fourth aspect of the present invention, there is provided a clock tree design apparatus for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit.
Pre-layout means for performing pre-layout so as to increase the degree of integration of the semiconductor integrated circuit;
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. Investigation means to perform,
Based on the Manhattan length of each of the plurality of terminal flip-flops, a PLL circuit that outputs a plurality of clocks having different delay amounts according to each of the terminal flip-flops is designed so that the phase of each terminal flip-flop is substantially the same. PLL design means;
The clock output from the input clock buffer is supplied to the PLL circuit, and a plurality of clocks with different delay amounts output from the PLL circuit are connected to corresponding terminal flip-flops to synthesize a clock tree. A synthesis means to
Based on the synthesized clock tree, the wiring is performed so that the wiring length from the PLL circuit to each terminal flip-flop is the shortest.
[0013]
Thus, by providing the pre-layout means, the investigation means, the PLL design means, the synthesis means, and the layout means, the method of
[0014]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 2 shows a system configuration diagram of the present invention. In the figure, a computer
[0015]
FIG. 1 shows a system flowchart of an embodiment of the present invention. In the figure, in the pre-layout process in step S30, the basic data 2a is made conscious of the clock tree so that the wiring length between all elements is minimized so as to increase the degree of integration of circuit elements including flip-flops. Layout is performed to obtain pre-layout data 2b. FIG. 3 shows the
[0016]
In the next step S40, the pre-layout data 2b is checked to obtain
[0017]
In the synthesizing process of step S50, the pre-layout data 2b and the
[0018]
In other words, the
[0019]
In the next step S50, layout processing is performed using the composite data 2d to obtain layout data 2e. Here, the layout in advance layout processing is the basic, and the clock tree configuration obtained by the synthesis processing is used so that the wiring lengths from the
[0020]
As a result, the layout shown in FIG. 5 is obtained. In FIG. 5, the output terminal of the
[0021]
Step S30 corresponds to the pre-layout means, step S40 corresponds to the investigation means, step S50 corresponds to the synthesis means, and step S60 corresponds to the layout means.
FIG. 6 shows an embodiment of the circuit arrangement of the semiconductor integrated circuit according to the first embodiment of the present invention. This semiconductor integrated circuit has a very high degree of integration, and disposing the combinational circuit element related to each of the terminal flip-flops FF1 to FF10 close to the corresponding flip-flop increases the wiring length, so that the entire chip is between the elements. When the wiring length is made shorter, the flip-flop itself cannot be arranged preferentially.
[0022]
In the clock tree of this semiconductor integrated circuit, all the wirings from the
[0023]
On the other hand, FIG. 7 shows an example of a circuit arrangement of a semiconductor integrated circuit according to a conventional method. In FIG. 7, clock driver cells 42 to 45 are arranged on a broken line where the delay time from the
[0024]
In this case, since each of the terminal flip-flops FF11 to FF18 is arranged at some distance, a combinational circuit related to these is arranged in the vicinity of each of the terminal flip-flops FF11 to FF18. Terminal flip-flops FF4 to FF6 as shown in FIG. 6 cannot be arranged between the
[0025]
FIG. 8 shows a system flowchart of the second embodiment of the present invention. In the figure, in the pre-layout process in step S70, the basic data 2a is made conscious of the clock tree so that the wiring length between all elements is minimized so as to increase the degree of integration of circuit elements including flip-flops. Layout is performed to obtain pre-layout data 2b. FIG. 9 shows the
[0026]
In the next step S80, the pre-layout data 2b is checked to obtain
[0027]
In step S90, PLL (phase locked loop) circuit design processing is performed using the above-described
[0028]
The
[0029]
In step S100, the preliminary layout data 2b, the
[0030]
In the next step S110, layout processing is performed using the composite data 2d to obtain layout data 2e. Here, the
[0031]
FIG. 12 shows an embodiment of a circuit arrangement of a semiconductor integrated circuit according to the second embodiment of the present invention. This semiconductor integrated circuit has a very high degree of integration, and disposing the combinational circuit elements related to the terminal flip-flops FF20 to FF29 close to the corresponding flip-flops increases the wiring length, and the wiring length of the entire chip. If the length is shortened, the flip-flop itself cannot be arranged preferentially.
[0032]
In the clock tree of this semiconductor integrated circuit, the wiring lengths from the
[0033]
Also, since the clock supplied to the terminal flip-flop FF22 having the longest Manhattan length is fed back to the
[0034]
【The invention's effect】
As described above, the invention according to
Pre-layout is performed to increase the degree of integration of the semiconductor integrated circuit,
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. And
Based on the Manhattan length, insert a clock driver to keep the delay time from the input clock buffer to each terminal flip-flop small,
A clock tree is synthesized so that the delay time from the input clock buffer estimated from the Manhattan length to each terminal flip-flop is substantially the same,
Based on the synthesized clock tree, the wiring is performed so that the wiring length from each clock driver cell to each terminal flip-flop is the shortest.
[0035]
In this way, the device is arranged so as to increase the degree of integration by the prior layout, and then the clock capacity is estimated from the Manhattan length to each terminal flip-flop so that the delay time to each terminal flip-flop is reduced. Synthesize the clock tree so that the delay time from the input clock buffer estimated from the Manhattan length to each terminal flip-flop is substantially the same, and the wiring length from each clock driver to each terminal flip-flop is the shortest Therefore, the delay time from the clock input terminal to each terminal flip-flop can be made substantially the same, and the degree of integration of the semiconductor integrated circuit can be increased.
[0036]
According to a second aspect of the present invention, there is provided a clock tree design method for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit.
Pre-layout is performed to increase the degree of integration of the semiconductor integrated circuit,
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. And
Based on the Manhattan length of each of the plurality of terminal flip-flops, a PLL circuit that outputs a plurality of clocks having different delay amounts according to each terminal flip-flop is designed so that the phase of each terminal flip-flop is substantially the same. ,
The clock output from the input clock buffer is supplied to the PLL circuit, and a plurality of clocks with different delay amounts output from the PLL circuit are connected to corresponding terminal flip-flops to synthesize a clock tree. And
Based on the synthesized clock tree, the wiring is performed so that the wiring length from the PLL circuit to each terminal flip-flop is the shortest.
[0037]
In this way, element layout is performed so as to increase the degree of integration by pre-layout, and then the delay amount is estimated from the Manhattan length to each terminal flip-flop so that the clock phase is substantially the same in each terminal flip-flop. Since the PLL circuit is designed with a plurality of clocks with different delay amounts, and the PLL circuit is connected between the input clock buffer and the terminal flip-flop for layout, the phase of the clock at each terminal flip-flop is omitted. Can be the same.
[0038]
According to a third aspect of the present invention, there is provided a clock tree design apparatus for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit.
Pre-layout means for performing pre-layout so as to increase the degree of integration of the semiconductor integrated circuit;
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. Investigation means to perform,
Based on the Manhattan length, a clock driver is inserted so as to reduce the delay time from the input clock buffer to each terminal flip-flop, and the input clock buffer estimated from the Manhattan length to each terminal flip-flop A synthesis means for synthesizing the clock tree so that the delay times are substantially the same;
Layout means for performing layout by wiring so as to minimize the wiring length from each clock driver cell to each terminal flip-flop based on the synthesized clock tree.
[0039]
Thus, by providing the pre-layout means, the investigation means, the synthesizing means, and the layout means, the method of
According to a fourth aspect of the present invention, there is provided a clock tree design apparatus for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit.
Pre-layout means for performing pre-layout so as to increase the degree of integration of the semiconductor integrated circuit;
Based on the preliminary layout result, the input clock buffer supplied with the clock from the outside and the Manhattan length , which is the shortest distance between the wirings of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit , are investigated. Investigation means to perform,
Based on the Manhattan length of each of the plurality of terminal flip-flops, a PLL circuit that outputs a plurality of clocks having different delay amounts according to each of the terminal flip-flops is designed so that the phase of each terminal flip-flop is substantially the same. PLL design means;
The clock output from the input clock buffer is supplied to the PLL circuit, and a plurality of clocks with different delay amounts output from the PLL circuit are connected to corresponding terminal flip-flops to synthesize a clock tree. A synthesis means to
Based on the synthesized clock tree, the wiring is performed so that the wiring length from the PLL circuit to each terminal flip-flop is the shortest.
[0040]
Thus, by providing the pre-layout means, the investigation means, the PLL design means, the synthesis means, and the layout means, the method of
[Brief description of the drawings]
FIG. 1 is a system flowchart of the present invention.
FIG. 2 is a system configuration diagram of the present invention.
FIG. 3 is a diagram for explaining the present invention.
FIG. 4 is a diagram for explaining the present invention.
FIG. 5 is a diagram for explaining the present invention.
FIG. 6 is a diagram showing an embodiment of a circuit arrangement according to the method of the present invention.
FIG. 7 is a diagram illustrating an example of a circuit arrangement according to a conventional method.
FIG. 8 is a system flowchart of the present invention.
FIG. 9 is a diagram for explaining the present invention.
FIG. 10 is a diagram for explaining the present invention.
FIG. 11 is a diagram for explaining the present invention.
FIG. 12 is a diagram for explaining the present invention.
FIG. 13 is a conventional system flowchart.
FIG. 14 is a diagram for explaining a conventional technique.
[Explanation of symbols]
20
Claims (4)
上記半導体集積回路の集積度を高くするように事前レイアウトを行い、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々のマンハッタン長を算出して調査を行い、
上記マンハッタン長に基づいて、上記入力クロックバッファから各末端フリップフロップまでの遅延時間を小さく抑えるようにクロックドライバを挿入し、
上記マンハッタン長から推定される上記入力クロックバッファから上記各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成し、
上記合成されたクロックツリーに基づいて各クロックドライバセルから各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行うことを特徴とする半導体集積回路のクロックツリー設計方法。In a clock tree design method of a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit,
Pre-layout is performed to increase the degree of integration of the semiconductor integrated circuit,
Based on the result of the previous layout, the input clock buffer supplied with the clock from the outside and the Manhattan length of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit are calculated and investigated,
Based on the Manhattan length, insert a clock driver to keep the delay time from the input clock buffer to each terminal flip-flop small,
A clock tree is synthesized so that the delay time from the input clock buffer estimated from the Manhattan length to each terminal flip-flop is substantially the same,
A clock tree design method for a semiconductor integrated circuit, wherein wiring is performed so as to minimize the wiring length from each clock driver cell to each terminal flip-flop based on the synthesized clock tree.
上記半導体集積回路の集積度を高くするように事前レイアウトを行い、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々のマンハッタン長を算出して調査を行い、
上記複数の末端フリップフロップ夫々のマンハッタン長に基づいて上記各末端フリップフロップで位相が略同一となるように上記末端フリップフロップ夫々に応じて遅延量の異なる複数のクロックを出力するPLL回路を設計し、
上記入力クロックバッファの出力するクロックを上記PLL回路に供給し、上記PLL回路の出力する遅延量の異なる複数のクロック夫々を対応する複数の末端フリップフロップ夫々に供給するよう接続してクロックツリーを合成し、
上記合成されたクロックツリーに基づいて上記PLL回路から各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行うことを特徴とする半導体集積回路のクロックツリー設計方法。In a clock tree design method of a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit,
Pre-layout is performed to increase the degree of integration of the semiconductor integrated circuit,
Based on the result of the previous layout, the input clock buffer supplied with the clock from the outside and the Manhattan length of each of the plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit are calculated and investigated,
Based on the Manhattan length of each of the plurality of terminal flip-flops, a PLL circuit that outputs a plurality of clocks having different delay amounts according to each terminal flip-flop is designed so that the phase of each terminal flip-flop is substantially the same. ,
The clock output from the input clock buffer is supplied to the PLL circuit, and a plurality of clocks with different delay amounts output from the PLL circuit are connected to corresponding terminal flip-flops to synthesize a clock tree. And
A clock tree design method for a semiconductor integrated circuit, wherein wiring is performed so as to minimize the wiring length from the PLL circuit to each terminal flip-flop based on the synthesized clock tree.
上記半導体集積回路の集積度を高くするように事前レイアウトを行う事前レイアウト手段と、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々のマンハッタン長を算出して調査を行う調査手段と、
上記マンハッタン長に基づいて、上記入力クロックバッファから各末端フリップフロップまでの遅延時間を小さく抑えるようにクロックドライバを挿入し、上記マンハッタン長から推定される上記入力クロックバッファから上記各末端フリップフロップまでの遅延時間が略同一になるようにクロックツリーを合成する合成手段と、
上記合成されたクロックツリーに基づいて各クロックドライバセルから各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行うレイアウト手段とを有することを特徴とする半導体集積回路のクロックツリー設計装置。In a clock tree design apparatus for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit,
Pre-layout means for performing pre-layout so as to increase the degree of integration of the semiconductor integrated circuit;
Based on the preliminary layout result, an investigation means for conducting an investigation by calculating a Manhattan length of each of the input clock buffer supplied with the clock from the outside and a plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit;
Based on the Manhattan length, a clock driver is inserted so as to reduce the delay time from the input clock buffer to each terminal flip-flop, and the input clock buffer estimated from the Manhattan length to each terminal flip-flop A synthesis means for synthesizing the clock tree so that the delay times are substantially the same;
A clock tree design for a semiconductor integrated circuit, comprising: layout means for performing layout by wiring the wiring length from each clock driver cell to each terminal flip-flop to be the shortest based on the synthesized clock tree. apparatus.
上記半導体集積回路の集積度を高くするように事前レイアウトを行う事前レイアウト手段と、
上記事前レイアウト結果に基づいて、上記外部よりクロックを供給される入力クロックバッファとクロックを半導体集積回路の各部に供給する複数の末端フリップフロップ夫々のマンハッタン長を算出して調査を行う調査手段と、
上記複数の末端フリップフロップ夫々のマンハッタン長に基づいて上記各末端フリップフロップで位相が略同一となるように上記末端フリップフロップ夫々に応じて遅延量の異なる複数のクロックを出力するPLL回路を設計するPLL設計手段と、
上記入力クロックバッファの出力するクロックを上記PLL回路に供給し、上記PLL回路の出力する遅延量の異なる複数のクロック夫々を対応する複数の末端フリップフロップ夫々に供給するよう接続してクロックツリーを合成する合成手段と、
上記合成されたクロックツリーに基づいて上記PLL回路から各末端フリップフロップまでの配線長を最短となるよう配線してレイアウトを行うレイアウト手段とを有することを特徴とする半導体集積回路のクロックツリー設計装置。In a clock tree design apparatus for a semiconductor integrated circuit for designing a clock tree for supplying a clock supplied from the outside of the semiconductor integrated circuit to each part in the semiconductor integrated circuit,
Pre-layout means for performing pre-layout so as to increase the degree of integration of the semiconductor integrated circuit;
Based on the preliminary layout result, an investigation means for conducting an investigation by calculating a Manhattan length of each of the input clock buffer supplied with the clock from the outside and a plurality of terminal flip-flops supplying the clock to each part of the semiconductor integrated circuit;
Based on the Manhattan length of each of the plurality of terminal flip-flops, a PLL circuit that outputs a plurality of clocks having different delay amounts according to each of the terminal flip-flops is designed so that the phase of each terminal flip-flop is substantially the same. PLL design means;
The clock output from the input clock buffer is supplied to the PLL circuit, and a plurality of clocks with different delay amounts output from the PLL circuit are connected to corresponding terminal flip-flops to synthesize a clock tree. A synthesis means to
A clock tree design apparatus for a semiconductor integrated circuit, comprising: layout means for performing layout by wiring the shortest wiring length from the PLL circuit to each terminal flip-flop based on the synthesized clock tree. .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03050497A JP3943643B2 (en) | 1997-02-14 | 1997-02-14 | Clock tree design method and apparatus for semiconductor integrated circuit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03050497A JP3943643B2 (en) | 1997-02-14 | 1997-02-14 | Clock tree design method and apparatus for semiconductor integrated circuit |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH10229128A JPH10229128A (en) | 1998-08-25 |
| JP3943643B2 true JP3943643B2 (en) | 2007-07-11 |
Family
ID=12305657
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP03050497A Expired - Fee Related JP3943643B2 (en) | 1997-02-14 | 1997-02-14 | Clock tree design method and apparatus for semiconductor integrated circuit |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3943643B2 (en) |
-
1997
- 1997-02-14 JP JP03050497A patent/JP3943643B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH10229128A (en) | 1998-08-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2877303B2 (en) | Automatic design equipment for integrated circuits | |
| US7017132B2 (en) | Methodology to optimize hierarchical clock skew by clock delay compensation | |
| US20020129325A1 (en) | Engineering-change method of semiconductor circuit | |
| US6260175B1 (en) | Method for designing an integrated circuit using predefined and preverified core modules having prebalanced clock trees | |
| JPH05121548A (en) | Clock supplying circuit and integrated circuit with the same circuit | |
| JP3943643B2 (en) | Clock tree design method and apparatus for semiconductor integrated circuit | |
| JP3671504B2 (en) | Layout design method for semiconductor integrated circuit | |
| US20080036498A1 (en) | Logic circuit, system for reducing a clock skew, and method for reducing a clock skew | |
| EP0544164A1 (en) | Semi custom-made integrated circuit having clock synchronous circuit improved in clock skew | |
| JP3116915B2 (en) | Clock net layout design change method | |
| JP2003045972A (en) | Mask layout automatic placement and routing method | |
| JP3104746B2 (en) | Clock tree layout device | |
| JP2000035832A (en) | Semiconductor integrated circuit and its clock distributing method | |
| JP3139750B2 (en) | Timing adjustment method | |
| JP3495342B2 (en) | Clock distribution circuit | |
| JP2004335589A (en) | Semiconductor integrated circuit and layout design method thereof | |
| JPH1092939A (en) | Method of auto placement and routing of semiconductor integrated circuit | |
| JP3214447B2 (en) | IO buffer circuit with clock skew compensation function and semiconductor integrated circuit using the same | |
| JP3012446B2 (en) | Automatic layout method for integrated circuits | |
| JP3843233B2 (en) | Layout design system and layout design method for semiconductor integrated circuit device | |
| JP3221567B2 (en) | Semiconductor integrated circuit and clock supply method | |
| JP3048046B2 (en) | Semiconductor integrated circuit wiring method | |
| JP2001308186A (en) | Layout method capable of additionally modifying flip-flop and recording medium recording layout program | |
| JP3052847B2 (en) | LSI layout method | |
| US6985843B2 (en) | Cell modeling in the design of an integrated circuit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040121 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040827 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041012 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041208 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060117 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060301 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070327 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070406 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100413 Year of fee payment: 3 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110413 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110413 Year of fee payment: 4 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110413 Year of fee payment: 4 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120413 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130413 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130413 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140413 Year of fee payment: 7 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |