関連出願の相互参照
本件出願は、2004年5月18日に出願された「Multi−Phase and Multi−Rate Clock Generation」と題された米国仮特許出願第60/572,508号明細書の優先権の利益を主張するものであり、この特許文献は、この参照により開示に含まれる。
以下の説明および添付の図面には、本発明の完全な理解を提供するために、特定の用語および図面記号が記載される。場合によっては、用語および記号は、本発明を実施するために必要とされない具体的詳細を意味することがある。例えば、回路素子または回路ブロック間の相互接続は、複数導体または単一導体の信号線として図示または記述される場合がある。複数導体信号線のそれぞれは、代替方法として単一導体信号線であってもよく、また、単一導体信号線のそれぞれは、代替方法として複数導体信号線であってもよい。シングルエンドであるとして図示または記述される信号および信号経路も、差動であってもよく、またその逆も同様である。同様に、アクティブハイまたはアクティブローの論理レベルを有するとして記述または図示された信号は、代替実施形態では、逆の論理レベルを有してもよい。別の例として、金属酸化物半導体(MOS)トランジスタを含むものとして記述または図示される回路は、代替方法として、バイポーラ技術、または信号制御された電流フローを実現し得るその他の任意の技術を使用して実装されてもよい。また、本明細書においてクロック信号と呼ばれる信号は、代替方法として、ストローブ信号、またはイベントのタイミングを提供するその他の信号であってもよい。用語に関しては、特定の条件を示すために、信号がローまたはハイ論理状態まで駆動される(あるいは、ハイ論理状態まで充電される、またはロー論理状態まで放電される)場合、信号は「アサートされる」と述べられる。反対に、アサートされた状態以外の状態(ハイまたはロー論理状態、またはフローティング状態(信号駆動回路がオープンドレインまたはオープンコレクタ条件などの高インピーダンス条件に遷移された場合に発生する可能性がある)を含む)に信号が駆動される(あるいは、充電または放電される)ことを示すためには、信号は「ディアサートされる」と述べられる。信号駆動回路と信号受信回路との間に接続された信号線上の信号を、信号駆動回路がアサートする(あるいは、明示的に述べられるか、または文脈により示される場合は、ディアサートする)場合、信号駆動回路が信号受信回路に信号を「出力する」と述べられる。信号線上で信号がアサートされる場合、信号線は「アクティブにされる」と述べられ、信号がディアサートされる場合、「非アクティブにされる」と述べられる。さらに、信号名に添付される前置記号「/」は、その信号がアクティブロー信号である(すなわち、アサートされた状態がロジックロー状態である)ことを示す。信号名の上の線(例えば、「<信号名>」も、アクティブロー信号を示すために使用される。「例示的」という用語は、本明細書では、例にすぎないことを、そして、優先または要求されるものではないことを表すために使用される。
広範な動作周波数にわたるクロック信号を生成するためのクロック発生器が、さまざまな実施形態で開示される。一実施形態では、周波数分割回路(frequency divider circuit)が、基準ループによって生成される位相ベクトルの周波数を、1組の除数値によって分周することによって、複数組の出力クロック信号を生成する。それぞれの組の出力クロック信号を生成するために使用される除数値Nは、事実上いかなる値であってもよく、それにより、基準ループの出力周波数FからF/Nまでの範囲にわたる出力クロック信号の生成が可能となる。一実施形態では、例えば、除数値1、2、4、および8が、FからF/8までの範囲にわたる動作周波数を有する各組の位相ベクトを、基準ループによって生成される位相ベクトルの周波数を変更する必要なしに提供するために使用される。したがって、広範な動作周波数を示す低ジッタの出力クロック信号を提供するために、比較的レンジが狭く低ノイズの基準ループと組み合わせて、周波数分割回路が使用されてもよい。さらに、1つの周波数範囲から別の周波数範囲への遷移は、基準ループによって生成される位相ベクトルの周波数を変更することなく、異なる組の出力クロック信号を選択することによって実現されてもよいので、それ以外の場合には基準ループ内での周波数の再ロックのために必要とされる遅延が回避される。
ワイドレンジ複数位相クロック発生器の実施形態
図1は、一実施形態によるワイドレンジ複数位相クロック発生器100を示す。クロック発生器100は、基準ループ101と、周波数分割回路103と、セレクタ回路105とを含む。図示されている実施形態では、基準ループ101は、1組の基準位相ベクトル111を生成するための電圧制御発振器107(VCO)を含む、位相ロックループである。VCO 107に含まれる複数の差動インバータステージ1081〜1084は、デイジーチェーン方式で結合され(すなわち、所与のインバータステージ108の出力が、次のインバータステージの入力に結合され)、最後のインバータステージ1084の出力は、最初のインバータステージ1081の入力に交差結合される。すなわち、最後のインバータステージ1084のコンプリメント出力(図1の否定記号「○」で示される)は、最初のステージのインバータステージ1081の非コンプリメント入力に結合され、最後のステージ1084の非コンプリメント出力は、最初のステージ1081のコンプリメント入力に結合される。VCO 107内のインバータステージ108のそれぞれは、入力クロック信号ペアから、インバータステージ108の総数に従った位相角だけ位相オフセットされた、差動クロック信号ペア(すなわち、クロック信号ペア1101〜1104のうちの1つ)を生成する。すなわち、最後と最初のインバータステージ1084と1081との間の交差結合接続によって、VCO 107は、全基準クロックサイクル(すなわち、基準ループによって生成される基準位相ベクトル111のうちの任意の1つのサイクル時間)を2Mによって細分する(Mはインバータステージの数)。したがって、図1の特定の実施形態では、4つのインバータステージ1081〜1084が、45°の位相角(すなわち、全基準クロックサイクル360°を8で除算)によって相互にオフセットされた、合計8つの位相ベクトルをもたらす。位相ベクトル111のうちの任意の1つが、0度位相ベクトルであるように選択すると、基準ループ101によって出力される位相ベクトル111は、0、45、95、135、180、225、270、および315度の位相オフセットを有し、共通周波数F(本明細書では、基準ループ周波数と呼ぶ)において発振する。基準位相ベクトル111は、クロック発生器100からの名目上同位相のクロック信号123の出力と区別するために、プライムインジケータ(すなわち、「’」)によって印付けられる。以下で説明するように、出力クロック信号123は、周波数分割回路および/またはセレクタ回路内で導入される遅延によって、基準位相ベクトルから任意の位相角だけ位相オフセットされてもよい。図1には示していないが、基準ループ101は、VCO 107内のインバータステージ1081〜1084のスルーレート(slew rate)を確立し、それによって、基準ループ周波数が増加または減少させられることを可能にするために使用される、1つまたは複数の制御電圧を調節するための、追加の回路を含んでもよい。例えば、一実施形態では、0.8*F〜Fの比較的狭い帯域間で調節可能な基準ループ周波数とともに、除数8、4、2、および1が、それぞれ0.1*F〜0.125*F、0.2*F〜0.25*F、0.4*F〜0.5*F、0.8*F〜Fの範囲の周波数を有する出力クロック信号を生成するために使用され、それにより、狭い帯域の基準ループを使用して、出力クロック信号のディケード周波数範囲(すなわち、FMAX=10FMIN)が実現される。基準ループの周波数範囲は、代替実施形態では、より大きいか、またはより小さくてもよく、それにより、周波数分割された出力クロック信号の周波数範囲の、対応する増加または減少が実現される。さらに、代替実施形態では、より細かい、またはより粗い位相オフセットを基準ループ出力内で提供するために、より多くの、またはより少ないインバータステージ108がVCO内で提供されてもよい。さらに、遅延ロックループ、またはクロック逓倍遅延ロックループを含む(ただし、これらに限定されない)、その他のタイプのクロック発生回路が、基準位相ベクトル111を生成するために使用されてもよい。また、LC発振器またはその他のタイプの発振器が、インバータステージ108によって形成されるリング発振器の代わりに、VCO 107内で使用されてもよい。より一般的には、基準ループ周波数内での任意の所望の周波数と位相分布とを有する基準位相ベクトルの組111を生成するための、任意の回路が、クロック発生器100の代替実施形態で使用されてもよい。
図1の実施形態で、周波数分割回路103は、基準位相ベクトルを受信し、応答として、位相ベクトル1191〜1198を含む1/2分周(divide−by−two)ベクトルセット(すなわち、「/2」ベクトルセット)、および位相ベクトル1171〜1178を含むユニティ(unity)ベクトルセット(1による分周を示すために、本明細書では、/1ベクトルセットとも呼ぶ)という、2組の位相ベクトルを出力する。周波数分割回路103に含まれる1組の緩衝増幅器113は、基準ベクトルを、減少した振幅からコンプリメンタリMOS(CMOS)信号レベルに変換し、結果としてもたらされるレベル変換された基準位相ベクトル1171〜1178を、セレクタ回路105内のそれぞれのマルチプレクサ121の第1入力に提供して、それにより、ユニティベクトルセットを提供する。代替実施形態では、緩衝増幅器113は省略されて、基準位相ベクトル111が基準ループからマルチプレクサ121に直接供給されてもよい。周波数分割回路103にさらに含まれる、1/2分周回路1151〜1158は、それぞれが基準位相ベクトル111のうちのそれぞれ1つを受信するように結合される。一実施形態では、それぞれの1/2分周回路115は、入力基準位相ベクトルの各立ち上がりエッジにおいてロジックハイ状態とロジックロー状態との間を切り換える、記憶素子などの、コンプリメンタリ出力エッジトリガ型トグル素子である。この動作によって、トグル素子のコンプリメンタリ出力は、基準位相ベクトルの2回の遷移ごとに1回遷移し、それにより、基準位相ベクトルの半分の周波数を有する、2つの周波数分割された位相ベクトルを生成する。さらに、周波数分割された位相ベクトルは、基準位相ベクトルの2倍の周期を有するため、周波数分割された位相ベクトルの位相角は事実上半減される。図2を参照すると、例えば、周波数Fと、0°、90°、180°、および270°の位相角とを有する基準位相ベクトルは、それぞれ、周波数F/2と、0°、45°、90°、および135°の位相角とを有する周波数分割された位相ベクトルを、180°(0+180°)、225°(45°+180°)、270°(90°+180°)、および315°(135°+180°)の位相角を有するコンプリメンタリの周波数分割された位相ベクトルとともにもたらす。図1および図2を参照すると、1/2分周回路1151は、0°の位相角を有する基準位相ベクトルを受信して、0°および180°の位相角を有する周波数分割された位相ベクトルを生成し、1/2分周回路1153は、90°の位相角を有する基準位相ベクトルを受信して、45°および225°の位相角を有する周波数分割された位相ベクトルを生成し、1/2分周回路1155は、180°の位相角を有する基準位相ベクトルを受信して、90°および270°の位相角を有する周波数分割された位相ベクトルを生成し、1/2分周回路1157は、270°の位相角を有する基準位相ベクトルを受信して、135°および315°の位相角を有する周波数分割された位相ベクトルを生成する。1/2分周回路1151、1153、1155、および1157により生成されるコンプリメンタリ位相ベクトルは、それらの位相角に従って、セレクタ回路105内のマルチプレクサ121の第2入力に供給され、それにより、各マルチプレクサ121は、ユニティ位相ベクトルと、名目上同一の位相角をそれぞれが有する周波数分割された位相ベクトルとを受信するようになる。セレクタ回路105は、さらに、ユニティ位相ベクトルまたは周波数分割された位相ベクトルのいずれが出力クロック信号123として出力されるかを選択するために、マルチプレクサ121の制御入力に供給される、レート選択信号120(RS)も受信する。出力クロック信号は、ユニティ位相ベクトルセットと1/2分周位相ベクトルセットとの両方で、同じ(または少なくとも名目上は同じ)位相分布を有するため、周波数分割回路103およびセレクタ回路105は、出力クロック信号123の周波数範囲を、基準ループ101の周波数範囲に比べて事実上拡張する。例えば、基準ループ101が、F/2〜Fにわたる基準ループ周波数を実現可能である場合、クロック発生器100によって生成される出力クロック信号123の全体的周波数範囲はF/4〜Fに拡張される。さらに、動作周波数FとF/2との間でシグナリングレートが遷移されるべきである場合、レート選択信号120の状態を変更することによって遷移が引き起こされてもよく、それにより、基準ループ内での周波数調節と、それに関連するあらゆる再ロック遅延とが回避される。
一実施形態では、基準ループ101によって出力される基準位相ベクトル111のそれぞれは、差動ペアのそれぞれの信号線上を伝導される、基準位相ベクトルとそのコンプリメントとの組み合わせによって形成される差動信号である。したがって、所与の基準位相ベクトルまたは出力クロック信号の、コンプリメントの生成は、受信側回路の入力において、差動ペアの成分信号線の結合を反転することによって行われてもよい。したがって、図1、および以下に記載するその他の図では、シングルエンドの信号線が示されているが、すべてのそのような場合において、信号線は、差動クロック信号を伝導するための差動ペアであってもよく、それにより、コンプリメンタリクロック信号の生成を減少させ、所与の出力から所与の入力までの延長線に沿ったいずれかの点において差動ペアを反転してもよい(ねじってもよい)。
図3は、代替実施形態によるワイドレンジ複数位相クロック発生器180を示す。クロック発生器180は、基準ループ181と、周波数分割回路1831〜1834と、セレクタ回路185とを含む。図示されている特定の実施形態では、基準ループ181は、基準クロックサイクル内で均一に(すなわち、位相角0°、90°、180°、および270°において)位相が分布された、4つの基準位相ベクトル182を生成する。代替実施形態では、より多くの、またはより少ない基準位相ベクトルが、基準ループ181によって生成されてもよい。周波数分割回路1831は、0°の基準位相ベクトルを受信するように結合され、0度の位相角を有する1つのユニティ(すなわち、/1)位相ベクトルと、0°および180°の位相角を有する2つの1/2分周(すなわち、/2)位相ベクトルと、0°、90°、180°、および270°の位相角を有する4つの1/4分周(すなわち、/4)位相ベクトルと、0°、90°、180°、および270°の位相角を有する4つの1/8分周(すなわち、/8)位相ベクトルとを生成する。周波数分割回路1832および1834は、90°および270°の基準位相ベクトルを受信するように結合され、対応する90°および270°のユニティ位相ベクトルを生成する。周波数分割回路1833は、180°の基準位相ベクトルを受信し、対応する180°のユニティ位相ベクトルと、90°および270°の位相角を有する/2位相ベクトルとを生成する。セレクタ回路は、ユニティ位相ベクトルと、/2位相ベクトルと、/4位相ベクトルと、/8位相ベクトルとの組を、それぞれの入力ポートにおいて受信し、複数ビットのレート選択信号184(RS)の状態に従って、位相ベクトルの組のうちの1つを出力クロック信号186として出力する。この配置によって、クロック発生器180により生成される出力クロック信号186は、基準ループの最大周波数FMAXから基準ループの最小周波数FMINまでの範囲が1、2、4、または8によって分周されたものとなり、それにより、比較的狭い帯域の基準ループ181を使用して、ワイドレンジの出力クロック周波数が提供されるようになる。
図4は、周波数分割回路1831を実装するために使用されてもよい周波数分割回路の実施形態210を示す。周波数分割回路210は、緩衝増幅器113と、エッジトリガ型記憶素子2111〜2113(本例では記憶素子)と、排他的ORゲート2151〜2154および2171〜2174とを含む。緩衝増幅器113は、0°の基準位相ベクトル212を受信するように接続され、レベル変換されたユニティ位相ベクトルF0を応答として生成する。代替実施形態では、緩衝増幅器113は省略されてもよい。記憶素子2111〜2113のそれぞれは、データ入力(D)と、クロック入力(クロック入力記号「>」によって示される)と、反転および非反転出力/QおよびQとを含む。図示されているように、各記憶素子211の反転出力は、トグル構成をもたらすために、記憶素子のデータ入力にフィードバックされる。
基準位相ベクトル212は、記憶素子2111のクロック入力に供給され、それにより、コンプリメンタリクロック信号F/20およびF/2180(すなわち、基準位相ベクトルの半分の周波数と、0°および180°の位相角とを有するクロック信号)を生成する。F/20クロック信号は、記憶素子2112のクロック入力に供給され、記憶素子2112は、応答として、コンプリメンタリクロック信号F/40およびF/4180(すなわち、基準位相ベクトルの4分の1の周波数と、0°および180°の位相角とを有するクロック信号)を生成する。F/40クロック信号は、記憶素子2113のクロック入力に供給され、記憶素子2113は、応答として、コンプリメンタリクロック信号F/80およびF/8180(すなわち、基準位相ベクトルの8分の1の周波数と、0°および180°の位相角とを有するクロック信号)を生成する。
図4をさらに参照すると、F/2180およびF/4180信号は、排他的ORゲート2152のそれぞれの入力に供給され、F/2180およびF/40信号は、排他的ORゲート2154のそれぞれの入力に供給される。図4の周波数分割回路によって生成される位相ベクトルを説明する、図5を参照すると、F/2180信号(F/2:180)は、F/4 90°位相オフセットにおいて(すなわち、時間220において)開始されるF/4サイクル時間の最初の半周期の間は、F/4180信号の状態と反対の状態を有し、F/4サイクル時間の残りの半周期の間は、F/4180信号と同じ状態を有する。したがって、図4および図5を参照すると、F/2180およびF/4180信号は、排他的ORゲート2152において組み合わせられて、信号F/490(基準ループ周波数の4分の1の周波数と、90°の位相角とを有する位相ベクトル)を生成してもよい。同様に、F/2180信号は、F/4 270°位相オフセットにおいて(すなわち、時間222において)開始されるF/4サイクル時間の最初の半周期の間は、F/40信号の状態と反対の状態を有し、F/4サイクル時間の残りの半周期の間は、F/40信号と同じ状態を有するため、F/2180およびF/40信号は、排他的ORゲート2154において組み合わせられて、信号F/4270(基準ループ周波数の4分の1の周波数と、270°の位相角とを有する位相ベクトル)を生成してもよい。図4および図5をさらに参照すると、F/4180信号は、排他的ORゲート2172においてF/8180とともに、そして、排他的ORゲート2174においてF/80とともに排他的OR演算されて、それぞれ、位相ベクトルF/890およびF/8270を生成してもよいことがわかる。排他的ORゲート2151、2153、2171、および2173は、位相ベクトルF/40、F/4180、F/80、およびF/8180をそれぞれ受信するように結合された第1入力と、接地された第2入力とを有する。この配置によって、位相ベクトルF/40、F/4180、F/80、およびF/8180は、排他的ORゲート2151、2153、2171、および2173を通過するようになるが、ただし、排他的ORゲート2152、2154、2172、および2174を通した信号伝搬の結果としてもたらされるクロック信号F/490、F/4270、F/890、およびF/8270の位相遅延に一致するように、排他的ORの信号伝搬時間によって位相が遅らされる。
代替実施形態では、周波数分割回路210にさまざまな変更が行われてもよいことに留意されたい。例えば、排他的ORゲート215、217のそれぞれの出力において、および/または記憶素子2111の出力において、緩衝増幅器が、周波数分割回路210からの対応するクロック信号出力を緩衝するために提供されてもよい。また、記憶素子2112を通した伝搬遅延に一致するように、F/2180信号を必要に応じて遅延させるために、記憶素子2111の反転出力から排他的ORゲート2152および2154の入力までの経路内に、1つまたは複数の遅延素子または遅延回路が提供されてもよい。同様に、記憶素子2113を通した伝搬遅延に一致するように、F/4180信号を必要に応じて遅延させるために、記憶素子2112の反転出力から排他的ORゲート2172および2174の入力までの経路内に、1つまたは複数の遅延回路が提供されてもよい。さらに、記憶素子211は、それぞれがロード可能フリップフロップ(すなわち、事前ロードデータ値またはフィードバックされた出力値のいずれかを選択するための多重化データ入力を有するもの)であってもよく、または、記憶素子211が所定の状態に初期化されることを保証するための、システムリセット線に結合されてもよい。さらに、図3を参照すると、4つの周波数分割回路183はすべて、図4に示すように(すなわち、使用されない出力は未接続のままにされて)実装されてもよく、または、不必要な回路素子を削除することによって実装されてもよいことに留意されたい。例えば、周波数分割回路1832および1834のそれぞれは、緩衝増幅器と、負荷整合の目的のために望ましい場合は、図4の周波数分割回路210内の信号負荷配置に一致するような、記憶素子またはその他の回路素子とによって実装されてもよい。同様に、分割回路1833は、図4の増幅器113と記憶素子2111とに対応する緩衝増幅器と周波数分割記憶素子とを使用して実装されてもよく、さらに、負荷整合の目的のために望ましい場合は、周波数分割回路210内の信号負荷配置に一致するような、負荷記憶素子と、排他的ORゲート(または、その他の負荷素子)のペアとが、周波数分割記憶素子の出力に結合されてもよい。
図6は、F〜F/8の範囲の選択可能な周波数と、0°、60°、90°、120°、180°、240°、270°、および300°の位相角とを有する出力クロック信号259を生成する、ワイドレンジ複数位相クロック発生器の実施形態250を示す。用語に関して説明すると、0°、90°、180°、および270°の位相は、本明細書では、一次位相、一次位相クロック信号、または一次位相ベクトルと呼び、60°、120°、240°、および300°の位相は、本明細書では、二次位相、二次位相クロック信号、または二次位相ベクトルと呼ぶ。代替実施形態では、一次および二次位相は、構成要素となるクロック信号を、より多く、またはより少なく含んでもよく、かつ/または、異なる位相角を有してもよい。90°および270°の一次位相ベクトルは、例えば、クロックサイクルごとに2つのデータ有効期間(すなわち、2つのデータアイ)を有するデータ波形をサンプリングするために使用されてもよく、0°および180°の一次位相ベクトルは、データ波形のエッジをサンプリングするために使用されてもよい。60°および120°の二次位相ベクトルは、例えば、90°のデータサンプリング点に近い時間にデータ波形内で遷移が発生したかどうかを判定する、オーバーサンプリングのために使用されてもよく、また、240°および300°の位相ベクトルは、同様に、270°のデータサンプリング点に近い時間に遷移が発生したかどうかを判定する、データ波形のオーバーサンプリングのために使用されてもよい。他の実施形態では、出力クロック信号259は、異なる周波数、位相角を有してもよく、かつ/または、他の目的のために使用されてもよい。
クロック発生器250は、基準ループ251と、補間器2531〜2538と、分割回路2551〜2558と、セレクタ回路257とを含む。図示されている特定の実施形態では、基準ループ251は、基準クロックサイクル内で均一に(すなわち、一次位相角0°、90°、180°、および270°において)位相が分布された、4つの基準位相ベクトル252を生成する。代替実施形態では、より多くの、またはより少ない基準位相ベクトル252が、基準ループ251によって生成されてもよい。
補間器2531〜2538は、補間された位相ベクトル254を生成するために使用され、一次位相ベクトルを生成するための固定位相補間器2531〜2534と、二次位相ベクトルを生成するための混合位相補間器2535〜2538とを含む。図示されている実施形態では、補間器253のそれぞれは、リーディングおよびトレーリングの位相ベクトル入力を含み、重み値に従って2つの入力位相ベクトルの間で補間を行って、入力位相ベクトルの位相角の間に位置する位相角を有する、補間された位相ベクトル254を生成する。固定位相補間器2531〜2534の場合、両方の位相ベクトル入力に同じ基準位相ベクトルが供給され、そのため、結果としてもたらされる補間された位相ベクトルは、基準位相ベクトルと名目上同じ位相角(すなわち、4つの一次位相角のうちの1つ)を有するが、ただし、補間器253を通した伝搬遅延だけオフセットされる。したがって、固定位相補間器によって生成される、補間された位相ベクトル254は、図6で、基準位相ベクトル252と同じ位相角を有するとして示されているが、基準位相ベクトル252(記号「”」によって示されている)と区別するために、記号「’」によって示されている。
混合位相補間器2535〜2538のそれぞれは、リーディングおよびトレーリングの位相ベクトル入力において基準位相ベクトルのペアを受信し、また、入力基準位相ベクトルの間の所定の位相オフセットに位置する、補間された位相ベクトルを生成するために重み付けされる。混合位相補間器2535は、例えば、0°および90°の基準位相ベクトルを受信するように結合され、60°の補間されたベクトルを生成するように重み付けされる。すなわち、補間器2535内で適用される補間制御値は、トレーリング位相ベクトル(TPV)に適用される重みWTが、リーディング位相ベクトル(LPV)に適用される重みWLの2倍であるように、そして、WT+WLの合計は所定の定数Kとなるように指定する(すなわち、WT=2/3K、WL=1/3K)。この配置によって、補間器2535は、TPV*2/3+LPV*1/3=90°*2/3+0°*1/3=60°によって与えられる位相角を有する、補間された位相ベクトルを生成する。補間器2536、2537、および2538は、同様に重み付けされて、それぞれ、ベクトルペア90°/180°、180°/270°、および270°/0°を混合し、補間されたベクトル120°、240°、および300°を生成する。0°、90°、180°、および270°の位相角を有する補間された位相ベクトルと同様に、60°、120°、240°、および300°の補間された位相ベクトルは、そのようなベクトルが、基準位相ベクトル252に比べて、補間器253の伝搬遅延だけ遅延させられることを示すために、「’」記号によって示される。したがって、固定位相補間器2531〜2534は、混合位相補間器2535〜2538によって60°、120°、240°、および300°の補間された位相ベクトルに導入される位相遅延に一致させるための、遅延整合機能を果たす。代替実施形態では、固定位相補間器2531〜2534は、混合位相補間器2535〜2538の伝搬遅延に一致する他の遅延素子によって置き換えられてもよく、または、すべて省略されてもよい。図6の実施形態では、補間制御値は、所定の60°、120°、240°、および300°の位相角を有する、補間された位相ベクトルを生成するために、それぞれの混合位相補間器2535〜2538内で固定されている。以下で説明する代替実施形態では、補間制御値は、可変の位相角を有する補間された位相ベクトルの生成を可能にするように、調節可能であってもよい。さらに、リーディングとトレーリングとの一次位相ベクトルの間で補間して二次位相ベクトルを生成する代わりに、二次位相ベクトルは、以下で詳細に説明するように、スケーリングされた遅延素子の使用を通して生成されてもよい。
補間された位相ベクトル254は周波数分割回路2551〜2558に供給され、周波数分割回路2551〜2558は、次に、1組のユニティ位相ベクトルと、複数組の周波数分割された位相ベクトルとをもたらす。周波数分割回路2551は、例えば、0°の補間された位相ベクトルを受信して、対応する0°のユニティ位相ベクトル(すなわち、記号「/1」によって示される周波数Fと、名目上0°の位相オフセットとを有する)と、0°および180°の位相角を有するF/2位相ベクトルのペアと、0°、90°、180°、および270°の位相角を有するF/4位相ベクトルと、0°、90°、180°、および270°の位相角を有するF/8位相ベクトルとを生成する。周波数分割回路2552、2554、2555、および2558は、それぞれ、90°、270°、60°、および300°の補間された位相ベクトルを受信して、90°、270°、60°、および300°の位相角を有する、対応するユニティ位相ベクトルを生成する。周波数分割回路2553は、180°の補間された位相ベクトルを受信して、対応する180°のユニティ位相ベクトルと、90°および270°の位相角を有するF/2位相ベクトルとを生成する。周波数分割回路2556は、120°の補間された位相ベクトルを受信して、対応する120°のユニティ位相ベクトルと、60°および240°の位相角を有するF/2位相ベクトルと、120°および300°の位相角を有するF/4位相ベクトルと、60°および240°の位相角を有するF/8位相ベクトルとを生成する。周波数分割回路2557は、240°の補間された位相ベクトルを受信して、対応する240°のユニティ位相ベクトルと、120°および300°の位相角を有するF/2位相ベクトルと、60°および240°の位相角を有するF/4位相ベクトルと、120°および300°の位相角を有するF/8位相ベクトルとを生成する。
周波数分割回路255によって生成される、ユニティ位相ベクトルと、F/2位相ベクトルと、F/4位相ベクトルと、F/8位相ベクトルとは、セレクタ回路257の対応する入力ポートに提供される、位相ベクトルのそれぞれの組を構成する。セレクタ回路は、さらに、出力クロック信号259の所望される周波数または周波数範囲を示す、複数ビットのレート選択信号258(RS)を受信し、それに応答して、ユニティ位相ベクトルまたは周波数分割された位相ベクトルの対応する組を、出力クロック信号259として出力する。例えば、一実施形態では、セレクタ回路257は、2ビットのレート選択信号258が「00」、「01」、「10」、または「11」の論理状態のいずれにあるかに従って、それぞれ、ユニティ位相ベクトル、F/2位相ベクトル、F/4位相ベクトル、またはF/8位相ベクトルを、出力クロック信号259として出力する。
図7は、図6のクロック発生器内の周波数分割回路255のそれぞれを実装するために使用されてもよい、周波数分割回路280を示す。周波数分割回路280は、図4に関連して説明した、緩衝増幅器113と、エッジトリガ型記憶素子2111〜2113と、排他的ORゲート2151〜2154、2171〜2174とを含み、さらに、記憶素子2111〜2113の出力−入力経路内にそれぞれ結合された、マルチプレクサ2891〜2893も含む。より具体的には、マルチプレクサ2891〜2893のそれぞれの第1入力は、記憶素子2111〜2113のうちのそれぞれ1つの、反転出力に結合され、マルチプレクサ2891〜2893のそれぞれの第2入力は、初期化値DI2、DI4、およびDI8のうちのそれぞれ1つを受信するように結合され、マルチプレクサ2891〜2893のそれぞれの出力は、記憶素子2111〜2113のうちのそれぞれ1つの、データ入力に結合される。制御信号S2、S4、およびS8は、それぞれ、マルチプレクサ2891、2892、および2893の制御入力に供給され、記憶素子211を所定の状態に初期化するために、初期化状態と動作状態との間で選択的に遷移させられる。一初期化シーケンスでは、例えば、制御信号S2およびS4は、記憶素子2111および2112の出力のトグルを可能にするために、最初に動作状態に設定され、他方、制御信号S8は初期化状態に設定される。この操作によって、記憶素子2112の立ち上がりエッジ出力に応答して、記憶素子2113に初期化値DI8がロードされる。その後、制御信号S4が初期化状態に遷移させられて、記憶素子2111の次の立ち上がりエッジにおいて、記憶素子2112内にDI4がロードされる。記憶素子2113および2112が初期化された後で、制御信号S2が初期化状態に遷移させられて、入力基準位相ベクトル290(F’)の次の立ち上がりエッジにおいて、記憶素子2111内にDI2がロードされる。記憶素子2111〜2113が初期化された後は、記憶素子がトグルを開始できるようにするために、制御信号S2、S4、およびS8が同時に動作状態に遷移させられてもよい。
図7をさらに参照すると、記憶素子211のそれぞれの中にロードされる初期化値は、記憶素子出力の初期状態を決定し、したがって、記憶素子出力の、選択可能な180度の位相シフトを提供する。したがって、記憶素子211を、ロジック「0」またはロジック「1」値を使用して初期化することの効果は、記憶素子出力の立ち上がりエッジを駆動するために、入力クロック信号(すなわち、記憶素子のクロック入力に供給される信号)内の2つの連続した立ち上がりエッジのうちの1つ目または2つ目のいずれかを選択するということである。例えば、記憶素子2111に、最初にロジック「0」値がロードされている場合、記憶素子の非反転出力は最初はローになり、したがって、入力基準位相ベクトル290の最初の立ち上がりエッジに応答して立ち上がる。対照的に、記憶素子2111に、最初にロジック「1」値がロードされている場合、記憶素子の非反転出力は最初はハイになり、したがって、基準位相ベクトル290の最初の立ち上がりエッジに応答して立ち下がり、次に、基準位相ベクトル290のそれに続く立ち上がりエッジに応答して立ち上がる。以下で説明するように、この操作は、360°よりも大きな位相角を有する基準位相ベクトル290のエッジの選択を可能にするために有用である。
一実施形態では、図6の周波数分割回路2551、2556、および2557を実装するために、周波数分割器280の異なるインスタンス内で、記憶素子2111〜2113は、さまざまに初期化される。例えば、周波数分割回路2551は、周波数分割器280の第1のインスタンス内で、ロジック「0」値を使用して記憶素子2111〜2113を初期化することにより実装されてもよい。そのような配置では、記憶素子2111〜2113と排他的ORゲート2151〜2154および2171〜2174との出力波形は、図5に示す波形に一致し、したがって、図6に示されている、0°のユニティ位相ベクトルと、0°および180°のF/2位相ベクトルと、0°、90°、180°、および270°のF/4位相ベクトルと、0°、90°、180°、および270°のF/8位相ベクトルとを構成する。図6の周波数分割器2553を実装するために、周波数分割回路280の別のインスタンス内の記憶素子2111が、同様に、ロジック「0」値を使用して初期化されてもよく、また、図6の周波数分割回路2522、2524、2525、および2528を実装するために、周波数分割回路280の追加のインスタンスが、任意の値を使用して初期化されてもよい。図4に関連して説明したように、使用されないクロック信号を生成する記憶素子211および排他的ORゲート215、217は、図7の周波数分割器280の選択されたインスタンス内で省略されてもよく、または、同様の負荷を示す回路素子に置き換えられてもよい。さらに、1つまたは複数の遅延素子が、記憶素子2111の非反転出力と、排他的ORゲート2152および2154との間の経路内に、遅延整合の目的のために提供されてもよく、また、記憶素子2112の非反転出力と、排他的ORゲート2172および2174との間の経路内にも提供されてもよい。
図1および図2に関連して上述したように、位相角Aを有する補間された位相ベクトルが、値Nによって周波数分割された場合、結果としてもたらされる周波数分割された位相ベクトルは位相角A/Nを有する。したがって、図7の実施形態において、位相A*N(「*」記号は乗算を示す)を有する補間された位相ベクトルを周波数分割器280に供給することによって、周波数分割器280は、周波数F/Nと任意の位相角Aとを有する位相ベクトルを生成することが可能にされる。したがって、図8Aに示すように、図6の周波数分割器2556は、入力される120°の補間された位相ベクトルを、2によって周波数分割することによって、60° F/2位相ベクトルを生成することが可能にされ、また、480°の補間された位相ベクトルを、4によって周波数分割することによって、120° F/4位相ベクトルを生成することが可能にされる。図示されているように、480度位相ベクトル(すなわち、120°基準位相ベクトル290の、120°エッジの直後に続く立ち上がりエッジ)の選択は、例えば、図7の周波数分割器280のインスタンス内の記憶素子2111を「1」(すなわち、DI2=1)に初期化し、それにより、F/2 240°位相ベクトルを記憶素子2112のクロック入力に提供することによって実現されてもよい。240° F/2位相ベクトルは、F/4 120°位相ベクトルを生成するために記憶素子2112内で2によって分割されてもよいため、初期化値DI4は0に設定される。同様に、記憶素子2112の非反転出力において生成される120° F/4位相ベクトルは、F/8 60°波形を生成するために、記憶素子2113内で2によって分割されてもよいため、記憶素子2113の初期化値は0に設定される。F/2 60°位相ベクトルは、記憶素子2111の反転出力において生成され、F/4 300°およびF/8 240°位相ベクトルは、同様に、記憶素子2112および2113の反転出力において生成される。図7の周波数分割回路280が、図6の周波数分割器2556を実装するために使用される場合、排他的ORゲート2152、2154、2172、および2174は、使用されない位相ベクトルをもたらす。排他的ORゲート2152、2154、2172、および2174は、それにもかかわらず、負荷整合の目的のために周波数分割器280内に提供されてもよく、あるいは、同様の負荷素子によって置き換えられるか、またはすべて省略されてもよい。
図8Bを参照すると、図6の周波数分割器2557は、入力される240°の補間された位相ベクトルを、2および4によって周波数分割することによって、それぞれ、120° F/2および60° F/4位相ベクトルを生成することが可能にされ、960°位相ベクトルを、8によって周波数分割することによって、120° F/8位相ベクトルを生成することが可能にされる。図示されているように、960°位相ベクトル(すなわち、240°基準位相ベクトル290の、240°エッジの後の2つ目の立ち上がりエッジ)の選択は、記憶素子2112を「1」に初期化し、それにより、240° F/4位相ベクトル(120° F/2位相ベクトルの480°エッジに整列され、したがって、入力される基準位相ベクトル290の960°エッジに整列された、立ち上がりエッジを有する位相ベクトル)を記憶素子2113のクロック入力に提供することによってもたらされる。240°基準位相ベクトル290は、F/2 120°位相ベクトルを生成するために、2によって分割されてもよいため、記憶素子2111の初期化値は「0」に設定される。同様に、記憶素子2112の非反転出力において生成される240° F/4位相ベクトルは、120° F/8位相ベクトルを生成するために、2によって分割されてもよいため、記憶素子2113は「0」に初期化される。300° F/2位相ベクトルは、記憶素子2112の反転出力において生成され、60° F/4および300° F/8位相ベクトルは、同様に、記憶素子2112および2113の反転出力において生成される。図7の周波数分割器280が、図6の周波数分割回路2557を実装するために使用される場合、排他的ORゲート2152、2154、2172、および2174は、使用されない位相ベクトルを生成する。そのようなゲートは、それにもかかわらず、負荷整合の目的のために周波数分割器280内に提供されてもよく、あるいは、同様の負荷素子によって置き換えられるか、またはすべて省略されてもよい。
図7をさらに参照すると、記憶素子2111〜2113のうちの所与の1つがロジック「1」状態に初期化された場合、周波数分割器280の、記憶素子によって生成されるコンプリメンタリ位相ベクトルのペアが現れる出力ノードは、反転されることに留意されたい。例えば、記憶素子2111は、ロジック「0」状態に初期化された場合、位相角A/2および(A/2)+180°を有するF/2位相ベクトルを、それぞれ、その非反転および反転出力において生成し、ロジック「1」状態に初期化された場合、位相角(A/2)+180°およびA/2を有するF/2位相ベクトルを、それぞれ、その非反転および反転出力において生成する(Aは入力される基準位相ベクトル290の位相角)。一実施形態では、所与の記憶素子211の反転および非反転出力と、周波数分割器280の出力ノードとの間の結合を、記憶素子が「1」に初期化された場合に入れ替えるための、多重化回路(図示せず)が周波数分割回路280内に提供され、それにより、初期化値の状態に関係なく、周波数分割回路280内で、位相ベクトル−出力ノードの同じ向きがもたらされる。代替実施形態では、図6のセレクタ回路257が、例えば、入力される位相ベクトルを、レート選択信号258によって示される周波数分割に従って、適切な出力クロック経路上に転送することによって、周波数分割回路280内での位相ベクトル−出力ノードの入れ替えを補償してもよい。
図9は、選択可能な周波数範囲とプログラム可能な位相オフセットとを有する出力クロック信号375を生成するために使用されてもよい、ワイドレンジ複数位相クロック発生器の実施形態350を示す。クロック発生器350は、基準ループ351と、第1ステージ補間器バンク353と、第2ステージ補間器バンク355と、周波数分割器バンク357と、セレクタ回路359と、レート制御ロジック367(RCL)とを含む。図示されている実施形態では、基準ループ351は、基準クロックサイクル内で均一に(すなわち、一次位相角0°、90°、180°、および270°において)位相が分布された、4つの基準位相ベクトル352を生成する。代替実施形態では、より多くの、またはより少ない基準位相ベクトルが、基準ループ351によって生成されてもよい。上述したように、基準ループ351は、クロック逓倍遅延ロックループまたは位相ロックループの場合のように、クロック逓倍機能を実行してもよく、または、遅延ロックループの場合のように、基準クロック周波数における基準位相ベクトルを生成してもよい。第1ステージ補間器バンク353は、基準位相ベクトル352を基準ループから受信するように結合され、出力クロック信号375と、出力クロック信号の遷移に応答してサンプリングされる信号との間の所望の位相整列を達成するために、基準位相ベクトル352の位相を必要に応じて調節するために使用される。一実施形態では、例えば、第1ステージ補間器バンク353は、入力信号内のデータアイのエッジにおいて捕捉されるサンプルが、そのようなサンプルの捕捉のタイミングをとるために使用される出力クロック信号375がデータアイのエッジに比較して早く遷移していること、または遅く遷移していることのいずれを示すかに従って、基準位相ベクトル352の位相を調節するための、クロックデータ復元ロジック(CDR)を含む。代替実施形態では、他のクロック位相調節技術が使用されてもよい。第1ステージ補間器バンク353によって生成される位相ベクトル354は、本明細書では基準位相ベクトルと呼ばれるが、基準ループ351によって生成される基準位相ベクトル(「”」によって示される)と区別するために、記号「’」によって示される。代替実施形態では、第1ステージ補間器バンク353は、省略されてもよく、または、クロック発生器の外部に配置されて、例えば、出力クロック信号375を受信し、そのような信号の位相を直接調節してもよい。したがって、基準位相ベクトルは、基準ループ351から直接に、または第1補間器バンク353によって、第2ステージ補間器バンク355に供給されてもよい。
図9の実施形態で、第2ステージ補間器バンクは、0°、90°、180°、および270°の基準位相ベクトル354(すなわち、一次位相ベクトル)に一致する固定位相ベクトルを生成するための、固定位相補間器3611〜3614と、固定位相ベクトルのそれぞれのペアの位相角の間に位置する位相角を有する混合位相ベクトルを生成するための、混合位相補間器3631〜3634とを含む。例えば、混合位相補間器3631は、0°および90°の基準位相ベクトルを受信し、したがって、0°と90°との間の位相角を有する混合位相ベクトルを生成する。同様に、補間器3632、3633、および3634は、基準位相ベクトルペア90°/180°、180/270、および270°/0°を受信し、したがってそれぞれ、90°と180°との間、180°と270°との間、および270°と0°との間の、さまざまな位相角を有する混合位相ベクトルを生成する。混合位相ベクトルの位相角は、以下で説明するように、レート制御ロジック367によって供給される1つまたは複数の補間制御値362(ICV)によって制御される。
図9の実施形態で、0°、90°、180°、および270°の固定位相ベクトルのそれぞれは、対応する基準位相ベクトルを、固定位相補間器3611〜3614のうちのそれぞれ1つの、両方の入力に供給することによって生成される。この配置によって、固定位相ベクトルは、対応する基準位相ベクトルと名目上は同じ位相を有するが、ただし、補間回路3611〜3614を通した伝搬遅延に従ってそのような基準位相ベクトルから位相オフセットされ、したがって、混合位相補間器3631〜3634によって混合位相ベクトル内に導入される伝搬遅延と整合する。代替実施形態では、基準位相補間器は、混合位相補間器363と実質的に同じ伝搬遅延を示す、1つまたは複数の緩衝増幅器、インバータチェーン、またはその他の遅延素子によって置き換えられてもよい。
図9をさらに参照すると、周波数分割器バンク357は、1組のユニティ位相ベクトルと、複数組の周波数分割された位相ベクトルとを、補間器バンク355から受信した固定位相ベクトルおよび混合位相ベクトルに基づいて生成する。ユニティ位相ベクトルは、基準ループ周波数Fと、位相角0°、90°、180°、270°、X0−90、X90−180、X180−270、およびX270−0とを有する(記号「X」は、関連する添え字によって示される範囲内の、可変の位相角を示す)。図9の特定の実施形態では、周波数F/2を有する1/2分周セットの位相ベクトルと、周波数F/4を有する1/4分周セットの位相ベクトルと、周波数F/8を有する1/8分周セットの位相ベクトルという、3組の周波数分割された位相ベクトルが、周波数分割器バンク357によって生成される。さらに、周波数分割された位相ベクトルの各組の構成要素となる位相ベクトルは、ユニティ位相ベクトルの位相角に一致する(または、実質的に一致する)位相角を有する。代替実施形態では、周波数分割された位相ベクトルの組が、より多く、またはより少なく生成されてもよく、また、周波数分割された位相ベクトルの各組は、適用例での必要性に応じて、構成要素となる位相ベクトルを、より多く、またはより少なく含んでもよい。
図9の実施形態では、周波数分割器バンク357は、図4の周波数分割回路210の個々のインスタンスによってそれぞれが実装される、周波数分割回路3711〜3718の組を含む。周波数分割回路3711は、例えば、0°の固定位相ベクトルを受信して、対応する0°のユニティ位相ベクトル(すなわち、周波数F、および名目上0°の位相オフセットを有する)と、0°および180°の位相角を有するF/2位相ベクトルと、0°、90°、180°、および270°の位相角を有するF/4位相ベクトルと、0°、90°、180°、および270°の位相角を有するF/8位相ベクトルとを生成する。周波数分割回路3713および3717は、それぞれ、90°および270°の固定位相ベクトルを受信して、90°および270°の位相角を有する、対応するユニティ位相ベクトルを生成する。周波数分割回路3715は、180°の固定位相ベクトルを受信して、対応する180°ユニティ位相ベクトルと、90°および270°の位相角を有するF/2位相ベクトルとを生成する。周波数分割回路3712、3714、3716、および3718は、混合位相補間器3631、3632、3633、および3634から、位相角X0−90、X90−180、X180−270、およびX270−0を有する混合位相ベクトルをそれぞれ受信して、対応するユニティ位相ベクトルと、周波数F/2、F/4、F/8および位相角X/2、X/4、X/8を有する位相ベクトルのコンプリメンタリペアとを、それぞれが生成する。すなわち、周波数分割回路3712、3714、3716、および3718のそれぞれは、位相角X(すなわち、0〜90°、90〜180°、180〜270°、および270〜0°)を有するユニティ位相ベクトルと、周波数F/2および位相角X/2を有する周波数分割された位相ベクトルのペアと、周波数F/4および位相角X/4を有する周波数分割された位相ベクトルのペアと、周波数F/8および位相角X/8を有する周波数分割された位相ベクトルのペアとを生成する。図3および図4に関連して説明したように、選択されたF/2、F/4、またはF/8クロック信号を生成しない、選択された回路素子(例えば、記憶素子および排他的ORゲート)は、周波数分割回路371から省かれてもよい。そのような回路素子は、また、実質的に同等の負荷を提供する他の回路素子によって置き換えられてもよい。さらに、180および270ユニティ位相ベクトルは、代替実施形態では、分割回路3711および3713によって、0および90ユニティ位相ベクトルのコンプリメントとして生成されてもよい。そのような実施形態では、周波数分割回路3711はすべて省略されてもよく、また、望ましい場合は、周波数分割回路3715から緩衝増幅器が省かれてもよい。
周波数分割器バンク357は、構成要素となる周波数分割回路371によって生成される、ユニティ位相ベクトルの組と、周波数分割された位相ベクトルの組とを、セレクタ回路359のそれぞれの入力ポートに出力する。セレクタ回路359は、次に、レート制御ロジック367からの象限選択信号364(QS)に従って、および、レート選択信号258(RS)に従って、出力クロック信号375として、位相ベクトルの選択された組を出力する。一実施形態では、レート選択信号258は、4つの入手可能な出力クロック周波数F、F/2、F/4、またはF/8のうちの1つを示す複数ビットの信号である。代替実施形態では、レート選択信号258は、さらに、基準ループ351の出力周波数(例えば、基準ループ351のチューニング帯域内の)も指示してもよく、したがって、4つの周波数範囲のうちの1つの中の出力クロック周波数を指定してもよい。代替実施形態では、より多くの、またはより少ない出力クロック周波数が、あるいは、より多くの、またはより少ない周波数範囲の中の、出力クロック周波数が、レート選択信号258によって指定されてもよい。
混合位相補間器3631〜3634、および対応する周波数分割器3712、3714、3716、および3718について考慮すると、指定された周波数F/N(Fは基準クロック周波数、Nは1以上の整数)において任意の位相角Aを有する出力クロック信号を生成するには、位相角N*Aを有する位相ベクトルが、混合位相補間器363のうちの1つによって生成され、次に、対応する周波数分割回路371内で、Nによって分周されてもよいということがわかる。位相角N*Aを有する、分周されていない位相ベクトルは、本明細書では、除数乗算された(divisor−multiplied)位相ベクトルと呼ばれ、その理由は、位相ベクトルは、所望の出力クロック位相角に対応しているが、周波数分割の後で所望の位相角をもたらすようにするために、周波数除数値Nによって乗算されているためである。除数乗算された位相ベクトルの位相角は、一般に、基準クロック信号の全サイクル内の任意の位置で発生してもよいため、除数乗算された位相ベクトルをもたらすために混合される基準位相ベクトルのペアは、除数値(例えば、2、4、6、8)と所望の出力クロック位相角とに応じてさまざまであってもよい。図10Aを参照すると、例えば、周波数F/2と75°の位相角とを有する出力クロック信号が所望される場合、周波数Fと150°の位相角とを有する除数乗算された位相ベクトルが、90°および180°の基準位相角の間で補間することによって生成され、次に、所望のクロック信号を生成するために2によって分周される。図9のクロック発生器350では、除数乗算された位相角は、したがって、混合位相補間器3632によって、トレーリング基準位相ベクトル(180°)への2/3の重みと、リーディング基準位相ベクトル(90°)への1/3の重みとを指定する補間制御値を使用して生成される。結果として生じる150°混合位相ベクトルは、次に、所望のクロック信号を生成するために、周波数分割回路3714内で2によって分周される。
一実施形態では、クロック発生器350によって生成される可変位相出力クロック信号のそれぞれは、関連する位相角+A、−A、180°+A(すなわち、+Aのコンプリメント)、および180°−A(−Aのコンプリメント)を、例えば、図6に関連して説明したオーバーサンプリング機能を実現するために有する。したがって、A=75°である図10Aの例について説明を続けると、可変位相出力クロック信号の全コンプリメントは、周波数F/2と、75°、105°、255°、および285°の位相角とを有する。図示されているように、F/2 105°位相ベクトルは、180°および270°の基準位相ベクトルの間で補間して、210°の位相角を有する補間された位相ベクトルを生成し、次に、210°の補間された位相ベクトルを2によって分周することによって生成されてもよい。255°および285°の位相ベクトルは、それぞれ、75°および105°の位相ベクトルのコンプリメントであり、したがって、周波数分割回路3714および3716の反転出力において得られる。図10Bは、15°、165°、195°、および345°の位相角と周波数F/2とを有する可変位相出力クロック信号が所望される、別の位相混合の例を示す。15°(すなわち、+A)の位相角を有するF/2出力クロック信号は、0°および90°の基準ベクトルの間で補間して、周波数Fと30°の位相角とを有する補間されたベクトルを生成し、次に、補間された位相ベクトルを、周波数分割回路3712内で2によって分周することによって生成される。165°の位相角(すなわち、180−A)を有するF/2出力クロック信号は、270°および0°の位相ベクトルの間で補間して、周波数Fと330°の位相角とを有する補間されたベクトルを生成し、次に、補間された位相ベクトルを、周波数分割回路3718内で2によって分周することによって生成される。図10Aの例と同様に、コンプリメント位相ベクトル180°+A(195°)および−A(345°)は、周波数分割回路3712および3718の反転出力において得られる。
図9の実施形態で、レート制御ロジック367は、除数値N(すなわち、所望される周波数または周波数範囲)を指示する、レート選択信号258と、出力クロック信号の所望の位相角Aを指示する、位相オフセット信号360(PO)とを受信する。レート制御ロジック367は、レート選択および位相オフセット信号に応答して、補間制御値362(ICV)と、上述の象限選択信号364(QS)とを生成する。象限選択信号364は、除数乗算された位相角N*Aが収まる、基準クロックサイクルの象限(すなわち、Q0:0°〜90°、Q1:90°〜180°、Q2:180°〜270°、Q3:270°〜0°)を指示し、したがって、対応する除数乗算された位相ベクトルのソースとなるように選択されてもよい混合位相補間器363を指示する。補間制御値362は、位相角N*Aを有する除数乗算された位相ベクトルをもたらすように、リーディングおよびトレーリングの基準位相ベクトル間の補間を必要に応じて制御するために、混合位相補間器363に供給される。所与の混合位相補間器363内で、入力される補間制御値ICVはトレーリング位相ベクトルに適用され、そのコンプリメント/ICVはリーディング位相ベクトルに適用される(ICVと/ICVの合計は所定の定数である)。
位相角−Aは、360°位相図内での、位相角Aの鏡映であるため、除数乗算された位相角N*(−A)は、位相角N*Aの象限に対して所定の関係を有する象限内に収まる。すなわち、N*Aが象限Qx内に収まる場合(x=0、1、2、または3)、N*(−A)は象限Q(3−x)内に収まる。さらに、位相角−Aは、(リーディング位相ベクトルからトレーリング位相ベクトルへの位相オフセットを表す角度Aとは対照的に)トレーリング位相ベクトルからリーディング位相ベクトルへのオフセットを表すため、位相角N*(−A)を有する除数乗算された位相ベクトルのソースとなるように選択される混合位相補間器内の補間制御値の値は、位相角N*Aを有する位相ベクトルのソースとなるように選択される混合位相補間器内で適用される補間制御値のコンプリメントである。除数乗算された位相角N*AおよびN*(−A)は、反対の象限ペアQ1:Q2およびQ3:Q4内に収まる(すなわち、N*AがペアQ1:Q2内に収まる場合、N*(−A)はペアQ3:Q4内に収まり、その逆も同様である)ということを認識すれば、象限ペアQ3:Q4に対応する混合位相補間器3633および3634に供給される補間制御値のコンプリメントをとることによって、角度N*AおよびN*(−A)を有する除数乗算された位相ベクトルを生成するために使用される2つの混合位相補間器は、コンプリメンタリな補間制御値362を受信することが保証されてもよいということになる。したがって、図9の実施形態では、インバータ365が、混合位相補間器3633および3634に供給される補間制御値のコンプリメントをとるために提供され、また、以下で説明するように、レート制御ロジック367は、角度N*Aが基準クロックサイクルの象限Q3またはQ4内に収まる場合を判定し、応答として、補間制御値362のコンプリメントをとるための回路を含む(それにより、混合位相補間器3631および3632(これらのうちの一方が位相角N*(−A)を有する除数乗算された位相ベクトルを生成するために使用される)がコンプリメント補間制御値を受信し、混合位相補間器3633および3634が非コンプリメント補間制御値を受信するようになる)。この配置によって、除数乗算された位相角N*AおよびN*(−A)を有する補間された位相ベクトルを生成するために、コンプリメントおよび非コンプリメントの補間制御値が、選択された混合位相補間器に提供されてもよい。そのような除数乗算された位相ベクトルを受信するように結合された分割回路371は、次に、Nによって分周して、位相角Aおよび−Aを有する位相ベクトルと、位相角180°+Aおよび180°−Aを有するコンプリメンタリ位相ベクトルとを生成し、それにより、可変位相出力クロック信号としてセレクタ回路359により出力される位相ベクトルの組を完成させてもよい。
図11は、図9のレート制御ロジック367を実装するために使用されてもよい論理回路の実施形態450を示す。論理回路450は、レート選択信号258(RS)と位相オフセット信号360(PO)とを入力として受信するように結合され、また、乗算回路451と排他的ORゲート453とを含む。図示されている特定の実施形態では、レート選択信号258は、除数値1(RS=00)、2(RS=01)、4(RS=10)、または8(RS=11)を指定する、符号化された2ビットの信号RS[1:0]であり、位相オフセット信号360は、位相角を、0°と90°との間で(すなわち、より正確には、0°と90°*(127/128)との間で)、90°/128刻みで指定する、7ビットの信号PO[6:0]である。したがって、値0000000b(「b」は2進表記を示す)は0°の位相オフセットを示し、値0000001bは90°/128の位相オフセットを示し、値0000010bは90°*(2/128)の位相オフセットを示し、以下、90°*(127/128)の位相オフセットを示す1111111bまで同様となる。図11の実施形態で、乗算器451は、位相オフセット信号360を、レート選択信号258の数値に等しいビット数だけ左にシフトする、シフト回路である。左へのビットごとの各シフトは、示された位相オフセットを2によって効果的に乗算するため、乗算器451は、レート選択信号によって示された除数に従って、1、2、4、または8によって乗算された入力位相オフセット信号360を表す、乗算された位相オフセット信号452(MPO)を出力する。したがって、乗算された位相オフセット信号452は、入力される位相オフセット信号360とレート選択信号258とによって示される、除数乗算された位相角N*Aとして見られてもよい。一実施形態では、乗算された位相オフセット信号は、モジュロ512除算を実現するために9ビット(MPO[8:0])に制限され、それにより、所望される除数乗算された位相ベクトル(すなわち、除数乗算された位相角によって示される除数乗算された位相ベクトル)は、単一の基準クロックサイクル内の4つの象限のうちの1つに効果的に制限される。
乗算された位相オフセットの2つの最上位ビットMPO[8:7]は、論理回路364から、象限選択信号364として出力され、そのようなビットは、所望される除数乗算された位相ベクトルが収まる、基準クロックサイクルの象限を示す。すなわち、象限選択信号364が「11」の場合、除数乗算された位相オフセットは、270°と0°との間の位相角(Q3)を表す。象限選択信号364が「10」の場合、除数乗算された位相オフセットは、180°と270°との間の位相角(Q2)を表す。象限選択信号364が「01」の場合、除数乗算された位相オフセットは、90°と180°との間の位相角(Q1)を表す。最後に、象限選択信号364が「00」の場合、除数乗算された位相オフセットは、0°と90°との間の位相角(Q0)を表す。
乗算された位相オフセットの最下位の7ビットMPO[6:0]は、象限選択により示された象限内での位相角のオフセットを示し、したがって、補間制御値362として論理回路450から出力されてもよい。乗算された位相オフセットが、180°以上の、除数乗算された位相角(すなわち、基準クロックサイクルの象限Q2またはQ3内に収まる位相角)に一致する場合、図9の補間器3633および3634のうちの1つが、対応する除数乗算された位相ベクトルを生成するために選択される。したがって、乗算された位相オフセットのビット8(MPO[8])(180°以上の除数乗算された位相角に対応する、乗算された位相オフセット信号の場合、ハイになる)は、論理回路450によって出力される補間制御値を反転させるために、排他的ORゲート453(これは、それぞれの第1入力がMPO[8]を受信するように結合され、第2入力がMPO[6]〜MPO[0]の各ビットを受信するように接続された、7つの排他的ORゲートのバンクであってもよい)の第1入力に供給され、それにより、図9のインバータ365の効果が取り消され、非コンプリメント補間制御値362が混合位相補間器3633および3634に、コンプリメント補間制御値362が混合位相補間器3631および3632に送付される。
代替実施形態では、論理回路450に多数の変更が加えられてもよいことに留意すべきである。例えば、レート選択信号258および/または位相オフセット信号360は、構成要素となるビットを、より多く、またはより少なく有してもよい。さらに、位相オフセット信号は、所望の位相オフセットを数値的に示す代わりに、位相オフセットのテーブルから位相オフセットの所定の番号のうちの1つを選択する選択信号であってもよい。そのような実施形態では、補間制御値が表にまとめられ、位相オフセット選択およびレート選択信号に応答して、表から出力されてもよい。より一般的には、補間制御値と象限選択信号(または、所望の除数乗算された位相ベクトルのソースを示すその他の信号)とを生成することが可能な任意の回路が、代替実施形態で、論理回路450の代わりに使用されてもよい。
図12は、図9の混合位相補間器3631〜3633を実装するために使用されてもよい、補間器の実施形態470を示す。補間器470は、第1の位相ベクトル入力において差動基準位相ベクトルVAを受信し、第2の位相ベクトル入力において差動基準位相ベクトルVBを受信するように結合された、差動増幅器4731および4732を含む。増幅器4731および4732の差動出力は、共通に接続されて差動出力ポートを形成し、図12の実施形態では、抵抗素子Rのペアによってプルアップされる。抵抗素子Rは、抵抗器として示されているが、代替実施形態では、受動または能動の負荷素子であってもよい。
差動増幅器4731、4732のそれぞれは、ソース端子が共通でバイアス回路4751、4752に接続された、トランジスタのペア4771、4772を含む。トランジスタ477のドレイン端子は、差動増幅器出力を構成し、トランジスタ477のゲート端子は、差動位相ベクトルのコンプリメントおよび非コンプリメント成分を受信するように結合される。バイアス回路4751および4752は、それぞれ、入力される補間制御値362およびコンプリメント補間制御値474に従って、差動増幅器4731および4732内のそれぞれのバイアス電流(すなわち、対応するトランジスタペア477のソース端子からグラウンドへの)を確立する。一実施形態では、バイアス回路4751、4752のそれぞれは、補間制御値の各ビットを受信するように結合されたゲート端子を有する、2進加重される1組のトランジスタ(または、効果的な2進加重を実現するために連動される複数組のトランジスタ)によって実装される。すなわち、第1のトランジスタは、トランジスタペア477とグラウンドとの間に結合され、ビットICV[0]を受信するように結合されたゲート端子を有し、ICV[0]がハイの場合は電流IREFを導通し、第2のトランジスタ(またはトランジスタのペア)は、第1のトランジスタと並列に結合され、ICV[1]がハイの場合は電流2*IREFを導通し、以下、ビットICV[K−1]がハイの場合に電流2K−1*IREFを導通する最後のトランジスタ(またはトランジスタのグループ)まで同様となる(Kは、補間制御値内の構成要素となるビットの数)。インバータ471は、差動増幅器4731に提供される補間制御値のコンプリメントをとるために提供され、それにより、バイアス電流ICV*IREFがバイアス回路4752内で生成される場合、バイアス電流IMAX−(ICV*IREF)がバイアス回路4751内で生成されるようになる(IMAXは、いずれかのバイアス回路によって生成される最大バイアス電流(例えば、IREF*2K−1))。バイアス回路4751および4752によって生成されるバイアス電流の合計はIMAXになるため、補間制御値362の値を増加または減少させることの効果は、バイアス回路4752によって導かれる電流が増加または減少し、それに対応して、バイアス回路4751によって導かれる電流が減少または増加するということである。さらに、差動増幅器4731および4732の出力ノードは、抵抗プルアップ素子Rに共通に接続されるため、差動増幅器4731および4732に供給される差動クロック信号は、補間制御値362およびコンプリメント補間制御値474に従って効果的に位相混合される。すなわち、補間制御値362が最小値(例えば、0)の場合、IMAXが差動増幅器4731のトランジスタペア4771を通して流れ、また、0または無視できるほど小さな電流が差動増幅器4732を通して流れ、それにより、入力ベクトルVAと名目上位相が整列した(すなわち、VAと位相が整列しているが、差動増幅器4731の伝搬遅延によって位相オフセットされた)補間された位相ベクトルがもたらされる。補間制御値362が最大値(例えば、すべて「1」)の場合、IMAXが差動増幅器4732を通して流れ、また、0または無視できるほど小さな電流が差動増幅器4731を通して流れ、それにより、入力ベクトルVBと名目上位相が整列した、補間された位相ベクトルがもたらされる。補間制御値362が、最大値と最小値との間である場合、補間器470によって生成される補間された位相ベクトルは、リーディング基準位相ベクトルVAの初期部分の間、減少したスルーレートを示し、それに続いて、トレーリングベクトルVBの立ち上がり開始時には、増加したスルーレートを示し、減少したスルーレートは、中点遷移を、したがって、結果として生じる補間された位相ベクトルの位相角を遅らせる。それにより、補間制御値362が最小値から最大値に徐々に増加されるにつれて、結果として生じる補間された位相ベクトルは、徐々に遅らされたスルーレートを、したがって、徐々に増加された位相角を示すようになる。
代替実施形態では、図12の補間器470に多数の変更が加えられてもよいことに留意すべきである。例えば、一実施形態では、追加の差動結合されたトランジスタペア477が、トランジスタペア4771と並列に結合されて、一致するソース、ドレイン、およびゲート接続(すなわち、入力ベクトルVAを受信するように結合されたゲート端子と、補間器出力ノードに結合されたドレイン端子と、トランジスタ4771のソース端子と共通に結合されたソース端子と)を有し、追加の差動結合されたトランジスタペアが、トランジスタペア4772と並列に、同様に結合される。差動増幅器によって導かれる電流を入力ベクトル周波数の関数として増加するために、追加のトランジスタペアは、レート選択信号258に従って選択的に有効にされ、それにより、リーディングとトレーリングの入力位相ベクトル間の、所望の時間的オーバーラップが実現される。他の実施形態では、図9の固定位相補間器3611〜3614を実装するために、補間制御値は固定されてもよい。より一般的には、固定された補間制御値、または補間制御値362に従って、入力ベクトルVAおよびVBを位相混合することによって、補間された出力ベクトルを生成することが可能な任意の回路が、代替実施形態で、補間された位相ベクトルを生成するために使用されてもよい。
図13は、一実施形態による、図9のセレクタ回路359の動作を示す表500である。図9に関連して説明したように、セレクタ回路は、表500にCLK0、CLK90、CLK180、CLK270として示す、4つの固定位相出力クロック信号と、表500にCLK0−90、CLK90−180、CLK180−270、およびCLK270−0として示す、4つの混合位相出力クロック信号とを出力する。代替実施形態では、より多くの、またはより少ないクロック信号が、セレクタ回路359によって出力されてもよい。表500によって示される実施形態では、セレクタ回路359は、レート選択信号258の状態に従って、図9の周波数分割器バンク357内の周波数分割回路3711、3713、3715、および3717から、固定位相出力クロック信号を選択する。すなわち、レート選択信号258がユニティ周波数Fを示す場合、周波数Fと、0°、90°、180°、および270°の位相角とを有する位相ベクトルが、それぞれ、分割回路3711、3713、3715、および3717から(および、したがって、補間器3611〜3614から)選択され、セレクタ回路の固定位相クロック信号出力CLK0、CLK90、CLK180、CLK270において出力される。同様に、周波数Fと、可変位相角A(0°〜90°)、−A(270°〜0°)、180°+A(180°〜270°)、および180°−A(90°〜180°)とを有する位相ベクトルが、それぞれ、可変位相クロック信号出力CLK0−90、CLK270−0、CLK180−270、およびCLK90−180において出力される。用語に関して説明すると、表500の出力クロック列内の各エントリは、ユニティ位相ベクトルとして出力される位相ベクトルまたは周波数分割される位相ベクトルの、ソースとなる補間器を、補間された位相ベクトルの番号によって示し(すなわち、V1、V2、V3、およびV4は、固定位相補間器3611〜3613によって生成される補間された位相ベクトル、V12、V23、V34、およびV41は、混合位相補間器3631〜3634によって生成される補間された位相ベクトル)、また、出力クロック信号の周波数を、添え字F、F/2、F/4、またはF/8によって示す。したがって、表500の第1行では、補間された位相ベクトルV1F、V2F、V3F、およびV4Fが、それぞれ、固定位相クロック信号出力CLK0、CLK90、CLK180、CLK270において出力され、補間された位相ベクトルV12F、V41F、/V12F、および/V41Fが、それぞれ、可変位相クロック信号出力CLK0−90、CLK270−0、CLK180−270、およびCLK90−180において出力される。
表500の固定位相出力クロック信号列の記入について説明すると、レート選択信号が1/2分周出力クロック周波数F/2を示す場合、周波数F/2と、0°および180°の位相角とを有する固定位相ベクトルV1およびV3が、補間器3611から選択され、周波数分割回路3711および3715内で2によって分周されて、0°および90°のF/2出力クロック信号と、それらの180°および270°コンプリメントが生成される。すなわち、位相ベクトルV1F/2(0)、V3F/2(90)(添え字F/2(0)およびF/2(90)は、それぞれ、周波数分割回路3711および3715によって生成される0°および90°のF/2位相ベクトルを示す)、/V1F/2(0)、および/V3F/2(90)が、それぞれ、固定位相出力クロック信号CLK0、CLK90、CLK180、CLK270として出力される。レート選択信号が1/4分周出力クロック周波数F/4を示す場合、固定位相ベクトルV1F/4(0)およびV1F/4(90)が、固定位相出力クロック信号CLK0およびCLK90として出力され、それらのコンプリメント/V1F/4(0)および/V1F/4(90)が、固定位相出力クロック信号CLK180およびCLK270として出力される。同様に、レート選択信号が1/8分周出力クロック周波数F/8を示す場合、固定位相ベクトルV1F/8(0)およびV1F/8(90)が、固定位相出力クロック信号CLK0およびCLK90として出力され、それらのコンプリメント/V1F/8(0)および/V1F/8(90)が、固定位相出力クロック信号CLK180およびCLK270として出力される。
混合位相出力クロック信号CLK0−90、CLK90−180、CLK180−270、およびCLK270−0は、レート選択信号と象限選択信号とによって示される、除数乗算された位相角に基づいて、それぞれの周波数分割回路から選択される。したがって、レート選択信号がユニティ周波数Fを示す場合、補間器3631内で適用される補間制御値に従って0°と90°との間の位相角(すなわち、位相角+A)を有する、周波数分割回路3712によって生成されるユニティ位相ベクトルが、可変位相クロック信号CLK0−90として出力される。同様に、補間器3634内で適用されるコンプリメント補間制御値に従って270°と0°との間の位相角(すなわち、位相角−A)を有する、周波数分割回路3718によって生成されるユニティ位相ベクトルが、可変位相クロック信号CLK270−0として出力される。位相角180°+Aおよび180°−Aを有する出力クロック信号は、CLK0−90およびCLK270−0クロック信号のコンプリメントであるため、セレクタ回路は、CLK0−90およびCLK270−0として出力されるクロック信号のコンプリメントを、それぞれ、CLK180−270およびCLK90−180クロック信号であるとして選択する。この対応関係は、図13の表500全体を通して維持され、その理由は、CLK180−270として出力されるように選択されるユニティ位相ベクトルまたは周波数分割された位相ベクトルは、CLK0−90として出力されるように選択される位相ベクトルのコンプリメントであり、CLK90−180として出力されるように選択されるユニティ位相ベクトルまたは周波数分割された位相ベクトルは、CLK270−0として出力されるように選択される位相ベクトルのコンプリメントであるためである。
図13をさらに参照すると、レート選択信号がF/2周波数の選択を示す場合、出力クロック信号CLK0−90の生成に使用される除数乗算された位相ベクトルは、選択される位相オフセットが45°よりも大きいか、または小さいかによって、基準クロックサイクルの第1象限または第2象限のいずれかに収まる。したがって、象限選択信号が、除数乗算された位相ベクトルが0°〜90°に収まることを示す場合(すなわち、QS[1:0]=00)、周波数分割回路3712によって(すなわち、補間された位相ベクトルV12を周波数分割することによって)生成されるF/2位相ベクトルが、クロック信号CLK0−90として出力されるように選択される。象限選択信号が、除数乗算された位相ベクトルが90°〜180°に収まることを示す場合(すなわち、QS[1:0]=01)、周波数分割回路3714によって(すなわち、補間された位相ベクトルV23を周波数分割することによって)生成されるF/2位相ベクトルが、クロック信号CLK0−90として出力されるように選択される。出力クロック信号CLK270−0は、同様に、選択される位相オフセットに従って基準クロック信号の第4または第3象限のいずれかに収まるため、周波数分割回路3718によって、または周波数分割回路3716によって生成されるF/2位相ベクトルのいずれか(補間された位相ベクトルV41およびV34にそれぞれ対応する)が、象限選択信号の状態に依存して、クロック信号CLK270−0として出力されるように選択される。
レート選択信号がF/4周波数の選択を示す場合、クロック信号CLK0−90の生成に使用される除数乗算された位相ベクトルは、選択される位相オフセットに依存して、基準クロックサイクルの第1、第2、第3、または第4象限のいずれかに収まる。同様に、クロック信号CLK270−0の生成に使用される除数乗算された位相ベクトルは、選択される位相オフセットに依存して、基準クロックサイクルの第4、第3、第2、または第1象限のいずれかに収まる。したがって、象限選択信号が、クロック信号CLK0−90に対応する除数乗算された位相ベクトルが0°〜90°に収まることを示す場合、周波数分割回路3712および3718によって(すなわち、補間器3631および3634によって生成される補間されたベクトルV12およびV41を周波数分割することによって)生成されるF/4位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。象限選択信号が、CLK0−90クロック信号に対応する除数乗算された位相ベクトルが90°〜180°に収まることを示す場合、周波数分割回路3714および3716によって(すなわち、補間器3632および3633によって生成される補間されたベクトルV23およびV34を周波数分割することによって)生成されるF/4位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。象限選択信号が、CLK0−90クロック信号に対応する除数乗算された位相ベクトルが180°〜270°に収まることを示す場合(すなわち、QS[1:0]=10)、周波数分割回路3716および3714によって(すなわち、補間されたベクトルV34およびV23を周波数分割することによって)生成されるF/4位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。最後に、象限選択信号が、CLK0−90クロック信号に対応する除数乗算された位相ベクトルが270°〜0°に収まることを示す場合(すなわち、QS[1:0]=11)、周波数分割回路3718および3712によって(すなわち、補間されたベクトルV41およびV12を周波数分割することによって)生成されるF/4位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。
レート選択信号がF/8周波数の選択を示す場合、クロック信号CLK0−90の生成に使用される除数乗算された位相ベクトルは、選択される位相オフセットに依存して、基準クロックサイクルの第1、第2、第3、または第4象限のいずれかに収まる。同様に、クロック信号CLK270−0の生成に使用される除数乗算された位相ベクトルは、選択される位相オフセットに依存して、基準クロックサイクルの第4、第3、第2、または第1象限のいずれかに収まる。したがって、象限選択信号が、クロック信号CLK0−90に対応する除数乗算された位相ベクトルが0°〜90°に収まることを示す場合、周波数分割回路3712および3718によって(すなわち、補間器3631および3634によって生成される補間されたベクトルV12およびV41を周波数分割することによって)生成されるF/8位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。象限選択信号が、CLK0−90クロック信号に対応する除数乗算された位相ベクトルが90°〜180°に収まることを示す場合、周波数分割回路3714および3716によって(すなわち、補間器3632および3633によって生成される補間されたベクトルV23およびV34を周波数分割することによって)生成されるF/8位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。象限選択信号が、CLK0−90クロック信号に対応する除数乗算された位相ベクトルが180°〜270°に収まることを示す場合(すなわち、QS[1:0]=10)、周波数分割回路3716および3714によって(すなわち、補間されたベクトルV34およびV23を周波数分割することによって)生成されるF/8位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。最後に、象限選択信号が、CLK0−90クロック信号に対応する除数乗算された位相ベクトルが270°〜0°に収まることを示す場合(すなわち、QS[1:0]=11)、周波数分割回路3718および3712によって(すなわち、補間されたベクトルV41およびV12を周波数分割することによって)生成されるF/8位相ベクトルが、それぞれ、出力クロック信号CLK0−90およびCLK270−0となるように選択される。
スケーリングされた複製遅延素子を使用した位相ベクトルの生成
図14は、位相ベクトル発生器の実施形態550を示し、この内部では、一次位相ベクトルが、スケーリングされた遅延素子を通して伝搬し、本例では反転して、二次位相ベクトルが生成される。この動作によって、二次位相ベクトルが補間器なしで生成されてもよく、それにより、図6の混合位相および固定位相補間器が不要になる。図示されている特定の例では、2つの直列に結合された遅延素子552(それぞれは、基準ループ周波数における60°位相遅延に対応する伝搬遅延を導入する(すなわち、60°遅延素子))が、0°一次位相ベクトルを受信するように結合され、したがって、120°二次位相ベクトル、すなわち、0°一次位相ベクトルを基準として120°遅らされた位相ベクトルを出力する。2つの直列に結合された遅延素子552は、同様に、180°一次位相ベクトルを受信するように結合され、したがって、300°二次位相ベクトルを出力する。2つの直列に結合された75°遅延素子554は、90°一次位相ベクトルを受信するように結合され、240°二次位相ベクトル(90°+75°+75°)を出力し、また、2つの直列に結合された75°遅延素子554は、さらに、270°一次位相ベクトルを受信するように結合され、したがって、60°二次位相ベクトル(270°+75°+75° mod 360°)を出力する。他の位相を有する二次位相ベクトルが、他の遅延素子を使用して、および/または、遅延素子552と554との他の組み合わせを使用して生成されてもよい。
図示されている特定の例では、基準ループのリング発振器内の遅延素子を通した遅延を制御するために使用される遅延制御信号555(DCTL)とともに、0°、90°、180°、および270°の一次位相ベクトルが基準ループから提供される。この配置によって、温度、電圧、またはその他の環境条件の変化を補償するために、(例えば、位相ロックループ、遅延ロックループ、または類似した回路内の)基準ループによって遅延制御信号が調節されるにつれて、結果として生じる、基準ループ内の遅延素子の伝搬遅延調節は、位相ベクトル発生器550のスケーリングされた遅延素子552および554内にも適用される。図15は、例えば、0°、90°、180°、および270°の位相ベクトルを生成するためのPLL 558を示し、また、位相ベクトル発生器550とおおむね同じ方法で動作する位相ベクトル発生器560と、PLL 558との相互接続も示す。図示されているように、PLL 558は、電圧制御発振器567(VCO)と、分周器569と、位相検出器561と、電荷ポンプ563と、電荷蓄積素子565と、緩衝器566とを含む。VCO 567は、交差結合された遅延素子571aおよび571bのペアの形態の、リング発振器によって実装されるが、他の実施形態では、代替のタイプの電圧制御発振器が使用されてもよい。差動信号が、両方のインバータ571aおよび571bを通して伝搬して、インバータ571aの入力に戻るために要する時間が、基準クロック信号の180度の間隔(すなわち、インバータ571の入力における立ち上がりエッジと立ち下がりエッジとの間の時間)を定義するため、各インバータ571は1/4サイクルの遅延(すなわち、90°の遅延)を導入し、したがって、2つの差動インバータ571a、571bの4つの出力は、0°、90°、180°、および270°の一次位相ベクトルを構成することになり、または、それらの一次位相ベクトルを生成するために使用されてもよいということになる。さらに、VCO 567は、差動インバータ571a、571bを通した伝搬遅延によって決定される周波数で発振するため、インバータの伝搬遅延を増加または減少させて、それにより、基準ループ周波数の対応する増加または減少をもたらすために、差動インバータ571a、571bの出力スルーレートが増加または減少させられてもよい。
図示されている例示的実施形態では、分周期569は、VCO 567から0°位相ベクトル(またはその緩衝されたバージョン)を受信し、0°位相ベクトルを周波数分割して、基準クロック562(RefClk)の周波数に名目上一致した位相ベクトル570を生成する。基準クロック562と周波数分割された位相ベクトル570とは位相検出器561に供給され、位相検出器561は、位相ベクトル570のベクトルが基準クロック信号562よりも進んでいるか遅れているかを示す、位相前進信号564を電荷ポンプ563に出力する。位相前進信号が、位相ベクトル570が基準クロック信号562よりも遅れていることを示す場合、電荷ポンプ563は電荷蓄積素子565にパルスを送ってその電圧レベルを増加し、それにより、遅延制御信号555のレベルを増加する。遅延制御信号555は、次に、差動インバータ571のスルーレートを制御するために使用され、したがって、増加された場合、差動インバータ571を通した遅延を短縮し、基準ループ558の発振周波数を増加する。
一実施形態では、遅延制御信号555は、差動インバータ571にバイアスをかけて所望のスルーレートを実現するために使用される電流である(すなわち、緩衝器566は電圧−電流変換を実行する)。代替実施形態では、遅延制御信号555は、差動インバータ571の出力スルーレートを、電力の供給またはその他の方法で制御するために使用される電圧であってもよい(例えば、緩衝器566は、電圧フォロワまたはその他の緩衝器であってもよく、あるいはすべて省略されてもよい)。いずれの場合も、遅延制御信号555は、位相ベクトル発生器560に提供されて、差動インバータ572および574の出力スルーレートを、基準ループ内の差動インバータ571と同じ方法で制御するために使用される。この配置によって、また、差動インバータ572および574内の構成要素をスケーリングして、差動インバータ571を基準にした、スケーリングされた遅延を提供することによって、差動インバータ572および574は、遅延制御信号555に応答して、VCO 567内の差動インバータ571とともに調節される、スケーリングされた遅延素子として働く。したがって、0°および180°の位相ベクトルは、それぞれ、2つの差動60°遅延素子(すなわち、図15の実施形態内のスケーリングされた差動インバータ)によって遅延させられて、120°および300°の位相ベクトルをもたらし、90°および270°の位相ベクトルは、それぞれ、2つの差動75°遅延素子によって遅延させられて、240°および60°の位相ベクトルをもたらす。
図16A〜図16Cは、図15の素子571、572、および574を実装するために使用されてもよい例示的遅延素子585、587、および589を示す。最初に図16Aを参照すると、遅延素子585は、差動入力信号を受信するための入力inNおよびinPと、逆並列接続されたインバータにより形成されるラッチ592のそれぞれのノードに結合される出力とを有する、ドライバインバータ590のペアを含む。ラッチ592が最初に第1の状態にあると仮定すると、差動入力信号の1つの安定状態から別の安定状態への遷移は、インバータ590の出力の状態変化を引き起こし、それとともに、ラッチ592は、逆並列接続されたインバータによって確立されるループ利得に従って、状態変化に抵抗する。すなわち、ラッチ592のループ利得がより大きければ、状態変化への抵抗はより大きくなり、したがって、状態変化のために要する時間はより長くなる。ラッチ592のループ利得は、逆並列接続されたインバータ内のトランジスタのサイズ「a」(例えば、幅長比(width−length ratio))をスケーリングすることによって増加または減少させられてもよいため、遅延素子585の出力スルーレートの、対応した(ただし、必ずしも線形とは限らない)スケーリングが実現されてもよく、それにより、スケーリングされた遅延が確立されてもよい。図16Bを参照すると、例えば、遅延素子585のラッチ592内のトランジスタの幅長比「a」よりも小さな幅長比「b」を有するトランジスタを使用したラッチ594を実装することによって、75°遅延素子587が実現される。比率b/aは、遅延素子585に比較した、遅延素子574を通した伝搬時間の1/6の減少を提供するように選択され(すなわち、遅延素子585の出力において差動遷移がより迅速に反映されるように、出力スルーレートが増加され)、それにより75°の差動遅延素子が提供される。図16Cでは、幅長比「b」よりも小さな幅長比「c」を有するトランジスタを使用したラッチ596を実装して、90°遅延素子585を基準にした、伝搬時間の1/3の減少を提供することによって、60°差動遅延素子が実現される。
図16A〜図16Cをさらに参照すると、構成要素となるインバータ(すなわち、590と、ラッチ592、594、および596内の逆並列接続されたインバータと)のそれぞれ、またはその任意のサブセットは、図15の遅延制御信号555によって、バイアスの印加、電力の供給、またはその他の方法で制御されてもよく、それにより、90°遅延素子585の閉ループ制御を維持するために遅延制御信号が調節されるにつれて、スケーリングされた60°および75°遅延素子の伝搬遅延の、対応する調節がもたらされてもよい。名目上のスケーリングされた伝搬遅延を実現するための構成要素スケーリングと、フィードバックにより生成される遅延制御信号を使用した動的遅延制御との組み合わせを通して、環境条件の変化(例えば、電圧および/または温度ドリフト)および工程の変動に関わらず、正確な伝搬遅延を示す、スケーリングされた遅延素子が実現されてもよい。さらに、スケーリングされた遅延素子は、位相ベクトル補間器よりも大幅に少ないトランジスタを使用して実装されてもよく、また、消費電力がより少なく、クロックジッタの導入もより少ない傾向があるため、スケーリングされた遅延素子は、より質の高いクロック信号を生成し、それと同時に、製造および動作コストを低下させるために使用されてもよい。図14および図15の位相ベクトル発生器は、例えば、図6の混合位相補間器の代わりに使用して、遅延整合の目的のために提供される固定位相補間器を不要にし、それにより、電力とダイエリアをさらに節約するために使用されてもよい。
図14を再び参照すると、多くの代替遅延素子配置が、二次位相ベクトルを生成するために使用されてもよいことに留意すべきである。例えば、60°および75°の遅延素子552、554のペアを使用するのではなく、1つの120°遅延素子(例えば、120°の伝搬遅延を示すシングルまたは差動インバータ)が、120°および300°位相ベクトルを生成するために、60°遅延素子552の直列結合されたペアの代わりに使用されてもよく、かつ/または、1つの150°遅延素子が、60および240度位相ベクトルを生成するために、75°遅延素子554の直列結合されたペアの代わりに使用されてもよい。さらに、図14に示す混合遅延素子配置の代わりに、すべてが同じ(または実質的に同じ)伝搬遅延を示す遅延素子の組み合わせが使用されてもよい。例えば、図17Aに示すように、60°遅延素子552の直列結合されたペアは、4つの75°遅延素子554のそれぞれの組によって置き換えられて、300°および120°の位相ベクトルが生成されてもよい。あるいは、図17Bに示すように、直列結合された60°遅延素子552の追加のペアが、120°位相ベクトルを受信するように結合され、また、直列結合された60°遅延素子552のもう1つの追加のペアが、300°位相ベクトルを受信するように結合されて、それにより、240°および60°位相ベクトルが生成され、図14の75°遅延素子554は不要となるようにされてもよい。伝搬遅延の事実上あらゆる組み合わせを表す、遅延素子のその他の多くの組み合わせが、二次位相ベクトルを生成するために、代替実施形態で使用されてもよい。例えば、図17Bの実施形態で、60°および240°の位相ベクトルは、点線603および604で示されるように、1つの60°遅延素子552によって生成されてもよく、それにより、それ以外の場合にはそれらの位相ベクトルを生成するために使用されていた、60°遅延素子の追加のペアが不要となるようにされてもよい。さらに、上述したように、図17Aおよび図17Bの実施形態では、60°、120°、240°、および300°の位相角を有する4つの二次位相ベクトルが生成されるが、代替実施形態では、同じまたは異なる位相角を有する、より多くの、またはより少ない二次位相ベクトルが生成されてもよい。
図18Aおよび図18Bは、プログラマブルに選択される位相角を有する位相ベクトルを生成するために使用されてもよい、可変遅延素子の例示的実施形態を示す。そのような遅延素子は、例えば、図9の混合位相補間器363の代わりに、選択可能な位相範囲を有する位相ベクトルの生成を可能にするために使用されてもよく、また、位相較正操作において、二次位相ベクトルの位相角が較正されることを可能にするために使用されてもよい。図18Aの実施形態では、可変遅延素子610は、デジタル−アナログ変換器611(DAC)と、ドライバインバータ590と、逆並列接続されたインバータ614により形成されるラッチ612とを含む。ドライバインバータ590は、差動入力信号inNおよびinPを受信するように結合された入力と、遅延素子の出力を形成するためにラッチ612の各ノードに結合された出力とを有する。したがって、遅延素子610を通した合計の伝搬遅延は、図16A〜図16Cの遅延素子におけるのと同様に、逆並列接続されたインバータ614のループ利得の関数である。DAC 611は、(例えば、プログラマブルレジスタまたはその他の制御ソースから)mビットのトリム制御値TCを受信し、応答として、バイアス電圧のペアVbnおよびVbpを生成し、それらの電圧は、ラッチ612のループ利得を制御するために、逆並列接続されたインバータ素子614に供給される。この配置によって、トリム制御値が最小から最大値に増加されるにつれて、バイアス電圧がそれに従って調節されて、ラッチ612のループ利得が最小から最大値に増加され、それにより、ある範囲の遅延が遅延素子内で提供される。代替方法として、DACは、遅延素子610を通した所望の遅延を確立するために、インバータ614内の1つまたは複数のバイアス電流を確立する、電流DACであってもよい。
図18Bの実施形態で、遅延素子620は、差動入力信号を受信するように結合され、遅延素子の出力ノードを形成する出力を有する、ドライバインバータ590を含む。遅延素子620の出力ノードの間に、1組のラッチ素子6210〜621m−1が並列に結合され、それぞれのラッチ素子621は、トリム制御信号TC[m−1:0]のうちのそれぞれ1つの状態に応じて、ラッチ状態またはトライステート条件のいずれかになる。例として、一実施形態では、TC[0]がローの場合、インバータ623は、トライステートにされて、ラッチ素子6210をトライステート条件(すなわち、ドライバインバータ590の出力間の開路として現れる)に設定し、したがって差動入力信号が1つの状態から別の状態に遷移する際の状態変化に対して、無視できるほど小さな抵抗しか提供しない。TC[0]がハイの場合、ラッチ素子6210は有効にされてドライバインバータ590の出力状態をラッチし、したがって、状態変化にある程度の抵抗を提供する。この配置では、さまざまなラッチ素子6210〜621m−1は、ドライバインバータ590の出力上の状態変化に対する合計抵抗を制御するために、また、したがって、遅延素子620を通した合計の遅延を制御するために、さまざまなパターンで選択的にトライステートまたは有効にされてもよい。個々のラッチ素子621は、重み付けされてもよく(例えば、ラッチ素子6211は、有効にされた場合、ラッチ素子6210の2倍のインクリメンタル遅延を提供し、ラッチ素子6212は、ラッチ素子6211の2倍のインクリメンタル遅延を提供する、などとなるように、異なるサイズの構成要素を提供することによって2進加重されてもよく)、かつ/または、所望の遅延範囲と分解能とを提供するために、必要に応じてサーモメータ符号化されてもよい。より一般的には、遅延素子内の制御された伝搬遅延を提供するために使用されてもよい、事実上いかなる回路配置でも、代替実施形態で使用されてもよい。
自己整列クロック分割器
図19は、周波数分割された、直角位相クロック信号を生成するために、図4および図7の周波数分割回路の代わりに使用されてもよい、自己整列クロック分割器の実施形態640を示す。クロック分割器は、平衡した、マスタ−スレーブフリップフロップ構成内で相互に結合された、差動式の、トランスペアレントラッチ素子のペア641a、641bを含む。すなわち、ラッチ素子641aの差動出力(qP、qN)は、ラッチ素子641bの差動入力(dP、dN)に結合され、ラッチ素子641bの差動出力は、ラッチ素子641aの差動入力に交差結合される(すなわち、qPはdNに結合され、qNはdPに結合される)。この配置によって、そして、周波数Fを有する差動クロック信号の各成分クロック信号(例えば、図19に示すように、F0およびF180)を使用して、ラッチ素子641aおよび641bのラッチイネーブル入力(LE)をクロック制御することによって、ラッチ素子641a、641bの差動出力は、周波数F/2で状態を変え、相互に直交関係を示すようになる。したがって、ラッチ素子641aの差動出力が0°および180°の位相角(すなわち、F/20およびF/2180)であるように指定された場合、ラッチ素子641bの差動出力は、90°および270°の位相角(すなわち、F/290およびF/2270)を有する。図20は、図19のクロック分割器の動作を示すタイミング図である。ラッチ素子641aの差動出力(すなわち、F/20およびF/2180)が最初にハイ−ロー状態にあると仮定すると(すなわち、qP=H、qN=L)、F180クロック信号の立ち上がりエッジ671は、ラッチ素子641bが、時間673および675においてF/20およびF/2180信号をサンプリングすることを可能にし、それにより、674および676において示されるF/290およびF/2270の遷移が作られる。したがって、続いて起こるF0信号の立ち上がりエッジ681は、ラッチ素子641aを、時間683および685においてF/2270およびF/290信号をサンプリングするようにトリガし、それにより、684および686において示されるF/20およびF/2180の遷移が生成される。ラッチ素子641bが、図20に示すロー−ハイ状態ではなく、ハイ−ロー状態で始動された場合、673および675におけるサンプリングは、ラッチ素子641bがハイ−ロー状態のままになることを引き起こし、それにより正しい直角位相F/2クロックが生成されることに留意されたい。同様に、ラッチ素子641aが、ハイ−ロー状態ではなく、ロー−ハイ状態で始動された場合、673および675におけるサンプリングは、674および676において示す状態遷移とは反対の状態遷移を生成するが(すなわち、ラッチ素子641bがハイ−ロー状態で始動されると仮定した場合)、それでもなお、正しい直角位相F/2クロックが生成される。したがって、ラッチ素子641aおよび641bの初期状態に関係なく、ラッチ素子641a、641bは、ラッチイネーブル入力に供給されるクロック信号の半分の周波数を有する、同相および直角位相の差動クロック信号(それぞれ、Div2iおよびDiv2q)を正しく生成する。不正な始動状態は存在せず、したがって、正しい動作を保証するためにラッチ素子641内にロードされる必要がある初期値は存在しない。したがって、クロック分割器640は、自己初期化および自己整列(すなわち、自動整列)されるものであり、リセット回路も初期化回路も必要としない。
図19をさらに参照すると、差動ラッチ素子641a、641bのそれぞれは、詳細図643に示すように、入力インバータ645のペアと、パスゲート647と、記憶素子649と、出力インバータ651とを使用して構築されてもよい(代替実施形態では、その他の回路配置が使用されてもよい)。入力インバータ645は、ラッチ素子のdNおよびdP入力を構成し、差動入力信号を受信するように結合される。入力インバータ645の出力は、それぞれのパスゲート647を経由して、記憶素子649の反対側のノードに、そして出力インバータ651に結合される。記憶素子649は、交差結合されたインバータのペアによって形成され(ただし、他のタイプの記憶素子が使用されてもよい)、パスゲート647が非導通状態に切り換えられた場合にラッチ素子の状態を維持するために使用され、出力インバータ651は、ノードqNおよびqPを経由して差動出力信号を駆動するために使用される。この配置によって、ラッチイネーブル入力LE、/LEに適用される差動制御信号(C、/C)がハイ(すなわち、C=1、/C=0)になった場合、パスゲート647はオンにされ、記憶素子649の状態が、差動入力信号の状態に基づいて更新される(すなわち、反転されるか、または同じ状態に維持される)ことが可能にされる。ラッチ素子649内の逆並列接続されたインバータに、ロジック供給電圧(例えば、CMOS処理におけるグラウンドおよびVDD)を使用して電力を供給することによって、小振幅差動入力信号は、差動出力信号内でロジックレベルに自動的に変換されてもよく、それにより、クロック分割器640の入力(または出力)における独立したレベル変換回路は不要にされてもよい。クロック分割器640の入力または出力におけるレベル変換回路は、追加の電力とダイエリアとを消費し、また、立ち上がりおよび立ち下がりクロックエッジの非対称な変換により、デューティサイクル歪みを導入する傾向があるため、そのようなレベル変換回路を回避することによって、大きな利点が提供される。代替実施形態では、独立したレベル変換回路が提供されてもよい。
図21および図22は、1/2分周、1/4分周、および1/8分周の周波数における、一次クロック位相(0、90、180、270)を生成するために、図4および図7の周波数分割回路の代わりに使用されてもよい、周波数選択可能なクロック分割回路の実施形態700および720を示す。代替実施形態では、異なる周波数を有するクロック信号を生成するために、他の除数が使用されてもよい。
図21のクロック分割器700を最初に参照すると、1/n分周の比率を有する一次位相ベクトルを提供するために、3つの分割フロップ(divide−flop)701a、701b、および701cの組と、出力マルチプレクサ703a、703bのペアとが相互に接続される(nは、制御信号Div8およびDiv4または8のペアによって、2、4、または8であるように指定される)。詳細図706に示すように、分割フロップ701のそれぞれは、マルチプレクサ709と、図19および図20に関連して説明した自己初期化クロック分割器640のインスタンスとによって形成される。マルチプレクサ709は、選択信号SelAの状態に従って、2つの差動入力クロック(ClkA、ClkB)のうちの1つを、クロック分割器640の差動クロック入力に伝える。すなわち、SelAがハイの場合は、ClkAがクロック分割器640に伝えられ、SelAがローの場合は、ClkBがクロック分割器640に伝えられる。クロック分割器640は、図19および図20に関連して説明したとおりに動作して、差動入力クロック信号の半分の周波数をそれぞれが有する2つの差動クロック信号(0°および180°の位相成分を有する同相差動クロック信号Div2iと、90°および270°の位相成分を有する差動直角位相クロック信号Div2qと)を生成する。分割フロップ701aは、そのClkA入力において、0°および180°ユニティ位相の一次位相ベクトル(すなわち、差動クロック信号F0)を受信し、そのClkB入力において、分割フロップ701cの同相出力(Div2i)を受信し、そのセレクト入力において、制御信号Div8のコンプリメントを受信するように結合される。分割フロップ701cは、そのClkA入力において、90°および270°ユニティ位相の一次位相ベクトル(すなわち、差動クロック信号F90)を受信し、そのセレクト入力において、制御信号Div8を受信するように結合される。分割フロップ701bは、そのClkA入力において、分割フロップ701aの同相出力を受信し、そのセレクト入力において、制御信号Div4または8を受信するように結合される。分割フロップ701aの同相出力は、出力マルチプレクサ703aの第1入力に供給され、分割フロップ701aの直角位相出力(Div2q)は、出力マルチプレクサ703bの第1入力に供給される。分割フロップ701bの同相出力は、マルチプレクサ703aの第2入力に供給され、分割フロップ701bの直角位相出力は、出力マルチプレクサ703bの第2入力に供給される。制御信号Div4または8は、マルチプレクサ703aおよび703bのセレクト入力に供給され、それにより、1/4分周または1/8分周セットの一次位相ベクトルが所望される場合(すなわち、Div4または8がハイの場合)は、分割フロップ701bが、分割された位相ベクトルのソースとなるように選択され、1/2分周セットの一次位相ベクトルが所望される場合は、分割フロップ701aが、分割された位相ベクトルのソースとなるように選択される。
1/2分周セットの一次位相ベクトルが所望される場合、Div8およびDiv4または8信号はローにされ、それにより、分割フロップ701bおよび701cは、それぞれが、接地されたクロック信号(ClkB)を選択し、したがって無効(トグルが行われない省電力状態)にされる。Div8はローであるため、分割フロップ701aは、ClkAにおける0/180°差動クロック信号に基づいて、それぞれが周波数F/2を有する、同相および直角位相の位相ベクトルの組を生成する。さらに、Div4または8がローであるため、F/2の同相および直角位相クロック信号(0/180°および90/270°)は、マルチプレクサ703aおよび703bを経由して、クロック分割器700の出力ノードに伝えられる。1/4分周セットの一次位相ベクトルが所望される場合、Div8はローにされて分割フロップ701cが無効にされ、Div4または8は引き上げられる。分割フロップ701aは、上述の1/2分周構成におけるのと同様に、周波数F/2を有する同相差動クロック信号と直角位相差動クロック信号とを生成し、それとともに、Div4または8のハイ状態が、分割フロップ701aからの同相F/2差動クロック信号を、分割フロップ701bの入力クロックとして選択する。この動作によって、分割フロップ701bは、周波数F/4を有する同相および直角位相差動クロック信号を生成し、それらの信号は、Div4または8のハイ状態により、マルチプレクサ703aおよび703bを経由して、クロック分割器700から出力される。1/8分周セットの一次位相ベクトルが所望される場合、Div8およびDiv4または8が両方とも引き上げられる。分割フロップ701cは、その入力クロックとして、分割されていない90/270°差動クロック信号を選択することによって、Div8のハイ状態に応答し、したがって、周波数F/2を有する同相および直角位相の差動クロック信号を生成する。Div8のハイ状態は、さらに、分割フロップ701aがそのクロック入力として、分割フロップ701cによって生成された同相F/2クロック信号(F/20およびF/2180)を選択することを引き起こす。したがって、分割フロップ701aは、周波数F/4を有する同相差動クロック信号を、分割フロップ701bのClkA入力に供給し、分割フロップ701bは、Div4または8のハイ状態に応答して、周波数F/8を有する同相および直角位相クロック信号を、マルチプレクサ703a、703bを経由して、クロック分割器700から出力する。
クロック分割器700の1つの有利な特徴は、さまざまな選択可能な出力クロック周波数における一次位相ベクトルを提供するために、比較的コンパクトな出力多重化配置が使用されるということである。事実上、周波数分割器の選択は、分割フロップ701aの入力において、分割されたまたは分割されていないクロックソースのいずれかを選択し、分割フロップ701bを選択的にバイパスすることによって(すなわち、1/2分周の場合)、分割フロップ701の最前部で実行される。そのようなコンパクトな出力多重化は、望ましくない信号カップリングを減少させ、したがって、例えば、出力マルチプレクサの各入力ポートに、それぞれの選択可能な周波数における位相ベクトルの独立した組が提供される多重化配置と比較して、信号品質を向上させる傾向がある。さらに、使用されていない分割フロップを低減電力状態(例えば、1/2分周または1/4分周の場合の701c、および1/2分周の場合の701cと701b)に置く機能は、位相ベクトルセットがすべての分周比について生成され、次に、最終出力マルチプレクサ内で選択される実施形態に比較して、大幅な省電力(および、したがって、発熱の減少)を提供する可能性がある。周波数分割がまったく必要とされない場合に、分割フロップ701aを無効にすることによって、追加の省電力が実現されてもよいことに留意されたい。例えば、1/2分周または1/4分周セットの出力クロック信号が所望される場合のみ、ClkA入力を選択するために、Div2または4制御信号が、分割フロップ701aのセレクト入力に提供されてもよく、それにより、Div2または4とDiv8が両方ともローである場合に、分割フロップ701aは無効にされてもよい。
図22は、出力多重化なしで、1/2分周、1/4分周、および1/8分周の位相ベクトルを選択的に出力することが可能な、クロック分割器の代替実施形態720を示す。分割フロップ701cは、そのClkA入力において、分割されていない90/270°差動入力クロックを受信し、そのセレクト入力において、Div4または8制御信号を受信し、また、接地されたClkB入力を有する。この配置によって、Div4または8がロー(すなわち、周波数F/2を有する一次位相ベクトルの組が所望されることを示す)にされた場合、分割フロップ701cは無効にされる。Div4または8が引き上げられると、分割フロップ701cは、周波数F/2を有する同相差動クロック信号を、マルチプレクサ721の第1入力に出力し、また、周波数F/2を有する直角位相差動クロック信号を、分割フロップ701bに出力する。
分割フロップ701bは、そのClkA入力において、分割フロップ701cによって生成された直角位相差動クロック信号(Div2q)を受信し、そのセレクト入力において、Div8制御信号を受信し、また、接地されたClkB入力を有する。したがって、Div8がローの場合、分割フロップ701bは無効にされ、Div8がハイ(かつ、Div4または8がハイ)の場合、分割フロップ701bは、周波数F/4を有する同相差動クロック信号を、マルチプレクサ721の第2入力に出力する。Div8制御信号はマルチプレクサ721のセレクト入力に供給され、それによりマルチプレクサ721は、出力クロック信号が4または8のいずれによって周波数分割されるべきかに依存して、それぞれ、分割フロップ701cからのF/2差動クロック信号、または分割フロップ701bからのF/4差動クロック信号の、いずれかを分割フロップ701aに伝える。
分割フロップ701aは、そのClkA入力において、分割されていない差動入力クロック信号(すなわち、0/180°)を受信し、そのClkB入力において、マルチプレクサ721からの周波数分割された差動クロック信号(F/2またはF/4)を受信し、そのセレクト入力において、制御信号Div4または8のコンプリメントを受信する。この配置によって、Div4または8信号がローの場合、ClkA入力における分割されていない差動クロックが、分割フロップ701a内で周波数分割されて、周波数F/2を有する同相および直角位相差動クロック信号が生成され、それにより、クロック分割器出力において、周波数F/2を有する4つの一次位相ベクトル0、90、180、および270が提供される。Div4または8信号がハイの場合、分割フロップ701aのClkB入力に供給される、周波数分割されたクロック信号が、さらに分割されて、制御信号Div8の状態に従って、周波数F/4または周波数F/8のいずれかを有する、同相および直角位相の差動クロック信号が生成される。
一次位相のリタイミングを介した二次位相ベクトルの生成
図23は、周波数分割された一次位相ベクトルを、分割されていない二次位相ベクトルの遷移に応答してサンプリングすることによって、周波数分割された二次位相ベクトルを生成する、クロックリタイミング回路の実施形態750を示す。図示されている実施形態では、クロックリタイミング回路750は、差動データ入力(dN、dP)と、差動データ出力(qN、qp)と、クロック入力(「>」)とをそれぞれが有する、差動フリップフロップのペア751a、751bを含む。周波数F/2を有する同相差動クロック信号(すなわち、F/20およびF/2180)が、フリップフロップ751aの差動データ入力に提供され、周波数F/2を有する直角位相差動クロック信号(すなわち、F/290、F/2270)が、フリップフロップ751bの差動データ入力に提供される。フリップフロップ751aのクロック入力は、分割されていない二次位相ベクトルF240を受信するように結合され、フリップフロップ751bのクロック入力は、分割されていない二次位相ベクトルF120を受信するように結合される(フリップフロップ751のクロック入力は差動型であってもよく、それにより、フリップフロップ751aはコンプリメンタリ位相ベクトルF60を追加して受信し、フリップフロップ751はコンプリメンタリ位相ベクトルF300を追加して受信してもよいことに留意されたい)。この配置によって、フリップフロップ751aは、分割されていない二次位相ベクトルF240の各立ち上がりエッジに応答して、同相の、周波数分割された一次位相ベクトルF/20およびF/2180の状態をサンプリングし、周波数F/2において120°および300°の位相角を有する差動二次位相ベクトルを生成する。フリップフロップ751bは、同様に、分割されていない二次位相ベクトルF120の各立ち上がりエッジに応答して、分割された、直角位相一次位相ベクトルF/290およびF/2270の状態をサンプリングし、周波数F/2において60°および240°の位相角を有する差動二次位相ベクトルを生成する。図24のタイミング図770を参照すると、例えば、771において示されるF240の立ち上がりエッジは、点773におけるF/20位相ベクトルのサンプリングをトリガして、774において示される位相ベクトルF/2120の立ち上がりエッジを生成し、また、それに続く、772において示されるF240の立ち上がりエッジは、点775におけるF/20位相ベクトルのサンプリングをトリガして、776において示される位相ベクトルF/2120の立ち下がりエッジを生成する。771および772におけるF240の立ち上がりエッジは、さらに、点777および779におけるF/2180位相ベクトルのサンプリングもそれぞれトリガして、778および780において示されるF/2300の遷移を生成する。781において示されるF120の立ち上がりエッジは、点783におけるF/290位相ベクトルのサンプリングをトリガして、784において示される位相ベクトルF/2240の立ち下がりエッジを生成し、また、それに続く、782において示されるF120の立ち上がりエッジは、点785におけるF/290位相ベクトルのサンプリングをトリガして、786において示される位相ベクトルF/2240の立ち上がりエッジを生成する。781および782におけるF120の立ち上がりエッジは、さらに、点787および789におけるF/2270位相ベクトルのサンプリングもトリガして、788および790において示されるF/260の立ち上がりおよび立ち下がり遷移をそれぞれ生成する。
分割フロップおよびリタイマを使用して実装される周波数選択可能なクロック分割器
図25は、分割フロップとクロックリタイミング回路との組み合わせを使用して、選択された細分された周波数における一次および二次位相ベクトルを生成する、クロック分割器の実施形態800を示す。より具体的には、クロック分割器800は、出力マルチプレクサ805と、細分された周波数F/2、F/4、およびF/8における差動型の同相(0/180°)および直角位相(90/270°)一次位相ベクトルを生成するための、分割フロップ701a、701b、701cの組と、細分された周波数F/2、F/4、およびF/8において位相角60/240°および120/300°を有する差動二次位相ベクトルを生成するための、クロックリタイマ801a−x、801a−y、801b−x、801b−y、801c−x、および801c−yの組とを含む。
最初に、一次位相の生成について説明すると、分割フロップ701aは、そのClkA入力において、分割されていない同相差動クロック信号(0/180°)を受信し、そのセレクト入力において、Div2または4または8制御信号を受信し、また、接地されたClkB入力を有する。Div2または4または8制御信号は、周波数分割された位相ベクトルの組が所望される場合は引き上げられ、それ以外の場合(すなわち、ユニティ位相ベクトルセットが所望される場合)はローにされる。この配置によって、分割フロップ701aは、周波数分割が必要とされない場合は無効にされ、それ以外の場合は、周波数F/2における同相および直角位相の差動クロック信号(すなわち、F/20およびF/290、ならびにそれらのコンプリメント)を、マルチプレクサ805の入力ポートに出力する。分割フロップ701bのClkA入力は、分割フロップ701aの同相出力に結合され、それにより、Div2または4または8がハイの場合、分割フロップ701bは、そのClkA入力において、F/2同相差動クロック信号(F/20およびF/2180)を受信する。分割フロップ701bのセレクト入力は、Div4または8制御信号を受信するように結合され、分割フロップ701bのClkB入力は接地される。Div4または8信号は、F/4またはF/8出力クロック信号が所望される場合は引き上げられ、それ以外の場合はローにされる。したがって、分割フロップ701bは、1/2分周またはユニティの位相ベクトルセットが選択された場合は無効にされ、それ以外の場合は、周波数F/4における同相および直角位相の差動クロック信号を、マルチプレクサ805の入力ポートに出力する。分割フロップ701cのClkA入力は、分割フロップ701bの同相出力に結合され、それにより、Div4または8がハイの場合、分割フロップ701cは、そのClkA入力において、F/4同相差動クロック信号(F/40およびF/4180)を受信する。分割フロップ701cのセレクト入力は、Div8制御信号を受信するように結合され、ClkB入力は接地される。したがって、分割フロップ701cは、1/4分周、1/2分周、またはユニティの位相ベクトルセットが選択された場合(すなわち、Div8がローの場合)は無効にされ、それ以外の場合は、周波数F/8における同相および直角位相の差動クロック信号を、マルチプレクサ805の入力ポートに出力する。
一実施形態では、クロックリタイマ801(「リタイマ」と略称)のそれぞれは、詳細図804に示すように、差動フリップフロップ751と、マルチプレクサ709とによって実装される。リタイマのイネーブル入力が、マルチプレクサ709のセレクト入力に結合され、それにより、イネーブル信号ENがハイの場合、クロック入力Clkにおいて提示される差動クロック信号(リタイマ801a−x、801a−y、801b−x、801b−y、801c−x、および801c−y内の「>」記号として図示)が、差動フリップフロップのクロック入力に伝えられる。イネーブル信号がローの場合、フリップフロップ751のクロック入力は接地されて、フリップフロップ751のトグルが阻止され、したがってリタイマ801は、低減電力の無効状態に置かれる。リタイマ801の差動データ入力は、フリップフロップ751の差動入力(dP、dN)に結合され、フリップフロップ751の差動出力(qP、qN)は、リタイマ出力ROを構成する。したがって、所与のリタイマのイネーブル入力においてロジックハイ信号が提供された場合、リタイマ801は有効にされ、図23に関連して説明した方法で一般に動作して、データ入力において提示された差動クロック信号をリタイミングする。リタイマのイネーブル入力においてロジックロー信号が提供された場合、フリップフロップのクロック入力は接地されて、フリップフロップ751のトグルが阻止され、それによりリタイマは、無効な低減電力状態に置かれる。リタイマ801のデータ入力またはクロック入力における反転ドットは、リタイマの差動クロック入力または差動データ入力に、入力差動信号が交差結合されることを示すことに留意されたい。例えば、リタイマ801a−xのデータ入力における反転ドットは、リタイマのデータ入力に、差動クロック信号F/20が交差結合されることを示す。すなわち、差動クロック信号のF/2180成分がポジティブデータ入力(dP)に供給され、F/20成分がネガティブデータ入力(dN)に供給されるのであり、その逆ではない。
次に、周波数分割された二次位相ベクトルの生成について説明すると、リタイマ801a−xおよび801a−yは、それらのそれぞれのクロック入力において、分割されていない二次位相ベクトル120/300°および60/240°を受信し、それらのそれぞれのデータ入力において、分割フロップ701aによって生成された同相および直角位相のF/2位相ベクトルを受信する。Div2または4または8制御信号は、リタイマ801a−xおよび801a−y(一括してリタイマ801aと呼ぶ)のイネーブル入力に供給され、それにより、周波数分割された位相ベクトルの組が所望される場合(すなわち、Div2または4または8がハイの場合)、リタイマ801a−xおよび801a−yは、それぞれ、差動クロック信号F/260(すなわち、周波数F/2とコンプリメンタリ位相角60°および240°とを有する二次位相ベクトル)およびF/2120(すなわち、周波数F/2とコンプリメンタリ位相角120および300とを有する二次位相ベクトル)を、マルチプレクサ805の入力ポートに出力する。Div2または4または8がローの場合、リタイマ801aは無効にされる。
リタイマ801b−xおよび801b−yは、それらのそれぞれのクロック入力において、リタイマ801aによって生成された差動信号F/2120およびF/260を受信し、それらのデータ入力において、分割フロップ701bからの同相および直角位相のF/4位相ベクトルを受信する。Div4または8制御信号は、リタイマ801bのイネーブル入力に供給され、それにより、1/4分周または1/8分周セットの位相ベクトルが所望される場合(すなわち、Div4または8がハイの場合)、リタイマ801bは、差動クロック信号F/460およびF/4120を、マルチプレクサ805の入力ポートに出力する。Div4または8がローの場合、リタイマ801bは無効にされる。
リタイマ801c−xおよび801c−yは、それらのそれぞれのクロック入力において、リタイマ801bによって生成された差動信号F/4120およびF/4260を受信し、それらのデータ入力において、分割フロップ701cからの同相および直角位相のF/4位相ベクトルを受信する。制御信号Div8は、リタイマ801cのイネーブル入力に供給され、それにより、1/8分周セットの位相ベクトルが選択された場合(すなわち、Div8がハイの場合)、リタイマ801cは、差動クロック信号F/860およびF/8120を、マルチプレクサ805の入力ポートに出力する。Div8がローの場合、リタイマ801cは無効にされる。
Div4または8およびDiv8制御信号は、出力マルチプレクサ805に供給されて、一次および二次差動位相ベクトル0°、90°、60°、および120°を形成するために出力される位相ベクトルの選択を制御する。一実施形態では、例えば、出力マルチプレクサ805は、次の表に従って、分割フロップ701およびリタイマ801によって生成される位相ベクトルの中から選択する(「X」は、ドントケアを示す)。
したがって、出力マルチプレクサ805は、4つの3:1マルチプレクサによって実装されてもよく、それらのそれぞれは、Div8およびDiv4または8制御信号の状態に応じて3つの周波数F/2、F/4、またはF/8のうちの1つを有し、かつ、位相角0°、90°、60°、および120°のうちのそれぞれ1つを有する、差動クロック信号を出力してもよい。負荷平衡の目的のために、リタイマ801c−xおよび801c−y、またはクロック分割器800内のその他の構成要素に、擬似負荷が結合されてもよいことに留意されたい。
図26は、図25の実施形態における3:1出力多重化の代わりに、1組の2:1出力マルチプレクサを使用して、選択された細分された周波数(F/2、F/4、またはF/8)における一次および二次位相ベクトルを出力する、クロック分割器の代替実施形態830を示す。上述のように、縮小された出力多重化は、より少ない信号ファンインを意味し、したがって、隣接経路信号間の望ましくない信号カップリングを減少させる傾向がある。クロック分割器830は、図25の実施形態におけるのと同じ数の、分割フロップ(701a、701b、および701c)とリタイマ(831a−x、831a−y、831b−x、831b−y、831c−x、および831c−y)とを含むが、F/4およびF/8出力ベクトルの間の選択は、分割フロップ701bおよびリタイマ801bの入力タイミングソースを制御することによってもたらされる。すなわち、分割フロップ701bおよびリタイマ801bは、入力タイミングソースの選択に応じて、周波数F/4またはF/8のいずれかにおける位相ベクトルを出力し、それにより、出力多重化ステージでのF/4およびF/8位相ベクトルの間の選択は不要になる。
最初に、一次位相ベクトルの生成について説明すると、分割フロップ701aは、図25の実施形態におけるのと同じ方法で構成され、したがって、制御信号Div2または4または8がハイの場合に、周波数F/2を有する同相および直角位相の差動クロック信号(すなわち、F/20およびF/290)を生成し、Div2または4または8がローの場合は無効にされる。分割フロップ701cは、そのClkA入力において、F/20を受信し、そのセレクト入力において信号Div8を受信し、また、接地されたClkB入力を有する。この配置によって、Div8がハイの場合、分割フロップ701cは、同相および直角位相の差動クロック信号F/40およびF/490を生成する。Div8がローの場合、分割フロップ701cは無効にされる。分割フロップ701bは、そのClkA入力においてF/20を受信し、そのClkB入力においてF/40を受信し、そのセレクト入力において制御信号Div4を受信する。したがって、Div4信号がハイの場合(すなわち、1/4分周の出力クロック周波数が所望されることを示す)、ClkAにおけるF/20位相ベクトルが入力タイミングソースとして選択され、それにより分割フロップ701bは、差動クロック信号F/40およびF/490を生成する。Div4信号がローで、かつ、Div8信号がハイの場合、分割フロップ701cによって生成された差動クロック信号F/40が、分割フロップ701bのための入力タイミングソースとして選択され、それにより分割フロップ701bは、差動クロック信号F/80およびF/890を生成する。したがって、分割フロップ701bによって生成される差動クロック信号は、周波数F/4またはF/8を有してもよく、F/4またはF80およびF/4またはF890クロック信号と呼ばれる。上述のように、分割フロップ701cは、Div8がローの場合は無効にされる。Div4がローの場合、分割フロップ701bは、そのタイミングソースとして分割フロップ701cの出力を選択するため、Div4およびDiv8が両方ともローの場合、分割フロップ701bは無効にされる。
分割フロップ701aおよび701bからそれぞれ出力される、同相差動クロック信号F/20およびF/4またはF/80は、2:1マルチプレクサ703aの各入力ポートに提供され、直角位相差動クロック信号F/290およびF/4またはF/890は、同様に、2:1マルチプレクサ703bの各入力ポートに提供される。制御信号Div2は、マルチプレクサ703aおよび703bのセレクト入力に供給され、したがって、1/2分周の出力クロック周波数を選択するために引き上げられた場合は、マルチプレクサ703aおよび703bがF/20およびF/290クロック信号をクロック分割器830から出力することを可能にし、ローにされた場合は、マルチプレクサ703a、703bがF/4またはF/80およびF/4またはF/890クロック信号を出力することを可能にする。
次に、二次位相の生成について説明すると、リタイマ831のそれぞれは、図25のリタイマ801と同様に構築されるが、ただし、詳細図840に示すように、追加の差動クロック入力ClkBがマルチプレクサ709の第2入力において提供され(すなわち、その入力はグラウンドに結合されず)、それにより、リタイマ801のイネーブル入力は、クロックソースClkAまたはClkBのいずれかを、差動フリップフロップ751に提供されるように選択するための、リタイマ831内のセレクト入力(SelA)となるという点が異なる。図25のリタイマ801は、したがって、接地されたClkB入力を有する、リタイマ831のインスタンスとして見られてもよい。
リタイマ831a−xおよび831a−yは、図25の対応するリタイマ801a−xおよび801a−yと同じ方法で構成され、したがって、Div2または4または8がハイの場合に、差動クロック信号F/260およびF/2120を生成する。Div2または4または8がローの場合、リタイマ831a−xおよび831a−yは無効にされる。リタイマ831c−xおよび831c−yは、それらの各ClkA入力において、リタイマ831a−xおよび831a−yによって生成された差動クロック信号F/2120およびF/260を受信し、それらの各データ入力において、F/40およびF/490差動クロック信号を(すなわち、分割フロップ701cの同相および直角位相出力から)受信し、それらのセレクト入力において、Div8制御信号を受信するように接続され、また、接地されたClkB入力を有する。リタイマ831b−xおよび831b−yは、それらの各ClkA入力において、リタイマ831a−xおよび831a−yによって生成された差動クロック信号F/2120およびF/260を受信し、それらの各ClkB入力において、リタイマ831c−yおよび831c−xの出力を受信し、それらの各データ入力において、F/4またはF/80およびF/4またはF/890差動クロック信号を(すなわち、分割フロップ701bの同相および直角位相出力から)受信し、それらのセレクト入力において、Div4制御信号を受信するように接続される。この配置によって、Div4がハイかつDiv8がローの場合、リタイマ831c−xおよび831c−yは無効にされ、リタイマ831b−xおよび831b−yは、それぞれ、分割フロップ701bから出力されるF/490およびF/40クロック信号(すなわち、Div8がローかつDiv4がハイの場合、クロック信号F/4またはF/80およびF/4またはF/890は周波数F/4を有する)を、リタイマ831a−yおよび831a−xにより出力されるF/2120およびF/260差動クロック信号に応答してサンプリングすることによって、F/460およびF/4120差動クロック信号を生成する。Div8がハイかつDiv4がローの場合、リタイマ831c−yおよび831c−xは、それぞれ、リタイマ831b−xおよび831b−yのClkB入力に、差動クロック信号F/4120およびF/460を出力する。リタイマ831b−xおよび831b−yは、次に、それぞれ、分割フロップ701bから出力されるF/890およびF/80クロック信号(すなわち、Div8がハイかつDiv4がローの場合、クロック信号F/4またはF/80およびF/4またはF/890は周波数F/8を有する)を、リタイマ831c−yおよび831c−xから出力されるF/4120およびF/460差動クロック信号に応答してサンプリングすることによって、F/860およびF/8120差動クロック信号を生成する。したがって、リタイマ831b−xおよび831b−yは、それぞれ、60°および120°の差動クロック信号を、制御信号Div4およびDiv8の状態に応じた、周波数F/4または周波数F/8において出力する。したがって、リタイマ831b−xおよび831b−yから出力される差動クロック信号は、周波数F/4またはF/8を有してもよく、F/4またはF860およびF/4またはF8120クロック信号と呼ばれる。
リタイマ831a−xおよび831b−xから出力される差動クロック信号F/260およびF/4またはF/860は、2:1マルチプレクサ833aの各入力に供給され、リタイマ831a−yおよび831b−yから出力される差動クロック信号F/2120およびF/4またはF/8120は、2:1マルチプレクサ833bの各入力に供給される。制御信号Div2が、マルチプレクサ833aおよび833bのセレクト入力に供給され、それにより、1/2分周の位相ベクトルセットが所望される場合(すなわち、Div2がハイの場合)、差動クロック信号F/260およびF/2120が、差動クロック信号F/20およびF/290とともに、クロック分割器830から出力されるように選択される。Div2がローの場合(1/4分周または1/8分周の位相ベクトルセットが所望されることを示す)、差動クロック信号F/4またはF/860およびF/4またはF/8120が、差動クロック信号F/4またはF/80およびF/4またはF/890とともに、クロック分割器830から出力されるように選択される。上述のように、F/4またはF/8差動クロック信号が周波数F/4またはF/8のいずれを有するかの決定は、分割フロップ701bおよびリタイマ831bの入力におけるタイミングソースの選択によって確立され、そのため、3つの細分されたクロック周波数のうちの1つの、全体的な選択は、2:1多重化ステージのみを使用してもたらされてもよい。
図25の実施形態におけるのと同様に、すべてのクロック信号経路の平衡負荷を実現するために、選択された分割フロップおよび/またはリタイマの出力に、擬似負荷素子が結合されてもよい。また、代替実施形態では、より多くの、またはより少ない周波数分割係数(異なる周波数分割係数を含む)、より多くの、またはより少ない位相ベクトル、および、異なる位相角を有する位相ベクトルが、図25および図26のクロック分割器によって生成されてもよい。さらに、図26の実施形態で出力多重化を減らすために使用された入力クロック選択技術は、代替実施形態で、出力多重化をすべて回避するように拡張されてもよい。例として、分割フロップ701bは、分割フロップ701aと701bの出力に加えて、分割されていない0/180°入力(F0)との間の選択も行う、3:1クロック選択マルチプレクサを含むように変更されてもよく、それにより、周波数F/2、F/4、またはF/8を有する、同相および直角位相の出力クロック信号を生成してもよい。同様に、リタイマ831b−xおよび831b−yは、リタイマ831cとリタイマ831aの出力だけでなく、分割されていない60/240°および120/300°差動クロック信号との間の選択も行う、3:1クロック選択マルチプレクサを含むように変更されてもよく、それにより、周波数F/2、F/4、またはF/8を有する、60/240°および120/300°の出力クロック信号を生成してもよい。他の実施形態では、例えば、分割フロップ701a内で、F/2差動クロック信号を生成し、分割フロップ701c内で、分割されていない(F)差動クロック信号とF/2差動クロック信号との間で選択して、F/2またはF/4差動クロック信号を生成し、次に、分割フロップ701b内で、分割されていない差動クロック信号とF/2またはF/4クロック信号との間で選択して、周波数F/2、F/4、またはF/8を有する、同相および直角位相の差動クロック信号(すなわち、F/2またはF/4またはF/80およびF/2またはF/4またはF/890)を生成することによって、分割フロップ701およびリタイマ831を変更せずに出力多重化が減らされてもよい。同様に、リタイマ831cは、分割されていない差動クロック信号(F)と、リタイマ831aにより提供されるF/2差動クロック信号との間で選択を行って、F/2またはF/4差動クロック信号を、リタイマ831bのクロック入力に送り出してもよい。リタイマ831bは、さらに、それらの第2クロック入力において、分割されていない差動クロック信号を受信してもよく、したがって、分割されていないクロック信号と、F/2またはF/4クロック信号との間で選択を行って、周波数F/2、F/4、またはF/8における、60°および120°の位相角を有する差動クロック信号(すなわち、F/2またはF/4またはF/860およびF/2またはF/4またはF/8120)を生成してもよい。
一部の適用例では、選択可能なすべての周波数において、一次および/または二次位相ベクトルの全コンプリメントが必要とされるとは限らず、したがって、いくらかの回路最適化が可能な場合がある。例えば、図27に示すクロック分割器の実施形態850では、周波数F/8を有する二次位相ベクトルは生成されないため、図25および図26の実施形態におけるよりも少ないリタイマ801を使用してクロック分割器850が実装されることが可能である。図示されている特定の実施形態では、周波数F/2、F/4、またはF/8を有する同相および直角位相の位相ベクトルを生成するために、分割フロップ701a、701b、701c、およびマルチプレクサ703aと703bが、図21に関連して説明したように構成される。1/2分周または1/4分周の位相ベクトルセットが選択される場合(すなわち、Div2または4がハイかつDiv8がローの場合)、分割フロップ701aから出力される同相および直角位相の位相ベクトルは、周波数F/2を有し、それぞれ、リタイマ801bおよび801aのデータ入力に提供される。リタイマ801aおよび801bは、さらに、それらの各クロック入力において、差動クロック信号F120およびF60を受信し、それらのイネーブル入力において、Div2または4制御信号を受信する。この配置によって、リタイマ801aおよび801bは、Div2または4がハイの場合(すなわち、1/2分周または1/4分周セットの位相ベクトルが所望されることを示す)、差動クロック信号F/260およびF/2120を生成し、Div2または4がローの場合は無効にされる。リタイマ801cおよび801dは、それらの各クロック入力において、リタイマ801aおよび801bから出力される差動クロック信号を受信し、それらの各データ入力において、分割フロップ701bから出力される同相および直角位相の差動クロック信号を受信する。1/4分周セットの出力位相ベクトルが所望される場合、リタイマ801cおよび801dが、分割フロップ701bから出力される同相および直角位相の差動クロック信号(そのような信号は、分割フロップ701cが無効にされている場合、周波数F/4を有し、また、分割フロップ701aは、周波数F/2における同相および直角位相の差動クロック信号を生成する)を、それぞれ、リタイマ801aおよび801bから出力されるF/260およびF/2120差動クロック信号に応答してサンプリングすることを可能にするために、制御信号Div4が引き上げられる。したがって、Div4がハイの場合、リタイマ801cおよび801dは、それぞれ、差動クロック信号F/4120およびF/460を生成する。Div4がローの場合、リタイマ801cおよび801dは無効にされる。リタイマ801aおよび801dから出力される差動クロック信号F/260およびF/460は、マルチプレクサ853aの各入力に供給され、リタイマ801bおよび801cから出力される差動クロック信号F/2120およびF/4120は、マルチプレクサ853bの各入力に供給される。マルチプレクサ853aおよび853bのセレクト入力は、Div4または8制御信号を受信するように結合され、それにより、Div4または8がローの場合(1/2分周の選択を示す)、F/260およびF/2120差動クロック信号が、分割フロップ701aにより生成されるF/20およびF/290クロック信号とともに、クロック分割器850から出力される。Div4または8がハイかつDiv8がローの場合、F/460およびF/4120差動クロック信号が、分割フロップ701bにより出力されるF/40およびF/490差動クロック信号とともに、クロック分割器850から出力される。最後に、Div4または8がハイかつDiv8がハイの場合、リタイマ801a〜801dは無効にされ、それにより、マルチプレクサ853aおよび853bの出力はトグルしなくなる。すなわち、F/80およびF/890差動クロック信号のみが、クロック分割器850から出力される。
図28は、図14〜図18に関連して説明した実施形態による基準位相発生器865と、図19〜図27に関連して説明した実施形態による成分分割およびリタイミング回路を有するクロック分割器867とを含む、例示的クロック発生器860を示す。図示されているように、基準位相発生器865は、一次位相ベクトル(0/180°、90/270°)を生成するためのVCO 875を含み、さらに、一次位相ベクトルから二次位相ベクトル(60/240°、120/300°)を生成するための4−8変換器877を形成する、スケーリングされた遅延素子552、554の組も含む。4−8変換器877内には、60°および75°の遅延素子の特定の組み合わせが示されているが、上述したスケーリングされた遅延素子のさまざまな組み合わせのうちのいずれも、代替方法として使用されてもよい。VCO 875および4−8変換器877の両方の中の遅延素子は、図15に関連して上述したとおりに生成されてもよい共通の遅延制御信号(DCTL)によって制御される。一実施形態では、基準位相発生器865内で生成される一次および二次位相ベクトルは、小振幅信号であり、レベル変換器871内でロジックレベル信号(例えば、CMOS信号レベル)に変換されてもよい。
図28をさらに参照すると、制御ロジック回路869は、所望の出力クロック周波数(図28の例示的実施形態では、基準ループ周波数F、あるいは細分された周波数F/2、F/4、またはF/8であってもよい)を指定する、複数ビットのレート選択信号RSを受信する。代替実施形態では、その他の出力クロック周波数が選択されてもよい。制御ロジック869は、クロック分割器867内でのクロック分割を(例えば、図25〜図27に関連して説明したように)制御するために、クロック分割器867に、制御信号Div2、Div4、Div8、Div4または8、およびDiv2または4または8の組を出力し、それにより、周波数F/2、F/4、またはF/8と、位相角0/180°、90/270°、60/240°、および120/300°とを有する位相ベクトルの組868を、クロック分割器867が出力することを可能にする。上述のように、代替実施形態では、異なる位相角および/または周波数を有する、より多くの、またはより少ない位相ベクトルが、クロック分割器867によって生成されてもよい。制御ロジック869は、さらに、レベル変換器871からのユニティ位相ベクトル872(Div1=「1」)、またはクロック分割器867からの周波数分割された位相ベクトル868(Div=「0」)のいずれが、クロック発生器860から、出力クロック信号の組874として出力されるかを選択するための、Div1制御信号をマルチプレクサ873に出力する。出力クロック信号874は、例えば、クロックツリーに提供されてもよく(例えば、クロック信号ファンアウトを提供するために必要な場合)、また、クロックツリーから、1組のサンプリング回路に、または複数位相クロッキングが使用されてもよい、その他の任意の回路に提供されてもよい。
制御ロジック869は、例えば、2ビットのレート選択信号の状態に従って、4つの信号(Div1、Div2、Div4、またはDiv8)のうちの1つをアサートするための、2:4デコーダによって実装されてもよい。残りのDiv4または8およびDiv2または4または8信号と、そのコンプリメントは、2:4デコーダの出力から合成されてもよい(例えば、ORゲート、インバータなどを使用して)。さらに、代替実施形態では、1つまたは複数の制御信号は必要とされなくてもよく、したがって、制御ロジック869によって生成されなくてもよい。
ワイドレンジ複数位相クロック発生器を有するシグナリングシステム
図29は、図1〜図28の実施形態によるクロック発生器が内部で使用されてもよい、シグナリングシステム900を示す。システム900は、例えば、コンピューティング装置(例えば、モバイル、デスクトップ、またはより大規模なコンピュータ)、ネットワーク機器(例えば、スイッチ、ルータなど)、家庭用電子機器(例えば、電話機、パーソナルデジタルアシスタント(PDA)など)、あるいは広い周波数範囲のクロック生成が内部で必要とされるその他の任意のタイプの装置の部分を形成してもよい。
システムは、信号経路902および904を介して相互に結合された、集積回路(IC)のペア901および903を含む。図示されている実施形態では、信号経路902および904は、一方のICから他方のICへのシリアル化された伝送を実行するための、単方向の高速シリアルリンクである。代替実施形態では、いずれかまたは両方のリンクが双方向であってもよく、また、複数のそのような信号経路が、並列なビットのグループの伝送を可能にするために提供されてもよい(例えば、各ビットグループは、データまたは制御ワード(例えば、コマンド、アドレスなど)を形成するか、あるいは、データまたは制御パケットの部分を形成する)。IC 901および903は、ピア(例えば、各ICは、他方のICへの信号伝送を独立に開始することが可能)であってもよく、またはマスタとスレーブであってもよい。さらに、IC 901および903の相対的ステータスは、一方のICが最初はマスタであり、その後、別のときにはスレーブであり、かつ/または、別のときにはピアであるように、ときどき変化してもよい。
IC 901は、簡略化されたブロック図の形式で示されており、ワイドレンジクロック発生器913と、可変データレート信号受信器911と、可変データレート信号送信器915と、アプリケーションロジック917とを含む。クロック発生器913は、可変レート受信器911に、その内部でのデータおよび/またはエッジサンプリング動作のタイミングをとるために、1組のサンプリングクロック信号910(すなわち、出力クロック信号)を出力する。サンプリングクロック信号910は、図1〜図13に関連して上述したクロック発生器の出力クロック信号に対応し、アプリケーションロジック917によって供給されるレート選択信号905と、さらに、可変位相動作が必要な場合は、位相オフセット信号906とに応じた、所望の周波数および位相オフセットを有する。図29に具体的に図示していないが、上述したクロックデータ復元の目的のために、エッジサンプルが、受信器911からクロック発生器913に提供されてもよい。クロック発生器913は、さらに、送信器915に、その内部でのデータ送信動作のタイミングをとるために、1つまたは複数の送信クロック信号918を出力する。送信クロック信号は、例えばクロック発生器913内のVCOにより生成される、自走クロック信号であってもよく、あるいは、受信器911に供給されるサンプリングクロック信号910のうちの1つまたは複数と位相整列されていてもよい。さらに、送信クロック信号908は、アプリケーションロジック回路917により供給されるレート選択信号905および/または位相オフセット信号906に従って、周波数分割されていてもよい。
可変レート受信器911によって回収されたデータは、受信データ(RX DATA)としてアプリケーションロジック917に提供され、また、アプリケーションロジック917は、送信データ(TX DATA)を可変レート送信器915に、経路904上での伝送のために出力する。クロック発生器913によって生成される送信クロック信号とサンプリングクロック信号とは、異なる周波数を有してもよいため、異なる送信および受信データレートが選択されてもよい。
図29の実施形態では、レート選択信号905としてクロック発生器913に出力され、クロック発生器913内で、サンプリングクロック信号910の周波数を確立するために使用される、第1のレート選択値を記憶するために、アプリケーションロジック917内のコンフィギュレーション回路919(例えば、実行時プログラム可能レジスタ、不揮発性記憶装置、ヒューズ記憶装置(fused storage)など)が使用される。コンフィギュレーション回路919は、さらに、サンプリングクロック信号910の位相オフセットを制御するために、位相オフセット信号906としてクロック発生器913に出力される、位相オフセット値も記憶してもよい。レート選択信号905および位相オフセット信号906は、さらに、または代替方法として、送信クロック信号908の周波数および位相オフセットを確立するために使用されてもよく、あるいは、別個の周波数および/または位相オフセット情報が、コンフィギュレーション回路919内に記憶されて、送信クロック信号908の周波数および/または位相オフセットを設定するためにクロック発生器913に出力されてもよい。一実施形態では、IC 903は、1つまたは複数のレート選択および/または位相オフセット値をコンフィギュレーション回路919内に記憶するための、1つまたは複数のコンフィギュレーションコマンド(あるいは、要求または命令)を、IC 901に発行するように設計および/またはプログラムされる。各レート選択値および/または位相オフセット値は、例えば、コンフィギュレーションコマンドのオペレーションコード内で、または関連するオペランドデータとして提供されてもよい。アプリケーションロジック917は、指示されたレート選択および/または位相オフセット値をコンフィギュレーション回路919内に記憶し、そして、対応するレート選択信号905および/または位相オフセット信号906をクロック発生器913に発行することによって、コンフィギュレーションコマンドに応答する。システムの始動時に、コンフィギュレーションコマンドと、関連するレート選択および/または位相オフセット値との確実な通信を可能にするために、IC 901はデフォルトで、所定のレート選択および/または位相オフセット設定になってもよい。あるいは、(例えば、独立した経路またはプロトコルによる)アウトバンドシグナリングが、IC 901へのレート選択および/または位相オフセット値の通信のために使用されてもよい。代替実施形態では、コンフィギュレーション回路919は、IC 901内の別の場所に配置されてもよいことに留意されたい。
図29では2つのIC 901および903が示されているが、それぞれのIC内の回路は、代替方法として、1つのIC内に(例えば、システムオンチップまたは類似した構造内に)実装されてもよく、信号経路902および904は、IC内に製造される1つまたは複数の金属層、あるいはその他の信号伝導構造を介して配線されてもよい。また、図29に示すように別個のICが使用される場合、ICは、別々のICパッケージ内に実装されてもよく(例えば、プラスチックまたはセラミックカプセル封じ、ベアダイパッケージなど)、あるいは、1つのICパッケージ内に実装されてもよい(例えば、マルチチップモジュール、極薄型パッケージ(PTP)など)。
本明細書で開示されたさまざまな回路は、それらの回路の挙動、レジスタ転送、ロジック構成要素、トランジスタ、レイアウト形状、および/または、その他の特性に関して、コンピュータ援用設計ツールを使用して記述されてもよく、また、さまざまなコンピュータ可読媒体内に組み入れられるデータおよび/または命令として表現されてもよい(あるいは、表されてもよい)ことに留意されたい。そのような回路表現が実装されてもよいファイルおよびその他のオブジェクトのフォーマットとしては、C、Verilog、およびHLDLなどの動作記述言語をサポートするフォーマット、RTLなどのレジスタレベル記述言語をサポートするフォーマット、GDSII、GDSIII、GDSIV、CIF、MEBESなどの形状記述言語をサポートするフォーマット、ならびにその他の任意の適切なフォーマットおよび言語が挙げられるが、これらに限定されるものではない。そのようなフォーマットされたデータおよび/または命令が組み入れられてもよいコンピュータ可読媒体としては、さまざまな形態の不揮発性記憶媒体(例えば、光、磁気、または半導体記憶媒体)、ならびにそのようなフォーマットされたデータおよび/または命令を、無線、光、または有線の信号媒体、あるいはそれらの任意の組み合わせを通して転送するために使用されてもよい搬送波が挙げられるが、これらに限定されるものではない。そのようなフォーマットされたデータおよび/または命令の、搬送波による転送の例としては、1つまたは複数のデータ転送プロトコル(例えば、HTTP、FTP、SMTPなど)を介した、インターネットおよび/またはその他のコンピュータネットワーク上での転送(アップロード、ダウンロード、電子メールなど)が挙げられるが、これらに限定されるものではない。
1つまたは複数のコンピュータ可読媒体を介してコンピュータシステム内で受信された場合、上述の回路のそのようなデータおよび/または命令ベースの表現は、そのような回路が物理的に現れたものの表現または画像を生成するための、ネットリスト生成プログラム、配置および配線プログラムなど(ただし、これらに限定されない)を含む、1つまたは複数のその他のコンピュータプログラムの実行と組み合わせて、コンピュータシステム内の処理エンティティ(例えば、1つまたは複数のプロセッサ)によって処理されてもよい。そのような表現または画像は、その後、例えば、デバイス製造プロセスにおいて回路のさまざまな構成要素を形成するために使用される1つまたは複数のマスクの生成を可能にすることによって、デバイス製造において使用されてもよい。
この詳細な説明の中で提供されたセクション見出しは、参照の便宜のみのためのものであり、そのようなセクションの範囲または限界を、定義、制限、解釈、または説明するものでは決してない。また本発明は、その特定の実施形態を参照して説明されたが、本発明のより広い意図および範囲から逸脱することなく、それらの実施形態に対してさまざまな修正および変更が行われてもよいことは明らかであろう。したがって、本明細書および図面は、制限的ではなく例示的な意味のものと考えられるべきである。