(57)【要約】    【課題】      多大な労力を必要とせず、温度変化や電圧変化に左右されずにクロックスキューを低減することができるクロック分配回路を備えた半導体集積回路及びその製造方法を提供する。    【解決手段】  半導体集積回路に搭載されたクロック分配回路１において、バッファ段数が多い第１の回路ブロック１０の第１のセレクタ１１から第１のバッファ段１０Ａを通過する一部のクロック信号の分配経路を利用し、バッファ段数の少ない第２の回路ブロック２０の第２のバッファ段２０Ａへのクロック信号の分配経路を構築する。  【選択図】      図１
2005184262.tif 000002
【特許請求の範囲】
【請求項１】
バッファツリー構造により第１のバッファ段を複数段配列し、第１のセレクタから出力されるクロック信号を前記複数段の第１のバッファ段に分配する第１の回路ブロックと、
前記第１の回路ブロックに比べて少ない段数の第２のバッファ段をバッファツリー構造により配列し、前記第１のセレクタから出力されるクロック信号を前記第１のバッファ段及び第２のセレクタを通して第２のバッファ段に分配する第２の回路ブロックと、
を有するクロック分配回路を備えたことを特徴とする半導体集積回路。
【請求項２】
前記第１のセレクタから前記第１のバッファ段及び第２のセレクタを通して第２の回路ブロックの第２のバッファ段に至るクロック信号の遅延値と、この第２のバッファ段と同一の階層において、前記第１のセレクタから第１の回路ブロックの第１のバッファ段に至るクロック信号の遅延値とが同等であることを特徴とする請求項１記載のクロック分配回路を備えた半導体集積回路。
【請求項３】
バッファツリー構造により第１のバッファ段を複数段配列し、第１のセレクタから出力されるクロック信号を前記複数段の第１のバッファ段に分配する第１の回路ブロックを配置する工程と、
前記第１の回路ブロックに比べて少ない段数の第２のバッファ段をバッファツリー構造により配列し、第２のセレクタから出力されるクロック信号を第２のバッファ段に分配する第２の回路ブロックを配置する工程と、
前記第１のセレクタから前記第１のバッファ段を通して前記第２のセレクタにクロック信号を供給する結線を配置する工程と、
を有することを特徴とするクロック分配回路を備えた半導体集積回路の製造方法。
【請求項４】
前記結線を配置する工程は、
前記第２のセレクタから第２の回路ブロックの第２のバッファ段に至るクロック信号の遅延値と、この第２のバッファ段と同一の階層において、前記第１のセレクタから前記第１の回路ブロックの第１のバッファ段に至るクロック信号の遅延値との差を算出する工程と、
前記遅延値の差を同等にする結線を、前記第１の回路ブロックの第１のバッファ段の出力と第２のセレクタの入力との間に配置する工程と、
を有することを特徴とする請求項３記載のクロック分配回路を備えた半導体集積回路の製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路及びその製造方法に関し、特にクロック分配回路を有する半導体集積回路及びその製造方法に関する。
【背景技術】
【０００２】
従来、特定用途向け半導体集積回路（ASIC：application specific integrated circuit）の開発製造段階においては、コンピュータ支援設計（CAD：computer aided design）システムを使用してクロックスキュー（clock skew）が解析され、この解析結果に基づきクロックスキューが低減されている（例えば、特許文献１）。クロックスキューの解析には、クロック信号の供給源から実際にクロック信号が使用されるフリップフロップ（バッファ）までの系統をツリー状に配列したバッファツリー構造を有するクロック分配回路が使用されている。
【０００３】
図４にクロックスキューの解析に使用される代表的なクロック分配回路の構成を示す。クロック分配回路は、合計３個の回路ブロック１００、２００及び３００を備えている。
【０００４】
回路ブロック１００は、最も多いバッファ段数（インスタンス数）を有するバッファツリーであり、半導体集積回路の全域に分布する。供給源からのクロック信号はモード切換用セレクタ１０１に入力され、このモード切換用セレクタ１０１は、モード１の時にクロック信号Ａ１を、モード２の時に各回路ブロック１００、２００及び３００に共通のクロック信号Ｂをバッファツリーの各バッファ段に分配する。
【０００５】
回路ブロック２００は、次に多くのバッファ段数を有するバッファツリーであり、半導体集積回路の一部の領域に分布する。供給源からのクロック信号はモード切換用セレクタ２０１に入力され、このモード切換用セレクタ２０１は、モード１の時にクロック信号Ａ２を、モード２の時に共通のクロック信号Ｂをバッファツリーの各バッファ段に分配する。
【０００６】
回路ブロック３００は、ここでの例ではバッファが存在しないが、半導体集積回路のやはり一部の領域に分布する。供給源からのクロック信号はモード切換用セレクタ３０１に入力され、モード切換用セレクタ３０１は、モード１の時にクロック信号Ａ３を、モード２の時に共通のクロック信号Ｂを、直接、出力端子３０２に出力する。
【０００７】
ここで、モード２の場合、共通のクロック信号Ｂが回路ブロック１００、２００及び３００に供給される。回路ブロック１００においては、バッファ段数が多く、モード切換用セレクタ１０１からクロック信号が分配されるまでのバッファ段数は深く、各バッファのファンアウト分岐数は多いので、モード切換用セレクタ１０１からクロック信号が実際に使用されるバッファ（バッファ段）までの遅延値が大きい。
【０００８】
一方、回路ブロック２００においては、バッファ段数が少なく、バッファ段数は浅く、各バッファのファンアウト分岐数は少ないので、モード切換用セレクタ２０１からクロック信号が実際に使用されるバッファ（バッファ段）までの遅延値が小さい。回路ブロック３００においては、バッファが存在しないので、モード切換用セレクタ３０１から外部端子３０２に抜けるまでの遅延値が小さい。
【０００９】
そこで、クロック分配回路においては、供給源から各モード切換用セレクタまでのクロック信号の供給経路に遅延調整用バッファを挿入し、各回路ブロックのモード切換用セレクタ以後のクロック信号の遅延値の差を減少することによって、クロックスキューの調節が行われている。具体的には、回路ブロック１００の最も大きな遅延値を基準として、供給源とモード切換用セレクタ２０１との間に遅延調整用バッファ２１０〜２１２が挿入され、供給源とモード切換用セレクタ３０１との間に遅延調整用バッファ３１０〜３１４が挿入されている。
【００１０】
遅延調整用バッファ２１０〜２１２、３１０〜３１４において、ファンアウト分岐数は「１」であり、負荷容量は小さい。これに対して、遅延調整用バッファの挿入数を決定する回路ブロック１００においては、各バッファのファンアウト分岐数が多く、負荷容量は大きい。回路ブロック１００と同等の遅延値を得るには、回路ブロック２００においてはそのバッファ数よりも多くの遅延調整用バッファ２１０〜２１２を挿入する必要があり、又回路ブロック３００においてはそのバッファ数よりも多くの遅延調整用バッファ３１０〜３１４を挿入する必要がある。このため、供給源から回路ブロック１００の最終のバッファ段数に対して、供給源から回路ブロック２００の最終のバッファ段数に差が生じる。同様に、供給源から回路ブロック３００の最終のバッファ段数にも差が生じる。
【００１１】
バッファ段数の差は、温度変化や電圧変化が生じると、クロックスキューに変化を与える。一般的に、高温度、低電圧の場合、クロック信号経路の配線遅延が大きくなり、バッファ通過時の遅延（セル遅延）が小さくなる。一方、低温度、高電圧の場合、配線遅延が小さくなり、バッファ通過時の遅延が大きくなる。すなわち、通常温度、通常電圧の環境下において、遅延調整用バッファ２１０〜２１２及び３１０〜３１４を挿入し、回路ブロック１００、２００及び３００の遅延値を統一しても、温度変化や電圧変化により、バッファ段数差に起因するクロックスキューが発生してしまう。
【特許文献１】特開平９−２６９８４７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
前述の特許文献１には、クロック信号のすべての供給系統の回路ブロックにおいてバッファ数やバッファ段数を統一し、温度変化や電圧変化が生じても、異なる回路ブロックの同一階層のバッファ段間相互においてクロックスキューが生じないクロック分配回路が提案されている。しかしながら、半導体集積回路の開発製造段階で使用されるコンピュータ支援設計システムにおいて、具体的な実現方法は確率されていない。実際には、バッファ数やバッファ段数を統一するために、遅延調整用バッファの挿入で遅延値を調整していた部分の配線遅延を算出し、この算出結果に基づき配線の引き回しを行い、バッファ段数の統一に見合う遅延値の調節をしなければならなかった。このため、温度変化や電圧変化に左右されずにクロックスキューを低減するには、配線遅延の算出、配線引き回し等、多大な労力を必要としつつ、温度変化や電圧変化に配線遅延が左右される配線引き回しで対処する依存度が高いので、クロックスキューを充分に低減することができないという問題があった。
【００１３】
本発明は、かかる点に鑑みてなされたものであり、多大な労力を必要とせず、温度変化や電圧変化に左右されずにクロックスキューを低減することができる半導体集積回路及びその製造方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の半導体集積回路は、バッファツリー構造により第１のバッファ段を複数段配列し、第１のセレクタから出力されるクロック信号を前記複数段の第１のバッファ段に分配する第１の回路ブロックと、前記第１の回路ブロックに比べて少ない段数の第２のバッファ段をバッファツリー構造により配列し、前記第１のセレクタから出力されるクロック信号を前記第１のバッファ段及び第２のセレクタを通して第２のバッファ段に分配する第２の回路ブロックとを有するクロック分配回路を備えた構成を採る。
【００１５】
この構成によれば、第１の回路ブロックにおいて第１のセレクタから第１のバッファ段に分配されるクロック信号の一部の分配経路を利用し、第１のセレクタから第１のバッファ段、第２のセレクタを通して第２の回路ブロックの同一階層の第２のバッファ段にクロック信号を分配することができる。すなわち、第１の回路ブロックのクロック信号の分配経路において温度変化や電圧変化によりクロックスキューが変化した場合には、第２の回路ブロックのクロック信号の分配経路においてクロックスキューは同様に変化する。更に、第１の回路ブロックの第１のバッファ段毎の遅延値、第２の回路ブロックの第２のバッファ段毎の遅延値は同等になるので、第１のセレクタと第２のセレクタとの間に介在させる第１のバッファ段の段数を簡易に算出することができる。
【００１６】
本発明の半導体集積回路は、前記第１のセレクタから前記第１のバッファ段及び第２のセレクタを通して第２の回路ブロックの第２のバッファ段に至るクロック信号の遅延値と、この第２のバッファ段と同一の階層において、前記第１のセレクタから第１の回路ブロックの第１のバッファ段に至るクロック信号の遅延値とが同等であるクロック分配回路を備えた構成を採る。
【００１７】
本発明の半導体集積回路の製造方法は、バッファツリー構造により第１のバッファ段を複数段配列し、第１のセレクタから出力されるクロック信号を前記複数段の第１のバッファ段に分配する第１の回路ブロックを配置する工程と、前記第１の回路ブロックに比べて少ない段数の第２のバッファ段をバッファツリー構造により配列し、第２のセレクタから出力されるクロック信号を第２のバッファ段に分配する第２の回路ブロックを配置する工程と、前記第１のセレクタから前記第１のバッファ段を通して前記第２のセレクタにクロック信号を供給する結線を配置する工程とを備えてクロック分配回路を製造する構成を採る。
【００１８】
この半導体集積回路の製造方法によれば、第１の回路ブロックと第２の回路ブロックとを配置した後に、第１のセレクタから第１のバッファ段を通して第２のセレクタにクロック信号を供給する結線を配置するだけで、同一の階層の第１のバッファ段と第２のバッファ段とにおいて、クロック信号の遅延値を同等にすることができる。
【００１９】
本発明の半導体集積回路の製造方法は、前記結線を配置する工程は、前記第２のセレクタから第２の回路ブロックの第２のバッファ段に至るクロック信号の遅延値と、この第２のバッファ段と同一の階層において、前記第１のセレクタから前記第１の回路ブロックの第１のバッファ段に至るクロック信号の遅延値との差を算出する工程と、前記遅延値の差を同等にする結線を、前記第１の回路ブロックの第１のバッファ段の出力と第２のセレクタの入力との間に配置する工程とを備えたクロック分配回路を製造した構成を採る。
【発明の効果】
【００２０】
以上説明したように、本発明によれば、多大な労力を必要とせず、温度変化や電圧変化に左右されずにクロックスキューを低減することができるクロック分配回路を備えた半導体集積回路及びその製造方法を提供することができる。
【発明を実施するための最良の形態】
【００２１】
本発明の骨子は、クロック分配回路において、バッファ段数が多い回路ブロックのセレクタからバッファ段を通過する一部のクロック信号の分配経路を利用し、バッファ段数が少ない回路ブロックのバッファ段へのクロック信号の分配経路を構築したことである。
【００２２】
以下、本発明の一実施の形態について図面を参照して詳細に説明する。
【００２３】
図１に示すように、本実施の形態に係る半導体集積回路に搭載されるクロック分配回路１は、バッファツリー構造により複数段の第１のバッファ段１０Ａ、１０Ｂ及び１０Ｃを配列し、第１のセレクタ１１から出力されるクロック信号を複数段の第１のバッファ段１０Ａ〜１０Ｃに分配する第１の回路ブロック１０と、第１の回路ブロック１０に比べて少ない段数の第２のバッファ段２０Ａをバッファツリー構造により配列し、第１のセレクタ１１から出力されるクロック信号を第１のバッファ段１０Ａ及び第２のセレクタ２１を通して第２のバッファ段２０Ａに分配する第２の回路ブロック２０とを備えている。更に、クロック分配回路１は、第３のセレクタ３１から、直接、端子３２にクロック信号を出力する第３の回路ブロック３０を備えている。ここで、端子３２は、半導体集積回路の外部端子（ボンディングパッド）、半導体集積回路に搭載される論理ブロックやメモリブロックの端子等に該当する。
【００２４】
第１の回路ブロック１０の第１のセレクタ１１はモード切換用セレクタである。この第１のセレクタ１１は、モード１においてクロック信号Ａ１を入力し、モード２においてクロック信号Ｂを入力し、いずれかのクロック信号Ａ１かＢかを第１のバッファ段１０Ａ〜１０Ｃに分配する。モード１とは、第１の回路ブロック１０にクロック信号Ａ１が、第２の回路ブロック２０にクロック信号Ａ２が、第３の回路ブロック３０にクロック信号Ａ３がそれぞれ個別に入力されるモードである。モード２とは、第１の回路ブロック１０、第２の回路ブロック２０及び第３の回路ブロック３０にすべてのクロック系統を統一する共通のクロック信号Ｂが入力されるモードである。
【００２５】
第１のバッファ段１０Ａ〜１０Ｃは、半導体集積回路の論理ブロック等を構築するための回路セルであり、ここでは各バッファ段は並列接続されたフリップフロップにより構成されている。
【００２６】
第２の回路ブロック２０の第２のセレクタ２１は、同様に、モード切換用セレクタである。第２のセレクタ２１は、モード１においてクロック信号Ａ２を入力し、モード２においてクロック信号Ｂ（２）を入力し、いずれかのクロック信号Ａ２かＢ（２）かを第２のバッファ段２０Ａに分配する。
【００２７】
第２のバッファ段２０Ａは、第１のバッファ段１０Ａ〜１０Ｃのそれぞれと同様に、並列接続されたフリップフロップにより構成されている。ここでは、第１の回路ブロック１０は３段の第１のバッファ段１０Ａ〜１０Ｃにより構成されているのに対して、第２の回路ブロック２０は、第１の回路ブロック１０のバッファ段数に比べて少ない段数の１段の第２のバッファ段２０Ａにより構成されている。
【００２８】
第２のセレクタ２１の入力の一方（クロック信号Ｂ（２）の入力）は、第１の回路ブロック１０の初段の第１のバッファ段１０Ａの出力に、表現を換えれば、次段の第１のバッファ段１０Ｂの入力に、結線２を通して電気的に接続されている。モード２の時、クロック信号Ｂは第２のセレクタ２１に直接入力されるのではなく、第１のセレクタ１１に入力され出力されたクロック信号Ｂが第１のバッファ段１０Ａ及び結線２を通してクロック信号Ｂ（２）として第２のセレクタ２１に入力される。つまり、クロック信号Ｂ（２）は、第１のセレクタ１１から見た場合、第１のセレクタ１１から第１のバッファ段１０Ａ、結線２、第２のセレクタ２１を通して第２の回路ブロック２０の第２のバッファ段２０Ａに至るまでの遅延値と、第１のセレクタ１１から第１のバッファ段１０Ａ、１０Ｂを通して、第２のバッファ段２０Ａと同一の階層に存在する第１のバッファ段１０Ｃまでに至る遅延値とが同等になるように、第１のセレクタ１１から第１のバッファ段１０Ａを通過するクロック信号Ｂの分配経路の一部を利用して生成されている。
【００２９】
第１のバッファ段１０Ａ〜１０Ｃ、第２のバッファ段２０Ａはいずれもファンアウト分岐数、寄生容量、寄生抵抗等の条件が同等に設定されているので、バッファ段を一段越える毎にクロック信号に付加される遅延値は同等である。
【００３０】
第３の回路ブロック３０の第３のセレクタ３１は、同様に、モード切換用セレクタである。第３のセレクタ３１は、モード１においてクロック信号Ａ３を入力し、モード２においてクロック信号Ｂ（３）を入力し、いずれかのクロック信号Ａ３かＢ（３）かを直接、端子３２に分配する。第３の回路ブロック３０はバッファ段を備えていない。
【００３１】
第３のセレクタ３１の入力の一方（クロック信号Ｂ（３）の入力）は、第１の回路ブロック１０の次段の第１のバッファ段１０Ｂの出力に、表現を換えれば、最終段の第１のバッファ段１０Ｃの入力に、結線３を通して電気的に接続されている。モード２の時、クロック信号Ｂは第２のセレクタ２１と同様に第３のセレクタ３１に直接入力されるのではなく、第１のセレクタ１１に入力され出力されたクロック信号Ｂが第１のバッファ段１０Ａ、１０Ｂ及び結線３を通してクロック信号Ｂ（３）として第３のセレクタ３１に入力される。つまり、クロック信号Ｂ（３）は、第１のセレクタ１１から見た場合、第１のセレクタ１１から第１のバッファ段１０Ａ、１０Ｂ、結線３、第３のセレクタ３１を通して第３の回路ブロック３０から出力される端子３２に至るまでの遅延値と、第１のセレクタ１１から第１のバッファ段１０Ａ、１０Ｂ及び１０Ｃを通して端子３２に至るまでのクロック信号Ｂの遅延値とが同等になるように、第１のセレクタ１１から第１のバッファ段１０Ａ及び１０Ｂを通過するクロック信号Ｂの分配経路の一部を利用して生成されている。
【００３２】
図２に、モード１における、第１の回路ブロック１０、第２の回路ブロック２０、第３の回路ブロック３０の各バッファ段の半導体集積回路４上での分布状態を示す。第１の回路ブロック１０の第１のバッファ段１０Ａ〜１０Ｃは、半導体集積回路４上において、最も配置個数が多く、バッファ段数が深く、しかも広範囲に分布している。第２の回路ブロック２０の第２のバッファ２０Ａ、第３の回路ブロック３０は、いずれも半導体集積回路４上において、少ない配置個数であり、バッファ段数が浅く、しかも狭範囲に分布している。
【００３３】
次に、上記クロック分配回路１を備えた半導体集積回路の製造方法を、図３を用いて説明する。
【００３４】
まず最初に、コンピュータ支援設計システムを使用し、ステップＳ１に示すように、第１のセレクタ１１及び複数段数の第１のバッファ段１０Ａ〜１０Ｃを有する第１の回路ブロック１０、第２のセレクタ２１及び第２のバッファ段２０Ａを有する第２の回路ブロック２０、第３のセレクタ３１を有する第３の回路ブロック３０を備えたクロック分配回路１を、半導体集積回路を構築する基板（図示しない）上に配置する（Ｓ１）。なお、ここでの処理はコンピュータ支援設計システム上での処理であり、基板上に回路ブロックを配置する処理は、基板上に相当するメモリ空間に回路ブロックに相当する部品データを配置する処理である。
【００３５】
ステップＳ２に示すように、共通のクロック信号Ｂが第１のセレクタ１１、第２のセレクタ２１、第３のセレクタ３１のそれぞれに入力されるモード２において、クロック信号Ｂの供給源からクロック信号Ｂが実際に分配されるバッファ段までに至る遅延値（Ｔｂ）を算出する。
【００３６】
ステップＳ３に示すように、クロック信号Ａ１が第１のセレクタ１１に、クロック信号Ａ２が第２のセレクタ２１に、クロック信号Ａ３が第３のセレクタ３１にそれぞれ入力されるモード１において、バッファ段数が少なく、半導体集積回路４の狭範囲に分布している第２の回路ブロック２０、第３の回路ブロック３０を選択する（系統Ｋ＝Ａｍ（ｍ＝２，３，…）。
【００３７】
ステップＳ４に示すように、第１の回路ブロック１０において第１のセレクタ１１以降の第１のバッファ段１０Ａ〜１０Ｃの段数、第２の回路ブロック２０において第２のセレクタ２１以降の第２のバッファ段２０Ａの段数、第３の回路ブロック３０において第３のセレクタ３１以降のバッファ段の段数を算出する（段数＝Ｎ）。引き続き、ステップＳ５に示すように、第１の回路ブロック１０において第１のセレクタ１１以降の遅延値、第２の回路ブロック２０において第２のセレクタ２１以降の遅延値、第３の回路ブロック３０において第３のセレクタ３１以降の遅延値を算出する（遅延値＝Ｔｓ）。
【００３８】
ステップＳ６に示すように、モード１において、バッファ段数が最も多く、半導体集積回路４の広範囲に分布している第１の回路ブロック１０の第１のバッファ段１０Ａ〜１０Ｃの段数をＮとした場合、最終段からＮ＋１段目の第１のバッファ段の遅延値を算出する（遅延値Ｔｐ（ｐ＝１，２，３，…））。
【００３９】
ステップＳ７に示すように、第１の回路ブロック１０の最終段からＮ＋１段目の第１のバッファ段の出力を第２の回路ブロック２０の第２のセレクタ２１の入力に接続した場合の配線遅延（Ｔｗｐ（ｐ＝１，２，３，…））、第１の回路ブロック１０の最終段からＮ＋１段目の第１のバッファ段の出力を第３の回路ブロック３０の第３のセレクタ３１の入力に接続した場合の配線遅延を算出する。
【００４０】
ステップＳ８に示すように、予め算出された遅延値Ｔｓ、Ｔｐ、配線遅延Ｔｗｐを加算し、第１のバッファ段の出力を第２のセレクタ２１の入力に、第１のバッファ段の出力を第３のセレクタ３１の入力にそれぞれ繋ぎ換えた場合の、モード２における遅延値Ｔａｐ（ｐ＝１，２，３，…）を算出する。
【００４１】
ステップＳ９に示すように、算出された遅延値Ｔａｐとモード２における第１の回路ブロック１０の遅延値Ｔｂとの差Ｔａｐ−Ｔｂが最小となる、第１の回路ブロック１０の第１のバッファ段（Ｐ）の抽出を行う。引き続き、ステップＳ１０に示すように、抽出された第１のバッファ段（Ｐ）に対して、第２のセレクタ２１、第３のセレクタ３１の配置位置の移動を行う。この配置位置の移動は、第１の回路ブロック１０の第１のバッファ段１０Ａの出力に第２のセレクタ２１の入力を適宜近接させ、又第１の回路ブロック１０の第１のバッファ段１０Ｂの出力に第３のセレクタ３１の入力を適宜近接させ、結線２、３の結線長を短くして配線遅延の影響を減少することができる。
【００４２】
ステップＳ１１に示すように、第２のセレクタ２１、第３のセレクタ３１の配置位置の移動後に、第２のセレクタ２１の前後、第３のセレクタ３１の前後の配線遅延Ｔｗを算出する。
【００４３】
ステップＳ１２に示すように、第２のセレクタ２１、第３のセレクタ３１の配置位置の移動後に、モード２における、第２の回路ブロック２０、第３の回路ブロック３０の遅延値と第１の回路ブロック１０の遅延値との差（Ｔｓ＋Ｔｐ＋Ｔｗ−Ｔｂ）が最小となる、第２のセレクタ２１、第３のセレクタ３１の位置を確定する。
【００４４】
そして、ステップＳ１３に示すように、ステップＳ９において抽出された第１のバッファ段（Ｐ＝１０Ａ）の出力と第２のセレクタ２１とを接続する結線２、第１のバッファ段（Ｐ＝１０Ｂ）の出力と第３のセレクタ３１とを接続する結線３のそれぞれを配置する。
【００４５】
この後、ステップＳ１４に示すように、これらのコンピュータ支援設計システムにより作成されたデータに基づき、実際の半導体集積回路の製造プロセスにおいて使用される製造用マスクを作成する。
【００４６】
この製造用マスクを使用し、ステップＳ１５に示すように、実際に製造プロセスを実施することにより、ステップＳ１３で設計された結線２、３が配置されたクロック分配回路１を備えた半導体集積回路を製造し、完成させることができる。
【００４７】
このように、本実施の形態によれば、クロック分配回路１の第１の回路ブロック１０において第１のセレクタ１１から第１のバッファ段１０Ａ〜１０Ｃに分配されるクロック信号の一部の分配経路を利用し、第１のセレクタ１１から第１のバッファ段１０Ａ、第２のセレクタ２１を通して第２の回路ブロック２０の同一の階層の第２のバッファ段２０Ａにクロック信号を分配することができる。すなわち、第１の回路ブロック１０のクロック信号の分配経路において温度変化や電圧変化によりクロックスキューが変化した場合には、第２の回路ブロック２０のクロック信号の分配経路においてクロックスキューは同様に変化する。更に、第１の回路ブロック１０の第１のバッファ段１０Ａ〜１０Ｃ毎の遅延値、第２の回路ブロック２０の第２のバッファ段２０Ａ毎の遅延値は同等になるので、第１のセレクタ１１と第２のセレクタ２１との間に介在させる第１のバッファ段１０Ａ〜１０Ｃの段数を簡易に算出することができる。
【産業上の利用可能性】
【００４８】
本発明に係るクロック分配回路を備えた半導体集積回路及びその製造方法は、多大な労力を必要とせず、温度変化や電圧変化に左右されずにクロックスキューを低減することができるという効果を有し、特に同様な効果が要求される、配線基板上に複数個の半導体集積回路を実装しシステム化された半導体集積回路及びその製造方法に有効である。
【図面の簡単な説明】
【００４９】
【図１】本発明の一実施の形態に係るクロック分配回路を備えた半導体集積回路の回路構成図
【図２】図１に示すクロック分配回路のバッファ段の分布状態を示す図
【図３】図１に示すクロック分配回路を備えた半導体集積回路の製造方法を説明するフローチャート
【図４】従来のクロック分配回路の回路構成図
【符号の説明】
【００５０】
１  クロック分配回路
２、３  結線
４  半導体集積回路
１０  第１の回路ブロック
１０Ａ〜１０Ｃ  第１のバッファ段
１１  第１のセレクタ
２０  第２の回路ブロック
２０Ａ  第２のバッファ段
２１  第２のセレクタ
３０  第３の回路ブロック
３１  第３のセレクタ
３２  端子
【図１】
2005184262.tif 000003
【図２】
2005184262.tif 000004
【図３】
2005184262.tif 000005
【図４】
2005184262.tif 000006