(57)【要約】      （修正有）【課題】改良された遅延ロック・ループを提供する。【解決手段】ＤＬＬは、位相検出信号と結合された制御モジュールを含む。制御モジュールは位相検出信号を用いてフィードバック選択信号及び出力選択信号を生成する。フィードバック選択信号及び出力選択信号はマルチプレクサに結合される。各マルチプレクサはマルチタップ遅延ライン（ＭＴＤＬ）に結合される。ＭＴＤＬは、２つのマルチプレクサによって選択可能な複数の遅延された信号を提供する。フィードバック選択信号に結合された第１マルチプレクサは、フィードバック・クロック信号を選択する。出力選択信号に結合された第２マルチプレクサは、ＤＬＬ出力信号を選択する。制御モジュールは、出力信号の遅延をプログラム又は設定するために使用できる遅延選択信号などのような、他の信号を受け取ることができる。更に、複数の出力信号をＤＬＬから得ることができる。【選択図】図１ａ
2007202149.tif 000002
【特許請求の範囲】
【請求項１】
遅延ロック・ループであって、
位相信号を受け取るように結合されるものであり、前記位相信号を用いて選択信号及びオフセット信号を生成する制御モジュールと、
基準信号と結合されるものであり、複数の遅延タップを提供するものであり、それによって複数の遅延された信号を提供するマルチタップ遅延ラインと、
前記オフセット信号と前記複数の遅延された信号とを受け取るように結合されるものであり、前記オフセット信号を用いて、前記複数の遅延された信号から、第１の遅延された信号を、フィードバック信号として選択する第１のマルチプレクサと、
前記選択信号と前記複数の遅延された信号とを受け取るように結合されるものであり、前記選択信号を用いて、前記複数の遅延された基準クロック信号から、第２の遅延された信号を、第１の出力信号として選択する第２のマルチプレクサと
を備える遅延ロック・ループ。
【請求項２】
請求項１に記載の遅延ロック・ループであって、前記基準信号と前記フィードバック信号とを受け取るように結合された位相検出器を更に備え、前記位相検出器は、前記基準信号と前記フィードバック信号との位相差を測定することによって前記位相信号を生成する、遅延ロック・ループ。
【請求項３】
請求項１に記載の遅延ロック・ループであって、π相検出信号と結合され、それにより、前記フィードバック信号が前記基準信号の位相から約πの位相のところで整合しているときにそのことを検出する、遅延ロック・ループ。
【請求項４】
請求項１に記載の遅延ロック・ループであって、ロック検出信号を生成し、前記ロック検出信号は、前記出力が正しい位相にあることを示す、遅延ロック・ループ。
【請求項５】
請求項１に記載の遅延ロック・ループであって、前記制御モジュールは、複数の出力信号を提供するようにプログラム可能であり、前記制御モジュールは、前記第１の出力信号の位相遅延をプログラムするように遅延選択信号と結合される、遅延ロック・ループ。
【請求項６】
請求項１に記載の遅延ロック・ループであって、前記位相信号、前記制御信号、前記オフセット信号及び前記フィードバック信号が、少なくとも２つの位相成分を含み、前記少なくとも２つの位相成分は、ゼロ相成分及び２π相成分を含む、遅延ロック・ループ。
【請求項７】
請求項６に記載の遅延ロック・ループであって、前記第２のマルチプレクサは論理回路と結合され、前記論理回路は、π／２の位相シフトを有する第２の出力信号を提供するように数学演算を実施する、遅延ロック・ループ。
【請求項８】
請求項６に記載の遅延ロック・ループであって、前記位相信号がアップ成分及びダウン成分を更に含み、前記アップ成分及びダウン成分は、前記位相信号に対する制御モジュールの応答を決定するものであり、前記応答は、制御信号の位相を増加させることと、制御信号の位相を減少させることと、制御信号の位相を維持することとを含むリストから選択される、遅延ロック・ループ。
【請求項９】
請求項１に記載の遅延ロック・ループであって、前記マルチタップ遅延ラインは、複数の相互接続されたインバータを含み、それぞれのインバータは、受け取った信号を遅延し、遅延された信号を、前記複数の遅延タップのうちの１つのタップで出力する、遅延ロック・ループ。
【請求項１０】
請求項１に記載の遅延ロック・ループであって、前記マルチタップ遅延ラインは、複数の遅延セルを含み、それぞれの遅延セルは、受け取った信号を遅延し、遅延された信号を、前記複数の遅延タップのうちの１つのタップで出力する、遅延ロック・ループ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に遅延ロック・ループに関し、より詳細には、遅延を選択可能な遅延ロック・ループに関する。
【背景技術】
【０００２】
米国政府は、国防脅威削減局（Ｄｅｆｅｎｓｅ  Ｔｈｒｅａｔ  Ｒｅｄｕｃｔｉｏｎ  Ａｇｅｎｃｙ）によって授与された契約番号ＤＴＲＡ０１−０３−Ｄ−０００１８及び納入番号ＤＴＲＡ０１−０３−Ｄ−００１８−０００３に従って、本発明におけるある種の権利を獲得している。
【０００３】
同期システムは、内部クロック信号と外部クロック信号とを同期するために、しばしば位相ロック・ループ（ＰＬＬ）及び遅延ロック・ループ（ＤＬＬ）を使用する。ＰＬＬは、名前が暗示するように、出力信号を外部信号と同期する。ＰＬＬは、外部信号を入力信号として受け取り、出力信号を生成する。出力信号は、チャージ・ポンプや電圧制御発振器を含む諸要素の組合せによって生成される。しかし、出力信号は、入力信号と同じ信号ではない。出力信号は、入力信号の周波数と同じ（又はその周波数の倍数）を有するように設計された生成された信号である。
【０００４】
一方、ＤＬＬは、入力信号を遅延することによって出力信号を同期する。出力信号は、入力信号の遅延されたものである。入力信号は、出力信号が所望の位相にあるものとなるように、遅延される。例えば、特定用途向け集積回路（ＡＳＩＣ）は、ＤＬＬを使用し、それにより、プロセッサからの入来データ・ストリームを、そのプロセッサと関連するクロック信号と同期することができる。データ・ストリームとクロック信号は、しばしば、ＡＳＩＣで同時に受け取られない。例えば、受け取られたクロックは、受け取られたデータ・ストリームより１周期の何分の１か進んでいる可能性がある（伝送遅延による）。データ・ストリームを正しく処理するために、ＡＳＩＣは、受け取られたデータ・ストリームとクロックとが同相であることを必要とし得る。ＡＳＩＣは、受け取られるクロック信号が遅延されてデータ・ストリームと同相となるように、ＤＬＬを使用してクロック信号を遅延することができる。しかし、他のＡＳＩＣ設計では、９０°などのような位相差が望ましい場合もある。下流の回路は、例えば、そのような位相差を使用して、受け取られたデータを再調時することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のＤＬＬに対する１つの制限は、限られた数の使用可能な遅延時間又は位相を提供することができるにすぎないことである。所与のＤＬＬでは、例えば、４分の１位相の位相遅延増分のみが使用可能であるにすぎない可能性がある。また、従来のＤＬＬでは、遅延増分の数を増やすと、ＤＬＬに伴うオーバーヘッド（例えば、サイズ、電力消費など）が増大するおそれがある。
【０００６】
また、従来のＤＬＬは、容易にプログラム可能でないため、制限のあるものとなる。ＤＬＬを使用する回路は、応用分野に特有である信号の位相や遅延についての諸要件を有する可能性がある。例えば、上述のＡＳＩＣでは、異なる応用分野向けにＡＳＩＣを再プログラムすることが必要とされることも、ＡＳＩＣの遅延要件が変化することも、特定の遅延時間をもつ新しいＤＬＬを作製することが必要とされることも、あり得る。
【０００７】
従って、改良されたＤＬＬが求められている。
【課題を解決するための手段】
【０００８】
遅延ロック・ループ（ＤＬＬ）、及び動作の方法が提示される。
【０００９】
一実施形態では、ＤＬＬが、位相検出信号と結合された制御モジュールを含む。制御モジュールは、位相検出信号を使用して、フィードバック選択信号及び出力選択信号を生成する。フィードバック選択信号及び出力選択信号は、マルチタップ遅延ライン（ＭＴＤＬ）と結合された２つのマルチプレクサと結合される。ＭＴＤＬは、その２つのマルチプレクサによって選択可能である複数の遅延された信号を提供する。遅延された信号は、基準クロック信号の様々な位相を表すことができる。第１のマルチプレクサは、フィードバック選択信号を使用して、１つの遅延された信号をフィードバック・クロック信号として選択する。第２のマルチプレクサは、出力選択信号を使用して、１つの遅延された信号をＤＬＬ出力信号として選択する。
【００１０】
他の実施形態では、ＤＬＬがフィードバック・クロック信号のπ相（又はπ相の奇数倍）にロック・オンしないようにするために、ＤＬＬがπ相検出信号と結合される。また、ＤＬＬは、出力信号の精度を決定するためにＤＬＬの内部回路及び外部回路で使用することができるロック検出信号を生成することができる。
【００１１】
他の実施形態では、制御モジュールがプログラム可能であり、その結果として、ユーザは、出力信号の遅延や位相を設定することができる。遅延選択信号を使用して制御モジュールをプログラムすることができる。
【００１２】
更に別の実施形態では、位相検出信号、フィードバック選択信号、出力選択信号が、１つより多くの成分を含むことができる。これらの成分は、ゼロ相成分や２π相成分などのような位成分とすることができる。ゼロ相成分及び２π相成分をＤＬＬ内の論理回路で使用して、数学演算を実施することができる。これらの数学演算は、任意の数の計算可能な出力信号位相を提供することができる。更に、インバータをＤＬＬの１又は複数の出力信号に追加して、様々な位相を有する使用可能な出力信号の数を増大することができる。
【００１３】
幾つかの実施形態について、下記で添付の図面と関連して述べる。様々な図において同様の符号は同様の要素を指す。
【発明を実施するための最良の形態】
【００１４】
選択可能な遅延を有する遅延ロック・ループ（ＤＬＬ）が提示される。ＤＬＬは、入力基準クロック信号を様々な方法で遅延することができる。遅延された基準クロック信号は、ＤＬＬの出力信号として所望の位相が達成されるように遅延される。基準クロック信号を遅延する一実施形態では、ＤＬＬは制御モジュールを含み、制御モジュールは、動作時に、受け取られた位相検出信号を使用してフィードバック選択信号及び出力選択信号を導出する。フィードバック選択信号及び出力選択信号は、適切なフィードバック・クロック信号及び出力信号を選択するために、マルチタップ遅延ライン（ＭＴＤＬ）と結合された２つの別個のマルチプレクサ（ＭＵＸ）によって使用される。フィードバック・クロック信号は、フィードバック・クロック信号と基準クロック信号との位相差を検出するために、位相検出器によって使用される。ＭＴＤＬは、基準クロック信号を受け取り、複数の遅延された信号を両方のＭＵＸへ送り、その結果として、ＭＴＤＬは「タップ」され、それによってフィードバック・クロック信号と出力信号との両方を提供することができる。出力信号は、遅延された基準クロック信号である。
【００１５】
第２の実施形態では、ＤＬＬは、入力遅延選択信号を使用することによって遅延時間を決定することにより、基準信号を遅延することができる。制御モジュールから出力された出力選択信号が、出力信号の所望の遅延を反映するように、遅延選択信号を制御モジュールと結合することもできる。遅延選択信号を使用することにより、制御モジュール、従ってＤＬＬは、所望の遅延又は位相を有する基準クロック信号を出力するようにプログラム可能である。
【００１６】
第３の実施形態では、選択信号、オフセット信号、及びフィードバック信号は、基準信号の様々な位相を表す１つより多くの成分を含むことができる。これらの様々な成分を使用することにより、異なる遅延又は位相を有する複数の出力信号を提供するために数学演算を論理回路で実施することができる。
【００１７】
次に図１ａを参照する。ＤＬＬ９は、基準クロック信号（ＲＥＦＣＬＫ）とフィードバック・クロック信号（ＦＢＫＣＬＫ）とをそれぞれの信号ライン２０及び２２で受け取る。ＤＬＬ９からの出力は、信号ライン２３上の出力信号（ＯＵＴＰＵＴ０）である。ＤＬＬ９内では、ＲＥＦＣＬＫ及びＦＢＫＣＬＫが位相検出器５０へ伝えられる。位相検出器５０は、信号ライン２４ａ及び２４ｂ上の位相検出信号（ＰＨＡＳＥＤＥＴ）を生成する。信号ライン２４ａ及び２４ｂは、ＰＨＡＳＥＤＥＴのそれぞれのアップ成分及びダウン成分を搬送する。
【００１８】
制御モジュール２００は、ＰＨＡＳＥＤＥＴを受け取るように結合され、信号ライン２５上にフィードバック選択信号（ＦＢＫＳＥＬ）、および信号ライン２６上に出力選択信号（ＯＵＴＳＥＬ）を生成する。ＭＴＤＬ１００と結合されたフィードバックＭＵＸ１５０ａは、ＦＢＫＳＥＬを受け取り、ＦＢＫＣＬＫを生成する。ＭＴＤＬ１００と結合された出力ＭＵＸ１５０ｂは、ＯＵＴＳＥＬを受け取り、ＯＵＴＰＵＴ０を生成する。
【００１９】
ＭＴＤＬ１００は、ＲＥＦＣＬＫと結合され、複数の遅延された信号（即ち、遅延されたＲＥＦＣＬＫ）をＭＵＸ１５０ａ及び１５０ｂへ送る。信号ライン２７ａ及び２７ｂは、遅延されたＲＥＦＣＬＫ信号を搬送する。多数の遅延されたＲＥＦＣＬＫ信号を、信号ライン２７ａ及び２７ｂ上で得ることができる。それぞれの遅延されたＲＥＦＣＬＫ信号は、ＭＵＸ１５０ａ及び１５０ｂに結合され、ＭＵＸ１５０ａ及び１５０ｂによって選択可能とすることができる。
【００２０】
動作時に、ＤＬＬ９は、ＲＥＦＣＬＫとＦＢＫＣＬＫとを比較するために位相検出器５０を使用し、２つの信号が同相であるかどうか判定する。位相検出器５０出力、即ちＰＨＡＳＥＤＥＴは、ＲＥＦＣＬＫとＦＢＫＣＬＫとが同相であるかどうか、又はＲＥＦＣＬＫがＦＢＫＣＬＫより進んでいるか遅れているかを示す信号である。上述のように、ＰＨＡＳＥＤＥＴは、図１ａに示されているようにアップ成分とダウン成分とを含むことができる。アップ成分は、ＤＬＬ９がＦＢＫＣＬＫの遅延を増大するべきであることを示すことができ、ダウン成分は、ＤＬＬ９がＦＢＫＣＬＫの遅延を減少させるべきであることを示すことができる。
【００２１】
ＰＨＡＳＥＤＥＴを受け取ったことに応答して、制御モジュール２００はＦＢＫＳＥＬ及びＯＵＴＳＥＬを生成して、ＭＵＸ１５０ａ及び１５０ｂが、ＦＢＫＣＬＫ及びＯＵＴＰＵＴ０に対して適切な遅延されたＲＥＦＣＬＫを選択するようにする。ＭＵＸ１５０ａ及び１５０ｂは、従来のマルチプレクサとすることも、また、使用可能な信号のアレイから適切な信号を選択するために使用される何らかの他のタイプの論理回路とすることもできる。更に、ＭＵＸ１５０ａ及び１５０ｂから選択されるＦＢＫＣＬＫ及びＯＵＴＰＵＴ０は、必ずしも同じでなくてもよい。ＤＬＬ９はＲＥＦＣＬＫを監視するので、ＦＢＫＣＬＫは、ＲＥＦＣＬＫと同相となるように遅延させるべきである。しかし、ＯＵＴＰＵＴ０は、ＲＥＦＣＬＫを遅延したものとすることができる。
【００２２】
ＲＥＦＣＬＫに関連するＯＵＴＰＵＴ０の遅延は、応用分野に特有のものとすることも、また、制御モジュール２００内にプログラムすることもできる。遅延選択信号（ＤＥＬＡＹＳＥＬ）を使用して制御モジュールをプログラムして、ＯＵＴＳＥＬの値を増大又は減少させるようにすることができる。ＤＥＬＡＹＳＥＬは、ユーザによるプログラムされた時間を表すことができる。ＭＵＸ１５０ｂは、プログラムされた時間に基づいて、ＲＥＦＣＬＫに対してより長い又はより短い遅延時間をそれぞれ選択することになる。このプログラム可能な構成は、ＲＥＦＣＬＫを遅延するための第２の方法を提供する。ＤＥＬＡＹＳＥＬについては、図１ｂに関連して詳細に述べる。
【００２３】
幾つかの応用分野は、入力ＲＥＦＣＬＫに対して特定の遅延時間を必要とする場合があるので、遅延されたＯＵＴＰＵＴ０（即ち、ＲＥＦＣＬＫの入力と異なる位相にあるＲＥＦＣＬＫ）を生成することが望ましい場合がある。例えば、データ処理回路は、入来データの２つの異なるストリームを同期するようにＤＬＬ９を使用し得る。両方のデータ・ストリームは、同じ周波数を有し得るが、既知の位相差だけ互いにオフセットされる。ＤＬＬ９は、データ・ストリームの一方のものをオフセットして、その結果として、両方のデータ・ストリームが互いに同期するか、又は所望の位相差にあるようにするように、プログラムしてその後に使用することができる。
【００２４】
上述のように、ＭＴＤＬ１００は、複数の遅延された信号を提供することができる。その複数の遅延された信号のうちのそれぞれの遅延された信号は、遅延されたＲＥＦＣＬＫである。構成によっては、ＭＴＤＬ１００から使用可能な出力信号のうちの幾つかのみを使用する。ＦＢＫＣＬＫについて分解能がそれほど重要でない場合、例えば信号ライン２７ａは、５ビット数を表すことができる。しかし、信号ライン２７ａは、７ビット数を表し得る。信号ライン２７ａ及び２７ｂは、より大きい又はより小さいビット数を表すこともできる。
【００２５】
ＤＬＬ９の遅延の最大分解能は、信号ライン２７ａ及び２７ｂでの使用可能な遅延された信号の数によって設定される。例えば、ＭＴＤＬ１００が６０個のタップを有する場合、６０個の位相を使用可能とすることができる。０から３πの位相遅延範囲に対して６０個のタップを使用することができる。ＭＴＤＬ１００の各タップは、従って、９°又はπ／２０の位相遅延を表すことになる。タップの数を増大することにより、分解能を増大することができ、また、位相遅延範囲を増大することができる。一方、タップの数を減少させることにより、分解能を減少させることができる。
【００２６】
図１ａにおけるＤＬＬ９の例に対する代替例として、図１ｂにおけるＤＬＬ１０を使用してＲＥＦＣＬＫを遅延することもできる。この実施形態におけるＤＬＬ１０は、ＤＬＬ９のすべての構成要素（即ち、ＭＵＸ１５０ａ及び１５０ｂ、ＭＴＤＬ１００、制御モジュール２００）を維持するが、信号のうちの幾つかに対する追加コンポーネントが付加される。また、信号ライン３０及び３１上のπ検出（ＰＩＤＥＴＥＣＴ）、並びに信号ライン３２上のＤＥＬＡＹＳＥＬという信号も追加される。ＤＬＬ１０は、信号ライン２３ａ〜ｄに複数の出力信号（ＯＵＴＰＵＴ０、ＯＵＴＰＵＴＰＩ／２、ＯＵＴＰＵＴＰＩ、ＯＵＴＰＵＴ３ＰＩ／４）を出力する。その複数の出力信号は、ＲＥＦＣＬＫを遅延する第３の方法を提供する。ユーザは、ＯＵＴＰＵＴＰＩ／２を出力として選択することができる。ＯＵＴＰＵＴＰＩ／２は、ＲＥＦＣＬＫに比べてπ／２の位相差を有する。その複数の出力信号に加えて、ＤＬＬ１０はまた、信号ライン３４にロック検出信号（ＬＯＣＫＤＥＴ）を出力する。
【００２７】
制御モジュール２００は、この実施形態では、信号ライン２４ａ〜ｄ上でＰＨＡＳＥＤＥＴを受け取る。信号ライン２４ａ〜ｄは、ＰＨＡＳＥＤＥＴの幾つかの成分を搬送する。信号ライン２４ａ及び２４ｃは、アップ・パルスを搬送し、信号ライン２４ｂ及び２４ｄは、ダウン・パルスを搬送する。更に、信号ライン２４ａ及び２４ｂは、ＰＨＡＳＥＤＥＴのゼロ相成分を搬送し、信号ライン２４ｃ及び２４ｄは、ＰＨＡＳＥＤＥＴの２π相成分を搬送する。ＰＨＡＳＥＤＥＴのゼロ相成分及び２π相成分、並びに他の信号は、制御モジュール２００にとって使用可能とされ、その結果として、制御モジュール２００は、ＯＵＴＳＥＬの所望の位相成分を導出することができる。ＯＵＴＳＥＬの所望の位相成分を導出することについては、図６を参照して述べる。
【００２８】
アップ成分及びダウン成分、並びにＰＨＡＳＥＤＥＴのゼロ相成分及び２π相成分は、異なる信号として見ることができる。この点に関して、ＰＨＡＳＥＤＥＴは、単一の位相検出信号か又は４つの異なる位相検出信号として、見ることができる。ＰＨＡＳＥＤＥＴは、１又は複数のビットがアップ成分やダウン成分などのような成分を表すものである１つのマルチビット信号とすることができる。代替例として、４つの異なる単一ビット信号又はマルチビット信号がＰＨＡＳＥＤＥＴを構成することができる。更に他の実施形態では、ＰＨＡＳＥＤＥＴが、ＲＥＦＣＬＫの遅延又は位相を更に特徴付けるために追加の成分を含むことができる。そのような特徴付けには、ＰＨＡＳＥＤＥＴのπ／２相成分やπ／４相成分が含まれ得る。
【００２９】
ＰＨＡＳＥＤＥＴを生成するために、位相検出器５０は、ＲＥＦＣＬＫ及びＦＢＫＣＬＫを評価するための様々な論理回路を備えることができる。図２ａでは、位相検出器５０を作るために２つの論理回路が使用される。この実施形態では、Ｄフリップフロップ５２及び５４が、信号ライン２０及び２２ａ上のＦＢＫＣＬＫ及びＲＥＦＣＬＫと結合される。これらのフリップフロップの双方が、信号ライン２４ａ及び２４ｂにＰＨＡＳＥＤＥＴのゼロ相のアップ成分及びダウン成分を出力する。Ｄフリップフロップ５２は、ＲＥＦＣＬＫ及びＦＢＫＣＬＫを追跡し、ＲＥＦＣＬＫがＦＢＫＣＬＫより進んでいるかどうか評価する。Ｄフリップフロップ５２が「ハイ」になると、ＲＥＦＣＬＫがＦＢＫＣＬＫより進んでいることを示す。それとは対照的に、Ｄフリップフロップ５４はＲＥＦＣＬＫ及びＦＢＫＣＬＫを追跡し、ＦＢＫＣＬＫがＲＥＦＣＬＫより進んでいるとき「ハイ」になる。Ｄフリップフロップ５２及び５４の出力は、信号ライン２４ａ及び２４ｂ上のＰＨＡＳＥＤＥＴを調整するようにバッファと結合させることができる。
【００３０】
一方、Ｄフリップフロップ５６及び５８は、信号ライン２４ｃ及び２４ｄにＰＨＡＳＥＤＥＴの２π相のアップ成分及びダウン成分を出力する。Ｄフリップフロップ５６及び５８は信号ライン２０及び２０ｂのＦＢＫＣＬＫ及びＲＥＦＣＬＫとそれぞれ結合される。Ｄフリップフロップ５６が「ハイ」になったとき、ＲＥＦＣＬＫがＦＢＫＣＬＫより進んでいる。Ｄフリップフロップ５８が「ハイ」になったとき、ＦＢＫＣＬＫがＲＥＦＣＬＫより進んでいる。
【００３１】
上述のように、位相検出器５０を作るために、論理回路の多数の異なる構成を配することができる。耐放射線型（radiation hardened）位相検出器５０は、図２ａの例示の位相検出器５０に冗長のＤフリップフロップを追加することによって作ることができる。これらの追加のＤフリップフロップは、多数決構成（voter configuration）になるように、Ｄフリップフロップ５２〜５８と結合させることができる。Ｄフリップフロップ５２〜５８の多数決構成は、位相信号のゼロ相成分及び２π相成分のアップ成分及びダウン成分のみを、冗長Ｄフリップフロップの多数が正しい出力信号に対して「合意」したときに、生成することを可能にする。シングル・イベント・アップセット（ＳＥＵ）などのような放射イベントがこれらの冗長フリップフロップの１つで発生する場合、冗長のＤフリップフロップのすべてが合意するまで位相信号を移行させないことによって、誤った位相信号を防止することができることになる。
【００３２】
図１ｂに戻ると、ＰＨＡＳＥＤＥＴを受け取ることに加えて、制御モジュール２００はまた、ＰＩＤＥＴＥＣＴ及びＤＥＬＡＹＳＥＬを受け取るように結合される。ＰＩＤＥＴＥＣＴは、ＦＢＫＣＬＫがＲＥＦＣＬＫのπ相に又はπ相の奇数倍にロック・オンされたときに、制御モジュール２００、またＤＬＬ１０がそれを検出することを可能にする。ＰＩＤＥＴＥＣＴを使用することにより、制御モジュール２００が、ＲＥＦＣＬＫに、そのπ相でロック・オンすることが防止される。ＰＩＤＥＴＥＣＴがない場合、ＤＬＬ１０は、ＲＥＦＣＬＫのπ相にロック・オンしたときにＰＨＡＳＥＤＥＴのアップ成分又はダウン成分を送ることができない。図１ｂの実施形態では、ＰＩＤＥＴＥＣＴは、２つの成分、即ち、信号ライン３０上のゼロ相成分と、信号ライン３１上の２π相成分とを有する。
【００３３】
ＰＩＤＥＴＥＣＴを生成するための回路６０が図２ｂに示されている。２つのＸＯＲ論理ゲート６２及び６４が、ＦＢＫＣＬＫ及びＲＥＦＣＬＫと結合される。ＸＯＲゲート６２は、信号ライン２０及び２２ｄと結合され、信号ライン３０上のＰＩＤＥＴＥＣＴのゼロ相成分を生成する。ＸＯＲゲート６４は、信号ライン２０及び２２ｂと結合され、信号ライン３１上のＰＩＤＥＴＥＣＴの２π相成分を生成する。動作時に、ＲＥＦＣＬＫとＦＢＫＣＬＫの位相がずれているとき、それぞれの信号ライン３０及び３１上のＰＩＤＥＴＥＣＴのゼロ相成分及び２π相成分が「ハイ」になる。回路６０は、位相検出器５０内または制御モジュール２００などのようなＤＬＬ１０の別の構成要素内に含めることができる。幾つかの実施形態では、ＰＩＤＥＴＥＣＴは、位相許容範囲を有することができる。即ち、ＦＢＫＣＬＫが、ＲＥＦＣＬＫの範囲内又はＲＥＦＣＬＫのπ相から数度ずれているときでも、π相にロック・オンされていることを示すことができる。
【００３４】
再び図１ｂに戻ると、上述のように、ＤＥＬＡＹＳＥＬは、ＯＵＴＳＥＬの位相オフセット又は遅延を決定するために使用される。ＤＥＬＡＹＳＥＬは、ＯＵＴＳＥＬを生成するようにＦＢＫＳＥＬに加えられるマルチビット信号とすることができる。他の実施形態では、ＤＥＬＡＹＳＥＬは、他の回路から送るか又はディップ・スイッチによってプログラム可能なものとすることができる。ユーザは、適切な遅延を得るために、ディップ・スイッチのディップ・ピンを設定することによって、ＤＥＬＡＹＳＥＬを入力することができる。ＤＥＬＡＹＳＥＬを提供するように、多くの他のタイプのソフトウェアやハードウェアを実装することができる。
【００３５】
また、制御モジュール２００からの出力として、信号ライン３４上のＬＯＣＫＤＥＴが示されている。ＬＯＣＫＤＥＴは、ＯＵＴＰＵＴ０がＲＥＦＣＬＫにロック・オンされているか否かについて状態情報を提供するために、ＤＬＬ１０内の内部回路及び／又は外部回路と結合される。ロックが検出された場合、ＯＵＴＰＵＴ０（並びにＯＵＴＰＵＴＰＩ／２、ＯＵＴＰＵＴＰＩ、ＯＵＴＰＵＴ３ＰＩ／４）を正確なものとして見ることができ、そのＯＵＴＰＵＴ０は、正しい又は所望された位相にある。代替の実施形態では、ＬＯＣＫＤＥＴは、ＭＵＸ１５０ｂなどのようなＤＬＬ１０内の他のモジュールから出力することができる。
【００３６】
図１ｂでは、信号ライン２２ａ及び２２ｂがそれぞれＦＢＫＳＥＬ信号のゼロ相成分及び２π相成分を搬送する。信号ライン２２ａ及び２２ｂはそれぞれ、ＦＢＫＣＬＫのゼロ相成分及び２π相成分を搬送する。信号ライン２６ａ及び２６ｂはそれぞれ、ＯＵＴＳＥＬのゼロ相成分及びπ／２相成分を搬送する。信号ライン２７ａ及び２７ｂは、ＭＴＤＬ１００から出力された遅延されたＲＥＦＣＬＫのゼロ相成分を搬送する。信号ライン２７ｃ及び２７ｄはそれぞれ、遅延されたＲＥＦＣＬＫの２π相成分及びπ／２相成分を搬送する。
【００３７】
図１ｂの例示されている実施形態は、所望の出力を達成するために、ＤＬＬ９又は１０内の信号の様々な組合せを含むように再構成することができる。図１ａ及び図１ｂにおける例示的な実施形態は、これらの実施形態だけに限定されるものとして見るべきではない。また、多くの信号経路を遅延バッファやインバータと組合せて、ＯＵＴＰＵＴ０、ＯＵＴＰＵＴＰＩ／２、ＯＵＴＰＵＴＰＩ、ＯＵＴＰＵＴ３ＰＩ／４を最適化することができる。
【００３８】
ＭＴＤＬ１００及びＭＵＸ１５０ａ及び１５０ｂは、ＦＢＫＣＬＫ、ＯＵＴＰＵＴ０、ＯＵＴＰＵＴＰＩ／２を生成するために、ＯＵＴＳＥＬのそれぞれのゼロ相成分及び２π相成分並びにＯＵＴＳＥＬのゼロ相成分及びπ／２相成分を使用する。ＭＴＤＬ１００例が図３ａに示されている。ＭＴＤＬ１００は、一連の遅延セル１０５ａ〜ｐを含む。ＲＥＦＣＬＫは、ＭＴＤＬ１００内へ入力され、タップ１１０ａ〜ｐが遅延されたＲＥＦＣＬＫを出力する。それぞれの遅延セルは、１つの入力と、少なくとも１つの出力とを有する。遅延セル１０５ａ〜ｐは、それぞれ、クロック信号を受け取るように結合される。例えば、遅延セル１０５ａは、ＲＥＦＣＬＫを受け取るように結合される。一方、遅延セル１０５ｂは、遅延セル１０５ａからの出力を受け取るように結合される。遅延セル１０５ａ〜ｐは、出力としてそれぞれのタップ１１０ａ〜１１０ｐを提供する。タップ１１０ａ〜１１０ｄは、信号ライン２７ａ〜ｄを介してＭＵＸ１５０ａ及び１５０ｂと結合される。
【００３９】
動作時に、ＭＴＤＬ１００がＲＥＦＣＬＫを受け取ったとき、その信号が遅延セル１０５ａによって遅延される。遅延の量は、ＭＴＤＬ１００内の遅延セルの設計によって決定される。遅延されたＲＥＦＣＬＫは、タップ１１０ａ部で得ることが可能であり、また、遅延セル１０５ｂへも送られる。同じようにして、遅延セル１０５ｂは、遅延された信号を更に遅延する。その更に遅延された信号は、タップ１１０ｂ部で得ることが可能であり、また、遅延セル１０５ｃへも送られる。遅延セルを追加することによって複数の遅延信号を得ることが可能になる。図３ａの実施形態では、１６個の遅延セルが示されている。しかし、応用分野に応じて、より多数の又はより少数の遅延セルを実装することができる。例えば、より多くの遅延セルを使用して、ゼロから３πの範囲で使用可能な位相遅延を提供することができる。
【００４０】
図３ａでは、ＲＥＦＣＬＫがＭＴＤＬ１００に結合されて示されているが、他の構成では、他の入力クロック信号を使用することもできる。ＭＴＤＬ１００は、ＲＥＦＣＬＫを受け取ることだけに限定されない。また、様々なバッファ又は遅延要素を使用して、ＲＥＦＣＬＫ又は他の入力クロック信号をＭＴＤＬ１００と結合することができる。
【００４１】
例示の遅延セル１０５ａが図３ｂに示されている。遅延セル１０５ａは、バッファ・ディレイ１１２、１１４、及びコンデンサ１１６を備える。幾つかの実施形態では、コンデンサ１１６は、例えば、内在的な寄生容量又は別個の構成要素とすることができる。バッファ・ディレイ１１２は、バッファ・ディレイ１１４の入力、コンデンサ１１６、及び出力１１８と結合された出力を有する。バッファ・ディレイ１１４は、タップ１１０ａと結合された出力を有する。コンデンサ１１６はＶｓｓと結合される。
【００４２】
入力クロック信号（即ちＲＥＦＣＬＫ）は、入力部１２０で入力される。バッファ・ディレイ１１２は、入力クロック信号を遅延し、その信号をバッファ・ディレイ１１４へ出力する。遅延されたクロック信号は、タップ１１０ａ部で出力される。また、バッファ・ディレイ１１２からの遅延された信号は、後続の遅延セルによって更に遅延させることができるように、出力１１８へ送られる。
【００４３】
多くの他のタイプの遅延セルをＭＴＤＬ１００で使用することができる。遅延バッファやコンデンサの異なる構成を有する遅延セルを実装することもできる。代替例として、従来のデジタル回路内で見られるものなどのような様々な回路要素を使用して、ＲＥＦＣＬＫを遅延することができる。
【００４４】
遅延されたＲＥＦＣＬＫが導出されると、ＭＵＸ１５０ａ及び１５０ｂを使用して、遅延されたＲＥＦＣＬＫを選択することができる。ＭＵＸ１５０ａ、１５０ｂの例が図４に示されている。ＭＵＸ１５０ａ、１５０ｂは、ＭＴＤＬ１００の出力信号１１０ａ〜ｐ（信号ライン２７ａ〜ｄを介して）を受け取るように結合される。更に、ＭＵＸ１５０ａ、１５０ｂは入力信号１５２及び１５４を受け取り、それらの入力信号は、それぞれ２進コンポーネント１５２ａ〜ｄ及び１５４ａ〜ｄへ分配される。ＭＵＸ１５０ａ、１５０ｂからの出力は、出力１５６及び１５８である。信号ライン上の第１の入力信号１５２は、出力１５６部で、遅延されたＲＥＦＣＬＫの１つの位相成分（即ち、ゼロ相）を選択するために使用される。信号ライン１５４上の第２の入力信号１５４は、出力１５８部で、遅延されたＲＥＦＣＬＫの位相成分（即ち、π／２又は２π）を選択するために使用される。
【００４５】
ＭＵＸ１５０ａ、１５０ｂは、２×１のＭＵＸの４つのアレイ１６０〜１６６を含む。それぞれの２×１ＭＵＸは、２つの入力信号とＭＵＸ選択信号とを受け取る。ＭＵＸ選択信号は、その２つの入力信号のうちの１つを出力信号として選択するために使用される。
【００４６】
ＭＵＸの第１のアレイ１６０は、入力としてＭＴＤＬ１００の出力１１０ａ〜ｐを受け取るように結合される。信号ライン１５２及び１５４の最下位２進数（即ち、１５２ｄ、１５４ｄ）は、第１のアレイ１６０のＭＵＸ選択入力に結合される。例えば、２×１ＭＵＸ１６８の第１の対はそれぞれ、入力としてＭＴＤＬ１００の出力１１０ａ及び１１０ｂを受け取る。入力部１５２ｄの信号は、その対のうちの第１の２×１ＭＵＸによって使用されて、ＭＵＸの第２のアレイ１６２用の第１の出力が選択される。信号１５４ｄは、その対のうちの第２の２×１ＭＵＸによって使用されて、ＭＵＸの第２のアレイ１６２用の第２の出力が選択される。
【００４７】
図４の実施形態では、出力ＭＵＸ１５０ｂ用に、入力１５２をＯＵＴＳＥＬのゼロ相成分として使用することができる。次いで、入力１５４は、ＯＵＴＳＥＬのπ／２相成分として使用することができる。代替例として、フィードバックＭＵＸ１５０ａ用に、入力１５２は、入力１５２をＦＢＫＳＥＬのゼロ相成分として使用することができる。入力１５４は、ＦＢＫＳＥＬの２π相成分として使用されることになる。
【００４８】
ＭＵＸの第２のアレイ１６２は、入力１５２ｃ及び１５４ｃを介して、ＭＵＸの第１のアレイ１６０から送られた出力を選択する。次いで、ＭＵＸの第３のアレイ１６４は、入力１５２ｂ及び１５４ｄを介して、ＭＵＸの第２のアレイ１６２から送られた出力を選択する。最後に、ＭＵＸの第４のアレイ１６６は、ＭＵＸ１５０ａ、１５０ｂの出力１５６及び１５８部で得ることが可能な出力信号を選択する。
【００４９】
上述のように、ＭＵＸ１５０ａ、１５０ｂは入力１５２、１５４でＦＢＫＳＥＬまたはＯＵＴＳＥＬと結合することができる。ＦＢＫＳＥＬおよびＯＵＴＳＥＬの生成される様式を示すために、制御モジュール２００のブロック図が図５ａに示されている。制御モジュール２００は、クロック分配／バッファ・モジュール２１０、ゼロ相モジュール２２０、２π相モジュール２３０、ロック検出２４０、およびフィードバック及び出力選択モジュール２５０を備える。この例におけるこれらのモジュールの全てが信号ライン３６と結合され、この信号ライン３６は、全てのモジュールへのリセット信号を提供する。図１ａおよび１ｂには信号ライン３６を示していないが、リセット信号（ＲＥＳＥＴ）を介してＤＬＬ９または１０にリセット機能を提供することができる。
【００５０】
クロック分配／バッファ・モジュール２１０はＲＥＦＣＬＫを受け取るように結合される。クロック分配／バッファ・モジュール２１０内には、図５ｂに示された一連の相互接続されたＤフリップフロップがある。クロック分配／バッファ・モジュール２１０内のそれらのＤフリップフロップは受信したクロック信号を２で分割するように働く。従って、ＤフリップフロップはＲＥＦＣＬＫの周期を増加させる。図５ｂの例示のクロック分配／バッファ・モジュール２１０に示されているように、それぞれのＤフリップフロップはバッファまたはインバータと結合されて、ＲＥＦＣＬＫを、導出されたクロック信号へと分離するようにする。バッファ、インバータ、Ｄフリップフロップの配置および構成は、ＤＬＬ１０で用いられる信号の周波数や回路の設計パラメータにより決まる。クロック分配／バッファ・モジュール２１０からの出力は、信号ライン２１２ａ〜ｄ上の４つの導出されたクロック信号である。特定のＤＬＬの構成に応じて、導出されるクロック信号を多くすることも少なくすることもできる。
【００５１】
図５ａを再び参照する。信号ライン２１２ａ上の第１の導出されたクロック信号は、ゼロ相モジュール２２０および２π相モジュール２３０と結合される。信号ライン２１２ｂ上の第２の導出されたクロック信号、信号ライン２４２ａ上のゼロ相ロック検出信号、信号ライン２４ａ及び２４ｂ上のＰＨＡＳＥＤＥＴ、並びに信号ライン３０上のＰＩＤＥＴＥＣＴは、ゼロ相モジュール２２０と結合される。信号ライン２４２ｂ上の２π相ロック検出信号、信号ライン２４ｃ及び２４ｄ上のＰＨＡＳＥＤＥＴ、並びに信号ライン３１上のＰＩＤＥＴＥＣＴは、２π相モジュール２３０と結合される。
【００５２】
図５ｂは、ゼロ相モジュール２２０及び２π相モジュール２３０の論理図を示す。クロック分配／バッファ２１０と同様に、ゼロ相モジュール２２０は、Ｄフリップフロップ及び論理ゲートを使用して、信号ライン２４ａ及び２４ｂ上の受け取られたＰＨＡＳＥＤＥＴのゼロ相成分のアップ成分及びダウン成分を、出力２２２ａ及び２２２ｂでのアップ出力信号及びダウン出力信号へと変換する。論理ゲート及びＤフリップフロップは、受け取られたゼロ相ＰＨＡＳＥＤＥＴの成分、信号ライン２４２ａ上のゼロ相ロック検出信号、並びに信号ライン３０上のＰＩＤＥＴＥＣＴを評価するように構成される。この構成は、ＤＬＬ９又は１０がＲＥＦＣＬＫのπ相（又はπ相の奇数倍）にロック・オンされていることをＰＩＤＥＴＥＣＴが示すときに、ＤＬＬ９又は１０がアップ・パルスを送るべきであるかどうかを、決定する。例えば、位相検出器５０の出力は、ＰＨＡＳＥＤＥＴのアップのゼロ相成分もダウンのゼロ相成分も必要とされないことを、示すことができる。しかし、信号ライン３０上のＰＩＤＥＴＥＣＴは、ＤＬＬ１０がＲＥＦＣＬＫのπ相にロック・オンされていることを示し得る。信号ライン２２２ａは、ＰＨＡＳＥＤＥＴのゼロ相アップ成分が存在しないにもかかわらず、アップ信号を搬送することになる。これにより、最終的には、適切な遅延されたＲＥＦＣＬＫが選択されるまで、ＤＬＬ１０がＭＴＤＬ１００通してのサイクルを続けることができる。
【００５３】
また、２π相モジュール２３０の論理図が図５ｂに示されている。ゼロ相モジュール２２０の論理図と同様に、２π相モジュール２３０は、信号ライン３０及び３１上のＰＩＤＥＴＥＣＴを使用して、出力アップ・パルスを生成するべきであるかどうかを決定する。出力２３２ａ及び２３２ｂは、ＰＨＡＳＥＤＥＴのそれぞれのアップ２π相成分及びダウン２π相成分を搬送する。代替の実施形態では、ゼロ相モジュール２２０及び２π相モジュール２３０は、高速のアップ／ダウン・パルスや低速のアップ／ダウン・パルスなどのような、ＤＬＬ内に存在する他の条件を評価するために、追加の論理を含むことができる。このタイプの実装では、ＤＬＬは、制御モジュール２００によって受け取られたＰＨＡＳＥＤＥＴのアップ成分及びダウン成分の大きさに基づいて、その応答を遅く又は速くすることができる。更に別の実施形態では、クロック分配／バッファ２１０、ゼロ相モジュール２２０及び２π相モジュール２３０は、ＤＬＬの他の構成要素内に配置することができる。ゼロ相モジュール２２０及び２π相モジュール２３０は、例えば、位相検出器５０内に配置することができる。
【００５４】
再び図５ａに戻る。信号ライン２２２ａ、２２２ｂ、２３２ａ、２３２ｂは、ロック検出モジュール２４０、並びにフィードバック及び出力選択モジュール２５０と結合される。ロック検出モジュール２４０は、ゼロ相モジュール２２０及び２π相モジュール２３０から受け取られた信号がロックされているかどうかを判定する。ロック検出モジュール２４０は、信号ライン２４２ａ及び２４２ｂ上にゼロ相ロック検出信号及び２π相ロック検出信号を出力する。ロック状態を検出するために、ロック検出モジュール２４０は、ゼロ相モジュール２２０及び２π相モジュール２３０から生成された信号のアップ成分及びダウン成分が変化しているか或るいは定常状態で留まっているかを判定する回路を備えることができる。その回路はまた、信号ライン２４２ａ及び２４２ｂ上にゼロ相ロック検出信号及び２π相ロック検出信号を生成する前の、所定の時間量の後に、モジュール２２０又は２３０の状態が変化しているかどうかを判定することができる。
【００５５】
フィードバック及び出力選択モジュール２５０は、信号ライン２４２ａ及び２４２ｂ、並びに信号ライン２２２ａ、２２２ｂ、２３２ａ、２３２ｂと結合される。また、信号ライン３２上のＤＥＬＡＹＳＥＬ、並びに信号ライン２１２ｂ〜ｄ上の導出されたクロック信号を受け取る。ＤＬＬ１０の構成に応じて、より多数又は少数の信号ラインをフィードバック及び出力選択モジュール２５０と結合することができる。フィードバック及び出力選択モジュール２５０は、信号ライン２５ａ及び２５ｂ上にＯＦＦＳＥＬを、そして信号ライン２６ａ及び２６ｂ上でＯＵＴＳＥＬを出力する。
【００５６】
フィードバック及び出力選択モジュール２５０の回路図が図５ｃに示されている。フィードバック及び出力選択モジュール２５０は、Ｄフリップフロップ２５１〜２５６と、カウンタ２６１及び２６６と、２×１ＭＵＸ２７１及び２７２と、加算器２８１〜２８５と、右２回シフト（shift-right-twice）・レジスタ２８６とを備える。また、論理ＡＮＤゲート２９０を使用して、フィードバック及び出力選択モジュール２５０から出力されるＬＯＣＫＤＥＴを提供することができる。
【００５７】
動作時に、フィードバック及び出力選択モジュール２５０は、Ｄフリップフロップ２５１〜２５４を使用して、ゼロ相モジュール２２０及び２π相モジュール２３０からの信号ライン２２２ａ、２２２ｂ、２３２ａ、２３２ｂから入力位相信号をサンプリングする。Ｄフリップフロップ２５１〜２５２からの出力はカウンタ２６１と結合され、カウンタ２６１は、ゼロ相モジュール２２０から受け取られた信号に基づいてカウント・アップまたはカウント・ダウンする。カウンタ２６１は、クロック信号をそのカウンタに送るために、信号ライン２１２ｂと結合される。カウンタ２６１は、信号ライン２６２上にＦＢＫＳＥＬのゼロ相成分を出力する。図５ｃの実施形態では、ＦＢＫＳＥＬはまたＤフリップフロップ２５４及びバッファ／インバータと結合されて、ＦＢＫＳＥＬのゼロ相成分を、信号ライン２１２ｄ上の導出されたクロック信号の周期的な間隔でサンプリングするようにする。ＦＢＫＳＥＬのゼロ相成分のバッファされたバージョンのものも、出力部２５ａで出力される。この場合も、上述のように、ＤＬＬ１０内の他の回路構成要素と適合するように信号を変更するように、バッファ及び／又はフリップフロップの様々な構成を提供することができる。
【００５８】
カウンタ２６１がＤフリップフロップ２５４と結合されることに加えて、カウンタ２６１はまた、２進ロード入力２６３と結合される。カウンタ２６１は、ロード入力部２６４の信号を介して初期カウントを設定することができる。また、カウンタ２６１は、ＯＵＴＳＥＬのゼロ相成分を生成するために、加算器２８１と結合される。本質的には、ＦＢＫＳＥＬは、出力部２６ａでＯＵＴＳＥＬのゼロ相成分を生成するように、ＤＥＬＡＹＳＥＬに加算される。
【００５９】
カウンタ２６１は、Ｄフリップフロップ２５１及び２５２からアップ信号及びダウン信号を受け取ると、ＦＢＫＳＥＬの値を増分又は減分する。例えば、ゼロ相モジュール２２０から受け取られた（Ｄフリップフロップ２５１を介して受け取られた）アップ信号は、より大きな遅延をＭＴＤＬ１００から選択するべきであることを示し得る。アップ信号が受け取られたとき、カウンタ２６１は、ＦＢＫＳＥＬを「１」だけ増分する。また、受け取られたダウン信号により、ＦＢＫＳＥＬを「１」だけ減少させることができる。
【００６０】
ロード入力２６４は、カウンタ２６１の初期値を設定するために使用される。ＤＬＬ１０は、始動したとき、ＦＢＫＣＬＫがＲＥＦＣＬＫにロック・オンすることができるようにカウンタ２６１を減少させることを必要とし得る。入力２６３部で初期値をロードすることにより、カウンタ２６１は、その最も低い格納可能な値に固定されるのではなく減分することができる。カウンタ２６１が、例えば５ビット・カウンタである場合、初期値「０００１１」を入力２６３で格納することができ、その後に、ＤＬＬ１０の始動時に、ロード入力２６４部でロード信号を入力することによって、ロードすることができる。ＦＢＫＳＥＬのゼロ相成分は値「３」を有することになり、それがフィードバックＭＵＸ１５０ａによって使用され、ＦＢＫＣＬＫのゼロ相成分の、ＭＴＤＬ１００からの３番目の遅延されたＲＥＦＣＬＫを選択することになる。
【００６１】
上述のように、ＯＵＴＳＥＬのゼロ相成分は、加算器２８１部で出力される。ＤＥＬＡＹＳＥＬは、例えば値「００１００」を有することができる。ＦＢＫＳＥＬのゼロ相成分の信号値「０１０００」により、信号ライン２６ａ上にＯＵＴＳＥＬのゼロ相成分について出力信号値「０１１００」が生成されることになる。ＯＵＴＳＥＬのゼロ相成分は値「１２」を有することになり、それがフィードバックＭＵＸ１５０ｂによって使用されて、ＭＴＤＬ１００からの１２番目の遅延されたＲＥＦＣＬＫをＯＵＴＰＵＴ０として選択することになる。
【００６２】
ＤＬＬ１０の初期始動時に、制御モジュール２００はまず、ＦＢＫＳＥＬ及びＯＵＴＳＥＬのゼロ相成分を導出することになる。ＦＢＫＳＥＬ及びＯＵＴＳＥＬのゼロ相成分が計算された後、ＦＢＫＳＥＬの２π相成分及びＯＵＴＳＥＬのπ／２相成分が計算される。これは、２×１ＭＵＸ２７１及び２７２を使用して実施される。ＭＵＸ２７１及び２７２は、信号ライン２４２ａ上のロック検出信号のゼロ相と結合される。カウンタ２６６は、２６１の同じ方法で、最初にＤフリップフロップ２５１及び２５２から送られた信号を使用して、カウントすることになる。これにより、信号ライン２６７上にＦＢＫＳＥＬの２π相成分を出力するカウンタ２６６の出力が予め設定されることになる。しかし、信号ライン２４２ａ上でロック検出信号のゼロ相成分が検出されたときには、ＭＵＸ２７１及び２７２は、Ｄフリップフロップ２５３及び２５４から出力される２π相のアップ成分及びダウン成分を選択することになる。信号ライン２４２ａ上のロック検出信号のゼロ相成分が「ロック」を示したとき、カウンタ２６６は、それが受け取るアップ信号及びダウン信号に基づいて、カウント・アップ又はカウント・ダウンを続けることになる。信号ライン２４２ａ（並びに２４２ｂ）はまた、出力３４でＬＯＣＫＤＥＴを生成するために、ＡＮＤゲート２９０と結合させることができる。更に、カウンタ２７８と同じようにして、カウンタ２７５に初期カウント値をロードすることができる。
【００６３】
Ｄフリップフロップ２５５と同様に、Ｄフリップフロップ２５６は、信号ライン２１２ｄ上の導出されたクロック信号の周期的な間隔でＦＢＫＳＥＬの２π相成分をサンプリングするために、ＦＢＫＳＥＬの２π相成分と結合することができる。ＦＢＫＳＥＬの２π相成分のバッファされたバージョンのものも、出力２５ｂで出力される。ＦＢＫＳＥＬの２π相成分はフィードバックＭＵＸ１５０ａによって使用され、ＦＢＫＳＥＬの２π相成分に対して、ＭＴＤＬ１００からの遅延されたＲＥＦＣＬＫを選択する。
【００６４】
ＦＢＫＳＥＬとは対照的に、ＯＵＴＳＥＬは、２π相成分ではなくπ／２相成分を有する。ＯＵＴＳＥＬのπ／２相成分を計算するために、加算器２８２〜２８５及び右２回シフト・レジスタ２８６を介した数学演算が実施される。式全体は、以下のようなものである。
【００６５】
φ（π／２）＝（φ（２π）＋３φ（０））／４
【００６６】
上記の式で、φ（π／２）はＯＵＴＳＥＬのπ／２相成分であり、φ（２π）はＦＢＫＳＥＬの２π相成分であり、φ（０）はＦＢＫＳＥＬのゼロ相成分である。
【００６７】
加算器２８２〜２８５及び右２回シフト・レジスタ２８６を介した数学的又は代数的計算を用いて、ＯＵＴＳＥＬのπ／２相成分を信号ライン２６ｂ上で得ることが可能となる。ＯＵＴＳＥＬのπ／２相成分は出力ＭＵＸ１５０ｂによって使用され、ＯＵＴＰＵＴＰＩ／２のπ／２相成分に対して、ＭＴＤＬ１００からの遅延されたＲＥＦＣＬＫを選択する。
【００６８】
ＯＵＴＳＥＬのπ／２相成分を導出することに加えて、様々な論理回路構成を使用することによって、ＯＵＴＳＥＬに関する任意の位相成分を計算することができる。ＯＵＴＳＥＬの位相成分を導出する方法が、図６の流れ図に示されている。ブロック６０２で、異なる位相を有する少なくとも２つのフィードバック信号が、基準信号から導出される。これは、ＤＬＬ１０内で、位相検出器５０、ＭＴＤＬ１００、ＭＵＸ１５０ａ、制御モジュール２００を介してＦＢＫＣＬＫのゼロ相成分及び２π相成分を導出することによって、実施される。信号が導出されると、ブロック６０４で示されているように、論理回路を使用して、出力信号の所望の位相を計算することができる。ＤＬＬ１０におけるこの出力信号は、ＯＵＴＳＥＬのπ／２相成分である。ＤＬＬ１０で所望の位相を計算するために使用される論理回路は、加算器２８２〜２８５と右２回シフト・レジスタ２８６とを含む。
【００６９】
加算器２８２〜２８５及び右２回シフト・レジスタ２８６によって実施される計算例は、以下のように実施される。信号ライン２６２上のＦＢＫＳＥＬのゼロ相成分は、値「１１００」即ち１２を有することができる。加算器２８２は、その入力の双方が信号ライン２６２に結合されており、出力として「１１０００」を生成する。加算器２８３の出力は、その後に加算器２８４によってＦＢＫＳＥＬのゼロ相成分と加算され、出力として「１００１００」即ち３６を生成する。次いで、この信号は、ＦＢＫＳＥＬの２π相成分に加算される。この実施形態において、ＦＢＫＳＥＬの２π相成分が値「１１００００」即ち４８を有する場合、加算器２８５の出力は、「１０１０１００」即ち８４となる。次いで、右２回シフト・レジスタ２８６は、その入力信号を右に２回シフトし、出力として「１０１０１」即ち２１を生成する。加算器２８５で、右２回シフト・レジスタ２８６の出力にＤＥＬＡＹＳＥＬが加算される。
【００７０】
ＯＵＴＳＥＬのπ／２相成分の代数的計算を実現するために、多くの代替の構成を使用することができる。更に、加算器２８１〜２８５及び右２回シフト・レジスタ２８６を最適化することができる。例えば、右２回シフト・レジスタ２８６を最適化し、右に２回のシフトする演算における最下位ビットが失われないように、切り上げ又は切り下げることができる。
【００７１】
選択信号のπ／２相を提供することにより、ＤＬＬ１０は、出力２３ｃ及び２３ｄで、ＯＵＴＰＵＴＰＩ／２及びＯＵＴＰＵＴ３ＰＩ／４を提供することが可能になる。例えば、図１ｂでは、ＯＵＴＰＵＴ０は、ＲＥＦＣＬＫと同期し得る。しかし、ＯＵＴＰＵＴＰＩ／２は、π／２相だけ遅延されたＲＥＦＣＬＫ信号を提供することができる。図１ｂに示されているように、インバータ４０及び４１は、π相及び３π／４相だけ遅延されたＲＥＦＣＬＫを提供するように、ＯＵＴＰＵＴ０及びＯＵＴＰＵＴ３ＰＩ／４と結合させることができる。
【００７２】
全体として、上記の実施形態は、ＤＬＬにおいて出力信号の遅延を選択する３つの方法を示す。選択された遅延は、基準クロック信号に対して所望の位相を作るために使用することができる。一実施形態は、ＭＴＤＬ１００を使用して、フィードバックＭＵＸ１５０ａ及び出力ＭＵＸ１５０ｂに複数の遅延されたＲＥＦＣＬＫを提供する。他の実施形態では、ＤＥＬＡＹＳＥＬを使用して、ＯＵＴＳＥＬのゼロ相成分及びπ／２相成分を遅延する。ＤＥＬＡＹＳＥＬは、最終的に、出力ＭＵＸ１５０ｂによって選択された遅延されたＲＥＦＣＬＫを遅延する。第３の実施形態は、ＤＬＬの出力２３ａ〜ｄで、複数の遅延されたＲＥＦＣＬＫ（即ち、ＯＵＴＰＵＴ０、ＯＵＴＰＵＴＰＩ／２、ＯＵＴＰＵＴＰＩ、ＯＵＴＰＵＴ３ＰＩ／４）を出力する。図１ｂの実施形態では、３つの実施形態すべてが実装される。しかし、図１ａの実施形態では、ＭＴＤＬ１００を使用する実施形態だけが使用される。代替の実施形態は、ＤＬＬを最適化するために、３つの構成の様々な組合せを使用することができる。従って、例示されている実施形態は例にすぎず、本発明の範囲を限定するものと捉えるべきではないことを理解されたい。特許請求の範囲は、述べられている順序又は要素に限定される旨が述べられていない限り、述べられている順序又は要素に限定されるものと読むべきではない。従って、添付の特許請求の範囲とその均等物の範囲及び精神内に入る例のすべてが、本発明として特許請求される。
【図面の簡単な説明】
【００７３】
【図１ａ】図１ａは、遅延ロック・ループ（ＤＬＬ）のブロック図である。
【図１ｂ】図１ｂは、別のＤＬＬのブロック図である。
【図２ａ】図２ａは、位相検出器の回路図である。
【図２ｂ】図２ｂは、π相検出信号を生成するために使用される回路の回路図である。
【図３ａ】図３ａは、マルチタップ遅延ライン（ＭＴＤＬ）のブロック図である。
【図３ｂ】図３ｂは、遅延セルの回路図である。
【図４】図４は、マルチプレクサの回路図である。
【図５ａ】図５ａは、制御モジュールのブロック図である。
【図５ｂ】図５ｂは、クロック分配バッファ、ゼロ相モジュール、２π相モジュールの回路図である。
【図５ｃ】図５ｃは、フィードバック及び出力選択モジュールの回路図である。
【図６】図６は、出力信号の位相を計算する方法のブロック図である。
【図１ａ】
2007202149.tif 000003
【図１ｂ】
2007202149.tif 000004
【図２ａ】
2007202149.tif 000005
【図２ｂ】
2007202149.tif 000006
【図３ａ】
2007202149.tif 000007
【図３ｂ】
2007202149.tif 000008
【図４】
2007202149.tif 000009
【図５ａ】
2007202149.tif 000010
【図５ｂ】
2007202149.tif 000011
【図５ｃ】
2007202149.tif 000012
【図６】
2007202149.tif 000013
【外国語明細書】
2007202149000001.pdf