説明

プログラマブルデュアルエッジトリガーカウンター

最小のジッターを備えたクロック信号を合成するためのカウンターは、出力クロックの立ち上がりエッジを入力クロック信号の立ち上がりエッジまたは立ち下がりエッジによりトリガーしなければならないかどうかを決定するために、さらに、出力クロックの立ち下りは、入力クロック信号の立ち下りの立ち上がりエッジまたは立ち下りによりトリガーしなければならないかどうかを決定するために進行中のカウントを分析する。カウンターはM/N:Dカウンターとして実施してもよい。このカウンターにおいて、位相アキュムレーターは所定の値と比較され、出力クロック信号の立ち上がりエッジおよび立ち下りを選択する。デフォルト条件では、出力クロック信号の立ち上がりエッジおよび立ち下りは、入力クロック信号の立ち上がりエッジによりトリガーされる。しかしながら、累積された位相値がM/2以上かつM未満なら、オーバーライディング(overriding)信号は、以前の入力クロックサイクルの立ち下りに基づいて、出力クロックの立ち上がりエッジをトリガーするであろう。累積された位相値がD+M/2以上で、かつM未満なら、出力クロックの立ち下がりエッジは、先行する入力クロック信号の立ち下りによりトリガーされる。入力クロック信号の立ち上がりエッジおよび立ち下りの使用は、出力クロック信号のジッターを低減し、デューティサイクル分解能を改善する。さらに、クロック回路は、50%デューティサイクルでモジュロ−n信号を生成することができる。計画的なアーキテクチャは、さらにその特性が非反転出力クロック信号(反転されたデューティサイクルは例外として)と同一の反転出力クロック信号を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
背景
関連出願
この出願は、2003年1月3日に出願された米国仮出願60/444,336に対する優先権を主張する。
【0002】
技術分野
この発明は、デジタル電子回路に関連し、特にプログラマブルカウンターに関連する。
【背景技術】
【0003】
関連技術の記載
カウンターはイベントを追跡するために多様なデジタル回路において使用される。
【0004】
さらに、カウンターは、クロック信号および他の波形を合成するために使用される。
【0005】
一般に、第2の(下位)クロック周波数はカウンターを使用して、第1の(上位)クロック周波数から合成される。
【0006】
典型的には、簡単なM/N:Dタイプカウンターが使用される。
【0007】
この場合MとNが整数で、Dが出力クロックのデューティサイクルである。
【0008】
The M/N:Dカウンターは典型的に、第1クロック周波数からのパルスをカウントし、周期的に第2のクロック周波数でパルスを出力する立ち上がりエッジカウンターとして実施される。すなわち、M/Nカウンターは、基準クロックまたは入力クロックのNパルス毎にMパルスを出力する。従来のM/N:Dカウンターは、Mの出力パルスの各々の立ち上がりエッジが基準クロックの立ち上がりエッジから派生されるように基準クロックに同期する。
【0009】
これは、第1クロック周波数が第2クロック周波数の整数倍であるとき、相対的に直接的である。しかしながら、第1のクロックが第2のクロックの整数倍でない場合、クロック合成のタスクはやや挑戦的である。例えば、基準クロックが5メガヘルツ(MHz)のクロックでり、従来の開示に従って、1.5MHzクロックを合成する必要がある場合、M=3およびN=10にプログラムされたM/Nカウンターは、基準クロックを3/10と効率的に乗算し、または基準クロックの10クロックパルス毎に3つのクロックパルスを出力する。
【0010】
この従来の回路では、カウンターの分解能は1つの完全なクロック周期である。この200ナノ秒の誤差または5MHz基準クロックの例における1クロック周期は、当業者にはジッターとして知られている。従来のM/N:Dカウンターを用いて合成されたクロック信号は、過度のクロックジッターに悩む。なぜなら、従来のM/N:Dカウンターは、カウンターシーケンスの同じポイント(すなわち、ロールオーバー(rollover)ポイント)からの出力クロックエッジを発生する。ロールオーバーポイントは、カウンターが前のカウントを終了し、新しいカウントを始めるポイントである。その結果、出力クロックジッターは、理想的な出力クロックエッジがカウンター周期の最後のクロックエッジおよびロールオーバークロックエッジとの間のどこかに常に存在するという事実にもかかわらず、ゼロから入力基準クロックの周期に変化するであろう。
【0011】
そのようなジッターはある高精度のアプリケーションに対しては、受け入れることができない。そのような1つのアプリケーションはユニバーサルシリアルバス(USB)アプリケーションである。このアプリケーションでは、ジッターは、クロック修復動作に干渉するので受け入れることができない。別の実例となるアプリケーションはアナログディジタル変換アプリケーションである。このアプリケーションでは、ジッターは受け入れることができない。なぜなら、ジッターは、予測できないデータ変換レートおよび過度の雑音を生じるからである。これらおよび他のアプリケーションの場合、M/N:Dカウンターが高周波で動作することが重要である。しかしながら、技術的によく知られているように、M/N:Dカウンターの入力クロック周波数レンジは、直接的に、出力クロックのジッターの量に相関する。
【0012】
したがって、改善されたジッター性能を備えた改善されたM/Nカウンターのための技術の必要性がある。この発明は、以下の詳細な説明および添付図面から明白になるであろうこの利点および他の利点を提供する。
【発明の概要】
【0013】
この開示は、プログラマブルクロック回路を用いて出力クロック信号を発生するためのシステムおよび方法を提供する。例示実施形態において、プログラマブルクロック回路は、所定の周波数を有し、各クロックサイクルに関連する立ち上がりエッジおよび立ち下りを有する入力クロック信号から周波数を発生する。回路は、入力クロック信号を受信し、入力クロックのNサイクルごとにMサイクルの周波数を有するカウンター信号を発生するように構成されたカウンターを含む。カウンターに接続する比較器は、カウンターのカウント値を所定のカウント値と比較し、比較に関連した比較器信号を発生する。制御回路は、比較器信号に基づいて出力クロック信号を発生し、それにより入力クロック信号の立ち上がりエッジまたは立ち下りに基づいて出力クロック信号の立ち上がりエッジを選択し、および入力クロック信号の立ち下りまたは立ち上がりエッジに基づいて出力クロック信号の立ち下りを選択する。
【0014】
一実施形態において、制御回路は、カウンターが0以上かつM/2未満の値を有することを比較器が示すなら、出力クロック信号の立ち上がりエッジが入力クロック信号の立ち上がりエッジに基づく出力クロック信号を発生する。反対に、制御回路は、比較器がM/2以上かつM未満の値をカウンターが有することを示すなら、出力クロック信号の立ち上がりエッジが入力クロック信号の立ち下りに基づく出力クロック信号を発生する。
【0015】
一実施形態において、カウンターはM/N:Dカウンターである。この場合N/Dは、出力クロック信号の平均デューティサイクルである。一実施形態において、カウンターがD以上でD+M/2未満の値を有することを比較器が示すなら、制御回路は、出力クロック信号の立ち下りが入力クロック信号の立ち上がりエッジにもとづく、出力クロック信号を発生する。反対に、カウンターがD+M/2以上かつD+M未満の値を有することを比較器が示すなら、出力クロック信号の立ち下りが入力クロック信号の立ち下りに基づく出力クロック信号を発生する。
【0016】
一実施形態において、Dの値は、半整数分解能を用いて選択してもよい。これは、Nのすべての値に対して一定のデューティサイクルを有し、Nの偶数値に対して50%のデューティサイクルを有する半整数による完全な分割を可能にする。カウンター回路は、また、出力クロック信号に50%のデューティサイクルを供給するために時間ジッターまたは周波数スパー(spurs)を有さないモジュロ−N分割を行ってもよい。
【0017】
他の実施形態において、プログラマブルクロック回路は、所定の周波数を有する入力クロック信号と制御回路を含む。制御回路は、入力クロックのNサイクルごとにMサイクルの周波数を有する出力クロック信号を発生し、さらに、入力クロック信号の立ち上がりエッジまたは立ち下りに基づいて出力クロック信号の立ち上がりエッジを選択し、入力クロック信号の立ち上がりエッジまたは立ち下りに基づいて出力クロック信号の立ち下りを選択する。一実施形態において、制御回路は、ステートマシンを含む。ステートマシンは、出力クロック信号の立ち上がりエッジが入力クロックの立ち上がりエッジに基づく出力クロック信号の選択されたサイクルを発生するとともに、出力クロック信号の立ち上がりエッジが入力クロックの立ち下りに基づく出力クロックサイクルの選択されたサイクルを発生する。ステートマシンは、さらに出力クロック信号の立ち下りが入力クロック信号の立ち上がりエッジに基づく、出力クロック信号の選択されたサイクルを発生するとともに、出力クロック信号の立ち下りが入力クロックの立ち下りにもとづく出力クロック信号の選択されたサイクルを発生する。
【0018】
さらに他の実施形態において、この回路はデータを含む記憶エリアを含んでいてもよい。このデータは、出力クロック信号のMサイクルのどのサイクルが入力クロックの立ち上がりエッジに基づいて立ち上がりエッジを有するかを示すとともに、出力クロックのMサイクルのどのサイクルが入力クロックの立ち下りに基づいて立ち上がりエッジを有するかを示す。制御回路は、出力クロック信号を発生するためにこの記憶エリアデータを使用する。
【0019】
他の実施形態において、記憶エリアはデータを含んでいてもよい。このデータは、出力クロック信号のMサイクルのどのサイクルが入力クロックの立ち上がりエッジに基づいて立ち下りを有するかを示すとともに、出力クロック信号のMサイクルのどのサイクルが入力クロックの立ち下りに基づいて立ち下りを有するかを示す。制御回路は、出力クロック信号を発生するために記憶エリアデータを使用する。
【0020】
さらに他の実施形態において、 回路は、制御回路を無効にするためにモード制御入力を含む。この場合、制御回路において、モード制御入力は、カウンター値に関係なく出力クロック信号の立ち上がりエッジおよび立ち下りが入力クロック信号の立ち上がりエッジに基づく出力クロック信号を発生する。
【発明を実施するための最良の形態】
【0021】
M/N:Dカウンターの利点は、良く知られており、入力または基準クロックの非整数デバイザー(devisor)を発生する能力を含む。入力クロックの立ち上がりエッジにのみ同期したシステムの波形タイミングは、ここに記載したkの発明の理解を支援するであろう。
【0022】
図1は、出力クロック信号の立ち上がりエッジをトリガーするために入力クロックの立ち上がりエッジだけの使用を図解する一連の波形である。図1に図解される例において、入力クロック(上の波形)は、100メガヘルツ(MHz)の周波数を有している。図1に図解される例において、M=3、N=7、およびD=3である。技術的に知られているように、従来のM/N:Dカウンターは、7つの入力クロックパルス(すなわちN=7)ごとに3つの出力クロックパルスを生成するであろう。波形関係についての理解を容易にするために、入力クロックサイクルはN=7の値に対応して0乃至6の番号がつけられ、出力波形(理想的出力クロックおよびM/N出力クロック)は、M=3に対応するように0乃至2のラベルがつけられている。
【0023】
図1の真ん中の波形は、理想的な出力クロックを図解する。理想的な出力クロックの立ち上がりエッジは、通常、入力クロックの立ち上がりエッジまたは立ち下りと一致しないことが留意されるべきである。
【0024】
図1の下の波形は、立ち上がりエッジが常に入力クロックの立ち上がりエッジに同期するM/N:Dカウタンーの出力を図解する。入力クロックの立ち上がりエッジのみへの同期は、顕著なジッターを生じる。そのような回路構成のためのジッターは、1入力クロック周期に等しくすることができる。1入力クロック周期は、図1に図解される例において、10ナノ秒(ns)である。プログラマブルカウンター値(すなわち、M=3およびN=7)の選択により、絶対ジッターは、6.7ナノ秒である。
【0025】
この発明は、出力クロックの立ち上がりエッジおよび立ち下りが基準クロックの立ち上がりエッジまたは立ち下りに同期してもよい回路に向けられている。基準クロックの立ち上がりエッジまたは立ち下りに対する出力クロックの立ち上がりエッジの同期は、技術的に知られており、例えば、米国特許第6,449,329に記載されている。
【0026】
上で参照した特許に記載された回路は、入力または基準クロックと出力クロックとの間で1サイクル遅延を実施する。1サイクル遅延の期間に、比較器は、累積されたカウントを解析し、出力クロックの立ち上がりエッジが、ロールオーバーポイントのための基準クロックの立ち上がりエッジに基づいて、または基準クロックの先行するクロックサイクルの立ち下りに基づいてトリガーされなければならないかどうか決定する。
【0027】
例示実施形態において、ロールオーバー値がM/2未満である場合、ロールオーバークロックエッジは理想的な出力クロックエッジに近づく。この状況では、出力クロックは、入力クロックの立ち上がりエッジに基づいてトリガーされる。ロールオーバー値がM/2より大きな場合、ロールオーバー立ち上りクロックエッジに先行する、立ち下りクロックエッジはより近いエッジであり、出力クロックは、先行する入力クロックサイクルの立ち下りに基づいてトリガーされる。
【0028】
米国特許第6,449,329において、出力クロックの立ち上がりエッジをトリガーするために入力クロックの立ち上がりエッジまたは立ち下りの選択を可能にする回路が開示されている。そのような構成の利点は、図2の検査に関して最も理解される。
【0029】
この場合も先と同様に、100MHzクロックを利用し、M/N:Dカウンターは、M=3、N=7、およびD=3の値を有する。発明の理解を支援するために、値N=7に対応して入力クロックサイクルは0乃至6の番号がつけられ、出力波形(すなわち、理想的な出力クロックとM/N出力クロック)は、値M=3に対応して0乃至2のラベルがつけられた。図3の上の波形は、100MHzの方形波である。理想的なクロック入力の対応するスペクトルは波形の右に示され、100MHzに中心を持つ大きなピークを有する。当業者は、奇数オーダーの高調波も存在するが、第1の奇数オーダーの高調波は300MHzで生じるので、図2のスペクトルには図解されていないことを理解するであろう。
【0030】
図2の真ん中の波形は理想的な出力クロックである。このクロックの立ち上がりエッジと立ち下りは典型的に入力クロックの立ち上がりエッジおよび立ち下りと一致しない。
【0031】
理想的な出力クロックのスペクトルは波形の右に示される。スペクトル内の最大のピークは、42.8MHz(すなわち、3/7×100MHz)において所望の出力信号に相当する。理想的な出力クロックのための出力クロックスペクトルは、予期された奇数オーダーの高調波のみを含み、第1奇数オーダー高調波のみが略128.5MHzにおいて示されていることに留意する必要がある。
【0032】
図2の下の波形は、M/N:Dクロックである。この場合、出力クロックの立ち上がりエッジは、入力クロックの立ち上がりエッジまたは立ち下りから選択的にトリガーされる。上に記述されるように、回路は、第1出力クロックパルスの発生において、1サイクルの遅延を使用する。これにより、出力クロックの解析が可能となり、回路は、入力クロックの次の立ち上がりエッジからずれてトリガーしたりまたは、以前のクロックサイクルの立ち下りからトリガーすることが可能となる。
【0033】
図2の下の波形において、上向きを指す矢は、入力クロックの立ち上がりエッジによりトリガーされる出力クロックパルスを示すために使用され、下方へ指す矢は、入力クロックの立ち下がりエッジによりトリガーされる出力クロックパルスの立ち上がりエッジを示すために使用される。図2で見ることができるように、第2のクロックパルス(すなわち、図2において、1とラベルが付けられたパルス)の立ち上がりエッジは、パルス4の立ち上がりエッジではなく入力クロックのパルス3の立ち下がりエッジによりトリガーされる。クロック発生へのそのようなアプローチは、従来技術において知られているクロック発生へのアプローチからジッターを顕著に減少する。
【0034】
この回路アーキテクチャは、2の因数だけ立ち上がりエッジにおいて有効にジッターを低減する。すなわち、立ち上がりエッジにおける最大ジッターは、T/2であり、この場合Tは、入力クロックの周期である。M/N:Dクロックの性質により、図2の下の波形の右に示される、クロックパワースペクトルの出力スパーは、1/N、2/N、3/N...M/N,...M/N,(N+1)/N,...において生じる。最大のスパイクは、所望出力周波数(すなわち、M/N×入力周波数)に中心がある。図2に図解された例において、最大のスパイクは3/7 x 100MHzで生じる。それは42.8MHzである。理解できるように、入力または基準周波数が一定であり、MとNが相対的に素数であると仮定すると、Nの値が大きければ大きいほど、スパーは、出力スペクトル内で近くなる。「互いに素数」という用語は、2つの数(すなわち、MとN)が共通に因数を有していないことを示す、技術的に知られた用語である。
【0035】
米国特許第6,449,329に記載されたクロック回路は、M/N×入力周波数における所望の信号を生成する。出力クロックスペクトラムのスパーの近接は、望ましくない干渉を生じるかもしれない。図2の各クロックパルスの立ち下りは、入力クロックパルスの立ち上がりエッジでトリガーされることに注意する必要がある。
【0036】
ここに記載されたアプローチは、出力クロックの立ち上がりエッジおよび立ち下りの両方を解析し、入力クロックの立ち上がりエッジまたは立ち下りに基づいて出力クロックの立ち上がりエッジおよび立ち下りをトリガーする。出力クロックの立ち上がりエッジおよび立ち下りは、時間的に理想的な位置に近いので、回路ジッターは顕著に低減される。
【0037】
ある項の定義は、出力クロック信号の立ち上がりエッジおよび立ち下りに対して入力クロック信号の立ち上がりエッジまたは立ち下りの選択により供給される回路性能改善のより完全な理解を提供するであろう。「絶対ジッター」という用語は、理想的なクロックエッジの時間における位置とある開始点から測定した実際のクロックエッジとの間の差分として定義される。この開始点がどこかによって、M/N:Dカウンターの絶対ジッターは、−T/2<絶対ジッター<T/2であり、但しTは入力クロックの周期である。「サイクルごとのジッター」という用語は、2つの連続する出力クロックサイクル間における時間的な差分として定義される。図1の例では、サイクルごとのジッターは、10nsである。図2の例において、立ち上がりエッジ時間サイクルごとのジッターは、50%改善されるが、出力クロック信号の立ち下りにより測定されたサイクルごとのジッターは依然として1サイクルである。図3の出力波形において、出力クロックの立ち上がりエッジから立ち上がりエッジまたは立ち下りから立ち下りで測定されたサイクルごとのジッターの最悪のケースはT/2である。「最小周期」という用語は、出力クロックの最小周期である。
【0038】
このパラメーターは重要である。なぜならば、このパラメーターは、クロックを使用する回路が動作するのに必要な最速の周波数を表すからである。図1の例では、最小の周期は20nsである。M/N:Dカウタンーの出力は、平均周波数がプログラムされた周波数である出力信号を発生することを当業者は認識するであろう。図1乃至2に図解された例において、出力周波数は、3/7×100MHzであり、これは、42.8メガヘルツに等しい。しかしながら、サイクルごとにみると、回路は、20ナノ秒の最小周期を有しているかもしれない。したがって、このクロックを使用するどんなデジタル回路も、最大の瞬時周波数を提供するために50MHzで正確に動作しなければならない。
【0039】
図3は、この開示に従って設計された理想的な入力クロック、理想的出力クロックおよびM/N:Dカウタンーのための波形および関連するスペクトルを図解する。この場合も先と同様に、図3に図解される例は、100MHz入力クロックを使用し、M=3、N=7、およびD=3のカウンター値を有し、入力クロックと出力クロックの個々のパルスは、それぞれ、0乃至6および0乃至2のラベルが付けられる。上の波形は、理想的な入力クロックのいくつかのサイクルを図解し、その右に、それに関連するスペクトルがある。真ん中の波形は、理想的なクロック出力であり、その立ち上がりエッジおよび立ち下りは、典型的には、入力クロックの立ち上がりエッジまたは立ち下りに一致しない。理想的な出力クロックに関連したスペクトルは、波形の右に示される。
【0040】
選択可能な立ち上がりエッジおよび立ち下りを有するM/N:Dカウンターの出力は、図3の下の波形に図解される。波形中の上向矢印記号は、入力クロックの立ち上がりエッジによりトリガーされるリーディングおよびトレイリング出力クロックエッジを図解し、下向き矢印記号は、入力クロックの立ち下りによりトリガーされる立ち上がりエッジまたは立ち下りを示す。図3に図解されるように、クロックパルス0の立ち上がりエッジは、入力クロックの立ち上がりエッジによりトリガーされ、その同じ出力クロックパルス(すなわち、クロックパルス0)の立ち下りは、入力クロックの立ち下りによりトリガーされる。出力クロックパルス1の立ち上がりエッジおよび立ち下りは両方とも入力クロックの立ち下りによりトリガーされ、出力クロックパルス2の立ち上がりエッジおよび立ち下りは両方とも入力クロックの立ち上がりエッジによりトリガーされる。
【0041】
したがって、出力クロックの立ち上がりエッジおよび立ち下りは両方とも、出力クロックの立ち上がりエッジおよび立ち下りの両方のサイクルジッターを最小にするように、入力クロックの立ち上がりエッジまたは立ち下りによりトリガーされる。バランストエッジトリガードカウターと呼んでもよい、この技術は、T/2の最大立ち上がりエッジ時間サイクルジッターを有し、およびT/2の最大立ち下がりエッジ時間サイクルジッターを有する。但し、Tは、入力クロックの周期である。これは、シングルエッジ(すなわち、入力クロックの立ち上がりエッジにのみ同期する)またはデュアルエッジ(すなわち、出力クロックの立ち上がりエッジは、入力クロックの立ち上がりエッジまたは立ち下りに同期される)回路設計に比べて立ち下がりエッジ時間サイクルジッターを2の因数だけ低減する。
【0042】
下記の表1は、様々なクロッキングシステムの特性を比較する。比較のなかに含まれているのは一般的な単一エッジクロックシステムである。このシステムにおいて、出力クロックの立ち上がりエッジおよび立ち下りは、入力クロックの立ち上がりエッジのみに基づく。さらに、表1に示されるのはデュアルエッジシステムの特性である。このシステムにおいて、出力クロックの立ち上がりエッジは、入力クロックの立ち上がりエッジまたは立ち下りに基づいていてもよい。最後に、表1は、さらに回路100(図5参照)のような平衡デュアルエッジ回路を図解する。この回路において、出力クロックサイクルの立ち上がりエッジおよび立ち下りは、入力クロックの立ち上がりエッジまたは立ち下りに基づいていてもよい。
【表1】

【0043】
上の表1において、出力クロック信号の立ち上がりエッジおよび立ち下りのための最小周期は、プログラムされたNおよびM並びに基準クロックの周波数に関連する。「floor(N/M)」という用語は、最も近い整数値に丸め込まれたN/Mの値を指す。ここに記載された平衡デュアルエッジ回路は、50%デューティサイクルでモジュロ−N出力信号を発生することができるという点において、シングルエッジトリガードカウンターおよびデュアルエッジトリガードカウンターに対して改善を有する。これを達成するために、プログラムカウンタ値Mは、任意のN≧2に対して1に設定され、D=N/2に設定される。その他のデューティサイクルが所望であるなら、プログラマブルパラメーターDは、以下の関係を満足するようにプログラムしてもよい。1≦D≦(N−1)。
【0044】
平衡デュアルエッジトリガードM/N:Dカウンターは、プログラマブル値Dに関して改善された分解能を有する。値Dはこれから、0.5の分解能で選択することができ、以下に詳細に記載するように、ハードウエアの簡単化のために、2×Dの1の補数としてプログラムされる。他の主要な利点は、M/N:Dカウンターの真の出力および反転された出力は、同じ特性を有することである。すなわち、ジッター、最小周期および時間系列は出力クロックおよびその反対に対して同じである。当業者が理解するように、デューティサイクルは、反転された出力および非反転された出力との間に逆にされる。
【0045】
平衡デュアルエッジM/N:Dカウンターはまた半整数により完全な除算を実行することができる。これは、任意の値N≧4に対してM=2に設定することにより行われる。
【0046】
この場合50%デューティサイクルは、Nの偶数値に対してのみ得ることができるが、すべてのNおよびDに対して一定のデューティサイクルを得ることができる。この場合も先と同様に、Dは、2≦D≦(N−2)を満足するために、0.5の分解能で選択することができる。
【0047】
さらに、シングルエッジトリガーまたはデュアルエッジトリガーを使用したM/N:Dカウンターは、M≦N/2の値のMに関する制限で設計される。この制限は平衡デュアルエッジ回路によって改善される。以下に記載する図5の回路を用いて、Mは、M≦2/3(N)のように設定することができる。
【0048】
図3の下の波形に記載される所望の出力クロック特性を満足に提供してもよい多くの回路実施がある。カウンターとコンパレーター回路の実施を用いて、累積された位相値を決定し、それを所定のカウント値と比較してもよい。この概念は、図4の波形に図解される。この場合、デフォルト条件は、出力クロック信号の立ち上がりエッジと立ち下りが入力クロックの立ち上がりエッジに基づくと仮定される。すなわち、出力クロック信号の立ち上がりエッジは、累積された位相値(すなわち、カウント値)が0以上でM/2未満なら入力クロックの立ち上がりエッジによりトリガーされるであろう。しかしながら、累積された位相値がMとM/2の間にある場合、出力クロック信号立ち上がりエッジエッジは、出力クロック信号の立ち上がりエッジのためのトリガーとして、先行する入力クロック信号の立ち下りを用いて早くトリガーされなければならない。カウントが正確にM/2なら、入力クロックの立ち上がりエッジまたは立ち下りを用いて出力クロックの立ち上がりエッジをトリガーすることができる。しかしながら、入力信号の立ち上がりエッジで出力クロックをトリガーするカウント値と、入力信号の立ち下りで出力クロックをトリガーするカウント値との間のバランスを維持することが望ましい。したがって、回路100は、カウント値がM/2以上でM未満なら入力クロックのネガティブエッジが出力クロック信号の立ち上がりエッジをトリガーするようにカウント値M/2を割り当てる。カウント値がD未満であるときはいつでも、出力クロック信号は高い。
【0049】
出力クロック信号の立ち下がりエッジのためのデフォルト選択は、入力クロックの立ち上がりエッジによりトリガーされるということである。すなわち、累積された位相値が、D以上でD+M/2未満ならば、出力クロック信号の立ち下がりエッジは、入力クロック信号の立ち上がりエッジによりトリガーされるであろう。しかしながら、カウント値が、D+M/2とD+Mの間にある場合、先行する入力クロックサイクルの立ち下がりエッジは出力クロック信号の立ち下がりエッジをトリガーするために使用される。回路100は、カウント値がD+M/2以上でD+M未満ならば、出力クロック信号の立ち下りは、入力クロックの立ち下りによりトリガーされるようにD+M/2のカウント値を立ち下がりエッジに割り当てる。これは、入力信号の立ち下がりエッジで出力クロック信号をトリガーする入力信号カウント値の立ち上がりエッジで出力クロック信号をトリガーするカウント値間のバランスを維持する。
【0050】
図5は、そのようなクロック信号を生成することができる回路100の1つの実施形態を例証するブロック図である。回路100は多少概要の形式で図解されるが、既知の回路接続を省略する。どんな省略された接続も、当業者の一人の設計能力内にある。
【0051】
回路100は、それぞれ、第1および第2加算器102および104を含む。例示実施形態において、第1および第2の加算器102乃至104への入力は、17ビットのプログラマブル入力であり、すべてのプログラマブル値は、2の補数値としてプログラムされる。しかしながら、当業者は、入力ビットの数は、所望の動作レンジを提供するように選択してもよく、回路100において、異なる数学的表現を満足に使用してもよいことを理解するであろう。第1の加算器102への入力値がレジスタ106により供給され、第2の加算器104への入力は、レジスタ108により供給される。レジスタ106および108は、従来の手段によってハードコード化してもよいし、またはプログラムしてもよい。
【0052】
例示実施形態において、タイミングおよび制御回路110は、カウンター値M、NおよびDを含む回路100のプログラミングを可能にするために入力値を提供する。タイミングおよび制御回路110は値Mだけでなく、回路設計を簡単にするために、量−(N−M)、−D等を発生してもよい。また、タイミングおよび制御回路110は、イニシャライズするためにリセット信号RESETを発生し、種々の回路コンポーネントをリセットする。また、タイミングおよび制御回路110は、基準クロック112の動作を制御する。
【0053】
基準クロック112は、カウンターへの入力クロックを生成する。レジスタ106(タイミングおよび制御回路によりハードコード化されようとまたはプログラムされようと)の入力は、プログラムカウンタ値NおよびM(すなわち、値−(N−M)間の差分の1の補数バージョンである。レジスタ108の値はカウンター値Mでプログラムされる。
【0054】
第1加算器および第2加算器102乃至104の出力は、それぞれ、マルチプレクサー114に第1入力および第2入力を供給する。さらに、第1の加算器102の出力の最上位ビット(MSB)は、マルチプレクサー114への制御入力を提供する。MSBが高くなると、MSBは、マルチプレクサー114に第1の加算器102の出力の代わりに第2の加算器104の出力を選択するように信号を送る。
【0055】
マルチプレクサー114の出力は、位相アキュムレーターとして機能するフリップフロップ116のD入力に接続される。フリップフロップ116の出力は加算器102および104にフィードバックされ、さらに、比較器120の入力に供給される。比較器120は、位相アキュムレーターフリップフロップ116の出力を比較し、値がM/2以上かつ値M未満かどうか決定する。そのような状況において、図4に図解するように、出力クロックの立ち上がりエッジは、先行する入力クロックのネガティブエッジまたは立ち下りによりトリガーされなければならない。これらの条件が満たされる場合、比較器120の出力は、ラッチフリップフロップ122の入力に供給され、リタイミング回路124に供給される。
【0056】
位相アキュムレーターフリップフロップ116の出力も第3加算器126に接続される。
【0057】
位相アキュムレーターフリップフロップ116からの値は、プログラムパラメーターDの負値に加算される。
【0058】
第3加算器126の出力は、出力が比較器132および134に接続された高速ラッチ130に接続される。
【0059】
位相アキュムレーターフリップフロップ116中の値がプログラムパラメーターD未満である限り、出力クロックは高ロジックレベルに維持される。
【0060】
加算器126、ラッチ130および比較器132はそのような決定をなすために使用される。加算器126は、Dの負値でプログラムされたので、比較器132はラッチ130の出力が0未満かどうか決定する。ラッチ130の出力が0未満である場合、比較器132からの信号はHIGHCLK信号ラインをイネーブルにする。それにより出力クロックは、適切な入力クロック信号の立ち上がりエッジでのみ出力クロックをトリガーさせる。
【0061】
ラッチ130の出力は、また比較器134に接続され、出力クロック信号の立ち下がりエッジが入力クロック信号の立ち下りでトリガーされなければならないかどうか決定する。
【0062】
図4に図解するように、位相アキュムレーターフリップフロップ116の値が、D+M/2以上でD+M未満の値を有しているなら、クロック信号の立ち下りは、先行する入力クロック信号の負の立ち下りからずれてトリガーされなければならない。値Dがその不等式から減算されるなら、累積フリップフロップマイナスDの値がM/2以上かつ値M未満なら、出力クロックは、入力クロックの立ち下りでトリガーされなければならない。加算器126は位相アキュムレーターフリップフロップ116の値から−Dの値を加算する(すなわちDを減算する)。したがって、比較器134は、加算器126の出力がM/2以上かつ値M未満の値を有するかどうか決定する。これらの条件が満たされる場合、先行する入力クロック信号の立ち下りによりトリガーされる出力クロックの立ち下りを持つことがより正確である。比較器134の出力は以下に記載された方法でリタイミング回路124に接続される。
【0063】
リタイミング回路124は、制御回路として機能し、比較器の信号に基づいて適切な出力クロック信号を発生して同期化させ、それにより、入力クロック信号の立ち上がりエッジまたは立ち下りに基づいて出力クロック信号の立ち上がりエッジを選択し、そして、入力クロック信号の立ち上がりエッジまたは立ち下りに基づいて、出力クロック信号の立ち下りを選択する。動作のデフォルトモードは、入力クロック信号の立ち上がりエッジエッジで立ち上がるおよび立ち下がる出力クロックを持つことである。これは、HIGH_CLK信号を介してラッチ140の入力に接続された比較器132の出力を用いて達成される。比較器の結果に基づいて、出力クロック信号の立ち上がりエッジが入力クロックの立ち下がりエッジによりトリガーされなければならないなら(すなわち、アキュムレーターの値がM/2以上で≦Mである)、比較器120の出力は、高いレベルに設定されNEG_RISE_EDGE信号を発生する。その信号はラッチフリップフロップ122により1クロックサイクル遅延される。したがって、図5に図解されるラッチ142への入力信号は、NEG_RISE_EDGE_Dとして指定され、それは比較器120により発生されたNEG_RISE_EDGE信号の遅延されたバージョンであることを示す。この場合、出力クロックはデフォルト条件より1/2サイクル早いハイレベルになるであろう。
【0064】
位相アキュムレーターフリップフロップ116の出力が上に表した基準を満足するなら(すなわち、値がD+M/2以上かつD+M未満)、出力クロック信号の立ち下がりエッジエッジは、入力信号の負立ち下がりエッジエッジでトリガーされなければならない。その場合には、比較器134の出力は有効であり、信号NEG_FALL_EDGEが発生され、ラッチ144の入力に接続される。ラッチ144をアクティブにすると出力クロックはデフォルト条件より1/2サイクル早くロウにさせられるであろう。
【0065】
ラッチ140−144の出力は、同期ラッチ146−150にそれぞれ接続される。同期ラッチ146−152の出力は、ORゲート158およびANDゲート160を含む、組み合わせの論理回路156に接続される。HIGH_CLK信号は、合計3つのクロックサイクルによる、位相アキュムレーターフリップフロップ116からラッチ146の出力まで3クロックサイクル遅延される。以前のクロック信号の負の立ち下がりエッジに基づいて出力クロックの立ち上がりクロックエッジに適合するために、ラッチ142および同期ラッチ148のクロックは、位相アキュムレーターフリップフロップ116から同期ラッチ148までの合計遅延が2−1/2入力クロックサイクルであるように入力クロックの立ち下がりエッジによりトリガーされる。したがって、NEG_RISE_EDGEをアクティブにすることは、HIGH_CLK信号に比べて2/1サイクル早く出力クロックをハイにするであろう。
【0066】
同様に、NEG_FALL_EDGE信号は、HIGH_CLK信号に比べて1/2サイクル早く出力クロック信号をロウにするように同期ラッチ150に接続された入力クロック信号の立ち下がりエッジにより同期される。
【0067】
出力クロックがハイでなければならないとき、同期ラッチ150の出力は0であり、その反転値はANDゲート160の入力に接続される。この状況で、出力クロックの論理値は、同期ラッチ146および148の出力によって制御される。同期ラッチ148の出力は、ORゲート158への入力として供給される。標準状態の下では、同期ラッチ148の出力はロウである。その場合に、同期ラッチ146からのデフォルト出力は、組み合わせの論理回路156を介して出力クロックの立ち上がりエッジおよび立ち下がりエッジを制御する。しかしながら、出力クロック1/2サイクル早くハイに強制されなければならないなら、同期ラッチ148の出力は、ORゲート158の出力を1/2サイクル早くハイにするために、ハイになる。同様に、出力クロックの立ち下がりエッジが入力クロックの立ち下がりエッジに基づかなければならないなら(すなわち、1/2サイクル早くロウにする)、同期ラッチ150の出力はハイになり、ANDゲート160の反転入力はロウにし、出力クロックを1/2サイクル早くロウにする。
【0068】
組み合わせ回路156の出力は、出力クロックとして直接使用することができる。しかしながら、いくつかのアプリケーションでは、後方の互換性が望まれる。それは、入力クロックの立ち上がりエッジのみに基づいて出力クロックをトリガーする従来のモードの利用を必要とする。タイミングおよび制御回路110は、マルチプレクサー164の入力を制御するために、制御入力信号であるDUAL_MODEを発生する。回路100が、もっぱら入力クロックの立ち上がりエッジに基づいた出力クロックを生成するために要求される場合、同期ラッチ146の出力は、もっぱら入力クロックの立ち上がりエッジエッジに基づいて出力クロックをトリガーするマルチプレクサー164を介して、出力クロックとして選択される。回路の残りの部分がイネーブルになるなら、同期ラッチ146−150の出力は、上述した方法で結合され、マルチプレクサー164に入力として供給され、平衡デュアルエッジ動作を有する出力クロックを発生する。
【0069】
[0061] 回路100は、立ち上がりエッジと立ち下がりエッジの両方のサイクルジッターに対して改善された特性を供給する。
【0070】
さらに、他の特性は、非反転されたクロック信号(逆にされるデューティサイクルを除いて)と同じ特性を有する反転されたクロック信号を発生するための能力を含む回路100により供給される。
【0071】
図5に関して上に記述されたクロック回路は、単一入力または基準クロックからの広範囲の周波数を生成することができる。これは、単一クロックが異なるアプリケーションに対して必要な複数の周波数を発生することを可能にする。異なる基準を有する無線通信のような、いくつかのアプリケーションは、限られた数の異なる周波数を必要とする。例えば、CDMA無線通信は、1.2288MHzのチップレートでデータを送信し、代わりの通信基準、GSMは、1.023MHzのチップレートで送信する。このような無線アプリケーションでは、限られた数の周波数が必要であるので、M/Nカウンターの広いプログラミングレンジが不必要である。この場合、図6の機能ブロック図に図解されるように、カウンターの他の実施形態を用いて必要な波形を出力することができる。図6において、M/N:Dカウンターは、従来の方法で動作し、N入力サイクルごとにM出力サイクルを発生する。Dカウンター170は、従来の方法で動作し、N入力サイクルごとにM出力サイクルを発生する。エッジ選択制御ロジック172はカウンター170に接続され、立ち上がりエッジおよび立ち下がりエッジが、ステートマシン174に基づいて、またはデータ記憶エリア内の立ち上がりエッジまたは立ち下がりエッジによりトリガーされる出力クロックを発生する。出力クロック信号の選択された周波数の場合、M出力サイクルが周期的であることに留意する必要がある。すなわち、M出力サイクルのあるサイクルは、入力クロックの立ち上がりエッジエッジでトリガされる立ち上がりエッジを有し、M出力サイクルの他のサイクルは、入力クロックの立ち下がりエッジでトリガーされる立ち上がりエッジを有する。同様に、M出力サイクルのあるサイクルは、入力クロックの立ち上がりエッジでトリガーされる立ち下がりエッジを有し、M出力サイクルの他のサイクルは、入力クロックの立ち下がりエッジでトリガーされる立ち下がりエッジを有する。図3のM/N出力クロック波形(下の波形)の例を用いて、サイクル0の立ち上がりエッジは、入力クロックの立ち下がりエッジでトリガーされ、クロックサイクル0の立ち下がりエッジは、入力クロックの立ち下がりエッジでトリガーされる。クロックサイクル1の立ち上がりエッジおよび立ち下がりエッジは両方ともに、入力クロックの立ち下がりエッジでトリガーされ、出力クロックサイクル2の立ち上がりエッジと立ち下がりエッジは両方とも、入力クロックの立ち上がりエッジによりトリガーされる。このパターンはM出力サイクルの間繰り返す。この例において、ステートマシン174は、出力クロック信号が入力クロック信号の適切な立ち上がりエッジまたは立ち下がりエッジからずれてトリガーされるように、エッジ選択制御ロジック172に必要な信号を供給するようにプログラムされる。同様の方法で、データ記憶エリア176内に記憶されたデータは、エッジ選択制御ロジック172に必要な制御信号を供給し、入力クロックの適切な立ち上がりエッジまたは立ち下がりエッジを選択し、出力クロック信号のサイクルをトリガーする。
【0072】
限られた数の所望の出力周波数を有する多くのアプリケーションの場合、ステートマシン174あるいは代替データ記憶エリア176を有する、図6の回路は、必要な出力信号を生成するのに十分である。当業者は、多数の出力周波数がデータ記憶エリア176中でかなりの空間を消費するであろう、あるいはステートマシン174において、増大された複雑性を必要とするであろうことを理解するであろう。図6のアプリケーションは、記憶エリア176のサイズあるいはステートマシン174の複雑さによってのみ制限されている。
【0073】
本発明は、特定のアプリケーションのための実例となる実施形態に関してここに記述されているが、発明がそれに制限されていないことは理解されるべきである。通常の技術を有する人、およびここに提供される開示にアクセスする人は、この開示の範囲内でさらなる変更、アプリケーション、および実施形態、およびこの発明が重要なユーティリティであるさらなるフィールドを認識するであろう。
【0074】
先の記載された実施形態は、異なる他のコンポーネント内に含まれる、または異なる他のコンポーネントに接続される異なるコンポーネントを描写する。そのような描かれたアーキテクチャは単に例示であり、実際には、同じ機能性を達成する多くの他のアーキテクチャを実施することができることが理解されるべきである。概念的な間隔において、同じ機能性を達成するためのコンポーネントの任意の構成は、所望の機能が達成されるように、効率的に「関連」している。それゆえ、ここでは、特定の機能性を達成するために結合される任意の2つのコンポーネントは、アーキテクチャまたは中間コンポーネントに関係なく、所望の機能性が達成されるように互いに「関連している」として見ることができる。同様のそのように関連した任意の2つのコンポーネントも、所望の機能性を達成するために、互いに「動作可能に接続された」、または「動作可能に結合された」として見ることができる。
【0075】
この発明の特定の実施形態を図示し記載したけれども、ここに記載した開示に基づいて、この発明およびその広い観点から逸脱することなく変更や変形を行うことができ、添付されたクレームは、そのような変更および変形がこの発明の真の精神および範囲内にあることを含むことは当業者には、明白であろう。更に、発明が添付されたクレームによって単独で定義されることは理解されるべきである。
【0076】
一般に、ここで使用される用語、および特に添付されたクレーム(例えば、添付されたクレームの本体)で使用される用語が一般的に「オープン」な用語として意図される(例えば、「含む」は、「含むが限定されない」として解釈されるべきであり、「有する」という用語は「少なくとも有する」と理解すべきであり、「含む」という用語は、「含むがこれに限定されない」と理解されるべきである)。
【0077】
導入されたクレームの詳述の特定の番号が意図されるなら、そのような意図は、明白にクレームにおいて記載され、そのような記載が無ければ、そのような意図は存在しないということがさらに理解されるであろう。例えば、理解への援助として、以下の添付されたクレームは、クレームの詳述を導入するために、「少なくとも1つ」および「1つ以上」という導入フレーズの使用を含んでいてもよい。しかしながら、たとえ、同じクレームが「1つ以上の」または「少なくとも1つの」および[a」または[an」の不定冠詞(例えば、「a」および/または「an」は、典型的に「少なくとも1つの」または「1つ以上の」と解釈されるべきである)を含むときでさえも、そのようなフレーズの使用は、不定冠詞「a」または[an」によるクレーム詳述を導入することは、そのような導入されたクレーム詳述を、唯一のそのような詳述を含む発明に限定すると意味するように解釈されるべきでない。同じことは、クレーム詳述を導入するために使用される定冠詞の使用にも該当する。さらに、導入されたクレーム詳述の特定番号が明示的に記載されても、当業者は、そのような記載は典型的に少なくとも記載された番号を意味するように認識するであろう(例えば、「2つの詳述」の最低限の詳述は、典型的に少なくとも2つの詳述を意味するか、または2つ以上の詳述を意味する)。
【図面の簡単な説明】
【0078】
【図1】図1は、入力クロックの立ち上がりエッジを使用して出力クロックの立ち上がりエッジおよび立ち下りをトリガーする従来のMINカウンターにより使用される一連の波形を図解する。
【図2】図2は、出力クロックの立ち上がりエッジをトリガーするために入力クロックの立ち上がりエッジまたは立ち下りを選択するためのさらなる回路を利用するクロック回路のための一連の波形および関連するスペクトルを図解する。
【図3】図3は、出力クロックの立ち上がりエッジおよび立ち下りの両方をトリガーするために入力クロックの立ち上がりエッジまたは立ち下りを選択するためのさらなる回路を利用するクロック回路のための一連の波形および関連するスペクトルを図解する。
【図4】図4は、出力クロックの論理レベルおよび出力クロックの遷移のポイントを決定するために使用される累積された位相値を図解する。
【図5】図5は、図3の波形を発生するために使用される回路の例示実施を図解するブロック図である。
【図6】図6は、図3の波形を発生するために使用される回路の他の実施の一例を図解するブロック図である。

【特許請求の範囲】
【請求項1】
下記を具備する、所定の周波数を有し、入力クロックの各クロックサイクルに関連する立ち上がりエッジおよび立ち下がりエッジを有する入力クロック信号から周波数を発生するためのプログラマブルクロック回路:
前記入力クロック信号を受信し、前記入力クロック信号のNサイクル毎にMサイクルの周波数を有するカウンター信号を発生するように構成されたカウンター;
前記カウンターに接続され、前記カウンターのカウント値を所定のカウント値と比較し、前記比較に関連する比較器信号を発生する比較器回路;および
前記比較器信号に基づいて出力クロック信号を発生し、それにより、前記入力信号の立ち上がりエッジまたは立ち下がりエッジを選択し、前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づいて前記出力クロック信号の立ち下がりエッジを選択する、制御回路。
【請求項2】
前記比較器信号が、前記カウンターがゼロ以上かつM/2未満の値を有することを示すなら、前記制御回路は、前記出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち上がりエッジに基く前記出力クロック信号を発生する、請求項1の回路。
【請求項3】
前記カウンターがM/2以上かつM未満であることを前記比較器信号が示すなら、前記制御回路は、前記出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち下がりエッジに基づく、前記出力クロック信号を発生する、請求項1の回路。
【請求項4】
前記カウンターはM/N:Dカウンターであり、Dは前記出力クロック信号のデューティサイクルに関連する、請求項1の回路。
【請求項5】
前記カウンターがD以上かつD+M/2未満の値を有することを前記比較器信号が示すなら、前記制御回路は、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち上がりエッジに基づく前記出力クロック信号を発生する、請求項4の回路。
【請求項6】
前記制御回路は、前記カウンターがD+M/2以上でかつD+M未満の値を有することを前記比較器信号が示すなら、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち下がりエッジに基づく、前記出力クロック信号を発生する、請求項4の回路。
【請求項7】
前記制御回路は、50%のデューティサイクルを有する前記出力クロック信号を発生する、請求項4の回路。
【請求項8】
DがV2整数分解能を用いてプログラムされる、請求項4の回路。
【請求項9】
前記制御回路を無効にするモード制御入力をさらに具備し、前記制御回路は、前記比較器信号に関係なく、前記出力クロック信号の立ち上がりエッジと立ち下がりエッジが前記入力クロック信号の立ち上がりエッジに基づく出力クロック信号を発生する、請求項1の回路。
【請求項10】
前記比較器回路は第1、第2、および第3比較器を具備し、前記第1比較器は、前記カウンター値をMおよびM/2の値と比較し、前記第2比較器は、前記カウンター値を値Dと比較し、Dは、前記出力信号のデューティサイクルに関連したプログラム可能な値であり、前記第3比較器は前記カウンター値をD+MおよびD+M/2の値と比較する、請求項1の回路。
【請求項11】
マイナスDの値を前記カウンター値に加算する加算器をさらに具備し、前記第2比較器は、前記カウンター値マイナスDを0と比較し、前記第3比較器は、前記カウンター値マイナスDをMおよびM/2の値と比較する、請求項10の回路。
【請求項12】
前記制御回路は、第1および第2同期ラッチを具備し、前記第1同期ラッチは、アクティブになると、選択された入力クロックサイクルの立ち上がりエッジに基づいて出力信号立ち上がりエッジを発生し、前記第2同期ラッチは、アクティブになると信号を発生し、前記選択された入力クロックサイクルを先行する入力クロックサイクルの立ち下がりエッジに基づいて前記出力信号立ち上がりエッジを発生するために信号を発生する、請求項1の回路。
【請求項13】
前記制御回路は、第1および第2同期ラッチを具備し、前記第1同期ラッチは、アクティブになると、選択された入力クロックサイクルの立ち上がりエッジに基づいて前記出力信号立ち下がりエッジを発生し、前記第2同期ラッチは、アクティブになると前記選択された入力クロックサイクルに先行する入力クロックサイクルの立ち下がりエッジに基づいて前記出力信号立ち下がりエッジを発生するために信号を発生する、請求項1の回路。
【請求項14】
下記を具備するプログラマブルクロック回路:
所定周波数を有し、入力クロック信号の各クロックサイクルに関連する立ち上がりエッジと立ち下がりエッジを有する入力クロック信号;および
前記入力クロック信号のNサイクルごとにMサイクルの周波数を有する出力クロック信号を発生し、入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づいて出力クロック信号の立ち上がりエッジを選択し、前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づいて前記出力クロック信号の立ち下がりエッジを選択するための制御回路。
【請求項15】
前記制御回路は、前記出力クロック信号の立ち上がりエッジが前記入力クロックの立ち上がりエッジに基づく前記出力クロック信号の選択されたサイクルを発生するとともに、前記出力信号の立ち上がりエッジが前記入力クロックの立ち下がりエッジに基づく前記出力クロック信号の選択されたサイクルを発生するステートマシンである、請求項14の回路。
【請求項16】
前記制御回路は、前記出力クロック信号の立ち下がりエッジが前記入力クロックの立ち上がりエッジに基づく前記出力クロック信号の選択されたサイクルを発生するとともに、前記出力クロック信号の立ち下がりエッジが前記入力クロックの立ち下がりエッジに基づく、前記出力クロック信号の選択されたサイクルを発生するステートマシンである、請求項14の回路。
【請求項17】
前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち上がりエッジに基づいて立ち上がりエッジを有するかを示すとともに、前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち下がりエッジに基づいて立ち上がりエッジを有するかを示すデータを含む記憶エリアをさらに具備し、前記制御回路は、前記記憶エリアのデータを用いて前記出力クロック信号を発生する、請求項14の回路。
【請求項18】
前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち上がりエッジに基づいて立ち下がりエッジを有するかを示すとともに、前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち下がりエッジに基づいて立ち下がりエッジを有するかを示すデータを含む記憶エリアをさらに具備し、前記制御回路は、前記記憶エリアのデータを用いて前記出力クロック信号を発生する、請求項14の回路。
【請求項19】
下記を具備する、プログラマブルクロック回路:
所定の周波数を有するとともに、前記入力クロック信号の各クロックサイクルに関連する立ち上がりエッジおよび立ち下がりエッジを有する、入力クロック信号を受信する手段;および
前記入力クロック信号のNサイクルごとにMサイクルの周波数を有する出力クロック信号を発生し、前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づいて前記出力クロック信号の立ち上がりエッジを選択し、および前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づいて前記出力クロック信号の立ち下がりエッジを選択する制御手段。
【請求項20】
前記制御手段は、前記入力クロック信号に基づいてカウンター値を発生する手段と、前記カウンター値を所定のカウンター値と比較する比較手段と、前記比較手段による比較に基づいて、前記出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づき、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づく出力クロック信号を発生する出力制御手段を具備する、請求項19の回路。
【請求項21】
前記カウンター値がゼロ以上でM/2未満であることを前記比較器手段が示すなら前記制御手段は、前記出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち上がりエッジに基づく、前記出力クロック信号を発生する、請求項20の回路。
【請求項22】
前記カウンター値がM/2以上かつM未満であることを前記比較器手段が示すなら、前記出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち下がりエッジにもとづく、前記出力クロック信号を発生する、請求項20の回路。
【請求項23】
前記カウンターは、M/N:Dカウンターを具備し、Dは、前記出力クロック信号のデューティサイクルに関連する、請求項20の回路。
【請求項24】
前記カウンター値がD以上かつD+M/2未満であることを前記比較器手段が示すなら、前記制御手段は、前記出力信号の立ち下がりエッジが前記入力クロック信号の立ち上がりエッジに基づく、前記出力クロック信号を発生する、請求項23の回路。
【請求項25】
前記カウンター値がD+M/2以上かつD+M未満であることを前記比較器手段が示すなら、前記制御手段は、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち下がりエッジに基づく、前記出力クロック信号を発生する、請求項23の回路。
【請求項26】
前記制御手段は、前記出力クロック信号の立ち上がりエッジが前記入力クロックの立ち上がりエッジに基づく前記出力信号の選択されたサイクルを発生し、前記出力クロックの立ち上がりエッジが前記入力クロックの立ち下がりエッジに基づく前記出力クロック信号の選択されたサイクルを発生するステートマシンを具備する、請求項19の回路。
【請求項27】
前記制御手段は、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち上がりエッジに基づく前記出力クロック信号の選択されたサイクルを発生するとともに、前記出力クロック信号の立ち下がりエッジが前記入力クロックの立ち下がりエッジに基づく、前記出力クロック信号の選択されたサイクルを発生するステートマシンを具備する、請求項19の回路。
【請求項28】
前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち上がりエッジに基づいて立ち上がりエッジを有するかを示すとともに、前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち下がりエッジに基づいて立ち上がりエッジを有するかを示すデータを記憶する記憶手段をさらに具備し、前記制御手段は、前記記憶されたデータを用いて前記出力クロック信号を発生する、請求項19の回路。
【請求項29】
前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち上がりエッジに基づいて立ち下がりエッジを有するかを示すとともに、前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち下がりエッジに基づいて立ち下がりエッジを有するかを示すデータを記憶する記憶手段をさらに具備し、前記制御手段は、前記記憶されたデータを用いて前記出力クロック信号を発生する、請求項19の回路。
【請求項30】
前記制御手段を無効にするモード制御手段をさらに具備し、前記制御手段は常に、前記出力クロック信号の立ち上がりエッジおよび立ち下がりエッジが前記入力クロック信号の立ち上がりエッジに基づく、前記出力クロック信号を発生する、請求項19の回路。
【請求項31】
下記を具備する、プログラマブルクロック周波数を発生する方法:
所定周波数を有し、前記入力クロック信号の各クロックサイクルに関連した立ち上がりエッジおよび立ち下がりエッジを有する入力クロック信号を受信する;および
出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づき、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち下がりエッジに基づく、前記入力クロック信号のNサイクルごとにMサイクルの周波数を有する出力クロック信号を発生する。
【請求項32】
前記出力クロック信号が下記を具備する請求項31の方法:
前記入力クロック信号に基づいてカウンター値を発生する;
前記カウンター値を所定のカウンター値と比較する;および
前記出力クロック信号の立ち上がりエッジが前記比較に基づいて前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づき、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち上がりエッジまたは立ち下がりエッジに基づく、前記出力クロック信号を発生する。
【請求項33】
前記カウンター値がゼロ以上でかつM/2未満であることを前記比較が示すなら、前記出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち上がりエッジに基づく、前記出力クロック信号が発生される、請求項32の方法。
【請求項34】
前記カウンター値がM/2以上かつM未満であることを前記比較が示すなら、前記出力クロック信号の立ち上がりエッジが前記入力クロック信号の立ち下がりエッジに基づく前記出力クロック信号が発生される、請求項32の方法。
【請求項35】
前記カウントは、M/N:Dカウンターを使用し、Dは、前記出力クロック信号のデューティサイクルに関連する、請求項32の方法。
【請求項36】
前記カウンター値がD以上かつD+M/2未満であることを前記比較が示すなら、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち上がりエッジに基づく、前記出力クロック信号が生成される、請求項35の方法。
【請求項37】
前記カウンター値がD+M/2以上かつD+M未満であることを前記比較が示すなら、前記出力クロック信号の立ち下がりエッジが前記入力クロック信号の立ち下がりエッジに基づく前記出力クロック信号が生成される、請求項35の方法。
【請求項38】
前記出力クロック信号の立ち上がりエッジが前記入力クロックの立ち上がりエッジに基づく前記出力クロック信号の選択されたサイクルを生成するとともに前記出力クロック信号の立ち上がりエッジが前記入力クロックの立ち下がりエッジに基づく前記出力クロック信号の選択されたサイクルを生成するステートマシンを、前記出力クロック信号を発生することが使用する、請求項31の方法。
【請求項39】
前記出力クロック信号を発生することは、前記出力クロック信号の立ち下がりエッジが前記入力クロックの立ち上がりエッジに基づく前記出力クロック信号の選択されたサイクルを発生するとともに、前記出力クロック信号の立ち下がりエッジが前記入力クロックの立ち下がりエッジに基づく前記出力クロック信号の選択されたサイクルを発生するステートマシンを用いることを具備する、請求項31の方法。
【請求項40】
前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち上がりエッジに基づいて立ち上がりエッジを有するかを示すとともに、前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち下がりエッジに基づいて立ち上がりエッジを有するかを示すデータを記憶することをさらに具備し、前記出力クロック信号を発生することは、前記記憶されたデータを用いて前記出力クロック信号を発生する、請求項31の方法。
【請求項41】
前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち上がりエッジに基づいて立ち下がりエッジを有するかを示すとともに、前記出力クロック信号の前記Mサイクルのどのサイクルが前記入力クロックの立ち下がりエッジに基づいて立ち下がりエッジを有するかを示すデータを記憶することをさらに具備し、前記出力クロック信号を発生することは、前記記憶されたデータを用いて前記出力クロック信号を発生する、請求項31の方法。
【請求項42】
前記出力クロック信号を発生することを無効にするモード制御信号を発生することをさらに具備し、前記出力クロック信号を発生することは、前記出力クロック信号の立ち上がりエッジよび立ち下がりエッジは、前記入力クロック信号の立ち上がりエッジに基づく前記出力クロック信号を常に発生する、請求項31の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公表番号】特表2007−521713(P2007−521713A)
【公表日】平成19年8月2日(2007.8.2)
【国際特許分類】
【出願番号】特願2006−503204(P2006−503204)
【出願日】平成16年1月30日(2004.1.30)
【国際出願番号】PCT/US2004/002715
【国際公開番号】WO2004/068706
【国際公開日】平成16年8月12日(2004.8.12)
【出願人】(595020643)クゥアルコム・インコーポレイテッド (7,166)
【氏名又は名称原語表記】QUALCOMM INCORPORATED