(57)【特許請求の範囲】
【請求項１】
電力線通信（ＰＬＣ）デバイスであって、
デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、システムオンチップ（ＳｏＣ）回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、マイクロプロセッサ、又はマイクロコントローラを含む、プロセッサと、
前記プロセッサに結合されたメモリと、
を含み、
前記メモリが、前記ＰＬＣデバイスに、
（ａ）アクセスチャネルがフリーであることを示す仮想キャリア検知オペレーションに応答して、元の時間ウィンドウに少なくとも部分的に基づいて物理的キャリア検知オペレーションを実行することと、
（ｂ）前記アクセスチャネルがフリーであることを示す前記物理的キャリア検知オペレーションに応答して、前記アクセスチャネルでデータ送信を開始することと、
（ｃ）前記データ送信がユニキャスト送信であり、確認メッセージが前記ＰＬＣデバイスにより受け取られていないことに応答して、バックオフカウンタをインクリメントさせ、前記元の時間ウィンドウを増大させることであって、前記元の時間ウィンドウを増大させることが前記元の時間ウィンドウの長さを増大させる、前記バックオフカウンタをインクリメントさせ、前記元の時間ウィンドウを増大させることと、
（ｄ）前記バックオフカウンタが許容されるバックオフオペレーションの最大数より小さい値を有することに応答して、前記増大された時間ウィンドウを用いて少なくとも（ａ）及び（ｂ）を反復することと、
（ｅ）前記アクセスチャネルがビジーであることを示す前記物理的キャリア検知オペレーションに応答して、前記バックオフカウンタを増大させ、前記元の時間ウィンドウを維持し、第２の仮想キャリア検知オペレーションに続いて第２の物理的キャリア検知オペレーションを実行することであって、前記第２の物理的キャリア検知オペレーションが前記元の時間ウィンドウに少なくとも部分的に基づく、前記バックオフカウンタを増大させ、前記元の時間ウィンドウを維持し、前記第２の仮想キャリア検知オペレーションに続いて前記第２の物理的キャリア検知オペレーションを実行することと、
（ｆ）前記アクセスチャネルがフリーであることを示す前記第２の物理的キャリア検知オペレーションに応答して、前記アクセスチャネルでデータを送信することと、
を行わせるように、前記プロセッサにより実行され得るプログラム命令をストアするように構成される、デバイス。
【請求項２】
請求項１に記載のデバイスであって、
前記第２の物理的キャリア検知オペレーションが、前記元の時間ウィンドウ内でランダムに選択された時間に行われる、デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
実施例は、一般に電力線通信（ＰＬＣ）を対象とし、より具体的にはＰＬＣのためのルーティングプロトコルを対象とする。
【背景技術】
【０００２】
電力線通信（ＰＬＣ）は、住居、建物、及び他の敷地に電力を送るためにも用いられる同じ媒体（すなわちワイヤ又は導体）を介してデータを通信するためのシステムを含む。ＰＬＣシステムは、導入されると、多様なアプリケーションを可能とし得、例えば、その例を幾つか挙げると、自動メーター読み取り及び負荷制御（すなわちユーティリティ型のアプリケーション）、自動車用途（例えば、電気自動車の充電）、ホームオートメーション（例えば、機器、照明などの制御）、及び／又はコンピュータネットワーキング（例えば、インターネットアクセス）などを含む。
【０００３】
現在、世界中で、それぞれ独自の特徴を備えた様々なＰＬＣ規格化の取り組みが成されている。一般に、ＰＬＣシステムは、ローカル規制、ローカル電力グリッドの特徴などに応じて異なって実装し得る。競合するＰＬＣ規格の例は、ＩＥＥＥ  １９０１、ＨｏｍｅＰｌｕｇ  ＡＶ、ＰＲＩＭＥ（Powerline
Intelligent Metering Evolution）、及びＩＴＵ−Ｔ  Ｇ．ｈｎ（例えば、Ｇ．９９６０及びＧ．９９６１）などの仕様を含む。
【発明の概要】
【０００４】
電力線通信（ＰＬＣ）においてキャリア検知多重アクセス（ＣＳＭＡ）プロトコルを実装するためのシステム及び方法を説明する。例示的実施例では、方法が、仮想キャリア検知オペレーションを実行すること、及び仮想キャリア検知オペレーションが通信チャネルがアイドルであることを示すことに応答して、コンテンションウィンドウを計算することを含み得る。この方法は、仮想キャリア検知オペレーションに続いて物理的キャリア検知オペレーションを行うことも含み得、物理的キャリア検知オペレーションは、コンテンションウィンドウに少なくとも部分的に基づく。その後、物理的キャリア検知オペレーションが通信チャネルがアイドルであることを示すことに応答して、この方法は、そのチャネルでデータを送信することを含み得る。
【０００５】
幾つかの場合において、例えば、コンテンションウィンドウを計算することは、コンテンションウィンドウの長さを設定することを含み得、物理的キャリア検知オペレーションは、コンテンションウィンドウ内でランダムに選択された時間に行われ得る。また、この方法は、それが通信チャネルがアイドルであることを示すまで、仮想キャリア検知オペレーションを反復することを含み得る。
【０００６】
付加的に或いは代替として、この方法は、物理的キャリア検知オペレーションが通信チャネルがアイドルでないことを示すことに応答して、それが通信チャネルがアイドルであることを示すまで仮想キャリア検知オペレーションを反復すること、及び修正されたコンテンションウィンドウをつくるためコンテンションウィンドウの長さを増大させることを含み得る。例えば、コンテンションウィンドウの長さを増大させることは、データを送信する多数の先立つ試みに対応する量だけコンテンションウィンドウの長さを増大させることを含み得る。この方法は、反復された仮想キャリア検知オペレーションに続いて第２の物理的キャリア検知オペレーションを行うことも含み得、第２の物理的キャリア検知オペレーションは、修正されたコンテンションウィンドウに少なくとも部分的に基づく。例えば、第２の物理的キャリア検知オペレーションは、修正されたコンテンションウィンドウ内でランダムに選択された時間に行われ得る。この方法は更に、第２の物理的キャリア検知オペレーションが、その通信チャネルがアイドルであることを示すことに応答して、その通信チャネルでデータを送信することを含み得る。
【０００７】
別の例示の実施例において、方法が、（ａ）仮想キャリア検知オペレーションがアクセスチャネルがフリーであることを示すことに応答して、元の時間ウィンドウに少なくとも部分的に基づいて物理的キャリア検知オペレーションを行うこと、（ｂ）物理的キャリア検知オペレーションがそのアクセスチャネルがフリーであることを示すことに応答して、そのアクセスチャネルでデータ送信を開始すること、（ｃ）データ送信がユニキャスト送信であること及び確認メッセージがＰＬＣデバイスにより受け取られないことに応答して、バックオフカウンタをインクリメントさせ、元の時間ウィンドウを増大させること、及び（ｄ）バックオフカウンタが、許容されるバックオフオペレーションの最大数より小さい値を有することに応答して、増大された時間ウィンドウを用いて少なくとも（ａ）及び（ｂ）を反復することを含み得る。
【０００８】
幾つかの実装において、元の時間ウィンドウを増大させることが、元の時間ウィンドウの長さを増大させることを含み得る。また、物理的キャリア検知オペレーションが元の時間ウィンドウ内でランダムに選択された時間に実行され得、反復された物理的キャリア検知オペレーションが、インクリメントされた時間ウィンドウ内でランダムに選択された時間に実行され得る。
【０００９】
また、この方法は、それがアクセスチャネルがフリーであることを示すまで仮想キャリア検知オペレーションの出力を監視することを含み得る。付加的に或いは代替として、この方法は、物理的キャリア検知オペレーションがそのアクセスチャネルがビジーであることを示すことに応答して、バックオフカウンタを増大させること、元の時間ウィンドウを維持すること、及び第２の仮想キャリア検知オペレーションに続いて第２の物理的キャリア検知オペレーションを行うことを含み得、第２の物理的キャリア検知オペレーションは、元の時間ウィンドウに少なくとも部分的に基づく。例えば、第２の物理的キャリア検知オペレーションは、元の時間ウィンドウ内でランダムに選択された時間に行われ得る。この方法は、第２の物理的キャリア検知オペレーションがそのアクセスチャネルがフリーであることを示すことに応答して、そのアクセスチャネルでデータを送信することも含み得る。
【００１０】
更に別の例示の実施例において、この方法は、キャリア検知オペレーションによる、チャネルが利用可能であるとの判定に応答して、コンテンションウィンドウ内で選択された時間にデータを送信することを含み得る。この方法は、データ送信がユニキャスト送信であると判定すること、確認メッセージが受け取られていないと判定すること、及びコンテンションウィンドウを増大させることも含み得る。この方法は、増大されたコンテンションウィンドウ内で選択された時間にデータを再送信することを更に含む。
【００１１】
この方法は、反復されたキャリア検知オペレーションによる、チャネルが利用可能であるとの別の判定に応答して、データを再送信することも含み得る。種々の実装において、キャリア検知オペレーションは、仮想キャリア検知オペレーション、物理的キャリア検知オペレーション、又は物理的及び仮想キャリア検知オペレーションの組み合わせであり得る。
【００１２】
幾つかの実施例において、本明細書に記載の１つ又は複数の方法が、１つ又は複数のＰＬＣデバイス（例えば、ＰＬＣモデムなど）により実行され得る。他の実施例において、有形電子的記憶媒体が、そこにストアされたプログラム命令を有し得、この媒体は、１つ又は複数のＰＬＣデバイス内のプロセッサにより実行されると、１つ又は複数のＰＬＣデバイスに本明細書に開示する１つ又は複数のオペレーションを実行させる。このようなプロセッサの例には、これらに限らないが、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、システムオンチップ（ＳｏＣ）回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、マイクロプロセッサ、マイクロコントローラが含まれる。更に他の実施例において、ＰＬＣデバイスは、少なくとも一つのプロセッサとこの少なくとも１つのプロセッサに結合されるメモリとを含み得、メモリは、ＰＬＣデバイスに本明細書に開示する１つ又は複数のオペレーションを実行させるように、この少なくとも１つのプロセッサにより実行され得るプログラム命令をストアするように構成される。
【図面の簡単な説明】
【００１３】
【図１】幾つかの実施例に従ったＰＬＣシステムの図である。
【００１４】
【図２】幾つかの実施例に従ったＰＬＣデバイス又はモデムのブロック図である。
【００１５】
【図３】幾つかの実施例に従ったＰＬＣゲートウェイのブロック図である。
【００１６】
【図４】幾つかの実施例に従ったＰＬＣデータコンセントレータのブロック図である。
【００１７】
【図５】従来技術のＣＳＭＡ手法のフローチャートである。
【００１８】
【図６】ＣＳＭＡ手法のフローチャートに従って幾つかの実施例。
【００１９】
【図７】幾つかの実施例に従った集積回路のブロック図である。
【発明を実施するための例】
【００２０】
図１は、いくつかの例示的実施例に従った電力線通信（ＰＬＣ）システムを示す。サブステーション１０１からの中電圧（ＭＶ）電力線１０３は、典型的には数十キロボルトの範囲の電圧を搬送する。変圧器１０４は、ＭＶ電力を、１００〜２４０ＶＡＣの範囲の電圧を搬送するＬＶ線１０５上の低電圧（ＬＶ）電力に降圧する。変圧器１０４は、典型的には５０〜６０Ｈｚの範囲の非常に低い周波数で動作するように設計される。変圧器１０４は、典型的には、例えば１００ＫＨｚを超える信号など、高周波数がＬＶ線１０５とＭＶ線１０３との間に通過しないようにさせる。ＬＶ線１０５は、典型的には住居１０２ａ〜ｎの外側に取り付けられたメーター１０６ａ〜ｎを介して、顧客に電力を供給する。（「住居」と呼んでいるが、敷地１０２ａ〜ｎは、電力が受けとられる及び／又は消費される任意の種類の建物、施設、又は場所を含み得る。）例えば、パネル１０７など、ブレーカパネルが、メーター１０６ｎと住居１０２ｎ内の電気的ワイヤ１０８との間のインタフェースを提供する。電気的ワイヤ１０８は、住居１０２ｎ内のコンセント１１０、スイッチ１１１、及び他の電気デバイスに電力を送達する。
【００２１】
図１に例示する電力線トポロジは、住居１０２ａ〜ｎへの高速通信の送達に用いられ得る。いくつかの実装において、電力線通信モデム又はゲートウェイ１１２ａ〜ｎは、メーター１０６ａ〜ｎにおいてＬＶ電力線１０５に結合され得る。ＰＬＣモデム／ゲートウェイ１１２ａ〜ｎは、ＭＶ／ＬＶ線１０３／１０５を介してデータ信号を送信及び受信するために用いられ得る。このようなデータ信号は、いくつかの例を挙げれば、計測及び電力送達アプリケーション（例えば、スマートグリッドアプリケーション）、通信システム、高速インターネット、電話通信、ビデオ会議、及びビデオ送達をサポートするために用いられ得る。電力伝送ネットワークを介してテレコミュニケーション及び／又はデータ信号を伝送することにより、各加入者１０２ａ〜ｎに新しい配線を設置する必要がない。したがって、データ信号を搬送するために既存の配電システムを使用することにより、かなりのコスト節約が可能である。
【００２２】
電力線を介してデータを伝送するための例示的方法が、電力信号の周波数とは異なる周波数を有する搬送波信号を用い得る。搬送波信号は、例えば、直交周波数分割多重（ＯＦＤＭ）方式などを用いて、データによって変調され得る。
【００２３】
住居１０２ａ〜ｎにおけるＰＬＣモデム又はゲートウェイ１１２ａ〜ｎは、追加の配線を必要とすることなく、ＰＬＣデータコンセントレータ又はルータ１１４への及びそれらからのデータ信号を搬送するために、ＭＶ／ＬＶ電力グリッドを用いる。コンセントレータ１１４は、ＭＶ線１０３又はＬＶ線１０５のいずれかに結合され得る。モデム又はゲートウェイ１１２ａ〜ｎは、例えば、高速広帯域インターネットリンク、狭帯域制御アプリケーション、低帯域幅データ収集アプリケーションなどのアプリケーションをサポートし得る。ホーム環境において、例えば、モデム又はゲートウェイ１１２ａ〜ｎはさらに、冷暖房、照明、及びセキュリティにおけるホーム及びビルディングオートメーションを可能にし得る。また、ＰＬＣモデム又はゲートウェイ１１２ａ〜ｎは、電気自動車又は他の機器のＡＣ又はＤＣ充電を可能にし得る。ＡＣ又はＤＣ充電器の一例が、ＰＬＣデバイス１１３として示されている。敷地外部では、電力線通信ネットワークが、街路照明の制御及び遠隔電力メーターデータの収集を提供し得る。
【００２４】
１つ又は複数のＰＬＣデータコンセントレータ又はルータ１１４が、ネットワーク１２０を介して制御センター１３０（例えばユーティリティ会社）に結合され得る。ネットワーク１２０は、例えば、ＩＰベースネットワーク、インターネット、セルラネットワーク、ＷｉＦｉネットワーク、ＷｉＭａｘネットワーク、又はそれに類するものを含み得る。したがって、制御センター１３０は、ゲートウェイ１１２及び／又はデバイス１１３からコンセントレータ１１４を介して電力消費及び他のタイプの関連情報を収集するように構成され得る。加えて又は代替として、制御センター１３０は、スマートグリッドポリシー及び他の規制又は商業規則を、コンセントレータ１１４を介してこうした規則を各ゲートウェイ１１２及び／又はデバイス１１３に通信することによって実装するように構成され得る。
【００２５】
図２は、幾つかの実施例に従ったＰＬＣデバイス１１３のブロック図である。例示されるように、ＡＣインタフェース２０１が、ＰＬＣデバイス１１３がスイッチ回路などを用いて電気的ワイヤ１０８ａと１０８ｂとの間の接続をオフに切り換えることができるような方式で、敷地１１２ｎ内の電気的ワイヤ１０８ａ及び１０８ｂに結合され得る。しかしながら、他の実施例において、ＡＣインタフェース２０１が、単一のワイヤ１０８に（すなわち、ワイヤ１０８をワイヤ１０８ａ及び１０８ｂに分けることなく）、このような切り換え機能を提供することなく、接続されてもよい。オペレーションにおいて、ＡＣインタフェース２０１は、ＰＬＣエンジン２０２がワイヤ１０８ａ〜ｂを介してＰＬＣ信号を受信及び送信できるようにし得る。幾つかの場合において、ＰＬＣデバイス１１３はＰＬＣモデムであり得る。加えて又は代替として、ＰＬＣデバイス１１３は、スマートグリッドデバイス（例えば、ＡＣ又はＤＣ充電器、メーターなど）、機器、或いは、敷地１１２ｎの内部又は外部に配置された他の電気的要素（例えば、街路照明など）のための制御モジュール、の一部であり得る。
【００２６】
ＰＬＣエンジン２０２は、特定の周波数帯を用いてＡＣインタフェース２０１を介して、ワイヤ１０８ａ及び／又は１０８ｂでＰＬＣ信号を送信及び／又は受信するように構成され得る。幾つかの実施例では、ＰＬＣエンジン２０２はＯＦＤＭ信号を送信するように構成され得るが、他のタイプの変調方式も用いられ得る。したがって、ＰＬＣエンジン２０２は、計測又は監視回路（図示せず）を含み得るか或いはそれらと通信するように構成され得、計測又は監視回路は、ワイヤ１０８、１０８ａ、及び／又は１０８ｂを介して或るデバイス又は機器の電力消費特徴を測定するように構成される。ＰＬＣエンジン２０２は、このような電力消費情報を受信し、これを１つ又は複数のＰＬＣ信号として符号化し、これをさらなる処理のためにワイヤ１０８、１０８ａ、及び／又は１０８ｂを介してより高レベルのＰＬＣデバイス（例えば、ＰＬＣゲートウェイ１１２ｎ、データアグリゲータ１１４など）に送信し得る。反対に、ＰＬＣエンジン２０２は、例えば、ＰＬＣエンジン２０２が動作する特定の周波数帯を選択できるようにするため、ＰＬＣ信号内に符号化されたこのようなより高レベルのＰＬＣデバイスからの命令及び／又は他の情報を受信し得る。
【００２７】
図３は、幾つかの実施例に従ったＰＬＣゲートウェイ１１２のブロック図である。この例に示されるように、ゲートウェイエンジン３０１が、メーターインタフェース３０２、ローカル通信インタフェース３０４、及び周波数帯使用量データベース３０４に結合される。メーターインタフェース３０２はメーター１０６に結合され、ローカル通信インタフェース３０４は、例えば、ＰＬＣデバイス１１３など、様々なＰＬＣデバイスの１つ又は複数に結合される。ローカル通信インタフェース３０４は、例えば、ＺＩＧＢＥＥ、ＢＬＵＥＴＯＯＴＨ、ＷＩ−ＦＩ、ＷＩ−ＭＡＸ、ＥＴＨＥＲＮＥＴなど、ゲートウェイ１１２が多様な異なるデバイス及び機器と通信できるようにし得る、様々な通信プロトコルを提供し得る。オペレーションにおいて、ゲートウェイエンジン３０１は、ＰＬＣデバイス１１３及び／又は他のデバイス並びにメーター１０６からの通信を収集するように、且つ、これら様々なデバイスとＰＬＣデータコンセントレータ１１４との間のインタフェースとして働くように、構成され得る。ゲートウェイエンジン３０１はまた、周波数帯を特定のデバイスに割り振るように、及び／又は、このようなデバイスにそれら自体の動作周波数を自己割り当てできるようにする情報を提供するように、構成され得る。
【００２８】
幾つかの実施例において、ＰＬＣゲートウェイ１１２は敷地１０２ｎ内又は敷地１０２ｎ付近に配設され得、敷地１０２ｎへの及び／又は敷地１０２ｎからの全てのＰＬＣ通信に対するゲートウェイとして機能し得る。しかしながら、他の実施例において、ＰＬＣゲートウェイ１１２はない可能性があり得、ＰＬＣデバイス１１３（並びにメーター１０６ｎ及び／又は他の機器）はＰＬＣデータコンセントレータ１１４と直接通信し得る。ＰＬＣゲートウェイ１１２が存在する場合、これは、例えば、敷地１０２ｎ内の様々なＰＬＣデバイス１１３によって現在使用されている周波数帯の記録を備えたデータベース３０４を含み得る。このような記録の一例は、例えば、デバイス識別情報（例えば、シリアル番号、デバイスＩＤなど）、アプリケーションプロファイル、デバイスクラス、及び／又は現在割り振られている周波数帯などを含み得る。したがって、ゲートウェイエンジン３０１は、その様々なＰＬＣデバイスに割り振られた周波数帯の割り当て、割り振り、又は他の方法での管理において、データベース３０４を用い得る。
【００２９】
図４は、幾つかの実施例に従ったＰＬＣデータコンセントレータ又はルータ１１４のブロック図である。ゲートウェイインタフェース４０１が、データコンセントレータエンジン４０２に結合されて、１つ又は複数のＰＬＣゲートウェイ１１２ａ〜ｎと通信するように構成され得る。ネットワークインタフェース４０３もデータコンセントレータエンジン４０２に結合されて、ネットワーク１２０と通信するように構成され得る。オペレーションにおいて、データコンセントレータエンジン４０２は、複数のゲートウェイ１１２ａ〜ｎからの情報及びデータを、制御センター１３０に転送する前に、収集するために用いられ得る。ＰＬＣゲートウェイ１１２ａ〜ｎがない場合、ゲートウェイインタフェース４０１は、メーター１１６ａ〜ｎ、ＰＬＣデバイス１１３、及び／又は他の機器と直接通信するように構成されたメーター及び／又はデバイスインタフェース（図示せず）で置き換えてもよい。また、ＰＬＣゲートウェイ１１２ａ〜ｎがない場合、周波数使用量データベース４０４は、データベース３０４に関して上記で説明したものと同様の記録をストアするように構成され得る。
【００３０】
一般的に、電力線又はワイヤ１０３、１０５、及び／又は１０８を介して信号を送信する前に、ＰＬＣデバイスは、所定の通信又はアクセスチャネル（例えば、周波数帯）が現在用いられているかどうか検出しようと試み得る。チャネルアクセスは、例えば、ランダムバックオフ時間を備えた、衝突回避を備えたキャリア検知多重アクセス（ＣＳＭＡ／ＣＡ）メカニズムを用いることにより達成され得る。ランダムバックオフメカニズムは、ＰＬＣデバイスが送信を試みる時間にスプレッドし得、それにより、衝突の可能性を低減する。言い換えると、デバイスがデータフレームを送信しようと試みる度、それはランダム期間待機し得る。チャネルがアイドル又はフリーであることが分かった場合、そのランダムバックオフに続いて、デバイスはそのデータを送信し得る。チャネルがビジーであることが分かった場合、そのランダムバックオフに続いて、デバイスは、再びチャネルにアクセスしようと試みる前に別のランダム期間待機し得る。
【００３１】
種々の実施例において、異なるＣＳＭＡ手法が用いられ得る。例えば、プリアンブルの検出時に物理層（ＰＨＹ）によって物理的キャリア検知（ＰＣＳ）が提供され得る。これに対し、チャネル占有の予期される持続時間を追跡することにより媒体アクセス制御（ＭＡＣ）層によって、仮想キャリア検知（ＶＣＳ）メカニズムが提供され得る。仮想キャリア検知は、例えば、受信したパケット（又は衝突時）の長さにより、設定され得る。これらの場合、ＶＣＳは、その媒体の「ビジー」状態（即ち、所定のＰＬＣデバイスが電力線又はワイヤ１０３、１０５、及び／又は１０８でデータを送信するとき）の予期される持続時間を追跡又は推定する。
【００３２】
図５は、例えば、ＩＥＥＥ８０２．１５．４標準に記載されるようなノンビーコンパーソナルエリアネットワーク（ＰＡＮ）に適用し得る、従来技術のＣＳＭＡ方法のフローチャートを示す。この方法を用いて、ランダムバックオフメカニズムは、ステーションが送信を試みる時間にスプレッドする（それにより、衝突の可能性を低減する）。このＣＳＭＡアルゴリズムは典型的に、データ又はＭＡＣ命令フレームの送信前に用いられ、このアルゴリズムは、１つのバックオフ期間がユニットバックオフ期間（ｕｎｉｔＢａｃｋｏｆｆＰｅｒｉｏｄ）シンボルに等しい、「バックオフ期間」と呼ばれる時間のユニットを用いて実装される。
【００３３】
ブロック５０１に図示するように、各デバイスは、各送信試みに対してＮＢ及びＢＥの２つの変数を維持し得る。具体的には、ＮＢは、現在の送信を試みる一方でＣＳＭＡアルゴリズムがバックオフに必要とされる回数であり、これは、各新しい送信試み前に「０」に初期化され得る。一方、ＢＥはバックオフ指数であり、これは、チャネルに評価を試みる前にデバイスがどのくらい多くのバックオフ期間待機し得るかに関連し、最小ＢＥの値まで初期化され得る。この方法は、ＮＢ及びＢＥを初期化し得、その後ブロック５０２へ進む。ブロック５０２で、この方法は、全バックオフ期間（例えば、０〜２ＢＥ−１の範囲）のランダム数に対し、遅延つくり得、その後ブロック５０３でＰＣＳオペレーションが実行されることをリクエストする。そのバックオフ時間は、Ｂａｃｋｏｆｆ＝Ｒａｎｄｏｍ（２ＢＥ−１）×ＳｌｏｔＴｉｍｅにより得られ得、ここで、ＳｌｏｔＴｉｍｅは、コンテンションウィンドウスロットの持続時間（例えば、シンボル数）に等しい。
【００３４】
ブロック５０４において、チャネルがビジーであると評価される場合、この方法は、ＢＥが最大ＢＥ（高優先度パケットでは、最大ＢＥは最小ＢＥに等しい可能性がある）を超えないことを確実にする一方で、ブロック５０６において１だけＮＢ及びＢＥ両方をインクリメントし得る。ブロック５０７において、ＮＢの値が最大ＣＳＭＡバックオフより小さいか又はそれに等しい場合、この方法はブロック５０２へ戻り得る。ＮＢの値が最大ＣＳＭＡバックオフより大きい場合、この方法は、例えば、チャネルアクセス失敗状態又は表示で終了し得る。ブロック５０４に再び移ると、チャネルがアイドルであると評価される場合、この方法は、ブロック５０５でフレームの送信を即開始し得る。
【００３５】
しかし、当業者であれば図５に示されるこの方法に関して理解されるように、ＰＣＳが尚早に検知される。各ＰＣＳインタバルは、ＶＣＳ検知結果とは無関係に計算される。１つのノードが大型パケットを送信している場合、不要なＰＣＳ試みに起因して競合ノードは容易に失敗し得る。付加的に或いは代替として、コンテンションウィンドウは尚早に増大される。ＰＣＳがビジーである度、ＢＥが増大される。そのため、ノードがＰＣＳの第１の時間失敗する場合、そのノードは、その増大されたウィンドウに起因して他のノードよりもその後のＰＣＳで失敗する可能性が高く、不公平の問題が生じる。
【００３６】
これらの及び他の問題に対処するため、本明細書に記載される実施例は、１つ又は複数の不要なＰＣＳオペレーションをセーブするため、１つ又は複数のＶＣＳオペレーションを用いるための手法を提供する。また、幾つかの実施例において、ＡＣＫメッセージ又はパッケージが失われるときコンテンションウィンドウは増大され得、そのため、衝突事象がビジー媒体の検出と区別される。種々の実施例において、本明細書に記載される手法は、ランダム媒体アクセスを備えたＰＬＣメッシュネットワークにおいて適用され得るが、他の種類のネットワークも用いられ得る。また、これらの実施例は、例えば、Ｇ３−ＰＬＣ標準又は同様のものなど、種々のＰＬＣ標準と共に用いることができる。
【００３７】
ここで図６に移ると、ＣＳＭＡ方法のフローチャートが幾つかの実施例に従って示されている。種々の実施例において、例えば、ＰＬＣデバイス１０３、ＰＬＣゲートウェイ１１２、及び／又はＰＬＣデータコンセントレータ１１４により、図６の方法が実行され得る。ブロック６０１で、この方法は、１つ又は複数のバックオフパラメータ（例えば、ＮＢカウンタ及び／又はＢＥ）をそれらの初期値に設定することを含み得る。ブロック６０２で、例えば、ＶＣＳオペレーションが通信チャネルがアイドル又はフリーであると判定するまで、この方法はＶＣＳオペレーションを実行し得る。その後、ブロック６０２及び６０３で、この方法は遅延をつくり得、図５のブロック５０１及び５０２と同様にＰＣＳオペレーションが実行されることをリクエストし得る。しかし、この場合、図５の方法とは対照的に、ＶＣＳ（仮想キャリア検知）がビジーでないときＰＣＳが試みられる。つまり、ＶＣＳがＰＣＳ前に考慮される。ＶＣＳがビジー状態からアイドルになると、全てのノード（即ち、ＰＬＣデバイス）は、チャネルに対する公平な競争のため同時に整合され得る。このように、ＶＣＳ及びＰＣＳ両方が用いられ得、ＶＣＳは、例えば、大型パケット送信に起因してＣＳＭＡが失敗しないように、不要なＰＣＳをセーブする。
【００３８】
ブロック６０５で、この方法は、ＰＣＳオペレーションに基づいてそのチャネルがアイドル又はフリーであるかを判定し得る。アイドルである場合、この方法は、ブロック６０６でそのチャネルを介してデータを送信し得る。ブロック６０７で、この方法は、データ送信がブロードキャスト送信であるか又はユニキャスト送信かを判定し得る（後者が、成功送信に応答して確認メッセージを受け取ることに関与するのに対し、前者はそうではない）。データ送信がユニキャスト送信である場合、この方法は、ブロック６０８で、確認が受け取られたかを判定し得る。データ送信がブロードキャスト送信である場合又はユニキャスト送信に対し確認が受け取られた場合、この方法は成功表示で終了し得る。そうでない場合、ブロック６０９で、ＮＢ及びＢＥは両方インクリメントされ得る。
【００３９】
ブロック６０５に戻ると、チャネルがビジーである場合、ＮＢのみがインクリメントされ得る（ただし、コンテンションウィンドウのサイズは増大されない）。その後、ブロック６１１で、バックオフの最大数に達する場合、この方法は失敗表示で終了し得る。そうでない場合、この方法はブロック６０２へ戻り得る。このように、確認（ＡＣＫ）メッセージ又はパケットが受け取らない場合（ユニキャスト送信の場合）ＢＥは増大され得る。ＰＣＳがアイドルに戻るとき、データフレームが送出され得る。そうでない場合、この方法は、ＶＣＳが終了するのを待機し得、ＢＥは同じ値のままである。ＡＣＫメッセージが受け取られることなくデータが送出されるとき、ＢＥが増大される。しかし、ＰＣＳオペレーションからのビジー表示の後、そのノード又はデバイスは、全てのノードが公正なＣＳＭＡ競合を有し得るように、そのコンテンションウィンドウを増大させない可能性がある。つまり、ＡＣＫが失われた後にのみ、あり得るパケット衝突及び混みあった媒体を示唆し、ノードは、チャネルの利用のため他のデバイスと競合するようコンテンションウィンドウを増大し得る。
【００４０】
ＡＣＫが失われるとき、最もあり得る理由が２つあり得ることに注意されたい。１つ目は、チャネル状況が不良である可能性があり、この場合、センダーは、コンテンションウィンドウサイズを増大させることなく再び送信を試み得る。２つ目は、パケット衝突が生じた可能性があり（チャンネルがビジーであることに起因する）、その場合、競合するセンダーは、送信を試みる前にそれらの時間又はコンテンションウィンドウ寸法を増大させ得る。幾つかの実装において、センダー及びレシーバは、ＮＡＣＫ（ＮＡＣＫが送られ得る場合）又は情報の幾つかの付加的な交換において、余分のビットを用いて（過去の）失われたＡＣＫに関して互いに相互作用し得る。レシーバは、ＡＣＫが失われたときセンダーが異なって応答し得るように、センダーが不良チャネル状況をパケット衝突と区別するのを助けるためにこの情報を用い得る。付加的に或いは代替として、レシーバは、受信したパケットが低品質インジケータ（ＬＱＩ）を有することをレシーバが見つけた場合、ＡＣＫパケットにおいて余分のビットを用いてその不良のチャネルについてセンダーに警告することもできる。
【００４１】
図７は、幾つかの実施例に従った集積回路のブロック図である。幾つかの場合において、図２〜図４に示すデバイス及び／又は装置の１つ又は複数は、図７に示すように実装され得る。幾つかの実施例において、集積回路７０２は、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、システムオンチップ（ＳｏＣ）回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、マイクロプロセッサ、マイクロコントローラなどであり得る。集積回路７０２は、１つ又は複数の周辺機器７０４及び外部メモリ７０３に結合される。幾つかの場合において、外部メモリ７０３は、図３及び図４に示すデータベース３０４及び／又は４０４をストア及び／又は維持するために用いられ得る。さらに集積回路７０２は、信号を外部メモリ７０３に送るためのドライバ、及び信号を周辺機器７０４に送るための別のドライバを含み得る。集積回路７０２への電源電圧、並びにメモリ７０３及び／又は周辺機器７０４への１つ又は複数の電源電圧を供給する電源７０１も提供される。幾つかの実施例において、集積回路７０２の複数のインスタンスが含まれ得る（且つ、複数の外部メモリ７０３も同様に含まれ得る）。
【００４２】
周辺機器７０４は、ＰＬＣシステムのタイプに応じて、任意の所望な回路要素を含み得る。例えば、或る実施例において、周辺機器７０４はローカル通信インタフェース３０３を実装し得、例えば、ＷＩ−ＦＩ、ＺＩＧＢＥＥ、ＢＬＵＥＴＯＯＴＨ、セルラ、全地球測位システムなど、様々なタイプの無線通信用のデバイスを含み得る。周辺機器７０４は、ＲＡＭストレージ、ソリッドステートストレージ、又はディスクストレージを含む、追加のストレージも含み得る。幾つかの場合において、周辺機器７０４は、例えば、タッチディスプレイスクリーン又はマルチタッチディスプレイスクリーンを含むディスプレイスクリーン、キーボード又は他の入力デバイス、マイクロフォン、スピーカなど、ユーザインタフェースデバイスを含み得る。
【００４３】
外部メモリ７０３は、任意のタイプのメモリを含み得る。例えば、外部メモリ７０３は、ＳＲＡＭ、不揮発性ＲＡＭ（ＮＶＲＡＭ、例えば、「フラッシュ」メモリなど）、及び／又は、例えば、同期ＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレート（ＤＤＲ、ＤＤＲ２、ＤＤＲ３など）ＳＤＲＡＭ、ＤＲＡＭなど、ダイナミックＲＡＭ（ＤＲＡＭ）を含み得る。外部メモリ７０３は、例えば、シングルインラインメモリモジュール（ＳＩＭＭ）、デュアルインラインメモリモジュール（ＤＩＭＭ）など、メモリデバイスの取付け先である１つ又は複数のメモリモジュールを含み得る。
【００４４】
図６に関して説明した様々なオペレーションが、同時に及び／又は順次に実行され得ることを理解されよう。また、各オペレーションが任意の順序で実行され得ること、及び１回又は反復的に実行され得ることも理解されよう。様々な実施例において、図２〜図４に示されるモジュールは、特定のオペレーションを実行するように構成される、ソフトウェアルーチン、論理機能、及び／又はデータ構造のセットを表し得る。これらのモジュールは別個の論理ブロックとして示されているが、他の実施例において、これらのモジュールによって実行されるオペレーションの少なくとも幾つかは、より少ないブロックに組み合わされてもよい。逆に、図２〜図４に示されるモジュールの任意の所与のものは、そのオペレーションが２つ又はそれ以上の論理ブロックに分割されるように実装されてもよい。また、これら様々なモジュールは特定の構成で図示されているが、他の実施例において他の適切な方法で再配置されてもよい。
【００４５】
本明細書で説明されるオペレーションの多くは、ハードウェア、ソフトウェア、及び／又はファームウェア、且つ／或いはそれらの任意の組み合わせにおいて実装され得る。ソフトウェアにおいて実装される場合、必要なタスク又はオペレーションをコードセグメントが実行する。プログラム又はコードセグメントは、プロセッサ読み取り可能、コンピュータ読み取り可能、又はマシン読み取り可能な媒体内にストアされ得る。プロセッサ読み取り可能、コンピュータ読み取り可能、又はマシン読み取り可能な媒体は、情報をストア又は転送可能な任意のデバイス又は媒体を含み得る。このようなプロセッサ読み取り可能媒体の例には、電子回路、半導体メモリデバイス、フラッシュメモリ、ＲＯＭ、消去可能ＲＯＭ（ＥＲＯＭ）、フロッピィディスク、コンパクトディスク、光ディスク、ハードディスク、光ファイバ媒体などが含まれる。
【００４６】
ソフトウェアコードセグメントは、例えば、ハードドライブ、フラッシュメモリ、ソリッドステートメモリ、光ディスク、ＣＤ、ＤＶＤ、コンピュータプログラム製品、又はプロセッサ又はミドルウェアコンテナサービスに対し有形のコンピュータ読み取り可能又はマシン読み取り可能なストレージを提供する他のメモリデバイスなど、任意の揮発性又は不揮発性の記憶デバイスに記憶され得る。他の実施形態において、メモリは幾つかの物理的記憶デバイスの仮想化であり得、これらの物理的記憶デバイスは同じ種類又は異なる種類である。コードセグメントは、内部バス、インターネット又はイントラネットなどの別のコンピュータネットワークを介して、或いは、他の有線又は無線のネットワークを介して、ストレージからプロセッサ又はコンテナへダウンロード又は転送され得る。
【００４７】
当業者であれば、説明した例示の実施例に変形が成され得ること、及び本発明の特許請求の範囲内で他の実施例を実装し得ることが分かるであろう。
【図１】
0005964317.tif 000002
【図２】
0005964317.tif 000003
【図３】
0005964317.tif 000004
【図４】
0005964317.tif 000005
【図５】
0005964317.tif 000006
【図６】
0005964317.tif 000007
【図７】
0005964317.tif 000008