(57)【要約】周波数ホッピングスペクトラム拡散（ＦＨＳＳ）ネットワークシステムにおいて周波数ホッピングシーケンスを生成および使用する方法であって、デバイスのホッピングシーケンスを別のデバイスへ伝達するために追加的なネットワークオーバヘッドが必要とされない方法が開示される。さらにその上、ネットワークデバイス上のランダムアクセスメモリ（ＲＡＭ）の要求を増加させることなく特定のホッピングシーケンス数を最大化する方法が開示される。
2011509020.tif 000002
【特許請求の範囲】
【請求項１】
周波数ホッピングスペクトラム拡散（ＦＨＳＳ）ネットワークにおけるノードに対して特定のホッピングシーケンスを生成する方法であって、
ホッピングシーケンスチャネル総数を選択する工程と、
前記ホッピングシーケンスチャネル総数を有する前記ネットワークに対してチャネルテーブルを創出する工程と、
ノード識別子に基づいてシーケンススタートおよびシーケンスシードを、所定ノードのために生成する工程と、
前記所定ノードに対する前記シーケンススタートおよび前記シーケンスシードに基づいてチャネルインデックスを前記チャネルテーブルに生成することによって、且つ、前記チャネルインデックスに対応する前記チャネルテーブルから前記チャネルを取得することによって、前記所定ノードの前記ホッピングシーケンスでチャネルを識別するために、スロット−チャネル変換を実行する工程と、
を備えることを特徴とする方法。
【請求項２】
前記チャネル総数が、前記ネットワークに対するチャネル総数に最も近いがそれを超過しない素数であることを特徴とする請求項１に記載の方法。
【請求項３】
前記チャネルテーブルを創出する前記工程は、
その関連付けられたホッピングシーケンスがホップごとに平均して最大チャネル分離を有するように前記チャネルテーブルを創出する工程を備えることを特徴とする請求項１に記載の方法。
【請求項４】
前記チャネルテーブルは、ノードのメモリに組み込まれていることを特徴とする請求項１に記載の方法。
【請求項５】
前記ノード識別子は、特定のノード識別子を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記特定のノード識別子は、前記所定ノードのメディアアクセス制御（ＭＡＣ）アドレスを含むことを特徴とする請求項５に記載の方法。
【請求項７】
周波数ホッピングシーケンススペクトラム拡散（ＦＨＳＳ）ネットワークにおけるノードのホッピングシーケンスでチャネルを決定する方法であって、
前記ネットワークに対してエポックごとのスロット数に基づいて所定の送信時間の間に前記ホッピングシーケンスで前記ノードの現スロットを決定する工程と、前記エポックごとのスロット数は素数を備え且つ前記エポックにおける各スロットは関連付けられたチャネル周波数を有し、
チャネルインデックスをネットワークチャネルテーブルに生成するために前記ノードの識別子を使用することによって、前記現スロットをそれと関連付けられたチャネル周波数へ変換する工程と、
前記所定の送信時間に前記関連付けられたチャネル周波数で前記ノードへパケットを送信する工程と、
を備えることを特徴とする方法。
【請求項８】
前記現スロットを決定する前記工程は、
前記ノードがそのホッピングシーケンスでどこに存在するかを確立するエポックティックを前記ノードから受信する工程を備えることを特徴とする請求項７に記載の方法。
【請求項９】
前記現スロットを決定する前記工程は、
前記エポックティックに基づいてエポック開始時間、および前記エポックティックが送信されたフレームの受信時間を計算する工程と、
前記所定の送信時間、前記計算されたエポック開始時間、およびエポック長に基づいて前記エポックでの現ティックを計算する工程と、前記ノードは、スロット長に対してそのホッピングシーケンスで前記関連付けられた周波数チャネルのそれぞれに滞在し、且つ前記エポック長は、前記スロット長とエポックごとの前記スロット数との積に等しく、
前記エポックでの前記計算された現ティックと、エポックごとの前記スロット数とに基づいて前記現スロットを決定する工程と、
を備えることを特徴とする請求項８に記載の方法。
【請求項１０】
前記エポックティックは、前記エポックティックを前記エポック長の一部として表す、フラクショナルエポックティック（ＦＥＴ）を備えることを特徴とする請求項９に記載の方法。
【請求項１１】
前記現スロット数を決定する工程は、
前記エポックでの前記計算された現ティックに基づいておよび前記スロット長に基づいて、前記現スロットでの現ティックを計算する工程を備えることを特徴とする請求項９に記載の方法。
【請求項１２】
前記スロットでの前記計算された現ティックに基づいて、前記ノードが、前記送信パケットの受信を察知するために、前記現スロットで十分な前記送信パケットを受信するかどうかを決定する工程をさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記ノードが、前記送信パケットの受信を察知するために、前記現スロットで十分な前記送信パケットを受信しないであろうと決定された時に、前記ノードのホッピングシーケンスで次のスロットが前記現スロットとして選択されることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記現スロットを変換する工程は、
前記ノードの識別子に基づいて前記ノードに対するホッピングシーケンススタートおよびホッピングシーケンスシードを決定する工程と、
前記ホッピングシーケンススタートおよび前記ホッピングシーケンスシードに基づいて前記チャネルインデックスを生成する工程と、
を備えることを特徴とする請求項７に記載の方法。
【請求項１５】
前記ノード識別子はメディアアクセス制御（ＭＡＣ）アドレスを含むことを特徴とする請求項１４に記載の方法。
【請求項１６】
前記ネットワークにおけるノードがそれぞれのタイミング情報を周辺ノードと交換する、または、前記ノードが周期的にそのタイミング情報を送信する、発見期間の間に、前記エポックティックが、前記エポックティックに対する要求に応じて受信されることを特徴とする請求項８に記載の方法。
【請求項１７】
前記ネットワークにおける各ノードは、前記ネットワークにおける他のノードに対して疑似ランダムな方法で、それぞれのホッピングシーケンスで、前記関連付けられた周波数チャネルを横断することを特徴とする請求項７に記載の方法。
【請求項１８】
前記ノードは、前記送信パケットを受信する時に、そのホッピングシーケンスで前記関連付けられた周波数チャネルを横断することを中止することを特徴とする請求項１７に記載の方法。
【請求項１９】
前記ノードが前記送信パケットを受信する時にそのホッピングシーケンスで前記関連付けられた周波数チャネルを横断することを中止していないなら、前記ノードは、前記送信パケットの受信の後に、前記ノードが横断していたであろう前記関連付けられた周波数チャネルを、そのホッピングシーケンスで横断することを再開することを特徴とする請求項１８に記載の方法。
【請求項２０】
周波数ホッピングスペクトラム拡散（ＦＨＳＳ）ネットワークシステムであって、
ホッピングシーケンスを有する第１のノードと、
前記第１のノードへ送信するためのパケットを有する第２のノードと、を備え、
前記第２のノードは、前記第１のノードの識別子に基づいてシーケンススタートおよびシーケンスシードを生成し、前記第１のノードの前記ホッピングシーケンスでチャネルを識別するためにスロット−チャネル変換を実行し、および前記識別されたチャネルで前記第１のノードへ前記パケットを送信することを特徴とするネットワークシステム。
【請求項２１】
前記第１のノードおよび前記第２のノードはそれぞれ、ホッピングシーケンスの総数を有するネットワークチャネルテーブルをメモリに組み込んでいることを特徴とする請求項２０に記載のネットワークシステム。
【請求項２２】
ホッピングシーケンスチャネルの前記総数が、前記ネットワークに対するチャネル総数に最も近いがそれを超過しない素数であることを特徴とする請求項２１に記載のネットワークシステム。
【請求項２３】
前記スロット−チャネル変換を実行する時に、前記第２のノードは前記第１のノードに対する前記シーケンススタートおよび前記シーケンスシードに基づいてチャネルインデックスを前記チャネルテーブルに生成し、前記生成されたチャネルインデックスと対応する前記チャネルテーブルから前記識別されたチャネルを取得することを特徴とする請求項２１に記載のネットワークシステム。
【請求項２４】
前記チャネルテーブルと関連付けられた前記ホッピングシーケンスは、平均してホップごとに最大チャネル分離を有することを特徴とする請求項２１に記載のネットワークシステム。
【請求項２５】
前記第１のノードの前記識別子は、特定のノード識別子を含むことを特徴とする請求項２１に記載のネットワークシステム。
【請求項２６】
前記第１のノードの前記特定の識別子は、前記第１のノードのメディアアクセス制御（ＭＡＣ）を含むことを特徴とする請求項２５に記載のネットワークシステム。
【請求項２７】
周波数ホッピングスペクトラム拡散（ＦＨＳＳ）ネットワークシステムであって、
エポックごとに多数のスロットを伴うホッピングシーケンスを有する第１のノードと、エポックごとの前記多数のスロットは素数を備え且つ前記エポックでの各スロットは関連付けられたチャネル周波数を有し、
所定の送信時間に前記第１のノードへ送信するためのパケットを有する第２のノードと、前記第２のノードは、エポックごとの前記スロット数に基づいて前記所定の送信時間の間に前記ホッピングシーケンスで前記第１のノードの現スロットを決定し、チャネルインデックスをネットワークチャネルテーブルに生成するために前記第１のノードの識別子を使用することによって前記現スロットをそれと関連付けられたチャネル周波数へ変換し、および前記所定の送信時間に前記関連付けられたチャネル周波数で前記パケットを前記第１のノードへ送信することを特徴とするネットワークシステム。
【請求項２８】
前記第１のノードは、前記第１のノードがそのホッピングシーケンスでどこに存在するかを確立するエポックティックを前記第２のノードへ送信することを特徴とする請求項２７に記載のネットワークシステム。
【請求項２９】
前記第２のノードは、前記エポックティックに基づいてエポック開始時間、および、前記エポックティックが送信されたフレームの受信時間を計算し、前記所定の送信時間、前記計算されたエポック開始時間、およびエポック長に基づいて前記エポックでの現ティックを計算し、且つ前記計算された前記エポックでの現ティックおよびエポックごとの前記スロット数に基づいて前記現スロットを決定し、
前記第１のノードは、そのホッピングシーケンスでスロット長に対して前記関連付けられた周波数チャネルのそれぞれに滞在し、且つ前記エポック長は、前記スロット長とエポックごとの前記スロット数との積を備えることを特徴とする請求項２８に記載のネットワークシステム。
【請求項３０】
前記エポックティックは、前記エポックティックを前記エポック長の一部として表すフラクショナルエポックティック（ＦＥＴ）を含むことを特徴とする請求項２９に記載のネットワークシステム。
【請求項３１】
前記第２のノードは、前記エポックでの前記計算された現ティックおよび前記スロット長に基づいて前記現スロットでの現ティックを計算することを特徴とする請求項２９に記載のネットワークシステム。
【請求項３２】
前記第２のノードは、前記現スロットでの前記計算された現ティックに基づいて、前記送信されたパケットの受信を察知するために、前記第１のノードが前記現スロットでの前記送信パケットを受信するかどうかを決定することを特徴とする請求項３１に記載のネットワークシステム。
【請求項３３】
前記第２のノードが、前記送信されたパケットの受信を察知するために前記第１のノードが前記現スロットでの前記送信されたパケットを受信しないであろうと決定した時に、前記第２のノードは前記第１のノードのホッピングシーケンスで次のスロットを前記現スロットとして選択することを特徴とする請求項３２に記載のネットワークシステム。
【請求項３４】
前記第２のノードは、前記第１のノードの前記識別子に基づいて決定されるホッピングシーケンススタートおよびホッピングシーケンスシードに基づいて前記チャネルインデックスを生成することを特徴とする請求項２７に記載のネットワークシステム。
【請求項３５】
前記識別子は、メディアアクセス制御（ＭＡＣ）アドレスを含むことを特徴とする請求項３４に記載のネットワークシステム。
【請求項３６】
前記第２のノードは、前記ネットワークにおけるノードがそれぞれのタイミング情報を周辺ノードと交換するまたは前記第１のノードがそのタイミング情報を定期的にブロードキャスト送信する発見期間の間に、前記エポックティックに対する要求に応じて前記エポックティックを受信することを特徴とする請求項２８に記載のネットワークシステム。
【請求項３７】
前記ネットワークにおける各ノードは、前記ネットワークにおける他のノードに関して疑似ランダムな方法で、それぞれのホッピングシーケンスで、前記関連付けられた周波数チャネルを横断することを特徴とする請求項２７に記載のネットワークシステム。
【請求項３８】
前記第１のノードは、前記所定の送信時間に前記送信されたパケットを受信した時に、そのホッピングシーケンスでの前記関連付けられた周波数チャネルの横断を中止することを特徴とする請求項３７に記載のネットワークシステム。
【請求項３９】
前記ノードが前記送信パケットを受信する時にそのホッピングシーケンスで前記関連付けられた周波数チャネルを横断することを中止していないなら、前記ノードは、前記送信パケットの受信の後に、前記ノードが横断していたであろう前記関連付けられた周波数チャネルを、そのホッピングシーケンスで横断することを再開することを特徴とする請求項３８に記載のネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周波数ホッピングスペクトラム拡散（ＦＨＳＳ）無線通信ネットワークにおけるホッピングシーケンスの創出に関する。
【背景技術】
【０００２】
９０２−９２８ＭＨｚの無認可スペクトラムでの動作のためのＦＣＣ規則第１５部の下で動作する通信デバイスは、使用されている物理層プロトコルに基づく特定の技術規則に準拠することが要求される。周波数ホッピングスペクトラム拡散（ＦＨＳＳ）システムのために、デバイスは、一定の最小数のチャネルを有するホッピングシーケンスを使用し、且つ同様にホッピングシーケンスにおいて全てのチャネルを使用しなければならない。ユーティリティ自動メータ読取（ＡＭＲ）／自動メータインフラストラクチャ（ＡＭＩ）ネットワークで使用されるネットワーク等の、９０２−９２８ＭＨｚ帯域で動作するＦＨＳＳに基づく無線ネットワークにおいて、ユーティリティメータに配置される複数のノードおよびセンササイトは、相互のホッピングシーケンス、パケットルーティングオプション、パケットルーティング成功統計、および他のネットワークパラメータに関する情報を交換する必要がある。ユーティリティＡＭＲ／ＡＭＩネットワーク環境が大多数の低電力デバイスから構成されるなら、ネットワーク効率およびメモリ管理の必要性は非常に高い。
【０００３】
ＦＨＳＳ通信システムにおいて、送信デバイスは、所定の時間に受信デバイスにデータを送信するために、所望の受信デバイスがそのホッピングシーケンスにおいてどこに存在するかを知る必要がある。送信デバイスに受信デバイスのホッピングシーケンスを知らせる１つのアプローチは、通信ネットワークにおける各デバイスにおいて、全ての周辺の、又は直接接続されたデバイスのためにホッピングシーケンステーブルを前もって格納することである。しかしながら、このアプローチは、周辺デバイスの数に依存して、十分に、周辺デバイスのホッピングシーケンステーブルを格納するためにメモリが各デバイスに配置されることを必要とする。増大するメモリの必要性を相殺するために、このアプローチはネットワークで使用される全体的なホッピングシーケンスを抑制する必要があるかもしれず、（例えば、ノード間でより多く干渉を生むことによって）不都合となり得る。別のアプローチでは、データを送信する前に、受信デバイスのホッピングシーケンステーブルを求めて受信デバイスに要求を送信する。しかしながら、このアプローチは、データ転送の前に送信デバイスおよび受信デバイスの間でホッピングシーケンステーブルを伝達するために追加のネットワークオーバヘッドを必要とし、且つ受信ノードのホッピングシーケンステーブルを格納するために送信デバイスがメモリを配置する必要もある。
【発明の概要】
【０００４】
一実施形態において、周波数ホッピングスペクトラム拡散（ＦＨＳＳ）ネットワークにおいて周波数ホッピングシーケンスを構築し且つ使用する方法が提供され、その結果、あるデバイスのホッピングシーケンスを別のデバイスに伝達するために追加のネットワークオーバヘッドが必要とされない。さらにその上、ある実施形態では、ネットワークデバイスにランダムアクセスメモリ（ＲＡＭ）を増加させることなく固有のホッピングシーケンス数を最大にする方法が提供される。
【図面の簡単な説明】
【０００５】
前述の側面および本発明の付随的な利点の多くは、添付の図面と共に、以下の詳細な説明を参照してよりすぐに評価され且つより理解されるだろう。
【図１】図１は、例示的なネットワーク化された自動メータ読取データ通信システムを創り出す、遠隔ゲートウェイノードおよびユーティリティサービスプロバイダと連動する電子メータを説明する。
【図２】図２は、例示的な周波数ホッピングスペクトラム拡散（ＦＨＳＳ）ホッピングシーケンスを説明する。
【図３】図３は、別の例示的なＦＨＳＳホッピングシーケンスを説明する。
【図４】図４は、例示的なスロットタイミング図を説明する。
【図５】図５は、グローバルＦＨＳＳチャネルアレイを説明する。
【図６】図６は、本発明の実施形態に従った、例示的なＦＨＳＳホッピングシーケンス創出処理フローを説明する。
【発明を実施するための形態】
【０００６】
周波数ホッピングスペクトラム拡散（ＦＨＳＳ）は、広帯域周波数に渡って時間の関数としてある周波数から他の周波数まで、ランダムだが予測可能なシーケンスで「ホップ」する狭帯域キャリア信号を用いてデータ信号が変調される技術である。信号エネルギーは、周波数ドメインで各ビットを小さなピースにするというよりはむしろ、時間ドメインで拡散する。狭帯域システムからの信号は、２つの送信機が同時に同じ周波数で送信する場合にスペクトラム拡散信号に影響を与えるのみであろうから、その技術は干渉を低減する。適切な同期によって、単一の論理チャネルが維持され得る。
【０００７】
ＦＨＳＳ伝送周波数は、拡散符号またはホッピング符号によって決定されてもよい。送信機と同じホッピング符号に設定された受信機は、適切な時に入力信号をリッスンしてもよく且つ信号を適切に受信するために周波数を訂正してもよい。最新のＦＣＣ規則は、４００ミリ秒という最大の滞留時間（ｄｗｅｌｌ ｔｉｍｅ）（例えば、あらゆる単一ホップの間に特定の周波数で費やされる時間）で、製造業者が伝送チャネルごとに約７５以上の周波数を使用することを要求する。
【０００８】
図１は、ここで説明されるＦＨＳＳ技術が実行されてもよい例示的なユーティリティ自動メータ読取（ＡＭＲ）／自動メータインフラストラクチャ（ＡＭＩ）ネットワーク１００を説明する。ネットワーク１００は、ローカルエリアネットワーク（ＬＡＮ）１１０を介してゲートウェイノード１２０と通信するように構成された複数のメータノード１０５（例えば、家での電子ユーティリティメータ）を含んでもよく、逆もまた同様である。ゲートウェイ１２０は、同様に、ワイドエリアネットワーク（ＷＡＮ）１２５を介して商品プロバイダ１３０（例えば、ユーティリティプロバイダ）と通信するように構成され、逆もまた同様である。例えば、ネットワーク１００の発見期間の間に、複数のメータノード１０５はアドレス情報を周辺のノードと交換してもよく、且つゲートウェイノード１２０は、グローバルＦＨＳＳパラメータ情報を複数のメータノード１０５に送信してもよい。発見の後に、メータノード１０５はそれらの関連付けられたホッピングシーケンスに従って通信してもよい。
【０００９】
ＦＨＳＳに基づくユーティリティＡＭＲ／ＡＭＩ無線ネットワーク環境で周波数ホッピングスペクトラム拡散物理層（ＦＨＳＳ ＰＨＹ）と連動するように設計されるメディアアクセス制御およびデータリンク層（ＭＡＣ／ＤＬＬ）を含んでもよいＦＨＳＳシステムおよび方法の実施形態が、ここで説明される。一実施形態において、ＦＨＳＳ ＰＨＹは比較的速くチャネルを変更（またはホップ）してもよい。しかしながら、同一の受信ノードへ送信することを試みる多数のノード間の干渉が、遅い場合ではより生じやすいかもしれないが、ＦＨＳＳ ＰＨＹはより遅くホップしてもよいことを当業者は理解するだろう。ノードは、ここでは「スロットタイム」と称される時間、ノードのホッピングシーケンスで各チャネルを訪問しまたは滞在する。ある実施形態では、スロットタイムの間に受信がなされないなら、ノードはそのホッピングシーケンスで次のチャネルにチャネルを変更する。スロットタイムの間に受信がなされたなら、受信ノードはその受信を処理するためにチャネルホッピングを中止する。同様に、多数の送信先に送信されるなら、または１つのノードを対象に送信されるなら、ユニキャスト送信先に送信されるなら、フレームが送信された時、送信ノードは特定のチャネルにフレームを送信するためにチャネルホッピングを中止する。いずれにしても、送信／受信トランザクションが終了した後、送信／受信トランザクションを行うためにチャネルホッピングを中止していなかったなら、送信／受信ノードは、ノードがそのホッピングシーケンスで存在していた場所からチャネルホッピングを再開してもよい。
【００１０】
ノードのホッピングシーケンスでの全てのチャネルの横断（ｔｒａｖｅｒｓａｌ）は、ここでは「エポック（ｅｐｏｃｈ）」と称される。ＦＣＣ規則第１５部は、ノードのホッピングシーケンスは、あらゆる所定のチャネルを再び訪問する前にそのホッピングシーケンスで全てのチャネルを訪問しなければならないことを明確にしている。ここで開示される一実施形態において、各エポックを繰り返す疑似ランダムホッピングシーケンスを使用することによってチャネルを再び訪問する前にノードがそのホッピングシーケンスで全てのチャネルを訪問することを保証するために周波数ホッパ（ｈｏｐｐｅｒ）が使用されてもよい。言い換えると、所定のスロットｘの間、チャネルが常に同一である。例えば、図２は、１０個のスロット２００および対応するチャネル２０５を有するノードのための例示的なＦＨＳＳホッピングシーケンスを説明する。図２に示されるように、各エポック２１０のスロット０の間、対応するチャネルは常にチャネル２であり、チャネル２は所定のエポック２１０で１回より多く訪問されない。他のスロット／チャネルのペアリングが可能であり図２に示されるペアリングに限定される必要はないことを当業者は理解するだろう。
【００１１】
ホッピングシーケンスの決定
ここで説明されるＦＨＳＳ ＰＨＹの実施形態において、デバイス（すなわち「ノード」）は、「ホッピングシーケンス」と呼ばれる疑似ランダムな方法でチャネルを横断する。一実施形態において、そのデバイスのＭＡＣアドレスを前提として特定のデバイスのホッピングシーケンスが計算されてもよく、且つそのデバイスのホッピングシーケンスが一度既知になると、そのホッピングシーケンスでの所与のスロットに対して対応するチャネルを決定するために「スロット−チャネル」変換がなされてもよい。例えば、あるノードが別のノードを送信の対象とするなら、送信ノードは、どのチャネルにパケットを送信するかを決定するために、対象ノードのホッピングシーケンス全体に対して、対象ノードのＭＡＣアドレスも知る必要がある。例えば、周辺ノードがアドレス情報を交換する、または、ネットワークにおけるゲートウェイノードがそのようなアドレス情報を全てのネットワークノードに送信する、ネットワークの発見期間に、ＡＭＲ／ＡＭＩネットワークにおけるノードのためにＭＡＣアドレス情報が決定されてもよい。
【００１２】
スロット−チャネル変換は、ホッピングシーケンスタイミング情報に基づいて実行されてもよい。「スロット」という用語は、そのホッピングシーケンスで次のチャネルに移動する前に、デバイスがチャネルに滞在する時間を参照するためにここでは使用される。一般にスロットは０から開始して順に横断され、且つ各スロットは対応する周波数チャネルを有する。説明されるように、ＦＣＣ規則に従って、所定のチャネルを再び訪問する前にデバイスは全てのチャネルを横断しなければならない。ホッピングシーケンスでの全てのスロットの横断が「エポック」と呼ばれることを思い出されたい。従って、ある実施形態において、所定のホッピングシーケンスに対するエポックの長さは、ホッピングシーケンスでのスロット（チャネル）の数を乗じたスロットタイムと等しい。１つのエポックを完了した後、デバイスはホッピングシーケンスを繰り返す。図３は、ホッピングシーケンスに対するスロット−チャネル変換を示す別の例示的なＦＨＳＳホッピングシーケンスを説明する。図３で説明されるホッピングシーケンスのエポック３００は、１０１個のスロット３０５およびスロット３０５のそれぞれに対応する周波数チャネル３１０を含む。例えば、スロット０は対応するチャネル６５を有し、スロット１は対応するチャネル３を有し、スロット２は対応するチャネル８８を有する、等である。他のスロット／チャネルのペアリングが可能であり且つ図３に示されるペアリングに限定されないことを当業者は理解するだろう。
【００１３】
フラクショナルエポックティック（ＦＥＴ）
デバイスは、予測可能な周期的な方法でそれぞれのホッピングシーケンスを繰り返す。それ故、一実施形態において、別のノードをパケット送信の対象とするノードは、（１）対象ノードがそのエポック／ホッピングシーケンスを送信ノードに対して開始した時間、（２）スロットタイム、および（３）エポックごとのスロット数、を（ドリフトがないときは）知っている対象ノードの現在の受信チャネルを計算してもよい。例えば、スロットタイム情報は、ＭＡＣ層管理エンティティ（ＭＬＭＥ）パラメータを含んでもよいがこれに限定されないリンク情報（ＬＩ）で交換され得、且つエポックごとのスロット数がＰＨＹによって定義され得る。ある実施形態において、ノードがそのエポックを開始した時間は、そのノードのエポックティック（ｅｐｏｃｈ ｔｉｃｋ）に基づいて計算され得る。「エポックティック」という用語は、ここではある時点でのホッピングシーケンスでノードがどこに存在するかを説明するために使用される。例えば、ノードがそのタイミング情報を周辺ノードと交換する、または、対象ノードが定期的にそのタイミング情報をネットワークにおける他のノードに送信する、ネットワークの発見期間の間に、送信ノードは要求に応じて対象ノードのエポックティックを受信してもよい。
【００１４】
送信ノードは、対象ノードのエポック開始時間を以下のように決定するためにエポックティックを使用してもよい。エポックティックを有するフレームが対象ノードによって送信される時、ＰＨＹは、エポックティック計算とフレームにおける既知の時間とを同期させるために、タイミングアップコール（ｕｐｃａｌｌ）を提供し得る。この既知の時間は、例えば、ＰＨＹヘッダにおけるチャネルＩＤが送信される時、且つＰＨＹがフレームの受信時間をマークする時であり得るが、これに限定されない。従って、送信ノードがフレームにおけるエポックティックを受信する時に、対象ノードがそのエポックを開始した時間が式（１）に示されるように計算され得る。
エポック開始時間＝パケット受信時間−エポックティック  …（１）
【００１５】
ある実施形態において、フラクショナルエポックティック（ＦＥＴ）が、エポックティックの代わりに使用されてもよい。ＦＥＴを使用する利点は、特に、様々な送信および他のＬＩフレームにおいてバイトの分解および節約を含んでもよい。すなわち、ティックごとにいくつか定義されたマイクロ秒数を使用して、エポックティックを送信するよりもむしろ、エポック長によって分割されたエポックにおいてノードがどこに存在するかを表すフラクションが送信され得る。その場合フラクションは６５５３６を乗じられて且つＦＥＴとして送信される。従って、ＦＥＴは式（２）に示されるように計算されてもよい。
ＦＥＴ＝（エポックティック＊６５５３６）／エポック長  …（２）
【００１６】
エポックティックまたはＦＥＴを使用して対象ノードのエポック開始時間を決定したら、送信ノードは、将来の所定の送信時間のために、対象ノードの「現スロット（ｃｕｒｒｅｎｔ ｓｌｏｔ）」を、式（３）および式（４）に従って、エポック開始時間、エポック長、およびエポックごとのスロット数に基づいて評価してもよい（すなわち、現スロットは、将来の送信時間に対象ノードがそのホッピングシーケンスでどこに存在するであろうかを説明する）。ここで、ｍｏｄはモジュロ演算を表す。それから、現スロットを前提として、将来の送信時間に対する対象ノードの現受信チャネルを決定するために、説明されるように、送信ノードはスロット−チャネル変換を行ってもよい。
エポックでの現ティック＝（送信時間−エポック開始時間）ｍｏｄ（エポック長）  …（３）
現スロット＝エポックでの現ティック／エポックでのスロット数  …（４）
【００１７】
さらに、送信ノードは、将来の送信時間に送信されるフレームが対象ノードによって受信されるであろうことを確実にするために、対象化手順を実行してもよい。一実施形態において、スロットでの現ティックは、対象ノードが将来の送信時間におけるフレームの受信を察知するための現スロットで、十分な送信フレームを受信するであろうかどうかを決定するために、式（５）に従って計算されてもよい。対象ノードが、将来の送信時間におけるフレームの受信を察知するために、現スロットで十分な送信フレームを受信しないであろうなら、その場合送信ノードは、対象ノードのホッピングで次のスロットを、将来の送信時間にフレームを送信する対象スロットとして選択してもよい。
スロットでの現ティック＝（エポックでの現ティック）ｍｏｄ（スロットタイム）  …（５）
【００１８】
同期化および対象化
ＦＥＴおよび対象ノードの他のリンク情報が一度受信されると、タイミング情報を最新に保ち且つ送信ノード／受信ノードを十分同期させるためにタイミングアップデートが送信されてもよい。タイミングアップデートが送信される必要がある時を決定するために、スロットおよびノード間のクロックドリフト（ｃｌｏｃｋ ｄｒｉｆｔ）の範囲内のタイミングが知られる必要がある。例示的なスロットタイミング図が、図４で説明され、現スロット４００を示す。スロットタイムは、受信時間および処理時間（例えば、それぞれ１ミリ秒および２００マイクロ秒）だけでなく、ＰＨＹによっても設定され得る（例えば、２０ミリ秒）。これらのＰＨＹ時間は、有効受信ウィンドウ４１５の「左ウィンドウエッジ」４０５ａおよび右ウィンドウエッジ４１０ａとして、図４に示されるようにここで定義されるものを決定するために使用されてもよい。
【００１９】
スロット４００の有効受信ウィンドウ４１５は、対象ノードがデータを受信するまたはフレームの「受信を察知」することが可能な時間として定義されてもよい。従って、対象ノードにフレームを送信する時に、図４の例に従って、フレームのプリアンブルの最初のビットは、左ウィンドウエッジ４０５ａにおいてまたはその後に開始しなければならず、且つフレームの送信先アドレスは、右ウィンドウエッジ４１０ａの前に受信されなければならない。さもないと、対象ノードは現スロット４００から次のスロットへそのホッピングシーケンスでホップするだろう。ここで留意すべきは、対象／受信ノードが、ブロードキャストＭＡＣアドレスまたはそれ自身のマックアドレスに対応付けられたフレームを受信しない限り、対象／受信ノードはそのホーム／現スロットに滞在しないであろうことである。ここで説明されるように、一実施形態において、対象ノードが将来の送信時間におけるフレームの受信を察知するために現スロットで十分な送信フレームを受信しないであろうことを送信ノードが決定したなら、その場合送信ノードは、対象ノードのホッピングシーケンスで次のスロットを、将来の送信時間でフレームを送信する対象スロットとして選択してもよい。
【００２０】
図４に示されるように、左および右ウィンドウエッジ４０５ａおよび４１０ａは、「ドリフト」４２０が増大するにつれて、４０５ｂおよび４１０ｂで示されるように、「近づいて」もよい（すなわち、お互いがより近くなってもよい）。ドリフト４２０は、送信及び受信ノードのクロックの正確性を知ることによって計算されてもよい。クロックの正確性は、一般に１００万分の１（ｐｐｍ）で与えられ且つノードのクロックの最大時間誤差を定義する。例えば、クロックが＋／−１０ｐｐｍの正確性を有すると仮定しよう。これは、経過する各秒に対してプラスまたはマイナス１０マイクロ秒の範囲内で時間が正確であることを意味する。従って、１００秒が経過したなら、＋／−１ミリ秒の範囲で正確であるだろう（すなわち、クロックは、最悪の場合、９．９９９秒または１０．００１秒を示すだろう）。この例では、ドリフト４２０は、受信された最後のタイミングアップデートからどのくらいの時間が経過したかを決定し、且つその経過時間に送信および受信ノードのクロック正確性を乗じることによってことによって決定され得る。例えば、（ノードＡと相対的に）時間０においてノードＡがノードＢからタイミングアップデートを受信し、ノードＡが５ｐｐｍの正確性を有し、ノードＢが１０ｐｐｍの正確性を有し、および１００秒が経過したと仮定すると、その場合、ドリフト全体は、１００秒＊（１０ｐｐｍ＋５ｐｐｍ）＝１．５ミリ秒として計算され得る。
【００２１】
ホッピングシーケンスの生成（スロット−チャネル変換）
一実施形態において、ネットワークにおいてノード間で交換される管理情報を省略するために、ノードに対するホッピングシーケンスは交換されず、あるノードに対するホッピングシーケンス全体も生成されない。代わりに、比較的単純な計算が、ある時点でのあるノードの受信周波数を決定するためになされ得る。この計算はここでは「スロット−チャネル」変換と称される。ここで説明されるように、送信ノードは、将来の送信時間における受信ノードの現スロットを、または受信ノードのホッピングシーケンスでの次のスロットを、将来の送信時間におけるフレームを送信する対象スロットとして使用するかどうかを決定するための対象化手順を実行してもよい。一度対象化手順が実行されると、送信ノードは、所望の将来の送信時間における所望の送信先ノードの対象スロットを知る。この対象スロットはその場合、対象スロットの「チャネルインデックス（ｃｈａｎｎｅｌ ｉｎｄｅｘ）」を式（６）に従って計算することによって周波数チャネルへ変換されてもよい。ここで「ｍｏｄ」はモジュロ演算を表す。ある実施形態において、チャネルインデックスは、グローバルＦＨＳＳチャネルアレイへのインデックスとして使用され得、それは、スロットに対して対応する受信チャネルを与える。図５は、エポックごとに８３個のスロットを有するホッピングシーケンスのための、例示的なグローバルＦＨＳＳチャネルアレイを説明する。チャネルアレイは図５で説明される構成に限定される必要はないことを当業者は理解するだろう。
チャネルインデックス＝（（スロット＊ホップシード（Ｈｏｐ Ｓｅｅｄ））＋ホップスタート（Ｈｏｐ  Ｓｔａｒｔ））ｍｏｄ（エポックごとのスロット数（ＳｌｏｔｓＰｅｒＥｐｏｃｈ））  …（６）
【００２２】
式（６）に従って、チャネルインデックスは、対象ノードに対する（ここではシーケンススタートとも称される）ホップスタートおよび（ここではシーケンスシードとも称される）ホップシードに基づいて計算されてもよい。例えば、ホップスタートおよびホップシードは、式（７）および式（８）に従って決定されてもよく、ここでエポックごとのスロット数はホッピングシーケンスでのチャネル数を定義し且つ「ｍｏｄ」はモジュロ演算を表す。従って、一実施形態において、ホップスタートおよびホップシードの値は、他にも識別子はあるが、対象ノードのＭＡＣアドレス等の、対象ノードの識別子から取得され得る。これらのスタートおよびシードの値はネットワークにおける各ノードに与えられている。ここで使用されるように、「ＭＡＣ｜ｘ｜」という用語は、対象ノードのＭＡＣアドレスのｘ番目のバイトを示しており、この例では、７番目のバイトはアドレスの最後のバイトである。「ｘｏｒ」という用語は、ビット単位の排他的論理和演算である。ＭＡＣアドレスの最後の３バイトは一般に周辺ノード間で最も異なっており、且つそれ故異なるホップスタートおよびホップシードを有する最も高い確率を与える。
【００２３】
式（７）および式（８）は、１から（エポックごとのスロット数−１）の範囲のホップシードを、（エポックごとのスロット数）のホップスタートを、計{エポックごとのスロット数＊（エポックごとのスロット数−１）}個の異なるホッピングシーケンスに対して、値をもたらすことに留意すべきである。
ホップスタート＝（ＭＡＣ[５]ｘｏｒＭＡＣ[６] ｘｏｒＭＡＣ[７]）ｍｏｄ（エポックごとのスロット数）  …（７）
ホップシード＝（ＭＡＣ[７]ｍｏｄ（エポックごとのスロット数−１））＋１  …（８）
【００２４】
ある実施形態において、エポックごとのスロット数（ＳｌｏｔｓＰｅｒＥｐｏｃｈ）または、同様にホッピングシーケンスでのチャネル数は、素数であるように選択される。そうでなければ、式（６）−式（８）は「違法な（ｉｌｌｅｇａｌ）」ホッピングシーケンス（すなわち、所定のチャネルを再訪問する前にエポックでの全てのチャネルを訪問しないホッピングシーケンス）を生成するだろう。別の実施形態において、チャネル数が非素数に選択された場合、ここで説明されるホップスタートおよびホップシードの技術は、まだ適用されてもよい。しかしながら、有効なホップシードの総数は限定されるだろう。なぜなら、この場合、チャネルの総数に対して互いに素であるシードが選択されなければならず、素数の全チャネルが選択されるよりも、生成され得るより少ない特定のホッピングシーケンスに帰結するからである。さらに、非素数のチャネルを選択するというそのようなアプローチは、追加的に相対的に重要な計算が実行されることを必要とし、シードを決定するための更なるオーバヘッドに帰結する。
【００２５】
ホームチャネル受信手順
ここで称されるように、ノードの「ホーム」チャネルは、そのホッピングシーケンスを横断している時にノードが所定時間に受信すべきチャネルを示す。例えば、ある実施形態において、ノードに対するスロットタイムが、各スロット境界でａＰｈｙＳｌｏｔＴｉｍｅに定義されるなら（すなわち、全てのａＰｈｙＳｌｏｔＴｉｍｅが経過した後に）、ノードはそのホッピングシーケンスで次のチャネルに切り替える。ノードは、そのホームチャネルで受信する準備ができていなければならず、すなわち、ａＰｈｙＲｘＴｏＲｘＴｉｍｅとして定義された時間に送信されたフレームのＰＨＹプリアンブルの最初のビットを察知するまたは「聴く（ｈｅａｒ）」準備ができていなければならない。ホームチャネルで受信する間、ノードはフレームの開始を聴いている。スロットの終了の前に受信開始を検出したなら、ノードはチャネルホッピングを中止し且つＭＡＣ／ＤＬＬは、フレーム制御フィールドが受信されるまで待機する。受信フレームがブロードキャスト送信フレームであるなら、すなわち、ソースアドレスが存在する（ＳＲＣ−ＰＲＥＳＥＮＴ）ことを示すビットが、フレーム制御フィールドで設定される唯一のビットであるなら、その場合、巡回冗長コード（ＣＲＣ）が有効にされるまで、またはフレーム受信にエラーが生じるまで、ノードはフレームの残りを受信する。
【００２６】
受信フレームが、ソースアドレスおよび送信先アドレスが存在することを示す両方のビットを有するなら（すなわち、ＳＲＣ−ＰＲＥＳＥＮＴおよびＤＥＳＴ−ＰＲＥＳＥＮＴのビットがフレーム制御フィールドで設定されるなら）、その場合ノードは送信先ＭＡＣアドレスを受信し且つそれを自身のＭＡＣアドレスと比較する。アドレスが合致するなら、その場合ノードは全フレームを受信し且つ、うまくいけば通信リンク（ＣＬ）がポーリングノード（ｐｏｌｌｉｎｇ  ｎｏｄｅ）に（確認手順から開始して）入力される。送信先アドレスが受信ノード自身のＭＡＣアドレスと合致しないなら、その場合受信ノードはフレームを廃棄し且つそのホームチャネルで受信を再開する。
【００２７】
ソースアドレスが存在せず（すなわち、ＳＲＣ−ＰＲＥＳＥＮＴビットがフレーム制御フィールドで設定されない）、送信先アドレスが存在し（すなわち、ＤＥＳＴ−ＰＲＥＳＥＮＴビットがフレーム制御フィールドで設定される）且つ送信先ＭＡＣアドレスが受信ノード自身のＭＡＣアドレスと合致するなら、ノードはフレームを廃棄する。ユニキャスト送信先へ送信される時にソースアドレスを有さない確認フレームのみが送信されるべきであるので、この場合はエラーの場合を表し且つネットワークに生じるべきではない。
【００２８】
周波数ホッピングシーケンス処理フロー
図６は、本発明の実施形態に従った例示的なホッピングシーケンス生成処理フロー６００を説明する。ここでの教示に基づいて当業者にとって明らかであるように、図６のステップの全てが示される順序で起こる必要はなく、且つ他の類似の処理フローも本発明の範囲で可能である。
【００２９】
ステップ６１０において、ＦＨＳＳネットワークに対して可能なチャネル総数Ｎが選択される。次に、ステップ６２０において、ホッピングシーケンスでのチャネル総数Ｎｐが選択される。ある実施形態において、Ｎｐは（Ｎを超過しない）Ｎと最も近い素数である。ここで説明されるように、素数のチャネル数を選択することによって、ホップスタート（シーケンススタート）およびホップシード（シーケンスシード）の値での周期性は避けられ得る。このようにして、より多数の特定のホッピングシーケンスが生成されてもよい。なぜならシードおよびスタートのペアリングは特定のホッピングシーケンス、計Ｎｐ＊（Ｎｐ−１）個の特定のホッピングシーケンス、をもたらすからである。代わりのアプローチでは、チャネルの総数と互いに素である（すなわち、共通の要因を有さない）値を有するシードが選択されてもよいが、シード値の数がより利用可能ではないので、このアプローチではより少ない特定のホッピングシーケンスが生成される。
【００３０】
ステップ６３０において、（例えば、図５で説明されるチャネルテーブル等の）Ｎｐ個のチャネルを含む、ＦＨＳＳネットワークに対するチャネルテーブルが創り出される。このチャネルテーブルは全てのネットワークデバイスに存在するだろう。このチャネルテーブルは、メモリに組み込まれており、且つ一般に無線で配信されない。しかしながら、いくつかの実施形態において例外が存在してもよい。例えば、ネットワークにおけるゲートウェイノードは、発見期間中に、ステップ６３１および６４０に従ってチャネルテーブルをネットワークにおける全てのデバイスへ送信してもよい。一実施形態において、最適なチャネルテーブルが創り出され、その結果その関連付けられたホッピングシーケンスは、平均して、ホップごとに最大チャネル分離（ｃｈａｎｎｅｌ  ｓｅｐａｒａｔｉｏｎ）を有する。
【００３１】
ステップ６５０において、シーケンススタート（ＳＳ）が０から（Ｎｐ−１）を含めた範囲で創り出される。ステップ６５１に従って、一実施形態において、例えば、式（７）にある通り、ネットワークのオーバヘッドを省くために、シーケンススタートがネットワークデバイスのＭＡＣアドレスから取得され得る。シーケンススタートの創出時におけるＭＡＣアドレスの使用は、特に便利である。なぜなら、一般にその周辺ノードおよびゲートウェイを用いた各ノードの発見処理の後に、お互い通信するために、ネットワークにおけるあらゆる送信先のＭＡＣアドレスが、ネットワークにおける全ての他のデバイスにとって既知であってもよいからである。従って、周辺ノード間でこの情報を伝達するために、追加的なメモリまたはネットワーク回線容量が必要とされない。同様に、ステップ６６０において、１から（Ｎｐ−１）を含めた範囲でシーケンスシード（ＳＳＥＥＤ）が創り出される。シーケンススタートと同様に、ステップ６５１に従って、シーケンスシードもネットワークデバイスのＭＡＣアドレスから、例えば式（８）に従って取得され得る。シーケンススタートおよびシーケンスシードを創り出すために、ステップ６５１において他のデバイス識別子が使用されてもよいことを当業者は理解するだろう。一実施形態において、デバイスのＭＡＣアドレス等の、特定の識別子が使用されてもよい。
【００３２】
ステップ６７０において、式（９）および（１０）に従って、所定のネットワークデバイスのホッピングシーケンスでチャネルを識別するために、スロット−チャネル変換が実行されてもよい。ここで、「ｍｏｄ」はモジュロ演算を表す。すなわち、チャネルテーブルへのチャネルインデックスが生成され且つ対応するチャネルがチャネルテーブルから選択される。
チャネルインデックス＝（（対象スロット＊ホップシード）＋ホップスタート）ｍｏｄ（Ｎｐ）  …（９）
チャネル＝チャネルテーブル[チャネルインデックス]  …（１０）
【００３３】
従って、ステップ６８０に従って、スロット−チャネル変換を使用して、所定のデバイスに対するホッピングシーケンスが生成されてもよい。デバイスのホッピングシーケンスでの０から（Ｎｐ−１）までの全てのスロットに対して、式（９）および（１０）に従って、チャネルインデックスを使用して所定のスロットに対するチャネルが計算される。このホッピングシーケンスは周期的にそれ自体繰り返す（Ｎｐ個のチャネルごとに）。
【００３４】
このようにして、図６で説明される例示的な実施形態は、デバイスに対するスロット−チャネル変換を提供し、且つ他のＦＨＳＳシステムには普通にあることだが、送信デバイスおよび送信先デバイスは、ネットワークオーバヘッドを浪費することなしに同期して通信できる。
【００３５】
一実施形態において、図６のステップ６１０−６４０は、世界的に、ネットワーク全体に対して一度実行されてもよい。別の実施形態において、ネットワークにおける１つのデバイスが、ネットワークにおける別のデバイスへ送信するためのデータを有する時、送信デバイスは、所定の時間にデータを送信する、対象デバイスのホッピングシーケンスのチャネルを識別するために図６のステップ６５０−６８０を実行してもよい。同様に、ネットワークにおける各デバイスは、図６のステップ６５０−６８０に従って自身のホッピングシーケンスを創り出してもよい。ある実施形態において、デバイスのホッピングシーケンス情報は、ネットワークにおける全ての他のデバイスにとって利用可能である。なぜなら、それらのデバイスは、それらと通信する周辺デバイスのＭＡＣアドレス、または他のデバイス識別子を知っており、且つネットワークにおける全てのデバイスは、メモリに組み込まれた同一の固定チャネルテーブルを有するからである。すなわち、対象デバイスのＭＡＣアドレスを使用して、例えば、送信デバイスは、固定チャネルテーブルに従ってスロット−チャネル変換を実行してもよく、且つ所定の送信時間において対象ノードが使用しているであろうホッピングシーケンスの後に対象ノードにパケットを送信してもよい。
【００３６】
本発明は、例示的な実施形態を参照して説明されている。しかしながら、ことが当業者にとって明らかであろう。本発明の範囲を逸脱することなく上述した形式以外の特定の形式で本発明を具体化することが可能である。従って、ここで説明された様々な実施形態は例示的なものであり、且つそれらは決して限定的なものであると考えられるべきではない。本発明の範囲は、前の記載よりもむしろ添付の請求項によって提供され、且つ請求項の範囲内であるその全ての変更および均等物がそこに包含されることが意図される。
【図１】
2011509020.tif 000003
【図２】
2011509020.tif 000004
【図３】
2011509020.tif 000005
【図４】
2011509020.tif 000006
【図５】
2011509020.tif 000007
【図６】
2011509020.tif 000008
【国際調査報告】
2011509020.tif 000009
2011509020.tif 000010
2011509020.tif 000011