図1は、本発明の一実施形態に係るRF通信システム100の概略図である。システム100は、デコーダ104及びサーバー106に接続されたRF基地局102、及び少なくとも一つの、しかし一般に複数の、RFノード108(図1では、図面を分かり易くするため、RFノード108を1個だけ示す)を備えている。システム100は、ここで説明するように、基地局102と複数のノード108との間のRF通信を管理し、例えば、FHSSの方式を用いて、M個の実質的に非重複の周波数チャンネルに亘り、周波数ホッピングを実行することができ、これらチャンネルは、例えば、公的に利用可能な2.4GHzのISM帯域内のものである。
システム100におけるノード108の各ノードは、一意的なノード識別子によって識別できる。ノード108の各ノードは、例えば、 レーシング車両上で使用されるトランスポンダーを備えるか、もしくは、該トランスポンダーに組み込むことができる。
ノード108の各ノードは、 マイクロコントローラ110を備えている。マイクロコントローラ110は、ここで述べる、ノード108によって実行される方法のステップを実行するよう構成されたデータ処理システムである。このようなデータ処理システムの一例を図2に示し、かつ、図2を参照して説明する。
ノード108のマイクロコントローラ110は、RFトランシーバ112として図1に示す通信モジュールに接続されているか、あるいは、該通信モジュールを備えている。好適な実施形態では、トランシーバ112は、半二重通信モードで動作する一つのRF受信器/送信器である。以下の説明は、この好適な実施形態についての説明であるが、ここで提供する教示は、もちろん、他の実施形態、例えば、トランシーバ112が互いに他から分離された受信器及び送信器を備えることができる実施形態にも適用可能である。
トランシーバ112は、M個の実質的に非重複の周波数チャンネルCH1〜CHM(CHはChannel<チャンネル>のCH)のそれぞれにおいて、FHSSを用いて、データを受信及び送信するよう構成されており、ここにMは、2に等しいか、あるいは、2より大きい整数である。例えば、2.4GHzの帯域に関する欧州におけるETSI法規によれば、FHSSを用いてデータを送信するためには、少なくとも15個の明確に規定された非重複のチャンネルを用いなければならず、また、各チャンネルにおけるデータ送信のための時間は、0.4秒(いわゆる「ドウェルタイム」)を超えてはならない。したがって、これらの法規によれば、Mは、15に等しいか、あるいは、15より大きくなければならない。現在、FHSSの法規は、単一のチャンネル上でデータが受信される時間の長さについては、いかなる制限も設けていない。マイクロコントローラ110は、本発明の実施形態を実現するための必要に応じ、指定されたチャンネルにおいて、指定された期間、データを受信及び(又は)送信するようトランシーバ112をチューニングすることによって、トランシーバ112を制御するよう構成されている。マイクロコントローラ110はまた、トランシーバ112がデータを送信するのに用いる電力を制御するよう構成されている。例えば、2.4GHzの帯域についての、欧州におけるETSI法規によれば、トランシーバ112は、100ミリワット(mW)の電力でデータを送信することができる。
好適な実施形態では、Mは、16に等しい。このような実施形態は、好適である。なぜなら、ETSIは、FHSSのためには、最低15個のチャンネルを要求しており、16がこれに最も近い2の累乗数であり、8個ずつ2バンクの受信器において、それぞれアンテナコンバイナー及び増幅器を用いて、1バンク当たり1個のアンテナとしたハードウェアの実現が可能であるからである。
好適な実施形態では、M個のチャンネルが、公的に利用可能な2.4GHzのISM帯域内のチャンネルとなっている。
好適な実施形態では、M個のチャンネルは、特定の場所に既に配置されている場合がある周波数チャンネルとの重複が最小限になるよう選択される。チャンネルのこのような選択は、その場所に既に配置されている他のRFシステムがシステム100の配置の結果として受けそして与えるかもしれない場合がある、あるいは、その逆による干渉を最小限に抑えることを可能にするものである。例えば、2.4GHzの周波数帯域で動作させるためには、M個のチャンネルは、システム100のM個のチャンネルでのデータ通信と、特定の場所に既に配置されている可能性があるWiFiシステムのWiFiチャンネルとの間の干渉が最小限となるように選択することができる。例えば、WiFiシステムが、2.4GHzのISM帯域内にて利用可能な85MHzに亘って、22MHzのチャンネル13個を用い、13個のWiFiチャンネルが、2412MHz、2417MHz、2422MHz、2427MHz、2432MHz、2437MHz、2442MHz、2447MHz、2452MHz、2457MHz、2462MHz、2467MHz、2472MHz、及び2484MHzに中心周波数を有している場合は、本発明の一実施形態に係る16個のチャンネル(すなわち、M=16の好適な実施形態用のチャンネル)は、例えば、2405MHz、2410MHz、2415MHz、2420MHz、2425MHz、2430MHz、2435MHz、2440MHz、2445MHz、2450MHz、2455MHz、2460MHz、2465MHz、2470MHz、2475MHz及び2480MHzに中心周波数を有し全て1MHzのチャンネル帯域幅を用いるチャンネルとして選択できる。
特定の設定で配置される場合、ノード108は、トランシーバ112のアンテナ114が、RF基地局102のアンテナに対して十分なLOS(line of sight)接続を有するように設置しなければならない。例えば、車両レーシングに適用する場合に、ノード108は、ノード108のアンテナ114とRF基地局102のアンテナとの間に十分なLOS接続が存在するよう、車両上のどこかに設置することになろう。
ノード108の各ノードは、さらに、ノード108とさらなるエンティティ118との間で、例えば、バス120を介して、データを通信するためのインタフェース116を備えている。さらなるエンティティ118は、基地局102に送信されるべきデータをノード108に提供するエンティティ及び基地局102からノード108を介してデータを受信するエンティティである。例えば、車両レーシングに適用する場合に、さらなるエンティティ118は、全地球測位システム(GPS)、慣性計測装置、油圧モニター、車両のドライバーのために、例えば、ラップタイムを表示するオンボード・ディスプレイ、ドライバーの心拍数及び他の生命に関わる特性を測定するセンサー等のうちの一つ又はそれ以上を備えることができる。オプションとしては、さらなるエンティティ118をノード108の一部とすることができる。
一実施形態では、インタフェース116は、コントローラ・エリア・ネットワーク(CAN)インタフェースを備えることができ、したがって、バス120は、CANバスを備えることができる。CAN規格ISO-11898:2003は、CANインタフェースを介してCANバスに接続されている装置を互いに他にリンクする有線通信ネットワーク(CANネットワーク)を規定し、CANメッセージ又はCANパケットに基づいて、装置が、互いに他と対話し、かつ(あるいは)、データを交換することができるようにしている。CANネットワークは、中央CANコントローラを備えることができ、また、ネットワークには何時でも、たとえネットワークが動作している間でも(この動作は「ホットプラッギング」と呼ばれる場合がある)、装置を追加することができる。CANバスは、ノイズ及び過酷な環境に対して強固となるように、また、高い信号速度が許容されるように、差動データバスとして構成することができる。これは、自動車環境では、特に有利である。
したがって、このような実施形態では、CANインタフェース116は、例えば、レース車両のCANバス120に接続され、その結果、ノードが、車両のCANネットワークの一部となり、かつ、CANインタフェース116が、CANパケットを、例えば、車両内のCAN可能化装置(CAN−enable devices)に送信し、及び(又は)、該CAN可能化装置から受信することができるようになっており、CANインタフェース116には、GPS等の車両上のセンサー、慣性計測装置、又は(油の)圧力モニター、ラップタイム等のタイミング情報を表示するオンボード・ディスプレイ、及びデータロギング・システムが含まれている。
ノード108は、例えば、メモリ又は電源ユニット等の、図1に示されていない他の構成要素をさらに備えることができる。電源ユニットは、電源、例えば、一つ又はそれ以上の電池、及び、電力制御装置を備えることができる。一実施形態では、電源ユニットは、一つ又はそれ以上の別途の電源、例えば、太陽電池等をさらに備えることができる。電力制御装置は、ノード内の構成要素の電力モードを別様に制御することができる。例えば、プロセッサ/マイクロコントローラが、ノードが休眠状態となることを必要とした場合は、プロセッサ/マイクロコントローラは、その構成要素をオフにするか、あるいは、これらの構成要素を低電力モードに設定することができる。同様に、ノードのメモリ及び(又は)ノード内のマイクロプロセッサのメモリは、データ書込みサイクル中、アクティブとすることができる。
RF基地局102は、複数のRF受信器124に接続されたマイクロコントローラ122、単一の無線送信器126、及びデータ通信用のインタフェース128を備えている。
一実施形態では、複数の受信器124は、フィールド・プログラマブル・ゲート・アレイ(FPGA)又はディジタル信号プロセッサ(DSP)内に実現することができる。
一実施形態では、受信器124は、一つのアンテナを共用することもできる。信号は、先ず、増幅し、次いで、複数回分割することができる。各分割では、例えば、3dBの信号損失となる場合がある。したがって、8個の受信器で1個のアンテナを共用する場合、受信器における受信信号の強度は同一にするために9dBの増幅器が必要である。
ならない。
マイクロコントローラ122は、ここで述べる基地局102によって行われる方法のステップを実行するよう構成されたデータ処理システムである。このようなデータ処理システムの一例を、図2に示し、かつ、図2を参照して説明する。
RF基地局102は、単一のRF送信器126のみを備えていればよいが、RF受信器124の数は、上記のM個のチャンネルに対応して、少なくともMである。したがって、基地局102の受信器124は、受信器124−1〜124−Mとして図1に示してある。RF受信器124のそれぞれは、ノード108がデータを送信するのに使用するよう構成されているM個のチャンネルのうちの異なるチャンネルでデータを受信するよう構成されている。したがって、RF受信器124の各RF受信器は、一つの周波数チャンネルでのみデータを受信する。以下、さらに詳しく説明するように、送信器は一つしかないが、受信器はM個有る基地局102の構成は、データの衝突及び干渉を避けるようにして、基地局102による複数のノード108からの(への)データ受信/送信をスケジューリングすることを可能にするものである。それぞれ異なる周波数チャンネルにチューニングされているM個の指定された受信器を有する基地局102は、異なるノード108から該基地局102が同時にデータを受信することを可能にするものであるが、ただしそれには、基地局に同時にデータを送信する異なるノード108が、M個のチャンネルのうちの異なるチャンネルでデータを送信することが条件となる。基地局102には送信器が一つしかないが、これは、基地局102がいつデータを送信しようとしているのかをノード108が決定し、かつ、そのとき、ノード108のトランシーバ112がデータを受信する(したがって、データを送信しない)よう構成されていることを確認することができる、タイムスロット・スケジュールの形成が可能であることを保証するものである。
基地局102は、特定の設定で配置される場合、RF受信器124のM個のアンテナ130−1〜130−M、並びに、送信器126のアンテナ132が、少なくとも、RFノード108がRF基地局102とのRF通信の範囲内であるときに、RFノード108のアンテナに対して、LOS接続の状態であるように設置されていることが好ましい。インタフェース128は、例えばバス134を介したRF基地局102とデコーダ104との間のデータ通信用であり、デコーダ104は、対応するインタフェース136を備えている。一実施形態では、インタフェース128及び136は、CANパケットを通信するためのCANインタフェースであり、また、バス134は、CANバスである。RF基地局102のCANインタフェース128をデコーダ104のCANインタフェース136に接続すると、RF基地局102とデコーダ104との間にポイント・ツー・ポイントCANバス接続が形成される。
インタフェース136に加えて、デコーダ104は、デコーダ104の機能性を制御するためのマイクロコントローラ138も備えている。マイクロコントローラ138は、例えば、図2に示し、かつ、図2を参照して説明するデータ処理システムである。マイクロコントローラ138は、デコーダ104をサーバー106に接続するためのインタフェース140に接続されている。一実施形態では、インタフェース140は、イーサネット(登録商標)・インタフェースを備えている。
一実施形態では、デコーダ104は、RF基地局102内に含めることができる。このような実施形態では、マイクロコントローラ122の機能性にマイクロコントローラ138の機能性が追加されており、マイクロコントローラ122は、ここで説明するRF基地局102によって実行される方法ステップを実現するよう構成されている。
サーバー106は、好ましくは、イーサネット(登録商標)・インタフェースを介して、デコーダ104に接続されている、図2に示すようなデータ処理システムであり、該データ処理システムは、RF通信システム100を利用して、例えばレーストラック上の車両等のノード108に(から)データを送信する(受信する)一つ又はそれ以上のアプリケーションを動作させるよう構成されている。このようなアプリケーションとしては、例えば、ラップタイムを車両に送信するアプリケーションやレーストラック上の車両(ただしそれらがRF基地局102の範囲内にある場合)の現在のGPS位置を受信するアプリケーションなどがある。
一実施形態では、サーバー106の機能性は、RF基地局102内又はデコーダ104内に含めることができる。
図2は、本発明の一実施形態に係る例示的なデータ処理システム200を示す。このようなデータ処理システムは、RF通信システム100内で、図1を参照して説明したマイクロコントローラ110、マイクロコントローラ122、マイクロコントローラ138、及び(又は)、サーバー106の各サーバーとして使用することができる。
データ処理システム200は、システムバス206を介して、メモリ素子204に結合されている少なくとも一つのプロセッサ202を備えることができる。よって、データ処理システムは、メモリ素子204内にプログラムコードを格納することができる。さらに、プロセッサ202は、システムバス206を介して、メモリ素子204から取得されるプログラムコードを実行することができる。一態様では、データ処理システム200は、プログラムコードを格納し、かつ(あるいは)、実行するのに適当なコンピュータとして実現することができる。しかしながら、システム200は、この明細書で説明されている機能を実行することができるプロセッサ及びメモリを備える任意のシステムの形で実現できることを理解されたい。
メモリ素子204は、例えば、ローカルメモリ208及び一つ又はそれ以上のバルク記憶装置210等の一つ又はそれ以上の物理的なメモリ装置を備えることができる。ローカルメモリは、プログラムコードの実際の実行の際に一般的に用いられるランダムアクセスメモリや他の非持続性メモリ装置(複数も可)を指すことができる。バルク記憶装置は、ハードドライブ又は他の持続性データ記憶装置として実現することができる。処理システム200は、少なくともいくつかのプログラムコードの一時的な格納を行って、実行中にバルク記憶装置210からプログラムコードを検索しなければならない回数を減らす一つ又はそれ以上のキャッシュメモリ(図示せず)を備えることもできる。
データ処理システムには、入力装置212及び出力装置214として示されている入/出力(I/O)装置を任意に結合することができる。入力装置の例には、例えば、キーボード、マウス等の位置指示装置、等を含めることができるが、それらに限定されない。出力装置の例には、例えば、モニター又はディスプレイ、スピーカー等を含めることができるが、それらに限定されない。入力装置及び(又は)出力装置は、直接、あるいは、介在しているI/Oコントローラ(図2では図示せず)を通して、データ処理システムに結合することができる。また、データ処理システムには、ネットワーク・アダプター216を結合して、データ処理システムを、介在しているプライベート又はパブリックネットワークを介して、他のシステム、コンピュータシステム、遠隔ネットワーク装置、及び(又は)遠隔記憶装置に結合することもできる。ネットワーク・アダプターは、前記システム、装置及び(又は)ネットワークによって、前記データ処理システムに送信されるデータを受信するためのデータ受信器、及び、前記システム、装置及び(又は)ネットワークにデータを送信するためのデータ送信器を備えることができる。モデム、ケーブルモデム、及びイーサネット(登録商標)カードは、データ処理システム200に対して用いることができる異なるタイプのネットワーク・アダプターの例である。
メモリ素子204は、アプリケーションを格納することができる。格納されたアプリケーションは、実行可能なプログラムコードの形で実現される場合、データ処理システム200によって、例えば、プロセッサ202によって実行することができる。アプリケーションの実行に応じて、データ処理システムは、ここで説明する一つ又はそれ以上の動作を行うよう構成することができる。データ処理システム200は、さらに、アプリケーションの実行を容易にすることができるオペレーティングシステム(図示せず)を実行することができることを理解されたい。
一態様では、例えば、データ処理システム200は、クライアントデータ処理システムを代表することができる。その場合、格納されたアプリケーションは、それが実行されると、ここで「クライアント」を参照して説明する各種の機能を行うデータ処理システム200を構成するクライアントアプリケーションを代表することができる。クライアントの例には、パーソナルコンピュータ、ポータブルコンピュータ、モバイルホン等を含めることができるが、それらに限定されない。
別の態様では、データ処理システム200は、サーバーを代表することができる。例えば、データ処理システム200は、HTTPサーバーを代表することができ、この場合、メモリ素子204に格納されたアプリケーションは、実行されると、HTTPサーバー動作を行うデータ処理システム200を構成する。別の態様では、データ処理システム200は、安全性の高いサーバー、ソフトウェア・プロビジョニング・サーバー、又はキー生成サーバーを代表することができる。
RFシステム100内のRF通信は、含まれる送信エンティティ(すなわち、基地局102及び複数のノード108)のそれぞれが、システム100内の他のエンティティのうちのいずれかにデータを送信することができる時刻を指定するタイムスロット・スケジュールを生成し、かつ、維持するタイムスロット・スケジューラによって管理することができる。タイムスロット・スケジューラはまた、システム100内での通信用の複数のノード108のうちの一つ又はそれ以上のノードを登録することに対して責任を有している。ノードの登録とは、指定された時点でノードから基地局へデータを送信するため、M個のチャンネルのうちのいくつかをノードに割当てることを意味し、そのやり方は、システム100内でのデータのRF送信のためのFHSS変調構成の使用に関する法規が、遵守され、かつ、同時に同じチャンネルで送信するシステム100内の異なる送信エンティティによるデータの衝突及び干渉が、除去されるか、あるいは、最小限に抑えられるようなやり方で行われるものである。複数のノード108のうちの特定のノードが、基地局にデータを送信できる時間期間、及び、これらの期間のそれぞれにおいてノード108が送信に使用できる周波数チャンネルについての情報は、ここで、ノードに対する「割当て情報」と呼ぶ。システム100内で単一のエンティティを有する、タイムスロット・スケジューラは、登録済みノードのそれぞれに対して割当て情報を指定し、かつ、未登録のノード(すなわち、複数のノード108のうち、送信時刻/チャンネルが割当てられることによって行われる登録がまだ為されていないノード)に対して取ることが許される動作を規定することによって、異なるノード108と基地局102との間のデータの送信をコーディネート可能にするものである。
一実施形態では、このようなタイムスロット・スケジューラは、基地局102内に、具体的には、基地局102のマイクロコントローラ122内に、ソフトウェア、ハードウェア、又は、これらの組合せで実現して、含めることができる。しかしながら、他の実施形態では、このようなタイムスロット・スケジューラは、基地局102とは独立したエンティティ内に実現することができるが、ただしそれは、このようなエンティティが、基地局102と通信可能に接続されて、基地局が、タイムスロット・スケジューラによって与えられるタイムスロット・スケジュールに従って、システム100内の通信を管理できるようになっている場合に限る。例えば、タイムスロット・スケジューラの機能性を実現するこのような独立したエンティティは、例えば、異なるノードの登録を許可すべきかどうか、及び、タイムスロット・スケジュールをいかにして確立するかを決定する(例えば、タイムスロット・アセンブリ内のタイムスロットの持続時間及び特性等を設定する)ことができるオペレータの処理システム(図1に示さず)とすることができる。この場合、タイムスロット・スケジューラの機能性を実現するオペレータの処理システムは、データ処理システム200として実現することができる。
基地局102とノード108との間の能率的なメッセージの伝達には、時分割多重アクセス(TDMA)プロトコル等のスロッテド通信プロトコル(slotted communication protocol)が使用できる。この目的のため、タイムスロット・スケジューラは、プロセッサ(例えば、マイクロコントローラ122内のプロセッサ202)によって実行することができ、該スケジューラは、予め決定されたタイムスロット・スケジュールを生成又は受信するよう構成されている。一実施形態では、タイムスロットは、(TDMA)タイムフレーム内に組織化でき、スケジューラがネットワーク内のノード108と同期して処理する。タイムスロットは、予め決定された一定の持続時間を有することができ、例えば、以下に説明する図3では、持続時間1ミリ秒(ms)のタイムスロットが示されている。スケジューラは、タイムスロットをノードに割当てて、ノードが、送信(センド)状態、受信(リスン)状態及び休眠(アイドル)状態を含む予め決定された状態となるよう構成することができる。ノードに対するタイムスロットの割当ては、以下でより詳しく説明する。
したがって、おそらくはノードに対する割当て情報と共にタイムスロット・スケジュールによって、複数のノード108のうちの特定のノードが送信状態となるように規定されている場合は、ノードのプロセッサ(例えば、マイクロコントローラ110のプロセッサ202)は、ノードの通信モジュール(すなわち、トランシーバ112)に指示して、ノードの無線送信器を起動させ、かつ、特定の送信周波数チャンネルで送信するように該無線送信器を構成して、ノードが、例えば、センサーデータ及び(又は)ステータス情報を含むメッセージをそのチャンネルで送信できるようにすることができる。同様に、タイムスロット・スケジュールによって、ノードがデータ受信状態となるように規定されている場合は、ノードのプロセッサは、通信モジュールに指示して、ノードの無線受信器を起動させ、かつ、特定の周波数チャンネルで受信するよう該無線受信器を構成して、ノードが、その周波数チャンネルでメッセージを受信するようにすることができる。送信され、かつ、受信されたメッセージは、ノードのメモリ内、例えば、マイクロコントローラ110のメモリ素子204内のメッセージキュー上に格納することができる。
一実施形態では、ノードの通信モジュールは、一つ又はそれ以上の別個の周波数帯域で動作するよう構成することができる。その場合には、プロトコルは、通信のためノードに割当てられる周波数がノードに対する割当て情報によって指定される、異なる周波数分割マルチアクセス(FDMA)をサポートすることもできる。例えば、単一の大きいネットワークを一つ又はそれ以上のより小さなサブネットワークに分割することができ、その場合、一つ又はそれ以上のサブネットワーク内のノードは、異なる通信用周波数帯域を用いることができる。このやり方では、異なるサブネットワークに割当てられたノードは、他のサブネットワークの動作に干渉することなく、送信及び受信を行うことができる。
図3は、本発明の一実施形態に係るタイムスロット・スケジュール300の概略図である。タイムスロット・スケジュール300は、基地局102及びノード108によるデータの送信をコーディネートするためにタイムスロット・スケジューラによって生成び規定されるスケジュールの一例である。
図3における横破線302は時間を示す。時間ライン302は、1本の横線の列から次の列の横破線に続き、連続した列304、306、308、310、及び312として示されている。送信は、連続することができ、好ましくは、列312で示した時間を過ぎて(図3において、列312の下の3個のドットで示したように)連続するが、これは、図3においては、図面の簡潔さのため示していない。図3における各列は、1個のタイムスロット・アセンブリを示している。
タイムスロット・スケジューラは、少なくとも一組のM個のタイムスロット・アセンブリ、A1〜AM(AはAssembly<アセンブリ>のAである)を含むタイムスロット・スケジュールを規定し、Mは、FHSSを用いてデータを送信するのにノード108及び基地局102が用いるべきチャンネルの数である。以下、数Mは、上述と同じやり方で指定される。M個のタイムスロット・アセンブリは、図3においては、M=16の特定の場合に対する列304〜308で示してあり、列304は、第1のタイムスロット・アセンブリ、A1、を示し、列306は、第2のタイムスロット・アセンブリ、A2、を示し、列308は、第Mのタイムスロット・アセンブリ、AMを示している。列310及び312は、それぞれ、次の組のM個のタイムスロット・アセンブリにおける第1及び第2のタイムスロット・アセンブリ、A1及びA2、を示している。
指標「i」がM個のタイムスロット・アセンブリ内のタイムスロット・アセンブリの連番を指している各タイムスロット・アセンブリAiには、基地局102がデータを送信するための少なくとも一つのタイムスロット、TXbsi(TXbsはTransmission(TX) by base station<基地局による送信(TX)>のTXbsである)が含まれており、これらは、図3では、タイムスロット・アセンブリA1の場合は、タイムスロットTXbs1、タイムスロット・アセンブリA2の場合は、タイムスロットTXbs2、そして、タイムスロット・アセンブリA16の場合は、タイムスロットTXbs16として示してあり、また、Aiには、登録済みノードがデータを送信するためのR個のタイムスロット、TXrnk,i(TXrnはTransmission(TX) by registered node<登録されたノードによる送信(TX)>のTXrnである)が含まれている。指標「k」は、R個のタイムスロット内のタイムスロットの連番を指し、ここにRは、1に等しいか、あるいは、1より大きい整数である。指標「i」及び「k」のこのような使用は、本説明文全体を通して一貫しており、すなわち、これは、他の変数にも適用される。
図3の例では、各タイムスロット・アセンブリを、登録済みノードがデータを送信するためのタイムスロット6個を有する(すなわち、R=6)として示してあるが、しかし、もちろん、他の実施形態では、他の数のこのようなタイムスロットを含むことができる。図3では、タイムスロットTXrnk,iを、タイムスロット・アセンブリA1の場合は、タイムスロットTXrn1,1、TXrn2,1、TXrn3,1、TXrn4,1、TXrn5,1、及びTXrn6,1として示してあり、タイムスロット・アセンブリA2の場合は、タイムスロットTXrn1,2、TXrn2,2、TXrn3,2、TXrn4,2、TXrn5,2、及びTXrn6,2として示してあり、また、タイムスロット・アセンブリA16の場合は、タイムスロットTXrn1,16、TXrn2,16、TXrn3,16、TXrn4,16、TXrn5,16、及びTXrn6,16として示してある。したがって、規定されたチャンネル数が16であり、かつ、タイムスロットのそれぞれが1msであることと相俟って、図3に示す実施形態では、登録済みノードがデータを送信するための区間10ms当たり96個のスロット(96の値は、タイムスロット数6×利用可能なチャンネル数16で得られる)が割り当てられている。
好適な実施形態では、基地局102は、タイムスロットTXbsiの間に、ブロードキャスティングによってデータを送信する。このやり方で、ノード108の各ノードは、それが登録されていようといまいと、基地局102の送信を受信することができるが、ただしそれには、該ノードが、基地局102がそのとき送信する周波数チャンネルでデータを受信するよう同調されており、また、該ノードが、基地局102の送信を受信する範囲内に存在している場合に限る。
タイムスロット・スケジューラは、基地局102がタイムスロットTXbsi内でデータを送信する場合に従うべきチャンネル・シーケンスを指定するよう構成されており、このチャンネル・シーケンスは、ここで、「基地局シーケンス」又は「BSS」と称する。基地局シーケンスは、基地局102が、FHSSの使用に関する法規を遵守するため、データの送信に当たり従わねばならないM個のチャンネルのシーケンスである。上述のように、現在の法規に従ってFHSSに許されているより高い電力でデータを送信する能力を利用するためには、送信は、M個のチャンネルのシーケンスに亘ってホッピングすること(すなわち、M個のチャンネルのそれぞれで順次に送信すること)によって行わねばならず、ここで、各チャンネルの送信の持続時間は、ドウェルタイムより長くない。
一実施形態では、タイムスロット・スケジューラは、基地局シーケンスを、チャンネルCH1〜CHMの連続したシーケンスとしてのみ規定することが可能である。しかしながら、他の実施形態では、他の任意のやり方で、チャンネルCH1〜CHMのシーケンスを設定することができる。例えば、タイムスロット・スケジューラは、擬似ランダムアルゴリズムを用いて、基地局シーケンスを規定することができる。一実施形態では、GPS受信器からの時刻の値を擬似ランダムアルゴリズムのシードとして用いることができる。
基地局は、生成された基地局シーケンスのチャンネルに従って(すなわち、該チャンネルで送信して)、タイムスロットTXbsi内でデータを送信する。ここで前述したように、法規では、エンティティが、単一のチャンネルにおいて、シーケンスの次のチャンネルに切り換える前に、どのくらい長く送信することが許されるかが規定されている。基地局がデータを送信するための2個又はそれ以上の連続したタイムスロットが、許されたドウェルタイムより少ない時間しか取らないよう、タイムスロット・アセンブリのタイムスロットが選択される場合は、基地局は、これらの連続した2個又はそれ以上のタイムスロットの持続時間に亘って、単一のチャンネルでデータを送信することができる。しかしながら、これがたとえそうであっても、単に、M個のタイムスロット・アセンブリの各タイムスロット・アセンブリの間に、送信チャンネルを切り替えて、基地局シーケンスの新しいチャンネルで送信するよう基地局を構成することにより、単一のチャンネルでの送信が許されたドウェルタイム以下に抑えられるような方式を取る方が、スケジューリング及び制御が、より容易となる場合がある。そこで、基地局は、基地局シーケンスの第1のチャンネルにおいて、タイム・アセンブリA1内で(指定されたタイムスロット、この場合TXbs1の間に)送信し、次いで、基地局シーケンスの第2のチャンネルにおいて、タイム・アセンブリA2内で(指定されたタイムスロット、この場合TXbs2の間に)送信する、等々の動作を行うことになろう。すなわち、基地局が、タイムスロット・アセンブリA1〜AMに亘り、利用可能なM個のチャンネルの各チャンネルで1回送信する方式を実行するのは容易である。各タイムスロットTXbsiの持続時間は、図3の例に示すように、許されたドウェルタイム、例えば、1msよりはるかに短くすることができるが、しかしながら、基地局が全送信チャンネルに亘って速くホッピングするようにすれば、さらに利益が得られ、例えば、新しいRFノードの基地局に対するより速い同期化、及び、当該送信チャンネルで動作する有り得る他の装置に対する(からの)より少ない干渉の点でさらに利益が得られる。
基地局が、特定の基地局シーケンスのチャンネルの全てを使用した後、或る実施形態では、基地局は、同じ基地局シーケンスを再び開始することによって、データを送信し続けることができる。しかしながら、他の実施形態では、タイムスロット・スケジューラは、使用された最後のシーケンスとは異なる基地局シーケンスを規定することができる。これは、例えば、以前のシーケンスを生成するのに使用されたシードの値を変更し、かつ、変更されたシードの値を用いて、新しい擬似ランダム基地局シーケンスを生成することによって行うことができる。このような実施形態は、よりランダムなアクセス・パターンを与えて、一つ又はそれ以上のチャンネルに対する定期的な干渉の影響を減らすことができるので、特に有利である場合がある。
各タイムスロット・アセンブリ内のR個のタイムスロットTXrnk,iは、登録済みノードが、データを基地局102に送信するのに用いられる。ノードは、タイムスロット・スケジューラによって、該ノードが、タイムスロット・アセンブリM個のうちの少なくともいくつかにおいて、データを基地局102に送信するための送信タイムスロット及び送信チャンネルを割当てられるとき、登録済みノードと見なされる。好適な実施形態では、登録済みノードに対する割当て情報によって、M個のタイムスロット・アセンブリの各タイムスロット・アセンブリに対する送信タイムスロット及びチャンネルを指定する。1個のノードには、各タイムスロット・アセンブリ内のデータを送信するためのR個のタイムスロットのうち、一つ又はそれ以上を割当てることができるが、ただしそれには、ノードが或る一つのチャンネルで(例えば、各タイムスロット・アセンブリのタイムスロット6個の持続時間に亘って)送信するとき、該タイムスロットは、該チャンネルでの合計の送信時間が、許されたドウェルタイムを超えないような持続時間のものであることが条件である。
好適な実施形態では、各登録済みノードにおいて、異なるタイムスロット・アセンブリ内でデータの送信のためノードに割当てられるチャンネルは、M個のチャンネルのうちの異なるチャンネルである。これは、各ノードが、M個の利用可能なチャンネルの各チャンネルを、M個のタイムスロット・アセンブリA1〜AMの持続時間に亘って1回、使用することを保証する。これは、上述の、基地局についての好適な実施形態の場合と同様であり、各タイムスロット・アセンブリ内では、ノード及び基地局は、共に、それらのデータを送信するのに異なるチャンネルを使用する。基地局について行った説明の場合と同じく、この実施形態は、好適であるが、必須のものではなく、他の実施形態も想定でき、登録済みノードのうちのいくつか、又は、全てが、連続したタイムスロット・アセンブリのうちの2個又はそれ以上において、それらの割当てられたタイムスロットの間に、同じチャンネルでデータを送信するようチャンネルを割当てられていても、本出願の範囲内である。なお、個々の登録済みノードが、任意の時点において、特定のチャンネルでデータを送信するよう構成され、かつ、個々のチャンネルにおける該ノードによる送信が、FHSSの使用に対して指定できる許されたドウェルタイムを超えないやり方で、送信チャンネル及びタイムスロットが、登録済みノードに割当てられる限り、タイムスロット及びチャンネルを登録済みノードに割当てるいかなるやり方でも、本発明の範囲内である。
タイムスロット・スケジューラは、登録済みノード108のそれぞれが、タイムスロット TXrnk,i内でデータを送信するのに従うべきチャンネル・シーケンスを指定するよう構成されており、このチャンネル・シーケンスは、ここで、「ノード・シーケンス」もしくは、「NS」と呼ぶ。ノード・シーケンスは、登録済みノードが、データの送信に当たり、FHSSの使用に関する法規を遵守するため従わねばならないM個のチャンネルのシーケンスである。ノード・シーケンスは、登録済みノードの各ノードについて完全に異なっていてよい。ここで使用される2つのシーケンスは、シーケンス・メンバーの順序が異なる場合、「異なる」と見なされる。例えば、M個のチャンネルCH1〜CHMのシーケンスCH1、CH2、CH3、..、CHM−1、CHMは、同じM個のチャンネルのシーケンスCH2、CH3、CH4、..、CHM、CH1とは異なる。登録済みノードの一つ又はそれ以上についてのノード・シーケンスは、特定の時間に基地局が従う基地局シーケンスと異なることはできるが、しかし、異なることは要求されない。
基地局シーケンスの場合と同様、一実施形態では、タイムスロット・スケジューラは、特定のノードに対するノード・シーケンスを、単に、チャンネルCH1〜CHMの連続したシーケンスとして規定することができる。しかしながら、他の実施形態では、チャンネルCH1〜CHMのシーケンスを設定するのに、任意の他のやり方が使用できる。例えば、タイムスロット・スケジューラは、擬似ランダムシーケンス生成器を用いて、ノード・シーケンスを規定することができる。このような実施形態では、ノードIDをシードとして用いてノード・シーケンスを生成することにより、各ノードは、異なるノード・シーケンスを有することが保証される。
図4は、本発明の一実施形態に係る、送信タイムスロット及びチャンネルの登録済みノードへの割当てを示す概略図である。この、登録済みノードへの割当ての具体的な例によれば、3Dマトリクスが生成される。3DマトリクスのX、Y、及びZは、それぞれ、図4の挿入図402に示したX、Y、及びZ座標のR、M、Mであり、X軸は、図面の平面内の横軸、Y軸は、図面の平面内の縦軸、Z軸は、図面の平面に対して直角であり、また、図示のように、Z軸は、破線で示してある。ここで、本説明文以降において、変数R及びMを一貫して用いており、したがって、上記のR個のタイムスロット及びM個のチャンネルに関する考察の全ては、以下でも同様に当てはまる。
この具体的な例は、基地局が、タイムスロット・アセンブリA1〜AMのそれぞれにおけるM個のチャンネルCH1〜CHMのうちの異なるチャンネルにおいて、特定の基地局シーケンスを用いてデータを送信し、一方、登録済みノードのそれぞれは、M個のタイムスロット・アセンブリA1〜AMのそれぞれにおけるM個のチャンネルCH1〜CHMのうちの異なるチャンネルにおいて、特定のノード・シーケンスを用いてデータを送信する実施形態の場合の例である。したがって、或る一つのタイムスロット・アセンブリから次のそれまで、基地局及び登録済みノードのそれぞれは、共に、それらのそれぞれのシーケンスにおいて、送信チャンネルを次のチャンネルに切換え、したがって、送信するエンティティのそれぞれ(すなわち、基地局及び登録済みノードのそれぞれ)が、M個のタイムスロット・アセンブリA1〜AMの持続時間に亘り、M個のチャンネルCH1〜CHMの各チャンネルを正確に1回使用することが保証される。
3DのR×M×Mマトリックスのうち、X方向は、登録済みノードがデータを基地局に送信するタイムスロット・スケジュールにおいて、タイムスロット・スケジューラによって指定されるR個のタイムスロットの順次的なタイムスロットを指すのに用いられ、Y方向は、ノード・シーケンスのM個のチャンネルを指すのに用いられ、また、Z方向は、基地局シーケンスのM個のチャンネルを指すのに用いられる。
この例の説明を簡単にするため、マトリックスを3Dで示す代わりに、3DマトリクスのZ方向のM個の平面のうち2平面を、2Dテーブル404及び2Dテーブル406で示す。
テーブル404は、Z=1に対して取られた3Dマトリクスの2D平面を示す。この例では、基地局及びノードのそれぞれは、それらの送信チャンネルを或る一つのタイムスロット・アセンブリから次のそれに切り換えるので、「チャンネル・シーケンス指標」(CSI)の用語を用いて、アセンブリA1〜AMのうちの特定のタイムスロット・アセンブリAiを識別することができる。したがって、Z=1は、CSI=1を意味し、これは、2Dテーブル404が、タイムスロット・アセンブリA1用の送信スケジュールを指すことを意味する。
テーブル406は、Z=2(すなわち、CSI=2)に対して取られた3Dマトリクスの2D平面を示し、これは、2Dテーブル406が、タイムスロット・アセンブリA2用の送信スケジュールを指すことを意味する。Z方向に伸びる後続の平面として、テーブル404及び406と同様のCSI=3、4、5、...に対するテーブルが含まれているが、これは、簡単のため、図4には示していない。
この具体的な例では、M個のチャンネルCH1〜CHMのうちの異なるチャンネルのシーケンスNS1が規定されているが、これは、同じM個のタイムスロット・アセンブリに亘り基地局によって使用される基地局シーケンスと同じである場合もあり、あるいは、それと付けられる場合もある。テーブル404に示すように、テーブルの列1〜Mは、シーケンスNS1のチャンネルの各チャンネルにおける送信を指す(すなわち、テーブル404の左側で分かるように、テーブル404の第1の列は、NS1の最初(1st)のチャンネルにおける送信を指し、第2の列は、NS1の2番目(2nd)のチャンネルにおける送信を指す、等々)、一方、欄1〜Rは、単一のタイムスロット・アセンブリ内のR個のタイムスロットの各タイムスロットにおける送信を指す。
TRslotc,k(TRslotはTransmission slot<送信スロット>のTRslotである)として示される、テーブル404における列と欄の交差点は、いわゆる「送信スロット」と呼ばれ、ここで、指標「c」は、テーブルにおける列番号を指し、したがって、送信チャンネルを示し、一方、指標「k」は、R個のタイムスロット内のタイムスロットの連番(変数TXrnk,iの場合と同じ)を指し、したがって、送信時刻を示す。テーブル404の各送信スロットTRslotc,kにおいては、登録済みノードの識別子を格納することができ、したがって、登録済みノードが、どのチャンネルで、また、どの時刻に、基地局にデータを送信することができるのかについての、第1のタイムスロット・アセンブリA1に対するスケジュールが得られる。例えば、送信スロットTRslot1,1は、登録済みノードAの識別子を格納し、送信スロットTRslot2,1は、登録済みノードBの識別子を格納し、送信スロットTRslot3,1は、登録済みノードCの識別子を格納し、送信スロットTRslot1,2は、登録済みノードDの識別子を格納し、また、送信スロットTRslot2,2は、登録済みノードEの識別子を格納することを考える。ノードA〜Eのそれぞれは、複数のノード108のうちの異なるノードであり、かつ、それらは、3Dマトリクスにおいて、送信時間及びチャンネルが割当てられているため、「登録され」ている。ノードA、B、及びCは、それぞれ、送信スロットTRslot1,1、TRslot2,1、及びTRslot3,1を割当てられており、これは、タイムスロット・アセンブリA1内で、ノードA、B、及びCが、それぞれ、R個のタイムスロットのうち第1のタイムスロットの持続時間に亘り、チャンネルシーケンスNS1の最初の(1st)、2番目の(2nd)、及び3番目の(3rd)チャンネルで、基地局にデータを送信することが許されることを意味する。ノードD及びEは、それぞれ、送信スロットTRslot1,2及びTRslot2,2を割当てられているが、これは、タイムスロット・アセンブリA1内で、ノードDは、R個のタイムスロットのうち、第2のタイムスロットの持続時間に亘り、チャンネルシーケンスNS1の最初の(1st)チャンネルで、基地局にデータを送信することが許され、一方、ノードEは、R個のタイムスロットのうち、同じ第2のタイムスロットの持続時間に亘り、チャンネルシーケンスNS1の2番目の(2nd)チャンネルで、基地局にデータを送信することが許されることを意味する。ノードA〜Eの割当ては、2つ又はそれ以上のノードが、同じタイムスロットにおいてそれらのデータを送信しても、それらの送信は、干渉しないことを保証するものである。なぜなら、これらのノードのそれぞれは、異なるチャンネルで送信し、例えば、ノードA、B、及びCは、それぞれ、R個のタイムスロットのうちタイムスロット1で、基地局にデータを送信することができるが、それらは、シーケンスNS1の異なるチャンネルを用いて送信するようチャンネルを割当てられているからである。同様に、ノードA〜Eの割当ては、2つ又はそれ以上のノードが、同じチャンネルでそれらのデータを送信しても、それらの送信は、干渉しないことを保証するものである。なぜなら、これらのノードのそれぞれは、異なるタイムスロットで送信し、例えば、ノードA及びDは、それぞれ、シーケンスNS1の第1の(1st)チャンネルを用いて、基地局にデータを送信することができるが、それらは、R個の利用可能なタイムスロットのうち、異なるタイムスロットにおいて送信するようチャンネルを割当てられているからである。
上述のやり方で、M×R個のノードに、単一のタイムスロット・アセンブリ内の送信スロットを割当てることが、原則として、可能である。M=16及びR=6の場合は、これは、96個の異なる登録済みノードが、単一のタイムスロット・アセンブリ内で、それらのデータを基地局に送信することができることを意味する。利用可能なM×R個のうちのどの個々の送信スロットも登録済みノードに割当てれば、利用可能なタイムスロットR及び利用可能なチャンネルMを最大限に利用することはもちろんできようが、各送信スロットを一つのノードに割当てる必要はない。さらに、割当てテーブル404は、同じノードのIDを2つ以上の送信スロットに含むことができるが、ただしそれは、一つの欄で、同じIDに2回以上出会わないことが条件である(言い換えれば、テーブル404において、同じIDに異なる欄で出会う限り、そのIDに2回又はそれ以上の回数出会ってもよい)。したがって、同じIDは、テーブルの単一の列内では複数回出会ってもよいが、それは、単一の欄内では、許されない。したがって、単一のノードは、単一のタイムスロット・アセンブリの間に、より長い期間(R個のタイムスロットのうちの単一のタイムスロットの持続時間より長い期間)データを送信することが許されることになる。例えば、ノードFが、送信スロットTRslotM,1、TRslotM,2及びTRslotM,3に割当てられることによって登録されている場合は(この場合、Rは、3に等しいか、あるいは、3より大きい)、ノードFは、単一のタイムスロット・アセンブリ内で利用可能なR個のタイムスロットのうちの第1、第2、及び第3の(1st,2nd,3rd)タイムスロットの持続時間に亘り、シーケンスNS1のM番目のチャンネルで、データを送信することができることを意味する。
ここで、テーブル406に移動すると、図4の例示的な割当て図では、テーブル406は、上記と同じ送信スロットTRslotc,kを含んでいる。事実、この例では、これらの送信スロットに格納されているノードIDは、テーブル404におけるのと同じ送信スロット内の同じIDであることが想定されている。テーブル406で異なっているのは、テーブル406の列が指すチャンネルのシーケンスである。簡単な実施形態では、テーブル406における列に対するチャンネルのシーケンスは、テーブル404における列に対するチャンネルのシーケンスに比べて、一つだけ移動させることができる。このことは、テーブル406の左側に図解されており、その図解から分かるように、この図では、テーブルの第1の列は、NS1の2番目の(2nd)チャンネルでの送信を指し、第2の列は、NS1の3番目の(3rd)チャンネルでの送信を指す、等々であって、最後から一つ前の列は、NS1のM番目の(Mth)チャンネルでの送信を指し、最後の列は、NS1の最初のチャンネルでの送信を指している。このような割当ての結果として、ノードAは、今や、次のタイムスロット・アセンブリ、すなわち、アセンブリA2の第1のタイムスロットにおいて、以前のタイムスロット・アセンブリA1におけるのとは異なるチャンネルで、基地局にデータを送信するようチャンネルを割当られる。タイムスロット・アセンブリA2では、ノードAは、第1のタイムスロットにおいて、シーケンスNS1の2番目の(2nd)チャンネルでデータを送信することができる。
上で提供された教示は、Z方向におけるR×M×M個のマトリックスの残りの(M−2)個のテーブル(すなわち、図4に示したテーブル404及び406以外のテーブル)に対して拡張でき、そこでは、これらのテーブルのそれぞれに対して、アセンブリA3〜AMのうち特定のタイムスロット・アセンブリの割当てが行われる。
後続の(M−2)個のテーブル406の列が指すチャンネルのシーケンスが、1だけ移動し続ける限り、ノードAは、タイムスロット・アセンブリA3の第1のタイムスロットの間に、シーケンスNS1の第3の(3rd)チャンネルで送信するようチャンネルを割当られ、タイムスロット・アセンブリA4の第1のタイムスロットの間に、シーケンスNS1の第4の(4th)チャンネルで送信するようチャンネルを割当られる、等々の動作が行われるであろう。このやり方で、ノードAは、M個のタイムスロット・アセンブリA1〜AMに亘り、利用可能なR個のタイムスロットのうち、第1のタイムスロットにおける送信のためのシーケンスNS1に従う。このやり方で、ノードAは、M個のタイムスロット・アセンブリA1〜AMに亘り、M個のチャンネルの各チャンネルで、正確に1回、送信を行う。
同様に、ノードBは、タイムスロット・アセンブリA3の第1のタイムスロットの間にシーケンスNS1の第4の(4th)チャンネルで送信するようチャンネルを割当られ、タイムスロット・アセンブリA4の第1のタイムスロットの間にシーケンスNS1の第5の(5th)チャンネルで送信するようチャンネルを割当られる、等々の動作が行われるであろう。このやり方で、ノードBも、M個のタイムスロット・アセンブリA1〜AMに亘り、M個のチャンネルの各チャンネルで、正確に1回、送信することが保証されるが、ノードBは、ノードAとは異なるチャンネルのシーケンスに従うことになる。すなわち、ノードBは、そのチャンネルのシーケンス、すなわち、シーケンスNS1の2番目のチャンネル、シーケンスNS1の3番目の(3rd)チャンネル、...シーケンスNS1のM番目の(Mth)チャンネル、シーケンスNS1の最初のチャンネル1に従うことになる。したがって、同じ欄の送信スロットに割当てられた登録済みノードのそれぞれ(すなわち、R個のタイムスロットのうち、同じタイムスロット内で送信するようチャンネルを割当られたノード)は、M個のタイムスロット・アセンブリA1〜AMに亘り、送信用のM個のチャンネルの異なるシーケンスに従う(これらの異なるシーケンスは、シーケンスNS1に関係付けることができるが、この例における関係は、シーケンスが、互いに他に対して遷移し、かつ、シーケンスNS1に対して遷移する、というものである)。一方、同じ列の送信スロットに割当てられた登録済みノードのそれぞれ(すなわち、各タイムスロット・アセンブリ内の同じチャンネルで送信するようチャンネルを割当られたノード)は、M個のタイムスロット・アセンブリA1〜AMに亘り、送信用のM個のチャンネルの同じシーケンスに従う。
図4に関して行った、登録済みノードに対する送信タイムスロット及びチャンネルの割当ての上述の説明は、全て本発明の範囲内である多くの異なる可能的な割り当てのうちのほんの一つの有り得る例の説明であるが、これらの割当てが満たすべき必要条件として、登録済みノードが、各タイムスロット・アセンブリ内でのこのような送信のために指定されたR個のタイムスロット内でのみ、基地局にデータを送信すること、登録済みノードのそれぞれが、データの送信用のチャンネルCH1〜CHMのうち、M個の異なるチャンネルのシーケンスに従うこと(可能的には、ドウェルタイムの制限が適用される場合、各チャンネルにおける送信をある一定の期間に限定すること)、2個又はそれ以上の登録済みノードが、同じ期間内でデータを送信するようチャンネルを割当てられる場合、これらのノードが、それらのそれぞれの(すなわち、異なる)チャンネルで送信するようチャンネルを割当てられること、がある。
図3に戻ると、オプションとして、各タイムスロット・アセンブリAiは、未登録のノードがデータを送信するためのU個のタイムスロット、TXunj,i(TXunはTransmission(TX) by unregistered node<未登録のノードによる送信(TX)>のTXunである)も含んでおり、ここで使用されている指標「j」は、(可能的には他の変数の場合も、)U個のタイムスロット内のタイムスロットの連番を指し、Uは、1に等しいか、あるいは、1より大きい整数である。このような実施形態は、未登録のノードが、登録を要求する、すなわち、タイムスロット・アセンブリA1〜AMのR個のタイムスロットのうちの一つの中で該ノードがデータの送信を行うための時刻/チャンネルの割当てを要求することを可能にする点で、特に有利であろう。この実施形態は、タイムスロット・スケジューラによるノードの登録が、例えば、特定の設定で展開する場合に、システム100を再構成する等、他のやり方で実現することもできるため、オプショナルであり、使用される可能性の有るノード108の全てに、定刻前に、データの送信のための時刻/チャンネルが割当てられ、それは、可能的には、そのようなノードが、後で基地局102との通信を必要とするかどうかとは、無関係に行われる。なお、当業者であれば、タイムスロット・スケジューラでノードを登録するのに、他のやり方を想定することができよう。
図3の例は、未登録のノードがデータを送信するためのタイムスロットが、各タイムスロット・アセンブリに3個有る(すなわち、U=3)場合を示しているが、もちろん、他の実施形態において、このようなタイムスロットを他の個数含むことができる。図3では、タイムスロットTXunj,iは、タイムスロット・アセンブリA1については、タイムスロットTXun1,1、TXun2,1、及びTXun3,1として、タイムスロット・アセンブリA2については、タイムスロットTXun1,2、TXun2,2、及びTXun3,2として、また、タイムスロット・アセンブリA16については、タイムスロットTXun1,16、TXun2,16、及びTXun3,16として示してある。したがって、規定されたチャンネルが16個、かつ、タイムスロットのそれぞれが1msであることと相俟って、図3に示す実施形態では、10msの区間当たり、未登録のノードがデータを送信するためのスロットが48個、割り当てられる(48の数字は、タイムスロット3個×利用可能なチャンネル16個で得られる)。
一実施形態では、登録の要求は、下記のように行うことができる。未登録のノードが、登録済みの状態になるためには、該ノードは、擬似ランダムアルゴリズム(例えば、ノードの一意的なノードIDでシードした)を用いて、未登録のスペースから一つのスロット(すなわち、タイムスロットTXunj,iのうちの一つ)を選択し、基地局102に「アナウンス」パケットを送信して、登録を要求することができる。基地局102は、このパケットをタイムスロット・スケジューラに転送し、次いで、タイムスロット・スケジューラは、登録されたスペース内の一つ又はそれ以上のタイムスロットをこのノードに割当てる(かつ、例えば、基地局が次のタイムスロット・アセンブリにおけるデータを送信する次の時刻等の情報を、それを要求しているノードに対して、基地局102に提供させる)ことによって、このノードの登録を許すか、あるいは、基地局102に、このノードに対する登録が拒否されたとの情報を送信させることによって、登録を拒否する決定を下すことができる。
上述のようなタイムスロット・スケジュール、並びに、登録済みノードに対する割当て情報は、基地局102からノード108に配布されることになる。これは、基地局102が、基地局送信のために指定されたタイムスロット・アセンブリのタイムスロット内で(すなわち、タイムスロットTXbsi内で)この情報を送信することによって、行うことができる。簡単のため、基地局がデータを送信するタイムスロットは、タイムスロット・アセンブリ当たり、1個しかない、と仮定しよう。さらに、基地局102が、基地局のチャンネルのシーケンスのうち、新しい送信チャンネルを用いて、M=16及びR=6を有するM個のタイムスロット・アセンブリA1〜AMのそれぞれの間に送信を行う上述の具体的な例に対して、以下の説明(図5〜6参照)を行う。
一実施形態では、基地局102は、データを、好ましくは、ブロードキャスティングによって、予め規定されたデータ構造の形態のパケットとして、送信するよう構成することができる。基地局102から受信したデータを解読できるようにするため、ノード108は、基地局パケットに使用されたデータ構造について十分な情報を有するよう構成することができる。
図5は、本発明の一実施形態に係る例示的な基地局パケット502、504、及び506の概略図を示す。パケット502は、基地局が、特定の基地局シーケンス、BSS1に従う場合、基地局102が、16個のタイムスロット・アセンブリA1〜A16のうちの第1のタイムスロット・アセンブリA1の間に送信するパケットP1,BSS1である。パケット504は、基地局が、特定の基地局シーケンス、BSS1に従う場合、基地局102が、16個のタイムスロット・アセンブリA1〜A16のうちの第2のタイムスロット・アセンブリA2の間に送信するパケットP2,BSS1である。パケット506は、基地局が、特定の基地局シーケンス、BSS1に従う場合、基地局102が、16個のタイムスロット・アセンブリA1〜A16のうちの最後のタイムスロット・アセンブリA16の間に送信するパケットP16,BSS1である。これらのパケットの説明から、当業者は、タイムスロット・アセンブリA1〜AMのこの組(すなわち、基地局がシーケンスBSS1に従う組)におけるタイムスロット・アセンブリのためのパケットの残りばかりでなく、M個のタイムスロット・アセンブリの他の組(例えば、基地局がシーケンスBSS2、すなわち、図3において、基地局パケットが、タイムスロット・アセンブリ310及び312内のパケットP1,BSS2及びP2,BSS2として示されているシーケンスに従う組)のためのパケットの残りがどのように構成され、かつ、それらが、いかなるデータを含むことになるか、容易に認識することができるであろう。また、パケット502、504、及び506が、一般に、他のデータ/フィールド(例えば、ヘッダー等、図5では図示されていないもの)も含むことにも注目すべきである。図5のパケットの説明は、主として、基地局102によって送信されるパケットに含まれるペイロードの説明に係るものである。
図から分かるように、基地局パケットは、パケット502、504、及び506のそれぞれの中にフィールド508として示す少なくとも一つのフィールドを含んでおり、基地局102がデータの送信のため従っている現在の基地局シーケンス(この場合は、シーケンスBSS1)の識別子が提供される。このような識別子には、例えば、シーケンスBSS1を生成するため、擬似ランダムアルゴリズムによって用いられるチャンネル・シーケンスのシード値(例えば、0から65535までの値)を含めることができる。基地局パケットにこの識別子を含めることは、基地局が従っているチャンネルのシーケンスを、パケットを受け取るノードが再構成できるようにするものであり、その結果、該ノードは、次いで、決定された基地局シーケンスに従って基地局が送信しているチャンネルでデータを受け取るように該ノードの受信器を構成することにより、基地局から後続のパケットを受け取ることができる。
また、図から分かるように、基地局パケットは、パケット502、504、及び506のそれぞれの中に、フィールド510として示すフィールドを、オプショナルに含むことができ、現在のチャンネルシーケンス指標(すなわち、基地局が、基地局シーケンスBSS1内のどのチャンネルを用いて、現在のパケットを送信しつつあるのかを示すCSIであって、これは、この例ではM=16であるため、1〜16の指標とすることができる。)の識別子が提供される。このフィールドは、どのチャンネルでパケットを受信したのかを識別するだけで、ノードが、それら自身でこの情報を得ることもできるため、オプショナルである。
基地局パケットは、図5の例ではパケット502、504、及び506のそれぞれの中の6個のフィールド512として示したように、登録済みノードのうちの少なくともいくつかについての割当て情報を含む一つ又はそれ以上のフィールドをさらに含むことができる。基地局102からノード108への割当て情報の提供については、異なるやり方も想定できるが、それらは全て、本発明の範囲内である。例えば、一実施形態では、登録済みノードの全てについての現在の割当て情報の全てを、M個のタイムスロット・アセンブリA1〜AMに亘り、等しく分割して、M個のタイムスロット・アセンブリの一組の持続時間内に送信することができる。割当て情報の全てをM個のタイムスロット・アセンブリの間で分割すれば、各基地局パケットには、登録済みノードの一部についてのみの情報しか含まれないため、基地局パケットの長さを最小限に抑えることができる。このような場合には、登録済みノードの全てについての割当て情報を送信するためには、M個のタイムスロット・アセンブリA1〜AMの全一組が使用される(図3の例では、割当て情報の全てを送信するためには、160ms掛かる)。さらなる実施形態では、次の組のM個のタイムスロット・アセンブリにおいて、再度、このやり方で割当て情報を送信することができる。このような実施形態では、割当て情報は、登録済みノードのうちの少なくともいくつかが、既にそれらの割当て情報を所有している可能性が有るにもかかわらず、送信される。このような実施形態は、例えば、割当て情報が変わる場合に、有利なこともある。なぜなら、登録済みノードが、定期的に(すなわち、それらの割当て情報を有する新しい基地局パケットが受信されたとき)、それらが所有する割当て情報が、依然として有効であること、また、必要なら、その情報を更新すべきことを確認できるからである。他の実施形態では、割当て情報は、必要に応じて、すなわち、新しいノードが登録された場合のみ、送信することができる。このような実施形態は、データの送信量がより少ない(すなわち、M個のタイムスロット・アセンブリの全ての組における割当て情報の全てが送信されるのではない)ため、ネットワークのトラフィックロードが減る結果、有利なこともある。
図5に示した6個のフィールド512は、送信タイムスロット及びチャンネルの割当てが、図4の例で説明したように行われる場合、ノードに対する割当て情報を送信する上で、特に有利な実施形態を示すものである。上述のように、図4の例では、送信スロットTRslotc,kは、個々のノードIDを含んでおり、送信は、少なくとも一組のタイムスロット・アセンブリA1〜AM内の、或る一つのタイムスロット・アセンブリから次のそれまで、特定の登録済みノードに割当てられた送信スロットが、同じままである、というやり方で組織化されている。したがって、このようなスケジュールは、96個のノードを、96個(M=16及びR=6のため96個)の利用可能な送信スロットのうちの一つに割当てることによって、登録済みノードとして識別することができる。したがって、各種の登録済みノードに対する割当て情報は、基地局パケット内で、一列々々送信することができ(ここで、「列」は、図4で示した列を指す)、M個のタイムスロット・アセンブリの組の各基地局パケットは、送信スロットテーブルTRslotc,kの異なる列に含まれる複数のノードIDのRNIDc,kを含んでいる(RNIDはRegistered Node Identification name<登録済みノードの識別子>)(特定の指標を有するRNIDは、同じ指標を有する送信スロットTRslotに格納されているノードの識別子を指す)。したがって、パケット502に示すように、第1のパケットP1,BSS1は、6個のフィールド512に亘り均等に配布されたノードIDのRNID1,1〜RNID1,6を含んでおり、ノードIDのRNID1,1〜RNID1,6は、図4に示すように、送信スロットTRslot1,1〜TRslot1,6(すなわち、図4に示すテーブルの第1の列<Rは、図5の例では、6に等しい>)に格納されている。また、パケット504に示すように、第2のパケットP2,BSS1は、6個のフィールド512に亘り均等に配布されたノードIDのRNID2,1〜RNID2,6を含んでおり、ノードIDのRNID2,1〜RNID2,6は、図4に示すように、送信スロットTRslot2,1〜TRslot2,6(すなわち、図4に示すテーブルの第2の列<Rは、図5の例では、6に等しい>)に格納されている。また、パケット506に示すように、最後のパケットP16,BSS1は、6個のフィールド512に亘り均等に配布されたノードIDのRNID16,1〜RNID16,6を含んでおり、ノードIDのRNID16,1〜RNID16,6は、図4に示すように、送信スロットTRslot16,1〜TRslot16,6(すなわち、図4に示すテーブルの第16の列<Mは、図5の例では、16に等しい>)に格納されている。
このやり方で、16個の周波数チャンネル、及び図3に図解したタイムスロット・スケジュール(すなわち、基地局パケット用のタイムスロット1個、登録済みノードからの送信のためのタイムスロット6個、及び未登録のノードからの送信のためのタイムスロット3個を有し、各タイムスロットは、長さ1msである)に対して、登録済みノードの全てに対する現在の割当て情報の全てを送信するには、16×10ms=160ms掛かる。
基地局パケットは、さらに、パケット502、504、及び506のそれぞれの中に、図5の例では2つのフィールド514として示した一つ又はそれ以上のフィールドを含んでおり、これらには、登録を拒否されたノード(すなわち、基地局にデータを送信するためのタイムスロット・スケジュールにおける送信スロットが拒否されたノード)の識別子が含まれている。図5における各基地局パケットのフィールド514は、UNID1及びUNID2(UNIDはUnregistered Node Identification name<未登録のノードの識別子>)として示す、登録を拒否された、未登録のノードのIDをそれぞれ1個含んで示されている。しかしながら、他の実施形態では、これらのフィールドは、登録を拒否されたノードの識別子を2個以上含むことができる。
基地局パケットは、パケット502、504、及び506のそれぞれの中に、図5の例では4個のフィールド516として示した一つ又はそれ以上のフィールドをさらに含むことができ、それぞれ、特定の登録済みノードのうち、一つ又はそれ以上のものに向けられたデータを含んでいる。図5における各基地局パケットのフィールド516のそれぞれは、個々の登録済みノードに対するデータを含んで示されており、それぞれ、data1、data2、data3、及びdata4として示されている。しかしながら、他の実施形態では、これらフィールドのそれぞれは、単一の登録済みノード2個以上に向けられたデータを含むことができる。ここで、「或る一つのノードに向けられたデータ」という文脈の中で使用されている「向けられた」の語は、具体的には、基地局102からその特定のノードに対して通信されると思われるデータを記述するのに用いられている。このような向け先は、例えば、ノードの一意的な識別子を、そのノードに対して通信したい実際のデータと関連付けて与えることによって、フィールド516内で識別することができる。別法として、このような向け先は、そのノードに割当てられた送信スロットの識別子を与えることによって識別でき、この識別子は、例えば、ノードの一意的な通し番号より短いことがある。例えば、パケットP1、BSS1の第1のフィールド516におけるデータがノードBに向けられていることを識別するため、そのフィールドに、ノードBを識別する「TRslot2,1」を含めることができる。登録済みノードは、それらの割当て情報を所有しているので、それらは、それらに割当てられた送信スロットを区別でき、したがって、それらに向けられたデータが、このやり方で識別されるとき、該データを検出することができることになる。フィールド516に与えられている個々の登録済みノードに向けられたデータは、例えば、車両のオンボード・ディスプレイに表示されるラップタイム情報に関わるCANパケットデータを含むことができる。一実施形態では、(可能的には、異なるタイムスロット・アセンブリの間の)フィールド516のそれぞれに与えられているデータは、例えば、単一の登録済みノードに向けられたデータが、一連の基地局パケットの間で分割されて送信される場合、そのデータのパケットシーケンス番号を含んでいる。このやり方で、指定された登録済みノードは、一連のパケットで受信されたデータを正しい順序に配列し、かつ(あるいは)、基地局が送信した一連のパケットの全てのパケットからそれがデータを受信したかどうかを確認することができる。
さらにまた、基地局パケットは、さらに、パケット502、504、及び506のそれぞれの中に、図5の例では8個のフィールド518として示した一つ又はそれ以上のフィールドを含むことができ、それぞれ、特定のノードから基地局102によって受信されたデータの肯定応答を含んでいる。図5における各基地局パケットのフィールド518のそれぞれは、ACK1〜ACK8(ACKはAcknowledgementのACKである)としてそれぞれ示した、単一の登録済みノードへのデータを含んで示されている。しかしながら、他の実施形態では、これらのフィールドのそれぞれは、単一のノード2個以上から受信されたデータに対する肯定応答を含むことができる。肯定応答が係るノードの識別は、フィールド516に関連して説明したやり方のうちの一つで行うことができる。
登録済みノード108から基地局102に送信されるデータが、一連のパケットで送信される一実施形態では、フィールド518における肯定応答は、好ましくは、パケットのシーケンス識別子を含み、それにより、特定のパケットの受信の肯定応答が与えられる。
一実施形態では、フィールド518における肯定応答は、CANパケットデータの肯定応答を含んでいる。
登録済みノードはまた、それらのデータを、特定のフォーマット(図示せず)で基地局に送信するよう構成することができる。一実施形態では、登録済みノードが基地局に送信し得るパケットは、下記の情報のうち、一つ又はそれ以上を含む一つ又はそれ以上のフィールドを含むことができる。すなわち、ノードの識別子(例えば、ノードに割当てられた送信スロットに関連して設定されるノード通し番号)、パケットシーケンス番号(データが受信されない場合にデータを再送信するための番号)付きのCANパケットデータ、シーケンス番号が無いCANパケットデータ(例えば、現在のGPS位置等の、喪失しても再送信する必要がないデータ)、及びCANパケットシーケンス番号ACK(或るCANパケットが受信されたことをRF基地局に示すもの)。
同様に、未登録のノードも、それらのデータを特定のフォーマット(図示せず)で基地局に送信するよう構成することができる。一実施形態では、未登録のノードが基地局に送信することができるパケットは、少なくとも、例えばノードの通し番号の形態におけるノードの識別子を含むフィールドを含むことができる。基地局102は、未登録のノードがそれらのデータを送信するよう割当てられた時間内におけるこのようなパケットの受信を、該ノードが送信スロットを得ること(すなわち、登録された状態となること)を望んでいるしるしと解釈するよう構成することができる。
図6は、本発明の一実施形態に係る複数のノード108のうちの一つが行うことができる方法ステップのフロー図である。これら方法ステップは、図1及び図2に示した要素に関連して説明してあるが、当業者は、これら方法ステップが任意の順序で行われるよう構成されたいかなるシステムも、本発明の範囲内であることを認識するであろう。
この方法は、ステップ602から始めることができ、ここでは、割当てられた割当て情報を認識していないノードが、利用可能なM個のチャンネルのうちの一つのモニタリングを開始する。ノードは、その割当て情報を認識していない場合があり、例えば、ノードが、未登録のノードであって、そのノードにはいかなる割当て情報も存在していないか、あるいは、そのノードは、タイムスロット・スケジューラによってそれに送信スロットが割当てられている、という意味では、既に登録されているが、そのノードは、その割当て情報を(まだ)所有していない場合である。ノードは、そのノードのRF受信器が活動状態であり、かつ、モニタリングすべきチャンネルに同調されていることを保証するため、モニタリングを行う。チャンネルのモニタリングは、ノードが基地局102からパケットを受信することを目的として行われる。したがって、ノードは、このような最初の基地局パケットが受信されるまでチャンネルをモニタリングするよう構成されている。基地局が、M個のタイムスロット・アセンブリA1〜AM内の異なるチャンネルで送信することによって、M個のチャンネルのシーケンスに亘りパケットをホッピングによって送信するとき、ノードは、M個のタイムスロット・アセンブリA1〜AMが費やす期間内に基地局からその最初のパケットを受信することができねばならない。図3に示した例では、これは、160msとなる(M=16であるため、タイムスロット・アセンブリ当り10ms×タイムスロット・アセンブリ16個)。
一実施形態では、最初の基地局パケットに対する一つのチャンネルにおけるモニタリングに制限を加えることができる。例えば、ノードは、指定された期間、特定のチャンネルをモニタリングするよう構成することができ、かつ、この期間内に基地局からのパケットがまだ受信されない場合は、ノードは、別のチャンネルに切り換わり、かつ、そこでモニタリングを継続するよう構成される。このような実施形態は、何らかの理由により、特定の時刻において、ノードが、特定のチャンネルで基地局パケットを受信することができない場合、ノードは、別のチャンネルに切り換わることによって、依然として、基地局パケットを受信することができることを保証し得るものである。
ここで注目すべきことは、図6の方法ステップの文脈においては、ステップ602における「最初の」の語は、ノードによって受信される基地局パケットのうちの一つを記述するのに用いられ、該ノードは、基地局が後続のパケットの一つ又はそれ以上を送信するのに従うことになるチャンネルのシーケンス及びタイミングを決定するために使用される。この文脈では、「最初の」の語は、パケットの順序、例えば、M個のタイムスロット・アセンブリA1〜AM内で、基地局によって送信されるパケットのシーケンスにいかなる関係も有していない(すなわち、このパケットは、必ずしも基地局によって第1のタイムスロット・アセンブリA1内で送信されるパケットではない)。ノードは、一般に、基地局から最初のパケットを受信するやいなや、図6の他のステップを続けることになるが、ステップ602では「最初の」語は、必須の語ではない。事実、ノードは、何らかの理由によって、基地局から受信される最初のパケットを用いないで(例えば、パケットが壊れているため)、別のパケットの受信を待って、図6の後続のステップに移る、と決定する場合があるであろう。したがって、ステップ602における「最初の」の語は、モニタリングするノードにとっては、これは、ノードがそれを用いて図6の以下に続く方法ステップを行うことになる、基地局から受信される最初のパケットであることを示すものに過ぎない。このような、ノードによって受信される最初の基地局パケットは、事実、もしノードが、たまたま、基地局がそのとき従っているM個のチャンネルのうちの最後の一つをモニタリングしているときには、基地局によって送信されたM個のタイムスロット・アセンブリA1〜AM内の最後のパケットとなる場合がありうる。
ノードは、少なくとも、基地局が送信すべきそのパケットを構築するのに用いたデータ構造(例えば、図5に示したような)を示す情報を所有している。したがって、ノードは、ひとたび最初の基地局パケットを受信すると、ノードは、パケット内に含まれているデータを用いて、それ自体を基地局の送信に同期化し、かつ、異なるチャンネルで送信される基地局からの後続のパケットの受信を開始する。すなわち、ステップ604では、ノードは、受信した最初の基地局パケットの内容から、基地局が現在従っている基地局シーケンス、並びに、基地局が後続のパケットを送信する際のタイムスロット及びチャンネルを決定することができる。
ノードは、例えば、図5に示したように、基地局がパケットの送信のために従っている現在のチャンネルのシーケンスの識別子が基地局パケットに含まれているので、最初の決定を行うことができる。例えば、受信した最初のパケットに、現在のBSSを生成するのに用いられたシードの値が含まれている場合は、ノード内の擬似ランダムアルゴリズムは、そのシードを用いて、現在のBSSを再生成することができる。ノードは、次いで、受信したパケットのCSIを決定することもできる。これは、例えば、この値の送信のため具体的に指定された基地局パケットのフィールドのうちの一つ(例えば、上で説明したフィールド510)からこの値を得ることによって行うことができ、あるいは、ノードは、該ノードがどのチャンネルでパケットを受信したか認識しているため、ノードは、決定されたBSS内のそのチャンネルのCSIを決定することができる。
ノードが、ひとたび現在のBSS及びノードによって受信された最初のパケットの送信のためのCSIを決定すると、ノードは、最初のパケットのCSIが1だけ増加されたとき、決定されたBSS内の次のチャンネルがどのチャンネルであるかを決定するだけで、基地局が、どのチャンネルで次の基地局パケットを送信することになるのかを決定することができる。このやり方で、ノードは、基地局が現在のBSS内でパケットの送信に用いることになる送信チャンネルのうちの残りを決定することができる。
ノードは、また、使用されているタイムスロット・スケジュールの構造に係わる情報を所有しているか、あるいは、それにアクセスできる(すなわち、ノードは、図3に示すようなタイムスロットの特性及び持続時間についての情報を有している)。例えば、ノードは、このような情報により、予めそれをプログラムしておくことができる。ノードは、最初の基地局パケットを受信した時刻を決定することができ、かつ、ノードは、基地局がそのパケットを送信する頻度についての情報を有しているため、ノードは、基地局が後続のパケットを送信することになる時刻を決定することができる。例えば、図3に示したような10msのタイムスロット・アセンブリに対して、ノードは、次の基地局パケットが、最初のパケットが受信されてから9ms後に基地局によって送信されることになる、と決定することができる。
ステップ606では、ノードは、ステップ604での時刻決定と同様に、未登録のノードが、データ、例えば、登録要求を基地局に送信するよう規定されている(タイムスロット・スケジュールによって規定されている)時刻を決定することができる。ノードが、未登録のノードの場合は、ノードは、次いで、登録要求を基地局に送信するための決定された規定の時刻に従って、登録要求を基地局に送信することができる。一実施形態では、登録要求は、ノードの一意的な識別子となる通し番号を含むデータパケットを含むことができる。一実施形態では、未登録のノードは、擬似ランダムアルゴリズムを用いて決定された利用可能なM個のチャンネルのうちの一つのチャンネルを送信用に用いて、基地局にその登録要求を送信するよう構成することができる。登録要求を送信するためのチャンネルをランダムに選択することは、異なる未登録のノードがそれらの登録要求又は他のデータを基地局に送信する際の有り得る干渉を最小限度に抑えることができることになる。
ステップ606はオプショナルであるが、これは、実施形態によっては、登録は他のやり方で要求することができるためである。例えば、登録は、例えば、システムの展開の際に、あらゆる可能なノードについて要求することができる。このような実施態様では、ノードは、積極的に登録を要求する必要はなく、むしろ、基地局パケットを受信して、その割当て情報を決定するだけでよい。
ノードは、基地局102がさらにブロードキャスティングを行うことになる時刻及びチャンネルを決定したのち、ステップ608において、決定された時刻において決定されたチャンネルに同調して、基地局によって送信される後続のパケットを受信するよう、その受信器を構成することができる。ノードは、今や、適時に、かつ、適切なチャンネルで、基地局に「従い」、後続のパケットを受信することができる。
ステップ610では、ノードは、受信したパケットの一つ又はそれ以上(すなわち、ステップ602で受信した最初のパケット及びステップ608で受信した後続のパケット)からそのノードに対する割当て情報を決定することができる。登録済みノード全てに対する割当て情報の全てが、M個のタイムスロット・アセンブリA1〜AMに亘り送信され、タイムスロット・アセンブリ全体に亘って均等に分割され、次いで、再度、後続のM個のタイムスロット・アセンブリA1〜AMの組において送信される実施形態では、ノードは、M個のタイムスロット・アセンブリ内で送信される基地局パケットを受信後、その割当て情報を決定することができねばならない。これらM個のタイムスロット・アセンブリは、必ずしも、M個のタイムスロット・アセンブリのただ一組のタイムスロット・アセンブリA1〜AMではない。例えば、ノードによって受信された最初の基地局パケットが、基地局によってタイムスロット・アセンブリAM−1で送信されたものであり、かつ、そのノードに対する割当て情報が、基地局によってタイムスロット・アセンブリAM−2で送信された基地局パケット内で送信されたものであった場合には、ノードは、それを取り逃したのであり、したがって、基地局パケットを次の組で受信しなければならないことになる。すなわち、ノードは、タイムスロット・アセンブリA1〜AM−3内で送信される基地局パケットを受信することになり、最終的には、タイムスロット・アセンブリAM−2で送信された基地局パケットを受信後、その割当て情報を得ることができることになる。このやり方で、ノードは、M個のタイムスロット・アセンブリ、すなわち、最初の組のAM−1及びAM、及び、後続の組のA1〜AM−2内で送信されるM個の基地局パケットからその割当て情報を決定することができる。
ノードは、ひとたび、その割当て情報を得ると、その情報に従って、すなわち、割当て情報によって規定された時刻において及びチャンネルで、基地局に対して、データの送信を開始することができる。
一実施形態では、ノード108と基地局102との間で通信されるデータのうちの少なくともいくつかは、例えば、AES128の秘密鍵暗号を用いて暗号化されている。
一実施形態では、基地局及びノードによって送信されるパケットは、CANバスパケットとして送信する際のそれらのサイズ及び送信フォーマットの点で、最適化することができる。このような実施形態では、基地局パケットは、次のように構成することができる。すなわち、チャンネルシーケンスのシード値(シード)(2バイト)、チャンネルシーケンス指標(CSI)(1バイト)、送信スロット割当て情報4個(4×3バイト)、送信スロット拒否指示2個(2×3バイト)、[CANパケット+送信スロット+メッセージID] 4個(4×14バイト)、[送信スロット+メッセージID ACK] 8個(8×2バイト)。このような構造では、合計のバイト数が93になる。このようなパケットをAES128の秘密鍵暗号で暗号化するため、パケットは、96バイトにパディングされる。その結果、1Mbitの送信速度では、合計768マイクロ秒(すなわち、96×8)の送信時間となる。同様に、割当てられた送信スロット内でノードが送信するノードパケットは、次のように構成することができる。すなわち、ノードの通し番号(3バイト)、送信スロット番号(1バイト)、パケットシーケンス番号(1バイト)、メッセージID無しのCANパケット2個(2×10バイト)、メッセージID付きのCANパケット(11バイト)、メッセージIDACK(3バイト)。このようなパケットをAES128の秘密鍵暗号で暗号化するため、パケットは、48バイトにパディングされる。その結果、1Mbitの送信速度では、合計384マイクロ秒(すなわち、48×8)の送信時間となる。
上記の説明に対しては、想定することができる他の実施形態であって、かつ、本発明の範囲内である他の実施形態に関連付けて、いくつかの一般的な注釈が加えられる。
まず第一に、上述の説明で、タイムスロット・アセンブリAiの全ては、同じ構造(すなわち、同じ目的のために指定された同種のタイムスロット)を有するとして説明してあるが、他の実施形態では、タイムスロット・アセンブリAiは、ある特定の様式において互いに他から異なることができる。例えば、異なるタイムスロット・アセンブリ内のタイムスロットは、同じ長さのものである必要はなく、タイムスロット・アセンブリのうちのあるもの、かつ、全部でなく一部のもののみが、基地局及び(又は)登録済みノードがデータを送信するためのタイムスロットを含むことができ、かつ(あるいは)、基地局及び(又は)登録済みノードは、不規則なやり方(例えば、新しいタイムスロット・アセンブリごとにではなくて、一つのタイムスロット・アセンブリの後で、新しい送信チャンネルに切り換えて、後続の2個のアセンブリの間に送信し、次いで、新しいチャンネルに切り換えて、後続の1個のアセンブリの間に送信し、次いで、後続の2個のアセンブリの間に、そのチャンネルで送信するよう再び切り換える、等々のやり方)で別の送信チャンネルにホッピングするよう構成することができる。異なるタイムスロット・アセンブリが、どのように構成されているかについて、ノードが、情報を有しているか、あるいは、受信した基地局パケットのうちの一つに基づいて推論可能である限り、それらは、本発明に従って、正しい時刻において、かつ、正しいチャンネルで、それら自身を基地局に同期させ、かつ、基地局にデータを通信することができる。
第二に、基地局パケットの場合と同様に、パケットは、同じデータ構造を有するとして説明したが、これが当てはまらない実施形態も想定できる。この場合も、他の基地局パケットがどのように構成されているかについて、ノード108が、情報を有しているか、あるいは、受信した基地局パケットのうちの一つに基づいて推論可能である限り、ノードは、本発明に従って、異なる基地局パケットからデータを正しく抽出し、かつ、異なる基地局と通信することができる。
第三に、これは、ここで説明したパケットのすべてについて当てはまることであるが、パケット内に記述されているフィールドの全てがデータを含まなくてはならない、ということはない。フィールドによっては、空でも(すなわち、データを全く含まなくても)よく、あるいは、例えば、最後のパケット以後何も変わっていないという指示を含んでいてもよい。
ここで用いられる用語は、特定の実施形態のみを説明するという目的のためのものであり、本発明を限定することを意図したものではない。ここで用いられる、単数形の 「a」、 「an」、 及び「the」を冠した名詞又は名詞句は、文脈によって別様に指示される場合を除き、複数形の名詞又は名詞句も同様に含むことを意図したものである。用語「comprise」及び(又は)「comprising」は、本明細書で用いられる場合、記述された特徴、完全体、ステップ、動作、要素、及び(又は)構成要素の存在を明記するが、一つ又はそれ以上の他の特徴、完全体、ステップ、動作、要素、及び(又は)構成要素及び(又は)それらのグループの存在又は追加を排除しないことが、さらに理解されよう。
以下の請求項における全ての手段又はステッププラスファンクション要素の対応する構成、材料、動作、および等価事項は、特に特許請求された他の特許請求された要素との組合せで機能を実行するいかなる構成、材料、又は動作をも含むことが意図されている。本発明の記述は、説明及び記述の目的で為されたものであり、言い尽くしたり、あるいは、開示された形態の本発明に限定したりする意図はない。当業者には、本発明の範囲及び精神を逸脱することなく多くの修正形態及び変形形態が可能であることは明らかであろう。既述した実施形態は、本発明の原理及び実用例をできるだけ解りやすく説明し、他の当業者が、本発明を理解して、想到される特定の用途に適した各種の修正を有する各種の実施形態に至れるようにするために選び、かつ、記述したものである。
本願の開示で説明したモジュール及び機能は、一つ又はそれ以上のハードウェア装置、例えば、一つ又はそれ以上のソフトウェアプログラムとして、一つ又はそれ以上の(専用)マイクロプロセッサ、すなわち、コンピュータ又はマイクロプロセッサと関連したメモリ内で実行された場合、所望の機能性を作り出すためコードを実行するよう構成されているソフトウェアコード部分として、あるいは、ハードウェア装置とソフトウェアプログラムとの組合せとして実現することができる。
本発明の様々な実施形態は、プログラム製品のプログラム(複数も可)が、(ここで説明した方法を含む)実施形態の機能を規定するコンピュータシステムに使われるプログラム製品として実現することができる。一実施形態では、プログラム(複数も可)は、コンピュータで読取可能な各種の一時的でない記憶媒体に含めることができ、ここで使用した「コンピュータで読取可能な一時的でない記憶媒体」の表現には、コンピュータで読取可能なあらゆる記憶媒体が含まれ、唯一の例外は、一時的な伝播する信号である。別の実施形態では、プログラム(複数も可)は、コンピュータで読取可能な各種の一時的な記憶媒体に含めることができる。コンピュータで読取可能な例示的な記憶媒体には、以下のものが含まれる(しかしそれらに限定されない)。すなわち、(i)情報が永久的に格納される書込み不可能な記憶媒体(例えば、CD−ROMドライブにより読取可能なCD-ROMディスク等のコンピュータ内のリードオンリーメモリ装置、ROMチップ又は何らかのタイプのソリッドステート不揮発性半導体メモリ)、及び(ii)改変できる情報が格納される書込み可能な記憶媒体(例えば、フラッシュメモリ、ディスケットドライブ内のフロッピディスク又はハードディスクドライブ、又は、何らかのタイプのソリッドステート・ランダムアクセス半導体メモリ)。コンピュータプログラムは、ここで説明した一つ又はそれ以上のプロセッサ210で実行することができる。
上述の説明は、本発明の実施形態に向けられたものであるが、本発明の他の実施形態及びさらなる実施形態が、本発明の基本的な範囲を逸脱することなく考案可能である。例えば、本発明の態様は、ハードウェア又はソフトウェアで、あるいは、ハードウェアとソフトウェアとの組合せで実現することができる。したがって、本発明の範囲は、以下に続く請求項によって決定される。