(57)【要約】【課題】クロックゲーティング用イネーブル信号のオン／オフを切り換えても、供給するクロックにジッタが生じることのないクロックゲーティング方式を提供する。【解決手段】クロックに対するゲーティング適用回路１００およびゲーティング非適用回路２００へクロックを供給するクロックバッファ１の出力端に、ゲーティング適用回路１００へ供給するゲーテッドクロックを生成するゲーティング用論理ゲート回路２と、ゲーティング用論理ゲート回路２と同一の構成を有する負荷調整用論理ゲート回路３とを並列に接続し、ゲーティング用論理ゲート回路２へはクロックゲーティング用イネーブル信号Ｅを入力し、負荷調整用論理ゲート回路３へはイネーブル信号Ｅをインバータ４で極性反転させた反転イネーブル信号ＥＢを入力する。【選択図】図１
2008135941.tif 000002
【特許請求の範囲】
【請求項１】
クロックに対するゲーティング適用回路およびゲーティング非適用回路へクロックを供給するクロックバッファの出力端に、
前記ゲーティング適用回路へ供給するゲーテッドクロックを生成するゲーティング用論理ゲート回路と、前記ゲーティング用論理ゲート回路と同一の構成を有する負荷調整用論理ゲート回路と
を並列に接続し、
前記ゲーティング用論理ゲート回路へはクロックゲーティング用イネーブル信号を入力し、
前記負荷調整用論理ゲート回路へは前記クロックゲーティング用イネーブル信号の極性反転信号を入力する
ことを特徴とするクロックゲーティング方式。
【請求項２】
クロックに対してそれぞれゲーティングを行い、同時にゲーティングイネーブル状態になる最大値がｍ１で最小値がｍ２であるｎ個のゲーティング適用回路およびゲーティング非適用回路へクロックを供給するクロックバッファの出力端に、
前記ｎ個のゲーティング適用回路に供給するそれぞれのゲーテッドクロックを生成するｎ個のゲーティング用論理ゲート回路と、前記ゲーティング用論理ゲート回路と同一の構成を有する（ｍ１−ｍ２）個の負荷調整用論理ゲート回路と
を並列に接続し、
前記ｎ個のゲーティング用論理ゲート回路の中でイネーブル状態になっている論理ゲート回路の数が前記ｍ１より少ないときは、その少ない数の分だけ前記負荷調整用論理ゲート回路がイネーブル状態となるように、前記（ｍ１−ｍ２）個の負荷調整用論理ゲート回路へ入力するイネーブル信号を制御する
ことを特徴とするクロックゲーティング方式。
【請求項３】
前記クロックバッファが、クロックツリーに含まれることを特徴とする請求項１または２に記載のクロックゲーティング方式。
【請求項４】
クロックツリーを構成するクロックバッファの１つには、ゲーティングイネーブル状態が互いに排他的となるゲーテッドクロックを生成するゲーティング用論理ゲート回路のみを接続することを特徴とするクロックゲーティング方式。
【請求項５】
クロックツリーを構成するクロックバッファの１つに複数のゲーティング用論理ゲート回路を接続するときは、ゲーティングイネーブル状態となるゲーテッドクロックの数が常に一定となるよう組み合わせたゲーティング用論理ゲート回路のみを接続することを特徴とするクロックゲーティング方式。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロックゲーティング方式に関し、特にＬＳＩ内部におけるクロックゲーティング方式に関する。
【背景技術】
【０００２】
ＬＳＩの内部回路にスキューの少ないクロックを分配する回路として、クロックバッファをツリー状に接続して構成したクロックツリー回路がある。このクロックツリー回路のツリー末端に配置されたクロックバッファにより、ＬＳＩの内部回路にクロックが供給される。一般に、ツリー末端に配置された１つのクロックバッファは、複数の内部回路ブロック（例えば、フリップフロップ）に対してクロックを供給する。
【０００３】
一方、ＬＳＩの消費電力を低減させる手法の１つとして、クロックゲーティング方式がある。クロックゲーティング方式ではＬＳＩの内部回路へのクロック信号の供給をイネーブル信号で制御し、内部回路が非動作時には内部回路へのクロックの供給を停止して、ＬＳＩの消費電力の低減を図るものである。
【０００４】
そこで、このクロックゲーティング方式を適用して、上述のクロックツリー回路を生成するゲーテッドクロックツリーシンセシス方法が提案されている（例えば、特許文献１参照。）。
【０００５】
従来、上述のような方法でゲーテッドクロックを発生させるクロックツリー回路を生成する場合、イネーブル信号を入力するゲーティング用論理ゲート回路（例えば、ＡＮＤゲート）の入力容量は、イネーブル信号が‘Ｈ’レベルのときも‘Ｌ’レベルのときも一定とみなして、クロックツリーのディレイ値の計算が行われていた。
【０００６】
ところが、近年のＬＳＩの微細化の進展に伴い、上述のゲーティング用論理ゲート回路を構成するＭＯＳトランジスタのゲート電極とドレイン電極間の寄生容量であるゲートオーバーラップ容量が増大し、このゲートオーバーラップ容量のミラー効果による影響が無視できなくなってきた。
【０００７】
ミラー効果を考慮すると、イネーブル信号が‘Ｈ’（オン）のときの上述のゲーティング用論理ゲート回路のゲートオーバーラップ容量は、イネーブル信号が‘Ｌ’（オフ）のときに対して、２倍の大きさになる。すなわち、イネーブル信号のオン／オフの切り替えにより、上述のゲーティング用論理ゲート回路の入力容量が変動する。したがって、ゲートオーバーラップ容量が増大するにつれ、このイネーブル信号のオン／オフの切り替えによるゲーティング用論理ゲート回路の入力容量の変動が大きくなる。
【０００８】
これは、このゲーティング用論理ゲート回路を駆動するクロックバッファの負荷容量が、イネーブル信号のオン／オフの切り替えによって大きく変動することを意味する。言い換えれば、ゲーティング用論理ゲート回路を駆動するクロックバッファの出力ディレイが、イネーブル信号のオン／オフの切り替えによって大きく変動することを意味する。
【０００９】
ところで、このゲーティング用論理ゲート回路を駆動するクロックバッファが、ゲーティング非適用の回路に対してもクロックを供給することがある。
【００１０】
そのような場合、イネーブル信号のオン／オフの切り替えによって、ゲーティング用論理ゲート回路を駆動するクロックバッファの出力ディレイが変動することは、ゲーティング非適用の回路にとっては、クロックにジッタが生じることを意味する。
【００１１】
すなわち、従来のゲーテッドクロックを発生させるクロックツリー回路では、クロックゲーティング用イネーブル信号のオン／オフの切り換えによって、ゲーティング用論理ゲート回路を駆動するクロックバッファの出力にジッタが生じる、という問題があった。
【特許文献１】特開２００１−３０６６４２号公報  （第４ページ、図６）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
そこで、本発明の目的は、クロックゲーティング用イネーブル信号のオン／オフを切り換えても、供給するクロックのジッタの発生を抑制するクロックゲーティング方式を提供することにある。
【課題を解決するための手段】
【００１３】
本発明の一態様によれば、クロックに対するゲーティング適用回路およびゲーティング非適用回路へクロックを供給するクロックバッファの出力端に、前記ゲーティング適用回路へ供給するゲーテッドクロックを生成するゲーティング用論理ゲート回路と、前記ゲーティング用論理ゲート回路と同一の構成を有する負荷調整用論理ゲート回路とを並列に接続し、前記ゲーティング用論理ゲート回路へはクロックゲーティング用イネーブル信号を入力し、前記負荷調整用論理ゲート回路へは前記クロックゲーティング用イネーブル信号の極性反転信号を入力することを特徴とするクロックゲーティング方式が提供される。
【００１４】
また、本発明の別の一態様によれば、クロックに対してそれぞれゲーティングを行い、同時にゲーティングイネーブル状態になる最大値がｍ１で最小値がｍ２であるｎ個のゲーティング適用回路およびゲーティング非適用回路へクロックを供給するクロックバッファの出力端に、前記ｎ個のゲーティング適用回路に供給するそれぞれのゲーテッドクロックを生成するｎ個のゲーティング用論理ゲート回路と、前記ゲーティング用論理ゲート回路と同一の構成を有する（ｍ１−ｍ２）個の負荷調整用論理ゲート回路とを並列に接続し、前記ｎ個のゲーティング用論理ゲート回路の中でイネーブル状態になっている論理ゲート回路の数が前記ｍ１より少ないときは、その少ない数の分だけ前記負荷調整用論理ゲート回路がイネーブル状態となるように、前記（ｍ１−ｍ２）個の負荷調整用論理ゲート回路へ入力するイネーブル信号を制御することを特徴とするクロックゲーティング方式が提供される。
【００１５】
また、本発明のさらに別の一態様によれば、クロックツリーを構成するクロックバッファの１つには、ゲーティングイネーブル状態が互いに排他的となるゲーテッドクロックを生成するゲーティング用論理ゲート回路のみを接続することを特徴とするクロックゲーティング方式が提供される。
【００１６】
また、本発明のさらに別の一態様によれば、クロックツリーを構成するクロックバッファの１つに複数のゲーティング用論理ゲート回路を接続するときは、ゲーティングイネーブル状態となるゲーテッドクロックの数が常に一定となるよう組み合わせたゲーティング用論理ゲート回路のみを接続することを特徴とするクロックゲーティング方式が提供される。
【発明の効果】
【００１７】
本発明によれば、クロックゲーティング用イネーブル信号のオン／オフを切り換えてもゲーティング用論理ゲート回路を駆動するクロックバッファの負荷容量に変動を生じないのでクロックバッファの出力ディレイが一定となり、このクロックバッファから供給するクロックにジッタが生じることを抑制することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施例を図面を参照して説明する。
【実施例１】
【００１９】
図１は、本発明の実施例１に係るクロックゲーティング方式の回路例を示す。
【００２０】
クロックバッファ１は、クロックに対するゲーティング適用回路１００およびゲーティング非適用回路２００へクロックを供給する。
【００２１】
クロックバッファ１の出力は、ゲーティング用論理回路２（本実施例ではＮＡＮＤ）およびインバータ５を介してゲーティング適用回路１００へ入力され、スキュー調整用論理回路３００を介してゲーティング非適用回路２００へ入力される。ここで、スキュー調整用論理回路３００は、例えばゲーティング用論理回路２とインバータ５と同じ構成の回路として、ゲーティング適用回路１００とゲーティング非適用回路２００との間でクロックスキューが生じないように、ゲーティング適用回路１００へ入力さクロックバッファ１の出力ディレイを調整する回路である。
【００２２】
ゲーティング用論理回路２へは、クロックゲーティング用のイネーブル信号Ｅが入力される。ゲーティング用論理回路２は、クロックバッファ１から出力されるクロックをイネーブル信号Ｅが‘Ｈ’のときに通過させ、イネーブル信号Ｅが‘Ｌ’のときに阻止する。
【００２３】
このゲーティング用論理回路２とともに、本実施例のクロックゲーティング方式では、クロックバッファ１の出力端に、ゲーティング用論理回路２と同じ構成を有する負荷調整用論理回路３を、ゲーティング用論理回路２と並列に接続する。
【００２４】
負荷調整用論理回路３へは、イネーブル信号Ｅをインバータ４で極性判定させた反転イネーブル信号ＥＢを入力する。
【００２５】
すなわち、負荷調整用論理回路３と、ゲーティング用論理回路２とでは、ゲーティングイネーブルのオン／オフ状態が相補的である。そのため、負荷調整用論理回路３のゲートオーバーラップ容量に対するミラー効果は、ゲーティング用論理回路２のゲートオーバーラップ容量に対するミラー効果に対して相補的に働く。その様子を図２に示す。
【００２６】
図２は、ゲーティング用論理回路２および負荷調整用論理回路３をＭＯＳトランジスタ回路で表し、イネーブル信号Ｅのオン／オフによるミラー効果発生の有無により、ゲーティング用論理回路２および負荷調整用論理回路３ゲートオーバーラップ容量が変動する様子を示したものである。
【００２７】
ここで、ゲーティング用論理回路２および負荷調整用論理回路３において、クロック信号が入力されるＭＯＳトランジスタのゲート電極とドレイン電極間のゲートオーバーラップ容量の大きさについて、ミラー効果があるときをＣｏｖＯＮと表し、ミラー効果がないときをＣｏｖＯＦＦと表す。
【００２８】
図２（ａ）は、イネーブル信号Ｅが‘１’のときのゲーティング用論理回路２および負荷調整用論理回路３のゲートオーバーラップ容量の大きさを示す。
【００２９】
イネーブル信号Ｅが‘１’のとき、ゲーティング用論理回路２のクロック信号が入力されるＭＯＳトランジスタのゲート電極とドレイン電極間のゲートオーバーラップ容量にはミラー効果が発生し、その容量値はＣｏｖＯＮとなる。一方、負荷調整用論理回路３のクロック信号が入力されるＭＯＳトランジスタのゲート電極とドレイン電極間のゲートオーバーラップ容量にはミラー効果が発生しないため、その容量値はＣｏｖＯＦＦとなる。
【００３０】
ここで、それぞれのゲート容量値をＣｇ１、Ｃｇ２として、ゲーティング用論理回路２および負荷調整用論理回路３の入力容量値を算出すると、それぞれ、（Ｃｇ１＋ＣｏｖＯＮ）、（Ｃｇ２＋ＣｏｖＯＦＦ）となる。
【００３１】
これより、クロックバッファ１からゲーティング用論理回路２を見たときのゲーティング用論理回路２側の総入力容量値Ｃｉｎを算出すると、Ｃｉｎ＝（Ｃｇ１＋ＣｏｖＯＮ）＋（Ｃｇ２＋ＣｏｖＯＦＦ）＝（Ｃｇ１＋Ｃｇ２）＋（ＣｏｖＯＮ＋ＣｏｖＯＦＦ）となる。
【００３２】
これに対して、図２（ｂ）は、イネーブル信号Ｅが‘０’のときのゲーティング用論理回路２および負荷調整用論理回路３のゲートオーバーラップ容量の大きさを示す。
【００３３】
このときは、図２（ａ）に示した状態とは逆に、ゲーティング用論理回路２のクロック信号が入力されるＭＯＳトランジスタのゲート電極とドレイン電極間のゲートオーバーラップ容量の容量値はＣｏｖＯＦＦとなり、負荷調整用論理回路３のクロック信号が入力されるＭＯＳトランジスタのゲート電極とドレイン電極間のゲートオーバーラップ容量の容量値はＣｏｖＯＮとなる。
【００３４】
したがって、この場合、ゲーティング用論理回路２および負荷調整用論理回路３の入力容量値は、それぞれ、（Ｃｇ１＋ＣｏｖＯＦＦ）、（Ｃｇ２＋ＣｏｖＯＮ）となる。すなわち、それぞれの入力容量値は、図２（ａ）に示した状態からは変動している。
【００３５】
しかし、クロックバッファ１からゲーティング用論理回路２を見たときのゲーティング用論理回路２側の総入力容量値Ｃｉｎを求めると、Ｃｉｎ＝（Ｃｇ１＋ＣｏｖＯＦＦ）＋（Ｃｇ２＋ＣｏｖＯＮ）＝（Ｃｇ１＋Ｃｇ２）＋（ＣｏｖＯＮ＋ＣｏｖＯＦＦ）となり、図２（ａ）に示した状態のときと同じ値になる。
【００３６】
これは、ゲートオーバーラップ容量に対するミラー効果によってゲーティング用論理回路２に生じる入力容量の変動を、負荷調整用論理回路３の追加により防止できることを示す。
【００３７】
上述したように、負荷調整用論理回路３の追加により、イネーブル信号Ｅのオン／オフにかかわらず、クロックバッファ１からゲーティング用論理回路２を見たときの総入力容量値Ｃｉｎが一定になることは、クロックバッファ１の負荷容量が一定になることを意味する。このことは、クロックバッファ１の出力ディレイが、イネーブル信号Ｅのオン／オフにかかわらず、一定になることを意味する。すなわち、イネーブル信号Ｅのオン／オフを切り換えても、クロックバッファ１の出力信号のジッタが生じない。
【００３８】
図３に、この負荷調整用論理回路３の追加によるジッタ抑制効果の様子を波形図で示す。
【００３９】
クロックバッファ１へ入力されるクロックの周期をＴｃとし、負荷調整用論理回路３がなかったときのクロックバッファ１の出力ディレイが、イネーブル信号Ｅが‘１’のときにＴｄ１、イネーブル信号Ｅが‘０’のときにＴｄ２であったとする。
【００４０】
その場合、負荷調整用論理回路３がなかったとき（従来）のクロックバッファ１の出力信号の周期は、イネーブル信号Ｅが‘１’から‘０’へ切り換わったときは、Ｔ１＝Ｔｃ−（Ｔｄ１−Ｔｄ２）となり、イネーブル信号Ｅが‘０’から‘１’へ切り換わったときは、Ｔ２＝Ｔｃ＋（Ｔｄ１−Ｔｄ２）となっていた。そのため、イネーブル信号Ｅの切り換えにより、クロックバッファ１の出力信号には、±（Ｔｄ１−Ｔｄ２）のジッタが生じていた。
【００４１】
これに対して、本実施例に示す負荷調整用論理回路３を追加することにより、イネーブル信号Ｅのオン／オフにかかわらずクロックバッファ１の負荷容量が一定になり、クロックバッファ１の出力ディレイは、一定値Ｔｄになる。したがって、イネーブル信号Ｅの切り換えがあってもクロックバッファ１の出力信号の周期は一定しており、ジッタは発生しなくなる。
【００４２】
すなわち、上述したような本実施例によれば、負荷調整用論理ゲート回路を付加することにより、クロックゲーティング用イネーブル信号のオン／オフを切り換えても、ゲーティング用論理ゲート回路を駆動するクロックバッファの負荷容量に変動を生じさせないようにすることができる。それにより、クロックバッファの出力ディレイを一定にすることができ、このクロックバッファから供給するクロックにジッタが生じることを防止することができる。
【実施例２】
【００４３】
本発明の実施例２では、クロックバッファが、複数のゲーティング適用回路へ、クロックイネーブル期間が異なるゲーティングクロックを供給するときでも、クロックバッファの出力信号にジッタを生じさせないクロックゲーティング方式を示す。
【００４４】
図４は、実施例２に係るクロックゲーティング方式の回路例を示す。
【００４５】
クロックバッファ１は、ｎ個のゲーティング適用回路１０１〜１０ｎおよびゲーティング非適用回路２００へクロックを供給する。
【００４６】
ゲーティング適用回路１０１〜１０ｎへ供給するそれぞれのゲーテッドクロックは、イネーブル信号Ｅ１、Ｅ２、・・・、Ｅｎがそれぞれに入力されるゲーティング用論理回路２１、２２、・・・、２ｎにより、それぞれ生成される。
【００４７】
ここで、イネーブル信号Ｅ１〜Ｅｎは、クロックゲーティングのイネーブル期間はそれぞれ異なるが、同時にイネーブルになる期間が重なるイネーブル信号が、最大でｍ１個、最小でｍ２個あるものとする。そのため、ゲーティング用論理回路２１〜２ｎのクロック信号が入力される端子のゲートオーバーラップ容量のうち、最大ｍ１個、最小ｍ２個のゲートオーバーラップ容量にミラー効果が同時に発生し、そのゲートオーバーラップ容量値が変動する。この容量値が変動するゲートオーバーラップ容量の個数の最大値をｍと表すと、ｍ＝（ｍ１−ｍ２）となる。
【００４８】
このゲートオーバーラップ容量値の変動を補償するために、本実施例では、ｍ個の負荷調整用論理回路３１〜３ｍを、クロックバッファ１の出力端に、ゲーティング用論理回路２１〜２ｎと並列に接続する。
【００４９】
負荷調整用論理回路３１〜３ｍに対して、イネーブル信号生成部１０から、負荷調整用イネーブル信号ＥＤ１〜ＥＤｍをそれぞれに入力する。
【００５０】
イネーブル信号生成部１０は、イネーブル信号Ｅ１〜Ｅｎの同時にイネーブル・オンとなる信号の数を検出し、その数が最大値ｍ１より少ないときは、その少ない数の分だけ、負荷調整用イネーブル信号ＥＤ１〜ＥＤｍがイネーブル・オンとなるように、負荷調整用イネーブル信号ＥＤ１〜ＥＤｍの信号レベルを制御する。
【００５１】
このような負荷調整用イネーブル信号ＥＤ１〜ＥＤｍの制御により、ゲーティング用論理回路２１〜２ｎと負荷調整用論理回路３１〜３ｍとを合計して（ｎ＋ｍ）個となる、クロック信号が入力される端子のゲートオーバーラップ容量の中で、ミラー効果の影響を受けるゲートオーバーラップ容量の数を常にｍ１個とすることができる。すなわち、クロックバッファ１の負荷容量の大きさを一定にすることができる。
【００５２】
これを数式で表すと次のように表現される。
【００５３】
イネーブル信号Ｅ１〜Ｅｎの中である瞬間同時にイネーブルとなるものの個数をｋ個とすると、次の関係が成り立つ。
【００５４】
ｍ２  ≦  ｋ  ≦  ｍ１  ≦  ｎ
ここで、図４のクロックバッファ１のＮＤ２負荷のうちCｏｖON負荷容量として作用するものの個数をＳＯＮ、ＣｏｖＯＦＦ負荷容量として作用するものの個数をＳＯＦＦと表すと、
ＳＯＮ＝ｋ＋（ｍ１−ｋ）＝ｍ１                         ・・ミラー効果あり
ＳＯＦＦ＝（ｎ−ｋ）＋｛ｍ−（ｍ１−ｋ）｝＝ｎ−ｍ２   ・・ミラー効果なし
となり、これより
ＳＯＮ＋ＳＯＦＦ＝ｍ１＋ｎ−ｍ２＝ｎ＋ｍ
となる。
【００５５】
上式から明らかなように、CｏｖON負荷容量として作用するものはｍ１個、ＣｏｖＯＦＦ負荷容量として作用するものは（ｎ−ｍ２）個といずれもｋに依存しない一定値となることが分かる。
【００５６】
図５に、本実施例のゲーティング方式の具体的な適用例を示す。ここでは、ゲーティング適用回路の数ｎが、ｎ＝４であり、クロックゲーティングのイネーブル期間が重なるイネーブル信号の数の最大値ｍ１、最小値ｍ２が、それぞれ、ｍ１＝３、ｍ２＝１であるとする。ｍ１＝３、ｍ２＝１であるので、負荷調整用論理回路の個数ｍは、ｍ＝２（＝ｍ１−ｍ２＝３−１）となる。
【００５７】
図６は、図５に示すイネーブル信号生成部１０による負荷調整用イネーブル信号ＥＤ１、ＥＤ２の制御の様子を示す。
【００５８】
イネーブル信号生成部１０は、同時にイネーブル・オンとなるイネーブル信号Ｅ１〜Ｅ４の数が３のときは、負荷調整用イネーブル信号ＥＤ１、ＥＤ２をともにイネーブル・オフとし、同時にイネーブル・オンとなるイネーブル信号Ｅ１〜Ｅ４の数が２のときは、例えば負荷調整用イネーブル信号ＥＤ１のみをイネーブル・オンとし、同時にイネーブル・オンとなるイネーブル信号Ｅ１〜Ｅ４の数が１のときは、負荷調整用イネーブル信号ＥＤ１、ＥＤ２をともにイネーブル・オンとする。
【００５９】
このような負荷調整用イネーブル信号ＥＤ１、ＥＤ２の制御により、ゲーティング用論理回路２１〜２４と負荷調整用論理回路３１〜３２とを合計して６個ある、クロック信号が入力される端子のゲートオーバーラップ容量の中で、ミラー効果の影響を受けるゲートオーバーラップ容量の数を常に３個とすることができる。
【００６０】
このような本実施例によれば、複数のゲーティング適用回路のそれぞれへ、イネーブル期間の異なるゲーテッドクロックを供給するクロックバッファであっても、その出力負荷容量を一定にすることができる。これにより、クロックバッファの出力ディレイが一定となり、このクロックバッファから供給するクロックにジッタが生じることを防止することができる。
【実施例３】
【００６１】
実施例１あるいは実施例２で示したクロックバッファがクロックツリーに含まれるクロックバッファであるときも、実施例１あるいは実施例２で示したクロックゲーティング方式を使用することができる。
【００６２】
図７は、クロックツリー５００に含まれるクロックバッファ１ａおよびクロックバッファ１ｂのそれぞれに、実施例１で示したクロックゲーティング方式を適用した例を示す。
【００６３】
ゲーティング適用回路１００ａへクロックを供給するクロックバッファ１ａの出力端には、イネーブル信号Ｅａが入力されるゲーティング用論理回路２ａと並列に負荷調整用論理回路３ａを接続する。負荷調整用論理回路３ａには、イネーブル信号Ｅａをインバータ４ａで反転させた信号を入力する。
【００６４】
同様に、ゲーティング適用回路１００ｂへクロックを供給するクロックバッファ１ｂの出力端には、イネーブル信号Ｅｂが入力されるゲーティング用論理回路２ｂと並列に負荷調整用論理回路３ｂを接続する。負荷調整用論理回路３ｂａには、イネーブル信号Ｅｂをインバータ４ｂで反転させた信号を入力する。
【００６５】
このように、クロックツリー５００に含まれるクロックバッファ１ａおよびクロックバッファ１ｂのそれぞれに、実施例１で示したクロックゲーティング方式を適用することにより、イネーブル信号Ｅａおよびイネーブル信号Ｅｂのオン／オフにかかわらず、クロックバッファ１ａおよびクロックバッファ１ｂの出力信号にジッタを生じさせないようにすることができる。
【００６６】
このような本実施例によれば、クロックツリーに含まれる複数のクロックバッファのそれぞれからゲーテッドクロックを生成するときに、それぞれのクロックバッファの出力信号にジッタが生じさせないようにすることができるので、それぞれのクロックバッファで駆動される回路相互間で信号の受け渡しを行うときに、クロックに対するタイミングマージン不足が発生することを防止することができる。
【実施例４】
【００６７】
本実施例では、クロックツリーを構成するクロックバッファの１つには、ゲーティングイネーブル状態が互いに排他的となるゲーテッドクロックを生成するゲーティング用論理ゲート回路のみを接続するようにしたクロックゲーティング方式の例を示す。
【００６８】
図８は、イネーブル信号Ｅａ１とイネーブル信号Ｅａ２、およびイネーブル信号Ｅｂ１とイネーブル信号Ｅｂ２が、互いに排他的なイネーブル状態を作るイネーブル信号の組み合わせであるときのクロックゲーティング方式の例である。図９に、イネーブル信号Ｅａ１とイネーブル信号Ｅａ２、およびイネーブル信号Ｅｂ１とイネーブル信号Ｅｂ２の信号変化の例を示す。
【００６９】
本実施例では、クロックツリーに含まれる１つのクロックバッファには、互いに排他的なイネーブル状態を作るイネーブル信号が入力されるゲーティング用論理回路のみを接続する。
【００７０】
すなわち、図８では、クロックツリー５００に含まれるクロックバッファ１ａには、イネーブル信号Ｅａ１が入力されるゲーティング用論理回路２ａ１と、イネーブル信号Ｅａ２が入力されるゲーティング用論理回路２ａ２のみを接続し、同じくクロックツリー５００に含まれるクロックバッファ１ｂには、イネーブル信号Ｅｂ１が入力されるゲーティング用論理回路２ｂ１と、イネーブル信号Ｅｂ２が入力されるゲーティング用論理回路２ｂ２のみを接続する。
【００７１】
これにより、ゲーティング用論理回路２ａ１とゲーティング用論理回路２ａ２のイネーブルのオン／オフの切り換えは互いに逆となる。また、ゲーティング用論理回路２ｂ１とゲーティング用論理回路２ｂ２のイネーブルのオン／オフの切り換えも互いに逆となる。
【００７２】
そのため、イネーブル信号のオン／オフの切り替えによる、ゲーティング用論理回路２ａ１のゲートオーバーラップ容量に対するミラー効果と、ゲーティング用論理回路２ａ２のゲートオーバーラップ容量に対するミラー効果が、交互に発生する。同様に、ゲーティング用論理回路２ｂ１のゲートオーバーラップ容量に対するミラー効果と、ゲーティング用論理回路２ｂ２のゲートオーバーラップ容量に対するミラー効果も、交互に発生する。
【００７３】
したがって、イネーブル信号のオン／オフを切り替えても、クロックバッファ１ａおよびクロックバッファ１ｂの負荷容量は常に一定であり、その出力ディレイも一定となる。これにより、クロックバッファ１ａおよびクロックバッファ１ｂから供給するクロックにジッタが生じることを防止できる。
【００７４】
このような本実施例によれば、クロックツリーに含まれるクロックバッファの出力端に、ジッタを防止するための負荷調整用論理回路を追加接続する必要がないので、ＬＳＩの回路規模の増大を防止することができる。
【実施例５】
【００７５】
本実施例では、クロックツリーを構成するクロックバッファの１つに複数のゲーティング用論理ゲート回路を接続するときは、ゲーティングイネーブル状態となるゲーテッドクロックの数が常に一定となるよう組み合わせたゲーティング用論理ゲート回路のみを接続するようにしたクロックゲーティング方式の例を示す。
【００７６】
図１０は、ｎ個のイネーブル信号Ｅａ１〜Ｅａｎが、同時にイネーブル状態となる数が常に一定の値ｍ（０＜ｍ＜ｎ）であるイネーブル信号の組み合わせであるときのクロックゲーティング方式の例である。図１１に、イネーブル信号Ｅａ１〜Ｅａｎの信号変化の例を示す。
【００７７】
本実施例では、クロックツリーに含まれる１つのクロックバッファには、同時にイネーブル状態となる数が常に一定であるように組み合わせたイネーブル信号が入力されるゲーティング用論理回路のみを接続する。
【００７８】
すなわち、図１０では、クロックツリー５００に含まれるクロックバッファ１ａには、同時にイネーブル状態となる数が常に一定値ｍであるイネーブル信号Ｅａ１〜Ｅａｎが入力されるゲーティング用論理回路２ａ１〜２ａｎのみを接続する。
【００７９】
このゲーティング用論理回路２ａ１〜２ａｎのクロック入力端子にはそれぞれゲートオーバーラップ容量が存在するため、クロックバッファ１ａの出力負荷容量にはｎ個のゲートオーバーラップ容量が含まれる。
【００８０】
ここで、イネーブル信号Ｅａ１〜Ｅａｎのうち同時にイネーブル状態になるイネーブル信号の数は常にｍであるので、クロックバッファ１ａの出力負荷容量に含まれるｎ個のゲートオーバーラップ容量のうち、ミラー効果が発生するゲートオーバーラップ容量の数は常に一定値ｍである。
【００８１】
したがって、イネーブル信号Ｅａ１〜Ｅａｎのオン／オフがどのように切り換わっても、クロックバッファ１ａの出力負荷容量の大きさは常に一定となる。そのため、クロックバッファ１ａの出力ディレイも一定であり、イネーブル信号Ｅａ１〜Ｅａｎのオン／オフがどのように切り換わっても、クロックバッファ１ａから供給するクロックにジッタは生じない。
【００８２】
このような本実施例によれば、クロックツリーを構成するクロックバッファが、異なるゲーテッドクロックを生成する多数のゲーティング用論理ゲート回路へクロックを供給するときも、このクロックバッファの出力にジッタが生じることを防止することができる。
【図面の簡単な説明】
【００８３】
【図１】本発明の実施例１に係るクロックゲーティング方式の例を説明するための回路図。
【図２】ゲートオーバーラップ容量のミラー効果を説明するための図。
【図３】ジッタ抑制効果の様子を示す波形図。
【図４】本発明の実施例２に係るクロックゲーティング方式の例を説明するための回路図。
【図５】本発明の実施例２に係るクロックゲーティング方式を適用した例を示す回路図。
【図６】図５に示した回路のイネーブル信号制御の例を示す波形図。
【図７】本発明の実施例３に係るクロックゲーティング方式の例を説明するための回路図。
【図８】本発明の実施例４に係るクロックゲーティング方式の例を説明するための回路図。
【図９】図８に示した回路に入力されるイネーブル信号の例を示す波形図。
【図１０】本発明の実施例５に係るクロックゲーティング方式の例を説明するための回路図。
【図１１】図１０に示した回路に入力されるイネーブル信号の例を示す波形図。
【符号の説明】
【００８４】
１、１ａ〜１ｄ  クロックバッファ
２、２１〜２ｎ、２ａ、３ａ、２ａ１〜２ａｎ、２ｂ、３ｂ、２ｂ１、２ｂ２  ゲーティング用論理回路
３、３１〜３ｍ、３ａ、３ｂ  負荷調整用論理回路
４、４ａ、４ｂ、５、５１〜５ｎ、５ａ、５ａ１〜５ａｎ、５ｂ、５ｂ１、５ｂ２  インバータ
１０  イネーブル信号生成部
５００  クロックツリー
【図１】
2008135941.tif 000003
【図２】
2008135941.tif 000004
【図３】
2008135941.tif 000005
【図４】
2008135941.tif 000006
【図５】
2008135941.tif 000007
【図６】
2008135941.tif 000008
【図７】
2008135941.tif 000009
【図８】
2008135941.tif 000010
【図９】
2008135941.tif 000011
【図１０】
2008135941.tif 000012
【図１１】
2008135941.tif 000013