(57)【要約】  ダブルエッジトリガ回路は、クロック信号及びイネーブル信号に応答してゲーテッドクロック信号を出力するクロックゲータと、ゲーテッドクロック信号に応答してデータ信号を送り出す第１のダブルエッジトリガフリップフロップと、クロック信号に応答してデータ信号を捕捉する第２のダブルエッジトリガフリップフロップとを含み、クロックゲータは、イネーブル信号が第１の論理状態のときに第１の論理値にてゲーテッドクロック信号を停止し、イネーブル信号が第２の論理状態のときに次のクロックエッジにてゲーテッドクロック信号を第１の論理値からスイッチングする。【選択図】図１
2013513307.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号及びイネーブル信号に応答してゲーテッドクロック信号を出力するクロックゲータと、
前記ゲーテッドクロック信号に応答してデータ信号を送り出す第１のダブルエッジトリガフリップフロップと、
前記クロック信号に応答して前記データ信号を捕捉する第２のダブルエッジトリガフリップフロップと、
を備え、前記クロックゲータは、前記イネーブル信号が第１の論理状態のときに第１の論理値にて前記ゲーテッドクロック信号を停止し、前記イネーブル信号が第２の論理状態のときに次のクロックエッジにて前記ゲーテッドクロック信号を前記第１の論理値からスイッチングする、ことを特徴とするダブルエッジトリガ回路。
【請求項２】
前記ゲーテッドクロック信号が、前記クロック信号から１８０°位相がずれている、ことを特徴とする請求項１に記載の回路。
【請求項３】
前記クロックゲーティングセルが、ダブルエッジトリガＴ型フリップフロップである、ことを特徴とする請求項１に記載の回路。
【請求項４】
前記第１のダブルエッジトリガフリップフロップが、論理パスにより前記第２のダブルエッジトリガフリップフロップに接続される、ことを特徴とする請求項１に記載の回路。
【請求項５】
前記第１のダブルエッジトリガフリップフロップが、前記ゲーテッドクロック信号の立ち上がりエッジで送り出しを行い、前記第２のダブルエッジトリガフリップフロップが、前記クロック信号の立ち下がりエッジで捕捉を行う、ことを特徴とする請求項１に記載の回路。
【請求項６】
前記第１のダブルエッジトリガフリップフロップが、前記ゲーテッドクロック信号の立ち下がりエッジで送り出しを行い、前記第２のダブルエッジトリガフリップフロップが、前記クロック信号の立ち上がりエッジで捕捉を行う、ことを特徴とする請求項１に記載の回路。
【請求項７】
前記第１のダブルエッジトリガフリップフロップが、前記ゲーテッドクロック信号の立ち上がりエッジで送り出しを行い、前記第２のダブルエッジトリガフリップフロップが、前記クロック信号の立ち上がりエッジで捕捉を行う、ことを特徴とする請求項１に記載の回路。
【請求項８】
前記第１のダブルエッジトリガフリップフロップが、前記ゲーテッドクロック信号の立ち下がりエッジで送り出しを行い、前記第２のダブルエッジトリガフリップフロップが、前記クロック信号の立ち下がりエッジで捕捉を行う、ことを特徴とする請求項１に記載の回路。
【請求項９】
前記第１の論理状態が論理ｌｏｗであり、前記第２の論理状態が論理ｈｉｇｈである、ことを特徴とする請求項１に記載の回路。
【請求項１０】
前記第１の論理状態が論理ｈｉｇｈであり、前記第２の論理状態が論理ｌｏｗである、ことを特徴とする請求項１に記載の回路。
【請求項１１】
イネーブル信号の立ち上がりエッジの後にクロック信号の第１の立ち下がりエッジ及び第１の立ち上がりエッジにてスイッチングする制御信号を出力し、前記イネーブル信号の立ち下がりエッジの後にゲーティングされた論理レベルで前記制御信号を保持するクロックゲータと、
前記クロック信号の第１の立ち下がりエッジに応答して前記制御信号の第１の立ち上がりエッジにて第１のデータを送り出し、前記クロック信号の第１の立ち上がりエッジに応答して前記制御信号の第１の立ち下がりエッジにて第２のデータを送り出す第１のダブルエッジトリガフリップフロップと、
前記クロック信号の第１の立ち上がりエッジにて前記第１のデータを取り込み、前記クロック信号の第１の立ち上がりエッジの後に前記クロック信号の次の立ち下がりエッジにて前記第２のデータを取り込む第２のダブルエッジトリガフリップフロップと、
を備える、ことを特徴とするダブルエッジトリガ回路。
【請求項１２】
ゲーティング素子が、クロック入力にて前記クロック信号に応答し、Ｔ入力にて前記前記イネーブル信号に応答してＱ出力にて前記制御信号を供給するＴ型ダブルエッジトリガフリップフロップを含む、ことを特徴とする請求項１１に記載の回路。
【請求項１３】
前記第１のダブルエッジトリガフリップフロップが、前記クロック信号の第２の立ち上がりエッジに応答して前記制御信号の第２の立ち上がりエッジにて第３のデータを送り出し、前記クロック信号の第２の立ち下がりエッジに応答して前記制御信号の第２の立ち下がりエッジにて第４のデータを送り出し、前記第２のダブルエッジトリガフリップフロップが、前記クロック信号の第２の立ち下がりエッジにて前記第３のデータを取り込み、前記クロック信号の第２の立ち下がりエッジの後に前記クロック信号の次の立ち上がりエッジにて前記第４のデータを取り込む、ことを特徴とする請求項１１に記載の回路。
【請求項１４】
クロック入力にてクロック信号に応答し且つＴ入力にてイネーブル信号に応答して、制御信号を出力するＴ型フリップフロップと、前記制御信号により制御される第１のダブルエッジトリガフリップフロップと、前記クロック信号により制御される第２のダブルエッジトリガフリップフロップとを含むデジタルシステムにおいてデータを転送する方法であって、
前記イネーブル信号をｌｏｗ論理レベルからｈｉｇｈ論理レベルに変えて、前記第１及び第２のダブルエッジトリガフリップフロップの間でデータ転送を可能にする段階と、
前記ｌｏｗ論理レベルから前記ｈｉｇｈ論理レベルへの前記イネーブル信号のスイッチング後、前記クロック信号の第１の立ち下がりエッジ及び第１の立ち上がりエッジにて前記制御信号をスイッチングする段階と、
前記クロック信号の第１の立ち下がりエッジに応答して、前記制御信号の第１の立ち上がりエッジにて前記第１のダブルエッジトリガフリップフロップから第１のデータを送り出す段階と、
前記クロック信号の第１の立ち上がりエッジにて前記第１のデータを前記第２のダブルエッジトリガフリップフロップに取り込む段階と、
前記クロック信号の第１の立ち上がりエッジに応答して、前記制御信号の第１の立ち下がりエッジにて前記第１のダブルエッジトリガフリップフロップから第２のデータを送り出す段階と、
前記クロック信号の第１の立ち上がりエッジの後に前記クロック信号の次の立ち下がりエッジにて前記第２のデータを前記第２のダブルエッジトリガフリップフロップに取り込む段階と、
前記イネーブル信号を前記ｈｉｇｈ論理レベルから前記ｌｏｗ論理レベルに変える段階と、
前記ｈｉｇｈ論理レベルから前記ｌｏｗ論理レベルへの前記イネーブル信号の前記スイッチングの後、前記制御信号をゲーティングされた論理レベルに保持して前記第１及び第２のダブルエッジトリガフリップフロップ間のデータ転送を阻止する段階と、
を含む、方法。
【請求項１５】
前記イネーブル信号をｌｏｗ論理レベルからｈｉｇｈ論理レベルに変えて、前記第１及び第２のダブルエッジトリガフリップフロップの間でデータ転送を可能にする段階と、
前記ｌｏｗ論理レベルから前記ｈｉｇｈ論理レベルへの前記イネーブル信号のスイッチング後、前記クロック信号の第２の立ち上がりエッジ及び第２の立ち下がりエッジにて前記制御信号をスイッチングする段階と、
前記クロック信号の第２の立ち上がりエッジに応答して前記制御信号の第２の立ち上がりエッジにて前記第１のダブルエッジトリガフリップフロップから第３のデータを送り出す段階と、
前記クロック信号の第２の立ち下がりエッジにて前記第３のデータを前記第２のダブルエッジトリガフリップフロップに取り込む段階と、
前記クロック信号の第２の立ち下がりエッジに応答して前記制御信号の第２の立ち下がりエッジにて前記第１のダブルエッジトリガフリップフロップから第４のデータを送り出す段階と、
前記クロック信号の第２の立ち下がりエッジの後に前記クロック信号の次の立ち下がりエッジにて前記第２のデータを前記第２のダブルエッジトリガフリップフロップに取り込む段階と、
を更に含む、請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本出願は、２００９年１２月３日出願の米国特許出願シリアル番号１２／６３０，２６０に対する優先権を主張するものであり、この特許の内容全体は引用により本明細書に組み入れられる。
【０００２】
本発明の実施形態は、半導体装置に関し、更に詳細には、クロックゲーティングセルに関する。本発明の実施形態は、広範囲にわたる用途に好適であるが、特にダブルエッジトリガフリップフロップを有する回路においてクロック信号をゲーティングするのに好適である。
【背景技術】
【０００３】
一般に、同期デジタルシステムは、クロック信号を使用してシステム内のデータの移動を調整する。初期のデジタルシステムは、クロック信号の立ち上がり又は立ち下がりエッジでデータの移動を調整するものであり、シングルエッジトリガ（ＳＥＴ）として知られているものであった。シングルエッジトリガフリップフロップは、クロック信号の立ち上がり及び立ち下がりエッジの一方で入力部にて供給されたデータを取り込む。
【０００４】
関連技術のデジタルシステムの構成部品は、各クロック信号にて状態が変わるトランジスタを含む。構成部品の状態が変わったときに電力を消費する。しかしながら、構成部品の全ての状態変化が、デジタルシステムの適切な機能に必ずしも必要であるという訳ではない。デジタルシステムの構成部品は、クロック信号に応答して状態が変わり、その結果、出力がシステムにより使用されていない時間期間では電力が失われる可能性がある。エネルギー損失は熱の形であるので、不必要な状態変化は非効率の原因となる。
【０００５】
関連技術のデジタルシステムは、クロックゲーティング技術を使用して、電力消費量を低減し、使用しないときに個々の論理デバイスが状態をスイッチングするのを防ぐことができる。クロック信号が論理デバイスに入力される前にゲーティングされたときに、ゲーテッドクロック（ｇａｔｅｄ  ｃｌｏｃｋ）信号により論理デバイスの状態が変化することがない。クロックゲーティングは、論理デバイスがデジタル回路の現在の動作に必要とされない時間周期中に論理デバイスを効果的にディスエーブルにする。
【０００６】
図１は、関連技術による一体型クロックゲーティングセル（ＩＣＧ）の概略図である。図１を参照すると、ＩＣＧはＡＮＤゲート１００からなる。ＩＣＧ１００は、イネーブル信号１２０及びクロック信号１１０に応答して、ゲーテッドクロック信号１３０を供給する。クロック信号１３０は、同期デジタル回路においてデバイスを同期化するのに使用することができるスイッチング信号である。イネーブル信号１２０は、外部論理により制御され、ｌｏｗからｈｉｇｈにスイッチングしてゲーテッドクロック信号１３０をイネーブルする。イネーブル信号１２０及びクロック信号１１０の両方がｈｉｇｈであるときに、ゲーテッドクロック信号１３０はｈｉｇｈである。イネーブル信号１２０がｌｏｗであるときには、ゲーテッドクロック信号１３０は、ｌｏｗのままである。
【０００７】
従って、図１の関連技術のＩＣＧ１００においては、ゲーテッドクロック信号１３０は、イネーブル信号１２０がｈｉｇｈであるときにクロック信号１１０を追従する。これとは対照的に、イネーブル信号１２０がｌｏｗであるときには、ゲーテッドクロック信号１３０は、クロック信号１１０内の遷移にも拘わらずｌｏｗのままである。しかしながら、図１の関連技術のＩＣＧ１００では、クロック信号１１０がｈｉｇｈである間にイネーブル信号１２０に対するグリッチが、接続された構成部品に伝播してゲーテッドクロック信号１３０にまで至り、その結果、ゲーテッドクロック信号１３０によりクロック制御される構成部品内において誤ったデータが取り込まれるようになる。
【０００８】
図２は、ＳＥＴシステム内で使用される別の関連技術のＩＣＧの概略図である。図２を参照すると、関連技術のＩＣＧ２００は、ＡＮＤゲート２１０と、グリッチを排除するために反対極性のラッチ２２０（すなわち、立ち上がりエッジトリガシステムでは負ラッチ及び立ち下がりエッジトリガシステムでは正ラッチ）とを含む。クロック信号２３０は、ラッチ２２０の第１の入力とＡＮＤゲート２１０の第１の入力とに供給される。イネーブル信号２４０は、ラッチ２２０の第２の入力に供給され、ラッチ２２０からの出力は、ＡＮＤゲート２１０の第２の入力に供給される。ＡＮＤゲート２１０からの出力は、ゲーテッドクロック信号２５０である。
【０００９】
図２の関連技術のＩＣＧ２００によれば、立ち上がりエッジトリガシステムでは、ラッチ２２０が、ゲーテッドクロック出力２５０からの何らかのグリッチを除去するのに使用される。クロック信号２３０がｈｉｇｈ又は論理１にある間、ラッチ２２０はトランスペアレントではなく、イネーブル入力２４０に対するグリッチは、ＩＣＧ２００の出力２５０には伝播しない。クロック信号２３０がｌｏｗ又は論理０にある間、ラッチ２２０はトランスペアレントであり、ラッチを伝播するあらゆるグリッチは、ＡＮＤゲート２１０で停止される。
【００１０】
図２の関連技術のＩＣＧ２００によれば、立ち上がりエッジトリガシステムでは、ゲーテッドクロック信号は、論理０にてゲーティングされ、すなわち、ゲーテッドクロック信号２５０は、イネーブル信号２４０が十分に長い時間にわたって「０」のままである場合には論理０のままである。同様に、ゲーテッドクロック信号２５０は、立ち下がりエッジトリガシステムでは論理１にてゲーティングされる。
【００１１】
しかしながら、図２の関連技術のＩＣＧ２００は、データがクロック信号２３０の立ち上がりエッジ及び立ち下がりエッジの一方でのみ取り込まれるようにＳＥＴフリップフロップを使用する。データ取り込み速度の高速化を達成するために、クロック信号の両方のエッジでデータを取り込むことが望ましい。
【００１２】
電力消費量を低減するために、最近のデジタルシステムは、ダブルエッジトリガ（ＤＥＴ）フリップフロップを使用してシステムの構成部品間でのデータ移動を調整している。ＤＥＴフリップフロップは、クロック信号の立ち上がり及び立ち下がりエッジの両方でデータを取り込む。これらの利点が実現されるのは、データをクロック信号の一方のみではなく両方のエッジにて取り込むことができ、そのため、同じ機能性及びスループットを半分のクロック周波数で得ることができるからである。
【００１３】
ダブルエッジトリガ回路において、クロック信号の立ち上がりエッジと立ち下がりエッジは機能的に同等である（両方によりデータがフリップフロップで取り込まれるようになる）。純粋に機能上の観点からすると、立ち上がりクロックエッジ及び立ち下がりクロックエッジは互いに交換可能である。クロックゲーティングは、特定のエッジの立ち上がり又は立ち下がり方向に関係なく一般にクロックエッジに関して見直すことができ、つまり、クロックがゲーティングされたときにはクロックエッジは存在しない。クロックがイネーブルになったときには、エッジの方向に関係なく出力クロックにおいてエッジが存在する。ＤＥＴシステムは、その利点にもかかわらず、最も一般的で普及している低電力技術の１つである関連技術によるクロックゲーティングセルとの互換性がないことに起因して、採用されるのは稀である。
【００１４】
図３は、ＤＥＴフリップフロップを有するシステムで使用されたときの、図２の関連技術のＩＣＧセルによるゲーテッドクロック信号のスイッチングを示すタイミング図である。図３を参照すると、ＩＣＧ２００の第１の入力にて供給されるクロック信号２３０は、論理０と論理１の間で周期的にスイッチングされる。例えば、クロック信号２３０は、時間ｔ＝０の後に立ち上がりエッジ２３１でｌｏｗからｈｉｇｈにスイッチングされ、時間ｔ＝１の前に立ち下がりエッジ２３２でｌｏｗにスイッチングされる。クロック信号２３０のスイッチングは、図３に示すように時間と共に周期的に繰り返す。
【００１５】
時間ｔ＝０前に論理１でありｔ＝０〜ｔ＝１の時間間隔において論理１のままであるイネーブル信号２４０により、関連技術のＩＣＧ２００は、ゲーテッドクロック信号２５０を出力することができる。従って、ゲーテッドクロック信号２５０は、クロック信号２３０の立ち上がりエッジ２３１後の立ち上がりエッジ２５１及びクロック信号の立ち下がりエッジ２３２後の立ち下がりエッジ２５２でｔ＝０〜ｔ＝１の時間間隔においてクロック信号２３０に追従する。
【００１６】
時間ｔ＝１において、イネーブル信号２４０は、立ち下がりエッジ２４２でｌｏｗにスイッチングされ、時間ｔ＝２までｌｏｗのままである。従って、ｔ＝１とｔ＝２の間の時間中に、関連技術のＩＣＧ２００は、時間ｔ＝１におけるゲーテッドクロック信号２５０の状態に応じてｌｏｗ値でクロック信号をゲーティングする。
【００１７】
クロック信号２３０の立ち上がりエッジ２３５の直後の時間ｔ＝２にて、イネーブル信号２４０は、立ち上がりエッジ２４３で再びｈｉｇｈにスイッチングされる。ゲーテッドクロック２５０は、イネーブル信号２４０のｈｉｇｈレベルによりイネーブルになり、クロック信号の後に開始する。しかしながら、ゲーテッドクロック信号２５０の立ち上がりエッジ２５３は、イネーブル信号２４０の立ち上がりエッジ２４３後の時間遅延の後に発生し、すなわち、クロック信号の対応する立ち上がりエッジ２３５よりもかなり後である。その後、ゲーテッドクロック信号２５０は、クロック信号２３０に応じてスイッチングされる。例えば、ゲーテッドクロック信号２５４の次の立ち下がりエッジ２５４は、クロック信号２３０の立ち下がりエッジ２３６の直後に発生する。
【００１８】
しかしながら、立ち上がりエッジ２５３によるゲーテッドクロック信号２５０の第１の遷移は、クロック信号の対応する立ち上がりエッジ２３５よりもかなり後で発生するので、ゲーテッドクロック信号２５０の立ち上がりエッジ２５３から立ち下がりエッジ２５４までの第１のパルスは、クロック信号２３０のパルス幅よりもはるかに狭い。この不正パルスは、同期デジタルシステムの誤動作の原因となる可能性がある。例えば、ＤＥＴフリップフロップのような構成要素は、ゲーテッドクロック２５０により誤ってスイッチングされてクロックサイクルの途中でデータを取り込む可能性がある。
【００１９】
ＤＥＴフリップフロップの同様の誤ったスイッチングは、ＩＣＧ２００が論理ｈｉｇｈでゲーテッドクロックを停止したときに観測される可能性がある。
【００２０】
クロック信号のパルス幅を維持しながら、イネーブル信号２４０の立ち上がりエッジ２４３の後である程度の遅延後に入力クロックに続いてゲーテッドクロック信号２５０が開始することが望ましい。しかしながら、関連技術のＩＣＧ２００がＤＥＴフリップフロップと共に使用されるときには、ゲーテッドクロック信号２４０は、クロック信号２３０の立ち上がりエッジ２３５の後に長い遅延でｌｏｗからｈｉｇに誤ってスイッチングされるが、クロック信号２３０の次の立ち下がりエッジ２３６の直後にｌｏｗに戻る。従って、関連技術のＩＣＧは、ＤＥＴフリップフロップに対するクロック信号を正確にゲーティングするのに好適ではない。
【発明の概要】
【００２１】
従って、本発明の実施形態は、関連技術の限界及び欠点による問題の１つ又はそれ以上を実質的に防ぐダブルエッジトリガフリップフロップを備えた回路で使用される一体型クロックゲーティングセルに関する。
【００２２】
本発明の実施形態の目的は、ダブルエッジトリガフリップフロップを含むデジタル回路においてクロック信号をゲーティングする一体型クロックゲーティングセルを提供することである。
【００２３】
本発明の実施形態の別の目的は、ダブルエッジトリガフリップフロップを含むデジタルシステムにおいて電力消費量を低減した一体型クロックゲーティングセルを提供することである。
【００２４】
本発明の実施形態の更に別の目的は、ダブルエッジトリガフリップフロップを含むデジタルシステムにおいて望ましくないスイッチングを低減した一体型クロックゲーティングセルを提供することである。
【００２５】
本発明の実施形態の更なる特徴及び利点は、以下の説明において記載されており、一部はこの説明から明らかとなるか、或いは、本発明の実施形態の実施によって習得することができる。本発明の実施形態の目的及び他の利点は、本明細書及び本発明の特許請求の範囲、並びに添付図面において特に指摘する構造により実現され達成されるであろう。
【００２６】
上記及び他の利点を達成するために、本明細書で具現され且つ広義に説明される本発明の実施形態の目的によれば、ダブルエッジトリガ回路は、クロック信号及びイネーブル信号に応答してゲーテッドクロック信号を出力するクロックゲータと、ゲーテッドクロック信号に応答してデータ信号を送り出す第１のダブルエッジトリガフリップフロップと、クロック信号に応答してデータ信号を捕捉する第２のダブルエッジトリガフリップフロップと、を含み、クロックゲータは、イネーブル信号が第１の論理状態のときに第１の論理値にてゲーテッドクロック信号を停止し、イネーブル信号が第２の論理状態のときに次のクロックエッジにてゲーテッドクロック信号を第１の論理値からスイッチングする。
【００２７】
別の態様において、ダブルエッジトリガ回路は、イネーブル信号の立ち上がりエッジの後にクロック信号の第１の立ち下がりエッジ及び第１の立ち上がりエッジにてスイッチングされる制御信号を出力し、イネーブル信号の立ち下がりエッジの後にゲーティングされた論理レベルで制御信号を保持するクロックゲータと、クロック信号の第１の立ち下がりエッジに応答して制御信号の第１の立ち上がりエッジにて第１のデータを送り出し、クロック信号の第１の立ち上がりエッジに応答して制御信号の第１の立ち下がりエッジにて第２のデータを送り出す第１のダブルエッジトリガフリップフロップと、クロック信号の第１の立ち上がりエッジにて第１のデータを取り込み、クロック信号の第１の立ち上がりエッジの後にクロック信号の次の立ち下がりエッジにて第２のデータを取り込む第２のダブルエッジトリガフリップフロップと、を含む。
【００２８】
別の態様において、クロック入力にてクロック信号に応答し且つＴ入力にてイネーブル信号に応答して、制御信号を出力するＴ型フリップフロップと、制御信号により制御される第１のダブルエッジトリガフリップフロップと、クロック信号により制御される第２のダブルエッジトリガフリップフロップとを含むデジタルシステムにおいてデータを転送する方法が提供される。本方法は、イネーブル信号をｌｏｗ論理レベルからｈｉｇｈ論理レベルに変えて、第１及び第２のダブルエッジトリガフリップフロップの間でデータ転送を可能にする段階と、ｌｏｗ論理レベルからｈｉｇｈ論理レベルへのイネーブル信号のスイッチング後、クロック信号の第１の立ち下がりエッジ及び第１の立ち上がりエッジにて制御信号をスイッチングする段階と、クロック信号の第１の立ち下がりエッジに応答して、制御信号の第１の立ち上がりエッジにて第１のダブルエッジトリガフリップフロップから第１のデータを送り出す段階と、クロック信号の第１の立ち上がりエッジにて第１のデータを第２のダブルエッジトリガフリップフロップに取り込む段階と、クロック信号の第１の立ち上がりエッジに応答して、制御信号の第１の立ち下がりエッジにて第１のダブルエッジトリガフリップフロップから第２のデータを送り出す段階と、クロック信号の第１の立ち上がりエッジの後にクロック信号の次の立ち下がりエッジにて第２のデータを第２のダブルエッジトリガフリップフロップに取り込む段階と、イネーブル信号をｈｉｇｈ論理レベルからｌｏｗ論理レベルに変える段階と、ｈｉｇｈ論理レベルからｌｏｗ論理レベルへのイネーブル信号のスイッチングの後、制御信号をゲーティングされた論理レベルに保持して第１及び第２のダブルエッジトリガフリップフロップ間のデータ転送を阻止する段階と、を含む。
【００２９】
前述の概要及び以下の詳細な説明は共に例証で説明のためのものであり、請求項に記載された本発明の実施形態の更なる説明を行うことを意図している点を理解されたい。
【００３０】
本発明を更に理解するために含められ、本明細書の一部に組み込まれ且つその一部を構成する添付図面は、本発明の実施形態を例証しており、本明細書と共に本発明の実施形態の原理を説明するのに役立つ。
【図面の簡単な説明】
【００３１】
【図１】関連技術による一体型クロックゲーティングセル（ＩＣＧ）の概略図である。
【図２】ＳＥＴシステムで使用される別の関連技術のＩＣＧの概略図である。
【図３】ＤＥＴフリップフロップを備えたシステム内で使用されたときの、図２の関連技術のＩＣＧセルによるゲーテッドクロック信号のスイッチングを示すタイミング図である。
【図４】本発明の実施形態による、ＤＥＴシステムにおける例示的なＩＣＧの概略図である。
【図５】本発明の実施形態による、図４のＤＥＴデジタルシステム用の例示的なＩＣＧの概略図である。
【図６】図５のＩＣＧに関する例示的な波形を示すタイミング図である。
【図７】図５のＩＣＧに関する例示的な波形を示すタイミング図である。
【図８】本発明の別の実施形態による、ＤＥＴデジタルシステム用のＩＣＧの例示的なＣＭＯＳ実施構成を示す図である。
【発明を実施するための形態】
【００３２】
ここで、その実施例を添付図面において例示する本発明の実施形態について詳細に参照する。しかしながら、本発明は、多くの異なる形態で具現化することができ、本明細書で記載する実施形態に限定されると解釈すべきではなく、むしろ、これらの実施形態は、本開示が徹底的且つ完全なものとなり、また当業者に対して本発明の概念が十分に伝わるようにするために提示するものである。図面では、層及び領域の厚みは、明確にするために誇張されている。図面内の同様の参照番号は同様の要素を示す。
【００３３】
図４は、本発明の実施形態によるＤＥＴシステム内の例示的なＩＣＧの概略図である。図４を参照すると、ＤＥＴシステムは、クロック信号３１０を受信し、イネーブル信号３２０に応答してゲーテッドクロック信号３３０を出力するＩＣＧ３００を含む。ＩＣＧ３００からのゲーテッドクロック信号３３０は、第１のＤＥＴフリップフロップ３４０に入力され、第１のＤＥＴフリップフロップ３４０との間のデータ転送を制御する。第１のＤＥＴフリップフロップ３４０は、所望の論理回路を実施した組み合せパス３６０を介して第２のＤＥＴフリップフロップ３５０にデータを転送する。第２のＤＥＴフリップ−フリップ３５０は、ゲーティングされていないクロック信号３１０でクロック制御される。
【００３４】
図５は、本発明の実施形態による、図４のＤＥＴデジタルシステム用の例示的なＩＣＧの概略図である。図５を参照すると、図４のＩＣＧ３００は、Ｔ型ダブルエッジトリガフリップフロップ３００で実施されている。クロック信号３１０は、フリップフロップ３００のクロック入力３０１にて供給される。イネーブル信号３２０は、フリップフロップ３００のＴ入力３０２にて供給される。ゲーテッドクロック信号３３０は、フリップフロップのＱ出力３０３にて出力される。イネーブル信号３２０がｌｏｗであるときには、ゲーテッドクロック信号３３０は、現在の値を保持し、スイッチングされない。イネーブル信号３２０がｈｉｇｈであるときには、ゲーテッドクロック信号３３０は入力クロック３１０のあらゆるエッジでスイッチングを開始する。
【００３５】
図６は、図５のＩＣＧに関する例示的な波形を示すタイミング図である。図５及び図６を参照すると、ＩＣＧ３００の第１の入力にて供給されたクロック信号３１０は、論理０と論理１との間で周期的にスイッチングされる。例えば、クロック信号３１０は、それぞれ、立ち上がりエッジ３１１、３１３、３１５及び３１７でｌｏｗからｈｉｇｈに周期的にスイッチングされる。クロック信号３１０は、立ち上がりエッジ３１１、３１３、３１５及び３１７でのｌｏｗからｈｉｇｈへの遷移の各対応する遷移後に、それぞれ、立ち下がりエッジ３１２、３１４、３１６及び３１８でｈｉｇｈからｌｏｗに周期的にスイッチングされる。
【００３６】
ＩＣＧ３００のＴフリップフロップの入力３０２でのイネーブル信号３２０は、最初に時間ｔ＝０の前は論理１であり、ｔ＝０〜ｔ＝１の時間間隔においては論理１のままであり、ＩＣＧ３００は、ＴフリップフロップのＱ出力３０３にてゲーテッドクロック信号３４０を出力することができる。従って、ゲーテッドクロック信号３４０は、クロック信号３１０の立ち上がりエッジ３１１の後の立ち上がりエッジ３４１で、及びクロック信号３１０の立ち下がりエッジ３１２の後の立ち下がりエッジ３４２でｔ＝０〜ｔ＝１の時間間隔においてクロック信号３１０に追従する。
【００３７】
時間ｔ＝１にて、イネーブル信号３２０は、立ち下がりエッジ３２２でｌｏｗにスイッチングされ、時間ｔ＝２までｌｏｗのままである。従って、ｔ＝１とｔ＝２の間の時間中、ＩＣＧ３００のＴフリップフロップは、時間ｔ＝１でのゲーテッドクロック信号２５０の状態に応じて、Ｑ出力にてｌｏｗ値でクロック信号をゲーティングする。その結果、クロック信号３１０は立ち上がり及び立ち下がりエッジ３１３、３１４それぞれで交互にスイッチングされるが、他方、ＩＣＧ３００内のＴフリップフロップの出力でのゲーテッドクロック信号３３０は、イネーブル信号３２０がｌｏｗに切り替わったときに時間ｔ＝１にて存在する論理ｌｏｗ値のままである。
【００３８】
クロック信号３１０の立ち上がりエッジ３１５の直後の時間ｔ＝２にて、イネーブル信号３２０は、立ち上がりエッジ３２３で再びｈｉｇｈにスイッチングされる。ゲーテッドクロック３４０は、イネーブル信号３２０のｈｉｇｈレベルによりイネーブルにされ、次のエッジ３１６の後にクロック信号３１０でスイッチングを開始する。従って、ゲーテッドクロック信号３４０は、次のエッジ、例えば、クロック信号３１０の立ち下がりエッジ３１６で又はその直後に立ち上がりエッジ３４３でｌｏｗからｈｉｇｈにスイッチングされた。その後、ゲーテッドクロック信号３４０は、クロック信号３１０の立ち上がりエッジ３１７で又はその直後に立ち下がりエッジ３４４でｈｉｇｈからｌｏｗにスイッチングされた。
【００３９】
従って、図６に示すような本発明の実施形態によれば、ゲーテッドクロック信号３４０は、論理ｈｉｇｈにてイネーブル信号３２０により時間ｔ＝０でイネーブルになる。時間ｔ＝１にて、ゲーテッドクロック信号３４０はディスエーブルになり、時間ｔ＝１の状態に応じてｌｏｗレベルのままである。時間ｔ＝２にて、ゲーテッドクロック信号３４０は、クロック信号３１０が論理ｈｉｇｈであるときに再びイネーブルになる。その後、ゲーテッドクロック信号はイネーブル信号の立ち上がりエッジの後にクロック信号の次のエッジにて現在値からスイッチングを再開する。ゲーテッドクロック信号３４０は、クロック信号が論理ｈｉｇｈである間に論理ｌｏｗからイネーブルになるので、ゲーテッドクロック信号３４０は、クロック信号が立ち下がりエッジ３１６を有するときに立ち上がりエッジ３４３でスイッチングを開始する。そのため、結果として生じるゲーテッドクロック信号３４０は、入力クロック信号３１０の反転形態である。
【００４０】
本発明の実施形態によれば、ゲーテッドクロック信号３４０の極性は、ゲーテッドクロック信号３４０が入力クロック信号３１０の奇数のエッジについてゲーティングされたままである場合、入力クロック信号３１０から反転される。立ち上がり及び立ち下がりエッジは、ダブルエッジトリガシステムにおいて機能的に同等であるので、ゲーテッドクロック信号の極性の変化は、どのような機能不良も引き起こすことがない。ゲーテッドクロックが２つのデータ依存の反対極性を有することができるので、静的タイミング解析中に回路に対して更なるタイミングチェックを実施する必要がある。
【００４１】
図４及び図６を参照すると、第１のタイミングチェックにおいて、ゲーテッドクロック信号の立ち上がりエッジ３４１にてデータが第１のＤＥＴフリップフロップ３４０により送り出される。送り出されたデータは、組み合せパス３６０を伝播して、ゲーティングされていないクロック信号３１０の次の立ち下がりエッジ３１２にて第２のＤＥＴフリップフロップ３５０により捕捉される。
【００４２】
第２のタイミングチェックにおいて、ゲーテッドクロック信号３４０の立ち下がりエッジ３４２にて、データが第１のＤＥＴフリップフロップ３４０により送り出され、組み合せ論理３６０を伝播し、ゲーティングされていないクロックの次の立ち上がりエッジ３１３にて第２のＤＥＴフリップフロップ３５０により捕捉される。
【００４３】
第３のタイミングチェックにおいて、ゲーテッドクロック信号３４０の立ち上がりエッジ３４３にて、データが第１のＤＥＴフリップフロップ３４０により送り出され、組み合せ論理３６０を通って伝播した後、ゲーティングされていないクロック３１０の立ち上がりエッジ３１７にて第２のＤＥＴフリップフロップ３５０により捕捉される。
【００４４】
第４のタイミングチェックにおいて、ゲーテッドクロック信号３４０の立ち上がりエッジ３４４にて、データが第１のＤＥＴフリップフロップ３４０により送り出され、ゲーティングされていないクロック信号３１０の立ち下がりエッジ３１８にて第２のＤＥＦフリップフロップ３５０により捕捉される。
【００４５】
第１及び第２のタイミングチェックは、クロックゲーティングなしで、ダブルエッジトリガシステムの通常動作中の予想タイミングチェックに対応する。第３及び第４のタイミングチェックは、ゲーテッドクロックが入力クロックの反転形態であるときに、本発明の例示的な実施形態により導入される。タイミングチェックは、クロック位相の概念を用いて既存の静的タイミングツールにより全ての状況で扱うことができ、各ＩＣＧの出力には、反対極性を有する２つのクロック位相が割り当てられる。
【００４６】
図７は、図５のＩＣＧに関する例示的な波形を示すタイミング図である。図５及び図７を参照すると、ＩＣＧ３００の第１の入力にて供給されたクロック信号４１０は、論理０と論理１の間で周期的にスイッチングされる。例えば、クロック信号４１０は、それぞれ、立ち上がりエッジ４１１、４１３、４１５及び４１７でｌｏｗからｈｉｇｈに周期的にスイッチングされる。クロック信号４１０は、立ち上がりエッジ４１１、４１３、４１５及び４１７でのｌｏｗからｈｉｇｈへの遷移の各対応する遷移後に、それぞれ、立ち下がりエッジ４１２、４１４、４１６及び４１８でｈｉｇｈからｌｏｗに周期的にスイッチングされる。
【００４７】
ＩＣＧ３００のＴフリップフロップの入力３０２でのイネーブル信号４２０は、最初に時間ｔ＝０の前は論理０であり、ｔ＝０〜ｔ＝１の時間間隔において論理０のままであり、ＩＣＧ３００は、ＴフリップフロップのＱ出力３０３にてゲーテッドクロック信号４４０を出力することができる。従って、ゲーテッドクロック信号４４０は、クロック信号４１０の立ち上がりエッジ４１１の後の立ち上がりエッジ４４１で、及びクロック信号４１０の立ち下がりエッジ４１２の後の立ち下がりエッジ４４２でｔ＝０〜ｔ＝１の時間間隔においてクロック信号４１０に追従する。
【００４８】
時間ｔ＝１にて、イネーブル信号４２０は、立ち上がりエッジ４２２でｈｉｇｈにスイッチングされ、時間ｔ＝２までｈｉｇｈのままである。従って、ｔ＝１とｔ＝２の間の時間中、ＩＣＧ３００のＴフリップフロップは、時間ｔ＝１でのゲーテッドクロック信号２５０の状態に応じて、Ｑ出力にてｌｏｗ値でクロック信号をゲーティングする。その結果、クロック信号４１０は立ち上がり及び立ち下がりエッジ４１３、４１４それぞれで交互にスイッチングされ、他方、ＩＣＧ３００内のＴフリップフロップの出力でのゲーテッドクロック信号４３０は、イネーブル信号４２０がｈｉｇｈに切り替わったときに時間ｔ＝１にて存在する論理ｌｏｗ値のままである。
【００４９】
クロック信号４１０の立ち上がりエッジ３１５の直後の時間ｔ＝２にて、イネーブル信号４２０は、立ち下がりエッジ４２３で再びｌｏｗにスイッチングされる。ゲーテッドクロック４４０は、イネーブル信号４２０のｌｏｗレベルによりイネーブルにされ、次のエッジ４１６の後にクロック信号４１０でスイッチングを開始する。従って、ゲーテッドクロック信号４４０は、次のエッジ、例えば、クロック信号４１０の立ち下がりエッジ４１６で又はその直後に立ち上がりエッジ４４３でｌｏｗからｈｉｇｈにスイッチングされた。その後、ゲーテッドクロック信号４４０は、クロック信号４１０の立ち上がりエッジ４１７で又はその直後に立ち下がりエッジ４４４でｈｉｇｈからｌｏｗにスイッチングされた。
【００５０】
従って、図６に示すような本発明の実施形態によれば、ゲーテッドクロック信号４４０は、論理ｌｏｗにてイネーブル信号４２０により時間ｔ＝０でイネーブルになる。時間ｔ＝１にて、ゲーテッドクロック信号４４０はディスエーブルになり、時間ｔ＝１の状態に応じてｌｏｗレベルのままである。時間ｔ＝２にて、ゲーテッドクロック信号４４０は、クロック信号４１０が論理ｈｉｇｈのあるときに再びイネーブルになる。その後、ゲーテッドクロック信号はイネーブル信号の立ち上がりエッジの後にクロック信号の次のエッジにて現在値からスイッチングを再開する。ゲーテッドクロック信号４４０は、クロック信号が論理ｈｉｇｈである間に論理ｌｏｗからイネーブルになるので、ゲーテッドクロック信号４４０は、クロック信号が立ち下がりエッジ４１６を有するときに立ち上がりエッジ４４３でスイッチングを開始する。そのため、結果として生じるゲーテッドクロック信号４４０は、入力クロック信号４１０の反転形態である。
【００５１】
図８は、本発明の別の実施形態による、ＤＥＴデジタルシステム用のＩＣＧの例示的なＣＭＯＳ実施構成を示す。図７を参照すると、Ｔ型ダブルエッジトリガフリップフロップは、Ｄ型ダブルエッジトリガフリップフロップ５００及びＸＯＲゲート５７０により実施される。Ｄ型ダブルエッジトリガフリップフロップ５００は、負ラッチ５１０、正ラッチ５２０、マルチプレクサ５３０及びバッファ５４０から構成されている。負ラッチ５１０は、クロック信号５９０がｌｏｗであるときに入力から出力にデータを伝え、クロック信号がｈｉｇｈであるときに状態を保持する。これとは対照的に、正ラッチ５２０は、クロック信号５９０がｈｉｇｈであるときに入力から出力にデータを伝え、クロックがｌｏｗであるときに状態を保持する。負ラッチ５１０及び正ラッチ５２０は、並列に機能し、各々がクロック信号５９０の両エッジでデータの半分を格納する。マルチプレクサ５３０はクロック信号５９０に応答して交番し、何れのラッチが現在保持状態であるかに応じて正ラッチ５２０又は負ラッチ５１０を選択する。これにより、Ｄタイプフリップフロップ５００が入力上のデータから出力上のデータまでトランスペアレントでないことが確保される。出力上のバッファ５４０は、マルチプレクサ５３０全体にわたるあらゆる電圧損失を補償する。
【００５２】
Ｔ型フリップフロップを実施するために、Ｄタイプフリップフロップ５００の現在の出力値は、フィードバックループ５８０を介してＸＯＲゲート５７０の第１の入力に接続される。データ、この場合はイネーブル信号５５０は、ＸＯＲゲート４５０の第２の入力に接続される。ＸＯＲゲート５７０の出力は、Ｄ型フリップフロップ５００の入力に接続される。イネーブル信号５５０がｌｏｗであるときには、ゲーテッドクロック出力５６０は現在値を保持する。イネーブル信号５５０がｈｉｇｈであるときには、ゲーテッドクロック信号５６０はクロック信号５９０の各エッジでスイッチングされる。
【００５３】
本発明の実施形態によれば、ダブルエッジトリガシステムと互換性のあるＩＣＧセルは、ディスエーブルになる前に最終値にてゲーテッドクロック信号を停止し、イネーブルになったときに最終値からスイッチングを再開する。従って、ゲーテッドクロック信号の波形は、入力クロック信号の逆である。しかしながら、ダブルエッジトリガ回路は、クロックエッジにて正しくデータを取り込んで転送する。
【００５４】
イネーブル信号がｌｏｗであるときに入力クロック信号をゲーティングするクロックゲーティングセルを図示し説明してきたが、イネーブル信号がｈｉｇｈであるときに入力クロック信号がゲーティングされる他の実施形態も企図される。
【００５５】
本発明の技術的思想又は範囲から逸脱することなく、本発明の実施形態のダブルエッジトリガフリップフロップを備えた回路において使用するための一体型クロックゲーティングセルにおいて、様々な修正及び変形を行うことができることは、当業者には明らかであろう。従って、本発明の実施形態は、添付の請求項及びその均等物の範囲に該当する限り、本発明の修正及び変形を包含するものとする。
【符号の説明】
【００５６】
１１０：イネーブル
１２０：クロック
１３０：ゲーテッドクロック
【図１】
2013513307.tif 000003
【図２】
2013513307.tif 000004
【図３】
2013513307.tif 000005
【図４】
2013513307.tif 000006
【図５】
2013513307.tif 000007
【図６】
2013513307.tif 000008
【図７】
2013513307.tif 000009
【図８】
2013513307.tif 000010
【国際調査報告】
2013513307.tif 000011