(57)【特許請求の範囲】
【請求項１】
ｉ）第１クロック周波数を有する第１クロックを利用する第１通信デバイス、およびｉｉ）第２クロック周波数を有する第２クロックを利用する第２通信デバイスに対するクロック補償のための方法であって、
第１送信が前記第２通信デバイスにより送信されたときに対応する第１タイムスタンプを、前記第１通信デバイスにおいて決定する段階と、
第２送信が前記第２通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、前記第１通信デバイスにおいて決定する段階と、
前記第１クロック周波数に基づき、前記第１送信が前記第１通信デバイスにおいて受信されたときに対応する第３タイムスタンプを、前記第１通信デバイスにおいて決定する段階と、
前記第１クロック周波数に基づき、前記第２送信が前記第１通信デバイスにより送信されたときに対応する第４タイムスタンプを、前記第１通信デバイスにおいて決定する段階と
補償インジケータが前記第２通信デバイスから受信されたかを、前記第１通信デバイスにおいて決定する段階と、
前記補償インジケータが前記第２通信デバイスから受信されていないと決定されたときに、前記第１通信デバイスにおいて、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく、前記第１クロック周波数と前記第２クロック周波数との間の差を補償する段階と、
前記補償インジケータが受信されていないと決定されたときに、前記補償済第１タイムスタンプ、前記補償済第２タイムスタンプ、前記第３タイムスタンプ、および前記第４タイムスタンプに基づき、前記第１通信デバイスと前記第２通信デバイスとの間の距離を、前記第１通信デバイスにおいて計算する段階と
を備える、方法。
【請求項２】
前記補償インジケータが受信されていると決定されたときに、前記補償インジケータの存在が、前記第１タイムスタンプおよび前記第２タイムスタンプが前記第１クロック周波数に合わせて受信され、補償される必要がないことを示す、請求項１に記載の方法。
【請求項３】
前記補償インジケータが受信されていると決定されたときに、前記第１タイムスタンプ、前記第２タイムスタンプ、前記第３タイムスタンプ、および前記第４タイムスタンプに基づき、前記第１通信デバイスと前記第２通信デバイスとの間の前記距離を、前記第１通信デバイスにおいて計算する段階と
をさらに備える、請求項２に記載の方法。
【請求項４】
補償する前記段階は、
【数６２】
0006409247.tif 000063
に関して第１数式
【数６３】
0006409247.tif 000064
を評価する段階と、
【数６４】
0006409247.tif 000065
に関して第２数式
【数６５】
0006409247.tif 000066
を評価する段階と
を有し、
【数６６】
0006409247.tif 000067
および
【数６７】
0006409247.tif 000068
はそれぞれ、前記第１タイムスタンプおよび前記第２タイムスタンプを表し、
【数６８】
0006409247.tif 000069
は、前記第１クロック周波数と前記第２クロック周波数との間の差をｐｐｍ単位で表し、
【数６９】
0006409247.tif 000070
および
【数７０】
0006409247.tif 000071
はそれぞれ、前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプを表す、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記第１送信は、ファインタイミング測定リクエストを含み、
前記第２送信は、前記ファインタイミング測定リクエストの肯定応答を含む、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記第１送信と前記第２送信とのうちそれぞれは、無線ネットワーキング通信プロトコルに準拠する、請求項１から５のいずれか一項に記載の方法。
【請求項７】
ｉ）第１クロック周波数を有する第１クロックを利用する第１通信デバイスと、ｉｉ）第２クロック周波数を有する第２クロックを利用する第２通信デバイスとの間のクロック補償のための方法であって、
第１送信が前記第１通信デバイスにより送信されたときに対応する第１タイムスタンプを、前記第１通信デバイスにおいて決定する段階と、
第２送信が前記第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、前記第１通信デバイスにおいて決定する段階と、
前記第１通信デバイスにおいて、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく、前記第１クロック周波数と前記第２クロック周波数との間の差を補償する段階と、
前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプを前記第１通信デバイスから前記第２通信デバイスへ送出する段階と、
補償インジケータを、前記第１通信デバイスから前記第２通信デバイスへ送出する段階であって、前記補償インジケータは、前記第２通信デバイスが前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプに関して前記第１クロック周波数と前記第２クロック周波数との間の前記差を補償する必要がないことを示す、段階と
を備え、
前記補償済第１タイムスタンプ、前記補償済第２タイムスタンプおよび前記補償インジケータを前記第２通信デバイスへ送出することは、
前記第２クロック周波数に基づき、前記第１送信が前記第２通信デバイスにおいて受信されたときに対応する第３タイムスタンプを、前記第２通信デバイスにおいて決定し、
前記第２クロック周波数に基づき、前記第２送信が前記第２通信デバイスにより送信されたときに対応する第４タイムスタンプを、前記第２通信デバイスにおいて決定し、
前記補償済第１タイムスタンプ、前記補償済第２タイムスタンプ、前記第３タイムスタンプ、および前記第４タイムスタンプに基づき、前記第１通信デバイスと前記第２通信デバイスとの間の距離を、前記第２通信デバイスにおいて計算する
ためのものである、
方法。
【請求項８】
補償する前記段階は、
【数７１】
0006409247.tif 000072
に関して第１数式
【数７２】
0006409247.tif 000073
を評価する段階と、
【数７３】
0006409247.tif 000074
に関して第２数式
【数７４】
0006409247.tif 000075
を評価する段階と
を有し、
【数７５】
0006409247.tif 000076
および
【数７６】
0006409247.tif 000077
はそれぞれ、前記第１タイムスタンプおよび前記第２タイムスタンプを表し、
【数７７】
0006409247.tif 000078
は、前記第１クロック周波数と前記第２クロック周波数との間の差をｐｐｍ単位で表し、
【数７８】
0006409247.tif 000079
および
【数７９】
0006409247.tif 000080
はそれぞれ、前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプを表す、請求項７に記載の方法。
【請求項９】
前記第１送信は、ファインタイミング測定リクエストを含み、
前記第２送信は、前記ファインタイミング測定リクエストの肯定応答を含む、請求項７または８に記載の方法。
【請求項１０】
前記第１送信と前記第２送信とのうちそれぞれは、無線ネットワーキング通信プロトコルに準拠する、請求項７から９のいずれか一項に記載の方法。
【請求項１１】
第１クロック周波数を有する第１クロックを利用する第１通信デバイスであって、
第１送信が第２クロック周波数を有する第２クロックを利用する第２通信デバイスにより送信されたときに対応する第１タイムスタンプを決定し、
第２送信が前記第２通信デバイスにおいて受信されたときに対応する第２タイムスタンプを決定する
ネットワークインタフェースと、
前記第１クロック周波数に基づき、前記第１送信が前記第１通信デバイスにおいて受信されたときに対応する第３タイムスタンプを決定し、
前記第１クロック周波数に基づき、前記第２送信が前記第２通信デバイスへ送出されたときに対応する第４タイムスタンプを決定し、
補償インジケータが前記第２通信デバイスから受信されたかを決定し、
前記補償インジケータが前記第２通信デバイスから受信されないときに、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく、前記第１クロック周波数と前記第２クロック周波数との間の複数の差を補償し、
前記補償インジケータが受信されないときに、前記補償済第１タイムスタンプ、前記補償済第２タイムスタンプ、前記第３タイムスタンプ、および前記第４タイムスタンプに基づき、前記第１通信デバイスと前記第２通信デバイスとの間の距離を計算する
クロック計算および補償ユニットと
を備える、第１通信デバイス。
【請求項１２】
前記クロック計算および補償ユニットはさらに、前記補償インジケータが受信されたときに、前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプを提供するべく、前記第１クロック周波数と前記第２クロック周波数との間の複数の差を補償しない、請求項１１に記載の第１通信デバイス。
【請求項１３】
前記補償インジケータの存在は、前記第１タイムスタンプおよび前記第２タイムスタンプが前記第１クロック周波数に合わせて受信され、補償される必要がないことを示す、
請求項１１または１２に記載の第１通信デバイス。
【請求項１４】
前記クロック計算および補償ユニットはさらに、
前記補償インジケータが受信されたときに、前記第１タイムスタンプ、前記第２タイムスタンプ、前記第３タイムスタンプ、および前記第４タイムスタンプに基づき、前記第１通信デバイスと前記第２通信デバイスとの間の距離を計算する、
請求項１３に記載の第１通信デバイス。
【請求項１５】
前記クロック計算および補償ユニットはさらに、
【数８０】
0006409247.tif 000081
に関して第１数式
【数８１】
0006409247.tif 000082
を評価し、
【数８２】
0006409247.tif 000083
に関して第２数式
【数８３】
0006409247.tif 000084
を評価することにより前記第１クロック周波数と前記第２クロック周波数との間の複数の差を補償し、
【数８４】
0006409247.tif 000085
および
【数８５】
0006409247.tif 000086
はそれぞれ、前記第１タイムスタンプおよび前記第２タイムスタンプを表し、
【数８６】
0006409247.tif 000087
は、前記第１クロック周波数と前記第２クロック周波数との間の差をｐｐｍ単位で表し、
【数８７】
0006409247.tif 000088
および
【数８８】
0006409247.tif 000089
はそれぞれ、前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプを表す、請求項１１から１４のいずれか一項に記載の第１通信デバイス。
【請求項１６】
前記ネットワークインタフェースは、ファインタイミング測定リクエストを含む前記第１送信を送出し、前記第２通信デバイスから送出された前記ファインタイミング測定リクエストの肯定応答を含む前記第２送信を受信する、請求項１１から１５のいずれか一項に記載の第１通信デバイス。
【請求項１７】
前記第１送信と前記第２送信とのうちそれぞれは、無線ネットワーキングプロトコルに準拠する、請求項１１から１６のいずれか一項に記載の第１通信デバイス。
【請求項１８】
第１クロック周波数を有する第１クロックを利用する第１通信デバイスであって、
第１送信が前記第１通信デバイスにより送信されたときに対応する第１タイムスタンプを決定し、
第２クロック周波数を有する第２クロックを利用する第２通信デバイスにより送信された第２送信が前記第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを決定し、
前記第１送信が前記第２通信デバイスにおいて受信されたときに対応する第３タイムスタンプを決定し、
前記第２送信が前記第２通信デバイスにより送信されたときに対応する第４タイムスタンプを決定する
ネットワークインタフェースと、
補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく前記第１クロック周波数と前記第２クロック周波数との間の複数の差を補償し、
前記補償済第１タイムスタンプ、前記補償済第２タイムスタンプ、前記第３タイムスタンプ、および前記第４タイムスタンプに基づき、前記第１通信デバイスと前記第２通信デバイスとの間の距離を計算する
クロック計算および補償ユニットと
を備え、
前記ネットワークインタフェースはさらに、前記第１通信デバイスに、前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプ、並びに補償インジケータを前記第２通信デバイスへ送出させ、
前記補償インジケータは、前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプが前記第２通信デバイスにより補償される必要がないことを示す、第１通信デバイス。
【請求項１９】
前記クロック計算および補償ユニットはさらに、
【数８９】
0006409247.tif 000090
に関して第１数式
【数９０】
0006409247.tif 000091
を評価し、
【数９１】
0006409247.tif 000092
に関して第２数式
【数９２】
0006409247.tif 000093
を評価することにより前記第１タイムスタンプおよび前記第２タイムスタンプを補償し、
【数９３】
0006409247.tif 000094
および
【数９４】
0006409247.tif 000095
はそれぞれ、前記第１タイムスタンプおよび前記第２タイムスタンプを表し、
【数９５】
0006409247.tif 000096
は、前記第１クロック周波数と前記第２クロック周波数との間の差をｐｐｍ単位で表し、
【数９６】
0006409247.tif 000097
および
【数９７】
0006409247.tif 000098
はそれぞれ、前記補償済第１タイムスタンプおよび前記補償済第２タイムスタンプを表す、請求項１８に記載の第１通信デバイス。
【請求項２０】
前記ネットワークインタフェースは、ファインタイミング測定リクエストを含む前記第１送信を送出し、前記第２通信デバイスから送出された前記ファインタイミング測定リクエストの肯定応答を含む前記第２送信を受信する、請求項１８または１９に記載の第１通信デバイス。
【請求項２１】
前記第１送信と前記第２送信とのうちそれぞれは、無線ネットワーキング通信プロトコルに準拠する、請求項１８から２０のいずれか一項に記載の第１通信デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照および参照による組み込み］  本願は、発明の名称が「Ｆｒｅｑｕｅｎｃｙ  Ｏｆｆｓｅｔ  Ｃｏｍｐｅｎｓａｔｉｏｎ  ｆｏｒ  Ｗｉ−Ｆｉ  Ｒａｎｇｉｎｇ」である２０１３年１月３１日に提出された米国仮出願第６１／７５９，２３０号、および発明の名称が「ＰＰＭ  Ｉｓｓｕｅ  ｆｏｒ  ＦＴＭ」である２０１３年８月６日に提出された米国仮出願第６１／８６２，６５０号の便益を主張する。両出願の開示はここにおいて、それらの全体が参照により本明細書に組み込まれる。
【０００２】
本開示は概して、複数の無線通信ネットワークに関し、より具体的には、複数の無線通信デバイス間の複数の送信時間を測定するための複数の方法および複数のシステムに関する。
【背景技術】
【０００３】
無線ワイドエリアネットワーク（ＷＷＡＮ）、無線ローカルエリアネットワーク（ＷＬＡＮ）、セルラネットワーク、および無線パーソナルエリアネットワーク（ＷＰＡＮ）など複数の無線通信ネットワーク間の位置情報を用いることは益々一般的になってきている。さらに、無線ネットワーク内の複数の通信デバイスの間の距離の複数の測定値を取得することは、無線レンジングについての識見を提供するので有利である。そのような複数の測定はしばしば、２またはそれより多くの通信デバイス間で交換される、タイムスタンプが記録された到着時間（ＴｏＡ）および送出時間（ＴｏＤ）の情報を用いて伝播時間を計算することにより実行される。
【発明の概要】
【課題を解決するための手段】
【０００４】
複数の通信デバイス間の精度のよい複数のレンジング測定値を決定するための複数の方法、システム、および装置が開示される。単一の通信デバイスクロックリファレンスに基づき補償された複数のクロック周波数を用いることにより、各通信デバイスにおいて実装されている複数のクロック周波数間の複数の差が取り除かれ得る。結果として、複数の通信デバイス間の複数の信号伝播に関して、高度に精度のよい複数の伝播時間が決定され得、したがって、同様に、複数の往復伝播時間計算を用いて、高度に精度のよい複数のレンジング測定値が取得され得る。
【０００５】
実施形態において、
ｉ）第１クロック周波数を有する第１クロックを利用する第１通信デバイスと、ｉｉ）第２クロック周波数を有する第２クロックを利用する第２通信デバイスとの間のクロック補償のための方法は、
第１送信が第２通信デバイスにより送信されたときに対応する第１タイムスタンプを、第１通信デバイスにおいて決定する段階と、
第２送信が第２通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、第１通信デバイスにおいて決定する段階と
を含む。方法は、
補償インジケータが第２通信デバイスから受信されたかを、第１通信デバイスにおいて決定する段階と、
補償インジケータが第２通信デバイスから受信されていないと決定されたときに、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の差を、第１通信デバイスにおいて補償する段階と
をさらに含む。さらに、そのような実施形態によると、補償インジケータの存在は、第１タイムスタンプおよび第２タイムスタンプが第１クロック周波数に合わせて受信され、補償される必要がないことを示す。
【０００６】
他の実施形態において、
ｉ）第１クロック周波数を有する第１クロックを利用する第１通信デバイスと、ｉｉ）第２クロック周波数を有する第２クロックを利用する第２通信デバイスとの間のクロック補償のための方法は、
第１送信が第１通信デバイスにより送信されたときに対応する第１タイムスタンプを、第１通信デバイスにおいて決定する段階と、
第２送信が第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、第１通信デバイスにおいて決定する段階と
を含む。方法は、
補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の差を、第１通信デバイスにおいて補償する段階と、
補償済第１タイムスタンプおよび補償済第２タイムスタンプを第１通信デバイスから第２通信デバイスへ送出する段階と、
補償インジケータを、第１通信デバイスから第２通信デバイスへ送出する段階と
をさらに含む。さらに、そのような実施形態によると、補償インジケータは、第２通信デバイスが補償済第１タイムスタンプおよび補償済第２タイムスタンプに関して第１クロック周波数と第２クロック周波数との間の差を補償する必要がないことを示す。
【０００７】
さらに他の実施形態において、第１通信デバイスは、第１クロック周波数を有する第１クロックを利用するよう構成されており、およびネットワークインタフェースを備え、
ネットワークインタフェースは、
第１送信が第２クロック周波数を有する第２クロックを利用する第２通信デバイスにより送信されたときに対応する第１タイムスタンプを決定し、
第２送信が第２通信デバイスにおいて受信されたときに対応する第２タイムスタンプを決定するよう構成されている。第１通信デバイスは、クロック計算および補償ユニットをさらに含み、
クロック計算および補償ユニットは、
補償インジケータが第２通信デバイスから受信されたかを決定し、
補償インジケータが第２通信デバイスから受信されないときに、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の複数の差を補償するよう構成されている。さらに、そのような実施形態によると、補償インジケータの存在は、第１タイムスタンプおよび第２タイムスタンプが第１クロック周波数に合わせて受信され、補償される必要がないことを示す。
【０００８】
更なる実施形態において、第１通信デバイスは、第１クロック周波数を有する第１クロックを利用するよう構成されており、およびネットワークインタフェースを備え、ネットワークインタフェースは、第１送信が第１通信デバイスにより送信されたときに対応する第１タイムスタンプを決定し、第２送信が第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを決定するよう構成されている。さらに、第２送信は、第２クロック周波数を有する第２クロックを利用するよう構成されている第２通信デバイスにより送信される。第１通信デバイスは、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の複数の差を補償するよう構成されたクロック計算および補償ユニットをさらに含む。さらに、そのような実施形態によると、ネットワークインタフェースはさらに、第１通信デバイスに、補償済第１タイムスタンプおよび補償済第２タイムスタンプ、並びに補償インジケータを第２通信デバイスへ送出させるようにも構成され、補償インジケータは、補償済第１タイムスタンプおよび補償済第２タイムスタンプが第２通信デバイスにより補償される必要がないことを示す。
【図面の簡単な説明】
【０００９】
【図１】本開示の実施形態に係る、１または複数の通信デバイスが複数の伝播時間測定技術を利用する例示的なネットワーク１０のブロック図である。
【００１０】
【図２】本開示の実施形態に係るタイミング図である。
【００１１】
【図３】本開示の実施形態に係る例示的な通信デバイスのブロック図である。
【００１２】
【図４】本開示の実施形態に係る例示的な通信デバイスである。
【００１３】
【図５】本開示の実施形態に係る、伝播時間を測定するための例示的な方法のフロー図である。
【００１４】
【図６】本開示の実施形態に係る、伝播時間を測定するための例示的な方法のフロー図である。
【発明を実施するための形態】
【００１５】
複数の通信デバイス間の複数の送信に関する伝播時間を測定するための複数の方法および装置の複数の実施形態が本明細書において開示される。いくつかの実施形態において、送出時間および到着時間など複数のタイムスタンプを用いて伝播時間が測定される。いくつかのシナリオにおいて、複数の伝播時間はナノ秒のオーダーであるので、それにより、少なくともいくつかの実施形態において、複数のタイムスタンプを用いて精度のよい複数の測定値を取得することは精度のよい複数のタイムスタンプ測定を要求する。しかし、少なくともいくつかのシナリオにおいて、複数のタイムスタンプを生成するときに各通信デバイスにより用いられる複数のクロック周波数間の複数の差（周波数ドリフトに起因するものなど）によって、複数のタイムスタンプ測定値に複数の誤差がもたらされる。それにより、本明細書に開示される様々な実施形態において、複数のタイムスタンプ測定値の複数の誤差を軽減するよう、異なる複数の通信デバイスの複数のクロック間の複数の差を考慮に入れる複数の技術が利用される。
【００１６】
図１は、本開示の実施形態に係る、１または複数の通信デバイスが複数の伝播時間測定技術を利用する例示的なネットワーク１０のブロック図である。アクセスポイント（ＡＰ）１４は、ネットワークインタフェース１６に結合されたホストプロセッサ１５を含む。ネットワークインタフェース１６は、媒体アクセス制御（ＭＡＣ）処理ユニット１８と、物理レイヤー（ＰＨＹ）処理ユニット２０とを含む。ＰＨＹ処理ユニット２０は、１または複数のアンテナ２４に結合された１または複数のトランシーバ２１を含む。当業者には理解いただけるように、図１には３台のトランシーバ２１および３台のアンテナ２４が図示されているが、ＡＰ１４の様々な実施形態は、任意の適切な数（例えば、１、２、４、５、その他）のトランシーバ２１とアンテナ２４とを含む。さらに、様々な実施形態によると、１または複数のアンテナが複数のトランシーバ間で共有され、および／または、その逆が起こり得るように、任意の適切な数のトランシーバ２１が任意の適切な数のアンテナ２４に結合される。
【００１７】
ネットワーク１０は複数のクライアント端末２５を含む。図１には４台のクライアント端末２５が図示されているが、ネットワーク１０の様々な実施形態は、任意の数（例えば、１、２、３、５、６、その他）のクライアント端末２５を含む。クライアント端末２５−１は、ネットワークインタフェース２７に結合されたホストプロセッサ２６を含む。ネットワークインタフェース２７は、ＭＡＣ処理ユニット２８とＰＨＹ処理ユニット２９とを含む。ＰＨＹ処理ユニット２９は、１または複数のアンテナ３４に結合された１または複数のトランシーバ３０を含む。図１には３台のトランシーバ３０と３台のアンテナ３４とが図示されているが、クライアント端末２５−１の様々な実施形態は、任意の適切な数（例えば、１、２、４、５、その他）のトランシーバ３０とアンテナ３４とを含む。さらに、様々な実施形態によると、１または複数のアンテナが複数のトランシーバ間で共有され、および／または、その逆が起こり得るように、任意の適切な数のトランシーバ３０が任意の適切な数のアンテナ３４に結合される。
【００１８】
本開示の様々な実施形態によると、任意の適切な数のクライアント端末２５−２、２５−３および２５−４は、クライアント端末２５−１と同じ、または実質的に同様の構造を有する。そのような複数の実施形態によると、クライアント端末２５−１と同じ、または実質的に同様の構造を有する複数のクライアント端末２５は、任意の適切な数のトランシーバおよびアンテナを含む。例えば、クライアント端末２５−１は３台のトランシーバ３４とアンテナ３０とを有するものとして図示されているが、クライアント端末の様々な実施形態２５−２は、３つとは異なる適切な数のトランシーバと、３つとは異なる適切な数のアンテナとを有する。クライアント２５−２、２５−３および２５−４と関連付けられるアンテナおよびトランシーバの数は、簡潔にするために図１には示されていない。
【００１９】
ネットワーク１０は、１または複数のＩＥＥＥ規格、無線パーソナルエリア通信ネットワークプロトコル（例えばＢＬＵＥＴＯＯＴＨ（登録商標）プロトコル）、ＷｉＭＡＸ（登録商標）、その他により規定される携帯電話通信プロトコル、無線ローカルエリアネットワーク（ＷＬＡＮ）通信プロトコルなど、任意の数の適切な通信プロトコルに従った複数の通信をサポートする。適切な複数のＩＥＥＥ規格の複数の例は、８０２．１１ａ、８０２．１１ｇ、８０２．１１ｎ、８０２．１１ａｃ、８０２．１１ａｄ、８０２．１１ａｆ、８０２．１１ｖ、および／または８０２．１１ａｈ規格を含む。ＡＰ１４はアクセスポイントとしてラベル付けされているが、ＡＰ１４の様々な実施形態は、任意の適切なタイプの無線通信をサポートするよう構成され、複数のＷＬＡＮ技術のみをサポートすることには限定されない。例えば、ＡＰ１４の様々な実施形態は、Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）プロトコルを含む複数の３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ（３ＧＰＰ）技術など複数のＷＬＡＮおよび／または携帯電話通信プロトコルをサポートするよう構成される。図１は単一のＡＰ１４のみを図示しているが、クライアントデバイス２５の様々な実施形態は、互いに同じであっても異なってもよい複数の通信プロトコルを用いた別個の複数のＡＰとの同時通信を含め、いつでも１つより多くのＡＰと通信を行うよう構成される。本開示の実施形態によると、ＡＰ１４および複数のクライアント端末２５は、１または複数のＩＥＥＥ  ８０２．１１規格または他の適切な複数の通信プロトコルに準拠する複数のプロトコルなど、１または複数の通信プロトコルに準拠してデータを送信および受信するよう構成される。本開示の他の実施形態によると、複数のクライアント端末２５は、追加的に、または代替的に、アドホックネットワーキングをサポートするよう、１または複数のＩＥＥＥ  ８０２．１１規格または他の適切な複数の通信プロトコルに準拠する複数のプロトコルなど１または複数の通信プロトコルに準拠して互いにデータを送信および受信するよう構成される。
【００２０】
様々な実施形態において、ＡＰ１４および／またはクライアント２５は、複数の通信が、ＡＰ１４および／またはクライアント２５から送出されるとき（送出時間（ＴｏＤ）タイムスタンプ）、および、他のＡＰ１４および／またはクライアント２５において受信されたとき（到着時間（ＴｏＡ）タイムスタンプ）と関連付けられた複数のタイムスタンプを決定する。これらのタイムスタンプは、ＡＰ１４および／またはクライアント２５内で実装されている任意の適切な数の発振器および／またはクロックを用いて生成される。ＡＰ１４および／またはクライアント２５は、自身らの複数の通信が他のＡＰ１４および／またはクライアント２５へ送出されるとき（ＴｏＤ）を決定し、複数の通信が送出されたときを示す複数のＴｏＤタイムスタンプを生成するよう構成される。同様に、ＡＰ１４および／またはクライアント２５は、複数の通信が受信されたとき（ＴｏＡ）を決定し、複数の通信が受信されたときを示す複数のＴｏＡタイムスタンプを生成するよう構成される。いくつかの実施形態において、ネットワークインタフェース１６、２７は、複数の通信ユニットが送信される際、またはその少し前に複数のＴｏＤタイムスタンプを複数の通信ユニットへ追加するよう構成される。同様に、いくつかの実施形態において、ネットワークインタフェース１６、２７は、複数の通信ユニットが受信される際に、またはその少し後に、複数のＴｏＡタイムスタンプを複数の通信ユニットに追加するよう構成される。以下にさらに詳細に説明されるように、オプションで、ネットワークインタフェース１６、２７は、１または複数の他の通信デバイスがネットワーク１０内の複数の通信デバイス間の複数の通信に対応する伝播時間および／または往復時間を計算するのを促すために、複数のＴｏＡタイムスタンプおよび複数のＴｏＤタイムスタンプを１または複数の他の通信デバイス（例えば、ＡＰ１４および／または１または複数のクライアント２５）に送信またはフィードバックするよう構成される。
【００２１】
ネットワークインタフェース１６、２７に含まれる、および／または用いられる発振器および／またはクロックは同じ公称周波数で動作するよう製造および／または設計され得るが、複数の製造上のばらつきおよび／または周波数ドリフトにより、ネットワークインタフェース１６、２７内の、および／またはそれらに用いられる複数の発振器および／またはクロックは、互いに周波数が異なることになり得る。そのような複数の周波数差は、温度における複数の差、複数の製造上のばらつき、結晶の複数の不完全性、その他など様々な要因の結果であり得る。様々な実施形態において、ネットワークインタフェース１６、２７は、互いに通信を行っているネットワーク１０内の２またはそれより多くの通信デバイスの複数のクロック周波数間の差を決定するよう構成される。
【００２２】
ネットワークインタフェース１６、２７はさらに、単一の通信デバイスの観点から見てより精度のよい伝播時間測定値を提供するようそのような複数のクロック周波数差を補償するよう構成される。様々な実施形態によると、ネットワークインタフェース１６、２７のうち１または複数は、他のＡＰ１４および／またはクライアント２５にフィードバックされたタイムスタンプがネットワークインタフェース１６、２７により既に補償済みであることを示すインジケータ、通知、および／またはフラグを他のＡＰ１４および／またはクライアント２５へ通信するよう構成される。ネットワークインタフェース１６、２７のうち１または複数は、（ｉ）上記にて説明されたものなど補償インジケーションが受信されていない場合に２またはそれより多くの通信デバイス間の複数のクロック周波数における複数の差を補償し、（ｉｉ）上記にて説明されたものなど補償インジケーションが受信された場合に２またはそれより多くのデバイス間の複数のクロック周波数における複数の差を補償しないよう構成される。
【００２３】
複数のＴｏＡおよびＴｏＤタイムスタンプを用いて、ネットワークインタフェース１６、２７のうち１または複数は、互いに通信を行っている２またはそれより多くのデバイス間の複数の信号の送信に対応する伝播時間を計算するよう構成される。周波数補償の後、この伝播時間は本質的に単一のデバイスクロックリファレンスに基づいており、したがって、異なる複数の通信デバイスにより決定された補償されていない複数のタイムスタンプを用いて伝播時間を計算するのと比較して、伝播時間のより精度のよい測定値である。複数の信号送信の伝播時間は既知または推測される一定値（すなわち、空気など特定の伝播媒体における光速度）となるので、複数のデバイス間の距離は、伝播時間から容易に推定され得る。このように、本開示の様々な実施形態は、互いに通信を行っているＡＰ１４および／またはクライアント２５間の精度のよい距離情報の計算を提供する。
【００２４】
様々な実施形態によると、ＡＰ１４および／または複数のクライアント端末２５（例えばネットワークインタフェース１６、２７のうち１または複数）は、他の複数のクライアント２５および／またはＡＰ１４などネットワーク１０内の他の複数の通信デバイスと距離情報を共有するよう構成される。このように、ＡＰ１４および／またはクライアント２５は、他の複数の通信デバイスについての精度のよい距離情報を取得し、より精度のよい複数の無線レンジング評価を可能とする。
【００２５】
図２は、本開示の実施形態に係るタイミング図の２００である。タイミング図の２００は、２台の通信デバイス間（例えば、図１のＡＰ１４と複数のクライアント２５のうち１つとの間、または複数のクライアント２５のうち２台の間）の単一のフレーム交換を図示している。本開示の実施形態によると、端末管理エンティティ（ＳＭＥ）１、媒体アクセス制御（ＭＡＣ）サブレイヤー管理エンティティ（ＭＬＭＥ）１、およびアンテナ１は、例えば、ＡＰ１４などネットワーク１０の一部である第１通信デバイス内で実装される。例えば、実施形態において、ＳＭＥ１は、ホストプロセッサ１５内で実装され、ＭＬＭＥ１はＭＡＣプロセッサ１８内で実装され、実施形態において、アンテナ１は複数のアンテナ２４のうち１または複数に対応する。さらに、そのような実施形態によると、ＳＭＥ２、ＭＬＭＥ２、およびアンテナ２は、例えば、クライアント２５などネットワーク１０の一部である第２通信デバイス内で実装される。例えば、実施形態において、ＳＭＥ２はホストプロセッサ２６内で実装され、ＭＬＭＥ２はＭＡＣプロセッサ２８内で実装され、実施形態において、アンテナ２は複数のアンテナ３４のうち１または複数に対応する。他の複数の実施形態において、タイミング図の２００は本開示の様々な実施形態を実装する任意の適切な複数の通信デバイスに適用可能であり、上記にて説明された特定のデバイス、またはさらには、ネットワーク１０の一部であるデバイスのみに限定されない。例えば、実施形態において、ＳＭＥ１は端末２５−１のホストプロセッサ２６内で実装され、ＭＬＭＥ１は端末２５−１のＭＡＣプロセッサ２８内で実装され、アンテナ１は端末２５−１の複数のアンテナ３４のうち１または複数に対応し、実施形態において、ＳＭＥ２は端末２５−２のホストプロセッサ内で実装され、ＭＬＭＥ２は端末２５−２のＭＡＣプロセッサ内で実装され、アンテナ２は端末２５−２の複数のアンテナのうち１または複数に対応する。
【００２６】
本開示の実施形態によると、第１通信デバイスの端末管理エンティティ（ＳＭＥ）（ＳＭＥ１）は、ファインタイミング測定リクエストフレーム２０２を処理し、第１通信デバイスのＭＡＣレイヤー管理エンティティ（ＭＬＭＥ）（ＭＬＭＥ１）を介して第２通信デバイスへ送出する。例えば、ファインタイミング測定リクエストフレーム２０２は、第１通信デバイスの、またはそれに結合された対応するアンテナ（アンテナ１）を介して送信される。ファインタイミング測定リクエストフレーム２０２は、第２通信デバイスの、またはそれに結合されたアンテナ（アンテナ２）を介して受信され、第２通信デバイスのＭＬＭＥ（ＭＬＭＥ２）、および／または第２通信デバイスのＳＭＥ（ＳＭＥ２）により処理される。ファインタイミング測定リクエストフレーム２０２を受信すると、第２通信デバイスは、（例えば、ＭＬＭＥ２を用いて）肯定応答フレーム（ＡＣＫ２０４）を生成し、アンテナ２を介して第１通信デバイスへＡＣＫフレーム２０４を送信し返すことにより応答する。
【００２７】
本開示の様々な実施形態によると、第１通信デバイスおよび第２通信デバイスは、例えば、ファインタイミング測定リクエストフレーム２０２およびＡＣＫフレーム２０４を交換するのに、ＩＥＥＥ  ８０２．１１規格により管理されているプロトコルなど１または複数の通信プロトコルを実装する。しばしば、そのような複数の通信プロトコルは概して、フレームタイミング、処理タイミング、その他を規定する。これらの実施形態によると、第１通信デバイスおよび第２通信デバイスは、対応するプロトコルに従って、ファインタイミング測定リクエストフレーム２０２およびＡＣＫフレーム２０４が送出および受信されたときに対応する複数のタイムスタンプを設定する。
【００２８】
例えば、第１通信デバイスは、時間ｔ１において、ファインタイミング測定リクエストフレーム２０２を第２通信デバイスへ送出する。時間ｔ１は、ファインタイミング測定リクエストフレーム２０２が実際にアンテナ１から送信された時間に対応する。第１通信デバイスは、ベースバンド、フレームタイミング、その他の間の処理および／またはフロントエンド変換により引き起こされ得るローカルな複数の処理遅延を考慮に入れるよう構成される。複数の処理遅延は、ファインタイミング測定リクエストフレーム２０２が送信される前にファインタイミング測定リクエストフレーム２０２を処理するのに必要である時間と関連付けられた処理時間２０６により表され得る。ファインタイミング測定リクエストフレーム２０２は既知である、および／または規格化された長さであるので、これらの処理遅延は概して予測可能であり繰り返され得る。結果として、これらの処理遅延は、タイムスタンプｔ１がファインタイミング測定リクエストフレーム２０２がアンテナ１を介して送信された実際の時間を精度よく反映するように考慮に入れられ得る。
【００２９】
本開示の様々な実施形態によると、第１通信デバイスおよび第２通信デバイスのうちそれぞれは、タイムスタンプを生成するのにそれぞれローカルな発振器および／またはクロックを用いるよう構成される。時間をトラッキングし対応するタイムスタンプｔ１を生成するのに任意の発振器および／またはクロックが用いられ得るが、より精度のよいタイムスタンプを提供するよう高精度クロックを利用するのが好ましい。例えば、ＩＥＥＥ  ８０２．１１規格は、２．４ＧＨｚ帯に関してリファレンスクロックの周波数エラーを最大±２５ＰＰＭとして規定している。本開示の実施形態によると、複数のＩＥＥＥ  ８０２．１１規格により規定されているＷｉ−Ｆｉリファレンスクロックが、時間をトラッキングし対応する複数のタイムスタンプを生成するのに用いられる。またいくつかの実施形態において、そのようなクロックは、通信デバイスにおいてキャリア信号を生成するのに利用される。それにより、いくつかの実施形態において、第１通信デバイスのリファレンスクロックと第２通信デバイスとのリファレンスクロックとの間の複数の差が、ｉ）第１通信デバイスにより生成される第１キャリア信号の周波数と、ｉｉ）第２通信デバイスにより生成される第２キャリア信号の周波数との間のオフセットに反映される。複数のキャリア信号の複数の周波数間のそのようなオフセットはしばしば、キャリア周波数オフセット（ＣＦＯ）と呼ばれる。いくつかの実施形態において、以下にさらに詳細に説明されるように、ＣＦＯは第１通信デバイスにより測定され、第１通信デバイスにより生成されるタイムスタンプを調節する、または、第２通信デバイスにより生成されるタイムスタンプを調節するのに利用される。
【００３０】
本開示の様々な実施形態によると、第１通信デバイスおよび第２通信デバイスは、例えば、セルラおよびＷｉ−Ｆｉなど１より多くの無線アクセス技術（ＲＡＴ）を実装する。そのような複数の実施形態によると、複数のタイムスタンプは、Ｗｉ−Ｆｉ通信デバイスに対応するクロックと比較して更なる高精度が要求される傾向にあるセルラベースのクロックを用いて生成される。例えば、第１通信デバイスおよび／または第２通信デバイスは、ＬＴＥプロトコルに従って動作するよう構成されたスマートフォンなどユーザ機器（ＵＥ）の一部として実装され得る。ＬＴＥ無線インタフェースプロトコルは、無線インタフェースに関してわずか５０ｐｐｂの厳しい発振器のドリフトに関する仕様を要求しているのでそのようなクロックリファレンスは、精度のよいタイムスタンプを提供するであろう。
【００３１】
本開示の実施形態によると、第１通信デバイスは、ファインタイミングリクエスト２０２のＴｏＤとしてタイムスタンプｔ１を決定するよう構成され、第２通信は、ファインタイミングリクエスト２０２のＴｏＡとして、ファインタイミング測定リクエストフレーム２０２の受信を関連付けられたタイムスタンプｔ２を決定するよう構成される。上記にて説明されているように、第１通信デバイスおよび第２通信デバイスはそれぞれ、正確なＴｏＤ  ｔ１およびＴｏＡ  ｔ２を決定するべくローカルな複数の処理遅延を補償するよう構成される。さらに、そのような実施形態によると、第２通信デバイスはＡＣＫフレーム２０４が送出された時間（例えば、ＡＣＫ２０４のＴｏＤ）と関連付けられたタイムスタンプｔ３を生成し、第１通信デバイスは、ＡＣＫフレーム２０４が受信されたとき（例えばＡＣＫ２０４のＴｏＡ）と関連付けられた正確なタイムスタンプｔ４を決定する。繰り返すが、上記にて説明されているように、第１通信デバイスおよび第２通信デバイスはそれぞれ、正確なＴｏＤ  ｔ３およびＴｏＡ  ｔ４を決定するべく複数の処理遅延を補償するよう構成される。例えば、第２通信デバイスにおける複数の処理遅延は、ファインタイミング測定リクエストフレーム２０２がアンテナ２において受信された後にファインタイミング測定リクエストフレーム２０２を処理するのに必要とされる時間と関連付けられた処理時間２１０により表され得る。処理遅延２１０は、ファインタイミング測定リクエストフレーム２０２がアンテナ２において受信された実際の時間をタイムスタンプｔ２が精度よく反映するように考慮に入れられ得る。同様に、複数の処理遅延は、タイムスタンプｔ３およびタイムスタンプｔ４を生成するときに考慮に入れられる。
【００３２】
本開示の実施形態によると、第１通信デバイスおよび第２通信デバイスはそれぞれ、自身のそれぞれのＴｏＡおよびＴｏＤタイムスタンプを格納する。例えば、第１通信デバイスはタイムスタンプｔ１およびｔ４を格納し、第２通信デバイスはタイムスタンプｔ２およびｔ３を格納する。さらに、そのような実施形態によると、第１通信デバイスは、タイムスタンプｔ１およびｔ４を含むフィードバック２１２を第２通信デバイスへ送出し返すよう構成される。図２はタイムスタンプｔ１およびｔ４が第２通信デバイスへ送出されることを図示しているが、少なくともいくつかの実施形態は追加的に、または代替的に、第２通信デバイスがタイムスタンプｔ２およびｔ３をフィードバックとして第１通信デバイスへ送出し返すことを含む（図２において示されていない）。このように、様々な実施形態によると、第１通信デバイスおよび／または第２通信デバイスは、フレーム交換およびフィードバック送信後に４つの全てのタイムスタンプｔ１、ｔ２、ｔ３、およびｔ４を取得する。
【００３３】
一旦、第１通信デバイスおよび／または第２通信デバイスが４つの全てのタイムスタンプを取得すると、第１通信デバイスと第２通信デバイスとの間の信号送信伝播時間２１６が計算され得る。実施形態によると、第１通信デバイスおよび／または第２通信デバイスは、第１通信デバイスと第２通信デバイスとの間の往復時間の半分に基づき伝播時間２１６を計算する。例えば、往復時間の推定は、補償されていないタイムスタンプに基づき、以下の数式に従って計算される。
【００３４】
【数１】
0006409247.tif 000002
数式１
【００３５】
このように往復時間を決定することにより、図２に表される複数のフレーム交換期間外の第１通信デバイスと第２通信デバイスとの間のクロックの複数の誤差が取り除かれるが、フレーム交換期間中に関しては取り除かれない。いくつかの適用例に関して、フレーム交換中にもたらされる（例えば、第１通信デバイスのクロックと第２通信デバイスのクロックとの間の複数の周波数における複数の差に起因する）クロックエラーは、容認可能である。しかし、いくつかのシナリオおよび／または実施形態において、信号伝播時間はナノ秒のオーダーであるので、フレーム交換中にもたらされるクロックエラーは無視出来ず、第１通信デバイスと第２通信デバイスとの間の距離を精度よく決定するのに適切な測定値を提供しない。
【００３６】
したがって、本開示の様々な実施形態において、第１通信デバイスおよび／または第２通信デバイスは、第１通信デバイスのクロックと第２通信デバイスのクロックとの間の複数の周波数における複数の差を補償し、複数のクロック周波数における複数の差を考慮に入れるよう複数の補償済タイムスタンプに基づき往復時間を計算するよう構成される。このように第１通信デバイスと第２通信デバイスとの間のクロックオフセットに起因する複数のエラーを取り除いた、および／または減少させたより精度のよい往復時間が計算される。
【００３７】
図３は、本開示の実施形態に係る例示的な通信デバイス３００のブロック図である。通信デバイス３００は、メモリ３０２と、クロック計算および補償ユニット３０４と、ネットワークインタフェース３０６と、アンテナ３０８とを含む。本開示の様々な実施形態によると、通信デバイス３００は、例えば、図１におけるクライアント２５、図２を参照して説明された第１通信デバイスおよび／または第２通信デバイスなど、ネットワーク１０における通信デバイスであるか、またはその一部として実装される。更なる複数の実施形態によると、通信デバイス３００は、任意の適切な通信デバイスであるか、またはその一部として実装され、ネットワーク１０の一部である複数のデバイス、または図２に関して説明されている複数のデバイスのみに限定されない。
【００３８】
ネットワークインタフェース３０６はクロック計算および補償ユニット３０４に結合され、クロック計算および補償ユニット３０４と通信を行い、アンテナ３０８を介して他の通信デバイスへ／から複数の無線通信を送信および受信するよう構成される。様々な実施形態によると、ネットワークインタフェース３０６は、１または複数の適切な通信プロトコルを介して１または複数の通信デバイスと通信を行うよう構成される。当業者には理解いただけるように、ネットワークインタフェース３０６は、任意の数のＭＡＣインタフェース、ＭＬＭＥ、ＭＡＣサブレイヤー管理エンティティ、ＰＨＹインタフェース、ＰＨＹ管理エンティティ、ＳＭＥ、トランシーバ、その他により実装され得る。様々な実施形態において、ネットワークインタフェース３０６は、図１に示されるようなネットワークインタフェース１６または２７の実施例であり、無線ネットワーキングプロトコルに従って動作するよう構成される。
【００３９】
ネットワークインタフェース３０６は、他の通信デバイスへ複数のファインタイミングリクエストフレームを送出し、ファインタイミングリクエストがアンテナ３０８から送出されたときに関連付けられた適当なタイムスタンプ（例えばｔ１  ＴｏＤ）を決定するよう構成される。ネットワークインタフェース３０６は、他の通信デバイスから複数のＡＣＫフレームを受信し、ＡＣＫフレームがアンテナ３０８において受信されたとき（例えば、ｔ４  ＴｏＡ）を決定するよう構成される。図２を参照して前に説明したように、ネットワークインタフェース３０６は、対応するＴｏＡおよびＴｏＤタイムスタンプを精度よく決定するべく複数のファインタイミングリクエストフレームおよび／または複数のＡＣＫフレームの複数の処理遅延を補償するよう構成される。ネットワークインタフェース３０６は、ＴｏＡおよび／またはＴｏＤタイムスタンプを他の通信デバイスへ送出するよう構成される。
【００４０】
追加的に、または代替的に、ネットワークインタフェース３０６は、ＡＣＫフレームを送出している通信デバイスにより用いられるクロック周波数を決定するよう構成される。この情報は、例えば、同期プロトコル、および／またはＡＣＫフレームを送出している通信デバイスから送信される情報の一部として、または２台の通信デバイス間の最初の関連付け期間中に取得され得る。キャリア周波数が複数のタイムスタンプを生成するためのリファレンスとして用いられる、および／またはキャリア周波数が、複数のタイムスタンプを生成するのにも用いられるクロックにより決定される複数の実施形態において、ネットワークインタフェース３０６は、ネットワークインタフェース３０６により用いられるキャリア周波数と、他の通信デバイスにより用いられるキャリア周波数との間のＣＦＯを決定するよう構成される。更なる複数の実施形態によると、ＣＦＯは、通信プロトコルの一部として受信ベクトルに含まれる。実施形態において、例えば、ネットワークインタフェース３０６は、ＣＦＯを決定し、決定されたＣＦＯのインジケーションを他の通信デバイスへ送信するよう構成される。同様に、実施形態において、他の例として、他の通信デバイスがＣＦＯを決定する場合、ネットワークインタフェース３０６は、ＣＦＯのインジケーションを他の通信デバイスから受信するよう構成される。
【００４１】
ネットワークインタフェース３０６は、ｉ）ネットワークインタフェース３０６の、またはそれにより用いられるローカルクロックと、ｉｉ）他の通信デバイスの、例えば通信デバイス３００へＡＣＫフレームを送出している通信の、またはそれにより用いられるクロックのクロック周波数との間の決定された差に基づき、クロックオフセットを決定するよう構成される。ネットワークインタフェース３０６は、クロックオフセット情報および／またはＴｏＡ／ＴｏＤタイムスタンプをクロック計算および補償ユニット３０４へ送出するよう構成される。
【００４２】
実施形態において、クロック計算および補償ユニット３０４は、ＴｏＡおよび／またはＴｏＤタイムスタンプを、ＡＣＫフレームを送出している通信デバイスのタイムレールに変換することにより、それらタイムスタンプを補償するよう構成される。実施形態において、クロック計算および補償ユニット３０４は、ソフトウェア命令またはファームウェア命令を実行して、そのような複数の計算を実現する、および／またはネットワークインタフェース３０６との複数の通信を可能とするよう構成された任意の数のプロセッサおよび／またはコントローラを含む。実施形態において、クロック計算および補償ユニット３０４はホストプロセッサである。他の複数の実施形態において、クロック計算および補償ユニット３０４は、１または複数の集積回路デバイス、特定用途向け集積回路、プログラマブル論理デバイス、その他などのハードウェアを用いて実装される。いくつかの実施形態において、クロック計算および補償ユニット３０４はネットワークインタフェース３０６に含まれる。クロック計算および補償ユニット３０４は、上記にて説明されているように、ＴｏＡおよび／またはＴｏＤタイムスタンプに関して複数のクロックオフセットを補償し、ＡＣＫフレームを送出した通信デバイスへの送信のために訂正されたタイムスタンプ情報をネットワークインタフェース３０６へ送出するよう構成される。
【００４３】
実施形態において、クロック計算および補償ユニット３０４は、タイムスタンプ情報をネットワークインタフェース３０６へ送出する前に複数のタイムスタンプを補償しない。複数のタイムスタンプを通信デバイスに送出する前にそれらを補償するかについての決定は、いくつかの要因に基づいて決定され得る。様々な実施形態において、補償するかの決定は、複数の通信デバイス間の最初の関連付け期間中に、最初の関連付け期間の後いつでも、通信プロトコルの一部として、および／または通信デバイスのタイプに基づいてなされ得る。例えば、通信デバイス３００は、電池により電力供給されるモバイルデバイスとして、またはその一部として実装され得、他方、ＡＣＫフレームを送出している通信デバイスは、交流（ＡＣ）ＡＣ電源により電力供給される。そのような場合、２台の通信デバイスは通信プロトコルに従って通信を行い、補償がＡＣ電源を利用している通信デバイスにおいて実行されることを決定し得る。その結果として、計算および補償ユニット３０４は、処理能力を節約し電池寿命を向上させるようＴｏＡおよびＴｏＤタイムスタンプを補償しないようネットワークインタフェース３０６から複数の命令を受信し得る。
【００４４】
様々な実施形態において、クロック計算および補償ユニット３０４並びにネットワークインタフェース３０６は、複数の補償済タイムスタンプの計算を共有する。例えば、オプションで、ネットワークインタフェース３０６は、複数の補償済タイムスタンプを計算し、これらの計算をクロック計算および補償ユニット３０４へオフロードする。クロック計算および補償ユニット３０４がタイムスタンプ補償を実行する実施形態によると、クロック計算および補償ユニット３０４は、ＴｏＡおよび／またはＴｏＤタイムスタンプが補償されたことを示す１または複数のインジケーションおよび／または通知をネットワークインタフェース３０６へ送出するよう構成される。ネットワークインタフェース３０６がタイムスタンプ補償を実行する実施形態によると、これらのインジケーションおよび／または通知は、クロック計算および補償ユニット３０４により送出される必要はない。
【００４５】
複数のタイムスタンプが補償された場合、ネットワークインタフェース３０６は、補償が起こったことを示すインジケーションおよび／または通知を他の通信デバイスへ送出する。様々な実施形態において、複数のタイムスタンプが補償されたかについてのそのような複数のインジケーションおよび／または通知は、１または複数の通信プロトコルを介した複数の通信、タイムスタンプ補償が起こったかに基づく論理的なビット値に設定されたフラグビット、そのようなインジケーションを含む別個のデータパケットであり、このデータパケットが欠如しているということは補償が実行されていないことを示すデータパケット、その他を含む。
【００４６】
クロック計算および補償ユニット３０４および／またはネットワークインタフェース３０６により実行されるタイムスタンプ補償の処理を説明するべく、図２を参照して以下の複数の数式および説明が提供されるが、これらの実施形態のみに限定されない。前に説明されたように、少なくともいくつかの実施形態において、推定される往復時間は、数式１に従って計算される。
【００４７】
ファインタイミング測定リクエストフレームを送出している通信デバイスが第１通信デバイスであり、ＡＣＫフレームを送出している通信デバイスが第２通信デバイスであると仮定すると、数式１は、記録された各タイムスタンプと関連付けられた通信デバイス時間リファレンスを示すよう以下のように書き換えられる。
【００４８】
【数２】
0006409247.tif 000003
数式２
【００４９】
しかし、２台の通信デバイス間の複数のクロック周波数における複数の差に起因して、単一のデバイスのタイムレールに変換された複数のタイムスタンプに基づき、往復時間のより精度のよい計算が取得される。したがって、以下の数式は、上記にて説明されたものなどクロック補償を実行することに起因して更なる高精度を有する、より精度のよい往復時間計算を表す。
【００５０】
【数３】
0006409247.tif 000004
数式３
【００５１】
第１通信デバイスと第２通信デバイスとの間のクロックオフセットは、差
【数４】
0006409247.tif 000005
としてｐｐｍ単位で表現され得る。
【数５】
0006409247.tif 000006
と
【数６】
0006409247.tif 000007
との間の差は、クロックオフセットによりもたらされる誤差項として表される。少なくともいくつかの実施形態および／またはシナリオにおいて、誤差項は、実装される複数の通信プロトコルおよびフレームサイズに基づいて変化する。ＩＥＥＥ  ８０２．１１規格プロトコルが第１通信デバイスと第２通信デバイスとの間の複数の通信のために用いられる実施形態によると、伝播時間（ＲＴＴの半分）は概して非常に短い期間であり、
【数７】
0006409247.tif 000008
により表される期間はＳＩＦＳ時間間隔を含むので、項
【数８】
0006409247.tif 000009
は、項
【数９】
0006409247.tif 000010
よりも小さい。そのような実施形態において、誤差項ＥＲＲは、最も大きなＥＲＲがより大きな項
【数１０】
0006409247.tif 000011
により制御されることを考慮に入れている数式４（下）により表現される。いくつかの実施形態において、数式４は、クロックオフセットによりもたらされる最大誤差項を表す。
【００５２】
【数１１】
0006409247.tif 000012
数式４
【００５３】
数式４において、
【数１２】
0006409247.tif 000013
は、通信デバイスにより送出されたファインタイミング測定リクエスト間隔の長さと関連付けられた期間を表し、ＳＩＦＳは、概して１６マイクロ秒である、ファインタイミング測定リクエストフレームの受信とＡＣＫフレームの送信との間のＳＩＦＳ期間を表す。数式４により提供される誤差項の結果として、４０ＰＰＭのクロックオフセットと最も低い８０２．１１変調および符号化スキームにより、
【数１３】
0006409247.tif 000014
と
【数１４】
0006409247.tif 000015
との間の複数のエラーが３ｎｓよりも大きいこととなり、このことは１メートルを超える距離測定エラーに対応することが示されている。その結果として、クロックオフセットの補償なしでは、より高い程度の精度を取得することには問題があることを当業者は理解されよう。
【００５４】
本開示の実施形態によると、タイムスタンプｔ１およびｔ４関するタイムスタンプ補償は、以下の複数の数式により表され得る。
【００５５】
【数１５】
0006409247.tif 000016
および数式５
【００５６】
【数１６】
0006409247.tif 000017
数式６
【００５７】
したがって、クロック計算および補償ユニット３０４および／またはネットワークインタフェース３０６が、タイムスタンプｔ１およびｔ４をフィードバックとして第２通信デバイスに送出する前にそれらを補償する複数の実施形態によると、上記の数式５および６からの複数の補償済タイムスタンプ
【数１７】
0006409247.tif 000018
および
【数１８】
0006409247.tif 000019
が、第２通信デバイスへ送出される。
【００５８】
クロック計算および補償ユニット３０４はメモリ３０２に結合され、メモリ３０２と通信を行って、メモリ３０２にデータを格納し、またそこからデータを読み取るよう構成される。本開示の様々な実施形態によると、メモリ３０２は、揮発性（例えば、ランダムアクセスメモリ（ＲＡＭ））、または不揮発性メモリ（例えば、電池によりサポートされるＲＡＭ、フラッシュ、その他）を含む。本開示の様々な実施形態において、メモリ３０２は、ネットワークインタフェース３０６により決定された複数のタイムスタンプに関連するデータ、ネットワークインタフェース３０６および／またはクロック計算および補償ユニット３０４により計算された、複数の補償済タイムスタンプ、および／または、ネットワークインタフェース３０６を介して送出された複数のフィードバックメッセージを格納する。オプションで、クロック計算および補償ユニット３０４は、メモリ３０２からデータを読み取って、複数の通信デバイスからなる特定のセットを、１または複数の前に送出されたフィードバックメッセージおよび／または計算された複数のタイムスタンプと関連付ける。この処理は、処理時間、処理能力、および／または電池寿命を浪費しないので、通信デバイス３００が限られた処理能力および／または電池寿命を有するＵＥデバイスとして、またはその一部として実装される少なくともいくつかの実施形態において有用である。いくつかの実施形態において、メモリ３０２はネットワークインタフェース３０６に含まれる。いくつかの実施形態において、メモリ３０２はクロック計算および補償ユニット３０４に含まれる。
【００５９】
オプションで、クロック計算および補償ユニット３０４は、メモリ３０２にアクセスして、前に受信した１または複数のタイムスタンプを比較して、通信デバイスが移動したかを決定し、移動した場合には、前の複数のタイムスタンプに基づき移動の割合を決定する。オプションで、クロック計算および補償ユニット３０４および／またはネットワークインタフェース３０６は、この情報を用いて、複数のファインタイミング測定リクエストが送出される周波数を更新する。そのような複数の実施形態において、クロック計算および補償ユニット３０４および／またはネットワークインタフェース３０６は、複数のタイムスタンプの履歴がＡＣＫフレームを送出している通信デバイスが移動していることを示すときに、距離の複数の計算をより頻繁に更新する。この情報をより頻繁に更新することにより、通信デバイス３００は、例えば、送信電力を高める、またはその他により、変化している範囲に迅速に順応することが出来る。
【００６０】
図４は、本開示の実施形態に係る例示的な通信デバイス４００である。通信デバイス４００は、メモリ４０２と、クロック計算および補償ユニット４０４と、ネットワークインタフェース４０６と、アンテナ４０８とを含む。本開示の様々な実施形態によると、通信デバイス４００は、例えば、図２に関して説明されたＡＰ１４および／または第２通信デバイスなどネットワーク１０の一部である通信デバイスとして、またはその一部として実装される。更なる複数の実施形態によると、タイミング補償システム４００は、任意の適切な通信デバイスの一部として実装され、ネットワーク１０の一部であるそれらのデバイスのみに限定されない。いくつかの実施形態において、メモリ４０２はネットワークインタフェース４０６に含まれる。いくつかの実施形態において、メモリ４０２はクロック計算および補償ユニット４０４に含まれる。
【００６１】
メモリ４０２、クロック計算および補償ユニット４０４、ネットワークインタフェース４０６、およびアンテナ４０８は、図３に図示されているようなメモリ３０２、クロック計算および補償ユニット３０４、ネットワークインタフェース３０６、およびアンテナ３０８とそれぞれ同様の構造を有し、実質的に同じように動作する。したがって、簡潔にするために、これらの要素間の複数の差のみが説明される。本開示の実施形態において、通信デバイス３００および通信デバイス４００はそれぞれ、互いに通信を行っている複数の通信デバイスのそれぞれとして、またはその一部として実装される。例えば、本開示の様々な実施形態によると、通信デバイス３００は、ファインタイミング測定リクエストフレーム２０２を送出する図２に図示されている通信デバイスとして、またはその一部として実装され、通信デバイス４００は、ＡＣＫフレーム２０４を送出する図２に図示されている通信デバイスとして、またはその一部として実装される。
【００６２】
ネットワークインタフェース４０６は、他の通信デバイスからタイムスタンプ情報および／または１または複数のファインタイミング測定リクエストフレームを受信し、ファインタイミング測定リクエストフレームがアンテナ４０８において受信されたときと関連付けられた適当なタイムスタンプ（例えば、図２にけるｔ２  ＴｏＡ）を決定するよう構成される。ネットワークインタフェース４０６は、ファインタイミング測定リクエストフレームを受信したことに応答して、ファインタイミング測定リクエストフレームを送出した通信デバイスへＡＣＫフレームを送出し、ＡＣＫフレームがアンテナ４０８から送出されたときに関連付けられた適当なタイムスタンプ（例えば、図２におけるｔ３  ＴｏＤ）を決定するよう構成される。オプションで、ネットワークインタフェース４０６は、ＴｏＡおよび／またはＴｏＤタイムスタンプを他の通信デバイスへ送出するよう構成される。
【００６３】
追加的に、または代替的に、ネットワークインタフェース４０６は、ファインタイミング測定リクエストフレームを送出している通信デバイスにより用いられるクロック周波数を決定するよう構成される。図３におけるタイミング補償システム３００を参照して前に説明したように、この情報は、ファインタイミング測定リクエストフレームを送出している通信デバイスから取得され得る。ネットワークインタフェース４０６は、このクロック周波数に基づき、ネットワークインタフェース４０６により用いられるローカルクロックの周波数とファインタイミング測定リクエストフレームを送出している通信デバイスにより用いられるクロックの周波数との間の差であるクロックオフセットを決定するよう構成される。ネットワークインタフェース４０６は、クロックオフセット情報および／またはＴｏＡ／ＴｏＤタイムスタンプをクロック計算および補償ユニット４０４へ送出するよう構成される。
【００６４】
ネットワークインタフェース４０６は、ファインタイミング測定リクエストフレームを送出している通信デバイスからタイムスタンプ情報（例えば、図２におけるｔ１およびｔ４）を受信するよう構成される。このタイムスタンプ情報は、タイムスタンプを記録するためにネットワークインタフェース４０６により用いられるクロック周波数に合わせて補償済みであってもよい。タイムスタンプ情報が補償済みである場合、ネットワークインタフェース４０６は、タイムスタンプ情報が補償済みであることを示すインジケーションおよび／または通知をファインタイミング測定リクエストフレームを送出する通信デバイスから受信する。インジケーションおよび／または通知フラグが受信された場合、オプションで、ネットワークインタフェース４０６は、クロック計算および補償ユニット４０４に、受信した複数のタイムスタンプを補償しないよう命令する。それにより、ネットワークインタフェース４０６が補償を実行するいくつかの実施形態において、補償インジケーションおよび／または通知フラグが存在している場合、ネットワークインタフェース４０６は、受信した複数のタイムスタンプを補償しない。
【００６５】
様々な実施形態において、複数の補償済タイムスタンプ（例えば、ｔ１およびｔ４）は通信デバイス４００と同じタイムレールに合わせて受信され、複数の補償済タイムスタンプ（例えば、ｔ２およびｔ３）はファインタイミングリクエストを送信した他の通信デバイスと同じタイムレールに合わせて受信されるので、ネットワークインタフェース４０６および／またはクロック計算および補償ユニット４０４は、数式３に基づき、往復時間
【数１９】
0006409247.tif 000020
を決定する。
【００６６】
しかし、補償のインジケーションおよび／または通知が受信されていない場合、オプションで、ネットワークインタフェース４０６および／またはクロック計算および補償ユニット４０４は、（ｉ）ネットワークインタフェース４０６により用いられるクロック周波数に合わせて受信された複数のタイムスタンプ（例えば、ｔ１およびｔ４）に関して複数の補償済タイムスタンプを計算し、または（ｉｉ）ファインタイミング測定リクエストフレームを送出している通信デバイスにより用いられるクロック周波数に合わせてローカルに生成された複数のタイムスタンプ（例えば、ｔ２およびｔ３）に関して複数の補償済タイムスタンプを計算する。補償されたタイムスタンプｔ１およびｔ４が計算される本開示の実施形態によると、ネットワークインタフェース４０６および／またはクロック計算および補償ユニット４０４はそれぞれ数式５および６（上）を用いる。補償されたタイムスタンプｔ２およびｔ３が計算される他の実施形態によると、ネットワークインタフェース４０６および／またはクロック計算および補償ユニット４０４はそれぞれ、数式７および８（下）を用いる。
【００６７】
【数２０】
0006409247.tif 000021
数式７
【００６８】
【数２１】
0006409247.tif 000022
数式８
【００６９】
ファインタイミング測定リクエストフレームを送出している通信デバイスに合わせて複数のタイムスタンプが補償される実施形態によると、以下の数式が
【数２２】
0006409247.tif 000023
を提供する。
【００７０】
【数２３】
0006409247.tif 000024
数式９
【００７１】
一旦、ネットワークインタフェース４０６および／またはクロック計算および補償ユニット４０４が数式６または数式８に基づいて
【数２４】
0006409247.tif 000025
を計算すると、２台の通信デバイス間の距離は、
【数２５】
0006409247.tif 000026
の半分に伝播速度定数を乗じることにより計算される。本開示の様々な実施形態において、伝播速度定数は、真空中での光速度、または伝播媒体（すなわち、地球の大気）を介した光速度の低下に適応したその一部である。
【００７２】
一旦、複数の通信デバイスの間の距離が決定されると、ネットワークインタフェース４０６は、他の複数の通信デバイスと距離情報を共有するよう構成される。通信デバイス４００がネットワーク１０内のデバイスとして、またはその一部として実装される実施形態において、ネットワークインタフェース４０６は、ネットワーク１０内の任意の数の他のデバイスと距離情報を共有するよう構成される。このようにネットワーク内の任意の数の通信デバイスは、互いを分け隔てるレンジング距離について精度のよい情報を取得するよう構成される。精度のよい距離情報は、例えば、当てはまる場合には送信電力を低減させ、より良好な電力節約を可能とするために有用であり得る。
【００７３】
図５は、本開示の実施形態に係る例示的なタイミング補償方法５００のフロー図である。実施形態において、タイミング補償方法５００は、図３に示されるように通信デバイス３００により、例えば、ネットワークインタフェース３０６および／またはクロック計算および補償ユニット３０４により実装される。
【００７４】
方法５００は、第１送信が第１通信デバイスから第２通信デバイスへ送出されたときに対応する第１タイムスタンプを第１通信デバイスが決定するブロック５０２において開始する。この送信は、例えば、図２に示されるファインタイミング測定リクエストフレームと関連付けられたタイムスタンプｔ１とを含む。他の複数の実施形態において、第１タイムスタンプはファインタイミング測定リクエストフレームに含まれておらず、単に、第１通信デバイスのメモリに格納され、ファインタイミング測定リクエストフレームと関連付けられている。
【００７５】
ブロック５０４において、第２通信デバイスから送出された第２送信が第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、第１通信デバイスが決定する。この送信は、例えば、図２に示されるＡＣＫフレームと、関連付けられたタイムスタンプｔ４とを含み得る。
【００７６】
ブロック５０６において第１通信デバイスは、第１通信デバイスと第２通信デバイスとの間のクロック周波数の差を補償するか決定する。第１通信デバイスが複数のクロック周波数の差を補償すると決定した場合、方法５００はブロック５０８へ進む。第１通信デバイスが複数のクロック周波数の差を補償しないと決定した場合、方法５００はブロック５１２に進む。いくつかの実施形態において、ブロック５０６は、第１通信デバイスと第２通信デバイスとのうちどちらがタイムスタンプ補償を実行するかを示す情報を第１通信デバイスと第２通信デバイスとの間で交換することを含む。いくつかの実施形態において、ブロック５０６における決定は、第１通信デバイスと第２通信デバイスとのうちどちらがタイムスタンプ補償を実行するのかを示す、第１通信デバイスと第２通信デバイスとの間で交換される情報に基づく。
【００７７】
ブロック５０８において、第１通信デバイスは、第２クロック周波数（すなわち、第２通信デバイスにより用いられるクロック周波数）に合わせて補償された第１タイムスタンプおよび第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の複数の差を補償する。実施形態において、補償される複数のタイムスタンプは、図２において示されるようにタイムスタンプｔ１およびｔ４である。
【００７８】
ブロック５１０において、第１通信デバイスは、補償された第１タイムスタンプおよび第２タイムスタンプを第２通信デバイスへ送出する。実施形態において、第１通信デバイスは、補償が実行されたことを示す補償インジケーションも送出する。
【００７９】
他方、ブロック５１２において、第１通信デバイスは、第１タイムスタンプおよび第２タイムスタンプを第１クロック周波数に合わせて第２通信デバイスへ送出する。言い換えると、第１通信デバイスは、補償されていない、すなわち、第１通信デバイスのクロック周波数に合わせて、第１タイムスタンプおよび第２タイムスタンプを第２通信デバイスへ送出し返す。様々な実施形態において、オプションで、第１通信デバイスは、第１通信デバイスにおいてこれらのタイムスタンプに対して補償が実行されていないことを示すインジケーションを送出する。
【００８０】
図６は、本開示の実施形態に係る例示的なタイミング補償方法６００のフロー図である。実施形態において、タイミング補償方法６００は、図４に図示される通信デバイス４００により、例えば、ネットワークインタフェース４０６および／またはクロック計算および補償ユニット４０４により実施される。
【００８１】
方法６００は、第１送信が第２通信デバイスにより送信されたときに対応する第１タイムスタンプを第１通信デバイスが決定するブロック６０２において開始する。実施形態において、第１送信は、図２に示されるファインタイミング測定リクエストフレームであり、第１タイムスタンプは関連付けられたタイムスタンプｔ１である。実施形態において、第１タイムスタンプｔ１は、第２通信デバイスからのフィードバック送信において受信される。
【００８２】
ブロック６０４において、第１送信が第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、第１通信デバイスが決定する。実施形態において、この第２タイムスタンプは、例えば、図２に示されるタイムスタンプｔ２である。
【００８３】
ブロック６０６において、第２送信が第１通信デバイスにより送信されたときに対応する第３タイムスタンプを第１通信デバイスが決定する。実施形態において、第２送信は、例えば、図２に示されるＡＣＫフレームであり、第３タイムスタンプは、関連付けられたタイムスタンプｔ３である。
【００８４】
ブロック６０８において、第１通信デバイスは、第２送信が第２通信デバイスにおいて受信されたときに対応する第４タイムスタンプを決定する。第４タイムスタンプは、例えば、図２におけるタイムスタンプｔ４である。実施形態において、第４タイムスタンプｔ４が第２通信デバイスからのフィードバック送信として受信される。
【００８５】
ブロック６１０において、第１通信デバイスは、補償インジケーションが第２通信デバイスから受信されたかを決定する。補償インジケーションが第２通信デバイスから受信されている場合、方法６００はブロック６１６に進む。補償インジケーションが第２通信デバイスから受信されていない場合、方法６００はブロック６１２に進む。
【００８６】
実施形態において、ブロック６１２において、第１通信デバイスは、第１通信デバイスにおいて用いられるクロック周波数に合わせて補償された第１タイムスタンプおよび第４タイムスタンプを提供するべく第１通信デバイスの第１クロックの第１周波数と第２通信デバイスの第２クロックの第２周波数との間の複数の差を補償する。実施形態において、例えば、第１タイムスタンプおよび第４タイムスタンプは、第２通信デバイスからのフィードバック送信として受信された、図２に示されるようなタイムスタンプｔ１およびｔ４を含む。代替的に、ブロック６１２において、第１通信デバイスは、第２通信デバイスにおいて用いられる第２クロック周波数に合わせて補償された第２タイムスタンプおよび第３タイムスタンプを提供するべく第１クロックの第１周波数と第２クロックの第２周波数との間の複数の差を補償する。実施形態において、例えば、第２タイムスタンプおよび第３タイムスタンプは、図２において示されるようなタイムスタンプｔ２およびｔ３である。
【００８７】
ブロック６１４において、第１通信デバイスは、（ｉ）補償済第１タイムスタンプおよび補償済第４タイムスタンプ、並びに第２タイムスタンプおよび第３タイムスタンプ、または（ｉｉ）補償済第２タイムスタンプおよび補償済第３タイムスタンプ、並びに第１タイムスタンプおよび第４タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を計算する。
【００８８】
ブロック６１６において、第１通信デバイスは、補償済第１タイムスタンプおよび補償済第４タイムスタンプ、並びに、第２タイムスタンプおよび第３タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を計算する。
【００８９】
前の図面および開示は、特定の方向への複数のタイムスタンプの交換、およびその補償について説明したが、本開示の複数の実施形態は、２またはそれより多くの通信デバイス間の適当な複数の通信に対応する任意の適当な複数のタイムスタンプの補償を含む。例えば、タイムスタンプｔ１およびｔ４がフィードバックとして図示されているが、本開示の複数の実施形態は、タイムスタンプｔ２およびｔ３をフィードバックとして、ファインタイミング測定リクエストを送出している通信デバイスへ送出することを含む。本明細書で説明されている複数の実施形態は、２またはそれより多くの通信デバイス間で相互に、および等しく当てはまる。例えば、ファインタイミング測定リクエストを送出した通信デバイスへタイムスタンプｔ２およびｔ３がフィードバックされる実施形態において、これらのタイムスタンプは、補償されていても補償されていなくてもよく、何らかの補償（またはそれが欠如していること）を示す通知および／またはインジケータも送出される。さらに、そのような複数の実施形態によると、ファインタイミング測定リクエストを送出した通信デバイスは、自身のタイムレールリファレンスに合わせて真のＲＴＴを計算するべく（および距離計算）、このインジケーションに基づきｔ２およびｔ３（またはｔ１およびｔ４）を補償する。図３および４に図示されている複数の実施形態は入れ替え可能であり、図２と関連付けられたそれらの機能性は、明瞭性のみを目的として提供されている。
【００９０】
本明細書に提示されている複数の図面は例示を目的としたものである。図面全体において図示されている様々な要素間の複数の通信および／または結合は、本明細書において説明されているような対応する複数の処理を実現するよう任意のタイプの結合または通信手段を用いて実行され得る。例えば、単一の線がいくつかの要素間の複数の通信を図示するのに用いられていたとしても、この通信は、任意の数の配線および／またはバスにより実装され得る。さらに、そのような複数の通信は、図示されている複数の結合に関わらずシリアルまたはパラレル通信など任意の適当な通信プロトコルにより実装され得る。
【００９１】
上記にて説明された様々なブロック、処理、および技術のうち少なくともいくつかは、ハードウェア、ファームウェア命令を実行するプロセッサ、ソフトウェア命令を実行するプロセッサ、または、これらの何らかの組み合わせを利用して実装され得る。ソフトウェア命令またはファームウェア命令を実行するプロセッサを利用して実装したとき、当該ソフトウェア命令またはファームウェア命令は、ＲＡＭまたはＲＯＭ、或いは、フラッシュメモリ、テープドライブ、その他において磁気ディスク、光ディスクなど任意の適切なコンピュータ可読記憶媒体に格納されてもよい。同様に、ソフトウェア命令またはファームウェア命令は、公知の、または所望される伝達方法を介して、ユーザまたはシステムへ伝達され得る。ソフトウェア命令またはファームウェア命令には、プロセッサにより実行されると当該プロセッサに様々な処理を実行させる複数のマシン可読命令が含まれ得る。
【００９２】
ハードウェアで実装されたとき、当該ハードウェアは、個別のコンポーネント、集積回路、ＡＳＩＣ、プログラマブル論理デバイス（ＰＬＤ）、その他のうち１または複数を備え得る。
【００９３】
本願発明の更なる複数の態様は、以下の項目のうち１または複数に関する。
【００９４】
第１の実施形態は、ｉ）第１クロック周波数を有する第１クロックを利用する第１通信デバイスと、ｉｉ）第２クロック周波数を有する第２クロックを利用する第２通信デバイスとの間のクロック補償のための方法を含み、
第１送信が第２通信デバイスにより送信されたときに対応する第１タイムスタンプを、第１通信デバイスにおいて決定する段階と、
第２送信が第２通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、第１通信デバイスにおいて決定する段階と
を含む。方法は、
補償インジケータが第２通信デバイスから受信されたかを、第１通信デバイスにおいて決定する段階と、
補償インジケータが第２通信デバイスから受信されていないと決定されたときに、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の差を、第１通信デバイスにおいて補償する段階と
をさらに含む。さらに、そのような実施形態によると、補償インジケータの存在は、第１タイムスタンプおよび第２タイムスタンプが第１クロック周波数に合わせて受信され、補償される必要がないことを示す。
【００９５】
第１の実施形態はさらに、
第１クロック周波数に基づき、第１送信が第１通信デバイスにおいて受信されたときに対応する第３タイムスタンプを、第１通信デバイスにおいて決定する段階と、
第１クロック周波数に基づき、第２送信が第１通信デバイスにより送信されたときに対応する第４タイムスタンプを、第１通信デバイスにおいて決定する段階と
を含むなどの複数の変形例を含む。
【００９６】
さらに、第１の実施形態は、
補償インジケータが受信されていないと決定されたときに、補償済第１タイムスタンプ、補償済第２タイムスタンプ、第３タイムスタンプ、および第４タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を、第１通信デバイスにおいて計算する段階と、
補償インジケータが受信されていると決定されたときに、第１タイムスタンプ、第２タイムスタンプ、第３タイムスタンプ、および第４タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を、第１通信デバイスにおいて計算する段階と
を含むなどの複数の変形例を含む。
【００９７】
加えて、第１の実施形態はさらに、
【００９８】
（ｉ）
【数２６】
0006409247.tif 000027
に関して第１数式
【数２７】
0006409247.tif 000028
および、
【００９９】
（ｉｉ）
【数２８】
0006409247.tif 000029
に関して第２数式
【数２９】
0006409247.tif 000030
を評価することにより、補償する処理を実行することを含み、
【数３０】
0006409247.tif 000031
および
【数３１】
0006409247.tif 000032
はそれぞれ、第１タイムスタンプおよび第２タイムスタンプを表し、
【数３２】
0006409247.tif 000033
は、第１クロック周波数と第２クロック周波数との間の差をｐｐｍ単位で表し、
【数３３】
0006409247.tif 000034
および
【数３４】
0006409247.tif 000035
はそれぞれ、補償済第１タイムスタンプおよび補償済第２タイムスタンプを表す。
【０１００】
またさらに、第１の実施形態は、
第１送信が、ファインタイミング測定リクエストを含み、
第２送信が、ファインタイミング測定リクエストの肯定応答を含む、複数の変形例も含む。
【０１０１】
最後に、第１の実施形態は、第１送信と第２送信とのうちそれぞれが、無線ネットワーキング通信プロトコルに準拠する複数の変形例を含む。
【０１０２】
第２の実施形態は、ｉ）第１クロック周波数を有する第１クロックを利用する第１通信デバイスと、ｉｉ）第２クロック周波数を有する第２クロックを利用する第２通信デバイスとの間のクロック補償のための方法を含み、
第１送信が第１通信デバイスにより送信されたときに対応する第１タイムスタンプを、第１通信デバイスにおいて決定する段階と、
第２送信が第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを、第１通信デバイスにおいて決定する段階と
を含む。方法はさらに、
補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の差を、第１通信デバイスにおいて補償する段階と、
補償済第１タイムスタンプおよび補償済第２タイムスタンプを第１通信デバイスから第２通信デバイスへ送出する段階と、
補償インジケータを、第１通信デバイスから第２通信デバイスへ送出する段階と
を含む。さらに、そのような実施形態によると、
補償インジケータは、第２通信デバイスが補償済第１タイムスタンプおよび補償済第２タイムスタンプに関して第１クロック周波数と第２クロック周波数との間の差を補償する必要がないことを示す。
【０１０３】
第２の実施形態はさらに、
第２クロック周波数に基づき、第１送信が第２通信デバイスにおいて受信されたときに対応する第３タイムスタンプを、第２通信デバイスにおいて決定する段階と、
第２クロック周波数に基づき、第２送信が第２通信デバイスにより送信されたときに対応する第４タイムスタンプを、第２通信デバイスにおいて決定する段階と
を含むなどの複数の変形例を含む。
【０１０４】
さらに、第２の実施形態は、
補償済第１タイムスタンプ、補償済第２タイムスタンプ、第３タイムスタンプ、および第４タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を、第２通信デバイスにおいて計算する段階を含むなどの複数の変形例を含む。
【０１０５】
加えて、第２の実施形態はさらに、
【０１０６】
（ｉ）
【数３５】
0006409247.tif 000036
に関して第１数式
【数３６】
0006409247.tif 000037
および、
【０１０７】
（ｉｉ）
【数３７】
0006409247.tif 000038
に関して第２数式
【数３８】
0006409247.tif 000039
を評価することにより補償する処理を実行することを含み、
【数３９】
0006409247.tif 000040
および
【数４０】
0006409247.tif 000041
はそれぞれ、第１タイムスタンプおよび第２タイムスタンプを表し、
【数４１】
0006409247.tif 000042
は、第１クロック周波数と第２クロック周波数との間の差をｐｐｍ単位で表し、
【数４２】
0006409247.tif 000043
および
【数４３】
0006409247.tif 000044
はそれぞれ、補償済第１タイムスタンプおよび補償済第２タイムスタンプを表す。
【０１０８】
またさらに、第２の実施形態は、
第１送信が、ファインタイミング測定リクエストを含み、
第２送信が、ファインタイミング測定リクエストの肯定応答を含む、複数の変形例も含む。
【０１０９】
最後に、第２の実施形態は、第１送信と第２送信とのうちそれぞれが、無線ネットワーキング通信プロトコルに準拠する複数の変形例を含む。
【０１１０】
第３の実施形態において、第１通信デバイスは、第１クロック周波数を有する第１クロックを利用するよう構成され、およびネットワークインタフェースを含み、
ネットワークインタフェースは、
第１送信が第２クロック周波数を有する第２クロックを利用する第２通信デバイスにより送信されたときに対応する第１タイムスタンプを決定し、
第２送信が第２通信デバイスにおいて受信されたときに対応する第２タイムスタンプを決定するよう構成される。  第１通信デバイスは、クロック計算および補償ユニットをさらに含み、
クロック計算および補償ユニットは、
補償インジケータが第２通信デバイスから受信されたかを決定し、
補償インジケータが第２通信デバイスから受信されないときに、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の複数の差を補償するよう構成される。さらに、そのような実施形態によると、
補償インジケータの存在は、第１タイムスタンプおよび第２タイムスタンプが第１クロック周波数に合わせて受信され、補償される必要がないことを示す。
【０１１１】
第３の実施形態はさらに、クロック計算および補償ユニットが、補償インジケータが受信されたときに、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の複数の差を補償しないよう構成されるなどの複数の変形例を含む。
【０１１２】
さらに、第３の実施形態は、
クロック計算および補償ユニットが、
第１クロック周波数に基づき、第１送信が第１通信デバイスにおいて受信されたときに対応する第３タイムスタンプを決定し、
第１クロック周波数に基づき、第２送信が第２通信デバイスへ送出されたときに対応する第４タイムスタンプを決定するよう構成されるなどの複数の変形例を含む。
【０１１３】
加えて、第３の実施形態はさらに、
クロック計算および補償ユニットが、
補償インジケータが受信されないときに、補償済第１タイムスタンプ、補償済第２タイムスタンプ、第３タイムスタンプ、および第４タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を計算し、
補償インジケータが受信されたときに、第１タイムスタンプ、第２タイムスタンプ、第３タイムスタンプ、および第４タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を計算するよう構成されるなどの複数の変形例を含む。
【０１１４】
またさらに、第３の実施形態は、クロック計算および補償ユニットが、
【０１１５】
（ｉ）
【数４４】
0006409247.tif 000045
に関して第１数式
【数４５】
0006409247.tif 000046
および、
【０１１６】
（ｉｉ）
【数４６】
0006409247.tif 000047
に関して第２数式
【数４７】
0006409247.tif 000048
を評価することにより第１クロック周波数と第２クロック周波数との間の複数の差を補償するよう構成され、
【数４８】
0006409247.tif 000049
および
【数４９】
0006409247.tif 000050
はそれぞれ、第１タイムスタンプおよび第２タイムスタンプを表し、
【数５０】
0006409247.tif 000051
は、第１クロック周波数と第２クロック周波数との間の差をｐｐｍ単位で表し、
【数５１】
0006409247.tif 000052
および
【数５２】
0006409247.tif 000053
はそれぞれ、補償済第１タイムスタンプおよび補償済第２タイムスタンプを表す複数の変形例も含む。
【０１１７】
追加的に、第３の実施形態は、ネットワークインタフェースが、ファインタイミング測定リクエストを含む第１送信を送出し、第２通信デバイスから送出されたファインタイミング測定リクエストの肯定応答を含む第２送信を受信するよう構成される複数の変形例を含む。
【０１１８】
最後に、第３の実施形態は、第１送信と第２送信とのうちそれぞれが、無線ネットワーキングプロトコルに準拠する複数の変形例を含む。
【０１１９】
第４の実施形態において、
第１通信デバイスは第１クロック周波数を有する第１クロックを利用するよう構成され、およびネットワークインタフェースを含み、
ネットワークインタフェースは、
第１送信が第１通信デバイスにより送信されたときに対応する第１タイムスタンプを決定し、
第２送信が第１通信デバイスにおいて受信されたときに対応する第２タイムスタンプを決定するよう構成される。さらに、第２送信は、第２クロック周波数を有する第２クロックを利用するよう構成された第２通信デバイスにより送信される。第１通信デバイスは、補償済第１タイムスタンプおよび補償済第２タイムスタンプを提供するべく第１クロック周波数と第２クロック周波数との間の複数の差を補償するよう構成されたクロック計算および補償ユニットをさらに含む。さらに、そのような実施形態によると、
ネットワークインタフェースはさらに、第１通信デバイスに、補償済第１タイムスタンプおよび補償済第２タイムスタンプ、並びに補償インジケータを第２通信デバイスへ送出させるようにも構成され、
補償インジケータは、補償済第１タイムスタンプおよび補償済第２タイムスタンプが第２通信デバイスにより補償される必要がないことを示す。
【０１２０】
第４の実施形態はさらに、
ネットワークインタフェースが、
第１送信が第２通信デバイスにおいて受信されたときに対応する第３タイムスタンプを決定し、
第２送信が第２通信デバイスにより送信されたときに対応する第４タイムスタンプを決定するよう構成されるなどの複数の変形例を含む。
【０１２１】
さらに、第４の実施形態は、クロック計算および補償ユニットが、補償済第１タイムスタンプ、補償済第２タイムスタンプ、第３タイムスタンプ、および第４タイムスタンプに基づき、第１通信デバイスと第２通信デバイスとの間の距離を計算するよう構成されるなどの複数の変形例を含む。
【０１２２】
またさらに、第４の実施形態は、クロック計算および補償ユニットがさらに、
【０１２３】
（ｉ）
【数５３】
0006409247.tif 000054
に関して第１数式
【数５４】
0006409247.tif 000055
および、
【０１２４】
（ｉｉ）
【数５５】
0006409247.tif 000056
に関して第２数式
【数５６】
0006409247.tif 000057
を評価することにより第１タイムスタンプおよび第２タイムスタンプを補償するよう構成され、
【数５７】
0006409247.tif 000058
および
【数５８】
0006409247.tif 000059
はそれぞれ、第１タイムスタンプおよび第２タイムスタンプを表し、
【数５９】
0006409247.tif 000060
は、第１クロック周波数と第２クロック周波数との間の差をｐｐｍ単位で表し、
【数６０】
0006409247.tif 000061
および
【数６１】
0006409247.tif 000062
はそれぞれ、補償済第１タイムスタンプおよび補償済第２タイムスタンプを表すなどの複数の変形例も含む。
【０１２５】
追加的に、第４の実施形態は、ネットワークインタフェースが、ファインタイミング測定リクエストを含む第１送信を送出し、第２通信デバイスから送出されたファインタイミング測定リクエストの肯定応答を含む第２送信を受信するよう構成される複数の変形例を含む。
【０１２６】
最後に、第４の実施形態は、第１送信と第２送信とのうちそれぞれが、無線ネットワーキングプロトコルに準拠する複数の変形例を含む。
【０１２７】
本願発明の様々な態様が、本願発明を限定するようにではなく例示のみを意図された具体的な複数の例を参照して説明されてきたが、本願発明の範囲から逸脱することなく、開示されている複数の実施形態に対して複数の変更、追加、および／または削除がなされ得る。
【図１】
0006409247.tif 000099
【図２】
0006409247.tif 000100
【図３】
0006409247.tif 000101
【図４】
0006409247.tif 000102
【図５】
0006409247.tif 000103
【図６】
0006409247.tif 000104