(57)【要約】【課題】クロック同期回路を使用した半導体論理回路において、より効果的に消費電力を減少して動作するクロック分配回路およびその方法を提供。【解決手段】クロック分配回路10は、クロックイネーブル信号102に応じてクロック生成回路20ならびに22でゲーテッドクロック信号108ならびに110を生成し、クロック同期回路12および14、ならびに16および18に供給することにより、クロック信号のトグルで消費していた電力を減少することができる。【選択図】図１
2006072777.tif 000002
【特許請求の範囲】
【請求項１】
データ信号を入力し、該データ信号のクロック同期をとって出力信号として出力するクロック同期手段を含むクロック分配回路において、該回路は、
クロックイネーブル信号を入力し、該クロックイネーブル信号に応じてゲーテッドクロック信号を生成して出力する１つ以上のクロック生成手段を含み、
該１つ以上のクロック生成手段は、それぞれ１つ以上の前記クロック同期手段と接続して、前記ゲーテッドクロック信号を同時に供給することを特徴とするクロック分配回路。
【請求項２】
請求項１に記載のクロック分配回路において、前記１つ以上のクロック生成手段は、それぞれ、複数のインバータをリング状に接続するリングオシレータであることを特徴とするクロック分配回路。
【請求項３】
請求項１または２に記載のクロック分配回路において、前記１つ以上のクロック同期手段は、ぞれぞれ、前記ゲーテッドクロック信号を入力するタイミングを調整する第１の遅延手段を有して、前記ゲーテッドクロック信号を同時に入力する含むことを特徴とするクロック分配回路。
【請求項４】
請求項１ないし３のいずれかに記載のクロック分配回路において、前記１つ以上のクロック生成手段は、それぞれ、前記クロックイネーブル信号を入力するタイミングを調整する第２の遅延手段を有して、前記クロックイネーブル信号を同時に入力することを特徴とするクロック分配回路。
【請求項５】
請求項４に記載のクロック分配回路において、該回路は、複数種類のクロックイネーブル信号を入力し、前記１つ以上のクロック生成手段は、それぞれ、前記複数種類のクロックイネーブル信号のいずれか一つを第２の遅延手段を介して入力することを特徴とするクロック分配回路。
【請求項６】
請求項１ないし５のいずれかに記載のクロック分配回路において、前記１つ以上のクロック生成手段は、それぞれ、ゲーテッドクロック同期信号を入力し、該ゲーテッドクロック同期信号に応じて、前記ゲーテッドクロック信号に蓄積されたスキューをキャンセルすることを特徴とするクロック分配回路。
【請求項７】
請求項１ないし６のいずれかに記載のクロック分配回路において、前記１つ以上のクロック生成手段は、それぞれ、前記ゲーテッドクロック同期信号を入力するタイミングを調整する第３の遅延手段を有することを特徴とするクロック分配回路。
【請求項８】
データ信号を入力し、該データ信号のクロック同期をとって出力信号として出力するクロック同期工程を含むクロック分配方法において、該方法は、
クロックイネーブル信号を入力し、該クロックイネーブル信号に応じてゲーテッドクロック信号を生成して出力する１つ以上のクロック生成工程を含み、
該１つ以上のクロック生成工程は、それぞれ１つ以上の前記クロック同期工程と接続して、前記ゲーテッドクロック信号を同時に供給することを特徴とするクロック分配方法。
【請求項９】
請求項８に記載のクロック分配方法において、前記１つ以上のクロック生成工程は、それぞれ、複数のインバータをリング状に接続するリングオシレータであることを特徴とするクロック分配方法。
【請求項１０】
請求項８または９に記載のクロック分配方法において、前記１つ以上のクロック同期工程は、ぞれぞれ、前記ゲーテッドクロック信号を入力するタイミングを調整する第１の遅延工程を有して、前記ゲーテッドクロック信号を同時に入力する含むことを特徴とするクロック分配方法。
【請求項１１】
請求項８ないし１０のいずれかに記載のクロック分配方法において、前記１つ以上のクロック生成工程は、それぞれ、前記クロックイネーブル信号を入力するタイミングを調整する第２の遅延工程を有して、前記クロックイネーブル信号を同時に入力することを特徴とするクロック分配方法。
【請求項１２】
請求項１１に記載のクロック分配方法において、該方法は、複数種類のクロックイネーブル信号を入力し、前記１つ以上のクロック生成工程は、それぞれ、前記複数種類のクロックイネーブル信号のいずれか一つを第２の遅延工程を介して入力することを特徴とするクロック分配方法。
【請求項１３】
請求項８ないし１２のいずれかに記載のクロック分配方法において、前記１つ以上のクロック生成工程は、それぞれ、ゲーテッドクロック同期信号を入力し、該ゲーテッドクロック同期信号に応じて、前記ゲーテッドクロック信号に蓄積されたスキューをキャンセルすることを特徴とするクロック分配方法。
【請求項１４】
請求項８ないし１３のいずれかに記載のクロック分配方法において、前記１つ以上のクロック生成工程は、それぞれ、前記ゲーテッドクロック同期信号を入力するタイミングを調整する第３の遅延工程を有することを特徴とするクロック分配方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロック同期回路を使用した半導体論理回路において、消費電力を減少して動作するクロック分配回路およびその方法に関するものである。
【背景技術】
【０００２】
従来から、クロック信号を利用するCPU（Central Processing Unit）やDSP（Digital Signal Processor）などのシステムLSI（Large Scale Integration）の論理回路では、通常、クロック同期回路が使用され、クロック同期回路は、フリップフロップ回路で構成することができる。このフリップフロップ回路は、データ入力端子D、クロック入力端子Cおよびデータ出力端子Qを設け、クロック入力端子Cに入力されるクロック信号CLKによりクロック同期を制御するものがある。このようなクロック信号CLKは、クロック同期制御が必要な各回路に備えられたフリップフロップ回路すべてに入力され、これらの回路では、同一のクロック信号CLKによってクロック同期が取られている。
【０００３】
このようなクロック同期回路を適用したクロック分配回路400は、たとえば、図８に示すように、クロック同期回路としてフリップフロップ回路402および404を有して、それぞれ遅延回路406および408を介して入力するクロック信号CLKに応じて、データ信号のクロック同期を制御する。ここでは、図９に示すような信号波形のデータ信号およびクロック信号をやりとりする。
【０００４】
このクロック分配回路400では、まず、フリップフロップ402の入力端子Dにデータ信号DATA1が入力する。フリップフロップ402では、図９に示すように、データ信号DATA1が、クロック信号CLKのライズエッジAで取り込まれ、このライズエッジAに同期した出力信号DATA2が、出力端子Qから出力される。この出力信号DATA2は、組み合わせ回路410で演算処理されて、その演算結果であるデータ信号DATA3がフリップフロップ404の入力端子Dへ入力する。フリップフロップ404では、図９に示すように、データ信号DATA3が、クロック信号CLKのライズエッジBで取り込まれ、クロック信号CLKのライズエッジBに同期した出力信号DATA4が、出力端子Qから出力される。このように、クロック同期回路では、データ信号はクロック信号CLKのライズエッジに応じて出力され、次のライズエッジまでの間に演算処理が行われて、その演算結果は、次のライズエッジに応じて取り込まれる。
【０００５】
このように、クロック信号CLKは、クロック分配回路400におけるすべてのフリップフロップのクロック信号入力端子Cに入力されるが、論理回路に適用すると、その動作が複雑多様化され、回路規模の著しい増大に伴い回路面積が拡張化され、さらに各フリップフロップが回路内に点在するため、クロック信号CLKの供給元から各フリップフロップまでの距離が相違する。これにより、クロック信号CLKのフリップフロップヘの入力タイミングには、遅延差（クロックスキュー）が発生してしまう。このクロックスキューを減少するため、図８に示すように、各クロック同期回路に、クロック信号CLKの入力タイミングを調整する遅延回路を設けている。たとえば、フリップフロップがクロック信号入力部から遠い場合には、遅延回路に少ない遅延素子を組み込み、近い場合には、遅延回路に多くの遅延素子を組み込むことにより、クロックスキューの減少を図っている。
【０００６】
また、クロック信号CLKは、LSI論理回路の動作時には常に入力しているため、クロック信号入力部からクロック信号入力端子までのクロックラインでは、常に電力が消費される。この電力消費を削減するために、使用しない回路に入力するクロック信号CLKを止める技術として、クロックゲーティング方式が用いられている。クロックゲーティング方式を用いたクロック分配回路500は、図10に示すように、クロック同期回路502および504、ならびにクロック同期回路506および508とそれぞれ接続するゲーテッドクロック回路510ならびに512を含むものがある。
【０００７】
これらのゲーテッドクロック回路510および512は、それぞれ、クロック信号CLKと、クロック信号のイネーブル信号530および532とを入力する。ゲーテッドクロック回路は、入力のイネーブル信号がイネーブルとなるときのみ、ゲーテッドクロック信号を発生してクロック同期回路のクロック信号入力端子に出力するので、このようなクロック同期回路を備える未使用回路に入力するクロック信号のトグルによる電力消費を削減することができる。
【０００８】
このようなクロックゲーティング方式を用いたクロック分配回路500では、ゲーテッドクロック回路510および512に、それぞれ遅延回路524および526を備えて、クロック信号CLKの入力タイミングを調整するとよく、また、クロック同期回路502、504、506および508に、それぞれ遅延回路516、518、520および522を備えて、ゲーテッドクロック信号の入力タイミングを調整するとよい。
【０００９】
たとえば、特許文献１に記載の通常ゲーテッドクロック制御回路は、通常ゲーテッドクロック制御信号に応じて出力クロック時間を制御するものであり、フリップフロップ回路10-3における反転端子付きのクロック端子CKに入力クロックｇが入力され、通常ゲーテッドクロック制御信号ｅが入力端子Ｄに入力されると、フリップフロップ回路10-3の出力端子Ｑから出力信号が出力される。この出力信号に応じて、論理積回路から出力クロックＸが出力される。
【００１０】
また、このようなゲーテッドクロック制御回路では、安定状態期間経過後に、フリップフロップ回路７のリセット端子Ｒへの制御信号ｈを１にし、次に論理積回路８への制御信号ｆを１にし、それから通常ゲートクロック制御信号ｅを１にする。また、これに基づいて論理積回路９から出力クロックｉが出力される。さらに、通常ゲーテッドクロック制御信号ｅが０にされると、これに応じて出力クロックｉが出力停止となり、それから、制御信号ｆおよびｈが順次０にされる。
【００１１】
これにより、入力クロックｇの動作開始・動作停止時にノイズが乗っていても、その悪影響は防止され、発振器を任意に起動停止できるので、省電力構成の情報処理装置を提供することができる。
【００１２】
【特許文献１】特開2003-108259号
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、半導体論理回路では、回路全体の電力の消費に対して、クロックラインでの電力消費が大きな割合を占めて、たとえば、回路全体の電力消費のうち約30％がクロック信号CLKのトグルにより消費されている。また、ゲーテッドクロック回路の入力前における遅延回路では、ゲーテッドクロック回路の出力後における遅延回路に比べて、約10倍の電力消費がなされている。これは、通常動作時では、ゲーテッドクロック前に比べて後の方が、トグル率が大幅に少ないためである。したがって、消費電力をより効果的に削減するために、ゲーテッドクロックの前方にある遅延回路で消費される電力を削減する必要がある。
【００１４】
本発明はこのような従来技術の欠点を解消し、クロック同期回路を使用した半導体論理回路において、より効果的に消費電力を減少して動作するクロック分配回路およびその方法を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明は上述の課題を解決するために、データ信号を入力し、このデータ信号のクロック同期をとって出力信号として出力するクロック同期手段を含むクロック分配回路は、クロックイネーブル信号を入力し、このクロックイネーブル信号に応じてゲーテッドクロック信号を生成して出力する１つ以上のクロック生成手段を含み、これら１つ以上のクロック生成手段は、それぞれ１つ以上のクロック同期手段と接続して、このゲーテッドクロック信号を同時に供給することを特徴とする。
【００１６】
また、データ信号を入力し、このデータ信号のクロック同期をとって出力信号として出力するクロック同期工程を含むクロック分配方法は、クロックイネーブル信号を入力し、このクロックイネーブル信号に応じてゲーテッドクロック信号を生成して出力する１つ以上のクロック生成工程を含み、これら１つ以上のクロック生成工程は、それぞれ１つ以上のクロック同期工程と接続して、このゲーテッドクロック信号を同時に供給することを特徴とする。
【発明の効果】
【００１７】
本発明のクロック分配回路によれば、ゲーテッドクロック信号の発生回路であるクロック生成回路において、クロック信号の入力を行わずイネーブル信号を入力することにより、クロック信号のトグルで消費していた電力を減少することができる。また、ゲーテッドクロック回路の入力前における電力消費は、出力後に比べて約10倍であるため、大幅な消費電力の低減が期待できる。
【００１８】
また、本発明のクロック分配回路では、各クロック生成回路において、異なるクロックイネーブル信号を入力可能とすることで、動作範囲のクロック同期回路にクロック信号を供給するクロック生成回路と、非動作範囲のクロック同期回路にクロック信号を供給するクロック生成回路とで、異なるクロックイネーブル信号を供給することができ、これにより、非動作範囲に供給するクロック信号のトグルによる消費電力の削減を期待することができる。
【００１９】
また、本発明のクロック分配回路では、各クロック生成回路において、ゲーテッドクロック同期信号に応じてゲーテッドクロック信号の同期をとることにより、クロック生成回路ごとの特性の違いによりゲーテッドクロック信号間で周期が異なる場合でも、クロックサイクルを重ねて蓄積されるスキューによる動作の破綻を回避することができる。
【発明を実施するための最良の形態】
【００２０】
次に添付図面を参照して、本発明によるクロック分配回路の実施例を詳細に説明する。たとえば、本発明のクロック分配回路10は、図１に示すように、複数のクロック同期回路12、14、16および18にゲーテッドクロック信号を供給する、複数のクロック生成回路20および22をイネーブル信号で制御するものである。なお、本発明の理解に直接関係のない部分は、図示を省略し、冗長な説明を避ける。
【００２１】
本実施例のクロック分配回路10は、多数のクロック同期回路を備えてもよいが、図の複雑化を避けるため、図１ではクロック同期回路12、14、16および18の４つのみが示されている。また、クロック分配回路10は、多数のクロック生成回路を備えてもよいが、図の複雑化を避けるため、図１ではクロック生成回路20および22の２つのみが示されている。
【００２２】
本実施例において、クロック同期回路12、14、16および18は、図示しないデータ信号を入力して、ゲーテッドクロック信号に応じてこのデータ信号のクロック同期をとるもので、たとえばフリップフロップ回路などでよい。本実施例では、クロック同期回路12および14は、クロック生成回路20からのゲーテッドクロック信号108に応じてクロック同期を制御し、クロック同期回路16および18は、クロック生成回路22からのゲーテッドクロック信号110に応じてクロック同期を制御する。また、クロック同期回路12、14、16および18は、図示しないが組み合わせ論理回路などの演算回路を介して互いに接続されてもよい。
【００２３】
また、本実施例におけるクロック同期回路12、14、16および18は、それぞれ遅延回路24、26、28および30を備えて、供給されるゲーテッドクロック信号のスキューを調整する。遅延回路24および26は、クロック生成回路20から入力するゲーテッドクロック信号108のクロックスキューを合わせて、それぞれクロック同期回路12および14に同時に入力するように調整するものでよく、遅延回路28および30は、クロック生成回路22から入力するゲーテッドクロック信号110のクロックスキューを合わせて、それぞれクロック同期回路16および18に同時に入力するように調整するものでよい。
【００２４】
たとえば、ゲーテッドクロック信号108の供給元からクロック同期回路12までの配線長が、クロック同期回路14までの配線長より短いとき、クロック同期回路12には、クロック同期回路14よりも多くの遅延素子を有する遅延回路を備えてクロックスキューを調整してもよい。また、クロック同期回路16および18でも同様に、ゲーテッドクロック信号110の供給元からの配線長に応じた遅延素子を有する遅延回路を備えてクロックスキューを調整してよい。
【００２５】
本実施例において、クロック生成回路20および22は、入力のクロックイネーブル信号102に応じて、ゲーテッドクロック信号を分配して出力するもので、たとえば、クロックイネーブル信号102がロウの場合、このゲーテッドクロック信号を出力せず、ハイの場合、ハイ固定またはロウ固定のゲーテッドクロック信号を出力するものでよい。
【００２６】
クロック生成回路20および22は、図２に示すように、複数のインバータをリング状に接続するリングオシレータでよく、たとえば偶数個のNOT回路52〜66と一つのNAND回路68とをリング状に接続するものでよい。たとえば、クロック生成回路20は、NAND回路68でクロックイネーブル信号104を入力して、クロックイネーブル信号104がロウの場合、ハイ固定のゲーテッドクロック信号108を出力し、ハイの場合、一周ごとに反転してクロック動作するゲーテッドクロック信号108を出力する。このとき、ゲーテッドクロック信号108のクロック周期は、リングオシレータ一周分の遅延の２倍の時間となる。
【００２７】
本実施例のクロック生成回路20では、図２に示すように、NOT回路58の出力、すなわち複数のNOT回路の中間で、かつNAND回路68から偶数番目のNOT回路の出力をゲーテッドクロック信号108としているが、NAND回路68の出力をゲーテッドクロック信号108とすることにより、リングオシレータでのクロックのずれを少なくすることもできる。
【００２８】
また、本実施例におけるクロック生成回路20および22は、それぞれ遅延回路32および34を備えて、供給されるクロックイネーブル信号102のスキューを調整する。遅延回路32および34は、クロック生成回路20および22に入力するクロックイネーブル信号102のイネーブルタイミングがクロック信号に合うようにスキューを調整するものでよく、クロックイネーブル信号102の供給元からクロック生成回路までの配線長に応じた遅延素子を有する遅延回路を備えてクロックスキューを調整するとよい。たとえば、クロックイネーブル信号102の供給元からクロック生成回路20までの配線長が、クロック生成回路22までの配線長より短いとき、クロック生成回路22には、クロック生成回路20よりも多くの遅延素子を備えてクロックスキューを調整してもよい。
【００２９】
次に、本実施例におけるクロック分配回路10の動作について、図３のタイミングチャートを参照しながら説明する。
【００３０】
本実施例では、まず、動作期間T2において、ロウレベルのクロックイネーブル信号102が遅延素子32および34を介してクロック生成回路20および22に供給される。
【００３１】
クロック生成回路20および22では、クロックイネーブル信号102がロウレベルであり、NAND回路68における初期状態のゲーテッドクロック信号がハイレベルであるため、ゲーテッドクロック信号108および110は、そのままハイレベルで出力される。
【００３２】
本実施例では、クロック生成回路20からのゲーテッドクロック信号108は、遅延素子24および26を介してクロック同期回路12および14にそれぞれ供給され、クロック生成回路22からのゲーテッドクロック信号110は、遅延素子28および30を介してクロック同期回路16および18にそれぞれ供給される。
【００３３】
このとき、クロック同期回路12、14、16および18では、それぞれ供給されるゲーテッドクロック信号が、ハイレベルのままでエッジを持たないため、データ信号が入力しても取り込まず、出力もしない。
【００３４】
次に、時刻T1において、ハイレベルのクロックイネーブル信号102が遅延素子32および34を介してクロック生成回路20および22に供給されると、クロック生成回路20および22では、クロックイネーブル信号102がハイレベルであり、NAND回路68におけるゲーテッドクロック信号がハイレベルであるため、ゲーテッドクロック信号は、ロウレベルに切り替わって出力される。ここで、次のサイクルにおけるNAND回路68では、クロックイネーブル信号102がハイレベルであり、NAND回路68におけるゲーテッドクロック信号がロウレベルであるため、ゲーテッドクロック信号108および110は、ハイレベルに切り替わって出力される。このようにして、動作期間T3におけるクロック生成回路20および22では、リングオシレータの１サイクルごとにハイ／ロウが切り替わってクロック動作するゲーテッドクロック信号108および110が出力される。
【００３５】
動作期間T3において、このようにクロック動作するゲーテッドクロック信号108ならびに110が、それぞれ遅延素子24および26、ならびに28および30を介して、クロック同期回路12および14、ならびに16および18にそれぞれ供給されると、クロック同期回路12、14、16および18では、ゲーテッドクロック信号に応じて、たとえばクロックのライズエッジのタイミングで、入力のデータ信号が取り込まれて出力される。
【００３６】
このように、本実施例では、クロック同期回路においてクロック信号を取り扱わずにクロック同期を制御するため、クロック信号のトグルによる電力消費を削減することができる。
【００３７】
また、本実施例におけるクロック生成回路20および22では、クロック動作するゲーテッドクロック信号108および110の発生タイミングは、クロックイネーブル信号102がハイレベルに切り替わるタイミングに関係している。したがって、各クロック同期回路に入力するゲーテッドクロック信号が、所望のタイミングでクロック動作するように、各クロック生成回路に入力するクロックイネーブル信号102のイネーブルタイミングのクロックスキューを遅延回路32および34で調整するとよい。
【００３８】
また、クロック動作するゲーテッドクロック信号は、特にその１サイクル目がクロックイネーブル信号のイネーブルタイミングに同期して発生するため、異なったクロック生成回路から同時に発生するゲーテッドクロック信号のクロックスキューが合っていても、クロック生成回路が生成するゲーテッドクロック信号の周期が少しでも違う場合、クロック動作を重ねるほどスキューがずれてしまう。このため、各クロック生成回路で発生するゲーテッドクロックの周期は、同一であることが望ましい。
【００３９】
また、複数のクロック生成回路は、レイアウト作図上、すべて全く同一であることが好ましく、周囲に配置される回路や配線のノイズ等の影響を受けないつくりにするとよい。
【００４０】
また、他の実施例として、クロック分配回路200は、図４に示すように、複数のクロック生成回路20および22が、それぞれ、複数種類のクロックイネーブル信号202および204を入力可能として、異なるタイミングを有するゲーテッドクロック信号108および110を生成可能とするものである。
【００４１】
このクロック分配回路200では、たとえば、ハイレベルおよびロウレベルのクロックイネーブル信号202および204が、それぞれクロック生成回路20および22に同時に入力するとき、クロック生成回路20では、クロック動作するゲーテッドクロック信号108を発生してクロック生成回路20に接続するクロック同期回路を動作させ、他方、クロック生成回路22では、ハイ固定のゲーテッドクロック信号110を出力してクロック生成回路22に接続するクロック同期回路の動作を停止することができる。
【００４２】
すなわち、クロック分配回路200は、動作上未使用のクロック同期回路へのゲーテッドクロック信号の入力を行わないようにするものである。たとえば、各クロック生成回路では、複数のクロック同期回路のうち同時に動作するものを選択して接続するとよい。
【００４３】
したがって、クロック分配回路200は、動作範囲のクロック同期回路にゲーテッドクロック信号を供給するクロック生成回路と、非動作範囲のクロック同期回路にゲーテッドクロック信号を供給するクロック生成回路とで、供給するクロックイネーブル信号に対する論理を構成する。
【００４４】
また、クロック分配回路200は、複数の処理工程を有して、処理工程ごとにクロックイネーブル信号を変えてもよく、たとえば、第１の処理工程では、クロック生成回路20および22は、ハイレベルのクロックイネーブル信号202および204を入力するが、第２の処理工程では、クロック生成回路20は、ハイレベルのクロックイネーブル信号202を入力し、クロック生成回路22は、ロウレベルのクロックイネーブル信号204を入力する。
【００４５】
これにより、クロック分配回路200は、非動作範囲に供給しているゲーテッドクロック信号のトグルによる消費電力を削減することができる。
【００４６】
また、他の実施例として、クロック分配回路300は、図５に示すように、複数のクロック生成回路20および22が、それぞれ、異なるクロックイネーブル信号202および204を同時に入力可能とし、さらに、ゲーテッドクロック同期信号302の入力端子を設けて、ゲーテッドクロック同期信号304および306を入力するものである。
【００４７】
クロック生成回路20および22は、図６に示すように、複数のインバータをリング状に接続するリングオシレータでよく、たとえば、クロック生成回路20は、NAND回路76でクロックイネーブル信号104およびゲーテッドクロック同期信号304を入力して、クロックイネーブル信号104がロウの場合、ハイ固定のゲーテッドクロック信号108を出力し、ハイの場合、一周ごとに反転してクロック動作するゲーテッドクロック信号108を出力するもので、ゲーテッドクロック同期信号304に応じて、ゲーテッドクロック信号108に蓄積されたスキューをキャンセルするものである。
【００４８】
クロック生成回路20および22において、ゲーテッドクロック信号108および110は、クロックイネーブル信号104および106のイネーブルタイミングに同期して発生するが、異なるクロック生成回路から発生するゲーテッドクロック信号間に周期の違いがある場合、ゲーテッドクロック信号のスキューがクロックサイクルごとに蓄積される。本実施例のクロック分配回路300では、ゲーテッドクロック同期信号302の所定の周期ごとにゲーテッドクロック信号を発生し直して、蓄積されたスキューをキャンセルすることができる。
【００４９】
次に、本実施例におけるクロック分配回路300の動作について、図７のタイミングチャートを参照しながら説明する。
【００５０】
このクロック分配回路300に入力するゲーテッドクロック同期信号302は、図７に示すように、所定期間T4ではハイレベルであり、時刻T5でロウレベルに切り替わり、時刻T6でハイレベルに戻ってこの切り替えを繰り返すクロック信号である。ゲーテッドクロック同期信号302がハイである所定期間T4は、ゲーテッドクロック信号に蓄積されるスキューが、フリップフロップに入力するクロック信号のスキューとして許される時間を超える時間より短くするとよい。
【００５１】
まず、クロック生成回路20および22において、時刻T7でハイレベルに切り替わるクロックイネーブル信号104および106がそれぞれ入力し、クロック動作するゲーテッドクロック信号108および110が時刻T8で発生する。このとき、クロック生成回路20および22には、ハイレベルのゲーテッドクロック同期信号304および306が入力するが、ゲーテッドクロック信号108および110の生成には影響しない。
【００５２】
クロック生成回路20および22で生成されるゲーテッドクロック信号108および110は、クロックサイクルごとに少しずつタイミングがずれて蓄積され、たとえば、一方のクロック生成回路20からのゲーテッドクロック信号108は時刻T9で立ち上がるが、他方のクロック生成回路22からのゲーテッドクロック信号110はT10で立ち上がり、時刻T9から蓄積されたスキューS1のずれが生じている。
【００５３】
ここで、ゲーテッドクロック同期信号304および306は、時刻T5でロウレベルに切り替わるため、クロック生成回路20および22では、クロック動作するゲーテッドクロック信号108および110が生成されずに、ハイレベル固定のゲーテッドクロック信号108および110が出力される。
【００５４】
次に、時刻T6において、ゲーテッドクロック同期信号304および306が、ハイレベルに切り替わると、クロック生成回路20および22では、この切り替えタイミングに同期してクロック動作するゲーテッドクロック信号108および110が時刻T11で生成される。
【００５５】
このように、本実施例のクロック分配回路300によると、クロック生成回路ごとに異なる特性により、発生するゲーテッドクロック信号間の周期が異なる場合でも、クロックサイクルを重ねて蓄積されるスキューによる動作の破綻を回避することができる。
【図面の簡単な説明】
【００５６】
【図１】本発明に係るクロック分配回路の一実施例を示すブロック図である。
【図２】図１に示す実施例のクロック分配回路におけるクロック生成回路の構成例を示すブロック図である。
【図３】図１に示す実施例のクロック分配回路の動作を説明するタイミングチャートである。
【図４】本発明に係るクロック分配回路の他の実施例を示すブロック図である。
【図５】本発明に係るクロック分配回路の他の実施例を示すブロック図である。
【図６】図５に示す他の実施例のクロック分配回路におけるクロック生成回路の構成例を示すブロック図である。
【図７】図５に示す他の実施例のクロック分配回路の動作を説明するタイミングチャートである。
【図８】従来のクロック分配回路を示すブロック図である。
【図９】図８に示す従来のクロック分配回路の動作を説明するタイミングチャートである。
【図１０】従来のクロックゲーティング方式を用いたクロック分配回路を示すブロック図である。
【符号の説明】
【００５７】
10  クロック分配回路
12、14、16、18  クロック同期回路
20、22  クロック生成回路
24、26、28、30、32、34  遅延回路
【図１】
2006072777.tif 000003
【図２】
2006072777.tif 000004
【図３】
2006072777.tif 000005
【図４】
2006072777.tif 000006
【図５】
2006072777.tif 000007
【図６】
2006072777.tif 000008
【図７】
2006072777.tif 000009
【図８】
2006072777.tif 000010
【図９】
2006072777.tif 000011
【図１０】
2006072777.tif 000012