(57)【特許請求の範囲】
【請求項１】
無線通信システムにおける第１の装置のプロセッサ、メモリおよび送受信機と協働して予め定められた通信チャンネルの順序集合において該第１の装置を第１の通信チャンネルから第２の通信チャンネルへ切り換えるチャンネル切換モジュールであって、該チャンネル切換モジュールは、
前記第１の装置の第１のカウンタの値を調節して、前記第１の通信チャンネルを使用する前記第１の装置と第２の装置の間でのデータパケット伝送エラーに追従させ、
前記第１のカウンタの値がチャンネル切換閾値に達した後のみにおいて、前記予め定められた通信チャンネルの順序集合に関する情報に基づいて、前記第１の装置を前記第２の通信チャンネルに切り換えるステップを達成する命令を含んでおり、
前記第２の装置の第２のカウンタの値は前記第１の装置と前記第２の装置の間でのデータパケット伝送エラーに追従するように調節され、前記第２の装置は前記第２の装置の前記第２のカウンタが前記チャンネル切換閾値に達した後のみにおいて前記第２の通信チャンネルに切り換わる、チャンネル切換モジュール。
【請求項２】
前記第１の装置はデータソースであり、前記第２の装置は少なくとも１つのデータシンクのうちの１つであり、前記第１のカウンタの値を調節することは、
ソースが期待されるアクノリッジ信号をすべてのシンクから受信したとき増加ステップだけ前記第１のカウンタの値を増やし、
ソースがすべての期待されるアクノリッジ信号よりも少なく受信したとき減少ステップだけ前記第１のカウンタの値を減少し、
前記第１のカウンタの値が予め定めた最大値を超えるとき該予め定めた最大値まで前記第１のカウンタの値を減らすステップを含み、
各シンクはそのシンクが前記ソースから相応のデータパケットを受信するとき期待されるアクノリッジ信号の１つをそれぞれ送信する請求項１記載のチャンネル切換モジュール。
【請求項３】
前記ソースは前記ソースが前記相応のデータパケットをシンクへ送信したタイムスーパーフレーム内ですべてのシンクから前記アクノリッジ信号を受信することを期待する請求項２記載のチャンネル切換モジュール。
【請求項４】
前記第１の装置はデータシンクであり、前記第２の装置はデータソースであり、前記第１のカウンタの値を調節することは、
前記シンクが前記ソースから期待されるデータパケットを受信するとき前記第１のカウンタの値を前記第２のカウンタの値に従って設定するステップであって、前記期待されるデータパケットは前記第２のカウンタの値を含むステップと、
前記シンクが前記ソースから前記期待されるデータパケットを受信することに失敗するとき前記第１のカウンタの値を減少ステップだけ減らすステップを含む請求項１記載のチャンネル切換モジュール。
【請求項５】
前記シンクはタイムスーパーフレーム内で前記ソースから前記データパケットを受信することを期待する請求項４記載のチャンネル切換モジュール。
【請求項６】
前記予め定められた通信チャンネルの順序集合に関する前記情報はインデックスを含み、各インデックス位置は通信チャンネルの対応する１つにユニークにマッピングされ、前記第１の通信チャンネルは第１のインデックス位置にマッピングされ、前記第２の通信チャンネルは前記第１のインデックス位置に続く第２のインデックス位置にマッピングされる請求項１記載のチャンネル切換モジュール。
【請求項７】
前記第１および第２の装置は予め定められた限定された数のクロックカウントにより時間を繰り返し測る同期クロックをそれぞれ有し、各クロックカウントは前記予め定められた通信チャンネルの順序集合における通信チャンネルの１つにそれぞれマッピングされ、前記第２の通信チャンネルは前記第１の装置が前記第２の通信チャンネルに切り換わるとき現在のクロックカウントにマッピングされている請求項１記載のチャンネル切換モジュール。
【請求項８】
前記命令は前記プロセッサ、前記メモリおよび前記送受信機に接続された電子コンポーネント内で実現される請求項１記載のチャンネル切換モジュール。
【請求項９】
前記命令は前記プロセッサによる実行のためのソフトウェアコードとして前記メモリ内で実現される請求項１記載のチャンネル切換モジュール。
【請求項１０】
無線通信システム内で第２の装置と通信するための第１の装置であって、該第１の装置は、該第１の装置に、
予め定められた通信チャンネルの順序集合における第１の通信チャンネルにおいて前記第２の装置とデータパケットを通信させ、
前記第１の装置と前記第２の装置との間のデータパケット伝送エラーに追従する第１のカウンタを用いて前記第１の通信チャンネルの第１の品質測定値を追跡させ、そして
前記第１のカウンタの値がチャンネル切換閾値に達した後において、前記予め定められた通信チャンネルの順序集合に関する情報に基づいて、前記第１の装置を前記第１の通信チャンネルから前記予め定められた通信チャンネルの順序集合における第２の通信チャンネルに切り換えさせる制御ロジックを有し、
前記第２の装置は前記第１の装置と前記第２の装置との間のデータパケット伝送エラーに追従する第２のカウンタを用いて前記第１の通信チャンネルの第２の品質測定値を追跡し前記第２のカウンタの値が前記チャンネル切換閾値に達した後前記第２の通信チャンネルへ切り換わる、第１の装置。
【請求項１１】
前記第１の装置はデータソースであり、前記第２の装置は少なくとも１つのデータシンクのうちの１つであり、データパケットを通信することは、
データパケットを前記シンクへ送信することであって、送信される各データパケットに関して、該データパケットを受信した各シンクは該データパケットが送信されたタイムスーパーフレーム内で前記ソースへアクノリッジ信号を送信することを含み、
前記第１の品質測定値を追跡することは、前記シンクへ送信される各データパケットに関して、前記タイムスーパーフレーム内ですべてのシンクからアクノリッジ信号を受信したとき前記第１のカウンタの値を増加させ、前記ソースが前記タイムスーパーフレーム内で前記アクノリッジ信号の少なくとも１つを受信することに失敗したとき前記第１のカウンタの値を減らすことを含む請求項１０記載の第１の装置。
【請求項１２】
前記第１の装置はデータシンクであり前記第２の装置はデータソースであり、データパケットを通信することは、該データソースから期待されるデータパケットを受信することを含み、相応のタイムスーパーフレーム内で受信されることが期待される各データパケットに関して、該シンクは該ソースへアクノリッジ信号を送信し、前記第１の品質測定値を追跡することは、前記シンクが前記相応のタイムスーパーフレーム内で期待されるデータパケットを受信したとき前記第１のカウンタの値を該期待されるデータパケットに含まれる前記第２のカウンタの値に設定し、前記シンクが前記タイムスーパーフレーム内で前記期待されるデータパケットを受信することに失敗したとき前記第１のカウンタの値を減らすことを含む請求項１０記載の第１の装置。
【請求項１３】
前記予め定められた通信チャンネルの順序集合に関する前記情報はインデックスを含み、各インデックス位置は通信チャンネルの対応する１つにユニークにマッピングされ、前記第１の通信チャンネルは第１のインデックス位置にマッピングされ、前記第２の通信チャンネルは前記第１のインデックス位置に続く第２のインデックス位置にマッピングされる請求項１０記載の第１の装置。
【請求項１４】
前記第１および第２の装置は予め定められた限定された数のクロックカウントにより時間を繰り返し測る同期クロックをそれぞれ有し、各クロックカウントは前記予め定められた通信チャンネルの順序集合における通信チャンネルの１つにそれぞれマッピングされ、前記第２の通信チャンネルは前記第１の装置が前記第２の通信チャンネルに切り換わるとき現在のクロックカウントにマッピングされている請求項１０記載の第１の装置。
【請求項１５】
ソースと１つのシンクまたは複数のシンクを含む複数の装置を含む無線通信システムにおけるチャンネル切換方法であって、前記装置は予め定められた通信チャンネルの順序集合における第１のチャンネルにおいて通信し、前記方法は、
前記ソースに関連付けられたソースカウンタの値を調節して前記ソースと前記シンクまたはすべてのシンクの間におけるデータパケット伝送エラーに追従させ、
前記シンクまたは各シンクについて、そのシンクに関連付けられたシンクカウンタの値を調節して前記ソースカウンタの値に追従させ、
前記ソースカウンタの値がチャンネル切換閾値に達したとき、前記予め定められた通信チャンネルの順序集合に関する情報に基づいて、前記ソースを前記予め定められた通信チャンネルの順序集合における第２の通信チャンネルに切り換え、
前記シンクまたは各シンクについて、そのシンクに関連付けられた前記シンクカウンタの値が前記チャンネル切換閾値に達したときそのシンクを前記第２の通信チャンネルに切り換えることを具備するチャンネル切換方法。
【請求項１６】
前記ソースカウンタの値を調節することは、
前記ソースが前記シンクまたはすべてのシンクから期待されるアクノリッジ信号を受信したとき増加ステップだけ前記ソースカウンタの値を増加させ、
前記ソースがすべての期待されるアクノリッジ信号よりも少なく受信したとき減少ステップだけ前記ソースカウンタの値を減らし、
前記ソースカウンタの値が予め定められた最大値を超えるとき前記予め定められた閾値まで前記ソースカウンタの値を減らすことを含み、
前記シンクまたはすべてのシンクが前記ソースから相応の期待されるデータパケットを受信するときそのシンクは前記期待されるアクノリッジ信号の１つをそれぞれ送信し、
前記シンクまたは各シンクについて、そのシンクに関連付けられた前記シンクカウンタの値を調節することは、
前記シンク装置が前記ソースから前記期待されるデータパケットを受信したとき該期待されるデータパケットに含まれる前記ソースカウンタの値に基づいて前記シンクカウンタの値を設定し、
前記シンクが前記ソースから前記期待されるデータパケットを受信することに失敗したとき前記減少ステップだけ前記シンクカウンタの値を減らすことを含む請求項１５記載のチャンネル切換方法。
【請求項１７】
前記ソースは該ソースが前記シンクまたはすべてのシンクへ相応の期待されるデータパケットを送信したタイムスーパーフレーム内で前記シンクまたはすべてのシンクからアクノリッジ信号を受信することを期待し、前記シンクまたはすべてのシンクはそのタイムスーパーフレーム内で前記ソースから前記期待されるパケットを受信することを期待する請求項１６記載のチャンネル切換方法。
【請求項１８】
前記ソースを前記第２の通信チャンネルに切り換えることは、前記ソースカウンタを前記チャンネル切換閾値より大きく前記予め定められた最大値より小さいかそれに等しい切換後の値に設定することを含み、前記シンクまたは各シンクについて、前記シンクを前記第２の通信チャンネルに切り換えることはそのシンクに関連付けられた前記シンクカウンタを前記切り換え後の値に設定することを含む請求項１７記載のチャンネル切換方法。
【請求項１９】
前記予め定められた通信チャンネルの順序集合に関する前記情報はインデックスを含み、前記通信チャンネルの各々は相応のインデックス位置にユニークにマッピングされ、前記第１の通信チャンネルは第１のインデックス位置にマッピングされ、各装置について、その装置を前記第２の通信チャンネルに切り換えることは、前記第１のインデックス位置に続く第２のインデックス位置を決定することを含み、該第２のインデックス位置は前記第２の通信チャンネルにマッピングされている請求項１８記載のチャンネル切換方法。
【請求項２０】
前記ソース、または前記シンクまたは任意のシンクを前記第２の通信チャンネルに切り換えることはさらに、その装置を前記第２の通信チャンネルに切り換える前にその装置を前記予め定められた通信チャンネルの順序集合において前記第１および第２の通信チャンネルの間にある少なくとも１つの他の通信チャンネルに切り換えることを含む請求項１９記載のチャンネル切換方法。
【請求項２１】
各装置について、その装置に関連付けられたクロックを維持することをさらに具備し、すべてのクロックは同期化され、各クロックは予め定められた限定された数のクロックカウントにより時間を繰り返し測り、各クロックカウントは予め定められた通信チャンネルの順序集合における通信チャンネルの１つにそれぞれマッピングされ、各装置について、前記装置を前記第２の通信チャンネルへ切り換えることは、その装置に関連付けられたクロックの現在のクロックカウントを判定することを含み、該現在のクロックカウントはその装置が前記第２の通信チャンネルに切り換えられるときの前記第２の通信チャンネルにマッピングされている請求項１７記載のチャンネル切換方法。
【請求項２２】
前記ソースを前記第２の通信チャンネルに切り換えることは、
前記ソースから前記シンクまたはすべてのシンクへｓｔａｒｔ  ｓｙｎｃパケットを送信し、
前記ソースにおいて、前記シンクまたは各シンクから送信されるｓｙｎｃをアクノリッジするパケットを受信し、
前記ソースから前記シンクまたはすべてのシンクへｅｎｄ  ｓｙｎｃパケットを送信することを含み、
前記シンクまたは各シンクについて、そのシンクを前記第２の通信チャンネルへ切り換えることは、
そのシンクにおいて、前記ソースから送信される前記ｓｔａｒｔ  ｓｙｎｃパケットを受信し、
そのシンクから前記ソースへアクノリッジパケットをそれぞれ送信し、
そのシンクにおいて、前記ソースから送信される前記ｅｎｄ  ｓｙｎｃパケットを受信することを含む請求項２１記載のチャンネル切換方法。
【請求項２３】
前記ソース、または前記シンクまたは任意のシンクを前記第２の通信チャンネルに切り換えることはさらに、その装置を前記第２の通信チャンネルに切り換える前にその装置を前記予め定められた通信チャンネルの順序集合において前記第１および第２の通信チャンネルの間にある少なくとも１つの他の通信チャンネルに切り換えることを含む請求項２２記載のチャンネル切換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的に無線通信に関し、より特定的には無線通信システムにおけるチャンネル切換に関する。
【背景技術】
【０００２】
著作権告知
本特許文献の開示の一部は著作権保護の対象となる題材を含んでいる。米国特許商標庁のファイルまたは記録におけるような特許文献または特許の開示の何人による複写再生に対しても著作権者は何の異議もないが、それ以外についてはすべての著作権を留保する。
【０００３】
典型的な無線通信システムは、ソース（湧き出し）装置と少なくとも１つのシンク（吸い込み）装置とから成っている。そのようなシステムにおいて、ソース装置は典型的には予め定められた数の周波数チャンネルにおいて被変調無線周波（ＲＦ）信号でデータをシンク装置へ伝送する。データ伝送の間、或る特定の周波数チャンネルは、いくつかの理由、例えばソースとシンクが移動する、システムの環境が変動して時間依存フェージングを引き起こす、および他の近傍のＲＦエネルギ源（例えば他の無線装置）が干渉を引き起こす、といった理由で信頼性のないものとなり得る。ＩＳＭ（産業、科学および医学）周波数帯域を共有する装置の数が増加すれば他の無線データシステムによる干渉がこれらの周波数帯域で問題となる。その結果、これらの帯域の任意の特定の無線チャンネルの品質は多少予測不能なものとなる。
【０００４】
上述した問題に対処するため、公知の無線通信システムは、典型的には、システムが予め定められたチャンネルホッピングパターンに従って予め定められた時間間隔で新しいチャンネルへホップするという、通常の周波数ホッピングまたはチャンネル切換方法を採用する。そのような方法においては、現在のチャンネルの品質が良い時であってもシステムは新しいチャンネルへホップする。そのような連続的なホッピングはデータ伝送速度を不必要に減少させシステムの安定性を損う。さらに、任意の特定のチャンネルの品質に関係なく予め定められたチャンネルホッピングパターンに従うことにより、システムは品質の悪いチャンネルへ繰り返し戻るおそれがありデータ伝送速度をさらに悪化させる。
【０００５】
無線データ伝送システムおよびチャンネル切換方法に対する他の問題は、ソースとシンクの間の通信が中断されるほどに現チャンネルの品質が悪化すると信頼性のある通信が保証されない、ということである。そのため、チャンネル切換方法は、ソースとシンクの間の信頼性のある通信を必要とすることなくできるだけ早く輻奏のないチャンネルへソースとシンクを向ける、統合された、かつ、信頼性のある解決策を提供しなければならない。このようにすれば、データ伝送は瞬断なく続行することができる。
【０００６】
したがって、現チャンネルの品質が容認できないものになったときのみシステムが新しいチャンネルに切り換わり、効率的で同期化されかつ信頼性のある形でソースとすべてのシンクを容認できる品質の共通チャンネルへ切り換える、無線データ伝送システムとチャンネル切換方法へのニーズがある。
【発明の概要】
【０００７】
前述の利益は以下に記述される無線通信システムおよびチャンネル切換方法によりもたらされる。
【０００８】
本発明は、無線通信システムにおける第１の装置のプロセッサ、メモリおよび送受信機と協働して予め定められた通信チャンネルの順序集合において該第１の装置を第１の通信チャンネルから第２の通信チャンネルへ切り換えるチャンネル切換モジュールにおいて見い出される。そのチャンネル切換モジュールは次のステップを達成する命令を含んでいる。前記第１の装置の第１のカウンタが調節されて前記無線通信システム内の前記第１の装置と第２の装置の間でのデータパケット伝送エラーに追従する。前記第１のカウンタの値がチャンネル切換閾値に達した後のみにおいて前記第１の装置が前記第２の通信チャンネルに切り換えられる。前記第２の装置の第２のカウンタの値もまた前記第１の装置と前記第２の装置の間でのデータパケット伝送エラーに追従するように調節される。前記第２の装置は前記第２の装置の前記第２のカウンタが前記チャンネル切換閾値に達した後のみにおいて前記第２の通信チャンネルに切り換わる。
【０００９】
本発明は、無線通信システム内で第２の装置と通信するための第１の装置においても見い出される。該第１の装置は、該第１の装置に、予め定められた通信チャンネルの順序集合における第１の通信チャンネルにおいて前記第２の装置とデータパケットを通信させるための制御ロジックを有している。その制御ロジックはまた第１の装置に前記第１の通信チャンネルの第１の品質測定値を追跡させる。その制御ロジックはさらに、第１の装置に前記第１の品質測定値がチャンネル切換閾値までまたはそれ以下に低下した後前記第１の装置を前記第１の通信チャンネルから前記予め定められた通信チャンネルの順序集合における第２の通信チャンネルに切り換えさせる。前記第２の装置は前記第１の通信チャンネルの第２の品質測定値を追跡し該第２の品質測定値が前記チャンネル切換閾値までまたはそれ以下に低下した後前記第２の通信チャンネルへ切り換わる。
【００１０】
本発明は、ソースと少なくとも１つのシンクを含む複数の装置を含む無線通信システムにおける以下のチャンネル切換方法においても見い出される。前記装置は予め定められた通信チャンネルの順序集合における第１のチャンネルにおいて通信する。前記方法は以下のステップを含む。前記ソースに関連付けられたソースカウンタの値が調節されて前記ソースと前記またはすべてのシンクの間におけるデータパケット伝送エラーに追従させられる。前記または各シンクについて、そのシンクに関連付けられたシンクカウンタの値が調節されて前記ソースカウンタの値に追従させられる。前記ソースカウンタの値がチャンネル切換閾値に達したとき前記ソースは前記予め定められた通信チャンネルの順序集合における第２の通信チャンネルに切り換わる。前記または各シンクについて、そのシンクに関連付けられた前記シンクカウンタの値が前記チャンネル切換閾値に達したときそのシンクは前記第２の通信チャンネルに切り換わる。
【００１１】
例示的な実施形態の理解は以下の図面を参照する以下の記述から得られる。
【図面の簡単な説明】
【００１２】
【図１】例示的な無線通信システムを示す。
【図２Ａ】例示的なシステムにおけるソース装置を示す。
【図２Ｂ】例示的なシステムにおけるシンク装置を示す。
【図３】例示的なシステムにおいて採用されるタイムスーパーフレーム（「ＴＳＦ」）を示す。
【図４】例示的なシステムにおいて用いられる様々なサイズのＴＳＦを示す。
【図５】例示的なシステムのデータモードにおけるソース装置の動作を図示するフローチャートを示す。
【図６】例示的なシステムのデータモードにおけるシンク装置の動作を図示するフローチャートを示す。
【図７】インデックスベースのチャンネル切換を採用する例示的なシステムのチャンネル切換モードにおけるソース装置とシンク装置の動作を図示するフローチャートを示す。
【図８】インデックスベースのチャンネル切換を採用する例示的システムにおける装置のチャンネル切換挙動の例を図示するチャートを示す。
【図９】インデックスベースのチャンネル切換を採用する例示的システムにおける装置のチャンネル切換挙動の例を図示するチャートを示す。
【図１０】インデックスベースのチャンネル切換を採用する例示的システムにおける装置のチャンネル切換挙動の例を図示するチャートを示す。
【図１１】クロックベースのチャンネル切換を採用する例示的システムのチャンネル切換モードにおけるソース装置の動作の例を図示する有限状態マシンの図を示す。
【図１２】クロックベースのチャンネル切換を採用する例示的システムのチャンネル切換モードにおけるシンク装置の動作の例を図示する有限状態マシンの図を示す。
【図１３Ａ】クロックベースのチャンネル切換を採用する例示的システムのチャンネル切換モードにおけるソース装置とシンク装置の動作の例を図示する概要図である。
【図１３Ｂ】クロックベースのチャンネル切換を採用する例示的システムのチャンネル切換モードにおけるソース装置とシンク装置の動作の例を図示する概要図である。
【図１４】クロックベースのチャンネル切換を採用する例示的システムのチャンネル切換モードにおけるソース装置とシンク装置の動作の例を図示する概要図である。
【図１５】クロックベースのチャンネル切換を採用する例示的システムのチャンネル切換モードにおけるソース装置とシンク装置の動作の例を図示する概要図である。
【発明を実施するための形態】
【００１３】
本発明の例示的な実施形態の詳細な記述
例示的な無線通信システムおよびチャンネル切換方法が図面を参照して以下に記述される。それが適切であれば、すべての図面において類似した特徴事項を示すために同一の参照番号が図面において使用される。
【００１４】
システム概観
図１を参照すると、無線通信システム１０は、少なくとも１つのシンク装置３０による信頼性のある受信のために伝送される情報の主要なソースであるソース装置２０を含んでいる。ソースおよびシンク装置は無線信号４０を介して通信する。
【００１５】
したがって、システムは単一のソース装置から複数のディスプレイまたはパフォーマンス装置へのコンテンツの無線伝送に特に有益である。例えば、システムは単一のソース装置からヘッドホン、スピーカ、または多チャンネルオーディオ／ビデオシステムにおける装置のような複数のサウンドパフォーマンス装置へオーディオデータを伝送するために使用される。或いはまた、システムは単一のソース装置からデータのコンテンツを再生するモニタまたはテレビのような複数のディスプレイ装置へオーディオ／ビデオデータを伝送するために使用される。包括的には、システムは単一のソース装置から少なくとも１つのシンク装置へのディジタル情報に圧縮され無線通信信号に変換されても良い任意のコンテンツの信頼性のある伝送に使用され得る。
【００１６】
システムは、情報が無線伝送可能な信号に符号化され、ソース装置から少なくとも１つのシンク装置へ伝送され、無線信号から復号される任意の手段により通信するように構成され得る。したがって、システムはＲＦ波、赤外線、レーザ光または機械的波動（音波）のような、符号化された情報をエネルギー的に配信することのできる任意の手段により通信するよう構成され得る。システムの特定の機能はソースからシンクへデータを本質的に連続的に伝送することであるが、一般にソースとシンクの各々は無線信号の送信および受信の双方を行うよう構成される。以下に記述されるように、ソースはチャンネル切換方法を実施するとともに通常の通信を遂行する上でシンクから送信された信号を受信することも行う。
【００１７】
図２Ａ，２Ｂを参照すると、ソース２０およびシンク３０装置の各々はここに記述される無線信号を送信し受信するに適した送受信機５０、無線信号に含まれるデータを記憶するメモリ６０、および装置の様々な予め定められた所望の機能を達成するプロセッサ７０を有している。各装置は通常の通信（例えばデータモード）および以下に記述されるチャンネル切換方法を行う制御ロジックを有している。いくつかの実施形態において、送受信機、メモリおよびプロセッサと協働して以下に記述されるチャンネル切換方法を実施するチャンネル切換モジュール７５の少なくとも一部に制御ロジックが含まれている。チャンネル切換モジュールはプロセッサ、メモリおよび送受信機に接続された独立した物理的モジュール、例えば集積回路または印刷回路基板のような電気的コンポーネントを含んでも良い。メモリおよび送受信機と協働してチャンネル切換方法を実施する命令が適切な形式で実現されても良い。或いはまた、チャンネル切換モジュールはメモリおよび送受信機に接続されたプロセッサにより実行されるソフトウェアコードとしてメモリ内で実現されても良い。
【００１８】
無線通信システムにおけるソース装置およびシンク装置の動作が記述される。
【００１９】
システムの動作の概観
ソース装置およびシンク装置の各々は無線周波数チャンネルの予め定められた順序集合の任意の１つにおいて通信するよう構成される。通常の通信の間（すなわちチャンネル切換が行われない間）、ソースとすべてのシンクはこれらの周波数チャンネルの１つにおいて通信する。
【００２０】
ソース装置とシンク装置が最初に起動されたとき同一のチャンネルでスタートしても良いが、より一般的には異なるチャンネルでスタートする。ソース装置とシンク装置の間で通信リンクを確立するために、採用される装置と無線信号の特定の性質に依存する初期化ルーチンが実行される。ソース装置とシンク装置の特定の一組が与えられると、１組のチャンネルの中の最初のチャンネルにおけるソース装置とシンク装置の間のリンクを確立するために或る適切な初期化ルーチンが採用される。例えば、そのような或る初期化ルーチンにおいて、ソースは最初のチャンネルにおいて開始しシンクへ信号を送出する。たまたまその最初のチャンネルにいるシンクはいずれもハンドシェークルーチンにおける応答によりソースに登録されることになる。次にソースは予め定められたチャンネルの順序集合における次のチャンネルに進み、以前にソースに登録されていたシンクはいずれもそれに従って次のチャンネルに入る。このようにして、ソースはすべてのシンクがソースに登録されるようになるまで１組のチャンネル内のすべてのチャンネルをスキャンする。
【００２１】
リンクが確立すると、ソース装置とシンク装置はデータパケットの形の無線信号符号化情報を介して通信する。図３を参照すると、ソースは「タイムスーパーフレーム」または「ＴＳＦ」１００と呼ばれる予め定められた期間において一般にはデータパケット８０をシンクへ送信しシンクからのアクノリッジ信号９０（以下「ＡＣＫ」と呼ぶ）を受信する。
【００２２】
したがって、無線リンクが確立すると、ソースとシンクはＴＳＦによって定められる時間モードに入り最初のデータパケットがソースにより送信されシンクの各々により受信される。次に各シンクは１つのＴＳＦ内でソースへＡＣＫを送信する。ソース装置およびシンク装置はこのようにして配信停止または以下に記述されるようなチャンネル切換が起こるまで無限に連なるＴＳＦにおいて通信する。
【００２３】
ソースによってシンクへ送られる各データパケットは少なくとも：パケットが新規なパケットであるか再送されたパケットであるかを示すシーケンス番号８０Ａ；以下に記述されるソースのＨｏｐ−ｉｎ−Ｘカウンタ８０Ｂの値；およびデータペイロード８０Ｃを含んでいる。これらのセグメントはデータパケット内に任意の適切な順序で配置されて良く、データパケットはシステムおよび任意の付加的な所望の機能によって決定される任意の付加的な有益なセグメントを含んでも良い。
【００２４】
ＴＳＦ１００において、ソースがデータパケット８０をシンクへ送信すると、ソースが自己の送受信機を送信モードから受信モードへ切り換えてＡＣＫ９０を受信し始め、シンクが自己の送受信機を受信モードから送信モードへ切り換えてＡＣＫ９０を送信し始めるために送受信機切換時間１２０が設けられる。
【００２５】
データパケットを受信すると、各シンクは予め定められた順序でＡＣＫ９０をソースへ送信してデータパケット８０の受信を知らせる。そのチャンネルにおけるＡＣＫ９０間の干渉を避けるために各シンクによるＡＣＫ９０の送信の間には予め定められたガードタイム１３０が設定される。最後のＡＣＫが送信されると、ソースとシンクが自己の送受信機をそれぞれ送信および受信モードに切り換えるためにさらなる送受信機切換時間１２０が設けられる。
【００２６】
シンクがソースと同期した結果として、各シンクにはソースと同一の開始時刻と終了時刻を有するＴＳＦがもたらされる。その後ソースとシンクは動作期間としてＴＳＦを用いて時間モードにおいて持続的に動作する。それにより、ソースとシンクは、データパケットがＴＳＦの始めにおいてソースにより送信されＡＣＫがＴＳＦ内の予め定められた位置において各シンクにより戻されるという期待により通信を調和させる。
【００２７】
ＴＳＦは特定のシステムおよび通信の適用分野に対して任意の適切な長さ（すなわち期間）を有して良い。ＴＳＦの長さはさらに、固定されているかまたは無線チャンネルの状態あるいはチャンネル切換の間に行われる特定の機能に応じて変化させても良い。図４は例示的なシステムおよびチャンネル切換方法において用いられる３つの異なる長さのＴＳＦを示す。これらは特大のＴＳＦ１４０、大きいＴＳＦ１５０および小さいＴＳＦ１６０を含んでいる。各ＴＳＦのサイズは次に小さいＴＳＦの整数倍である。任意の所望の比を選択することができる。例示的なシステムおよび方法において、特大のＴＳＦ１４０は大きいＴＳＦ１５０のサイズの４倍であり、大きいＴＳＦ１５０はさらに、小さいＴＳＦ１６０のサイズの４倍である。どのようなＴＳＦのサイズが選択されようと、ソース装置とシンク装置の各々は規定されるＴＳＦに従って動作するよう予め構成される。
【００２８】
以下にさらに記述されるように、ソースとシンクの各々はチャンネルの品質を表わしチャンネル切換モードに入ることを決定するためのカウンタを維持している。すべてのデータパケットがソースにより送信されるとき、この最初のデータパケットの中身はソースのカウンタの現在値を含んでいる。以下にもさらに記述されるように、各シンクはソースのカウンタに追従するためにデータパケットにおいて受信されたソースのカウンタの値に応じて自身のカウンタを調節する。最初のデータパケットに含まれているソースのカウンタの初期値は初期チャンネル品質の推定値を含む任意の適切な事項に基づいて、またはシステムの特定の実現形態についての実験により選択される。
【００２９】
データモードとチャンネル切換モード
前述したように、システムは最初に初期化ルーチンを実行して最初のチャンネルにおいてソース装置とシンク装置の間の無線リンクを確立する。ソース装置とシンク装置は次に同期化されその後予め決定されたＴＳＦにより定められる時間モードにおいて動作する。その後、ソース装置とシンク装置の各々は任意の所与の時間においてデータモードとチャンネル切換モードという２つの動作モードの一方において動作する。
【００３０】
ソースおよびシンクはデータモードにおいて、関心データ（例えばオーディオ、オーディオ／ビデオ、データ）をストリーミング（すなわち送信）するために動作する。両装置はそれらが使用中のチャンネルにおいて充分な信頼性と品質で通信できる限りデータモードにとどまる。通信に誤りを生じるかまたは（例えばデータスループット、パケットエラー率の測定により）通信の品質が予め定められた閾値を下回ると、システムはより良いチャンネルを見い出すためにチャンネル切換モードに入る。データモードおよびチャンネル切換モードがさらに記述される。
【００３１】
データモードおよびＨｏｐ−ｉｎ−Ｘカウンタ
システムはデータモードにおいてソース装置からシンク装置への関心データのストリーミングのために動作する。データモードにおけるソース装置とシンク装置のそれぞれの作動の方法１７０，１８０がそれぞれ図５および６に示されたフローチャートにより表わされている。以下に記述されるように、容認可能な通信品質が維持されている限り、ソースおよびすべてのシンクは現チャンネルにとどまる。
【００３２】
システムは予め定められたＴＳＦに従って時間モードにおいて動作する。ＴＳＦは固定長であるかまたは多数の予め定められた長さの１つであり得る。前述した例示的システムにおける３つのＴＳＦのサイズの中で、システムはデータモードにおいて大きいＴＳＦを一般に用いる。現チャンネルの品質が特に良い時に特大のＴＳＦを使用して動作するように大きいＴＳＦと特大のＴＳＦの間で切り換えるように構成されても良い。例えば、パケットエラー率の測定値（以下に記述する）に基づいて特大のＴＳＦと大きいＴＳＦの間で切り換えるように装置が構成され、大きいＴＳＦを使用する装置により測定されたパケットエラー率が予め定められた閾値以下になると、装置は特大のＴＳＦに切り換わり、逆にパケットエラー率が予め定められた閾値以上になると、装置は特大ＴＳＦから大きいＴＳＦに切り換わる。こうすることはより効率的なデータ伝送と消費電力の低減をもたらすので、電池で電源を供給されるソース装置およびシンク装置における電池の寿命を伸ばす。大きいＴＳＦおよび特大のＴＳＦのサイズはオーディオデータ伝送システムにおけるオーディオ圧縮比のような用途に特有な事項およびパケットエラー統計に基づいて選択される。
【００３３】
図５と６を参照すると、ソース装置とシンク装置がそれらの間に通信リンクを確立して時間モードに入るために初期化ルーチン（ステップ１９０および２００）を実行すると、ソースはデータパケットをシンクへ送信して（ステップ２１０）ＴＳＦ内でシンクからのＡＣＫの受信を待つ（ステップ２２０）。同様に、シンクの各々はソースからのデータパケットの受信を待ち（ステップ２３０）、ＴＳＦ内でそうなれば（判定２４０）ＡＣＫで応答する（ステップ２５０）。
【００３４】
現チャンネルの品質が悪ければ、１つ以上のシンクがデータパケットを受信しないかソースが１つ以上のＡＣＫを受信しない機会が増える。そのような通信または「データパケット伝送」エラーは特定の通信チャンネルの品質を特徴付けるべく追跡される。このようにして測定されたチャンネル品質はチャンネル切換モードに入って異なるチャンネルへ切り換える時期を決定するために各装置により予め定められたチャンネル品質基準とともに用いられる。
【００３５】
したがって、ソース装置は「リーキーバスケットモード」においてカウントする「Ｈｏｐ−ｉｎ−Ｘ」カウンタを維持する。ソースにおいては、シンクから期待されるすべてのＡＣＫが実際に受信されるとき（判定２７０）増加ステップ（「ＩＳ」）だけカウンタが増加される（ステップ２６０）。逆に、シンクから期待されるＡＣＫのいずれかが受信されないとき（判定２７０）、減少ステップ（「ＤＳ」）だけカウンタが減少される（ステップ２８０）。したがって、チャンネル品質が良好なときカウンタ値が増加しチャンネル品質が悪いときカウンタ値は減少する。
【００３６】
同様に、各シンクもまたソースのカウンタの値に追従することを意図して「Ｈｏｐ−ｉｎ−Ｘ」カウンタを維持する。ソースによって送出される各データパケットはそのカウンタの値を含んでおり、ソースからデータパケットを成功裏に受信した（判定２４０）各シンクはソースカウンタに追従するようにそのカウンタを調節する（ステップ２９０）。しかしながら、シンクがＴＳＦ内に期待されるパケットを受信しなければ（判定２４０）、そのカウンタをＤＳだけ減少させる（ステップ３００）。このことは、ソースがシンクからＡＣＫを受信しない（このシンクはパケットを受信しないからＡＣＫを送らない）からソースもまたそのカウンタをＤＳだけ減少させるので、ソースのカウンタに追従させる上で有効である。
【００３７】
データパケットを成功裏に受信したシンクはそれによりＴＳＦの始まりにおいてソースのカウンタの値の指示を有しているが、ソースのカウンタの値はそのシンクとさらに通信することなくＴＳＦの終りまでに変化する可能性がある。例えば、データパケットが最初のシンクにより受信されＡＣＫがソースへ成功裏に戻る一方で、その後のシンクがデータパケットを受信することに失敗するかまたはソースが応答のＡＣＫを受信することに失敗する場合がある。この場合には、ソースのカウンタはＴＳＦの終りまでにＤＳだけ減少するであろうが、最初のシンクはこのことの指示を有していないであろう。いずれにしても、パケットを受信したシンクのカウンタは、ＴＳＦの終りにおいて、ソースのカウンタと一致するか、またはソースのカウンタの−ＩＳまたは＋ＩＳの値を持つかのいずれかである。それ故、シンクのカウンタはソースのカウンタに接近して追従することになる。
【００３８】
ソースとシンクのカウンタの各々はチャンネル切換閾値を表わす最大値および最小値の２つの限界値の間に維持される。以下に記述されるように、これらの限界値は固定または可変であり得る。カウンタが最大値に到達するとその値に維持され（ステップ３１０）（すなわち最大値まで減らされ）、良好な通信が続いていてもさらに増加することはない。カウンタがチャンネル切換閾値に到達すると（ステップ３２０，３３０）、その装置はチャンネル切換モードに入り以下に記述されるように新しいチャンネルに切り換わる（ステップ３５０，３７０）。かくして、カウンタがチャンネル切換閾値に達した後のみにおいて装置は新しいチャンネルに切り換わる。チャンネル切換閾値は与えられた特定のＩＳおよびＤＳの選択に対して任意の適切な値になるように選択されるが、例示的なシステムとチャンネル切換方法においてゼロ（０）であるように選択される。
【００３９】
したがって、図５を参照すると、ソースがシンクからすべての期待されるＡＣＫを受信すると（判定２７０）、そのカウンタはＩＳだけ増加する（ステップ２６０）。ソースは次のデータパケットを続けて送出しそれに従ってパケットシーケンス番号を変える（ステップ３４０）よう構成されることが認識される。しかしながら、ソースがすべての期待されるＡＣＫを受信しなければ（判定２７０）、そのカウンタはＤＳだけ減少し（ステップ２８０）同じパケットが同じパケットシーケンス番号で次の繰り返しにおいて再送される。パケットシーケンス番号はパケットが新しいパケットか再送されたパケットかを識別するに適切な任意の範囲の値であり得るが、例示的なシステムにおいてはパケットシーケンス番号は単一のビットであり０値または１値のいずれかを有する。
【００４０】
ソースのカウンタがチャンネル切換閾値まで減少していないとき（判定３２０）、カウンタ値がその最大値を超えていればカウンタの値をその最大値まで減らし（ステップ３１０）、次のデータパケットの送出（ステップ２１０）に進む。しかしながら、カウンタがチャンネル切換閾値に達していれば（判定３２０）、ソースはチャンネル切換モードに入り以下にさらに記述するようなチャンネル切換（ステップ３５０）を実行する。
【００４１】
同様に図６を参照すると、各シンクに関して、ＴＳＦにおいて期待されるデータパケットをシンクが受信すると（判定２４０）、（その値がデータパケットに含まれている）ソースカウンタに追従するためにそのカウンタの値を調節し（ステップ２９０）ＡＣＫをソースへ送信する（ステップ２５０）。シンクがこの特定のパケット（以下にさらに議論する）をそれまでに受信していなければパケットからペイロードを取り出す（ステップ３６０）。シンクがＴＳＦ内で期待されるようにデータパケットを受信しなければ（判定２４０）、そのカウンタをＤＳだけ減らし（ステップ３００）ＡＣＫは送らない。シンクのカウンタが（減少することにより）チャンネル切換閾値に達すると（判定３３０）、チャンネル切換モードに入り以下に記述するようにチャンネルを切り換える（ステップ３７０）。
【００４２】
少なくとも２つのシンクが存在するとき、シンクへデータパケットを送る２つの連続する試みに関して、シンクの１つは最初の試みにおいてパケットを受信せず２番目において受信する一方で、他のシンクは双方の試みにおいて受信する。このような場合において、２番目のシンクは同一のデータパケットを２度受信することになる。したがって、シンクは受信したデータパケットが以前に既に受信済みのものであるかについてもチェックし、そうでないときにのみシンクはデータパケットを取り出す（すなわちその中身をとっておく）（ステップ３６０）。
【００４３】
カウンタの増加および減少ステップＩＳおよびＤＳの値の選択はシステム内の装置がチャンネル切換モードへ入ることに影響を及ぼし、それ故にシステムのチャンネル切換の挙動に影響を及ぼす。特定的には、これらの値は、伝送が予め定められたパケットエラー率（「ＰＥＲ」）以下になったらシステムが新しいチャンネルに切り換わるように選択される。各装置のＨｏｐ−ｉｎ−Ｘカウンタの値はしたがってシステムの現在のＰＥＲに追従すると考えられる。例えば、ＩＳ＝ＤＳ＝１であれば、［１０１０１０１０］（ここで「１」は成功したパケット伝送を示し、「０」は成功しなかったパケット伝送を示す）といった誤りパターンがばく然と観察される。したがってそのようなシステムは５０％のＰＥＲをサポートする（すなわち、ＰＥＲが５０％以上に増加するとチャンネル切換が発生する）ということができる。ＩＳがＤＳよりも小さく選択されればより低いＰＥＲがサポートされる。表１はＤＳが１と選択されたときＩＳの様々な値に対してサポートされるＰＥＲを表わす。
【００４４】
【表１】
0005462243.tif 000002
【００４５】
したがってソースおよびシンクにおいて限られた数のカウンタが現チャンネルの品質測定値を表わすかまたはそれに追従するために採用され、以下に記述されるように、ソースとすべてのシンクは現チャンネルの品質が許容できないものになった（例えばチャンネル切換閾値に到達した）とき同期しているが独立した態様でチャンネル切換モードに入って新しいチャンネルに切り換わる。
【００４６】
ソースまたはシンクの１つのカウンタがチャンネル切換閾値まで減少すると、より良い品質であることが期待される新しいチャンネルに切り換わるためにチャンネル切換モードに入る。
【００４７】
前述したように、システムは予め定められ制限された１組のチャンネルの１つにおいて通信する。チャンネル切換方法において、ソース装置とシンク装置の各々はチャンネルの予め定められたシーケンスまたはパターンに従ってチャンネルを切り換えるよう構成されている。そのシーケンスにおいて、現チャンネルと新しいチャンネルの間の相関を避けるためにチャンネルが配置されている。２つのチャンネルに相関がないとき、新しいチャンネルが古いチャンネルよりも良好である確率が高い（すなわち、古いチャンネルにおける品質低下の原因が新しいチャンネルにも存在することがない）。したがって、チャンネル切換シーケンスはチャンネルの予め定められた１組の或るマッピングである。
【００４８】
チャンネル切換方法およびシーケンスはインデックスベースまたはクロックベースであり得るがそれらの各々がさらに記述される。
【００４９】
インデックスベースのチャンネル切換
図７を参照すると、ソースまたはシンクの１つがインデックスベースのチャンネル切換を採用するチャンネル切換モードに入るときは（ステップ３８０）常に装置は新しいチャンネルに切り換わり（ステップ３９０）チャンネル切換モードを抜けて次のＴＳＦにおけるデータモードに再度入る（ステップ４００）。新しいチャンネルは、各チャンネルが１つのインデックスにランダムにマッピングされた予め定められた１組のチャンネルの予め定められたシーケンスにおける次のチャンネルである。したがって、各インデックス位置はチャンネルの対応する１つにユニークにマッピングされている。チャンネルが切り換わるときは常に、新しいチャンネルは単に、チャンネル切換イベントとチャンネル切換イベントの間で経過する時間（すなわちＴＳＦの数）に無関係に次のインデックス位置に対応するチャンネルである。８チャンネルの組に対するこの方法論に従う例示的なチャンネル切換シーケンスが表２に示されている。
【００５０】
【表２】
0005462243.tif 000003
【００５１】
この例において、装置は最初にチャンネル４にマッピングされたインデックス０にある、すなわち、装置は最初に４番目のチャンネルにおいて通信している。装置が次のチャンネルに切り換わるとき（ステップ３９０）、インデックスが単に１だけ増加しそのインデックスにマッピングされたチャンネルすなわち７に切り換わる。一般に、このシステムおよび方法においてチャンネル切換とチャンネル切換の間の時間は固定されておらず、任意の２つの切換の間に任意の数のＴＳＦをとり得る。しかしながら、インデックスベースの切換では、切り換わる次のチャンネルは常に、切換間の時間の長さ（すなわちＴＳＦの数）によらずインデックスにおいて次のチャンネルである。
【００５２】
ソースとシンクの間の無線リンクの品質は予測できないから、ソースとシンクの間のパケットエラーパターンも同様に予測できない。その結果、ここまでに記述したチャンネル切換方法において、ソースとシンクの各々が同一のＴＳＦ内で新しいチャンネルに切り換わるかまたは異なるＴＳＦにおいて切り換わるかもしれない。しかしながら、増加ステップＩＳが減少ステップＤＳより小さいか等しく選択されれば、最悪のケースでもソースと任意のシンクの間の切り換え時間の拡がりは１つのＴＳＦ以上にはならない。したがって、ソースは常に任意のシンクと比べて同一のＴＳＦ内で、或いは最大でもＴＳＦ１つ分早いか遅く新しいチャンネルに切り換わる。さらにＩＳとＤＳの値はシンクの各々の間の切り換え時間の拡がりがＴＳＦ２個分を決して超えないように選択することができる。
【００５３】
さらに、この例示的なシステムにおけるインデックスベースのチャンネル切換方法は、各シンクがソースのカウンタの値を含むデータパケットを受信するときにシンクのカウンタがソースのカウンタに等しく設定されるとき、最も迅速に相互に容認可能なチャンネルを解決することが認められる。
【００５４】
ソースまたはシンクが新しいチャンネルへ切り換わるとき新しいチャンネルが容認可能な品質であることは保証されていない。無線リンクの全体のデータスループットを最大化するため、相互に容認可能なチャンネルを見い出すためにチャンネル切換において必要な時間を最小化することが望まれる。前述したように、ソースと任意のシンクの間でのチャンネル切換時間の拡がりは最大でもＴＳＦ１個分である。したがって、ソースとシンクの各々が少なくとも２つのＴＳＦの期間に新しいチャンネルにとどまる限り、ソースとすべてのシンクは同時に同一のチャンネルに存在することになり通信する機会があることになる。
【００５５】
かくして、図５と６を参照すると、ソースまたはシンクが新しいチャンネルに切り換わりデータモードに再度入ると、そのカウンタはカウンタに割り当てられる初期値ＨｉＸ＿Ｌよりも一般に小さい予め定められた切り換え後の値ＨｉＸ＿Ｓに設定される（それぞれステップ３５５および３７５）。ＤＳの値が１である場合に装置が少なくとも２つのＴＳＦの期間新しいチャンネルにとどまるためにはカウンタはＨｉＸ＿Ｓ＝２の値に割り当てられる。したがって２つのＴＳＦの期間で通信が成功しないと（すなわち、値がＤＳ＝１だけ２回減少してチャンネル切換閾値が０であると）装置はシーケンスにおける次のチャンネルへ切り換わる。通信が成功すると、前述したようにカウンタはＩＳだけ増加する。このようにして、品質の悪いチャンネルにおいて費やされる時間は最小化されソースとすべてのシンクは容認可能な品質のチャンネルへ速やかに切り換わる。
【００５６】
前述したように、ソースのカウンタの初期値、チャンネル切換モードを出るときのカウンタの値、またはカウンタの最大値は一般に、チャンネル品質の推定値を含む任意の適切なベースに基づいて選択されるかまたはシステムの特定の実装形態の実験的なテストにより選択され、かつ、ここに記述されるチャンネル切換に従って選択される。
【００５７】
これらの値はシンクに存在するバッファの任意のレイテンシのデータを含むシステムの特定の適用分野のレイテンシの要件も考慮して決定される。例えば、ソースからシンクへオーディオデータが伝送されるシステムはオーディオとビデオのデータの双方が伝送されるシステムよりもレイテンシの要件は一般に小さい。
【００５８】
ＨｉＸ＿Ｌ＝６，ＨｉＸ＿Ｓ＝２，ＩＳ＝ＤＳ＝１およびチャンネル切換閾値＝０において、３つのケースにおけるシステムのインデックスベースのチャンネル切換挙動が図８−１０に示される表に表わされている。図８は通信エラーが発生するが装置が同一のチャンネルにおいて回復しとどまるケースを示している。図９はソースとシンクが同じＴＳＦ内でチャンネルを切り換えるケースを示す。図１０は１つのシンクがソースよりもＴＳＦ１つ分早く切り換わり２つのシンクがソースよりもＴＳＦ１つ分後に切り換わるケースを示す。各チャートにおいてチェックマークはチャートに示されるようなソースからシンクへのパケットまたはシンクからソースへのＡＣＫの伝送が成功したことを表わし、逆に×印はそのような伝送が失敗したことを示す。
【００５９】
例示的なシステムおよび方法におけるソース装置とシンク装置の動作がさらに付記Ａにおいて提供される疑似コードにおいて示されている。疑似コードは請求項によってのみ定められる本発明の範囲を限定するためにここに提供されるものではなくシステムとチャンネル切換方法の１つの例示的な実施形態を示すために提供されていることが理解されるべきである。
【００６０】
チャンネル切換モードにおいて採用されるチャンネル切換方法は前述のインデックスベースのものかまたは以下に記述されるクロックベースのものであり得る。
【００６１】
クロックベースのチャンネル切換
前述したように、ソースとシンクは非同期で始まり初期化ルーチンを実行してそれらの間に１組のチャンネルの中の最初のチャンネルにおいてリンクを確立する。ソースは時間モードで始まり初期データパケットがソースにより送信されシンクが受信する形でシンクの各々を順次登録する。ソースがクロックベースのチャンネル切換を採用するとき、装置の各々は予め定められた固定測定値（例えば前述の小さいＴＳＦ）および予め定められた期間（例えば１６個の小さいＴＳＦ）において時間を繰り返し測るクロックを維持する。ソースにより各シンクへ送出される初期パケットは各シンクが自己のクロックをソースのクロックに同期させることを可能にするソースのクロックの値を含んでいる。システム内のすべての装置について同期したクロックは「グローバルクロック」を構成し、これは以後クロックベースのチャンネル切換において用いられ、以下にさらに記述される。
【００６２】
クロックベースのチャンネル切換を採用するシステムは実行される特定の機能および動作の条件に依存して単一サイズのＴＳＦまたは複数サイズのＴＳＦを用いる。以下に記述される例示的なシステムにおいて、少なくとも大きいＴＳＦと小さいＴＳＦが用いられる。チャンネル切換の間小さいＴＳＦを採用すればシステムと方法が容認可能なチャンネルをより迅速に探すことでデータ伝送のレイテンシを下げることを可能にする。理想的には、小さいＴＳＦはチャンネル切換時間とデータ伝送レイテンシを最小化するように可能な限り小さいが、方法を実行するシステム内の特定の装置により、通常、制限される。大きいＴＳＦは、通常、データモードにおいて用いられ、前述したように、システムはチャンネル品質が非常に良好であると考えられるとき特大のＴＳＦも採用することができる。ソースまたはシンクのいずれかがチャンネル切換モードに入るとき、小さいＴＳＦを採用する。装置がチャンネル切換を完了すると、データモードに再度入り大きいＴＳＦの使用を再開する。
【００６３】
前述したインデックスベースのチャンネル切換と対照的に、クロックベースのチャンネル切換方法を採用するシステムは、データパケットの受信が成功したときに各シンクのカウンタがソースのカウンタの値から減少ステップＤＳを引いた値に設定されるとき最も迅速に容認可能な新しいチャンネルを解決することが認められる。
【００６４】
前述したように、ソースまたはシンクの１つのＨｏｐ−ｉｎ−Ｘカウンタが最小閾値（例えば０）に達すると、装置はチャンネル切換モードに入り小さいＴＳＦに切り換わる。そして以下に記述されるクロックベースのチャンネル切換方法に従ってチャンネルを切り換える。クロックベースのチャンネル切換を採用するチャンネル切換モードにおけるソースとシンクの動作はそれぞれ図１１と図１２に示される有限状態マシン４１０，４１２によってそれぞれ表わされ、以下に記述される。
【００６５】
クロックベースのチャンネル切換において、ソースとシンクの各々は予め定められた時間分解能（例えば小さいＴＳＦ）でカウントする同期クロック（「グローバルクロック」）を持っている。チャンネル切換シーケンスはグローバルクロック時間にマッピングされているので、チャンネル切換の間、装置は最初にグローバルクロック時刻（すなわち値）を決定しその時刻にインデックスされたチャンネルを選択する。かくして、各クロックのカウントは１組のチャンネル内のチャンネルの１つにそれぞれマッピングされる。８チャンネルに対するこの方法論に従う例示的なチャンネル切換シーケンスが表３に示されている。
【００６６】
【表３】
0005462243.tif 000004
【００６７】
この例において、１組の中に８チャンネルがあり２つの連続するクロックカウント（すなわち時間）が各チャンネルにマッピングされている（すなわち１６クロックカウントが８チャンネルにマッピングされている）。クロックは各１６カウントを繰り返す。このケースにおいて装置がチャンネルを変更するとき最初に現在のクロック時刻を決定し次にそれに対応してマッピングされたチャンネルを決定する。インデックスベースの切換の例におけるように、チャンネル切換イベントの間で任意の数のＴＳＦが経過し得る。しかしながら、クロックベースのチャンネル切換の場合には、新しいチャンネルは切換の時刻におけるクロック時刻に依存し次のチャンネルが予め定められたマッピング順序に従う必要はない。
【００６８】
チャンネル切換モードにおける各チャンネル切換の後、ソースとシンクは通信を試みチャンネルが良好であると考えられれば（例えば、ソースとすべてのシンクの間での往復の交換が成功すれば）各装置はチャンネル切換モードを出てデータモードに再度入り前述したような通常のデータ通信を再開する。しかしながら、チャンネルが良好でないと考えられれば、装置は最初に良好なチャンネルが見つかるまで再度チャンネルを切り換える。クロックベースのチャンネル切換において、チャンネルの選択はグローバルクロックにより支配される。
【００６９】
チャンネル切換モードに入ると、ソースとシンクは新しいチャンネルにおいて通信を回復するためにハンドシェークルーチンを実行する。前述したように、クロックカウントの連続するペアの各々が単一のチャンネルにマッピングされているから、各装置はハンドシェークルーチンを開始する前にクロック時刻が偶数になるまで待つ。
【００７０】
かくして、ソースがチャンネル切換モード（状態４３０）に入るとクロックカウントが奇数であればソースの最初のステップは前述したようにグローバルクロックによって決まるチャンネルに切り換えること（遷移４４０）であり１クロックカウントだけ待つ（状態４５０）。次にソースはグローバルクロックにより決まるチャンネルに再び切り換えシンクへ「ｓｔａｒｔ  ｓｙｎｃ」（「ＳＳ」）パケットを送って（遷移４６０）ハンドシェークルーチンを開始する。ソースがチャンネル切換モードへ入るときにクロックカウントが偶数であれば、ソースはグローバルクロックで決まるチャンネルに切り換え、シンクへ「ｓｔａｒｔ  ｓｙｎｃ」（「ＳＳ」）パケットを送って（遷移４７０）待つことなくハンドシェークルーチンを開始する。
【００７１】
同様に、シンクがチャンネル切換モードに入ると（状態４８０）、クロックカウントが奇数であれば、シンクはグローバルクロックに従うチャンネルに変更し（遷移４９０）、１クロックカウント待って（状態５００）、ハンドシェークルーチンを開始する前にチャンネルを再度変更する（遷移５１０）。クロックカウントが偶数であれば、シンクは待つことなくチャンネルを一度だけ変更する（遷移５２０）。
【００７２】
図１１および１２に表わされたハンドシェークプロトコルにおいて、次の交換が試みられる。ソースはすべてのシンクへｓｔａｒｔ  ｓｙｎｃ（「ＳＳ」）パケットを送る（初期のケースでは遷移４６０または４７０で状態５３０へ）。すべてのシンクはＴＳＦ内でＳＳパケットを受信することが期待され（状態５４０）、ＳＳパケットを受信したものはＡＣＫで答える（遷移５５０）。ソースがすべてのシンクからＡＣＫを受信するとソースはそのチャンネルを良好であると考え以下に記述するように次の機会にチャンネル切換モードを出ることを表明する；ソースはｅｎｄ  ｓｙｎｃ（「ＥＳ」）パケットをすべてのシンクへ送り（状態５７０への遷移５６０）、次の機会にチャンネル切換モードを出ることをシンクへ伝える。この例示的な実施形態において、データモードでは大きいＴＳＦが使用される一方でチャンネル切換モードでは小さいＴＳＦが使用される。ＥＳを送信した後（状態５７０）、ソースはチャンネル切換モードを出る（状態５９０への遷移５８０）。
【００７３】
すべてのシンクがＥＳパケットを受信したかどうかに関係なくソースはチャンネル切換モードを出るのでシンクはＥＳパケットに応答してＡＣＫを送らない。期待されているＳＳパケットをシンクが受信しないとき（遷移５８０）、またはソースがすべての期待されるＡＣＫを受信しないとき（遷移５９０）、その装置はウェイトし（それぞれ状態５００，４５０）再び試行する。シンクがＳＳパケットを受信するとそのシンクはその後、以下にさらに記述するように、このＴＳＦまたは次のＴＳＦにおいてＥＳパケットを受信することを期待する（状態６４０）。そうならなければ、そのシンクは前述したハンドシェークルーチンを再度開始する（遷移６５０）。ＥＳパケットが受信されれば次の機会にチャンネル切換モードを出る（状態６６０への遷移６５０）。
【００７４】
チャンネル切換モードへのおよびそれからの遷移およびハンドシェークによる交換はさらに図１３Ａ，１３Ｂ，１４および１５に表わされている。図１３Ａおよび１３Ｂに示されるように、ハンドシェークによる交換は図１３Ａに示されるように２つの小さなＴＳＦにおいて、または図１３Ｂに示されるように１つの小さなＴＳＦにおいて行い得る。
【００７５】
ソースまたはいずれかのシンクがチャンネル切換モードに入ると、そのチャンネルが良好であるとソースが決定するまでその装置はチャンネル切換モードにとどまる。ソースとすべてのシンクの間の往復の交換が成功すればチャンネルは良好であると考えられる。ソースとｅｎｄ  ｓｙｎｃ（ＥＳ）パケットを受信した任意のシンクはチャンネル切換モードを出て次の大きいＴＳＦ境界においてデータモードに入る。
【００７６】
データパケットエラーは本質的に予測できないものであるから、ソースとシンクが異なるＴＳＦでチャンネル切換モードに入る機会が常に残る。しかしながら、前述したように、そして図１４に示されるように、クロックベースのチャンネル切換モードは任意の与えられた時刻にチャンネル切換モードにあるすべての装置は同じチャンネルにいることをもたらす。
【００７７】
ソースがチャンネル切換モードを出るがシンクの１つはパケットエラーの結果としてＥＳパケットを受信しない場合、そのシンクはチャンネル切換モードを出ない。しかしながら、図１５に示されるように、チャンネル切換モードを出たソースとシンクはすぐに再度チャンネル切換モードに入り良好なチャンネルが見つかるまでクロックベースのチャンネル切換方法に従って再びチャンネルを切り換えるであろう。そのような出口の失敗からの最終的な回復は、前述したようなエラーのないハンドシェークによる交換をサポートする少なくとも１つのチャンネルが残っている限り保証される。
【００７８】
チャンネル切換モードから出ると、ソースとシンクのＨｏｐ−ｉｎ−Ｘカウンタは出口の失敗の影響を最小化する目的で小さい値に設定される。インデックスベースのチャンネル切換方法との関連で述べたように、そのような値はＩＳとＤＳの値に依存する。ＩＳ＝ＤＳ＝１であるとき、その方法でサポートされる値は２でありそれによって前回のチャンネル切換に続いて２回連続して通信が失敗すれば装置はチャンネル切換モードに再度入ることになる。その値はテストされていない新しいチャンネルにおける減少した信頼性をも示している。
【００７９】
この例示的なシステムと方法におけるソース装置とシンク装置の動作は付記Ｂにおいて提供される疑似コードにさらに示されている。疑似コードは請求項のみによって決定される発明の範囲を限定するために提供されるものではなく、システムとチャンネル切換方法の例示的な実施形態を示すために提供されている。
【００８０】
本発明の様々な例示的な実施形態が開示されているが、本発明の範囲から逸脱することなく本発明の利益のいくつかを達成する様々な変更および修正をなし得ることは当業者に明らかである。
【００８１】
本発明の実施形態は任意の通常のコンピュータプログラミング言語において実現される。例えば、好適な実施形態は手続的プログラミング言語（例えば「Ｃ」）またはオブジェクト指向言語（例えば「Ｃ＋＋」）において実現される。本発明の代替的な実施形態は予めプログラムされたハードウェア要素、他の関連コンポーネント、またはハードウェアとソフトウェアコンポーネントの組み合わせとして実現される。
【００８２】
実施形態はコンピュータシステムと共に使用するためのコンピュータプログラム製品として実現され得る。そのような実現形態は、コンピュータ読み取り可能な媒体（例えばディスケット、ＣＤ−ＲＯＭ，ＲＯＭまたは固定ディスク）のような触知可能な媒体上に固定されたか、または媒体を介するネットワークに接続されたモデム、または通信アダプタのような他のインターフェース装置を介してコンピュータシステムへ転送可能な、一連のコンピュータ命令を含む。その媒体は触知可能な媒体（例えば光または電気通信ライン）または無線技術（例えば、マイクロ波、赤外または他の伝送技術）で実現された媒体であり得る。一連のコンピュータ命令は以前に記述された機能のすべてまたは一部を実現する。当業者であればそのようなコンピュータ命令は多くのコンピュータアーキテクチャまたはオペレーティングシステムと共に使用される多数のプログラミング言語において書かれ得ることを認識する。さらに、そのような命令は半導体、磁気、光学または他のメモリ装置のような任意のメモリ装置に記憶され、光学、赤外、マイクロ波または他の伝送技術のような任意の通常技術を使用して伝送され得る。印刷文書または電子文書を伴うリムーバブルな媒体として配布され（例えばパッケージソフトウェア）、コンピュータにプレインストールされ（例えばシステムＲＯＭ上にまた固定ディスク上に）、またはネットワーク（例えばインターネットまたはワールドワイドウェブ）を介してサーバから配布され得る。もちろん、本発明のいくつかの実施形態はソフトウェア（例えばコンピュータプログラム製品）とハードウェアの双方の組み合わせとして実現され得る。本発明のさらに他の実施形態は、全体がハードウェアとして、または全体がソフトウェア（例えばコンピュータプログラム製品）として実現され得る。
【００８３】
これまでに記載されている項目見出しは記述された発明の範囲を限定するものでなく単に明確化のために記載を系統立てることを意図している。
【００８４】
前述した例示的実施形態が開示されたが、他の適用分野のニードと目的を適切に満足させつつ本発明の利益を達成するために様々な変更と修正をなし得ることは当業者に明らかであり、そのような変更と修正は後述する特許請求の範囲によって定められる発明の範囲に収まることを意図している。
【００８５】
付記Ａ−インデックスベースのチャンネル切換疑似コード
ソースの動作の疑似コード
インデックスベースのＨｏｐ−ｉｎ−Ｘチャンネル切換方法に対する例示的なソースの動作の疑似コードが以下に提供される。
【００８６】
Ｈｏｐ−ｉｎ−Ｘカウンタは例えばＨｏｐ−ｉｎ−Ｘ  ｌｏｎｇ（ＨｉＸ＿Ｌ）とＨｏｐ−ｉｎ−Ｘ  ｓｈｏｒｔ（ＨｉＸ＿Ｓ）という２つの異なる初期レベルを持つ。ソースとシンクの間の同期を維持するために、カウンタ値ＨｉＸ＿Ｓは好ましくは＞＝２である。ＨｉＸ＿Ｓカウンタのサイズは、それが、システムが新しいチャンネルにとどまるＴＳＦの最小数を表わすからチャンネル切換方法の速度を決定する。したがって、システムの操作性を維持している間はＨｉＸ＿Ｓの値を最小にすることが望ましい。
【００８７】
疑似コードにより表わされたこの例示的な実施形態において、装置（すなわちソースまたはシンク）は品質の悪いチャンネルに最大でもＴＳＦ２個分とどまる。それにより動作のレイテンシに対する要求が最適化される。
【００８８】
以下の疑似コードに表わされた方法はソースの切換カウンタ（ＣｎｔＳｒｃ）を最大値ＨｉＸ＿Ｌに設定して始まる。ソースの切換カウンタ（ＣｎｔＳｒｃ）は、ソースが新しいチャンネルに切り換わるときはいつもＨｉＸ＿Ｓ＝２に設定される。
【００８９】
【表４】
0005462243.tif 000005
【００９０】
シンクの動作の疑似コード
【表５】
0005462243.tif 000006
【００９１】
付記Ｂ−クロックベースのチャンネル切換疑似コード
ソースの動作の疑似コード
【表６】
0005462243.tif 000007
【００９２】
【表７】
0005462243.tif 000008
【００９３】
【表８】
0005462243.tif 000009
【００９４】
シンクの動作の疑似コード
【表９】
0005462243.tif 000010
【００９５】
【表１０】
0005462243.tif 000011
【００９６】
【表１１】
0005462243.tif 000012
【図１】
0005462243.tif 000013
【図２Ａ】
0005462243.tif 000014
【図２Ｂ】
0005462243.tif 000015
【図３】
0005462243.tif 000016
【図４】
0005462243.tif 000017
【図５】
0005462243.tif 000018
【図６】
0005462243.tif 000019
【図７】
0005462243.tif 000020
【図８】
0005462243.tif 000021
【図９】
0005462243.tif 000022
【図１０】
0005462243.tif 000023
【図１１】
0005462243.tif 000024
【図１２】
0005462243.tif 000025
【図１３Ａ】
0005462243.tif 000026
【図１３Ｂ】
0005462243.tif 000027
【図１４】
0005462243.tif 000028
【図１５】
0005462243.tif 000029