(57)【要約】【課題】最小の挿入レイテンシで、プレシオクロナスな通信ドメインを横切る確実なデータ転送を可能にする。【解決手段】プレシオクロナスなランチクロック及びキャプチャクロックによって駆動されたランチドメインとキャプチャドメインとの間のデータ転送を最適化するための方法及び装置は、前記ランチドメインから前記キャプチャドメインへと代表データのビーコンを送信し、前記キャプチャクロックを用いて前記キャプチャドメイン内にビーコンを取り込む。前記取り込まれたビーコンは、例外について監視される。例外が検出されない場合には、前記キャプチャクロックの位相が調整されて、例外が検出されるまで、前記ビーコンが送信され、取り込まれ、及び監視される。例外が検出された場合には、前記取り込まれたビーコンに対して、前記キャプチャクロックの位相が最適化される。【選択図】図１
2006295925.tif 000002
【特許請求の範囲】
【請求項１】
プレシオクロナスなランチクロック及びキャプチャクロックによって駆動されたランチドメインとキャプチャドメインとの間のデータ転送を最適化するための装置であって、  
前記ランチクロック１０６によって駆動されたランチドメイン１０２内のビーコン発生器１２０であって、ビーコン２００を生成する、ビーコン発生器と、
前記キャプチャクロック１０８によって駆動されたキャプチャドメイン１０４内の例外検出器１２６であって、前記ビーコン２００を、捕捉されたビーコンとして表して、該捕捉されたビーコン内において検出された例外を示すことからなる、例外検出器と、
前記検出された例外に応答するステートマシン１３０であって、前記ランチクロックと前記捕捉されたビーコンとの間の相対位相を最適化するために、前記キャプチャクロック１０８の位相を調整する、ステートマシン
とを備える、装置。
【請求項２】
前記ステートマシン１３０は、前記捕捉されたビーコン内において前記例外が検出された時の前記キャプチャクロックの位相に対して約１８０度位相がずれることになるよう、前記キャプチャクロック１０８の位相を調整する、請求項１に記載の装置。
【請求項３】
前記ステートマシン１３０は、第１及び第２の例外検出器に応答して、第１及び第２の検出された例外に基づいて、前記キャプチャクロックを最適化するために前記キャプチャクロック１０８の位相を調整する、請求項１に記載の装置。
【請求項４】
前記ステートマシン１３０は、前記第１の検出された例外と前記第２の検出された例外との間の差分を最大化させるために、前記キャプチャクロック１０８の位相を調整する、請求項３に記載の装置。
【請求項５】
前記ランチクロック１０６と前記キャプチャクロック１０８とは、同じ周波数を有し、該周波数は、ソースクロック１００の倍数であり、前記ステートマシン１３０は、前記ソースクロック１００の周期区間に等しいインクリメントにおいて、前記キャプチャクロック１０８を調整することからなる、請求項１に記載の装置。
【請求項６】
前記ランチクロック１０６及び前記キャプチャクロック１０８の前記周波数は、前記ソースクロックの周波数の１／Ｎであり、
前記ステートマシン１３０は、前記キャプチャクロック１０８の位相を、前記ソースクロック１００の、Ｎ／２以下の整数値の追加周期区間だけ、前記例外が検出された時の前記キャプチャクロック１０８の位相に対してスリップさせることによって、前記キャプチャクロック１０８を最適化することからなる、請求項５に記載の装置。
【請求項７】
前記Ｎは奇数の整数である、上記６に記載の装置。
【請求項８】
前記ビーコン２００は、論理１と論理０とのデータストリームを含み、前記例外は、１と０とからなるグループから選択された少なくとも２つの連続した論理値のデータパターンを含むことからなる、請求項１に記載の装置。
【請求項９】
前記ビーコン２００は、前記キャプチャクロック１０８の周波数の半分の周波数である、請求項８に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ伝達のための位相の最適化に関し、特にプレシオクロナスな時間ドメイン（時間定義域）間におけるデータ伝達のための位相の最適化に関する。
【背景技術】
【０００２】
いくつかの集積回路（本明細書内において「ＩＣ」と記す）内において、別個のクロックは、コア（又はコイル）及び入力／出力（本明細書内において「Ｉ／Ｏ」と記す）の部分を駆動する。ＩＣの前記２つの部分における前記別個のクロックは、コア及びＩ／Ｏ部分が、コアからＩ／Ｏまでか、又はＩ／Ｏからコアまでのいずれかの伝達を行うまで発令されない（又は送出されない）。コアとＩ／Ｏとの間の正常な伝達は、ランチされたデータ（又は放たれたデータ）が確実に取り込まれるための十分なセットアップ時間とホールド時間とに依存する。１つの特定例において、クロックは、「プレシオクロナス（又は独立同期）」であり、該「プレシオクロナス」は、特定の制限内において制約を受けている状態の速度内における任意の変動によって、立ち上がりエッジが名目上同じ速度で発生するように、各クロックが十分に素速いことを意味する。本明細書内において使用されるような語句「プレシオクロナス」は、２つのクロック間の位相関係が一定であるが、既知ではないことの状況を更に指す。別個のクロックが、不定の位相関係にあることから、コアとＩ／Ｏとの間での伝達に関して、セットアップ時間及びホールド時間の要件に背くことが可能である。別個のクロックが、例え同じソースから派生したものであったとしても、ＩＣ送信線とロジックとによる伝搬遅延は、データ転送を担うクロックが、データ転送の時間におけるセットアップ及びホールド要件に関して不定であることに、十分な不確定性を提供する。クロック速度が５００ＭＨｚを越えて増加するにつれ、伝搬遅延と、伝搬遅延における変動とが、クロック周期区間のより大きな割合を占めるようになる。
【０００３】
プレシオクロナスと２つのクロック間の位相不定の位相関係とを取り巻いている課題に対する先行技術の解決策は、位相同期ループと最小クロック信号伝送経路とを用いて、ＩＣの前記２つの伝達部分の間の伝搬遅延を最小化するためにか又は一致させるために注意深くＩＣ設計をすることを含む。しかしながら、周波数が増加するにつれ、この解決策は、限定的なものとなり、ＩＣ設計の他の部分において、場合によっては性能を妥協するトレードオフがなされることを必要とする。別の解決策は、多重化すること、バッファリングすること、及びある複数の周波数おける２つか又はそれよりも多くのワード（例えば、２の多重化要素）に多重分離（デマルチプレクス）することであり、次いで、何分の１かの周波数（例えば、半分の周波数）において、コア及びＩ／Ｏの境界を横切ってデータを同期させて転送させることである。しかしながら、いくつかの用途において、多重化すること及びバッファリングすることの解決策に含まれるレイテンシ（又は待ち時間、又は遅延時間）は、許容不可能である。別の解決策は、ランチデータレートにおいてデータをＦＩＦＯバッファ内へと格納すること、及びキャプチャデータレートにおいてＦＩＦＯバッファからデータを読み出すことである。ランチとキャプチャ（又は捕捉、又は取り込み）との両方は、それによって、ＩＣのそれぞれの部分に同期して伝達され、読み出しポインタと書き込みポインタとが、正常な機能のために十分に分離される限り、信頼できる性能を提供する。この解決策もまた、ある用途において許容できない可能性があるレイテンシを挿入する。
【特許文献１】米国特許出願第第１１／０７６，７５８号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従って、最小の挿入レイテンシの状態で、プレシオクロナスな通信ドメイン（伝達定義域）を横切って確実にデータを転送するための必要性がある。
【課題を解決するための手段】
【０００５】
本発明の一実施例は、
プレシオクロナスなランチクロック及びキャプチャクロックによって駆動されたランチドメインとキャプチャドメインとの間のデータ転送を最適化するための装置であって、  
前記ランチクロック１０６によって駆動されたランチドメイン１０２内のビーコン発生器１２０であって、ビーコン２００を生成する、ビーコン発生器と、
前記キャプチャクロック１０８によって駆動されたキャプチャドメイン１０４内の例外検出器１２６であって、前記ビーコン２００を、捕捉されたビーコンとして表して、該捕捉されたビーコン内において検出された例外を示すことからなる、例外検出器と、
前記検出された例外に応答するステートマシン１３０であって、前記ランチクロックと前記捕捉されたビーコンとの間の相対位相を最適化するために、前記キャプチャクロック１０８の位相を調整する、ステートマシン
とを備える、装置である。
【発明の効果】
【０００６】
最小の挿入レイテンシで、プレシオクロナスな通信ドメインを横切った確実なデータ転送が可能となる。
【実施例】
【０００７】
本教示の理解を、添付図面と共に、下記の詳細な説明から得ることができる。
【０００８】
具体的に図１に関して、ソースクロック１００が、ランチドメイン１０２とキャプチャドメイン１０４とを駆動する、本教示による一定方向の実施形態が示されている。ランチクロック１０６とキャプチャクロック１０８とは、ソースクロック１００から派生したものであり、ＩＣの分離された及び別個の部分のために、データのランチ動作とキャプチャ動作とをそれぞれ駆動する。ランチドメイン１０２とキャプチャドメイン１０４とが、ランチ素子１１０からキャプチャ素子１１２へと伝達を行う。ある特定の実施形態において、ランチ素子１１０とキャプチャ素子１１２とは、ランチクロック１０６とキャプチャクロック１０８とによってそれぞれ駆動されるＤＱフリップフロップである。ランチクロック１０６とキャプチャクロック１０８とは、同じソースクロック１１０から派生されるものであるため、それらはプレシオクロナスなクロックである。図示された特定の実施形態において、ランチクロック１０６とキャプチャクロック１０８とは、同じ周波数において動作する。ソースクロック１００とキャプチャクロック１０８との間の、１つか又は複数の未知の伝搬遅延に対する、ソースクロック１００とランチクロック１０６との間の、１つか又は複数の未知の伝搬遅延のため、プレシオクロナスなランチクロック１０６とプレシオクロナスなキャプチャクロック１０８とは、固定されているが不定の位相関係を互いに有する。キャプチャ素子１１２による、データの確実なキャプチャは、キャプチャクロックの関連エッジに先行する所定量のセットアップ時間と、キャプチャクロック１０８の関連エッジの後の、該データが安定していなければならない所定量のホールド時間とに、データが存在させられる必要がある。ランチクロック１０６の関連エッジは、ランチ素子１１０の出力におけるデータ通信線１１４にデータを存在させるため、データをランチ素子１１０内へと格納する。キャプチャクロック１０８の関連エッジは、キャプチャ素子１１２の入力における通信線１１４上に現われるデータを格納する。ランチクロック１０６とキャプチャクロック１０８との関連エッジとが、あまりにも接近して並んだ場合には、キャプチャクロック１０８の遷移が、データ通信線１１４上のデータの遷移中に起こる可能性がある。プレシオクロナスなランチ及びキャプチャクロック１０６、１０８によって駆動されたランチ素子１１０とキャプチャ素子１１２との間の確実な伝達は、従って、ランチクロック１０６の関連エッジとキャプチャクロック１０８の関連エッジとの間の位相関係に依存する。本教示は、ランチドメイン１０２からキャプチャドメイン１０４へのデータ伝達が不確実なキャプチャクロック１０８の位相を識別することと、次いで、データ通信線１１４上のデータの確実なキャプチャを最適化するために、ランチ及びキャプチャクロック周波数のアプリオリ知識に基づいて、キャプチャクロック１０８の位相を調整することとを提言する。
【０００９】
ランチクロック１０６は、ビーコン発生器１２０を駆動する。該ビーコン発生器１２０は、既知のデータパターンを有するビーコン２００を生成する。好適一実施形態において、ビーコン発生器１２０は、ランチドメイン内にランチ素子１１０と共に配置される。これにより、ランチ素子１１０によって認識されるランチクロック１０６のエッジと、ビーコン発生器１２０によって認識されるランチクロック１０６のエッジとの間の任意の位相差が、最小化されることとなる。ビーコン２００は、ビーコン通信線１２２において存在させるための代表データを提供する。図１内に示される実施形態において、ビーコン発生器１２０の出力は、反転され（１２４）、ビーコン発生器１２０の入力部に提供されて、ビーコン２００として、交互に繰り返す１と０とのパターンが生成される。ビーコン通信線１２２は、例外検出器１２６に接続される。キャプチャクロック１０８は、例外検出器１２６を駆動する。例外検出器１２６は、ビーコン２００を受けて、ビーコン２００を、捕捉されたビーコン２０４として、キャプチャクロック１０８の関連エッジにおいて取り込む。例外検出器１２６は、図示された実施形態において具体的には交互に繰り返す１及び０のビーコン２００の期待されたパターンからのずれとして画定された、捕捉されたビーコン２０４内の「例外（又は偏差、又は異常）」を識別する。好適一実施形態において、例外検出器１２６は、キャプチャドメイン１０４内にキャプチャ素子１１２と共に配置される。これにより、キャプチャ素子１１２によって認識されるキャプチャクロック１０８のエッジと、例外検出器１２６によって認識されるキャプチャクロック１０８のエッジとの間の任意の位相差が、最小化されることとなる。ビーコン発生器１２０は、ランチドメイン１０２からキャプチャドメイン１０４への代表データの送信を提供し、例外検出器１２６は、キャプチャドメイン１０４によるランチドメイン１０２からの代表データの受信（レセプション）を提供する。従って、ビーコン通信線１２２にわたるビーコン発生器１２０と例外検出器１２６との間の伝達が、データ通信線１１４にわたるランチ素子１１０とキャプチャ素子１１２との間の伝達を代表するものであることを仮定（想定）している。検出された例外は、従って、ランチクロック１０６とキャプチャクロック１０８との間の位相関係が、例外検出器１２６のためのセットアップ時間とホールド時間のようなものであることを示しており、仮定によって、キャプチャ素子１１２が、２つのクロック１０６と１０８との間の既存の位相関係に背くようにされる。
【００１０】
具体的に図２に関して、ソースクロック１００、ランチクロック１０６、キャプチャクロック１０８、及びビーコン２００の間の実現可能なタイミング関係の一例を示すタイミング図が示されている。図２内に示された特定例において、ランチクロック１０６とキャプチャクロック１０８とは、Ｎで除算されたソースクロック１００から派生したものであり、ここでＮ＝５である。ランチ素子１１０とキャプチャ素子１１２とへのクロック入力部に現われるランチクロック１０６とキャプチャクロック１０８とはそれぞれ、一定の相対位相を有するプレシオクロナス・クロックとして示される。図２内に示される位相差は、１つの例示として、ソースクロック１００の周期の２分の１に等しい。当業者であれば理解されるように、ランチクロック１０６とキャプチャクロック１０８とが、たとえ同じソースクロック１００から派生したものであったとしても、伝搬及び送信線は、ランチクロックのソースとキャプチャクロックのソースとの間、及びランチ素子とキャプチャ素子との間の、ランチドメイン１０２及びキャプチャドメイン１０４内において、それぞれ遅延し、ランチ素子１１０及びキャプチャ素子１１２によって認識されるクロックの、間の位相差は、ランチ／キャプチャクロック１０６、１０８の周期区間の任意の変化度分である可能性がある。ソースクロック１００の周期の２分の１として示されたランチクロック１０６とキャプチャクロック１０８との間の位相差は、例示的な目的のためにのみ示されている。ランチクロック１０６は、ビーコン発生器１２０を駆動して、ビーコン２００を生成する。好適一実施形態において、ビーコン２００は、ランチクロック１０６の半分の周波数である。ビーコン２００は、ランチクロック１０６の立ち上がりエッジに応答する遷移時間２０２を有するものとして、図２内に示されている。該遷移時間は、ビーコン発生器１２０がデータを格納するために必要とされる時間を表し、ビーコン発生器１２０の出力部において存在し、並びに、例外検出器１２６の入力部に現われることとなるデータのためのビーコン通信線１２２にわたる送信時間において存在する。遷移時間２０２中、例外検出器１２６の入力部において現われる論理値は、不定である。周波数が増加するにつれ、遷移時間２０２は、キャプチャクロック１０８の周期区間のより大きな割合を占めることになる。図２内に示されるように、捕捉されたビーコン２０４は、キャプチャクロックの第１の関連エッジ２０６と第３の関連エッジ２０８とのそれぞれにおいて、適切に論理１を示すことができるが、論理１から論理０へのビーコン２００の遷移時間は、例外検出器１２６内におけるセットアップ及びホールド要件に背くため、並びに、仮定によってもまた、キャプチャ素子１１２のセットアップ及びホールド要件に背くため、捕捉されたビーコン２０４は、期待された論理０の代りに、キャプチャクロック１０８の第２の関連エッジ２１０において論理１を示す。従って、捕捉されたビーコン２０４は、少なくとも３つの連続する論理１に反映される。データの取り込みが不確定な場所におけるキャプチャクロック１０８の位相が識別された時には、キャプチャクロック１０８は、従って、データの取り込みを最適化するために調整される。
【００１１】
具体的に図３に関して、例外検出器１２６のある特定の実施形態が示されている。第１のビーコン受信メモリ素子３００は、キャプチャクロック１０８のエッジにおいて、該第１のビーコン受信メモリ素子３００に現われるビーコンの論理値を格納する。第１のビーコン受信メモリ素子の出力３０２は、第２のビーコン受信メモリ素子３０４の入力部に現われる。第２のビーコン受信メモリ素子３０４は、キャプチャクロック１０８の次のエッジにおいて、該第２のビーコン受信メモリ素子３０４に現われた論理値を格納する。キャプチャクロック１０８の次のエッジにおいてもまた、新規の論理値が、第１のビーコン受信メモリ素子３００内へと格納される。第１及び第２のビーコン受信メモリ素子３００、３０４は、従って、キャプチャクロック１０８の新たな各遷移のために、捕捉されたビーコン２０４の最新の２つの連続した論理値を格納する。第１及び第２のビーコン受信メモリ素子３００、３０４によって格納された、捕捉されたビーコン２０４の２つの連続した論理値は、排他的ＮＯＲゲート３０８に現われる。従って、排他的ＮＯＲゲートの出力３１０は、両方の入力が論理１であるか、又は両方の入力が論理０である時にのみ、アサートされる。ビーコン２００が、交互に繰り返す１と０とは異なるデータパターンの場合の、代替の一実施形態において、排他的ＮＯＲゲートとは異なる論理が、捕捉されたビーコン２０４内において例外を識別するために用いられることが当業者であれば理解されよう。回路の残りは、「リセットによるスティッキー回路（又はリセットによって不快さを示す回路：sticky circuit with reset）」であり、例外検出信号１２８の「スティッキーアサート（又は不快さを示すアサート：sticky assertion）」を提供し、該当する場合に例外検出信号１２８をクリアするためのキャプチャリセット機能を備える。スティッキーメモリ素子３１２は、排他的ＮＯＲゲートの出力３１０を、スティッキーＮＯＲゲート３１４とキャプチャリセットＮＯＲゲート３１６とを介して受け入れる。スティッキーメモリ素子３１２は、排他的ＮＯＲゲートの出力３１０の値を、キャプチャクロック１０８のエッジにおいて格納する。スティッキーＮＯＲゲート３１４は、排他的ＮＯＲゲートの出力３１０と、スティッキーメモリ素子の出力１２８とを受け入れる。従って、排他的ＮＯＲゲートの出力３１０がアサートされると、例外検出信号１２８もまたアサートされて、スティッキー回路３１２、３１４、３１６がクリアされるまで、アサートされたままとなる。スティッキーＮＯＲゲートの出力３２０と、キャプチャリセット信号１３６とが、キャプチャリセットＮＯＲゲート３１６への入力として現われる。キャプチャリセット信号１３６がアサートされる時には、キャプチャリセットＮＯＲゲート３１６は、キャプチャクロック１０８の次のエッジにおいて記憶させるために、スティッキーメモリ素子３１２の入力部に論理０を示し、それにより、次の例外が発生するまで、例外検出信号１２８がデアサートされる。
【００１２】
例外検出器１２６が、捕捉されたビーコン２０４内において、２つか又はそれよりも多くの連続する１か、或いは２つか又はそれよりも多くの連続する０のうちの、いずれかを識別する場合には、例外検出器１２６は、例外検出信号１２８をアサートする。例外検出器１２６が、交互に繰り返す１と０との期待されたパターンを識別する場合には、例外検出器１２６は、例外検出信号１２８をアサートしない。位相較正ステートマシン１３０が、例外検出信号１２８に応答する。ステートマシン１３０は、捕捉されたビーコン２０４内において例外が検出されるまで、連続的なインクリメントにおいて（又は連続的にインクリメントすることによって）キャプチャクロック１０８の位相を調整することによって、セットアップ時間とホールド時間とが違反しているビーコン２００の位相に対するキャプチャクロック１０８の位相を識別する。ステートマシン１３０は、従って、キャプチャクロック１０８の位相を調整して、キャプチャクロック１０８から捕捉されたビーコン２０４（ａ）までの位相関係を最適化し、位相較正プロセスが完了する。
【００１３】
スリップ信号１３２によって、キャプチャクロック１０８が、ソースクロック１００の単一周期分だけ、キャプチャクロック１０８の周期区間を長くされるか又は短くされることによって、その位相が調整させられる。ステートマシン１３０は、捕捉されたビーコン２０４内において例外が検出されるまで、連続的な同一位相の調整を発令する。好適一実施形態において、ソースクロック１００の単一周期分だけキャプチャクロック１０８の周期区間を長くすることによって位相が調整される。ランチクロック１０６とキャプチャクロック１０８との間の位相関係が、ビーコンの伝達が不確定であるようなものである時には、キャプチャクロック１０８とランチクロック１０６との間の位相関係が、確実な伝達に関して最悪の事態にあることが推測される。実際には、キャプチャクロック１０８は、ソースクロックの単一周期分だけ調整されるため、ランチクロック１０６とキャプチャクロック１０８との間の位相関係は、ソースクロック１００の単一周期区間に等しい変化度内にあることだけがわかる。従って、例外が検出される時には、実際の最悪の事態は、位相関係が、現在より１つ前の位相関係に対して零よりも大きく、且つ、現在の位相関係よりも小さい場合である。言い換えると、例外が検出される時までに、最適な位相関係に向けての何らかの動きが既に起こされてしまっている。ビーコン２００内において例外が識別される時には、ステートマシン１３０は、確実な伝達を最適化するために、キャプチャクロック１０８の位相に対して最終的な調整を行う。ある一定方向の位相較正の実施形態において、キャプチャクロック１０８の最適化された位相は、例外が検出された時のキャプチャクロック１０８の位相に対して、約１８０度位相がずれる。
【００１４】
具体的に図４に関して、スリップを用いた、５による分周の分周器として、キャプチャクロック発振器１３４の、ある特定の実施形態が示されている。スリップを用いた、５による分周の分周器は、分周器４０２と伝達し合うパルス発振器４００を備える。ソースクロック１００は、分周器４０２を駆動する。分周器４０２は、２つの分周モード、すなわち５による分周と６による分周とを有し、分周モード信号４０４によって制御される。従って、ソースクロック１００がｆの周波数を有する場合には、分周器４０２は、ｆ／５の周波数の信号と、ｆ／６の周波数の信号とを提供することができる。図４に示された特定の実施形態において、分周器４０２は、分周モード信号４０４がハイである時には５による分周であり、分周モード信号４０４がローである時には６による分周である。分周モード信号４０４は通常ハイである。パルス発振器４００が、スリップ信号１３２を受け入れる時には、パルス発振器４００は、ローに向かう分周モードパルス信号４０４を発令し、それにより、分周器４０２が、分周されるクロックの１周期について、６によって分周させられる。スリップ信号は、分周器４０２の単一スリップのみの効果（又は作用）に、継続期間が制限される。従って、スリップ信号１３２のアサートの結果、キャプチャクロック１０８の位相は、ソースクロック１００の単一周期分だけ時間が進められる。５つの連続的な時間の進ませによって、結果として、キャプチャクロック１０８の、３６０度の位相シフトが生じる。スリップによる分周器の好適一実施形態の更なる詳細な説明は、共同で所有し且つ共同で出願中の「スリップによる分周器」と題する、2005年3月10日にファイリングされた、米国特許出願第１１／０７６，７５８号に開示されており、該出願は、本特許出願の共同の発明者であるRobert Millerによって発明されている。前記「スリップによる分周器」の特許出願の全体は、参照によって本明細書内において組み込まれる。１つのプレシオクロナス・クロックの位相を別のプレシオクロナス・クロックに対して生成及び調整するための代替の装置及び方法は、既知であり、本教示において詳細には説明されない。代替の装置及び方法において、１つのプレシオクロナス・クロックは、その他のプレシオクロナス・クロックに対して同じ周波数か又は異なる周波数とすることができ、且つ、本明細書内において記載されたものとは異なる周波数とすることができる。そのような代替の方法、クロック、及び周波数は、当業者の理解のうちにあり、本教示による一実施形態内において用いるのに適合可能である。
【００１５】
具体的に図５に関して、位相較正ステートマシン１３０によって実行されるプロセスのフローチャートが示されている。当業者であれば理解されるように、該ステートマシン１３０は、組み込まれたプロセッサと共に、ハードウェアのＦＰＧＡとしてか、又はファームウェア／ソフトウェアとして実装されることが可能である。従って、ステートマシン１３０の構造は、いかにそれが実装されるかが要求される。好適一実施形態において、ステートマシン１３０は、ハードウェア論理回路内に実装される。ステートマシン１３０は、キャプチャリセット信号１３６をアサートし、及び可変カウンタを零に、すなわちｉ＝０に設定することによって、まず最初に位相較正プロセスを初期化する（５００）。ステートマシン１３０は、キャプチャリセット信号１３６をデアサートし、ビーコン２００内における例外を待つように、ある期間の間、例外検出器１２６が一時停止すること（５０２）を許可する。一時停止の時間の後に、例外が検出されない場合（５０４）には、ステートマシン１３０は、キャプチャクロック１０８の位相を調整するためにスリップ信号１３２をアサートし（５０６）、可変カウンタを１だけ増加させる。ステートマシン１３０は、位相調整されたキャプチャクロック１０８の条件下で、再び一次停止させ（５０２）、例外が検出される（５０８）か、又は例外を検出することなく全ての可能な位相調整がテストされてしまうまで、キャプチャクロックを調整するプロセス５０６と、一次停止プロセス５０２とを繰り返す。可能な位相調整の回数は、通常動作の下での分周器４０２の分周要素（分周ファクター）に等しい。図４内に示された本例においては、Ｎ＝５である。例外が検出された時には、ステートマシン１３０は、ある１８０度以下の位相シフトに位相を調整することによって、キャプチャクロック１０８の位相を最適化させる（５１０）。約１８０度の位相シフトを達成させるための適切な回数のスリップのための一般式は、可能な位相調整の回数（Ｎ）を半分に除算した整数値である。具体的には次のようになる。
【００１６】
＃スリップ＝ＩＮＴ（Ｎ／２）・・・（１）
特定例を説明するために、再び図２を参照すると、エッジ２０６において、参照番号１０８として示されたキャプチャクロックの位相について、例外が検出される場合には、ステートマシン１３０は、キャプチャクロック１０８の位相を、追加的なＩＮＴ（５／２）＝２周期（すなわち、ソースクロック１００の２周期分（２１２））だけスリップさせることによって、検出された例外に応答して、キャプチャクロック１０８の位相を調整する。Ｎが偶数である場合には、追加的なスリップの回数は、Ｎ／２に等しい。新たな位相関係によって、調整されたキャプチャクロック１０８（ａ）が生じる。図２から明らかなように、調整されたキャプチャクロック１０８（ａ）の立ち上がりエッジは、参照番号２１４として示され、ビーコン２００が信頼でき且つ安定であるとみなされる範囲内において適切に配置されている。最適化されたキャプチャクロック１０８（ａ）によって駆動されたキャプチャ素子１１２によって受信されたビーコン２００は、参照番号２０４（ａ）として示されている。ビーコン発生器１２０が実質的にはランチ素子１１０と共に配置され、且つ、例外検出器１２６が実質的にはキャプチャ素子１１２と共に配置されているため、及び、ビーコン発生器１２０と例外検出器１２６とが、ランチクロック１０６とキャプチャクロック１０８とによってそれぞれ駆動されるため、ランチクロック１０６とキャプチャクロック１０８との間の相対位相の位相較正はまた、ランチ素子１１０からキャプチャ素子１１２へのデータ送信についても最適化されると考えられる。図１〜５に関連して例示を目的として説明されたような位相較正プロセスは、ランチクロック１０６とキャプチャクロック１０８との間の位相関係を最適化して、一方向におけるデータ伝達のためのセットアップ時間とホールド時間とを最大化させる。いくつかの場合において、一方向における位相の最適化は、両方向において、確実な伝達を行うのに十分である。従って、本教示の、ある一定方向の位相較正の実施形態において、位相較正プロセスは完全である。
【００１７】
いくつかの場合において、ランチクロック１０６とキャプチャクロック１０８との間の位相関係を双方向に最適化することが望ましい。データ通信の各方向について、セットアップ時間とホールド時間とに背くランチ及びキャプチャ条件を検出するために、２つのビーコン発生器と２つの例外検出器とを有することによって、本教示を、双方向の場合に適用する（又は構成する）ことができる。２つの位相位置が識別される時には、キャプチャクロック１０８は、その位相を、２つの位相測定値の間の最大ギャップの中間に設定することによって最適化される。具体的に図６に関して、本教示による、双方向の場合において位相を最適化するための装置の一実施形態が示されており、該双方向の場合は、既に説明された一定方向の場合が拡張されている。語句「ランチドメイン」と「キャプチャドメイン」とは、一定方向の場合の説明に用いられている。双方向の場合において、各ドメインは、ランチ及びキャプチャの両方の特徴を有する。従って、双方向の場合を説明する目的のために、両方の間で双方向の伝達が行われる「コアドメイン」６０２と「Ｉ／Ｏドメイン」６０４とに参照がなされる。コアドメイン６０２は、コアクロック６２０によって駆動される。Ｉ／Ｏドメイン６０４は、Ｉ／Ｏクロック６２４を生成するＩ／Ｏクロック発振器６０３を有する。コアクロック６２０と、Ｉ／Ｏドメインクロック発振器とが、同じソースクロック１００からそらされる。ある特定の実施形態において、コアドメイン６０２からＩ／Ｏドメイン６０４へとデータを提供する第１のデータ通信線６１０を有するコアドメイン・ランチ素子６０６とＩ／Ｏドメイン・キャプチャ素子６０８とが存在する。更に、Ｉ／Ｏドメイン６０４からコアドメイン６０２へとデータを提供する第２のデータ通信線６１６を有するＩ／Ｏドメイン・ランチ素子６１２とコアドメイン・キャプチャ素子６１４とが存在する。このコアドメイン及びＩ／Ｏドメインの命名法を用いた結果として、限定的な解釈がなされないことが当業者であれば理解されよう。この命名法は、例示を目的として、本教示による双方向の実施形態を説明する目的のために使用されている。コアドメイン６０２は、コアビーコン７００を生成するコアビーコン発生器６１８を有し、該コアビーコン発生器６１８はコアクロック６２０によって駆動される。ある特定の実施例において、コアビーコン７００は、交互に繰り返す１と０とのデータパターンである。コアビーコン発生器６１８は、Ｉ／Ｏ・例外検出器６２２に提供するためにコアビーコン７００をコアビーコン送信線６０８上へと提供する。Ｉ／Ｏ・例外検出器６２２は、Ｉ／Ｏクロック６２４によって駆動される。Ｉ／Ｏ・例外検出器６２２が、コアビーコン内において例外を識別する時には（例えば７０４を参照）、Ｉ／Ｏ・例外検出器６２２は、第１の例外検出信号６２６をアサートする。アサートされた第１の例外検出信号６２６に応答して、位相最適化ステートマシン１３０は、Ｉ／Ｏクロック６２４の第１の相対位相位置を記録する。Ｉ／Ｏドメイン６０４は、コア・例外検出器６３２によって受信されるためのＩ／Ｏ・ビーコン通信線６３０にわたる送信のためにＩ／Ｏ・ビーコン７０２を生成するＩ／Ｏ・ビーコン発生器６２８を含む。ステートマシン１３０は、ソースクロック１００の単一周期の連続的なインクリメントによってＩ／Ｏクロック６２４の位相を調整し、それにより、第２の例外が検出されるまで、コアクロック６２０に対する、Ｉ／Ｏ・ビーコン７０２の位相関係もまた調整される。コア・例外検出器６３２が、Ｉ／Ｏ・ビーコン７０２内において例外を識別する時には、コア・例外検出器６３２は、第２の例外検出信号６３４をアサートする。第２の例外検出信号６３４に応答して、位相較正ステートマシン１３０は、Ｉ／Ｏクロック６２４の現在の相対位相位置を記録する。データ通信の両方向についてのセットアップ時間とホールド時間とが最適化される、コアクロック６２０に対するＩ／Ｏクロック６２４の位相を、配置することが望ましい。従って、最適化された位相関係は、例外が検出されない最大時間の中間にある。
【００１８】
具体的に図７に関して、図６の本教示によるプロセス内において存在する信号を示す例示的なタイミング図が示されている。図７は、ｆの周波数におけるソースクロック１００、及びｆ／Ｎの周波数におけるコアクロック６２０（ここでＮ＝５）、並びに、同様にｆ／Ｎの周波数におけるＩ／Ｏクロック６２４を示す。図示された実施形態において、コアクロック６２０の周波数とＩ／Ｏクロック６２４の周波数とは等しい。代替の実施形態は、コアクロック６２０とＩ／Ｏクロック６２４とが異なる周波数であるが、ソースクロック１００の周波数がコアクロック６２０とＩ／Ｏクロック６２４との両方の整数倍である状況を含むことができる。コアビーコン７００が、交互に繰り返す１と０とのデータパターンとして示されている。コアビーコン７００は、コアクロック６２０を用いて生成され、コアクロック６２０の立ち上がりエッジにおいて遷移を開始するものとして示されている。遷移時間に加えて、ロジックを受けるためのセットアップ時間とホールド時間とが不定の遷移領域７０１として表されている。コアクロック６２０に対して、ソースクロックの周期の２分の１の時間がシフトされたものとして、Ｉ／Ｏクロック６２４が、６２４（ａ）において第１の相対位相位置内に示されている。この関係は、一例として並びに明瞭化すること及び説明することの目的として示されている。プレシオクロナス・クロックは無限の数の様々な位相関係を有することができることが当業者であれば理解されよう。コアビーコン７００が、Ｉ／Ｏクロック６２４の立ち上がりエッジにおいてＩ／Ｏ・例外検出器６２２内へとクロック入力され、コアクロック６２０のＩ／Ｏクロック６２４（ａ）に対する位相関係は、コアビーコン７００が、その不定の状態にあることを示す。従って、例外は、２つのクロック６２０及び６２４（ａ）の相対位相において検出されることになる。参照番号７０４を参照されたい。ステートマシン１３０は、Ｉ／Ｏクロック６２４の現在の位相位置を格納することによって、第１の例外検出信号６２６のアサートに応答する。該ステートマシンは、次いで、ソースクロック１００の単一周期に等しい連続的なインクリメントにおいてＩ／Ｏクロックの位相を調整する。それぞれのインクリメントした位相変化ごとに、ステートマシン１３０は、一次停止させて、検出された例外を待つ。見つからなければ、ステートマシン１３０は、次のインクリメントした位相に変化させる。Ｉ／Ｏクロック６２４（ｂ）は、ステートマシン１３０が２つの調整を終えた後の、調整されていないコアクロック６２０に対する、Ｉ／Ｏクロック６２４の位相を表す。２つの調整の結果は、ソースクロックの２つの周期分だけ、Ｉ／Ｏクロック６２４（ａ）のオリジナルの位相関係に対してシフトされたＩ／Ｏクロック６２４（ｂ）である。参照番号７０６を参照されたい。１周期の中間位相調整のためのタイミング図は、明瞭化の目的のため、示されていない。第１の位相調整されたＩ／Ｏビーコン７０２（ｂ）が、第１の位相調整されたＩ／Ｏクロック６２４（ｂ）によって生成される。第１の位相調整されたＩ／Ｏクロック６２４（ｂ）に対する、コアクロック６２０の位相関係において、第１の位相調整されたＩ／Ｏビーコン７０２（ｂ）が、適切に、正常なタイミング関係内にあるため、コアクロック６２０の立ち上がりエッジは、Ｉ／Ｏビーコン７０２（ｂ）のデータパターンを適正に示す。参照番号７０８を参照されたい。第２の位相調整されたＩ／Ｏクロック６２４（ｃ）に到達させるため、ソースクロック１００の２つの周期に等しい２つの更なる調整が、Ｉ／Ｏクロック６２４になされる。参照番号７１０を参照されたい。第２の位相調整されたＩ／Ｏビーコン７０２（ｃ）が、第２の位相調整されたＩ／Ｏクロック６２４（ｃ）を用いて生成される。タイミング図からわかるように、コアクロック６２０の立ち上がりエッジは、第２の位相調整されたＩ／Ｏビーコン７０２（ｃ）の中間の遷移領域において発生する。参照番号７０８を参照されたい。従って、コア・例外検出器６３２は、Ｉ／Ｏビーコン７０２（ｃ）内において例外を識別し、第２の例外検出信号６３４をアサートする。ステートマシン１３０は、Ｉ／Ｏクロック（ａ）のオリジナルの位相に対する、Ｉ／Ｏクロック（ｃ）の現在の位相を格納することによって、アサートされた第２の例外検出信号６３４に応答する。参照番号７１２を参照されたい。
【００１９】
第１の例外は、タイミング位置７０４として示される時間０において検出される。第２の例外は、タイミング位置７１２として示される時間４において検出される。この例において、Ｉ／Ｏクロック６２４の全周期にわたる位相調整において、５つ（又は５回）のタイミングのインクリメントが存在する。下記の表の第１の行は、０〜４の反復するタイミングのインクリメントを表す。下記の表の第２の行は、いずれかの伝達方向において例外が検出されているか又は検出されていないかどうかを表す。従って、図６に示された例によって、次の結果が生じる。
【００２０】
【表１】
2006295925.tif 000003
【００２１】
高速クロックを用いる大抵の場合において、双方向の場合についての位相最適化ステートマシン１３０は、コアクロック６２０に対するＩ／Ｏクロック６２４の位相がその周期区間にわたって調整される時には、少なくとも１つの例外を見つけるであろう。例外が見つからない場合には、コアクロック６２０とＩ／Ｏクロック６２４との間の位相関係は、データ通信において影響を与えない。１つの例外だけが見つかる場合には、位相最適化プロセスは、図５において図示された一定方向の場合と同じである。具体的には、Ｉ／Ｏクロック６２４の位相の最適化された調整は、Ｉ／Ｏクロック６２４の初期の位相位置からＮの半分の結果の整数部分であり、すなわちＩＮＴ（Ｎ／２）である。２つか又はそれより多い例外が見つかる場合には、例外が検出されない２つのセクションを画定する、せいぜい２つの、例外のグループ分けをすることが最も見込みがある。位相最適化プロセスは、検出された例外のグループ間の２つのセクションのうちの最大のものを決定し、Ｉ／Ｏクロック６２４の位相を、最大のセクションの中間に配置する。表１のデータに基づいて、２つの例外だけが見つかる。例における第１の例外（「ａ１」）は、時間０において検出され、Ｉ／Ｏクロック６２４の調整されていない位相関係を表す。第２の例外（「ａ２」）は、時間４において検出され、Ｉ／Ｏクロック６２４の調整されていない位相関係に対して、ソースクロック１００の４つの周期分が調整されたＩ／Ｏクロック６２４を表す。検出された例外間の第１のセクションは、次のように計算される。
【００２２】
ｄ１＝ａ２−ａ１  ・・・（２）
従って、この例において、ｄ１＝ａ２−ａ１＝４である。検出された例外間の第２のセクションは、次のように計算される。
【００２３】
ｄ２＝（ａ１＋Ｎ）−ａ２  ・・・（３）
この例において、ｄ２＝（ａ１＋Ｎ）−ａ２＝（０＋５）−４＝５−４＝１である。従って、最大セクションは、ｄ１＝４となるように決定される。最大セクションの中間は、セクションが計算される位相位置から、ｃ周期となるように計算される。
【００２４】
【数１】
2006295925.tif 000004
【００２５】
ステートマシンは、セクションがＩ／Ｏクロック６２４の現在の位相位置に基づいて計算される位相位置から、Ｉ／Ｏクロック６２４の位相をソースクロックのｃ周期に配置するためにソースクロック１００のどれだけの数のスリップが適切であるかを決定する。従って、この例において、次のようになる。
【００２６】
【数２】
2006295925.tif 000005
【００２７】
ｄ１が最大セクションの場合には、最適化された位相関係は、ａ１からのｃソースクロック周期であり、ｄ２が最大セクションの場合には、最適化された位相関係は、ａ２からのｃソースクロック周期である。この例において、最大セクションはｄ１＝４であり、最大セクションの中間は、ａ１例外からｃ＝２のソースクロック周期である。更に、Ｉ／Ｏクロック６２４の現在の位相位置は、ａ２である。従って、コアクロック６２０に対する、Ｉ／Ｏクロック６２４の最適化された位相関係は、Ｉ／Ｏクロック６２４のオリジナルの位相位置からの２ソースクロック周期であり、この例において、参照番号７０６として示されている。最適化されたＩ／Ｏクロック６２４は、Ｉ／Ｏクロック６２４（ｄ）として図内に示されている。
【００２８】
具体的に図８に関して、本教示による、双方向の位相最適化プロセスのある特定の実施形態のフローチャートが示されている。該プロセスは、図７において示され、図６に示されたステートマシン１３０に適しており、最大で２つの検出された例外が期待される状況に適用でき、１つがコアビーコン７００についてであり、もう１つがＩ／Ｏビーコン７０２についてである。初期化ステップ５００は、一定方向の実施形態において示されたものと同じであり、該実施形態において、第１及び第２の例外検出器６２２、６３２をリセットするために、キャプチャリセット信号１３６がアサートされて、可変カウンタが零に、すなわちｉ＝０に設定される。ステートマシン１３０は、キャプチャリセット信号１３６をデアサートし、コアビーコン７００内か又はＩ／Ｏビーコン７０２内において検出されることになる例外を待つように、ある期間の間、一次停止させる（５０２）。まず最初に（８０２）、コアビーコンの例外が検出される場合（８０４）には、Ｉ／Ｏクロック６２４の現在の位相状態が、第１の検出された例外ａ１として記録される。その特定の実施形態において、コアビーコン例外検出器６２２は、「スティッキー検出」であり、プロセスの残りについては、アサートされたままとなる。従って、コアビーコン例外検出信号６２６の第１のアサートだけが識別される。コアビーコン例外が検出されない場合（８０６）には、何も実行されず、プロセスが継続する。ステートマシン１３０は、次いで、Ｉ／Ｏビーコン７０２内において何らかの例外が検出されたかどうかを判定する（８０８）。まず最初に、例外が検出された場合（８１０）には、Ｉ／Ｏクロックの現在の位相状態が、第２の検出された例外ａ２として記録される。この特定の実施形態において、Ｉ／Ｏビーコン例外検出器６３２もまた、「スティッキー検出」であり、プロセスの残りについて、アサートされたままとなる。従って、Ｉ／Ｏビーコン例外検出信号６３４の第１のアサートだけが識別される。例外が検出されない場合（８１２）には、何も実行されない。ａ１とａ２とが設定されるか、又は可変カウンタｉが、単一Ｉ／Ｏクロック６２４周期内においてソースクロック１００の周期数、すなわちＮに等しい場合には、例外が全く期待されず、そのプロセスは最適化ステップ（８１６）に継続する。ａ１とａ２とが設定されず、且つ、可変カウンタｉがＮに等しくない場合には、ステートマシン１３０は、ソースクロック１００の１周期分だけＩ／Ｏクロック６２４をスリップさせるためにスリップ信号１３２をアサートし（５０６）、可変カウンタを１だけ増加させて、調整されたＩ／Ｏクロック６２４の状態で、一時停止ステップ（５０２）へと戻す。そのプロセスは、両方の例外が記録されるまでか、又は可変カウンタがＮに等しくなるまで繰り返される。両方の例外が設定されるか、又は可変カウンタがＮに等しくなった時には、ステートマシン１３０は、例外が１つだけが見つかった場合には検出された例外から約１８０度とするか、或いは、２つの例外が見つかった場合には検出された例外間の差の最大値における中間に、Ｉ／Ｏクロック６２４の位相を位置決めすることによって、コアクロック６２０に対して、Ｉ／Ｏクロック６２４の位相を最適化させる（８１６）。
【００２９】
コアクロック６２０の全周期にわたってＩ／Ｏクロック６２４の位相が調整される時に、２つよりも多い例外が検出される可能性のある、１つの代替の双方向の実施形態において、可変のａ１とａ２とが、Ｎの要素を有する例外アレイａ（＊）に置き換えられる。そのアレイの各要素は、時間スリップ０〜Ｎ−１を表し、各々の時間スリップにおいて例外が検出されるかどうかに依存して論理１か又は論理０である。ステートマシン１３０が例外を識別する時には、ステートマシン１３０は１を適切なアレイ素子内に格納し、例外が検出されない場合には０を格納する。各例外が検出された後には、ステートマシン１３０は、キャプチャリセット信号１３６をアサートする。例外が検出されない２つのセクションの最大値を識別するための例外アレイ内のデータに基づく計算は、詳細には説明されていないが、当業者の能力の範囲内にある。この代替の双方向の実施形態は、より厳密であるが、最適化プロセスを完了するためにより多くの時間がかかる。ソースクロック１００が、通信システム内において識別されているセットアップ及びホールド時間に対して、十分に少ないインクリメントで済む時には適切である。
【００３０】
具体的に図９に関して、本教示による別の一定方向の実施形態は、データ通信線１１４にわたってビーコンを伝達し、それにより、専用のビーコン送信線１２２を不要にしている。例外検出器１２６が、２：１の多重化装置９００を介して、データ通信線１１４と伝達し合うことが当業者であれば理解されよう。ステートマシン１３０によって実行されるプロセスは、本明細書内において開示した実施形態に類似する。機能データとビーコン２００とのについてのデータ通信線を共有する実施形態において、ステートマシン１３０は、装置の通常データ送信機能を開始するために最適化ステップの後に、多重化装置９００の選択入力による受け取りのために、最適化された位相信号９０２をアサートする。有利なことに、ビーコン発生器１２０は、ランチ素子１１０にしっかりと結合される。例外検出器１２６が、共に配置されることによってキャプチャ素子１１２にしっかりと結合されている場合には、位相最適化装置及びプロセスは、機能データ通信のタイミングをより高度に表す。不都合なことに、多重化装置９００は、データ送信のタイミング経路内に配置され、それにより、容認不可能なレイテンシを挿入する。図９の実施形態を、当業者によって双方向の場合に拡張することができる。
【００３１】
本教示による別の実施形態は、コア例外検出器６３２とコアビーコン発生器６１８とのうちの１つか又は両方が、Ｉ／Ｏドメイン６０４内に配置される。有利なことに、位相最適化のためのほとんどの電子装置が、ドメイン６０２、６０４のうちの１つだけに配置される。製品の提案により、Ｉ／Ｏドメイン６０４における電子装置のベンダーは、電子装置をクライアントのコアドメイン６０２内に存在させることを要求することによって、クライアント設計に影響を与える必要がない。不都合なことには、ビーコン発生器（複数可）と例外検出器（複数可）とが、検出された例外が２つのドメイン間のデータ送信特性を表しているという仮定を支援するために、データ送信及び受信電子装置に近接して結合されない。従って、ビーコン発生器（複数可）１２０、６１８、６２８がデータ送信電子装置１１０、６０６、６１２と共に配置され、且つ、例外検出器（複数可）１２６，６２２、６３２がデータ受信ハードウェアと共に配置される、実施形態は、２つのドメイン６０２と６０４との間のデータ通信システム内において例外を識別するためのより正確な実施形態であることが確信される。
【００３２】
本教示による実施形態は、特許請求の範囲内の特定例を示すことを目的として説明される。代替の実施形態は、ビーコンが、本明細書内において示した交互に繰り返す１と０のデータパターンとは別の反復するデータパターンであることを含む。ランチクロック１０６及びキャプチャクロック１０８は、依然としてプレシオクロナスであり且つ同じソースクロック１００から派生している状態で、異なる周波数とすることもできる。この場合には、キャプチャクロック１０８は、ランチクロック１０６の全周期区間にわたってスリップさせられる。他の実施形態と適応物とが、本教示を与えられた当業者によって生じられ、添付の特許請求の範囲内において考慮される。
【００３３】
有利な点：１．最小のレイテンシ。２．ランチドメインとキャプチャドメインとについて、伝搬遅延を一定にさせる必要が無い。３．既存の回路に基づいて最適化される。４．その他。
【００３４】
代替できる点：１．ビーコンは、他の既知パターンとすることもできる。２．位相調整を行う能力を有する分周器のための他の設計とすることもできる。
【００３５】
以下において、本発明の構成要件の組み合わせからなる例示的な実施形態を示す。
１．プレシオクロナスなランチクロック及びキャプチャクロックによって駆動されたランチドメインとキャプチャドメインとの間のデータ転送を最適化するための方法であって、  
前記ランチドメインから前記キャプチャドメインへと代表データのビーコンを送信し、
前記キャプチャクロックを用いて前記キャプチャドメイン内に前記ビーコンを取り込み、
前記捕捉されたビーコンを例外について監視する
といったステップを含み、
前記ビーコンは、前記ランチドメイン内において生成され、前記ランチクロックによって駆動され、
例外が検出されない場合には、前記キャプチャクロックの位相を調整し、及び、例外が検出されるまで、前記送信するステップと前記取り込むステップと前記監視するステップとを繰り返し、
例外が検出された場合には、前記ランチクロックに対して、前記キャプチャクロックの位相を最適化する
ことを含むことからなる、方法。
２．前記最適化するステップは、前記捕捉されたビーコン内において前記例外が識別された時の前記キャプチャクロックの位相に対して約１８０度位相がずれることになるよう、前記キャプチャクロックの位相を調整することを含むことからなる、上記１に記載の方法。
３．第１の識別された例外に基づいて、第１の例外位相関係を格納し、
前記送信するステップと前記取り込むステップと前記監視するステップとを繰り返し、
第２の識別された例外に基づいて、第２の例外位相関係を格納し、及び、
前記第１及び第２の例外位相関係について、前記ランチクロックの位相に対して、前記キャプチャクロックの位相を最適化する
といったステップを更に含むことからなる、上記１に記載の方法。
４．前記最適化するステップは、前記第１及び第２の例外位相関係に対する前記キャプチャクロックの位相関係を調整して、前記第１及び第２の例外位相関係の差分を最大化させることを含むことからなる、上記３に記載の方法。
５．前記ランチクロックと前記キャプチャクロックとは、同じ周波数を有し、該周波数は、ソースクロックの倍数であり、
前記調整するステップは、前記ソースクロックの少なくとも１周期区間だけ位相をスリップさせることを含むことからなる、上記１に記載の方法。
６．前記ランチ及びキャプチャクロックの前記周波数は、前記ソースクロックの周波数の１／Ｎであり、
前記最適化するステップは、前記キャプチャクロックの位相を、前記ソースクロックの、Ｎ／２以下の整数値の追加周期区間だけスリップさせることを含むことからなる、上記５に記載の方法。
７．前記Ｎは奇数の整数である、上記６に記載の方法。
８．前記ビーコンは、論理１と論理０とのデータストリームを含み、及び、前記例外は、１と０とからなるグループから選択された少なくとも２つの論理値のデータパターンを含むことからなる、上記１に記載の方法。
９．前記ビーコンは、前記キャプチャクロックの周波数の半分の周波数であることからなる、上記８に記載の方法。
１０．プレシオクロナスなランチクロック及びキャプチャクロックによって駆動されたランチドメインとキャプチャドメインとの間のデータ転送を最適化するための装置であって、  
前記ランチクロックによって駆動されたランチドメイン内のビーコン発生器であって、ビーコンを生成する、ビーコン発生器と、
前記キャプチャクロックによって駆動されたキャプチャドメイン内の例外検出器であって、前記ビーコンを捕捉されたビーコンとして表し、該捕捉されたビーコン内において検出された例外を示すことからなる、例外検出器と、
前記検出された例外に応答するステートマシンであって、前記ランチクロックと前記捕捉されたビーコンとの間の相対位相を最適化するために、前記キャプチャクロックの位相を調整する、ステートマシン
とを備える、装置。
１１．前記ステートマシンは、前記捕捉されたビーコン内において前記例外が検出された時の前記キャプチャクロックの位相に対して約１８０度位相がずれることになるよう、前記キャプチャクロックの位相を調整する、上記１０に記載の装置。
１２．前記ステートマシンは、第１及び第２の例外検出器に応答して、第１及び第２の検出された例外に基づいて、前記キャプチャクロックを最適化するために前記キャプチャクロックの位相を調整する、上記１０に記載の装置。
１３．前記ステートマシンは、第１の検出された例外と第２の検出された例外との間の差分を最大化させるために、前記キャプチャクロックの位相を調整する、上記１２に記載の装置。
１４．前記ランチクロックと前記キャプチャクロックとは、同じ周波数を有し、該周波数は、ソースクロックの倍数であり、前記ステートマシンは、前記ソースクロックの周期区間に等しいインクリメントにおいて、前記キャプチャクロックを調整することからなる、上記１０に記載の装置。
１５．前記ランチ及びキャプチャクロックの前記周波数は、前記ソースクロックの周波数の１／Ｎであり、
前記ステートマシンは、前記キャプチャクロックの位相を、前記ソースクロックの、Ｎ／２以下の整数値の追加周期区間だけ、前記例外が検出された時の前記キャプチャクロックの位相に対してスリップさせることによって、前記キャプチャクロックを最適化することからなる、上記１４に記載の装置。
１６．前記Ｎは奇数の整数である、上記１５に記載の装置。
１７．前記ビーコンは、論理１と論理０とのデータストリームを含み、前記例外は、１と０とからなるグループから選択された少なくとも２つの連続した論理値のデータパターンを含むことからなる、上記１０に記載の装置。
１８．前記ビーコンは、前記キャプチャクロックの周波数の半分の周波数である、上記１７に記載の装置。
【図面の簡単な説明】
【００３６】
【図１】本教示による、方向性の無い実施形態のブロック図である
【図２】図１において示された実施形態内の例示的な信号のタイミング図である。
【図３】本教示による、例外検出器の一実施形態の論理図である。
【図４】本教示による一実施形態内において使用するのに適切なスリップによる分周器の一実施形態の論理図である。
【図５】本教示による位相較正ステートマシンによって実行されるプロセスのフローチャートである。
【図６】本教示による双方向性の実施形態のブロック図である。
【図７】図６において示された実施形態内の例示的な信号のタイミング図である。
【図８】本教示による図６内に示された位相較正ステートマシンの実施形態によって実行される双方向の位相較正プロセスのフローチャートである。
【図９】本教示による、代替の一定方向の実施形態のブロック図である。
【符号の説明】
【００３７】
１００  ソースクロック
１０２  ランチドメイン
１０４  キャプチャドメイン
１０６  ランチクロック
１０８  キャプチャクロック
１２０  ビーコン発生器
１２６  例外検出器
１３０  ステートマシン
２００  ビーコン
【図１】
2006295925.tif 000006
【図２】
2006295925.tif 000007
【図３】
2006295925.tif 000008
【図４】
2006295925.tif 000009
【図５】
2006295925.tif 000010
【図６】
2006295925.tif 000011
【図７】
2006295925.tif 000012
【図８】
2006295925.tif 000013
【図９】
2006295925.tif 000014