(57)【要約】【解決手段】ある実施形態によると、装置は、第１のクロックに従って動作する第１の処理部と、第１のクロックとは独立して動作する第２のクロックに従って動作する第２の処理部と、第１の通信部と第２の通信部とに結合される同期制御部と、を備える。同期制御部は、（ｉ）第１の通信部に、第１の処理部が第２の処理部に信号を送信する第１の時間の表示を、第１のクロックに従って生成させ、（ｉｉ）第２の処理部に、第２の処理部が信号を受信する第２の時間の表示を、第２のクロックに従って生成させ、（ｉｉｉ）第１の時間の表示と第２の時間の表示とに基づいて、第１のクロックと第２のクロックとの間のオフセットを決定すべく構成される。【選択図】図２
2015506626.tif 000002
【特許請求の範囲】
【請求項１】
第１のクロックに従って動作する第１の処理部と、
前記第１のクロックとは独立して動作する第２のクロックに従って動作する第２の処理部と、
前記第１の処理部と前記第２の処理部とに結合される同期制御部と、を備える装置であって、
前記同期制御部は、
前記第１の処理部に、前記第１の処理部が前記第２の処理部へ信号を送信する第１の時間の表示を、前記第１のクロックに従って生成させる第１の動作と、
前記第２の処理部に、前記第２の処理部が前記信号を受信する第２の時間の表示を、前記第２のクロックに従って生成させる第２の動作と、
前記第１の時間の表示と前記第２の時間の表示とに基づいて、前記第１のクロックと前記第２のクロックとの間のオフセットを決定する第３の動作とを実行する
装置。
【請求項２】
前記第１の処理部が前記第２の処理部に前記信号を送信する際に介する汎用インターフェース
をさらに備える、請求項１に記載の装置。
【請求項３】
前記汎用インターフェースは汎用入出力（ＧＰＩＯ）ピン、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩＥ）ポート、およびセキュアデジタル入出力（ＳＤＩＳ）スロットのうちの１つを有する
請求項２に記載の装置。
【請求項４】
前記信号はパルスである
請求項２または３に記載の装置。
【請求項５】
前記同期制御部は、周期的に前記第１の動作および前記第２の動作を繰り返し、前記第１のクロックと前記第２のクロックとの間の周波数の差を決定する
請求項１から４のいずれか１項に記載の装置。
【請求項６】
前記第１の処理部は、有線通信リンクを介してデータを受信および送信する有線通信部と、無線通信リンクを介してデータを受信および送信する無線通信部とのうちのいずれか一方であり、
前記第２の処理部は、前記有線通信部と、前記無線通信部とのうちの他方であり、
前記装置は、前記有線通信部と前記無線通信部との間でデータをやり取りする
請求項１から５のいずれか１項に記載の装置。
【請求項７】
前記有線通信リンクはイーサネット（登録商標）リンクである
請求項６に記載の装置。
【請求項８】
前記第１の処理部と前記同期制御部とに結合され、前記第１の時間の表示を記憶する第１のハードウェアレジスタと、
前記第２の処理部と前記同期制御部とに結合され、前記第２の時間の表示を記憶する第２のハードウェアレジスタと
をさらに備える請求項１から７のいずれか１項に記載の装置。
【請求項９】
第１のクロックに従って動作する第１の処理部と、前記第１のクロックとは独立して動作する第２のクロックに従って動作する第２の処理部とを有するデバイス内の同期方法であって、
前記第１の処理部に、前記第１の処理部が前記第２の処理部へ信号を送信する第１の時間の表示を、前記第１のクロックに従って生成させる段階と、
前記第２の処理部に、前記第２の処理部が前記信号を受信する第２の時間の表示を、前記第２のクロックに従って生成させる段階と、
前記第１の時間の表示と前記第２の時間の表示とを基にして、前記第１のクロックと前記第２のクロックとの間のオフセットを決定する段階と
を備える方法。
【請求項１０】
前記第１の処理部に、汎用入出力（ＧＰＩＯ）ピン、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩＥ）ポート、およびセキュアデジタル入出力（ＳＤＩＳ）スロットのうちの１つを介して、前記信号を送信させる段階
をさらに備える、請求項９に記載の方法。
【請求項１１】
前記第１の処理部に、パルスの形状で前記信号を送信させる段階
をさらに備える、請求項９または１０に記載の方法。
【請求項１２】
前記信号は、前記第１の処理部と前記第２の処理部との間で伝送されるコマンドと関連付けられ、前記コマンドは前記第１の処理部と前記第２の処理部との間での制御情報の交換のために定められたメッセージングプロトコルに従う
請求項９から１１のいずれか１項に記載の方法。
【請求項１３】
前記第１の処理部に、前記信号を複数の信号の１つとして生成させる段階と、
前記第１の時間の表示および前記第２の時間の表示の複数のバージョンを、前記複数の信号を用いて生成する段階と、
前記第１の時間の表示および前記第２の時間の表示の前記複数のバージョンを基にして、前記第１のクロックと前記第２のクロックとの間の周波数の差を決定する段階と
をさらに備える、請求項９から１２のいずれか１項に記載の方法。
【請求項１４】
前記第１の処理部は第１の通信部であり、前記第２の処理部は第２の通信部であり、
前記第１の通信部のポートを介してデータパケットを受信する段階と、
前記デバイスに関連付けられる伝播遅延を、前記決定されたオフセットおよび前記決定された周波数の差とを用いて決定する段階と、
前記伝播遅延の表示の提供を含め、前記第２の通信部のポートを介して前記データパケットを送信する段階と
をさらに備える、請求項１３に記載の方法。
【請求項１５】
前記第１の通信部は有線通信部および無線通信部のうちのいずれか一方であり、前記第２の通信部は前記有線通信部および前記無線通信部のうちのもう一方である
請求項１４に記載の方法。
【請求項１６】
処理部であって、第１の処理部としての前記処理部と、第２の処理部と、前記第１の処理部および前記第２の処理部に結合される同期制御部と、を有するデバイス内で動作する処理部であって、前記第１の処理部は、
前記第２の処理部は別個の第２のクロックに従って動作するが、前記第１の処理部が動作する際に従う第１のクロックと、
前記第１の処理部が前記第２の処理部に結合される際に介するインターフェースであって、前記処理部は、前記インターフェースを介して前記第２の処理部へ周期信号を送信し、前記第１の処理部が前記第２の処理部へ前記周期信号を送信する第１の時間の表示を、前記第１のクロックに従って生成する、インターフェースと、を備え、
前記同期制御部は、前記第２の処理部に、前記第２の処理部が前記周期信号を受信する第２の時間の表示を、前記第２のクロックに従って生成させ、前記第１の時間の表示および前記第２の時間の表示に基づいて同期パラメータを生成する
処理部。
【請求項１７】
前記インターフェースは、汎用入出力（ＧＰＩＯ）ピン、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩＥ）ポート、およびセキュアデジタル入出力（ＳＤＩＳ）スロットのうちの１つを有する
請求項１６に記載の処理部。
【請求項１８】
前記周期信号はパルスである
請求項１６または１７に記載の処理部。
【請求項１９】
前記同期パラメータは、前記第１の処理部の前記第１のクロックと前記第２の処理部の前記第２のクロックとの間のオフセットと、前記第１の処理部の前記第１のクロックと前記第２の処理部の前記第２のクロックとの間の周波数の差と、のうちの少なくとも１つを有する
請求項１６から１８のいずれか１項に記載の処理部。
【請求項２０】
前記第１の処理部は、有線通信リンクを介してデータを受信および送信する有線通信部と、無線通信リンクを介してデータを受信および送信する無線通信部と、のうちのいずれか一方であり、
前記第２の処理部は、前記有線通信部と前記無線通信部のうちのもう一方である
請求項１６から１９のいずれか１項に記載の処理部。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
本開示は、ともに「Ｗｉｒｅｌｅｓｓ  ＡＶＢ  Ｒｅｑｕｉｒｅｍｅｎｔｓ」なる名称の２０１２年１月４日に出願された米国仮特許出願第６１／５８２，９５３号および２０１２年１０月２日に出願された米国仮特許出願第６１／７０８，８６６号の利益を主張しており、その両出願の開示内容をここに参照として組み込む。
【０００２】
本開示は、一般に通信デバイスに関し、特に、通信デバイスまたは通信デバイスのコンポーネントの同期化に関する。
【背景技術】
【０００３】
本明細書の背景技術の説明は、本開示の内容を概略的に提供するためのものである。ここに名を挙げられている発明者の研究は、背景技術の章で説明される範囲において、出願時に従来技術として別途みなし得ない記述の態様とともに、明示的にも暗示的にも本開示に対して従来技術とは認めない。 
【０００４】
通信デバイスが有線または無線通信チャネルでデータを交換する場合、データが伝播する媒体は、中間またはエンドポイントの通信デバイスにおいての処理同様、データ交換にさまざまな伝播遅延をもたらす。例えば、一対の通信デバイスを接続するイーサネット（登録商標）リンクは一般的に通信フレームを数マイクロ秒遅延させ、伝播遅延は一般的にイーサネット（登録商標）リンクの長さに依存する。一方、フレームを受信し、受信したフレームを処理し、さらにこのフレームを送信するネットワークルータは、より長い、一般的にミリ秒単位で測定される遅延をもたらす場合がある。
【０００５】
通信プロトコルの中には、データユニットのタイムスタンプ情報を送信する技術を規定するものもある。しかし、送信デバイスおよび受信デバイスは、異なる時間に開始され、また異なるレートで動作するクロックを有してもよい。したがって、通信デバイスがタイミングと同期情報を交換できる規格が開発されてきた。特に、米国電気電子学会（ＩＥＥＥ）８０２．１ＡＳ規格はローカルエリアネットワーク（ＬＡＮｓ）を同期するプロトコルと諸手続きを規定する。今日、イーサネット（登録商標）ポートはＩＥＥＥ８０２．１ＡＳ規格およびＩＥＥＥ８０２．３ａｆ（「パワーオーバーイーサネット」）規格を用いて同期される。別の例として、無線ポートはＩＥＥＥ８０２．１ＡＳ規格およびＩＥＥＥ８０２．１１ｖ規格を用いて同期される。ＩＥＥＥ８０２．１１ｖ規格は無線ネットワークに接続されるクライアントデバイスのための構築技術を規定する。
【発明の概要】
【課題を解決するための手段】
【０００６】
ある実施形態において、装置は第１のクロックに従って動作する第１の処理部と、第１のクロックとは独立して動作する第２のクロックに従って動作する第２の処理部と、第１の通信部と第２の通信部に結合される同期制御部とを備える。同期制御部は、（ｉ）第１の処理部が信号を第２の処理部へ送信する第１の時間の表示を、第１のクロックに従って第１の通信部に生成させ、（ｉｉ）第２の処理部が信号を受信する第２の時間の表示を、第２のクロックに従って第２の処理部に生成させ、（ｉｉｉ）第１のクロックと第２のクロック間のオフセットを、第１の時間の表示と第２の時間の表示に基づき決定すべく構成されている。
【０００７】
さまざまな実装で、１または複数の以下に述べる特徴を含み得る。装置は、第１の通信部が第２の通信部へ信号を送信する際に介する汎用インターフェースを備えてもよい。汎用インターフェースは、１または複数の（ｉ）汎用入出力（ＧＰＩＯ）ピン、または（ｉｉ）ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩＥ）ポート、または（ｉｉｉ）セキュアデジタル入出力（ＳＤＩＳ）スロットを備えてもよい。信号はパルスであってもよい。同期制御部は周期的に（ｉ）および（ｉｉ）の動作を繰り返し、第１のクロックと第２のクロック間の周波数の差を決定すべく構成されてもよい。第１の処理部は、（ｉ）有線通信リンクを介してデータを送受信すべく構成される有線通信部と、（ｉｉ）無線通信リンクを介してデータを送受信すべく構成される無線通信部のうちの１つであってもよく、第２の処理部は有線通信部と無線通信部のうちのもう一方であってよく、装置は有線通信部と無線通信部間でデータをやり取りすべく構成されていてもよい。有線通信リンクはイーサネット（登録商標）リンクであってよい。装置は、第１のハードウェアレジスタと第２のハードウェアレジスタを備え、第１のハードウェアレジスタは、第１の処理部と同期制御部とに結合されて第１の時間の表示を記憶し、第２のハードウェアレジスタは第２の処理部と同期制御部とに結合されて第２の時間の表示を記憶してもよい。
【０００８】
別の実施形態は、（ｉ）第１のクロックに従って動作する第１の処理部と、（ｉｉ）この第１のクロックとは独立して動作する第２のクロックに従って動作する第２の処理部とを有するデバイス内での同期方法である。   この方法は、第１の処理部が第２の処理部に信号を送信する第１の時間の表示を、第１のクロックに従って第１の処理部に生成させる段階を含む。さらに、この方法は、第２の処理部が信号を受信する第２の時間の表示を、第２のクロックに従って第２の処理部に生成させる段階を含む。加えて、この方法は、第１のクロックと第２のクロックとの間のオフセットを、第１の時間の表示と第２の時間の表示とを基にして決定する段階を含む。  
【０００９】
さまざまな実装において、１または複数の以下に述べる特徴が含まれ得る。この方法は、（ｉ）汎用入出力（ＧＰＩＯ）ピン、または（ｉｉ）ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩＥ）ポート、または（ｉｉｉ）セキュアデジタル入出力（ＳＤＩＳ）スロットのうちの１つを介して、第１の処理部に信号を送信させる段階を含んでもよい。この方法は、第１の処理部にパルスの形状で信号を送信させてもよい。この信号は、第１の処理部と第２の処理部との間で伝送されるコマンドと関連付けられてもよい。このコマンドは、第１の処理部と第２の処理部との間の制御情報の交換のために定められたメッセージングプロトコルに従う。この方法は、複数の信号のうちの１つとしての信号を第１の処理部に生成させる段階と、複数のバージョンの第１の時間の表示と第２の時間の表示を複数の信号を用いて生成する段階と、第１のクロックと第２のクロックとの間の周波数の差を、複数のバージョンの第１の時間の表示と第２の時間の表示を基にして決定する段階とを含んでもよい。  第１の処理部は第１の通信部であってもよく、第２の処理部は第２の通信部であってもよい。この方法は第１の通信部のポートを介してデータパケットを受信する段階と、決定されたオフセットと決定された周波数の差とを用いて、デバイスに関連付けられる伝播遅延を決定する段階と、第２の通信部のポートを介してデータパケットを送信する段階とを、伝播遅延の表示の提供を併せ、含んでもよい。第１の通信部は有線通信部と無線通信部のうちの一方であってよく、第２の通信部は有線通信部と無線通信部のうちのもう一方であってよい。  
【００１０】
さらに他の実施形態では、処理は、第１の処理部としての処理部と、第２の処理部と、第１の処理部と第２の処理部とに結合される同期制御部を有するデバイス内で動作すべく構成されている。  処理部は、第１の処理部が動作する際に従うクロックと、第１の処理部が第２の処理部に結合される際に介するインターフェースとを有する。第２の処理部は別個のクロックに従って動作する。この処理部は（ｉ）インターフェースを介して第２の処理部に周期信号を送信し、また（ｉｉ）第１の処理部が第２の処理部に周期信号を送信する第１の時間の表示を、第１のクロックに従って生成すべく構成されている。同期制御部は、（ｉ）第２の処理部が周期信号を受信する第２の時間の表示を、第２のクロックに従って、第２の処理部に生成させ、（ｉｉ）同期パラメータを、第１の時間の表示と第２の時間の表示に基づいて生成すべく構成されている。 
【００１１】
さまざまな実装において、１または複数の以下に述べる特徴が含まれ得る。インターフェースは、（ｉ）汎用入出力（ＧＰＩＯ）ピン、または（ｉｉ）ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩＥ）ポート、または（ｉｉｉ）セキュアデジタル入出力（ＳＤＩＳ）スロットのうちのいずれか１つを有してもよい。周期信号はパルスであってもよい。同期パラメータは、（ｉ）第１の処理部のクロックと第２の処理部のクロックとの間のオフセットと、（ｉｉ）第１の処理部のクロックと第２の処理部のクロックとの間の周波数の差と、のうちの少なくとも１つを有してもよい。  第１の処理部は、（ｉ）有線通信リンクを介してデータを送受信すべく構成される有線通信部、または（ｉｉ）無線通信リンクを介してデータを送受信すべく構成された無線通信部と、のうちの一方であってよく、第２の処理部は、この有線通信部と無線通信部のうちのもう一方であってよい。
【図面の簡単な説明】
【００１２】
【図１】一実施形態による、１または複数のデバイスが、１または複数の本開示による同期技術を実現する通信システムの例のブロック図。
【００１３】
【図２】一実施形態による、図１の通信システム内で動作可能なデバイスを含むいくつかのデバイスを介したデータユニットの伝播の例を説明する図。
【００１４】
【図３】一実施形態による、本開示による１または複数の同期技術を用いて同期される複数の通信部を有するデバイスの例のブロック図。
【００１５】
【図４】一実施形態による、同一デバイス内で動作する２つの処理部のクロック間の差を決定する方法の例のフロー図。
【００１６】
【図５】一実施形態による、同一デバイス内で動作する２つの処理部のクロック間の計測した周波数の差を決定する方法の例のフロー図。
【００１７】
【図６Ａ】一実施形態による、データユニットが有線ポートを介して、有線通信部と無線通信部とを有するデバイスに到着する場合に、デバイスによる伝播遅延を決定する方法の例のフロー図。
【００１８】
【図６Ｂ】一実施形態による、データユニットが無線ポートを介して、有線通信部と無線通信部とを有するデバイスに到着する場合に、デバイスによる伝播遅延を決定する方法の例のフロー図。
【発明を実施するための形態】
【００１９】
以下に記述する実施形態において、複数の処理部を有するデバイスは、別個で互いに独立した周期的タイミング信号のソース（簡単のために、別個の「クロック」とする）を有し、簡易なインターフェースを用いて効率的に処理部を同期する。デバイスは、１または複数の、オフセットの差、または必要ならば、クロック間の周波数の差などの同期パラメータを決定する。同期パラメータを用いて、デバイスは正確にデバイスによる伝播遅延を測定し、および／または、例えば、複数の処理部の中の１つの処理部の「グランドマスター」クロックのローカル値を調整することができる。一部の実施形態では、デバイス内で動作する一部のまたはすべての処理部は、ネットワークプロセッサや、無線受信機や、無線送信器などの通信部である。
【００２０】
パケットがデバイス内で動作する１つの通信部のポートに着信し、同一デバイス内で動作する別の通信部のポートから発信される場合、デバイスはパケットにデバイスによる伝播遅延の表示を含ませ、そうでなければ伝播遅延のパケットを受信および／または送信する他のデバイスに通知することができる。時間認識デバイスは、それから、この時間の表示を用いて適切にパケットを処理することができる。例えば、時間認識メディアプロセッサはこの時間の表示を用いて、オーディオビデオブリッジング（ＡＶＢ）アプリケーションの、ディスプレイとスピーカを介してそれぞれ提供される映像と音声を同期することができる。
【００２１】
ある実施形態の例において、デバイスは一対の通信部を有するが、この一対の通信部は、それぞれの通信ポート、プロセッサおよび、この２つの通信部が接続される際に介する汎用インターフェースを介して、パケットを受信および／または送信する。汎用インターフェースは、例えば、汎用入出力（ＧＰＩＯ）ピンを有することができる。通信部は別個のクロックを有する。通信部を同期すべく、同期制御部（ソフトウェア内や、プロセッサ内や、一方または両方の通信部内や、プロセッサや、通信部とは別々に実装されてもよい）は、第１の通信部に、汎用インターフェースを介して第２の通信部へパルスを送信させ、このパルスが送信された時間の表示を、第１の通信部のクロックに従って生成させる。同期制御部はまた、第２の通信部に、このパルスが受信された時間の表示を、第２の通信部のクロックに従って生成させる。この２つの通信部間の距離は、汎用インターフェースの伝播遅延を無視できるほど、十分に小さい。例えば、この伝播遅延は、ほんの数ナノセカンドである場合もある。従って、同期制御部は、この２つの時間の表示を用いて、第１の通信部と第２の通信部の間の時間の差を決定できる。例えば、同期制御部は、各通信部の時刻を決定し、一方の時刻の値を他方の時刻の値から減算することにより、通信部間のＤＣオフセットを計算することができる。
【００２２】
さらに、一部の実施形態では、デバイスは上記手続きを複数回（例えば、１秒に１回）行う。複数のタイムスタンプを用いて、同期制御部は２つの通信部の計測した周波数の差を計算する。例えば、２つの通信部が水晶発振子（または単に「水晶」）を用いれば、同期制御部は、この方法で百万分の一（ＰＰＭ）の差を計算する。ある実施形態によれば、デバイスは次に、ＰＰＭ差とＤＣオフセットとを用いて、伝播遅延を計算する。
【００２３】
一実施形態によると、第１の通信部は、１または数個のイーサネット（登録商標）ポートを介してパケットを受信および／または送信する有線通信部であり、第２の通信部は、１または数個の無線ポートを介してパケットを受信および／または送信する無線通信部である。別の実施形態によると、第１の通信部は無線通信部であり、第２の通信部は有線通信部である。より一般的には、通信部はどのようなタイプのものであってもよく、パルスはデバイス内の任意の通信部から、その他の任意の通信部へ伝送できる。
【００２４】
本開示の技術をより詳細に説明すべく、図１は例として、アクセスポイント（ＡＰ）１２が、クライアントステーション１４Ａと１４Ｂとを有する無線ローカルエリアネットワーク（ＷＬＡＮ）１１で動作する通信システム１０を示す。ＡＰ１２は、ネットワークプロセッサ１８を有するＡＰブリッジデバイス１６のコンポーネントである。ネットワークプロセッサ１８を用いて、ＡＰブリッジデバイス１６は、有線通信リンク２２を介して、通信ネットワーク２０で動作するデバイスと通信する。ＡＰ１２とネットワークプロセッサ１８は、異なる、互いに独立したクロックに従って動作する。ある実施形態において、有線通信リンク２２はイーサネット（登録商標）リンクである。さらに、ある実施形態において、ＷＬＡＮ１１はＩＥＥＥ８０２．１１ｎ規格に従って動作する。
【００２５】
クライアントステーション１４Ａは，メディアプレーヤー３０Ａで動作する。メディアプレーヤー３０Ａはまた、メディアプレーヤー３０Ａが、例えば映像などのメディア出力を提供する際に介するメディアプロセッサ３２Ａを有する。コンポーネント１４Ａと３２Ａは、同一のハウジング内に配設され得る。クライアントステーション１４Ｂは、メディアプロセッサ３２Ｂもまた有するメディアプレーヤー３０Ｂで動作する。コンポーネント１４Ｂと３２Ｂもまた、同一のハウジング内に配設され得る。メディアプレーヤー３０Ｂは、例えば、メディアプロセッサ３２Ｂを用いて、音声出力を提供できる。ある実施形態において、無線局１４Ａとメディアプロセッサ３２Ａは、異なる、互いに独立したクロックに従って動作する。同様に、ある実施形態において、無線局１４Ｂとメディアプロセッサ３２Ｂは、異なる、互いに独立したクロックに従って動作する。
【００２６】
デバイス３０Ａと３０Ｂと１６はそれぞれ、本開示の技術の少なくとも一部により実現される同期制御部４０を有し、対応する処理部を同期する。特に、同期制御部４０Ａはメディアプレーヤー３０Ａで動作し、無線局１４Ａとメディアプロセッサ３２Ａとを同期する。同期制御部４０Ｂはメディアプレーヤー３０Ｂで動作し、無線局１４Ｂとメディアプロセッサ３２Ｂとを同期する。同期制御部４０ＣはＡＰブリッジ１６で動作し、ネットワークプロセッサ１８とＡＰ１２とを同期する。同期制御部４０は、同一デバイス内（例えば、ＡＰブリッジ１６）で動作する一対の通信部を同期でき、同様に同一デバイス内（例えば、メディアプレーヤー３０Ａまたは３０Ｂ）の通信部と処理部とを同期できる。より一般的には、同期制御部４０は、任意の数の通信部および／または任意の数の処理部の同期に用いることができる。
【００２７】
以下により詳細に論じるように、同期制御部４０は、ハードウェアや、ソフトウェアや、ファームウェアを用いて、または、ハードウェアと、ソフトウェアと、ファームウェアとの任意の適切な組み合わせを用いても実装可能である。ある実施形態において、同期制御部４０と、対応する一対の処理部（例えば、ＡＰ１２とネットワークプロセッサ１８）間のインターフェースと、タイムスタンプなどを記憶するバッファとは、同一デバイス内で動作するが異なるクロックに従う処理部を、簡単にまた確実に同期させる低コストのタイムアプリケーションインターフェース（ＴＡＩ）を特徴づける。ＴＡＩの例をより詳細に考察する前に、本開示の技術の少なくとも一部を実現したデバイスを含む数個のデバイスを介したデータユニットの伝播の例が、図２を参照し論じられる。
【００２８】
図２に例示の通信用パイプライン１００は、通信部１０４と有線で結合されるパケット送信元１０２を有するが、通信部１０４は次に、通信デバイス１０６と有線で結合される。通信デバイス１０６はまた、無線通信部１０８と無線で結合される。例示の実施形態において、無線通信部１０８は、デバイス１０４とデバイス１０６とを介してパケット送信元１０２から送信されるデータパケットの「コンシューマ」である。言い換えると、コンポーネント１０２とコンポーネント１０８は、通信用パイプライン１００のエンドポイントを定義する。
【００２９】
図１を参照して論じられたＡＰブリッジ１６と同様に、通信デバイス１０６は、有線通信部１１０と、インターフェース１１４を介して有線通信部１１０と結合される無線通信部１１２とを有する。通信デバイス１０６は、例えば、ルータまたはブリッジデバイスとして動作可能であり、ある実施形態では、通信部１１０と１１２との間でデータのルーティングや、やり取りを行うことができる。通信デバイス１０６はまた、有線通信部１１０と無線通信部１１２とに通信可能に結合されるプロセッサ１１６を有する。ある実施形態では、通信部１１０と通信部１１２はそれぞれ、クロック１１８Ａと１１８Ｂを有する。より一般的には、通信部１１０と１１２は、別個の、独立したソースから発信される周期的タイミング信号を受信できる。このソースは通信部１１０および１１２のコンポーネントとして、または通信部１１０および１１２とは別々に設けてもよい。例えば、この一実施形態において、有線通信部１１０は自身のクロックは有さないが、プロセッサ１１６のクロックに従って動作する。一方、無線通信部１１２はクロック１１８Ｂに従って動作する。通信デバイス１０６は、別個の１コンポーネントとして、または、プロセッサ１１６や、有線通信部１１０および／または無線通信部１１２内の数個のコンポーネントとして実装される同期制御部１１９を有する。
【００３０】
ある実施形態において、無線通信部１０８は、時間認識デバイスのコンポーネントとして、または時間認識アプリケーションモードで動作する。この場合のパケット送信元１０２は、パイプライン１００内の唯一「正確な」時間に相当するグランドマスタークロック１２０を有する。クロック１２０は異なる周波数で動作してもよく、パイプライン１００内のその他のクロックと開始時間が異なってもよい。さらに、パイプライン１００内のデバイスは、それぞれ異なる温度の下で動作してもよい。例えば、パケット送信元１０２は、有線通信部１０４よりもより暑い場所に設置されてもよい。温度が、一般的な水晶発振子の動作に影響を与え得ることは公知である。
【００３１】
ある実施形態によれば、パケット送信元１０２は動作中、パケット１２５を生成し、グランドマスタークロック１２０を用いて生成されるタイムスタンプ１２８を、パケット１２５のヘッダに含ませる。パケット１２５が無線通信部１０８へ向けて、矢印１３０によって概して示される方向に伝送するにつれて、パケット１２５はさまざまな長さの遅延を含む。適切にパケット１２５を処理するべく、無線通信部１０８は、パイプライン１００を介して生じた伝播遅延の、可能な限り正確な決定を試みる。この目的のために、パイプライン１００内の中間のリンクおよびデバイスを介して生じる軽微でない遅延は、図２に示される遅延Δｔ１−Δｔ５のように、決定されるべきである。
【００３２】
さらに、一部の実施形態では、コンポーネント１０４と、１１０と、１１２と、１０８の一部またはすべては、グランドマスタークロック１２０のそれぞれのバージョンを維持する。動作中、これらのコンポーネントは連続的にまたは周期的に、遅延Δｔ１−Δｔ５の最新の算出された値を用いて、グランドマスタークロック１２０のローカルバージョンを調整する。この目的のために、コンポーネント１０２と、１０４と、１１０と、１１２と、１０８は対応する値を、下方に（矢印１３０の方向へ）または、上方に、または両方向に伝送する。
【００３３】
一般に、パイプライン１００で動作しているコンポーネントが遅延Δｔ１−Δｔ５の新たな値を決定する場合、このコンポーネントは、任意の適切なメッセージング技術を用いて、新たな値を他のコンポーネントに通信できる。例えば、このコンポーネントは、パケット１２５内のタイムスタンプを調整したり、パケット１２５のヘッダにフィールドをポピュレートして遅延の長さを示したり、パイプライン１００内で動作する１または複数のコンポーネントに、遅延の新たな値を含む別個のメッセージを送信したり、これらの技術の組み合わせを用いたり等、できる。
【００３４】
引き続き図２を参照すると、パケット送信元１０２および有線通信部１０４は、伝播遅延Δｔ１に関連付けられる有線リンク１４０を介して結合され、伝播遅延Δｔ１は一般にリンク１４０の長さに比例する。例えば、遅延値Δｔ１は５００ナノセカンド以下となり得る。ある実施形態において、有線リンク１４０はイーサネット（登録商標）リンクである。同様に、有線リンク１４２はイーサネット（登録商標）リンクであり得て、５００ナノセカンド以下の遅延Δｔ３をもたらす場合もある。ある実施形態において、このリンク１４０と１４２は、ＩＥＥＥ８０２．３ａｆ規格に従って動作する。しかしながら、リンク１４０と１４２の長さは異なるため、遅延値Δｔ１とΔｔ３は同じである必要はない。
【００３５】
一方、有線通信部１０４に関連付けられる遅延Δｔ２は、遅延Δｔ１とΔｔ３に比べて著しく長い（例えば、１０ミリ秒程度）。ある実施形態では、有線通信部１０４は、例えばＣＰＵでもあり得るプロセッサ１４４と結合される。さまざまなシナリオで、データパケット１２５は、ハードウェアレベルおよび／またはソフトウェアレベルで処理を実行可能である。例えば、有線通信部１０４およびプロセッサ１４４は、ネットワークルータ内で動作可能であるが、ネットワークルータはプロトコルスタックの複数の階層でパケットを解析し、それゆえに相当な時間、パケット１２５を遅延させる。
【００３６】
一部の実施形態において、有線通信部１０４はクロック１５０を有する。クロック１５０はグランドマスタークロック１２０と同期されなくてもよいが、有線通信部１０４は精密にまた正確にパケット１２５の遅延Δｔ２を決定できる。この目的のために、有線通信部１０４は、パケット１２５の着信時に有線通信部１０４において第１のタイムスタンプを生成し（例えば、パケット１２５が対応するインバウンドポートのイングレスパイプラインを通過するとき）、通信リンク１４２を介してパケット１２５の送信する直前に第２のタイムスタンプを生成する（例えば、パケット１２５がアウトバウンドポートのエグレスパイプラインを通過するとき）。タイムスタンプは単に、クロック１５０によって維持されるクロックカウンタの現在値を格納するレジスタの値であり得る。有線通信部１０４は、同じクロック１５０を用いて第１のタイムスタンプと第２のタイムスタンプを生成するため、有線通信部１０４は、第２のタイムスタンプから第１のタイムスタンプを減算し、この結果にクロック１５０の周波数を乗算することによって、正確に遅延値Δｔ２を決定できる。
【００３７】
一般に、タイミング情報の伝播および／または、イーサネット（登録商標）リンク１４０と１４２を介して相互接続しているパケット送信元１０２と、有線通信部１０４と、有線通信部１１０間の同期は、ＩＥＥＥ８０２．１ＡＳと８０２．３ａｆ規格を用いて実現され得る。これらの技術を用いて、コンポーネント１０２と１０４と１１０は、遅延情報を互いに提供し合ったり、グランドマスタークロック１２０のローカルバージョンを調整したり等、できる。
【００３８】
通信デバイス１０６と関連付けられる遅延値Δｔ４に関して、通信部１１０と、通信部１１２と、特にプロセッサ１１６はかなりの時間、パケット１２６を遅延させる場合がある。遅延値Δｔ４を決定すべく、通信デバイス１０６は本開示の同期技術を実現可能である。図１を参照して論じられた同期制御部４０を含むデバイスと同様に、通信デバイス１０６は、通信部１１０と１１２間の周期パルスや別の信号の送信や取り込みを実行できる。この実施形態に応じて、同期制御部１１９は、パルスを有線通信部１１０から無線通信部１１２へ伝送し、または逆に無線通信部１１２から有線通信部１１０へ伝送する。これらの信号を生成し、取り込み、使用する適切な技術が、図３を参照して以下に詳細に論じられる。
【００３９】
ＩＥＥＥ８０２．１１ｖ規格は、無線通信部１１２と１０８間の遅延値Δｔ５を算出するメカニズムを提供する。一部の実装において、無線通信部１０８はまた、このメカニズムを利用して、クロック１５２と通信部１１２のクロック１１８Ｂとを同期する。より具体的には、通信部１１２と１０８は、ＩＥＥＥ８０２．１１ｖ規格で定められる「Ｍ１」フレームと「Ｍ２」フレームとを交換可能である。「Ｍ１」フレームと「Ｍ２」フレームを用いて、通信部１１２と１０８は遅延Δｔ５を計算する。通信部１０８は、グランドマスタークロック１２０の自身のバージョンからΔｔ５を減算して、無線通信部１１２に記憶されるグランドマスタークロック１２０のバージョンと合致させることが可能である。
【００４０】
算出された遅延値Δｔ１−Δｔ５および／またはグランドマスタークロック１２０に同期されたクロック１５２（パイプライン１００内のその他のクロックと順次同期されたクロック１１８Ｂを介して）を用いて、メディアプロセッサ１６０はデータパケット１２５を適切に処理できる。例えば、メディアプロセッサ１６０は、グランドマスタークロック１２０によって測定された正確な時間に、パケット１２５の音声または映像コンテンツを再生できる。
【００４１】
図３を参照すると、例示の通信デバイス２００は、有線通信部２０２と無線通信部２０４のそれぞれのローカルタイムの表現とともに、有線通信部２０２と無線通信部２０４との間で伝送される信号を用いて、有線通信部２０２と無線通信部２０４とを同期する同期制御部２０１を有する。ある実施形態では、通信デバイス１０６は通信デバイス２００と概して同様である。さらに、一部の実施形態において、同期制御部２０１と、通信部２０２と２０４間の同期を実現する通信デバイス２００内の他のコンポーネントは、図１を参照して論じられたＴＡＩ４０と概して同様なＴＡＩを特徴づける。より一般的には、別個のクロックを用いて動作する２つまたはそれより多くの処理部が含まれるデバイスは、通信デバイス２００同様に実装され、処理部を同期できる。
【００４２】
ある実施形態での通信デバイス２００はまた、プロセッサ２０６を有する。プロセッサ２０６は、汎用ＣＰＵや、特定用途向け集積回路（ＡＳＩＣ）や、プログラマブルコントローラなどである。プロセッサ２０６は、通信部２０２と２０４のそれぞれに結合される。ある実施形態では、プロセッサ２０６は、コマンドを通信部２０２と２０４に提供し、通信部２０２と２０４からステータス情報や、制御情報や、他の情報を受信すべく構成される。例えば、プロセッサ２０６はソフトウェア命令を実行し、データパケットのハイレベルな処理を実行してもよい（例えば、ディープインスペクション）。別の実施形態において、しかしながら、通信デバイス２００はプロセッサ２０６を全く有さず、通信部２０２と２０４は適切な通信部２０２と２０４との結合に必要なロジックを直接実行する。
【００４３】
通信デバイス２００はまた、プロセッサ２０８に結合されるコンピュータ可読メモリ２０８を有する。メモリ２０８は、フラッシュメモリや、ランダムアクセスメモリ（ＲＡＭ）や、読み出し専用メモリ（ＲＯＭ）などの、任意の適切な持続的または一時的なメモリであり得る。メモリ２０８は１または数個のソフトウェアアプリケーション２０９を記憶する。メモリ２０８はまた、動作中にプロセッサ２０６が生成および／または使用するデータを記憶できる。
【００４４】
一部の実施形態によると、同期制御部２０１と有線通信部２０２はタイムキャプチャバッファ２１２と結合され、また、同期制御部２０１と無線通信部２０４はタイムキャプチャバッファ２１４に結合される。バッファ２１２と２１４は、例えば簡易なハードウェアレジスタとして実装可能である。以下に論じるように、タイムキャプチャバッファ２１２と２１４は、信号の送信や受信などの特定のイベントに対応して、通信部２０２と２０４のローカルタイムの表現をそれぞれ記憶する。
【００４５】
引き続き図３を参照すると、有線通信部２０２は、有線通信部２０２が動作する際に従う周期的タイミング信号を生成する水晶発振器回路２２０を有する。無線通信部２０４は、無線通信部２０４が動作する際に従う周期的タイミング信号を生成する水晶発振器回路２２２を有する。ある実施形態において、水晶発振器回路 ２２０と２２２は異なる周波数で動作する。さらに、通信部２０２と２０４は異なる時間に初期化またはリセットされ、水晶発振器回路２２０と２２２は、いくつかのシナリオに従って、異なる時間にカウントを開始できる。他の実施形態では、通信部２０２と２０４は他の適切なタイプのクロックを有する。
【００４６】
ある実施形態において、水晶発振器回路２２０は、各サイクルにつきカウンタ２３０を１インクリメントする。このようにして、カウンタ２３０は、水晶発振器回路２２０によって測定された時間の現在の表現を記憶する。同様に、水晶発振器回路２２２は、各サイクルにつきカウンタ２３２を１インクリメントし、このカウンタ２３２は水晶発振器回路２２２によって測定された時間の現在の表現を記憶する。ある条件を満たしたら、または同期制御部２０１からのコマンドに応答して、通信部２０２と２０４は、カウンタ２３０および２３２の現在値をタイムキャプチャバッファ２１２および２１４にそれぞれ転送する。いくつかのシナリオで、通信部２０２と２０４はそれぞれ、バッファ２１２と２１４に新たな値を、実質的に同時にポピュレートする。他のシナリオでは、通信部２０２と２０４は、別個のそれぞれのコマンドに応答して、異なる時間に、これらのバッファにポピュレートする。
【００４７】
有線通信部２０２はまた、コントローラと入出力パイプライン２４０を有する。ある実施形態において、コンポーネント２２０は、着信するデータユニット（例えばパケット）を処理するイングレスパイプラインと、プロトコル翻訳や、ルーティングや、ブリッジングおよび／または他の機能を実行するコントローラと、データユニットの送信を準備するエグレスパイプラインとを有する。無線通信部２０４は、コントローラと、無線通信リンクを介して伝送される着信するおよび送信するデータユニットを処理する入出力パイプライン２４２とを有する。
【００４８】
ある実施形態によると、有線通信部２０２は、１または複数のイーサネット（登録商標）ポート２５０を有し、データパケットの受信および／または送信をする。イーサネット（登録商標）ポート２５０は、適切な通信プロトコルによって指定される１セットの端子をそれぞれが有する。他の実施形態では、有線通信部２０２は、追加的にまたは代替的に、プロプライエタリスタンダードに従う通信を含む他のタイプの有線通信のポートを有する。無線通信部２０４は、１セットの無線ポート２５２を有するが、一部の実施形態においては無線ポート２５２は、同一の物理的パイプラインにマップされるバーチャルポートであってもよい。イーサネット（登録商標）ポート２５０および無線ポート２５２はともに、通信デバイス２００の外部インターフェースを定義する。
【００４９】
このようにして、通信デバイス２００は、無線ポートを介してデータパケットを受信し、必要ならばデータパケットを変更し（例えば、プロトコルを変更するか、または新たな値でヘッダをアップデートすることによって）、イーサネット（登録商標）ポートを介してデータパケットを送信できる。別のシナリオでは、通信デバイス２００は、有線ポートを介してデータパケットを受信し、有線ポートを介してデータパケットを送信できる。
【００５０】
一実施形態によると、プロセッサ２０６は通信部２０２と２０４間のデータの交換のための内部インターフェースを定義する。このようにして、有線通信部２０２が無線通信部２０４へデータパケットの転送を望む場合は、プロセッサ２０６は有線通信部２０２からデータパケットを受信し、無線通信部２０４にデータパケットを提供する。別の実施形態では、通信デバイス２００は、通信部２０２と２０４間にダイレクトインターフェースを有し、データパケットの交換をする。
【００５１】
有線通信部２０２および無線通信部 ２０４は各々、ある実施形態では、ＧＰＩＯピンなどの使用可能な汎用インターフェース端子を含む。通信部２０２および２０４はこれらの汎用インターフェース端子を用いて、同期信号を送信または受信できる。図３の例では、有線通信部２０２は、コネクタ２６４に結合されるピン２６０を有し、無線通信部２０４は、コネクタ２６４に結合されるピン２６２を含む。コネクタ２６４は、例えば通信部２０２または２０４がパルスの送信を可能にする際に介する簡易な接続を提供する汎用インターフェースの例である。他の実施形態では、有線通信部２０２と無線通信部２０４は、例えば、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩＥ）またはセキュアデジタル入出力（ＳＤＩＳ）を介して通信する。いずれの場合でも、コネクタ２６４は、通信部２０２と２０４間を結ぶ、比較的簡易で低コストなインターフェースである。ある実施形態において、コンポーネント２６０と、コンポーネント２６２と、コンポーネント２６４は、ＩＥＥＥ８０２．１ＡＳ規格に従う同期をサポートしない。
【００５２】
動作中、同期制御部２０１は、通信部２０２および２０４のどちらか一方に指示して、コネクタ２６４を介して、パルスやその他の同期信号を、通信部２０２および２０４のもう一方に送信させる。パルスは、一般に、通信部２０２と２０４との間をどちらの方向にも伝わる。一例として、同期制御部２０１は有線通信部２０２をパルスソースと指定する。この場合の同期制御部２０１は、有線通信部２０２に、（ｉ）ピン２６０（コネクタ２６４に結合される）を介して、無線通信２０４へパルスを送信させ、（ｉｉ）カウンタ２３０の現在値をタイムキャプチャバッファ２１２に記録させる。同期制御部２０１はさらに、無線通信部２０４に指示して、カウンタ２３２の現在値をタイムキャプチャバッファ２１４に記録させる。同期制御部２０１はそれから、タイムキャプチャバッファ２１４に格納された値から、タイムキャプチャバッファ２１２に格納された値を減算し、ＤＣオフセットなどの通信部２１２と２１４間のタイムカウンタ差の表示を生成する。
【００５３】
少なくとも一部の実施形態では、コネクタ２６４の長さは同期制御部２０１にとって十分に小さく、コネクタ２６４を介して伝わるパルスの伝播遅延は、実質的にゼロと考えられる。従って、同期制御部２０１は、パルスが遅延なく無線通信２０４に着信したと認識し、通信部２０２と２０４に指示し、対応するカウンタ値を、それぞれのタイムキャプチャバッファ２１２と２１４に同時に記録させる。
【００５４】
別の実施形態では、同期制御部２０１は無線通信部２０４に指示し、無線通信部２０４がパルスを検知した場合のみ、カウンタ２３２の値をタイムキャプチャバッファ２１４に記録させる。さらに別の実施形態では、同期制御部２０１は、コネクタ２６４に関連付けられる一定の伝播遅延を算出すべく構成される。同期制御部２０１が、タイムキャプチャバッファ２１２と２１４に格納された値の差を計算する場合、同期制御部２０１は、補正係数として、一定の伝播遅延値をこの差に適用する。
【００５５】
一部の実施形態において、同期制御部２０１はさらに、水晶発振子２２０と２２２との間のＰＰＭ差を計算する。この目的のために、同期制御部２０１は、パルスソースとして指定された通信部に、周期的に、例えば１秒間に１パルス（ＰＰＳ）のレートで、パルスを送信させる。ある実施形態では、このパルスは１秒の初めに送信される。
【００５６】
このように、シナリオの一例において、同期制御部２０１は、有線通信部２０２に、コネクタ２６４を介して、午前１２：００：００（例えば、有線通信部２０２またはプロセッサ２０６のクロックに従って）に、無線通信部２０４へパルスを送信させる。同期制御部２０１は、タイムキャプチャバッファ２１２と２１４に対応する格納された値を用いて、ＤＣオフセットを計算する。例えば、タイムキャプチャバッファ２１２は、値 ０ｘ３７２４  ２８１７を記憶してもよく、タイムキャプチャバッファ２１４は、値 ０ｘ００００  １２７８を記憶してもよい。ＤＣオフセット値の大きさは、従って、０ｘ３７２４  ２８１７−０ｘ００００  １２７８で算出される。
【００５７】
同期制御部２０１はそれから、通信部２０４に、引き続き送られるパルスの送信時間と受信時間をそれぞれ記録させ、ＰＰＭ差を決定させる。例えば、１秒後、タイムキャプチャバッファ２１２の値がタイムキャプチャバッファ２１４の値の２倍に増加する場合がある。従って、同期制御部２０１は、水晶発振子２２０が水晶発振子２２２の２倍の速さで動作していると判断できる。同期制御部２０１がＤＣオフセット値とＰＰＭ値の両方を決定した後、通信デバイス２００は通信デバイス２０２と２０４とを同期でき、および／または通信デバイス２００で生じる伝播遅延を決定できる。
【００５８】
他の実施形態では、通信部２０２と２０４に、コネクタ２６４または同様なインターフェースを介してパルスを送信させるよりも、同期制御部２０１は、他の非同期の目的のためであれば、通信部２０２または２０４との間で伝送されるメッセージを利用する。例えば、これらのメッセージは、通信部２０２と２０４とを同期するためのメカニズムを提供はしないが、通信部２０２と２０４間の制御情報の交換に対するプロトコルに従う。同期制御部２０１は、メッセージの第１のシンボル（例えばビット）が送信される場合に、有線通信部２０２に、カウンタ２３０の値をタイムキャプチャバッファ２１２に記録させ、メッセージの第１のシンボルが受信される場合、無線通信部２０４に、カウンタ２３２の値をタイムキャプチャバッファ２１４に記録させる。
【００５９】
さらに、図３においては、同期制御部２０１は別個のコンポーネントとして記述されるが、同期制御部２０１は、他の実施形態においては、通信デバイス２００の別のコンポーネントの一体をなす一部分として、または通信デバイス２００の他のコンポーネント内で動作する数個のコンポーネントとして実装される。例えば、一つのこのような実施形態として、同期制御部２０１およびプロセッサ２０６は、単一の集積されたコンポーネントとして実装される。別の実施形態においては、同期制御部２０１は有線通信部２０２のコンポーネントである。さらに別の実施形態では、同期制御部２０１は無線通信部２０４のコンポーネントである。またさらに、別の実施形態においては、同期制御部２０１は、プロセッサ２０６上で実行可能な、メモリ２０８に記憶されるソフトウェア命令として実装される。さらにある実施形態では、同期制御部２０１は、有線通信部２０２と、無線通信 ２０４と、またはその両方の、１または複数のハードウェアコンポーネントと同じく、ソフトウェア命令として分散して実装される。
【００６０】
上述した中の一部のデバイスに実装され得るいくつかの方法の例が、次に考慮される。
【００６１】
まず図４によれば、２つの処理部のクロック間の差を決定する例示的な方法３００が、図３の同期制御部２０１に実装され得るが、例えばこの場合は、処理部は通信部である。ブロック３０２において、方法３００は第１の処理部に、内部インターフェースを介して第２の通信部に信号を送信させる。上述したように、内部インターフェースは、例えば、ＩＥＥＥ８０２．１ＡＳなどの規格を実現する汎用インターフェースであってよい。また上述したように、送信される信号は、単一のパルス、マルチシンボルメッセージの初め、または任意の他のタイプの信号であってよい。
【００６２】
次に、ブロック３０４において、信号が送信された時間に対応するタイムスタンプが、第１の処理部のクロックを用いて生成される。ブロック３０６において、信号が第２の処理部に着信する時間に対応するタイムスタンプが、第２の処理部のクロックを用いて生成される。ある実施形態では、信号の受信は、無条件に瞬間的に行われるとみなされるので、ブロック３０４と３０６は実質的に同時刻に実行される。
【００６３】
ブロック３０８では、ＤＣオフセットは、２つの生成されたタイムスタンプを用いて決定される。より一般的には、処理部のクロックの値の差は、ブロック３０８において決定される。
【００６４】
図５は、同一デバイス内で動作する２つの処理部のクロック間の計測した周波数の差を決定する例示の方法３５０のフロー図である。方法３００と同様に、方法２５０は、例えば、同期制御部２０１に実装され得る。
【００６５】
ブロック３５２において、一対の処理部の第１のＤＣオフセット値が算出される。この目的のために、例えば、上述した方法３００を用いることができる。次に、ブロック３５４において時間満了イベントが検知され、一対の処理デバイスの別のＤＣオフセット値が、ブロック３５６において決定される。ＰＰＭ値などの計測した周波数の差は、一対の算出された最新のＤＣオフセット値を用いて、ブロック３５８において決定される。フローはその後ブロック３５４へ戻り、次の時間満了イベントを待つ。例えば、この時間は１秒に設定可能である。このようにして、方法３００は、デバイス内で動作するある処理部が、同一デバイス内で動作するその他の処理部がリセットされることなくリセットされる場合でさえも、ＤＣオフセット値とＰＰＭ値が概して正確であることを保証する。
【００６６】
図６Ａを参照すると、有線通信部と無線通信部を含むデバイスによる伝播遅延を決定する例示の方法４００は、例えば、図３の通信デバイス２００に実装可能である。ブロック４０２において、データパケットは、有線通信部の有線ポートを介して受信される。有線ポートは、例えば、イーサネット（登録商標）ポートであってよい。
【００６７】
データパケットが受信される時間に対応するタイムスタンプは、ブロック４０４において生成される。例えば、タイムスタンプは、データパケットが有線ポートのイングレスパイプラインを介して伝わるときに生成される。
【００６８】
ブロック４０６において、タイムスタンプは、無線通信部の無線ポートを介してデータパケットが出力される直前に、無線通信部のクロックに従って生成される。有線通信部および無線通信部は、通信デバイス２００などのデバイス内の異なるクロックに従って動作するために、ＤＣオフセットおよびＰＰＭ差はブロック４０８において決定される。一例として、上述した方法３００および３５０が利用可能である。
【００６９】
次に、デバイスによる伝播遅延はブロック４１０において算出される。それから、他の通信デバイスにおける次の処理のために、伝播遅延情報がデータパケットに提供される。この実施形態に応じて、伝播遅延は、パケット内のフィールドとして、または別個のメッセージとして、または任意の他の適切な方法で、指定され得る。伝播遅延情報を用いて、パケットの次の受信者は、データパケットのデータを適切な時間に再生（その他、データパケットを処理）できる。
【００７０】
図６Ｂに、無線通信部（４５２）の無線ポートにおいてパケットが受信されるという点以外は方法４００と概して同様な方法４５０を示す。従って、データパケットの受信に対応するタイムスタンプは、無線通信部のクロックに従って生成され（ブロック４５４）、データパケットが離れる間際に対応するタイムスタンプは、有線通信部のクロックに従って生成される（ブロック４５６）。ブロック４５８および４６０は、上述したブロック４０８および４１０と同様である。
【００７１】
上述したさまざまなブロックと、動作と、技術の少なくとも一部は、ハードウェアや、ファームウェア命令を実行しているプロセッサや、ソフトウェア命令を実行しているプロセッサや、それらの任意の組み合わせを用いて実装され得る。ソフトウェアやファームウェア命令を実行しているプロセッサを用いて実装される場合、このソフトウェアやファームウェア命令は、磁気ディスクや、光ディスクや、ＲＡＭや、ＲＯＭや、フラッシュメモリなどの、任意の実体のある非一時的なコンピュータ可読メモリに記憶されてもよい。ソフトウェアやファームウェア命令は、プロセッサによって実行される場合、プロセッサにさまざまな動作を実行させるマシン可読命令を含んでもよい。
【００７２】
ハードウェアに実装される場合、ハードウェアは１または複数の別個のコンポーネントや、集積回路や、ＡＳＩＣや、プルグラマブルロジックデバイスなどを備えてもよい。
【００７３】
具体的な例を参照しながら、さまざまな実施形態が説明されてきたが、あくまで例示のみであってそれに限定する意図はなく、変更や追加および／または削除は、本特許請求の範囲を逸脱することなく開示された実施形態に対してなされ得る。
【図１】
2015506626.tif 000003
【図２】
2015506626.tif 000004
【図３】
2015506626.tif 000005
【図４】
2015506626.tif 000006
【図５】
2015506626.tif 000007
【図６Ａ】
2015506626.tif 000008
【図６Ｂ】
2015506626.tif 000009
【国際調査報告】
2015506626.tif 000010
2015506626.tif 000011