(57)【特許請求の範囲】
【請求項１】
半導体集積回路の回路接続情報に基づき、前記半導体集積回路を構成する回路ブロックを半導体チップ上に配置する第１の工程と、
前記半導体チップ上に外部からのクロック信号が伝搬する格子状の上位メッシュクロック配線を生成する第２の工程と、
前記回路ブロック上の前記上位メッシュクロック配線の属性を変更して、前記回路ブロックの外形と前記上位メッシュクロック配線との交点を通過するように形成された配線格子を下位メッシュクロック配線として生成するとともに前記上位メッシュクロック配線と前記下位メッシュクロック配線とを接続する第３の工程と、
前記下位メッシュクロック配線の１つまたは複数を前記回路ブロックに入力するクロック信号線として設定する第４の工程と、
前記回路ブロックを構成するフリップフロップ回路と前記下位メッシュクロック配線との間にクロックバッファを挿入配置し、このクロックバッファと前記フリップフロップ回路間および前記クロックバッファと前記下位メッシュクロック配線間とを配線する第５の工程と、
を備えることを特徴とする半導体集積回路のクロック配線設計方法
【請求項２】
水平方向の前記上位メッシュクロック配線と前記下位メッシュクロック配線、および垂直方向の前記上位メッシュクロック配線と前記下位メッシュクロック配線は、それぞれ同一配線層であることを特徴とする請求項１記載の半導体集積回路のクロック配線設計方法。
【請求項３】
水平方向の前記下位メッシュクロック配線と垂直方向の前記下位メッシュクロック配線との交点に、前記下位メッシュクロック配線と垂直方向の前記下位メッシュクロック配線とを接続するためのスルーホールを設けたことを特徴とする請求項１記載の半導体集積回路のクロック配線設計方法。
【請求項４】
半導体集積回路の回路接続情報に基づき、前記半導体集積回路を構成する回路ブロックを半導体チップ上に配置する第１の工程と、
前記半導体チップ上に外部からのクロック信号が伝搬する格子状の上位メッシュクロック配線を生成する第２の工程と、
前記上位メッシュクロック配線と前記回路ブロックの外形との交点に仮想メッシュクロック端子を生成する第３の工程と、
前記仮想メッシュクロック端子を通過するように配線格子を設定し、前記回路ブロック上の前記上位メッシュクロック配線の属性を変更して、前記回路ブロック上の前記上位メッシュクロック配線から下位メッシュクロック配線を生成するとともに前記上位メッシュクロック配線と前記下位メッシュクロック配線とを接続する第４の工程と、
前記仮想メッシュクロック端子の１つまたは複数を前記回路ブロックに入力するクロック入力端子として設定する第５の工程と、
前記回路ブロックを構成するフリップフロップ回路と前記下位メッシュクロック配線との間にクロックバッファを挿入配置し、このクロックバッファと前記フリップフロップ回路間および前記クロックバッファと前記下位メッシュクロック配線間とを配線する第６の工程と、
を備えることを特徴とする半導体集積回路のクロック配線設計方法。
【請求項５】
前記第６の工程において、前記仮想メッシュクロック端子から前記フリップフロップ回路に至るクロック信号の遅延値が前記回路ブロック内で一定となるように、前記クロックバッファの配置処理と前記下位クロックメッシュ配線から前記フリップフロップ回路に至るクロック配線の配線処理とが行われることを特徴とする請求項４記載の半導体集積回路のクロック配線設計方法。
【請求項６】
半導体チップ上に配置された回路ブロックと、
前記半導体チップ上に格子状に設けられた外部からのクロック信号が伝搬する上位メッシュクロック配線と、
下位メッシュクロック配線とを備え、
前記下位メッシュクロック配線は、前記回路ブロック上の前記上位メッシュクロック配線の属性を変更して、前記回路ブロックの外形と前記上位メッシュクロック配線との交点を通過するように形成された配線格子として生成され、
前記上位メッシュクロック配線と前記下位メッシュクロック配線とが接続され、前記回路ブロック内のフリップフロップ回路のクロックスキューが所定値以内となるように、前記下位メッシュクロック配線に接続するクロックバッファの挿入および配置と、前記クロックバッファと前記下位メッシュクロック配線とを接続するクロック配線の配線長の調整とが行われることを特徴とする半導体集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は半導体集積回路のクロック配線方法及び半導体集積回路に関し、特にクロックスキューを低減することができる半導体集積回路のクロック配線方法及び半導体集積回路に関する。
【０００２】
【従来の技術】
半導体集積回路の回路規模は増大し続けており、半導体集積回路を自動レイアウトする際の計算機負荷を軽減するとともに設計期間を短縮するために、半導体集積回路を階層化してレイアウト設計することが一般的である。この方法では、集積回路の各階層毎にレイアウト設計が行われ、クロックスキューを低減するためのクロック分配処理も階層毎に行われる。このような従来例として、特開２００１−１２５９３７号公報に、半導体集積回路を階層化してレイアウト設計する際のクロック配線方法が記載されている。
【０００３】
次に上記公報に記載のクロックツリー方式を使用したクロック配線方法について、図５を参照して説明する。
【０００４】
図５は、上記公報によるクロック配線方法を適用した半導体チップのレイアウト図であり、半導体チップ５１の内周に沿って配置された入出力バッファ５２と、内部回路が配置される内部領域５３が設けられ、この内部領域５３に回路ブロック５４，５５，５６が配置されている。
【０００５】
回路ブロック５４〜５６は、複数のフリップフロップ回路５７を含んでおり、それぞれの回路ブロック５４〜５６内でのクロックスキューが最小となるように、クロックバッファを介してクロック配線が行われ、クロックツリーが生成される。
【０００６】
例えば、回路ブロック５４では、クロックバッファ５４’から、複数のフリップフロップ回路５７に対してクロックスキューが最小となるように、クロック信号が供給される。
【０００７】
同様に回路ブロック５５では、クロックバッファ５５’からのクロック信号がクロックバッファ５５１，５５２に供給され、さらにこれらのクロックバッファ５５１，５５２から複数のフリップフロップ回路５７に対してクロックスキューが最小となるように、クロック信号が供給される。
【０００８】
このときクロックバッファ５５’から回路ブロック５５を構成する全てのフリップフロップ回路に対して、クロック信号の遅延が等しくなるように、回路ブロック５５内でクロックツリーが生成される。
【０００９】
同様に回路ブロック５６では、クロックバッファ５６’からのクロック信号がクロックバッファ５６１，５６２に供給され、さらにこれらのクロックバッファ５６１，５６２から下位階層のクロックバッファ５６１１，５６１２およびクロックバッファ５６１３，５６１４にクロック信号が供給され、これらのクロックバッファ５６１１〜５６１４から複数のフリップフロップ回路５７に対してクロック信号が供給される。そして、クロックバッファ５６’から回路ブロック５６を構成する全てのフリップフロップ回路に対してクロック信号の遅延が等しくなるように、回路ブロック５６内でクロックツリーが生成される。
【００１０】
このようにして各回路ブロック５４〜５６内でのクロックスキューが最小となるように調整される。そして、各回路ブロックの最上位のクロックバッファから末端のフリップフロップ回路までのクロック信号の遅延値に対する平均値が算出される。例えば、回路ブロック５５では、クロックバッファ５５’からフリップフロップ回路５７までのクロック信号の遅延値に対する平均値が算出される。
【００１１】
次にルートクロックバッファ５９から、各回路ブロックを構成するフリップフロップ回路に至るクロックスキューが最小となるように、上位階層におけるクロックバッファの配置とクロック配線とが行われる。
【００１２】
具体的に説明すると、ルートクロックバッファ５９から直接回路ブロック５６に対してクロック信号が供給されるとともに、クロックバッファ５１０を介して回路ブロック５４，５５に対してもクロック信号が供給される。このときルートクロックバッファ５９から、各回路ブロック５４〜５６を構成するフリップフロップ回路５７に至るクロックスキューが最小となるように、クロックバッファ５１０の段数とクロック配線５１１の配線長とが調整される。
【００１３】
次に特開平３−２３２２６７号公報に記載されている半導体集積回路のクロックスキューを低減するための第２の従来技術について、図６を参照して説明する。
【００１４】
この公報記載のクロック配線方法では、半導体チップ６１の全面に渡って格子状のメッシュクロック配線が設けられており、このメッシュクロック配線６２からクロックバッファ６３を介して末端のフリップフロップ回路６４にクロック信号が供給される。
【００１５】
このクロック配線方法では、最上位のルートクロックバッファから末端のフリップフロップ回路に至るクロック配線の配線抵抗が低減されるので、クロックスキューを低減することが出来る。
【００１６】
【発明が解決しようとする課題】
上述した特開２００１−１２５９３７号公報記載のクロック配線方法は、最上位のルートクロックバッファからクロック信号が供給される各回路ブロックの回路素子数、または回路ブロックを構成するフリップフロップ回路の数に大きな差があった場合、回路ブロック内のクロック遅延値が回路ブロック毎に大きく異なり、最上位のルートクロックバッファから末端のフリップフロップ回路に至るクロックスキューを低減するためには、多数のクロックスキュー調整用のクロックバッファを設けたり、クロック配線を大きく迂回するなどの処理が必要となる。
【００１７】
すなわち上位階層のクロックバッファの負荷となるフリップフロップ回路の数や、同じく上位階層のクロックバッファの負荷となるクロック配線の配線長が回路ブロック毎に大きく異なると、回路ブロック毎にクロック遅延値が大きく異なることになる。
【００１８】
図５の例で具体的に説明すると、回路ブロック５４を構成するフリップフロップ回路５７は２個しかないので、このフリップフロップ回路５７を駆動するクロックバッファ５４’は１つで十分である。
【００１９】
一方回路ブロック５５では、フリップフロップ回路５７の数は８個と数が多いので、２階層からなる３個のクロックバッファ５５’、５５１，５５２によりクロック信号が駆動される。
【００２０】
また回路ブロック５６を構成するフリップフロップ回路の数はさらに多いので、３階層からなる７個のクロックバッファ５６’、５６１，５６２，５６１１〜５６１４によりクロック信号が駆動される。
【００２１】
従って、最上位のルートクロックバッファから末端のフリップフロップ回路に至るクロックスキューを低減するために、ルートクロックバッファ５９から回路ブロック５４の間にクロックバッファ５１０を５個直列に接続し、ルートクロックバッファ５９から回路ブロック５５の間にクロックバッファ５１０を３個直列に接続している。このように、クロックスキューを低減するために、多数のクロックスキュー調整用のクロックバッファを設けたり、クロック配線の配線容量を大きくするためにクロック配線を大きく迂回するなどの処理が必要となる。
【００２２】
さらに、製造ばらつきによりクロックスキュー調整用のクロックバッファの駆動能力やクロック配線容量の変化に伴う配線遅延が変化し、製造ばらつきの中心ではクロックスキューが最小であっても、それ以外の条件ではクロックスキューが大きくなってしまうという問題がある。
【００２３】
また特開平３−２３２２６７号公報に記載されている半導体集積回路のクロック配線方法は、半導体集積回路の階層構造を１階層に展開し、一括してクロックバッファの配置とクロック配線を行うので、計算機の処理量が膨大になるという問題がある。
【００２４】
このため本発明の目的は、半導体集積回路の階層毎にそれぞれ格子状のメッシュクロック配線を生成するとともに階層毎のメッシュクロック配線を相互に接続し、これらのメッシュクロック配線を介して末端のフリップフロップ回路にクロック信号を供給することにより、計算機の処理量の増大を抑制するとともに、最上位のルートクロックバッファから末端のフリップフロップ回路に至るパスに挿入されたクロックスキュー調整用のクロックバッファや、クロック配線の迂回を低減することができる半導体集積回路のクロック配線方法及び半導体集積回路を提供することにある。
【００２５】
また本発明の他の目的は、必要とするクロックスキューを設計するのに何回も再設計を行うことが無く、設計期間を短縮することが可能な半導体集積回路のクロック配線方法及び半導体集積回路を提供することにある。
【００２６】
【課題を解決するための手段】
そのため、本発明による半導体集積回路のクロック配線設計方法は、半導体集積回路の回路接続情報に基づき、前記半導体集積回路を構成する回路ブロックを半導体チップ上に配置する第１の工程と、前記半導体チップ上に外部からのクロック信号が伝搬する格子状の上位メッシュクロック配線を生成する第２の工程と、前記回路ブロック上の前記上位メッシュクロック配線の属性を変更して、前記回路ブロックの外形と前記上位メッシュクロック配線との交点を通過するように形成された配線格子を下位メッシュクロック配線として生成するとともに前記上位メッシュクロック配線と前記下位メッシュクロック配線とを接続する第３の工程と、前記下位メッシュクロック配線の１つまたは複数を前記回路ブロックに入力するクロック信号線として設定する第４の工程と、前記回路ブロックを構成するフリップフロップ回路と前記下位メッシュクロック配線との間にクロックバッファを挿入配置し、このクロックバッファと前記フリップフロップ回路間および前記クロックバッファと前記下位メッシュクロック配線間とを配線する第５の工程と、を備えている。
【００２７】
また本発明による半導体集積回路は、半導体チップ上に配置された回路ブロックと、前記半導体チップ上に格子状に設けられた外部からのクロック信号が伝搬する上位メッシュクロック配線と、下位メッシュクロック配線とを備え、前記下位メッシュクロック配線は、前記回路ブロック上の前記上位メッシュクロック配線の属性を変更して、前記回路ブロックの外形と前記上位メッシュクロック配線との交点を通過するように形成された配線格子として生成され、前記上位メッシュクロック配線と前記下位メッシュクロック配線とが接続され、前記回路ブロック内のフリップフロップ回路のクロックスキューが所定値以内となるように、前記下位メッシュクロック配線に接続するクロックバッファの挿入および配置と、前記クロックバッファと前記下位メッシュクロック配線とを接続するクロック配線の配線長の調整とが行われることを特徴としている。
【００２８】
【発明の実施の形態】
次に、本発明の実施の形態について図１〜図４を参照して説明する。
【００２９】
図１は、本発明の半導体集積回路のクロック配線方法を示すフローチャートである。ステップＳ１で、回路接続情報１００を参照して、半導体集積回路を構成する回路ブロックを半導体チップ上に配置する。
【００３０】
図２（ａ）は、回路接続情報１００の一部を示しており、外部クロック入力端子１からルートクロックバッファ１’を介して、回路ブロック３，４，５の各クロック入力端子６，７，８にクロック信号線２が接続されていることを表している。
【００３１】
次にステップＳ２において、半導体チップ上に格子状の上位メッシュクロック配線を生成するとともに、ルートクロックバッファと上位メッシュクロック配線とを接続する配線を生成する。
【００３２】
図２（ｂ）は、ステップＳ１で半導体チップ１０１上に配置された回路ブロック３，４，５と、ステップＳ２で生成された上位メッシュクロック配線９、１０と、半導体チップ１０１の内周に沿って配置された入出力バッファ１０２の１つを用い、クロック信号を半導体チップ１０１に配置されたフリップフロップ回路に供給するルートクロックバッファ１’と、ルートクロックバッファ１’とクロック入力端子６，７，８とを接続する仮想配線２’とを示すレイアウト図である。水平方向の上位メッシュクロック配線９は、例えば５層の金属配線で構成され、垂直方向の上位メッシュクロック配線１０は、例えば６層の金属配線で構成され、上位メッシュクロック配線９と上位メッシュクロック配線１０との交点はスルーホールで接続され同電位となっている。
【００３３】
クロック入力端子６，７，８の位置はステップＳ２の処理では確定しておらず、仮想的に回路ブロック３，４，５の外形上に配置されている。また、上位メッシュクロック配線は、配線抵抗が十分小さくなるように、配線幅及びメッシュ間隔が選択される。
【００３４】
ここで注意しなければならないのは、回路ブロック３，４，５の外側では上位メッシュクロック配線９，１０の配線格子が定義され、レイアウトツールが上位メッシュクロック配線９，１０を認識できるので、回路ブロック３，４，５の外側では上位メッシュクロック配線９，１０を使用することが可能である。
【００３５】
しかし回路ブロック３，４，５の内側では上位メッシュクロック配線９，１０の配線格子が定義されておらず、自動配置および自動配線を行うレイアウトツールが上位メッシュクロック配線９，１０を認識できないので、回路ブロック３，４，５の内部領域では上位メッシュクロック配線９，１０を使用することが出来ない。すなわち、上位メッシュクロック配線９，１０は、回路ブロック３，４，５を単に通過しているだけの状態にある。
【００３６】
次に図１のステップＳ３において、上位メッシュクロック配線と回路ブロックの外形との交点に仮想的な端子である仮想メッシュクロック端子を生成する。この仮想メッシュクロック端子は、回路ブロック内部に下位メッシュクロック配線の配線格子を定義するとともに、上位メッシュクロック配線９，１０と下位メッシュクロック配線とを仮想メッシュクロック端子で接続するために必要な仮想的な端子情報であり、実際に端子のデータが生成されるわけではない。
【００３７】
次に図１のステップＳ４において、回路ブロック内に仮想メッシュクロック端子を通過するようにメッシュクロック配線用の配線格子を設定し、回路ブロック上の上位メッシュクロック配線を、下位メッシュクロック配線に置換する。
【００３８】
上位メッシュクロック配線と、これを置換した下位メッシュクロック配線とは同一配線層で形成され、上位メッシュクロック配線と下位メッシュクロック配線は、それぞれプロパティ（属性）を有しており、このプロパティにより、上位メッシュクロック配線であるか、下位メッシュクロック配線であるかが判定される。従って、上位メッシュクロック配線を下位メッシュクロック配線に置換する処理内容は、上位メッシュクロック配線のプロパティを下位メッシュクロック配線のプロパティに置換することを意味する。
【００３９】
図３（ａ）は、図１のステップＳ２で生成された上位メッシュクロック配線９，１０を、図２（ｂ）に示す回路ブロック３，クロック入力端子６，仮想配線２’とともに示したレイアウト図であり、図３（ｂ）は、図１のステップＳ３で生成された仮想メッシュクロック端子１１と、ステップＳ４で生成された下位メッシュクロック配線９’、１０’とを示すレイアウト図である。
【００４０】
下位メッシュクロック配線９’の配線層は、上位メッシュクロック配線９の配線層と同じく５層であり、下位メッシュクロック配線１０’の配線層は、上位メッシュクロック配線１０の配線層と同じく６層であり、下位メッシュクロック配線９’と下位メッシュクロック配線１０’との交点はスルーホールで接続され同電位となっている。
【００４１】
ステップＳ４の処理により、回路ブロックの内部においてもレイアウトツールは、配線格子と一体化した下位メッシュクロック配線を認識することが可能となり、回路ブロックの外側あるいは内側を問わず、半導体チップの任意の位置でレイアウトツールに対して定義された配線格子と一体化したメッシュクロック配線が使用可能となる。
【００４２】
すなわち回路ブロックの外部では、上位メッシュクロック配線を用いて回路ブロックの外側に配置されたフリップフロップ回路にクロック信号が供給され、回路ブロックの内部では、下位メッシュクロック配線を用いて回路ブロックを構成するフリップフロップ回路にクロック信号が供給される。
【００４３】
図１に戻って説明を続けると、ステップＳ５において仮想メッシュクロック端子のうちの１つ又は複数を、クロック入力端子として設定する。
【００４４】
ステップＳ４の段階では、図２に示す外部クロック入力端子１から上位メッシュクロック配線にクロック信号が供給され、さらに仮想メッシュクロック端子を介して下位メッシュクロック配線にクロック信号が供給されるが、下位メッシュクロック配線とクロック信号線とは接続されていないので、このままでは回路ブロックを構成するフリップフロップ回路のクロック入力端にクロック信号が供給されない。
【００４５】
従ってステップＳ５において仮想メッシュクロック端子のうちの１つ又は複数をクロック入力端子として設定することにより、次に説明するステップＳ６の処理で、回路ブロックを構成するフリップフロップ回路のクロック入力端子と、下位メッシュクロック配線とが接続するように配線が行われ、外部クロック入力端子１→ルートクロックバッファ→上位メッシュクロック配線→仮想メッシュクロック端子→下位メッシュクロック配線→クロック配線→回路ブロックを構成するフリップフロップ回路のクロック入力端の順にクロック信号が供給される。
【００４６】
具体的に説明すると、図３（ｂ）に示す回路ブロック３のクロック入力端子６が、図３（ｃ）に示す仮想メッシュクロック端子１１Ａに設定される。すなわちこの設定により、１１Ａは上位メッシュクロック配線と下位メッシュクロック配線とを接続する仮想メッシュクロック端子として認識されるとともに、回路ブロック３を構成するフリップフロップ回路にクロック信号を供給するクロック入力端子として認識される。
【００４７】
次に図１のステップＳ６において、回路ブロック内で下位メッシュクロック配線から回路ブロックを構成するフリップフロップ回路にクロック信号を供給するとともに、クロックスキューを最小にするようにクロック分配処理を行う。
【００４８】
具体的には、下位メッシュクロック配線からフリップフロップ回路までの遅延値が等しくなるようにクロックバッファの挿入及び配置とクロック配線長の調整とが行われる。
【００４９】
このときクロックスキューの最小化は、回路ブロック内でクロックスキューを最小化することは勿論、図２に示す外部クロック入力端子１から各回路ブロックを構成するフリップフロップ回路までのクロックスキューが最小になるように、回路ブロック内でクロック分配処理が行われる。
【００５０】
すなわち、τ（外）を外部クロック入力端子から回路ブロックのクロック入力端子までの遅延値とし、τ（内）を回路ブロックのクロック入力端子から回路ブロックを構成するフリップフロップ回路までの遅延値とすると、τ（外）＋τ（内）が全ての回路ブロックで一定となるように、回路ブロック内でクロックバッファの挿入及び配置の処理と、遅延調整されたクロック配線長を有するクロック配線が生成される。
【００５１】
次に図４（ａ）〜図４（ｃ）を用いてステップＳ６の処理を具体的に説明すると、図４（ａ）は、回路ブロック３に配置されたフリップフロップ回路１３Ａ、１３Ｂ〜１３Ｅと、クロック入力端子６と、クロック入力端子６とフリップフロップ回路１３Ａ〜１３Ｅとを接続する仮想配線１２Ａ〜１２Ｅとを示すレイアウト図である。
【００５２】
また図４（ｂ）は、図１のステップＳ４で生成された下位メッシュクロック配線９’、１０’と、ステップＳ５でクロック入力端子６として設定した仮想メッシュクロック端子１１Ａを示したレイアウト図である。
【００５３】
そして図４（ｃ）は、ステップＳ６でクロック入力端子６から回路ブロック３を構成するフリップフロップ回路１３Ａ〜１３Ｅまでの各遅延値が等しくなるように挿入及び配置されたクロックバッファ１４Ａ，１４Ｂ，１４Ｃと、クロックバッファ１４Ａとフリップフロップ回路１３Ｄ，１３Ｅとを接続するクロック配線１５Ａと、クロックバッファ１４Ｂとフリップフロップ回路１３Ａ、１３Ｂとを接続するクロック配線１５Ｂとを示すレイアウト図である。
【００５４】
いうまでもなく、クロックバッファ１４Ａ〜１４Ｃと、クロック配線１５Ａ、１５Ｂは、クロック入力端子６からフリップフロップ回路１３Ａ〜１３Ｅまでの各遅延値が等しくなるように挿入及び配置されるが、同時に、図２に示す外部クロック入力端子１から各回路ブロック３〜５を構成するフリップフロップ回路までのクロックスキューが最小になるように、回路ブロック内でクロック分配処理、すなわち回路ブロック３においてはクロックバッファ１４Ａ〜１４Ｃの挿入及び配置と、遅延調整されたクロック配線長を有するクロック配線１５Ａ，１５Ｂとが生成される。
【００５５】
なお上記において、階層は図２（ａ）に示すように半導体チップレベルと回路ブロック３〜５の２階層の場合について説明したが、回路ブロック３〜５が下位の回路ブロック３１〜３ｍ（ｍは２以上の整数）、５１〜５ｎ（ｎは２以上の整数）の場合についても本発明は同様に適用できる。すなわち、回路ブロック３〜５に図１のステップＳ２の処理を適用してメッシュクロック配線を生成し、回路ブロック３１〜３ｍ、５１〜５ｎに対してステップＳ３以降の処理を行う。
【００５６】
階層がさらに多くなった場合についても同様の方法で、階層化された上位メッシュクロック配線と、この上位メッシュクロック配線と接続する階層化された下位メッシュクロック配線を生成し、本発明を適用することができる。
【００５７】
また上位メッシュクロック配線と下位メッシュクロック信号配線とは、同一配線層であるとして説明したが、同一層でなくても構わない。この場合、上位メッシュクロック配線と下位メッシュクロック配線とを接続するためのスルーホールを設けて、クロック信号が上位メッシュクロック配線から下位メッシュクロック配線に伝搬するように構成する。
【００５８】
【発明の効果】
以上説明したように本発明による半導体集積回路のクロック配線方法及び半導体集積回路は、レイアウトの階層構造を保ったままで、メッシュクロック配線をレイアウトの階層構造に対応して生成する。そして、生成したメッシュクロック配線を用いて外部クロック端子から下位のメッシュクロック配線にクロック信号が伝送され、最終的には最下位の回路ブロックにおいて、外部クロック入力端子から全ての回路ブロックを構成するフリップフロップ回路までのクロックスキューが最小になるようにクロック分配処理が行われ、回路ブロックを構成するフリップフロップ回路に対してクロック信号が供給される。
【００５９】
従ってクロック信号は、低抵抗のメッシュクロック配線を介して末端のフリップフロップ回路に伝搬するので、製造工程によるクロックスキューの変動を小さくすることができる。
【００６０】
また本発明による半導体集積回路のクロック配線方法は、レイアウトの階層構造を保ちながら処理を行うので、レイアウト階層を展開して処理する従来の方法に比して、大幅に計算機の処理量を低減することができ設計期間を短縮することができる。
【００６１】
さらに必要とするクロックスキューを統一された設計方法で実現できるので、クロックスキューを満足するために設計を何回もやり直すことが無く、設計期間を短縮することができるという効果がある。
【図面の簡単な説明】
【図１】本発明の半導体集積回路のクロック配線方法の実施の形態を示すフローチャートである。
【図２】図２（ａ）は、本発明の半導体集積回路のクロック配線方法およびこれを用いた本発明による半導体集積回路を具体的に説明するための回路接続情報の一部であり、図２（ｂ）は、図１のステップＳ１で配置された回路ブロックと、ステップＳ２で生成された上位メッシュクロック配線と、ルートクロックバッファとクロック入力端子とを接続する仮想配線とを示すレイアウト図である。
【図３】本発明の半導体集積回路のクロック配線方法を具体的に説明するためのレイアウト図である。
【図４】本発明の半導体集積回路のクロック配線方法を具体的に説明するためのレイアウト図である。
【図５】特開２００１−１２５９３７号公報記載のクロック配線方法を説明するための半導体チップのレイアウト図である。
【図６】特開平３−２３２２６７号公報記載のクロック配線方法を説明するための半導体チップのレイアウト図である。
【符号の説明】
１    外部クロック入力端子
１’，５９    ルートクロックバッファ
２    クロック信号線
２’，１２Ａ〜１２Ｅ    仮想配線
３〜５，５４〜５６    回路ブロック
６〜８    クロック入力端子
９、１０    上位メッシュクロック配線
９’，１０’    下位メッシュクロック配線
１１，１１Ａ    仮想メッシュクロック端子
１３Ａ〜１３Ｅ，５７，６４    フリップフロップ回路
１４Ａ，１４Ｂ，１４Ｃ，５４’〜５６’，５１０，５５１，５５２，５６１，５６２，５６１１〜５６１４，６３    クロックバッファ
１５Ａ，１５Ｂ，５８，５１１    クロック配線
５１、６１，１０１    半導体チップ
５２，１０２  入出力バッファ
５３    内部領域
６２    メッシュクロック配線
１００    回路接続情報
【図１】
0003920124.tif 000002
【図２】
0003920124.tif 000003
【図３】
0003920124.tif 000004
【図４】
0003920124.tif 000005
【図５】
0003920124.tif 000006
【図６】
0003920124.tif 000007