説明

分数クロック信号を生成するための技術

回路は、位相検出回路と、クロック信号生成回路と、第1の分周器と、第2の分周器とを含む。位相検出回路は、入力クロック信号をフィードバック信号と比較して、制御信号を生成する。クロック信号生成回路は、制御信号に応答して、周期的出力信号を生成する。第1の分周器は、周期的出力信号の周波数を第1の値によって分割して、第1の分周信号を生成する。第2の分周器は、周期的出力信号の周波数を第2の値によって分割して、第2の分周信号を生成する。第1および第2の分周信号は、異なる時間間隔の間に、フィードバック信号として位相検出回路に経路指定される。

【発明の詳細な説明】
【技術分野】
【0001】
(技術分野)
本発明は電子回路に関し、より詳細には、分数クロック信号(fractional clock signal)を生成するための技術に関する。
【背景技術】
【0002】
クロック信号を生成するために、遅延ロックループ回路および位相ロックループ回路等のロックループ回路を使用できる。
【発明の概要】
【課題を解決するための手段】
【0003】
本発明のいくつかの実施形態は、位相検出回路、クロック信号生成回路、第1の分周器、および第2の分周器を含む。位相検出回路は、入力クロック信号をフィードバック信号と比較することにより、制御信号を生成する。クロック信号生成回路は、制御信号に応答して、周期的出力信号を生成する。第1の分周器は、第1の値によって周期的出力信号の周波数を分割することにより、第1の分周信号を生成する。第2の分周器は、第2の値によって周期的出力信号の周波数を分割することにより、第2の分周信号を生成する。第1および第2の分周信号は、異なる時間間隔の間に、フィードバック信号として位相検出回路に経路指定される。本発明は、本明細書に記載された技術を実行するための回路、システム、および方法を含む。
【0004】
本発明の種々の目的、特徴、および利点は、以下の発明を実施するための形態および添付の図面を検討すると、明らかとなる。
【図面の簡単な説明】
【0005】
【図1】図1は、位相ロックループ(PLL)回路の実施例を示す。
【図2】図2は、本発明の実施形態に従う、2つの異なる周波数を有する2つの異なる周期的フィードバック信号を組み合わせることにより、分数(fractional)周期的出力信号を生成可能な位相ロックループ(PLL)回路の実施例を示す。
【図3】図3は、本発明の実施形態に従う、図2の位相ロックループの一部分の動作の実施例を示す、状態図である。
【図4】図4は、本発明の態様を含むことが可能なフィールドプログラマブルゲートアレイ(FPGA)の概略部分ブロック図である。
【図5】図5は、本発明の技術を具現化することが可能な例示的なデジタルシステムのブロック図を示す。
【発明を実施するための形態】
【0006】
図1は、位相ロックループ(PLL)回路100の実施例を示す。PLL100は、位相比較器(PFD)101、電荷ポンプ(CP)102、ループフィルタ(LF)103、電圧制御された振動子(VCO)104、分周器回路105、マルチプレクサ106、マルチプレクサ107、マルチプレクサ108〜109、分周器回路141、マルチプレクサ142、分周器回路110、111、112、113、114、・・・117、遅延回路120、121、122、123、124、・・・127、マルチプレクサ130、および位相制御ブロック140を含む。
【0007】
マルチプレクサ142は、N個の分周器回路141の入力端子に、2つの入力基準クロック信号CLKin0およびCLKin1のうちの1つを伝送する。基準クロック信号CLKin0およびCLKin1は、周期的入力信号である。分周器141は、マルチプレクサ142から伝送された基準クロック信号に応答して、出力クロック信号DCLKを生成する。分周器141は、出力クロック信号DCLKの周波数を生成するように、分周値Nによって基準クロック信号の周波数を分割する。
【0008】
分割されたクロック信号DCLKは、位相比較器(PFD)回路101の第1の入力端子に伝送される。PFD101は、クロック信号DCLKの位相および周波数をフィードバッククロック信号FBCLKの位相および周波数と比較することにより、UPおよびDNの出力信号内でパルスを生成する。
【0009】
UPおよびDN信号は、電荷ポンプ(CP)回路102の入力端子に伝送される。電荷ポンプ(CP)102は、UPおよびDN信号に応答して、その出力制御電圧VCLを制御する。電荷ポンプ102の出力電圧VCLは、ループフィルタ(LF)回路103によってフィルタされたローパスである。CP102は、UP信号内の高パルスに応答して、ループフィルタ103へ電荷を伝送する。CP102は、DN信号内の高パルスに応答して、ループフィルタ103から電荷をドレインする。
【0010】
LFブロック103の出力電圧VCLは、電圧制御された振動子(VCO)回路104の入力端子に伝送される。VCO104は、45度で相互に均等に離間された8個の周期的出力クロック信号を生成する、4段階のVCOである。VCO104の周期的出力クロック信号は、周期的出力信号とも称される。VCO104の8個の周期的出力信号は、0°、45°、90°、135°、180°、225°、270°、および315°の相対位相シフトを有する。VCO104の周期的出力信号のうちの1つは、マルチプレクサ106〜107、フィードバックMの分周器117、およびマルチプレクサ109を介して、フィードバッククロック信号FBCLKとしてPFD101に再び送出される。
【0011】
PFD101は、クロック信号DCLKの周波数が、フィードバッククロック信号FBCLKの周波数より大きい場合に、DN信号内よりもUP信号内において、より長い高パルスを生成する。UP信号内の高パルスがDN信号内の高パルスよりも長い場合、CP102は制御電圧VCLを増加させ、それによって、VCO104の周期的出力クロック信号の周波数が増加し、そのため、FBCLK信号の周波数が増加する。
【0012】
PFD101は、フィードバッククロック信号FBCLKの周波数がクロック信号DCLKの周波数よりも大きい場合に、UP信号内よりもDN信号内において、より長い高パルスを生成する。DN信号内の高パルスがUP信号内の高パルスよりも長い場合、CP102は、制御電圧VCLを低下させ、それによって、VCO104の周期的出力クロック信号の周波数が低下し、そのため、FBCLK信号の周波数が低下する。
【0013】
VCO104は、クロック信号DCLKおよびフィードバッククロック信号FBCLKが、周波数および位相整列されるまで、制御電圧VCL内の変化に応答して、その周期的出力信号の周波数を変化させる。PLL100は、クロック信号DCLKおよびフィードバッククロック信号FBCLKが同一の周波数および位相を有する場合に、ロックモードである。さらなる実施形態に従い、VCO104は、電流制御された振動子に置き換えることができる。
【0014】
分周器ブロック105は、VCO104の8個の周期的出力信号を受信するように連結される8個の分周器回路(例えば、カウンタ回路)を表す。分周器回路105は、8個の分周出力信号を生成するように、分周値(例えば、2)で、VCO104の周期的出力信号の周波数を分割する。マルチプレクサ106は、VCO104、分周器ブロック105、およびマルチプレクサ107に連結される。マルチプレクサ106は、マルチプレクサ107の8個の入力端子に分周器ブロック105の8個の分周出力信号を伝送するように、プログラム可能である。あるいは、マルチプレクサ106は、マルチプレクサ107の8個の入力端子に直接、VCO104の8個の周期的出力信号を伝送するように、プログラム可能である。マルチプレクサ106は、VCO104の8個の周期的出力信号のそれぞれに対して1個ずつ、8個の個別のマルチプレクサを表す。マルチプレクサ107は、8対7の(8−to−7)マルチプレクサである。位相制御ステートマシン140は、マルチプレクサ107の7個の周期的出力クロック信号の位相を制御する。
【0015】
マルチプレクサ107は、8個の分周器回路110〜114・・・117に、マルチプレクサ106の出力クロック信号のうちの7個を伝送する。PLL100は、M個のフィードバック分周器117に加えて、C個の出力分周器110〜114・・・の任意の数を有することができる。N、C、およびM個の分周器回路141、110〜114・・・、および117のそれぞれは、例えば、カウンタ回路によって実装可能である。分周器回路110〜117のそれぞれは、マルチプレクサ107の出力クロック信号のうちの1つを受信する。分周器110〜114・・・117は、分周された周期的出力クロック信号を生成するように、分周値C0〜C4・・・およびMによって、マルチプレクサ107から受信した出力クロック信号の周波数を分割する。8個の遅延回路120〜127は、CおよびM個の分周器回路110〜117の分周された周期的出力クロック信号を遅延させる。例えば、遅延回路120〜124および127は、それぞれ、分周器110〜114および117の出力クロック信号を遅延させる。
【0016】
遅延回路120〜127の出力クロック信号は、出力マルチプレクサ130の入力端子に伝送される。マルチプレクサ130は、PLL100から、PLL100を含む集積回路チップ上の種々の送信先に、出力クロック信号を経路指定する。例えば、PLL100からの出力クロック信号は、隣接するPLL、グローバルマルチプレクサ、第4(quadrant)マルチプレクサ、および外部クロックピンドライバに経路指定できる。
【0017】
フィードバックのM個の分周器117の分周された出力クロック信号は、マルチプレクサ108および109の入力端子に伝送される。マルチプレクサ108は、分周器117の出力クロック信号、集積回路のコア回路からのクロック信号、または集積回路のピンからのクロック信号を、マルチプレクサ109の入力端子へ選択的に駆動する。マルチプレクサ109は、マルチプレクサ108の出力クロック信号または回路117の出力クロック信号を、PFD101の第2の入力端子に伝送する。マルチプレクサ109の出力クロック信号は、フィードバッククロック信号FBCLKである。
【0018】
電荷ポンプ電流の値、M/N/Cの分周器回路の分周値、およびループフィルタ103内のレジスタおよびコンデンサ値は、PLL100が、最適なパフォーマンス、可能最低ジッタ、および安定動作を確実に提供できるように、プロトコル、仕様、およびユーザ入力周波数に基づいて慎重に選択される。
【0019】
VCO104の周期的出力信号の周波数FOUT1は、以下の式(1)に示されるように、分周器141の入力端子、分周器141の分周値Nおよびフィードバック分周器117の分周値Mで受信された入力基準クロック信号の周波数FINの関数である。
【0020】
【数1】

C個の出力分周器110〜114のうちの1つの周期的出力信号の周波数FOUT2は、以下の式(2)に示すように、分周器141の入力端子で受信された入力基準クロック信号の周波数FIN、分周器141の分周値N、フィードバック分周器117の分周値M、およびその特定のCの分周器の分周値Cの関数である。
【0021】
【数2】

PLL100は、PLL100が、所望の出力周波数を生成するように、周波数多重を実行するため、整数NのPLLと称される。Nの分周器141の分周値は、PLL100の出力周波数の各増減の、最小の出力周波数ステップを定義する。例えば、FINが50MHz(固定)と等しい場合、分周値Nの最大設定は100であり、VCO104の有効な周波数範囲は100MHz〜1GHzであり、所望の出力周波数は、900MHz〜1GHzの範囲であり、次いで、900MHz<(50MHz/100)×M<1GHz、1800<M<2000、500KHzステップである。
【0022】
ワイヤレス通信等の多くの応用例において、所望の周波数ステップは、チャネル間隔のために、25MHz程度と、小さい。50MHzの周波数を有する入力基準クロック信号に応答して、PLL100において500.025MHzの出力周波数を生成するには、分周器141のためにN=2,000の分周値が必要であり、分周器117のためにM=20,001の分周値が必要であり、PFD101のクロック信号DCLKの周波数は25KHzである。
【0023】
MおよびNの非常に大きな分周値は、PLL100において、複数の問題を生じさせる可能性がある。第一に、かかるカウンタのレイアウト領域は非常に大きいため、例えば、2,000〜20,000の分周値を有する大きなカウンタを作成することは実用的ではない可能性がある。第二に、大きなフィードバック(M)および入力(N)カウンタは、出力位相ノイズおよびジッタを含む、PLL100の安定性に悪影響を与える可能性がある。PFD101に対する入力信号の周波数は低く(つまり、KHzの範囲)、十分に、PLL帯域幅範囲内である。このため、PFD101からのノイズは、VCO104に直接投入され、LF103は、ノイズを除去できない。
【0024】
本発明のいくつかの実施形態に従い、分数ロックループは、2つの異なる周波数を有する2つの異なる周期的クロック信号を組み合わせることにより、周期的出力クロック信号を生成する。分数ロックループは、極度に大きな分周値を有する分周器を必要とせずに、所望の周波数ステップ(例えば25KHz)を生成する。本明細書に記載された本発明の種々の技術は、位相ロックループ(PLL)および遅延ロックループ(DLL)を含むロックループ回路で実装可能である。
【0025】
図2は、本発明の一実施形態に従う、2つの異なる周波数を有する2つの異なる周期的フィードバッククロック信号を組み合わせることにより、分数周期的出力クロック信号を生成可能な位相ロックループ回路200の実施例を示す。位相ロックループ(PLL)回路200は、入力Nの分周器201、位相比較器(PFD)202、電荷ポンプ(CP)203、ループフィルタ(LF)204、電圧制御された振動子(VCO)205、C0分周器206、CX分周器207、C1分周器208、同期化ブロック209、およびマルチプレクサ210〜211を含む。いくつかの実施形態において、分周器回路206〜208はカウンタ回路である。
【0026】
PLL200は、典型的には集積回路上で製造される。本発明のPLLは、例えば、特定用途向け集積回路(ASIC)、またはフィールドプログラマブルゲートアレイ(FPGA)等のプログラマブル論理集積回路上に製造可能である。PLL200は、例えば、FPGA上に製造可能である。PLL200において、ブロック212における回路要素は、FPGAの周辺に配置される非プログラマブル回路要素を使用して実装される。ブロック212内の回路要素は、入力Nの分周器201、位相比較器202、電荷ポンプ203、ループフィルタ204、電圧制御された振動子205、およびマルチプレクサ211を含む。ブロック213内の回路要素は、FPGAのコア領域に配置されるプログラマブル回路ブロックを使用して実装される。ブロック213内の回路要素は、C0分周器206、CX分周器207、C1分周器208、同期化ブロック209、およびマルチプレクサ210を含む。プログラマブル回路ブロックは、回路206〜210の関数を実装するように、構成モード中に構成される。他の実施形態に従い、回路206〜210は、非プログラマブル回路を使用して実装される。
【0027】
分周器201は、PFD202の入力端子に伝送されるクロック信号DCLKを生成するように、分周値Nで、周期的入力基準クロック信号の周波数を分割する。
【0028】
PFD202は、信号DCLKの位相および周波数の、フィードバッククロック信号FBCLKの位相および周波数への比較に応答して、UPおよびDN信号内に論理高パルスを生成する。電荷ポンプ203およびループフィルタ204は、UPおよびDN信号を、制御電圧VCLに変換する。制御電圧VCLは、VCO205の周期的出力クロック信号の周波数を制御する。VCO205は、典型的には、VCO104について上述されているように、複数の周期的出力クロック信号を生成する。VCO205の1つの周期的出力クロック信号は、単に、周期的出力信号とも称される。VCO205の1つの周期的出力信号VXは、分周器回路206の入力端子および分周器回路208の入力端子に伝送される。VXを含む、VCO205の周期的出力信号の周波数は、制御電圧VCLの変化に応答して変動する。
【0029】
PFD202は、クロック信号DCLKの周波数が周期的フィードバッククロック信号FBCLKの周波数より大きい場合に、DN信号内よりもUP信号内で、より長い高パルスを生成する。UP信号内の高パルスがDN信号内の高パルスより長い場合、CP203は制御電圧VCLを増加させ、それによって、VCO205(VXを含む)の周期的出力クロック信号の周波数が増加し、そのため、FBCLK信号の周波数が増加する。PFD202は、周期的フィードバッククロック信号FBCLKの周波数がクロック信号DCLKの周波数よりも大きい場合、UP信号内よりもDN信号内で、より長い高パルスを生成する。DN信号内の高パルスが、UP信号内の高パルスより長い場合、CP203は、制御電圧VCLを低下させ、それによって、VCO205(VXを含む)の周期的出力クロック信号の周波数が低下し、そのため、FBCLK信号の周波数が低下する。
【0030】
分周器回路206は、VCO205の出力クロック信号VXに応答して、回路206の出力端子で分周された周期的出力クロック信号OUT1を生成する。分周器回路206は、出力クロック信号OUT1の周波数を生成するように、分周値C0で、クロック信号VXの周波数を分割する。分周器回路206は、信号OUT1の周波数によって分割された信号VXの周波数をC0と等しくする。
【0031】
分周器回路208は、VCO205の出力クロック信号VXに応答して、回路208の出力端子において、分周された周期的出力クロック信号OUT2を生成する。分周器回路208は、出力クロック信号OUT2の周波数を生成するように、分周値C1で、クロック信号VXの周波数を分割する。分周器回路208は、信号OUT2の周波数によって分割された信号VXの周波数が、C1と等しくなるようにする。
【0032】
いくつかの実施形態に従い、分周器回路206は、50%の負荷サイクルを有する分周された周期的出力信号OUT1を生成し、分周器回路208は、50%の負荷サイクルを有する分周された周期的出力信号OUT2を生成する。分周器回路206および208は、PLL200のフィードバックループに分周器回路206および208を配置することで、VXを含む、VCO205の周期的出力信号の周波数を増加させるため、周波数乗算器と考えることができる。
【0033】
第1の分周された周期的出力信号OUT1は、分周器回路206の出力端子から分周器回路207の入力端子に伝送される。分周器回路207は、回路206の出力クロック信号OUT1に応答して、回路207の出力端子において、分周された周期的出力クロック信号OUT3を生成する。分周器回路207は、出力クロック信号OUT3の周波数を生成するように、分周値CXで、クロック信号OUT1の周波数を分割する。分周器回路207は、信号OUT3の周波数によって分割された信号OUT1の周波数を、CXと等しくさせる。
【0034】
分周値C0、C1、およびCXは、3つの異なる正の整数値にすることができる。
【0035】
一実施形態において、分周器回路207の出力信号OUT3は、特定の値にプログラムされ、FPGAのユーザモードの間に、以降、変更可能な、調整可能な負荷サイクルを有する。分周器回路207は、信号OUT3の負荷サイクルを決定する分数値(fractional value)でプログラム可能である。例えば、分周器回路207は、OUT3の周波数によって分割されたOUT1の周波数がCXと等しくなる場合に、(CX−1)/CXと等しい負荷サイクルを有する第3の分周された周期的出力信号OUT3を生成可能である。この実施形態において、OUT3の各期間におけるOUT3内の論理高パルスは、OUT1の(CX−1)期間、持続し、OUT3の各期間におけるOUT3内の論理低パルスは、OUT1の1期間、持続する。一実施形態において、分周器回路207は、ゼロからCXへカウント値を増加させ、次いで、カウント値がCXに達した後で、カウント値をゼロにリセットする、カウンタ回路である。
【0036】
第1の分周された周期的出力信号OUT1は、同期化ブロック209の第1の入力端子に伝送される。第2の分周された周期的出力信号OUT2は、同期化ブロック209の第2の入力端子に伝送される。第3の分周された周期的出力信号OUT3は、同期化ブロック209の第3の入力端子に伝送される。
【0037】
同期化ブロック209は、ステートマシン上で機能するように構成されるプログラマブル論理ブロックを使用して実装可能である。同期化ブロック209は、周期的信号OUT1、OUT2、およびOUT3に応答して、3つの出力制御信号S0、R1、およびR2を生成する。
【0038】
周期的信号OUT1の各期間の終了後(例えば、OUT1の各立ち上がりまたは、OUT1の各立ち下り時に)、同期化ブロック209は、リセット信号R1内に論理高パルスを生成する。リセット信号R1は、分周器回路206のリセット入力端子に伝送される。分周器回路206がリセット信号R1内の論理高パルスを受信後に、分周器回路206は、ゼロの初期カウント値を、分周器回路206内のカウンタ回路にロードする。次いで、分周器回路206は、回路206のカウント値が分周値C0と等しくなるまで、ゼロから始まる周期的信号VXの各以降の期間において、カウント値に1を加算する。回路206のカウント値がC0に達した後、回路206は、周期的出力信号OUT1の全期間を生成する。同期化ブロック209は、次いで、リセット信号R1内に別の論理高パルスを生成し、回路206が、そのカウント値を再びゼロにリセットするようにする。このため、OUT1の一期間でVXのC0期間が生じる。
【0039】
周期的信号OUT2の各期間の終了後(例えば、OUT2の各立ち上がり時またはOUT2の各立ち下がり時)、同期化ブロック209は、リセット信号R2内に論理高パルスを生成する。リセット信号R2は、分周器回路208のリセット入力端子に伝送される。分周器回路208が、リセット信号R2内において論理高パルスを受信後に、分周器回路208は、分周器回路208内のカウンタ回路に、ゼロの初期カウント値をロードする。次いで、分周器回路208は、回路208のカウント値が分周値C1と等しくなるまで、ゼロから始まる周期的信号VXの各以降の期間、カウント値に1を加算する。回路208のカウント値がC1に達した後、回路208は、周期的出力信号OUT2の全期間を生成する。同期化ブロック209は、次いで、リセット信号R2内に別の論理高パルスを生成し、回路208によって、そのカウント値を再びゼロにリセットさせる。このため、OUT2の一期間において、VXのC1期間が生じる。
【0040】
同期化ブロック209は、選択信号S0を生成する。選択信号S0は、マルチプレクサ210の選択入力端子に伝送される。周期的出力信号OUT1は、回路206から、マルチプレクサ210の第1の多重化入力端子に伝送され、周期的出力信号OUT2は、回路208から、マルチプレクサ210の第2の多重化入力端子に伝送される。
【0041】
図3は、本発明の一実施形態に従う、選択信号S0に応答したマルチプレクサ210の動作の実施例を示す状態図である。一実施形態において、同期化ブロック209は、選択信号S0が、分周器回路207によって生成された周期的出力信号OUT3として、同一の論理状態を有するようにする。このため、OUT3が論理高状態にある場合、S0も論理高状態であり、OUT3が論理低状態である場合、S0も論理低状態である。
【0042】
この実施形態では、図3に示される状態301においてS0が論理高である場合、マルチプレクサ210は、分周器回路206の周期的出力信号OUT1を選択し、マルチプレクサ210〜211は、フィードバッククロック信号FBCLKとして、分周器回路206からPFD202の入力端子へと信号OUT1を伝送する。S0が、図3に示された状態302において論理低である場合、マルチプレクサ210は、分周器回路208の周期的出力信号OUT2を選択し、マルチプレクサ210〜211は、フィードバッククロック信号FBCLKとして、分周器回路208から、PFD202の入力端子へと信号OUT2を伝送する。この実施形態において、マルチプレクサ211は、マルチプレクサ210の出力信号を、PFD202に伝送するようにプログラムされている。一実施形態において、信号S0は、マルチプレクサ210がクロック信号OUT1およびOUT2の間を切り替える場合に、マルチプレクサ210の出力クロック信号内の誤作動を防止する信号OUT3の再同期化バージョンである。
【0043】
選択信号S0の負荷サイクルおよび期間は、マルチプレクサ210が、伝送信号OUT1およびOUT2をPFD202へいつ切り替えるかを決定する。例えば、S0の負荷サイクルが(CX−1)/CXである場合、次いで、マルチプレクサ210〜211は、S0の各期間において、OUT1の(CX−1)期間、フィードバック信号FBCLKとして信号OUT1を伝送し、マルチプレクサ210〜211は、S0の各期間において、OUT1の1期間、フィードバック信号FBCLKとして信号OUT2を伝送する。
【0044】
マルチプレクサ210は、PFD202の第2の入力端子において受信されると、フィードバック信号FBCLKの瞬時周波数が、信号OUT1の瞬時周波数および信号OUT2の瞬時周波数の間を変動するようにする。マルチプレクサ210は、フィードバック信号FBCLKの瞬時周波数が、2つの異なる周波数の間を継続的に変動するようにする。FBCLKの瞬時周波数が変動するので、位相ロックループ200は、FBCLKの位相および周波数が、入力クロック信号DCLKの位相および周波数とPFD202において一致するように、VCO205の周期的出力信号の瞬時周波数を継続的に調整する。
【0045】
このため、信号VXの瞬時周波数およびVCO205の他の周期的出力信号は、信号OUT1およびOUT2の2つの異なる瞬時周波数の間を変動する。分周器回路206は、S0の各期間において、OUT1のX期間の間、PLL200をトレインし(trains)、分周器回路208は、VXを含む、VCO205の周期的出力信号において所望の平均周波数を生成するように、S0の各期間において、OUT1のY期間、PLL200をトレインする(trains)。信号VXの平均周波数およびVCO205の他の周期的出力信号は、分周器回路206〜208の分周値C0、CX、およびC1および選択信号S0の負荷サイクルで決定される。
【0046】
選択信号S0の負荷サイクルは、信号VXの平均周波数およびVCO205の他の周期的出力信号を変動させるように変更することができる。さらに、分周値C0、C1、またはCXは、信号VXの平均周波数およびVCO205の他の周期的出力信号を変動させるように変化できる。分周値C0、C1、およびCXは、プログラマブル値にすることができる。
【0047】
VCO205の出力信号VXの平均期間POUTは、以下の式(3)を使って表すことができる。
【0048】
【数3】

式(3)において、Pは、OUT1が、FBCLKとしてPFD202に伝送される場合に、出力クロック信号VXの瞬時期間を基準し、Pは、OUT2が、FBCLKとしてPFD202に伝送される場合に、出力クロック信号VXの瞬時期間を基準する。Xは、S0の単一の期間内において信号S0が論理高状態である場合に生じる信号OUT1の期間数を基準する。Yは、信号S0がS0の単一の期間内の論理低状態である場合に生じる信号OUT1の期間数を基準する。X+Yは、分周器回路207の分周値、CXと等しい。VCO205の周期的出力信号VXの平均期間POUTは、期間P×分数値+期間P×分数値と等しい。分周器回路206〜208は、分数値を実装する。
【0049】
VCO205の出力クロック信号の周波数は2つの異なる瞬時周波数の平均周波数であるため、VCO205の出力クロック信号は、ジッタを含む。しかしながら、VCO205の出力クロック信号内のジッタを受容可能な範囲に最小にするように、選択信号S0および分周値C0、C1、およびCXの負荷サイクルを選択することができる。
【0050】
PLL100および200の動作について、例示的な数値を用いて説明する。これらの例示的な数値は、例示のために提供されており、本発明の範囲をこれらの特定の数値に制限することを意図していない。例えば、マルチプレクサ142の出力端子におけるPLL100の入力基準クロック信号の周波数が50MHzである場合、分周器141の分周値Nは10と等しく、分周器117の分周値Mは100と等しく、次いで、VCO104の出力クロック信号の周波数FOUTは500MHzと等しく、これは、2ナノ秒(ns)の期間に相当する。別の例として、PLL100の入力基準クロック信号の周波数が50MHzと等しい場合、N=10、およびM=101、次いでFOUT=505MHzとなり、これは、1.98nsの期間に相当する。これらの2つの出力クロック信号の間の周波数の差は5MHzであり、これは、200nsの期間に相当する。
【0051】
PLL200の入力基準クロック信号の周波数が50MHzであり、分周器201の分周値Nが10と等しく、DCLKの周波数が5MHzである場合、PLL200は、約500.025MHzの平均周波数を有する出力クロック信号VXを生成可能である。回路206の分周値C0は100に設定され、回路208の分周値C1は101に設定され、回路207の分周値CXは198に設定され、選択信号S0の負荷サイクルは197/198に設定される。これらの例示的な値に基づいて、数X=197、Y=1、P=2ns、およびP=1.98nsが、信号VXの1.9999nsの平均期間を求めるために、式(3)に代入される。このため、出力クロック信号VXの平均周波数は、DCLKの選択された固定周波数(例えば、5MHz)のために、分数値(つまり、非整数の数)で乗算される入力クロック信号DCLKの周波数と等しくなる。
【0052】
選択信号S0の負荷サイクルは、期間P=2ns、期間P=1.98ns、CX=198、C0=100、およびC1=101である場合に、信号VXの1.9999nsの平均期間を生じさせるように、(CX−1)/CXに設定可能である。この例において、同期化ブロック209は、分周器回路206が、OUT1において197の期間を生成するように、1から100へ、197回、カウントする間に、マルチプレクサ210が、FBCLK信号としてOUT1を伝送するようにする。次いで、同期化ブロック209は、信号R1を用いて、分周器回路206をリセットする。ブロック209は、分周器回路206が、OUT1に1期間を生成するように、1から100へ、一度カウントする間に、マルチプレクサ210が、FBCLK信号としてOUT2を伝送するようにする。以降、同期化ブロック209は、信号R2を使用して、分周器回路208をリセットする。次いで、プロセスは、分周器回路206が1から100へ、さらに197回カウントする間に、ブロック209が、マルチプレクサ210によって、OUT1をFBCLK信号として伝送させる場合に、繰り返す。この例において、分周器回路208は、信号OUT2内に各期間を生成するように、1から101へカウントする。
【0053】
図4は、本発明の態様を含むことができるフィールドプログラマブルゲートアレイ(FPGA)400の概略部分ブロック図である。FPGA400は、本発明の特徴を含むことができる集積回路の一例にすぎない。本発明の実施形態は、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理デバイス(PLD)、複雑なプログラマブル論理デバイス(CPLD)、プログラマブル論理アレイ(PLA)、および特定用途向け集積回路(ASIC)等の数多くの種類の集積回路で使用可能であることを理解されたい。
【0054】
FPGA400は、多様な長さおよび速度の、行および列の相互接続コンダクタのネットワークで相互接続される、プログラマブル論理アレイブロック(またはLAB)402の2次元アレイを含む。LAB402は、複数の(例えば、10の)論理要素(またはLE)を含む。
【0055】
LEは、ユーザ定義された論理機能の効率的な実装を行うプログラマブル論理回路ブロックである。FPGAは、種々の組み合わせおよびシーケンスの機能を実装するように構成可能な、多くの論理要素を有する。論理要素は、プログラマブル相互接続構造にアクセスできる。プログラマブル相互接続構造は、ほぼ任意の所望の構成における論理要素と相互接続するようにプログラムすることが可能である。
【0056】
FPGA400は、さらに、アレイ全体に提供される多様なサイズのランダムアクセスメモリ(RAM)ブロックを含む分散メモリ構造を含む。RAMブロックは、例えば、ブロック404、ブロック406、およびブロック408を含む。これらのメモリブロックは、さらに、シフトレジスタおよび先入れ先出し(FIFO)バッファを含むことができる。
【0057】
FPGA400は、さらに、例えば、加算または減算機能を有する乗算器を実装可能なデジタル信号処理(DSP)ブロック410を含む。この実施例において、チップの周辺に配置される入力/出力要素(IOE)412は、多数のシングルエンドおよび差分入力/出力基準(differential input/output standards)をサポートする。IOE412は、集積回路のパッドに連結される入力および出力バッファを含む。パッドは、例えば、FPGAおよび1つ以上の外部デバイスの間で入力信号、出力信号、および供給電圧を経路指定するように使用可能なFPGAダイの外部端子である。FPGA400は、例示の目的のために、本明細書に記載されているにすぎず、本発明は、多くの異なる種類のPLD、FPGA、およびASICで実装可能であることを理解されたい。
【0058】
本発明は、いくつかのコンポーネントのうちの1つとしてFPGAを有するシステムで実装することもできる。図5は、本発明の技術を具現化可能な例示的なデジタルシステム500のブロック図を示す。システム500は、プログラムされたデジタルコンピュータシステム、デジタル信号処理システム、専用のデジタル切り替えネットワーク、または他の処理システムにすることができる。さらに、かかるシステムは、電気通信システム、自動車システム、制御システム、家庭用電化製品、パーソナルコンピュータ、インターネット通信およびネットワーキング等の幅広い種類の応用のために設計することができる。さらに、システム500は、単一ボード上、複数ボード上、または複数の筐体内に提供可能である。
【0059】
システム500は、1つ以上のバスで相互結合される処理装置502、メモリ装置504、および入力/出力(I/O)装置506を含む。この例示的な実施形態に従い、FPGA508は、処理装置502に埋め込まれる。FPGA508は、図5のシステム内の多くの異なる目的に役立つことができる。FPGA508は、例えば、その内部および外部動作をサポートする、処理装置502の論理ビルディングブロックにすることができる。FPGA508は、システム動作におけるその特定の役割を実行するために必要な論理機能を実装するようにプログラムされる。FPGA508は、特に、接続510によってメモリ504へ、また、接続512によって、I/O装置506へ連結可能である。
【0060】
処理装置502は、処理または格納のために、適切なシステムコンポーネントにデータを送信し、メモリ504に格納されたプログラムを実行し、I/O装置506、または他の同様の機能を介して、データを送受信できる。処理装置502は、コントローラ、ネットワークコントローラ、または任意の種類のプロセッサまたはコントローラとして使用されるようにプログラムされた、中央処理装置(CPU)、マイクロプロセッサ、浮動小数点コプロセッサ、グラフィックコプロセッサ、ハードウェアコントローラ、マイクロコントローラ、フィールドプログラマブルゲートアレイにすることができる。さらに、多くの実施形態において、多くの場合、CPUは不要である。
【0061】
例えば、CPUの代わりに、1つ以上のFPGA508が、システムの論理動作を制御可能である。別の例として、FPGA508は、特定のコンピューティングタスクを取り扱うために必要なように再プログラム可能な、再構成可能なプロセッサとして機能する。あるいは、FPGA508は、それ自体に、埋め込みマイクロプロセッサを含むことができる。メモリ装置504は、ランダムアクセスメモリ(RAM)、読み込み専用メモリ(ROM)、固定またはフレキシブルディスク媒体、フラッシュメモリ、テープ、または任意の他の格納手段、あるいはこれらの格納手段の任意の組み合わせにすることができる。
【0062】
本発明の例示的な実施形態の上記の記載は、例示および説明の目的で示されている。上記の記載は、包括的、または、本発明を本明細書に開示された実施例に制限することを意図していない。いくつかの例において、本発明の特徴は、記載されているように、他の特徴の対応する利用なしに利用することができる。本発明の範囲から逸脱せずに、上記の教示に照らして、多くの修正、置換、および変形が可能である。

【特許請求の範囲】
【請求項1】
回路であって、
入力クロック信号をフィードバック信号と比較することにより、制御信号を生成する、位相検出回路と、
該制御信号に応答して周期的出力信号を生成する、クロック信号生成回路と、
該周期的出力信号の周波数を第1の値によって分割することにより、第1の分周信号を生成する、第1の分周器と、
該周期的出力信号の該周波数を第2の値によって分割することにより、第2の分周信号を生成する、第2の分周器と
を備えており、
該第1および該第2の分周信号は、異なる時間間隔の間に、該フィードバック信号として該位相検出回路に経路指定される、回路。
【請求項2】
前記第1の分周信号は、選択信号の各期間の第1の部分の間に、前記フィードバック信号として前記位相検出回路に経路指定され、前記第2の分周信号は、該選択信号の各期間の第2の部分の間に、該フィードバック信号として該位相検出回路に経路指定される、請求項1に記載の回路。
【請求項3】
前記第1の分周信号の周波数を第3の値によって分割することにより、第3の分周信号を生成する、第3の分周器と、
前記選択信号の各期間の前記第1の部分の間に、前記フィードバック信号として、該第1の分周信号を前記位相検出回路に経路指定し、該選択信号の各期間の前記第2の部分の間に、該フィードバック信号として前記第2の分周信号を該位相検出回路に経路指定する、マルチプレクサと
をさらに備えており、
該第3の分周信号は、該選択信号を生成するために使用され、該選択信号は、該マルチプレクサの選択入力端子に伝送される、請求項2に記載の回路。
【請求項4】
前記第1の分周器をリセットする第1のリセット信号、前記第2の分周器をリセットする第2のリセット信号、および前記第3の分周信号に応答する前記選択信号を生成する、同期化ブロックをさらに備える、請求項3に記載の回路。
【請求項5】
基準クロック信号の周波数を分割することにより、前記入力クロック信号を生成する、第4の分周器をさらに備える、請求項3に記載の回路。
【請求項6】
前記位相検出回路は、位相比較器と、該位相比較器に連結され電荷ポンプと、該電荷ポンプに連結されたループフィルタとを備える、請求項2に記載の回路。
【請求項7】
前記回路は、位相ロックループであり、前記クロック信号生成回路は、振動子回路であり、前記周期的出力信号の平均周波数は、前記第1の値、前記第2の値、および前記選択信号の負荷サイクルによって決定される、請求項6に記載の回路。
【請求項8】
前記回路は、位相ロックループであり、前記クロック信号生成回路は、振動子回路である、請求項1に記載の回路。
【請求項9】
前記回路は、プログラマブル論理集積回路上に製造され、前記第1および前記第2の分周器は、プログラマブル論理ブロックによって実装される、請求項1に記載の回路。
【請求項10】
クロック信号を生成するための方法であって、該方法は、
入力クロック信号をフィードバッククロック信号と比較することにより、制御信号を生成することと、
該制御信号に応答して、出力クロック信号を生成することと、
該出力クロック信号の周波数を第1の値によって分割することにより、第1の分周信号を生成すことと、
該出力クロック信号の該周波数を第2の値によって分割することにより、第2の分周信号を生成することと、
交互の時間間隔の間に、該フィードバッククロック信号として該第1および該第2の分周信号を経路指定することと
を含む、方法。
【請求項11】
前記第1の分周信号の周波数を第3の値によって分割することにより、第3の分周信号を生成することをさらに含み、
交互の時間間隔の間に、前記フィードバッククロック信号として該第1および前記第2の分周信号を経路指定することは、選択信号の各期間の第1の部分の間に、該フィードバッククロック信号として該第1の分周信号を経路指定することと、該選択信号の各期間の第2の部分の間に、該フィードバッククロック信号として該第2の分周信号を経路指定することとをさらに含み、該第3の分周信号は、該選択信号を生成するために使用される、請求項10に記載の方法。
【請求項12】
前記第1の分周信号の期間を規定する第1のリセット信号を生成することと、
前記第2の分周信号の期間を規定する第2のリセット信号を生成することと
をさらに含む、請求項11に記載の方法。
【請求項13】
前記出力クロック信号の平均周波数は、前記第1の値、前記第2の値、および前記選択信号の負荷サイクルによって決定される、請求項11に記載の方法。
【請求項14】
基準クロック信号の周波数を分割することにより、前記入力クロック信号を生成することをさらに含む、請求項10に記載の方法。
【請求項15】
前記制御信号に応答して前記出力クロック信号を生成することは、振動子を使用して該出力クロック信号を生成することをさらに含む、請求項10に記載の方法。
【請求項16】
ロックループであって、
入力クロック信号をフィードバッククロック信号と比較することにより、制御信号を生成する、位相検出回路と、
該制御信号に応答して、出力クロック信号を生成する、クロック信号生成回路と
を備えており、
該ロックループは、選択信号の各期間の第1の部分の間に、該フィードバッククロック信号として経路指定される第1の分周信号を生成するために、該出力クロック信号の周波数を第1の値によって分割するように構成され、
該ロックループは、該選択信号の各期間の第2の部分の間に、該フィードバッククロック信号として経路指定される第2の分周信号を生成するために、該出力クロック信号の該周波数を第2の値によって分割するように構成される、ロックループ。
【請求項17】
前記出力クロック信号の平均周波数は、前記第1の値、前記第2の値、および前記選択信号の負荷サイクルによって決定され、該第1の値と該第2の値とは異なる値である、請求項16に記載のロックループ。
【請求項18】
前記出力クロック信号の前記周波数を前記第1の値によって分割することにより、前記第1の分周信号を生成するように構成される、第1の分周器回路と、
前記出力クロック信号の前記周波数を前記第2の値によって分割することにより、前記第2の分周信号を生成するように構成される、第2の分周器回路と
をさらに備える、請求項16に記載のロックループ。
【請求項19】
第3の分周器回路をさらに備え、該第3の分周器回路は、前記第1の分周信号の周波数を第3の値によって分割することにより、前記選択信号を生成するために使用される第3の分周信号を生成するように構成される、請求項18に記載のロックループ。
【請求項20】
プログラマブル回路ブロックをさらに備え、該プログラマブル回路ブロックは、前記第1の分周信号を生成させること、前記出力クロック信号の前記周波数を前記第1の値によって分割して前記第2の分周信号を生成すること、および該出力クロック信号の該周波数を前記第2の値によって分割することを実行するように構成される、請求項16に記載のロックループ。
【請求項21】
前記ロックループは、前記出力クロック信号の前記平均周波数を、前記入力クロック信号の選択された固定周波数に非整数を乗じた該入力クロック信号の周波数と等しくさせる、請求項16に記載のロックループ。
【請求項22】
前記ロックループは、位相ロックループであり、前記クロック信号生成回路は、振動子回路である、請求項16に記載のロックループ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公表番号】特表2012−503431(P2012−503431A)
【公表日】平成24年2月2日(2012.2.2)
【国際特許分類】
【出願番号】特願2011−527887(P2011−527887)
【出願日】平成21年9月11日(2009.9.11)
【国際出願番号】PCT/US2009/056753
【国際公開番号】WO2010/033436
【国際公開日】平成22年3月25日(2010.3.25)
【出願人】(597154922)アルテラ コーポレイション (163)
【氏名又は名称原語表記】Altera Corporation
【Fターム(参考)】