(57)【要約】【課題】雑なクロック選択回路に対応できる半導体集積回路を、簡単な配置クラスタリング工程で作製できるようにする。【解決手段】クロック信号を種々の遅延量で遅延調整するクロックツリー回路と、遅延調整されたクロック信号が供給されるクロック同期回路とを備える。クロックツリー回路は、クロック信号導入端の後段に設けられた第一のクロックツリーセルと、クロック同期回路の前段でかつ第1のクロックツリーセルより後段に設けられた第二のクロックツリーセルと、第二のクロックツリーセルの前段に設けられたクロック分岐点とを備える。クロック同期回路は第二のクロックツリーセルで遅延調整されたクロック信号が供給される第一のクロック同期回路とクロック分岐点でクロックツリー回路から出力されるクロック信号が供給される第二のクロック同期回路とを備える。【選択図】図１
2009187104.tif 000002
【特許請求の範囲】
【請求項１】
クロック経路を伝送するクロック信号を種々の遅延量で遅延調整するクロックツリー回路と、
前記クロックツリー回路により遅延調整された前記クロック信号が供給されるクロック同期回路と、
を備え、
前記クロックツリー回路は、
前記クロック経路におけるクロック信号導入端の後段に設けられた第一のクロックツリーセルと、
前記クロック経路における前記クロック同期回路の前段で、かつ前記第1のクロックツリーセルより後段に設けられた第二のクロックツリーセルと、
前記クロック経路における前記第二のクロックツリーセルの前段で、かつ前記第1のクロックツリーセルより後段に設けられたクロック分岐点と、
を備え、
前記クロック同期回路は、
前記第二のクロックツリーセルで遅延調整されたのち前記クロックツリー回路から出力される前記クロック信号が供給される第一のクロック同期回路と、
前記第一のクロックツリーセルで遅延調整されたのち前記第二のクロックツリーセルで遅延調整されることなく前記クロック分岐点で前記クロックツリー回路から出力される前記クロック信号が供給される第二のクロック同期回路と、
を備える、
ことを特徴とする半導体集積回路。
【請求項２】
前記クロック分岐点と前記第二のクロック同期回路とを、クロックツリー回路を介することなく接続する、
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記クロック分岐点と前記第二のクロック同期回路との間に、クロック選択回路を設け、
前記クロック選択回路は、前記クロック分岐点で前記クロックツリー回路から引き出される前記クロック信号と、当該クロック信号とは異なる他のクロック信号との中から一つを選択して、前記第二のクロック同期回路に供給する、
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項４】
前記第一のクロック同期回路の出力信号を前記第二のクロック同期回路に供給する、
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項５】
前記第一のクロック同期回路は、メモリセルである、
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項６】
前記第二のクロック同期回路は、フリップフロップである、
ことを特徴とする請求項１に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路において、クロック同期回路のチップ内クロック遅延ばらつき低減のためのクロック構成に関する。
【背景技術】
【０００２】
近年、プロセスシュリンクにともなう微細プロセスにおいて、ＯＣＶ(On-Chip-Variation)の影響によるチップ内クロック遅延バラツキのために、タイミング収束性悪化,工数増加,面積増加が顕著化している。
【０００３】
ＯＣＶとは、クロック遅延調整が必要なクロック同期回路において互に異なるクロック経路におけるチップ内クロック遅延ばらつきのことである。ＯＣＶは、
・製造ばらつき、
・ＯＰＣ（光学近接効果補正：Optical-Proximity-Correction）の不完全さ、
・チップ内温度ばらつき、
・各セル毎のＩＲ−ＤＲＯＰ値ばらつき、
・セル段数ばらつき、
・配線ばらつき、
・実動作に依存する設計要因ばらつき、
・その他設計マージン、
などに起因して生じる。
【０００４】
微細プロセスにおいては、ＯＣＶの影響によるチップ内クロック遅延ばらつきを設計マージンに付与したタイミング検証が必要であり、例えば遅延変動量が２０％であれば、動作周波数１００ＭＨｚを保証するためには、動作周波数１２０ＭＨｚを保証する必要がある。
【０００５】
また、カスタム設計されたＳＲＡＭ,ＲＯＭ,ｅＤＲＡＭなど（以降マクロと呼ぶ）は、一般的にフリップフロップよりも大きなホールドタイムが必要であり、かつ多入出力端子であることから、ＯＣＶの影響による面積増加が顕著である。
【０００６】
さらに、チップコスト削減や性能向上のため、多数のマクロを実装することが一般的であり、フリップフロップとマクロとの間のタイミング収束性が悪化することに起因する工数増加および面積増加などの設計生産性低下が問題となる。
【０００７】
図２は従来のクロック構成図である。このクロック構成は、クロックツリー構造を有する半導体集積回路において、
・クロック信号を供給するクロックツリーソースセル１００１と、
・クロックツリーソースセル１００１からクロック遅延調整が必要な回路であるフリップフロップ１００４およびマクロ１００５と、
・クロック信号を選択してマクロ１００５に出力するクロック選択回路１００６と、
・クロックツリーソースセル１００１の後段でクロック遅延調整を行う第一のクロックツリーセル（複数段に分岐されている）１００２と、
・フリップフロップ１００４およびマクロ１００５の前段でクロック遅延調整を行う第二のクロックツリーセル１００３と、
・クロックツリー回路からクロック選択回路１００６へ分岐するクロック最終分岐点１００７と、
を備える。
【０００８】
クロックツリーソースセル１００１から出力されたクロック信号は、クロック最終分岐点１００７から複数段に分岐した第一のクロックツリーセル１００２と第二のクロックツリーセル１００３とによって信号増幅されたうえで、フリップフロップ１００４に伝達される。また、このクロック信号は、クロック最終分岐点１００７からクロック選択回路１００６を介して複数段に分岐した第一のクロックツリーセル１００２と第二のクロックツリーセル１００３とによって信号増幅されたうえで、マクロ１００５に伝達される。そのため、クロックツリーソース１００１からフリップフロップ１００４に至るクロック経路と、クロックツリーソース１００１からマクロ１００５に至るクロック経路とは、第一のクロックツリーセル１００２と第二のクロックツリーセル１００３とによってクロック遅延調整される。
【０００９】
これによりクロック最終分岐点１００７とクロック選択回路１００６とは、複数段に分岐した第一のクロックツリーセル１００２よりクロック経路の前段側に位置することになり、かつクロック選択回路１００６はクロックツリーソースセル１００１に近接配置されるようになる。そのため、クロック最終分岐点１００７以降においてクロック経路に差異が生じるようになり、その結果、ＯＣＶの影響によるチップ内クロック遅延ばらつきが大きくなって、タイミング収束性悪化に起因する工数増加と面積増加とが生じる。
【００１０】
この不具合を解決するために、クロックラインの消費電力を抑えることができるゲーティングクロック回路からクロック信号が供給されるフリップフロップ群に着目して、このフリップフロップ群の中で生じる遅延時間差（スキュー）を少なくした回路および設計方法が提案されている（特許文献１参照）。この提案では、
・ルートバッファとそのルートバッファから順に分岐した複数段のバッファと、最終段多入力ゲート（ＮＯＲゲート）との組合せからなるクロックツリー構造を有するゲーテッドクロック回路において、その接続関係を全セルの配置後に生成する、
・クロックラインに接続されるフリップフロップを機能毎にクラスタリングした後、さらに配置が近傍のフリップフロップ間でクラスタリングする、
という処理を行っている。
【００１１】
これによりこの提案では、各バッファと、多入力ゲートが駆動する負荷とを一定にすることができて、スキューを少なくすることができる。
【特許文献１】特許第３１７８３７１号（第５頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、従来の方法は、フリップフロップの消費電力低減のためのゲーティング回路において、スキューを小さくするため、最終段多入力ゲートを、各バッファによって駆動されるフリップフロップの重心座標に配置している。そのため、複雑な配置クラスタリング工程が必要となる。
【００１３】
また、フリップフロップとは異なる配置制約であるマクロと、ゲーティング回路とは異なる複雑なクロック選択回路とには対応できない。
【課題を解決するための手段】
【００１４】
前記課題を解決するために、本発明は、
クロック経路を伝送するクロック信号を種々の遅延量で遅延調整するクロックツリー回路と、
前記クロックツリー回路により遅延調整された前記クロック信号が供給されるクロック同期回路と、
を備え、
前記クロックツリー回路は、
前記クロック経路におけるクロック信号導入端の後段に設けられた第一のクロックツリーセルと、
前記クロック経路における前記クロック同期回路の前段で、かつ前記第1のクロックツリーセルより後段に設けられた第二のクロックツリーセルと、
前記クロック経路における前記第二のクロックツリーセルの前段で、かつ前記第1のクロックツリーセルより後段に設けられたクロック分岐点と、
を備え、
前記クロック同期回路は、
前記第二のクロックツリーセルで遅延調整されたのち前記クロックツリー回路から出力される前記クロック信号が供給される第一のクロック同期回路と、
前記第一のクロックツリーセルで遅延調整されたのち前記第二のクロックツリーセルで遅延調整されることなく前記クロック分岐点で前記クロックツリー回路から出力される前記クロック信号が供給される第二のクロック同期回路と、
を備える。
【００１５】
本発明は、前記クロック分岐点と前記第二のクロック同期回路とを、クロックツリー回路を介することなく接続する、
という態様がある。
【００１６】
また、本発明は、前記クロック分岐点と前記第二のクロック同期回路との間に、クロック選択回路を設け、
前記クロック選択回路は、前記クロック分岐点で前記クロックツリー回路から引き出される前記クロック信号と、当該クロック信号とは異なる他のクロック信号との中から一つを選択して、前記第二のクロック同期回路に供給する、
という態様がある。
【００１７】
また、前記第一のクロック同期回路の出力信号を前記第二のクロック同期回路に供給する、
という態様がある。
【００１８】
また、前記第一のクロック同期回路は、メモリセルである、
という態様がある。
【００１９】
また、前記第二のクロック同期回路は、フリップフロップである、
という態様がある。
【発明の効果】
【００２０】
本発明によれば、クロック分岐点が第１,第２のクロック同期回路に近接配置されることになり、ＯＣＶの影響が低減される。さらに、クロック分岐点により分岐された各クロック経路において、互いに共通となるクロック経路の部分が占める割合が高くなることから、設計マージンとして考慮すべきＯＣＶの影響によるチップ内クロック遅延ばらつきの変動量を低減することができる。
【００２１】
なお、本発明において、前記クロック分岐点と前記第二のクロック同期回路とを、クロックツリー回路を介することなく接続する、という構成をさらに設ければ、クロック経路における遅延量の差異をより一層抑えることができる。これにより、ＯＣＶの影響によるチップ内クロック遅延ばらつきをさらに低減することができる。
【００２２】
また、本発明において、前記クロック分岐点と前記第二のクロック同期回路との間に、クロック選択回路を設け、前記クロック選択回路は、前記第一のクロックツリーセルにより遅延調整されたのち前記クロック分岐点で前記クロックツリーセルから引き出される前記クロック信号と、当該クロック信号とは異なる他のクロック信号との中から一つを選択して、前記第二のクロック同期回路に供給する、という構成をさらに備えれば、クロックツリーソースセル等から供給されるクロック信号に多様なクロック遅延調整が必要となる場合であってもクロック経路における遅延量の差異（ばらつき）を最小限に抑えることができる。
【００２３】
また、本発明において、前記第一のクロック同期回路の出力信号を前記第二のクロック同期回路に供給する、という構成をさらに備えれば、第一のクロック同期回路と第二のクロック同期回路とは同一のクロックツリー構造を有したうえでデータの受け渡しを行うことになる。このような構成においてタイミング収束性が考慮して本発明を実施すれば、クロック経路における遅延量の差異を最小限に抑えることができる。
【００２４】
また、本発明において、前記第一のクロック同期回路はメモリセルである、という構成をさらに備えれば、通常モード,スキャンモード,ＢＩＳＴモード,バーンインモードなど複雑なクロック選択をクロック選択回路により切り替えることができる。
【００２５】
また、本発明において、前記第二のクロック同期回路は、フリップフロップである、という構成をさらに備えれば、多数のフリップフロップとメモリセルとの間で信号の受け渡しがある状態において、ＯＣＶの影響によるチップ内クロック遅延ばらつきに起因する面積増加を抑制する効果が顕著になる。
【発明を実施するための最良の形態】
【００２６】
図１を参照して本発明の実施形態であるチップ内クロック遅延ばらつき低減のための回路構成について説明する。
【００２７】
本実施の形態の半導体集積回路は、以下に示すクロックツリー構造を有する。すなわち、この半導体集積回路は、クロックツリーソースセル１０１と、クロックツリーソースセル１０１からクロック信号が供給される第一,第二のクロック経路Ａ,Ｂと、第一,第二のクロック経路Ａ,Ｂにそれぞれ設けられた第一,第二のクロックツリー回路１００Ａ,１００Ｂと、第一,第二のクロックツリー回路１００Ａ,１００Ｂにより遅延調整されたクロック信号が供給される第一,第二のクロック同期回路群１１０Ａ,１１０Ｂと、第一,第二のクロック選択回路１０６,２０６とを有する。
【００２８】
第一のクロック経路Ａに設けられた第一のクロックツリー回路１００Ａは、第一のクロックツリーセル１０２と第二のクロックツリーセル１０３と第一のクロック分岐点１０７とを備える。同様に、第二のクロック経路Ｂに設けられた第二のクロックツリー回路１００Ｂは、第一のクロックツリーセル１０２と第二のクロックツリーセル２０３と第二のクロック分岐点２０７とを備える。第一のクロックツリー回路１０２と第二のクロックツリー回路２０２とは、第一のクロックツリーセル１０２を共用する。
【００２９】
第一のクロックツリー回路１００Ａにおいて、第一のクロックツリーセル１０２と第二のクロックツリーセル１０３と第一のクロック分岐点１０７とは次のように配置される。すなわち、第一のクロックツリーセル１０２は、第一のクロック経路Ａにおけるクロック信号導入端Ｃの後段に設けられる。第二のクロックツリーセル１０３は、第一のクロック同期回路群１１０Ａの前段で、かつ第1のクロックツリーセル１０２より後段に設けられる。第一のクロック分岐点１０７は第二のクロックツリーセル１０３の前段で、かつ第1のクロックツリーセル１０２より後段に設けられる。
【００３０】
第一のクロックツリーセル１０２は複数段に分岐されており、クロックツリーソースセル１０１で生成されてクロック信号導入端Ｃに供給されるクロック信号を種々の遅延量で遅延調整することで複数のクロック信号を生成する。
【００３１】
第一のクロック分岐点１０７は、第一のクロック経路Ａにおいて、第一のクロックツリーセル１０２と第二のクロックツリーセル１０３との間に位置しており、第一のクロックツリーセル１０２によって遅延調整されたクロック信号の分岐点である。第一のクロック分岐点１０７で分岐された分岐クロック信号それぞれは、第二のクロックツリーセル１０３と第一のクロック選択回路１０６とに出力される。
【００３２】
第二のクロックツリーセル１０３は分岐されており、第一のクロックツリーセル１０２で遅延調整されたうえで、第一のクロック分岐点１０７で分岐された分岐クロック信号をさらに種々の遅延量で遅延調整することで複数のクロック信号を生成する。
【００３３】
第一のクロック選択回路１０６は、第一のクロックツリーセル１０２で遅延調整されたうえで第一のクロック分岐点１０７で分岐されたもう一つの分岐クロック信号と、クロックツリーソースセル１０１によって生成されるクロック信号との中から一つを選択して出力する。
【００３４】
第二のクロックツリー回路１００Ｂにおいて、第一のクロックツリーセル１０２と第二のクロックツリーセル２０３と第二のクロック分岐点２０７とは次のように配置される。すなわち、第一のクロックツリーセル１０２は、第二のクロック経路Ｂにおけるクロック信号導入端Ｃの後段に設けられる。第二のクロックツリーセル２０３は、第二のクロック同期回路群１１０Ｂの前段で、かつ第1のクロックツリーセル１０２より後段に設けられる。第二のクロック分岐点２０７は第二のクロックツリーセル２０３の前段で、かつ第1のクロックツリーセル１０２より後段に設けられる。
【００３５】
第二のクロックツリー回路１００Ｂにおける第一のクロックツリーセル１０２は、第一のクロックツリー回路１００Ａにおける第一のクロックツリーセル１０２を共用してり、その構成は上述した通りである。
【００３６】
第二のクロック分岐点２０７は、第二のクロック経路Ｂにおいて、第一のクロックツリーセル１０２と第二のクロックツリーセル２０３との間に位置しており、第一のクロックツリーセル１０２によって遅延調整されたクロック信号の分岐点である。第二のクロック分岐点２０７で分岐された分岐クロック信号それぞれは、第二のクロックツリーセル２０３と第二のクロック選択回路２０６とに出力される。
【００３７】
第二のクロックツリーセル２０３は分岐されており、第一のクロックツリーセル１０２で遅延調整されたうえで、第二のクロック分岐点２０７で分岐された分岐クロック信号をさらに種々の遅延量で遅延調整することで複数のクロック信号を生成する。
【００３８】
第二のクロック選択回路２０６は、第一のクロックツリーセル１０２で遅延調整されたうえで第二のクロック分岐点２０７で分岐されたもう一つの分岐クロック信号と、クロックツリーソースセル１０１によって生成されるクロック信号との中から一つを選択して出力する。
【００３９】
なお、図１および以下の説明では、第一のクロックツリーセル１０２によって複数形成されるクロック信号の中から二系列のクロック信号群に着目したうえで、着目した各クロック信号群の伝送経路を、それぞれ第一のクロック経路Ａならびに第二のクロック経路Ｂと名付け、これらクロック経路Ａ,Ｂ上に位置する第一,第二のクロックツリー回路１００Ａ１００Ｂについて説明を行うが、着目していない他の系列のクロック信号群におけるクロック経路も同様であるのはいうまでもない。
【００４０】
第一のクロック同期回路群１１０Ａは、第一のクロック経路Ａに設けられており、第一のフリップフロップ（第一のクロック同期回路）１０４と第一のマクロ（第二のクロック同期回路）１０５とを有する。第一のフリップフロップ１０４は、第一のクロックツリー回路１００Ａの第二のクロックツリー回路１００Ｂにより遅延調整されたクロック信号が供給されるクロック同期回路である。第一のマクロ１０５は、第一のフリップフロップ１０４が処理した信号にさらに各種の処理を施すマクロ回路である。第一のマクロ１０５に供給されるクロック信号は、第一のフリップフロップ１０４に供給されるクロック信号とは異なる遅延調整を実施する必要がある。そこで、第一のマクロ１０５には、第一のフリップフロップ１０４とは異なり、第一のクロック選択回路１０６によって選択されたクロック信号が供給される。
【００４１】
第二のクロック同期回路群１１０Ｂは、第二のクロック経路Ｂに設けられており、第二のフリップフロップ（第一のクロック同期回路）２０４と第二のマクロ（第二のクロック同期回路）２０５とを有する。第二のフリップフロップ２０４は、第二のクロックツリー回路１００Ｂの第二のクロックツリー回路２００Ｂにより遅延調整されたクロック信号が供給されるクロック同期回路である。第二のマクロ２０５は、第二のフリップフロップ２０４が処理した信号にさらに各種の処理を施すマクロ回路である。第二のマクロ２０５に供給されるクロック信号は、第二のフリップフロップ２０４に供給されるクロック信号とは異なる遅延調整を実施する必要がある。そこで、第二のマクロ２０５には、第二のフリップフロップ２０４とは異なり、第二のクロック選択回路２０６によって選択されたクロック信号が供給される。
【００４２】
第二のクロックツリーセル１０３,２０３によってクロック信号が複数生成されるが、図１および以下の説明では、それらのクロック信号の一つを取り出して説明を行うが、他のクロック信号も同様であるのはいうまでもない。
【００４３】
まず、第一,第二のクロック分岐点１０７,２０７について説明する。第一,第二のマクロ１０５,２０５は、第一,第二のフリップフロップ１０４,２０４と異なるクロック制御の下で駆動する。そこで、第一,第二のクロック経路Ａ,Ｂにおける第一,第二のマクロ１０５,２０５の前段側にそれらに近接して第一,第二のクロック選択回路１０６,２０６がそれぞれ配置される。これにより、第一,第二のクロック分岐点１０７,２０７が、第一,第二のクロック経路Ａ,Ｂにおける最終的なクロック分岐点となる。
【００４４】
このようにして、第一,第二のクロック選択回路１０６,２０６を有する第一,第二のマクロ１０５,２０５ごとに第一,第二のクロック最終分岐点１０７,２０７が設けられる。そして、データ信号の受け渡しが行われる第一,第二のフリップフロップ１０４,２０４と第一,第二のマクロ１０５,２０５とにおいて、クロックツリーソースセル１０１から各第一,第二のクロック分岐点１０７,２０７に至る部分クロック経路が共通クロック経路となる。全クロック経路における共通クロック経路の比率が大きくなるほどＯＣＶの影響によるチップ内クロック遅延ばらつきは小さくなる。
【００４５】
なお、第一のフリップフロップ１０４と第二のマクロ２０５との間ではデータ信号の受け渡しがない。同様に、第二のフリップフロップ２０４と第一のマクロ１０５との間ではデータ信号の受け渡しがない。そのため、本実施の形態の構成では、タイミングを保証する必要が無く、ＯＣＶの影響によるチップ内クロック遅延ばらつきを考慮する必要はない。
【００４６】
本発明の実施形態を実現するためのレイアウトフローについて説明する。
まず、第一,第二のフリップフロップ１０４,２０４を含むセルの配置処理前に、予め機能ブロックのデータ信号の流れ,ＩＯ端子位置,配線収束性,タイミング収束性などを考慮したフロアプラン検討を行って、第一,第二のマクロ１０５,２０５の配置位置を決定する。
【００４７】
次に、第一のクロック選択回路１０６を第一のマクロ１０５に、第二のクロック選択回路２０６を第二のマクロ２０５に近接配置する。次に、第一,第二のフリップフロップ１０４,２０４を含むセルの配置処理を行う。具体的には、第一のフリップフロップ１０４と第一のマクロ１０５との間ではデータ信号の受け渡しがあって、タイミング収束性を考慮する必要がある。そこで、第一のフリップフロップ１０４を第一のマクロ１０５に近接配置する。これにより、第一のフリップフロップ１０４は第一のクロック分岐点１０７以降における同一のクロックツリークラスタリングとなる。同様に、第二のフリップフロップ２０４と第二のマクロ２０５とはデータ信号の受け渡しがあって、タイミング収束性を考慮する必要がある。そこで、第二のフリップフロップ２０４を第二のマクロ２０５に近接配置する。これにより、第二のフリップフロップ２０４は第二のクロック分岐点２０７以降における同一のクロックツリークラスタリングとなる。
【００４８】
次に、クロックツリーソースセル１０１から第一のフリップフロップ１０４に至る第一のクロック経路Ａと、クロックツリーソースセル１０１から第二のフリップフロップ２０４に至る第二のクロック経路Ｂとにおいて、クロック遅延調整のためのＣＴＳ処理（Clock-Tree-Synthesis）を行う。これにより、図１に示す本発明の実施形態の回路構成を実現できる。
【００４９】
なお、第一のクロック選択回路１０６は第一のマクロ１０５に近接配置されるため、第一のクロック選択回路１０６と第一のマクロ１０５との間に第一のクロックツリーセル１０３がなくても、第一のクロック選択回路１０６が出力するクロック信号は正しく第一のマクロ１０５に伝達される。同様に、第二のマクロ選択回路２０６は第二のマクロ２０５に近接配置されているため、第二のマクロ選択回路２０６と第二のマクロ２０５との間に第二のクロックツリーセル２０３がなくても、第二のマクロ選択回路２０６が出力するクロック信号は正しく第二のマクロ２０５に伝達される。
【００５０】
図１において、クロックツリーソースセル１０１から出力されるクロック信号は、複数段に分岐した第一のクロックツリーセル１０２により信号増幅されたうえで、第一のクロック分岐点１０７を介して、第一のフリップフロップ１０４と第一のクロック選択回路１０６とに伝達され、第一のクロック選択回路１０６から出力されるクロック信号は第一のマクロ１０５に伝達される。
【００５１】
クロックツリーソース１０１から第一のフリップフロップ１０４と第一のマクロ１０５とに供給されるクロック信号は、複数段に分岐した第一のクロックツリーセル１０２と第二のクロックツリーセル１０３とによりクロック遅延調整されたうえで第一のフリップフロップ１０４と第一のマクロ１０５とに供給される。これにより、複数段に分岐した第一のクロックツリーセル１０２より第一のクロック分岐点１０７が後段となり、かつ第一のクロック選択回路１０６が第一のマクロ１０５に近接配置される。
【００５２】
同様に、図１において、クロックツリーソースセル１０１から出力されるクロック信号は、複数段に分岐した第一のクロックツリーセル１０２により信号増幅されたうえで、第二のクロック分岐点２０７を介して、第二のフリップフロップ２０４と第二のマクロ選択回路２０６とに伝達される。第二のマクロ選択回路２０６から出力されるクロック信号は第二のマクロ２０５に伝達される。
【００５３】
クロックツリーソース１０１から第二のフリップフロップ２０４と第二のマクロ２０５とに供給されるクロック信号は、複数段に分岐した第一のクロックツリーセル１０２と第二のクロックツリーセル２０３とによりクロック遅延調整されたうえで第二のフリップフロップ２０４と第二のマクロ２０５とに供給される。これにより、複数段に分岐した第一のクロックツリーセル１０２より第二のクロック分岐点２０７が後段となり、かつ第二のマクロ選択回路２０６が第二のマクロ２０５に近接配置される。
【００５４】
ここで、第一,第二のクロック選択回路１０６,２０６と第一,第二のマクロ１０５,２０５との配置間隔について説明する。微細プロセスとして６５ｎｍプロセスにおいて、
・クロックツリーソースセル１０１と第一,第二のマクロ１０６,２０６との間に第一のクロックツリーセル１０２が挿入配置される、
・総配線長が２０００ｕｍである、
・クロック到達時間が２．０ｎｓである、
場合を例にして、以下の説明を行う。
【００５５】
従来の回路構成においては、第一のクロック選択回路１００６がクロックツリーソースセル１００１の近傍に配置される。そのため、
・クロック選択回路１００１とマクロ１００５との離間間隔が２０００ｕｍである、
・ＯＣＶの影響によるチップ内クロック遅延ばらつきの変動量が２０％である、
とすると、
クロック到達時間（２．０ｎｓ）に対して２０％のＯＣＶ影響が生じることを考慮すれば、共通のクロック経路以外のクロック経路（２０００ｕｍ）において生じるチップ内クロック遅延のばらつき（変動量）は０．４ｎｓとなる。
【００５６】
一方、本発明の回路構成においては、第一,第二のクロック選択回路１０６,２０６と第一,第二のマクロ１０５,２０５との間の離間間隔を２００ｕｍ以内に設定すれば、ＯＣＶの影響によるチップ内クロック遅延ばらつき（変動量）は１０％となる。その結果、共通のクロック経路以外のクロック経路（２００ｕｍ）において、クロック到達時間（０．２ｎｓ）に対して１０％のＯＣＶの影響が生じることを考慮すれば、チップ内クロック遅延ばらつき（変動量）は０．０２ｎｓとなる。
【００５７】
このように、本実施の形態の構成では、第一,第二のマクロ１０５,２０５と第一,第二のクロック分岐点１０７,２０７（さらに具体的にいえば、第一,第二のクロック選択回路１０６,２０６）との間の離間間隔を従来の回路構成に比べて短くすることにより、
・ＯＣＶの影響が低くなる、
・共通のクロック経路の比率が高くなる、
ことから、
設計マージンとして考慮すべきＯＣＶの影響によるチップ内クロック遅延ばらつきの変動量を低減する、
ことが可能になる。
【００５８】
さらに、本実施の形態では、第一,第二のクロック選択回路１０６,２０６を設けるに際して、第一,第二のマクロ１０５,２０５と第一,第二のクロック選択回路１０６,２０６との間に位置するクロック経路において、もう一つの第二のクロックツリーセル１０３,２０３を取り除いている。そのため、第一,第二のクロック選択回路１０６,２０６をより第一のクロックツリーセル１０２に近接配置させることが可能になる。
【００５９】
これにより、各クロック経路の間で生じる遅延差異を最小限に抑えることができて、ＯＣＶの影響によるチップ内クロック遅延ばらつきをさらに低減する、
ことが可能になる。
【００６０】
このように、本実施の形態の構成では、従来の回路構成に比べて、第一,第二のクロック分岐点１０７,２０７（さらに具体的にいえば、第一,第二のクロック選択回路１０６,２０６）を第一,第二のマクロ１０５,２０５により近接配置させることにより、
・ＯＣＶの影響が低くなる、
・共通のクロック経路の比率が高くなる、
ことから、
設計マージンとして考慮すべきＯＣＶの影響によるチップ内クロック遅延ばらつきの変動量を低減する、
ことが可能になる。
【００６１】
さらに、本実施の形態では、第一,第二のクロック選択回路１０６,２０６を設けるに際して、第一,第二のマクロ１０５,２０５と第一,第二のクロック選択回路１０６,２０６との間から、第二のクロックツリーセル１０３,２０３を取り除いた。これにより、第一,第二のクロック選択回路１０６,２０６をより第一のクロックツリーセル１０２に近接配置させることが可能になる。これにより、各クロック経路の間で生じる遅延差異を最小限に抑えることができて、ＯＣＶの影響によるチップ内クロック遅延ばらつきをさらに低減することが可能になる。
【００６２】
なお、本実施例ではＯＣＶの影響によるクロック遅延ばらつきの低減に主眼をおいて説明しているが、一般的なバッファあるいはインバータで構成されるクロック遅延調整や、ホールドタイムの大きいマクロに対して他のクロック同期回路よりも早いクロックを供給するなどのクロック遅延調整は、既存技術にて容易に実現できるものである。
【００６３】
また、本実施例におけるマクロとは、ＳＲＡＭ,ＲＯＭ,ｅＤＲＡＭなどのメモリセルのことであり、フリップフロップの数倍のホールドタイムが必要である。さらには、マクロは、アドレス端子,データ端子,制御端子など多数のフリップフロップとデータ信号の受け渡しがあることから、本発明による面積増加に対する抑制効果が顕著である。
【００６４】
また、クロック選択回路とマクロとの接続は１対１に限定するものではなく、クロック信号を増幅する第二のクロックツリーセル１０３,２０３が不要であれば、第一,第二のクロック選択回路１０６,２０６が出力するクロック信号を複数のマクロに接続しても同様の効果を得ることができ、その場合、クロック選択回路の削減も可能である。
【００６５】
また、第一,第二のクロック選択回路１０６,２０６は単純なゲーティングセルを含むものであり、当該技術者にとっては容易に想像できるものである。
【産業上の利用可能性】
【００６６】
本発明にかかるチップ内クロック遅延ばらつき低減のための回路構成は、ＯＣＶの影響を抑えるためにクロック経路の共通度を高くすることを特徴とし、ＯＣＶの影響によるタイミング収束性悪化,面積増加などによる設計生産性低下を回避するものであり、微細プロセス,多数のマクロを実装する場合、およびセル敷詰率が高い場合にはより効果的である。
【図面の簡単な説明】
【００６７】
【図１】本発明の実施形態の回路構成である。
【図２】従来例の回路構成である。
【符号の説明】
【００６８】
A  第一のクロック経路
Ｂ  第二のクロック経路
１００Ａ  第一のクロックツリー回路
１００Ｂ  第二のクロックツリー回路
１０１  クロックツリーソースセル
１０２  第一のクロックツリーセル
１０３  第二のクロックツリーセル
１０４  第一のフリップフロップ
１０５  第一のマクロ
１０６  第一のクロック選択回路
１０７  第一のクロック分岐点
１１０Ａ  第一のクロック同期回路群
１１０Ｂ  第二のクロック同期回路群
２０２  第二のクロックツリーセル
２０３  第二のクロックツリーセル
２０４  第二のフリップフロップ
２０５  第二のマクロ
２０６  第二のクロック選択回路
２０７  第二のクロック分岐点
【図１】
2009187104.tif 000003
【図２】
2009187104.tif 000004