(57)【要約】ソース同期受信器を動作させる方法および装置。一実施形態ではソース同期受信器はクロック検出器とクロック信号バッファを備えるクロック受信器を含む。クロック検出器は第１のクロック信号を検出し、第１のクロック信号の検出に応答してクロック検出信号をアサートするように構成される。クロック・バッファは第１のクロック信号を受信し、デジタル・ロック・ループ（ＤＬＬ）回路に駆動される第２のクロック信号を生成し、第２のクロック信号は再生され、ソース同期受信器のデータ・バッファに駆動される。クロック検出信号はクロック検証回路によって受信される。クロック検証回路はクロック検出信号の受信失敗時にソース同期受信器のリセットを初期化するように構成される。ソース同期受信器のリセットはローカルに実行され、それが実装されているデバイスのコア・ロジックもデバイス上の他のソース同期ポートもリセットしない。したがって、デバイス上の他のソース同期ポートならびにコア・ロジックは通常通りオペレーションを継続することができる。本方法および装置はホット・スワップ可能なソース同期受信器を含む。
2004520649.tif 000002
【特許請求の範囲】
【請求項１】
ソース同期受信器であって、
１つまたは複数の信号ラインを介してデータを受信するように構成されたデータ・バッファと、
クロック信号バッファおよびクロック検出器を備えるクロック受信器であって、クロック信号バッファが第１のクロック信号を受信し、第１のクロック信号の受信に応答して第２のクロック信号を送るように構成され、クロック検出器が第１のクロック信号の受信に応答してクロック検出信号をアサートするように構成される、クロック受信器と、
クロック・バッファから第２のクロック信号を受信するように構成されたデジタル・ロック・ループ（ＤＬＬ）回路であって、ＤＬＬ回路が第２のクロック信号をデータ・バッファに送るように構成される、デジタル・ロック・ループ（ＤＬＬ）回路と、
クロック検出器からクロック検出信号を受信するように構成され、クロック検出信号の受信失敗に応答してソース同期受信器をリセットするように構成されるクロック検証回路と
を備えるソース同期受信器。
【請求項２】
ＤＬＬ回路がロック検出信号をアサートするように構成され、クロック検証回路がさらにクロック検証回路によるロック検出信号の受信失敗に応答してソース同期受信器をリセットするように構成される請求項１に記載のソース同期受信器。
【請求項３】
クロック検証回路がクロック検出信号とロック検出信号の両方の受信に応答してＤＬＬロック信号をアサートするように構成され、クロック検証回路がＤＬＬロック信号をデアサートすることによってソース同期受信器をリセットするように構成される請求項２に記載のソース同期受信器。
【請求項４】
ソース同期受信器をリセットすることがクロック検出器による第１のクロック信号の検出失敗に応答してクロック信号バッファを電力遮断することを含む請求項２に記載のソース同期受信器。
【請求項５】
クロック信号バッファがクロック検出器による第１のクロック信号検出に応答して電力投入される請求項４に記載のソース同期受信器。
【請求項６】
ソース同期受信器が集積回路のコア・ロジックに結合され、コア・ロジックがデータ・バッファからデータを受信するように構成される請求項２に記載のソース同期受信器。
【請求項７】
クロック検証回路がＤＬＬロック信号をコア・ロジック中の状態レジスタに送るように構成される請求項６に記載のソース同期受信器。
【請求項８】
第１のクロック信号が差動クロック信号であり、第２のクロック信号がシングルエンド・クロック信号である請求項１に記載のソース同期受信器。
【請求項９】
クロック検証回路が直列結合フリップフロップの連鎖を含み、連鎖が少なくとも２つのフリップフロップを含む請求項２に記載のソース同期受信器。
【請求項１０】
クロック検証回路が第３のクロック信号を受信するように構成され、フリップフロップの各々が第３のクロック信号を受信する請求項９に記載のソース同期受信器。
【請求項１１】
第３のクロック信号の少なくとも２つのサイクルが完了するまでＤＬＬロック信号がアサートされない請求項１０に記載のソース同期受信器。
【請求項１２】
ソース同期受信器がホット・スワップ可能であるように構成される請求項１に記載のソース同期受信器。
【請求項１３】
クロック検証回路がさらに受信器イネーブル信号をアサートするように構成される請求項１に記載のソース同期受信器。
【請求項１４】
クロック検証回路がさらにテスト・モード信号を受信するように構成され、クロック検証回路によるテスト・モード信号の受信に応答して受信器イネーブル信号がデアサートされ、クロック検証回路がテスト・モード信号の受信に応答してソース同期受信器をリセットすることを抑止される請求項１３に記載のソース同期受信器。
【請求項１５】
クロック検証回路がさらにリセット・マスク信号を受信するように構成され、クロック検証回路がリセット・マスク信号の受信に応答してソース同期受信器のリセットを抑止するように構成される請求項１に記載のソース同期受信器。
【請求項１６】
ＤＬＬ回路およびクロック検証回路がクロック検出回路による第１のクロック信号の検出失敗に応答して電力遮断される請求項１に記載のソース同期受信器。
【請求項１７】
クロック検証回路がソース同期受信器のローカル・リセットを実行するように構成される請求項１に記載のソース同期受信器。
【請求項１８】
ソース同期受信器を動作させる方法であって、
クロック検出器を用いて第１のクロック信号を検出し、
クロック信号バッファによる第１のクロック信号の受信に応答して第２のクロック信号を生成し、
デジタル・ロック・ループ（ＤＬＬ）回路を使用して第２のクロック信号を再生し、
クロック検出器からのクロック検出信号をクロック検証回路が受信し、
クロック検証回路によるクロック検出信号の受信失敗に応答してソース同期受信器をリセットすることとを含むソース同期受信器を動作させる方法。
【請求項１９】
ＤＬＬ回路がロック検出信号をアサートするように構成され、クロック検証回路がさらにクロック検証回路によるロック検出信号の受信失敗に応答してソース同期受信器をリセットするように構成される請求項１８に記載の方法。
【請求項２０】
クロック検証回路がさらにＤＬＬロック信号をアサートするように構成される請求項１９に記載の方法。
【請求項２１】
さらに、クロック検証回路によるクロック検出信号またはロック検出信号の受信失敗に応答してＤＬＬロック信号をデアサートすることを含み、前記ＤＬＬロック信号をデアサートすることによりソース同期受信器がリセットされる請求項２０に記載の方法。
【請求項２２】
さらに、クロック検証回路がＤＬＬロック信号を状態レジスタに送ることを含み、状態レジスタが集積回路のコア・ロジック中にあり、ソース同期受信器がコア・ロジックに結合された請求項２０に記載の方法。
【請求項２３】
さらに、前記ＤＬＬロック信号を第３のクロック信号の２つまたはそれ以上のクロック・サイクルだけ送ることを遅延させることを含み、クロック検証回路が少なくとも２つのフリップフロップを含む直列結合フリップフロップの連鎖を含み、フリップフロップの各々が第３のクロック信号を受信するように構成される請求項２２に記載の方法。
【請求項２４】
さらに、クロック検出器による第１のクロック信号の検出失敗に応答してクロック信号バッファを電力遮断することを含む請求項１８に記載の方法。
【請求項２５】
さらに、クロック検出器による第１のクロック信号の検出に応答してクロック信号バッファを電力投入することを含む請求項２４に記載の方法。
【請求項２６】
さらに、ＤＬＬ回路が第２のクロック信号をデータ・バッファに送ることを含み、データ・バッファが１つまたは複数のデータ・ラインを介してデータを受信するように構成される請求項１８に記載の方法。
【請求項２７】
第１のクロック信号が差動クロック信号であり、第２のクロック信号がシングルエンド信号である請求項１８に記載の方法。
【請求項２８】
さらに、クロック検証回路が受信器イネーブル信号をアサートすることを含む請求項１８に記載の方法。
【請求項２９】
クロック検証回路がテスト・モード信号の受信に応答して受信器イネーブル信号をデアサートするように構成される請求項２８に記載の方法。
【請求項３０】
さらに、前記テスト・モード信号の受信に応答してクロック検証回路によるソース同期受信器のリセットを抑止することを含む請求項２９に記載の方法。
【請求項３１】
さらに、リセット・マスク信号の受信に応答してクロック検証回路によるソース同期受信器のリセットを抑止することを含む請求項１８に記載の方法。
【請求項３２】
さらに、クロック検出器による第１のクロック信号の検出失敗に応答してＤＬＬ回路およびクロック検証回路を電力遮断することを含む請求項１８に記載の方法。
【請求項３３】
さらに、クロック検出器による第１のクロック信号検出に応答してＤＬＬ回路およびクロック検証回路を電力投入することを含む請求項３２に記載の方法。
【請求項３４】
前記ソース同期受信器をリセットすることがローカルに実行される請求項１８に記載の方法。
【発明の詳細な説明】
【０００１】
（発明の背景）
発明の分野
本発明は、電子回路に関し、より詳細には、タイミング信号を供給するためのクロック回路に関する。
【０００２】
関連技術の説明
コンピュータ・プロセッサの動作速度が増大するにつれて、ボトルネックの影響を排除または低減するためにこれらのプロセッサを実装するシステム・ボードの動作速度も増大している。１ＧＨｚに近づくプロセッサのクロック速度では、システム・ボードが１００ＭＨｚを超えるクロック速度で動作するのは珍しいことではない。
【０００３】
ソース同期入出力はデータ転送が単一のシステム・クロックに同期するときに起こる問題を排除または最小化する。ソース同期入出力ラインが使用するクロック速度はプロセッサ・クロック速度とスケーリングするので、ソース同期入出力によりシステム・ボード設計のフレキビリティの増大が可能になる。さらに、ソース同期入出力を使用すると信号ラインに関する長さ制約が排除される。
【０００４】
ソース同期データ転送では、データを転送するデバイスがクロック信号を発生し、データとともに転送する。受信デバイスはソースからクロック信号を受信し、それによってデータ転送を受信したクロックと同期させる。これによって２つのデバイス間のクロック・ラインの長さをはるかに短縮し、それによってさもなければ起こるクロック・スキューの多くを排除することができる。
【０００５】
ソース同期入出力はデータ転送が単一のシステム・クロックに同期しているときに起こるクロック・スキュー問題の最小化または排除に有用であるが、他の問題が起こる。そのような１つの問題はボード上に存在する増大した数のクロック信号が不要な電磁ノイズを生ずる際のノイズである。そのようなノイズはクロック・ジッタなど、いくつかのソース同期クロック信号の問題を引き起こす。ソース同期入出力とともに起きる問題はいくつかのデータ転送を繰り返す必要性を生じる。データ転送を繰り返すことは、いくつかの場合、データが転送されたデバイスのリセットを必要とする。この結果、ソース同期デバイスが実装されているシステムに厳しい性能ペナルティが生じる。
【０００６】
（発明の概要）
上記で概説した問題はソース同期受信器を動作させる方法および装置によって大部分が解決される。一実施態様では、ソース同期受信器はクロック検出器とクロック信号バッファを備えるクロック受信器を含む。クロック検出器は第１のクロック信号を検出し、第１のクロック信号の検出に応答してクロック検出信号をアサートするように構成される。クロック・バッファは第１のクロック信号を受信し、第２のクロック信号を生成する。第２クロック信号は、デジタル・ロック・ループ（ＤＬＬ）回路へ送られて再生され、ソース同期受信器のデータ・バッファに送られる。クロック検出信号はクロック検証回路（ｃｌｏｃｋ ｖｅｒｉｆｉｃａｔｉｏｎ ｃｉｒｃｕｉｔ）によって受信される。クロック検証回路はクロック検出信号の受信失敗時にソース同期受信器のリセットを初期化するように構成されている。ソース同期受信器のリセットはローカルに実行され、それが実装されているデバイスのコア・ロジックまたはデバイス上の他のソース同期ポートをリセットしない。したがって、デバイス上の他のソース同期ポートならびにコア・ロジックは通常通り動作を継続することができる。さらに、別のチップ上のソース同期入出力ポートへのリンクの初期化はそのチップのリセットを必要としない。したがって、ソース同期受信器はホット・スワップ環境に理想的である。
【０００７】
一実施態様のソース同期受信器はクロック回路、１つまたは複数のＤＬＬ回路、データ・バッファ、および読取りおよび書込みポインタ制御ロジックを含む。ソース同期受信器をリセットすることは、すべての状態機械（すなわちＤＬＬ回路、データ・バッファなど）の出力をアイドル状態にすること、およびコア・ロジックへのすべてのロジック・インターフェース出力を非アクティブまたはデアサート状態にすることを含む。例えば、一実施態様では、コア・ロジックへのインターフェース出力をロジック・ゼロ状態にすることを含む。リセットすることはまたソース同期受信器の様々な部分への電力を除去することを含む。
【０００８】
一実施態様では、ＤＬＬ回路はクロック検証回路によって受信されるロック検出信号をアサートするように構成されている。クロック検証回路はクロック検出信号とロック検出信号の両方を受信することに応答してＤＬＬロック信号をアサートする。ＤＬＬロック信号はソース同期受信器が実装されている集積回路（ＩＣ）のコア・ロジック中の状態レジスタに送られ、ソース同期受信器が動作していることをコア・ロジックに示す。それぞれクロック検出器またはＤＬＬ回路からのアサートされたクロック検出信号またはロック検出信号の受信失敗時、クロック検証回路はＤＬＬロック信号をデアサートし、ソース同期受信器がリセットされる（すなわちすべてのロジック回路の出力がロジック「０」にセットされる）。一実施態様では、ＤＬＬロック信号のデアサートは受信器リセット信号がアサートされることによってリセットに影響し、受信器リセット信号はロジック「０」として、またはロジック低レベル電圧としてアサートされる。クロック検証回路はまた受信器イネーブル信号をアサートするように構成され、クロック信号バッファなど様々な回路へ電源を投入させる。クロック検証回路のクロック検出回路の受信失敗時、受信器イネーブル信号はデアサートされ、それによりクロック信号バッファから電力が遮断される。
【０００９】
第１のクロック信号は差動クロック信号である。第１のクロック信号はクロック信号バッファによって第２のクロック信号に変換される。第２のクロック信号はシングルエンド・クロック信号である。一実施態様では、クロック信号バッファを実装するためにアナログ・コンパレータを使用する。アナログ・コンパレータは差動入力の電圧レベルを比較し、変化する電圧レベルに基づいて第２のクロック信号を発生する。アナログ・コンパレータはソース同期受信器中の他の回路と比較して大量の電力を消費するので、受信器イネーブル信号がデアサートされるときに電力が遮断される。第２のクロック信号受信時、ＤＬＬ回路は次いでロックし、第２のクロック信号を再生し、それによってソース同期受信器のデータ・バッファのためにクリーンなノイズのないクロックを生成する。
【００１０】
したがって、様々な実施態様では、ソース同期受信器はソース同期入出力に関連する様々な問題の一部を解決する。ローカル・リセットを実行する能力により他のソース同期回路および集積回路または他のデバイスのコア・ロジックは必要な場合にソース同期受信器のオペレーションを継続することができる。
【００１１】
本発明の他の目的および利点は以下の詳細な説明を読み、添付の図面を参照すれば明らかになろう。
【００１２】
本発明は様々な修正態様および代替態様にすることができるが、それの特定の実施態様を例として図面に示し、本明細書で詳細に説明する。ただし、図面およびそれの説明は本発明を開示する特定の態様に限定するものではなく、逆に、本発明は首記の特許請求の範囲に記載した本発明の趣旨および範囲内に入るすべての修正態様、均等物、および代替態様を包含することに留意されたい。
【００１３】
（発明の詳細な説明）
次に図１を見ると、ソース同期入出力を利用するシステムの一実施形態を示すブロック図が示されている。システム１０はソース同期入出力オペレーション用に構成された２つの集積回路（ＩＣ）１５Ａおよび１５Ｂを含む例示的なシステムである。各ＩＣは複数のソース同期送信器（ＳＳＴ）５０およびソース同期受信器（ＳＳＲ）１００を含む。各ＳＳＴ５０およびＳＳＲ１００はそれのそれぞれのＩＣのコア・ロジック２０に結合される。
【００１４】
ＩＣ１５Ａおよび１５Ｂはソース同期通信用に構成された任意のタイプの集積回路である。そのようなＩＣの例としてはプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、周辺チップなどがある。ＩＣ１５Ａおよび１５Ｂの各々の主要な機能はそれのコア・ロジック２０によって実行される。ＩＣ１５Ａおよび１５Ｂはコンピュータ・システムのシステム・ボード（すなわちマザーボード）上に実装される。ＩＣ１５Ａおよび１５Ｂはまた様々なドータ・カード上または周辺デバイス中に実装される。また、ＩＣ１５ＡおよびＩＣ１５Ｂは互いにソース同期通信を行うために同じボード上にある必要はないことに留意されたい。例えば、主システム・ボード上に取り付けられるＩＣ１５Ｂとソース同期通信を行うためにＩＣ１５Ａをドータ・カード上に取り付けることが可能である。
【００１５】
図示の実施形態では、ＩＣ１５ＡのＳＳＴ５０は１つまたは複数のデータ・ライン８０およびクロック・ライン９０によってＩＣ１５ＢのＳＳＲ１００に結合される。データをＩＣ１５ＡからＩＣ１５Ｂまで転送するためには、データをまずＩＣ１５Ａのコア・ロジック２０からＳＳＴ５０まで移動させる。ＳＳＴ５０はデータ転送の準備ができると、クロック・ライン９０に沿って第２のＩＣ１５のＳＳＲ１００まで搬送される連続的に動作するクロック信号を利用する。ソースＳＳＴ５０が発生したクロック信号はデータ送信を同期させるために使用される。データはデータ・ライン８０を介してＩＣ１５ＢのＳＳＲ１００までＳＳＴ５０によって送信される。ＳＳＲ１００はクロック信号とデータの両方を受信する。クロック信号はソースＳＳＴ５０からのデータの受信を同期させるために使用される。
【００１６】
ＩＣ１５Ａおよび１５Ｂの各々はホット・スワップ環境用に構成される。必要な電力回路の他に、ソース同期入出力ポート（ＳＳＴ５０およびＳＳＲ１００）の各々はホット・スワップ環境用に構成される。ＳＳＴ５０およびＳＳＲ１００の各々はチップ上のコア・ロジックまたは他のソース同期入出力ポートをリセットせずに個別にリセットされる。さらに、ＳＳＴ５０およびＳＳＲ１００の各々はコア・ロジックを含むチップの他の部分のリセットを必要とせずに他のチップ上のソース同期入出力ポートとのリンクを確立するように構成される。様々な実施形態ではまた、電力を取り外すことなしに、あるいはチップまたはリンクする他のチップのコア・ロジックまたは他のソース同期入出力ポートをリセットすることなしに個別のＳＳＴ５０またはＳＳＲ１００をオフにすることができる。ＳＳＲ１００のリセットの追加の詳細について以下でより詳細に説明する。
【００１７】
次に図２を見ると、ソース同期受信器の一実施形態を示すブロック図が示されている。ＳＳＲ１００は１つまたは複数のデータ・ライン８０を介してデータを受信するように構成されている。データはＳＳＲ１００のデータ・バッファ１１５によって受信される。データの受信を同期させるために、ＳＳＲ１００はクロック・ライン９０を介してソース同期送信器から第１のクロック信号を受信し、第２のクロック信号を生成する。クロック信号は最初クロック受信器１０５によって受信される。第１のクロック信号の受信に応答して、クロック受信器１０５はクロック検出信号をアサートし、それをクロック検証回路１２０に転送する。クロック受信器１０５はまた、以下でより詳細に説明するように、受信したクロック信号に対して信号変換を実行する。
【００１８】
ＳＳＲ１００はクロック受信器１０５から第２のクロック信号を受信するように構成されたＤＬＬ回路１１０を含む。ＤＬＬ回路１１０は第２のクロック信号を再生し、これを次いでソース同期送信器からのデータの受信を同期させるためにデータ・バッファ１１５に送る。ＤＬＬ回路１１０はロック検出信号をアサートする。ロック検出信号はＤＬＬ回路１１０が受信し、第１のクロック信号にロックしたときにアサートされ、それによって第２のクロック信号を生成する。ロック検出信号はクロック検証回路１２０に送られる。
【００１９】
クロック検証回路１２０はクロック受信器１０５からのクロック検出信号１０５の受信に応答してＤＬＬロック信号をアサートする。いくつかの実施形態では、ＤＬＬロック信号はＤＬＬ回路１１０からのクロック検出信号とロック検出信号の両方の受信に応答してアサートされる。ＤＬＬロック信号はコア・ロジック２０中の状態レジスタ２０５に送られる。状態レジスタ２０５はいくつかのソース同期受信器のために状態ビットを格納するように構成されている。状態ビットは状態レジスタ２０５がクロック検証回路からアサートされたＤＬＬロック信号を受信したときにセットされる。ＳＳＲ１００に関連する状態ビットがセットされると、有効なクロック信号がＳＳＲ１００によって受信されていることが示され、それによってソース同期リンクをイネーブルにする前に状態をソフトウェアに提供する。
【００２０】
ＳＳＲ１００はデータ・バッファ１１５を含む。データ・バッファ１１５は１つまたは複数のデータ・ライン８０を介してデータを受信するように構成されている。データ・バッファ１１５はＤＬＬ回路１１０から第２のクロック信号を受信する。これによりデータ・バッファ１１５はソース同期送信器から同期的にデータを受信できるようになる。データの受信後、データ・バッファ１１５は次いでデータをコア・ロジック２０に転送する。
【００２１】
一実施形態では、クロック検証回路１２０はクロック受信器１０５からのアサートされたクロック検出信号の受信失敗時にＤＬＬロック信号をデアサートするように構成されている。ＤＬＬロック信号のデアサートによりＳＳＲ１００はリセット状態になる。リセット状態はデータ・バッファ中のすべてのロジック回路の出力をロジック「０」にリセットする。いくつかの実施形態では、ＳＳＲ１００をリセットすることはＳＳＲ１００の構成要素のうちの１つまたは複数への電力を遮断することを含む。これはデータ・バッファ１１５、ＤＬＬ回路１１０、クロック検証回路１２０のいくつかの部分、およびクロック受信器１０５のうちの１つまたは複数を電力遮断することである。また、ソース同期受信器のリセットはローカル・リセットであり、したがってＳＳＲ１００が実装されている集積回路の他の構成要素のリセットは起こらないことに留意されたい。
【００２２】
次に図３を見ると、ソース同期受信器の一実施形態の回路構成を示す概略図が示されている。図２に示される実施形態と同様に、ＳＳＲ１００はクロック受信器１０５、ＤＬＬ回路１１０、クロック検証回路１２０、およびデータ・バッファ１１５を含む。
【００２３】
図示の実施形態では、クロック受信器１０５はクロック信号バッファ１０７およびクロック検出器１０９を含む。この特定の例では、クロック信号バッファ１０７は差動シングル変換器（ｄｉｆｆｅｒｅｎｔｉａｌ ｔｏ ｓｉｎｇｌｅ ｃｏｎｖｅｒｔｅｒ）である。クロック受信器１０５は差動クロック信号を受信するように構成され、したがってクロック・ライン９０は差動クロック信号を送信するために２つの物理ラインを含む。受信されるクロック信号がシングルエンド・クロック信号である代替実施形態が可能であり、企図されることに留意されたい。クロック信号バッファ１０７は差動クロック信号をシングルエンド・クロック信号に変換するように構成される。一実施形態では、差動クロック信号をシングルエンド・クロック信号に変換するためにアナログ・コンパレータまたは他のタイプの差動増幅器を使用する。クロック信号バッファはシングルエンド・クロック信号をＤＬＬ回路１１０に送る前にその信号強度を高める。クロック受信器１０５はまたクロック検出器１０９を含む。クロック検出器１０９は差動クロック信号の受信に応答してクロック検出信号（ｃｌｋ＿ｄｅｔｅｃｔ）をアサートする。
【００２４】
ＤＬＬ回路１１０は、図示の実施形態ではクロック信号バッファ１０７からシングルエンド・クロック信号を受信するように構成されている。ＤＬＬ回路１１０は位相ロック・ループ回路であり、シングルエンド・クロック信号など方形波信号に対して最適化される。ＤＬＬ回路１１０はシングルエンド・クロック信号を再生し、それをデータ・バッファ１１５に送るためにその信号強度を高める。シングルエンド・クロック信号を再生するためにＤＬＬ回路１１０を使用することでよりクリーンで比較的ノイズのないクロック信号が得られる。また、ＤＬＬ回路１１０はクロック信号バッファ１０７から受信したシングルエンド・クロック信号のロックを得るとロック検出信号（ｌｏｃｋ＿ｄｅｔｅｃｔ）をアサートする。
【００２５】
クロック検証回路１２０はクロック検出器１０９からクロック検出信号を受信し、ＤＬＬ回路１１０からロック検出信号を受信するように構成されている。ロック検出信号は直列結合フリップフロップ１２２の連鎖に送られる。フリップフロップ１２２はＳＳＲ１００が実装されているＩＣのコア・ロジックから受信した第３のクロック信号（ｓｙｓ＿ｃｌｋ）によって同期する。第３のクロック信号は第１または第２のクロック信号（すなわち、それぞれ差動クロック信号およびシングルエンド・クロック信号）とは別個である。フリップフロップ１２２の直列結合連鎖を使用することによって、クロック検証回路１２０はＤＬＬ回路が複数のクロック・サイクルについてクロック信号バッファ１０７から受信したシングルエンド・クロック信号のロックを維持していることを保証することができる。
【００２６】
ＤＬＬロック信号（ｄｌｌ＿ｌｏｃｋ）はクロック検証回路１２０によってアサートされる。図示の実施形態では、ＤＬＬロック信号はフリップフロップ１２２Ｆによってアサートされる。この実施形態でのフリップフロップ１２２および１２２Ｆの各々はＤタイプ・フリップフロップであるが、他のタイプも使用される。３入力ＡＮＤゲート１２４はフリップフロップ１２２Ｆへの入力である。クロック検出信号が（ＡＮＤゲートの入力に対する）２入力ＯＲゲートを伝搬し、かつＤＬＬ回路１１０によるＤＬＬロック信号の最初のアサート後に３つのクロック・サイクルが完了すると、３入力ＡＮＤゲート１２４の出力はロジック「１」になる。
【００２７】
この特定の実施形態でクロック検出信号またはロック検出信号がデアサートされた場合、ＤＬＬロック信号もデアサートされる。これによりＳＳＲ１００のリセットが起こる。この特定の実施形態では、ＤＬＬロック信号のデアサートにより受信器リセット信号（ｒｘ＿ｒｓｔ＿ｌ）はロジック「０」になる。フリップフロップ１２２Ｆの出力は３入力ＯＲゲート１２５まで伝搬するように構成され、３入力ＯＲゲート１２５は（ＳＳＲ１００の正常動作中にデアサートされるか、またはロジック「０」になる）入力ｔｅｓｔ＿ｍｏｄｅおよびｒｘ＿ｒｓｔ＿ｍａｓｋを受信する。ｒｘ＿ｒｓｔ＿ｌがロジック「０」になると、起こったリセットによりデータ・バッファ１１５中のすべてのロジック回路の出力がロジック「０」状態にリセットされる。また、クロック検出信号およびロック検出信号の観測によってクロッキング問題の原因を特定することが可能である。ロック検出信号のデアサートによりリセットが起こった場合、クロック検出器１０９が入力クロック信号を検出したとしても、ＤＬＬ回路１１０がクロック信号のロックを得ることができないことが示される。例えば、入力クロック信号は大量のジッタを有するかまたは正しい周波数にない場合、ＤＬＬ回路１１０はロックを得ることができないが、入力クロック信号はクロック検出器１０９によって検出される。クロック検出信号のデアサートによりリセットが起こった場合、入力クロック信号の問題またはクロック・ラインの破断が指示される。
【００２８】
クロック検出信号のデアサートによりＳＳＲ１００のリセットが起こった場合、クロック検証回路１２０はＳＳＲ１００のいくつかの構成要素の電力を遮断するように構成されている。一実施形態では、図面に示されるように、第１のクロック信号の検出失敗によるクロック検出信号のデアサートにより受信器イネーブル信号（ｒｅｃｅｉｖｅｒ＿ｅｎａｂｌｅ）のデアサートが起こる。本明細書には明示的に図示されていないが、受信器イネーブル信号はクロック信号バッファ１０７への電力を制御するために使用される。電力は受信器イネーブル信号がアサートされたときにクロック信号バッファ１０７に適用され、受信器イネーブル信号がデアサートされたときに除去される。いくつかの実施形態では、他の構成要素からも電力が除去される。いくつかの実施形態ではまたクロック検証回路１２０の一部または全部から電力を除去する。電力の供給はクロック検出回路１０９による第１のクロック信号の検出時およびクロック検出信号の再アサート時に再開される。いくつかのリセット状態中にＤＬＬ回路１１０、クロック検証回路１２０、および／またはデータ・バッファ１１５が電力遮断される実施形態が可能であり、企図される。一実施形態では、クロック検出器１０９のクロック検出信号のアサート失敗によりクロック信号バッファ１０７、ＤＬＬ回路１１０、およびデータ・バッファ１１５への電力がなくなる。第１のクロック信号の検出に応じてソース同期受信器の様々な構成要素を電力投入またはおよび電力遮断する能力によりソース同期受信器はホット・スワップ環境用に理想的である。
【００２９】
いくつかの場合、クロック検証回路１２０はソース同期受信器のリセットの実行を抑止される。図示の実施形態では、これはテスト・モード信号（ｔｅｓｔ＿ｍｏｄｅ）または受信器リセット・マスク信号（ｒｘ＿ｒｓｔ＿ｍａｓｋ）を受信する結果起こる。テスト・モード信号がアサートされると、それの値は３入力ＯＲゲート１２５に送られ、クロック検出器１０９が入力クロック信号を検出するかどうかにかかわらず受信器リセット信号はロジック「１」のままである。また、テスト・モード信号のアサートにより受信器イネーブル信号がデアサートされ、それによりクロック信号バッファ１０７への電力が遮断される。テスト・モード信号によりデータ・バッファ１１５などソース同期受信器の様々な構成要素に対してテストを行うことができるようになり、さらにソース同期受信器１０が集積回路内で行われている他のテストを妨害するのを防ぐ。クロック検証回路１２０はまた、受信器リセット・マスク信号がアサートされたときにリセットを起こすことを抑止される。受信器リセット・マスク信号は３入力ＯＲゲート１２５を伝搬し、受信器リセット信号はロジック「１」のままである。
【００３０】
次に図４を見ると、ソース同期受信器の一実施形態の動作を示す流れ図が示されている。本方法の代替実施形態が可能であり、企図される。方法５００は第１の（すなわち入力）クロック信号の検出から始まる（ステップ５０２）。入力クロック信号は差動クロック信号かシングルエンド・クロック信号のいずれかであり、クロック検出器回路によって検出される。入力クロック信号が検出されるとクロック検出信号がクロック検出器回路によってアサートされる（ステップ５０４）。クロック検出信号はクロック検出信号を図２および図３のものなどクロック検証回路に送る。本方法はまた第１のクロック信号に基づいて第２のクロック信号を生成する（ステップ５０６）。流れ図にはステップ５０２、５０４および５０６が順次に行われるものとして示されているが、これらのステップは同時に行うことができることに留意されたい。第２のクロック信号の生成は差動クロック信号のシングルエンド・クロック信号への変換を含む。第１のクロック信号と第２のクロック信号の両方がシングルエンド・クロック信号である実施形態も可能であり、企図される。第２のクロック信号の生成もクロック信号強度を高めることか、または第１のクロック信号とは異なる周波数を有する第２のクロック信号を生成することを含む。
【００３１】
第２のクロック信号はＤＬＬ回路に駆動され、ＤＬＬ回路は次いで信号のロックを得ようと試みる（ステップ５０８）。ＤＬＬ回路は第２のクロック信号を再生し、それによって比較的クリーンでノイズのない信号を生成するために使用される。ＤＬＬ回路はロックを得た場合にＤＬＬロック信号をアサートする（ステップ５１０）。ソース同期受信器は、いくつかの状況（例えば、図３を参照して論じたテスト・モード信号のアサート）を除いて、ＤＬＬ回路がクロック信号のロックを維持することができる限り正常に動作を継続する。
【００３２】
ステップ５０８では、ＤＬＬがクロック信号のロックを得た場合、ソース同期受信器のリセットが実行される（ステップ５１４）。同様に、以前にロックを得ているＤＬＬ回路がステップ５１２でクロック信号のロックを失った場合、同じくソース同期受信器がリセットされる。ステップ５１２でのロックの喪失は様々な理由で起こり、クロック検出器回路による入力クロック信号の検出の損失を含む。ＤＬＬ回路はまた入力クロック信号がジッタ過多になった場合、またはそれの周波数が所定の範囲外にドリフトした場合にロックを失う。
【００３３】
ソース同期受信器のリセット後、本方法は次いでクロック信号が検出されるのを待ち（ステップ５１６）、次いでステップ５０２に戻る。したがって、ソース同期受信器がリセットされると方法５００が始めから再開される。
【００３４】
以上、特定の実施形態を参照しながら本発明について説明したが、実施形態は例示的なものであること、および本発明の範囲はそのように限定されないことを理解されよう。説明した実施形態は変更、修正、追加、および改善が可能である。これらの変更、修正、追加、および改善は首記の特許請求の範囲に詳記した本発明の範囲内に入る。
【図面の簡単な説明】
【図１】
ソース同期入出力を利用するシステムの一実施形態を示すブロック図である。
【図２】
ソース同期受信器の一実施形態を示すブロック図である。
【図３】
ソース同期受信器の一実施形態の回路構成を示す概略図である。
【図４】
ソース同期受信器の一実施形態のオペレーションを示す流れ図である。
【図１】
2004520649.tif 000003
【図２】
2004520649.tif 000004
【図３】
2004520649.tif 000005
【図４】
2004520649.tif 000006
【国際公開パンフレット】
2004520649.tif 000007
2004520649.tif 000008
2004520649.tif 000009
2004520649.tif 000010
2004520649.tif 000011
2004520649.tif 000012
2004520649.tif 000013
2004520649.tif 000014
2004520649.tif 000015
2004520649.tif 000016
2004520649.tif 000017
2004520649.tif 000018
2004520649.tif 000019
2004520649.tif 000020
2004520649.tif 000021
2004520649.tif 000022
【国際調査報告】
2004520649.tif 000023
2004520649.tif 000024
2004520649.tif 000025