(57)【特許請求の範囲】
【請求項１】
基準信号から遅延時間ｉ×Ｔ（Ｔは一定時間）だけ遅れたｎ（ｎは８以上の整数）個のクロック信号ＣＫｉ（ｉは１〜ｎの整数）を出力する第１の回路と、この第１の回路からｎ本の信号配線を介して入力される前記ｎ個のクロック信号を用いて信号処理を行う第２の回路と、を有する半導体集積回路において、
前記ｎ本の信号配線のうち少なくとも一部については、隣接する２本の前記信号配線で伝送される２つの前記クロック信号のエッジ位置を時間軸上で見たとき、これら２つのクロック信号の立ち上がり同士、立ち下がり同士のエッジ位置がＴより大の時間だけ離れていることを特徴とする半導体集積回路。
【請求項２】
請求項１記載の半導体集積回路において、前記第１の回路と前記第２の回路との間に設けられた、前記ｎ個のクロック信号に対応したｎ個のバッファーを備えたバッファー挿入回路をさらに有し、前記信号配線は、前記第１の回路から前記ｎ個のバッファーに前記ｎ個のクロック信号を伝送するｎ本の入力配線と、前記ｎ個のバッファーから前記第２の回路に前記ｎ個のクロック信号を伝送するｎ本の出力配線とからなり、前記ｎ個のバッファーの少なくとも一部は、隣接する２本の前記入力配線又は前記出力配線で伝送される２つの前記クロック信号のエッジ位置を時間軸上で見たとき、これら２つのクロック信号の立ち上がり同士、立ち下がり同士のエッジ位置がＴより大の時間だけ離れるように配置されることを特徴とする半導体集積回路。
【請求項３】
請求項２記載の半導体集積回路において、前記ｎ個のバッファーは、一次元的に配置されることを特徴とする半導体集積回路。
【請求項４】
請求項２記載の半導体集積回路において、前記ｎ個のバッファーは、時計回り又は反時計周りに二次元的に配置されることを特徴とする半導体集積回路。
【請求項５】
請求項４記載の半導体集積回路において、前記ｎ本の入力配線は、前記ｎ個のバッファーを配置した領域の中央部の点まで配設され、この中央部の点から各バッファーまでの配線長が互いに等しくなるように、対応するバッファーの入力端子まで配設され、前記ｎ本の出力配線は、各バッファーの出力端子から前記中央部の点までの配線長が互いに等しくなるように前記中央部の点まで配設され、この中央部の点から前記第２の回路まで配設されることを特徴とする半導体集積回路。
【請求項６】
請求項４記載の半導体集積回路において、前記ｎ本の入力配線は、前記第１の回路からＸ方向の配線長が互いに等しくなるように配設されると共に、Ｙ方向の配線長が互いに等しくなるように、対応するバッファーの入力端子まで配設され、前記ｎ本の出力配線は、Ｙ方向の配線長が互いに等しくなるように各バッファーの出力端子から配設されると共に、前記第２の回路までＸ方向の配線長が互いに等しくなるように配設されることを特徴とする半導体集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータなどの高速化の妨げとなる配線間のクロストークノイズの除去技術に係り、特に回路間を結ぶ多数の配線を用いて同一方向にクロック信号を送る場合に受信側で発生していたクロストークノイズを容易に除去することができる半導体集積回路とその設計方法に関するものである。
【０００２】
【従来の技術】
近年のコンピュータ等において処理速度の高速化は著しく、パーソナルコンピュータでもマイクロプロセッサの動作速度は数百ＭＨｚとなり、ネットワーク市場では数ＧＨｚ帯の高速データ転送が余儀なくされている。これに伴いＩＣ内の各回路間を結ぶ配線（信号線）を流れる電気信号も高速となり、隣接した信号間のクロストークの影響が顕著になっている。
【０００３】
このようなクロストークは、配線間の距離が近いほど大きくなることから、高速回路の小型化や高密度化を阻害する要因となる。特に、扱うデータ幅が３２ビットや６４ビットと多くなってくると、多数の信号を同一方向に伝播する場合が多くなり、複数のノイズ源によるノイズの重畳によって、誤動作を引き起こす可能性が増える。
【０００４】
図１９は従来の半導体集積回路の内部構成を示す回路図である。図１９はディレイロックドループ（Delay Locked Loop 、以下、ＤＬＬと記す）回路１０１から出力された同一の遅延差を有する複数のクロック信号ＣＫ１〜ＣＫ８をバッファ挿入部１４０２を介してデータコンパレータ（Data comparator 、以下、ＤＣＭＰと記す）回路１０３へ供給する回路を示している。
【０００５】
ＤＬＬ回路１０１は、基準信号ＲＣＬＫから遅延時間ｉ×Ｔ（Ｔは一定時間）だけ遅れたｎ（ｎは２以上の整数、ここではｎ＝８）個のクロック信号ＣＫｉ（ｉは１〜ｎの整数）を生成する。バッファー挿入部１４０２内には、クロック信号ＣＫ１〜ＣＫ８に対応してバッファーＢ１〜Ｂ８が設けられている。このバッファーＢ１〜Ｂ８は、ＤＬＬ回路１０１とＤＣＭＰ回路１０３間を接続する配線の寄生容量や寄生抵抗によって各クロック信号ＣＫ１〜ＣＫ８が減衰することを防止するために設けられている。
【０００６】
ＤＬＬ回路１０１から出力されたクロック信号ＣＫ１〜ＣＫ８は、それぞれ入力配線ＮＩ１〜ＮＩ８を介してバッファーＢ１〜Ｂ８の入力端子に入力される。バッファーＢ１〜Ｂ８の出力端子から出力されたクロック信号ＣＫ１〜ＣＫ８は、それぞれ出力配線ＮＯ１〜ＮＯ８を介してＤＣＭＰ回路１０３の対応する入力端子に入力される。
【０００７】
図１９において、ＣＩ１，ＣＩ２，ＣＩ３，ＣＩ４，ＣＩ５，ＣＩ６，ＣＩ７は、それぞれ入力配線ＮＩ１とＮＩ２間、ＮＩ２とＮＩ３間、ＮＩ３とＮＩ４間、ＮＩ４とＮＩ５間、ＮＩ５とＮＩ６間、ＮＩ６とＮＩ７間、ＮＩ７とＮＩ８間に存在する寄生容量を示す。また、ＣＯ１，ＣＯ２，ＣＯ３，ＣＯ４，ＣＯ５，ＣＯ６，ＣＯ７は、それぞれ出力配線ＮＯ１とＮＯ２間、ＮＯ２とＮＯ３間、ＮＯ３とＮＯ４間、ＮＯ４とＮＯ５間、ＮＯ５とＮＯ６間、ＮＯ６とＮＯ７間、ＮＯ７とＮＯ８間に存在する寄生容量を示す。
【０００８】
図２０は、ＤＬＬ回路１０１から出力されるクロック信号ＣＫ１，ＣＫ２とバッファーＢ１，Ｂ２の入力端子に接続される入力配線ＮＩ１，ＮＩ２上の信号とを示す波形図である。図２０におけるＮＩ１は入力配線ＮＩ１上を流れるクロック信号ＣＫ１を示し、図２０におけるＮＩ２は入力配線ＮＩ２上を流れるクロック信号ＣＫ２を示している。
【０００９】
クロック信号ＣＫ１の立ち上がりのｔｒエッジは、入力配線ＮＩ１を通ってバッファーＢ１の入力端子へ伝播される。寄生容量ＣＩ１と図示しない配線抵抗により、クロック信号ＣＫ１のｔｒエッジは、ＤＬＬ回路１０１を出てから遅延時間τ１後にバッファーＢ１の入力端子に到達する。また、クロック信号ＣＫ２の立ち上がりのｔｒエッジは、入力配線ＮＩ２を通ってバッファーＢ２の入力端子へ伝播される。寄生容量ＣＩ１，ＣＩ２と図示しない配線抵抗により、クロック信号ＣＫ２のｔｒエッジは、ＤＬＬ回路１０１を出てから遅延時間τ２後にバッファーＢ２の入力端子に到達する。
【００１０】
このとき、バッファーＢ１の入力配線ＮＩ１とバッファーＢ２の入力配線ＮＩ２とが隣り合って平行に配設されているため、入力配線ＮＩ２上のクロック信号ＣＫ２に、クロック信号ＣＫ１のｔｒエッジに起因するクロストークノイズが寄生容量ＣＩ１を介して混入する。図２０からも分かるように入力配線ＮＩ２上を流れるクロック信号ＣＫ２のｔｒエッジは、時間軸上で見ると、入力配線ＮＩ１上を流れるクロック信号ＣＫ１のｔｒエッジの近傍にある。
【００１１】
したがって、クロストークノイズの影響により、入力配線ＮＩ２上を流れるクロック信号ＣＫ２のローレベルが図２０のように上下するため、入力配線ＮＩ２上のクロック信号ＣＫ２のｔｒエッジに微小時間Δｔｒ分のズレが発生する。このように、クロストークノイズは、入力配線ＮＩ２上を流れるクロック信号ＣＫ２のｔｒエッジに影響を及ぼす。
【００１２】
同様に、入力配線ＮＩ１上を流れるクロック信号ＣＫ１に、クロック信号ＣＫ２のｔｒエッジに起因するクロストークノイズが寄生容量ＣＩ１を介して混入する。このクロストークノイズは、入力配線ＮＩ１上を流れるクロック信号ＣＫ１のｔｒエッジに影響を及ぼし、このクロック信号ＣＫ１のｔｒエッジに微小時間のズレが発生する。
【００１３】
ここでは、立ち上がりのｔｒエッジについてのみ説明したが、立ち下がりのｔｆエッジに関しても同様であることは言うまでもない。例えば、入力配線ＮＩ２上のクロック信号ＣＫ２には、クロック信号ＣＫ１のｔｆエッジに起因するクロストークノイズが寄生容量ＣＩ１を介して混入する。このクロストークノイズは、入力配線ＮＩ２上を流れるクロック信号ＣＫ２のｔｆエッジに影響を及ぼし、このクロック信号ＣＫ２のｔｆエッジに微小時間Δｔｆ分のズレが発生する。
【００１４】
以上のように、図１９の半導体集積回路では、隣接する各クロック信号ＣＫ１〜ＣＫ８間のｔｒエッジ又はｔｆエッジに時間差がないので、隣接する各クロック信号ＣＫ１〜ＣＫ８間の干渉によって発生するクロストークノイズの影響により、各クロック信号ＣＫ１〜ＣＫ８のｔｒエッジ、ｔｆエッジにそれぞれ微小時間Δｔｒ，Δｔｆのズレが生じ、クロック信号ＣＫ１〜ＣＫ８間のスキュー（位相ズレ）と各クロック信号ＣＫ１〜ＣＫ８のジッタ（位相の揺らぎ）が増大するという問題があった。
【００１５】
クロストークノイズはほぼ距離に反比例して減少する。したがって、問題を解決するには、各信号線の間隔を広くとればよい。しかしながら、多数の信号線の間隔を広くとることは、配線面積を増加させ、結果としてＩＣ面積を増大させるため、実用的ではない。
【００１６】
次に、半導体集積回路の回路配置と配線を決定する設計方法を図１９の回路図と対応して詳細に説明する。図２１は、ＤＬＬ回路１０１とＤＣＭＰ回路１０３の配置位置の決定ステップ１６０２から始まり、バッファー挿入部１４０２の配置と配線を決定した後に、バッファー挿入部１４０２でのクロック信号ＣＫ１〜ＣＫ８間のスキューとこのクロック信号ＣＫ１〜ＣＫ８のジッタを確認し、ＤＬＬ回路１０１とバッファー挿入部１４０２とＤＣＭＰ回路１０３との間を接続した後に、ＤＬＬ回路１０１から出力されるクロック信号ＣＫ１〜ＣＫ８間のスキューとこのクロック信号ＣＫ１〜ＣＫ８のジッタを確認し、バッファー挿入部１４０２のバッファーＢ１〜Ｂ８に入力されるクロック信号ＣＫ１〜ＣＫ８間のスキューとこのクロック信号ＣＫ１〜ＣＫ８のジッタを確認し、さらにＤＣＭＰ回路１０３に入力されるクロック信号ＣＫ１〜ＣＫ８間のスキューとこのクロック信号ＣＫ１〜ＣＫ８のジッタを確認して、それぞれスキューとジッタが規格を満足しているか否かを確認する特性確認ステップ１６１０を行う、一連のフローを示した図である。
【００１７】
まず、設計者は、ＤＬＬ回路１０１及びＤＣＭＰ回路１０３のサイズと信号線の順番からＤＬＬ回路１０１及びＤＣＭＰ回路１０３の配置位置を決定する（図２１ステップ１６０２）。次に、設計者は、ステップ１６０２で決定したＤＬＬ回路１０１及びＤＣＭＰ回路１０３の配置位置を基に、単位面積当たりの配線の寄生容量を概算し、バッファー挿入部１４０２の一段当たりの駆動能力を求めて、バッファー挿入部１４０２の各バッファＢ１〜Ｂ８の必要段数を決定する（ステップ１６０３）。
【００１８】
続いて、設計者は、ステップ１６０３で導き出した必要段数からバッファー挿入部１４０２のサイズを決定し（ステップ１６０４）、決定したバッファー挿入部１４０２のサイズを基にバッファー挿入部１４０２内の各バッファーＢ１〜Ｂ８の配置と配線とを行う（ステップ１６０５）。
【００１９】
バッファー挿入部１４０２の配線終了後、設計者は、バッファー挿入部１４０２の配置と配線結果から寄生容量と寄生抵抗とを抽出した回路データを基に、バッファー挿入部１４０２の回路シュミレーションを実施する（ステップ１６０６）。そして、設計者は、ステップ１６０６の回路シュミレーションの結果から、バッファー挿入部１４０２において各クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足しているか否かの特性確認を行う（ステップ１６０７）。
【００２０】
ステップ１６０６の回路シュミレーション結果が規格を満足している場合、設計者は、ＤＬＬ回路１０１とバッファー挿入部１４０２間、及びバッファー挿入部１４０２とＤＣＭＰ回路１０３間を図１９のように配線する（ステップ１６０８）。配線終了後、設計者は、バッファー挿入部１４０２とＤＬＬ回路１０１及びＤＣＭＰ回路１０３間を配線した結果から寄生容量と寄生抵抗とを抽出した回路データを基に、図１９の回路全体のシュミレーションを実施する（ステップ１６０９）。
【００２１】
そして、設計者は、ステップ１６０９の回路シュミレーションの結果から、図１９の回路全体において各クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足しているか否かの特性確認を行う（ステップ１６１０）。ステップ１６１０の回路シュミレーション結果が規格を満足している場合、設計者は、アートワークデータ（以下、ＧＤＳデータと記す）を作成して（ステップ１６１１）、設計を終える。
【００２２】
ステップ１６１０において各クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足していない場合、設計者は、ＤＬＬ回路１０１とバッファー挿入部１４０２間、及びバッファー挿入部１４０２とＤＣＭＰ回路１０３間の配線変更によって規格を満足させることが可能かどうかを判定する（ステップ１６１３，１６１４）。可能と判断した場合、設計者は、ＤＬＬ回路１０１とバッファー挿入部１４０２間、及びバッファー挿入部１４０２とＤＣＭＰ回路１０３間の配線を変更して（ステップ１６１５）、ステップ１６０９に戻る。
【００２３】
ステップ１６１４において配線変更により規格を満足させることが不可能と判断した場合、またステップ１６０７において各クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足していない場合、設計者は、バッファー挿入部１４０２の配置及び配線の変更によって規格を満足させることが可能かどうかを判定する（ステップ１６１６，１６１７）。可能と判断した場合、設計者は、バッファー挿入部１４０２の配置と配線を変更して（ステップ１６１８）、ステップ１６０６に戻る。
【００２４】
ステップ１６１７において配置及び配線の変更により規格を満足させることが不可能と判断した場合、設計者は、バッファー挿入部１４０２のサイズ変更によって規格を満足させることが可能かどうかを判定する（ステップ１６１９，１６２０）。可能と判断した場合、設計者は、バッファー挿入部１４０２のサイズを変更して（ステップ１６２１）、ステップ１６０５に戻る。
【００２５】
ステップ１６２０においてサイズ変更により規格を満足させることが不可能と判断した場合、設計者は、バッファー挿入部１４０２の段数変更によって規格を満足させることが可能かどうかを判定する（ステップ１６２２，１６２３）。可能と判断した場合、設計者は、バッファー挿入部１４０２の段数を変更して（ステップ１６２４）、ステップ１６０４に戻る。ステップ１６２３において段数変更により規格を満足させることが不可能と判断した場合、設計者は、ＤＬＬ回路１０１及びＤＣＭＰ回路１０３の配置位置を変更して（ステップ１６２５）、ステップ１６０３に戻る。
【００２６】
このように、従来の半導体集積回路の設計では、バッファー挿入部１４０２の特性確認ステップ１６０７又は全体の回路の特性確認ステップ１６１０においてクロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足していない場合、ＤＬＬ回路１０１とバッファー挿入部１４０２間、及びバッファー挿入部１４０２とＤＣＭＰ回路１０３間の配線変更（ステップ１６１５）、バッファー挿入部１４０２の配置変更と配線変更（ステップ１６１８）、バッファー挿入部１４０２のサイズ変更（ステップ１６２１）、バッファー挿入部１４０２の段数変更（ステップ１６２４）、ＤＬＬ回路１０１及びＤＣＭＰ回路１０３の配置位置変更（ステップ１６２５）を行う必要があった。
【００２７】
【発明が解決しようとする課題】
以上のように、従来の半導体集積回路では、複数のクロック信号ＣＫ１〜ＣＫ８間のクロストークノイズにより、各クロック信号ＣＫ１〜ＣＫ８間のスキューと各クロック信号ＣＫ１〜ＣＫ８のジッタが増大するという問題点があった。一般にクロストークノイズの影響は、各クロック信号ＣＫ１〜ＣＫ８の配線間にシールド配線を施したり、各クロック信号ＣＫ１〜ＣＫ８間の配線を離すことによって小さくできるが、前者の手法ではシールドを挿入するので各クロック信号配線間に余分な配線と間隔が必要となり、後者でも同様に各クロック信号配線の間隔が広がるので、ＩＣの面積が増大すると言う欠点がある。
【００２８】
クロック信号ＣＫ１〜ＣＫ８間にシールド配線を設ける構造では、一般に電源と信号配線間の間隔を半導体集積回路の設計基準から信号配線間の間隔より多少大目に取る必要がある。このため、例えば図１９の例では、クロック信号ＣＫ１〜ＣＫ８間にシールド配線を設けると、配線面積が約２．５倍となり、各クロック信号ＣＫ１〜ＣＫ８に対する単位長当たりの配線容量も増加するので、各クロック信号ＣＫ１〜ＣＫ８の寄生容量と寄生抵抗による減衰を避けるためのバッファーＢ１〜Ｂ８の挿入段数が増え、半導体集積回路全体の面積は約３倍近くになり、製造工程で発生する各バッファーＢ１〜Ｂ８間の製造バラツキの影響がクロック信号ＣＫ１〜ＣＫ８間のスキューと各クロック信号ＣＫ１〜ＣＫ８のジッタに加わる悪循環を生む。これにより、高速設計における規格を満足することができないと言う問題や歩留低下を招くことになる。一方、各クロック信号配線の間隔を広げる構造では、一般にクロストークノイズの影響を和らげる配線間隔は数［ｕｍ］以上の距離が必要で、サブミクロン時代の設計基準では半導体集積回路全体の面積が５倍以上となるため、現実的でない。
【００２９】
また、従来の半導体集積回路では、設計の際に、クロック信号ＣＫ１〜ＣＫ８間のスキュー及びクロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足していない場合、前工程に戻って設計し直す必要があり、このときの戻りの工程が多いため、設計に時間がかかるという問題点があった。
【００３０】
本発明は、上記課題を解決するためになされたもので、半導体集積回路の面積を大きくすることなくクロック信号間のスキューと各クロック信号のジッタを低減することができる半導体集積回路を提供することを目的とする。
また、本発明は、クロック信号間のスキューと各クロック信号のジッタを低減可能な半導体集積回路を短時間で設計することができる設計方法を提供することを目的とする。
【００３１】
【課題を解決するための手段】
本発明は、基準信号から遅延時間ｉ×Ｔ（Ｔは一定時間）だけ遅れたｎ（ｎは８以上の整数）個のクロック信号ＣＫｉ（ｉは１〜ｎの整数）を出力する第１の回路（１０１ａ）と、この第１の回路からｎ本の信号配線を介して入力される前記ｎ個のクロック信号を用いて信号処理を行う第２の回路（１０３ａ）とを有する半導体集積回路において、前記ｎ本の信号配線のうち少なくとも一部については、隣接する２本の前記信号配線で伝送される２つの前記クロック信号のエッジ位置を時間軸上で見たとき、これら２つのクロック信号の立ち上がり同士、立ち下がり同士のエッジ位置がＴより大の時間だけ離れているものである。このように、本発明では、ｎ個のクロック信号を半導体集積回路内に配線する順番に着目し、クロストークノイズが隣接するクロック信号に影響しない並びを実現する。なお、本発明は、高速バスや高速シリアルパラレル変換インタフェース回路及び一般のプリント板やＩＣ設計など広い分野への応用が可能である。
【００３２】
また、本発明の半導体集積回路の１構成例は、前記第１の回路と前記第２の回路との間に設けられた、前記ｎ個のクロック信号に対応したｎ個のバッファー（Ｂ１〜Ｂ１６）を備えたバッファー挿入回路（１０２ａ）をさらに有し、前記信号配線は、前記第１の回路から前記ｎ個のバッファーに前記ｎ個のクロック信号を伝送するｎ本の入力配線（ＮＩ１〜ＮＩ１６）と、前記ｎ個のバッファーから前記第２の回路に前記ｎ個のクロック信号を伝送するｎ本の出力配線（ＮＯ１〜ＮＯ１６）とからなり、前記ｎ個のバッファーの少なくとも一部は、隣接する２本の前記入力配線又は前記出力配線で伝送される２つの前記クロック信号のエッジ位置を時間軸上で見たとき、これら２つのクロック信号の立ち上がり同士、立ち下がり同士のエッジ位置がＴより大の時間だけ離れるように配置されるものである。また、本発明の半導体集積回路の１構成例において、前記ｎ個のバッファーは、一次元的に配置されるものである。また、本発明の半導体集積回路の１構成例において、前記ｎ個のバッファーは、時計回り又は反時計周りに二次元的に配置されるものである。
【００３３】
また、本発明の半導体集積回路の１構成例において、前記ｎ本の入力配線は、前記ｎ個のバッファーを配置した領域の中央部の点（α）まで配設され、この中央部の点から各バッファーまでの配線長が互いに等しくなるように、対応するバッファーの入力端子まで配設され、前記ｎ本の出力配線は、各バッファーの出力端子から前記中央部の点までの配線長が互いに等しくなるように前記中央部の点まで配設され、この中央部の点から前記第２の回路まで配設されるものである。また、本発明の半導体集積回路の１構成例において、前記ｎ本の入力配線は、前記第１の回路からＸ方向の配線長が互いに等しくなるように配設されると共に、Ｙ方向の配線長が互いに等しくなるように、対応するバッファーの入力端子まで配設され、前記ｎ本の出力配線は、Ｙ方向の配線長が互いに等しくなるように各バッファーの出力端子から配設されると共に、前記第２の回路までＸ方向の配線長が互いに等しくなるように配設されるものである。
【００３５】
【発明の実施の形態】
［第１の参考例］
以下、本発明の実施の形態について図面を参照して詳細に説明する。図１は本発明の第１の参考例となる半導体集積回路の内部構成を示す回路図である。図１はＤＬＬ（Delay Locked Loop ）回路１０１から出力された同一の遅延差を有する複数のクロック信号ＣＫ１〜ＣＫ８をバッファ挿入部１０２を介してＤＣＭＰ回路１０３へ供給する回路を示している。
【００３６】
ここで、ＤＬＬ回路１０１の構成と動作を簡単に説明する。図２はＤＬＬ回路１０１の構成を示すブロック図である。ＤＬＬ回路１０１は、位相比較器２０１と、チャージポンプ２０２と、ローパスフィルタ（以下、ＬＰＦと記す）２０３と、遅延時間が可変できるバッファーチェーン（以下、ＢＣと記す）２０４とからなる。
【００３７】
位相比較器２０１は、ＢＣ２０４の出力信号と基準信号ＲＣＬＫとの位相を比較し、両者の位相差に相当する位相差ｕｐ信号又は位相差ｄｏｗｎ信号を出力する。チャージポンプ２０２は、位相差ｕｐ信号と位相差ｄｏｗｎ信号に応じた充放電電流をＬＰＦ２０３に供給する。ＬＰＦ２０３は、チャージポンプ２０２の出力に含まれる不要な成分や雑音を取り除いた信号をＢＣ２０４に供給する。
【００３８】
チャージポンプ２０２及びＬＰＦ２０３は、位相差ｕｐ信号又は位相差ｄｏｗｎ信号に応じてＢＣ２０４へ与える電圧を変化させるループフィルタとして機能する。ＢＣ２０４は、このループフィルタの出力電圧に応じて基準信号ＲＣＬＫに対する遅延時間を、前記位相差を相殺する方向に変化させる。
【００３９】
こうして、ＤＬＬ回路１０１は、基準信号ＲＣＬＫから遅延時間ｉ×Ｔ（Ｔは一定時間）だけ遅れたｎ（ｎは２以上の整数、ここではｎ＝８）個のクロック信号ＣＫｉ（ｉは１〜ｎの整数）を生成する。ＤＬＬ回路１０１から出力されるクロック信号ＣＫ１〜ＣＫ８の関係を図３に示す。
【００４０】
ＤＬＬ回路１０１からバッファー挿入部１０２へクロック信号ＣＫ１〜ＣＫ８を伝送する入力配線ＮＩ１〜ＮＩ８は、第１の配線入替部１０４によって順番が入れ替えられてバッファー挿入部１０２内の対応するバッファーＢ１〜Ｂ８の入力端子に接続される。
【００４１】
バッファー挿入部１０２内のバッファーＢ１〜Ｂ８は、ＤＬＬ回路１０１とＤＣＭＰ回路１０３間を接続する配線の寄生容量や寄生抵抗によって各クロック信号ＣＫ１〜ＣＫ８が減衰することを防止するために設けられている。バッファーＢ１〜Ｂ８の出力端子からＤＣＭＰ回路１０３へクロック信号ＣＫ１〜ＣＫ８を伝送する出力配線ＮＯ１〜ＮＯ８は、第２の配線入替部１０５によって順番が入れ替えられてＤＣＭＰ回路１０３の対応する入力端子に接続される。
【００４２】
ＣＩ１，ＣＩ２，ＣＩ３，ＣＩ４，ＣＩ５，ＣＩ６，ＣＩ７は、それぞれ入力配線ＮＩ１とＮＩ４間、ＮＩ４とＮＩ７間、ＮＩ７とＮＩ２間、ＮＩ２とＮＩ５間、ＮＩ５とＮＩ８間、ＮＩ８とＮＩ３間、ＮＩ３とＮＩ６間に存在する寄生容量を示す。また、ＣＯ１，ＣＯ２，ＣＯ３，ＣＯ４，ＣＯ５，ＣＯ６，ＣＯ７は、それぞれ出力配線ＮＯ１とＮＯ４間、ＮＯ４とＮＯ７間、ＮＯ７とＮＯ２間、ＮＯ２とＮＯ５間、ＮＯ５とＮＯ８間、ＮＯ８とＮＯ３間、ＮＯ３とＮＯ６間に存在する寄生容量を示す。
【００４３】
次に、ＤＣＭＰ回路１０３の動作を簡単に説明すると、ＤＣＭＰ回路１０３は、ＤＬＬ回路１０１から出力された同一の遅延差を有するクロック信号ＣＫ１〜ＣＫ８の立ち上がりのｔｒエッジ又は立ち下がりのｔｆエッジを複数使用して、各クロック信号ＣＫ１〜ＣＫ８を擬似的に高速クロックとして用い、高速シリアルデータを低速パラレルデータ数本に変換する回路である。
【００４４】
ここで、クロック信号の数をｎ＝８個とし、クロック信号ＣＫｉ（ｉは１〜ｎの整数）が基準信号ＲＣＬＫから遅延時間ｉ×Ｔ（Ｔは一定時間）だけ遅れているとすると、本参考例では、立ち下がりｔｆエッジの時間軸上の位置が図４に示すように３Ｔ分だけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ８を並べている。
【００４５】
つまり、本参考例では、図１に示すように、第１の配線入替部１０４の出力から第２の配線入替部１０５の入力までの間において、クロック信号ＣＫ１，ＣＫ４，ＣＫ７，ＣＫ２，ＣＫ５，ＣＫ８，ＣＫ３，ＣＫ６の順に並ぶように、Ｂ１，Ｂ４，Ｂ７，Ｂ２，Ｂ５，Ｂ８，Ｂ３，Ｂ６の順にバッファーＢ１〜Ｂ８を一次元的に配置している。
【００４６】
また、この配置構造に応じて、ＮＩ１（ＮＯ１），ＮＩ４（ＮＯ４），ＮＩ７（ＮＯ７），ＮＩ２（ＮＯ２），ＮＩ５（ＮＯ５），ＮＩ８（ＮＯ８），ＮＩ３（ＮＯ３），ＮＩ６（ＮＯ６）の順に並ぶように、第１の配線入替部１０４によって入力配線ＮＩ１〜ＮＩ１６の順番を入れ替えている。
【００４７】
図５はＤＬＬ回路１０１から出力されるクロック信号ＣＫ１，ＣＫ４とバッファーＢ１，Ｂ４の入力端子に接続される入力配線ＮＩ１，ＮＩ４上の信号とを示す波形図である。図５におけるＮＩ１は入力配線ＮＩ１上を流れるクロック信号ＣＫ１を示し、図５におけるＮＩ４は入力配線ＮＩ４上を流れるクロック信号ＣＫ４を示している。図６はＤＬＬ回路１０１からバッファー挿入部１０２のバッファー群Ｂ１〜Ｂ８までの構成を拡大した回路図である。
【００４８】
クロック信号ＣＫ１の立ち上がりのｔｒエッジは、入力配線ＮＩ１を通ってバッファーＢ１の入力端子へ伝播される。寄生容量ＣＩ１と図示しない配線抵抗により、クロック信号ＣＫ１のｔｒエッジは、ＤＬＬ回路１０１を出てから遅延時間τ１後にバッファーＢ１の入力端子に到達する。また、クロック信号ＣＫ２の立ち上がりのｔｒエッジは、入力配線ＮＩ２を通ってバッファーＢ２の入力端子へ伝播される。寄生容量ＣＩ３，ＣＩ４と図示しない配線抵抗により、クロック信号ＣＫ２のｔｒエッジは、ＤＬＬ回路１０１を出てから遅延時間τ２後にバッファーＢ２の入力端子に到達する。
【００４９】
さらに、クロック信号ＣＫ４の立ち上がりのｔｒエッジは、入力配線ＮＩ４を通ってバッファーＢ４の入力端子へ伝播される。寄生容量ＣＩ１，ＣＩ２と図示しない配線抵抗により、クロック信号ＣＫ４のｔｒエッジは、ＤＬＬ回路１０１を出てから遅延時間τ４後にバッファーＢ４の入力端子に到達する。
【００５０】
このとき、バッファーＢ１の入力配線ＮＩ１とバッファーＢ４の入力配線ＮＩ４とが隣り合って平行に配設されているため、入力配線ＮＩ４上のクロック信号ＣＫ４に、クロック信号ＣＫ１のｔｒエッジに起因するクロストークノイズが寄生容量ＣＩ１を介して混入する。
【００５１】
しかし、図５からも分かるように、入力配線ＮＩ４上を流れるクロック信号ＣＫ４のｔｒエッジは、入力配線ＮＩ１上を流れるクロック信号ＣＫ１のｔｒエッジに対して大きく遅れており、両者の間に十分な時間差があるので、クロック信号ＣＫ１のｔｒエッジに起因するクロストークノイズが入力配線ＮＩ４上を流れるクロック信号ＣＫ４のｔｒエッジに影響を及ぼすことはない。
【００５２】
同様に、バッファーＢ２の入力配線ＮＩ２とバッファーＢ５，Ｂ７の入力配線ＮＩ５，ＮＩ７とが隣り合って平行に配設されているため、入力配線ＮＩ５，ＮＩ７上のクロック信号ＣＫ５，ＣＫ７に、クロック信号ＣＫ２のｔｒエッジに起因するクロストークノイズが寄生容量ＣＩ３，ＣＩ４を介して混入する。
【００５３】
しかし、入力配線ＮＩ５，ＮＩ７上を流れるクロック信号ＣＫ５，ＣＫ７のｔｒエッジは、入力配線ＮＩ２上を流れるクロック信号ＣＫ２のｔｒエッジに対して大きく遅れており、両者の間に十分な時間差があるので、クロック信号ＣＫ２のｔｒエッジに起因するクロストークノイズが入力配線ＮＩ５，ＮＩ７上を流れるクロック信号ＣＫ５，ＣＫ７のｔｒエッジに影響を及ぼすことはない。
【００５４】
このように隣接するクロック信号のｔｒエッジの位置が十分な時間差を有するようにすれば、各クロック信号ＣＫ１〜ＣＫ８間の干渉によって発生するクロストークノイズの影響をなくすことができ、各クロック信号ＣＫ１〜ＣＫ８間のスキューと各クロック信号ＣＫ１〜ＣＫ８のジッタを低減することができる。ここでは、立ち上がりのｔｒエッジについてのみ説明したが、立ち下がりのｔｆエッジに関しても同様の効果が得られることは言うまでもない。
【００５５】
例えば、図１に示すＤＬＬ回路１０１に３１１［ＭＨｚ］の基準信号（リファレンスクロック）ＲＣＬＫを与え、ＤＬＬ回路１０１の出力端子から各々Ｔ＝２００［ｐｓ］の遅延差を有するクロック信号ＣＫ１〜ＣＫ８を取り出し、バッファー挿入部１０２を１６段程構成してＤＣＭＰ回路１０３へクロック信号ＣＫ１〜ＣＫ８を供給する場合を例に、図１９に示した従来例と本参考例の回路シミュレーション結果を比較すると、スキューはクロストークによる遅延変動の影響が各クロック信号に対して均一となり、従来例の約５００［ｐｓ］から約５０［ｐｓ］に低減され、ジッタはクロストークによる遅延変動の影響が各クロック信号のｔｒエッジ又はｔｆエッジの近傍外にて働くので、従来例の約２００［ｐｓ］から約１０［ｐｓ］に低減される。
【００５６】
［第２の参考例］
次に、第２の参考例について図面を参照して詳細に説明する。図７は本参考例におけるバッファー挿入部１０２の配置構造を示す平面図である。本参考例は、バッファー挿入部１０２の配置構造の他の例を示すものである。図６に示すように、第１の参考例では、バッファー挿入部１０２の各バッファーＢ１〜Ｂ８を一次元的に配置した。
【００５７】
これに対して、本参考例では、図７に示すように、バッファーＢ１，Ｂ４，Ｂ７，Ｂ２，Ｂ５，Ｂ８，Ｂ３，Ｂ６の順にバッファーＢ１〜Ｂ８を時計回りに配置している。
【００５８】
バッファーＢ４に隣接配置されるバッファーＢ１，Ｂ７に入力されるクロック信号ＣＫ１，ＣＫ７の立ち上がりのｔｒエッジ又は立ち下がりのｔｆエッジに着目すると、クロック信号ＣＫ４のｔｒエッジ又はｔｆエッジに対して、クロック信号ＣＫ１，ＣＫ７のｔｒエッジ又はｔｆエッジは３Ｔ分進んだり遅れたりしているので、クロック信号ＣＫ４のｔｒエッジ又はｔｆエッジに起因するクロストークノイズが、クロック信号ＣＫ１，ＣＫ７のｔｒエッジ又はｔｆエッジに影響を及ぼすことはなく、逆に、クロック信号ＣＫ１，ＣＫ７のｔｒエッジ又はｔｆエッジに起因するクロストークノイズがクロック信号ＣＫ４のｔｒエッジ又はｔｆエッジに影響を及ぼすこともない。
【００５９】
同様に、バッファーＢ７に隣接配置されるバッファーＢ４，Ｂ２に入力されるクロック信号ＣＫ４，ＣＫ２の立ち上がりのｔｒエッジ又は立ち下がりのｔｆエッジに着目すると、クロック信号ＣＫ７のｔｒエッジ又はｔｆエッジに対して、クロック信号ＣＫ４，ＣＫ２のｔｒエッジ又はｔｆエッジは３Ｔ分進んだり遅れたりしているので、クロック信号ＣＫ７のｔｒエッジ又はｔｆエッジに起因するクロストークノイズが、クロック信号ＣＫ４，ＣＫ２のｔｒエッジ又はｔｆエッジに影響を及ぼすことはなく、逆に、クロック信号ＣＫ４，ＣＫ２のｔｒエッジ又はｔｆエッジに起因するクロストークノイズがクロック信号ＣＫ７のｔｒエッジ又はｔｆエッジに影響を及ぼすこともない。
【００６０】
したがって、本実施の形態によれば、各クロック信号ＣＫ１〜ＣＫ８の伝播が正確に行われるので、各クロック信号ＣＫ１〜ＣＫ８間のスキューと各クロック信号ＣＫ１〜ＣＫ８のジッタを低減することができる。
【００６１】
［第３の参考例］
次に、第３の参考例について図面を参照して詳細に説明する。図８は本参考例におけるバッファー挿入部１０２の配置構造を示す平面図である。本参考例は、第２の参考例と同様に、バッファー挿入部１０２の配置構造の１例を示すものである。クロック信号ＣＫ１〜ＣＫ８の関係は第２の参考例と同様に図４に示す通りであるが、本参考例では、図８に示すように、バッファーＢ１，Ｂ４，Ｂ７，Ｂ２，Ｂ５，Ｂ８，Ｂ３，Ｂ６の順にバッファーＢ１〜Ｂ８を反時計回りに配置している。
【００６２】
なお、隣接する２つのバッファーに入力される２つのクロック信号の時間差を２Ｔとし、Ｂ１，Ｂ３，Ｂ５，Ｂ７，Ｂ２，Ｂ４，Ｂ６，Ｂ８の順にバッファーＢ１〜Ｂ８を時計回りに配置すると、バッファーＢ１に入力されるクロック信号ＣＫ１のｔｒエッジ又はｔｆエッジとバッファーＢ８に入力されるクロック信号ＣＫ８のｔｒエッジ又はｔｆエッジの時間軸上の位置が接近するタイミングが発生し、クロック信号ＣＫ１のｔｒエッジ又はｔｆエッジに起因するクロストークノイズが、クロック信号ＣＫ８のｔｒエッジ又はｔｆエッジに影響を及ぼすことがあり、逆に、クロック信号ＣＫ８のｔｒエッジ又はｔｆエッジに起因するクロストークノイズがクロック信号ＣＫ１のｔｒエッジ又はｔｆエッジに影響を及ぼすこともある。したがって、クロック信号の数がｎ＝８の場合には、第２、第３の参考例で示した順番が最適である。
【００６３】
［第４の参考例］
次に、第４の参考例について図面を参照して詳細に説明する。図９は本参考例におけるバッファー挿入部１０２の配線構造を示す平面図である。本参考例は、バッファー挿入部１０２の配線構造の他の例を示すものである。本参考例においても、ＤＬＬ回路１０１、第１の配線入替部１０４、入力配線ＮＩ１〜ＮＩ８、出力配線ＮＯ１〜ＮＯ８、第２の配線入替部１０５、ＤＣＭＰ回路１０３については第１の参考例と全く同じである。
【００６４】
本参考例では、クロック信号ＣＫ１〜ＣＫ８の立ち下がりｔｆエッジの時間軸上の位置が３Ｔ分だけ順次ずれていくようにバッファーＢ１〜Ｂ８を図７で示した順番で配置している。そして、バッファーＢ１〜Ｂ８を配置した領域の中央部の点αにバッファーＢ１〜Ｂ８への入力配線ＮＩ１〜ＮＩ８を束ねる。
【００６５】
次に、点αに集めた入力配線ＮＩ１〜ＮＩ８を、点αからの配線長が等しくなるように４つの点β１１，β１２，β２１，β２２に４分配する。このとき、バッファーＢ１，Ｂ４への入力配線ＮＩ１，ＮＩ４を点αから点β１１まで配線し、バッファーＢ７，Ｂ２への入力配線ＮＩ７，ＮＩ２を点β２１まで配線し、バッファーＢ５，Ｂ８への入力配線ＮＩ５，ＮＩ８を点β２２まで配線し、バッファーＢ３，Ｂ６への入力配線ＮＩ３，ＮＩ６を点β１２まで配線する。
【００６６】
続いて、点β１１，β１２，β２１，β２２まで配線した入力配線ＮＩ１〜ＮＩ８を、点β１１，β１２，β２１，β２２からの配線長が等しくなるように２分配して、接続先のバッファーＢ１〜Ｂ８の入力端子まで配線する。
【００６７】
すなわち、点β１１まで配線した入力配線ＮＩ１，ＮＩ４をそれぞれバッファーＢ１，Ｂ４の入力端子まで配線し、点β２１まで配線した入力配線ＮＩ７，ＮＩ２をそれぞれバッファーＢ７，Ｂ２の入力端子まで配線し、点β２２まで配線した入力配線ＮＩ５，ＮＩ８をそれぞれバッファーＢ５，Ｂ８の入力端子まで配線し、点β１２まで配線した入力配線ＮＩ３，ＮＩ６をそれぞれバッファーＢ３，Ｂ６の入力端子まで配線する。
【００６８】
一方、出力配線ＮＯ１〜ＮＯ８については、入力配線ＮＩ１〜ＮＩ８と逆の経路で配線すればよい。まず、出力配線ＮＯ１〜ＮＯ８を、バッファーＢ１〜Ｂ８からの配線長が等しくなるように点β１１，β１２，β２１，β２２まで配線する。
【００６９】
すなわち、出力配線ＮＯ１，ＮＯ４をバッファーＢ１，Ｂ４の出力端子から点β１１まで配線し、出力配線ＮＯ７，ＮＯ２をバッファーＢ７，Ｂ２の出力端子から点β２１まで配線し、出力配線ＮＯ５，ＮＯ８をバッファーＢ５，Ｂ８の出力端子から点β２２まで配線し、出力配線ＮＯ３，ＮＯ６をバッファーＢ３，Ｂ６の出力端子から点β１２まで配線する。
【００７０】
そして、点β１１，β１２，β２１，β２２まで配線した出力配線ＮＯ１〜ＮＯ８を、点β１１，β１２，β２１，β２２からの配線長が等しくなるように点αまで配線する。
【００７１】
クロック信号の数がｎ＝８の場合、点αの座標Ｘα，Ｙαは次式により導き出される。
Ｘα＝（Ｘ２−Ｘ１）／２＋Ｘ１
Ｙα＝（Ｙ２−Ｙ１）／２＋Ｙ１                          ・・・（１）
【００７２】
式（１）において、Ｘ２はバッファー群Ｂ１〜Ｂ８を配置した領域のＸ方向の最大値、Ｘ１はバッファー群Ｂ１〜Ｂ８を配置した領域のＸ方向の最小値、Ｙ２はバッファー群Ｂ１〜Ｂ８を配置した領域のＹ方向の最大値、Ｙ１はバッファー群Ｂ１〜Ｂ８を配置した領域のＹ方向の最小値である。
【００７３】
また、点βｊｋ（ｊ，ｋは自然数、ここではｊ，ｋ＝１，２）の座標Ｘｊｋ，Ｙｊｋは次式により導き出される。
Ｘｊｋ＝ｊ×（Ｘ２−Ｘ１）／３＋Ｘ１
Ｙｊｋ＝ｋ×（Ｙ２−Ｙ１）／３＋Ｙ１                    ・・・（２）
【００７４】
［第５の参考例］
次に、第５の参考例について図面を参照して詳細に説明する。図１０は本参考例におけるバッファー挿入部１０２の配線構造を示す平面図である。本参考例は、バッファー挿入部１０２の配線構造の他の例を示すものである。本参考例においても、ＤＬＬ回路１０１、第１の配線入替部１０４、入力配線ＮＩ１〜ＮＩ８、出力配線ＮＯ１〜ＮＯ８、第２の配線入替部１０５、ＤＣＭＰ回路１０３については第１の参考例と全く同じである。
【００７５】
本参考例では、クロック信号ＣＫ１〜ＣＫ８の立ち下がりｔｆエッジの時間軸上の位置が３Ｔ分だけ順次ずれていくようにバッファーＢ１〜Ｂ８を図７で示した順番で配置し、各クロック信号ＣＫ１〜ＣＫ８をバス接続している。
【００７６】
まず、入力配線ＮＩ１〜ＮＩ８のＸ方向の長さが揃うように、バッファー群Ｂ１〜Ｂ８を配置した領域の右端まで入力配線ＮＩ１〜ＮＩ８を配置する。このとき、入力配線の並びは、ＮＩ１，ＮＩ４，ＮＩ７，ＮＩ２，ＮＩ５，ＮＩ８，ＮＩ３，ＮＩ６の順となっている。次に、このＸ方向の入力配線ＮＩ１〜ＮＩ８と接続されるＹ方向の入力配線ＮＩ１〜ＮＩ８についても、その長さが揃うように、入力配線ＮＩ１〜ＮＩ８をそれぞれバッファーＢ１〜Ｂ８の入力端子まで配線する。
【００７７】
一方、出力配線ＮＯ１〜ＮＯ８については、入力配線ＮＩ１〜ＮＩ８と逆方向に配線すればよい。すなわち、出力配線ＮＯ１〜ＮＯ８をそれぞれバッファーＢ１〜Ｂ８の出力端子から引き出すとき、出力配線ＮＯ１〜ＮＯ８のＹ方向の長さが揃うように配置する。
【００７８】
次に、このＹ方向の出力配線ＮＯ１〜ＮＯ８と接続されるＸ方向の出力配線ＮＯ１〜ＮＯ８についても、その長さが揃うように、バッファー群Ｂ１〜Ｂ８を配置した領域の左端を始点として出力配線ＮＯ１〜ＮＯ８を配置する。このとき、出力配線の並びは、ＮＯ１，ＮＯ４，ＮＯ７，ＮＯ２，ＮＯ５，ＮＯ８，ＮＯ３，ＮＯ６の順となっている。
【００７９】
以上のように、本参考例によれば、バッファーＢ１〜Ｂ８への入力配線ＮＩ１〜ＮＩ８の配線長と配線容量を揃えることができ、またバッファーＢ１〜Ｂ８からの出力配線ＮＯ１〜ＮＯ８の配線長と配線容量を揃えることができる。以上の説明により、クロストークによるノイズが隣接する配線に何ら影響を与えず、各クロック信号間のスキューと各クロック信号のジッタが無くなる。
【００８０】
なお、クロック信号の数がｎ＝８の場合、クロック信号ＣＫ１〜ＣＫ８の立ち下がりｔｆエッジの時間軸上の位置が３Ｔ又は５Ｔだけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ８を配置すると、立ち上がりｔｒエッジ同士は十分離れるが、ｔｆエッジとｔｒエッジが１クロック分の遅延で接近する個所が発生する。このため、スキューとジッタの低減効果が不十分となる場合がある。
【００８１】
ただし、一般にバッファー挿入部１０２の各バッファーＢ１〜Ｂ８はＣＭＯＳインバータによって構成され、ＣＭＯＳインバータのｔｒエッジはＰチャネルＭＯＳ（以下、ＰＭＯＳと記す）、ｔｆエッジはＮチャネルＭＯＳ（以下、ＮＭＯＳと記す）の駆動能力で決まる。
【００８２】
そこで、同一ゲート幅のＰＭＯＳとＮＭＯＳを比較すると、ＮＭＯＳの方がＰＭＯＳよりも駆動能力が高く、ｔｒエッジとｔｆエッジによるクロストークノイズの幅を比較すると、ｔｆエッジの方がｔｒエッジの幅よりも小さくなり、ｔｆエッジによるクロストークノイズはｔｒエッジに影響しない。
【００８３】
また、ＰＭＯＳのゲート幅を大きくして駆動能力を上げる方法もあるが、レイアウト面積が大きくなり現実的ではない。さらに、図２０に示すように、クロック信号ＣＫ１のｔｒエッジが変化してから１Ｔ後にクロック信号ＣＫ２のｔｒエッジが来る個所は、クロストークノイズの影響がローレベルに対してプラス方向、すなわちＣＭＯＳインバータのスレッシュホールド電圧側に発生し、次々に同一方向にクロストークノイズが加算されるので、スキューやジッターに影響を及ぼす。
【００８４】
しかしながら、図５のように、クロック信号ＣＫ４のｔｆエッジが変化してから１Ｔ後にクロック信号ＣＫ１のｔｒエッジが来る個所は、クロストークノイズの影響がローレベルに対してマイナス方向、すなわちＣＭＯＳインバータのスレッシュホールド電圧側とは反対方向に発生し、クロストークノイズが加算されることがないので、スキューやジッターに影響しない。
【００８５】
この現象を、図１と図１１を用いて詳しく説明する。図１に示すＤＬＬ回路１０１のクロック信号ＣＫ１のｔｒエッジは、隣接配線されるクロック信号ＣＫ４のｔｆエッジに対して、３Ｔ分の遅延が生じた後に現れる。この現象を図１１で説明すると、クロック信号ＣＫ４のｔｆエッジは、ＮＭＯＳの駆動能力で決まり、寄生容量ＣＩ１とＣＩ２及び図示しない配線抵抗により、ＤＬＬ回路１０１を出てから入力配線ＮＩ４を通って遅延時間τ４ｆ後にバッファーＢ４の入力端子に到達する。
【００８６】
このとき、寄生容量ＣＩ１を介してクロック信号ＣＫ１に伝播されるクロストークノイズの幅△ｔｆ４が例えば、１００〔ｐｓ〕だと仮定する。次に、クロック信号ＣＫ４と隣接するクロック信号ＣＫ１のｔｒエッジは、例えば２００〔ｐｓ〕後に変化する。ここで、前記クロストークノイズの幅△ｔｆ４は、既にクロック信号ＣＫ１のｔｒエッジに影響を及ぼさない時間間隔である、例えば、１００〔ｐｓ〕離れて変化する。
【００８７】
この後、クロック信号ＣＫ１のｔｒエッジは寄生容量ＣＩ１と図示しない配線抵抗により、バッファーＢ１の入力配線ＮＩ１を通って遅延時間τ１ｒ後にバッファーＢ１の入力端子に到達する。
【００８８】
このように、クロック信号の数がｎ＝８で、クロック信号ＣＫ１〜ＣＫ８のデューティ比が５０％の場合は、クロック信号ＣＫ１〜ＣＫ８の立ち下がりｔｆエッジの時間軸上の位置が３Ｔ又は５Ｔだけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ８を配置すれば、隣接するクロック信号のｔｒエッジとｔｆエッジが１Ｔ以下に接近しても、ｔｆエッジの方が先に変化するので、ＮＭＯＳの駆動能力が高い分、図２０に示す従来技術よりもクロストークノイズが他のクロック信号に影響しない。
【００８９】
［第１の実施の形態］
次に、本発明の第１の実施の形態について図面を参照して詳細に説明する。図１２は本発明の第１の実施の形態となる半導体集積回路の内部構成を示す回路図である。図１２はＤＬＬ回路１０１ａから出力された同一の遅延差を有する複数のクロック信号ＣＫ１〜ＣＫ１６をバッファー挿入部１０２ａを介してＤＣＭＰ回路１０３ａへ供給する回路を示している。
【００９０】
本実施の形態は、近年のネットワーク市場の増大に伴い、高速シリアルデータレートが上昇した場合、ＤＣＭＰ回路１０３ａの動作周波数が図１のＤＣＭＰ回路１０３と比べて２倍となり、ＤＬＬ回路１０１ａで生成するクロック信号の数がｎ＝１６になった例である。ＤＬＬ回路１０１ａから出力されるクロック信号ＣＫ１〜ＣＫ１６の関係を図１３に示す。
【００９１】
ＤＬＬ回路１０１ａからバッファー挿入部１０２ａへクロック信号ＣＫ１〜ＣＫ１６を伝送する入力配線ＮＩ１〜ＮＩ１６は、第１の配線入替部１０４ａによって順番が入れ替えられてバッファー挿入部１０２ａ内の対応するバッファーＢ１〜Ｂ１６の入力端子に接続される。
【００９２】
バッファー挿入部１０２ａ内のバッファーＢ１〜Ｂ１６は、ＤＬＬ回路１０１ａとＤＣＭＰ回路１０３ａ間を接続する配線の寄生容量や寄生抵抗によって各クロック信号ＣＫ１〜ＣＫ１６が減衰することを防止するために設けられている。バッファーＢ１〜Ｂ１６の出力端子からＤＣＭＰ回路１０３ａへクロック信号ＣＫ１〜ＣＫ１６を伝送する出力配線ＮＯ１〜ＮＯ１６は、第２の配線入替部１０５ａによって順番が入れ替えられてＤＣＭＰ回路１０３ａの対応する入力端子に接続される。
【００９３】
第１の配線入替部１０４ａの出力から第２の配線入替部１０５ａの入力までのクロック信号ＣＫ１〜ＣＫ１６の関係を図１４に示す。クロック信号の数をｎ＝１６とし、クロック信号ＣＫｉ（ｉは１〜ｎの整数）が基準信号ＲＣＬＫから遅延時間ｉ×Ｔ（Ｔは一定時間）だけ遅れているとすると、本実施の形態では、立ち下がりｔｆエッジの時間軸上の位置が図１４に示すように３Ｔ分だけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ１６を並べている。
【００９４】
このように、本実施の形態では、隣接するクロック信号のエッジの位置が十分な時間差を有するようにしたので、各クロック信号ＣＫ１〜ＣＫ１６間の干渉によって発生するクロストークノイズの影響をなくすことができ、各クロック信号ＣＫ１〜ＣＫ１６間のスキューと各クロック信号ＣＫ１〜ＣＫ１６のジッタを低減することができる。
【００９５】
次に、本実施の形態の半導体集積回路の回路配置と配線を決定する設計方法を図１の回路図と対応して詳細に説明する。図１５は、ＤＬＬ回路１０１ａとＤＣＭＰ回路１０３ａの配置位置の決定ステップ４０２から始まり、バッファー挿入部１０２ａの配置と配線を行い、ＤＬＬ回路１０１ａとバッファー挿入部１０２ａとＤＣＭＰ回路１０３ａとの間を接続した後に、ＤＬＬ回路１０１ａから出力されるクロック信号ＣＫ１〜ＣＫ８間のスキューとこのクロック信号ＣＫ１〜ＣＫ８のジッタを確認し、バッファー挿入部１０２ａのバッファーＢ１〜Ｂ８に入力されるクロック信号ＣＫ１〜ＣＫ８間のスキューとこのクロック信号ＣＫ１〜ＣＫ８のジッタを確認し、さらにＤＣＭＰ回路１０３ａに入力されるクロック信号ＣＫ１〜ＣＫ８間のスキューとこのクロック信号ＣＫ１〜ＣＫ８のジッタを確認して、それぞれスキューとジッタが規格を満足しているか否かを確認する特性確認ステップ４０８を行う、一連のフローを示した図である。
【００９６】
まず、設計者は、ＤＬＬ回路１０１ａ及びＤＣＭＰ回路１０３ａのサイズと信号線の順番からＤＬＬ回路１０１ａ及びＤＣＭＰ回路１０３ａの配置位置を決定する（図１５ステップ４０２）。次に、設計者は、ステップ４０２で決定したＤＬＬ回路１０１ａ及びＤＣＭＰ回路１０３ａの配置位置を基に、単位面積当たりの配線の寄生容量を概算し、バッファー挿入部１０２ａの一段当たりの駆動能力を求めて、バッファー挿入部１０２ａの各バッファＢ１〜Ｂ１６の必要段数を決定する（ステップ４０３）。
【００９７】
続いて、設計者は、ステップ４０３で導き出した必要段数からバッファー挿入部１０２ａのサイズを決定する（ステップ４０４）。次に、設計者は、ステップ４０４で決定したバッファー挿入部１０２ａのサイズを基にバッファー挿入部１０２ａの配置と配線とを行う（ステップ４０５）。
【００９８】
ステップ４０５の処理として、まず設計者は、隣接するクロック信号のエッジの位置が十分な時間差を有するように、バッファー挿入部１０２ａの配置構造と配線構造とを決定する（ステップ４０５１）。前述のように、本実施の形態では、立ち下がりｔｆエッジの時間軸上の位置が図１４に示すように３Ｔ分だけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ１６を並べている。
【００９９】
つまり、本実施の形態では、図１２に示すように、第１の配線入替部１０４ａの出力から第２の配線入替部１０５ａの入力までの間において、クロック信号ＣＫ１，ＣＫ４，ＣＫ７，ＣＫ１０，ＣＫ１３，ＣＫ１６，ＣＫ３，ＣＫ６，ＣＫ９，ＣＫ１２，ＣＫ１５，ＣＫ２，ＣＫ５，ＣＫ８，ＣＫ１１，ＣＫ１４の順に並ぶように、Ｂ１，Ｂ４，Ｂ７，Ｂ１０，Ｂ１３，Ｂ１６，Ｂ３，Ｂ６，Ｂ９，Ｂ１２，Ｂ１５，Ｂ２，Ｂ５，Ｂ８，Ｂ１１，Ｂ１４の順にバッファーＢ１〜Ｂ１６を一次元的に配置している。
【０１００】
また、この配置構造に応じて、ＮＩ１（ＮＯ１），ＮＩ４（ＮＯ４），ＮＩ７（ＮＯ７），ＮＩ１０（ＮＯ１０），ＮＩ１３（ＮＯ１３），ＮＩ１６（ＮＯ１６），ＮＩ３（ＮＯ３），ＮＩ６（ＮＯ６），ＮＩ９（ＮＯ９），ＮＩ１２（ＮＯ１２），ＮＩ１５（ＮＯ１５），ＮＩ２（ＮＯ２），ＮＩ５（ＮＯ５），ＮＩ８（ＮＯ８），ＮＩ１１（ＮＯ１１），ＮＩ１４（ＮＯ１４）の順に並ぶように、第１の配線入替部１０４ａによって入力配線ＮＩ１〜ＮＩ１６の順番を入れ替えている。
【０１０１】
次に、設計者は、ステップ４０５１で決定した配置及び配線構造を示す配置・配線情報を作成する（ステップ４０５２）。そして、設計者は、ステップ４０５２で作成した配置・配線情報に従ってバッファー挿入部１０２ａ内の各バッファーＢ１〜Ｂ１６の配置を行い（ステップ４０５３）、配置・配線情報に従ってバッファー挿入部１０２ａ内の各バッファーＢ１〜Ｂ１６の配線を行う（ステップ４０５４）。
【０１０２】
続いて、設計者は、ステップ４０５２で作成した配置・配線情報に従って、ＤＬＬ回路１０１ａとバッファー挿入部１０２ａ間、及びバッファー挿入部１０２ａとＤＣＭＰ回路１０３ａ間を配線する（ステップ４０６）。配線終了後、設計者は、バッファー挿入部１０２ａとＤＬＬ回路１０１ａ及びＤＣＭＰ回路１０３ａ間を配線した結果から寄生容量と寄生抵抗とを抽出した回路データを基に、ＤＬＬ回路１０１ａとバッファー挿入部１０２ａとＤＣＭＰ回路１０３ａとからなる全体の回路シュミレーションを実施する（ステップ４０７）。
【０１０３】
そして、設計者は、ステップ４０７の回路シュミレーションの結果から、回路全体において各クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足しているか否かの特性確認を行う（ステップ４０８）。回路シュミレーション結果が規格を満足している場合、設計者は、アートワークデータ（以下、ＧＤＳデータと記す）を作成して（ステップ４０９）、設計を終える。
【０１０４】
ステップ４０８において各クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが規格を満足していない場合、設計者は、ＤＬＬ回路１０１ａとバッファー挿入部１０２ａ間、及びバッファー挿入部１０２ａとＤＣＭＰ回路１０３ａ間の配線を変更して（ステップ４１１）、ステップ４０７へ戻る。
【０１０５】
以上のように、本実施の形態では、クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが減少するように設計することができるので、クロック信号ＣＫ１〜ＣＫ８間のスキュー及び各クロック信号ＣＫ１〜ＣＫ８のジッタが所定の規格を満たしていない場合でも、設計変更が必要なのは、ＤＬＬ回路１０１ａとバッファー挿入部１０２ａ間及びバッファー挿入部１０２ａとＤＣＭＰ回路１０３ａ間の配線構造だけとなり、この配線構造の微調整を行えば、規格を満たすことができる。したがって、従来よりも戻りの工程を少なくすることができ、設計時間を短縮することができる。
【０１０６】
［第２の実施の形態］
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。図１６は本実施の形態におけるバッファー挿入部１０２ａの配置構造を示す平面図である。本実施の形態は、第１の実施の形態のステップ４０５１で決定したバッファー挿入部１０２ａの配置構造の他の例を示すものである。図１２に示すように、第１の実施の形態では、バッファー挿入部１０２ａのバッファーＢ１〜Ｂ１６を一次元的に配置した。
【０１０７】
これに対して、本実施の形態では、図１６に示すように、バッファーＢ１，Ｂ４，Ｂ７，Ｂ１０，Ｂ１３，Ｂ１６，Ｂ３，Ｂ６，Ｂ９，Ｂ１２，Ｂ１５，Ｂ２，Ｂ５，Ｂ８，Ｂ１１，Ｂ１４の順にバッファーＢ１〜Ｂ１６を時計回りに配置している。
【０１０８】
第１、第２の実施の形態では、立ち下がりｔｆエッジの時間軸上の位置が３Ｔ分だけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ１６を並べているが、５Ｔ分だけ順次ずれていくように並べてもよい。このように５Ｔ分だけ順次ずれていくように並べると、第１の配線入替部１０４ａの出力から第２の配線入替部１０５ａの入力までの間において、クロック信号ＣＫ１，ＣＫ６，ＣＫ１１，ＣＫ１６，ＣＫ５，ＣＫ１０，ＣＫ１５，ＣＫ４，ＣＫ９，ＣＫ１４，ＣＫ３，ＣＫ８，ＣＫ１３，ＣＫ２，ＣＫ７，ＣＫ１２の順に並ぶことになる。この場合のクロック信号ＣＫ１〜ＣＫ１６の関係を図１７に示す。
【０１０９】
また、立ち下がりｔｆエッジの時間軸上の位置が１１Ｔ分だけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ１６を並べてもよい。このように１１Ｔ分だけ順次ずれていくように並べると、第１の配線入替部１０４ａの出力から第２の配線入替部１０５ａの入力までの間において、クロック信号ＣＫ１，ＣＫ１２，ＣＫ７，ＣＫ２，ＣＫ１３，ＣＫ８，ＣＫ３，ＣＫ１４，ＣＫ９，ＣＫ４，ＣＫ１５，ＣＫ１０，ＣＫ５，ＣＫ１６，ＣＫ１１，ＣＫ６の順に並ぶことになる。
【０１１０】
また、立ち下がりｔｆエッジの時間軸上の位置が１３Ｔ分だけ順次ずれていくようにクロック信号ＣＫ１〜ＣＫ１６を並べてもよい。このように１３Ｔ分だけ順次ずれていくように並べると、第１の配線入替部１０４ａの出力から第２の配線入替部１０５ａの入力までの間において、クロック信号ＣＫ１，ＣＫ１４，ＣＫ１１，ＣＫ８，ＣＫ５，ＣＫ２，ＣＫ１５，ＣＫ１２，ＣＫ９，ＣＫ６，ＣＫ３，ＣＫ１６，ＣＫ１３，ＣＫ１０，ＣＫ７，ＣＫ４の順に並ぶことになる。
【０１１１】
［第３の実施の形態］
以下、本発明の第３の実施の形態について図面を参照して詳細に説明する。図１８は本実施の形態におけるバッファー挿入部１０２ａの配線構造を示す平面図である。本実施の形態は、第１の実施の形態のステップ４０５１で決定したバッファー挿入部１０２の配線構造の他の例を示すものである。本実施の形態においても、ＤＬＬ回路１０１ａ、第１の配線入替部１０４ａ、入力配線ＮＩ１〜ＮＩ１６、出力配線ＮＯ１〜ＮＯ１６、第２の配線入替部１０５ａ、ＤＣＭＰ回路１０３ａについては第１の実施の形態と全く同じである。
【０１１２】
本実施の形態では、クロック信号ＣＫ１〜ＣＫ１６の立ち下がりｔｆエッジの時間軸上の位置が３Ｔ分だけ順次ずれていくようにバッファーＢ１〜Ｂ１６を図１６で示した順番で配置している。そして、バッファーＢ１〜Ｂ１６を配置した領域の中央部の点αにバッファーＢ１〜Ｂ１６への入力配線ＮＩ１〜ＮＩ１６を束ねる。
【０１１３】
次に、点αに集めた入力配線ＮＩ１〜ＮＩ１６を、点αからの配線長が等しくなるように２つの点β１１，β２１に２分配する。このとき、バッファーＢ１，Ｂ４，Ｂ５，Ｂ７，Ｂ８，Ｂ１０，Ｂ１１，Ｂ１４への入力配線ＮＩ１，ＮＩ４，ＮＩ５，ＮＩ７，ＮＩ８，ＮＩ１０，ＮＩ１１，ＮＩ１４を点αから点β１１まで配線し、バッファーＢ２，Ｂ３，Ｂ６，Ｂ９，Ｂ１２，Ｂ１３，Ｂ１５，Ｂ１６への入力配線ＮＩ２，ＮＩ３，ＮＩ６，ＮＩ９，ＮＩ１２，ＮＩ１３，ＮＩ１５，ＮＩ１６を点β２１まで配線する。
【０１１４】
続いて、点β１１まで配線した入力配線ＮＩ１，ＮＩ４，ＮＩ５，ＮＩ７，ＮＩ８，ＮＩ１０，ＮＩ１１，ＮＩ１４を点β１１からの配線長が等しくなるように３つの点γ１１，γ３１，γ１３に３分配し、点β２１まで配線した入力配線ＮＩ２，ＮＩ３，ＮＩ６，ＮＩ９，ＮＩ１２，ＮＩ１３，ＮＩ１５，ＮＩ１６を点β２１からの配線長が等しくなるように３つの点γ５１，γ３３，γ５３に３分配する。
【０１１５】
すなわち、入力配線ＮＩ１，ＮＩ４，ＮＩ１４を点γ１１まで配線し、入力配線ＮＩ７，ＮＩ１０を点γ３１まで配線し、入力配線ＮＩ５，ＮＩ８，ＮＩ１１を点γ１３まで配線する。また、入力配線ＮＩ３，ＮＩ１３，ＮＩ１６を点γ５１まで配線し、入力配線ＮＩ２，ＮＩ１５を点γ３３まで配線し、入力配線ＮＩ６，ＮＩ９，ＮＩ１２を点γ５３まで配線する。
【０１１６】
次に、点γ１１，γ３１，γ１３，γ５１，γ３３，γ５３まで配線した入力配線ＮＩ１〜ＮＩ１６を、点γ１１，γ３１，γ１３，γ５１，γ３３，γ５３からの配線長が等しくなるように３分配又は２分配して、接続先のバッファーＢ１〜Ｂ１６の入力端子まで配線する。
【０１１７】
すなわち、点γ１１まで配線した入力配線ＮＩ１，ＮＩ４，ＮＩ１４をそれぞれバッファーＢ１，Ｂ４，Ｂ１４まで配線し、点γ３１まで配線した入力配線ＮＩ７，ＮＩ１０をそれぞれバッファーＢ７，Ｂ１０まで配線し、点γ１３まで配線した入力配線ＮＩ５，ＮＩ８，ＮＩ１１をそれぞれバッファーＢ５，Ｂ８，Ｂ１１まで配線し、点γ５１まで配線した入力配線ＮＩ３，ＮＩ１３，ＮＩ１６をそれぞれバッファーＢ３，Ｂ１３，Ｂ１６まで配線し、点γ３３まで配線した入力配線ＮＩ２，ＮＩ１５をそれぞれバッファーＢ２，Ｂ１５まで配線し、点γ５３まで配線した入力配線ＮＩ６，ＮＩ９，ＮＩ１２をそれぞれバッファーＢ６，Ｂ９，Ｂ１２まで配線する。
【０１１８】
一方、出力配線ＮＯ１〜ＮＯ１６については、入力配線ＮＩ１〜ＮＩ１６と逆の経路で配線すればよい。まず、出力配線ＮＯ１〜ＮＯ１６を、バッファーＢ１〜Ｂ１６からの配線長が等しくなるように点γ１１，γ３１，γ１３，γ５１，γ３３，γ５３まで配線する。
【０１１９】
すなわち、出力配線ＮＯ１，ＮＯ４，ＮＯ１４をバッファーＢ１，Ｂ４，Ｂ１４の出力端子から点γ１１まで配線し、出力配線ＮＯ７，ＮＯ１０をバッファーＢ７，Ｂ１０の出力端子から点γ３１まで配線し、出力配線ＮＯ５，ＮＯ８，ＮＯ１１をバッファーＢ５，Ｂ８，Ｂ１１の出力端子から点γ１３まで配線し、出力配線ＮＯ３，ＮＯ１３，ＮＯ１６をバッファーＢ３，Ｂ１３，Ｂ１６の出力端子から点γ５１まで配線し、出力配線ＮＯ２，ＮＯ１５をバッファーＢ２，Ｂ１５の出力端子から点γ３３まで配線し、出力配線ＮＯ６，ＮＯ９，ＮＯ１２をバッファーＢ６，Ｂ９，Ｂ１２の出力端子から点γ５３まで配線する。
【０１２０】
次に、点γ１１，γ３１，γ１３，γ５１，γ３３，γ５３まで配線した出力配線ＮＯ１〜ＮＯ１６を、点γ１１，γ３１，γ１３，γ５１，γ３３，γ５３からの配線長が等しくなるように点β１１，β２１まで配線し、さらに点β１１，β２１まで配線した出力配線ＮＯ１〜ＮＯ１６を、点β１１，β２１からの配線長が等しくなるように点αまで配線する。そして、出力配線ＮＯ１〜ＮＯ１６を点αから第２の配線入替部１０５ａへ配線する。
【０１２１】
クロック信号の数がｎ＝１６の場合、点αの座標Ｘα，Ｙαは次式により導き出される。
Ｘα＝（Ｘ２−Ｘ１）／２＋Ｘ１
Ｙα＝（Ｙ２−Ｙ１）／２＋Ｙ１                          ・・・（３）
【０１２２】
式（３）において、Ｘ２はバッファー群Ｂ１〜Ｂ１６を配置した領域のＸ方向の最大値、Ｘ１はバッファー群Ｂ１〜Ｂ１６を配置した領域のＸ方向の最小値、Ｙ２はバッファー群Ｂ１〜Ｂ１６を配置した領域のＹ方向の最大値、Ｙ１はバッファー群Ｂ１〜Ｂ１６を配置した領域のＹ方向の最小値である。
【０１２３】
また、点βｊ１（ｊは自然数、ここではｊ＝１，２）の座標Ｘｊ１，Ｙｊ１は次式により導き出される。
Ｘｊ１＝２×ｊ×（Ｘ２−Ｘ１）／６＋Ｘ１
Ｙｊ１＝（Ｙ２−Ｙ１）／２＋Ｙ１                        ・・・（４）
【０１２４】
また、点γｋｌ（ｋ，ｌは自然数、ここではｋ＝１，３，５、ｌ＝１，３）の座標Ｘｋｌ，Ｙｋｌは次式により導き出される。
Ｘｋｌ＝ｋ×（Ｘ２−Ｘ１）／６＋Ｘ１
Ｙｋｌ＝ｌ×（Ｙ２−Ｙ１）／４＋Ｙ１                    ・・・（５）
【０１２５】
なお、図１０で説明したような配線構造を用いてもよい。すなわち、バッファーＢ１〜Ｂ１６を図１６で示した順番で配置し、入力配線ＮＩ１〜ＮＩ１６のＸ方向の長さが揃うように、バッファー群Ｂ１〜Ｂ１６を配置した領域の右端まで入力配線ＮＩ１〜ＮＩ１６を配置する。このとき、入力配線の並びは、ＮＩ１，ＮＩ４，ＮＩ７，ＮＩ１０，ＮＩ１３，ＮＩ１６，ＮＩ３，ＮＩ６，ＮＩ９，ＮＩ１２，ＮＩ１５，ＮＩ２，ＮＩ５，ＮＩ８，ＮＩ１１，ＮＩ１４の順となる。
【０１２６】
次に、このＸ方向の入力配線ＮＩ１〜ＮＩ１６と接続されるＹ方向の入力配線ＮＩ１〜ＮＩ１６についても、その長さが揃うように、入力配線ＮＩ１〜ＮＩ１６をそれぞれバッファーＢ１〜Ｂ１６の入力端子まで配線する。
【０１２７】
一方、出力配線ＮＯ１〜ＮＯ１６については、入力配線ＮＩ１〜ＮＩ１６と逆方向に配線すればよい。すなわち、出力配線ＮＯ１〜ＮＯ１６をそれぞれバッファーＢ１〜Ｂ１６の出力端子から引き出すとき、出力配線ＮＯ１〜ＮＯ１６のＹ方向の長さが揃うように配置する。
【０１２８】
次に、このＹ方向の出力配線ＮＯ１〜ＮＯ１６と接続されるＸ方向の出力配線ＮＯ１〜ＮＯ１６についても、その長さが揃うように、バッファー群Ｂ１〜Ｂ１６を配置した領域の左端を始点として出力配線ＮＯ１〜ＮＯ１６を配置する。このとき、出力配線の並びは、ＮＯ１，ＮＯ４，ＮＯ７，ＮＯ１０，ＮＯ１３，ＮＯ１６，ＮＯ３，ＮＯ６，ＮＯ９，ＮＯ１２，ＮＯ１５，ＮＯ２，ＮＯ５，ＮＯ８，ＮＯ１１，ＮＯ１４の順となる。
【０１２９】
【発明の効果】
本発明によれば、基準信号から遅延時間ｉ×Ｔだけ遅れたｎ個のクロック信号ＣＫｉについて、隣接する２本の信号配線で伝送される２つのクロック信号のエッジ位置を時間軸上で見たとき、これら２つのクロック信号のエッジ位置がＴより大の時間だけ離れるようにすることにより、各クロック信号間の干渉によって発生するクロストークノイズの影響をなくすことができるので、配線間隔を最小に保つことができ、半導体集積回路の面積を大きくすることなくクロック信号間のスキューと各クロック信号のジッタを低減することができる。
【０１３０】
また、隣接する２本の入力配線又は出力配線で伝送される２つのクロック信号のエッジ位置を時間軸上で見たとき、これら２つのクロック信号のエッジ位置がＴより大の時間だけ離れるようにｎ個のバッファを配置することにより、半導体集積回路の面積を大きくすることなく、クロック信号間のスキューと各クロック信号のジッタを低減することができる。
【０１３１】
また、第１の回路からｎ個のバッファーにｎ個のクロック信号を伝送するｎ本の入力配線及びｎ個のバッファーから第２の回路にｎ個のクロック信号を伝送するｎ本の出力配線の配線構造と、ｎ個のバッファーの配置構造とを決定する際に、隣接する２本の入力配線又は出力配線で伝送される２つのクロック信号のエッジ位置を時間軸上で見たとき、これら２つのクロック信号のエッジ位置がＴより大の時間だけ離れるように、配線構造と配置構造とを決定することにより、半導体集積回路の全体でクロック信号間のスキュー及び各クロック信号のジッタが所定の規格を満たしていない場合でも、設計変更が必要なのは、第１の回路とバッファー挿入回路間及びバッファー挿入回路と第２の回路間の配線構造だけとなるので、従来よりも戻りの工程を少なくすることができ、設計時間を短縮することができる。
【図面の簡単な説明】
【図１】  本発明の第１の参考例となる半導体集積回路の内部構成を示す回路図である。
【図２】  本発明の第１の参考例においてＤＬＬ回路の構成を示すブロック図である。
【図３】  本発明の第１の参考例においてＤＬＬ回路から出力されるクロック信号のタイミングを示す波形図である。
【図４】  本発明の第１の参考例において第１の配線入替部の出力から第２の配線入替部の入力までのクロック信号のタイミングを示す波形図である。
【図５】  本発明の第１の参考例においてＤＬＬ回路から出力されるクロック信号とバッファーの入力端子に接続される入力配線上の信号とを示す波形図である。
【図６】  本発明の第１の参考例においてＤＬＬ回路からバッファー挿入部のバッファー群までの構成を拡大した回路図である。
【図７】  本発明の第２の参考例におけるバッファー挿入部の配置構造を示す平面図である。
【図８】  本発明の第３の参考例におけるバッファー挿入部の配置構造を示す平面図である。
【図９】  本発明の第４の参考例におけるバッファー挿入部の配線構造を示す平面図である。
【図１０】  本発明の第５の参考例におけるバッファー挿入部の配線構造を示す平面図である。
【図１１】  本発明の第１の参考例においてＤＬＬ回路から出力されるクロック信号とバッファーの入力端子に接続される入力配線上の信号とを示す波形図である。
【図１２】  本発明の第１の実施の形態となる半導体集積回路の内部構成を示す回路図である。
【図１３】  本発明の第１の実施の形態においてＤＬＬ回路から出力されるクロック信号のタイミングを示す波形図である。
【図１４】  本発明の第１の実施の形態において第１の配線入替部の出力から第２の配線入替部の入力までのクロック信号のタイミングを示す波形図である。
【図１５】  本発明の第１の実施の形態において回路配置と配線を決定する設計方法を示すフローチャート図である。
【図１６】  本発明の第２の実施の形態におけるバッファー挿入部の配置構造を示す平面図である。
【図１７】  第１の配線入替部の出力から第２の配線入替部の入力までのクロック信号のタイミングの他の例を示す波形図である。
【図１８】  本発明の第３の実施の形態におけるバッファー挿入部の配線構造を示す平面図である。
【図１９】  従来の半導体集積回路の内部構成を示す回路図である。
【図２０】  図１９の半導体集積回路においてＤＬＬ回路から出力されるクロック信号とバッファーの入力端子に接続される入力配線上の信号とを示す波形図である。
【図２１】  従来の半導体集積回路において回路配置と配線を決定する設計方法を示すフローチャート図である。
【符号の説明】
１０１ａ…ディレイロックドループ回路、１０２ａ…バッファー挿入部、１０３ａ…データコンパレータ回路、１０４ａ、１０５ａ…配線入替部、Ｂ１〜Ｂ１６…バッファー、ＣＫ１〜ＣＫ１６…クロック信号、ＮＩ１〜ＮＩ１６…入力配線、ＮＯ１〜ＮＯ１６…出力配線。
【図１】
0003838890.tif 000002
【図２】
0003838890.tif 000003
【図３】
0003838890.tif 000004
【図４】
0003838890.tif 000005
【図５】
0003838890.tif 000006
【図６】
0003838890.tif 000007
【図７】
0003838890.tif 000008
【図８】
0003838890.tif 000009
【図９】
0003838890.tif 000010
【図１０】
0003838890.tif 000011
【図１１】
0003838890.tif 000012
【図１２】
0003838890.tif 000013
【図１３】
0003838890.tif 000014
【図１４】
0003838890.tif 000015
【図１５】
0003838890.tif 000016
【図１６】
0003838890.tif 000017
【図１７】
0003838890.tif 000018
【図１８】
0003838890.tif 000019
【図１９】
0003838890.tif 000020
【図２０】
0003838890.tif 000021
【図２１】
0003838890.tif 000022