(57)【特許請求の範囲】
【請求項１】
無線メディア配信システムにおいて送信されたメディアの受信及び再生のための無線ステーションであって、該無線ステーションは、
物理層クロックを含み、ブロードキャストビーコンフレーム及び該ブロードキャストビーコンフレーム内に含まれたタイムスタンプを繰り返し受信し復号するための受信器及び復号器回路を更に含む物理層を備え、
前記物理層クロックは、前記物理層クロックの出力クロック信号を前記タイムスタンプに依存して制御するように構成され、
前記無線ステーションは更に、
アプリケーション層時刻同期プロトコルを使用して動作し、前記物理層クロックに接続されて、前記物理層クロックからのクロック信号を、クロックソースとして前記アプリケーション層時刻同期プロトコルによる使用に適した形式に変換するクロックインターフェースを含むアプリケーション層と、
前記アプリケーション層時刻同期プロトコルにより制御されてメディア再生を調整するオペレーティングシステムクロックと、
を備える、無線ステーション。
【請求項２】
前記アプリケーション層は、前記物理層クロックに接続された前記クロックインターフェースと外部クロックソースとの間で選択するように動作可能なアプリケーション層時刻同期プロトコルソースセレクタを含む、請求項１に記載の無線ステーション。
【請求項３】
前記外部クロックソースは、インターネットベースクロックソースである、請求項２に記載の無線ステーション。
【請求項４】
前記物理層クロックは、水晶発振器とカウント器とを含み、前記出力クロック信号は、前記カウント器内の値を前記受信タイムスタンプ内の値で上書きすることにより制御される、請求項１から３のいずれか１項に記載の無線ステーション。
【請求項５】
前記物理層クロックは更に、現在の物理層クロックカウンタ値と前記タイムスタンプ内の受信された値との間のエラー値を判定し、前記物理層クロックが前記エラー値に依存してインクリメントされるレートを調整するためのレート制御回路を含む、請求項４に記載の無線ステーション。
【請求項６】
前記レート制御回路は、前記タイムスタンプ及び現在物理クロックカウンタ値を受信して前記タイムスタンプと前記現在物理クロックカウンタ値の間のエラー値を導き出すエラー計算ユニットと、前記エラー値を受信してレート補正を前記エラー値に依存して導き出すレート補正計算ユニットと、前記水晶発振器と前記カウント器との間に接続され、前記レート補正ユニットの出力を受信し、前記カウント器がインクリメントするレートを前記出力に依存して調整するレート調整ユニットとを含む、請求項５に記載の無線ステーション。
【請求項７】
前記物理層は、タイムスタンプ及びペア生成ユニットにおいて、前記物理層クロック及び前記タイムスタンプが受信された時刻での受信タイムスタンプから１対の値を生成するように構成され、前記アプリケーション層は、前記一対の値を受信するためのインターフェースを含み、アプリケーション層時刻同期プロトコルを前記一対の値に依存して補正するように構成される、請求項１から３のいずれか１項に記載の無線ステーション。
【請求項８】
前記ステーションは、エラー値を他のステーションから受信し、該エラー値からシステムパフォーマンスの向上を判定するように構成される、請求項５又は６に記載の無線ステーション。
【請求項９】
前記エラー値は、前記アプリケーション層時刻同期プロトコルソースセレクタを制御するために使用される、請求項２及び８のいずれか１項に記載の無線ステーション。
【請求項１０】
前記無線ステーションは、Ｗｉ−Ｆｉ伝送規格を利用する、請求項１から９のいずれかに記載の無線ステーション。
【請求項１１】
前記アプリケーション層は、ネットワーク時刻プロトコル（ＮＴＰ）を時刻同期プロトコルとして使用する、請求項１から１０のいずれかに記載の無線ステーション。
【請求項１２】
メディアソースは、前記ステーションに接続される、請求項１から１１のいずれかに記載の無線ステーション。
【請求項１３】
メディアソースは、前記インターネットを経由してアクセスされる、請求項１から１２のいずれかに記載の無線ステーション。
【請求項１４】
前記ステーションは、１対のステレオチャンネルの１つを再生するように構成され、前記エラー値は、前記一対のステレオチャンネル間の同期を判定するために使用される、請求項８に記載の無線ステーション。
【請求項１５】
無線メディア配信システムにおいて送信されたメディアの受信及び再生のために無線ステーションにおいてオペレーティングシステムクロックを制御するための方法であって、  ブロードキャストビーコンフレームを前記ステーションの物理層において受信するステップと、
前記ビーコンフレームを復号してタイムスタンプを導き出すステップと、
物理層クロックの出力クロック信号を前記タイムスタンプに依存して制御するステップと、
アプリケーション層において、前記物理層クロックの出力クロック信号を、クロックソースとしてアプリケーション層時刻同期プロトコルによる使用に適した形式に変換するステップと、
前記アプリケーション層時刻同期プロトコルを用いてオペレーティングシステムクロックを制御してメディア再生を調整するステップと、
を含む、方法。
【請求項１６】
前記アプリケーション層時刻同期プロトコル用クロックソースとしての前記物理層クロックと外部クロックソースとの間で選択するステップを含む、請求項１５に記載の方法。
【請求項１７】
前記外部クロックソースは、インターネットベースクロックソースである、請求項１６に記載の方法。
【請求項１８】
前記物理層クロックの出力クロック信号を制御するステップは、前記物理層クロック内のカウンタ値を前記タイムスタンプ内の値で上書きするステップを含む、請求項１５から１７のいずれか１項に記載の方法。
【請求項１９】
現在の物理層クロックカウンタ値と前記タイムスタンプ内の値との間のエラー値を判定するステップと、前記物理層クロックがインクリメントされるレートを前記エラー値に基づいて調整するステップとを含む、請求項１８に記載の方法。
【請求項２０】
レート補正を前記エラー値から導き出すステップと、前記カウンタがインクリメントされるレートを前記レート補正に依存して調整するステップとを含む、請求項１９に記載の方法。
【請求項２１】
前記物理層クロック及び前記タイムスタンプが受信された時刻での受信タイムスタンプから１対の値を生成するステップと、前記一対の値を前記アプリケーション層へのインターフェースに供給するステップと、前記アプリケーション層時刻同期プロトコルを前記１対の値に依存して補正するステップとを含む、請求項１５から１７のいずれか１項に記載の方法。
【請求項２２】
エラー値を他のステーションから受信するステップと、前記エラー値からシステムパフォーマンスの向上を判定するステップを含む、請求項１９から２１のいずれか１項に記載の方法。
【請求項２３】
メディアをブロードキャストするためのアクセスポイントと、メディアの受信及び再生ための複数のステーションとを備える無線メディア配信システムであって、
前記アクセスポイントは、前記アクセスポイントにおいて物理層クロックから導き出されたタイムスタンプを含むビーコンフレームを繰り返し送信するように構成され、
各ステーションは、前記各ビーコンフレーム内のタイムスタンプを受信及び復号し、ステーション物理層クロックの出力クロック信号を前記タイムスタンプに依存して制御し、前記ステーションのアプリケーション層において、前記物理層クロックの出力クロック信号を、アプリケーション層時刻同期プロトコル用クロックソースとして使用するように構成され、アプリケーション層時刻同期プロトコルはメディア再生を調整するためにオペレーティングシステムクロックを制御する、無線メディア配信システム。
【請求項２４】
各ステーションは、請求項１から１４のいずれか１項に記載の無線ステーションを含む、請求項２３に記載の無線メディア配信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線ネットワークにおける時刻同期の方法、装置、及びシステムに関し、具体的には、オーディオ、ビデオ機能、及び他のマルチメディア機能のように、無線ネットワークの受信ユニットから受け入れ可能なパフォーマンスを得るために時刻同期が重要となるタイプの無線ネットワークに関する。
【背景技術】
【０００２】
ＩＥＥＥ８０２．１１  Ｗｉ−Ｆｉ規格は、一般的に、コンピューティングデバイス、ネットワークサーバ、及び同様なデバイスの間の多くの無線アプリケーションに使用されている。この規格は、オーディオデータストリーミング、ビデオデータストリーミングのような機能を対象とした家庭用アプリケーション、及びポータブルゲームデバイスを使用するゲームのような他のマルチメディアアプリケーションでの使用が増えている。無線ネットワークにおいて複数のステーション（ＳＴＡ）に送信されるデータは、アクセスポイント（ＡＰ）を介して供給される。このデータは、関連データをブロードキャストし、このデータを意図している１つ又はそれ以上の受信器又はステーションで検出される。
【０００３】
ネットワーク内の各ステーションは、受信されたデータのタイプに従ってデータを処理するために、各ステーションに関連した回路を有する。例えば、１対の無線スピーカーは各々、オーディオ信号の左右チャンネルを受信し、ユーザが聴取するためには、これを復号して再生する必要がある。各ステーション内の回路は、自走クロックを有する。これは、通常、水晶ベース発振器であり、これは一般的に特別に正確であるとは限らず、従って、ステーション間で互いに同期されない場合がある。従って、例えば１対のラウドスピーカーに関して再生を制御するために使用される自走クロックは、一方のラウドスピーカーが他方よりも速い場合があり、結果的に、左右のチャンネルが徐々に同期されなくなる。
【０００４】
ＮＴＰ、例えばＮＴＰＲＦＣ１３０５のような時刻プロトコルは、標準的な有線配信システム、例えば、インターネット有線ネットワーク上で正確なタイミング機構を提供するために一般的に使用される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＮＴＰは、このように一般的に使用されるプロトコルであり、無線ネットワーク内でオーディオのような多数のアプリケーション用のデータを送信する際にＮＴＰを使用することが望ましい。しかしながら、無線システム内のＮＴＰのような時刻プロトコルは、システム内の様々なユニット間で非対称性の程度が異なる場合がある非対称受信及び送信経路を経由することによる問題が生じる。従って、Ｗｉ−Ｆｉネットワークを介してＮＴＰのような時刻プロトコルを使用するステーションでは、非対称経路による不正確性が問題となり、結果的に、他のステーションと同期されない場合がある。
【課題を解決するための手段】
【０００６】
ＩＥＥＥ８０２．１１のようなＷｉ−Ｆｉ伝送規格は、アクセスポイントにおいて物理層クロックにより供給され優先的に受信器により処理されることが必要とされるタイミングビーコン（時刻同期機能−ＴＳＦ）を含み、更に、この規格により、ＡＰと各ステーションとの間の高速かつ直接的な半対称経路が形成されることが理解される。各ステーション内のＷｉ−Ｆｉ受信器は、ステーションにおいて処理回路により使用される独自の物理層自走クロックを有する。このクロックは、受信されたＷｉ−Ｆｉ信号内のＡＰからのタイミングビーコンと同期させるためにリセットされる。このようにして、受信器内の物理層クロックは、ＴＳＦを使用して同期させることができる。受信されたＡＰ−ＴＳＦとＷｉ−Ｆｉ受信器内のＳＴＡ自走クロックとの間の差分によって、ＡＰクロックとＳＴＡステーションクロックとの間のエラー値がもたらされ、このエラー値は、高水準時刻同期方法（例えば、ＮＴＰ）用の高精度の補正値を提供して複数のステーション内のステーションクロックがより厳密に同期されるようにするために使用することができる。
【０００７】
本発明の別の一態様により、無線メディア配信システムにおいて送信されたメディアの受信及び再生のための無線ステーションが提供され、該無線ステーションは、
物理層クロックを含み、ブロードキャストビーコンフレーム及び該ブロードキャストビーコンフレーム内に含まれたタイムスタンプを繰り返し受信し復号するための受信器及び復号器回路を更に含む物理層を備え、物理層クロックは、物理層クロックの出力クロック信号をタイムスタンプに依存して制御するように構成され、
無線ステーションは更に、
トランスポート層時刻同期プロトコルを使用して動作し、物理層クロックに接続されて、物理層クロックからのクロック信号を、クロックソースとしてトランスポート層時刻同期プロトコルによる使用に適した形式に変換するクロックインターフェースを含むトランスポート層と、
前記トランスポート層時刻同期プロトコルにより制御されてメディア再生を調整するオペレーティングシステムクロックと、
を備える。
【０００８】
本発明の別の実施形態により、無線メディア配信システムにおいて送信されたメディアの受信及び再生のために無線ステーションにおいてオペレーティングシステムクロックを制御するための方法が提供され、該方法は、
ブロードキャストビーコンフレームをステーションの物理層において受信するステップと、
ビーコンフレームを復号してタイムスタンプを導き出すステップと、
物理層クロックの出力クロック信号をタイムスタンプに依存して制御するステップと、
トランスポート層において、物理層クロックの出力クロック信号を、クロックソースとしてトランスポート層時刻同期プロトコルによる使用に適した形式に変換するステップと、
前記トランスポート層時刻同期プロトコルを用いてオペレーティングシステムクロックを制御してメディア再生を調整するステップと、
を含む。
【０００９】
本発明の第３の形態により、メディアをブロードキャストするためのアクセスポイントと、メディアの受信及び再生ための複数のステーションとを備える無線メディア配信システムが提供され、
アクセスポイントは、アクセスポイントにおいて物理層クロックから導き出されたタイムスタンプを含むビーコンフレームを繰り返し送信するように構成され、
各ステーションは、各ビーコンフレーム内のタイムスタンプを受信及び復号し、ステーション物理層クロックの出力クロック信号をタイムスタンプに依存して制御し、ステーションのトランスポート層において、物理層クロックの出力クロック信号を、トランスポート層時刻同期プロトコル用クロックソースとして使用するように構成される。
【００１０】
本発明の上記及び他の態様を、添付の特許請求の範囲において明確に定義し、これから説明する。
【００１１】
ここで、本発明の好ましい実施形態を、例として添付図面を参照して詳細に説明する。
【図面の簡単な説明】
【００１２】
【図１】例示的な時刻プロトコルとしてＮＴＰを使用する、本発明を適用することができるタイプのＷｉ−Ｆｉネットワークを概略的に示す。
【図２】ＡＰ及びＳＴＡの物理層クロックが同期に使用されるようにされた図１の構成を示す。
【図３】ＡＰ物理層クロック及び関連回路の概略図である。
【図４】ＳＴＡ物理層クロック及び関連回路の第１の実施形態を示す。
【図５】ＳＴＡ物理層クロック及び関連回路の第２の実施形態を示す。
【図６】物理層クロックとＷｉ−Ｆｉシステムアプリケーション層内のＮＴＰクロック及び回路との関係を示す。
【発明を実施するための形態】
【００１３】
図１は、ＮＴＰのようなアプリケーション層プロトコルを使用する２つの無線ステーションを時刻同期させる公知の技術を示す。この実施例において、メディアソース４からのメディアを再生する２つのステーション（ＳＴＡ）２がある。メディアソースは、（例えば、ローカルコンピュータ又はネットワークドライブ上に記憶された）ＡＰ６に接続されたインターネット（例えばストリーミングサービス）内に位置すること、又はステーションの１つから得ることができる（例えば、メディアは、ＤＡＢを介してブロードキャストされ、ＤＡＢ受信器が設けられたステーションで受信してＷｉ−Ｆｉで他のステーションに供給することができる）。２つのステーションは、メディアを同期して再生することを目指す。このことは、（例えば、複数の部屋での再生のために）２つのステーションからの同じメディアを同期して再生すること、又はメディアの別の構成要素（例えば、別のラウドスピーカーに供給される左右のステレオチャンネル）を同期して再生することを含むことができる。
【００１４】
メディアの再生は、各ステーション２内のオペレーティングシステム（ＯＳ）ソフトウェアクロック８により制御され、２つのステーションは、それぞれのＯＳクロック８により決定された再生レートで特定の時刻に再生を開始するように構成することができる。しかしながら、このことは、互いに同期しているステーション内のＯＳソフトウェアクロックに頼っている。通常、このことは、ＮＴＰを使用して実現される（他の類似の時刻プロトコルを使用することもできる）。ＮＴＰは、各ステーションにおいてＯＳソフトウェアクロックを制御するために使用することができるようにされたアプリケーション層時刻同期プロトコルである。ＮＴＰでは、各ステーションが、インターネットを介してアクセス可能なタイムサーバ１０（通常は電波時計サーバ）に対し周期的にポーリングする。このタイムサーバは時刻値を戻し、ＮＴＰは、この時刻値を、他の測定されたネットワーク統計と組み合わせて使用して「実際の」時刻値を予測することができる。理想的なネットワーク環境（例えば、有線イーサネット（登録商標）ＬＡＮ）において、ＮＴＰは、複数の部屋での再生に適した良好な同期（〜１ｍｓの精度）をもたらすことができる。
【００１５】
しかしながら、Ｗｉ−Ｆｉのような無線環境おいて前述のようなＮＴＰベースの解決手段を利用することには問題がある。具体的には、非対称受信及び送信経路は、ＮＴＰにより適用される予測を不正確なものにする場合があり、従って、各ステーション内のＯＳソフトウェアクロックは、前述のように、適切に同期されなくなる。更に、左／右のステレオチャンネル同期のようなアプリケーションに関しては、ＮＴＰが通常は実現することができない高い精度（約１０ｕｓ）さえ必要とされる。従って、前記のタイプのＮＴＰベースシステムは、とりわけ左右のチャンネル同期に適していないだけでなく、幾つかの複数部屋用アプリケーションにも適していない。
【００１６】
従来技術による代替解決手段は、ＮＴＰとは完全にかけ離れているが、通常、独自の同期プロトコルを使用するので独自の問題を引き起こす。この解決手段により、非標準的なＳＴＡが使用されることになる（一般的に、１つが他を同期するためのマスターとして動作する必要があるため）。更に、このために、一部のステーションが無線でありその他のステーションが有線ネットワークに接続される構成の任意の混在システムが不可能となる。
【００１７】
本発明の実施形態は、ＮＴＰアプリケーション層時刻同期プロトコルの利用を続けながら各ステーション２においてＯＳクロック８を同期させる。しかしながら、この場合には、リモートタイムサーバ１０に対しポーリングしてクロックを同期させるＮＴＰではなく、各ステーション２内のＯＳソフトウェアクロックが、時刻ソースとしてそのステーションの物理層クロック１２を使用する。更に、ＮＴＰが使用する時刻ソースは、切り替え可能である。一部の事例では、ＮＴＰ精度は、インターネットベースタイムサーバ１０を使用して適切になる（例えば、多数部屋用システム、又は有線及び無線ステーションが混在する構成）。高精度が必要とされる他の事例において、ＮＴＰ時刻ソースは、より正確なソース、この場合、各ステーション及びアクセスポイントにおいて無線通信を制御するために使用される物理層クロックに切り替えられる。各ステーション及びアクセスポイントは、独自の物理層クロックを有する。物理層クロックは、例えば、ＩＥＥＥ８０２．１１において、Ｗｉ−Ｆｉシステム内のフレームデータレートをクロック制御するのに使用される。
【００１８】
このことは、図２を参照して示されており、各ステーションのＯＳソフトウェアクロック８は、物理層クロック１２が各ステーションのＯＳソフトウェアクロック８用同期ソースとなるようにして、ＮＴＰを使用して各ステーションの物理層クロック１２に対しポーリングする。更に、各ステーションの物理層クロック１２は、アクセスポイント６の物理層クロック１４に対して同期される。
【００１９】
図２はこの構成を示し、システムがＷｉ−Ｆｉベースであるこの事例において２つ又はそれ以上のステーション２でタイミングを実質的に同期させるために、ＮＴＰは、タイミングソースとして各ステーションの物理層クロック１２を使用し、時刻同期機能要素が、アクセスポイント６の物理層クロック１４と交換される。図１と同様に、再生されるメディアは、インターネットからストリーミングサービスを介してアクセスポイント６に接続されたユニットを経由して供給すること、又は代替的に、ステーションの１つに組み込むことができる。
【００２０】
このような構成を使用して、各ステーションは、ＮＴＰを使用して独立的にステーションのＯＳソフトウェアクロックをステーション自体の物理層クロックに同期させることが理解されるであろう。この同期情報はステーション間で配信され、従って、所定の階層は必要とされない。
【００２１】
図２に示すようなＷｉ−Ｆｉシステムの場合、各ステーションの物理層クロック１２は、タイミング同期機能（ＴＳＦ）を使用して同期状態に保たれる。この機能は、ビーコンフレームの周期的な生成及びＲＦを使用したビーコンフレームの送信を含む。このビーコンフレームは、ＡＰによりブロードキャストされ、従って、全てのステーションで受信される。
【００２２】
図３は、アクセスポイント６の物理層クロック１４の動作を概略的に示す。この物理層クロック１４は自走ローカル発振器（例えばローカル水晶発振器）１６を含み、クロッキング信号と、各クロック「チック（ｔｉｃｋ）」又はクロックサイクルでインクリメントするように構成されたカウンタ値とを生成する。フレーミングユニット２０は、周期的にビーコンフレームを生成して、これを、Ｗｉ−Ｆｉアンテナ２４に接続されたＲＦフロントエンド回路２２を使用して送信する。全ステーション２によりブロードキャスト及び受信される各ビーコンフレームは、ＡＰカウント器１８からのカウンタ値のコピーを含むタイムスタンプフィールドを含む。ビーコンフレームを送信するこの機能は、Ｗｉ−Ｆｉ規格（ＩＥＥＥ８０２．１１）の一部である。ビーコンフレームの送信は高速及び直接的であり、全ステーションは実質的に同時にこのフレームを受信する。ビーコンフレーム及びＴＳＦは、典型的に約１００ｍｓ毎にブロードキャストされる。
【００２３】
本発明のこの実施形態がどのように動作するかを完全に理解するためには、各ステーション２の物理層クロックの構成を理解する必要がある。これを図４に示す。
【００２４】
アクセスポイント６の発振器と同様に、ステーション２は、ローカル水晶発振器２８で形成された自走発振器を有する。カウント器３０は、各クロックサイクルで、アクセスポイントで発生するような各クロック「チック」でインクリメントされる。このことは、各ステーションの自走発振器２８が、アクセスポイントの自走発振器と同じ周波数でクロック信号を生成する必要があることを意味する。しかしながら、各発振器内で使用される個々の水晶発振器間には変動があり、その結果として各発振器はわずかに異なるレートで動作する。このため、アクセスポイント及び各ステーションのカウンタ値は、わずかに異なるレートでインクリメントされることになり、たとえ周期的に同期されるとしても、時間とともに同期情報間でドリフトすることになる。
【００２５】
この周波数変動及びドリフトを処理するために、ステーションがそのＲＦフロントエンド３２を介してビーコンフレームを受信する際に、復号ブロック３４はタイムスタンプフィールドを抽出する。このタイムスタンプフィールドは、アクセスポイントのカウント器のカウンタ値を含む。アクセスポイントからのこのカウンタ値は、その後、ステーションのカウント器３０にコピーされる。従って、ビーコンフレーム及びタイムスタンプフィールドが受信される毎に、ステーションのカウント器３０はアクセスポイント６のカウント器１８の値に再同期される。ビーコンフレームがＲＦ周波数で送信される際に、送信に関する時間遅延は問題にならない。更に、ビーコンフレーム及びタイムスタンプは、Ｗｉ−Ｆｉ規格の低水準機能であり、更に補正を必要とする有意な処理遅延の影響を受けず、従って、付加される遅延は問題にならない。
【００２６】
物理層クロック１８及びアクセスポイントの物理層クロックは、水晶発振器及びシリコンで形成された単調ハードウェアカウンタであるカウンタ値を含む。Ｗｉ−Ｆｉチップにおいて、このカウンタ値は、共通クロック信号として上位処理層が利用できる低遅延カウンタとしてチップ全体により使用される。一実施例において、クロックは、１９２ｋＨｚで作動する２４ビットカウンタ値を含むことができるが、他のビット長及び周波数が可能であり、これらは、ＮＴＰにとって適切な入力を生成するためにパースされる。
【００２７】
本明細書で示す実施形態において、ステーション物理層クロックは更に、カウント器３０をレート制御するために使用される更なる機能を含む。この機能は、ビーコンフレーム間の転用が最小限に抑えられ全体で排除することができるように、ステーションカウント器３０をアクセスポイントカウント器１８とできる限り厳密に合わせるために提供される。この実施例において、図４に示すステーション物理層クロックは、ローカル水晶発振器２８とカウント器３０との間に接続されたレート調整モジュール３６を有する。このモジュールは、カウント器３０が水晶発振器によりインクリメントされ調整されるようにされたレートを可能にする。例えば、レート調整モジュールは、カウント器３０に供給されたチックレートを制御するソフトウェアモジュールとすることができる。別の実施例において、レート調整モジュールは、カウント器３０に供給されたチックレートを制御するために使用される位相同期ループのようなハードウェアモジュールとすることができる。レート調整モジュール３６は、クロック信号がカウント器３０をインクリメントするレートを調整して、アクセスポイントローカル水晶発振器１６がアクセスポイントカウント器１８をインクリメントするレートにできる限り厳密に合わせるために使用される。このことは、タイムスタンプ記録及びエラー計算ユニット３８を使用することにより実現される。このユニットは、タイムスタンプを各復号ビーコンフレームから受信して、タイムスタンプに含まれたアクセスポイントカウンタ値とステーションカウント器３０からの現在カウンタ値との間の差分を計算する。このエラー値は、ステーションカウント器３０がアクセスポイントカウンタ値で上書きされる前に計算される。このことは、タイムスタンプ記録及びエラー計算ユニットを使用してカウント器３０の値を繰り返しモニタし、カウント器３０が更新される毎にモニタされた値を実質的に同時に更新することにより実現することができる。代替的に、タイムスタンプ記録及びエラー計算ユニットは、読み取られたビーコンフレーム及びＳＴＡカウンタの到着の間のクロックチックの数をカウントし、それに応じてクロック信号を補正することができる。
【００２８】
従って、タイムスタンプ記録及びエラー計算ユニット３８は、アクセスポイントカウンタ値とステーションカウンタ値との間の差分、又はそれらのカウンタ値が最後のビーコンフレーム受信からドリフトした差分を表す、アクセスポイントカウント器１８とステーションカウント器３０との間のエラー値を供給する。
【００２９】
その後、このようにして得られたエラー値は、エラー補正計算モジュール４０に供給することができる。このモジュールは、得られたエラー値に対してステーションカウンタを調整するためにどのようにしてエラー調整ユニット３６を制御するか判定するために使用される。このことを実現できる１つの方法は、前回の補正からの経過時間及び現在のエラー値を認識することによるものである。この情報は、エラー値と組み合わせて、アクセスポイントカウンタ値とステーションカウンタ値との間のドリフト量を判定することを可能にする。その後、水晶発振器からのクロック信号はレート調整ユニット３６において調整されて、アクセスポイントカウント器１８のレートに非常に近いレートでステーションカウント器３０をインクリメントさせることができる。このことが各タイムスタンプ受信時に繰り返し行われるので、エラー値は、相対的に短い期間で最小値に向う傾向があり、高精度なエラー計算及びレート調整回路を使用することにより、アクセスポイントカウント器１８とステーションカウント器３０とを厳密に合わせることが可能となる。
【００３０】
同じ技術が、各ステーションにおいてそれぞれの物理層クロックを使用することにより、各ステーション２において独立的に実行される。これによって、結果的に、各ステーションのカウンタ値が、アクセスポイントカウンタ値、更に他の各ステーションのカウンタ値と厳密に同期される。
【００３１】
前述の物理層クロック補正技術は、Ｗｉ−Ｆｉ規格の一部ではない。しかしながら、Ｗｉ−Ｆｉドライバに低水準でアクセスでき、これによって、受信したビーコンフレーム及びカウンタ値へのアクセスが可能であることが分かっている。従って、これらを使用して、アクセスポイントとステーションとの間で厳密な同期が得られた。
【００３２】
前記の実施形態は、エラー計算及びレート調整を利用することなく実行することができる。しかしながら、各ローカル発振器間、各ビーコンフレーム受信間のドリフトが大きくなり、同じドリフトが繰り返され、このドリフトは、レート調整及びクロック補正モジュールを使用しても低減することができない。
【００３３】
各ステーションの物理層クロックの別の実施例を図５に示す。図４の場合と同様に、これは、ローカル水晶発振器２８とカウント器３０とを含む。ＲＦフロントエンド回路３２及び復号ユニット３４は、ビーコンフレームを受信し、ビーコンフレームのアクセスポイントカウンタ値を使用してステーションカウント器３０を復号及び更新するようになっている。
【００３４】
この実施例において、物理層クロックは、ステーションカウント器３０をレート制御するのではなく、アクセスポイントカウンタ値を受信した時点でアクセスポイントカウンタ値及びステーションカウンタ値に対応する１対の値を生成する。この値は、タイムスタンプ及びペア生成ユニット４２において生成される。この値は、相関付けられたアクセスポイント及びステーションのカウンタ値ペアとして用いられる。これを実現するために、アクセスポイントカウンタ値の到着時間が、ステーションカウント器３０によりタイムスタンプが付与され、その後、ステーションカウンタ値が、このタイムスタンプから読み取られ／導き出される。相関付けられたカウンタ値ペアが生成されると、このペアは、上位ソフトウェア層に渡されて処理される。この上位層は、ステーション水晶発振器とアクセスポイント水晶発振器２８との間のレート差の補正を行うことができる。例えば、これは、後述するように、ＮＴＰクロックインターフェースにより行うことができる。アクセスポイント及びステーションのカウンタ値のペアは同じタイムスタンプに相関付けられるので、上位層がペアを処理して補正を実行するのにある程度時間がかかるかどうかは重要なことではない。
【００３５】
この実施例において、上位ソフトウェア層は、相関付けられたカウンタペアを使用して、ステーションで受信された各ビーコンフレーム間の時間周期全域でステーションカウンタがアクセスポイントカウンタとどの程度相違しているかをモニタすることができる。これは、この相違又はドリフトの精度を向上させるためにいくつかのビーコンフレーム全域でモニタされることが好ましい。このドリフトが分かると、上位ソフトウェア層は、最後のビーコンフレームからの時間を判定し、ステーションカウンタがその周期にどの程度相違しているかを計算し、それに応じて現在カウンタ値を調整することにより、ステーションカウンタ値をレート補正することができる。
【００３６】
図４及び５を参照して説明した物理層クロックの実施形態のいずれかを使用することにより、前述の各ステーション２は、アクセスポイントカウント器１８との同期が大幅に強化されたカウント器３０を有する。ステーション及びアクセスポイントカウンタは、高精度で実行された場合に実質的に同期されることになる。
【００３７】
しかしながら、物理層クロック内のカウンタは、それ自体はＮＴＰとの使用に適していない。このため、図６に示すように、Ｗｉ−Ｆｉシステムのアプリケーション層内のＮＴＰクロックインターフェースが必要とされる。このインターフェース５０は、最新のカウンタ値を物理層クロック５２から取得する。この現在カウンタ値は、図５を参照して前述した第２の実施例において使用される場合、各ビーコンフレームの受信間の任意のドリフトを調整するようにレート補正することができる。ＮＴＰクロックインターフェースは、物理層クロックがＮＴＰによる使用に適した形式であるように、すなわちインターネットクロックサーバにより供給された形式と類似の形式でセットされるように、物理層クロックをパースする。各ステーション間のメディア再生を同期させるために、ＮＴＰクロックインターフェースが正確な時刻を供給するかどうかは重要ではないが、重要なことは、全てのステーション及びクロックが同じ時刻に同期されるということである。
【００３８】
ＮＴＰソースセレクタ５４は、ＮＴＰクロックを、ＮＴＰクロックインターフェース５０を介して物理層クロックから、又は１つ又はそれ以上のインターネットベースクロックソースから選択するように構成される。この選択は、必要とされる精度のレベル、システム全体構成、又は必要に応じて他の要因に基づくことができる。この後に、ＮＴＰは、公知の有線ネットワーク環境と同様に動作する。ＮＴＰは、周期的にクロックソースに対しポーリングし、選択されたＮＴＰソースは、選択されたソースからのクロック値を、クロックポーリング用ラウンドトリップ時間（ＲＴＴ）に基づいて標準的ＮＴＰ予測アルゴリズムを適用するＮＴＰ精度予測器５６に供給する。一実施例において、このアルゴリズムは、クロックソースがステーションの内部にある（非常に短いＲＴＴ）場合でも、元のままとすることができる。他の実施例において、このアルゴリズムは、クロックソースのローカル性を考慮するように最適化することができる。ＮＴＰ調整は、クロックソース値及び予測に基づきステーションのオペレーティングシステムソフトウェアクロック８に対して行われる。
【００３９】
これと同様のプロセスは、全ステーションにおいて実行される。各物理層クロック間の同期が図４又は図５の回路を使用して実現されるので、同期されたオペレーティングシステムソフトウェアクロックが、各ステーションにおいて取得される。従って、別々のステーションでのメディア再生は、このようにして同期されたオペレーティングシステムソフトウェアクロックを使用して同期されて、メディアは、互いのステーションと同期されてステーションで（オーディオの場合）聴取される。
【００４０】
前述のシステムの更なる強化機能は、同期の状態に関する追加情報を各ステーションに供給するためのＷｉ−Ｆｉの別の機能を使用することができる。Ｗｉ−Ｆｉ規格は、サポートされたデータレートに関する情報を提供するための、ステーションからアクセスポイントに送られる「プローブ要求」フレーム（特に）を含む。しかしながら、プローブ要求フレームは、他の情報に使用できるベンダ固有フィールドも有する。例えば、アクセスポイントカウンタとステーションカウンタとの間の差分を示す直近計算エラー値をフィールド内に含めることができる。このフレームは、本来アクセスポイントに送られるものであるが、実際にはＷｉ−Ｆｉネットワーク上でブロードキャストされ、このことは、他の全てのステーションがこのフレームを同様に受信できることを意味する。
【００４１】
１つ又はそれ以上のステーションは、エラー値に関する情報を他のステーションから収集することができ、この情報は、システムパフォーマンスを向上させるために使用することができ、例えば、ＮＴＰセレクタへの入力として使用することができる。この場合、エラー値全てが十分に小さい場合、ステーションは、ＴＳＦベースクロックソースに切り替わることができ、或いは逆に、ＳＴＡが受信不良により大きなエラー値を有する場合、インターネットベースソースの方が、より信頼性が高くＮＴＰセレクタにより選択されるべきである。別の実施例において、このエラー値は、エラー値が別々のステーションを介した別々の左右ステレオチャンネルを可能にする程に小さいかどうか判定するために使用することができる。その結果が、別々の左右チャンネルが十分に同期されていないと判定された場合、システムは、各チャンネルを介して同じメディア（オーディオ）再生に戻す、すなわちステレオを全く分離しないように制御することができる。別の実施例において、情報がユーザに提供されて、ユーザが、ステレオチャンネルを出力できるのに十分な精度が実現されるようにＳＴＡを設置するのに役立つことができる。このことは、複数経路間の有意な歪みが存在する環境において特に有用である。
【符号の説明】
【００４２】
２  ステーション
６  アクセスポイント
８  ＯＳソフトウェアクロック
１２  物理層クロック
【図１】
0005913596.tif 000002
【図２】
0005913596.tif 000003
【図３】
0005913596.tif 000004
【図４】
0005913596.tif 000005
【図５】
0005913596.tif 000006
【図６】
0005913596.tif 000007